@spreeloop/orange_money 1.0.7 → 1.0.8

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 (214) hide show
  1. package/dist/logging/src/log_level.d.ts +24 -0
  2. package/dist/logging/src/log_level.d.ts.map +1 -0
  3. package/dist/logging/src/log_level.js +34 -0
  4. package/dist/logging/src/log_level.js.map +1 -0
  5. package/dist/logging/src/logging.d.ts +50 -0
  6. package/dist/logging/src/logging.d.ts.map +1 -0
  7. package/dist/logging/src/logging.js +87 -0
  8. package/dist/logging/src/logging.js.map +1 -0
  9. package/dist/logging/src/printer.d.ts +10 -0
  10. package/dist/logging/src/printer.d.ts.map +1 -0
  11. package/dist/logging/src/printer.js +3 -0
  12. package/dist/logging/src/printer.js.map +1 -0
  13. package/dist/orange_money/index.d.ts +2 -0
  14. package/dist/orange_money/index.d.ts.map +1 -0
  15. package/dist/orange_money/index.js +18 -0
  16. package/dist/orange_money/index.js.map +1 -0
  17. package/dist/orange_money/src/disbursements/implementations/disbursement_service.d.ts +62 -0
  18. package/dist/orange_money/src/disbursements/implementations/disbursement_service.d.ts.map +1 -0
  19. package/dist/orange_money/src/disbursements/implementations/disbursement_service.js +84 -0
  20. package/dist/orange_money/src/disbursements/implementations/disbursement_service.js.map +1 -0
  21. package/dist/orange_money/src/disbursements/implementations/src/live.d.ts +40 -0
  22. package/dist/orange_money/src/disbursements/implementations/src/live.d.ts.map +1 -0
  23. package/dist/orange_money/src/disbursements/implementations/src/live.js +61 -0
  24. package/dist/orange_money/src/disbursements/implementations/src/live.js.map +1 -0
  25. package/dist/orange_money/src/disbursements/implementations/src/sandbox.d.ts +40 -0
  26. package/dist/orange_money/src/disbursements/implementations/src/sandbox.d.ts.map +1 -0
  27. package/dist/orange_money/src/disbursements/implementations/src/sandbox.js +110 -0
  28. package/dist/orange_money/src/disbursements/implementations/src/sandbox.js.map +1 -0
  29. package/dist/orange_money/src/disbursements/operations/create_access_token.d.ts +28 -0
  30. package/dist/orange_money/src/disbursements/operations/create_access_token.d.ts.map +1 -0
  31. package/dist/orange_money/src/disbursements/operations/create_access_token.js +45 -0
  32. package/dist/orange_money/src/disbursements/operations/create_access_token.js.map +1 -0
  33. package/dist/orange_money/src/disbursements/operations/create_access_token.spec.d.ts +2 -0
  34. package/dist/orange_money/src/disbursements/operations/create_access_token.spec.d.ts.map +1 -0
  35. package/dist/orange_money/src/disbursements/operations/create_access_token.spec.js +106 -0
  36. package/dist/orange_money/src/disbursements/operations/create_access_token.spec.js.map +1 -0
  37. package/dist/orange_money/src/disbursements/operations/get_transfer_status.d.ts +114 -0
  38. package/dist/orange_money/src/disbursements/operations/get_transfer_status.d.ts.map +1 -0
  39. package/dist/orange_money/src/disbursements/operations/get_transfer_status.js +128 -0
  40. package/dist/orange_money/src/disbursements/operations/get_transfer_status.js.map +1 -0
  41. package/dist/orange_money/src/disbursements/operations/get_transfer_status.spec.d.ts +2 -0
  42. package/dist/orange_money/src/disbursements/operations/get_transfer_status.spec.d.ts.map +1 -0
  43. package/dist/orange_money/src/disbursements/operations/get_transfer_status.spec.js +148 -0
  44. package/dist/orange_money/src/disbursements/operations/get_transfer_status.spec.js.map +1 -0
  45. package/dist/orange_money/src/disbursements/operations/transfer.d.ts +44 -0
  46. package/dist/orange_money/src/disbursements/operations/transfer.d.ts.map +1 -0
  47. package/dist/orange_money/src/disbursements/operations/transfer.js +74 -0
  48. package/dist/orange_money/src/disbursements/operations/transfer.js.map +1 -0
  49. package/dist/orange_money/src/disbursements/operations/transfer.spec.d.ts +2 -0
  50. package/dist/orange_money/src/disbursements/operations/transfer.spec.d.ts.map +1 -0
  51. package/dist/orange_money/src/disbursements/operations/transfer.spec.js +178 -0
  52. package/dist/orange_money/src/disbursements/operations/transfer.spec.js.map +1 -0
  53. package/dist/orange_money/src/disbursements/routes/routes.d.ts +38 -0
  54. package/dist/orange_money/src/disbursements/routes/routes.d.ts.map +1 -0
  55. package/dist/orange_money/src/disbursements/routes/routes.js +53 -0
  56. package/dist/orange_money/src/disbursements/routes/routes.js.map +1 -0
  57. package/dist/orange_money/src/disbursements/utils/constants.d.ts +5 -0
  58. package/dist/orange_money/src/disbursements/utils/constants.d.ts.map +1 -0
  59. package/dist/orange_money/src/disbursements/utils/constants.js +9 -0
  60. package/dist/orange_money/src/disbursements/utils/constants.js.map +1 -0
  61. package/{src/disbursements/utils/regex.ts → dist/orange_money/src/disbursements/utils/regex.d.ts} +3 -4
  62. package/dist/orange_money/src/disbursements/utils/regex.d.ts.map +1 -0
  63. package/dist/orange_money/src/disbursements/utils/regex.js +12 -0
  64. package/dist/orange_money/src/disbursements/utils/regex.js.map +1 -0
  65. package/dist/orange_money/src/disbursements/utils/regex.spec.d.ts +2 -0
  66. package/dist/orange_money/src/disbursements/utils/regex.spec.d.ts.map +1 -0
  67. package/dist/orange_money/src/disbursements/utils/regex.spec.js +32 -0
  68. package/dist/orange_money/src/disbursements/utils/regex.spec.js.map +1 -0
  69. package/dist/orange_money/src/disbursements/utils/status.d.ts +53 -0
  70. package/dist/orange_money/src/disbursements/utils/status.d.ts.map +1 -0
  71. package/dist/orange_money/src/disbursements/utils/status.js +58 -0
  72. package/dist/orange_money/src/disbursements/utils/status.js.map +1 -0
  73. package/dist/orange_money/src/disbursements/utils/utils.d.ts +9 -0
  74. package/dist/orange_money/src/disbursements/utils/utils.d.ts.map +1 -0
  75. package/dist/orange_money/src/disbursements/utils/utils.js +26 -0
  76. package/dist/orange_money/src/disbursements/utils/utils.js.map +1 -0
  77. package/dist/orange_money/src/disbursements/utils/utils.spec.d.ts +2 -0
  78. package/dist/orange_money/src/disbursements/utils/utils.spec.d.ts.map +1 -0
  79. package/dist/orange_money/src/disbursements/utils/utils.spec.js +43 -0
  80. package/dist/orange_money/src/disbursements/utils/utils.spec.js.map +1 -0
  81. package/{src/index.ts → dist/orange_money/src/index.d.ts} +3 -8
  82. package/dist/orange_money/src/index.d.ts.map +1 -0
  83. package/dist/orange_money/src/index.js +15 -0
  84. package/dist/orange_money/src/index.js.map +1 -0
  85. package/dist/orange_money/src/payments/implementations/fake.d.ts +33 -0
  86. package/dist/orange_money/src/payments/implementations/fake.d.ts.map +1 -0
  87. package/dist/orange_money/src/payments/implementations/fake.js +110 -0
  88. package/dist/orange_money/src/payments/implementations/fake.js.map +1 -0
  89. package/dist/orange_money/src/payments/implementations/live.d.ts +45 -0
  90. package/dist/orange_money/src/payments/implementations/live.d.ts.map +1 -0
  91. package/dist/orange_money/src/payments/implementations/live.js +69 -0
  92. package/dist/orange_money/src/payments/implementations/live.js.map +1 -0
  93. package/dist/orange_money/src/payments/operations/get_access_token.d.ts +11 -0
  94. package/dist/orange_money/src/payments/operations/get_access_token.d.ts.map +1 -0
  95. package/dist/orange_money/src/payments/operations/get_access_token.js +47 -0
  96. package/dist/orange_money/src/payments/operations/get_access_token.js.map +1 -0
  97. package/dist/orange_money/src/payments/operations/get_access_token.spec.d.ts +2 -0
  98. package/dist/orange_money/src/payments/operations/get_access_token.spec.d.ts.map +1 -0
  99. package/dist/orange_money/src/payments/operations/get_access_token.spec.js +74 -0
  100. package/dist/orange_money/src/payments/operations/get_access_token.spec.js.map +1 -0
  101. package/dist/orange_money/src/payments/operations/get_pay_token.d.ts +12 -0
  102. package/dist/orange_money/src/payments/operations/get_pay_token.d.ts.map +1 -0
  103. package/dist/orange_money/src/payments/operations/get_pay_token.js +43 -0
  104. package/dist/orange_money/src/payments/operations/get_pay_token.js.map +1 -0
  105. package/dist/orange_money/src/payments/operations/get_pay_token.spec.d.ts +2 -0
  106. package/dist/orange_money/src/payments/operations/get_pay_token.spec.d.ts.map +1 -0
  107. package/dist/orange_money/src/payments/operations/get_pay_token.spec.js +74 -0
  108. package/dist/orange_money/src/payments/operations/get_pay_token.spec.js.map +1 -0
  109. package/dist/orange_money/src/payments/operations/get_payment_status.d.ts +23 -0
  110. package/dist/orange_money/src/payments/operations/get_payment_status.d.ts.map +1 -0
  111. package/dist/orange_money/src/payments/operations/get_payment_status.js +51 -0
  112. package/dist/orange_money/src/payments/operations/get_payment_status.js.map +1 -0
  113. package/dist/orange_money/src/payments/operations/get_payment_status.spec.d.ts +2 -0
  114. package/dist/orange_money/src/payments/operations/get_payment_status.spec.d.ts.map +1 -0
  115. package/dist/orange_money/src/payments/operations/get_payment_status.spec.js +101 -0
  116. package/dist/orange_money/src/payments/operations/get_payment_status.spec.js.map +1 -0
  117. package/dist/orange_money/src/payments/operations/initialize_om_payment.d.ts +22 -0
  118. package/dist/orange_money/src/payments/operations/initialize_om_payment.d.ts.map +1 -0
  119. package/dist/orange_money/src/payments/operations/initialize_om_payment.js +124 -0
  120. package/dist/orange_money/src/payments/operations/initialize_om_payment.js.map +1 -0
  121. package/dist/orange_money/src/payments/operations/initialize_om_payment.spec.d.ts +2 -0
  122. package/dist/orange_money/src/payments/operations/initialize_om_payment.spec.d.ts.map +1 -0
  123. package/dist/orange_money/src/payments/operations/initialize_om_payment.spec.js +245 -0
  124. package/dist/orange_money/src/payments/operations/initialize_om_payment.spec.js.map +1 -0
  125. package/dist/orange_money/src/payments/payments.d.ts +57 -0
  126. package/dist/orange_money/src/payments/payments.d.ts.map +1 -0
  127. package/dist/orange_money/src/payments/payments.js +36 -0
  128. package/dist/orange_money/src/payments/payments.js.map +1 -0
  129. package/dist/orange_money/src/payments/routes/routes.d.ts +48 -0
  130. package/dist/orange_money/src/payments/routes/routes.d.ts.map +1 -0
  131. package/dist/orange_money/src/payments/routes/routes.js +61 -0
  132. package/dist/orange_money/src/payments/routes/routes.js.map +1 -0
  133. package/dist/orange_money/src/payments/utils/constants.d.ts +96 -0
  134. package/dist/orange_money/src/payments/utils/constants.d.ts.map +1 -0
  135. package/dist/orange_money/src/payments/utils/constants.js +112 -0
  136. package/dist/orange_money/src/payments/utils/constants.js.map +1 -0
  137. package/dist/orange_money/src/payments/utils/joi_schema.d.ts +70 -0
  138. package/dist/orange_money/src/payments/utils/joi_schema.d.ts.map +1 -0
  139. package/dist/orange_money/src/payments/utils/joi_schema.js +44 -0
  140. package/dist/orange_money/src/payments/utils/joi_schema.js.map +1 -0
  141. package/dist/orange_money/src/payments/utils/request_model.d.ts +75 -0
  142. package/dist/orange_money/src/payments/utils/request_model.d.ts.map +1 -0
  143. package/dist/orange_money/src/payments/utils/request_model.js +3 -0
  144. package/dist/orange_money/src/payments/utils/request_model.js.map +1 -0
  145. package/dist/orange_money/src/payments/utils/utils.d.ts +15 -0
  146. package/dist/orange_money/src/payments/utils/utils.d.ts.map +1 -0
  147. package/dist/orange_money/src/payments/utils/utils.js +27 -0
  148. package/dist/orange_money/src/payments/utils/utils.js.map +1 -0
  149. package/dist/orange_money/src/utils/https.d.ts +77 -0
  150. package/dist/orange_money/src/utils/https.d.ts.map +1 -0
  151. package/dist/orange_money/src/utils/https.js +240 -0
  152. package/dist/orange_money/src/utils/https.js.map +1 -0
  153. package/dist/orange_money/src/utils/https.spec.d.ts +2 -0
  154. package/dist/orange_money/src/utils/https.spec.d.ts.map +1 -0
  155. package/dist/orange_money/src/utils/https.spec.js +77 -0
  156. package/dist/orange_money/src/utils/https.spec.js.map +1 -0
  157. package/dist/orange_money/src/utils/logging_interface.d.ts +23 -0
  158. package/dist/orange_money/src/utils/logging_interface.d.ts.map +1 -0
  159. package/dist/orange_money/src/utils/logging_interface.js +3 -0
  160. package/dist/orange_money/src/utils/logging_interface.js.map +1 -0
  161. package/{src/utils/operation_response.ts → dist/orange_money/src/utils/operation_response.d.ts} +9 -10
  162. package/dist/orange_money/src/utils/operation_response.d.ts.map +1 -0
  163. package/dist/orange_money/src/utils/operation_response.js +3 -0
  164. package/dist/orange_money/src/utils/operation_response.js.map +1 -0
  165. package/dist/orange_money/src/utils/utils.d.ts +6 -0
  166. package/dist/orange_money/src/utils/utils.d.ts.map +1 -0
  167. package/dist/orange_money/src/utils/utils.js +10 -0
  168. package/dist/orange_money/src/utils/utils.js.map +1 -0
  169. package/package.json +6 -2
  170. package/.eslintrc.js +0 -47
  171. package/.prettierrc +0 -6
  172. package/babel.config.js +0 -3
  173. package/index.spec.ts +0 -9
  174. package/index.ts +0 -1
  175. package/jest.before-test.ts +0 -3
  176. package/jest.config.ts +0 -54
  177. package/src/disbursements/implementations/disbursement_service.ts +0 -133
  178. package/src/disbursements/implementations/src/live.ts +0 -79
  179. package/src/disbursements/implementations/src/sandbox.ts +0 -124
  180. package/src/disbursements/operations/create_access_token.spec.ts +0 -87
  181. package/src/disbursements/operations/create_access_token.ts +0 -83
  182. package/src/disbursements/operations/get_transfer_status.spec.ts +0 -132
  183. package/src/disbursements/operations/get_transfer_status.ts +0 -265
  184. package/src/disbursements/operations/transfer.spec.ts +0 -158
  185. package/src/disbursements/operations/transfer.ts +0 -125
  186. package/src/disbursements/routes/routes.ts +0 -54
  187. package/src/disbursements/utils/constants.ts +0 -4
  188. package/src/disbursements/utils/regex.spec.ts +0 -39
  189. package/src/disbursements/utils/status.ts +0 -62
  190. package/src/disbursements/utils/utils.spec.ts +0 -42
  191. package/src/disbursements/utils/utils.ts +0 -24
  192. package/src/payments/implementations/fake.ts +0 -133
  193. package/src/payments/implementations/live.ts +0 -87
  194. package/src/payments/operations/get_access_token.spec.ts +0 -60
  195. package/src/payments/operations/get_access_token.ts +0 -77
  196. package/src/payments/operations/get_pay_token.spec.ts +0 -65
  197. package/src/payments/operations/get_pay_token.ts +0 -66
  198. package/src/payments/operations/get_payment_status.spec.ts +0 -82
  199. package/src/payments/operations/get_payment_status.ts +0 -78
  200. package/src/payments/operations/initialize_om_payment.spec.ts +0 -234
  201. package/src/payments/operations/initialize_om_payment.ts +0 -191
  202. package/src/payments/payments.ts +0 -86
  203. package/src/payments/routes/routes.ts +0 -61
  204. package/src/payments/utils/constants.ts +0 -120
  205. package/src/payments/utils/joi_schema.ts +0 -117
  206. package/src/payments/utils/request_model.ts +0 -103
  207. package/src/payments/utils/utils.ts +0 -31
  208. package/src/utils/https.spec.ts +0 -101
  209. package/src/utils/https.ts +0 -266
  210. package/src/utils/logging_interface.ts +0 -25
  211. package/src/utils/utils.ts +0 -5
  212. package/tsconfig.build.json +0 -4
  213. package/tsconfig.dev.json +0 -4
  214. package/tsconfig.json +0 -27
@@ -0,0 +1,96 @@
1
+ export declare enum ApiKey {
2
+ keyAuthorization = "Authorization",
3
+ keyGrantType = "grant_type",
4
+ keyContentType = "Content-Type",
5
+ keyXAuthToken = "X-AUTH-TOKEN",
6
+ keyMerchantKey = "merchant_key",
7
+ keyCurrency = "currency",
8
+ keyOrderId = "order_id",
9
+ keyReturnUrl = "return_url",
10
+ keyCancelUrl = "cancel_url",
11
+ keyWebNotifyUrl = "notif_url",
12
+ keyLang = "lang",
13
+ keyReference = "reference",
14
+ keyAmount = "amount",
15
+ keyPayToken = "pay_token",
16
+ keySubscriberMsisdn = "subscriberMsisdn",
17
+ keyChannelUserMsisdn = "channelUserMsisdn",
18
+ keyDescription = "description",
19
+ keyMobileOrderId = "orderId",
20
+ keyPin = "pin",
21
+ keyMobilePayToken = "payToken",
22
+ keyMobileNotifUrl = "notifUrl"
23
+ }
24
+ /**
25
+ * Contains request fields.
26
+ */
27
+ export declare class ConstantRequestField {
28
+ static readonly typeJson = "application/json";
29
+ static readonly TypeWwwFrom = "application/x-www-form-urlencoded";
30
+ static readonly basic = "Basic ";
31
+ static readonly authorization = "AUTHORIZATION";
32
+ static readonly bearer = "Bearer ";
33
+ static readonly grantType = "grant_type";
34
+ static readonly clientCredentials = "client_credentials";
35
+ static readonly xAuthToken = "X-AUTH-TOKEN";
36
+ }
37
+ /**
38
+ * The orange money payment status.
39
+ */
40
+ export declare enum OrangeMoneyPaymentStatus {
41
+ /**
42
+ * User has clicked on “Confirmed”, transaction
43
+ * is in progress on Orange system.
44
+ */
45
+ PENDING_PAYMENT = "PENDING",
46
+ /**
47
+ * The user canceled the payment.
48
+ */
49
+ CANCELLED_PAYMENT = "CANCELLED",
50
+ /**
51
+ * Waiting for user entry.
52
+ * Specially for web.
53
+ */
54
+ INITIATE_PAYMENT = "INITIATED",
55
+ /**
56
+ * Payment is done for mobile.
57
+ */
58
+ SUCCESSFULL_MOBILE_PAYMENT = "SUCCESSFULL",
59
+ /**
60
+ * Payment is done for web.
61
+ */
62
+ SUCCESS_WEB_PAYMENT = "SUCCESS",
63
+ /**
64
+ * Payment has failed.
65
+ * On web, the status can failed when user press to confirm payment too
66
+ * late or when user enter a wrong validation code.
67
+ * On mobile, it may fail when the user does not have a mooney orange wallet
68
+ * or the account balance is insufficient.
69
+ */
70
+ FAILED_PAYMENT = "FAILED",
71
+ /**
72
+ * User has clicked on “Confirmed” too late (after token’s validity), or the
73
+ * delay token timeout has expired.
74
+ * Note that the minimum token expiration time is 7 min.
75
+ */
76
+ EXPIRED_PAYMENT = "EXPIRED"
77
+ }
78
+ export declare enum ApiErrorType {
79
+ insufficientFunds = "insufficientFunds",
80
+ invalidOrangeMoneyNumber = "invalidOrangeMoneyNumber",
81
+ invalidData = "invalidData",
82
+ failedToInitiateThePayment = "failedToInitiateThePayment",
83
+ failedToGenerateAccessToken = "failedToGenerateAccessToken",
84
+ failedToCheckPaymentStatus = "failedToCheckPaymentStatus",
85
+ failedToGeneratePayToken = "failedToGeneratePayToken",
86
+ accountLocked = "accountLocked",
87
+ invalidPaymentAmount = "invalidPaymentAmount",
88
+ unauthorized = "unauthorized"
89
+ }
90
+ export declare enum OrangeMoneyErrorMessage {
91
+ beneficiaryNotFound = "Beneficiaire introuvable",
92
+ insufficientFunds = "Le solde du compte du payeur est insuffisant",
93
+ accountLocked = "Utilisateur bloque",
94
+ invalidPaymentAmount = "Vous avez saisi un montant superieur au montant maximum autorise"
95
+ }
96
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../../src/payments/utils/constants.ts"],"names":[],"mappings":"AAAA,oBAAY,MAAM;IAChB,gBAAgB,kBAAkB;IAClC,YAAY,eAAe;IAC3B,cAAc,iBAAiB;IAC/B,aAAa,iBAAiB;IAC9B,cAAc,iBAAiB;IAC/B,WAAW,aAAa;IACxB,UAAU,aAAa;IACvB,YAAY,eAAe;IAC3B,YAAY,eAAe;IAC3B,eAAe,cAAc;IAC7B,OAAO,SAAS;IAChB,YAAY,cAAc;IAC1B,SAAS,WAAW;IACpB,WAAW,cAAc;IACzB,mBAAmB,qBAAqB;IACxC,oBAAoB,sBAAsB;IAC1C,cAAc,gBAAgB;IAC9B,gBAAgB,YAAY;IAC5B,MAAM,QAAQ;IACd,iBAAiB,aAAa;IAC9B,iBAAiB,aAAa;CAC/B;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAE/B,gBAAuB,QAAQ,sBAAsB;IAGrD,gBAAuB,WAAW,uCAAuC;IAGzE,gBAAuB,KAAK,YAAY;IAGxC,gBAAuB,aAAa,mBAAmB;IAGvD,gBAAuB,MAAM,aAAa;IAG1C,gBAAuB,SAAS,gBAAgB;IAGhD,gBAAuB,iBAAiB,wBAAwB;IAGhE,gBAAuB,UAAU,kBAAkB;CACpD;AAED;;GAEG;AACH,oBAAY,wBAAwB;IAClC;;;OAGG;IACH,eAAe,YAAY;IAE3B;;OAEG;IACH,iBAAiB,cAAc;IAE/B;;;OAGG;IACH,gBAAgB,cAAc;IAE9B;;OAEG;IACH,0BAA0B,gBAAgB;IAE1C;;OAEG;IACH,mBAAmB,YAAY;IAE/B;;;;;;OAMG;IACH,cAAc,WAAW;IAEzB;;;;OAIG;IACH,eAAe,YAAY;CAC5B;AAED,oBAAY,YAAY;IACtB,iBAAiB,sBAAsB;IACvC,wBAAwB,6BAA6B;IACrD,WAAW,gBAAgB;IAC3B,0BAA0B,+BAA+B;IACzD,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;IACzD,wBAAwB,6BAA6B;IACrD,aAAa,kBAAkB;IAC/B,oBAAoB,yBAAyB;IAC7C,YAAY,iBAAiB;CAC9B;AAED,oBAAY,uBAAuB;IACjC,mBAAmB,6BAA6B;IAChD,iBAAiB,iDAAiD;IAClE,aAAa,uBAAuB;IACpC,oBAAoB,qEAAqE;CAC1F"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrangeMoneyErrorMessage = exports.ApiErrorType = exports.OrangeMoneyPaymentStatus = exports.ConstantRequestField = exports.ApiKey = void 0;
4
+ var ApiKey;
5
+ (function (ApiKey) {
6
+ ApiKey["keyAuthorization"] = "Authorization";
7
+ ApiKey["keyGrantType"] = "grant_type";
8
+ ApiKey["keyContentType"] = "Content-Type";
9
+ ApiKey["keyXAuthToken"] = "X-AUTH-TOKEN";
10
+ ApiKey["keyMerchantKey"] = "merchant_key";
11
+ ApiKey["keyCurrency"] = "currency";
12
+ ApiKey["keyOrderId"] = "order_id";
13
+ ApiKey["keyReturnUrl"] = "return_url";
14
+ ApiKey["keyCancelUrl"] = "cancel_url";
15
+ ApiKey["keyWebNotifyUrl"] = "notif_url";
16
+ ApiKey["keyLang"] = "lang";
17
+ ApiKey["keyReference"] = "reference";
18
+ ApiKey["keyAmount"] = "amount";
19
+ ApiKey["keyPayToken"] = "pay_token";
20
+ ApiKey["keySubscriberMsisdn"] = "subscriberMsisdn";
21
+ ApiKey["keyChannelUserMsisdn"] = "channelUserMsisdn";
22
+ ApiKey["keyDescription"] = "description";
23
+ ApiKey["keyMobileOrderId"] = "orderId";
24
+ ApiKey["keyPin"] = "pin";
25
+ ApiKey["keyMobilePayToken"] = "payToken";
26
+ ApiKey["keyMobileNotifUrl"] = "notifUrl";
27
+ })(ApiKey || (exports.ApiKey = ApiKey = {}));
28
+ /**
29
+ * Contains request fields.
30
+ */
31
+ class ConstantRequestField {
32
+ }
33
+ exports.ConstantRequestField = ConstantRequestField;
34
+ // The content type field.
35
+ ConstantRequestField.typeJson = 'application/json';
36
+ // The url encode form.
37
+ ConstantRequestField.TypeWwwFrom = 'application/x-www-form-urlencoded';
38
+ // The basic authorization field.
39
+ ConstantRequestField.basic = 'Basic ';
40
+ // The authorization field.
41
+ ConstantRequestField.authorization = 'AUTHORIZATION';
42
+ // The bearer field.
43
+ ConstantRequestField.bearer = 'Bearer ';
44
+ // The grant type field.
45
+ ConstantRequestField.grantType = 'grant_type';
46
+ // The client credentials field.
47
+ ConstantRequestField.clientCredentials = 'client_credentials';
48
+ // The X-AUTH-TOKEN field.
49
+ ConstantRequestField.xAuthToken = 'X-AUTH-TOKEN';
50
+ /**
51
+ * The orange money payment status.
52
+ */
53
+ var OrangeMoneyPaymentStatus;
54
+ (function (OrangeMoneyPaymentStatus) {
55
+ /**
56
+ * User has clicked on “Confirmed”, transaction
57
+ * is in progress on Orange system.
58
+ */
59
+ OrangeMoneyPaymentStatus["PENDING_PAYMENT"] = "PENDING";
60
+ /**
61
+ * The user canceled the payment.
62
+ */
63
+ OrangeMoneyPaymentStatus["CANCELLED_PAYMENT"] = "CANCELLED";
64
+ /**
65
+ * Waiting for user entry.
66
+ * Specially for web.
67
+ */
68
+ OrangeMoneyPaymentStatus["INITIATE_PAYMENT"] = "INITIATED";
69
+ /**
70
+ * Payment is done for mobile.
71
+ */
72
+ OrangeMoneyPaymentStatus["SUCCESSFULL_MOBILE_PAYMENT"] = "SUCCESSFULL";
73
+ /**
74
+ * Payment is done for web.
75
+ */
76
+ OrangeMoneyPaymentStatus["SUCCESS_WEB_PAYMENT"] = "SUCCESS";
77
+ /**
78
+ * Payment has failed.
79
+ * On web, the status can failed when user press to confirm payment too
80
+ * late or when user enter a wrong validation code.
81
+ * On mobile, it may fail when the user does not have a mooney orange wallet
82
+ * or the account balance is insufficient.
83
+ */
84
+ OrangeMoneyPaymentStatus["FAILED_PAYMENT"] = "FAILED";
85
+ /**
86
+ * User has clicked on “Confirmed” too late (after token’s validity), or the
87
+ * delay token timeout has expired.
88
+ * Note that the minimum token expiration time is 7 min.
89
+ */
90
+ OrangeMoneyPaymentStatus["EXPIRED_PAYMENT"] = "EXPIRED";
91
+ })(OrangeMoneyPaymentStatus || (exports.OrangeMoneyPaymentStatus = OrangeMoneyPaymentStatus = {}));
92
+ var ApiErrorType;
93
+ (function (ApiErrorType) {
94
+ ApiErrorType["insufficientFunds"] = "insufficientFunds";
95
+ ApiErrorType["invalidOrangeMoneyNumber"] = "invalidOrangeMoneyNumber";
96
+ ApiErrorType["invalidData"] = "invalidData";
97
+ ApiErrorType["failedToInitiateThePayment"] = "failedToInitiateThePayment";
98
+ ApiErrorType["failedToGenerateAccessToken"] = "failedToGenerateAccessToken";
99
+ ApiErrorType["failedToCheckPaymentStatus"] = "failedToCheckPaymentStatus";
100
+ ApiErrorType["failedToGeneratePayToken"] = "failedToGeneratePayToken";
101
+ ApiErrorType["accountLocked"] = "accountLocked";
102
+ ApiErrorType["invalidPaymentAmount"] = "invalidPaymentAmount";
103
+ ApiErrorType["unauthorized"] = "unauthorized";
104
+ })(ApiErrorType || (exports.ApiErrorType = ApiErrorType = {}));
105
+ var OrangeMoneyErrorMessage;
106
+ (function (OrangeMoneyErrorMessage) {
107
+ OrangeMoneyErrorMessage["beneficiaryNotFound"] = "Beneficiaire introuvable";
108
+ OrangeMoneyErrorMessage["insufficientFunds"] = "Le solde du compte du payeur est insuffisant";
109
+ OrangeMoneyErrorMessage["accountLocked"] = "Utilisateur bloque";
110
+ OrangeMoneyErrorMessage["invalidPaymentAmount"] = "Vous avez saisi un montant superieur au montant maximum autorise";
111
+ })(OrangeMoneyErrorMessage || (exports.OrangeMoneyErrorMessage = OrangeMoneyErrorMessage = {}));
112
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../../src/payments/utils/constants.ts"],"names":[],"mappings":";;;AAAA,IAAY,MAsBX;AAtBD,WAAY,MAAM;IAChB,4CAAkC,CAAA;IAClC,qCAA2B,CAAA;IAC3B,yCAA+B,CAAA;IAC/B,wCAA8B,CAAA;IAC9B,yCAA+B,CAAA;IAC/B,kCAAwB,CAAA;IACxB,iCAAuB,CAAA;IACvB,qCAA2B,CAAA;IAC3B,qCAA2B,CAAA;IAC3B,uCAA6B,CAAA;IAC7B,0BAAgB,CAAA;IAChB,oCAA0B,CAAA;IAC1B,8BAAoB,CAAA;IACpB,mCAAyB,CAAA;IACzB,kDAAwC,CAAA;IACxC,oDAA0C,CAAA;IAC1C,wCAA8B,CAAA;IAC9B,sCAA4B,CAAA;IAC5B,wBAAc,CAAA;IACd,wCAA8B,CAAA;IAC9B,wCAA8B,CAAA;AAChC,CAAC,EAtBW,MAAM,sBAAN,MAAM,QAsBjB;AAED;;GAEG;AACH,MAAa,oBAAoB;;AAAjC,oDAwBC;AAvBC,2BAA2B;AACJ,6BAAQ,GAAG,kBAAkB,CAAC;AAErD,uBAAuB;AACA,gCAAW,GAAG,mCAAmC,CAAC;AAEzE,iCAAiC;AACV,0BAAK,GAAG,QAAQ,CAAC;AAExC,4BAA4B;AACL,kCAAa,GAAG,eAAe,CAAC;AAEvD,oBAAoB;AACG,2BAAM,GAAG,SAAS,CAAC;AAE1C,wBAAwB;AACD,8BAAS,GAAG,YAAY,CAAC;AAEhD,iCAAiC;AACV,sCAAiB,GAAG,oBAAoB,CAAC;AAEhE,2BAA2B;AACJ,+BAAU,GAAG,cAAc,CAAC;AAGrD;;GAEG;AACH,IAAY,wBA2CX;AA3CD,WAAY,wBAAwB;IAClC;;;OAGG;IACH,uDAA2B,CAAA;IAE3B;;OAEG;IACH,2DAA+B,CAAA;IAE/B;;;OAGG;IACH,0DAA8B,CAAA;IAE9B;;OAEG;IACH,sEAA0C,CAAA;IAE1C;;OAEG;IACH,2DAA+B,CAAA;IAE/B;;;;;;OAMG;IACH,qDAAyB,CAAA;IAEzB;;;;OAIG;IACH,uDAA2B,CAAA;AAC7B,CAAC,EA3CW,wBAAwB,wCAAxB,wBAAwB,QA2CnC;AAED,IAAY,YAWX;AAXD,WAAY,YAAY;IACtB,uDAAuC,CAAA;IACvC,qEAAqD,CAAA;IACrD,2CAA2B,CAAA;IAC3B,yEAAyD,CAAA;IACzD,2EAA2D,CAAA;IAC3D,yEAAyD,CAAA;IACzD,qEAAqD,CAAA;IACrD,+CAA+B,CAAA;IAC/B,6DAA6C,CAAA;IAC7C,6CAA6B,CAAA;AAC/B,CAAC,EAXW,YAAY,4BAAZ,YAAY,QAWvB;AAED,IAAY,uBAKX;AALD,WAAY,uBAAuB;IACjC,2EAAgD,CAAA;IAChD,6FAAkE,CAAA;IAClE,+DAAoC,CAAA;IACpC,oHAAyF,CAAA;AAC3F,CAAC,EALW,uBAAuB,uCAAvB,uBAAuB,QAKlC"}
@@ -0,0 +1,70 @@
1
+ import { LoggerInterface } from '../../utils/logging_interface';
2
+ import { TargetEnvironment } from '../../utils/utils';
3
+ import { OrangeMoneyPaymentStatus } from './constants';
4
+ /**
5
+ * The provider generic response data of payment request of status verification request.
6
+ */
7
+ export type GenericRequestResponseData = {
8
+ message: string;
9
+ data: {
10
+ id: number;
11
+ createtime: string | null;
12
+ subscriberMsisdn: string;
13
+ amount: number;
14
+ payToken: string;
15
+ txnid: string | null;
16
+ txnmode: string | null;
17
+ inittxnmessage: string;
18
+ inittxnstatus: string;
19
+ confirmtxnstatus: string | null;
20
+ confirmtxnmessage: string | null;
21
+ status: OrangeMoneyPaymentStatus;
22
+ notifUrl: string | null;
23
+ description: string | null;
24
+ channelUserMsisdn: string;
25
+ };
26
+ };
27
+ /**
28
+ * The provider generic response data of payment request of status verification request.
29
+ * We only make validation off fields that are required.
30
+ */
31
+ export declare const genericRequestResponseSchema: any;
32
+ export type InitPaymentBodySchema = {
33
+ orderId: string;
34
+ description: string;
35
+ orangeMoneyVersion?: string;
36
+ notifUrl: string;
37
+ pin: string;
38
+ payToken: string;
39
+ amount: number;
40
+ channelUserMsisdn: string;
41
+ subscriberMsisdn: string;
42
+ };
43
+ export declare const initPaymentBodySchema: any;
44
+ export interface OrangeMoneyPaymentParams {
45
+ targetEnvironment: TargetEnvironment;
46
+ logger: LoggerInterface;
47
+ apiUserName: string;
48
+ apiPassword: string;
49
+ xAuthToken: string;
50
+ orangeMoneyVersion?: string;
51
+ }
52
+ /**
53
+ * The provider access token request response from the OM server.
54
+ */
55
+ export type AccessTokenRequestResponse = {
56
+ access_token: string;
57
+ scope: string;
58
+ token_type: string;
59
+ expires_in: number;
60
+ };
61
+ /**
62
+ * The provider payToken request response from the OM server.
63
+ */
64
+ export type PayTokenRequestResponse = {
65
+ message: string;
66
+ data: {
67
+ payToken: string;
68
+ };
69
+ };
70
+ //# sourceMappingURL=joi_schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"joi_schema.d.ts","sourceRoot":"","sources":["../../../../../src/payments/utils/joi_schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEvD;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;QACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;QAChC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;QACjC,MAAM,EAAE,wBAAwB,CAAC;QACjC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,iBAAiB,EAAE,MAAM,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,4BAA4B,KAoBrC,CAAC;AAEL,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,qBAAqB,KAoBhC,CAAC;AAEH,MAAM,WAAW,wBAAwB;IACvC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,MAAM,EAAE,eAAe,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,MAAM,0BAA0B,GAAG;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QACJ,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,CAAC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.initPaymentBodySchema = exports.genericRequestResponseSchema = void 0;
7
+ const joi_1 = __importDefault(require("joi"));
8
+ const constants_1 = require("./constants");
9
+ /**
10
+ * The provider generic response data of payment request of status verification request.
11
+ * We only make validation off fields that are required.
12
+ */
13
+ exports.genericRequestResponseSchema = joi_1.default.object({
14
+ message: joi_1.default.string().required(),
15
+ data: joi_1.default.object({
16
+ subscriberMsisdn: joi_1.default.string().required(),
17
+ amount: joi_1.default.number().required(),
18
+ inittxnmessage: joi_1.default.string().allow(null).allow('').required(),
19
+ status: joi_1.default.string()
20
+ .valid(constants_1.OrangeMoneyPaymentStatus.FAILED_PAYMENT, constants_1.OrangeMoneyPaymentStatus.PENDING_PAYMENT, constants_1.OrangeMoneyPaymentStatus.CANCELLED_PAYMENT, constants_1.OrangeMoneyPaymentStatus.EXPIRED_PAYMENT, constants_1.OrangeMoneyPaymentStatus.SUCCESSFULL_MOBILE_PAYMENT)
21
+ .required(),
22
+ channelUserMsisdn: joi_1.default.string().required(),
23
+ })
24
+ .required()
25
+ .unknown(true),
26
+ });
27
+ exports.initPaymentBodySchema = joi_1.default.object({
28
+ subscriberMsisdn: joi_1.default.string()
29
+ .required()
30
+ .pattern(/^(69\d{7}$|65[5-9]\d{6}$)/)
31
+ .message('[subscriberMsisdn] Invalid orange number. Format of valid number: 69******* or 65[5-9]******'),
32
+ channelUserMsisdn: joi_1.default.string()
33
+ .required()
34
+ .pattern(/^(69\d{7}$|65[5-9]\d{6}$)/)
35
+ .message('[channelUserMsisdn] Invalid orange number. Format of valid number: 69******* or 65[5-9]******'),
36
+ amount: joi_1.default.string().required(),
37
+ payToken: joi_1.default.string().required(),
38
+ pin: joi_1.default.string().max(4).required(),
39
+ notifUrl: joi_1.default.string().allow('').default(''),
40
+ orangeMoneyVersion: joi_1.default.string().optional(),
41
+ description: joi_1.default.string().allow('').max(125).default('payment'),
42
+ orderId: joi_1.default.string().max(20).required(),
43
+ });
44
+ //# sourceMappingURL=joi_schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"joi_schema.js","sourceRoot":"","sources":["../../../../../src/payments/utils/joi_schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAGtB,2CAAuD;AA0BvD;;;GAGG;AACU,QAAA,4BAA4B,GACvC,aAAG,CAAC,MAAM,CAA6B;IACrC,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,IAAI,EAAE,aAAG,CAAC,MAAM,CAAC;QACf,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QACzC,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QAC7D,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE;aACjB,KAAK,CACJ,oCAAwB,CAAC,cAAc,EACvC,oCAAwB,CAAC,eAAe,EACxC,oCAAwB,CAAC,iBAAiB,EAC1C,oCAAwB,CAAC,eAAe,EACxC,oCAAwB,CAAC,0BAA0B,CACpD;aACA,QAAQ,EAAE;QACb,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC3C,CAAC;SACC,QAAQ,EAAE;SACV,OAAO,CAAC,IAAI,CAAC;CACjB,CAAC,CAAC;AAcQ,QAAA,qBAAqB,GAAG,aAAG,CAAC,MAAM,CAAwB;IACrE,gBAAgB,EAAE,aAAG,CAAC,MAAM,EAAE;SAC3B,QAAQ,EAAE;SACV,OAAO,CAAC,2BAA2B,CAAC;SACpC,OAAO,CACN,8FAA8F,CAC/F;IACH,iBAAiB,EAAE,aAAG,CAAC,MAAM,EAAE;SAC5B,QAAQ,EAAE;SACV,OAAO,CAAC,2BAA2B,CAAC;SACpC,OAAO,CACN,+FAA+F,CAChG;IACH,MAAM,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,GAAG,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC5C,kBAAkB,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3C,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC/D,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;CACzC,CAAC,CAAC"}
@@ -0,0 +1,75 @@
1
+ import { OperationResponse } from '../../utils/operation_response';
2
+ import { ApiErrorType, OrangeMoneyPaymentStatus } from './constants';
3
+ import { AccessTokenRequestResponse, GenericRequestResponseData, PayTokenRequestResponse } from './joi_schema';
4
+ export type InitializeOrangeMoneyRequest = {
5
+ /**
6
+ * The phone number of the user making the payment.
7
+ */
8
+ subscriberNumber: string;
9
+ /**
10
+ * The phone number of the user receiving the payment.
11
+ */
12
+ channelUserNumber: string;
13
+ /**
14
+ * Unique identifier of the customer transaction.
15
+ */
16
+ transactionId: string;
17
+ /**
18
+ * The amount of the transaction.
19
+ */
20
+ amount: number;
21
+ /**
22
+ * The Pin code of the ChannelUser.
23
+ */
24
+ pinCode: string;
25
+ /**
26
+ * An http endpoint able to receive a post request with the following json body.
27
+ * {
28
+ * ”payToken” : ”payToken”,
29
+ * ”status” : status”,
30
+ * ”message” : ”message”
31
+ * }
32
+ */
33
+ notifUrl?: string;
34
+ /**
35
+ * The payment description.
36
+ */
37
+ description?: string;
38
+ /**
39
+ * The payToken value useful to make payment
40
+ * and track the status of payment.
41
+ */
42
+ payToken: string;
43
+ /**
44
+ * The access token for authorize the request.
45
+ */
46
+ accessToken: string;
47
+ };
48
+ export type GetOrangeMoneyPaymentRequest = {
49
+ /**
50
+ * The access token for authorize the request.
51
+ */
52
+ accessToken: string;
53
+ /**
54
+ * unique identifier used to obtain payment status.
55
+ */
56
+ payToken: string;
57
+ };
58
+ /**
59
+ * This response is obtained when we initiate a mobile payment request,
60
+ * the request would generate a payToken useful to make payment
61
+ * and track the status of payment.
62
+ */
63
+ export type InitializeOrangeMoneyResponse = OperationResponse<{
64
+ /**
65
+ * The payToken value useful to make payment
66
+ * and track the status of payment.
67
+ */
68
+ payToken: string;
69
+ }, GenericRequestResponseData, ApiErrorType>;
70
+ export type GetOrangeMoneyPaymentResponse = OperationResponse<{
71
+ status: OrangeMoneyPaymentStatus;
72
+ }, GenericRequestResponseData, ApiErrorType>;
73
+ export type GetAccessTokenResponse = OperationResponse<string, AccessTokenRequestResponse | undefined, ApiErrorType>;
74
+ export type GetPayTokenResponse = OperationResponse<string, PayTokenRequestResponse | undefined, ApiErrorType>;
75
+ //# sourceMappingURL=request_model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request_model.d.ts","sourceRoot":"","sources":["../../../../../src/payments/utils/request_model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACrE,OAAO,EACL,0BAA0B,EAC1B,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,4BAA4B,GAAG;IACzC;;OAEG;IACH,gBAAgB,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC;;OAEG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,6BAA6B,GAAG,iBAAiB,CAC3D;IACE;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,EACD,0BAA0B,EAC1B,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG,iBAAiB,CAC3D;IACE,MAAM,EAAE,wBAAwB,CAAC;CAClC,EACD,0BAA0B,EAC1B,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,iBAAiB,CACpD,MAAM,EACN,0BAA0B,GAAG,SAAS,EACtC,YAAY,CACb,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,iBAAiB,CACjD,MAAM,EACN,uBAAuB,GAAG,SAAS,EACnC,YAAY,CACb,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=request_model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request_model.js","sourceRoot":"","sources":["../../../../../src/payments/utils/request_model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import Joi from 'joi';
2
+ /**
3
+ * Checks if the data is valid type.
4
+ * @param {Record<string, unknown>} data .
5
+ * @param {Joi.PartialSchemaMap<T>} schema .
6
+ * @return {Record<string, unknown>}
7
+ */
8
+ export declare function validateData<T>(data: unknown, schema: Joi.ObjectSchema<T>): {
9
+ isValidData: true;
10
+ data: T;
11
+ } | {
12
+ isValidData: false;
13
+ message: string;
14
+ };
15
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/payments/utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAC5B,IAAI,EAAE,OAAO,EACb,MAAM,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,GAC1B;IAAE,WAAW,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,WAAW,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAmB1E"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.validateData = void 0;
4
+ /**
5
+ * Checks if the data is valid type.
6
+ * @param {Record<string, unknown>} data .
7
+ * @param {Joi.PartialSchemaMap<T>} schema .
8
+ * @return {Record<string, unknown>}
9
+ */
10
+ function validateData(data, schema) {
11
+ const { error, value } = schema.unknown(true).validate(data, {
12
+ abortEarly: false,
13
+ convert: false,
14
+ });
15
+ if (error) {
16
+ return {
17
+ isValidData: false,
18
+ message: JSON.stringify(error.details.map((e) => e.message), null, ' '),
19
+ };
20
+ }
21
+ return {
22
+ isValidData: true,
23
+ data: value,
24
+ };
25
+ }
26
+ exports.validateData = validateData;
27
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/payments/utils/utils.ts"],"names":[],"mappings":";;;AAEA;;;;;GAKG;AACH,SAAgB,YAAY,CAC1B,IAAa,EACb,MAA2B;IAE3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE;QAC3D,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;KACf,CAAC,CAAC;IACH,IAAI,KAAK,EAAE,CAAC;QACV,OAAO;YACL,WAAW,EAAE,KAAK;YAClB,OAAO,EAAE,IAAI,CAAC,SAAS,CACrB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EACnC,IAAI,EACJ,GAAG,CACJ;SACF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,WAAW,EAAE,IAAI;QACjB,IAAI,EAAE,KAAK;KACZ,CAAC;AACJ,CAAC;AAtBD,oCAsBC"}
@@ -0,0 +1,77 @@
1
+ import { LoggerInterface } from './logging_interface';
2
+ export declare enum RequestStatusCode {
3
+ unauthorized = 401,
4
+ expectationFailed = 417
5
+ }
6
+ export type RequestResponse<T> = {
7
+ response?: {
8
+ data: T;
9
+ status: number;
10
+ };
11
+ error?: unknown;
12
+ };
13
+ /**
14
+ * Posts an http request to the given route.
15
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
16
+ * @param {string} route The end point url.
17
+ * @param {Record<string, string>} headers The type content of request.
18
+ * @param {LoggerInterface} logger The logger to use when posting data.
19
+ * @return {Promise<unknown | undefined>} The server response.
20
+ */
21
+ export declare function postRequest<T>({ data, route, headers, logger, rejectUnauthorized, }: {
22
+ data?: Record<string, unknown> | string | null;
23
+ route: string;
24
+ logger: LoggerInterface;
25
+ headers?: Record<string, string>;
26
+ rejectUnauthorized?: boolean;
27
+ }): Promise<RequestResponse<T>>;
28
+ /**
29
+ * Gets an http request to the given route.
30
+ * @param {Record<string, string | undefined> | string} data The data to be posted.
31
+ * @param {string} route The end point url.
32
+ * @param {Record<string, string>} headers The type content of request.
33
+ * @param {LoggerInterface} logger The logger to use when getting data.
34
+ * @return {Promise<unknown | undefined>} The server response.
35
+ */
36
+ export declare function getRequest<T>({ data, route, headers, logger, rejectUnauthorized, }: {
37
+ data?: Record<string, string | undefined> | string;
38
+ route: string;
39
+ headers?: Record<string, string>;
40
+ logger: LoggerInterface;
41
+ rejectUnauthorized?: boolean;
42
+ }): Promise<RequestResponse<T>>;
43
+ /**
44
+ * Parses an Axios error and returns a modified error object.
45
+ *
46
+ * @param {unknown} error - The error object to be parsed.
47
+ * @return {unknown} The modified error object.
48
+ */
49
+ export declare function parseAxiosError(error: unknown): unknown;
50
+ /**
51
+ * Generates a hash using the given key and secret.
52
+ *
53
+ * @param {string} key - The key to be hashed.
54
+ * @param {string} secret - The secret to be hashed.
55
+ * @return {string} - The generated hash.
56
+ */
57
+ export declare function hash(key: string, secret: string): string;
58
+ /**
59
+ * Encode the body of the request.
60
+ * @param {Record<string, string>} bodyRequest the body request.
61
+ * @return {string} the encoded body request result.
62
+ */
63
+ export declare function encodeTheBodyOfRequest(bodyRequest: Record<string, string>): string;
64
+ export declare const encodeToBase64: (apiUsername: string, apiPassword: string) => string;
65
+ /**
66
+ * Encode the data to w3 x form encoded url.
67
+ * @param {Record<string, string>} data the data to encode.
68
+ * @return {string} the encoded value.
69
+ */
70
+ export declare function encodeDataToXFormUrl(data: Record<string, string>): string;
71
+ /**
72
+ * Checks if the code is a successful code response.
73
+ * @param {num} code .
74
+ * @return {boolean} true if the code is valid.
75
+ */
76
+ export declare const isSuccessfulCodeResponse: (code: number) => boolean;
77
+ //# sourceMappingURL=https.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"https.d.ts","sourceRoot":"","sources":["../../../../src/utils/https.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,oBAAY,iBAAiB;IAC3B,YAAY,MAAM;IAClB,iBAAiB,MAAM;CACxB;AAED,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;IAC/B,QAAQ,CAAC,EAAE;QACT,IAAI,EAAE,CAAC,CAAC;QACR,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,CAAC,EAAE,EACnC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAyB,GAC1B,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAmD9B;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,CAAC,EAAE,EAClC,IAAI,EACJ,KAAK,EACL,OAAO,EACP,MAAM,EACN,kBAAyB,GAC1B,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,MAAM,CAAC;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,MAAM,EAAE,eAAe,CAAC;IACxB,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAmD9B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA2BvD;AAED;;;;;;GAMG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAClC,MAAM,CAUR;AAGD,eAAO,MAAM,cAAc,gBACZ,MAAM,eACN,MAAM,KAClB,MAEF,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAUzE;AAED;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,SAAU,MAAM,KAAG,OAC7B,CAAC"}