@xsolla/payment-client-core 0.1.3 → 0.1.5-1

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 (228) hide show
  1. package/esm2020/lib/core/credit-card/credit-card-settings.interface.mjs +2 -0
  2. package/esm2020/lib/core/credit-card/credit-card-types.enum.mjs +20 -0
  3. package/esm2020/lib/core/credit-card/credit-card.interface.mjs +2 -0
  4. package/esm2020/lib/core/credit-card/credit-card.service.mjs +41 -0
  5. package/esm2020/lib/core/credit-card/credit-cards-map.const.mjs +36 -0
  6. package/esm2020/lib/core/credit-card/default-mask.const.mjs +2 -0
  7. package/esm2020/lib/core/credit-card/four-block-mask.const.mjs +2 -0
  8. package/esm2020/lib/core/credit-card/ordered-cards-settings.const.mjs +45 -0
  9. package/esm2020/lib/core/credit-card/types/american-express.mjs +13 -0
  10. package/esm2020/lib/core/credit-card/types/aura.mjs +15 -0
  11. package/esm2020/lib/core/credit-card/types/china-union-pay.mjs +12 -0
  12. package/esm2020/lib/core/credit-card/types/dankort.mjs +15 -0
  13. package/esm2020/lib/core/credit-card/types/default-card.mjs +13 -0
  14. package/esm2020/lib/core/credit-card/types/diners-clubs.mjs +13 -0
  15. package/esm2020/lib/core/credit-card/types/discover.mjs +13 -0
  16. package/esm2020/lib/core/credit-card/types/elo.mjs +13 -0
  17. package/esm2020/lib/core/credit-card/types/hipercard.mjs +13 -0
  18. package/esm2020/lib/core/credit-card/types/jcb.mjs +13 -0
  19. package/esm2020/lib/core/credit-card/types/maestro.mjs +14 -0
  20. package/esm2020/lib/core/credit-card/types/mastercard.mjs +16 -0
  21. package/esm2020/lib/core/credit-card/types/mir.mjs +15 -0
  22. package/esm2020/lib/core/credit-card/types/naranja.mjs +15 -0
  23. package/esm2020/lib/core/credit-card/types/postepay.mjs +13 -0
  24. package/esm2020/lib/core/credit-card/types/visa.mjs +13 -0
  25. package/esm2020/lib/core/device-finger-print/device-finger-print.service.mjs +26 -126
  26. package/esm2020/lib/core/device-finger-print/hash.type.mjs +1 -1
  27. package/esm2020/lib/core/encrypt-credit-card/encrypt-credit-card.service.mjs +72 -0
  28. package/esm2020/lib/core/encrypt-credit-card/encrypted-card.interface.mjs +2 -0
  29. package/esm2020/lib/core/encrypt-credit-card/open-card.interface.mjs +2 -0
  30. package/esm2020/lib/core/exceptions-handling/errors/encrypt-card-error.mjs +9 -0
  31. package/esm2020/lib/core/payment/actions/check-status/check-status.action.class.mjs +2 -3
  32. package/esm2020/lib/core/payment/actions/next-action.interface.mjs +1 -1
  33. package/esm2020/lib/core/payment/actions/next-actions.mjs +3 -1
  34. package/esm2020/lib/core/payment/actions/three-ds/three-ds.action.class.mjs +7 -0
  35. package/esm2020/lib/core/payment/actions/three-ds/three-ds.action.token.mjs +11 -0
  36. package/esm2020/lib/core/payment/actions/three-ds/three-ds.action.type.mjs +2 -0
  37. package/esm2020/lib/core/payment/credit-card-payment-methods-id.variable.mjs +15 -0
  38. package/esm2020/lib/core/payment/credit-card-state/credit-card-state.interface.mjs +2 -0
  39. package/esm2020/lib/core/payment/credit-card-state/credit-card-state.service.mjs +14 -0
  40. package/esm2020/lib/core/payment/form/controls/card-number-control.config.mjs +10 -0
  41. package/esm2020/lib/core/payment/form/controls/phone-control.config.mjs +8 -0
  42. package/esm2020/lib/core/payment/form/converters/birth-date.converter.mjs +38 -0
  43. package/esm2020/lib/core/payment/form/converters/card-expiration.converter.mjs +36 -0
  44. package/esm2020/lib/core/payment/form/converters/card-number.converter.mjs +45 -0
  45. package/esm2020/lib/core/payment/form/converters/cardholder-name.converter.mjs +25 -0
  46. package/esm2020/lib/core/payment/form/converters/converters-map.mjs +23 -1
  47. package/esm2020/lib/core/payment/form/converters/cpf-name-regex.variable.mjs +2 -0
  48. package/esm2020/lib/core/payment/form/converters/cpf-name.converter.mjs +34 -0
  49. package/esm2020/lib/core/payment/form/converters/cpf-number.converter.mjs +31 -0
  50. package/esm2020/lib/core/payment/form/converters/cvv.converter.mjs +50 -0
  51. package/esm2020/lib/core/payment/form/converters/phone.converter.mjs +37 -0
  52. package/esm2020/lib/core/payment/form/converters/street-number/street-number-from-state.interface.mjs +2 -0
  53. package/esm2020/lib/core/payment/form/converters/street-number/street-number.converter.mjs +28 -0
  54. package/esm2020/lib/core/payment/form/converters/text.converter.mjs +19 -0
  55. package/esm2020/lib/core/payment/form/form.module.mjs +32 -4
  56. package/esm2020/lib/core/payment/form/validators/birth-date.validator.mjs +37 -0
  57. package/esm2020/lib/core/payment/form/validators/credit-card-min-length.validator.mjs +32 -0
  58. package/esm2020/lib/core/payment/form/validators/is-empty-input-value.function.mjs +4 -0
  59. package/esm2020/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.mjs +40 -0
  60. package/esm2020/lib/core/payment/form/validators/max-length-validator.mjs +6 -0
  61. package/esm2020/lib/core/payment/form/validators/min-length-validator.mjs +6 -0
  62. package/esm2020/lib/core/payment/form/validators/phone-validator.mjs +6 -0
  63. package/esm2020/lib/core/payment/form/validators/validators.module.mjs +18 -0
  64. package/esm2020/lib/core/payment/initialize/initialize-request-params.interface.mjs +1 -1
  65. package/esm2020/lib/core/payment/initialize/initialize.service.mjs +28 -19
  66. package/esm2020/lib/core/payment/initialize/response/initialize-response.class.mjs +43 -0
  67. package/esm2020/lib/core/payment/initialize/response/initialize-response.token.mjs +8 -0
  68. package/esm2020/lib/core/payment/payment.interface.mjs +1 -1
  69. package/esm2020/lib/core/payment/payment.service.mjs +38 -8
  70. package/esm2020/lib/core/payment/status/check-status/check-status.service.mjs +8 -13
  71. package/esm2020/lib/core/payment/status/check-status/response/check-status-response.class.mjs +1 -1
  72. package/esm2020/lib/core/payment/submit/submit.service.mjs +13 -16
  73. package/esm2020/lib/core/payment/sync/field-async-validation.interface.mjs +2 -0
  74. package/esm2020/lib/core/payment/sync/field-sync-state.interface.mjs +1 -1
  75. package/esm2020/lib/core/payment/sync/request/sync-request.class.mjs +31 -0
  76. package/esm2020/lib/core/payment/sync/request/sync-request.token.mjs +8 -0
  77. package/esm2020/lib/core/payment/sync/response/sync-response.class.mjs +17 -0
  78. package/esm2020/lib/core/payment/sync/response/sync-response.token.mjs +8 -0
  79. package/esm2020/lib/core/payment/sync/sync.service.mjs +24 -15
  80. package/esm2020/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.mjs +49 -0
  81. package/esm2020/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.class.mjs +8 -0
  82. package/esm2020/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.token.mjs +8 -0
  83. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.class.mjs +7 -0
  84. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.token.mjs +8 -0
  85. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.class.mjs +7 -0
  86. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.token.mjs +8 -0
  87. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/status-three-ds-response.interface.mjs +2 -0
  88. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.mjs +60 -0
  89. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/status-types.enum.mjs +7 -0
  90. package/esm2020/lib/core/payment/three-ds/api/status-three-ds/three-ds-checkout-form.interface.mjs +2 -0
  91. package/esm2020/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.mjs +105 -0
  92. package/esm2020/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.mjs +41 -0
  93. package/esm2020/lib/core/payment/three-ds/reinsurance-check/timer.interface.mjs +2 -0
  94. package/esm2020/lib/core/payment/three-ds/three-ds-20/status-update.interface.mjs +2 -0
  95. package/esm2020/lib/core/payment/three-ds/three-ds-20/three-ds20.service.mjs +109 -0
  96. package/esm2020/lib/core/payment/three-ds/three-ds-form.interface.mjs +2 -0
  97. package/esm2020/lib/core/payment/three-ds/three-ds-status-websocket-types.enum.mjs +5 -0
  98. package/esm2020/lib/core/payment/three-ds/three-ds.service.mjs +40 -0
  99. package/esm2020/lib/core/payment/xps-api/xps-api.service.mjs +79 -0
  100. package/esm2020/lib/core/payment/xps-request-params.interface.mjs +2 -0
  101. package/esm2020/lib/core/payment/xps-request.interface.mjs +2 -0
  102. package/esm2020/lib/core/payment/xps-response.error.mjs +7 -0
  103. package/esm2020/lib/core/payment/xps-response.interface.mjs +1 -1
  104. package/esm2020/lib/core/type-guards/is-string.function.mjs +4 -0
  105. package/esm2020/lib/core-library.module.mjs +13 -4
  106. package/esm2020/lib/core-library.service.mjs +19 -5
  107. package/fesm2015/xsolla-payment-client-core.mjs +1585 -261
  108. package/fesm2015/xsolla-payment-client-core.mjs.map +1 -1
  109. package/fesm2020/xsolla-payment-client-core.mjs +1574 -258
  110. package/fesm2020/xsolla-payment-client-core.mjs.map +1 -1
  111. package/lib/core/credit-card/credit-card-settings.interface.d.ts +10 -0
  112. package/lib/core/credit-card/credit-card-types.enum.d.ts +18 -0
  113. package/lib/core/credit-card/credit-card.interface.d.ts +9 -0
  114. package/lib/core/credit-card/credit-card.service.d.ts +11 -0
  115. package/lib/core/credit-card/credit-cards-map.const.d.ts +5 -0
  116. package/lib/core/credit-card/default-mask.const.d.ts +1 -0
  117. package/lib/core/credit-card/four-block-mask.const.d.ts +1 -0
  118. package/lib/core/credit-card/ordered-cards-settings.const.d.ts +12 -0
  119. package/lib/core/credit-card/types/american-express.d.ts +2 -0
  120. package/lib/core/credit-card/types/aura.d.ts +2 -0
  121. package/lib/core/credit-card/types/china-union-pay.d.ts +2 -0
  122. package/lib/core/credit-card/types/dankort.d.ts +2 -0
  123. package/lib/core/credit-card/types/default-card.d.ts +2 -0
  124. package/lib/core/credit-card/types/diners-clubs.d.ts +2 -0
  125. package/lib/core/credit-card/types/discover.d.ts +2 -0
  126. package/lib/core/credit-card/types/elo.d.ts +2 -0
  127. package/lib/core/credit-card/types/hipercard.d.ts +2 -0
  128. package/lib/core/credit-card/types/jcb.d.ts +2 -0
  129. package/lib/core/credit-card/types/maestro.d.ts +2 -0
  130. package/lib/core/credit-card/types/mastercard.d.ts +2 -0
  131. package/lib/core/credit-card/types/mir.d.ts +2 -0
  132. package/lib/core/credit-card/types/naranja.d.ts +2 -0
  133. package/lib/core/credit-card/types/postepay.d.ts +2 -0
  134. package/lib/core/credit-card/types/visa.d.ts +2 -0
  135. package/lib/core/device-finger-print/device-finger-print.service.d.ts +3 -31
  136. package/lib/core/device-finger-print/hash.type.d.ts +1 -1
  137. package/lib/core/encrypt-credit-card/encrypt-credit-card.service.d.ts +16 -0
  138. package/lib/core/encrypt-credit-card/encrypted-card.interface.d.ts +6 -0
  139. package/lib/core/encrypt-credit-card/open-card.interface.d.ts +6 -0
  140. package/lib/core/exceptions-handling/errors/encrypt-card-error.d.ts +5 -0
  141. package/lib/core/payment/actions/next-action.interface.d.ts +2 -1
  142. package/lib/core/payment/actions/three-ds/three-ds.action.class.d.ts +8 -0
  143. package/lib/core/payment/actions/three-ds/three-ds.action.token.d.ts +4 -0
  144. package/lib/core/payment/actions/three-ds/three-ds.action.type.d.ts +5 -0
  145. package/lib/core/payment/credit-card-payment-methods-id.variable.d.ts +6 -0
  146. package/lib/core/payment/credit-card-state/credit-card-state.interface.d.ts +3 -0
  147. package/lib/core/payment/credit-card-state/credit-card-state.service.d.ts +7 -0
  148. package/lib/core/payment/form/controls/card-number-control.config.d.ts +11 -0
  149. package/lib/core/payment/form/controls/phone-control.config.d.ts +6 -0
  150. package/lib/core/payment/form/converters/birth-date.converter.d.ts +13 -0
  151. package/lib/core/payment/form/converters/card-expiration.converter.d.ts +16 -0
  152. package/lib/core/payment/form/converters/card-number.converter.d.ts +19 -0
  153. package/lib/core/payment/form/converters/cardholder-name.converter.d.ts +13 -0
  154. package/lib/core/payment/form/converters/cpf-name-regex.variable.d.ts +1 -0
  155. package/lib/core/payment/form/converters/cpf-name.converter.d.ts +13 -0
  156. package/lib/core/payment/form/converters/cpf-number.converter.d.ts +11 -0
  157. package/lib/core/payment/form/converters/cvv.converter.d.ts +18 -0
  158. package/lib/core/payment/form/converters/phone.converter.d.ts +13 -0
  159. package/lib/core/payment/form/converters/street-number/street-number-from-state.interface.d.ts +3 -0
  160. package/lib/core/payment/form/converters/street-number/street-number.converter.d.ts +14 -0
  161. package/lib/core/payment/form/converters/text.converter.d.ts +11 -0
  162. package/lib/core/payment/form/form.module.d.ts +2 -1
  163. package/lib/core/payment/form/validators/birth-date.validator.d.ts +2 -0
  164. package/lib/core/payment/form/validators/credit-card-min-length.validator.d.ts +12 -0
  165. package/lib/core/payment/form/validators/is-empty-input-value.function.d.ts +1 -0
  166. package/lib/core/payment/form/validators/luhn-formula-validator/luhn-formula.validator.d.ts +6 -0
  167. package/lib/core/payment/form/validators/max-length-validator.d.ts +2 -0
  168. package/lib/core/payment/form/validators/min-length-validator.d.ts +2 -0
  169. package/lib/core/payment/form/validators/phone-validator.d.ts +2 -0
  170. package/lib/core/payment/form/validators/validators.module.d.ts +7 -0
  171. package/lib/core/payment/initialize/initialize-request-params.interface.d.ts +1 -0
  172. package/lib/core/payment/initialize/initialize.service.d.ts +8 -6
  173. package/lib/core/payment/initialize/{initialize-response.class.d.ts → response/initialize-response.class.d.ts} +2 -2
  174. package/lib/core/payment/payment.interface.d.ts +2 -2
  175. package/lib/core/payment/payment.service.d.ts +7 -2
  176. package/lib/core/payment/status/check-status/check-status.service.d.ts +3 -4
  177. package/lib/core/payment/submit/submit.service.d.ts +5 -4
  178. package/lib/core/payment/sync/field-async-validation.interface.d.ts +7 -0
  179. package/lib/core/payment/sync/field-sync-state.interface.d.ts +1 -1
  180. package/lib/core/payment/sync/{sync-request.class.d.ts → request/sync-request.class.d.ts} +3 -3
  181. package/lib/core/payment/sync/{sync-response.class.d.ts → response/sync-response.class.d.ts} +2 -2
  182. package/lib/core/payment/sync/sync.service.d.ts +12 -7
  183. package/lib/core/payment/three-ds/api/notify-dfp-status/notify-dfp-status.service.d.ts +14 -0
  184. package/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.class.d.ts +10 -0
  185. package/lib/core/payment/three-ds/api/notify-dfp-status/request/notify-dfp-status-request.token.d.ts +6 -0
  186. package/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.class.d.ts +5 -0
  187. package/lib/core/payment/three-ds/api/status-three-ds/request/status-three-ds-request.token.d.ts +6 -0
  188. package/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.class.d.ts +7 -0
  189. package/lib/core/payment/three-ds/api/status-three-ds/response/status-three-ds-response.token.d.ts +6 -0
  190. package/lib/core/payment/three-ds/api/status-three-ds/status-three-ds-response.interface.d.ts +7 -0
  191. package/lib/core/payment/three-ds/api/status-three-ds/status-three-ds.service.d.ts +21 -0
  192. package/lib/core/payment/three-ds/api/status-three-ds/status-types.enum.d.ts +5 -0
  193. package/lib/core/payment/three-ds/api/status-three-ds/three-ds-checkout-form.interface.d.ts +7 -0
  194. package/lib/core/payment/three-ds/dfp-collect/dfp-collect.service.d.ts +20 -0
  195. package/lib/core/payment/three-ds/reinsurance-check/reinsurance-check.service.d.ts +12 -0
  196. package/lib/core/payment/three-ds/reinsurance-check/timer.interface.d.ts +9 -0
  197. package/lib/core/payment/three-ds/three-ds-20/status-update.interface.d.ts +12 -0
  198. package/lib/core/payment/three-ds/three-ds-20/three-ds20.service.d.ts +32 -0
  199. package/lib/core/payment/three-ds/three-ds-form.interface.d.ts +11 -0
  200. package/lib/core/payment/three-ds/three-ds-status-websocket-types.enum.d.ts +3 -0
  201. package/lib/core/payment/three-ds/three-ds.service.d.ts +14 -0
  202. package/lib/core/payment/xps-api/xps-api.service.d.ts +20 -0
  203. package/lib/core/payment/xps-request-params.interface.d.ts +3 -0
  204. package/lib/core/payment/xps-request.interface.d.ts +10 -0
  205. package/lib/core/payment/xps-response.error.d.ts +4 -0
  206. package/lib/core/payment/xps-response.interface.d.ts +3 -10
  207. package/lib/core/type-guards/is-string.function.d.ts +1 -0
  208. package/lib/core-library.service.d.ts +10 -1
  209. package/package.json +2 -3
  210. package/xsolla-payment-client-core-0.1.5-1.tgz +0 -0
  211. package/esm2020/lib/core/device-finger-print/device-finger-print-components.interface.mjs +0 -2
  212. package/esm2020/lib/core/device-finger-print/fingerprint-js.interface.mjs +0 -2
  213. package/esm2020/lib/core/exceptions-handling/errors/default-terminal-error.class.mjs +0 -8
  214. package/esm2020/lib/core/payment/initialize/initialize-response.class.mjs +0 -43
  215. package/esm2020/lib/core/payment/initialize/initialize-response.token.mjs +0 -8
  216. package/esm2020/lib/core/payment/sync/sync-request.class.mjs +0 -31
  217. package/esm2020/lib/core/payment/sync/sync-request.token.mjs +0 -8
  218. package/esm2020/lib/core/payment/sync/sync-response.class.mjs +0 -17
  219. package/esm2020/lib/core/payment/sync/sync-response.token.mjs +0 -8
  220. package/esm2020/lib/core/payment/xps-request.abstract.mjs +0 -8
  221. package/lib/core/device-finger-print/device-finger-print-components.interface.d.ts +0 -4
  222. package/lib/core/device-finger-print/fingerprint-js.interface.d.ts +0 -6
  223. package/lib/core/exceptions-handling/errors/default-terminal-error.class.d.ts +0 -4
  224. package/lib/core/payment/xps-request.abstract.d.ts +0 -6
  225. package/xsolla-payment-client-core-0.1.3.tgz +0 -0
  226. /package/lib/core/payment/initialize/{initialize-response.token.d.ts → response/initialize-response.token.d.ts} +0 -0
  227. /package/lib/core/payment/sync/{sync-request.token.d.ts → request/sync-request.token.d.ts} +0 -0
  228. /package/lib/core/payment/sync/{sync-response.token.d.ts → response/sync-response.token.d.ts} +0 -0
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtYXN5bmMtdmFsaWRhdGlvbi5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N5bmMvZmllbGQtYXN5bmMtdmFsaWRhdGlvbi5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS5jbGFzcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRBc3luY1ZhbGlkYXRpb24ge1xuICB2YWx1ZTogdW5rbm93bjtcbiAgZmllbGQ6IEZpZWxkO1xuICByZXNwb25zZTogU3luY1Jlc3BvbnNlO1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc3luYy1zdGF0ZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N5bmMvZmllbGQtc3luYy1zdGF0ZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vc3luYy1yZXNwb25zZS5jbGFzcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRTeW5jU3RhdGUge1xuICB2YWx1ZTogdW5rbm93bjtcbiAgcmVzdWx0OiBQcm9taXNlPFN5bmNSZXNwb25zZSB8IG51bGw+O1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc3luYy1zdGF0ZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3N5bmMvZmllbGQtc3luYy1zdGF0ZS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS5jbGFzcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRTeW5jU3RhdGUge1xuICB2YWx1ZTogdW5rbm93bjtcbiAgcmVzdWx0OiBQcm9taXNlPFN5bmNSZXNwb25zZSB8IG51bGw+O1xufVxuIl19
@@ -0,0 +1,31 @@
1
+ import { XpsApiPartRequest } from '../../xps-api-part-request.abstract';
2
+ /* eslint-disable @typescript-eslint/naming-convention */
3
+ export class SyncRequest extends XpsApiPartRequest {
4
+ constructor(parameters) {
5
+ super();
6
+ this.xps_fix_command = 'calculate';
7
+ this.access_token = parameters.token;
8
+ const fieldsValues = this.getFieldsValues(parameters.changedField, parameters.fields, parameters.form);
9
+ this.addXpsParameters({
10
+ ...fieldsValues,
11
+ change_element: parameters.changedField.name,
12
+ });
13
+ }
14
+ getFieldsValues(changedField, fields, form) {
15
+ const fieldsMap = this.getFieldsMap(fields);
16
+ return changedField?.javascript?.change.params.reduce((xpsParams, fieldName) => {
17
+ const formControl = form.get(fieldName);
18
+ const field = fieldsMap.get(fieldName);
19
+ if (formControl || field) {
20
+ xpsParams[fieldName] = formControl?.value ?? field?.value;
21
+ }
22
+ return xpsParams;
23
+ }, {});
24
+ }
25
+ getFieldsMap(fields) {
26
+ const map = new Map();
27
+ fields.forEach((field) => map.set(field.name, field));
28
+ return map;
29
+ }
30
+ }
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXF1ZXN0LmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXhFLHlEQUF5RDtBQUN6RCxNQUFNLE9BQU8sV0FBWSxTQUFRLGlCQUFpQjtJQUloRCxZQUFtQixVQUtsQjtRQUNDLEtBQUssRUFBRSxDQUFDO1FBUk0sb0JBQWUsR0FBRyxXQUFXLENBQUM7UUFVNUMsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDO1FBRXJDLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQ3ZDLFVBQVUsQ0FBQyxZQUFZLEVBQ3ZCLFVBQVUsQ0FBQyxNQUFNLEVBQ2pCLFVBQVUsQ0FBQyxJQUFJLENBQ2hCLENBQUM7UUFFRixJQUFJLENBQUMsZ0JBQWdCLENBQUM7WUFDcEIsR0FBRyxZQUFZO1lBQ2YsY0FBYyxFQUFFLFVBQVUsQ0FBQyxZQUFZLENBQUMsSUFBSTtTQUM3QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sZUFBZSxDQUNyQixZQUFtQixFQUNuQixNQUFlLEVBQ2YsSUFBc0I7UUFFdEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxPQUFPLFlBQVksRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQ25ELENBQUMsU0FBb0MsRUFBRSxTQUFpQixFQUFFLEVBQUU7WUFDMUQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUN4QyxNQUFNLEtBQUssR0FBc0IsU0FBUyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUUxRCxJQUFJLFdBQVcsSUFBSSxLQUFLLEVBQUU7Z0JBQ3hCLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxXQUFXLEVBQUUsS0FBSyxJQUFJLEtBQUssRUFBRSxLQUFLLENBQUM7YUFDM0Q7WUFFRCxPQUFPLFNBQVMsQ0FBQztRQUNuQixDQUFDLEVBQ0QsRUFBRSxDQUNILENBQUM7SUFDSixDQUFDO0lBRU8sWUFBWSxDQUFDLE1BQWU7UUFDbEMsTUFBTSxHQUFHLEdBQUcsSUFBSSxHQUFHLEVBQWlCLENBQUM7UUFDckMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEQsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi8uLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzQXBpUGFydFJlcXVlc3QgfSBmcm9tICcuLi8uLi94cHMtYXBpLXBhcnQtcmVxdWVzdC5hYnN0cmFjdCc7XG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xuZXhwb3J0IGNsYXNzIFN5bmNSZXF1ZXN0IGV4dGVuZHMgWHBzQXBpUGFydFJlcXVlc3Qge1xuICBwdWJsaWMgcmVhZG9ubHkgYWNjZXNzX3Rva2VuOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSB4cHNfZml4X2NvbW1hbmQgPSAnY2FsY3VsYXRlJztcblxuICBwdWJsaWMgY29uc3RydWN0b3IocGFyYW1ldGVyczoge1xuICAgIHRva2VuOiBzdHJpbmc7XG4gICAgY2hhbmdlZEZpZWxkOiBGaWVsZDtcbiAgICBmaWVsZHM6IEZpZWxkW107XG4gICAgZm9ybTogVW50eXBlZEZvcm1Hcm91cDtcbiAgfSkge1xuICAgIHN1cGVyKCk7XG5cbiAgICB0aGlzLmFjY2Vzc190b2tlbiA9IHBhcmFtZXRlcnMudG9rZW47XG5cbiAgICBjb25zdCBmaWVsZHNWYWx1ZXMgPSB0aGlzLmdldEZpZWxkc1ZhbHVlcyhcbiAgICAgIHBhcmFtZXRlcnMuY2hhbmdlZEZpZWxkLFxuICAgICAgcGFyYW1ldGVycy5maWVsZHMsXG4gICAgICBwYXJhbWV0ZXJzLmZvcm1cbiAgICApO1xuXG4gICAgdGhpcy5hZGRYcHNQYXJhbWV0ZXJzKHtcbiAgICAgIC4uLmZpZWxkc1ZhbHVlcyxcbiAgICAgIGNoYW5nZV9lbGVtZW50OiBwYXJhbWV0ZXJzLmNoYW5nZWRGaWVsZC5uYW1lLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWVsZHNWYWx1ZXMoXG4gICAgY2hhbmdlZEZpZWxkOiBGaWVsZCxcbiAgICBmaWVsZHM6IEZpZWxkW10sXG4gICAgZm9ybTogVW50eXBlZEZvcm1Hcm91cFxuICApOiB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSB7XG4gICAgY29uc3QgZmllbGRzTWFwID0gdGhpcy5nZXRGaWVsZHNNYXAoZmllbGRzKTtcbiAgICByZXR1cm4gY2hhbmdlZEZpZWxkPy5qYXZhc2NyaXB0Py5jaGFuZ2UucGFyYW1zLnJlZHVjZShcbiAgICAgICh4cHNQYXJhbXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0sIGZpZWxkTmFtZTogc3RyaW5nKSA9PiB7XG4gICAgICAgIGNvbnN0IGZvcm1Db250cm9sID0gZm9ybS5nZXQoZmllbGROYW1lKTtcbiAgICAgICAgY29uc3QgZmllbGQ6IEZpZWxkIHwgdW5kZWZpbmVkID0gZmllbGRzTWFwLmdldChmaWVsZE5hbWUpO1xuXG4gICAgICAgIGlmIChmb3JtQ29udHJvbCB8fCBmaWVsZCkge1xuICAgICAgICAgIHhwc1BhcmFtc1tmaWVsZE5hbWVdID0gZm9ybUNvbnRyb2w/LnZhbHVlID8/IGZpZWxkPy52YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB4cHNQYXJhbXM7XG4gICAgICB9LFxuICAgICAge31cbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWVsZHNNYXAoZmllbGRzOiBGaWVsZFtdKTogTWFwPHN0cmluZywgRmllbGQ+IHtcbiAgICBjb25zdCBtYXAgPSBuZXcgTWFwPHN0cmluZywgRmllbGQ+KCk7XG4gICAgZmllbGRzLmZvckVhY2goKGZpZWxkKSA9PiBtYXAuc2V0KGZpZWxkLm5hbWUsIGZpZWxkKSk7XG4gICAgcmV0dXJuIG1hcDtcbiAgfVxufVxuIl19
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { SyncRequest } from './sync-request.class';
3
+ export const syncRequestFactoryToken = new InjectionToken('SyncRequest');
4
+ export const syncRequestFactoryProvider = {
5
+ provide: syncRequestFactoryToken,
6
+ useValue: (...args) => new SyncRequest(...args),
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXF1ZXN0LnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQVFuRCxNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FDbEMsSUFBSSxjQUFjLENBQXFCLGFBQWEsQ0FBQyxDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFrQjtJQUN2RCxPQUFPLEVBQUUsdUJBQXVCO0lBQ2hDLFFBQVEsRUFBRSxDQUFDLEdBQUcsSUFBMkIsRUFBRSxFQUFFLENBQUMsSUFBSSxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUM7Q0FDdkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBWYWx1ZVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTeW5jUmVxdWVzdCB9IGZyb20gJy4vc3luYy1yZXF1ZXN0LmNsYXNzJztcblxuZXhwb3J0IHR5cGUgU3luY1JlcXVlc3RQYXJhbWV0ZXJzID0gQ29uc3RydWN0b3JQYXJhbWV0ZXJzPHR5cGVvZiBTeW5jUmVxdWVzdD47XG5cbmV4cG9ydCB0eXBlIFN5bmNSZXF1ZXN0RmFjdG9yeSA9IChcbiAgLi4uYXJnczogU3luY1JlcXVlc3RQYXJhbWV0ZXJzXG4pID0+IFN5bmNSZXF1ZXN0O1xuXG5leHBvcnQgY29uc3Qgc3luY1JlcXVlc3RGYWN0b3J5VG9rZW46IEluamVjdGlvblRva2VuPFN5bmNSZXF1ZXN0RmFjdG9yeT4gPVxuICBuZXcgSW5qZWN0aW9uVG9rZW48U3luY1JlcXVlc3RGYWN0b3J5PignU3luY1JlcXVlc3QnKTtcblxuZXhwb3J0IGNvbnN0IHN5bmNSZXF1ZXN0RmFjdG9yeVByb3ZpZGVyOiBWYWx1ZVByb3ZpZGVyID0ge1xuICBwcm92aWRlOiBzeW5jUmVxdWVzdEZhY3RvcnlUb2tlbixcbiAgdXNlVmFsdWU6ICguLi5hcmdzOiBTeW5jUmVxdWVzdFBhcmFtZXRlcnMpID0+IG5ldyBTeW5jUmVxdWVzdCguLi5hcmdzKSxcbn07XG4iXX0=
@@ -0,0 +1,17 @@
1
+ export class SyncResponse {
2
+ constructor(changedField, response) {
3
+ this.error = null;
4
+ const fieldError = response?.errors?.find((error) => error.element_name === changedField.name);
5
+ if (fieldError) {
6
+ this.error = {
7
+ asyncError: {
8
+ code: fieldError.code,
9
+ message: fieldError.message,
10
+ },
11
+ };
12
+ }
13
+ this.fields = Object.keys(response.form).map((key) => response.form[key]);
14
+ this.parameters = response;
15
+ }
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXNwb25zZS5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3luYy9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE1BQU0sT0FBTyxZQUFZO0lBS3ZCLFlBQW1CLFlBQW1CLEVBQUUsUUFBcUI7UUFKN0MsVUFBSyxHQUE0QixJQUFJLENBQUM7UUFLcEQsTUFBTSxVQUFVLEdBQUcsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQ3ZDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsWUFBWSxLQUFLLFlBQVksQ0FBQyxJQUFJLENBQ3BELENBQUM7UUFFRixJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLEdBQUc7Z0JBQ1gsVUFBVSxFQUFFO29CQUNWLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtvQkFDckIsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPO2lCQUM1QjthQUNGLENBQUM7U0FDSDtRQUVELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUMxQyxDQUFDLEdBQVcsRUFBUyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FDM0MsQ0FBQztRQUVGLElBQUksQ0FBQyxVQUFVLEdBQUcsUUFBUSxDQUFDO0lBQzdCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uLy4uL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNSZXNwb25zZSB9IGZyb20gJy4uLy4uL3hwcy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgY2xhc3MgU3luY1Jlc3BvbnNlIHtcbiAgcHVibGljIHJlYWRvbmx5IGVycm9yOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCA9IG51bGw7XG4gIHB1YmxpYyByZWFkb25seSBmaWVsZHM6IEZpZWxkW107XG4gIHB1YmxpYyByZWFkb25seSBwYXJhbWV0ZXJzOiBYcHNSZXNwb25zZTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoY2hhbmdlZEZpZWxkOiBGaWVsZCwgcmVzcG9uc2U6IFhwc1Jlc3BvbnNlKSB7XG4gICAgY29uc3QgZmllbGRFcnJvciA9IHJlc3BvbnNlPy5lcnJvcnM/LmZpbmQoXG4gICAgICAoZXJyb3IpID0+IGVycm9yLmVsZW1lbnRfbmFtZSA9PT0gY2hhbmdlZEZpZWxkLm5hbWVcbiAgICApO1xuXG4gICAgaWYgKGZpZWxkRXJyb3IpIHtcbiAgICAgIHRoaXMuZXJyb3IgPSB7XG4gICAgICAgIGFzeW5jRXJyb3I6IHtcbiAgICAgICAgICBjb2RlOiBmaWVsZEVycm9yLmNvZGUsXG4gICAgICAgICAgbWVzc2FnZTogZmllbGRFcnJvci5tZXNzYWdlLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICB0aGlzLmZpZWxkcyA9IE9iamVjdC5rZXlzKHJlc3BvbnNlLmZvcm0pLm1hcChcbiAgICAgIChrZXk6IHN0cmluZyk6IEZpZWxkID0+IHJlc3BvbnNlLmZvcm1ba2V5XVxuICAgICk7XG5cbiAgICB0aGlzLnBhcmFtZXRlcnMgPSByZXNwb25zZTtcbiAgfVxufVxuIl19
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { SyncResponse } from './sync-response.class';
3
+ export const syncResponseFactoryToken = new InjectionToken('SyncResponse');
4
+ export const syncResponseFactoryProvider = {
5
+ provide: syncResponseFactoryToken,
6
+ useValue: (...args) => new SyncResponse(...args),
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1yZXNwb25zZS50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3luYy9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLnRva2VuLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVFyRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FDbkMsSUFBSSxjQUFjLENBQXNCLGNBQWMsQ0FBQyxDQUFDO0FBRTFELE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFrQjtJQUN4RCxPQUFPLEVBQUUsd0JBQXdCO0lBQ2pDLFFBQVEsRUFBRSxDQUFDLEdBQUcsSUFBNEIsRUFBRSxFQUFFLENBQUMsSUFBSSxZQUFZLENBQUMsR0FBRyxJQUFJLENBQUM7Q0FDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBWYWx1ZVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTeW5jUmVzcG9uc2UgfSBmcm9tICcuL3N5bmMtcmVzcG9uc2UuY2xhc3MnO1xuXG5leHBvcnQgdHlwZSBTeW5jUmVzcG9uc2VQYXJhbWV0ZXJzID0gQ29uc3RydWN0b3JQYXJhbWV0ZXJzPHR5cGVvZiBTeW5jUmVzcG9uc2U+O1xuXG5leHBvcnQgdHlwZSBTeW5jUmVzcG9uc2VGYWN0b3J5ID0gKFxuICAuLi5hcmdzOiBTeW5jUmVzcG9uc2VQYXJhbWV0ZXJzXG4pID0+IFN5bmNSZXNwb25zZTtcblxuZXhwb3J0IGNvbnN0IHN5bmNSZXNwb25zZUZhY3RvcnlUb2tlbjogSW5qZWN0aW9uVG9rZW48U3luY1Jlc3BvbnNlRmFjdG9yeT4gPVxuICBuZXcgSW5qZWN0aW9uVG9rZW48U3luY1Jlc3BvbnNlRmFjdG9yeT4oJ1N5bmNSZXNwb25zZScpO1xuXG5leHBvcnQgY29uc3Qgc3luY1Jlc3BvbnNlRmFjdG9yeVByb3ZpZGVyOiBWYWx1ZVByb3ZpZGVyID0ge1xuICBwcm92aWRlOiBzeW5jUmVzcG9uc2VGYWN0b3J5VG9rZW4sXG4gIHVzZVZhbHVlOiAoLi4uYXJnczogU3luY1Jlc3BvbnNlUGFyYW1ldGVycykgPT4gbmV3IFN5bmNSZXNwb25zZSguLi5hcmdzKSxcbn07XG4iXX0=
@@ -1,27 +1,31 @@
1
- import { HttpHeaders } from '@angular/common/http';
2
1
  import { Inject, Injectable } from '@angular/core';
3
2
  import { UntypedFormGroup } from '@angular/forms';
4
- import { lastValueFrom } from 'rxjs';
3
+ import { Subject } from 'rxjs';
5
4
  import { EmitDataService } from '../emit-data.service.abstract';
6
- import { syncRequestFactoryToken, } from './sync-request.token';
7
- import { syncResponseFactoryToken, } from './sync-response.token';
5
+ import { syncRequestFactoryToken, } from './request/sync-request.token';
6
+ import { syncResponseFactoryToken, } from './response/sync-response.token';
8
7
  import { ShowErrorsAction } from '../actions/show-errors/show-errors.action.class';
9
8
  import * as i0 from "@angular/core";
10
- import * as i1 from "../../http/secure-api/secure-api.service";
9
+ import * as i1 from "../xps-api/xps-api.service";
11
10
  import * as i2 from "../actions/next-action.service";
12
11
  import * as i3 from "../../settings/settings.service";
12
+ import * as i4 from "../../encrypt-credit-card/encrypt-credit-card.service";
13
13
  export class SyncService extends EmitDataService {
14
- constructor(requestFactory, responseFactory, secureApi, nextActionService, settingsService) {
14
+ constructor(requestFactory, responseFactory, xpsApiService, nextActionService, settingsService, encryptCreditCardService) {
15
15
  super();
16
16
  this.requestFactory = requestFactory;
17
17
  this.responseFactory = responseFactory;
18
- this.secureApi = secureApi;
18
+ this.xpsApiService = xpsApiService;
19
19
  this.nextActionService = nextActionService;
20
20
  this.settingsService = settingsService;
21
- this.apiRoute = 'directpayment';
21
+ this.encryptCreditCardService = encryptCreditCardService;
22
22
  this.prevFieldSyncStates = {};
23
23
  this.form = new UntypedFormGroup({});
24
24
  this.fields = [];
25
+ this.fieldAsyncValidation = new Subject();
26
+ }
27
+ get fieldAsyncValidation$() {
28
+ return this.fieldAsyncValidation.asObservable();
25
29
  }
26
30
  setup(form, fields) {
27
31
  this.reset();
@@ -52,6 +56,11 @@ export class SyncService extends EmitDataService {
52
56
  const requestPromise = this.request(field);
53
57
  this.setPrevFieldSyncState(field, value, requestPromise);
54
58
  return requestPromise.then((response) => {
59
+ this.fieldAsyncValidation.next({
60
+ value,
61
+ field,
62
+ response,
63
+ });
55
64
  return response.error ?? null;
56
65
  });
57
66
  }
@@ -66,10 +75,10 @@ export class SyncService extends EmitDataService {
66
75
  fields: this.fields,
67
76
  form: this.form,
68
77
  });
69
- return lastValueFrom(this.secureApi.post(this.apiRoute, new URLSearchParams(requestParams), {
70
- headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'),
71
- responseType: 'json',
72
- })).then((response) => {
78
+ const encryptedRequest = this.encryptCreditCardService.encryptCreditCard(requestParams);
79
+ return this.xpsApiService
80
+ .directPaymentRequest(encryptedRequest)
81
+ .then((response) => {
73
82
  if (response.errors?.length) {
74
83
  this.nextActionService.emitFlowUpdates(new ShowErrorsAction(response.errors));
75
84
  }
@@ -89,7 +98,7 @@ export class SyncService extends EmitDataService {
89
98
  this.prevFieldSyncStates[field.name] = { value, result };
90
99
  }
91
100
  }
92
- SyncService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, deps: [{ token: syncRequestFactoryToken }, { token: syncResponseFactoryToken }, { token: i1.SecureApiClient }, { token: i2.NextActionService }, { token: i3.SettingsService }], target: i0.ɵɵFactoryTarget.Injectable });
101
+ SyncService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, deps: [{ token: syncRequestFactoryToken }, { token: syncResponseFactoryToken }, { token: i1.XpsApiService }, { token: i2.NextActionService }, { token: i3.SettingsService }, { token: i4.EncryptCreditCardService }], target: i0.ɵɵFactoryTarget.Injectable });
93
102
  SyncService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, providedIn: 'root' });
94
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, decorators: [{
95
104
  type: Injectable,
@@ -102,5 +111,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
102
111
  }] }, { type: undefined, decorators: [{
103
112
  type: Inject,
104
113
  args: [syncResponseFactoryToken]
105
- }] }, { type: i1.SecureApiClient }, { type: i2.NextActionService }, { type: i3.SettingsService }]; } });
106
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGdCQUFnQixFQUFvQixNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHckMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBSWhFLE9BQU8sRUFFTCx1QkFBdUIsR0FDeEIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBRUwsd0JBQXdCLEdBQ3pCLE1BQU0sdUJBQXVCLENBQUM7QUFFL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saURBQWlELENBQUM7Ozs7O0FBS25GLE1BQU0sT0FBTyxXQUFZLFNBQVEsZUFBNEI7SUFPM0QsWUFFbUIsY0FBa0MsRUFFbEMsZUFBb0MsRUFDcEMsU0FBMEIsRUFDMUIsaUJBQW9DLEVBQ3BDLGVBQWdDO1FBRWpELEtBQUssRUFBRSxDQUFDO1FBUFMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBRWxDLG9CQUFlLEdBQWYsZUFBZSxDQUFxQjtRQUNwQyxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQUMxQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQWJsQyxhQUFRLEdBQUcsZUFBZSxDQUFDO1FBRXBDLHdCQUFtQixHQUE0QyxFQUFFLENBQUM7UUFDbEUsU0FBSSxHQUFxQixJQUFJLGdCQUFnQixDQUFDLEVB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MkJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFVudHlwZWRGb3JtR3JvdXAsIFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZWN1cmVBcGlDbGllbnQgfSBmcm9tICcuLi8uLi9odHRwL3NlY3VyZS1hcGkvc2VjdXJlLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW1pdERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vZW1pdC1kYXRhLnNlcnZpY2UuYWJzdHJhY3QnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkU3luY1N0YXRlIH0gZnJvbSAnLi9maWVsZC1zeW5jLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBTeW5jUmVxdWVzdEZhY3RvcnksXG4gIHN5bmNSZXF1ZXN0RmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3N5bmMtcmVxdWVzdC50b2tlbic7XG5pbXBvcnQgeyBTeW5jUmVzcG9uc2UgfSBmcm9tICcuL3N5bmMtcmVzcG9uc2UuY2xhc3MnO1xuaW1wb3J0IHtcbiAgU3luY1Jlc3BvbnNlRmFjdG9yeSxcbiAgc3luY1Jlc3BvbnNlRmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3N5bmMtcmVzcG9uc2UudG9rZW4nO1xuaW1wb3J0IHsgTmV4dEFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi9hY3Rpb25zL25leHQtYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2hvd0Vycm9yc0FjdGlvbiB9IGZyb20gJy4uL2FjdGlvbnMvc2hvdy1lcnJvcnMvc2hvdy1lcnJvcnMuYWN0aW9uLmNsYXNzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFN5bmNTZXJ2aWNlIGV4dGVuZHMgRW1pdERhdGFTZXJ2aWNlPFhwc1Jlc3BvbnNlPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpUm91dGUgPSAnZGlyZWN0cGF5bWVudCc7XG5cbiAgcHJpdmF0ZSBwcmV2RmllbGRTeW5jU3RhdGVzOiB7IFtmaWVsZE5hbWU6IHN0cmluZ106IEZpZWxkU3luY1N0YXRlIH0gPSB7fTtcbiAgcHJpdmF0ZSBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuICBwcml2YXRlIGZpZWxkczogRmllbGRbXSA9IFtdO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHN5bmNSZXF1ZXN0RmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVxdWVzdEZhY3Rvcnk6IFN5bmNSZXF1ZXN0RmFjdG9yeSxcbiAgICBASW5qZWN0KHN5bmNSZXNwb25zZUZhY3RvcnlUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlRmFjdG9yeTogU3luY1Jlc3BvbnNlRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3VyZUFwaTogU2VjdXJlQXBpQ2xpZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXR1cChmb3JtOiBVbnR5cGVkRm9ybUdyb3VwLCBmaWVsZHM6IEZpZWxkW10pOiB2b2lkIHtcbiAgICB0aGlzLnJlc2V0KCk7XG5cbiAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgIHRoaXMuZmllbGRzID0gZmllbGRzO1xuICB9XG5cbiAgcHVibGljIHJlc2V0KCk6IHZvaWQge1xuICAgIHRoaXMucHJldkZpZWxkU3luY1N0YXRlcyA9IHt9O1xuICAgIHRoaXMuZm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHt9KTtcbiAgICB0aGlzLmZpZWxkcyA9IFtdO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHZhbGlkYXRlKGZpZWxkOiBGaWVsZCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHtcbiAgICBpZiAoIXRoaXMuaXNSZWFkeUZpZWxkKGZpZWxkKSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmdldChmaWVsZC5uYW1lKTtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2w/LnZhbHVlO1xuICAgIGNvbnN0IHByZXZGaWVsZFN0YXRlID0gdGhpcy5nZXRQcmV2RmllbGRTeW5jU3RhdGUoZmllbGQpO1xuXG4gICAgY29uc3QgaXNJbml0aWFsVmFsdWUgPSB2YWx1ZSA9PT0gZmllbGQudmFsdWUgJiYgIXByZXZGaWVsZFN0YXRlO1xuXG4gICAgaWYgKGlzSW5pdGlhbFZhbHVlKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIGlmIChwcmV2RmllbGRTdGF0ZSAmJiB2YWx1ZSA9PT0gcHJldkZpZWxkU3RhdGUudmFsdWUpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocHJldkZpZWxkU3RhdGUucmVzdWx0KS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U/LmVycm9yID8/IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCByZXF1ZXN0UHJvbWlzZSA9IHRoaXMucmVxdWVzdChmaWVsZCk7XG4gICAgdGhpcy5zZXRQcmV2RmllbGRTeW5jU3RhdGUoZmllbGQsIHZhbHVlLCByZXF1ZXN0UHJvbWlzZSk7XG5cbiAgICByZXR1cm4gcmVxdWVzdFByb21pc2UudGhlbigocmVzcG9uc2U6IFN5bmNSZXNwb25zZSkgPT4ge1xuICAgICAgcmV0dXJuIHJlc3BvbnNlLmVycm9yID8/IG51bGw7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3luY1ZhbGlkYXRpb25FcnJvcnMoZmllbGQ6IEZpZWxkKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIHJldHVybiBjb250cm9sPy5lcnJvcnMgPz8gbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyByZXF1ZXN0KGZpZWxkOiBGaWVsZCk6IFByb21pc2U8U3luY1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtcyA9IHRoaXMucmVxdWVzdEZhY3Rvcnkoe1xuICAgICAgdG9rZW46IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnRva2VuLFxuICAgICAgY2hhbmdlZEZpZWxkOiBmaWVsZCxcbiAgICAgIGZpZWxkczogdGhpcy5maWVsZHMsXG4gICAgICBmb3JtOiB0aGlzLmZvcm0sXG4gICAgfSk7XG5cbiAgICByZXR1cm4gbGFzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc2VjdXJlQXBpLnBvc3Q8WHBzUmVzcG9uc2U+KFxuICAgICAgICB0aGlzLmFwaVJvdXRlLFxuICAgICAgICBuZXcgVVJMU2VhcmNoUGFyYW1zKFxuICAgICAgICAgIHJlcXVlc3RQYXJhbXMgYXMgdW5rbm93biBhcyB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9XG4gICAgICAgICksXG4gICAgICAgIHtcbiAgICAgICAgICBoZWFkZXJzOiBuZXcgSHR0cEhlYWRlcnMoKS5zZXQoXG4gICAgICAgICAgICAnQ29udGVudC1UeXBlJyxcbiAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9dXRmLTgnXG4gICAgICAgICAgKSxcbiAgICAgICAgICByZXNwb25zZVR5cGU6ICdqc29uJyxcbiAgICAgICAgfVxuICAgICAgKVxuICAgICkudGhlbigocmVzcG9uc2U6IFhwc1Jlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2UuZXJyb3JzPy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy5uZXh0QWN0aW9uU2VydmljZS5lbWl0Rmxvd1VwZGF0ZXMoXG4gICAgICAgICAgbmV3IFNob3dFcnJvcnNBY3Rpb24ocmVzcG9uc2UuZXJyb3JzKVxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmVtaXQocmVzcG9uc2UpO1xuICAgICAgcmV0dXJuIHRoaXMucmVzcG9uc2VGYWN0b3J5KGZpZWxkLCByZXNwb25zZSk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzUmVhZHlGaWVsZChmaWVsZDogRmllbGQpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc1N5bmNFbmFibGVkID0gISFmaWVsZC5qYXZhc2NyaXB0Py5jaGFuZ2U7XG4gICAgY29uc3QgaXNFeGlzdHNJbkZvcm0gPSAhIXRoaXMuZm9ybT8uZ2V0KGZpZWxkLm5hbWUpO1xuXG4gICAgcmV0dXJuIGlzU3luY0VuYWJsZWQgJiYgaXNFeGlzdHNJbkZvcm07XG4gIH1cblxuICBwcml2YXRlIGdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZDogRmllbGQpOiBGaWVsZFN5bmNTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMucHJldkZpZWxkU3luY1N0YXRlc1tmaWVsZC5uYW1lXTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJldkZpZWxkU3luY1N0YXRlKFxuICAgIGZpZWxkOiBGaWVsZCxcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICByZXN1bHQ6IFByb21pc2U8U3luY1Jlc3BvbnNlPlxuICApOiB2b2lkIHtcbiAgICB0aGlzLnByZXZGaWVsZFN5bmNTdGF0ZXNbZmllbGQubmFtZV0gPSB7IHZhbHVlLCByZXN1bHQgfTtcbiAgfVxufVxuIl19
114
+ }] }, { type: i1.XpsApiService }, { type: i2.NextActionService }, { type: i3.SettingsService }, { type: i4.EncryptCreditCardService }]; } });
115
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJaEUsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFFTCx3QkFBd0IsR0FDekIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7O0FBU25GLE1BQU0sT0FBTyxXQUFZLFNBQVEsZUFBNEI7SUFNM0QsWUFFbUIsY0FBa0MsRUFFbEMsZUFBb0MsRUFDcEMsYUFBNEIsRUFDNUIsaUJBQW9DLEVBQ3BDLGVBQWdDLEVBQ2hDLHdCQUFrRDtRQUVuRSxLQUFLLEVBQUUsQ0FBQztRQVJTLG1CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQUVsQyxvQkFBZSxHQUFmLGVBQWUsQ0FBcUI7UUFDcEMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFDNUIsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQWI3RCx3QkFBbUIsR0FBNEMsRUFBRSxDQUFDO1FBQ2xFLFNBQUksR0FBcUIsSUFBSSxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNsRCxXQUFN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OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRSSxNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBRTlCLE1BQU07MkJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBFbWl0RGF0YVNlcnZpY2UgfSBmcm9tICcuLi9lbWl0LWRhdGEuc2VydmljZS5hYnN0cmFjdCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNSZXNwb25zZSB9IGZyb20gJy4uL3hwcy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmllbGRTeW5jU3RhdGUgfSBmcm9tICcuL2ZpZWxkLXN5bmMtc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIFN5bmNSZXF1ZXN0RmFjdG9yeSxcbiAgc3luY1JlcXVlc3RGYWN0b3J5VG9rZW4sXG59IGZyb20gJy4vcmVxdWVzdC9zeW5jLXJlcXVlc3QudG9rZW4nO1xuaW1wb3J0IHsgU3luY1Jlc3BvbnNlIH0gZnJvbSAnLi9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7XG4gIFN5bmNSZXNwb25zZUZhY3RvcnksXG4gIHN5bmNSZXNwb25zZUZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLnRva2VuJztcbmltcG9ydCB7IE5leHRBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNob3dFcnJvcnNBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL3Nob3ctZXJyb3JzL3Nob3ctZXJyb3JzLmFjdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBYcHNBcGlTZXJ2aWNlIH0gZnJvbSAnLi4veHBzLWFwaS94cHMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmllbGRBc3luY1ZhbGlkYXRpb24gfSBmcm9tICcuL2ZpZWxkLWFzeW5jLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEVuY3J5cHRDcmVkaXRDYXJkU2VydmljZSB9IGZyb20gJy4uLy4uL2VuY3J5cHQtY3JlZGl0LWNhcmQvZW5jcnlwdC1jcmVkaXQtY2FyZC5zZXJ2aWNlJztcbmltcG9ydCB7IFN5bmNSZXF1ZXN0IH0gZnJvbSAnLi9yZXF1ZXN0L3N5bmMtcmVxdWVzdC5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTeW5jU2VydmljZSBleHRlbmRzIEVtaXREYXRhU2VydmljZTxYcHNSZXNwb25zZT4ge1xuICBwcml2YXRlIHByZXZGaWVsZFN5bmNTdGF0ZXM6IHsgW2ZpZWxkTmFtZTogc3RyaW5nXTogRmllbGRTeW5jU3RhdGUgfSA9IHt9O1xuICBwcml2YXRlIGZvcm06IFVudHlwZWRGb3JtR3JvdXAgPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XG4gIHByaXZhdGUgZmllbGRzOiBGaWVsZFtdID0gW107XG4gIHByaXZhdGUgcmVhZG9ubHkgZmllbGRBc3luY1ZhbGlkYXRpb24gPSBuZXcgU3ViamVjdDxGaWVsZEFzeW5jVmFsaWRhdGlvbj4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChzeW5jUmVxdWVzdEZhY3RvcnlUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlcXVlc3RGYWN0b3J5OiBTeW5jUmVxdWVzdEZhY3RvcnksXG4gICAgQEluamVjdChzeW5jUmVzcG9uc2VGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNwb25zZUZhY3Rvcnk6IFN5bmNSZXNwb25zZUZhY3RvcnksXG4gICAgcHJpdmF0ZSByZWFkb25seSB4cHNBcGlTZXJ2aWNlOiBYcHNBcGlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2U6IEVuY3J5cHRDcmVkaXRDYXJkU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGdldCBmaWVsZEFzeW5jVmFsaWRhdGlvbiQoKTogT2JzZXJ2YWJsZTxGaWVsZEFzeW5jVmFsaWRhdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkQXN5bmNWYWxpZGF0aW9uLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHNldHVwKGZvcm06IFVudHlwZWRGb3JtR3JvdXAsIGZpZWxkczogRmllbGRbXSk6IHZvaWQge1xuICAgIHRoaXMucmVzZXQoKTtcblxuICAgIHRoaXMuZm9ybSA9IGZvcm07XG4gICAgdGhpcy5maWVsZHMgPSBmaWVsZHM7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5wcmV2RmllbGRTeW5jU3RhdGVzID0ge307XG4gICAgdGhpcy5mb3JtID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuICAgIHRoaXMuZmllbGRzID0gW107XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgdmFsaWRhdGUoZmllbGQ6IEZpZWxkKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGlmICghdGhpcy5pc1JlYWR5RmllbGQoZmllbGQpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgY29uc3QgcHJldkZpZWxkU3RhdGUgPSB0aGlzLmdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZCk7XG5cbiAgICBjb25zdCBpc0luaXRpYWxWYWx1ZSA9IHZhbHVlID09PSBmaWVsZC52YWx1ZSAmJiAhcHJldkZpZWxkU3RhdGU7XG5cbiAgICBpZiAoaXNJbml0aWFsVmFsdWUpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgfVxuXG4gICAgaWYgKHByZXZGaWVsZFN0YXRlICYmIHZhbHVlID09PSBwcmV2RmllbGRTdGF0ZS52YWx1ZSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwcmV2RmllbGRTdGF0ZS5yZXN1bHQpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiByZXNwb25zZT8uZXJyb3IgPz8gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RQcm9taXNlID0gdGhpcy5yZXF1ZXN0KGZpZWxkKTtcblxuICAgIHRoaXMuc2V0UHJldkZpZWxkU3luY1N0YXRlKGZpZWxkLCB2YWx1ZSwgcmVxdWVzdFByb21pc2UpO1xuXG4gICAgcmV0dXJuIHJlcXVlc3RQcm9taXNlLnRoZW4oKHJlc3BvbnNlOiBTeW5jUmVzcG9uc2UpID0+IHtcbiAgICAgIHRoaXMuZmllbGRBc3luY1ZhbGlkYXRpb24ubmV4dCh7XG4gICAgICAgIHZhbHVlLFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgcmVzcG9uc2UsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHJlc3BvbnNlLmVycm9yID8/IG51bGw7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3luY1ZhbGlkYXRpb25FcnJvcnMoZmllbGQ6IEZpZWxkKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIHJldHVybiBjb250cm9sPy5lcnJvcnMgPz8gbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyByZXF1ZXN0KGZpZWxkOiBGaWVsZCk6IFByb21pc2U8U3luY1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtcyA9IHRoaXMucmVxdWVzdEZhY3Rvcnkoe1xuICAgICAgdG9rZW46IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnRva2VuLFxuICAgICAgY2hhbmdlZEZpZWxkOiBmaWVsZCxcbiAgICAgIGZpZWxkczogdGhpcy5maWVsZHMsXG4gICAgICBmb3JtOiB0aGlzLmZvcm0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBlbmNyeXB0ZWRSZXF1ZXN0ID1cbiAgICAgIHRoaXMuZW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlLmVuY3J5cHRDcmVkaXRDYXJkPFN5bmNSZXF1ZXN0PihcbiAgICAgICAgcmVxdWVzdFBhcmFtc1xuICAgICAgKTtcblxuICAgIHJldHVybiB0aGlzLnhwc0FwaVNlcnZpY2VcbiAgICAgIC5kaXJlY3RQYXltZW50UmVxdWVzdChlbmNyeXB0ZWRSZXF1ZXN0KVxuICAgICAgLnRoZW4oKHJlc3BvbnNlOiBYcHNSZXNwb25zZSkgPT4ge1xuICAgICAgICBpZiAocmVzcG9uc2UuZXJyb3JzPy5sZW5ndGgpIHtcbiAgICAgICAgICB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmVtaXRGbG93VXBkYXRlcyhcbiAgICAgICAgICAgIG5ldyBTaG93RXJyb3JzQWN0aW9uKHJlc3BvbnNlLmVycm9ycylcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5lbWl0KHJlc3BvbnNlKTtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVzcG9uc2VGYWN0b3J5KGZpZWxkLCByZXNwb25zZSk7XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNSZWFkeUZpZWxkKGZpZWxkOiBGaWVsZCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGlzU3luY0VuYWJsZWQgPSAhIWZpZWxkLmphdmFzY3JpcHQ/LmNoYW5nZTtcbiAgICBjb25zdCBpc0V4aXN0c0luRm9ybSA9ICEhdGhpcy5mb3JtPy5nZXQoZmllbGQubmFtZSk7XG5cbiAgICByZXR1cm4gaXNTeW5jRW5hYmxlZCAmJiBpc0V4aXN0c0luRm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UHJldkZpZWxkU3luY1N0YXRlKGZpZWxkOiBGaWVsZCk6IEZpZWxkU3luY1N0YXRlIHtcbiAgICByZXR1cm4gdGhpcy5wcmV2RmllbGRTeW5jU3RhdGVzW2ZpZWxkLm5hbWVdO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRQcmV2RmllbGRTeW5jU3RhdGUoXG4gICAgZmllbGQ6IEZpZWxkLFxuICAgIHZhbHVlOiB1bmtub3duLFxuICAgIHJlc3VsdDogUHJvbWlzZTxTeW5jUmVzcG9uc2U+XG4gICk6IHZvaWQge1xuICAgIHRoaXMucHJldkZpZWxkU3luY1N0YXRlc1tmaWVsZC5uYW1lXSA9IHsgdmFsdWUsIHJlc3VsdCB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,49 @@
1
+ import { lastValueFrom } from 'rxjs';
2
+ import { Inject, Injectable } from '@angular/core';
3
+ import { HttpHeaders } from '@angular/common/http';
4
+ import { notifyDfpStatusRequestFactoryToken, } from './request/notify-dfp-status-request.token';
5
+ import { TokenError } from '../../../../exceptions-handling/errors/token-error.class';
6
+ import { XpsResponseError } from '../../../xps-response.error';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../../http/secure-api/secure-api.service";
9
+ import * as i2 from "../../../../settings/settings.service";
10
+ export class NotifyDfpStatusService {
11
+ constructor(secureApi, settingsService, requestFactory) {
12
+ this.secureApi = secureApi;
13
+ this.settingsService = settingsService;
14
+ this.requestFactory = requestFactory;
15
+ this.apiRouteComplete = 'secure3d/notify';
16
+ }
17
+ /*
18
+ * isCompind is a flag of dfp expired state
19
+ */
20
+ request(threeDsId, isCompind) {
21
+ const token = this.settingsService.token;
22
+ if (!token) {
23
+ throw new TokenError();
24
+ }
25
+ const requestParams = this.requestFactory({
26
+ token: token,
27
+ threeDsTrXid: threeDsId,
28
+ isCompind,
29
+ });
30
+ lastValueFrom(this.secureApi.post(this.apiRouteComplete, new URLSearchParams({ ...requestParams }), {
31
+ headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'),
32
+ responseType: 'json',
33
+ })).catch((error) => {
34
+ throw new XpsResponseError(error.message);
35
+ });
36
+ }
37
+ }
38
+ NotifyDfpStatusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NotifyDfpStatusService, deps: [{ token: i1.SecureApiClient }, { token: i2.SettingsService }, { token: notifyDfpStatusRequestFactoryToken }], target: i0.ɵɵFactoryTarget.Injectable });
39
+ NotifyDfpStatusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NotifyDfpStatusService, providedIn: 'root' });
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: NotifyDfpStatusService, decorators: [{
41
+ type: Injectable,
42
+ args: [{
43
+ providedIn: 'root',
44
+ }]
45
+ }], ctorParameters: function () { return [{ type: i1.SecureApiClient }, { type: i2.SettingsService }, { type: undefined, decorators: [{
46
+ type: Inject,
47
+ args: [notifyDfpStatusRequestFactoryToken]
48
+ }] }]; } });
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LWRmcC1zdGF0dXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvdGhyZWUtZHMvYXBpL25vdGlmeS1kZnAtc3RhdHVzL25vdGlmeS1kZnAtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbkQsT0FBTyxFQUVMLGtDQUFrQyxHQUNuQyxNQUFNLDJDQUEyQyxDQUFDO0FBQ25ELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN0RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUsvRCxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLFlBQ21CLFNBQTBCLEVBQzFCLGVBQWdDLEVBRWhDLGNBQTZDO1FBSDdDLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUVoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBK0I7UUFOL0MscUJBQWdCLEdBQUcsaUJBQWlCLENBQUM7SUFPbkQsQ0FBQztJQUVKOztPQUVHO0lBQ0ksT0FBTyxDQUFDLFNBQWlCLEVBQUUsU0FBa0I7UUFDbEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUM7UUFFekMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNWLE1BQU0sSUFBSSxVQUFVLEVBQUUsQ0FBQztTQUN4QjtRQUVELE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUM7WUFDeEMsS0FBSyxFQUFFLEtBQUs7WUFDWixZQUFZLEVBQUUsU0FBUztZQUN2QixTQUFTO1NBQ1YsQ0FBQyxDQUFDO1FBRUgsYUFBYSxDQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUNqQixJQUFJLENBQUMsZ0JBQWdCLEVBQ3JCLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxFQUN6QztZQUNFLE9BQU8sRUFBRSxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FDNUIsY0FBYyxFQUNkLGtEQUFrRCxDQUNuRDtZQUNELFlBQVksRUFBRSxNQUFNO1NBQ3JCLENBQ0YsQ0FDRixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQVksRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sSUFBSSxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzttSEF6Q1Usc0JBQXNCLGdGQU12QixrQ0FBa0M7dUhBTmpDLHNCQUFzQixjQUZyQixNQUFNOzJGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9JLE1BQU07MkJBQUMsa0NBQWtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFNlY3VyZUFwaUNsaWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2h0dHAvc2VjdXJlLWFwaS9zZWN1cmUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQge1xuICBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0RmFjdG9yeSxcbiAgbm90aWZ5RGZwU3RhdHVzUmVxdWVzdEZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXF1ZXN0L25vdGlmeS1kZnAtc3RhdHVzLXJlcXVlc3QudG9rZW4nO1xuaW1wb3J0IHsgVG9rZW5FcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL3Rva2VuLWVycm9yLmNsYXNzJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlRXJyb3IgfSBmcm9tICcuLi8uLi8uLi94cHMtcmVzcG9uc2UuZXJyb3InO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZ5RGZwU3RhdHVzU2VydmljZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpUm91dGVDb21wbGV0ZSA9ICdzZWN1cmUzZC9ub3RpZnknO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNlY3VyZUFwaTogU2VjdXJlQXBpQ2xpZW50LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgQEluamVjdChub3RpZnlEZnBTdGF0dXNSZXF1ZXN0RmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVxdWVzdEZhY3Rvcnk6IE5vdGlmeURmcFN0YXR1c1JlcXVlc3RGYWN0b3J5XG4gICkge31cblxuICAvKlxuICAgKiBpc0NvbXBpbmQgaXMgYSBmbGFnIG9mIGRmcCBleHBpcmVkIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgcmVxdWVzdCh0aHJlZURzSWQ6IHN0cmluZywgaXNDb21waW5kOiBib29sZWFuKTogdm9pZCB7XG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLnNldHRpbmdzU2VydmljZS50b2tlbjtcblxuICAgIGlmICghdG9rZW4pIHtcbiAgICAgIHRocm93IG5ldyBUb2tlbkVycm9yKCk7XG4gICAgfVxuXG4gICAgY29uc3QgcmVxdWVzdFBhcmFtcyA9IHRoaXMucmVxdWVzdEZhY3Rvcnkoe1xuICAgICAgdG9rZW46IHRva2VuLFxuICAgICAgdGhyZWVEc1RyWGlkOiB0aHJlZURzSWQsXG4gICAgICBpc0NvbXBpbmQsXG4gICAgfSk7XG5cbiAgICBsYXN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5zZWN1cmVBcGkucG9zdChcbiAgICAgICAgdGhpcy5hcGlSb3V0ZUNvbXBsZXRlLFxuICAgICAgICBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgLi4ucmVxdWVzdFBhcmFtcyB9KSxcbiAgICAgICAge1xuICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICAgICAgICdDb250ZW50LVR5cGUnLFxuICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD11dGYtOCdcbiAgICAgICAgICApLFxuICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgICAgICB9XG4gICAgICApXG4gICAgKS5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICB0aHJvdyBuZXcgWHBzUmVzcG9uc2VFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICB9KTtcbiAgfVxufVxuIl19
@@ -0,0 +1,8 @@
1
+ export class NotifyDfpStatusRequest {
2
+ constructor(params) {
3
+ this.access_token = params.token;
4
+ this.threeDSTrXid = params.threeDsTrXid;
5
+ this.secure3dCompind = params.isCompind ? 'Y' : 'N';
6
+ }
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LWRmcC1zdGF0dXMtcmVxdWVzdC5jbGFzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvdGhyZWUtZHMvYXBpL25vdGlmeS1kZnAtc3RhdHVzL3JlcXVlc3Qvbm90aWZ5LWRmcC1zdGF0dXMtcmVxdWVzdC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sc0JBQXNCO0lBU2pDLFlBQW1CLE1BSWxCO1FBQ0MsSUFBSSxDQUFDLFlBQVksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDO1FBQ2pDLElBQUksQ0FBQyxZQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQ3RELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBwdWJsaWMgcmVhZG9ubHkgYWNjZXNzX3Rva2VuOiBzdHJpbmc7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvblxuICBwdWJsaWMgcmVhZG9ubHkgdGhyZWVEU1RyWGlkOiBzdHJpbmc7XG5cbiAgcHVibGljIHJlYWRvbmx5IHNlY3VyZTNkQ29tcGluZDogJ1knIHwgJ04nO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihwYXJhbXM6IHtcbiAgICB0b2tlbjogc3RyaW5nO1xuICAgIHRocmVlRHNUclhpZDogc3RyaW5nO1xuICAgIGlzQ29tcGluZDogYm9vbGVhbjtcbiAgfSkge1xuICAgIHRoaXMuYWNjZXNzX3Rva2VuID0gcGFyYW1zLnRva2VuO1xuICAgIHRoaXMudGhyZWVEU1RyWGlkID0gcGFyYW1zLnRocmVlRHNUclhpZDtcbiAgICB0aGlzLnNlY3VyZTNkQ29tcGluZCA9IHBhcmFtcy5pc0NvbXBpbmQgPyAnWScgOiAnTic7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { NotifyDfpStatusRequest } from './notify-dfp-status-request.class';
3
+ export const notifyDfpStatusRequestFactoryToken = new InjectionToken('NotifyDfpStatusRequest');
4
+ export const notifyDfpStatusRequestFactoryProvider = {
5
+ provide: notifyDfpStatusRequestFactoryToken,
6
+ useValue: (...args) => new NotifyDfpStatusRequest(...args),
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZ5LWRmcC1zdGF0dXMtcmVxdWVzdC50b2tlbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvdGhyZWUtZHMvYXBpL25vdGlmeS1kZnAtc3RhdHVzL3JlcXVlc3Qvbm90aWZ5LWRmcC1zdGF0dXMtcmVxdWVzdC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQVUzRSxNQUFNLENBQUMsTUFBTSxrQ0FBa0MsR0FDN0MsSUFBSSxjQUFjLENBQWdDLHdCQUF3QixDQUFDLENBQUM7QUFFOUUsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQWtCO0lBQ2xFLE9BQU8sRUFBRSxrQ0FBa0M7SUFDM0MsUUFBUSxFQUFFLENBQUMsR0FBRyxJQUFzQyxFQUFFLEVBQUUsQ0FDdEQsSUFBSSxzQkFBc0IsQ0FBQyxHQUFHLElBQUksQ0FBQztDQUN0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5vdGlmeURmcFN0YXR1c1JlcXVlc3QgfSBmcm9tICcuL25vdGlmeS1kZnAtc3RhdHVzLXJlcXVlc3QuY2xhc3MnO1xuXG5leHBvcnQgdHlwZSBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0UGFyYW1ldGVycyA9IENvbnN0cnVjdG9yUGFyYW1ldGVyczxcbiAgdHlwZW9mIE5vdGlmeURmcFN0YXR1c1JlcXVlc3Rcbj47XG5cbmV4cG9ydCB0eXBlIE5vdGlmeURmcFN0YXR1c1JlcXVlc3RGYWN0b3J5ID0gKFxuICAuLi5hcmdzOiBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0UGFyYW1ldGVyc1xuKSA9PiBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0O1xuXG5leHBvcnQgY29uc3Qgbm90aWZ5RGZwU3RhdHVzUmVxdWVzdEZhY3RvcnlUb2tlbjogSW5qZWN0aW9uVG9rZW48Tm90aWZ5RGZwU3RhdHVzUmVxdWVzdEZhY3Rvcnk+ID1cbiAgbmV3IEluamVjdGlvblRva2VuPE5vdGlmeURmcFN0YXR1c1JlcXVlc3RGYWN0b3J5PignTm90aWZ5RGZwU3RhdHVzUmVxdWVzdCcpO1xuXG5leHBvcnQgY29uc3Qgbm90aWZ5RGZwU3RhdHVzUmVxdWVzdEZhY3RvcnlQcm92aWRlcjogVmFsdWVQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogbm90aWZ5RGZwU3RhdHVzUmVxdWVzdEZhY3RvcnlUb2tlbixcbiAgdXNlVmFsdWU6ICguLi5hcmdzOiBOb3RpZnlEZnBTdGF0dXNSZXF1ZXN0UGFyYW1ldGVycykgPT5cbiAgICBuZXcgTm90aWZ5RGZwU3RhdHVzUmVxdWVzdCguLi5hcmdzKSxcbn07XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export class StatusThreeDsRequest {
2
+ constructor(token, threeDsId) {
3
+ this.access_token = token;
4
+ this.threeDSTrXid = threeDsId;
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLXJlcXVlc3QuY2xhc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3RocmVlLWRzL2FwaS9zdGF0dXMtdGhyZWUtZHMvcmVxdWVzdC9zdGF0dXMtdGhyZWUtZHMtcmVxdWVzdC5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sb0JBQW9CO0lBTy9CLFlBQW1CLEtBQWEsRUFBRSxTQUFpQjtRQUNqRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztRQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztJQUNoQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgU3RhdHVzVGhyZWVEc1JlcXVlc3Qge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gIHB1YmxpYyByZWFkb25seSBhY2Nlc3NfdG9rZW46IHN0cmluZztcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25hbWluZy1jb252ZW50aW9uXG4gIHB1YmxpYyByZWFkb25seSB0aHJlZURTVHJYaWQ6IHN0cmluZztcblxuICBwdWJsaWMgY29uc3RydWN0b3IodG9rZW46IHN0cmluZywgdGhyZWVEc0lkOiBzdHJpbmcpIHtcbiAgICB0aGlzLmFjY2Vzc190b2tlbiA9IHRva2VuO1xuICAgIHRoaXMudGhyZWVEU1RyWGlkID0gdGhyZWVEc0lkO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { StatusThreeDsRequest } from './status-three-ds-request.class';
3
+ export const statusThreeDsRequestFactoryToken = new InjectionToken('StatusThreeDsRequest');
4
+ export const statusThreeDsRequestFactoryProvider = {
5
+ provide: statusThreeDsRequestFactoryToken,
6
+ useValue: (...args) => new StatusThreeDsRequest(...args),
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLXJlcXVlc3QudG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3RocmVlLWRzL2FwaS9zdGF0dXMtdGhyZWUtZHMvcmVxdWVzdC9zdGF0dXMtdGhyZWUtZHMtcmVxdWVzdC50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQVV2RSxNQUFNLENBQUMsTUFBTSxnQ0FBZ0MsR0FDM0MsSUFBSSxjQUFjLENBQThCLHNCQUFzQixDQUFDLENBQUM7QUFFMUUsTUFBTSxDQUFDLE1BQU0sbUNBQW1DLEdBQWtCO0lBQ2hFLE9BQU8sRUFBRSxnQ0FBZ0M7SUFDekMsUUFBUSxFQUFFLENBQUMsR0FBRyxJQUFvQyxFQUFFLEVBQUUsQ0FDcEQsSUFBSSxvQkFBb0IsQ0FBQyxHQUFHLElBQUksQ0FBQztDQUNwQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0YXR1c1RocmVlRHNSZXF1ZXN0IH0gZnJvbSAnLi9zdGF0dXMtdGhyZWUtZHMtcmVxdWVzdC5jbGFzcyc7XG5cbmV4cG9ydCB0eXBlIFN0YXR1c1RocmVlRHNSZXF1ZXN0UGFyYW1ldGVycyA9IENvbnN0cnVjdG9yUGFyYW1ldGVyczxcbiAgdHlwZW9mIFN0YXR1c1RocmVlRHNSZXF1ZXN0XG4+O1xuXG5leHBvcnQgdHlwZSBTdGF0dXNUaHJlZURzUmVxdWVzdEZhY3RvcnkgPSAoXG4gIC4uLmFyZ3M6IFN0YXR1c1RocmVlRHNSZXF1ZXN0UGFyYW1ldGVyc1xuKSA9PiBTdGF0dXNUaHJlZURzUmVxdWVzdDtcblxuZXhwb3J0IGNvbnN0IHN0YXR1c1RocmVlRHNSZXF1ZXN0RmFjdG9yeVRva2VuOiBJbmplY3Rpb25Ub2tlbjxTdGF0dXNUaHJlZURzUmVxdWVzdEZhY3Rvcnk+ID1cbiAgbmV3IEluamVjdGlvblRva2VuPFN0YXR1c1RocmVlRHNSZXF1ZXN0RmFjdG9yeT4oJ1N0YXR1c1RocmVlRHNSZXF1ZXN0Jyk7XG5cbmV4cG9ydCBjb25zdCBzdGF0dXNUaHJlZURzUmVxdWVzdEZhY3RvcnlQcm92aWRlcjogVmFsdWVQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogc3RhdHVzVGhyZWVEc1JlcXVlc3RGYWN0b3J5VG9rZW4sXG4gIHVzZVZhbHVlOiAoLi4uYXJnczogU3RhdHVzVGhyZWVEc1JlcXVlc3RQYXJhbWV0ZXJzKSA9PlxuICAgIG5ldyBTdGF0dXNUaHJlZURzUmVxdWVzdCguLi5hcmdzKSxcbn07XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export class StatusThreeDsResponse {
2
+ constructor(params) {
3
+ this.status = params.status;
4
+ this.checkoutForm = params.checkoutForm;
5
+ }
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLXJlc3BvbnNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC90aHJlZS1kcy9hcGkvc3RhdHVzLXRocmVlLWRzL3Jlc3BvbnNlL3N0YXR1cy10aHJlZS1kcy1yZXNwb25zZS5jbGFzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8scUJBQXFCO0lBSWhDLFlBQW1CLE1BQXlDO1FBQzFELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztRQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7SUFDMUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGhyZWVEc0NoZWNrb3V0Rm9ybSB9IGZyb20gJy4uL3RocmVlLWRzLWNoZWNrb3V0LWZvcm0uaW50ZXJmYWNlJztcbmltcG9ydCB7IFByb3BlcnRpZXMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9wcm9wZXJ0aWVzLnR5cGUnO1xuXG5leHBvcnQgY2xhc3MgU3RhdHVzVGhyZWVEc1Jlc3BvbnNlIHtcbiAgcHVibGljIHJlYWRvbmx5IHN0YXR1czogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgY2hlY2tvdXRGb3JtPzogVGhyZWVEc0NoZWNrb3V0Rm9ybTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocGFyYW1zOiBQcm9wZXJ0aWVzPFN0YXR1c1RocmVlRHNSZXNwb25zZT4pIHtcbiAgICB0aGlzLnN0YXR1cyA9IHBhcmFtcy5zdGF0dXM7XG4gICAgdGhpcy5jaGVja291dEZvcm0gPSBwYXJhbXMuY2hlY2tvdXRGb3JtO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { StatusThreeDsResponse } from './status-three-ds-response.class';
3
+ export const statusThreeDsResponseFactoryToken = new InjectionToken('StatusThreeDsResponse');
4
+ export const statusThreeDsResponseFactoryProvider = {
5
+ provide: statusThreeDsResponseFactoryToken,
6
+ useValue: (...args) => new StatusThreeDsResponse(...args),
7
+ };
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLXJlc3BvbnNlLnRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC90aHJlZS1kcy9hcGkvc3RhdHVzLXRocmVlLWRzL3Jlc3BvbnNlL3N0YXR1cy10aHJlZS1kcy1yZXNwb25zZS50b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQVV6RSxNQUFNLENBQUMsTUFBTSxpQ0FBaUMsR0FDNUMsSUFBSSxjQUFjLENBQStCLHVCQUF1QixDQUFDLENBQUM7QUFFNUUsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQWtCO0lBQ2pFLE9BQU8sRUFBRSxpQ0FBaUM7SUFDMUMsUUFBUSxFQUFFLENBQUMsR0FBRyxJQUFxQyxFQUFFLEVBQUUsQ0FDckQsSUFBSSxxQkFBcUIsQ0FBQyxHQUFHLElBQUksQ0FBQztDQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFZhbHVlUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0YXR1c1RocmVlRHNSZXNwb25zZSB9IGZyb20gJy4vc3RhdHVzLXRocmVlLWRzLXJlc3BvbnNlLmNsYXNzJztcblxuZXhwb3J0IHR5cGUgU3RhdHVzVGhyZWVEc1Jlc3BvbnNlUGFyYW1ldGVycyA9IENvbnN0cnVjdG9yUGFyYW1ldGVyczxcbiAgdHlwZW9mIFN0YXR1c1RocmVlRHNSZXNwb25zZVxuPjtcblxuZXhwb3J0IHR5cGUgU3RhdHVzVGhyZWVEc1Jlc3BvbnNlRmFjdG9yeSA9IChcbiAgLi4uYXJnczogU3RhdHVzVGhyZWVEc1Jlc3BvbnNlUGFyYW1ldGVyc1xuKSA9PiBTdGF0dXNUaHJlZURzUmVzcG9uc2U7XG5cbmV4cG9ydCBjb25zdCBzdGF0dXNUaHJlZURzUmVzcG9uc2VGYWN0b3J5VG9rZW46IEluamVjdGlvblRva2VuPFN0YXR1c1RocmVlRHNSZXNwb25zZUZhY3Rvcnk+ID1cbiAgbmV3IEluamVjdGlvblRva2VuPFN0YXR1c1RocmVlRHNSZXNwb25zZUZhY3Rvcnk+KCdTdGF0dXNUaHJlZURzUmVzcG9uc2UnKTtcblxuZXhwb3J0IGNvbnN0IHN0YXR1c1RocmVlRHNSZXNwb25zZUZhY3RvcnlQcm92aWRlcjogVmFsdWVQcm92aWRlciA9IHtcbiAgcHJvdmlkZTogc3RhdHVzVGhyZWVEc1Jlc3BvbnNlRmFjdG9yeVRva2VuLFxuICB1c2VWYWx1ZTogKC4uLmFyZ3M6IFN0YXR1c1RocmVlRHNSZXNwb25zZVBhcmFtZXRlcnMpID0+XG4gICAgbmV3IFN0YXR1c1RocmVlRHNSZXNwb25zZSguLi5hcmdzKSxcbn07XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLXJlc3BvbnNlLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvdGhyZWUtZHMvYXBpL3N0YXR1cy10aHJlZS1kcy9zdGF0dXMtdGhyZWUtZHMtcmVzcG9uc2UuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUaHJlZURzQ2hlY2tvdXRGb3JtIH0gZnJvbSAnLi90aHJlZS1kcy1jaGVja291dC1mb3JtLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhdHVzVGhyZWVEc1Jlc3BvbnNlQXBpIHtcbiAgc2VjdXJlM2Q6IHtcbiAgICBzdGF0dXM6IHN0cmluZztcbiAgICBjaGVja291dF9mb3JtPzogVGhyZWVEc0NoZWNrb3V0Rm9ybTtcbiAgfTtcbn1cbiJdfQ==
@@ -0,0 +1,60 @@
1
+ import { lastValueFrom, Subject } from 'rxjs';
2
+ import { map } from 'rxjs/operators';
3
+ import { Inject, Injectable } from '@angular/core';
4
+ import { HttpHeaders } from '@angular/common/http';
5
+ import { TokenError } from '../../../../exceptions-handling/errors/token-error.class';
6
+ import { XpsResponseError } from '../../../xps-response.error';
7
+ import { statusThreeDsRequestFactoryToken, } from './request/status-three-ds-request.token';
8
+ import { statusThreeDsResponseFactoryToken, } from './response/status-three-ds-response.token';
9
+ import * as i0 from "@angular/core";
10
+ import * as i1 from "../../../../http/secure-api/secure-api.service";
11
+ import * as i2 from "../../../../settings/settings.service";
12
+ export class StatusThreeDsService {
13
+ get response$() {
14
+ return this.response.asObservable();
15
+ }
16
+ constructor(secureApi, settingsService, requestFactory, responseFactory) {
17
+ this.secureApi = secureApi;
18
+ this.settingsService = settingsService;
19
+ this.requestFactory = requestFactory;
20
+ this.responseFactory = responseFactory;
21
+ this.apiRoute = 'secure3d/check';
22
+ this.response = new Subject();
23
+ }
24
+ request(data) {
25
+ const token = this.settingsService.token;
26
+ if (!token) {
27
+ throw new TokenError();
28
+ }
29
+ const requestParams = this.requestFactory(token, data.threeDSTrXid);
30
+ void lastValueFrom(this.secureApi
31
+ .post(this.apiRoute, new URLSearchParams({ ...requestParams }), {
32
+ headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'),
33
+ responseType: 'json',
34
+ })
35
+ .pipe(map((response) => {
36
+ const statusResponse = this.responseFactory({
37
+ status: response.secure3d.status,
38
+ checkoutForm: response.secure3d.checkout_form,
39
+ });
40
+ this.response.next(statusResponse);
41
+ }))).catch((error) => {
42
+ throw new XpsResponseError(error.message);
43
+ });
44
+ }
45
+ }
46
+ StatusThreeDsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusThreeDsService, deps: [{ token: i1.SecureApiClient }, { token: i2.SettingsService }, { token: statusThreeDsRequestFactoryToken }, { token: statusThreeDsResponseFactoryToken }], target: i0.ɵɵFactoryTarget.Injectable });
47
+ StatusThreeDsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusThreeDsService, providedIn: 'root' });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: StatusThreeDsService, decorators: [{
49
+ type: Injectable,
50
+ args: [{
51
+ providedIn: 'root',
52
+ }]
53
+ }], ctorParameters: function () { return [{ type: i1.SecureApiClient }, { type: i2.SettingsService }, { type: undefined, decorators: [{
54
+ type: Inject,
55
+ args: [statusThreeDsRequestFactoryToken]
56
+ }] }, { type: undefined, decorators: [{
57
+ type: Inject,
58
+ args: [statusThreeDsResponseFactoryToken]
59
+ }] }]; } });
60
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXRocmVlLWRzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3RocmVlLWRzL2FwaS9zdGF0dXMtdGhyZWUtZHMvc3RhdHVzLXRocmVlLWRzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUduRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDdEYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFHL0QsT0FBTyxFQUVMLGdDQUFnQyxHQUNqQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ2pELE9BQU8sRUFFTCxpQ0FBaUMsR0FDbEMsTUFBTSwyQ0FBMkMsQ0FBQzs7OztBQU1uRCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUtELFlBQ21CLFNBQTBCLEVBQzFCLGVBQWdDLEVBRWhDLGNBQTJDLEVBRTNDLGVBQTZDO1FBTDdDLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQzFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUVoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBNkI7UUFFM0Msb0JBQWUsR0FBZixlQUFlLENBQThCO1FBVC9DLGFBQVEsR0FBRyxnQkFBZ0IsQ0FBQztRQUM1QixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQWdDLENBQUM7SUFTckUsQ0FBQztJQUVHLE9BQU8sQ0FBQyxJQUFpQjtRQUM5QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQztRQUV6QyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ1YsTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO1NBQ3hCO1FBQ0QsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRXBFLEtBQUssYUFBYSxDQUNoQixJQUFJLENBQUMsU0FBUzthQUNYLElBQUksQ0FDSCxJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxFQUN6QztZQUNFLE9BQU8sRUFBRSxJQUFJLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FDNUIsY0FBYyxFQUNkLGtEQUFrRCxDQUNuRDtZQUNELFlBQVksRUFBRSxNQUFNO1NBQ3JCLENBQ0Y7YUFDQSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDZixNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO2dCQUMxQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxNQUFNO2dCQUNoQyxZQUFZLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhO2FBQzlDLENBQUMsQ0FBQztZQUVILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUNILENBQ0osQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFZLEVBQUUsRUFBRTtZQUN2QixNQUFNLElBQUksZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7aUhBbkRVLG9CQUFvQixnRkFXckIsZ0NBQWdDLGFBRWhDLGlDQUFpQztxSEFiaEMsb0JBQW9CLGNBRm5CLE1BQU07MkZBRVAsb0JBQW9CO2tCQUhoQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBWUksTUFBTTsyQkFBQyxnQ0FBZ0M7OzBCQUV2QyxNQUFNOzJCQUFDLGlDQUFpQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGxhc3RWYWx1ZUZyb20sIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBTZWN1cmVBcGlDbGllbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9odHRwL3NlY3VyZS1hcGkvc2VjdXJlLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgVG9rZW5FcnJvciB9IGZyb20gJy4uLy4uLy4uLy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL3Rva2VuLWVycm9yLmNsYXNzJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlRXJyb3IgfSBmcm9tICcuLi8uLi8uLi94cHMtcmVzcG9uc2UuZXJyb3InO1xuaW1wb3J0IHsgVGhyZWVEc0Zvcm0gfSBmcm9tICcuLi8uLi90aHJlZS1kcy1mb3JtLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXNUaHJlZURzUmVzcG9uc2VBcGkgfSBmcm9tICcuL3N0YXR1cy10aHJlZS1kcy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHtcbiAgU3RhdHVzVGhyZWVEc1JlcXVlc3RGYWN0b3J5LFxuICBzdGF0dXNUaHJlZURzUmVxdWVzdEZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXF1ZXN0L3N0YXR1cy10aHJlZS1kcy1yZXF1ZXN0LnRva2VuJztcbmltcG9ydCB7XG4gIFN0YXR1c1RocmVlRHNSZXNwb25zZUZhY3RvcnksXG4gIHN0YXR1c1RocmVlRHNSZXNwb25zZUZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXNwb25zZS9zdGF0dXMtdGhyZWUtZHMtcmVzcG9uc2UudG9rZW4nO1xuaW1wb3J0IHsgU3RhdHVzVGhyZWVEc1Jlc3BvbnNlIH0gZnJvbSAnLi9yZXNwb25zZS9zdGF0dXMtdGhyZWUtZHMtcmVzcG9uc2UuY2xhc3MnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU3RhdHVzVGhyZWVEc1NlcnZpY2Uge1xuICBwdWJsaWMgZ2V0IHJlc3BvbnNlJCgpOiBPYnNlcnZhYmxlPFN0YXR1c1RocmVlRHNSZXNwb25zZSB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpUm91dGUgPSAnc2VjdXJlM2QvY2hlY2snO1xuICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlID0gbmV3IFN1YmplY3Q8U3RhdHVzVGhyZWVEc1Jlc3BvbnNlIHwgbnVsbD4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWN1cmVBcGk6IFNlY3VyZUFwaUNsaWVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIEBJbmplY3Qoc3RhdHVzVGhyZWVEc1JlcXVlc3RGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXF1ZXN0RmFjdG9yeTogU3RhdHVzVGhyZWVEc1JlcXVlc3RGYWN0b3J5LFxuICAgIEBJbmplY3Qoc3RhdHVzVGhyZWVEc1Jlc3BvbnNlRmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzcG9uc2VGYWN0b3J5OiBTdGF0dXNUaHJlZURzUmVzcG9uc2VGYWN0b3J5XG4gICkge31cblxuICBwdWJsaWMgcmVxdWVzdChkYXRhOiBUaHJlZURzRm9ybSk6IHZvaWQge1xuICAgIGNvbnN0IHRva2VuID0gdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9rZW47XG5cbiAgICBpZiAoIXRva2VuKSB7XG4gICAgICB0aHJvdyBuZXcgVG9rZW5FcnJvcigpO1xuICAgIH1cbiAgICBjb25zdCByZXF1ZXN0UGFyYW1zID0gdGhpcy5yZXF1ZXN0RmFjdG9yeSh0b2tlbiwgZGF0YS50aHJlZURTVHJYaWQpO1xuXG4gICAgdm9pZCBsYXN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5zZWN1cmVBcGlcbiAgICAgICAgLnBvc3Q8U3RhdHVzVGhyZWVEc1Jlc3BvbnNlQXBpPihcbiAgICAgICAgICB0aGlzLmFwaVJvdXRlLFxuICAgICAgICAgIG5ldyBVUkxTZWFyY2hQYXJhbXMoeyAuLi5yZXF1ZXN0UGFyYW1zIH0pLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZScsXG4gICAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9dXRmLTgnXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIG1hcCgocmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHN0YXR1c1Jlc3BvbnNlID0gdGhpcy5yZXNwb25zZUZhY3Rvcnkoe1xuICAgICAgICAgICAgICBzdGF0dXM6IHJlc3BvbnNlLnNlY3VyZTNkLnN0YXR1cyxcbiAgICAgICAgICAgICAgY2hlY2tvdXRGb3JtOiByZXNwb25zZS5zZWN1cmUzZC5jaGVja291dF9mb3JtLFxuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRoaXMucmVzcG9uc2UubmV4dChzdGF0dXNSZXNwb25zZSk7XG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICkuY2F0Y2goKGVycm9yOiBFcnJvcikgPT4ge1xuICAgICAgdGhyb3cgbmV3IFhwc1Jlc3BvbnNlRXJyb3IoZXJyb3IubWVzc2FnZSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ export var ThreeDsStatusTypes;
2
+ (function (ThreeDsStatusTypes) {
3
+ ThreeDsStatusTypes["completed"] = "completed";
4
+ ThreeDsStatusTypes["challenge"] = "challenge";
5
+ ThreeDsStatusTypes["collectDfp"] = "collect_dfp";
6
+ })(ThreeDsStatusTypes || (ThreeDsStatusTypes = {}));
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdHVzLXR5cGVzLmVudW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3RocmVlLWRzL2FwaS9zdGF0dXMtdGhyZWUtZHMvc3RhdHVzLXR5cGVzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1Qiw2Q0FBdUIsQ0FBQTtJQUN2Qiw2Q0FBdUIsQ0FBQTtJQUN2QixnREFBMEIsQ0FBQTtBQUM1QixDQUFDLEVBSlcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQUk3QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFRocmVlRHNTdGF0dXNUeXBlcyB7XG4gIGNvbXBsZXRlZCA9ICdjb21wbGV0ZWQnLFxuICBjaGFsbGVuZ2UgPSAnY2hhbGxlbmdlJyxcbiAgY29sbGVjdERmcCA9ICdjb2xsZWN0X2RmcCcsXG59XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhyZWUtZHMtY2hlY2tvdXQtZm9ybS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3RocmVlLWRzL2FwaS9zdGF0dXMtdGhyZWUtZHMvdGhyZWUtZHMtY2hlY2tvdXQtZm9ybS5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgVGhyZWVEc0NoZWNrb3V0Rm9ybSB7XG4gIG1ldGhvZDogc3RyaW5nO1xuICBhY3Rpb246IHN0cmluZztcbiAgcGFyYW1zPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbn1cbiJdfQ==
@@ -0,0 +1,105 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { windowToken } from '../../../window.token';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../api/notify-dfp-status/notify-dfp-status.service";
5
+ export class DfpCollectService {
6
+ constructor(window, notifyDfpStatusService) {
7
+ this.window = window;
8
+ this.notifyDfpStatusService = notifyDfpStatusService;
9
+ this.iframeName = 'iframeDFP';
10
+ this.formName = 'formDFP';
11
+ }
12
+ collectDfpStatus(threeDsForm) {
13
+ if (threeDsForm.waitCallback) {
14
+ this.openIframeWithPostRequest(threeDsForm, false);
15
+ }
16
+ else {
17
+ this.openIframeWithPostRequest(threeDsForm, true);
18
+ }
19
+ }
20
+ /*
21
+ * This method create invisible iframe with required params and after that it submit form in iframe
22
+ * */
23
+ openIframeWithPostRequest(threeDsForm, isNeedNotifyAfterLoad) {
24
+ const iFrameElement = this.window.document.getElementById(this.iframeName);
25
+ if (!iFrameElement) {
26
+ this.createIframe(isNeedNotifyAfterLoad, threeDsForm.threeDSTrXid);
27
+ this.postFormToIframe(threeDsForm.threeDSMethod, threeDsForm.threeDSMethodData);
28
+ }
29
+ }
30
+ /*
31
+ * isNeedNotifyAfterLoad is need to send notification of dft to server
32
+ * */
33
+ createIframe(isNeedNotifyAfterLoad, threeDsTrXid) {
34
+ const attributes = {
35
+ name: this.iframeName,
36
+ id: this.iframeName,
37
+ src: 'javascript:false',
38
+ style: 'display:none',
39
+ };
40
+ const iFrame = this.window.document.createElement('iframe');
41
+ this.setAttributes(iFrame, attributes);
42
+ this.window.document.body.appendChild(iFrame);
43
+ if (isNeedNotifyAfterLoad) {
44
+ this.window.document.getElementById(this.iframeName).onload = () => {
45
+ this.notifyDfpStatusService.request(threeDsTrXid, true);
46
+ };
47
+ }
48
+ }
49
+ /*
50
+ * This method will submit form in our iframe. Form will be created, if it's don't exist
51
+ * */
52
+ postFormToIframe(url, threeDsMethod) {
53
+ let form = this.window.document.getElementById(this.formName);
54
+ if (!form) {
55
+ form = this.createForm();
56
+ this.window.document.body.appendChild(form);
57
+ }
58
+ form.setAttribute('action', url);
59
+ form.setAttribute('target', this.iframeName);
60
+ form.appendChild(this.createInput('threeDSMethodData', threeDsMethod));
61
+ form.submit();
62
+ }
63
+ /*
64
+ * This method will create invisible form with required params
65
+ */
66
+ createForm() {
67
+ const form = this.window.document.createElement('form');
68
+ const initAttributes = {
69
+ name: this.formName,
70
+ id: this.formName,
71
+ style: 'display:none',
72
+ method: 'POST',
73
+ enctype: 'application/x-www-form-urlencoded',
74
+ };
75
+ this.setAttributes(form, initAttributes);
76
+ return form;
77
+ }
78
+ createInput(name, value) {
79
+ const input = this.window.document.createElement('input');
80
+ input.type = 'hidden';
81
+ input.name = name;
82
+ input.value = value;
83
+ return input;
84
+ }
85
+ /*
86
+ * This method will set attributes to form/iframe
87
+ * */
88
+ setAttributes(element, attributes) {
89
+ Object.keys(attributes).forEach((name) => {
90
+ element.setAttribute(name, attributes[name]);
91
+ });
92
+ }
93
+ }
94
+ DfpCollectService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DfpCollectService, deps: [{ token: windowToken }, { token: i1.NotifyDfpStatusService }], target: i0.ɵɵFactoryTarget.Injectable });
95
+ DfpCollectService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DfpCollectService, providedIn: 'root' });
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: DfpCollectService, decorators: [{
97
+ type: Injectable,
98
+ args: [{
99
+ providedIn: 'root',
100
+ }]
101
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
102
+ type: Inject,
103
+ args: [windowToken]
104
+ }] }, { type: i1.NotifyDfpStatusService }]; } });
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGZwLWNvbGxlY3Quc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvdGhyZWUtZHMvZGZwLWNvbGxlY3QvZGZwLWNvbGxlY3Quc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7OztBQVFwRCxNQUFNLE9BQU8saUJBQWlCO0lBSTVCLFlBRW1CLE1BQXNCLEVBQ3RCLHNCQUE4QztRQUQ5QyxXQUFNLEdBQU4sTUFBTSxDQUFnQjtRQUN0QiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBTmhELGVBQVUsR0FBRyxXQUFXLENBQUM7UUFDekIsYUFBUSxHQUFHLFNBQVMsQ0FBQztJQU1uQyxDQUFDO0lBRUcsZ0JBQWdCLENBQUMsV0FBd0I7UUFDOUMsSUFBSSxXQUFXLENBQUMsWUFBWSxFQUFFO1lBQzVCLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUM7U0FDcEQ7YUFBTTtZQUNMLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDbkQ7SUFDSCxDQUFDO0lBRUQ7O1NBRUs7SUFDRyx5QkFBeUIsQ0FDL0IsV0FBd0IsRUFDeEIscUJBQThCO1FBRTlCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0UsSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUNsQixJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixFQUFFLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNu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LEVBQ3BCLFVBQXFDO1FBRXJDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDdkMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDL0MsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0F4SFUsaUJBQWlCLGtCQUtsQixXQUFXO2tIQUxWLGlCQUFpQixjQUZoQixNQUFNOzJGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU1JLE1BQU07MkJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgd2luZG93VG9rZW4gfSBmcm9tICcuLi8uLi8uLi93aW5kb3cudG9rZW4nO1xuaW1wb3J0IHsgRXh0ZW5kZWRXaW5kb3cgfSBmcm9tICcuLi8uLi8uLi9leHRlbmRlZC13aW5kb3cuaW50ZXJmYWNlJztcbmltcG9ydCB7IE5vdGlmeURmcFN0YXR1c1NlcnZpY2UgfSBmcm9tICcuLi9hcGkvbm90aWZ5LWRmcC1zdGF0dXMvbm90aWZ5LWRmcC1zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBUaHJlZURzRm9ybSB9IGZyb20gJy4uL3RocmVlLWRzLWZvcm0uaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIERmcENvbGxlY3RTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBpZnJhbWVOYW1lID0gJ2lmcmFtZURGUCc7XG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybU5hbWUgPSAnZm9ybURGUCc7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qod2luZG93VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3c6IEV4dGVuZGVkV2luZG93LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbm90aWZ5RGZwU3RhdHVzU2VydmljZTogTm90aWZ5RGZwU3RhdHVzU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGNvbGxlY3REZnBTdGF0dXModGhyZWVEc0Zvcm06IFRocmVlRHNGb3JtKTogdm9pZCB7XG4gICAgaWYgKHRocmVlRHNGb3JtLndhaXRDYWxsYmFjaykge1xuICAgICAgdGhpcy5vcGVuSWZyYW1lV2l0aFBvc3RSZXF1ZXN0KHRocmVlRHNGb3JtLCBmYWxzZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMub3BlbklmcmFtZVdpdGhQb3N0UmVxdWVzdCh0aHJlZURzRm9ybSwgdHJ1ZSk7XG4gICAgfVxuICB9XG5cbiAgLypcbiAgICogVGhpcyBtZXRob2QgY3JlYXRlIGludmlzaWJsZSBpZnJhbWUgd2l0aCByZXF1aXJlZCBwYXJhbXMgYW5kIGFmdGVyIHRoYXQgaXQgc3VibWl0IGZvcm0gaW4gaWZyYW1lXG4gICAqICovXG4gIHByaXZhdGUgb3BlbklmcmFtZVdpdGhQb3N0UmVxdWVzdChcbiAgICB0aHJlZURzRm9ybTogVGhyZWVEc0Zvcm0sXG4gICAgaXNOZWVkTm90aWZ5QWZ0ZXJMb2FkOiBib29sZWFuXG4gICk6IHZvaWQge1xuICAgIGNvbnN0IGlGcmFtZUVsZW1lbnQgPSB0aGlzLndpbmRvdy5kb2N1bWVudC5nZXRFbGVtZW50QnlJZCh0aGlzLmlmcmFtZU5hbWUpO1xuICAgIGlmICghaUZyYW1lRWxlbWVudCkge1xuICAgICAgdGhpcy5jcmVhdGVJZnJhbWUoaXNOZWVkTm90aWZ5QWZ0ZXJMb2FkLCB0aHJlZURzRm9ybS50aHJlZURTVHJYaWQpO1xuICAgICAgdGhpcy5wb3N0Rm9ybVRvSWZyYW1lKFxuICAgICAgICB0aHJlZURzRm9ybS50aHJlZURTTWV0aG9kLFxuICAgICAgICB0aHJlZURzRm9ybS50aHJlZURTTWV0aG9kRGF0YVxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKlxuICAgKiBpc05lZWROb3RpZnlBZnRlckxvYWQgaXMgbmVlZCB0byBzZW5kIG5vdGlmaWNhdGlvbiBvZiBkZnQgdG8gc2VydmVyXG4gICAqICovXG4gIHByaXZhdGUgY3JlYXRlSWZyYW1lKFxuICAgIGlzTmVlZE5vdGlmeUFmdGVyTG9hZDogYm9vbGVhbixcbiAgICB0aHJlZURzVHJYaWQ6IHN0cmluZ1xuICApOiB2b2lkIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xuICAgICAgbmFtZTogdGhpcy5pZnJhbWVOYW1lLFxuICAgICAgaWQ6IHRoaXMuaWZyYW1lTmFtZSxcbiAgICAgIHNyYzogJ2phdmFzY3JpcHQ6ZmFsc2UnLFxuICAgICAgc3R5bGU6ICdkaXNwbGF5Om5vbmUnLFxuICAgIH07XG5cbiAgICBjb25zdCBpRnJhbWUgPSB0aGlzLndpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpZnJhbWUnKTtcbiAgICB0aGlzLnNldEF0dHJpYnV0ZXMoaUZyYW1lLCBhdHRyaWJ1dGVzKTtcbiAgICB0aGlzLndpbmRvdy5kb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGlGcmFtZSk7XG5cbiAgICBpZiAoaXNOZWVkTm90aWZ5QWZ0ZXJMb2FkKSB7XG4gICAgICAoXG4gICAgICAgIHRoaXMud2luZG93LmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFxuICAgICAgICAgIHRoaXMuaWZyYW1lTmFtZVxuICAgICAgICApIGFzIEhUTUxJRnJhbWVFbGVtZW50XG4gICAgICApLm9ubG9hZCA9ICgpID0+IHtcbiAgICAgICAgdGhpcy5ub3RpZnlEZnBTdGF0dXNTZXJ2aWNlLnJlcXVlc3QodGhyZWVEc1RyWGlkLCB0cnVlKTtcbiAgICAgIH07XG4gICAgfVxuICB9XG5cbiAgLypcbiAgICogVGhpcyBtZXRob2Qgd2lsbCBzdWJtaXQgZm9ybSBpbiBvdXIgaWZyYW1lLiBGb3JtIHdpbGwgYmUgY3JlYXRlZCwgaWYgaXQncyBkb24ndCBleGlzdFxuICAgKiAqL1xuICBwcml2YXRlIHBvc3RGb3JtVG9JZnJhbWUodXJsOiBzdHJpbmcsIHRocmVlRHNNZXRob2Q6IHN0cmluZyk6IHZvaWQge1xuICAgIGxldCBmb3JtID0gdGhpcy53aW5kb3cuZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXG4gICAgICB0aGlzLmZvcm1OYW1lXG4gICAgKSBhcyBIVE1MRm9ybUVsZW1lbnQ7XG5cbiAgICBpZiAoIWZvcm0pIHtcbiAgICAgIGZvcm0gPSB0aGlzLmNyZWF0ZUZvcm0oKTtcbiAgICAgIHRoaXMud2luZG93LmRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoZm9ybSk7XG4gICAgfVxuXG4gICAgZm9ybS5zZXRBdHRyaWJ1dGUoJ2FjdGlvbicsIHVybCk7XG4gICAgZm9ybS5zZXRBdHRyaWJ1dGUoJ3RhcmdldCcsIHRoaXMuaWZyYW1lTmFtZSk7XG4gICAgZm9ybS5hcHBlbmRDaGlsZCh0aGlzLmNyZWF0ZUlucHV0KCd0aHJlZURTTWV0aG9kRGF0YScsIHRocmVlRHNNZXRob2QpKTtcblxuICAgIGZvcm0uc3VibWl0KCk7XG4gIH1cblxuICAvKlxuICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBpbnZpc2libGUgZm9ybSB3aXRoIHJlcXVpcmVkIHBhcmFtc1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVGb3JtKCk6IEhUTUxGb3JtRWxlbWVudCB7XG4gICAgY29uc3QgZm9ybSA9IHRoaXMud2luZG93LmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Zvcm0nKTtcbiAgICBjb25zdCBpbml0QXR0cmlidXRlczogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHtcbiAgICAgIG5hbWU6IHRoaXMuZm9ybU5hbWUsXG4gICAgICBpZDogdGhpcy5mb3JtTmFtZSxcbiAgICAgIHN0eWxlOiAnZGlzcGxheTpub25lJyxcbiAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgZW5jdHlwZTogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcsXG4gICAgfTtcblxuICAgIHRoaXMuc2V0QXR0cmlidXRlcyhmb3JtLCBpbml0QXR0cmlidXRlcyk7XG5cbiAgICByZXR1cm4gZm9ybTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlSW5wdXQobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogSFRNTElucHV0RWxlbWVudCB7XG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLndpbmRvdy5kb2N1bWVudC5jcmVhdGVFbGVtZW50KCdpbnB1dCcpO1xuICAgIGlucHV0LnR5cGUgPSAnaGlkZGVuJztcbiAgICBpbnB1dC5uYW1lID0gbmFtZTtcbiAgICBpbnB1dC52YWx1ZSA9IHZhbHVlO1xuICAgIHJldHVybiBpbnB1dDtcbiAgfVxuXG4gIC8qXG4gICAqIFRoaXMgbWV0aG9kIHdpbGwgc2V0IGF0dHJpYnV0ZXMgdG8gZm9ybS9pZnJhbWVcbiAgICogKi9cbiAgcHJpdmF0ZSBzZXRBdHRyaWJ1dGVzKFxuICAgIGVsZW1lbnQ6IEhUTUxFbGVtZW50LFxuICAgIGF0dHJpYnV0ZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1cbiAgKTogdm9pZCB7XG4gICAgT2JqZWN0LmtleXMoYXR0cmlidXRlcykuZm9yRWFjaCgobmFtZSkgPT4ge1xuICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUobmFtZSwgYXR0cmlidXRlc1tuYW1lXSk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==