@adlfe/campaign-management-library 2.9.21 → 2.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1655) hide show
  1. package/.editorconfig +13 -0
  2. package/.nvmrc +1 -0
  3. package/.prettierrc +7 -0
  4. package/.vscode/settings.json +1 -0
  5. package/Dockerfile +5 -0
  6. package/Jenkinsfile-dev +50 -0
  7. package/README.md +43 -0
  8. package/angular.json +210 -0
  9. package/default.conf +45 -0
  10. package/invariant/CHANGELOG.md +69 -0
  11. package/invariant/LICENSE +21 -0
  12. package/invariant/README.md +37 -0
  13. package/invariant/browser.js +49 -0
  14. package/invariant/invariant.js +51 -0
  15. package/invariant/invariant.js.flow +7 -0
  16. package/invariant/package.json +74 -0
  17. package/package.json +94 -31
  18. package/projects/adl-campaign-management-library-internal/README.md +1 -0
  19. package/projects/adl-campaign-management-library-internal/karma.conf.js +32 -0
  20. package/projects/adl-campaign-management-library-internal/ng-package.json +11 -0
  21. package/projects/adl-campaign-management-library-internal/package.json +10 -0
  22. package/projects/adl-campaign-management-library-internal/src/assets/business/external.json +3 -0
  23. package/projects/adl-campaign-management-library-internal/src/assets/flowbuilder/flowbuilder.js +4588 -0
  24. package/projects/adl-campaign-management-library-internal/src/assets/flowbuilder/index.html +738 -0
  25. package/projects/adl-campaign-management-library-internal/src/assets/images/1.png +0 -0
  26. package/projects/adl-campaign-management-library-internal/src/assets/images/5.png +0 -0
  27. package/projects/adl-campaign-management-library-internal/src/assets/images/55.png +0 -0
  28. package/projects/adl-campaign-management-library-internal/src/assets/images/6.png +0 -0
  29. package/projects/adl-campaign-management-library-internal/src/assets/images/8.png +0 -0
  30. package/projects/adl-campaign-management-library-internal/src/assets/images/New folder/calendar.png +0 -0
  31. package/projects/adl-campaign-management-library-internal/src/assets/images/New folder/megaphone.png +0 -0
  32. package/projects/adl-campaign-management-library-internal/src/assets/images/New folder/schedule(1).png +0 -0
  33. package/projects/adl-campaign-management-library-internal/src/assets/images/New folder/schedule.png +0 -0
  34. package/projects/adl-campaign-management-library-internal/src/assets/images/amin1.jpg +0 -0
  35. package/projects/adl-campaign-management-library-internal/src/assets/images/amin2.jpg +0 -0
  36. package/projects/adl-campaign-management-library-internal/src/assets/images/amin3.jpg +0 -0
  37. package/projects/adl-campaign-management-library-internal/src/assets/images/amin4.jpg +0 -0
  38. package/projects/adl-campaign-management-library-internal/src/assets/images/amin5.jpg +0 -0
  39. package/projects/adl-campaign-management-library-internal/src/assets/images/amin6.jpg +0 -0
  40. package/projects/adl-campaign-management-library-internal/src/assets/images/background-login.png +0 -0
  41. package/projects/adl-campaign-management-library-internal/src/assets/images/bell.png +0 -0
  42. package/projects/adl-campaign-management-library-internal/src/assets/images/bg.jpg +0 -0
  43. package/projects/adl-campaign-management-library-internal/src/assets/images/carbon_warning.png +0 -0
  44. package/projects/adl-campaign-management-library-internal/src/assets/images/category/account.png +0 -0
  45. package/projects/adl-campaign-management-library-internal/src/assets/images/category/alert.png +0 -0
  46. package/projects/adl-campaign-management-library-internal/src/assets/images/category/appoinment.png +0 -0
  47. package/projects/adl-campaign-management-library-internal/src/assets/images/category/delivery.png +0 -0
  48. package/projects/adl-campaign-management-library-internal/src/assets/images/category/group.png +0 -0
  49. package/projects/adl-campaign-management-library-internal/src/assets/images/category/problem.png +0 -0
  50. package/projects/adl-campaign-management-library-internal/src/assets/images/category/reply.png +0 -0
  51. package/projects/adl-campaign-management-library-internal/src/assets/images/category/screenwafooter.png +0 -0
  52. package/projects/adl-campaign-management-library-internal/src/assets/images/category/telegramButton.png +0 -0
  53. package/projects/adl-campaign-management-library-internal/src/assets/images/category/telegramScreen.png +0 -0
  54. package/projects/adl-campaign-management-library-internal/src/assets/images/category/tiket.png +0 -0
  55. package/projects/adl-campaign-management-library-internal/src/assets/images/category/wallet.png +0 -0
  56. package/projects/adl-campaign-management-library-internal/src/assets/images/category/whatsappScreen.png +0 -0
  57. package/projects/adl-campaign-management-library-internal/src/assets/images/check.png +0 -0
  58. package/projects/adl-campaign-management-library-internal/src/assets/images/contact.png +0 -0
  59. package/projects/adl-campaign-management-library-internal/src/assets/images/copy.png +0 -0
  60. package/projects/adl-campaign-management-library-internal/src/assets/images/cs.png +0 -0
  61. package/projects/adl-campaign-management-library-internal/src/assets/images/dash.png +0 -0
  62. package/projects/adl-campaign-management-library-internal/src/assets/images/dashboard.jpeg +0 -0
  63. package/projects/adl-campaign-management-library-internal/src/assets/images/default-image-chat.svg +3 -0
  64. package/projects/adl-campaign-management-library-internal/src/assets/images/default.jpeg +0 -0
  65. package/projects/adl-campaign-management-library-internal/src/assets/images/default.jpg +0 -0
  66. package/projects/adl-campaign-management-library-internal/src/assets/images/down.png +0 -0
  67. package/projects/adl-campaign-management-library-internal/src/assets/images/email.png +0 -0
  68. package/projects/adl-campaign-management-library-internal/src/assets/images/error.png +0 -0
  69. package/projects/adl-campaign-management-library-internal/src/assets/images/flowb.png +0 -0
  70. package/projects/adl-campaign-management-library-internal/src/assets/images/flowbuilder.png +0 -0
  71. package/projects/adl-campaign-management-library-internal/src/assets/images/forms.png +0 -0
  72. package/projects/adl-campaign-management-library-internal/src/assets/images/icon-file.png +0 -0
  73. package/projects/adl-campaign-management-library-internal/src/assets/images/info.png +0 -0
  74. package/projects/adl-campaign-management-library-internal/src/assets/images/iphone.png +0 -0
  75. package/projects/adl-campaign-management-library-internal/src/assets/images/logo-ada-white.png +0 -0
  76. package/projects/adl-campaign-management-library-internal/src/assets/images/logo-white.png +0 -0
  77. package/projects/adl-campaign-management-library-internal/src/assets/images/logout.png +0 -0
  78. package/projects/adl-campaign-management-library-internal/src/assets/images/map-preview.png +0 -0
  79. package/projects/adl-campaign-management-library-internal/src/assets/images/map.png +0 -0
  80. package/projects/adl-campaign-management-library-internal/src/assets/images/multi.png +0 -0
  81. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat/broklyn.png +0 -0
  82. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat/jane-cooper.png +0 -0
  83. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat/rober-fox.png +0 -0
  84. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat/savvanah.png +0 -0
  85. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat-empty-chat.png +0 -0
  86. package/projects/adl-campaign-management-library-internal/src/assets/images/multichat.png +0 -0
  87. package/projects/adl-campaign-management-library-internal/src/assets/images/new.png +0 -0
  88. package/projects/adl-campaign-management-library-internal/src/assets/images/nowa.png +0 -0
  89. package/projects/adl-campaign-management-library-internal/src/assets/images/otp.png +0 -0
  90. package/projects/adl-campaign-management-library-internal/src/assets/images/plus.png +0 -0
  91. package/projects/adl-campaign-management-library-internal/src/assets/images/queue-multichat.png +0 -0
  92. package/projects/adl-campaign-management-library-internal/src/assets/images/remove.png +0 -0
  93. package/projects/adl-campaign-management-library-internal/src/assets/images/setup2fa.png +0 -0
  94. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/instagram.png +0 -0
  95. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/line.png +0 -0
  96. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/messenger.png +0 -0
  97. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/telegram.png +0 -0
  98. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/viber.png +0 -0
  99. package/projects/adl-campaign-management-library-internal/src/assets/images/socmeds/whatsapp.png +0 -0
  100. package/projects/adl-campaign-management-library-internal/src/assets/images/spinner.svg +6 -0
  101. package/projects/adl-campaign-management-library-internal/src/assets/images/switch.png +0 -0
  102. package/projects/adl-campaign-management-library-internal/src/assets/images/tg.png +0 -0
  103. package/projects/adl-campaign-management-library-internal/src/assets/images/up.png +0 -0
  104. package/projects/adl-campaign-management-library-internal/src/assets/images/wa.png +0 -0
  105. package/projects/adl-campaign-management-library-internal/src/assets/images/wadash.png +0 -0
  106. package/projects/adl-campaign-management-library-internal/src/assets/images/welcome.png +0 -0
  107. package/projects/adl-campaign-management-library-internal/src/assets/static-pages/signup.html +59 -0
  108. package/projects/adl-campaign-management-library-internal/src/assets/svg/Arrow - Right 2.svg +5 -0
  109. package/projects/adl-campaign-management-library-internal/src/assets/svg/Arrow-Down.svg +4 -0
  110. package/projects/adl-campaign-management-library-internal/src/assets/svg/Arrow-Right.svg +5 -0
  111. package/projects/adl-campaign-management-library-internal/src/assets/svg/Arrow-Up.svg +4 -0
  112. package/projects/adl-campaign-management-library-internal/src/assets/svg/ArrowBack.svg +4 -0
  113. package/projects/adl-campaign-management-library-internal/src/assets/svg/Condition.svg +15 -0
  114. package/projects/adl-campaign-management-library-internal/src/assets/svg/Download.svg +5 -0
  115. package/projects/adl-campaign-management-library-internal/src/assets/svg/End.svg +3 -0
  116. package/projects/adl-campaign-management-library-internal/src/assets/svg/HTTP-REQUEST.svg +22 -0
  117. package/projects/adl-campaign-management-library-internal/src/assets/svg/Icon-Account.svg +3 -0
  118. package/projects/adl-campaign-management-library-internal/src/assets/svg/IconsList.ts +126 -0
  119. package/projects/adl-campaign-management-library-internal/src/assets/svg/Info.svg +5 -0
  120. package/projects/adl-campaign-management-library-internal/src/assets/svg/Note-Down.svg +7 -0
  121. package/projects/adl-campaign-management-library-internal/src/assets/svg/Search.svg +14 -0
  122. package/projects/adl-campaign-management-library-internal/src/assets/svg/Send-Email.svg +8 -0
  123. package/projects/adl-campaign-management-library-internal/src/assets/svg/Send-WhatsApp-Button.svg +19 -0
  124. package/projects/adl-campaign-management-library-internal/src/assets/svg/Send-WhatsApp-List.svg +9 -0
  125. package/projects/adl-campaign-management-library-internal/src/assets/svg/Send-WhatsApp-Message.svg +4 -0
  126. package/projects/adl-campaign-management-library-internal/src/assets/svg/Start.svg +3 -0
  127. package/projects/adl-campaign-management-library-internal/src/assets/svg/Time Circle.svg +4 -0
  128. package/projects/adl-campaign-management-library-internal/src/assets/svg/Time-Circle.svg +4 -0
  129. package/projects/adl-campaign-management-library-internal/src/assets/svg/User-flow-rafiki.svg +469 -0
  130. package/projects/adl-campaign-management-library-internal/src/assets/svg/Userflow.svg +469 -0
  131. package/projects/adl-campaign-management-library-internal/src/assets/svg/Vector.svg +3 -0
  132. package/projects/adl-campaign-management-library-internal/src/assets/svg/Wait-Response.svg +21 -0
  133. package/projects/adl-campaign-management-library-internal/src/assets/svg/X.svg +4 -0
  134. package/projects/adl-campaign-management-library-internal/src/assets/svg/account.svg +20 -0
  135. package/projects/adl-campaign-management-library-internal/src/assets/svg/action/delete.svg +6 -0
  136. package/projects/adl-campaign-management-library-internal/src/assets/svg/action/edit.svg +9 -0
  137. package/projects/adl-campaign-management-library-internal/src/assets/svg/action/setup.svg +4 -0
  138. package/projects/adl-campaign-management-library-internal/src/assets/svg/action/upload.svg +3 -0
  139. package/projects/adl-campaign-management-library-internal/src/assets/svg/arrow-detail.svg +4 -0
  140. package/projects/adl-campaign-management-library-internal/src/assets/svg/arrow-flow.svg +3 -0
  141. package/projects/adl-campaign-management-library-internal/src/assets/svg/arrow-left.svg +5 -0
  142. package/projects/adl-campaign-management-library-internal/src/assets/svg/arrow-multichat.svg +5 -0
  143. package/projects/adl-campaign-management-library-internal/src/assets/svg/arrow-right2.svg +4 -0
  144. package/projects/adl-campaign-management-library-internal/src/assets/svg/audio.svg +1 -0
  145. package/projects/adl-campaign-management-library-internal/src/assets/svg/billing-active.svg +3 -0
  146. package/projects/adl-campaign-management-library-internal/src/assets/svg/billing-inactive.svg +3 -0
  147. package/projects/adl-campaign-management-library-internal/src/assets/svg/bold.svg +3 -0
  148. package/projects/adl-campaign-management-library-internal/src/assets/svg/branch.svg +4 -0
  149. package/projects/adl-campaign-management-library-internal/src/assets/svg/business-active.svg +3 -0
  150. package/projects/adl-campaign-management-library-internal/src/assets/svg/business-inactive.svg +3 -0
  151. package/projects/adl-campaign-management-library-internal/src/assets/svg/call 1.svg +15 -0
  152. package/projects/adl-campaign-management-library-internal/src/assets/svg/call.svg +15 -0
  153. package/projects/adl-campaign-management-library-internal/src/assets/svg/cancel.svg +3 -0
  154. package/projects/adl-campaign-management-library-internal/src/assets/svg/catalog-flow.svg +6 -0
  155. package/projects/adl-campaign-management-library-internal/src/assets/svg/chat 1.svg +11 -0
  156. package/projects/adl-campaign-management-library-internal/src/assets/svg/chat-agent.svg +5 -0
  157. package/projects/adl-campaign-management-library-internal/src/assets/svg/chat-agents.svg +5 -0
  158. package/projects/adl-campaign-management-library-internal/src/assets/svg/chat.svg +11 -0
  159. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist-package-white.svg +3 -0
  160. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist-package.svg +3 -0
  161. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist1-wa.svg +3 -0
  162. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist1.svg +3 -0
  163. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist2-wa.svg +12 -0
  164. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist2.svg +4 -0
  165. package/projects/adl-campaign-management-library-internal/src/assets/svg/checklist3-wa.svg +12 -0
  166. package/projects/adl-campaign-management-library-internal/src/assets/svg/close-ticket.svg +5 -0
  167. package/projects/adl-campaign-management-library-internal/src/assets/svg/communicate.svg +164 -0
  168. package/projects/adl-campaign-management-library-internal/src/assets/svg/contact.svg +9 -0
  169. package/projects/adl-campaign-management-library-internal/src/assets/svg/copy2.svg +3 -0
  170. package/projects/adl-campaign-management-library-internal/src/assets/svg/credential-active.svg +3 -0
  171. package/projects/adl-campaign-management-library-internal/src/assets/svg/customer-service-agent (1) 1.svg +18 -0
  172. package/projects/adl-campaign-management-library-internal/src/assets/svg/customer-service-agent.svg +18 -0
  173. package/projects/adl-campaign-management-library-internal/src/assets/svg/datepicker.svg +3 -0
  174. package/projects/adl-campaign-management-library-internal/src/assets/svg/document.svg +1 -0
  175. package/projects/adl-campaign-management-library-internal/src/assets/svg/dot-icon.svg +3 -0
  176. package/projects/adl-campaign-management-library-internal/src/assets/svg/dot-red-icon.svg +3 -0
  177. package/projects/adl-campaign-management-library-internal/src/assets/svg/download-image-green1.svg +3 -0
  178. package/projects/adl-campaign-management-library-internal/src/assets/svg/download_image.svg +4 -0
  179. package/projects/adl-campaign-management-library-internal/src/assets/svg/email (1) 1.svg +15 -0
  180. package/projects/adl-campaign-management-library-internal/src/assets/svg/email-lite.svg +10 -0
  181. package/projects/adl-campaign-management-library-internal/src/assets/svg/email.svg +15 -0
  182. package/projects/adl-campaign-management-library-internal/src/assets/svg/email2.svg +10 -0
  183. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/action.svg +3 -0
  184. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/actionblue.svg +3 -0
  185. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/actionorange.svg +3 -0
  186. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/arrow.svg +3 -0
  187. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/checkoff.svg +3 -0
  188. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/checkon.svg +4 -0
  189. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/close.svg +4 -0
  190. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/closeleft.svg +4 -0
  191. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/database.svg +13 -0
  192. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/databaseorange.svg +6 -0
  193. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/dropdown.svg +3 -0
  194. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/error.svg +5 -0
  195. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/errorblue.svg +5 -0
  196. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/errorred.svg +5 -0
  197. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/eye.svg +4 -0
  198. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/eyeblue.svg +4 -0
  199. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/flowy.css +49 -0
  200. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/flowy.js +645 -0
  201. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/grabme.svg +8 -0
  202. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/heart.svg +3 -0
  203. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/log.svg +4 -0
  204. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/logred.svg +4 -0
  205. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/meta.png +0 -0
  206. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/more.svg +5 -0
  207. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/search.svg +4 -0
  208. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/tile.png +0 -0
  209. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/time.svg +4 -0
  210. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/timeblue.svg +4 -0
  211. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/timecircle.svg +4 -0
  212. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/twitter.svg +10 -0
  213. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-builder/twitterorange.svg +10 -0
  214. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-receive-order.svg +4 -0
  215. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-receive-product-inquery.svg +4 -0
  216. package/projects/adl-campaign-management-library-internal/src/assets/svg/flow-variable.svg +4 -0
  217. package/projects/adl-campaign-management-library-internal/src/assets/svg/forgot-password.svg +15 -0
  218. package/projects/adl-campaign-management-library-internal/src/assets/svg/forgot.svg +15 -0
  219. package/projects/adl-campaign-management-library-internal/src/assets/svg/foto-header.svg +9 -0
  220. package/projects/adl-campaign-management-library-internal/src/assets/svg/happy.svg +6 -0
  221. package/projects/adl-campaign-management-library-internal/src/assets/svg/https 1.svg +22 -0
  222. package/projects/adl-campaign-management-library-internal/src/assets/svg/https.svg +22 -0
  223. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-bot-multichat.svg +6 -0
  224. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-down-arrow.svg +3 -0
  225. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-history.svg +3 -0
  226. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-inbox.svg +4 -0
  227. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-myticket.svg +6 -0
  228. package/projects/adl-campaign-management-library-internal/src/assets/svg/icon-up-arrow.svg +3 -0
  229. package/projects/adl-campaign-management-library-internal/src/assets/svg/icons-download-green.svg +4 -0
  230. package/projects/adl-campaign-management-library-internal/src/assets/svg/icons-download-white.svg +4 -0
  231. package/projects/adl-campaign-management-library-internal/src/assets/svg/info-blue.svg +3 -0
  232. package/projects/adl-campaign-management-library-internal/src/assets/svg/information.svg +3 -0
  233. package/projects/adl-campaign-management-library-internal/src/assets/svg/instagram.svg +25 -0
  234. package/projects/adl-campaign-management-library-internal/src/assets/svg/interaction.svg +4 -0
  235. package/projects/adl-campaign-management-library-internal/src/assets/svg/interactive 1.svg +31 -0
  236. package/projects/adl-campaign-management-library-internal/src/assets/svg/interactive.svg +31 -0
  237. package/projects/adl-campaign-management-library-internal/src/assets/svg/italic.svg +3 -0
  238. package/projects/adl-campaign-management-library-internal/src/assets/svg/keyword 1.svg +17 -0
  239. package/projects/adl-campaign-management-library-internal/src/assets/svg/keyword.svg +17 -0
  240. package/projects/adl-campaign-management-library-internal/src/assets/svg/left-parenthesis.svg +3 -0
  241. package/projects/adl-campaign-management-library-internal/src/assets/svg/line.svg +10 -0
  242. package/projects/adl-campaign-management-library-internal/src/assets/svg/link 1.svg +20 -0
  243. package/projects/adl-campaign-management-library-internal/src/assets/svg/link.svg +20 -0
  244. package/projects/adl-campaign-management-library-internal/src/assets/svg/login-user.svg +4 -0
  245. package/projects/adl-campaign-management-library-internal/src/assets/svg/login.svg +4 -0
  246. package/projects/adl-campaign-management-library-internal/src/assets/svg/messenger.svg +11 -0
  247. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/account-active.svg +4 -0
  248. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/account.svg +11 -0
  249. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/admin-active.svg +11 -0
  250. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/admin.svg +4 -0
  251. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/channel-active.svg +28 -0
  252. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/channel.svg +28 -0
  253. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/contact-book-active.svg +4 -0
  254. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/contact-book.svg +3 -0
  255. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/dashboard-active.svg +6 -0
  256. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/dashboard.svg +6 -0
  257. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/flow-builder-active.svg +7 -0
  258. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/flow-builder.svg +5 -0
  259. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/invoice-active.svg +15 -0
  260. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/invoice.svg +15 -0
  261. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/multichat-active.svg +5 -0
  262. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/multichat.svg +5 -0
  263. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/report-active.svg +6 -0
  264. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/report.svg +6 -0
  265. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/telegram-active.svg +4 -0
  266. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/telegram.svg +4 -0
  267. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/welcome.svg +106 -0
  268. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/whatsapp-active.svg +11 -0
  269. package/projects/adl-campaign-management-library-internal/src/assets/svg/navigation/whatsapp.svg +3 -0
  270. package/projects/adl-campaign-management-library-internal/src/assets/svg/open-ticket.svg +4 -0
  271. package/projects/adl-campaign-management-library-internal/src/assets/svg/pen.svg +3 -0
  272. package/projects/adl-campaign-management-library-internal/src/assets/svg/pencil-profile.svg +5 -0
  273. package/projects/adl-campaign-management-library-internal/src/assets/svg/pencil-small.svg +4 -0
  274. package/projects/adl-campaign-management-library-internal/src/assets/svg/pencil.svg +9 -0
  275. package/projects/adl-campaign-management-library-internal/src/assets/svg/pensil.svg +3 -0
  276. package/projects/adl-campaign-management-library-internal/src/assets/svg/points.svg +5 -0
  277. package/projects/adl-campaign-management-library-internal/src/assets/svg/reply-all.svg +11 -0
  278. package/projects/adl-campaign-management-library-internal/src/assets/svg/reset.svg +9 -0
  279. package/projects/adl-campaign-management-library-internal/src/assets/svg/right-parenthesis.svg +3 -0
  280. package/projects/adl-campaign-management-library-internal/src/assets/svg/robot-bot.svg +9 -0
  281. package/projects/adl-campaign-management-library-internal/src/assets/svg/row-top.svg +3 -0
  282. package/projects/adl-campaign-management-library-internal/src/assets/svg/send.svg +4 -0
  283. package/projects/adl-campaign-management-library-internal/src/assets/svg/sendLocation.svg +4 -0
  284. package/projects/adl-campaign-management-library-internal/src/assets/svg/setting.svg +3 -0
  285. package/projects/adl-campaign-management-library-internal/src/assets/svg/sign-up.svg +18 -0
  286. package/projects/adl-campaign-management-library-internal/src/assets/svg/sorting.svg +5 -0
  287. package/projects/adl-campaign-management-library-internal/src/assets/svg/subflow.svg +5 -0
  288. package/projects/adl-campaign-management-library-internal/src/assets/svg/switch.svg +3 -0
  289. package/projects/adl-campaign-management-library-internal/src/assets/svg/telegram.svg +4 -0
  290. package/projects/adl-campaign-management-library-internal/src/assets/svg/terms-and-conditions 1.svg +15 -0
  291. package/projects/adl-campaign-management-library-internal/src/assets/svg/terms-and-conditions.svg +15 -0
  292. package/projects/adl-campaign-management-library-internal/src/assets/svg/three-dot.svg +5 -0
  293. package/projects/adl-campaign-management-library-internal/src/assets/svg/total-agents.svg +4 -0
  294. package/projects/adl-campaign-management-library-internal/src/assets/svg/trash.svg +6 -0
  295. package/projects/adl-campaign-management-library-internal/src/assets/svg/upload.svg +3 -0
  296. package/projects/adl-campaign-management-library-internal/src/assets/svg/users.svg +6 -0
  297. package/projects/adl-campaign-management-library-internal/src/assets/svg/viber.svg +20 -0
  298. package/projects/adl-campaign-management-library-internal/src/assets/svg/video.svg +1 -0
  299. package/projects/adl-campaign-management-library-internal/src/assets/svg/wa-email.svg +8 -0
  300. package/projects/adl-campaign-management-library-internal/src/assets/svg/wa-media.svg +9 -0
  301. package/projects/adl-campaign-management-library-internal/src/assets/svg/wa-template.svg +16 -0
  302. package/projects/adl-campaign-management-library-internal/src/assets/svg/warning.svg +5 -0
  303. package/projects/adl-campaign-management-library-internal/src/assets/svg/welcome.svg +106 -0
  304. package/projects/adl-campaign-management-library-internal/src/assets/svg/whatsapp-bg.svg +9 -0
  305. package/projects/adl-campaign-management-library-internal/src/assets/svg/whatsapp-lite.svg +6 -0
  306. package/projects/adl-campaign-management-library-internal/src/assets/svg/whatsapp-template.svg +16 -0
  307. package/projects/adl-campaign-management-library-internal/src/assets/svg/whatsapp1.svg +4 -0
  308. package/projects/adl-campaign-management-library-internal/src/assets/svg/whatsapp2.svg +6 -0
  309. package/projects/adl-campaign-management-library-internal/src/environments/environment.dev.ts +4 -0
  310. package/projects/adl-campaign-management-library-internal/src/environments/environment.prod.ts +4 -0
  311. package/projects/adl-campaign-management-library-internal/src/environments/environment.stagin.ts +4 -0
  312. package/projects/adl-campaign-management-library-internal/src/environments/environment.ts +44 -0
  313. package/projects/adl-campaign-management-library-internal/src/flowy.js.bkp +979 -0
  314. package/projects/adl-campaign-management-library-internal/src/lib/adl-campaign-management-library-internal.component.spec.ts +26 -0
  315. package/projects/adl-campaign-management-library-internal/src/lib/adl-campaign-management-library-internal.component.ts +11 -0
  316. package/projects/adl-campaign-management-library-internal/src/lib/adl-campaign-management-library-internal.module.ts +30 -0
  317. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/campaign-management.component.html +10 -0
  318. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/campaign-management.component.ts +39 -0
  319. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/campaign-management.module.ts +113 -0
  320. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/campaign-count-final-response-dto.model.ts +11 -0
  321. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/contact-category-dto.model.ts +7 -0
  322. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/failover-req.model.ts +63 -0
  323. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/general-information-wa-req.model.ts +120 -0
  324. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/number-response-dto.ts +6 -0
  325. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/paging-response-dto.model.ts +5 -0
  326. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/product-dto.model.ts +6 -0
  327. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/scheduler-req.model.ts +39 -0
  328. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/template-wa.model.ts +41 -0
  329. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/whatsapp-account.ts +20 -0
  330. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/campaign-index.component.html +138 -0
  331. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/campaign-index.component.scss +101 -0
  332. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/campaign-index.component.ts +184 -0
  333. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/campaign-index.module.ts +70 -0
  334. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.html +163 -0
  335. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.scss +23 -0
  336. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.spec.ts +25 -0
  337. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.ts +178 -0
  338. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.html +148 -0
  339. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.scss +57 -0
  340. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.spec.ts +25 -0
  341. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.ts +191 -0
  342. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.ts +1 -0
  343. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.html +53 -0
  344. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.scss +23 -0
  345. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.spec.ts +25 -0
  346. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.ts +217 -0
  347. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.ts +48 -0
  348. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.ts +37 -0
  349. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.ts +63 -0
  350. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/client-dto.model.ts +13 -0
  351. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.ts +8 -0
  352. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/paging-response-dto.model.ts +5 -0
  353. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.ts +8 -0
  354. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.ts +5 -0
  355. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/table.model.ts +63 -0
  356. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/dashboard/dashboard.component.html +123 -0
  357. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/dashboard/dashboard.component.scss +74 -0
  358. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/dashboard/dashboard.component.ts +301 -0
  359. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/dashboard/dashboard.module.ts +49 -0
  360. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.html +162 -0
  361. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.scss +4 -0
  362. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.spec.ts +25 -0
  363. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.ts +390 -0
  364. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.html +153 -0
  365. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.scss +4 -0
  366. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.spec.ts +25 -0
  367. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.ts +368 -0
  368. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.html +163 -0
  369. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.scss +4 -0
  370. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.spec.ts +24 -0
  371. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.ts +390 -0
  372. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.html +574 -0
  373. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.scss +4 -0
  374. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.spec.ts +24 -0
  375. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.ts +732 -0
  376. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.html +253 -0
  377. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.scss +97 -0
  378. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.spec.ts +25 -0
  379. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.ts +454 -0
  380. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/general-information/general-information.component.html +302 -0
  381. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/general-information/general-information.component.scss +141 -0
  382. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/general-information/general-information.component.spec.ts +25 -0
  383. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/general-information/general-information.component.ts +262 -0
  384. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-campaign.component.html +116 -0
  385. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-campaign.component.scss +50 -0
  386. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-campaign.component.spec.ts +25 -0
  387. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-campaign.component.ts +598 -0
  388. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.html +140 -0
  389. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.scss +13 -0
  390. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.spec.ts +25 -0
  391. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.ts +419 -0
  392. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.html +160 -0
  393. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.scss +100 -0
  394. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.spec.ts +25 -0
  395. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.ts +143 -0
  396. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/summary/summary.component.html +13 -0
  397. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/summary/summary.component.scss +0 -0
  398. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/summary/summary.component.spec.ts +25 -0
  399. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/summary/summary.component.ts +10 -0
  400. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/wizard/wizard.component.html +33 -0
  401. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/wizard/wizard.component.scss +69 -0
  402. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/wizard/wizard.component.spec.ts +25 -0
  403. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/wizard/wizard.component.ts +15 -0
  404. package/projects/adl-campaign-management-library-internal/src/lib/campaign-management/util/enums.ts +17 -0
  405. package/projects/adl-campaign-management-library-internal/src/lib/core/const/billing-service-path.const.ts +5 -0
  406. package/projects/adl-campaign-management-library-internal/src/lib/core/const/billing-table-config.ts +17 -0
  407. package/projects/adl-campaign-management-library-internal/src/lib/core/const/constants.const.ts +215 -0
  408. package/projects/adl-campaign-management-library-internal/src/lib/core/const/create-package-service.const.ts +11 -0
  409. package/projects/adl-campaign-management-library-internal/src/lib/core/const/failover.const.ts +57 -0
  410. package/projects/adl-campaign-management-library-internal/src/lib/core/const/form-validators.ts +37 -0
  411. package/projects/adl-campaign-management-library-internal/src/lib/core/const/index.ts +6 -0
  412. package/projects/adl-campaign-management-library-internal/src/lib/core/const/rate-card-table-config.ts +22 -0
  413. package/projects/adl-campaign-management-library-internal/src/lib/core/const/validation-message.const.ts +61 -0
  414. package/projects/adl-campaign-management-library-internal/src/lib/core/directives/mat-select-infinite-scroll.ts +102 -0
  415. package/projects/adl-campaign-management-library-internal/src/lib/core/enums/constant.enum.ts +25 -0
  416. package/projects/adl-campaign-management-library-internal/src/lib/core/enums/http-request-param-type.enum.ts +7 -0
  417. package/projects/adl-campaign-management-library-internal/src/lib/core/enums/http-verb.enum.ts +7 -0
  418. package/projects/adl-campaign-management-library-internal/src/lib/core/enums/main-area.enum.ts +7 -0
  419. package/projects/adl-campaign-management-library-internal/src/lib/core/models/Package.ts +180 -0
  420. package/projects/adl-campaign-management-library-internal/src/lib/core/models/base-option.model.ts +4 -0
  421. package/projects/adl-campaign-management-library-internal/src/lib/core/models/billing-param-req.component.ts +21 -0
  422. package/projects/adl-campaign-management-library-internal/src/lib/core/models/country.model.ts +31 -0
  423. package/projects/adl-campaign-management-library-internal/src/lib/core/models/create-package-param.model.ts +168 -0
  424. package/projects/adl-campaign-management-library-internal/src/lib/core/models/http-body-req/model/http-body-req-pagination.model.ts +16 -0
  425. package/projects/adl-campaign-management-library-internal/src/lib/core/models/http-body-req/model/index.ts +1 -0
  426. package/projects/adl-campaign-management-library-internal/src/lib/core/models/http-body-resp.model.ts +27 -0
  427. package/projects/adl-campaign-management-library-internal/src/lib/core/models/index.ts +8 -0
  428. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-adapter-service-models/api-request.model.ts +18 -0
  429. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-adapter-service-models/endPointPipe.model.ts +3 -0
  430. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-adapter-service-models/parameter.model.ts +10 -0
  431. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.ts +7 -0
  432. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/request-models/app-request.ts +4 -0
  433. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/app-response-adl.ts +10 -0
  434. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/app-response.ts +16 -0
  435. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/paging.ts +6 -0
  436. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.ts +16 -0
  437. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/http-body-req/http-body-req-pagination.model.ts +16 -0
  438. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/http-body-req/index.ts +3 -0
  439. package/projects/adl-campaign-management-library-internal/src/lib/core/models/util/index.ts +3 -0
  440. package/projects/adl-campaign-management-library-internal/src/lib/core/services/api-adapter-service.service.ts +131 -0
  441. package/projects/adl-campaign-management-library-internal/src/lib/core/util/custom-paginator.ts +24 -0
  442. package/projects/adl-campaign-management-library-internal/src/lib/core/util/download-blob-file.ts +20 -0
  443. package/projects/adl-campaign-management-library-internal/src/lib/core/util/enum-to-option-generator.ts +28 -0
  444. package/projects/adl-campaign-management-library-internal/src/lib/core/util/http-param-generator.ts +19 -0
  445. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/confirmation/confirmation.component.html +37 -0
  446. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/confirmation/confirmation.component.scss +7 -0
  447. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/confirmation/confirmation.component.ts +21 -0
  448. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/confirmation/index.ts +1 -0
  449. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/confirmation.module.ts +12 -0
  450. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/shared/model/confirmation.model.ts +7 -0
  451. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/shared/model/index.ts +1 -0
  452. package/projects/adl-campaign-management-library-internal/src/lib/global/confirmation/shared/shared-services.service.ts +20 -0
  453. package/projects/adl-campaign-management-library-internal/src/lib/global/search/search/search.component.html +25 -0
  454. package/projects/adl-campaign-management-library-internal/src/lib/global/search/search/search.component.scss +7 -0
  455. package/projects/adl-campaign-management-library-internal/src/lib/global/search/search/search.component.spec.ts +25 -0
  456. package/projects/adl-campaign-management-library-internal/src/lib/global/search/search/search.component.ts +45 -0
  457. package/projects/adl-campaign-management-library-internal/src/lib/global/search/search.module.ts +26 -0
  458. package/projects/adl-campaign-management-library-internal/src/polyfills.ts +89 -0
  459. package/projects/adl-campaign-management-library-internal/src/public-api.ts +14 -0
  460. package/projects/adl-campaign-management-library-internal/src/styles/abstracts/_color.scss +121 -0
  461. package/projects/adl-campaign-management-library-internal/src/styles/abstracts/_font.scss +43 -0
  462. package/projects/adl-campaign-management-library-internal/src/styles/abstracts/_layout.scss +3 -0
  463. package/projects/adl-campaign-management-library-internal/src/styles/abstracts/_spacing.scss +39 -0
  464. package/projects/adl-campaign-management-library-internal/src/styles/abstracts/_variables.scss +4 -0
  465. package/projects/adl-campaign-management-library-internal/src/styles/base/_background.scss +12 -0
  466. package/projects/adl-campaign-management-library-internal/src/styles/base/_border.scss +43 -0
  467. package/projects/adl-campaign-management-library-internal/src/styles/base/_cursor.scss +7 -0
  468. package/projects/adl-campaign-management-library-internal/src/styles/base/_font.scss +238 -0
  469. package/projects/adl-campaign-management-library-internal/src/styles/base/_layout.scss +80 -0
  470. package/projects/adl-campaign-management-library-internal/src/styles/base/_spacing.scss +50 -0
  471. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_accordion.scss +118 -0
  472. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_alert.scss +57 -0
  473. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_badge.scss +29 -0
  474. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_breadcrumb.scss +28 -0
  475. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_button-group.scss +139 -0
  476. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_buttons.scss +112 -0
  477. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_card.scss +216 -0
  478. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_carousel.scss +229 -0
  479. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_close.scss +40 -0
  480. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_containers.scss +41 -0
  481. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_dropdown.scss +240 -0
  482. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_forms.scss +9 -0
  483. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_functions.scss +302 -0
  484. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_grid.scss +33 -0
  485. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_helpers.scss +9 -0
  486. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_images.scss +42 -0
  487. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_list-group.scss +174 -0
  488. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_mixins.scss +43 -0
  489. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_modal.scss +209 -0
  490. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_nav.scss +139 -0
  491. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_navbar.scss +335 -0
  492. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_offcanvas.scss +83 -0
  493. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_pagination.scss +64 -0
  494. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_placeholders.scss +51 -0
  495. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_popover.scss +158 -0
  496. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_progress.scss +48 -0
  497. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_reboot.scss +625 -0
  498. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_root.scss +54 -0
  499. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_spinners.scss +69 -0
  500. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_tables.scss +151 -0
  501. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_toasts.scss +51 -0
  502. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_tooltip.scss +115 -0
  503. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_transitions.scss +27 -0
  504. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_type.scss +104 -0
  505. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_utilities.scss +630 -0
  506. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/_variables.scss +1641 -0
  507. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/bootstrap-grid.scss +67 -0
  508. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/bootstrap-reboot.scss +13 -0
  509. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/bootstrap-utilities.scss +18 -0
  510. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/bootstrap.scss +53 -0
  511. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_floating-labels.scss +63 -0
  512. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_form-check.scss +152 -0
  513. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_form-control.scss +219 -0
  514. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_form-range.scss +91 -0
  515. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_form-select.scss +72 -0
  516. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_form-text.scss +11 -0
  517. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_input-group.scss +121 -0
  518. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_labels.scss +36 -0
  519. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/forms/_validation.scss +12 -0
  520. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_clearfix.scss +3 -0
  521. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_colored-links.scss +12 -0
  522. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_position.scss +30 -0
  523. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_ratio.scss +26 -0
  524. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_stacks.scss +15 -0
  525. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_stretched-link.scss +15 -0
  526. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_text-truncation.scss +7 -0
  527. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_visually-hidden.scss +8 -0
  528. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/helpers/_vr.scss +8 -0
  529. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_alert.scss +11 -0
  530. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_backdrop.scss +14 -0
  531. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_border-radius.scss +78 -0
  532. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_box-shadow.scss +18 -0
  533. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_breakpoints.scss +127 -0
  534. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_buttons.scss +133 -0
  535. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_caret.scss +64 -0
  536. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_clearfix.scss +9 -0
  537. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_color-scheme.scss +7 -0
  538. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_container.scss +9 -0
  539. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_deprecate.scss +10 -0
  540. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_forms.scss +144 -0
  541. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_gradients.scss +47 -0
  542. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_grid.scss +150 -0
  543. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_image.scss +16 -0
  544. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_list-group.scss +24 -0
  545. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_lists.scss +7 -0
  546. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_pagination.scss +31 -0
  547. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_reset-text.scss +17 -0
  548. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_resize.scss +6 -0
  549. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_table-variants.scss +21 -0
  550. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_text-truncate.scss +8 -0
  551. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_transition.scss +26 -0
  552. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_utilities.scss +89 -0
  553. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/mixins/_visually-hidden.scss +29 -0
  554. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/utilities/_api.scss +47 -0
  555. package/projects/adl-campaign-management-library-internal/src/styles/bootstrap/vendor/_rfs.scss +354 -0
  556. package/projects/adl-campaign-management-library-internal/src/styles/component/_button.scss +134 -0
  557. package/projects/adl-campaign-management-library-internal/src/styles/component/_filter.scss +69 -0
  558. package/projects/adl-campaign-management-library-internal/src/styles/component/_flow-builder.scss +15 -0
  559. package/projects/adl-campaign-management-library-internal/src/styles/component/_input.scss +203 -0
  560. package/projects/adl-campaign-management-library-internal/src/styles/component/_multichat.scss +391 -0
  561. package/projects/adl-campaign-management-library-internal/src/styles/component/_pagination.scss +44 -0
  562. package/projects/adl-campaign-management-library-internal/src/styles/component/_sidenav.scss +164 -0
  563. package/projects/adl-campaign-management-library-internal/src/styles/component/_slide-toggle.scss +29 -0
  564. package/projects/adl-campaign-management-library-internal/src/styles/component/_table.scss +129 -0
  565. package/projects/adl-campaign-management-library-internal/src/styles/component/_toastr.scss +26 -0
  566. package/projects/adl-campaign-management-library-internal/src/styles/component/_toolbar.scss +68 -0
  567. package/projects/adl-campaign-management-library-internal/src/styles/customize-material.scss +57 -0
  568. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.eot +0 -0
  569. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.ijmap +1 -0
  570. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.svg +2373 -0
  571. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.ttf +0 -0
  572. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.woff +0 -0
  573. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.woff2 +0 -0
  574. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/codepoints +932 -0
  575. package/projects/adl-campaign-management-library-internal/src/styles/fonts/MaterialIcons/material-icons.css +36 -0
  576. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/OFL.txt +93 -0
  577. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Black.ttf +0 -0
  578. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-BlackItalic.ttf +0 -0
  579. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Bold.ttf +0 -0
  580. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-BoldItalic.ttf +0 -0
  581. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-ExtraBold.ttf +0 -0
  582. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-ExtraBoldItalic.ttf +0 -0
  583. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-ExtraLight.ttf +0 -0
  584. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-ExtraLightItalic.ttf +0 -0
  585. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Italic.ttf +0 -0
  586. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Light.ttf +0 -0
  587. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-LightItalic.ttf +0 -0
  588. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Medium.ttf +0 -0
  589. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-MediumItalic.ttf +0 -0
  590. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Regular.ttf +0 -0
  591. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-SemiBold.ttf +0 -0
  592. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-SemiBoldItalic.ttf +0 -0
  593. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-Thin.ttf +0 -0
  594. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Poppins/Poppins-ThinItalic.ttf +0 -0
  595. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/LICENSE.txt +202 -0
  596. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Black.ttf +0 -0
  597. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
  598. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Bold.ttf +0 -0
  599. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
  600. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Italic.ttf +0 -0
  601. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Light.ttf +0 -0
  602. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
  603. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Medium.ttf +0 -0
  604. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
  605. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Regular.ttf +0 -0
  606. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-Thin.ttf +0 -0
  607. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
  608. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/OFL.txt +93 -0
  609. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-Black.ttf +0 -0
  610. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-Bold.ttf +0 -0
  611. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-BoldItalic.ttf +0 -0
  612. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-ExtraLight.ttf +0 -0
  613. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-ExtraLightItalic.ttf +0 -0
  614. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-Italic.ttf +0 -0
  615. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-Light.ttf +0 -0
  616. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-LightItalic.ttf +0 -0
  617. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-Regular.ttf +0 -0
  618. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-SemiBold.ttf +0 -0
  619. package/projects/adl-campaign-management-library-internal/src/styles/fonts/Titillium/TitilliumWeb-SemiBoldItalic.ttf +0 -0
  620. package/projects/adl-campaign-management-library-internal/src/styles/themes/_theme.scss +22 -0
  621. package/projects/adl-campaign-management-library-internal/src/test.ts +26 -0
  622. package/projects/adl-campaign-management-library-internal/tsconfig.lib.json +25 -0
  623. package/projects/adl-campaign-management-library-internal/tsconfig.lib.prod.json +6 -0
  624. package/projects/adl-campaign-management-library-internal/tsconfig.spec.json +17 -0
  625. package/projects/adl-campaign-management-library-internal/tslint.json +17 -0
  626. package/projects/adl-campaign-management-library-internal/typings.d.ts +4 -0
  627. package/projects/adl-campaign-management-library-internal-test/browserslist +12 -0
  628. package/projects/adl-campaign-management-library-internal-test/e2e/protractor.conf.js +32 -0
  629. package/projects/adl-campaign-management-library-internal-test/e2e/src/app.e2e-spec.ts +23 -0
  630. package/projects/adl-campaign-management-library-internal-test/e2e/src/app.po.ts +11 -0
  631. package/projects/adl-campaign-management-library-internal-test/e2e/tsconfig.json +13 -0
  632. package/projects/adl-campaign-management-library-internal-test/karma.conf.js +32 -0
  633. package/projects/adl-campaign-management-library-internal-test/src/app/app.component.css +5 -0
  634. package/projects/adl-campaign-management-library-internal-test/src/app/app.component.html +3 -0
  635. package/projects/adl-campaign-management-library-internal-test/src/app/app.component.spec.ts +31 -0
  636. package/projects/adl-campaign-management-library-internal-test/src/app/app.component.ts +18 -0
  637. package/projects/adl-campaign-management-library-internal-test/src/app/app.module.ts +27 -0
  638. package/projects/adl-campaign-management-library-internal-test/src/app/base.service.ts +227 -0
  639. package/projects/adl-campaign-management-library-internal-test/src/app/icon.service.ts +30 -0
  640. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/header/header.component.html +69 -0
  641. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/header/header.component.scss +6 -0
  642. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/header/header.component.spec.ts +25 -0
  643. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/header/header.component.ts +129 -0
  644. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/header/index.ts +1 -0
  645. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/menu-list-item/index.ts +1 -0
  646. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/menu-list-item/menu-list-item.component.html +34 -0
  647. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/menu-list-item/menu-list-item.component.scss +0 -0
  648. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/menu-list-item/menu-list-item.component.spec.ts +25 -0
  649. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/menu-list-item/menu-list-item.component.ts +79 -0
  650. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/sidebar/index.ts +1 -0
  651. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/sidebar/sidebar.component.html +13 -0
  652. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/sidebar/sidebar.component.scss +0 -0
  653. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/sidebar/sidebar.component.spec.ts +25 -0
  654. package/projects/adl-campaign-management-library-internal-test/src/app/layout/component/sidebar/sidebar.component.ts +53 -0
  655. package/projects/adl-campaign-management-library-internal-test/src/app/layout/layout-routing.module.ts +17 -0
  656. package/projects/adl-campaign-management-library-internal-test/src/app/layout/layout.module.ts +45 -0
  657. package/projects/adl-campaign-management-library-internal-test/src/app/layout/page/layout/index.ts +1 -0
  658. package/projects/adl-campaign-management-library-internal-test/src/app/layout/page/layout/layout.component.html +19 -0
  659. package/projects/adl-campaign-management-library-internal-test/src/app/layout/page/layout/layout.component.scss +0 -0
  660. package/projects/adl-campaign-management-library-internal-test/src/app/layout/page/layout/layout.component.spec.ts +25 -0
  661. package/projects/adl-campaign-management-library-internal-test/src/app/layout/page/layout/layout.component.ts +31 -0
  662. package/projects/adl-campaign-management-library-internal-test/src/app/layout/shared/enum/index.ts +1 -0
  663. package/projects/adl-campaign-management-library-internal-test/src/app/layout/shared/enum/user-role.enum.ts +4 -0
  664. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/breadcrumb/breadcrumb/breadcrumb.component.html +24 -0
  665. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/breadcrumb/breadcrumb/breadcrumb.component.scss +0 -0
  666. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/breadcrumb/breadcrumb/breadcrumb.component.ts +78 -0
  667. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/breadcrumb/breadcrumb/index.ts +1 -0
  668. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/breadcrumb/breadcrumb.module.ts +11 -0
  669. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/confirmation/confirmation.component.html +27 -0
  670. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/confirmation/confirmation.component.scss +0 -0
  671. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/confirmation/confirmation.component.ts +23 -0
  672. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/confirmation.module.ts +13 -0
  673. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/shared/model/confirmation.model.ts +7 -0
  674. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/search/search/index.ts +1 -0
  675. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/search/search/search.component.html +24 -0
  676. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/search/search/search.component.scss +8 -0
  677. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/search/search/search.component.ts +51 -0
  678. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/search/search.module.ts +23 -0
  679. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/index.ts +1 -0
  680. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/const/index.ts +1 -0
  681. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/const/upload-file-type.const.ts +44 -0
  682. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/model/index.ts +3 -0
  683. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/model/upload-file-req.model.ts +13 -0
  684. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/model/upload-file-type.model.ts +15 -0
  685. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/shared/model/upload-file.model.ts +14 -0
  686. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/upload-file.module.ts +18 -0
  687. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/upload-image/index.ts +1 -0
  688. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/upload-image/upload-file.component.html +25 -0
  689. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/upload-image/upload-file.component.scss +13 -0
  690. package/projects/adl-campaign-management-library-internal-test/src/app/ui/component/upload-image/upload-image/upload-file.component.ts +110 -0
  691. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/empty-space/empty-space/empty-space.directives.ts +25 -0
  692. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/empty-space/empty-space.module.ts +8 -0
  693. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/format-input.module.ts +24 -0
  694. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/input-currency/index.ts +1 -0
  695. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/input-currency/input-currency.directive.ts +26 -0
  696. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/number/index.ts +4 -0
  697. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/number/input-decimal.directive.ts +70 -0
  698. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/number/input-number.directive.ts +195 -0
  699. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/number/input-quantity.directive.ts +72 -0
  700. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/number/input-rupiah.directive.ts +78 -0
  701. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/only-number/index.ts +1 -0
  702. package/projects/adl-campaign-management-library-internal-test/src/app/ui/directives/format-input/only-number/only-number.directive.ts +196 -0
  703. package/projects/adl-campaign-management-library-internal-test/src/app/ui/http-body-resp.model.ts +27 -0
  704. package/projects/adl-campaign-management-library-internal-test/src/app/ui/http-param-generator.ts +19 -0
  705. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/rupiah/rupiah/index.ts +1 -0
  706. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/rupiah/rupiah/rupiah.pipe.spec.ts +31 -0
  707. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/rupiah/rupiah/rupiah.pipe.ts +23 -0
  708. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/rupiah/rupiah.module.ts +13 -0
  709. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/safe/safe/index.ts +1 -0
  710. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/safe/safe/safe.pipe.ts +36 -0
  711. package/projects/adl-campaign-management-library-internal-test/src/app/ui/pipes/safe/safe-pipe.module.ts +8 -0
  712. package/projects/adl-campaign-management-library-internal-test/src/assets/.gitkeep +0 -0
  713. package/projects/adl-campaign-management-library-internal-test/src/assets/Dataset_Heatmap.csv +29 -0
  714. package/projects/adl-campaign-management-library-internal-test/src/assets/flowbuilder/flowbuilder.js +5875 -0
  715. package/projects/adl-campaign-management-library-internal-test/src/assets/flowbuilder/index.html +736 -0
  716. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-128x128.png +0 -0
  717. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-144x144.png +0 -0
  718. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-152x152.png +0 -0
  719. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-192x192.png +0 -0
  720. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-384x384.png +0 -0
  721. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-512x512.png +0 -0
  722. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-72x72.png +0 -0
  723. package/projects/adl-campaign-management-library-internal-test/src/assets/icons/icon-96x96.png +0 -0
  724. package/projects/adl-campaign-management-library-internal-test/src/assets/images/1.png +0 -0
  725. package/projects/adl-campaign-management-library-internal-test/src/assets/images/5.png +0 -0
  726. package/projects/adl-campaign-management-library-internal-test/src/assets/images/55.png +0 -0
  727. package/projects/adl-campaign-management-library-internal-test/src/assets/images/6.png +0 -0
  728. package/projects/adl-campaign-management-library-internal-test/src/assets/images/8.png +0 -0
  729. package/projects/adl-campaign-management-library-internal-test/src/assets/images/Ellipse46.png +0 -0
  730. package/projects/adl-campaign-management-library-internal-test/src/assets/images/Ellipse47.png +0 -0
  731. package/projects/adl-campaign-management-library-internal-test/src/assets/images/alert-email.svg +3 -0
  732. package/projects/adl-campaign-management-library-internal-test/src/assets/images/alerts.png +0 -0
  733. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin1.jpg +0 -0
  734. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin2.jpg +0 -0
  735. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin3.jpg +0 -0
  736. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin4.jpg +0 -0
  737. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin5.jpg +0 -0
  738. package/projects/adl-campaign-management-library-internal-test/src/assets/images/amin6.jpg +0 -0
  739. package/projects/adl-campaign-management-library-internal-test/src/assets/images/background-login.png +0 -0
  740. package/projects/adl-campaign-management-library-internal-test/src/assets/images/bell.png +0 -0
  741. package/projects/adl-campaign-management-library-internal-test/src/assets/images/bg.jpg +0 -0
  742. package/projects/adl-campaign-management-library-internal-test/src/assets/images/block-access.svg +3 -0
  743. package/projects/adl-campaign-management-library-internal-test/src/assets/images/carbon_warning.png +0 -0
  744. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/account.png +0 -0
  745. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/alert.png +0 -0
  746. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/appoinment.png +0 -0
  747. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/delivery.png +0 -0
  748. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/group.png +0 -0
  749. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/problem.png +0 -0
  750. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/reply.png +0 -0
  751. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/screenwafooter.png +0 -0
  752. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/telegramButton.png +0 -0
  753. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/telegramScreen.png +0 -0
  754. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/tiket.png +0 -0
  755. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/wallet.png +0 -0
  756. package/projects/adl-campaign-management-library-internal-test/src/assets/images/category/whatsappScreen.png +0 -0
  757. package/projects/adl-campaign-management-library-internal-test/src/assets/images/ceklist.png +0 -0
  758. package/projects/adl-campaign-management-library-internal-test/src/assets/images/check.png +0 -0
  759. package/projects/adl-campaign-management-library-internal-test/src/assets/images/circle_cancel.png +0 -0
  760. package/projects/adl-campaign-management-library-internal-test/src/assets/images/circle_warn_icon.png +0 -0
  761. package/projects/adl-campaign-management-library-internal-test/src/assets/images/close-primary.png +0 -0
  762. package/projects/adl-campaign-management-library-internal-test/src/assets/images/contact.png +0 -0
  763. package/projects/adl-campaign-management-library-internal-test/src/assets/images/copy.png +0 -0
  764. package/projects/adl-campaign-management-library-internal-test/src/assets/images/copy2.png +0 -0
  765. package/projects/adl-campaign-management-library-internal-test/src/assets/images/cs.png +0 -0
  766. package/projects/adl-campaign-management-library-internal-test/src/assets/images/dash.png +0 -0
  767. package/projects/adl-campaign-management-library-internal-test/src/assets/images/dashboard.jpeg +0 -0
  768. package/projects/adl-campaign-management-library-internal-test/src/assets/images/default-image-chat.svg +3 -0
  769. package/projects/adl-campaign-management-library-internal-test/src/assets/images/default.jpeg +0 -0
  770. package/projects/adl-campaign-management-library-internal-test/src/assets/images/default.jpg +0 -0
  771. package/projects/adl-campaign-management-library-internal-test/src/assets/images/domain-body.png +0 -0
  772. package/projects/adl-campaign-management-library-internal-test/src/assets/images/down.png +0 -0
  773. package/projects/adl-campaign-management-library-internal-test/src/assets/images/download-icon.png +0 -0
  774. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email-body.png +0 -0
  775. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email-contact.png +0 -0
  776. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email.png +0 -0
  777. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email_body2.png +0 -0
  778. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email_builder.png +0 -0
  779. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email_domain.png +0 -0
  780. package/projects/adl-campaign-management-library-internal-test/src/assets/images/email_frame.png +0 -0
  781. package/projects/adl-campaign-management-library-internal-test/src/assets/images/empty.png +0 -0
  782. package/projects/adl-campaign-management-library-internal-test/src/assets/images/error.png +0 -0
  783. package/projects/adl-campaign-management-library-internal-test/src/assets/images/exclamation.png +0 -0
  784. package/projects/adl-campaign-management-library-internal-test/src/assets/images/file-icon.png +0 -0
  785. package/projects/adl-campaign-management-library-internal-test/src/assets/images/filter-icon.svg +5 -0
  786. package/projects/adl-campaign-management-library-internal-test/src/assets/images/flowb.png +0 -0
  787. package/projects/adl-campaign-management-library-internal-test/src/assets/images/flowbuilder.png +0 -0
  788. package/projects/adl-campaign-management-library-internal-test/src/assets/images/forms.png +0 -0
  789. package/projects/adl-campaign-management-library-internal-test/src/assets/images/google-logo.png +0 -0
  790. package/projects/adl-campaign-management-library-internal-test/src/assets/images/icon-file.png +0 -0
  791. package/projects/adl-campaign-management-library-internal-test/src/assets/images/info.png +0 -0
  792. package/projects/adl-campaign-management-library-internal-test/src/assets/images/info_green.png +0 -0
  793. package/projects/adl-campaign-management-library-internal-test/src/assets/images/iphone.png +0 -0
  794. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line-dashboard.png +0 -0
  795. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line-login.png +0 -0
  796. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line-logo.png +0 -0
  797. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line-message-api.png +0 -0
  798. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line-official-account.png +0 -0
  799. package/projects/adl-campaign-management-library-internal-test/src/assets/images/line.svg +3 -0
  800. package/projects/adl-campaign-management-library-internal-test/src/assets/images/list.png +0 -0
  801. package/projects/adl-campaign-management-library-internal-test/src/assets/images/logo-white.png +0 -0
  802. package/projects/adl-campaign-management-library-internal-test/src/assets/images/logout.png +0 -0
  803. package/projects/adl-campaign-management-library-internal-test/src/assets/images/lucide_info.png +0 -0
  804. package/projects/adl-campaign-management-library-internal-test/src/assets/images/map.png +0 -0
  805. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multi.png +0 -0
  806. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat/broklyn.png +0 -0
  807. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat/jane-cooper.png +0 -0
  808. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat/rober-fox.png +0 -0
  809. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat/savvanah.png +0 -0
  810. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat-empty-chat.png +0 -0
  811. package/projects/adl-campaign-management-library-internal-test/src/assets/images/multichat.png +0 -0
  812. package/projects/adl-campaign-management-library-internal-test/src/assets/images/new.png +0 -0
  813. package/projects/adl-campaign-management-library-internal-test/src/assets/images/nowa.png +0 -0
  814. package/projects/adl-campaign-management-library-internal-test/src/assets/images/otp.png +0 -0
  815. package/projects/adl-campaign-management-library-internal-test/src/assets/images/plus-primary.png +0 -0
  816. package/projects/adl-campaign-management-library-internal-test/src/assets/images/plus.png +0 -0
  817. package/projects/adl-campaign-management-library-internal-test/src/assets/images/queue-multichat.png +0 -0
  818. package/projects/adl-campaign-management-library-internal-test/src/assets/images/remove.png +0 -0
  819. package/projects/adl-campaign-management-library-internal-test/src/assets/images/send-domain.svg +85 -0
  820. package/projects/adl-campaign-management-library-internal-test/src/assets/images/sender-email.png +0 -0
  821. package/projects/adl-campaign-management-library-internal-test/src/assets/images/setup2fa.png +0 -0
  822. package/projects/adl-campaign-management-library-internal-test/src/assets/images/sms.png +0 -0
  823. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/email-contact.png +0 -0
  824. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/instagram.png +0 -0
  825. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/line.png +0 -0
  826. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/messenger.png +0 -0
  827. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/sms.png +0 -0
  828. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/telegram.png +0 -0
  829. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/viber.png +0 -0
  830. package/projects/adl-campaign-management-library-internal-test/src/assets/images/socmeds/whatsapp.png +0 -0
  831. package/projects/adl-campaign-management-library-internal-test/src/assets/images/sort.png +0 -0
  832. package/projects/adl-campaign-management-library-internal-test/src/assets/images/spinner.svg +6 -0
  833. package/projects/adl-campaign-management-library-internal-test/src/assets/images/switch.png +0 -0
  834. package/projects/adl-campaign-management-library-internal-test/src/assets/images/telin-bg.png +0 -0
  835. package/projects/adl-campaign-management-library-internal-test/src/assets/images/tg.png +0 -0
  836. package/projects/adl-campaign-management-library-internal-test/src/assets/images/up.png +0 -0
  837. package/projects/adl-campaign-management-library-internal-test/src/assets/images/wa.png +0 -0
  838. package/projects/adl-campaign-management-library-internal-test/src/assets/images/wa.svg +15 -0
  839. package/projects/adl-campaign-management-library-internal-test/src/assets/images/wadash.png +0 -0
  840. package/projects/adl-campaign-management-library-internal-test/src/assets/images/welcome.png +0 -0
  841. package/projects/adl-campaign-management-library-internal-test/src/assets/ringtone/succeeded-message-tone.mp3 +0 -0
  842. package/projects/adl-campaign-management-library-internal-test/src/assets/static-pages/CPP.html +49 -0
  843. package/projects/adl-campaign-management-library-internal-test/src/assets/static-pages/GTC.html +50 -0
  844. package/projects/adl-campaign-management-library-internal-test/src/assets/static-pages/signup.html +64 -0
  845. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Arrow - Right 2.svg +5 -0
  846. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Arrow-Down.svg +4 -0
  847. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Arrow-Right.svg +5 -0
  848. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Arrow-Up.svg +4 -0
  849. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/ArrowBack.svg +4 -0
  850. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Condition.svg +15 -0
  851. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Download.svg +4 -0
  852. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/End.svg +3 -0
  853. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/HTTP-REQUEST.svg +22 -0
  854. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Icon-Account.svg +3 -0
  855. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/IconsList.ts +256 -0
  856. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Info.svg +5 -0
  857. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/LINE-ACTIVE.svg +15 -0
  858. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/LINE-INACTIVE.svg +8 -0
  859. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/LINE_Icon.png +0 -0
  860. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/LINE_Icon.svg +9 -0
  861. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Note-Down.svg +7 -0
  862. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Search.svg +14 -0
  863. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Send-Email.svg +8 -0
  864. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Send-WhatsApp-Button.svg +19 -0
  865. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Send-WhatsApp-List.svg +9 -0
  866. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Send-WhatsApp-Message.svg +4 -0
  867. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Start.svg +3 -0
  868. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Time Circle.svg +4 -0
  869. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Time-Circle.svg +4 -0
  870. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/User-flow-rafiki.svg +469 -0
  871. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Userflow.svg +469 -0
  872. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Vector.svg +3 -0
  873. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/WA_Icon.svg +5 -0
  874. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/Wait-Response.svg +21 -0
  875. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/X.svg +4 -0
  876. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/account.svg +20 -0
  877. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/Key.svg +4 -0
  878. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/Pesawat Kertas.svg +4 -0
  879. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/View (Eye).svg +11 -0
  880. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/blue_add_plus.svg +4 -0
  881. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/delete.svg +3 -0
  882. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/edit.svg +3 -0
  883. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/icon_transfer_ticket.svg +22 -0
  884. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/red_add_plus.svg +4 -0
  885. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/red_delete_minus.svg +3 -0
  886. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/setup.svg +4 -0
  887. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/action/upload.svg +3 -0
  888. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/align-left-black.svg +5 -0
  889. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/align-left-white.svg +5 -0
  890. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/antenna.svg +50 -0
  891. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/arrow-detail.svg +4 -0
  892. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/arrow-flow.svg +3 -0
  893. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/arrow-left.svg +5 -0
  894. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/arrow-multichat.svg +5 -0
  895. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/arrow-right2.svg +4 -0
  896. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/audio.svg +1 -0
  897. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/bell_notif.svg +3 -0
  898. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/bg_widget_campaign.svg +201 -0
  899. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/billing-active.svg +3 -0
  900. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/billing-inactive.svg +3 -0
  901. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/bold.svg +3 -0
  902. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/branch.svg +4 -0
  903. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/broadcast-now.svg +13 -0
  904. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/broadcast-schedule.svg +11 -0
  905. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/business-active.svg +3 -0
  906. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/business-inactive.svg +3 -0
  907. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/call 1.svg +15 -0
  908. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/call.svg +15 -0
  909. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/cancel.svg +3 -0
  910. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/catalog-flow.svg +6 -0
  911. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat 1.svg +11 -0
  912. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat-agent.svg +5 -0
  913. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat-agents.svg +5 -0
  914. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat-red.svg +3 -0
  915. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat.svg +11 -0
  916. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chat_notify.svg +16 -0
  917. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist-package-white.svg +3 -0
  918. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist-package.svg +3 -0
  919. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist1-wa.svg +3 -0
  920. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist1.svg +3 -0
  921. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist2-wa.svg +12 -0
  922. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist2.svg +4 -0
  923. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/checklist3-wa.svg +12 -0
  924. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/chevron-left.svg +3 -0
  925. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/clock-of-circular.svg +48 -0
  926. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/close-ticket.svg +5 -0
  927. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/communicate.svg +164 -0
  928. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/contact.svg +9 -0
  929. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/copy2.svg +3 -0
  930. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/credential-active.svg +3 -0
  931. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/curly-bracket.svg +3 -0
  932. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/customer-service-agent (1) 1.svg +18 -0
  933. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/customer-service-agent.svg +18 -0
  934. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/danger.svg +3 -0
  935. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dashboard-email.svg +12 -0
  936. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dashboard-line.svg +12 -0
  937. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dashboard-sms.svg +12 -0
  938. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dashboard-wa.svg +20 -0
  939. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/datepicker.svg +3 -0
  940. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/document.svg +1 -0
  941. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dot-icon.svg +3 -0
  942. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/dot-red-icon.svg +3 -0
  943. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/download-image-green1.svg +3 -0
  944. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/download2.svg +4 -0
  945. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/download_image.svg +4 -0
  946. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/drag-handle.svg +6 -0
  947. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/ellipse.svg +3 -0
  948. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/email (1) 1.svg +15 -0
  949. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/email-lite.svg +10 -0
  950. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/email.svg +15 -0
  951. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/email2.svg +10 -0
  952. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/email5.svg +3 -0
  953. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/envelope-red.svg +3 -0
  954. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/action.svg +3 -0
  955. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/actionblue.svg +3 -0
  956. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/actionorange.svg +3 -0
  957. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/arrow.svg +3 -0
  958. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/checkoff.svg +3 -0
  959. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/checkon.svg +4 -0
  960. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/close.svg +4 -0
  961. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/closeleft.svg +4 -0
  962. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/database.svg +13 -0
  963. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/databaseorange.svg +6 -0
  964. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/dropdown.svg +3 -0
  965. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/error.svg +5 -0
  966. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/errorblue.svg +5 -0
  967. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/errorred.svg +5 -0
  968. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/eye.svg +4 -0
  969. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/eyeblue.svg +4 -0
  970. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/flowy.css +49 -0
  971. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/flowy.js +1268 -0
  972. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/grabme.svg +8 -0
  973. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/heart.svg +3 -0
  974. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/log.svg +4 -0
  975. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/logred.svg +4 -0
  976. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/meta.png +0 -0
  977. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/more.svg +5 -0
  978. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/search.svg +4 -0
  979. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/tile.png +0 -0
  980. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/time.svg +4 -0
  981. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/timeblue.svg +4 -0
  982. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/timecircle.svg +4 -0
  983. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/twitter.svg +10 -0
  984. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-builder/twitterorange.svg +10 -0
  985. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-receive-order.svg +4 -0
  986. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-receive-product-inquery.svg +4 -0
  987. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/flow-variable.svg +4 -0
  988. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/forgot-password.svg +15 -0
  989. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/forgot.svg +15 -0
  990. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/foto-header.svg +9 -0
  991. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/happy.svg +6 -0
  992. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/https 1.svg +22 -0
  993. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/https.svg +22 -0
  994. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-bot-multichat.svg +6 -0
  995. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-date-grey.svg +3 -0
  996. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-down-arrow.svg +3 -0
  997. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-download-file.svg +6 -0
  998. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-email-gray.svg +6 -0
  999. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-history.svg +3 -0
  1000. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-inbox.svg +4 -0
  1001. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-line-gray.svg +6 -0
  1002. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-maintenance.svg +93 -0
  1003. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-myticket.svg +6 -0
  1004. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-pending-approval-campaign.svg +5 -0
  1005. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-sms-gray.svg +6 -0
  1006. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-total-campaign.svg +4 -0
  1007. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-up-arrow.svg +3 -0
  1008. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-use-campaign.svg +4 -0
  1009. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-voice-gray.svg +4 -0
  1010. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-wa-gray.svg +6 -0
  1011. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon-warning-yellow.svg +5 -0
  1012. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icon_send_outline.svg +3 -0
  1013. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icons-download-green.svg +4 -0
  1014. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icons-download-nocolor.svg +4 -0
  1015. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/icons-download-white.svg +4 -0
  1016. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/info-blue.svg +3 -0
  1017. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/information.svg +3 -0
  1018. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/instagram.svg +25 -0
  1019. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/interaction.svg +4 -0
  1020. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/interactive 1.svg +31 -0
  1021. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/interactive.svg +31 -0
  1022. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/italic.svg +3 -0
  1023. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/keyword 1.svg +17 -0
  1024. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/keyword.svg +17 -0
  1025. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/left-parenthesis.svg +3 -0
  1026. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/line-mc-dashboard.svg +8 -0
  1027. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/line-menu.svg +15 -0
  1028. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/line.svg +10 -0
  1029. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/link 1.svg +20 -0
  1030. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/link.svg +20 -0
  1031. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/login-sso-azure.svg +9 -0
  1032. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/login-sso-gmail.svg +16 -0
  1033. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/login-user.svg +4 -0
  1034. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/login.svg +4 -0
  1035. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/menu-sms-active.svg +3 -0
  1036. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/menu-sms.svg +3 -0
  1037. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/menu-survey-root.svg +57 -0
  1038. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/messenger.svg +11 -0
  1039. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/account-active.svg +4 -0
  1040. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/account.svg +11 -0
  1041. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/admin-active.svg +12 -0
  1042. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/admin.svg +12 -0
  1043. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/campaign-active.svg +6 -0
  1044. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/campaign.svg +6 -0
  1045. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/channel-active.svg +6 -0
  1046. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/channel.svg +6 -0
  1047. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/channel2-active.svg +6 -0
  1048. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/channel2.svg +6 -0
  1049. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/contact-management-active.svg +14 -0
  1050. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/contact-management.svg +14 -0
  1051. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/dashboard-active.svg +6 -0
  1052. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/dashboard.svg +6 -0
  1053. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/email-active.svg +6 -0
  1054. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/email.svg +6 -0
  1055. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/flow-builder-active.svg +6 -0
  1056. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/flow-builder.svg +6 -0
  1057. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/invoice-active.svg +15 -0
  1058. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/invoice.svg +15 -0
  1059. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/line-active.svg +6 -0
  1060. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/line.svg +6 -0
  1061. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/menu-automation-active.svg +6 -0
  1062. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/menu-automation-inactive.svg +6 -0
  1063. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/menu-campaign-active.svg +4 -0
  1064. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/menu-campaign.svg +4 -0
  1065. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/multichat-active.svg +16 -0
  1066. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/multichat.svg +16 -0
  1067. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/report-active.svg +6 -0
  1068. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/report.svg +6 -0
  1069. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/sla-management-active.svg +5 -0
  1070. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/sla-management.svg +5 -0
  1071. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/sms-active.svg +6 -0
  1072. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/sms.svg +6 -0
  1073. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/survey-active.svg +6 -0
  1074. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/survey.svg +6 -0
  1075. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/telegram-active.svg +4 -0
  1076. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/telegram.svg +4 -0
  1077. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/welcome.svg +106 -0
  1078. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/whatsapp-active.svg +6 -0
  1079. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/navigation/whatsapp.svg +6 -0
  1080. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/new.svg +3 -0
  1081. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/no_data_folder_icon.svg +25 -0
  1082. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/note.svg +5 -0
  1083. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/open-ticket.svg +4 -0
  1084. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pen.svg +3 -0
  1085. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pencil-profile.svg +5 -0
  1086. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pencil-small.svg +4 -0
  1087. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pencil.svg +9 -0
  1088. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pensil.svg +3 -0
  1089. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/points.svg +5 -0
  1090. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/preview.svg +4 -0
  1091. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/all-ticket-active.svg +4 -0
  1092. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/all-ticket-inactive.svg +4 -0
  1093. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/copy-token.svg +3 -0
  1094. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/history-ticket-active.svg +3 -0
  1095. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/history-ticket-inactive.svg +3 -0
  1096. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/my-ticket-active.svg +6 -0
  1097. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/my-ticket-inactive.svg +6 -0
  1098. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/refresh-token.svg +3 -0
  1099. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/pwa/search.svg +14 -0
  1100. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/radio-black.svg +6 -0
  1101. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/radio-white.svg +6 -0
  1102. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/reply-all.svg +11 -0
  1103. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/reset.svg +9 -0
  1104. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/right-parenthesis.svg +3 -0
  1105. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/robot-bot.svg +9 -0
  1106. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/row-top.svg +3 -0
  1107. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/send-line-text.svg +4 -0
  1108. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/send-red.svg +3 -0
  1109. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/send-sticker.svg +3 -0
  1110. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/send-sticker1.svg +4 -0
  1111. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/send.svg +4 -0
  1112. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sendLocation.svg +4 -0
  1113. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sendText.svg +5 -0
  1114. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sendText1.svg +5 -0
  1115. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/setting.svg +3 -0
  1116. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sign-up.svg +18 -0
  1117. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/smile-black.svg +4 -0
  1118. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/smile-white.svg +9 -0
  1119. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sms-account-empty.svg +29 -0
  1120. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sorting.svg +5 -0
  1121. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sound.svg +4 -0
  1122. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/sticker.svg +3 -0
  1123. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/subflow.svg +5 -0
  1124. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/survey-flowbuilder.svg +4 -0
  1125. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/switch.svg +3 -0
  1126. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/telegram.svg +4 -0
  1127. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/terms-and-conditions 1.svg +15 -0
  1128. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/terms-and-conditions.svg +15 -0
  1129. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/three-dot.svg +5 -0
  1130. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/total-agents.svg +4 -0
  1131. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/trash.svg +6 -0
  1132. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/upload-primary.svg +3 -0
  1133. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/upload.svg +3 -0
  1134. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/users.svg +6 -0
  1135. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/viber.svg +20 -0
  1136. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/video.svg +1 -0
  1137. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/wa-email.svg +8 -0
  1138. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/wa-mc-dashboard.svg +4 -0
  1139. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/wa-media.svg +9 -0
  1140. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/wa-multiple-location.svg +4 -0
  1141. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/wa-template.svg +16 -0
  1142. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/warning.svg +5 -0
  1143. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/welcome.svg +106 -0
  1144. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/whatsapp-lite.svg +6 -0
  1145. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/whatsapp-template.svg +16 -0
  1146. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/whatsapp1.svg +4 -0
  1147. package/projects/adl-campaign-management-library-internal-test/src/assets/svg/whatsapp2.svg +6 -0
  1148. package/projects/adl-campaign-management-library-internal-test/src/assets/tnc/CPP.docx +0 -0
  1149. package/projects/adl-campaign-management-library-internal-test/src/assets/tnc/GTC.docx +0 -0
  1150. package/projects/adl-campaign-management-library-internal-test/src/environments/environment.prod.ts +3 -0
  1151. package/projects/adl-campaign-management-library-internal-test/src/environments/environment.ts +16 -0
  1152. package/projects/adl-campaign-management-library-internal-test/src/favicon.ico +0 -0
  1153. package/projects/adl-campaign-management-library-internal-test/src/flowy.js.bkp +979 -0
  1154. package/projects/adl-campaign-management-library-internal-test/src/index.html +13 -0
  1155. package/projects/adl-campaign-management-library-internal-test/src/main.ts +12 -0
  1156. package/projects/adl-campaign-management-library-internal-test/src/polyfills.ts +89 -0
  1157. package/projects/adl-campaign-management-library-internal-test/src/styles/abstracts/_color.scss +121 -0
  1158. package/projects/adl-campaign-management-library-internal-test/src/styles/abstracts/_font.scss +43 -0
  1159. package/projects/adl-campaign-management-library-internal-test/src/styles/abstracts/_layout.scss +4 -0
  1160. package/projects/adl-campaign-management-library-internal-test/src/styles/abstracts/_spacing.scss +39 -0
  1161. package/projects/adl-campaign-management-library-internal-test/src/styles/abstracts/_variables.scss +4 -0
  1162. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_background.scss +12 -0
  1163. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_border.scss +43 -0
  1164. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_cursor.scss +7 -0
  1165. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_font.scss +252 -0
  1166. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_layout.scss +88 -0
  1167. package/projects/adl-campaign-management-library-internal-test/src/styles/base/_spacing.scss +50 -0
  1168. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_accordion.scss +121 -0
  1169. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_alert.scss +59 -0
  1170. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_badge.scss +29 -0
  1171. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_breadcrumb.scss +35 -0
  1172. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_button-group.scss +140 -0
  1173. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_buttons.scss +124 -0
  1174. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_card.scss +218 -0
  1175. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_carousel.scss +234 -0
  1176. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_close.scss +41 -0
  1177. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_containers.scss +41 -0
  1178. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_dropdown.scss +239 -0
  1179. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_forms.scss +9 -0
  1180. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_functions.scss +400 -0
  1181. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_grid.scss +35 -0
  1182. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_helpers.scss +9 -0
  1183. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_images.scss +41 -0
  1184. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_list-group.scss +180 -0
  1185. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_mixins.scss +43 -0
  1186. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_modal.scss +217 -0
  1187. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_nav.scss +136 -0
  1188. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_navbar.scss +330 -0
  1189. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_offcanvas.scss +87 -0
  1190. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_pagination.scss +78 -0
  1191. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_placeholders.scss +56 -0
  1192. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_popover.scss +164 -0
  1193. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_progress.scss +50 -0
  1194. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_reboot.scss +615 -0
  1195. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_root.scss +54 -0
  1196. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_spinners.scss +71 -0
  1197. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_tables.scss +153 -0
  1198. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_toasts.scss +53 -0
  1199. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_tooltip.scss +119 -0
  1200. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_transitions.scss +27 -0
  1201. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_type.scss +102 -0
  1202. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_utilities.scss +731 -0
  1203. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/_variables.scss +1682 -0
  1204. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/bootstrap-grid.scss +67 -0
  1205. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/bootstrap-reboot.scss +13 -0
  1206. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/bootstrap-utilities.scss +18 -0
  1207. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/bootstrap.scss +53 -0
  1208. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_floating-labels.scss +63 -0
  1209. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_form-check.scss +156 -0
  1210. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_form-control.scss +231 -0
  1211. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_form-range.scss +98 -0
  1212. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_form-select.scss +79 -0
  1213. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_form-text.scss +11 -0
  1214. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_input-group.scss +124 -0
  1215. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_labels.scss +36 -0
  1216. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/forms/_validation.scss +12 -0
  1217. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_clearfix.scss +3 -0
  1218. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_colored-links.scss +16 -0
  1219. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_position.scss +30 -0
  1220. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_ratio.scss +26 -0
  1221. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_stacks.scss +15 -0
  1222. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_stretched-link.scss +15 -0
  1223. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_text-truncation.scss +7 -0
  1224. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_visually-hidden.scss +8 -0
  1225. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/helpers/_vr.scss +8 -0
  1226. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_alert.scss +11 -0
  1227. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_backdrop.scss +18 -0
  1228. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_border-radius.scss +77 -0
  1229. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_box-shadow.scss +18 -0
  1230. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_breakpoints.scss +139 -0
  1231. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_buttons.scss +162 -0
  1232. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_caret.scss +64 -0
  1233. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_clearfix.scss +9 -0
  1234. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_color-scheme.scss +7 -0
  1235. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_container.scss +9 -0
  1236. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_deprecate.scss +15 -0
  1237. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_forms.scss +150 -0
  1238. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_gradients.scss +97 -0
  1239. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_grid.scss +168 -0
  1240. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_image.scss +15 -0
  1241. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_list-group.scss +24 -0
  1242. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_lists.scss +7 -0
  1243. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_pagination.scss +31 -0
  1244. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_reset-text.scss +17 -0
  1245. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_resize.scss +6 -0
  1246. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_table-variants.scss +21 -0
  1247. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_text-truncate.scss +8 -0
  1248. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_transition.scss +31 -0
  1249. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_utilities.scss +106 -0
  1250. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/mixins/_visually-hidden.scss +29 -0
  1251. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/utilities/_api.scss +52 -0
  1252. package/projects/adl-campaign-management-library-internal-test/src/styles/bootstrap/vendor/_rfs.scss +402 -0
  1253. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_button.scss +259 -0
  1254. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_filter.scss +69 -0
  1255. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_flow-builder.scss +14 -0
  1256. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_input.scss +203 -0
  1257. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_multichat.scss +391 -0
  1258. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_pagination.scss +44 -0
  1259. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_sidenav.scss +165 -0
  1260. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_slide-toggle.scss +98 -0
  1261. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_table.scss +129 -0
  1262. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_toastr.scss +37 -0
  1263. package/projects/adl-campaign-management-library-internal-test/src/styles/component/_toolbar.scss +77 -0
  1264. package/projects/adl-campaign-management-library-internal-test/src/styles/customize-material.scss +91 -0
  1265. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.eot +0 -0
  1266. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.ijmap +1 -0
  1267. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.svg +2373 -0
  1268. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.ttf +0 -0
  1269. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.woff +0 -0
  1270. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/MaterialIcons-Regular.woff2 +0 -0
  1271. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/README.md +8 -0
  1272. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/codepoints +932 -0
  1273. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/MaterialIcons/material-icons.css +35 -0
  1274. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/OFL.txt +93 -0
  1275. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Black.ttf +0 -0
  1276. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-BlackItalic.ttf +0 -0
  1277. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Bold.ttf +0 -0
  1278. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-BoldItalic.ttf +0 -0
  1279. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-ExtraBold.ttf +0 -0
  1280. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-ExtraBoldItalic.ttf +0 -0
  1281. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-ExtraLight.ttf +0 -0
  1282. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-ExtraLightItalic.ttf +0 -0
  1283. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Italic.ttf +0 -0
  1284. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Light.ttf +0 -0
  1285. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-LightItalic.ttf +0 -0
  1286. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Medium.ttf +0 -0
  1287. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-MediumItalic.ttf +0 -0
  1288. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Regular.ttf +0 -0
  1289. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-SemiBold.ttf +0 -0
  1290. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-SemiBoldItalic.ttf +0 -0
  1291. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-Thin.ttf +0 -0
  1292. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Poppins/Poppins-ThinItalic.ttf +0 -0
  1293. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/LICENSE.txt +202 -0
  1294. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Black.ttf +0 -0
  1295. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
  1296. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Bold.ttf +0 -0
  1297. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
  1298. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Italic.ttf +0 -0
  1299. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Light.ttf +0 -0
  1300. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
  1301. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Medium.ttf +0 -0
  1302. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
  1303. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Regular.ttf +0 -0
  1304. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-Thin.ttf +0 -0
  1305. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
  1306. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/OFL.txt +93 -0
  1307. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-Black.ttf +0 -0
  1308. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-Bold.ttf +0 -0
  1309. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-BoldItalic.ttf +0 -0
  1310. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-ExtraLight.ttf +0 -0
  1311. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-ExtraLightItalic.ttf +0 -0
  1312. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-Italic.ttf +0 -0
  1313. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-Light.ttf +0 -0
  1314. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-LightItalic.ttf +0 -0
  1315. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-Regular.ttf +0 -0
  1316. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-SemiBold.ttf +0 -0
  1317. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts/Titillium/TitilliumWeb-SemiBoldItalic.ttf +0 -0
  1318. package/projects/adl-campaign-management-library-internal-test/src/styles/fonts.scss +160 -0
  1319. package/projects/adl-campaign-management-library-internal-test/src/styles/styles.scss +158 -0
  1320. package/projects/adl-campaign-management-library-internal-test/src/styles/themes/_theme.scss +22 -0
  1321. package/projects/adl-campaign-management-library-internal-test/src/test.ts +25 -0
  1322. package/projects/adl-campaign-management-library-internal-test/tsconfig.app.json +14 -0
  1323. package/projects/adl-campaign-management-library-internal-test/tsconfig.spec.json +18 -0
  1324. package/projects/adl-campaign-management-library-internal-test/tslint.json +17 -0
  1325. package/tsconfig.json +34 -0
  1326. package/tslint.json +79 -0
  1327. package/bundles/campaign-management-library.umd.js +0 -5854
  1328. package/bundles/campaign-management-library.umd.js.map +0 -1
  1329. package/bundles/campaign-management-library.umd.min.js +0 -16
  1330. package/bundles/campaign-management-library.umd.min.js.map +0 -1
  1331. package/campaign-management-library.d.ts +0 -28
  1332. package/campaign-management-library.metadata.json +0 -1
  1333. package/environments/environment.d.ts +0 -4
  1334. package/esm2015/campaign-management-library.js +0 -29
  1335. package/esm2015/environments/environment.js +0 -14
  1336. package/esm2015/lib/adl-campaign-management-library-internal.component.js +0 -16
  1337. package/esm2015/lib/adl-campaign-management-library-internal.module.js +0 -35
  1338. package/esm2015/lib/campaign-management/campaign-management.component.js +0 -40
  1339. package/esm2015/lib/campaign-management/campaign-management.module.js +0 -115
  1340. package/esm2015/lib/campaign-management/models/campaign-count-final-response-dto.model.js +0 -1
  1341. package/esm2015/lib/campaign-management/models/contact-category-dto.model.js +0 -1
  1342. package/esm2015/lib/campaign-management/models/failover-req.model.js +0 -42
  1343. package/esm2015/lib/campaign-management/models/general-information-wa-req.model.js +0 -75
  1344. package/esm2015/lib/campaign-management/models/index.js +0 -4
  1345. package/esm2015/lib/campaign-management/models/scheduler-req.model.js +0 -27
  1346. package/esm2015/lib/campaign-management/models/template-wa.model.js +0 -1
  1347. package/esm2015/lib/campaign-management/models/whatsapp-account.js +0 -1
  1348. package/esm2015/lib/campaign-management/modules/campaign-index/campaign-index.component.js +0 -123
  1349. package/esm2015/lib/campaign-management/modules/campaign-index/campaign-index.module.js +0 -72
  1350. package/esm2015/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +0 -143
  1351. package/esm2015/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.js +0 -2
  1352. package/esm2015/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.js +0 -2
  1353. package/esm2015/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.js +0 -159
  1354. package/esm2015/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.js +0 -2
  1355. package/esm2015/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.js +0 -168
  1356. package/esm2015/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.js +0 -1
  1357. package/esm2015/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.js +0 -37
  1358. package/esm2015/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.js +0 -48
  1359. package/esm2015/lib/campaign-management/modules/campaign-index/models/client-dto.model.js +0 -1
  1360. package/esm2015/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.js +0 -1
  1361. package/esm2015/lib/campaign-management/modules/campaign-index/models/index.js +0 -4
  1362. package/esm2015/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.js +0 -1
  1363. package/esm2015/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.js +0 -1
  1364. package/esm2015/lib/campaign-management/modules/campaign-index/models/table.model.js +0 -48
  1365. package/esm2015/lib/campaign-management/modules/dashboard/dashboard.component.js +0 -243
  1366. package/esm2015/lib/campaign-management/modules/dashboard/dashboard.module.js +0 -54
  1367. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.js +0 -291
  1368. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-email/index.js +0 -2
  1369. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.js +0 -277
  1370. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-line/index.js +0 -2
  1371. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.js +0 -289
  1372. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-sms/index.js +0 -2
  1373. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.js +0 -603
  1374. package/esm2015/lib/campaign-management/modules/new-campaign/components/general-information-wa/index.js +0 -2
  1375. package/esm2015/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.js +0 -320
  1376. package/esm2015/lib/campaign-management/modules/new-campaign/failover-mechanism/index.js +0 -2
  1377. package/esm2015/lib/campaign-management/modules/new-campaign/general-information/general-information.component.js +0 -196
  1378. package/esm2015/lib/campaign-management/modules/new-campaign/general-information/index.js +0 -2
  1379. package/esm2015/lib/campaign-management/modules/new-campaign/index.js +0 -2
  1380. package/esm2015/lib/campaign-management/modules/new-campaign/new-campaign.component.js +0 -441
  1381. package/esm2015/lib/campaign-management/modules/new-campaign/new-number-bases/index.js +0 -2
  1382. package/esm2015/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +0 -318
  1383. package/esm2015/lib/campaign-management/modules/new-campaign/scheduler/index.js +0 -2
  1384. package/esm2015/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.js +0 -122
  1385. package/esm2015/lib/campaign-management/modules/new-campaign/summary/index.js +0 -2
  1386. package/esm2015/lib/campaign-management/modules/new-campaign/summary/summary.component.js +0 -16
  1387. package/esm2015/lib/campaign-management/modules/wizard/index.js +0 -2
  1388. package/esm2015/lib/campaign-management/modules/wizard/wizard.component.js +0 -24
  1389. package/esm2015/lib/campaign-management/util/enums.js +0 -16
  1390. package/esm2015/lib/core/const/constants.const.js +0 -172
  1391. package/esm2015/lib/core/const/create-package-service.const.js +0 -10
  1392. package/esm2015/lib/core/const/failover.const.js +0 -29
  1393. package/esm2015/lib/core/const/form-validators.js +0 -23
  1394. package/esm2015/lib/core/const/index.js +0 -6
  1395. package/esm2015/lib/core/const/rate-card-table-config.js +0 -21
  1396. package/esm2015/lib/core/const/validation-message.const.js +0 -56
  1397. package/esm2015/lib/core/directives/index.js +0 -2
  1398. package/esm2015/lib/core/directives/mat-select-infinite-scroll.js +0 -94
  1399. package/esm2015/lib/core/enums/constant.enum.js +0 -27
  1400. package/esm2015/lib/core/enums/http-verb.enum.js +0 -9
  1401. package/esm2015/lib/core/enums/index.js +0 -3
  1402. package/esm2015/lib/core/enums/main-area.enum.js +0 -9
  1403. package/esm2015/lib/core/models/Package.js +0 -139
  1404. package/esm2015/lib/core/models/base-option.model.js +0 -3
  1405. package/esm2015/lib/core/models/billing-param-req.component.js +0 -16
  1406. package/esm2015/lib/core/models/country.model.js +0 -24
  1407. package/esm2015/lib/core/models/create-package-param.model.js +0 -137
  1408. package/esm2015/lib/core/models/http-body-resp.model.js +0 -21
  1409. package/esm2015/lib/core/models/index.js +0 -8
  1410. package/esm2015/lib/core/models/util/api-adapter-service-models/index.js +0 -1
  1411. package/esm2015/lib/core/models/util/api-adapter-service-models/parameter.model.js +0 -1
  1412. package/esm2015/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.js +0 -1
  1413. package/esm2015/lib/core/models/util/api-dto/request-models/app-request.js +0 -1
  1414. package/esm2015/lib/core/models/util/api-dto/response-models/app-response-adl.js +0 -1
  1415. package/esm2015/lib/core/models/util/api-dto/response-models/app-response.js +0 -1
  1416. package/esm2015/lib/core/models/util/api-dto/response-models/error.js +0 -1
  1417. package/esm2015/lib/core/models/util/api-dto/response-models/index.js +0 -1
  1418. package/esm2015/lib/core/models/util/api-dto/response-models/meta.js +0 -1
  1419. package/esm2015/lib/core/models/util/api-dto/response-models/paging.js +0 -1
  1420. package/esm2015/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.js +0 -13
  1421. package/esm2015/lib/core/models/util/http-body-req/http-body-req-pagination.model.js +0 -13
  1422. package/esm2015/lib/core/models/util/http-body-req/index.js +0 -3
  1423. package/esm2015/lib/core/models/util/index.js +0 -4
  1424. package/esm2015/lib/core/services/api-adapter-service.service.js +0 -116
  1425. package/esm2015/lib/core/services/index.js +0 -2
  1426. package/esm2015/lib/core/util/custom-paginator.js +0 -26
  1427. package/esm2015/lib/core/util/download-blob-file.js +0 -14
  1428. package/esm2015/lib/core/util/enum-to-option-generator.js +0 -24
  1429. package/esm2015/lib/core/util/http-param-generator.js +0 -15
  1430. package/esm2015/lib/core/util/index.js +0 -5
  1431. package/esm2015/lib/global/confirmation/confirmation/confirmation.component.js +0 -28
  1432. package/esm2015/lib/global/confirmation/confirmation/index.js +0 -2
  1433. package/esm2015/lib/global/confirmation/confirmation.module.js +0 -17
  1434. package/esm2015/lib/global/confirmation/shared/model/confirmation.model.js +0 -3
  1435. package/esm2015/lib/global/confirmation/shared/model/index.js +0 -2
  1436. package/esm2015/lib/global/confirmation/shared/shared-services.service.js +0 -23
  1437. package/esm2015/lib/global/search/search/search.component.js +0 -43
  1438. package/esm2015/lib/global/search/search.module.js +0 -30
  1439. package/esm2015/public-api.js +0 -14
  1440. package/esm5/campaign-management-library.js +0 -29
  1441. package/esm5/environments/environment.js +0 -14
  1442. package/esm5/lib/adl-campaign-management-library-internal.component.js +0 -15
  1443. package/esm5/lib/adl-campaign-management-library-internal.module.js +0 -38
  1444. package/esm5/lib/campaign-management/campaign-management.component.js +0 -41
  1445. package/esm5/lib/campaign-management/campaign-management.module.js +0 -118
  1446. package/esm5/lib/campaign-management/models/campaign-count-final-response-dto.model.js +0 -1
  1447. package/esm5/lib/campaign-management/models/contact-category-dto.model.js +0 -1
  1448. package/esm5/lib/campaign-management/models/failover-req.model.js +0 -47
  1449. package/esm5/lib/campaign-management/models/general-information-wa-req.model.js +0 -79
  1450. package/esm5/lib/campaign-management/models/index.js +0 -4
  1451. package/esm5/lib/campaign-management/models/scheduler-req.model.js +0 -29
  1452. package/esm5/lib/campaign-management/models/template-wa.model.js +0 -1
  1453. package/esm5/lib/campaign-management/models/whatsapp-account.js +0 -1
  1454. package/esm5/lib/campaign-management/modules/campaign-index/campaign-index.component.js +0 -127
  1455. package/esm5/lib/campaign-management/modules/campaign-index/campaign-index.module.js +0 -75
  1456. package/esm5/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +0 -146
  1457. package/esm5/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.js +0 -2
  1458. package/esm5/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.js +0 -2
  1459. package/esm5/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.js +0 -164
  1460. package/esm5/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.js +0 -2
  1461. package/esm5/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.js +0 -174
  1462. package/esm5/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.js +0 -1
  1463. package/esm5/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.js +0 -37
  1464. package/esm5/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.js +0 -52
  1465. package/esm5/lib/campaign-management/modules/campaign-index/models/client-dto.model.js +0 -1
  1466. package/esm5/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.js +0 -1
  1467. package/esm5/lib/campaign-management/modules/campaign-index/models/index.js +0 -4
  1468. package/esm5/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.js +0 -1
  1469. package/esm5/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.js +0 -1
  1470. package/esm5/lib/campaign-management/modules/campaign-index/models/table.model.js +0 -50
  1471. package/esm5/lib/campaign-management/modules/dashboard/dashboard.component.js +0 -269
  1472. package/esm5/lib/campaign-management/modules/dashboard/dashboard.module.js +0 -57
  1473. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.js +0 -319
  1474. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-email/index.js +0 -2
  1475. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.js +0 -308
  1476. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-line/index.js +0 -2
  1477. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.js +0 -317
  1478. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-sms/index.js +0 -2
  1479. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.js +0 -657
  1480. package/esm5/lib/campaign-management/modules/new-campaign/components/general-information-wa/index.js +0 -2
  1481. package/esm5/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.js +0 -346
  1482. package/esm5/lib/campaign-management/modules/new-campaign/failover-mechanism/index.js +0 -2
  1483. package/esm5/lib/campaign-management/modules/new-campaign/general-information/general-information.component.js +0 -239
  1484. package/esm5/lib/campaign-management/modules/new-campaign/general-information/index.js +0 -2
  1485. package/esm5/lib/campaign-management/modules/new-campaign/index.js +0 -2
  1486. package/esm5/lib/campaign-management/modules/new-campaign/new-campaign.component.js +0 -458
  1487. package/esm5/lib/campaign-management/modules/new-campaign/new-number-bases/index.js +0 -2
  1488. package/esm5/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +0 -347
  1489. package/esm5/lib/campaign-management/modules/new-campaign/scheduler/index.js +0 -2
  1490. package/esm5/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.js +0 -125
  1491. package/esm5/lib/campaign-management/modules/new-campaign/summary/index.js +0 -2
  1492. package/esm5/lib/campaign-management/modules/new-campaign/summary/summary.component.js +0 -19
  1493. package/esm5/lib/campaign-management/modules/wizard/index.js +0 -2
  1494. package/esm5/lib/campaign-management/modules/wizard/wizard.component.js +0 -25
  1495. package/esm5/lib/campaign-management/util/enums.js +0 -16
  1496. package/esm5/lib/core/const/constants.const.js +0 -172
  1497. package/esm5/lib/core/const/create-package-service.const.js +0 -10
  1498. package/esm5/lib/core/const/failover.const.js +0 -29
  1499. package/esm5/lib/core/const/form-validators.js +0 -23
  1500. package/esm5/lib/core/const/index.js +0 -6
  1501. package/esm5/lib/core/const/rate-card-table-config.js +0 -21
  1502. package/esm5/lib/core/const/validation-message.const.js +0 -56
  1503. package/esm5/lib/core/directives/index.js +0 -2
  1504. package/esm5/lib/core/directives/mat-select-infinite-scroll.js +0 -98
  1505. package/esm5/lib/core/enums/constant.enum.js +0 -27
  1506. package/esm5/lib/core/enums/http-verb.enum.js +0 -9
  1507. package/esm5/lib/core/enums/index.js +0 -3
  1508. package/esm5/lib/core/enums/main-area.enum.js +0 -9
  1509. package/esm5/lib/core/models/Package.js +0 -143
  1510. package/esm5/lib/core/models/base-option.model.js +0 -7
  1511. package/esm5/lib/core/models/billing-param-req.component.js +0 -20
  1512. package/esm5/lib/core/models/country.model.js +0 -28
  1513. package/esm5/lib/core/models/create-package-param.model.js +0 -139
  1514. package/esm5/lib/core/models/http-body-resp.model.js +0 -25
  1515. package/esm5/lib/core/models/index.js +0 -8
  1516. package/esm5/lib/core/models/util/api-adapter-service-models/index.js +0 -1
  1517. package/esm5/lib/core/models/util/api-adapter-service-models/parameter.model.js +0 -1
  1518. package/esm5/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.js +0 -1
  1519. package/esm5/lib/core/models/util/api-dto/request-models/app-request.js +0 -1
  1520. package/esm5/lib/core/models/util/api-dto/response-models/app-response-adl.js +0 -1
  1521. package/esm5/lib/core/models/util/api-dto/response-models/app-response.js +0 -1
  1522. package/esm5/lib/core/models/util/api-dto/response-models/error.js +0 -1
  1523. package/esm5/lib/core/models/util/api-dto/response-models/index.js +0 -1
  1524. package/esm5/lib/core/models/util/api-dto/response-models/meta.js +0 -1
  1525. package/esm5/lib/core/models/util/api-dto/response-models/paging.js +0 -1
  1526. package/esm5/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.js +0 -15
  1527. package/esm5/lib/core/models/util/http-body-req/http-body-req-pagination.model.js +0 -15
  1528. package/esm5/lib/core/models/util/http-body-req/index.js +0 -3
  1529. package/esm5/lib/core/models/util/index.js +0 -4
  1530. package/esm5/lib/core/services/api-adapter-service.service.js +0 -119
  1531. package/esm5/lib/core/services/index.js +0 -2
  1532. package/esm5/lib/core/util/custom-paginator.js +0 -29
  1533. package/esm5/lib/core/util/download-blob-file.js +0 -15
  1534. package/esm5/lib/core/util/enum-to-option-generator.js +0 -24
  1535. package/esm5/lib/core/util/http-param-generator.js +0 -15
  1536. package/esm5/lib/core/util/index.js +0 -5
  1537. package/esm5/lib/global/confirmation/confirmation/confirmation.component.js +0 -29
  1538. package/esm5/lib/global/confirmation/confirmation/index.js +0 -2
  1539. package/esm5/lib/global/confirmation/confirmation.module.js +0 -20
  1540. package/esm5/lib/global/confirmation/shared/model/confirmation.model.js +0 -7
  1541. package/esm5/lib/global/confirmation/shared/model/index.js +0 -2
  1542. package/esm5/lib/global/confirmation/shared/shared-services.service.js +0 -24
  1543. package/esm5/lib/global/search/search/search.component.js +0 -45
  1544. package/esm5/lib/global/search/search.module.js +0 -33
  1545. package/esm5/public-api.js +0 -14
  1546. package/fesm2015/campaign-management-library.js +0 -5275
  1547. package/fesm2015/campaign-management-library.js.map +0 -1
  1548. package/fesm5/campaign-management-library.js +0 -5647
  1549. package/fesm5/campaign-management-library.js.map +0 -1
  1550. package/lib/adl-campaign-management-library-internal.component.d.ts +0 -2
  1551. package/lib/adl-campaign-management-library-internal.module.d.ts +0 -2
  1552. package/lib/campaign-management/campaign-management.component.d.ts +0 -7
  1553. package/lib/campaign-management/campaign-management.module.d.ts +0 -2
  1554. package/lib/campaign-management/models/campaign-count-final-response-dto.model.d.ts +0 -11
  1555. package/lib/campaign-management/models/contact-category-dto.model.d.ts +0 -7
  1556. package/lib/campaign-management/models/failover-req.model.d.ts +0 -25
  1557. package/lib/campaign-management/models/general-information-wa-req.model.d.ts +0 -45
  1558. package/lib/campaign-management/models/scheduler-req.model.d.ts +0 -10
  1559. package/lib/campaign-management/models/template-wa.model.d.ts +0 -42
  1560. package/lib/campaign-management/models/whatsapp-account.d.ts +0 -20
  1561. package/lib/campaign-management/modules/campaign-index/campaign-index.component.d.ts +0 -29
  1562. package/lib/campaign-management/modules/campaign-index/campaign-index.module.d.ts +0 -2
  1563. package/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.d.ts +0 -36
  1564. package/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.d.ts +0 -29
  1565. package/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/index.d.ts +0 -1
  1566. package/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.d.ts +0 -22
  1567. package/lib/campaign-management/modules/campaign-index/models/campaign-response-dto.model.d.ts +0 -48
  1568. package/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.d.ts +0 -2
  1569. package/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.d.ts +0 -17
  1570. package/lib/campaign-management/modules/campaign-index/models/client-dto.model.d.ts +0 -13
  1571. package/lib/campaign-management/modules/campaign-index/models/conversation-chart-response-dto.model.d.ts +0 -5
  1572. package/lib/campaign-management/modules/campaign-index/models/performance-chart-response-dto.model.d.ts +0 -5
  1573. package/lib/campaign-management/modules/campaign-index/models/performance-chart-sereies-response-dto.model.d.ts +0 -4
  1574. package/lib/campaign-management/modules/campaign-index/models/table.model.d.ts +0 -17
  1575. package/lib/campaign-management/modules/dashboard/dashboard.component.d.ts +0 -40
  1576. package/lib/campaign-management/modules/dashboard/dashboard.module.d.ts +0 -2
  1577. package/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.d.ts +0 -47
  1578. package/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.d.ts +0 -47
  1579. package/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.d.ts +0 -47
  1580. package/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.d.ts +0 -90
  1581. package/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.d.ts +0 -86
  1582. package/lib/campaign-management/modules/new-campaign/general-information/general-information.component.d.ts +0 -53
  1583. package/lib/campaign-management/modules/new-campaign/new-campaign.component.d.ts +0 -60
  1584. package/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.d.ts +0 -52
  1585. package/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.d.ts +0 -21
  1586. package/lib/campaign-management/modules/new-campaign/summary/summary.component.d.ts +0 -3
  1587. package/lib/campaign-management/modules/wizard/wizard.component.d.ts +0 -7
  1588. package/lib/campaign-management/util/enums.d.ts +0 -11
  1589. package/lib/core/const/constants.const.d.ts +0 -80
  1590. package/lib/core/const/create-package-service.const.d.ts +0 -4
  1591. package/lib/core/const/failover.const.d.ts +0 -29
  1592. package/lib/core/const/form-validators.d.ts +0 -3
  1593. package/lib/core/const/index.d.ts +0 -5
  1594. package/lib/core/const/rate-card-table-config.d.ts +0 -2
  1595. package/lib/core/const/validation-message.const.d.ts +0 -142
  1596. package/lib/core/directives/mat-select-infinite-scroll.d.ts +0 -23
  1597. package/lib/core/enums/constant.enum.d.ts +0 -23
  1598. package/lib/core/enums/http-verb.enum.d.ts +0 -7
  1599. package/lib/core/enums/main-area.enum.d.ts +0 -7
  1600. package/lib/core/models/Package.d.ts +0 -43
  1601. package/lib/core/models/base-option.model.d.ts +0 -4
  1602. package/lib/core/models/billing-param-req.component.d.ts +0 -8
  1603. package/lib/core/models/country.model.d.ts +0 -9
  1604. package/lib/core/models/create-package-param.model.d.ts +0 -35
  1605. package/lib/core/models/http-body-resp.model.d.ts +0 -8
  1606. package/lib/core/models/index.d.ts +0 -7
  1607. package/lib/core/models/util/api-adapter-service-models/parameter.model.d.ts +0 -8
  1608. package/lib/core/models/util/api-adapter-service-models/server-in-built-error.model.d.ts +0 -7
  1609. package/lib/core/models/util/api-dto/request-models/app-request.d.ts +0 -3
  1610. package/lib/core/models/util/api-dto/response-models/app-response-adl.d.ts +0 -6
  1611. package/lib/core/models/util/api-dto/response-models/app-response.d.ts +0 -14
  1612. package/lib/core/models/util/api-dto/response-models/paging.d.ts +0 -5
  1613. package/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.d.ts +0 -6
  1614. package/lib/core/models/util/http-body-req/http-body-req-pagination.model.d.ts +0 -6
  1615. package/lib/core/models/util/http-body-req/index.d.ts +0 -2
  1616. package/lib/core/models/util/index.d.ts +0 -1
  1617. package/lib/core/services/api-adapter-service.service.d.ts +0 -11
  1618. package/lib/core/util/custom-paginator.d.ts +0 -5
  1619. package/lib/core/util/download-blob-file.d.ts +0 -1
  1620. package/lib/core/util/enum-to-option-generator.d.ts +0 -2
  1621. package/lib/core/util/http-param-generator.d.ts +0 -2
  1622. package/lib/global/confirmation/confirmation/confirmation.component.d.ts +0 -8
  1623. package/lib/global/confirmation/confirmation.module.d.ts +0 -2
  1624. package/lib/global/confirmation/shared/model/confirmation.model.d.ts +0 -7
  1625. package/lib/global/confirmation/shared/shared-services.service.d.ts +0 -7
  1626. package/lib/global/search/search/search.component.d.ts +0 -13
  1627. package/lib/global/search/search.module.d.ts +0 -2
  1628. package/public-api.d.ts +0 -10
  1629. /package/{lib/campaign-management/models/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/models/index.ts} +0 -0
  1630. /package/{lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/index.ts} +0 -0
  1631. /package/{lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/index.ts} +0 -0
  1632. /package/{lib/campaign-management/modules/campaign-index/models/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/campaign-index/models/index.ts} +0 -0
  1633. /package/{lib/campaign-management/modules/new-campaign/components/general-information-email/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-email/index.ts} +0 -0
  1634. /package/{lib/campaign-management/modules/new-campaign/components/general-information-line/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-line/index.ts} +0 -0
  1635. /package/{lib/campaign-management/modules/new-campaign/components/general-information-sms/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-sms/index.ts} +0 -0
  1636. /package/{lib/campaign-management/modules/new-campaign/components/general-information-wa/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/components/general-information-wa/index.ts} +0 -0
  1637. /package/{lib/campaign-management/modules/new-campaign/failover-mechanism/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/failover-mechanism/index.ts} +0 -0
  1638. /package/{lib/campaign-management/modules/new-campaign/general-information/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/general-information/index.ts} +0 -0
  1639. /package/{lib/campaign-management/modules/new-campaign/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/index.ts} +0 -0
  1640. /package/{lib/campaign-management/modules/new-campaign/new-number-bases/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/new-number-bases/index.ts} +0 -0
  1641. /package/{lib/campaign-management/modules/new-campaign/scheduler/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/scheduler/index.ts} +0 -0
  1642. /package/{lib/campaign-management/modules/new-campaign/summary/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/new-campaign/summary/index.ts} +0 -0
  1643. /package/{lib/campaign-management/modules/wizard/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/campaign-management/modules/wizard/index.ts} +0 -0
  1644. /package/{lib/core/directives/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/directives/index.ts} +0 -0
  1645. /package/{lib/core/enums/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/enums/index.ts} +0 -0
  1646. /package/{lib/core/models/util/api-adapter-service-models/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-adapter-service-models/index.ts} +0 -0
  1647. /package/{lib/core/models/util/api-dto/response-models/error.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/error.ts} +0 -0
  1648. /package/{lib/core/models/util/api-dto/response-models/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/index.ts} +0 -0
  1649. /package/{lib/core/models/util/api-dto/response-models/meta.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/models/util/api-dto/response-models/meta.ts} +0 -0
  1650. /package/{lib/core/services/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/services/index.ts} +0 -0
  1651. /package/{lib/core/util/index.d.ts → projects/adl-campaign-management-library-internal/src/lib/core/util/index.ts} +0 -0
  1652. /package/{src → projects/adl-campaign-management-library-internal/src}/styles/fonts.scss +0 -0
  1653. /package/{src → projects/adl-campaign-management-library-internal/src}/styles/styles.scss +0 -0
  1654. /package/{lib/global/confirmation/confirmation/index.d.ts → projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/confirmation/index.ts} +0 -0
  1655. /package/{lib/global/confirmation/shared/model/index.d.ts → projects/adl-campaign-management-library-internal-test/src/app/ui/component/confirmation/shared/model/index.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"campaign-management-library.js","sources":["ng://campaign-management-library/lib/adl-campaign-management-library-internal.component.ts","ng://campaign-management-library/lib/global/search/search/search.component.ts","ng://campaign-management-library/lib/global/search/search.module.ts","ng://campaign-management-library/lib/core/enums/main-area.enum.ts","ng://campaign-management-library/lib/campaign-management/campaign-management.component.ts","ng://campaign-management-library/lib/core/directives/mat-select-infinite-scroll.ts","ng://campaign-management-library/lib/core/models/Package.ts","ng://campaign-management-library/lib/core/models/base-option.model.ts","ng://campaign-management-library/lib/core/models/util/http-body-req/http-body-req-pagination-global-var.model.ts","ng://campaign-management-library/lib/core/models/util/http-body-req/http-body-req-pagination.model.ts","ng://campaign-management-library/lib/core/models/util/index.ts","ng://campaign-management-library/lib/core/models/billing-param-req.component.ts","ng://campaign-management-library/lib/core/models/country.model.ts","ng://campaign-management-library/lib/core/models/create-package-param.model.ts","ng://campaign-management-library/lib/core/models/http-body-resp.model.ts","ng://campaign-management-library/environments/environment.ts","ng://campaign-management-library/lib/core/services/api-adapter-service.service.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/models/campaign-table-config.const.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/models/campaigns-list.model.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/models/table.model.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/campaign-index.component.ts","ng://campaign-management-library/lib/core/const/constants.const.ts","ng://campaign-management-library/lib/core/const/create-package-service.const.ts","ng://campaign-management-library/lib/core/const/failover.const.ts","ng://campaign-management-library/lib/core/const/rate-card-table-config.ts","ng://campaign-management-library/lib/core/const/validation-message.const.ts","ng://campaign-management-library/lib/core/enums/constant.enum.ts","ng://campaign-management-library/lib/core/util/custom-paginator.ts","ng://campaign-management-library/lib/core/util/download-blob-file.ts","ng://campaign-management-library/lib/core/util/enum-to-option-generator.ts","ng://campaign-management-library/lib/core/util/http-param-generator.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.ts","ng://campaign-management-library/lib/global/confirmation/shared/shared-services.service.ts","ng://campaign-management-library/lib/global/confirmation/shared/model/confirmation.model.ts","ng://campaign-management-library/lib/global/confirmation/confirmation/confirmation.component.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view/pending-approval-dialog-view.component.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table/viewing-list-of-campaign-table.component.ts","ng://campaign-management-library/lib/campaign-management/modules/campaign-index/campaign-index.module.ts","ng://campaign-management-library/lib/campaign-management/modules/dashboard/dashboard.component.ts","ng://campaign-management-library/lib/campaign-management/modules/dashboard/dashboard.module.ts","ng://campaign-management-library/lib/campaign-management/models/failover-req.model.ts","ng://campaign-management-library/lib/campaign-management/models/general-information-wa-req.model.ts","ng://campaign-management-library/lib/campaign-management/models/scheduler-req.model.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/new-campaign.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/components/general-information-email/general-information-email.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/components/general-information-line/general-information-line.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/components/general-information-sms/general-information-sms.component.ts","ng://campaign-management-library/lib/campaign-management/util/enums.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/components/general-information-wa/general-information-wa.component.ts","ng://campaign-management-library/lib/core/const/form-validators.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/failover-mechanism/failover-mechanism.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/general-information/general-information.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/scheduler/scheduler.component.ts","ng://campaign-management-library/lib/campaign-management/modules/new-campaign/summary/summary.component.ts","ng://campaign-management-library/lib/campaign-management/modules/wizard/wizard.component.ts","ng://campaign-management-library/lib/campaign-management/campaign-management.module.ts","ng://campaign-management-library/lib/adl-campaign-management-library-internal.module.ts","ng://campaign-management-library/lib/global/confirmation/confirmation.module.ts","ng://campaign-management-library/public-api.ts","ng://campaign-management-library/campaign-management-library.ts"],"sourcesContent":["import { Component } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'lib-adl-campaign-management-library-internal',\r\n\ttemplate: `\r\n\t\t<p>\r\n\t\t\t<lib-campaign-management></lib-campaign-management>\r\n\t\t</p>\r\n\t`,\r\n})\r\nexport class AdlCampaignManagementLibraryInternalComponent {}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl } from '@angular/forms';\r\nimport { Subject } from 'rxjs';\r\nimport { debounceTime } from 'rxjs/operators';\r\n\r\n@Component({\r\n\tselector: 'lib-search',\r\n\ttemplateUrl: './search.component.html',\r\n\tstyleUrls: ['./search.component.scss'],\r\n})\r\nexport class SearchComponent implements OnInit {\r\n\t@Output()\r\n\tpublic searchRes: EventEmitter<string>;\r\n\r\n\tpublic form: FormControl;\r\n\r\n\tprivate debounceSubject = new Subject();\r\n\r\n\t@Input()\r\n\tpublic placeholder: string;\r\n\r\n\t@Input()\r\n\tpublic currentValue: string;\r\n\r\n\tconstructor() {\r\n\t\tthis.searchRes = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.form = new FormControl(this.currentValue ?? '');\r\n\r\n\t\tthis.debounceSubject.pipe(debounceTime(500)).subscribe((value: any) => {\r\n\t\t\tthis.searchRes.emit(value.toLowerCase());\r\n\t\t});\r\n\t}\r\n\r\n\tpublic searchResult(event: any) {\r\n\t\tthis.debounceSubject.next(event.target.value);\r\n\t}\r\n\r\n\tpublic clearInput(): void {\r\n\t\tthis.form.setValue('');\r\n\t\tthis.searchRes.emit(this.form.value);\r\n\t}\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { SearchComponent } from './search/search.component';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n\r\n@NgModule({\r\n declarations: [SearchComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatInputModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n ],\r\n exports: [\r\n SearchComponent\r\n ]\r\n})\r\nexport class SearchModule { }\r\n","export enum MainArea {\r\n 'Dashboard' = 1,\r\n 'CampaignIndex' = 2,\r\n 'CreateCampaign' = 3,\r\n 'NewCampaign' = 4,\r\n 'UpdateNumberBases' = 5,\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { MainArea } from '../core/enums/main-area.enum';\r\n\r\n@Component({\r\n\tselector: 'lib-campaign-management',\r\n\ttemplateUrl: './campaign-management.component.html',\r\n\tstyleUrls: [],\r\n})\r\nexport class CampaignManagementComponent {\r\n\tpublic currentView: MainArea = MainArea.CampaignIndex;\r\n\tpublic currentViews = MainArea;\r\n\r\n\tconstructor() {\r\n\t\t/* Init Localstorage (Local Only) */\r\n\t\t/* const data = {\r\n\t\t\t'telin.accessToken':\r\n\t\t\t\t'eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJjbGllbnRJZCI6IlBST1ZJREVSIiwiZXhwIjoxNzA4MDAyNzI4LCJpYXQiOjE3MDc5Nzg3MjgsIm5iZiI6MTcwNzk3ODcyOCwic2Vzc2lvbklkIjoiMDFIUE5RRTk5N0E3SkZLNjk1QTgyWEtTWkEiLCJ1c2VySWQiOiJhZG1pbiJ9.JWn1gRtlU6SYHa3KkP2FLhje9tvhxsD005dtxmTT5z4-lc65ekiClS5r7Wg8vamUappN_9uQINTJeZCjEU1IwYf6InUddxX6XsDWtCwixuePNq4JZMPrCUl_N4DBewPwL30RRrodoo0dxUstHLbTg9BUZ3qPq1QK6pLyd1HhKtN_jkRJ11VP2hEl6ef364ofmZvByDTKO56ah0GYzpxZ1uxvNV9PsyiuQk_drxE6x7PI7n-yH_H00zauMF6FYhTgv0SbqIRGQr-O8MKl1mbmk3efSdEr3gx6Q-bztG8p_jgOPWjVf4ol_6gfqtMOrlxTe2UJeR23fhWXCbp0ld20HpjgeIlkawoqpj8_TsjsnsPYk5epC2h5YVXrCuozWw5GnxYg7LDSx0CGQhe2JNRSy92b3hSvSahTQ0rKbmVDyvCIcRVhk2RO4Ilc-ddx4HhB8fcvbSVTAPBnI0A9NkPKSYKXA5SwiIlcPqex15BBG4zBbEX7D4JWr4925t2--WXkUIjsKvteOx0u9OhcBTbajahVepTNByNyqdKrJzdShWTBXw4mRNprL57ZZ3qFdCA6-11FcmeRkpDRqUX7kAXloFKBtcOECNjUpLNkf4FmT687-gt1R0xGIJsTatLSsc2K4Xr1TpTiuC7D3xledvsGTC07UuDgVQBb7AkN1Kch3Mg',\r\n\t\t\t'telin.clientId': 'PROVIDER',\r\n\t\t\t'telin.clientName': 'Provider',\r\n\t\t\t'telin.email': 'admin@bsp.com',\r\n\t\t\t'telin.id': 'admin',\r\n\t\t\t'telin.name': 'admin',\r\n\t\t\t'telin.roleCode': 'admin',\r\n\t\t\t'telin.roleId': 'admin',\r\n\t\t\t'telin.roleName': 'Administrator',\r\n\t\t\t'telin.roles':\r\n\t\t\t\t'[{\"isClientRole\":false,\"name\":\"Administrator\",\"code\":\"admin\",\"id\":\"admin\"}]',\r\n\t\t};\r\n\r\n\t\tObject.keys(data).forEach(function (k) {\r\n\t\t\tlocalStorage.setItem(k, data[k]);\r\n\t\t}); */\r\n\t\t/* Init Localstorage (Local Only) */\r\n\t}\r\n\r\n\tonChangeMainArea(area: MainArea): void {\r\n\t\tthis.currentView = area;\r\n\t}\r\n}\r\n","import {\r\n\tAfterViewInit,\r\n\tDirective,\r\n\tEventEmitter,\r\n\tInput,\r\n\tNgZone,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { MatSelect, SELECT_ITEM_HEIGHT_EM } from '@angular/material/select';\r\nimport { Subject, fromEvent } from 'rxjs';\r\nimport { debounceTime, takeUntil, tap } from 'rxjs/operators';\r\n\r\n@Directive({\r\n\tselector: '[matSelectInfiniteScroll]',\r\n})\r\nexport class MatSelectInfiniteScrollDirective\r\n\timplements OnInit, OnDestroy, AfterViewInit\r\n{\r\n\t@Input() threshold = '15%';\r\n\t@Input() debounceTime = 150;\r\n\t@Input() complete: boolean;\r\n\t@Output() infiniteScroll = new EventEmitter<void>();\r\n\r\n\tprivate panel: Element;\r\n\tprivate thrPx = 0;\r\n\tprivate thrPc = 0;\r\n\tprivate singleOptionHeight = SELECT_ITEM_HEIGHT_EM;\r\n\tprivate destroyed$ = new Subject<boolean>();\r\n\r\n\tconstructor(private matSelect: MatSelect, private ngZone: NgZone) {}\r\n\r\n\tngOnInit() {\r\n\t\tthis.evaluateThreshold();\r\n\t}\r\n\r\n\tngAfterViewInit() {\r\n\t\tthis.matSelect.openedChange\r\n\t\t\t.pipe(takeUntil(this.destroyed$))\r\n\t\t\t.subscribe(opened => {\r\n\t\t\t\tif (opened) {\r\n\t\t\t\t\tthis.panel = this.matSelect.panel.nativeElement;\r\n\t\t\t\t\tthis.singleOptionHeight = this.getSelectItemHeightPx();\r\n\t\t\t\t\tthis.registerScrollListener();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t}\r\n\r\n\tngOnDestroy() {\r\n\t\tthis.destroyed$.next(true);\r\n\t\tthis.destroyed$.complete();\r\n\t}\r\n\r\n\tevaluateThreshold() {\r\n\t\tif (this.threshold.lastIndexOf('%') > -1) {\r\n\t\t\tthis.thrPx = 0;\r\n\t\t\tthis.thrPc = parseFloat(this.threshold) / 100;\r\n\t\t} else {\r\n\t\t\tthis.thrPx = parseFloat(this.threshold);\r\n\t\t\tthis.thrPc = 0;\r\n\t\t}\r\n\t}\r\n\r\n\tregisterScrollListener() {\r\n\t\tfromEvent(this.panel, 'scroll')\r\n\t\t\t.pipe(\r\n\t\t\t\ttakeUntil(this.destroyed$),\r\n\t\t\t\tdebounceTime(this.debounceTime),\r\n\t\t\t\ttap(event => {\r\n\t\t\t\t\tthis.handleScrollEvent(event);\r\n\t\t\t\t})\r\n\t\t\t)\r\n\t\t\t.subscribe();\r\n\t}\r\n\r\n\thandleScrollEvent(event) {\r\n\t\tthis.ngZone.runOutsideAngular(() => {\r\n\t\t\tif (this.complete) return;\r\n\r\n\t\t\tconst countOfRenderedOptions = this.matSelect.options.length;\r\n\t\t\tconst infiniteScrollDistance =\r\n\t\t\t\tthis.singleOptionHeight * countOfRenderedOptions;\r\n\t\t\tconst threshold =\r\n\t\t\t\tthis.thrPc !== 0\r\n\t\t\t\t\t? infiniteScrollDistance * this.thrPc\r\n\t\t\t\t\t: this.thrPx;\r\n\t\t\tconst scrolledDistance =\r\n\t\t\t\tthis.panel.clientHeight + event.target.scrollTop;\r\n\r\n\t\t\tif (scrolledDistance + threshold >= infiniteScrollDistance)\r\n\t\t\t\tthis.ngZone.run(() => this.infiniteScroll.emit());\r\n\t\t});\r\n\t}\r\n\r\n\tgetSelectItemHeightPx(): number {\r\n\t\treturn (\r\n\t\t\tparseFloat(getComputedStyle(this.panel).fontSize) *\r\n\t\t\tSELECT_ITEM_HEIGHT_EM\r\n\t\t);\r\n\t}\r\n}\r\n","export class PackageReqModel {\r\n\tpublic name: string;\r\n\tpublic monthlyRental: number;\r\n\tpublic conversationMsg: string;\r\n\tpublic businessMsg: string;\r\n\tpublic contacts: string;\r\n\tpublic isMultipleFlow: boolean;\r\n\tpublic tps: number;\r\n\tpublic multichatLiveAgent: string;\r\n\tpublic multichatLiveSupervisor: string;\r\n\tpublic numberOfFlow: string;\r\n\tpublic waOfficialAccount: string;\r\n\tpublic dashboardToSendMessage: string;\r\n\tpublic reportAdminPanel: string;\r\n\tpublic trainingSupport: string;\r\n\tpublic isMultiple: string;\r\n\tpublic checklistWa:\tboolean;\r\n\tpublic checklistTele:\tboolean;\r\n\tpublic checklistLine:\tboolean;\r\n\tpublic specifyPackage: string;\r\n\tpublic customDevelopment: string;\r\n\tpublic oneUsageCostConversation: string;\r\n\tpublic ovrUsgConversationRateCard: boolean;\r\n\tpublic ovrUsgNotficationRateCard: boolean | string;\r\n\tpublic ovrUsgConversationCost: string;\r\n\tpublic ovrUsgNotficationCost: string;\r\n\tpublic signupOrSetup: string;\r\n\tpublic checklistAdm: boolean;\r\n\tpublic checklistUser: boolean;\r\n\tpublic checklistClient: boolean;\r\n\tpublic checklistChatAgentAdmin: boolean;\r\n\tpublic checklistChatAgentUser: boolean;\r\n\tpublic country: string;\r\n\tpublic currency: string;\r\n\tpublic customPackage: boolean;\r\n\tpublic costPerCustomer: string;\r\n\tpublic costPerBusiness: string;\r\n\tpublic setupFeeRateCard: boolean | string;\r\n\tpublic setupFee: string;\r\n\tpublic type: string;\r\n\tpublic recomended: string;\r\n\r\n\t\r\n\r\n\tpublic clone(source: any): PackageReqModel {\r\n\t\tif (source.country) {\r\n\t\t\tthis.country = source.country;\r\n\t\t}\r\n\t\tif (source.recomended) {\r\n\t\t\tthis.recomended = source.recomended;\r\n\t\t}\r\n\t\tif (source.type) {\r\n\t\t\tthis.type = source.type;\r\n\t\t}\r\n\t\tif (source.setupFeeRateCard) {\r\n\t\t\tthis.setupFeeRateCard = source.setupFeeRateCard;\r\n\t\t}\r\n\t\tif (source.setupFee) {\r\n\t\t\tif(source.setupFeeRateCard === 'true') {\r\n\t\t\t\tthis.setupFee = null;\r\n\t\t\t}else {\r\n\t\t\t\tthis.setupFee = source.setupFee;\r\n\t\t\t}\r\n\t\t}\r\n\t\tif (source.ovrUsgConversationRateCard) {\r\n\t\t\tthis.ovrUsgConversationRateCard = source.ovrUsgConversationRateCard;\r\n\t\t}\r\n\t\tif (source.costPerCustomer) {\r\n\t\t\tthis.costPerCustomer = source.costPerCustomer;\r\n\t\t}\r\n\t\tif (source.costPerBusiness) {\r\n\t\t\tthis.costPerBusiness = source.costPerBusiness;\r\n\t\t}\r\n\t\tif (source.ovrUsgNotficationRateCard) {\r\n\t\t\t\tthis.ovrUsgNotficationRateCard = source.ovrUsgNotficationRateCard;\r\n\t\t}\r\n\t\tif (source.ovrUsgConversationCost) {\r\n\t\t\tthis.ovrUsgConversationCost = source.ovrUsgConversationCost;\r\n\t\t}\r\n\t\tif (source.ovrUsgNotficationCost) {\r\n\t\t\tif(source.ovrUsgNotficationRateCard === 'true') {\r\n\t\t\t\tthis.ovrUsgNotficationCost = null;\r\n\t\t\t}else {\r\n\t\t\t\tthis.ovrUsgNotficationCost = source.ovrUsgNotficationCost;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t}\r\n\t\tif (source.customPackage) {\r\n\t\t\tthis.customPackage = source.customPackage;\r\n\t\t}\r\n\t\tif (source.currency) {\r\n\t\t\tthis.currency = source.currency;\r\n\t\t}\r\n\t\tif (source.name) {\r\n\t\t\tthis.name = source.name;\r\n\t\t}\r\n\t\tif (source.monthlyRental) {\r\n\t\t\tthis.monthlyRental = source.monthlyRental;\r\n\t\t}\r\n\t\tif (source.conversationMsg) {\r\n\t\t\tthis.conversationMsg = source.conversationMsg;\r\n\t\t}\r\n\t\tif (source.businessMsg) {\r\n\t\t\tthis.businessMsg = source.businessMsg;\r\n\t\t}\r\n\t\tif (source.contacts) {\r\n\t\t\tthis.contacts = source.contacts;\r\n\t\t}\r\n\t\tif (source.isMultipleFlow) {\r\n\t\t\tthis.isMultipleFlow = source.isMultipleFlow;\r\n\t\t}\r\n\t\tif (source.tps) {\r\n\t\t\tthis.tps = source.tps;\r\n\t\t}\r\n\t\tif (source.multichatLiveAgent) {\r\n\t\t\tthis.multichatLiveAgent = source.multichatLiveAgent;\r\n\t\t}\r\n\t\tif (source.multichatLiveSupervisor) {\r\n\t\t\tthis.multichatLiveSupervisor = source.multichatLiveSupervisor;\r\n\t\t}\r\n\t\tif (source.numberOfFlow) {\r\n\t\t\tthis.numberOfFlow = source.numberOfFlow;\r\n\t\t}\r\n\t\tif (source.waOfficialAccount) {\r\n\t\t\tthis.waOfficialAccount = source.waOfficialAccount;\r\n\t\t}\r\n\t\tif (source.dashboardToSendMessage) {\r\n\t\t\tthis.dashboardToSendMessage = source.dashboardToSendMessage;\r\n\t\t}\r\n\t\tif (source.reportAdminPanel) {\r\n\t\t\tthis.reportAdminPanel = source.reportAdminPanel;\r\n\t\t}\r\n\t\tif (source.trainingSupport) {\r\n\t\t\tthis.trainingSupport = source.trainingSupport;\r\n\t\t}\r\n\t\tif (source.isMultiple) {\r\n\t\t\tthis.isMultiple = source.isMultiple;\r\n\t\t}\r\n\t\tif (source.checklistWa) {\r\n\t\t\tthis.checklistWa = source.checklistWa;\r\n\t\t}\r\n\t\tif (source.checklistLine) {\r\n\t\t\tthis.checklistLine = source.checklistLine;\r\n\t\t}\r\n\t\tif (source.checklistTele) {\r\n\t\t\tthis.checklistTele = source.checklistTele;\r\n\t\t}\r\n\t\tif (source.specifyPackage) {\r\n\t\t\tthis.specifyPackage = source.specifyPackage;\r\n\t\t}\r\n\t\tif (source.customDevelopment) {\r\n\t\t\tthis.customDevelopment = source.customDevelopment;\r\n\t\t}\r\n\t\tif (source.oneUsageCostConversation) {\r\n\t\t\tthis.oneUsageCostConversation = source.oneUsageCostConversation;\r\n\t\t}\r\n\t\t// if (source.oneUsageCostNotification) {\r\n\t\t// \tthis.oneUsageCostNotification = source.oneUsageCostNotification;\r\n\t\t// }\r\n\t\tif (source.signupOrSetup) {\r\n\t\t\tthis.signupOrSetup = source.signupOrSetup;\r\n\t\t}\r\n\t\tif (source.checklistAdm) {\r\n\t\t\tthis.checklistAdm = source.checklistAdm;\r\n\t\t}\r\n\t\tif (source.checklistUser) {\r\n\t\t\tthis.checklistUser = source.checklistUser;\r\n\t\t}\r\n\t\tif (source.checklistClient) {\r\n\t\t\tthis.checklistClient = source.checklistClient;\r\n\t\t}\r\n\t\tif (source.checklistChatAgentAdmin) {\r\n\t\t\tthis.checklistChatAgentAdmin = source.checklistChatAgentAdmin;\r\n\t\t}\r\n\t\tif (source.checklistChatAgentUser) {\r\n\t\t\tthis.checklistChatAgentUser = source.checklistChatAgentUser;\r\n\t\t}\r\n\t\treturn this;\r\n\t}\r\n}","export class BaseOptionModel {\r\n\tpublic label: string;\r\n\tpublic value: string | number;\r\n}\r\n","export class HttpBodyReqPaginationGlobalVarModel {\r\n\tpublic pageSize: number;\r\n\tpublic pageNo: number;\r\n\r\n\tconstructor() {\r\n\t\tthis.pageSize = 3;\r\n\t\tthis.pageNo = 1;\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn {\r\n\t\t\tpageSize: this.pageSize,\r\n\t\t\tpageNo: this.pageNo,\r\n\t\t};\r\n\t}\r\n}\r\n","export class HttpBodyReqPaginationModel {\r\n\tpublic pageSize: number;\r\n\tpublic pageNo: number;\r\n\r\n\tconstructor() {\r\n\t\tthis.pageSize = 10;\r\n\t\tthis.pageNo = 1;\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn {\r\n\t\t\tpageSize: this.pageSize,\r\n\t\t\tpageNo: this.pageNo,\r\n\t\t};\r\n\t}\r\n}\r\n","export * from './http-body-req';\r\n// export * from './api-adapter-service-models';\r\n// export * from './api-dto';","import { HttpBodyReqPaginationModel } from \"./util\";\r\n\r\nexport class BillingParamReqModel extends HttpBodyReqPaginationModel {\r\n\tpublic filter: string;\r\n\tpublic platform: string;\r\n\tpublic clientId: string;\r\n\r\n\tconstructor() {\r\n\t\tsuper();\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn {\r\n\t\t\tfilter: this.filter,\r\n\t\t\tplatform: this.platform,\r\n\t\t\tclientId: this.clientId,\r\n\t\t\tpageNo: String(this.pageNo),\r\n\t\t\tpageSize: String(this.pageSize),\r\n\t\t};\r\n\t}\r\n}\r\n","export class CountryModel {\r\n\tpublic category: string;\r\n\tpublic code: string;\r\n\tpublic values: string;\r\n\tpublic param1: string;\r\n\tpublic param2: boolean;\r\n\tpublic ìcon: boolean;\r\n\r\n\tpublic convert(dto: any): CountryModel {\r\n\r\n\t\tif (dto.category) {\r\n\t\t\tthis.category = dto.category;\r\n\t\t}\r\n\t\tif (dto.code) {\r\n\t\t\tthis.code = dto.code;\r\n\t\t}\r\n\t\tif (dto.values) {\r\n\t\t\tthis.values = dto.values;\r\n\t\t}\r\n\t\tif (dto.param1) {\r\n\t\t\tthis.param1 = dto.param1;\r\n\t\t}\r\n\t\tif (dto.param2) {\r\n\t\t\tthis.param2 = dto.param2;\r\n\t\t}\r\n\t\tif (dto.ìcon) {\r\n\t\t\tthis.ìcon = dto.ìcon;\r\n\t\t}\r\n\t\treturn this;\r\n\t}\r\n}\r\n","export class CreatePackageReqModel {\r\n\tpublic name : string;\r\n\tpublic channels : string[] = [];\r\n\tpublic customDevelopment : boolean;\r\n\tpublic maxAgent : string;\r\n\tpublic maxContact : string;\r\n\tpublic maxFlow : string;\r\n\tpublic maxSupervisor : string;\r\n\tpublic monthlyConversation : string;\r\n\tpublic monthlyNotification : string;\r\n\tpublic monthlyRental : number;\r\n\tpublic monthlyRentalRateCard : string;\r\n\tpublic ovrUsgConversation : string;\r\n\tpublic ovrUsgConversationCost : string;\r\n\tpublic ovrUsgConversationRateCard : boolean;\r\n\tpublic ovrUsgNotification : string;\r\n\tpublic ovrUsgNotificationCost : string;\r\n\tpublic ovrUsgNotificationRateCard : boolean;\r\n\tpublic reports : boolean;\r\n\tpublic roles : string;\r\n\tpublic sendMsgDashboard : boolean;\r\n\tpublic setupFee : string;\r\n\tpublic tps : number;\r\n\tpublic training : boolean;\r\n\tpublic waOfficialAcc : boolean;\r\n\tpublic customPackage: boolean;\r\n\tpublic countryCode: string;\r\n\tpublic costPerCustomer: string;\r\n\tpublic costPerBusiness: string;\r\n\tpublic setupFeeRateCard: boolean;\r\n\tpublic type: string;\r\n\tpublic recomended: string;\r\n\r\n\tpublic clone(source:any): CreatePackageReqModel {\r\n\t\tif (source.name) {\r\n\t\t\tthis.name = source.name;\r\n\t\t}\r\n\t\tif (source.type) {\r\n\t\t\tthis.type = source.type;\r\n\t\t}\r\n\t\tif (source.recomended) {\r\n\t\t\tthis.recomended = source.recomended;\r\n\t\t}\r\n\t\tif (source.setupFeeRateCard) {\r\n\t\t\tthis.setupFeeRateCard = source.setupFeeRateCard;\r\n\t\t}\r\n\t\tif (source.countryCode) {\r\n\t\t\tthis.countryCode = source.countryCode;\r\n\t\t}\r\n\t\tif (source.costPerCustomer) {\r\n\t\t\tthis.costPerCustomer = source.costPerCustomer;\r\n\t\t}\r\n\t\tif (source.costPerBusiness) {\r\n\t\t\tthis.costPerBusiness = source.costPerBusiness;\r\n\t\t}\r\n\t\tif (source.customPackage) {\r\n\t\t\tthis.customPackage = source.customPackage;\r\n\t\t}\r\n\t\tif (source.channels) {\r\n\t\t\tthis.channels = [source.channels];\r\n\t\t}\r\n\t\tif (source.customDevelopment) {\r\n\t\t\tthis.customDevelopment = source.customDevelopment;\r\n\t\t}\r\n\t\tif (source.maxAgent) {\r\n\t\t\tthis.maxAgent = source.maxAgent;\r\n\t\t}\r\n\t\tif (source.maxContact) {\r\n\t\t\tthis.maxContact = source.maxContact;\r\n\t\t}\r\n\t\tif (source.maxFlow) {\r\n\t\t\tthis.maxFlow = source.maxFlow;\r\n\t\t}\r\n\t\tif (source.maxSupervisor) {\r\n\t\t\tthis.maxSupervisor = source.maxSupervisor;\r\n\t\t}\r\n\t\tif (source.monthlyConversation) {\r\n\t\t\tthis.monthlyConversation = source.monthlyConversation;\r\n\t\t}\r\n\t\tif (source.monthlyNotification) {\r\n\t\t\tthis.monthlyNotification = source.monthlyNotification;\r\n\t\t}\r\n\t\tif (source.monthlyRental) {\r\n\t\t\tthis.monthlyRental = source.monthlyRental;\r\n\t\t}\r\n\t\tif (source.monthlyRentalRateCard) {\r\n\t\t\tthis.monthlyRentalRateCard = source.monthlyRentalRateCard;\r\n\t\t}\r\n\t\tif (source.ovrUsgConversation) {\r\n\t\t\tthis.ovrUsgConversation = source.ovrUsgConversation;\r\n\t\t}\r\n\t\tif (source.ovrUsgConversationCost) {\r\n\t\t\tthis.ovrUsgConversationCost = source.ovrUsgConversationCost;\r\n\t\t}\r\n\t\tif (source.ovrUsgConversationRateCard) {\r\n\t\t\tthis.ovrUsgConversationRateCard = source.ovrUsgConversationRateCard;\r\n\t\t}\r\n\t\tif (source.ovrUsgNotification) {\r\n\t\t\tthis.ovrUsgNotification = source.ovrUsgNotification;\r\n\t\t}\r\n\t\tif (source.ovrUsgNotificationCost) {\r\n\t\t\tthis.ovrUsgNotificationCost = source.ovrUsgNotificationCost;\r\n\t\t}\r\n\t\tif (source.ovrUsgNotificationRateCard) {\r\n\t\t\tthis.ovrUsgNotificationRateCard = source.ovrUsgNotificationRateCard;\r\n\t\t}\r\n\t\tif (source.reports) {\r\n\t\t\tthis.reports = source.reports;\r\n\t\t}\r\n\t\tif (source.roles) {\r\n\t\t\tthis.roles = source.roles;\r\n\t\t}\r\n\t\tif (source.sendMsgDashboard) {\r\n\t\t\tthis.sendMsgDashboard = source.sendMsgDashboard;\r\n\t\t}\r\n\t\tif (source.setupFee) {\r\n\t\t\tthis.setupFee = source.setupFee;\r\n\t\t}\r\n\t\tif (source.tps) {\r\n\t\t\tthis.tps = source.tps;\r\n\t\t}\r\n\t\tif (source.training) {\r\n\t\t\tthis.training = source.training;\r\n\t\t}\r\n\t\tif (source.waOfficialAcc) {\r\n\t\t\tthis.waOfficialAcc = source.waOfficialAcc;\r\n\t\t}\r\n\r\n\t\t\r\n\t\treturn this;\r\n\t}\r\n\r\n\tconvert(): any {\r\n\t\treturn {\r\n\t\t\tname: this.name,\r\n\t\t\tchannels : this.channels ,\r\n\t\t\tcustomDevelopment : this.customDevelopment ,\r\n\t\t\tmaxAgent : +this.maxAgent ,\r\n\t\t\tmaxContact :+this.maxContact ,\r\n\t\t\tmaxFlow : +this.maxFlow ,\r\n\t\t\tmaxSupervisor : +this.maxSupervisor ,\r\n\t\t\tmonthlyConversation : +this.monthlyConversation ,\r\n\t\t\tmonthlyNotification : +this.monthlyNotification ,\r\n\t\t\tmonthlyRental : +this.monthlyRental ,\r\n\t\t\tmonthlyRentalRateCard : this.monthlyRentalRateCard ,\r\n\t\t\tovrUsgConversation : this.ovrUsgConversation ,\r\n\t\t\tovrUsgConversationCost : +this.ovrUsgConversationCost ,\r\n\t\t\tovrUsgConversationRateCard : this.ovrUsgConversationRateCard ,\r\n\t\t\tovrUsgNotification : this.ovrUsgNotification ,\r\n\t\t\tovrUsgNotificationCost : +this.ovrUsgNotificationCost ,\r\n\t\t\tovrUsgNotificationRateCard : this.ovrUsgNotificationRateCard ,\r\n\t\t\treports : this.reports ,\r\n\t\t\troles : this.roles ,\r\n\t\t\tsendMsgDashboard : this.sendMsgDashboard ,\r\n\t\t\tsetupFee : +this.setupFee ,\r\n\t\t\ttps : +this.tps ,\r\n\t\t\ttraining : this.training ,\r\n\t\t\twaOfficialAcc : this.waOfficialAcc,\r\n\t\t\tcustomPackage: this.customPackage,\r\n\t\t\tcountryCode: this.countryCode,\r\n\t\t\tcostPerBusiness: this.costPerBusiness,\r\n\t\t\tcostPerCustomer: this.costPerCustomer,\r\n\t\t\tsetupFeeRateCard: this.setupFeeRateCard,\r\n\t\t\ttype: this.type,\r\n\t\t\trecomended: this.recomended\r\n\t\t};\r\n\t}\r\n}","export class HttpBodyRespModel {\r\n\tpublic status: number;\r\n\tpublic errorCode: number;\r\n\tpublic message: string;\r\n\tpublic data: any;\r\n\tpublic totalRecord: number;\r\n\r\n\tpublic convert(dto: any): HttpBodyRespModel {\r\n\t\tif (dto.status) {\r\n\t\t\tthis.status = dto.status;\r\n\t\t}\r\n\t\tif (dto.errorCode) {\r\n\t\t\tthis.errorCode = dto.errorCode;\r\n\t\t}\r\n\t\tif (dto.message) {\r\n\t\t\tthis.message = dto.message;\r\n\t\t}\r\n\t\tif (dto.data) {\r\n\t\t\tthis.data = dto.data;\r\n\t\t}\r\n\t\tif (dto.totalRecord >= 0) {\r\n\t\t\tthis.totalRecord = dto.totalRecord;\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t}\r\n}\r\n","let API_CONST = '';\r\n\r\nif (location.origin.includes('dashboard.neuapix'))\r\n\tAPI_CONST = 'https://api.neuapix.com';\r\nelse if (location.origin.includes('dashboard-staging.neuapix'))\r\n\tAPI_CONST = 'https://api-staging.neuapix.com';\r\nelse if (location.origin.includes('dashboard-qa.adlsandbox'))\r\n\tAPI_CONST = 'https://apibsp-qa.adlsandbox.net';\r\nelse API_CONST = 'https://apibsp-dev.adlsandbox.net';\r\n\r\nexport const environment = {\r\n\tproduction: false,\r\n\tapi: API_CONST,\r\n};\r\n","import {\r\n\tHttpClient,\r\n\tHttpErrorResponse,\r\n\tHttpHeaders,\r\n} from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable, of } from 'rxjs';\r\nimport { catchError } from 'rxjs/internal/operators/catchError';\r\nimport { environment } from '../../../environments/environment';\r\nimport {\r\n\tParameter,\r\n\tServerInBuiltError,\r\n} from '../models/util/api-adapter-service-models';\r\nimport { AppRequest } from '../models/util/api-dto/request-models/app-request';\r\nimport { AppResponse } from '../models/util/api-dto/response-models/app-response';\r\n\r\n@Injectable({\r\n\tprovidedIn: 'root',\r\n})\r\nexport class ApiAdapterServiceService {\r\n\tprivate queryCount = 0;\r\n\r\n\tconstructor(private httpClient: HttpClient) {}\r\n\r\n\tpublic executeApiRequest<T>(\r\n\t\tparameterList: Array<Parameter>,\r\n\t\tpath: string,\r\n\t\thttpVerb: string,\r\n\t\tisFile: boolean = false\r\n\t): Observable<any> {\r\n\t\tlet url = path;\r\n\t\tlet bodyData: {};\r\n\t\tlet parameter: Parameter;\r\n\t\tlet formData = new FormData();\r\n\r\n\t\tparameterList\r\n\t\t\t?.filter(rt => rt.in !== 'header')\r\n\t\t\t.forEach(requestType => {\r\n\t\t\t\tparameter = parameterList.find(\r\n\t\t\t\t\tparameter => parameter.name === requestType.name\r\n\t\t\t\t) as Parameter;\r\n\r\n\t\t\t\tif (\r\n\t\t\t\t\t!parameter &&\r\n\t\t\t\t\trequestType.required &&\r\n\t\t\t\t\trequestType.in !== 'header'\r\n\t\t\t\t) {\r\n\t\t\t\t\twindow.alert(\r\n\t\t\t\t\t\t`Parameter \"${requestType.name}\" is required!, Try again with \"${requestType.name}\"`\r\n\t\t\t\t\t);\r\n\t\t\t\t} else if (!parameter && !requestType.required) {\r\n\t\t\t\t\t// continue;\r\n\t\t\t\t} else {\r\n\t\t\t\t\tswitch (requestType.in) {\r\n\t\t\t\t\t\tcase 'body': {\r\n\t\t\t\t\t\t\tbodyData = parameter.value;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcase 'path': {\r\n\t\t\t\t\t\t\turl = url.replace(\r\n\t\t\t\t\t\t\t\t`{${parameter.name}}`,\r\n\t\t\t\t\t\t\t\tparameter.value\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcase 'query': {\r\n\t\t\t\t\t\t\turl = this.setQuery(\r\n\t\t\t\t\t\t\t\tparameter.name,\r\n\t\t\t\t\t\t\t\tparameter.value,\r\n\t\t\t\t\t\t\t\turl\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcase 'formData': {\r\n\t\t\t\t\t\t\tformData = this.setFormData(parameter, formData);\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tdefault: {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tparameter = undefined;\r\n\t\t\t});\r\n\r\n\t\tthis.queryCount = 0;\r\n\r\n\t\turl = `${environment.api}${url}`;\r\n\t\tconst appRequest: AppRequest<any> = {\r\n\t\t\t...(parameterList?.[0]?.withoutKeyData\r\n\t\t\t\t? bodyData\r\n\t\t\t\t: { data: bodyData }),\r\n\t\t};\r\n\r\n\t\tconst headers = new HttpHeaders()\r\n\t\t\t.set(\r\n\t\t\t\t'Authorization',\r\n\t\t\t\t'Bearer ' + localStorage.getItem('telin.accessToken')\r\n\t\t\t)\r\n\t\t\t.set('Access-Control-Allow-Origin', '*');\r\n\r\n\t\treturn this.httpClient\r\n\t\t\t.request<AppResponse<T>>(httpVerb, url, {\r\n\t\t\t\tbody: !bodyData ? formData : appRequest,\r\n\t\t\t\tresponseType: isFile ? ('blob' as 'json') : ('json' as 'json'),\r\n\t\t\t\theaders,\r\n\t\t\t})\r\n\t\t\t.pipe(\r\n\t\t\t\tcatchError((err: HttpErrorResponse) => {\r\n\t\t\t\t\tif (err.error instanceof ErrorEvent) {\r\n\t\t\t\t\t\treturn of<AppResponse<any>>({\r\n\t\t\t\t\t\t\terror: {\r\n\t\t\t\t\t\t\t\ttitle: 'Network error!',\r\n\t\t\t\t\t\t\t\tdetail: err.message,\r\n\t\t\t\t\t\t\t\tsource: err.statusText,\r\n\t\t\t\t\t\t\t\tstatus: err.status.toString(),\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tmeta: {\r\n\t\t\t\t\t\t\t\tcode: err.status,\r\n\t\t\t\t\t\t\t\tmessage: err.message,\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\treturn of<ServerInBuiltError>(err.error);\r\n\t\t\t\t})\r\n\t\t\t);\r\n\t}\r\n\r\n\tprivate setQuery(name: string, value: any, url: string): string {\r\n\t\turl =\r\n\t\t\tthis.queryCount === 0\r\n\t\t\t\t? `${url}?${name}=${value}`\r\n\t\t\t\t: `${url}&${name}=${value}`;\r\n\t\tthis.queryCount++;\r\n\t\treturn url;\r\n\t}\r\n\r\n\tprivate setFormData(parameter: Parameter, formData: FormData): FormData {\r\n\t\tif (parameter.type === 'array') {\r\n\t\t\tfor (let i = 0; parameter.value.length > i; i++) {\r\n\t\t\t\tformData.append(\r\n\t\t\t\t\tparameter.name,\r\n\t\t\t\t\tparameter.value[i],\r\n\t\t\t\t\tparameter.value[i].name\r\n\t\t\t\t);\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tformData.append(\r\n\t\t\t\tparameter.name,\r\n\t\t\t\tparameter.value ? parameter.value : null\r\n\t\t\t);\r\n\t\t}\r\n\t\treturn formData;\r\n\t}\r\n}\r\n","export const CampaignListTableLabelConst = [\r\n\t'Broadcast ID',\r\n\t'Business Name',\r\n\t'Broadcast Name',\r\n\t'Template Name',\r\n\t'Channel',\r\n\t'Status',\r\n\t'Number Count',\r\n\t'On Progress',\r\n\t'Sent',\r\n\t'Delivered',\r\n\t'Read',\r\n\t'Failed',\r\n\t'Repeat Count',\r\n\t'Start Date',\r\n\t'End Date',\r\n\t'Action',\r\n];\r\n\r\nexport const CampaignListTableColumnConst = [\r\n\t'id',\r\n\t'clientName',\r\n\t'name',\r\n\t'templateName',\r\n\t'platform',\r\n\t'statusName',\r\n\t'numberCount',\r\n\t'queuedCount',\r\n\t'sentCount',\r\n\t'delivCount',\r\n\t'readCount',\r\n\t'failedCount',\r\n\t'repeatCount',\r\n\t'startTime',\r\n\t'endTime',\r\n\t'action',\r\n];\r\n","export class CampaignsListModel {\r\n\tpublic campaignID: string;\r\n\tpublic businessName: string;\r\n\tpublic campaignName: string;\r\n\tpublic medium: string;\r\n\tpublic status: string;\r\n\tpublic numberCount: number;\r\n\tpublic deilveredCount: number;\r\n\tpublic seenCount: number;\r\n\tpublic responseCount: number;\r\n\tpublic estimatedCost: number;\r\n\tpublic actualCost: number;\r\n\tpublic startDate: string;\r\n\tpublic endDate: string;\r\n\tpublic id: string;\r\n\r\n\tpublic convert(dto: any): CampaignsListModel {\r\n\t\tif (dto.campaignID) {\r\n\t\t\tthis.campaignID = dto.campaignID;\r\n\t\t}\r\n\t\tif (dto.businessName) {\r\n\t\t\tthis.businessName = dto.businessName;\r\n\t\t}\r\n\t\tif (dto.campaignName) {\r\n\t\t\tthis.campaignName = dto.campaignName;\r\n\t\t}\r\n\t\tif (dto.medium) {\r\n\t\t\tthis.medium = dto.medium;\r\n\t\t}\r\n\t\tif (dto.status) {\r\n\t\t\tthis.status = dto.status;\r\n\t\t}\r\n\t\tif (dto.numberCount) {\r\n\t\t\tthis.numberCount = dto.numberCount;\r\n\t\t}\r\n\t\tif (dto.deilveredCount) {\r\n\t\t\tthis.deilveredCount = dto.deilveredCount;\r\n\t\t}\r\n\t\tif (dto.seenCount) {\r\n\t\t\tthis.seenCount = dto.seenCount;\r\n\t\t}\r\n\t\tif (dto.responseCount) {\r\n\t\t\tthis.responseCount = dto.responseCount;\r\n\t\t}\r\n\t\tif (dto.estimatedCost) {\r\n\t\t\tthis.estimatedCost = dto.estimatedCost;\r\n\t\t}\r\n\t\tif (dto.actualCost) {\r\n\t\t\tthis.actualCost = dto.actualCost;\r\n\t\t}\r\n\t\tif (dto.startDate) {\r\n\t\t\tthis.startDate = dto.startDate;\r\n\t\t}\r\n\t\tif (dto.endDate) {\r\n\t\t\tthis.endDate = dto.endDate;\r\n\t\t}\r\n\t\tif (dto.id) {\r\n\t\t\tthis.id = dto.id;\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t}\r\n}\r\n","import { MatTableDataSource } from '@angular/material/table';\r\n\r\nexport class TableModel {\r\n\tpublic columns: any[];\r\n\tpublic dataSource: MatTableDataSource<any>;\r\n\tpublic labels: string[];\r\n\tpublic page: number;\r\n\tpublic pageSize: number;\r\n\tpublic totalData: number;\r\n\r\n\tconstructor() {\r\n\t\tthis.columns = [];\r\n\t\tthis.dataSource = new MatTableDataSource();\r\n\t\tthis.labels = [];\r\n\t\tthis.page = 1;\r\n\t\tthis.pageSize = 10;\r\n\t\tthis.totalData = 0;\r\n\t}\r\n\r\n\tpublic getNumber(index: number, limit: number): number {\r\n\t\treturn (this.page - 1) * limit + index;\r\n\t}\r\n\r\n\tpublic getPageIndex(): number {\r\n\t\treturn this.page - 1;\r\n\t}\r\n\r\n\tpublic isEmpty(): boolean {\r\n\t\treturn this.totalData === 0;\r\n\t}\r\n\r\n\tpublic setPage(page: number): void {\r\n\t\tthis.page = page;\r\n\t}\r\n\r\n\tpublic setPageSize(size: number): void {\r\n\t\tthis.pageSize = size;\r\n\t}\r\n\r\n\tpublic resetPage(): void {\r\n\t\tthis.page = 1;\r\n\t}\r\n\r\n\tpublic setNextPage(isNext: boolean): void {\r\n\t\tif (!isNext && this.page === 1) {\r\n\t\t\tthis.totalData = this.dataSource.data?.length ?? 0;\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.totalData =\r\n\t\t\tthis.page === 1\r\n\t\t\t\t? this.pageSize * 2\r\n\t\t\t\t: this.pageSize * (this.page + 1);\r\n\r\n\t\tconst diffData = this.pageSize - this.dataSource.data?.length;\r\n\r\n\t\t/* totalData substracted by diffData if data < pageSize */\r\n\t\tif (diffData !== 0) this.totalData -= diffData;\r\n\r\n\t\t/* totalData substracted by pageSize if isNext false */\r\n\t\tif (!isNext) this.totalData -= this.pageSize;\r\n\t}\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { MainArea } from '../../../core/enums/main-area.enum';\r\nimport { HttpBodyReqPaginationModel } from '../../../core/models';\r\nimport { Parameter } from '../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../core/models/util/api-dto/response-models/app-response';\r\nimport { ApiAdapterServiceService } from '../../../core/services/api-adapter-service.service';\r\nimport { CampaignTotalDto } from '../../models/campaign-count-final-response-dto.model';\r\nimport {\r\n\tCampaignListTableColumnConst,\r\n\tCampaignListTableLabelConst,\r\n\tTableModel,\r\n} from './models';\r\nimport { CampaignResponseDtoApi } from './models/campaign-response-dto.model';\r\n\r\n@Component({\r\n\tselector: 'lib-campaign-index',\r\n\ttemplateUrl: './campaign-index.component.html',\r\n\tstyleUrls: ['./campaign-index.component.scss'],\r\n})\r\nexport class CampaignIndexComponent implements OnInit, OnDestroy {\r\n\t@Output() currentView = new EventEmitter<MainArea>();\r\n\r\n\tpublic table: TableModel;\r\n\tpublic filterValue: any;\r\n\tpublic currentViews = MainArea;\r\n\tpublic campaignTotal: CampaignTotalDto;\r\n\r\n\tprivate campaignParam: HttpBodyReqPaginationModel;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\tconstructor(\r\n\t\tprivate datePipe: DatePipe,\r\n\t\tprivate apiAdapterService: ApiAdapterServiceService\r\n\t) {}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.campaignParam = new HttpBodyReqPaginationModel();\r\n\r\n\t\tthis.initTable();\r\n\t\tthis.campaignCountService();\r\n\t\tthis.getCampaignList();\r\n\r\n\t\tlocalStorage.removeItem('telin.campaign');\r\n\t}\r\n\r\n\tprivate initTable(): void {\r\n\t\tthis.table = new TableModel();\r\n\t\tthis.table.labels = CampaignListTableLabelConst;\r\n\t\tthis.table.columns = CampaignListTableColumnConst;\r\n\t}\r\n\r\n\tprivate campaignCountService() {\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest([], '/campaign/totals', 'GET')\r\n\t\t\t.subscribe((response: AppResponse<CampaignTotalDto>) => {\r\n\t\t\t\tthis.campaignTotal = response?.data;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getCampaignList(searchValue: string = ''): void {\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.campaignParam.pageNo, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', this.campaignParam.pageSize, 'number'),\r\n\t\t\tthis.initParam('filter', searchValue, 'string'),\r\n\t\t];\r\n\r\n\t\tif (this.filterValue?.businessName)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam(\r\n\t\t\t\t\t'clientId',\r\n\t\t\t\t\tthis.filterValue.businessName,\r\n\t\t\t\t\t'string'\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\tif (this.filterValue?.medium)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam('channel', this.filterValue.medium, 'string')\r\n\t\t\t);\r\n\t\tif (this.filterValue?.templateName)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam(\r\n\t\t\t\t\t'templateName',\r\n\t\t\t\t\tthis.filterValue.templateName?.name,\r\n\t\t\t\t\t'string'\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\tif (this.filterValue?.status)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam('status', this.filterValue.status, 'string')\r\n\t\t\t);\r\n\t\tif (this.filterValue?.startDate)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam(\r\n\t\t\t\t\t'startDate',\r\n\t\t\t\t\tthis.datePipe.transform(\r\n\t\t\t\t\t\tthis.filterValue.startDate,\r\n\t\t\t\t\t\t'yyyy-MM-dd'\r\n\t\t\t\t\t),\r\n\t\t\t\t\t'string'\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\tif (this.filterValue?.endDate)\r\n\t\t\tparameterList.push(\r\n\t\t\t\tthis.initParam(\r\n\t\t\t\t\t'endDate',\r\n\t\t\t\t\tthis.datePipe.transform(\r\n\t\t\t\t\t\tthis.filterValue.endDate,\r\n\t\t\t\t\t\t'yyyy-MM-dd'\r\n\t\t\t\t\t),\r\n\t\t\t\t\t'string'\r\n\t\t\t\t)\r\n\t\t\t);\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/campaign', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<CampaignResponseDtoApi[]>) => {\r\n\t\t\t\tthis.table.dataSource.data = resp.data;\r\n\t\t\t\tthis.table.setNextPage(resp.haveNext);\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tpublic updatePage(event: any): void {\r\n\t\tif (event.pageSize) {\r\n\t\t\tthis.table.totalData = event.pageSize;\r\n\t\t\tthis.table.setPageSize(event.pageSize);\r\n\t\t\tthis.table.resetPage();\r\n\t\t} else {\r\n\t\t\tthis.table.setPage(event);\r\n\t\t}\r\n\r\n\t\tthis.campaignParam.pageNo = this.table.page;\r\n\t\tthis.campaignParam.pageSize = this.table.pageSize;\r\n\t\tthis.getCampaignList();\r\n\t}\r\n\r\n\tpublic updateFilter(_filter: any) {\r\n\t\tthis.table.resetPage();\r\n\t\tthis.campaignParam.pageNo = this.table.page;\r\n\t\tthis.campaignParam.pageSize = this.table.pageSize;\r\n\t\tthis.filterValue = _filter;\r\n\r\n\t\tthis.getCampaignList();\r\n\t}\r\n\r\n\tpublic updateSearch(searchValue: string) {\r\n\t\tthis.table.resetPage();\r\n\t\tthis.campaignParam.pageNo = this.table.page;\r\n\t\tthis.getCampaignList(searchValue);\r\n\t}\r\n\r\n\tpublic addCampaign(): void {\r\n\t\tlocalStorage.removeItem('telin.campaign');\r\n\t\tthis.changeCurrentView(this.currentViews.NewCampaign);\r\n\t}\r\n\r\n\tpublic changeCurrentView(area: MainArea) {\r\n\t\tthis.currentView.emit(area);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","export const PlatformOptionConst = [\r\n\t{\r\n\t\ticon: 'icon_wa',\r\n\t\tinputSvgIcon: 'icon-wa-gray',\r\n\t\timage: 'whatsapp.png',\r\n\t\tlabel: 'WhatsApp',\r\n\t\tvalue: 'WA',\r\n\t},\r\n\t{\r\n\t\ticon: 'menu_sms',\r\n\t\tinputSvgIcon: 'icon-sms-gray',\r\n\t\timage: 'sms.png',\r\n\t\tlabel: 'SMS',\r\n\t\tvalue: 'SMS',\r\n\t},\r\n\t{\r\n\t\ticon: 'icon_email',\r\n\t\tinputSvgIcon: 'icon-email-gray',\r\n\t\timage: 'email-contact.png',\r\n\t\tlabel: 'Email',\r\n\t\tvalue: 'EMAIL',\r\n\t},\r\n\t{\r\n\t\ticon: 'icon_line',\r\n\t\tinputSvgIcon: 'icon-line-gray',\r\n\t\timage: 'line.png',\r\n\t\tlabel: 'Line',\r\n\t\tvalue: 'LINE',\r\n\t},\r\n];\r\n\r\nexport const MsgTypeWAOptionConst = [\r\n\t{\r\n\t\tname: 'Text',\r\n\t\tcode: 'TEXT',\r\n\t},\r\n\t{\r\n\t\tname: 'Media',\r\n\t\tcode: 'MEDIA',\r\n\t},\r\n\t{\r\n\t\tname: 'Template',\r\n\t\tcode: 'TEMPLATE',\r\n\t},\r\n\t/* {\r\n\t\tname: 'Catalogue',\r\n\t\tcode: 'CATALOGUE',\r\n\t}, */\r\n];\r\n\r\nexport const MsgTypeEmailOptionConst = [\r\n\t{\r\n\t\tname: 'Text',\r\n\t\tcode: 'HTML',\r\n\t},\r\n\t{\r\n\t\tname: 'Template',\r\n\t\tcode: 'TEMPLATE',\r\n\t},\r\n];\r\n\r\nexport const MsgTypeLineOptionConst = [\r\n\t{\r\n\t\tname: 'Text',\r\n\t\tcode: 'TEXT',\r\n\t},\r\n\t{\r\n\t\tname: 'Template',\r\n\t\tcode: 'TEMPLATE',\r\n\t},\r\n\t/* {\r\n\t\tname: 'Button',\r\n\t\tcode: 'BUTTON',\r\n\t},\r\n\t{\r\n\t\tname: 'Confirmation',\r\n\t\tcode: 'CONFIRMATION',\r\n\t},\r\n\t{\r\n\t\tname: 'Carousel',\r\n\t\tcode: 'CAROUSEL',\r\n\t},\r\n\t{\r\n\t\tname: 'Image Carousel',\r\n\t\tcode: 'IMAGE_CAROUSEL',\r\n\t},\r\n\t{\r\n\t\tname: 'Flex Bubble',\r\n\t\tcode: 'FLEX_BUBBLE',\r\n\t},\r\n\t{\r\n\t\tname: 'Flex Carousel',\r\n\t\tcode: 'FLEX_CAROUSEL',\r\n\t}, */\r\n];\r\n\r\nexport const MediaTypeOptionConst = [\r\n\t{\r\n\t\tname: 'Image',\r\n\t\tcode: 'IMAGE',\r\n\t},\r\n\t{\r\n\t\tname: 'Video',\r\n\t\tcode: 'VIDEO',\r\n\t},\r\n\t{\r\n\t\tname: 'Document',\r\n\t\tcode: 'DOCUMENT',\r\n\t},\r\n\t/* {\r\n\t\tname: 'Location',\r\n\t\tcode: 'LOCATION',\r\n\t}, */\r\n];\r\n\r\nexport const WidgetLiveCampaignConst: {\r\n\ttitle: string;\r\n\tarrow: string;\r\n\tvalue: number;\r\n\tdate: string;\r\n\ticon: string;\r\n\tdateclass: string;\r\n}[] = [\r\n\t{\r\n\t\ttitle: 'Total Campaigns',\r\n\t\tarrow: '../../../../assets/svg/icon-down-arrow.svg',\r\n\t\tvalue: 0,\r\n\t\tdate: '',\r\n\t\ticon: '../../../../assets/svg/icon-total-campaign.svg',\r\n\t\tdateclass: 'redpercent',\r\n\t},\r\n\t{\r\n\t\ttitle: 'Live Campaigns',\r\n\t\tarrow: '../../../../assets/svg/icon-down-arrow.svg',\r\n\t\tvalue: 0,\r\n\t\tdate: '',\r\n\t\ticon: '../../../../assets/svg/icon-use-campaign.svg',\r\n\t\tdateclass: 'redpercent',\r\n\t},\r\n\t{\r\n\t\ttitle: 'Pending Approval',\r\n\t\tarrow: '../../../../assets/svg/icon-down-arrow.svg',\r\n\t\tvalue: 0,\r\n\t\tdate: '',\r\n\t\ticon: '../../../../assets/svg/icon-pending-approval-campaign.svg',\r\n\t\tdateclass: 'redpercent',\r\n\t},\r\n];\r\n\r\nexport const CampaignPerformanceChartConfig = {\r\n\tlegend: {\r\n\t\ticon: 'circle',\r\n\t\torient: 'horizontal',\r\n\t\tx: 'center',\r\n\t\ty: 'bottom',\r\n\t},\r\n\ttooltip: {},\r\n\tdataset: {\r\n\t\tsource: [['', 'WA Text', 'WA Template', 'WA Media', 'Product Catalog']],\r\n\t},\r\n\txAxis: { type: 'category' },\r\n\tyAxis: {},\r\n\tseries: [\r\n\t\t{ type: 'bar', color: '#E666DA' },\r\n\t\t{ type: 'bar', color: '#EB7215' },\r\n\t\t{ type: 'bar', color: '#F3B435' },\r\n\t\t{ type: 'bar', color: '#35CDF3' },\r\n\t],\r\n};\r\n\r\nexport const ConversationInsightsChartConfig = {\r\n\ttooltip: {\r\n\t\ttrigger: 'axis',\r\n\t},\r\n\tlegend: {\r\n\t\ticon: 'circle',\r\n\t\tdata: [\r\n\t\t\t'Delivery Rate of Campaigns',\r\n\t\t\t'Total Number of Campaigns',\r\n\t\t\t'Cost Distribution',\r\n\t\t],\r\n\t\tx: 'center',\r\n\t\ty: 'bottom',\r\n\t},\r\n\txAxis: {\r\n\t\ttype: 'category',\r\n\t\tdata: [],\r\n\t},\r\n\tyAxis: {\r\n\t\ttype: 'value',\r\n\t},\r\n\tseries: [\r\n\t\t{\r\n\t\t\tname: 'Delivery Rate of Campaigns',\r\n\t\t\tdata: [],\r\n\t\t\ttype: 'line',\r\n\t\t\tsmooth: true,\r\n\t\t\titemStyle: { normal: { color: 'blue' } },\r\n\t\t},\r\n\t\t{\r\n\t\t\tname: 'Total Number of Campaigns',\r\n\t\t\tdata: [],\r\n\t\t\ttype: 'line',\r\n\t\t\tsmooth: true,\r\n\t\t\titemStyle: { normal: { color: 'green' } },\r\n\t\t},\r\n\t\t{\r\n\t\t\tname: 'Cost Distribution',\r\n\t\t\tdata: [],\r\n\t\t\ttype: 'line',\r\n\t\t\tsmooth: true,\r\n\t\t\titemStyle: { normal: { color: '#E666DA' } },\r\n\t\t},\r\n\t],\r\n};\r\n","import { environment } from '../../../environments/environment';\r\n\r\nconst packageServiceServicePath = '/package';\r\nconst countryServiceServicePath = '/appvalue/COUNTRY';\r\nconst editServicePath = \"/package/{id}\";\r\nconst rateCardServicePath = '/ratecard';\r\n\r\nexport const PackageServicePathConst = `${environment.api}${packageServiceServicePath}`;\r\nexport const CountryServicePathConst = `${environment.api}${countryServiceServicePath}`;\r\nexport const RateCardServicePathConst = `${environment.api}${rateCardServicePath}`;\r\nexport const EditServicePathConst = `${environment.api}${editServicePath}`;\r\n","import { WhatsAppAccountDto } from '../../campaign-management/models';\r\n\r\nexport let isLoadingOption: {\r\n\tWA: boolean;\r\n\tSMS: boolean;\r\n\tLINE: boolean;\r\n\tEMAIL: boolean;\r\n\tVOICE: boolean;\r\n} = {\r\n\tWA: false,\r\n\tSMS: false,\r\n\tLINE: false,\r\n\tEMAIL: false,\r\n\tVOICE: false,\r\n};\r\n\r\nexport let isHaveNextOption: {\r\n\tWA: boolean;\r\n\tSMS: boolean;\r\n\tLINE: boolean;\r\n\tEMAIL: boolean;\r\n\tVOICE: boolean;\r\n} = {\r\n\tWA: true,\r\n\tSMS: true,\r\n\tLINE: true,\r\n\tEMAIL: true,\r\n\tVOICE: true,\r\n};\r\n\r\nexport let pageNoOption: {\r\n\tWA: number;\r\n\tSMS: number;\r\n\tLINE: number;\r\n\tEMAIL: number;\r\n\tVOICE: number;\r\n} = {\r\n\tWA: 1,\r\n\tSMS: 1,\r\n\tLINE: 1,\r\n\tEMAIL: 1,\r\n\tVOICE: 1,\r\n};\r\n\r\nexport let optionList: {\r\n\tWA: WhatsAppAccountDto[];\r\n\tSMS: WhatsAppAccountDto[];\r\n\tLINE: WhatsAppAccountDto[];\r\n\tEMAIL: WhatsAppAccountDto[];\r\n\tVOICE: WhatsAppAccountDto[];\r\n} = {\r\n\tWA: [],\r\n\tSMS: [],\r\n\tLINE: [],\r\n\tEMAIL: [],\r\n\tVOICE: [],\r\n};\r\n","export const RateCardTableLabelConst = [\r\n\t'select',\r\n\t'Country ID',\r\n\t'Country Name',\r\n\t'Currency Code',\r\n\t'Excess Fee Conversation',\r\n\t'Excess Fee Notification',\r\n\t'Setup Fee',\r\n\t'Action',\r\n];\r\n\r\n\r\nexport const RateCardTableColumnConst = [\r\n\t'select',\r\n\t'countryCode',\r\n\t'countryName',\r\n\t'currencyCode',\r\n\t'ovrUsgConversationCost',\r\n\t'ovrUsgNotificationCost',\r\n\t'setupFee',\r\n\t'action',\r\n];\r\n","export const GeneralInformationMessageValidationConst = {\r\n campaignName: [\r\n { type: 'required', message: 'General Information is required' },\r\n { type: 'maxlength', message: 'Maximum character 100' },\r\n ],\r\n medium: [{ type: 'required', message: 'Channel is required' }],\r\n};\r\n\r\nexport const GeneralInformationWAMessageValidationConst = {\r\n channel: [{ type: 'required', message: 'Message Type is required' }],\r\n from: [{ type: 'required', message: 'From is required' }],\r\n text: [{ type: 'required', message: 'Text is required' }],\r\n media: [{ type: 'required', message: 'Media Type is required' }],\r\n fileName: [{ type: 'required', message: 'File is required' }],\r\n template: [{ type: 'required', message: 'Template is required' }],\r\n category: [{ type: 'required', message: 'Category is required' }],\r\n catalogue: [{ type: 'required', message: 'Catalog is required' }],\r\n product: [{ type: 'required', message: 'Product is required' }],\r\n body: [{ type: 'maxlength', message: 'Maximum character 100' }],\r\n};\r\n\r\nexport const GeneralInformationEmailMessageValidationConst = {\r\n channel: [{ type: 'required', message: 'Message Type is required' }],\r\n from: [{ type: 'required', message: 'From is required' }],\r\n text: [{ type: 'required', message: 'Text is required' }],\r\n template: [{ type: 'required', message: 'Template is required' }],\r\n};\r\n\r\nexport const GeneralInformationSMSMessageValidationConst = {\r\n channel: [{ type: 'required', message: 'Message Type is required' }],\r\n from: [{ type: 'required', message: 'From is required' }],\r\n text: [{ type: 'required', message: 'Text is required' }],\r\n template: [{ type: 'required', message: 'Template is required' }],\r\n};\r\n\r\nexport const GeneralInformationLineMessageValidationConst = {\r\n channel: [{ type: 'required', message: 'Message Type is required' }],\r\n from: [{ type: 'required', message: 'From is required' }],\r\n text: [{ type: 'required', message: 'Text is required' }],\r\n template: [{ type: 'required', message: 'Template is required' }],\r\n};\r\n\r\nexport const FailoverMechanismValidationConst = {\r\n interval: [\r\n { type: 'required', message: 'Interval Time is required' },\r\n {\r\n type: 'intervalTime',\r\n message: 'Must be greater than 0 and without decimal',\r\n },\r\n ],\r\n type: [{ type: 'required', message: 'Main Rules is required' }],\r\n accountId: [{ type: 'required', message: 'Account is required' }],\r\n subject: [{ type: 'required', message: 'Subject is required' }],\r\n message: [{ type: 'required', message: 'Message is required' }],\r\n templateName: [{ type: 'required', message: 'Template is required' }],\r\n};\r\n\r\nexport const SchedulerMessageValidationConst = {\r\n startDate: [{ type: 'required', message: 'Select Date is required' }],\r\n startTime: [{ type: 'required', message: 'Select Time is required' }],\r\n};\r\n","export enum PastTimeEnum {\r\n\tToday = 'today',\r\n\tYesterday = 'yesterday',\r\n\tCurrentWeek = 'currentWeek',\r\n\tLastWeek = 'last week',\r\n\tCurrentMonth = 'currentMonth',\r\n\tLastMonth = 'last month',\r\n}\r\n\r\nexport enum StatusCampaignEnum {\r\n\tDraft = 'DRAFT',\r\n\tWaitingApproval = 'APPROVAL',\r\n\tRejected = 'REJECTED',\r\n\tScheduled = 'SCHEDULED',\r\n\tStopped = 'STOPPED',\r\n\tDeleted = 'DELETED',\r\n\tCompleted = 'COMPLETED',\r\n\tFailed = 'FAILED',\r\n\tPaused = 'PAUSED',\r\n\tProcessing = 'PROCESS',\r\n}\r\n\r\nexport enum ProductCategoryEnum {\r\n\tSingleProduct = 'product',\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { MatPaginatorIntl } from '@angular/material/paginator';\r\n\r\n@Injectable()\r\nexport class CustomPaginator extends MatPaginatorIntl {\r\n\titemsPerPageLabel = 'Listing per Page';\r\n\r\n\tgetRangeLabel = function (page, pageSize, length) {\r\n\t\tif (length === 0 || pageSize === 0) {\r\n\t\t\treturn 'Show 0';\r\n\t\t}\r\n\r\n\t\tlength = Math.max(length, 0);\r\n\r\n\t\tconst startIndex = page * pageSize;\r\n\t\tconst endIndex =\r\n\t\t\tstartIndex < length\r\n\t\t\t\t? Math.min(startIndex + pageSize, length)\r\n\t\t\t\t: startIndex + pageSize;\r\n\t\tconst sumStartIndex = startIndex + 1;\r\n\r\n\t\treturn 'Show ' + sumStartIndex + ' - ' + endIndex;\r\n\t};\r\n}\r\n","export const downloadBlobFile = (blob: any, name: string = 'file.csv'): any => {\r\n\tconst blobUrl = URL.createObjectURL(blob);\r\n\r\n\tconst link = document.createElement('a');\r\n\r\n\tlink.href = blobUrl;\r\n\tlink.download = name;\r\n\r\n\tdocument.body.appendChild(link);\r\n\r\n\tlink.dispatchEvent(\r\n\t\tnew MouseEvent('click', {\r\n\t\t\tbubbles: true,\r\n\t\t\tcancelable: true,\r\n\t\t\tview: window,\r\n\t\t})\r\n\t);\r\n\r\n\tdocument.body.removeChild(link);\r\n};\r\n","import { BaseOptionModel } from '../models';\r\n\r\nexport const generateEnumOption = (enumObject: Object): BaseOptionModel[] => {\r\n\tif (!enumObject) {\r\n\t\treturn [];\r\n\t}\r\n\r\n\treturn Object.keys(enumObject).reduce((result, each) => {\r\n\t\tif (isNaN(Number(each))) {\r\n\t\t\tconst inputOption = new BaseOptionModel();\r\n\t\t\tconst label = each\r\n\t\t\t\t.replace(/([A-Z])/g, ' $1')\r\n\t\t\t\t.replace(/([0-9])/g, ' $1');\r\n\r\n\t\t\tinputOption.label = label;\r\n\r\n\t\t\tif (isNaN(Number(enumObject[each]))) {\r\n\t\t\t\tinputOption.value = enumObject[each];\r\n\t\t\t} else {\r\n\t\t\t\tinputOption.value = Number(enumObject[each]);\r\n\t\t\t}\r\n\r\n\t\t\tresult.push(inputOption);\r\n\t\t}\r\n\r\n\t\treturn result;\r\n\t}, []);\r\n};\r\n","import { HttpParams } from '@angular/common/http';\r\n\r\nexport const generateHttpParams =\r\n\t(params: Object): HttpParams => {\r\n\t\tlet httpParams = new HttpParams();\r\n\r\n\t\tif (params) {\r\n\t\t\tObject.keys(params).forEach((key) => {\r\n\t\t\t\tif (params[key] !== null\r\n\t\t\t\t\t&& params[key] !== undefined\r\n\t\t\t\t\t&& params[key] !== '') {\r\n\r\n\t\t\t\t\thttpParams = httpParams.set(key, params[key]);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\treturn httpParams;\r\n\t};\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInjectable,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { FormControl, FormGroup } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport { PlatformOptionConst } from '../../../../../core/const';\r\nimport { StatusCampaignEnum } from '../../../../../core/enums';\r\nimport { BaseOptionModel } from '../../../../../core/models';\r\nimport { Parameter } from '../../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { generateEnumOption } from '../../../../../core/util';\r\nimport { TemplateWAModel } from '../../../../models';\r\nimport { ClientDto } from '../../models';\r\n\r\n@Component({\r\n\tselector: 'lib-filter-in-list-of-campaign',\r\n\ttemplateUrl: './filter-in-list-of-campaign.component.html',\r\n\tstyleUrls: ['./filter-in-list-of-campaign.component.scss'],\r\n})\r\n@Injectable({\r\n\tprovidedIn: 'root',\r\n})\r\nexport class FilterInListOfCampaignComponent implements OnInit, OnDestroy {\r\n\t@Output()\r\n\tpublic onChangeFilter: EventEmitter<string>;\r\n\r\n\t@Output()\r\n\tpublic closeDropdown: EventEmitter<void>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic channelOption: any[] = PlatformOptionConst;\r\n\tpublic businessNameOption: ClientDto[] = [];\r\n\tpublic statusOption: BaseOptionModel[] = [];\r\n\tpublic templateOption: TemplateWAModel[] = [];\r\n\tpublic isHaveNextTemplateOption: boolean = true;\r\n\tpublic isLoadingTemplateOption: boolean = false;\r\n\r\n\tprivate pageNoTemplateOption: number = 1;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Input()\r\n\tpublic filterValue: any;\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {\r\n\t\tthis.closeDropdown = new EventEmitter();\r\n\t\tthis.onChangeFilter = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.statusOption = generateEnumOption(StatusCampaignEnum);\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.getBusinessNameOptionService();\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tbusinessName: new FormControl(this.filterValue?.businessName ?? ''),\r\n\t\t\tmedium: new FormControl(this.filterValue?.medium ?? ''),\r\n\t\t\ttemplateName: new FormControl(this.filterValue?.templateName ?? ''),\r\n\t\t\tstatus: new FormControl(this.filterValue?.status ?? ''),\r\n\t\t\tstartDate: new FormControl(this.filterValue?.startDate ?? ''),\r\n\t\t\tendDate: new FormControl(this.filterValue?.endDate ?? ''),\r\n\t\t});\r\n\r\n\t\tif (this.filterValue?.templateName)\r\n\t\t\tthis.templateOption = [\r\n\t\t\t\t...this.templateOption,\r\n\t\t\t\tthis.filterValue?.templateName,\r\n\t\t\t];\r\n\t}\r\n\r\n\tpublic getBusinessNameOptionService(): void {\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\t[],\r\n\t\t\t\t'/admin/client/all-with-child?pageNo=1&rowPerPage=1000',\r\n\t\t\t\t'GET'\r\n\t\t\t)\r\n\t\t\t.subscribe((res: AppResponse<ClientDto[]>) => {\r\n\t\t\t\tthis.businessNameOption = res.data;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getTemplateOptionService(\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingTemplateOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoTemplateOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', this.form.get('medium').value, 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t\tthis.initParam('status', 'APPROVED', 'string'),\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/message/template', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\t\t\t\tthis.templateOption = isInfinite\r\n\t\t\t\t\t? [...this.templateOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextTemplateOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingTemplateOption = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tpublic getNextTemplateBatch() {\r\n\t\tif (!this.isHaveNextTemplateOption) return;\r\n\r\n\t\tthis.pageNoTemplateOption += 1;\r\n\t\tthis.getTemplateOptionService('', true);\r\n\t}\r\n\r\n\tpublic templateSelectedDisplay(\r\n\t\tattribute1: TemplateWAModel,\r\n\t\tattribute2: TemplateWAModel\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.name == attribute2.name\r\n\t\t\t? `${attribute1.name}`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic templateSearch(searchValue: string): void {\r\n\t\tthis.pageNoTemplateOption = 1;\r\n\t\tthis.getTemplateOptionService(searchValue);\r\n\t}\r\n\r\n\tpublic clearDate(): void {\r\n\t\tthis.form.get('startDate').setValue(null);\r\n\t\tthis.form.get('endDate').setValue(null);\r\n\t}\r\n\r\n\tpublic validateBackDate(): void {\r\n\t\tif (new Date(this.form.get('startDate').value).getTime() > new Date(this.form.get('endDate').value).getTime())\r\n\t\t\tthis.form.get('endDate').setValue('');\r\n\t}\r\n\r\n\tpublic onReset(): void {\r\n\t\tthis.form.reset();\r\n\t\tthis.onChangeFilter.emit(this.form.getRawValue());\r\n\t}\r\n\r\n\tpublic onCancel(): void {\r\n\t\tthis.closeDropdown.emit();\r\n\t}\r\n\r\n\tpublic onApply(): void {\r\n\t\tthis.onChangeFilter.emit(this.form.getRawValue());\r\n\t\tthis.closeDropdown.emit();\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SharedServicesService {\r\n\r\n private subject = new Subject<any>();\r\n\r\n sendClickEvent(){\r\n this.subject.next();\r\n }\r\n\r\n getEvent(): Observable<any>{\r\n return this.subject.asObservable();\r\n }\r\n\r\n constructor() { }\r\n}\r\n","export class ConfirmationModel {\r\n public title: string;\r\n public content: string;\r\n public btnSubmit: string;\r\n public btnSubmitRed: string;\r\n public btnCancel: string;\r\n}\r\n","import { Component, Inject } from '@angular/core';\r\nimport { MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { SharedServicesService } from '../../../global/confirmation/shared/shared-services.service';\r\nimport { ConfirmationModel } from '../shared/model';\r\n\r\n@Component({\r\n\tselector: 'app-confirmation',\r\n\ttemplateUrl: './confirmation.component.html',\r\n\tstyleUrls: ['./confirmation.component.scss'],\r\n})\r\nexport class ConfirmationComponent {\r\n\tconstructor(\r\n\t\t@Inject(MAT_DIALOG_DATA)\r\n\t\tpublic data: ConfirmationModel,\r\n\t\tprivate sharedService: SharedServicesService\r\n\t) {}\r\n\r\n\tdeleteRowOn() {\r\n\t\tthis.sharedService.sendClickEvent();\r\n\t}\r\n}\r\n","import { Component, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\n\r\n@Component({\r\n\tselector: 'lib-pending-approval-dialog-view',\r\n\ttemplateUrl: './pending-approval-dialog-view.component.html',\r\n\tstyleUrls: ['./pending-approval-dialog-view.component.scss'],\r\n})\r\nexport class PendingApprovalDialogViewComponent implements OnInit, OnDestroy {\r\n\tpublic isLoading: boolean = false;\r\n\tpublic isSubmit: boolean = false;\r\n\tpublic isShowButton: boolean = false;\r\n\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\tconstructor(\r\n\t\tprivate dialogRef: MatDialogRef<PendingApprovalDialogViewComponent>,\r\n\t\tprivate apiAdapterService: ApiAdapterServiceService,\r\n\t\tprivate toastr: ToastrService\r\n\t) {}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.getCampaignDetailService();\r\n\r\n\t\tthis.isShowButton =\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.isShowButton ?? false;\r\n\t}\r\n\r\n\tget getCampaignStorage(): any {\r\n\t\treturn localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\t}\r\n\r\n\tprivate convertUTCDateToLocalDate(date: Date) {\r\n\t\tconst newDate = new Date(\r\n\t\t\tdate.getTime() - date.getTimezoneOffset() * 60 * 1000\r\n\t\t);\r\n\t\treturn newDate;\r\n\t}\r\n\r\n\tprivate getCampaignDetailService(): void {\r\n\t\tif (!this.getCampaignStorage?.generalInformation?.id) return;\r\n\r\n\t\tthis.isLoading = true;\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\t[],\r\n\t\t\t\t`/campaign/${this.getCampaignStorage?.generalInformation?.id}`,\r\n\t\t\t\t'GET'\r\n\t\t\t)\r\n\t\t\t.subscribe(\r\n\t\t\t\t(resp: AppResponse<any>) => {\r\n\t\t\t\t\tif (!resp) return;\r\n\r\n\t\t\t\t\tconst generalInformation = {\r\n\t\t\t\t\t\tcampaignName: resp.data?.name,\r\n\t\t\t\t\t\tmedium: resp.data?.platform,\r\n\t\t\t\t\t\tchannel: ['image', 'video', 'document'].includes(\r\n\t\t\t\t\t\t\tresp.data?.type\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t? 'MEDIA'\r\n\t\t\t\t\t\t\t: resp.data?.type?.toUpperCase(),\r\n\t\t\t\t\t\tmedia: resp.data?.type?.toUpperCase(),\r\n\t\t\t\t\t\tfrom: {\r\n\t\t\t\t\t\t\tid: resp.data?.accountId,\r\n\t\t\t\t\t\t\tname: resp.data?.accountName,\r\n\t\t\t\t\t\t\tplatform: resp.data?.platform,\r\n\t\t\t\t\t\t\tclientId: resp.data?.clientId,\r\n\t\t\t\t\t\t\tclientName: resp.data?.clientName,\r\n\t\t\t\t\t\t\taccountNo: resp.data?.accountNo,\r\n\t\t\t\t\t\t\twabaId: resp.data?.wabaId ?? '',\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\ttext: resp.data?.details?.text,\r\n\t\t\t\t\t\ttargetURL:\r\n\t\t\t\t\t\t\tresp.data?.details?.image?.url ??\r\n\t\t\t\t\t\t\tresp.data?.details?.document?.url ??\r\n\t\t\t\t\t\t\tresp.data?.details?.video?.url ??\r\n\t\t\t\t\t\t\tresp.data?.details?.template?.headerURL,\r\n\t\t\t\t\t\tparamHeader: resp.data?.details?.template?.header,\r\n\t\t\t\t\t\tparamBody: resp.data?.details?.template?.data,\r\n\t\t\t\t\t\tparamButton: resp.data?.details?.template?.button,\r\n\t\t\t\t\t\totpValue: [\r\n\t\t\t\t\t\t\t...(resp.data?.details?.template?.data ?? []),\r\n\t\t\t\t\t\t]?.pop(),\r\n\t\t\t\t\t\ttemplate: {\r\n\t\t\t\t\t\t\tID: resp.data?.details?.template?.id,\r\n\t\t\t\t\t\t\tname: resp.data?.details?.template?.name,\r\n\t\t\t\t\t\t\tlang: resp.data?.details?.template?.lang,\r\n\t\t\t\t\t\t\tplatform: resp.data?.platform,\r\n\t\t\t\t\t\t\theaderURL: resp.data?.details?.template?.headerURL,\r\n\t\t\t\t\t\t\theader: {\r\n\t\t\t\t\t\t\t\texamples: resp.data?.details?.template?.header,\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tbody: {\r\n\t\t\t\t\t\t\t\texamples: resp.data?.details?.template?.data,\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\tbuttons: resp.data?.details?.template?.button,\r\n\t\t\t\t\t\t\tClientId: resp.data?.clientId,\r\n\t\t\t\t\t\t\tClientName: resp.data?.clientName,\r\n\t\t\t\t\t\t},\r\n\t\t\t\t\t\tisUpload: resp.data?.fileId !== '',\r\n\t\t\t\t\t\tfileId: resp.data?.fileId,\r\n\t\t\t\t\t};\r\n\r\n\t\t\t\t\tlocalStorage.setItem(\r\n\t\t\t\t\t\t'telin.campaign',\r\n\t\t\t\t\t\tJSON.stringify({\r\n\t\t\t\t\t\t\t...this.getCampaignStorage,\r\n\t\t\t\t\t\t\t...{\r\n\t\t\t\t\t\t\t\tgeneralInformation: {\r\n\t\t\t\t\t\t\t\t\tid: resp.data?.id,\r\n\t\t\t\t\t\t\t\t\tform: generalInformation,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\tfailover: resp.data?.failover,\r\n\t\t\t\t\t\t\t\ttargetAudience: resp.data?.targets,\r\n\t\t\t\t\t\t\t\ttargetAudienceFile: {\r\n\t\t\t\t\t\t\t\t\tname: resp.data?.fileName,\r\n\t\t\t\t\t\t\t\t\ttargetURL: resp.data?.targetURL,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\tscheduler: {\r\n\t\t\t\t\t\t\t\t\tschedulerType:\r\n\t\t\t\t\t\t\t\t\t\tresp.data?.scheduleType === 'MULTI'\r\n\t\t\t\t\t\t\t\t\t\t\t? 'ONE_TIME'\r\n\t\t\t\t\t\t\t\t\t\t\t: resp.data?.scheduleType,\r\n\t\t\t\t\t\t\t\t\tstartDate:\r\n\t\t\t\t\t\t\t\t\t\tresp.data?.startTime?.split(' ')[0],\r\n\t\t\t\t\t\t\t\t\tstartTime:\r\n\t\t\t\t\t\t\t\t\t\tresp.data?.startTime?.split(' ')[1],\r\n\t\t\t\t\t\t\t\t\tisRepeat:\r\n\t\t\t\t\t\t\t\t\t\tresp.data?.scheduleType === 'MULTI',\r\n\t\t\t\t\t\t\t\t\tdelivery: resp.data?.repeat,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t);\r\n\r\n\t\t\t\t\tthis.isLoading = false;\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.isLoading = false;\r\n\t\t\t\t}\r\n\t\t\t);\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic rejectCampaignService(): void {\r\n\t\tthis.isSubmit = true;\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\t[],\r\n\t\t\t\t`/campaign/${this.getCampaignStorage?.generalInformation?.id}/reject`,\r\n\t\t\t\t'POST'\r\n\t\t\t)\r\n\t\t\t.subscribe(\r\n\t\t\t\t(resp: AppResponse<any>) => {\r\n\t\t\t\t\tthis.isSubmit = false;\r\n\r\n\t\t\t\t\tif (!resp || !resp?.data)\r\n\t\t\t\t\t\treturn this.toastr.error('Error Rejecting Campaign!');\r\n\r\n\t\t\t\t\tthis.toastr.success('Campaign Rejected Successfully!');\r\n\t\t\t\t\tthis.onClose();\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.toastr.error('Error Rejecting Campaign!');\r\n\t\t\t\t\tthis.isSubmit = false;\r\n\t\t\t\t}\r\n\t\t\t);\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic approveCampaignService(): void {\r\n\t\tthis.isSubmit = true;\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\t[],\r\n\t\t\t\t`/campaign/${this.getCampaignStorage?.generalInformation?.id}/approve`,\r\n\t\t\t\t'POST'\r\n\t\t\t)\r\n\t\t\t.subscribe(\r\n\t\t\t\t(resp: AppResponse<any>) => {\r\n\t\t\t\t\tthis.isSubmit = false;\r\n\r\n\t\t\t\t\tif (!resp || !resp?.data)\r\n\t\t\t\t\t\treturn this.toastr.error('Error Approving Campaign!');\r\n\r\n\t\t\t\t\tthis.toastr.success('Campaign Approved Successfully!');\r\n\t\t\t\t\tthis.onClose();\r\n\t\t\t\t},\r\n\t\t\t\t() => {\r\n\t\t\t\t\tthis.toastr.error('Error Approving Campaign!');\r\n\t\t\t\t\tthis.isSubmit = false;\r\n\t\t\t\t}\r\n\t\t\t);\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic onClose(): void {\r\n\t\tlocalStorage.removeItem('telin.campaign');\r\n\t\tthis.dialogRef.close();\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n\tViewChild,\r\n} from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\nimport { MainArea } from '../../../../../core/enums';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { ConfirmationComponent } from '../../../../../global/confirmation/confirmation';\r\nimport { ConfirmationModel } from '../../../../../global/confirmation/shared/model';\r\nimport { PendingApprovalDialogViewComponent } from '../../dialog/pending-approval-dialog-view';\r\nimport { CampaignsListModel, TableModel } from '../../models';\r\nimport { CampaignResponseDtoApi } from '../../models/campaign-response-dto.model';\r\n\r\n@Component({\r\n\tselector: 'lib-viewing-list-of-campaign-table',\r\n\ttemplateUrl: './viewing-list-of-campaign-table.component.html',\r\n\tstyleUrls: ['./viewing-list-of-campaign-table.component.scss'],\r\n})\r\nexport class ViewingListOfCampaignTableComponent implements OnInit, OnDestroy {\r\n\t@Output() currentView = new EventEmitter<MainArea>();\r\n\r\n\t@Output() updateTable = new EventEmitter<void>();\r\n\r\n\tprivate currentViews = MainArea;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Input() public table: TableModel;\r\n\r\n\t@ViewChild(MatSort, { static: false }) public matSort: MatSort;\r\n\r\n\tconstructor(\r\n\t\tprivate dialog: MatDialog,\r\n\t\tprivate apiAdapterService: ApiAdapterServiceService,\r\n\t\tprivate toastr: ToastrService\r\n\t) {}\r\n\r\n\tngOnInit(): void {}\r\n\r\n\tpublic sort(): void {\r\n\t\tthis.table.dataSource.sort = this.matSort;\r\n\t}\r\n\r\n\tpublic actionRow(row: CampaignsListModel, action: string): void {\r\n\t\tswitch (action) {\r\n\t\t\tcase 'pause':\r\n\t\t\t\tthis.campaignConfirmationDialog(row.id, {\r\n\t\t\t\t\ttitle: 'Pause Campaign',\r\n\t\t\t\t\tcontent: 'Are you sure you want to Pause this Campaign?',\r\n\t\t\t\t\turl: `/campaign/${row.id}/pause`,\r\n\t\t\t\t\tmethod: 'POST',\r\n\t\t\t\t\tmessage: 'Selected campaign is successfully paused',\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'stop':\r\n\t\t\t\tthis.campaignConfirmationDialog(row.id, {\r\n\t\t\t\t\ttitle: 'Stop Campaign',\r\n\t\t\t\t\tcontent: 'Are you sure you want to Stop this Campaign?',\r\n\t\t\t\t\turl: `/campaign/${row.id}/stop`,\r\n\t\t\t\t\tmethod: 'POST',\r\n\t\t\t\t\tmessage: 'Selected campaign is successfully stop',\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'delete':\r\n\t\t\t\tif (row.status !== 'COMPLETED') {\r\n\t\t\t\t\tthis.campaignConfirmationDialog(row.id, {\r\n\t\t\t\t\t\ttitle: 'Delete Campaign',\r\n\t\t\t\t\t\tcontent:\r\n\t\t\t\t\t\t\t'Are you sure you want to Delete this Campaign?',\r\n\t\t\t\t\t\turl: `/campaign/${row.id}/delete`,\r\n\t\t\t\t\t\tmethod: 'DELETE',\r\n\t\t\t\t\t\tmessage: 'Selected campaign is successfully deleted',\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t\tbreak;\r\n\t\t\tcase 'live':\r\n\t\t\t\tthis.campaignConfirmationDialog(row.id, {\r\n\t\t\t\t\ttitle: 'Resume Campaign',\r\n\t\t\t\t\tcontent: 'Are you sure you want to Resume this Campaign?',\r\n\t\t\t\t\turl: `/campaign/${row.id}/resume`,\r\n\t\t\t\t\tmethod: 'POST',\r\n\t\t\t\t\tmessage: 'Selected campaign is successfully resume',\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tdefault:\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\tprivate campaignConfirmationDialog(\r\n\t\tid: string,\r\n\t\tdata: {\r\n\t\t\ttitle: string;\r\n\t\t\tcontent: string;\r\n\t\t\turl: string;\r\n\t\t\tmethod: string;\r\n\t\t\tmessage: string;\r\n\t\t}\r\n\t): void {\r\n\t\tconst confirmation = new ConfirmationModel();\r\n\t\tconfirmation.title = data.title;\r\n\t\tconfirmation.content = data.content;\r\n\t\tconfirmation.btnSubmit = 'Yes';\r\n\t\tconfirmation.btnCancel = 'No';\r\n\r\n\t\tconst subs = this.dialog\r\n\t\t\t.open(ConfirmationComponent, {\r\n\t\t\t\tautoFocus: false,\r\n\t\t\t\tbackdropClass: 'overlay-backdrop-dialog',\r\n\t\t\t\tdata: confirmation,\r\n\t\t\t})\r\n\t\t\t.afterClosed()\r\n\t\t\t.subscribe(resp => {\r\n\t\t\t\tif (!resp) return;\r\n\r\n\t\t\t\tthis.campaignService(data);\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate campaignService(data: {\r\n\t\turl: string;\r\n\t\tmethod: string;\r\n\t\tmessage: string;\r\n\t}): void {\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest([], data.url, data.method)\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis.toastr.error(data.message);\r\n\t\t\t\tthis.updateTable.emit();\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\teditCampaign(row: CampaignsListModel): void {\r\n\t\tlocalStorage.removeItem('telin.campaign');\r\n\t\twindow.history.replaceState({}, '', `/secure/campaign/${row.id}`);\r\n\t\tthis.currentView.emit(this.currentViews.NewCampaign);\r\n\t}\r\n\r\n\tpublic openViewDialog(\r\n\t\trow: CampaignResponseDtoApi,\r\n\t\tisShowButton: boolean = false\r\n\t): void {\r\n\t\tlocalStorage.setItem(\r\n\t\t\t'telin.campaign',\r\n\t\t\tJSON.stringify({\r\n\t\t\t\tgeneralInformation: {\r\n\t\t\t\t\tid: row?.id,\r\n\t\t\t\t\tisShowButton: isShowButton,\r\n\t\t\t\t},\r\n\t\t\t})\r\n\t\t);\r\n\r\n\t\tconst subs = this.dialog\r\n\t\t\t.open(PendingApprovalDialogViewComponent, {\r\n\t\t\t\tautoFocus: false,\r\n\t\t\t\theight: 'calc(100% - 30px)',\r\n\t\t\t\twidth: 'calc(100% - 30px)',\r\n\t\t\t\tmaxWidth: '100%',\r\n\t\t\t\tmaxHeight: '100%',\r\n\t\t\t\tbackdropClass: 'overlay-backdrop-dialog',\r\n\t\t\t})\r\n\t\t\t.afterClosed()\r\n\t\t\t.subscribe(() => {\r\n\t\t\t\tthis.updateTable.emit();\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate convertUTCDateToLocalDate(date: Date) {\r\n\t\tconst newDate = new Date(\r\n\t\t\tdate.getTime() - date.getTimezoneOffset() * 60 * 1000\r\n\t\t);\r\n\t\treturn newDate;\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatToolbarModule } from '@angular/material/toolbar';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport {\r\n\tNgbDropdownModule,\r\n\tNgbPaginationModule,\r\n} from '@ng-bootstrap/ng-bootstrap';\r\nimport { MatSelectInfiniteScrollDirective } from '../../../core/directives';\r\nimport { SearchModule } from '../../../global/search/search.module';\r\nimport { CampaignIndexComponent } from './campaign-index.component';\r\nimport { FilterInListOfCampaignComponent } from './component/filter-in-list-of-campaign';\r\nimport { ViewingListOfCampaignTableComponent } from './component/viewing-list-of-campaign-table';\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tViewingListOfCampaignTableComponent,\r\n\t\tFilterInListOfCampaignComponent,\r\n\t\tCampaignIndexComponent,\r\n\t\tMatSelectInfiniteScrollDirective,\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatInputModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatTableModule,\r\n\t\tMatSortModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatDialogModule,\r\n\t\tMatTabsModule,\r\n\t\tMatCardModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatSelectModule,\r\n\t\tMatRadioModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tMatChipsModule,\r\n\t\tNgbPaginationModule,\r\n\t\tNgbDropdownModule,\r\n\t\tMatChipsModule,\r\n\t\tMatGridListModule,\r\n\t\tMatNativeDateModule,\r\n\t\tSearchModule,\r\n\t\tMatToolbarModule,\r\n\t\tMatTooltipModule,\r\n\t],\r\n\texports: [CampaignIndexComponent, MatSelectInfiniteScrollDirective],\r\n})\r\nexport class CampaignIndexModule {}\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { EChartsOption } from 'echarts';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n\tCampaignPerformanceChartConfig,\r\n\tConversationInsightsChartConfig,\r\n\tPlatformOptionConst,\r\n\tWidgetLiveCampaignConst,\r\n} from '../../../core/const';\r\nimport { PastTimeEnum } from '../../../core/enums';\r\nimport { MainArea } from '../../../core/enums/main-area.enum';\r\nimport { Parameter } from '../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../core/models/util/api-dto/response-models/app-response';\r\nimport { AppResponseAdl } from '../../../core/models/util/api-dto/response-models/app-response-adl';\r\nimport { ApiAdapterServiceService } from '../../../core/services';\r\nimport { CampaignCountFinalResponseDtoExternal } from '../../models/campaign-count-final-response-dto.model';\r\nimport { ConversationChartResponseDto } from '../campaign-index/models/conversation-chart-response-dto.model';\r\nimport { PerformanceChartResponseDto } from '../campaign-index/models/performance-chart-response-dto.model';\r\n\r\n@Component({\r\n\tselector: 'lib-dashboard',\r\n\ttemplateUrl: './dashboard.component.html',\r\n\tstyleUrls: ['./dashboard.component.scss'],\r\n})\r\nexport class DashboardComponent implements OnInit, OnDestroy {\r\n\tpublic currentViews = MainArea;\r\n\tpublic pastTime = PastTimeEnum;\r\n\r\n\tpublic channelOption: any[] = PlatformOptionConst;\r\n\tpublic performanceCategories: string[] = [];\r\n\tpublic totalCmpn: number[] = [];\r\n\tpublic deliveryRt: number[] = [];\r\n\tpublic costDesc: number[] = [];\r\n\tpublic convsData: any[][] = [];\r\n\r\n\tpublic widgetLiveCampaign = WidgetLiveCampaignConst;\r\n\tpublic conversationChartData: EChartsOption;\r\n\tpublic performanceChartData: EChartsOption;\r\n\tpublic selectedPlatform: any = '';\r\n\tpublic filterEvent: any = 'currentWeek';\r\n\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Output() currentView = new EventEmitter<MainArea>();\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {}\r\n\r\n\tngOnInit(): void {}\r\n\r\n\tpublic changeCurrentView(area: MainArea) {\r\n\t\tthis.currentView.emit(area);\r\n\t}\r\n\r\n\tpublic filterChart(event: string) {\r\n\t\tif (!this.selectedPlatform) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst timeUnit =\r\n\t\t\tevent == PastTimeEnum.Today\r\n\t\t\t\t? 'daily'\r\n\t\t\t\t: event == PastTimeEnum.CurrentWeek\r\n\t\t\t\t? 'weekly'\r\n\t\t\t\t: event == PastTimeEnum.CurrentMonth\r\n\t\t\t\t? 'monthly'\r\n\t\t\t\t: '';\r\n\r\n\t\t/* const parameterList: Array<Parameter> = [\r\n\t\t\t{\r\n\t\t\t\tname: 'timeUnit',\r\n\t\t\t\tvalue: timeUnit,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'clientId',\r\n\t\t\t\tvalue: localStorage.getItem('telin.clientId'),\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'platform',\r\n\t\t\t\tvalue: this.selectedPlatform,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t]; */\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest([], '/campaign/count', 'GET')\r\n\t\t\t.subscribe(\r\n\t\t\t\t(res: AppResponse<CampaignCountFinalResponseDtoExternal>) => {\r\n\t\t\t\t\tconst date =\r\n\t\t\t\t\t\t(res?.data?.totalCampaignPercent ?? 0) +\r\n\t\t\t\t\t\t'% Since ' +\r\n\t\t\t\t\t\tthis.getStatictsWidgetString(event);\r\n\r\n\t\t\t\t\tthis.widgetLiveCampaign[0].arrow =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? '../../../../assets/svg/icon-up-arrow.svg'\r\n\t\t\t\t\t\t\t: '../../../../assets/svg/icon-down-arrow.svg';\r\n\t\t\t\t\tthis.widgetLiveCampaign[0].value =\r\n\t\t\t\t\t\tres?.data?.totalCampaign ?? 0;\r\n\t\t\t\t\tthis.widgetLiveCampaign[0].date = date;\r\n\t\t\t\t\tthis.widgetLiveCampaign[0].dateclass =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? 'greenpercent'\r\n\t\t\t\t\t\t\t: 'redpercent';\r\n\r\n\t\t\t\t\tthis.widgetLiveCampaign[1].arrow =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? '../../../../assets/svg/icon-up-arrow.svg'\r\n\t\t\t\t\t\t\t: '../../../../assets/svg/icon-down-arrow.svg';\r\n\t\t\t\t\tthis.widgetLiveCampaign[1].value =\r\n\t\t\t\t\t\tres?.data?.totalLive ?? 0;\r\n\t\t\t\t\tthis.widgetLiveCampaign[1].date = date;\r\n\t\t\t\t\tthis.widgetLiveCampaign[1].dateclass =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? 'greenpercent'\r\n\t\t\t\t\t\t\t: 'redpercent';\r\n\r\n\t\t\t\t\tthis.widgetLiveCampaign[2].arrow =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? '../../../../assets/svg/icon-up-arrow.svg'\r\n\t\t\t\t\t\t\t: '../../../../assets/svg/icon-down-arrow.svg';\r\n\t\t\t\t\tthis.widgetLiveCampaign[2].value =\r\n\t\t\t\t\t\tres?.data?.totalPending ?? 0;\r\n\t\t\t\t\tthis.widgetLiveCampaign[2].date = date;\r\n\t\t\t\t\tthis.widgetLiveCampaign[2].dateclass =\r\n\t\t\t\t\t\tres?.data?.totalCampaignPercent > 0\r\n\t\t\t\t\t\t\t? 'greenpercent'\r\n\t\t\t\t\t\t\t: 'redpercent';\r\n\t\t\t\t}\r\n\t\t\t);\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\r\n\t\tthis.getPerformanceDetails(timeUnit);\r\n\t\tthis.getConversationDetails(timeUnit);\r\n\t}\r\n\r\n\tprivate getPerformanceDetails(timeUnit: string) {\r\n\t\tif (!this.selectedPlatform) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.setPerformanceChartData();\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\t{\r\n\t\t\t\tname: 'timeUnit',\r\n\t\t\t\tvalue: timeUnit,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'clientId',\r\n\t\t\t\tvalue: localStorage.getItem('telin.clientId'),\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'platform',\r\n\t\t\t\tvalue:\r\n\t\t\t\t\tthis.selectedPlatform === 'WHATSAPP'\r\n\t\t\t\t\t\t? 'WA'\r\n\t\t\t\t\t\t: this.selectedPlatform,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\tparameterList,\r\n\t\t\t\t'/report/campaign/performance',\r\n\t\t\t\t'GET'\r\n\t\t\t)\r\n\t\t\t.subscribe((res: AppResponseAdl<PerformanceChartResponseDto>) => {\r\n\t\t\t\tthis.performanceCategories = [];\r\n\t\t\t\tthis.totalCmpn = [];\r\n\t\t\t\tthis.deliveryRt = [];\r\n\t\t\t\tthis.costDesc = [];\r\n\r\n\t\t\t\tif (res?.data && Object.entries(res.data).length !== 0) {\r\n\t\t\t\t\tfor (let item of res.data.categories) {\r\n\t\t\t\t\t\tthis.performanceCategories.push(item);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tfor (let series of res.data.series) {\r\n\t\t\t\t\t\tif (series.name === 'Total Campaign') {\r\n\t\t\t\t\t\t\tthis.totalCmpn = series.data?.map(value => value);\r\n\t\t\t\t\t\t} else if (series.name === 'Delivery Rate') {\r\n\t\t\t\t\t\t\tthis.deliveryRt = series.data?.map(value => value);\r\n\t\t\t\t\t\t} else if (series.name === 'Cost Distribution') {\r\n\t\t\t\t\t\t\tthis.costDesc = series.data?.map(value => value);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.setPerformanceChartData();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate setPerformanceChartData() {\r\n\t\tthis.performanceChartData = ConversationInsightsChartConfig;\r\n\t\tthis.performanceChartData.xAxis.data = this.performanceCategories;\r\n\t\tthis.performanceChartData.series[0].data = this.deliveryRt;\r\n\t\tthis.performanceChartData.series[1].data = this.totalCmpn;\r\n\t\tthis.performanceChartData.series[2].data = this.costDesc;\r\n\t}\r\n\r\n\tprivate getConversationDetails(timeUnit: string) {\r\n\t\tif (!this.selectedPlatform) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.setConversationChartData();\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\t{\r\n\t\t\t\tname: 'timeUnit',\r\n\t\t\t\tvalue: timeUnit,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'clientId',\r\n\t\t\t\tvalue: localStorage.getItem('telin.clientId'),\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t\t{\r\n\t\t\t\tname: 'platform',\r\n\t\t\t\tvalue:\r\n\t\t\t\t\tthis.selectedPlatform === 'WHATSAPP'\r\n\t\t\t\t\t\t? 'WA'\r\n\t\t\t\t\t\t: this.selectedPlatform,\r\n\t\t\t\tin: 'query',\r\n\t\t\t\ttype: 'String',\r\n\t\t\t},\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(\r\n\t\t\t\tparameterList,\r\n\t\t\t\t'/report/campaign/conversation',\r\n\t\t\t\t'GET'\r\n\t\t\t)\r\n\t\t\t.subscribe((res: AppResponseAdl<ConversationChartResponseDto>) => {\r\n\t\t\t\tthis.convsData = [];\r\n\r\n\t\t\t\tif (res?.data) {\r\n\t\t\t\t\tfor (let i = 0; i < res.data.categories?.length; i++) {\r\n\t\t\t\t\t\tthis.convsData[i] = new Array();\r\n\t\t\t\t\t\tthis.convsData[i].push(res.data.categories[i]);\r\n\r\n\t\t\t\t\t\tfor (let j = 1; j <= res.data.series?.length; j++) {\r\n\t\t\t\t\t\t\tthis.convsData[i].push(\r\n\t\t\t\t\t\t\t\tres.data.series[j - 1].data[i]\r\n\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis.setConversationChartData();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate setConversationChartData() {\r\n\t\tthis.conversationChartData = CampaignPerformanceChartConfig;\r\n\t\tthis.convsData.forEach(data => {\r\n\t\t\tif (data) {\r\n\t\t\t\tthis.conversationChartData.dataset.source.push(data);\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tprivate getStatictsWidgetString(event: string): string {\r\n\t\treturn event == PastTimeEnum.Today\r\n\t\t\t? PastTimeEnum.Yesterday\r\n\t\t\t: event == PastTimeEnum.CurrentWeek\r\n\t\t\t? PastTimeEnum.LastWeek\r\n\t\t\t: event == PastTimeEnum.CurrentMonth\r\n\t\t\t? PastTimeEnum.LastMonth\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatBadgeModule } from '@angular/material/badge';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { PickerModule } from '@ctrl/ngx-emoji-mart';\r\nimport { AngularEditorModule } from '@kolkov/angular-editor';\r\nimport { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { DashboardComponent } from './dashboard.component';\r\n\r\n@NgModule({\r\n\tdeclarations: [DashboardComponent],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tFormsModule,\r\n\t\tMatGridListModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatInputModule,\r\n\t\tMatSelectModule,\r\n\t\tMatRadioModule,\r\n\t\tMatListModule,\r\n\t\tMatButtonModule,\r\n\t\tMatIconModule,\r\n\t\tPickerModule,\r\n\t\tAngularEditorModule,\r\n\t\tMatButtonToggleModule,\r\n\t\tMatDialogModule,\r\n\t\tMatTabsModule,\r\n\t\tMatBadgeModule,\r\n\t\tNgbDropdownModule,\r\n\t\tNgxEchartsModule,\r\n\t],\r\n\texports: [DashboardComponent],\r\n})\r\nexport class DashboardModule {}\r\n","export class FailoverReqModel {\r\n\tpublic active: boolean;\r\n\tpublic type: string;\r\n\tpublic interval: number;\r\n\tpublic accounts: FailoverAccountReqModel[];\r\n\r\n\tconstructor() {}\r\n\r\n\tpublic clone(source: any): FailoverReqModel {\r\n\t\tthis.active = source.active;\r\n\t\tthis.interval = source.interval ?? 0;\r\n\t\tthis.type = source.type ?? '';\r\n\r\n\t\tif (source.accounts) {\r\n\t\t\tthis.accounts = source.accounts.reduce((result, each) => {\r\n\t\t\t\tresult.push(new FailoverAccountReqModel().clone(each));\r\n\t\t\t\treturn result;\r\n\t\t\t}, []);\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn {\r\n\t\t\tfailover: this,\r\n\t\t};\r\n\t}\r\n}\r\n\r\nclass FailoverAccountReqModel {\r\n\tpublic accountId: string;\r\n\tpublic accountName: string;\r\n\tpublic subject: string;\r\n\tpublic platform: string;\r\n\tpublic template: {\r\n\t\tid: string;\r\n\t\tname: string;\r\n\t\tlang: string;\r\n\t\tdata: string[];\r\n\t};\r\n\r\n\tconstructor() {}\r\n\r\n\tpublic clone(source: any): FailoverAccountReqModel {\r\n\t\tthis.accountId = source.accountId?.id ?? '';\r\n\t\tthis.accountName = source.accountName ?? '';\r\n\t\tthis.subject = source.subject ?? '';\r\n\t\tthis.platform = source.platform ?? '';\r\n\t\tthis.template = {\r\n\t\t\tid: source.template?.ID ?? '',\r\n\t\t\tname: source.template?.name ?? source.template ?? '',\r\n\t\t\tlang: source.template?.lang ?? '',\r\n\t\t\tdata: source.paramBody?.map((t: any) => t.name) ?? [],\r\n\t\t};\r\n\r\n\t\treturn this;\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn this;\r\n\t}\r\n}\r\n","export class GeneralInformationWAReqModel {\r\n public name: string;\r\n public accountId: string;\r\n public type: string;\r\n public text: string;\r\n public subject: string;\r\n public image: {\r\n url: string;\r\n };\r\n public video: {\r\n url: string;\r\n };\r\n public document: {\r\n url: string;\r\n fileName: string;\r\n };\r\n public template: {\r\n id?: string;\r\n name: string;\r\n lang: string;\r\n type: any;\r\n headerUrl?: string;\r\n header: any;\r\n data: any[];\r\n button: any;\r\n };\r\n public list: {\r\n button: string;\r\n sections: {\r\n title: string;\r\n items: {\r\n id: string;\r\n title: string;\r\n description: string;\r\n }[];\r\n }[];\r\n };\r\n public buttons: {\r\n type: string;\r\n id: string;\r\n title: string;\r\n }[];\r\n\r\n public clone(source: any): GeneralInformationWAReqModel {\r\n /* Source Mapping */\r\n if (\r\n source?.media === 'IMAGE' ||\r\n source?.media === 'VIDEO' ||\r\n source?.media === 'DOCUMENT'\r\n ) {\r\n source.channel = source.media;\r\n }\r\n /* ./ Source Mapping */\r\n\r\n if (source.campaignName) {\r\n this.name = source.campaignName;\r\n }\r\n if (source.medium === 'EMAIL') {\r\n this.subject = source.campaignName;\r\n }\r\n if (source.from?.id) {\r\n this.accountId = source.from.id;\r\n }\r\n if (source.channel) {\r\n this.type = source.channel?.toLowerCase();\r\n }\r\n if (source.text) {\r\n this.text = source.text;\r\n }\r\n if (this.type === 'image' && source.fileName) {\r\n this.image = {\r\n url: source.targetURL,\r\n };\r\n }\r\n if (this.type === 'video' && source.fileName) {\r\n this.video = {\r\n url: source.targetURL,\r\n };\r\n }\r\n if (this.type === 'document' && source.fileName) {\r\n this.document = {\r\n url: source.targetURL,\r\n fileName: source.fileName,\r\n };\r\n }\r\n if (source.template) {\r\n this.template = {\r\n id: source.template.ID,\r\n name: source.template.name,\r\n lang: source.template.lang,\r\n type: source.type,\r\n headerUrl: source.targetURL,\r\n header: source.paramHeader?.map((t: any) => t.name) ?? [],\r\n data: source.paramBody?.map((t: any) => t.name) ?? [],\r\n button: source.paramButton?.reduce((result: any[], each: any) => {\r\n result.push(each.name.map((t: any) => t.name) ?? []);\r\n return result;\r\n }, []),\r\n };\r\n\r\n if (source.template.category === 'AUTHENTICATION')\r\n this.template = {\r\n name: source.template.name,\r\n lang: source.template.lang,\r\n header: null,\r\n type: source.type,\r\n data: [source.otpValue],\r\n button: [[source.otpValue]],\r\n };\r\n\r\n if (source.template.ID) this.template.id = source.template.ID;\r\n }\r\n\r\n return this;\r\n }\r\n\r\n public convert(): any {\r\n return this;\r\n }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\n\r\nexport class SchedulerReqModel {\r\n\tpublic type: string;\r\n\tpublic startTime: string;\r\n\tpublic repeat: boolean;\r\n\tpublic tz: string;\r\n\tprivate datePipe: DatePipe;\r\n\r\n\tconstructor() {\r\n\t\tthis.datePipe = new DatePipe('en-US');\r\n\t}\r\n\r\n\tpublic clone(source: any): SchedulerReqModel {\r\n\t\tif (source.schedulerType) {\r\n\t\t\tthis.type = source.delivery ? 'MULTI' : source.schedulerType;\r\n\t\t}\r\n\t\tif (source.startDate) {\r\n\t\t\tthis.startTime = `${this.datePipe.transform(\r\n\t\t\t\tsource.startDate,\r\n\t\t\t\t'yyyy-MM-dd'\r\n\t\t\t)} ${source.startTime}`;\r\n\t\t}\r\n\t\tif (source.delivery) {\r\n\t\t\tthis.repeat = source.delivery.toUpperCase();\r\n\t\t}\r\n\r\n\t\treturn this;\r\n\t}\r\n\r\n\tpublic convert(): any {\r\n\t\treturn {\r\n\t\t\ttype: this.type,\r\n\t\t\tstartTime: this.startTime,\r\n\t\t\trepeat: this.repeat,\r\n\t\t\ttz: Intl.DateTimeFormat().resolvedOptions().timeZone,\r\n\t\t};\r\n\t}\r\n}\r\n","import { Component, EventEmitter, OnDestroy, OnInit, Output } from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\nimport { SegmentedMessage } from 'sms-segments-calculator';\r\nimport { MainArea } from '../../../core/enums';\r\nimport { Parameter } from '../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../core/services';\r\nimport { ConfirmationComponent } from '../../../global/confirmation/confirmation';\r\nimport { ConfirmationModel } from '../../../global/confirmation/shared/model';\r\nimport { FailoverReqModel, GeneralInformationWAReqModel, SchedulerReqModel } from '../../models';\r\n\r\n@Component({\r\n selector: 'lib-new-campaign',\r\n templateUrl: './new-campaign.component.html',\r\n styleUrls: ['./new-campaign.component.scss'],\r\n})\r\nexport class NewCampaignComponent implements OnInit, OnDestroy {\r\n @Output() currentView = new EventEmitter<MainArea>();\r\n\r\n public campaignID: string;\r\n public currentViews = MainArea;\r\n public positionWizard: number = 1;\r\n public dataWizard: string[];\r\n public isLoading: boolean = false;\r\n public isSubmit: boolean = false;\r\n public isGeneralInformationValid: boolean = false;\r\n public isFailoverMechanismValid: boolean = false;\r\n public isNumberBaseInformationValid: boolean = false;\r\n public isSchedulerInformationValid: boolean = false;\r\n public isLine: boolean = false;\r\n public generalInformationData: any;\r\n public failoverMechanismData: any;\r\n public targetAudienceData: string[];\r\n public targetAudienceCount: number;\r\n public targetAudienceFile: any;\r\n public schedulerData: any;\r\n\r\n private isUploadTargetAudience: boolean = false;\r\n private subscribers: Subscription[] = [];\r\n\r\n constructor(\r\n private dialog: MatDialog,\r\n private apiAdapterService: ApiAdapterServiceService,\r\n private toastr: ToastrService\r\n ) {}\r\n\r\n ngOnInit(): void {\r\n this.campaignID = window.location.pathname?.split('/')?.pop();\r\n\r\n this.initWizard();\r\n this.getCampaignDetailService();\r\n }\r\n\r\n private initWizard(): void {\r\n if (!this.isLine) {\r\n this.dataWizard = [\r\n 'General Information',\r\n 'Failover Mechanism',\r\n 'Target Audience',\r\n 'Scheduler',\r\n 'Summary',\r\n ];\r\n return;\r\n }\r\n\r\n this.dataWizard = ['General Information', 'Target Audience', 'Scheduler', 'Summary'];\r\n }\r\n\r\n private getCampaignDetailService(): void {\r\n if (this.campaignID?.length < 10) return;\r\n\r\n this.isLoading = true;\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest([], `/campaign/${this.campaignID}`, 'GET')\r\n .subscribe(\r\n (resp: AppResponse<any>) => {\r\n if (!resp) return;\r\n\r\n const generalInformation = {\r\n campaignName: resp.data?.name,\r\n medium: resp.data?.platform,\r\n channel: ['image', 'video', 'document'].includes(resp.data?.type)\r\n ? 'MEDIA'\r\n : resp.data?.type?.toUpperCase(),\r\n media: resp.data?.type?.toUpperCase(),\r\n from: {\r\n id: resp.data?.accountId,\r\n name: resp.data?.accountName,\r\n platform: resp.data?.platform,\r\n clientId: resp.data?.clientId,\r\n clientName: resp.data?.clientName,\r\n accountNo: resp.data?.accountNo,\r\n wabaId: resp.data?.wabaId ?? '',\r\n },\r\n text: resp.data?.details?.text,\r\n targetURL:\r\n resp.data?.details?.image?.url ??\r\n resp.data?.details?.document?.url ??\r\n resp.data?.details?.video?.url ??\r\n resp.data?.details?.template?.headerURL,\r\n paramHeader: resp.data?.details?.template?.header,\r\n paramBody: resp.data?.details?.template?.data,\r\n paramButton: resp.data?.details?.template?.button,\r\n otpValue: [...(resp.data?.details?.template?.data ?? [])]?.pop(),\r\n template: {\r\n ID: resp.data?.details?.template?.id,\r\n name: resp.data?.details?.template?.name,\r\n lang: resp.data?.details?.template?.lang,\r\n platform: resp.data?.platform,\r\n headerURL: resp.data?.details?.template?.headerURL,\r\n header: {\r\n examples: resp.data?.details?.template?.header,\r\n },\r\n body: {\r\n examples: resp.data?.details?.template?.data,\r\n },\r\n buttons: resp.data?.details?.template?.button,\r\n ClientId: resp.data?.clientId,\r\n ClientName: resp.data?.clientName,\r\n },\r\n isUpload: resp.data?.fileId !== '',\r\n fileId: resp.data?.fileId,\r\n };\r\n\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n generalInformation: {\r\n id: resp.data?.id,\r\n form: generalInformation,\r\n },\r\n failover: resp.data?.failover,\r\n targetAudience: resp.data?.targets,\r\n targetAudienceFile: {\r\n name: resp.data?.fileName,\r\n targetURL: resp.data?.targetURL,\r\n },\r\n scheduler: {\r\n schedulerType:\r\n resp.data?.scheduleType === 'MULTI'\r\n ? 'ONE_TIME'\r\n : resp.data?.scheduleType,\r\n startDate: resp.data?.startTime?.split(' ')[0],\r\n startTime: resp.data?.startTime?.split(' ')[1],\r\n isRepeat: resp.data?.scheduleType === 'MULTI',\r\n delivery: resp.data?.repeat,\r\n },\r\n },\r\n })\r\n );\r\n\r\n this.isLine = resp.data?.platform === 'LINE';\r\n this.isLoading = false;\r\n\r\n this.initWizard();\r\n },\r\n () => {\r\n this.isLoading = false;\r\n }\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public generalInformation(form: { parent: FormGroup; child: FormGroup }): void {\r\n this.isGeneralInformationValid = form.parent.valid && form.child && form.child?.valid;\r\n this.isLine = form.parent?.getRawValue()?.medium === 'LINE';\r\n\r\n this.initWizard();\r\n\r\n if (form.parent && form.child)\r\n this.generalInformationData = {\r\n ...form.parent.getRawValue(),\r\n ...form.child.getRawValue(),\r\n };\r\n }\r\n\r\n public failoverMechanism(form: FormGroup): void {\r\n this.isFailoverMechanismValid = form.valid;\r\n this.failoverMechanismData = form.getRawValue();\r\n }\r\n\r\n public targetAudience(target: {\r\n targetAudience: string[];\r\n numberCount: number;\r\n isUpload: boolean;\r\n file: any;\r\n }): void {\r\n this.targetAudienceFile = target.file;\r\n this.targetAudienceData = target.targetAudience;\r\n this.targetAudienceCount = target.numberCount;\r\n this.isUploadTargetAudience = target.isUpload;\r\n this.isNumberBaseInformationValid =\r\n (target.isUpload && target.file?.name) ||\r\n (!target.isUpload && target.targetAudience.length > 0) ||\r\n this.getCampaignStorage?.generalInformation?.form?.fileId;\r\n }\r\n\r\n public scheduler(form: FormGroup): void {\r\n this.schedulerData = form.getRawValue();\r\n this.isSchedulerInformationValid = form.valid;\r\n }\r\n\r\n public onClickSaveAndNextButton(): void {\r\n this.isSubmit = true;\r\n\r\n switch (this.positionWizard) {\r\n case 1:\r\n this.saveGeneralInformationService();\r\n break;\r\n case 2:\r\n !this.isLine ? this.saveFailoverMechanismService() : this.saveNumberBasesService();\r\n break;\r\n case 3:\r\n !this.isLine ? this.saveNumberBasesService() : this.saveSchedulerService();\r\n break;\r\n case 4:\r\n if (!this.isLine) this.saveSchedulerService();\r\n break;\r\n default:\r\n this.isSubmit = false;\r\n break;\r\n }\r\n }\r\n\r\n get getCampaignStorage(): any {\r\n return localStorage.getItem('telin.campaign')\r\n ? JSON.parse(localStorage.getItem('telin.campaign'))\r\n : {};\r\n }\r\n\r\n get getBody(): string {\r\n const body =\r\n this.generalInformationData?.text ||\r\n this.generalInformationData?.template?.body?.text ||\r\n this.generalInformationData?.body?.text;\r\n\r\n return (\r\n body\r\n ?.split(/\\\\n|\\n/)\r\n .join('<br />')\r\n .split(/\\\\t|\\t/)\r\n .join(' ') ?? ''\r\n );\r\n }\r\n\r\n public onCheckTwilioCounterValid = (): boolean => {\r\n const valuesGeneral = this.generalInformationData;\r\n\r\n if (valuesGeneral?.medium !== 'SMS') {\r\n return true;\r\n }\r\n\r\n if (valuesGeneral?.channel === 'TEXT') {\r\n const segmentedMessage = new SegmentedMessage(this.getBody);\r\n const result = {\r\n segments: segmentedMessage.segmentsCount,\r\n encoding: segmentedMessage.encodingName,\r\n characters: segmentedMessage.numberOfUnicodeScalars,\r\n };\r\n\r\n if (result.segments > 10) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n } else {\r\n let valueResult = this.getBody;\r\n Array.from(valuesGeneral.template?.body?.examples || []).map((entry, index) => {\r\n if (valuesGeneral.paramBody.length > 0) {\r\n const placeholder = `{{${entry}}}`;\r\n const value = valuesGeneral.paramBody[index].name;\r\n valueResult = valueResult.split(placeholder).join(value);\r\n }\r\n });\r\n\r\n const segmentedMessage = new SegmentedMessage(valueResult);\r\n const result = {\r\n segments: segmentedMessage.segmentsCount,\r\n encoding: segmentedMessage.encodingName,\r\n characters: segmentedMessage.numberOfUnicodeScalars,\r\n };\r\n\r\n if (result.segments > 10) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n };\r\n\r\n private saveGeneralInformationService(): void {\r\n if (!this.onCheckTwilioCounterValid()) {\r\n this.toastr.error('Segment cannot more than 10');\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n const bodyReq = new GeneralInformationWAReqModel().clone({\r\n ...this.generalInformationData,\r\n });\r\n\r\n if (bodyReq.type === 'template' && this.generalInformationData.from.platform === 'WA') {\r\n bodyReq.template.type = this.generalInformationData.template.category;\r\n }\r\n\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'data',\r\n value: bodyReq.convert(),\r\n in: 'body',\r\n type: 'object',\r\n withoutKeyData: true,\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n this.generalInformationData.id\r\n ? `/campaign/${this.generalInformationData.id}`\r\n : '/campaign',\r\n this.generalInformationData.id ? 'PUT' : 'POST'\r\n )\r\n .subscribe(\r\n (resp) => {\r\n if (resp?.message?.toLowerCase() !== 'success') {\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n generalInformation: {\r\n id: resp.data.id,\r\n form: this.generalInformationData,\r\n },\r\n },\r\n })\r\n );\r\n\r\n this.isSubmit = false;\r\n this.positionWizard += 1;\r\n },\r\n () => (this.isSubmit = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private saveFailoverMechanismService(): void {\r\n const bodyReq = new FailoverReqModel().clone({\r\n ...this.failoverMechanismData,\r\n });\r\n\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'data',\r\n value: bodyReq.convert(),\r\n in: 'body',\r\n type: 'object',\r\n withoutKeyData: true,\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n `/campaign/${this.getCampaignStorage?.generalInformation?.id}/failover`,\r\n 'POST'\r\n )\r\n .subscribe(\r\n (resp) => {\r\n if (resp?.message?.toLowerCase() !== 'success') {\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n failover: this.failoverMechanismData,\r\n },\r\n })\r\n );\r\n\r\n this.isSubmit = false;\r\n this.positionWizard += 1;\r\n },\r\n () => (this.isSubmit = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private saveNumberBasesService(): void {\r\n if (this.targetAudienceData.length === 0 || this.isUploadTargetAudience) {\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n targetAudience: this.targetAudienceData,\r\n targetAudienceCount: this.targetAudienceCount,\r\n targetAudienceFile: this.targetAudienceFile,\r\n },\r\n })\r\n );\r\n\r\n this.isSubmit = false;\r\n this.positionWizard += 1;\r\n return;\r\n }\r\n\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'data',\r\n value: {\r\n targets: this.targetAudienceData,\r\n numberCount: this.targetAudienceCount,\r\n },\r\n in: 'body',\r\n type: 'object',\r\n withoutKeyData: true,\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n `/campaign/${this.getCampaignStorage?.generalInformation?.id}/targetcategory`,\r\n 'POST'\r\n )\r\n .subscribe(\r\n (resp) => {\r\n if (resp?.message?.toLowerCase() !== 'success') {\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n targetAudience: this.targetAudienceData,\r\n targetAudienceCount: this.targetAudienceCount,\r\n targetAudienceFile: this.targetAudienceFile,\r\n },\r\n })\r\n );\r\n\r\n this.isSubmit = false;\r\n this.positionWizard += 1;\r\n },\r\n () => (this.isSubmit = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private saveSchedulerService(): void {\r\n const bodyReq = new SchedulerReqModel().clone({\r\n ...this.schedulerData,\r\n });\r\n\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'data',\r\n value: bodyReq.convert(),\r\n in: 'body',\r\n type: 'object',\r\n withoutKeyData: true,\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n `/campaign/${this.getCampaignStorage?.generalInformation?.id}/schedule`,\r\n 'POST'\r\n )\r\n .subscribe(\r\n (resp) => {\r\n if (resp?.message?.toLowerCase() !== 'success') {\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n localStorage.setItem(\r\n 'telin.campaign',\r\n JSON.stringify({\r\n ...this.getCampaignStorage,\r\n ...{\r\n scheduler: this.schedulerData,\r\n },\r\n })\r\n );\r\n\r\n this.isSubmit = false;\r\n this.positionWizard += 1;\r\n },\r\n () => (this.isSubmit = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public onPrevious(): void {\r\n this.positionWizard -= 1;\r\n }\r\n\r\n public changeCurrentView(area: MainArea) {\r\n this.openConfirmationDialog(area);\r\n }\r\n\r\n private openConfirmationDialog(area: MainArea): void {\r\n const confirmation = new ConfirmationModel();\r\n\r\n confirmation.title = 'Cancel Add Broadcast';\r\n confirmation.content = `Are you sure you want to cancel<br/> Add Broadcast?`;\r\n confirmation.btnSubmitRed = 'Yes';\r\n confirmation.btnCancel = 'No';\r\n\r\n const subs = this.dialog\r\n .open(ConfirmationComponent, {\r\n autoFocus: false,\r\n backdropClass: 'overlay-backdrop-dialog',\r\n data: confirmation,\r\n })\r\n .afterClosed()\r\n .subscribe((resp) => {\r\n if (resp) {\r\n window.history.replaceState(\r\n {},\r\n `/${this.getCampaignStorage?.generalInformation?.id}`,\r\n '/secure/campaign'\r\n );\r\n\r\n this.currentView.emit(area);\r\n }\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public onSubmitForApproval(): void {\r\n const parameterList: Array<Parameter> = [];\r\n this.isSubmit = true;\r\n\r\n if (this.getCampaignStorage?.targetAudienceFile?.name)\r\n parameterList.push({\r\n name: 'isFile',\r\n value: true,\r\n in: 'query',\r\n type: 'string',\r\n });\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n `/campaign/${this.getCampaignStorage?.generalInformation?.id}/submit`,\r\n 'POST'\r\n )\r\n .subscribe(\r\n (resp) => {\r\n if (resp?.message?.toLowerCase() !== 'success') {\r\n this.isSubmit = false;\r\n return;\r\n }\r\n\r\n window.history.replaceState(\r\n {},\r\n `/${this.getCampaignStorage?.generalInformation?.id}`,\r\n '/secure/campaign'\r\n );\r\n\r\n this.toastr.success('Campaign submitted for approval!');\r\n this.isSubmit = false;\r\n this.currentView.emit(this.currentViews.CampaignIndex);\r\n },\r\n () => (this.isSubmit = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribers.forEach((each) => each.unsubscribe());\r\n }\r\n}\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n\tGeneralInformationEmailMessageValidationConst,\r\n\tMsgTypeEmailOptionConst,\r\n} from '../../../../../core/const';\r\nimport { Parameter } from '../../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { TemplateWAModel, WhatsAppAccountDto } from '../../../../models';\r\n\r\n@Component({\r\n\tselector: 'lib-general-information-email',\r\n\ttemplateUrl: './general-information-email.component.html',\r\n\tstyleUrls: ['./general-information-email.component.scss'],\r\n})\r\nexport class GeneralInformationEmailComponent implements OnInit, OnDestroy {\r\n\t@Output()\r\n\tpublic updateGeneralInformationForm: EventEmitter<FormGroup>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic validationMessages: any;\r\n\tpublic msgTypeWAOption: any[] = [];\r\n\tpublic accountOption: WhatsAppAccountDto[] = [];\r\n\tpublic isHaveNextAccountOption: boolean = true;\r\n\tpublic isLoadingAccountOption: boolean = false;\r\n\tpublic templateOption: TemplateWAModel[] = [];\r\n\tpublic isHaveNextTemplateOption: boolean = true;\r\n\tpublic isLoadingTemplateOption: boolean = false;\r\n\tpublic isHaveTemplateParam: boolean = false;\r\n\r\n\tprivate pageNoAccountOption: number = 1;\r\n\tprivate pageNoTemplateOption: number = 1;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\t@Input()\r\n\tset isTouchedForm(status: boolean) {\r\n\t\tif (!this.updateGeneralInformationForm) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t});\r\n\t}\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {\r\n\t\tthis.updateGeneralInformationForm = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.validationMessages = GeneralInformationEmailMessageValidationConst;\r\n\t\tthis.msgTypeWAOption = MsgTypeEmailOptionConst;\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initDisable();\r\n\t\tthis.initEdit();\r\n\t\tthis.initValidation();\r\n\t\tthis.getAccountOptionService(\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium ===\r\n\t\t\t\t'EMAIL'\r\n\t\t\t\t? this.getCampaignStorage?.generalInformation?.form?.from?.name\r\n\t\t\t\t: ''\r\n\t\t);\r\n\t}\r\n\r\n\tget getCampaignStorage(): any {\r\n\t\treturn localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tchannel: new FormControl(null, Validators.required),\r\n\t\t\tfrom: new FormControl(null, Validators.required),\r\n\t\t\ttext: new FormControl(null, Validators.required),\r\n\t\t\ttemplate: new FormControl(null, Validators.required),\r\n\t\t\tparamBody: new FormArray([], Validators.required),\r\n\t\t\tisUpload: new FormControl(false),\r\n\t\t\tfileId: new FormControl(''),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tprivate initEdit(): void {\r\n\t\tif (\r\n\t\t\tObject.entries(this.getCampaignStorage).length === 0 ||\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium !==\r\n\t\t\t\t'EMAIL'\r\n\t\t)\r\n\t\t\treturn;\r\n\r\n\t\tthis.form\r\n\t\t\t.get('channel')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.channel\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('from')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.from);\r\n\t\tthis.form\r\n\t\t\t.get('text')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.text);\r\n\t\tthis.form\r\n\t\t\t.get('template')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.template\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('isUpload')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.isUpload\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('fileId')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.fileId);\r\n\r\n\t\tthis.isHaveTemplateParam = this.form.get('isUpload').value;\r\n\t\tthis.getTemplateOptionService(\r\n\t\t\tnull,\r\n\t\t\tthis.form.get('template').value?.name\r\n\t\t);\r\n\t}\r\n\r\n\tget getIsTemplate(): boolean {\r\n\t\treturn (\r\n\t\t\tthis.form.get('channel').value &&\r\n\t\t\tthis.form.get('channel').value?.toLowerCase() === 'template'\r\n\t\t);\r\n\t}\r\n\r\n\tprivate initValidation(): void {\r\n\t\tfor (const key in this.form.controls) {\r\n\t\t\tthis.form.controls[key].clearValidators();\r\n\t\t\tthis.form.controls[key].updateValueAndValidity();\r\n\t\t}\r\n\r\n\t\tthis.form.get('channel').setValidators(Validators.required);\r\n\t\tthis.form.get('from').setValidators(Validators.required);\r\n\r\n\t\tif (this.getIsTemplate) {\r\n\t\t\tthis.form.get('template').setValidators(Validators.required);\r\n\t\t\tthis.form.get('template').updateValueAndValidity();\r\n\t\t\tthis.form.get('paramBody').setValidators(Validators.required);\r\n\t\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t\t} else {\r\n\t\t\tthis.form.get('text').setValidators(Validators.required);\r\n\t\t\tthis.form.get('text').updateValueAndValidity();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic formReset(_isMediaType: boolean = false): void {\r\n\t\tthis.form.get('text').reset();\r\n\t\tthis.form.get('template').reset();\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\r\n\t\tthis.initValidation();\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tprivate getAccountOptionService(\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingAccountOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoAccountOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'EMAIL', 'string'),\r\n\t\t\tthis.initParam('status', 'APPROVED', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/admin/account', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<WhatsAppAccountDto[]>) => {\r\n\t\t\t\tif (!resp.data) return;\r\n\r\n\t\t\t\tthis.accountOption = isInfinite\r\n\t\t\t\t\t? [...this.accountOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextAccountOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingAccountOption = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getTemplateOptionService(\r\n\t\tevent: string = null,\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingTemplateOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoTemplateOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'EMAIL', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'clientId',\r\n\t\t\t\tthis.form.get('from').value?.clientId,\r\n\t\t\t\t'string'\r\n\t\t\t),\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'wabaId',\r\n\t\t\t\tthis.form.get('from').value?.wabaId ?? '',\r\n\t\t\t\t'string'\r\n\t\t\t),\r\n\t\t];\r\n\r\n\t\tif (this.isReadOnlyMode)\r\n\t\t\tparameterList.push(this.initParam('summary', true, 'string'));\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/message/template', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\t\t\t\tthis.templateOption = isInfinite\r\n\t\t\t\t\t? [...this.templateOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextTemplateOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingTemplateOption = false;\r\n\r\n\t\t\t\tconst template = this.templateOption?.find(\r\n\t\t\t\t\tt => t.ID === this.form.get('template').value?.ID\r\n\t\t\t\t);\r\n\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\tthis.form.get('template').setValue(template);\r\n\r\n\t\t\t\t\tif (this.form.get('isUpload').value)\r\n\t\t\t\t\t\treturn this.updateDownloadCSV(\r\n\t\t\t\t\t\t\tthis.form.get('isUpload').value\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\tthis.updateTemplate(this.form.get('template').value);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate initParameter(value: string = ''): FormGroup {\r\n\t\tconst form = new FormGroup({\r\n\t\t\tname: new FormControl(\r\n\t\t\t\t{\r\n\t\t\t\t\tvalue: value,\r\n\t\t\t\t\tdisabled:\r\n\t\t\t\t\t\tthis.isReadOnlyMode ||\r\n\t\t\t\t\t\t['UnsubscribeAccount'].includes(value),\r\n\t\t\t\t},\r\n\t\t\t\tValidators.required\r\n\t\t\t),\r\n\t\t});\r\n\r\n\t\treturn form;\r\n\t}\r\n\r\n\tget getParamBody(): FormGroup[] {\r\n\t\treturn (this.form.get('paramBody') as FormArray)\r\n\t\t\t.controls as FormGroup[];\r\n\t}\r\n\r\n\tpublic addParamBody(value: string = ''): void {\r\n\t\tconst form = this.initParameter(value);\r\n\t\t(this.form.get('paramBody') as FormArray).push(form);\r\n\t}\r\n\r\n\tpublic getNextAccountBatch() {\r\n\t\tif (!this.isHaveNextAccountOption) return;\r\n\r\n\t\tthis.pageNoAccountOption += 1;\r\n\t\tthis.getAccountOptionService('', true);\r\n\t}\r\n\r\n\tpublic accountSelectedDisplay(\r\n\t\tattribute1: WhatsAppAccountDto,\r\n\t\tattribute2: WhatsAppAccountDto\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.id == attribute2.id\r\n\t\t\t? `${attribute1.name} (${attribute1.accountNo})`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic getNextTemplateBatch() {\r\n\t\tif (!this.isHaveNextTemplateOption) return;\r\n\r\n\t\tthis.pageNoTemplateOption += 1;\r\n\t\tthis.getTemplateOptionService(null, '', true);\r\n\t}\r\n\r\n\tpublic templateSelectedDisplay(\r\n\t\tattribute1: TemplateWAModel,\r\n\t\tattribute2: TemplateWAModel\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.name == attribute2.name\r\n\t\t\t? `${attribute1.name}`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic updateTemplate(template: TemplateWAModel): void {\r\n\t\tif (!template) return;\r\n\r\n\t\tthis.isHaveTemplateParam = template.body.examples?.length > 0;\r\n\r\n\t\ttemplate.body.examples?.length > 0\r\n\t\t\t? this.form.get('paramBody').setValidators(Validators.required)\r\n\t\t\t: this.form.get('paramBody').clearValidators();\r\n\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\r\n\t\tconst formStorage = this.getCampaignStorage?.generalInformation?.form;\r\n\r\n\t\ttemplate.body.examples?.forEach((each, index) => {\r\n\t\t\tlet paramValue =\r\n\t\t\t\tformStorage?.paramBody?.[index]?.name ??\r\n\t\t\t\tformStorage?.paramBody?.[index] ??\r\n\t\t\t\t'';\r\n\r\n\t\t\tif (['UnsubscribeAccount'].includes(each)) paramValue = each;\r\n\r\n\t\t\tthis.addParamBody(paramValue);\r\n\t\t});\r\n\t}\r\n\r\n\tpublic updateSearch(searchValue: string): void {\r\n\t\tthis.pageNoTemplateOption = 1;\r\n\t\tthis.getTemplateOptionService(searchValue);\r\n\t}\r\n\r\n\tpublic updateSearchAccount(searchValue: string): void {\r\n\t\tthis.pageNoAccountOption = 1;\r\n\t\tthis.getAccountOptionService(searchValue);\r\n\t}\r\n\r\n\tpublic updateDownloadCSV(isChecked: boolean): void {\r\n\t\tthis.form.get('isUpload').setValue(isChecked);\r\n\r\n\t\tif (isChecked) {\r\n\t\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\t\t\tthis.form.get('paramBody').clearValidators();\r\n\t\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.updateTemplate(this.form.get('template').value);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n\tGeneralInformationLineMessageValidationConst,\r\n\tMsgTypeLineOptionConst,\r\n} from '../../../../../core/const';\r\nimport { Parameter } from '../../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { TemplateWAModel, WhatsAppAccountDto } from '../../../../models';\r\n@Component({\r\n\tselector: 'lib-general-information-line',\r\n\ttemplateUrl: './general-information-line.component.html',\r\n\tstyleUrls: ['./general-information-line.component.scss'],\r\n})\r\nexport class GeneralInformationLineComponent implements OnInit, OnDestroy {\r\n\t@Output()\r\n\tpublic updateGeneralInformationForm: EventEmitter<FormGroup>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic msgTypeWAOption: any[] = [];\r\n\tpublic validationMessages: any;\r\n\tpublic accountOption: WhatsAppAccountDto[] = [];\r\n\tpublic isHaveNextAccountOption: boolean = true;\r\n\tpublic isLoadingAccountOption: boolean = false;\r\n\tpublic templateOption: TemplateWAModel[] = [];\r\n\tpublic isHaveNextTemplateOption: boolean = true;\r\n\tpublic isLoadingTemplateOption: boolean = false;\r\n\r\n\tprivate pageNoAccountOption: number = 1;\r\n\tprivate pageNoTemplateOption: number = 1;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\t@Input()\r\n\tset isTouchedForm(status: boolean) {\r\n\t\tif (!this.updateGeneralInformationForm) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t});\r\n\t}\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {\r\n\t\tthis.updateGeneralInformationForm = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.msgTypeWAOption = MsgTypeLineOptionConst;\r\n\t\tthis.validationMessages = GeneralInformationLineMessageValidationConst;\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initDisable();\r\n\t\tthis.initEdit();\r\n\t\tthis.initValidation();\r\n\t\tthis.getAccountOptionService(\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium === 'LINE'\r\n\t\t\t\t? this.getCampaignStorage?.generalInformation?.form?.from?.name\r\n\t\t\t\t: ''\r\n\t\t);\r\n\t}\r\n\r\n\tget getCampaignStorage(): any {\r\n\t\treturn localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tchannel: new FormControl(null, Validators.required),\r\n\t\t\tfrom: new FormControl(null, Validators.required),\r\n\t\t\ttext: new FormControl(null),\r\n\t\t\ttemplate: new FormControl(null),\r\n\t\t\tisJSON: new FormControl(false),\r\n\t\t\tparamBody: new FormArray([], Validators.required),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tprivate initEdit(): void {\r\n\t\tif (\r\n\t\t\tObject.entries(this.getCampaignStorage).length === 0 ||\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium !== 'LINE'\r\n\t\t)\r\n\t\t\treturn;\r\n\r\n\t\tthis.form\r\n\t\t\t.get('channel')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.channel\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('from')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.from);\r\n\t\tthis.form\r\n\t\t\t.get('text')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.text);\r\n\t\tthis.form\r\n\t\t\t.get('template')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.template\r\n\t\t\t);\r\n\r\n\t\tthis.getTemplateOptionService(\r\n\t\t\tnull,\r\n\t\t\tthis.form.get('template').value?.name\r\n\t\t);\r\n\t}\r\n\r\n\tprivate initValidation(): void {\r\n\t\tfor (const key in this.form.controls) {\r\n\t\t\tthis.form.controls[key].clearValidators();\r\n\t\t\tthis.form.controls[key].updateValueAndValidity();\r\n\t\t}\r\n\r\n\t\tthis.form.get('channel').setValidators(Validators.required);\r\n\t\tthis.form.get('from').setValidators(Validators.required);\r\n\r\n\t\tif (this.isText) {\r\n\t\t\tthis.form.get('text').setValidators(Validators.required);\r\n\t\t\tthis.form.get('text').updateValueAndValidity();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.get('template').setValidators(Validators.required);\r\n\t\tthis.form.get('template').updateValueAndValidity();\r\n\t\tthis.form.get('paramBody').setValidators(Validators.required);\r\n\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t}\r\n\r\n\tpublic formReset(): void {\r\n\t\tthis.form.get('text').reset();\r\n\t\tthis.form.get('template').reset();\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\r\n\t\tthis.initValidation();\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tprivate getAccountOptionService(\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingAccountOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoAccountOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'LINE', 'string'),\r\n\t\t\tthis.initParam('status', 'APPROVED', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/admin/account', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<WhatsAppAccountDto[]>) => {\r\n\t\t\t\tif (!resp.data) return;\r\n\r\n\t\t\t\tthis.accountOption = isInfinite\r\n\t\t\t\t\t? [...this.accountOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextAccountOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingAccountOption = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getTemplateOptionService(\r\n\t\tevent: string = null,\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingTemplateOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoTemplateOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'LINE', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'clientId',\r\n\t\t\t\tthis.form.get('from').value?.clientId,\r\n\t\t\t\t'string'\r\n\t\t\t),\r\n\t\t];\r\n\r\n\t\tif (this.isReadOnlyMode)\r\n\t\t\tparameterList.push(this.initParam('summary', true, 'string'));\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/message/template', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\t\t\t\tthis.templateOption = isInfinite\r\n\t\t\t\t\t? [...this.templateOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextTemplateOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingTemplateOption = false;\r\n\r\n\t\t\t\tconst template = this.templateOption?.find(\r\n\t\t\t\t\tt => t.ID === this.form.get('template').value?.ID\r\n\t\t\t\t);\r\n\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\tthis.form.get('template').setValue(template);\r\n\t\t\t\t\tthis.updateTemplate(this.form.get('template').value);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate initParameter(value: string = ''): FormGroup {\r\n\t\tconst form = new FormGroup({\r\n\t\t\tname: new FormControl(\r\n\t\t\t\t{ value: value, disabled: this.isReadOnlyMode },\r\n\t\t\t\tValidators.required\r\n\t\t\t),\r\n\t\t});\r\n\r\n\t\treturn form;\r\n\t}\r\n\r\n\tget getParamBody(): FormGroup[] {\r\n\t\treturn (this.form.get('paramBody') as FormArray)\r\n\t\t\t.controls as FormGroup[];\r\n\t}\r\n\r\n\tpublic addParamBody(value: string = ''): void {\r\n\t\tconst form = this.initParameter(value);\r\n\t\t(this.form.get('paramBody') as FormArray).push(form);\r\n\t}\r\n\r\n\tget isText(): boolean {\r\n\t\treturn (\r\n\t\t\tthis.form.get('channel').value &&\r\n\t\t\tthis.form.get('channel').value?.toLowerCase() === 'text'\r\n\t\t);\r\n\t}\r\n\r\n\tget isTemplate(): boolean {\r\n\t\treturn (\r\n\t\t\tthis.form.get('channel').value &&\r\n\t\t\tthis.form.get('channel').value?.toLowerCase() === 'template'\r\n\t\t);\r\n\t}\r\n\r\n\tpublic getNextAccountBatch() {\r\n\t\tif (!this.isHaveNextAccountOption) return;\r\n\r\n\t\tthis.pageNoAccountOption += 1;\r\n\t\tthis.getAccountOptionService('', true);\r\n\t}\r\n\r\n\tpublic accountSelectedDisplay(\r\n\t\tattribute1: WhatsAppAccountDto,\r\n\t\tattribute2: WhatsAppAccountDto\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.id == attribute2.id\r\n\t\t\t? `${attribute1.name} (${attribute1.accountNo})`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic getNextTemplateBatch() {\r\n\t\tif (!this.isHaveNextTemplateOption) return;\r\n\r\n\t\tthis.pageNoTemplateOption += 1;\r\n\t\tthis.getTemplateOptionService(null, '', true);\r\n\t}\r\n\r\n\tpublic templateSelectedDisplay(\r\n\t\tattribute1: TemplateWAModel,\r\n\t\tattribute2: TemplateWAModel\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.name == attribute2.name\r\n\t\t\t? `${attribute1.name}`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic updateTemplate(template: TemplateWAModel): void {\r\n\t\tif (!template) return;\r\n\r\n\t\tlet bodyText = template.body.text;\r\n\r\n\t\tif (this.isJsonString(template.body.text)) {\r\n\t\t\tbodyText = JSON.parse(template.body.text).text;\r\n\t\t}\r\n\r\n\t\tthis.form.get('isJSON').setValue(this.isJsonString(template.body.text));\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\r\n\t\tconst findBrackets = bodyText?.match(/{{/g);\r\n\t\tconst formStorage = this.getCampaignStorage?.generalInformation?.form;\r\n\r\n\t\tfindBrackets?.length > 0\r\n\t\t\t? this.form.get('paramBody').setValidators(Validators.required)\r\n\t\t\t: this.form.get('paramBody').clearValidators();\r\n\r\n\t\tfindBrackets?.forEach((_, index) => {\r\n\t\t\tthis.addParamBody(\r\n\t\t\t\tformStorage?.paramBody?.[index]?.name ??\r\n\t\t\t\t\tformStorage?.paramBody?.[index] ??\r\n\t\t\t\t\t''\r\n\t\t\t);\r\n\t\t});\r\n\r\n\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t}\r\n\r\n\tprivate isJsonString(str: string): boolean {\r\n\t\ttry {\r\n\t\t\tJSON.parse(str);\r\n\t\t} catch (e) {\r\n\t\t\treturn false;\r\n\t\t}\r\n\r\n\t\treturn true;\r\n\t}\r\n\r\n\tpublic updateSearch(searchValue: string): void {\r\n\t\tthis.pageNoTemplateOption = 1;\r\n\t\tthis.getTemplateOptionService(null, searchValue);\r\n\t}\r\n\r\n\tpublic updateSearchAccount(searchValue: string): void {\r\n\t\tthis.pageNoAccountOption = 1;\r\n\t\tthis.getAccountOptionService(searchValue);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n\tGeneralInformationSMSMessageValidationConst,\r\n\tMsgTypeWAOptionConst,\r\n} from '../../../../../core/const';\r\nimport { Parameter } from '../../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { TemplateWAModel, WhatsAppAccountDto } from '../../../../models';\r\n\r\n@Component({\r\n\tselector: 'lib-general-information-sms',\r\n\ttemplateUrl: './general-information-sms.component.html',\r\n\tstyleUrls: ['./general-information-sms.component.scss'],\r\n})\r\nexport class GeneralInformationSMSComponent implements OnInit, OnDestroy {\r\n\t@Output()\r\n\tpublic updateGeneralInformationForm: EventEmitter<FormGroup>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic msgTypeWAOption: any[] = [];\r\n\tpublic validationMessages: any;\r\n\tpublic accountOption: WhatsAppAccountDto[] = [];\r\n\tpublic isHaveNextAccountOption: boolean = true;\r\n\tpublic isLoadingAccountOption: boolean = false;\r\n\tpublic templateOption: TemplateWAModel[] = [];\r\n\tpublic isHaveNextTemplateOption: boolean = true;\r\n\tpublic isLoadingTemplateOption: boolean = false;\r\n\tpublic isHaveTemplateParam: boolean = false;\r\n\r\n\tprivate pageNoAccountOption: number = 1;\r\n\tprivate pageNoTemplateOption: number = 1;\r\n\tprivate subscribers: Subscription[] = [];\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\t@Input()\r\n\tset isTouchedForm(status: boolean) {\r\n\t\tif (!this.updateGeneralInformationForm) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t});\r\n\t}\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {\r\n\t\tthis.updateGeneralInformationForm = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.msgTypeWAOption = MsgTypeWAOptionConst.filter(\r\n\t\t\tt => t.code === 'TEXT' || t.code === 'TEMPLATE'\r\n\t\t);\r\n\t\tthis.validationMessages = GeneralInformationSMSMessageValidationConst;\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initDisable();\r\n\t\tthis.initEdit();\r\n\t\tthis.initValidation();\r\n\t\tthis.getAccountOptionService(\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium === 'SMS'\r\n\t\t\t\t? this.getCampaignStorage?.generalInformation?.form?.from?.name\r\n\t\t\t\t: ''\r\n\t\t);\r\n\t}\r\n\r\n\tget getCampaignStorage(): any {\r\n\t\treturn localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tchannel: new FormControl(null, Validators.required),\r\n\t\t\tfrom: new FormControl(null, Validators.required),\r\n\t\t\ttext: new FormControl(null, Validators.required),\r\n\t\t\ttemplate: new FormControl(null, Validators.required),\r\n\t\t\tparamBody: new FormArray([], Validators.required),\r\n\t\t\tisUpload: new FormControl(false),\r\n\t\t\tfileId: new FormControl(''),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tthis.updateGeneralInformationForm.emit(this.form);\r\n\t\t\t});\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tprivate initEdit(): void {\r\n\t\tif (\r\n\t\t\tObject.entries(this.getCampaignStorage).length === 0 ||\r\n\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium !== 'SMS'\r\n\t\t)\r\n\t\t\treturn;\r\n\r\n\t\tthis.form\r\n\t\t\t.get('channel')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.channel\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('from')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.from);\r\n\t\tthis.form\r\n\t\t\t.get('text')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.text);\r\n\t\tthis.form\r\n\t\t\t.get('template')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.template\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('isUpload')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.getCampaignStorage?.generalInformation?.form.isUpload\r\n\t\t\t);\r\n\t\tthis.form\r\n\t\t\t.get('fileId')\r\n\t\t\t.setValue(this.getCampaignStorage?.generalInformation?.form.fileId);\r\n\r\n\t\tthis.isHaveTemplateParam = this.form.get('isUpload').value;\r\n\t\tthis.getTemplateOptionService(\r\n\t\t\tnull,\r\n\t\t\tthis.form.get('template').value?.name\r\n\t\t);\r\n\t}\r\n\r\n\tget getIsTemplate(): boolean {\r\n\t\treturn (\r\n\t\t\tthis.form.get('channel').value &&\r\n\t\t\tthis.form.get('channel').value?.toLowerCase() === 'template'\r\n\t\t);\r\n\t}\r\n\r\n\tprivate initValidation(): void {\r\n\t\tfor (const key in this.form.controls) {\r\n\t\t\tthis.form.controls[key].clearValidators();\r\n\t\t\tthis.form.controls[key].updateValueAndValidity();\r\n\t\t}\r\n\r\n\t\tthis.form.get('channel').setValidators(Validators.required);\r\n\t\tthis.form.get('from').setValidators(Validators.required);\r\n\r\n\t\tif (this.getIsTemplate) {\r\n\t\t\tthis.form.get('template').setValidators(Validators.required);\r\n\t\t\tthis.form.get('paramBody').setValidators(Validators.required);\r\n\t\t\tthis.form.get('template').updateValueAndValidity();\r\n\t\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t\t} else {\r\n\t\t\tthis.form.get('text').setValidators(Validators.required);\r\n\t\t\tthis.form.get('text').updateValueAndValidity();\r\n\t\t}\r\n\t}\r\n\r\n\tpublic formReset(_isMediaType: boolean = false): void {\r\n\t\tthis.form.get('text').reset();\r\n\t\tthis.form.get('template').reset();\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\r\n\t\tthis.initValidation();\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tprivate getAccountOptionService(\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingAccountOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoAccountOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'SMS', 'string'),\r\n\t\t\tthis.initParam('status', 'APPROVED', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/admin/account', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<WhatsAppAccountDto[]>) => {\r\n\t\t\t\tif (!resp.data) return;\r\n\r\n\t\t\t\tthis.accountOption = isInfinite\r\n\t\t\t\t\t? [...this.accountOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextAccountOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingAccountOption = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getTemplateOptionService(\r\n\t\tevent: string = null,\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingTemplateOption = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam('pageNo', this.pageNoTemplateOption, 'number'),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', 'SMS', 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'clientId',\r\n\t\t\t\tthis.form.get('from').value?.clientId,\r\n\t\t\t\t'string'\r\n\t\t\t),\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'wabaId',\r\n\t\t\t\tthis.form.get('from').value?.wabaId ?? '',\r\n\t\t\t\t'string'\r\n\t\t\t),\r\n\t\t];\r\n\r\n\t\tif (this.isReadOnlyMode)\r\n\t\t\tparameterList.push(this.initParam('summary', true, 'string'));\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/message/template', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\t\t\t\tthis.templateOption = isInfinite\r\n\t\t\t\t\t? [...this.templateOption, ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\t\t\t\tthis.isHaveNextTemplateOption = resp.haveNext;\r\n\t\t\t\tthis.isLoadingTemplateOption = false;\r\n\r\n\t\t\t\tconst template = this.templateOption?.find(\r\n\t\t\t\t\tt => t.ID === this.form.get('template').value?.ID\r\n\t\t\t\t);\r\n\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\tthis.form.get('template').setValue(template);\r\n\r\n\t\t\t\t\tif (this.form.get('isUpload').value)\r\n\t\t\t\t\t\treturn this.updateDownloadCSV(\r\n\t\t\t\t\t\t\tthis.form.get('isUpload').value\r\n\t\t\t\t\t\t);\r\n\r\n\t\t\t\t\tthis.updateTemplate(this.form.get('template').value);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tprivate initParameter(value: string = ''): FormGroup {\r\n\t\tconst form = new FormGroup({\r\n\t\t\tname: new FormControl(\r\n\t\t\t\t{\r\n\t\t\t\t\tvalue: value,\r\n\t\t\t\t\tdisabled:\r\n\t\t\t\t\t\tthis.isReadOnlyMode ||\r\n\t\t\t\t\t\t['UnsubscribeAccount'].includes(value),\r\n\t\t\t\t},\r\n\t\t\t\tValidators.required\r\n\t\t\t),\r\n\t\t});\r\n\r\n\t\treturn form;\r\n\t}\r\n\r\n\tget getParamBody(): FormGroup[] {\r\n\t\treturn (this.form.get('paramBody') as FormArray)\r\n\t\t\t.controls as FormGroup[];\r\n\t}\r\n\r\n\tpublic addParamBody(value: string = ''): void {\r\n\t\tconst form = this.initParameter(value);\r\n\t\t(this.form.get('paramBody') as FormArray).push(form);\r\n\t}\r\n\r\n\tpublic getNextAccountBatch() {\r\n\t\tif (!this.isHaveNextAccountOption) return;\r\n\r\n\t\tthis.pageNoAccountOption += 1;\r\n\t\tthis.getAccountOptionService('', true);\r\n\t}\r\n\r\n\tpublic accountSelectedDisplay(\r\n\t\tattribute1: WhatsAppAccountDto,\r\n\t\tattribute2: WhatsAppAccountDto\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.id == attribute2.id\r\n\t\t\t? `${attribute1.name} (${attribute1.accountNo})`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic getNextTemplateBatch() {\r\n\t\tif (!this.isHaveNextTemplateOption) return;\r\n\r\n\t\tthis.pageNoTemplateOption += 1;\r\n\t\tthis.getTemplateOptionService(null, '', true);\r\n\t}\r\n\r\n\tpublic templateSelectedDisplay(\r\n\t\tattribute1: TemplateWAModel,\r\n\t\tattribute2: TemplateWAModel\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.name == attribute2.name\r\n\t\t\t? `${attribute1.name}`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic updateTemplate(template: TemplateWAModel): void {\r\n\t\tif (!template) return;\r\n\r\n\t\tthis.isHaveTemplateParam = template.body.examples?.length > 0;\r\n\r\n\t\ttemplate.body.examples?.length > 0\r\n\t\t\t? this.form.get('paramBody').setValidators(Validators.required)\r\n\t\t\t: this.form.get('paramBody').clearValidators();\r\n\r\n\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\r\n\t\tconst formStorage = this.getCampaignStorage?.generalInformation?.form;\r\n\r\n\t\ttemplate.body.examples?.forEach((each, index) => {\r\n\t\t\tlet paramValue =\r\n\t\t\t\tformStorage?.paramBody?.[index]?.name ??\r\n\t\t\t\tformStorage?.paramBody?.[index] ??\r\n\t\t\t\t'';\r\n\r\n\t\t\tif (['UnsubscribeAccount'].includes(each)) paramValue = each;\r\n\r\n\t\t\tthis.addParamBody(paramValue);\r\n\t\t});\r\n\t}\r\n\r\n\tpublic updateSearch(searchValue: string): void {\r\n\t\tthis.pageNoTemplateOption = 1;\r\n\t\tthis.getTemplateOptionService('', searchValue);\r\n\t}\r\n\r\n\tpublic updateSearchAccount(searchValue: string): void {\r\n\t\tthis.pageNoAccountOption = 1;\r\n\t\tthis.getAccountOptionService(searchValue);\r\n\t}\r\n\r\n\tpublic updateDownloadCSV(isChecked: boolean): void {\r\n\t\tthis.form.get('isUpload').setValue(isChecked);\r\n\r\n\t\tif (isChecked) {\r\n\t\t\t(this.form.get('paramBody') as FormArray).controls = [];\r\n\t\t\t(this.form.get('paramBody') as FormArray).reset();\r\n\t\t\tthis.form.get('paramBody').clearValidators();\r\n\t\t\tthis.form.get('paramBody').updateValueAndValidity();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.updateTemplate(this.form.get('template').value);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","export enum EnumData {\r\n\tGOOGLE_MAP_API_KEY = 'AIzaSyCHReBe_RpzAgLTrUC5QIDyeKttQ817wRY',\r\n\r\n\t// MEDIUM TYPES\r\n\tMEDIUM_TYPE_WHATSAPP = 'WHATSAPP',\r\n\r\n\t// MEDIA TYPE\r\n\tMEDIA_TYPE_IMAGE = 'IMAGE',\r\n\tMEDIA_TYPE_VIDEO = 'VIDEO',\r\n\tMEDIA_TYPE_DOCUMENT = 'DOCUMENT',\r\n\tMEDIA_TYPE_LOCATION = 'LOCATION',\r\n\r\n\t// SCHEDULER TYPES\r\n\tSCHEDULER_TYPE_NOW = 'NOW',\r\n\tSCHEDULER_TYPE_SINGLE = 'SINGLE',\r\n\tSCHEDULER_TYPE_MULTIPLE = 'MULTIPLE',\r\n}\r\n","import { MapsAPILoader } from '@agm/core';\r\nimport {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Input,\r\n NgZone,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n GeneralInformationWAMessageValidationConst,\r\n MediaTypeOptionConst,\r\n MsgTypeWAOptionConst,\r\n} from '../../../../../core/const';\r\nimport { ProductCategoryEnum } from '../../../../../core/enums';\r\nimport { BaseOptionModel } from '../../../../../core/models';\r\nimport { Parameter } from '../../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../../core/services';\r\nimport { generateEnumOption } from '../../../../../core/util';\r\nimport { TemplateWAModel, WhatsAppAccountDto } from '../../../../models';\r\nimport { EnumData } from '../../../../util/enums';\r\n\r\ninterface IMaps {\r\n zoom: number;\r\n latitude: number;\r\n longitude: number;\r\n isDraggable: boolean;\r\n isDoubleClickZoom: boolean;\r\n}\r\n\r\n@Component({\r\n selector: 'lib-general-information-wa',\r\n templateUrl: './general-information-wa.component.html',\r\n styleUrls: ['./general-information-wa.component.scss'],\r\n})\r\nexport class GeneralInformationWAComponent implements OnInit, OnDestroy {\r\n @Output()\r\n public updateGeneralInformationForm: EventEmitter<FormGroup>;\r\n\r\n public form: FormGroup;\r\n public msgTypeWAOption: any[] = [];\r\n public mediaTypeOption: any[] = [];\r\n public categoryOption: BaseOptionModel[];\r\n public accountOption: WhatsAppAccountDto[] = [];\r\n public isHaveNextAccountOption: boolean = true;\r\n public isLoadingAccountOption: boolean = false;\r\n public templateOption: TemplateWAModel[] = [];\r\n public isHaveNextTemplateOption: boolean = true;\r\n public isLoadingTemplateOption: boolean = false;\r\n public isHaveTemplateParam: boolean = false;\r\n public isShowParameter: boolean = false;\r\n public validationMessages: any;\r\n public extFileAccepted: string = 'image/*';\r\n public maps: IMaps;\r\n\r\n private pageNoAccountOption: number = 1;\r\n private pageNoTemplateOption: number = 1;\r\n private subscribers: Subscription[] = [];\r\n private geoCoder: any;\r\n\r\n @Input() public isReadOnlyMode: boolean;\r\n isshowcard: boolean;\r\n categorytemplate: string;\r\n previousCategorytemplate: string;\r\n nametemplate: string;\r\n isHiddencard: boolean;\r\n\r\n @Input()\r\n set isTouchedForm(status: boolean) {\r\n if (!this.updateGeneralInformationForm) {\r\n return;\r\n }\r\n\r\n setTimeout(() => {\r\n this.updateGeneralInformationForm.emit(this.form);\r\n });\r\n }\r\n\r\n @ViewChild('mapSearch') mapSearchRef: ElementRef;\r\n\r\n constructor(\r\n private ngZone: NgZone,\r\n private mapsAPILoader: MapsAPILoader,\r\n private apiAdapterService: ApiAdapterServiceService,\r\n private toastr: ToastrService\r\n ) {\r\n this.updateGeneralInformationForm = new EventEmitter();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.msgTypeWAOption = MsgTypeWAOptionConst;\r\n this.mediaTypeOption = MediaTypeOptionConst;\r\n this.categoryOption = generateEnumOption(ProductCategoryEnum);\r\n this.validationMessages = GeneralInformationWAMessageValidationConst;\r\n this.maps = {\r\n zoom: 15,\r\n latitude: null,\r\n longitude: null,\r\n isDraggable: true,\r\n isDoubleClickZoom: true,\r\n };\r\n\r\n this.initForm();\r\n this.initDisable();\r\n this.initEdit();\r\n this.initValidation();\r\n this.getAccountOptionService(\r\n this.getCampaignStorage?.generalInformation?.form?.medium === 'WA'\r\n ? this.getCampaignStorage?.generalInformation?.form?.from?.name\r\n : ''\r\n );\r\n /* this.setCurrentLocation(); */\r\n }\r\n\r\n get getCampaignStorage(): any {\r\n return localStorage.getItem('telin.campaign')\r\n ? JSON.parse(localStorage.getItem('telin.campaign'))\r\n : {};\r\n }\r\n\r\n private initForm(): void {\r\n this.form = new FormGroup({\r\n channel: new FormControl(null, Validators.required),\r\n media: new FormControl(null),\r\n from: new FormControl(null),\r\n text: new FormControl(null),\r\n fileName: new FormControl(null),\r\n targetURL: new FormControl(null),\r\n fileType: new FormControl(null),\r\n file: new FormControl(null),\r\n latitude: new FormControl(null),\r\n longitude: new FormControl(null),\r\n template: new FormControl(null),\r\n paramHeader: new FormArray([], Validators.required),\r\n paramBody: new FormArray([], Validators.required),\r\n paramButton: new FormArray([], Validators.required),\r\n otpValue: new FormControl(''),\r\n isUpload: new FormControl(false),\r\n fileId: new FormControl(''),\r\n category: new FormControl(null),\r\n product: new FormControl(null),\r\n catalogue: new FormControl(null),\r\n body: new FormControl(null),\r\n });\r\n\r\n this.form.valueChanges.subscribe(() => {\r\n setTimeout(() => {\r\n this.updateGeneralInformationForm.emit(this.form);\r\n });\r\n });\r\n }\r\n\r\n private initDisable(): void {\r\n if (!this.isReadOnlyMode) {\r\n return;\r\n }\r\n\r\n this.form.disable();\r\n }\r\n\r\n private initEdit(): void {\r\n if (\r\n Object.entries(this.getCampaignStorage).length === 0 ||\r\n this.getCampaignStorage?.generalInformation?.form?.medium !== 'WA'\r\n )\r\n return;\r\n\r\n this.form\r\n .get('channel')\r\n .setValue(this.getCampaignStorage?.generalInformation?.form.channel);\r\n this.form.get('media').setValue(this.getCampaignStorage?.generalInformation?.form.media);\r\n this.form.get('from').setValue(this.getCampaignStorage?.generalInformation?.form.from);\r\n this.form.get('text').setValue(this.getCampaignStorage?.generalInformation?.form.text);\r\n this.form\r\n .get('targetURL')\r\n .setValue(this.getCampaignStorage?.generalInformation?.form.targetURL);\r\n this.form\r\n .get('fileName')\r\n .setValue(\r\n this.getCampaignStorage?.generalInformation?.form.fileName ??\r\n this.form.get('targetURL').value\r\n );\r\n this.form\r\n .get('template')\r\n .setValue(this.getCampaignStorage?.generalInformation?.form.template);\r\n this.form\r\n .get('isUpload')\r\n .setValue(this.getCampaignStorage?.generalInformation?.form.isUpload);\r\n this.form.get('fileId').setValue(this.getCampaignStorage?.generalInformation?.form.fileId);\r\n this.form\r\n .get('otpValue')\r\n .setValue(this.getCampaignStorage?.generalInformation?.form.otpValue);\r\n\r\n this.isHaveTemplateParam = this.form.get('isUpload').value;\r\n this.getTemplateOptionService(null, this.form.get('template').value?.name);\r\n }\r\n\r\n private initValidation(): void {\r\n for (const key in this.form.controls) {\r\n this.form.controls[key].clearValidators();\r\n this.form.controls[key].updateValueAndValidity();\r\n }\r\n\r\n this.form.get('channel').setValidators(Validators.required);\r\n\r\n if (this.getIsText) {\r\n this.form.get('from').setValidators(Validators.required);\r\n this.form.get('text').setValidators(Validators.required);\r\n this.form.get('from').updateValueAndValidity();\r\n this.form.get('text').updateValueAndValidity();\r\n } else if (this.getIsMedia) {\r\n this.form.get('media').setValidators(Validators.required);\r\n this.form.get('from').setValidators(Validators.required);\r\n this.form.get('fileName').setValidators(Validators.required);\r\n this.form.get('media').updateValueAndValidity();\r\n this.form.get('from').updateValueAndValidity();\r\n this.form.get('fileName').updateValueAndValidity();\r\n } else if (this.getIsTemplate) {\r\n this.form.get('from').setValidators(Validators.required);\r\n this.form.get('template').setValidators(Validators.required);\r\n this.form.get('paramHeader').setValidators(Validators.required);\r\n this.form.get('paramBody').setValidators(Validators.required);\r\n this.form.get('paramButton').setValidators(Validators.required);\r\n this.form.get('from').updateValueAndValidity();\r\n this.form.get('template').updateValueAndValidity();\r\n this.form.get('paramHeader').updateValueAndValidity();\r\n this.form.get('paramBody').updateValueAndValidity();\r\n this.form.get('paramButton').updateValueAndValidity();\r\n } else if (this.getIsCatalogue) {\r\n this.form.get('from').setValidators(Validators.required);\r\n this.form.get('category').setValidators(Validators.required);\r\n this.form.get('catalogue').setValidators(Validators.required);\r\n this.form.get('product').setValidators(Validators.required);\r\n this.form.get('body').setValidators(Validators.maxLength(100));\r\n this.form.get('from').updateValueAndValidity();\r\n this.form.get('category').updateValueAndValidity();\r\n this.form.get('catalogue').updateValueAndValidity();\r\n this.form.get('product').updateValueAndValidity();\r\n this.form.get('body').updateValueAndValidity();\r\n } else {\r\n this.form.get('from').setValidators(Validators.required);\r\n this.form.get('text').setValidators(Validators.required);\r\n this.form.get('from').updateValueAndValidity();\r\n this.form.get('text').updateValueAndValidity();\r\n }\r\n }\r\n\r\n public formReset(_isMediaType: boolean = false): void {\r\n if (!_isMediaType) {\r\n this.form.get('media').reset();\r\n this.form.get('from').reset();\r\n }\r\n\r\n this.form.get('text').reset();\r\n this.form.get('fileName').reset();\r\n this.form.get('targetURL').reset();\r\n this.form.get('fileType').reset();\r\n this.form.get('file').reset();\r\n this.form.get('latitude').reset();\r\n this.form.get('longitude').reset();\r\n this.form.get('template').reset();\r\n this.form.get('category').reset();\r\n this.form.get('product').reset();\r\n this.form.get('catalogue').reset();\r\n this.form.get('body').reset();\r\n this.form.get('otpValue').reset();\r\n (this.form.get('paramHeader') as FormArray).controls = [];\r\n (this.form.get('paramHeader') as FormArray).reset();\r\n (this.form.get('paramBody') as FormArray).controls = [];\r\n (this.form.get('paramBody') as FormArray).reset();\r\n (this.form.get('paramButton') as FormArray).controls = [];\r\n (this.form.get('paramButton') as FormArray).reset();\r\n\r\n this.initValidation();\r\n }\r\n\r\n private initParam(_name: string, _value: any, _type: string): Parameter {\r\n return {\r\n name: _name,\r\n value: _value,\r\n in: 'query',\r\n type: _type,\r\n };\r\n }\r\n\r\n private getAccountOptionService(filter: string = '', isInfinite: boolean = false): void {\r\n this.isLoadingAccountOption = true;\r\n\r\n const parameterList: Array<Parameter> = [\r\n this.initParam('pageNo', this.pageNoAccountOption, 'number'),\r\n this.initParam('rowPerPage', 20, 'number'),\r\n this.initParam('platform', 'WA', 'string'),\r\n this.initParam('status', 'APPROVED', 'string'),\r\n this.initParam('filter', filter, 'string'),\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/admin/account', 'GET')\r\n .subscribe((resp: AppResponse<WhatsAppAccountDto[]>) => {\r\n if (!resp.data) return;\r\n\r\n this.accountOption = isInfinite ? [...this.accountOption, ...resp.data] : resp.data;\r\n this.isHaveNextAccountOption = resp.haveNext;\r\n this.isLoadingAccountOption = false;\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public getTemplateOptionService(\r\n event: string = null,\r\n filter: string = '',\r\n isInfinite: boolean = false\r\n ): void {\r\n this.isLoadingTemplateOption = true;\r\n\r\n const parameterList: Array<Parameter> = [\r\n this.initParam('pageNo', this.pageNoTemplateOption, 'number'),\r\n this.initParam('rowPerPage', 20, 'number'),\r\n this.initParam('platform', 'WA', 'string'),\r\n this.initParam('filter', filter, 'string'),\r\n this.initParam('status', 'APPROVED', 'string'),\r\n this.initParam('clientId', this.form.get('from').value?.clientId, 'string'),\r\n this.initParam('wabaId', this.form.get('from').value?.wabaId ?? '', 'string'),\r\n ];\r\n\r\n if (this.isReadOnlyMode) parameterList.push(this.initParam('summary', true, 'string'));\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/message/template', 'GET')\r\n .subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\r\n\r\n\r\n this.templateOption = isInfinite\r\n ? [...this.templateOption, ...resp.data]\r\n : resp.data;\r\n\r\n this.isHaveNextTemplateOption = resp.haveNext;\r\n this.isLoadingTemplateOption = false;\r\n\r\n const template = this.templateOption?.find(\r\n (t) => t.ID === this.form.get('template').value?.ID\r\n );\r\n\r\n if (template) {\r\n this.form.get('template').setValue(template);\r\n\r\n if (this.form.get('isUpload').value)\r\n return this.updateDownloadCSV(this.form.get('isUpload').value);\r\n }\r\n this.updateTemplate(this.form.get('template').value);\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private initParameter(isButton: boolean = false, value: string = ''): FormGroup {\r\n const form = isButton\r\n ? new FormGroup({\r\n name: new FormArray([], Validators.required),\r\n })\r\n : new FormGroup({\r\n name: new FormControl(\r\n {\r\n value: value,\r\n disabled: this.isReadOnlyMode || ['$UnsubscribeAccount'].includes(value),\r\n },\r\n Validators.required\r\n ),\r\n });\r\n\r\n return form;\r\n }\r\n\r\n get getParamHeader(): FormGroup[] {\r\n return (this.form.get('paramHeader') as FormArray).controls as FormGroup[];\r\n }\r\n\r\n public addParamHeader(value: string = ''): void {\r\n const form = this.initParameter(false, value);\r\n (this.form.get('paramHeader') as FormArray).push(form);\r\n }\r\n\r\n closeCard() {\r\n this.isHiddencard = true;\r\n }\r\n\r\n get getParamBody(): FormGroup[] {\r\n return (this.form.get('paramBody') as FormArray).controls as FormGroup[];\r\n }\r\n\r\n public addParamBody(value: string = ''): void {\r\n const form = this.initParameter(false, value);\r\n (this.form.get('paramBody') as FormArray).push(form);\r\n }\r\n\r\n get getButton(): FormGroup[] {\r\n return (this.form.get('paramButton') as FormArray).controls as FormGroup[];\r\n }\r\n\r\n public getParamButton(index: number): FormGroup[] {\r\n const form = (this.form.get('paramButton') as FormArray).controls as FormGroup[];\r\n return (form[index].get('name') as FormArray).controls as FormGroup[];\r\n }\r\n\r\n public addParamButton(): void {\r\n const form = this.initParameter(true);\r\n (this.form.get('paramButton') as FormArray).push(form);\r\n }\r\n\r\n get getIsText(): boolean {\r\n return (\r\n this.form.get('channel').value &&\r\n this.form.get('channel').value?.toLowerCase() === 'text'\r\n );\r\n }\r\n\r\n get getIsMedia(): boolean {\r\n return (\r\n this.form.get('channel').value &&\r\n this.form.get('channel').value?.toLowerCase() === 'media'\r\n );\r\n }\r\n\r\n get getIsTemplate(): boolean {\r\n return (\r\n this.form.get('channel').value &&\r\n this.form.get('channel').value?.toLowerCase() === 'template'\r\n );\r\n }\r\n\r\n get getIsCatalogue(): boolean {\r\n return (\r\n this.form.get('channel').value &&\r\n this.form.get('channel').value?.toLowerCase() === 'catalogue'\r\n );\r\n }\r\n\r\n public getNextAccountBatch() {\r\n if (!this.isHaveNextAccountOption) return;\r\n\r\n this.pageNoAccountOption += 1;\r\n this.getAccountOptionService('', true);\r\n }\r\n\r\n public accountSelectedDisplay(\r\n attribute1: WhatsAppAccountDto,\r\n attribute2: WhatsAppAccountDto\r\n ): string {\r\n return attribute1 && attribute2 && attribute1.id == attribute2.id\r\n ? `${attribute1.name} (${attribute1.accountNo})`\r\n : '';\r\n }\r\n\r\n public getNextTemplateBatch() {\r\n if (!this.isHaveNextTemplateOption) return;\r\n\r\n this.pageNoTemplateOption += 1;\r\n this.getTemplateOptionService(null, '', true);\r\n }\r\n\r\n public templateSelectedDisplay(\r\n attribute1: TemplateWAModel,\r\n attribute2: TemplateWAModel\r\n ): string {\r\n return attribute1 && attribute2 && attribute1.name == attribute2.name\r\n ? `${attribute1.name}`\r\n : '';\r\n }\r\n\r\n public onFileSelected(event: Event) {\r\n const file: FileList = (event.target as HTMLInputElement).files;\r\n const accept = this.extFileAccepted.split('/');\r\n let matchType = accept[0];\r\n\r\n if (file.length === 0) return;\r\n\r\n if (this.extFileAccepted === 'application/pdf') matchType = accept[1];\r\n\r\n if (!file[0].type.includes(matchType)) {\r\n this.toastr.error('Sorry, the file you are uploading is not allowed');\r\n return;\r\n }\r\n\r\n if (file[0].size > 10000000) {\r\n this.toastr.error('Upload media failed, max size 10mb');\r\n return;\r\n }\r\n\r\n this.form.get('file').setValue(file[0]);\r\n this.form.get('fileType').setValue('image');\r\n this.form.get('fileName').setValue(file[0].name);\r\n this.form.get('targetURL').setValidators(Validators.required);\r\n this.form.get('targetURL').updateValueAndValidity();\r\n\r\n if (file[0].type.indexOf('video') > -1) this.form.get('fileType').setValue('video');\r\n\r\n this.uploadMediaService();\r\n }\r\n\r\n private uploadMediaService(): void {\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'file',\r\n value: this.form.get('file').value,\r\n in: 'formData',\r\n type: 'object',\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/message/media', 'POST')\r\n .subscribe((resp: AppResponse<any>) => {\r\n this.form.get('targetURL').clearValidators();\r\n this.form.get('targetURL').updateValueAndValidity();\r\n this.form.get('targetURL').setValue(resp.data.targetURL);\r\n this.form.get('file').reset();\r\n\r\n this.toastr.success('Upload media success');\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public updateTemplate(template: TemplateWAModel): void {\r\n this.isShowParameter = false;\r\n\r\n if (!template) return;\r\n\r\n\r\n this.categorytemplate = template.category;\r\n this.previousCategorytemplate = template.previousCategory;\r\n this.nametemplate = template.name;\r\n\r\n \r\n if (this.previousCategorytemplate && this.categorytemplate) {\r\n this.isshowcard = true;\r\n } else if(this.previousCategorytemplate === 'undefined' || this.previousCategorytemplate === '') {\r\n this.isshowcard = false;\r\n }\r\n\r\n this.isHaveTemplateParam =\r\n template.header.examples?.length > 0 ||\r\n template.body.examples?.length > 0 ||\r\n template.buttons?.length > 0;\r\n\r\n if (['image', 'video', 'document'].includes(template?.header?.type?.toLowerCase())) {\r\n this.form\r\n .get('fileName')\r\n .setValue(\r\n this.getCampaignStorage?.generalInformation?.form.fileName ??\r\n this.getCampaignStorage?.generalInformation?.form.targetURL ??\r\n template.header.url\r\n );\r\n this.form\r\n .get('targetURL')\r\n .setValue(\r\n this.getCampaignStorage?.generalInformation?.form.targetURL ??\r\n template.header.url\r\n );\r\n\r\n this.fileTypeChange(template?.header?.type?.toLowerCase());\r\n }\r\n\r\n template.header.examples?.length > 0\r\n ? this.form.get('paramHeader').setValidators(Validators.required)\r\n : this.form.get('paramHeader').clearValidators();\r\n\r\n template.body.examples?.length > 0\r\n ? this.form.get('paramBody').setValidators(Validators.required)\r\n : this.form.get('paramBody').clearValidators();\r\n\r\n template.buttons?.length > 0\r\n ? this.form.get('paramButton').setValidators(Validators.required)\r\n : this.form.get('paramButton').clearValidators();\r\n\r\n (this.form.get('paramHeader') as FormArray).controls = [];\r\n (this.form.get('paramHeader') as FormArray).reset();\r\n this.form.get('paramHeader').updateValueAndValidity();\r\n (this.form.get('paramBody') as FormArray).controls = [];\r\n (this.form.get('paramBody') as FormArray).reset();\r\n this.form.get('paramBody').updateValueAndValidity();\r\n (this.form.get('paramButton') as FormArray).controls = [];\r\n (this.form.get('paramButton') as FormArray).reset();\r\n this.form.get('paramButton').updateValueAndValidity();\r\n this.form.get('otpValue').setValue('');\r\n this.form.get('otpValue').clearValidators();\r\n this.form.get('otpValue').updateValueAndValidity();\r\n\r\n const formStorage = this.getCampaignStorage?.generalInformation?.form;\r\n\r\n if (template.category === 'AUTHENTICATION') {\r\n this.form\r\n .get('otpValue')\r\n .setValue(\r\n formStorage?.otpValue ??\r\n [...(formStorage?.template?.body?.examples ?? [])]?.pop() ??\r\n ''\r\n );\r\n this.form.get('otpValue').setValidators(Validators.required);\r\n this.form.get('otpValue').updateValueAndValidity();\r\n }\r\n\r\n template.header.examples?.forEach((each, index) => {\r\n this.addParamHeader(\r\n formStorage?.paramHeader?.[index]?.name ?? formStorage?.paramHeader?.[index] ?? ''\r\n );\r\n });\r\n\r\n template.body.examples?.forEach((each, index) => {\r\n let paramValue =\r\n formStorage?.paramBody?.[index]?.name ?? formStorage?.paramBody?.[index] ?? '';\r\n\r\n if (['$UnsubscribeAccount'].includes(each)) paramValue = each;\r\n\r\n this.addParamBody(paramValue);\r\n });\r\n\r\n template.buttons?.forEach((each, index) => {\r\n this.addParamButton();\r\n const button = this.getButton;\r\n\r\n if (each.examples?.length > 0) {\r\n each.examples.forEach((_, paramIndex) => {\r\n let form = null;\r\n\r\n if (each.type === 'FLOW') {\r\n form = this.initParameter(false, each.flow_id);\r\n } else {\r\n this.isShowParameter = true;\r\n form = this.initParameter(\r\n false,\r\n formStorage?.paramButton?.[index]?.name?.[paramIndex]?.name ??\r\n formStorage?.paramButton?.[index]?.name?.[paramIndex] ??\r\n formStorage?.paramButton?.[index]?.[paramIndex] ??\r\n ''\r\n );\r\n }\r\n\r\n (button[button.length - 1].get('name') as FormArray).push(form);\r\n });\r\n } else {\r\n button[button.length - 1].get('name').clearValidators();\r\n button[button.length - 1].get('name').updateValueAndValidity();\r\n }\r\n });\r\n }\r\n\r\n public updateMediaType(_mediaType: string): void {\r\n if (_mediaType === EnumData.MEDIA_TYPE_LOCATION) this.initMaps;\r\n\r\n this.formReset(true);\r\n this.fileTypeChange(_mediaType.toLowerCase());\r\n }\r\n\r\n private fileTypeChange(type: string): void {\r\n this.extFileAccepted = 'image/*';\r\n\r\n if (type === EnumData.MEDIA_TYPE_VIDEO.toLowerCase()) {\r\n this.extFileAccepted = 'video/*';\r\n } else if (type === EnumData.MEDIA_TYPE_DOCUMENT.toLowerCase()) {\r\n this.extFileAccepted = 'application/pdf';\r\n }\r\n }\r\n\r\n public updateSearch(searchValue: string): void {\r\n this.pageNoTemplateOption = 1;\r\n this.getTemplateOptionService(null, searchValue);\r\n }\r\n\r\n public updateSearchAccount(searchValue: string): void {\r\n this.pageNoAccountOption = 1;\r\n this.getAccountOptionService(searchValue);\r\n }\r\n\r\n private initMaps(): void {\r\n this.mapsAPILoader.load().then(() => {\r\n this.setCurrentLocation();\r\n\r\n this.geoCoder = new google.maps.Geocoder();\r\n const autocomplete = new google.maps.places.Autocomplete(\r\n this.mapSearchRef.nativeElement\r\n );\r\n autocomplete.addListener('place_changed', () => {\r\n this.ngZone.run(() => {\r\n const place: google.maps.places.PlaceResult = autocomplete.getPlace();\r\n\r\n if (!place.geometry) return;\r\n\r\n this.maps.latitude = place.geometry.location.lat();\r\n this.maps.longitude = place.geometry.location.lng();\r\n this.form.get('latitude').setValue(this.maps.latitude);\r\n this.form.get('longitude').setValue(this.maps.longitude);\r\n });\r\n });\r\n });\r\n }\r\n\r\n private setCurrentLocation() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n if (!this.form.get('longitude').value && !this.form.get('latitude').value) {\r\n this.maps.latitude = position.coords.latitude;\r\n this.maps.longitude = position.coords.longitude;\r\n this.form.get('latitude').setValue(this.maps.latitude);\r\n this.form.get('longitude').setValue(this.maps.longitude);\r\n }\r\n });\r\n }\r\n }\r\n\r\n public markerDragEnd(event: google.maps.MouseEvent) {\r\n if (event.latLng) {\r\n this.maps.latitude = event.latLng.lat();\r\n this.maps.longitude = event.latLng.lng();\r\n this.form.get('latitude').setValue(this.maps.latitude);\r\n this.form.get('longitude').setValue(this.maps.longitude);\r\n }\r\n }\r\n\r\n public updateDownloadCSV(isChecked: boolean): void {\r\n this.form.get('isUpload').setValue(isChecked);\r\n\r\n if (isChecked) {\r\n (this.form.get('paramHeader') as FormArray).controls = [];\r\n (this.form.get('paramHeader') as FormArray).reset();\r\n (this.form.get('paramBody') as FormArray).controls = [];\r\n (this.form.get('paramBody') as FormArray).reset();\r\n (this.form.get('paramButton') as FormArray).controls = [];\r\n (this.form.get('paramButton') as FormArray).reset();\r\n this.form.get('paramHeader').clearValidators();\r\n this.form.get('paramBody').clearValidators();\r\n this.form.get('paramButton').clearValidators();\r\n this.form.get('paramHeader').updateValueAndValidity();\r\n this.form.get('paramBody').updateValueAndValidity();\r\n this.form.get('paramButton').updateValueAndValidity();\r\n this.form.get('otpValue').reset();\r\n this.form.get('otpValue').clearValidators();\r\n this.form.get('otpValue').updateValueAndValidity();\r\n return;\r\n }\r\n\r\n this.updateTemplate(this.form.get('template').value);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribers.forEach((each) => each.unsubscribe());\r\n }\r\n}\r\n","import { AbstractControl, ValidationErrors, ValidatorFn } from '@angular/forms';\r\n\r\nexport function duplicateValidator(\r\n compareArray: any[],\r\n compareProperty: string,\r\n originalValue?: any\r\n): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n const inputValue = control.value ? String(control.value).trim() : '';\r\n\r\n if (!inputValue || (!!originalValue && String(originalValue) === inputValue)) {\r\n return null;\r\n }\r\n\r\n const isDuplicate = compareArray.some(\r\n (data) => inputValue === String(data[compareProperty]).trim()\r\n );\r\n\r\n return isDuplicate ? { duplicateValue: true } : null;\r\n };\r\n}\r\n\r\nexport function intervalTimeValidator(): ValidatorFn {\r\n return (control: AbstractControl): ValidationErrors | null => {\r\n if (!control.value) {\r\n return null;\r\n }\r\n\r\n const number = Number(control.value);\r\n\r\n if (Number.isNaN(number) || number % 1 !== 0 || number < 1) {\r\n return { intervalTime: true };\r\n }\r\n\r\n return null;\r\n };\r\n}\r\n","import { CdkDragDrop, moveItemInArray } from '@angular/cdk/drag-drop';\r\nimport {\r\n\tComponent,\r\n\tEventEmitter,\r\n\tInput,\r\n\tOnDestroy,\r\n\tOnInit,\r\n\tOutput,\r\n} from '@angular/core';\r\nimport { FormArray, FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { Subscription } from 'rxjs';\r\nimport {\r\n\tFailoverMechanismValidationConst,\r\n\tPlatformOptionConst,\r\n\tisHaveNextOption,\r\n\tisLoadingOption,\r\n\toptionList,\r\n\tpageNoOption,\r\n} from '../../../../core/const';\r\nimport { intervalTimeValidator } from '../../../../core/const/form-validators';\r\nimport { Parameter } from '../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../core/services';\r\nimport { TemplateWAModel, WhatsAppAccountDto } from '../../../models';\r\n\r\n@Component({\r\n\tselector: 'lib-failover-mechanism',\r\n\ttemplateUrl: './failover-mechanism.component.html',\r\n\tstyleUrls: ['./failover-mechanism.component.scss'],\r\n})\r\nexport class FailoverMechanismComponent implements OnInit, OnDestroy {\r\n\t@Output()\r\n\tpublic failover: EventEmitter<FormGroup>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic channelOption: any;\r\n\tpublic validationMessages: any;\r\n\tpublic isHaveNextTemplateOption = { ...isHaveNextOption };\r\n\tpublic isLoadingTemplateOption = { ...isLoadingOption };\r\n\tpublic templateOption = { ...optionList };\r\n\tpublic isLoadingAccountOption = { ...isLoadingOption };\r\n\tpublic isHaveNextAccountOption = { ...isHaveNextOption };\r\n\tpublic accountOption = { ...optionList };\r\n\r\n\tprivate subscribers: Subscription[] = [];\r\n\tprivate pageNoTemplateOption = { ...pageNoOption };\r\n\tprivate pageNoAccountOption = { ...pageNoOption };\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\tconstructor(private apiAdapterService: ApiAdapterServiceService) {\r\n\t\tthis.failover = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.validationMessages = FailoverMechanismValidationConst;\r\n\t\tthis.channelOption = [\r\n\t\t\t...PlatformOptionConst,\r\n\t\t\t/* {\r\n icon: '',\r\n inputSvgIcon: 'icon-voice-gray',\r\n image: 'line.png',\r\n label: 'Voice',\r\n value: 'VOICE',\r\n }, */\r\n\t\t].filter(\r\n\t\t\tt =>\r\n\t\t\t\t![\r\n\t\t\t\t\t'LINE',\r\n\t\t\t\t\tthis.getCampaignStorage?.generalInformation?.form?.medium,\r\n\t\t\t\t].includes(t.value)\r\n\t\t);\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initDisable();\r\n\t\tthis.initEdit();\r\n\t\tthis.failover.emit(this.form);\r\n\t}\r\n\r\n\tget getCampaignStorage(): any {\r\n\t\treturn localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\t}\r\n\r\n\tget interval() {\r\n\t\treturn this.form.get('interval');\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tactive: new FormControl(false, Validators.required),\r\n\t\t\ttype: new FormControl(''),\r\n\t\t\tinterval: new FormControl(null),\r\n\t\t\taccounts: new FormArray([]),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tif (this.interval.touched && this.interval.value === 0) {\r\n\t\t\t\tthis.form.get('interval').setErrors({ intervalTime: true });\r\n\t\t\t}\r\n\t\t\tthis.failover.emit(this.form);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tprivate initEdit(): void {\r\n\t\tif (\r\n\t\t\tObject.entries(this.getCampaignStorage).length === 0 ||\r\n\t\t\t!this.getCampaignStorage?.failover\r\n\t\t)\r\n\t\t\treturn;\r\n\r\n\t\tthis.form\r\n\t\t\t.get('active')\r\n\t\t\t.setValue(this.getCampaignStorage?.failover?.active);\r\n\t\tthis.form\r\n\t\t\t.get('type')\r\n\t\t\t.setValue(this.getCampaignStorage?.failover?.type ?? '');\r\n\t\tthis.form\r\n\t\t\t.get('interval')\r\n\t\t\t.setValue(this.getCampaignStorage?.failover?.interval ?? null);\r\n\r\n\t\tthis.activeChange(this.getCampaignStorage?.failover?.active);\r\n\t\tthis.validationAccount();\r\n\t}\r\n\r\n\tprivate initAccount(data: any = null, _channel: any = null): FormGroup {\r\n\t\tconst form = new FormGroup({\r\n\t\t\tchannel: new FormControl(_channel),\r\n\t\t\tplatform: new FormControl(_channel?.value),\r\n\t\t\taccountId: new FormControl(\r\n\t\t\t\t{\r\n\t\t\t\t\tvalue:\r\n\t\t\t\t\t\tdata?.accountId && typeof data?.accountId === 'string'\r\n\t\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t\t\tid: data?.accountId,\r\n\t\t\t\t\t\t\t\t\tname: data?.accountName,\r\n\t\t\t\t\t\t\t }\r\n\t\t\t\t\t\t\t: data?.accountId ?? '',\r\n\t\t\t\t\tdisabled: this.isReadOnlyMode,\r\n\t\t\t\t},\r\n\t\t\t\tValidators.required\r\n\t\t\t),\r\n\t\t\taccountName: new FormControl(data?.accountName ?? ''),\r\n\t\t\tsubject: new FormControl({\r\n\t\t\t\tvalue: data?.subject ?? '',\r\n\t\t\t\tdisabled: this.isReadOnlyMode,\r\n\t\t\t}),\r\n\t\t\ttemplate: new FormControl({\r\n\t\t\t\tvalue: data?.template ?? '',\r\n\t\t\t\tdisabled: this.isReadOnlyMode,\r\n\t\t\t}),\r\n\t\t\tparamBody: new FormArray([]),\r\n\t\t});\r\n\r\n\t\treturn form;\r\n\t}\r\n\r\n\tget getAccount(): FormGroup[] {\r\n\t\treturn (this.form.get('accounts') as FormArray).controls as FormGroup[];\r\n\t}\r\n\r\n\tpublic addAccount(data: any = null, channel: any = null): void {\r\n\t\tconst form = this.initAccount(data, channel);\r\n\t\t(this.form.get('accounts') as FormArray).push(form);\r\n\r\n\t\tthis.getAccountOptionService(channel?.value, data?.accountName ?? '');\r\n\t\tthis.getTemplateOptionService(channel?.value, {}, data?.template?.name);\r\n\t}\r\n\r\n\tprivate initParameter(): FormGroup {\r\n\t\tconst form = new FormGroup({\r\n\t\t\tname: new FormControl('', Validators.required),\r\n\t\t});\r\n\r\n\t\treturn form;\r\n\t}\r\n\r\n\tpublic getParamBody(account: FormGroup): FormGroup[] {\r\n\t\treturn (account.get('paramBody') as FormArray).controls as FormGroup[];\r\n\t}\r\n\r\n\tpublic addParamBody(account: FormGroup): void {\r\n\t\tconst form = this.initParameter();\r\n\t\t(account.get('paramBody') as FormArray).push(form);\r\n\t}\r\n\r\n\tpublic deleteParamBody(account: FormGroup, index: number): void {\r\n\t\t(account.get('paramBody') as FormArray).removeAt(index);\r\n\t}\r\n\r\n\tprivate initParam(_name: string, _value: any, _type: string): Parameter {\r\n\t\treturn {\r\n\t\t\tname: _name,\r\n\t\t\tvalue: _value,\r\n\t\t\tin: 'query',\r\n\t\t\ttype: _type,\r\n\t\t};\r\n\t}\r\n\r\n\tprivate getAccountOptionService(\r\n\t\tplatform: string,\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingAccountOption[platform] = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'pageNo',\r\n\t\t\t\tthis.pageNoAccountOption[platform],\r\n\t\t\t\t'number'\r\n\t\t\t),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('status', 'APPROVED', 'string'),\r\n\t\t\tthis.initParam('platform', platform, 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t];\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/admin/account', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<WhatsAppAccountDto[]>) => {\r\n\t\t\t\tif (!resp.data) return;\r\n\r\n\t\t\t\tthis.accountOption[platform] = isInfinite\r\n\t\t\t\t\t? [...this.accountOption[platform], ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\r\n\t\t\t\tthis.isHaveNextAccountOption[platform] = resp.haveNext;\r\n\t\t\t\tthis.isLoadingAccountOption[platform] = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getTemplateOptionService(\r\n\t\tplatform: string,\r\n\t\taccount: any,\r\n\t\tfilter: string = '',\r\n\t\tisInfinite: boolean = false\r\n\t): void {\r\n\t\tthis.isLoadingTemplateOption[platform] = true;\r\n\r\n\t\tconst parameterList: Array<Parameter> = [\r\n\t\t\tthis.initParam(\r\n\t\t\t\t'pageNo',\r\n\t\t\t\tthis.pageNoTemplateOption[platform],\r\n\t\t\t\t'number'\r\n\t\t\t),\r\n\t\t\tthis.initParam('rowPerPage', 20, 'number'),\r\n\t\t\tthis.initParam('platform', platform, 'string'),\r\n\t\t\tthis.initParam('filter', filter, 'string'),\r\n\t\t\tthis.initParam('clientId', account?.clientId ?? '', 'string'),\r\n\t\t\tthis.initParam('wabaId', account?.wabaId ?? '', 'string'),\r\n\t\t];\r\n\r\n\t\tif (platform === 'WA')\r\n\t\t\tparameterList.push(this.initParam('status', 'APPROVED', 'string'));\r\n\r\n\t\tconst subs = this.apiAdapterService\r\n\t\t\t.executeApiRequest(parameterList, '/message/template', 'GET')\r\n\t\t\t.subscribe((resp: AppResponse<TemplateWAModel[]>) => {\r\n\t\t\t\tthis.templateOption[platform] = isInfinite\r\n\t\t\t\t\t? [...this.templateOption[platform], ...resp.data]\r\n\t\t\t\t\t: resp.data;\r\n\r\n\t\t\t\tthis.isHaveNextTemplateOption[platform] = resp.haveNext;\r\n\t\t\t\tthis.isLoadingTemplateOption[platform] = false;\r\n\t\t\t});\r\n\r\n\t\tthis.subscribers.push(subs);\r\n\t}\r\n\r\n\tpublic getNextAccountBatch(platform: string) {\r\n\t\tif (!this.isHaveNextAccountOption[platform]) return;\r\n\r\n\t\tthis.pageNoAccountOption[platform] += 1;\r\n\t\tthis.getAccountOptionService(platform, '', true);\r\n\t}\r\n\r\n\tpublic accountSelectedDisplay(\r\n\t\tattribute1: WhatsAppAccountDto,\r\n\t\tattribute2: WhatsAppAccountDto\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.id == attribute2.id\r\n\t\t\t? `${attribute1.name} (${attribute1.accountNo})`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic templateSelectedDisplay(\r\n\t\tattribute1: TemplateWAModel,\r\n\t\tattribute2: TemplateWAModel\r\n\t): string {\r\n\t\treturn attribute1 && attribute2 && attribute1.name == attribute2.name\r\n\t\t\t? `${attribute1.name}`\r\n\t\t\t: '';\r\n\t}\r\n\r\n\tpublic getNextTemplateBatch(platform: string, account: any) {\r\n\t\tif (!this.isHaveNextTemplateOption[platform]) return;\r\n\r\n\t\tthis.pageNoTemplateOption[platform] += 1;\r\n\t\tthis.getTemplateOptionService(platform, account, '', true);\r\n\t}\r\n\r\n\tpublic updateSearch(\r\n\t\tsearchValue: string,\r\n\t\tplatform: string,\r\n\t\taccount: any\r\n\t): void {\r\n\t\tthis.pageNoTemplateOption[platform] = 1;\r\n\t\tthis.getTemplateOptionService(platform, account, searchValue);\r\n\t}\r\n\r\n\tpublic updateSearchAccount(searchValue: string, platform: string): void {\r\n\t\tthis.pageNoAccountOption[platform] = 1;\r\n\t\tthis.getAccountOptionService(platform, searchValue);\r\n\t}\r\n\r\n\tpublic activeChange(_active: boolean): void {\r\n\t\tthis.form\r\n\t\t\t.get('type')\r\n\t\t\t.setValue(this.getCampaignStorage?.failover?.type ?? '');\r\n\t\tthis.form.get('type').setValidators(Validators.required);\r\n\t\tthis.form.get('type').updateValueAndValidity();\r\n\r\n\t\tif (_active) {\r\n\t\t\tconst accounts =\r\n\t\t\t\tthis.getCampaignStorage?.failover?.accounts?.filter(\r\n\t\t\t\t\t(t: any) =>\r\n\t\t\t\t\t\tt.platform !==\r\n\t\t\t\t\t\tthis.getCampaignStorage?.generalInformation?.form\r\n\t\t\t\t\t\t\t?.medium\r\n\t\t\t\t);\r\n\r\n\t\t\tif (accounts) {\r\n\t\t\t\taccounts.map(account =>\r\n\t\t\t\t\tthis.addAccount(\r\n\t\t\t\t\t\taccount,\r\n\t\t\t\t\t\tthis.channelOption.find(\r\n\t\t\t\t\t\t\t(t: any) => t.value === account.platform\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t)\r\n\t\t\t\t);\r\n\r\n\t\t\t\tthis.channelOption\r\n\t\t\t\t\t.filter((t: any) => {\r\n\t\t\t\t\t\treturn !accounts.find((account: any) => {\r\n\t\t\t\t\t\t\treturn account.platform === t.value;\r\n\t\t\t\t\t\t});\r\n\t\t\t\t\t})\r\n\t\t\t\t\t.map(channel => this.addAccount({}, channel));\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\r\n\t\t\tthis.channelOption.map(channel => this.addAccount({}, channel));\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.get('type').clearValidators();\r\n\t\tthis.form.get('type').updateValueAndValidity();\r\n\t\t(this.form.get('accounts') as FormArray).controls = [];\r\n\t\t(this.form.get('accounts') as FormArray).reset();\r\n\t\tthis.form.get('accounts').updateValueAndValidity();\r\n\r\n\t\tthis.typeChange('Status');\r\n\t}\r\n\r\n\tpublic typeChange(_type: string): void {\r\n\t\tif (_type === 'Time') {\r\n\t\t\tthis.form\r\n\t\t\t\t.get('interval')\r\n\t\t\t\t.setValue(this.getCampaignStorage?.failover?.interval ?? null);\r\n\t\t\tthis.form\r\n\t\t\t\t.get('interval')\r\n\t\t\t\t.setValidators([Validators.required, intervalTimeValidator()]);\r\n\t\t\tthis.form.get('interval').updateValueAndValidity();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.get('interval').clearValidators();\r\n\t\tthis.form.get('interval').updateValueAndValidity();\r\n\t}\r\n\r\n\tpublic validationAccount(\r\n\t\taccount: WhatsAppAccountDto = null,\r\n\t\taccountControl: FormGroup = null\r\n\t): void {\r\n\t\taccountControl\r\n\t\t\t?.get('accountName')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.accountOption[accountControl.get('platform').value].find(\r\n\t\t\t\t\tt => t.id === account?.id\r\n\t\t\t\t)?.name ?? ''\r\n\t\t\t);\r\n\r\n\t\tconst isChooseAccount = this.getAccount.filter(\r\n\t\t\tcontrol => control.get('accountId').value\r\n\t\t);\r\n\r\n\t\tthis.getAccount.forEach(control => {\r\n\t\t\tcontrol.get('accountId').setValidators(Validators.required);\r\n\t\t\tcontrol.get('subject').setValidators(Validators.required);\r\n\t\t\tcontrol.get('template').setValidators(Validators.required);\r\n\r\n\t\t\tif (\r\n\t\t\t\t!control.get('accountId').value &&\r\n\t\t\t\tisChooseAccount?.length > 0\r\n\t\t\t) {\r\n\t\t\t\tcontrol.get('accountId').clearValidators();\r\n\t\t\t\tcontrol.get('subject').setValue('');\r\n\t\t\t\tcontrol.get('subject').clearValidators();\r\n\t\t\t\tcontrol.get('template').setValue('');\r\n\t\t\t\tcontrol.get('template').clearValidators();\r\n\t\t\t} else if (\r\n\t\t\t\t['WA', 'SMS', 'VOICE'].includes(control.get('platform').value)\r\n\t\t\t) {\r\n\t\t\t\tcontrol.get('subject').clearValidators();\r\n\t\t\t}\r\n\r\n\t\t\tcontrol.get('accountId').updateValueAndValidity();\r\n\t\t\tcontrol.get('subject').updateValueAndValidity();\r\n\t\t\tcontrol.get('template').updateValueAndValidity();\r\n\t\t});\r\n\r\n\t\tif (accountControl)\r\n\t\t\tthis.getTemplateOptionService(\r\n\t\t\t\taccountControl.get('platform').value,\r\n\t\t\t\taccountControl.get('accountId').value\r\n\t\t\t);\r\n\t}\r\n\r\n\tpublic drop(event: CdkDragDrop<any[]>) {\r\n\t\tmoveItemInArray(\r\n\t\t\tthis.getAccount,\r\n\t\t\tevent.previousIndex,\r\n\t\t\tevent.currentIndex\r\n\t\t);\r\n\r\n\t\tthis.failover.emit(this.form);\r\n\t}\r\n\r\n\tngOnDestroy(): void {\r\n\t\tthis.subscribers.forEach(each => each.unsubscribe());\r\n\t}\r\n}\r\n","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { DomSanitizer } from '@angular/platform-browser';\r\nimport { SegmentedMessage } from 'sms-segments-calculator';\r\nimport {\r\n\tGeneralInformationMessageValidationConst,\r\n\tPlatformOptionConst,\r\n} from '../../../../core/const';\r\n\r\ninterface IMaps {\r\n\tzoom: number;\r\n\tlatitude: number;\r\n\tlongitude: number;\r\n\tisDraggable: boolean;\r\n\tisDoubleClickZoom: boolean;\r\n}\r\n\r\n@Component({\r\n\tselector: 'lib-new-campaign-general-information',\r\n\ttemplateUrl: './general-information.component.html',\r\n\tstyleUrls: ['./general-information.component.scss'],\r\n})\r\nexport class GeneralInformationComponent implements OnInit {\r\n\t@Output()\r\n\tpublic generalInformation: EventEmitter<{\r\n\t\tparent: FormGroup;\r\n\t\tchild: FormGroup;\r\n\t}>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic channelOption: any[];\r\n\tpublic generalInformationForm: FormGroup;\r\n\tpublic isTouchedWAForm: boolean = false;\r\n\tpublic isTouchedSMSForm: boolean = false;\r\n\tpublic isTouchedEmailForm: boolean = false;\r\n\tpublic isShowMore: boolean = false;\r\n\tpublic validationMessages: any;\r\n\tpublic maps: IMaps;\r\n\tpublic twilioResultCounter = {\r\n\t\tsegments: 0,\r\n\t\tcharacters: 0,\r\n\t\tencoding: '',\r\n\t\tfulltext: `Encode - / Chars 0 / Segment 1`,\r\n\t};\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\tconstructor(private sanitizer: DomSanitizer) {\r\n\t\tthis.generalInformation = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.channelOption = PlatformOptionConst;\r\n\t\tthis.validationMessages = GeneralInformationMessageValidationConst;\r\n\t\tthis.maps = {\r\n\t\t\tzoom: 15,\r\n\t\t\tlatitude: null,\r\n\t\t\tlongitude: null,\r\n\t\t\tisDraggable: true,\r\n\t\t\tisDoubleClickZoom: true,\r\n\t\t};\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initEdit();\r\n\t\tthis.initDisable();\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tid: new FormControl(null),\r\n\t\t\tcampaignName: new FormControl(null, [\r\n\t\t\t\tValidators.required,\r\n\t\t\t\tValidators.maxLength(100),\r\n\t\t\t]),\r\n\t\t\tmedium: new FormControl(null, [Validators.required]),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tthis.isTouchedWAForm = !this.isTouchedWAForm;\r\n\t\t\tthis.isTouchedSMSForm = !this.isTouchedSMSForm;\r\n\t\t\tthis.isTouchedEmailForm = !this.isTouchedEmailForm;\r\n\r\n\t\t\tthis.generalInformation.emit({\r\n\t\t\t\tparent: this.form,\r\n\t\t\t\tchild: this.generalInformationForm,\r\n\t\t\t});\r\n\t\t});\r\n\t\tsetInterval(() => {\r\n\t\t\tthis.onCheckTwilioCounter();\r\n\t\t}, 400);\r\n\t}\r\n\r\n\tprivate initEdit(): void {\r\n\t\tconst campaign = localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\r\n\t\tif (Object.entries(campaign).length === 0) return;\r\n\r\n\t\tthis.form.get('id').setValue(campaign?.generalInformation?.id);\r\n\t\tthis.form\r\n\t\t\t.get('campaignName')\r\n\t\t\t.setValue(campaign?.generalInformation?.form.campaignName);\r\n\t\tthis.form\r\n\t\t\t.get('medium')\r\n\t\t\t.setValue(campaign?.generalInformation?.form.medium);\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tpublic updateGeneralInformationForm(form: FormGroup): void {\r\n\t\tthis.generalInformationForm = form;\r\n\t\tthis.isShowMore = false;\r\n\r\n\t\tthis.generalInformation.emit({\r\n\t\t\tparent: this.form,\r\n\t\t\tchild: this.generalInformationForm,\r\n\t\t});\r\n\r\n\t\tif (this.getMedia === 'LOCATION') this.getLocation();\r\n\t}\r\n\r\n\tget getHeader(): string {\r\n\t\treturn this.generalInformationForm?.getRawValue()?.from?.name || '';\r\n\t}\r\n\r\n\tget getBodyString(): string {\r\n\t\tconst body =\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.text ||\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.template?.body?.text ||\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.body?.text;\r\n\r\n\t\treturn (\r\n\t\t\tbody\r\n\t\t\t\t?.split(/\\\\n|\\n/)\r\n\t\t\t\t.join('<br />')\r\n\t\t\t\t.split(/\\\\t|\\t/)\r\n\t\t\t\t.join(' ') ?? ''\r\n\t\t);\r\n\t}\r\n\r\n\tget getBody(): any {\r\n\t\tconst body =\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.text ||\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.template?.body?.text ||\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.body?.text;\r\n\r\n\t\treturn this.sanitizer.bypassSecurityTrustHtml(\r\n\t\t\tthis.fixGeneratedHtml(\r\n\t\t\t\tbody\r\n\t\t\t\t\t?.split(/\\\\n|\\n/)\r\n\t\t\t\t\t.join('<br />')\r\n\t\t\t\t\t.split(/\\\\t|\\t/)\r\n\t\t\t\t\t.join(' ') ?? ''\r\n\t\t\t)\r\n\t\t);\r\n\t}\r\n\r\n\tget getMedia(): string {\r\n\t\treturn this.generalInformationForm?.getRawValue()?.media || '';\r\n\t}\r\n\r\n\tget getTemplate(): any {\r\n\t\treturn this.generalInformationForm?.getRawValue()?.template || {};\r\n\t}\r\n\r\n\tget getTemplateButton(): any {\r\n\t\tconst limit =\r\n\t\t\t!this.isShowMore && this.getTemplate?.buttons?.length > 3\r\n\t\t\t\t? 2\r\n\t\t\t\t: this.getTemplate?.buttons?.length;\r\n\r\n\t\treturn [...this.getTemplate?.buttons].splice(0, limit) || [];\r\n\t}\r\n\r\n\tget displayFile(): string {\r\n\t\treturn (\r\n\t\t\t(\r\n\t\t\t\tthis.generalInformationForm?.getRawValue()?.targetURL ||\r\n\t\t\t\tthis.generalInformationForm?.getRawValue()?.template?.header\r\n\t\t\t\t\t?.url\r\n\t\t\t)?.replace('adlsandbox.com', 'adlsandbox.net') ?? ''\r\n\t\t);\r\n\t}\r\n\r\n\t/* LINE */\r\n\tget isText(): boolean {\r\n\t\treturn this.generalInformationForm?.getRawValue()?.channel === 'TEXT';\r\n\t}\r\n\r\n\tget isJSON(): boolean {\r\n\t\treturn this.generalInformationForm?.getRawValue()?.isJSON;\r\n\t}\r\n\r\n\tget getTemplateLine(): any {\r\n\t\treturn this.isJSON\r\n\t\t\t? JSON.parse(\r\n\t\t\t\t\tthis.generalInformationForm?.getRawValue()?.template?.body\r\n\t\t\t\t\t\t?.text\r\n\t\t\t )\r\n\t\t\t: this.generalInformationForm?.getRawValue()?.template?.body?.text;\r\n\t}\r\n\t/* ./ LINE */\r\n\r\n\tprivate getLocation(): void {\r\n\t\tthis.maps.latitude =\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.latitude;\r\n\t\tthis.maps.longitude =\r\n\t\t\tthis.generalInformationForm?.getRawValue()?.longitude;\r\n\t}\r\n\r\n\tprivate fixGeneratedHtml(htmlString) {\r\n\t\treturn htmlString\r\n\t\t\t.replaceAll(/div src=\"http/g, 'img src=\"http')\r\n\t\t\t.replaceAll(/div src=\"data:image/g, 'img src=\"data:image')\r\n\t\t\t.replaceAll(/Drag and drop your image here/g, '');\r\n\t}\r\n\r\n\tpublic onCheckTwilioCounter = (): void => {\r\n\t\tconst valuesGeneral = this.generalInformationForm?.getRawValue();\r\n\t\tif (valuesGeneral?.channel === 'TEXT') {\r\n\t\t\tconst segmentedMessage = new SegmentedMessage(this.getBodyString);\r\n\t\t\tconst result = {\r\n\t\t\t\tsegments: segmentedMessage.segmentsCount,\r\n\t\t\t\tencoding: segmentedMessage.encodingName,\r\n\t\t\t\tcharacters: segmentedMessage.numberOfUnicodeScalars,\r\n\t\t\t};\r\n\r\n\t\t\tthis.twilioResultCounter = {\r\n\t\t\t\t...result,\r\n\t\t\t\tfulltext: `Encode ${result.encoding} / Chars ${result.characters} / Segment ${result.segments}`,\r\n\t\t\t};\r\n\t\t} else {\r\n\t\t\tlet valueResult = this.getBodyString;\r\n\t\t\tArray.from(valuesGeneral?.template?.body?.examples || []).map(\r\n\t\t\t\t(entry, index) => {\r\n\t\t\t\t\tconst placeholder = `{{${entry}}}`;\r\n\t\t\t\t\tconst value = valuesGeneral.paramBody[index]?.name;\r\n\t\t\t\t\tvalueResult = valueResult.split(placeholder).join(value);\r\n\t\t\t\t}\r\n\t\t\t);\r\n\r\n\t\t\tconst segmentedMessage = new SegmentedMessage(valueResult);\r\n\t\t\tconst result = {\r\n\t\t\t\tsegments: segmentedMessage.segmentsCount,\r\n\t\t\t\tencoding: segmentedMessage.encodingName,\r\n\t\t\t\tcharacters: segmentedMessage.numberOfUnicodeScalars,\r\n\t\t\t};\r\n\r\n\t\t\tthis.twilioResultCounter = {\r\n\t\t\t\t...result,\r\n\t\t\t\tfulltext: `Encode ${result.encoding} / Chars ${result.characters} / Segment ${result.segments}`,\r\n\t\t\t};\r\n\t\t}\r\n\t};\r\n}\r\n","import { SelectionModel } from '@angular/cdk/collections';\r\nimport {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n OnDestroy,\r\n OnInit,\r\n Output,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Subscription } from 'rxjs';\r\nimport { HttpBodyReqPaginationModel } from '../../../../core/models';\r\nimport { Parameter } from '../../../../core/models/util/api-adapter-service-models';\r\nimport { AppResponse } from '../../../../core/models/util/api-dto/response-models';\r\nimport { ApiAdapterServiceService } from '../../../../core/services';\r\nimport { downloadBlobFile } from '../../../../core/util';\r\nimport { ContactCategoryModel } from '../../../models';\r\nimport { TableModel } from '../../campaign-index/models';\r\n\r\n@Component({\r\n selector: 'lib-new-number-bases',\r\n templateUrl: './new-number-bases.component.html',\r\n styleUrls: ['./new-number-bases.component.scss'],\r\n})\r\nexport class NewNumberBasesComponent implements OnInit, OnDestroy {\r\n @Output()\r\n public targetAudience: EventEmitter<{\r\n targetAudience: string[];\r\n numberCount: number;\r\n isUpload: boolean;\r\n file: any;\r\n }>;\r\n\r\n public table: TableModel;\r\n public isUpload: boolean = false;\r\n public isLoading: boolean = false;\r\n public isShowUploadCSV: boolean = false;\r\n public categorySelected: ContactCategoryModel[] = [];\r\n public selection = new SelectionModel<ContactCategoryModel>(true, []);\r\n public extFileAccepted: string[] = [\r\n 'application/vnd.ms-excel',\r\n 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',\r\n '.csv',\r\n ];\r\n public fileSelected: {\r\n name: string;\r\n targetURL: string;\r\n } = null;\r\n\r\n private categoryParam: HttpBodyReqPaginationModel;\r\n private subscribers: Subscription[] = [];\r\n\r\n @Input() public isReadOnlyMode: boolean;\r\n\r\n @ViewChild(MatSort) matSort: MatSort;\r\n\r\n constructor(\r\n private apiAdapterService: ApiAdapterServiceService,\r\n private toastr: ToastrService\r\n ) {\r\n this.targetAudience = new EventEmitter();\r\n }\r\n\r\n ngOnInit(): void {\r\n this.categoryParam = new HttpBodyReqPaginationModel();\r\n\r\n this.initTable();\r\n this.getCategoryList();\r\n\r\n this.targetAudience.emit({\r\n targetAudience: [],\r\n numberCount: 0,\r\n isUpload: this.getCampaignStorage?.generalInformation?.form?.isUpload,\r\n file: {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n },\r\n });\r\n }\r\n\r\n private initTable(): void {\r\n this.table = new TableModel();\r\n this.table.labels = [\r\n 'select',\r\n 'Category',\r\n 'No. Of Customer',\r\n 'Created Date',\r\n 'Updated Date',\r\n ];\r\n this.table.columns = ['select', 'name', 'totalMembers', 'createdDate', 'updatedDate'];\r\n }\r\n\r\n get getCampaignStorage(): any {\r\n return localStorage.getItem('telin.campaign')\r\n ? JSON.parse(localStorage.getItem('telin.campaign'))\r\n : {};\r\n }\r\n\r\n private initEdit(): void {\r\n if (Object.entries(this.getCampaignStorage).length === 0) return;\r\n\r\n this.isShowUploadCSV = this.getCampaignStorage?.generalInformation?.form?.isUpload;\r\n\r\n this.fileSelected = {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n };\r\n\r\n this.table.dataSource.data?.forEach((each) => {\r\n if (this.getCampaignStorage?.targetAudience?.includes(each.id))\r\n this.onChecked(true, each);\r\n });\r\n }\r\n\r\n private getCategoryList(filter: string = ''): void {\r\n this.isLoading = true;\r\n\r\n if (this.isReadOnlyMode) this.categoryParam.pageSize = 1000;\r\n\r\n const parameterList: Array<Parameter> = [\r\n this.initParam('pageNo', this.categoryParam.pageNo, 'number'),\r\n this.initParam('rowPerPage', this.categoryParam.pageSize, 'number'),\r\n this.initParam('filter', filter, 'string'),\r\n this.initParam(\r\n 'platform',\r\n this.getCampaignStorage?.generalInformation?.form?.medium,\r\n 'string'\r\n ),\r\n ];\r\n\r\n if (this.getCampaignStorage?.generalInformation?.form?.medium === 'LINE')\r\n parameterList.push(\r\n this.initParam(\r\n 'accountId',\r\n this.getCampaignStorage?.generalInformation?.form?.from?.id,\r\n 'string'\r\n )\r\n );\r\n\r\n if (this.isReadOnlyMode) parameterList.push(this.initParam('summary', true, 'string'));\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/admin/category', 'GET')\r\n .subscribe((resp: AppResponse<ContactCategoryModel[]>) => {\r\n if (this.isReadOnlyMode) {\r\n this.table.dataSource.data = resp.data?.filter((each) =>\r\n this.getCampaignStorage?.targetAudience?.includes(each.id)\r\n );\r\n\r\n this.categorySelected = this.table.dataSource.data;\r\n this.isLoading = false;\r\n this.initEdit();\r\n return;\r\n }\r\n\r\n this.table.dataSource.data = resp.data;\r\n this.table.setNextPage(resp.haveNext);\r\n this.isLoading = false;\r\n this.initEdit();\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private initParam(_name: string, _value: any, _type: string): Parameter {\r\n return {\r\n name: _name,\r\n value: _value,\r\n in: 'query',\r\n type: _type,\r\n };\r\n }\r\n\r\n public updateSearch(searchValue: string): void {\r\n this.table.resetPage();\r\n this.categoryParam.pageNo = this.table.page;\r\n this.getCategoryList(searchValue);\r\n }\r\n\r\n public updatePage(event: any): void {\r\n if (this.table.pageSize !== event?.pageSize) this.table.resetPage();\r\n\r\n this.table.page =\r\n this.table.pageSize !== event?.pageSize ? this.table.page : event?.pageIndex + 1;\r\n this.table.pageSize = event?.pageSize;\r\n this.categoryParam.pageNo = this.table.page;\r\n this.categoryParam.pageSize = this.table.pageSize;\r\n\r\n this.getCategoryList();\r\n }\r\n\r\n public sort(): void {\r\n this.table.dataSource.sort = this.matSort;\r\n }\r\n\r\n public checkboxLabel(row?: ContactCategoryModel): string {\r\n if (!row) return `${this.isAllSelected() ? 'deselect' : 'select'} all`;\r\n\r\n return `${this.selection.isSelected(row) ? 'deselect' : 'select'} row ${row.name + 1}`;\r\n }\r\n\r\n public isAllSelected() {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.table.dataSource.data?.length ?? 0;\r\n\r\n if (\r\n this.table.dataSource.data &&\r\n this.table.dataSource.data.length > 0 &&\r\n this.selection.selected &&\r\n this.selection.selected.length > 0\r\n ) {\r\n for (const data of this.table.dataSource.data) {\r\n if (this.selection.selected.filter((t) => t.id === data.id).length > 0) continue;\r\n\r\n return false;\r\n }\r\n }\r\n\r\n return numSelected === numRows;\r\n }\r\n\r\n public masterToggle(isChecked: boolean) {\r\n if (!isChecked) {\r\n this.selection.clear();\r\n this.categorySelected = [];\r\n\r\n this.targetAudience.emit({\r\n targetAudience: [],\r\n numberCount: 0,\r\n isUpload: this.isShowUploadCSV,\r\n file: {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n },\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.selection.select(...this.table.dataSource.data);\r\n this.categorySelected = this.selection.selected;\r\n\r\n this.targetAudience.emit({\r\n targetAudience: this.categorySelected.map((t) => t.id),\r\n numberCount: this.categorySelected.reduce((sum, x) => sum + x.totalMembers, 0),\r\n isUpload: this.isShowUploadCSV,\r\n file: {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n },\r\n });\r\n }\r\n\r\n public onChecked(isChecked: boolean, row: ContactCategoryModel) {\r\n if (!isChecked) {\r\n this.selection.deselect(...this.selection.selected.filter((x) => x.id === row.id));\r\n this.categorySelected = this.selection.selected;\r\n\r\n this.targetAudience.emit({\r\n targetAudience: this.categorySelected.map((t) => t.id),\r\n numberCount: this.categorySelected.reduce((sum, x) => sum + x.totalMembers, 0),\r\n isUpload: this.isShowUploadCSV,\r\n file: {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n },\r\n });\r\n\r\n return;\r\n }\r\n\r\n this.selection.select(row);\r\n this.categorySelected = this.selection.selected;\r\n\r\n this.targetAudience.emit({\r\n targetAudience: this.categorySelected.map((t) => t.id),\r\n numberCount: this.categorySelected.reduce((sum, x) => sum + x.totalMembers, 0),\r\n isUpload: this.isShowUploadCSV,\r\n file: {\r\n name: this.getCampaignStorage?.targetAudienceFile?.name,\r\n targetURL: this.getCampaignStorage?.targetAudienceFile?.targetURL,\r\n },\r\n });\r\n }\r\n\r\n public isChecked(row: ContactCategoryModel) {\r\n const found = this.selection.selected.find((x) => x.id === row.id);\r\n return found ? true : false;\r\n }\r\n\r\n public onDownloadSampleService(): void {\r\n const parameterList: Array<Parameter> = [\r\n this.initParam(\r\n 'platform',\r\n this.getCampaignStorage?.generalInformation?.form?.template?.platform,\r\n 'string'\r\n ),\r\n this.initParam(\r\n 'templateName',\r\n this.getCampaignStorage?.generalInformation?.form?.template?.name,\r\n 'string'\r\n ),\r\n this.initParam(\r\n 'templateLang',\r\n this.getCampaignStorage?.generalInformation?.form?.template?.lang,\r\n 'string'\r\n ),\r\n this.initParam(\r\n 'category',\r\n this.categorySelected?.map((t) => t.id).join() ?? [],\r\n 'string'\r\n ),\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/message/bulkupload/template', 'GET', true)\r\n .subscribe((resp: AppResponse<any>) => {\r\n downloadBlobFile(resp, 'Sample-UploadParameter.xlsx');\r\n });\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n public onFileSelected(event: Event) {\r\n const file: FileList = (event.target as HTMLInputElement).files;\r\n const MAXIMUM_SIZE = 10 * 1024 * 1024; // In MegaBytes\r\n\r\n console.log(MAXIMUM_SIZE);\r\n\r\n if (file.length === 0) return;\r\n\r\n if (file[0].size > MAXIMUM_SIZE) {\r\n this.toastr.error('Upload media failed, max size 10mb');\r\n return;\r\n }\r\n\r\n this.uploadMediaService(file[0]);\r\n }\r\n\r\n private uploadMediaService(file: File): void {\r\n this.isUpload = true;\r\n\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'file',\r\n value: file,\r\n in: 'formData',\r\n type: 'object',\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(parameterList, '/message/media', 'POST')\r\n .subscribe(\r\n (resp: AppResponse<any>) => {\r\n if (!resp) return;\r\n\r\n this.setFileService(resp.data);\r\n },\r\n () => (this.isUpload = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n private setFileService(media: any): void {\r\n const parameterList: Array<Parameter> = [\r\n {\r\n name: 'fileId',\r\n value: {\r\n fileId: media.id,\r\n },\r\n in: 'body',\r\n type: 'object',\r\n withoutKeyData: true,\r\n },\r\n ];\r\n\r\n const subs = this.apiAdapterService\r\n .executeApiRequest(\r\n parameterList,\r\n `/campaign/${this.getCampaignStorage?.generalInformation?.id}/targetfile`,\r\n 'POST'\r\n )\r\n .subscribe(\r\n (resp: AppResponse<any>) => {\r\n if (!resp) return;\r\n\r\n this.toastr.info('Upload XLSX has been uploaded successfully');\r\n this.isUpload = false;\r\n this.targetAudience.emit({\r\n targetAudience: this.categorySelected.map((t) => t.id),\r\n numberCount: this.categorySelected.reduce(\r\n (sum, x) => sum + x.totalMembers,\r\n 0\r\n ),\r\n isUpload: true,\r\n file: {\r\n name: media.fileName,\r\n targetURL: media.targetURL,\r\n },\r\n });\r\n },\r\n () => (this.isUpload = false)\r\n );\r\n\r\n this.subscribers.push(subs);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscribers.forEach((each) => each.unsubscribe());\r\n }\r\n}\r\n","import { DatePipe } from '@angular/common';\r\nimport { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { SchedulerMessageValidationConst } from '../../../../core/const';\r\n\r\n@Component({\r\n\tselector: 'lib-new-campaign-scheduler',\r\n\ttemplateUrl: './scheduler.component.html',\r\n\tstyleUrls: ['./scheduler.component.scss'],\r\n})\r\nexport class SchedulerComponent implements OnInit {\r\n\t@Output()\r\n\tpublic scheduler: EventEmitter<FormGroup>;\r\n\r\n\tpublic form: FormGroup;\r\n\tpublic minDate: Date;\r\n\tpublic validationMessages: any;\r\n\r\n\tprivate datePipe: DatePipe;\r\n\r\n\t@Input() public isReadOnlyMode: boolean;\r\n\r\n\tconstructor(private toastr: ToastrService) {\r\n\t\tthis.datePipe = new DatePipe('en-US');\r\n\t\tthis.scheduler = new EventEmitter();\r\n\t}\r\n\r\n\tngOnInit(): void {\r\n\t\tthis.validationMessages = SchedulerMessageValidationConst;\r\n\t\tthis.minDate = new Date();\r\n\r\n\t\tthis.initForm();\r\n\t\tthis.initEdit();\r\n\t\tthis.initDisable();\r\n\t}\r\n\r\n\tprivate initForm(): void {\r\n\t\tthis.form = new FormGroup({\r\n\t\t\tschedulerType: new FormControl(null, Validators.required),\r\n\t\t\tstartDate: new FormControl(null),\r\n\t\t\tstartTime: new FormControl(null),\r\n\t\t\tisRepeat: new FormControl(false),\r\n\t\t\tdelivery: new FormControl(null),\r\n\t\t});\r\n\r\n\t\tthis.form.valueChanges.subscribe(() => {\r\n\t\t\tthis.scheduler.emit(this.form);\r\n\t\t});\r\n\t}\r\n\r\n\tprivate initDisable(): void {\r\n\t\tif (!this.isReadOnlyMode) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.disable();\r\n\t}\r\n\r\n\tprivate initEdit(isEdit: boolean = true): void {\r\n\t\tconst campaign = localStorage.getItem('telin.campaign')\r\n\t\t\t? JSON.parse(localStorage.getItem('telin.campaign'))\r\n\t\t\t: {};\r\n\r\n\t\tif (Object.entries(campaign).length === 0) return;\r\n\r\n\t\tif (isEdit)\r\n\t\t\tthis.form\r\n\t\t\t\t.get('schedulerType')\r\n\t\t\t\t.setValue(campaign?.scheduler?.schedulerType);\r\n\r\n\t\tthis.form.get('startDate').setValue(campaign?.scheduler?.startDate);\r\n\t\tthis.form.get('startTime').setValue(campaign?.scheduler?.startTime);\r\n\t\tthis.form.get('isRepeat').setValue(campaign?.scheduler?.isRepeat);\r\n\t\tthis.form\r\n\t\t\t.get('delivery')\r\n\t\t\t.setValue(\r\n\t\t\t\tthis.capitalizeFirstLetter(campaign?.scheduler?.delivery)\r\n\t\t\t);\r\n\t}\r\n\r\n\tprivate capitalizeFirstLetter(value: string): string {\r\n\t\tif (!value) return '';\r\n\r\n\t\treturn (\r\n\t\t\tvalue?.charAt(0).toUpperCase() + value?.slice(1).toLowerCase() ?? ''\r\n\t\t);\r\n\t}\r\n\r\n\tpublic updateSchedulerType(type: string): void {\r\n\t\tthis.form.get('schedulerType').setValue(type);\r\n\r\n\t\tif (this.form.get('schedulerType').value === 'NOW') {\r\n\t\t\tthis.form.get('startDate').setValue(null);\r\n\t\t\tthis.form.get('startDate').clearValidators();\r\n\t\t\tthis.form.get('startDate').updateValueAndValidity();\r\n\t\t\tthis.form.get('startTime').setValue(null);\r\n\t\t\tthis.form.get('startTime').clearValidators();\r\n\t\t\tthis.form.get('startTime').updateValueAndValidity();\r\n\t\t\tthis.form.get('delivery').setValue(null);\r\n\t\t\tthis.form.get('delivery').clearValidators();\r\n\t\t\tthis.form.get('delivery').updateValueAndValidity();\r\n\t\t\tthis.form.get('isRepeat').setValue(false);\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.get('startDate').setValidators(Validators.required);\r\n\t\tthis.form.get('startDate').updateValueAndValidity();\r\n\t\tthis.form.get('startTime').setValidators(Validators.required);\r\n\t\tthis.form.get('startTime').updateValueAndValidity();\r\n\t\tthis.initEdit(false);\r\n\t}\r\n\r\n\tpublic updateTime(): void {\r\n\t\tif (!this.form.get('startDate').value) return;\r\n\r\n\t\tconst dateNow = new Date().getTime();\r\n\t\tconst startDate = new Date(\r\n\t\t\t`${this.datePipe.transform(\r\n\t\t\t\tthis.form.get('startDate').value,\r\n\t\t\t\t'yyyy-MM-dd'\r\n\t\t\t)} ${this.form.get('startTime').value}`\r\n\t\t).getTime();\r\n\r\n\t\tif (dateNow > startDate) {\r\n\t\t\tthis.form.get('startTime').setValue(null);\r\n\t\t\tthis.toastr.error('Selected time has been surpassed');\r\n\t\t}\r\n\t}\r\n\r\n\tpublic updateRepeat(isChecked: boolean): void {\r\n\t\tif (isChecked) {\r\n\t\t\tthis.form.get('delivery').setValidators(Validators.required);\r\n\t\t\tthis.form.get('delivery').updateValueAndValidity();\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tthis.form.get('isRepeat').setValue(null);\r\n\t\tthis.form.get('delivery').setValue(null);\r\n\t\tthis.form.get('delivery').clearValidators();\r\n\t\tthis.form.get('delivery').updateValueAndValidity();\r\n\t}\r\n}\r\n","import { Component, Input } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'lib-new-campaign-summary',\r\n\ttemplateUrl: './summary.component.html',\r\n\tstyleUrls: ['./summary.component.scss'],\r\n})\r\nexport class SummaryComponent {\r\n\t@Input() public isShowLabel: boolean;\r\n}\r\n","import { Component, Input, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n\tselector: 'lib-wizard',\r\n\ttemplateUrl: './wizard.component.html',\r\n\tstyleUrls: ['./wizard.component.scss'],\r\n})\r\nexport class WizardComponent implements OnInit {\r\n\t@Input() positionWizard: number = 1;\r\n\t@Input() dataWizard: string[] = [];\r\n\r\n\tconstructor() {}\r\n\r\n\tngOnInit(): void {}\r\n}\r\n","import { AgmCoreModule } from '@agm/core';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { CommonModule, DatePipe } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatBadgeModule } from '@angular/material/badge';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatDividerModule } from '@angular/material/divider';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatGridListModule } from '@angular/material/grid-list';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\nimport { MatSortModule } from '@angular/material/sort';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { PickerModule } from '@ctrl/ngx-emoji-mart';\r\nimport { AngularEditorModule } from '@kolkov/angular-editor';\r\nimport {\r\n\tNgbDropdownModule,\r\n\tNgbPaginationModule,\r\n} from '@ng-bootstrap/ng-bootstrap';\r\nimport * as echarts from 'echarts';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { SearchModule } from '../global/search/search.module';\r\nimport { CampaignManagementComponent } from './campaign-management.component';\r\nimport { CampaignIndexModule } from './modules/campaign-index/campaign-index.module';\r\nimport { PendingApprovalDialogViewComponent } from './modules/campaign-index/dialog/pending-approval-dialog-view';\r\nimport { DashboardModule } from './modules/dashboard/dashboard.module';\r\nimport { NewCampaignComponent } from './modules/new-campaign';\r\nimport { GeneralInformationEmailComponent } from './modules/new-campaign/components/general-information-email';\r\nimport { GeneralInformationLineComponent } from './modules/new-campaign/components/general-information-line';\r\nimport { GeneralInformationSMSComponent } from './modules/new-campaign/components/general-information-sms';\r\nimport { GeneralInformationWAComponent } from './modules/new-campaign/components/general-information-wa';\r\nimport { FailoverMechanismComponent } from './modules/new-campaign/failover-mechanism';\r\nimport { GeneralInformationComponent } from './modules/new-campaign/general-information';\r\nimport { NewNumberBasesComponent } from './modules/new-campaign/new-number-bases';\r\nimport { SchedulerComponent } from './modules/new-campaign/scheduler';\r\nimport { SummaryComponent } from './modules/new-campaign/summary';\r\nimport { WizardComponent } from './modules/wizard';\r\n\r\n@NgModule({\r\n\tdeclarations: [\r\n\t\tCampaignManagementComponent,\r\n\t\tWizardComponent,\r\n\t\tNewCampaignComponent,\r\n\t\tGeneralInformationComponent,\r\n\t\tSchedulerComponent,\r\n\t\tSummaryComponent,\r\n\t\tNewNumberBasesComponent,\r\n\t\tGeneralInformationLineComponent,\r\n\t\tGeneralInformationWAComponent,\r\n\t\tGeneralInformationSMSComponent,\r\n\t\tGeneralInformationEmailComponent,\r\n\t\tPendingApprovalDialogViewComponent,\r\n\t\tFailoverMechanismComponent,\r\n\t],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tAgmCoreModule.forRoot({\r\n\t\t\tapiKey: 'AIzaSyCHReBe_RpzAgLTrUC5QIDyeKttQ817wRY',\r\n\t\t\tlibraries: ['places'],\r\n\t\t}),\r\n\t\tDashboardModule,\r\n\t\tMatAutocompleteModule,\r\n\t\tFormsModule,\r\n\t\tReactiveFormsModule,\r\n\t\tMatFormFieldModule,\r\n\t\tMatInputModule,\r\n\t\tMatSelectModule,\r\n\t\tMatRadioModule,\r\n\t\tMatListModule,\r\n\t\tMatButtonModule,\r\n\t\tNgxEchartsModule.forRoot({\r\n\t\t\techarts,\r\n\t\t}),\r\n\t\tMatIconModule,\r\n\t\tPickerModule,\r\n\t\tAngularEditorModule,\r\n\t\tMatDialogModule,\r\n\t\tMatTabsModule,\r\n\t\tMatBadgeModule,\r\n\t\tNgbDropdownModule,\r\n\t\tNgbPaginationModule,\r\n\t\tMatCardModule,\r\n\t\tMatTableModule,\r\n\t\tMatCheckboxModule,\r\n\t\tMatPaginatorModule,\r\n\t\tMatGridListModule,\r\n\t\tMatDatepickerModule,\r\n\t\tMatSortModule,\r\n\t\tSearchModule,\r\n\t\tMatDividerModule,\r\n\t\tMatProgressSpinnerModule,\r\n\t\tMatSlideToggleModule,\r\n\t\tDragDropModule,\r\n\t\tCampaignIndexModule,\r\n\t],\r\n\texports: [CampaignManagementComponent, SummaryComponent],\r\n\tentryComponents: [PendingApprovalDialogViewComponent],\r\n\tproviders: [DatePipe],\r\n})\r\nexport class CampaignManagementModule {}\r\n","import { AgmCoreModule } from '@agm/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatCardModule } from '@angular/material/card';\r\nimport { MatPaginatorIntl } from '@angular/material/paginator';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { ToastrModule } from 'ngx-toastr';\r\nimport { AdlCampaignManagementLibraryInternalComponent } from './adl-campaign-management-library-internal.component';\r\nimport { CampaignManagementModule } from './campaign-management/campaign-management.module';\r\nimport { CustomPaginator } from './core/util';\r\n\r\n@NgModule({\r\n\tdeclarations: [AdlCampaignManagementLibraryInternalComponent],\r\n\timports: [\r\n\t\tCommonModule,\r\n\t\tAgmCoreModule.forRoot({\r\n\t\t\tapiKey: 'AIzaSyCHReBe_RpzAgLTrUC5QIDyeKttQ817wRY',\r\n\t\t\tlibraries: ['places'],\r\n\t\t}),\r\n\t\tCampaignManagementModule,\r\n\t\tNgxEchartsModule,\r\n\t\tMatCardModule,\r\n\t\tHttpClientModule,\r\n\t\tToastrModule.forRoot(),\r\n\t],\r\n\texports: [AdlCampaignManagementLibraryInternalComponent],\r\n\tproviders: [{ provide: MatPaginatorIntl, useClass: CustomPaginator }],\r\n})\r\nexport class AdlCampaignManagementLibraryInternalModule {}\r\n","import { CommonModule } from '@angular/common';\r\nimport { NgModule } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { ConfirmationComponent } from './confirmation';\r\n\r\n@NgModule({\r\n\tdeclarations: [ConfirmationComponent],\r\n\timports: [CommonModule, MatDialogModule, MatButtonModule],\r\n\texports: [ConfirmationComponent]\r\n})\r\nexport class ConfirmationModule {}\r\n","/*\r\n * Public API Surface of adl-campaign-management-library-internal\r\n */\r\nexport * from './lib/adl-campaign-management-library-internal.component';\r\nexport * from './lib/adl-campaign-management-library-internal.module';\r\nexport * from './lib/campaign-management/campaign-management.component';\r\nexport * from './lib/campaign-management/campaign-management.module';\r\nexport * from './lib/campaign-management/modules/campaign-index/campaign-index.module';\r\nexport * from './lib/campaign-management/modules/dashboard/dashboard.module';\r\nexport * from './lib/global/confirmation/confirmation';\r\nexport * from './lib/global/confirmation/confirmation.module';\r\nexport * from './lib/global/confirmation/confirmation/confirmation.component';\r\nexport * from './lib/global/search/search.module';\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {CampaignIndexComponent as ɵr} from './lib/campaign-management/modules/campaign-index/campaign-index.component';\nexport {FilterInListOfCampaignComponent as ɵq} from './lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign';\nexport {ViewingListOfCampaignTableComponent as ɵp} from './lib/campaign-management/modules/campaign-index/component/viewing-list-of-campaign-table';\nexport {PendingApprovalDialogViewComponent as ɵk} from './lib/campaign-management/modules/campaign-index/dialog/pending-approval-dialog-view';\nexport {DashboardComponent as ɵm} from './lib/campaign-management/modules/dashboard/dashboard.component';\nexport {NewCampaignComponent as ɵb} from './lib/campaign-management/modules/new-campaign';\nexport {GeneralInformationEmailComponent as ɵj} from './lib/campaign-management/modules/new-campaign/components/general-information-email';\nexport {GeneralInformationLineComponent as ɵg} from './lib/campaign-management/modules/new-campaign/components/general-information-line';\nexport {GeneralInformationSMSComponent as ɵi} from './lib/campaign-management/modules/new-campaign/components/general-information-sms';\nexport {GeneralInformationWAComponent as ɵh} from './lib/campaign-management/modules/new-campaign/components/general-information-wa';\nexport {FailoverMechanismComponent as ɵl} from './lib/campaign-management/modules/new-campaign/failover-mechanism';\nexport {GeneralInformationComponent as ɵc} from './lib/campaign-management/modules/new-campaign/general-information';\nexport {NewNumberBasesComponent as ɵf} from './lib/campaign-management/modules/new-campaign/new-number-bases';\nexport {SchedulerComponent as ɵd} from './lib/campaign-management/modules/new-campaign/scheduler';\nexport {SummaryComponent as ɵe} from './lib/campaign-management/modules/new-campaign/summary';\nexport {WizardComponent as ɵa} from './lib/campaign-management/modules/wizard';\nexport {MatSelectInfiniteScrollDirective as ɵt} from './lib/core/directives';\nexport {ApiAdapterServiceService as ɵn} from './lib/core/services';\nexport {ApiAdapterServiceService as ɵs} from './lib/core/services/api-adapter-service.service';\nexport {CustomPaginator as ɵu} from './lib/core/util';\nexport {ConfirmationComponent as ɵv} from './lib/global/confirmation/confirmation';\nexport {ConfirmationModel as ɵw} from './lib/global/confirmation/shared/model';\nexport {SharedServicesService as ɵx} from './lib/global/confirmation/shared/shared-services.service';\nexport {SearchComponent as ɵo} from './lib/global/search/search/search.component';"],"names":[],"mappings":"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"}