@riocrypto/common-server 1.0.506

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 (349) hide show
  1. package/build/clients/bitstamp-client.d.ts +16 -0
  2. package/build/clients/bitstamp-client.js +83 -0
  3. package/build/clients/ccxt-client.d.ts +48 -0
  4. package/build/clients/ccxt-client.js +201 -0
  5. package/build/clients/etherscan-client.d.ts +6 -0
  6. package/build/clients/etherscan-client.js +24 -0
  7. package/build/clients/fireblocks-client.d.ts +15 -0
  8. package/build/clients/fireblocks-client.js +140 -0
  9. package/build/clients/fixer-client.d.ts +8 -0
  10. package/build/clients/fixer-client.js +34 -0
  11. package/build/clients/gueno-client.d.ts +10 -0
  12. package/build/clients/gueno-client.js +44 -0
  13. package/build/clients/kapstar-client.d.ts +6 -0
  14. package/build/clients/kapstar-client.js +26 -0
  15. package/build/clients/kushki-client.d.ts +14 -0
  16. package/build/clients/kushki-client.js +150 -0
  17. package/build/clients/rio-client.d.ts +82 -0
  18. package/build/clients/rio-client.js +315 -0
  19. package/build/clients/slack-client.d.ts +7 -0
  20. package/build/clients/slack-client.js +34 -0
  21. package/build/errors/address-check-failed-error.d.ts +8 -0
  22. package/build/errors/address-check-failed-error.js +15 -0
  23. package/build/errors/admin-already-exists-error.d.ts +8 -0
  24. package/build/errors/admin-already-exists-error.js +15 -0
  25. package/build/errors/admin-not-found-error.d.ts +8 -0
  26. package/build/errors/admin-not-found-error.js +15 -0
  27. package/build/errors/admin-only-error.d.ts +8 -0
  28. package/build/errors/admin-only-error.js +15 -0
  29. package/build/errors/api-key-not-found-error.d.ts +8 -0
  30. package/build/errors/api-key-not-found-error.js +15 -0
  31. package/build/errors/auth-already-exists-error.d.ts +8 -0
  32. package/build/errors/auth-already-exists-error.js +15 -0
  33. package/build/errors/auth-not-found-error.d.ts +8 -0
  34. package/build/errors/auth-not-found-error.js +15 -0
  35. package/build/errors/authorization-failed-error.d.ts +8 -0
  36. package/build/errors/authorization-failed-error.js +15 -0
  37. package/build/errors/custom-error.d.ts +8 -0
  38. package/build/errors/custom-error.js +10 -0
  39. package/build/errors/database-connection-error.d.ts +9 -0
  40. package/build/errors/database-connection-error.js +16 -0
  41. package/build/errors/insufficient-liquidity-error.d.ts +8 -0
  42. package/build/errors/insufficient-liquidity-error.js +19 -0
  43. package/build/errors/invalid-order-size-error.d.ts +8 -0
  44. package/build/errors/invalid-order-size-error.js +15 -0
  45. package/build/errors/message-failed-error.d.ts +8 -0
  46. package/build/errors/message-failed-error.js +15 -0
  47. package/build/errors/missing-kyc-approval-error.d.ts +8 -0
  48. package/build/errors/missing-kyc-approval-error.js +15 -0
  49. package/build/errors/missing-password-error.d.ts +8 -0
  50. package/build/errors/missing-password-error.js +15 -0
  51. package/build/errors/missing-security-question-error.d.ts +8 -0
  52. package/build/errors/missing-security-question-error.js +15 -0
  53. package/build/errors/missing-user-error.d.ts +8 -0
  54. package/build/errors/missing-user-error.js +15 -0
  55. package/build/errors/not-authorized-error.d.ts +8 -0
  56. package/build/errors/not-authorized-error.js +15 -0
  57. package/build/errors/not-broker-error.d.ts +8 -0
  58. package/build/errors/not-broker-error.js +17 -0
  59. package/build/errors/not-found-error.d.ts +8 -0
  60. package/build/errors/not-found-error.js +15 -0
  61. package/build/errors/partner-already-exists-error.d.ts +8 -0
  62. package/build/errors/partner-already-exists-error.js +15 -0
  63. package/build/errors/partner-not-found-error.d.ts +8 -0
  64. package/build/errors/partner-not-found-error.js +15 -0
  65. package/build/errors/password-already-used-error.d.ts +8 -0
  66. package/build/errors/password-already-used-error.js +15 -0
  67. package/build/errors/request-validation-error.d.ts +11 -0
  68. package/build/errors/request-validation-error.js +18 -0
  69. package/build/errors/rio-settings-already-exists-error.d.ts +8 -0
  70. package/build/errors/rio-settings-already-exists-error.js +15 -0
  71. package/build/errors/rio-settings-not-found-error.d.ts +8 -0
  72. package/build/errors/rio-settings-not-found-error.js +15 -0
  73. package/build/errors/user-already-exists-error.d.ts +8 -0
  74. package/build/errors/user-already-exists-error.js +15 -0
  75. package/build/errors/verification-failed-error.d.ts +8 -0
  76. package/build/errors/verification-failed-error.js +15 -0
  77. package/build/errors/wrong-order-state-error.d.ts +8 -0
  78. package/build/errors/wrong-order-state-error.js +17 -0
  79. package/build/errors/wrong-password-error.d.ts +8 -0
  80. package/build/errors/wrong-password-error.js +15 -0
  81. package/build/errors/wrong-processor-error.d.ts +8 -0
  82. package/build/errors/wrong-processor-error.js +15 -0
  83. package/build/errors/wrong-security-answer-error.d.ts +8 -0
  84. package/build/errors/wrong-security-answer-error.js +15 -0
  85. package/build/events/admin-created-event.d.ts +8 -0
  86. package/build/events/admin-created-event.js +2 -0
  87. package/build/events/admin-deleted-event.d.ts +7 -0
  88. package/build/events/admin-deleted-event.js +2 -0
  89. package/build/events/bank-payout-initialized-event.d.ts +12 -0
  90. package/build/events/bank-payout-initialized-event.js +2 -0
  91. package/build/events/base-listener.d.ts +18 -0
  92. package/build/events/base-listener.js +30 -0
  93. package/build/events/base-publisher.d.ts +13 -0
  94. package/build/events/base-publisher.js +20 -0
  95. package/build/events/business-kyc-failed-event.d.ts +7 -0
  96. package/build/events/business-kyc-failed-event.js +2 -0
  97. package/build/events/business-kyc-passed-event.d.ts +7 -0
  98. package/build/events/business-kyc-passed-event.js +2 -0
  99. package/build/events/checked-address-created-event.d.ts +11 -0
  100. package/build/events/checked-address-created-event.js +2 -0
  101. package/build/events/checked-address-updated-event.d.ts +10 -0
  102. package/build/events/checked-address-updated-event.js +2 -0
  103. package/build/events/clip-card-payment-created-event.d.ts +8 -0
  104. package/build/events/clip-card-payment-created-event.js +2 -0
  105. package/build/events/clip-card-payment-failed-event.d.ts +7 -0
  106. package/build/events/clip-card-payment-failed-event.js +2 -0
  107. package/build/events/deposit-address-created-event.d.ts +8 -0
  108. package/build/events/deposit-address-created-event.js +2 -0
  109. package/build/events/deposit-address-failed-event.d.ts +7 -0
  110. package/build/events/deposit-address-failed-event.js +2 -0
  111. package/build/events/deposit-completed-event.d.ts +9 -0
  112. package/build/events/deposit-completed-event.js +2 -0
  113. package/build/events/deposit-registered-event.d.ts +9 -0
  114. package/build/events/deposit-registered-event.js +2 -0
  115. package/build/events/dlocal-bank-payment-created-event.d.ts +9 -0
  116. package/build/events/dlocal-bank-payment-created-event.js +2 -0
  117. package/build/events/dlocal-bank-payment-failed-event.d.ts +7 -0
  118. package/build/events/dlocal-bank-payment-failed-event.js +2 -0
  119. package/build/events/fees-failed-event.d.ts +7 -0
  120. package/build/events/fees-failed-event.js +2 -0
  121. package/build/events/kyc-failed-event.d.ts +7 -0
  122. package/build/events/kyc-failed-event.js +2 -0
  123. package/build/events/kyc-passed-event.d.ts +7 -0
  124. package/build/events/kyc-passed-event.js +2 -0
  125. package/build/events/liquidity-fill-failed-event.d.ts +7 -0
  126. package/build/events/liquidity-fill-failed-event.js +2 -0
  127. package/build/events/liquidity-filled-event.d.ts +11 -0
  128. package/build/events/liquidity-filled-event.js +2 -0
  129. package/build/events/liquidity-routed-event.d.ts +9 -0
  130. package/build/events/liquidity-routed-event.js +2 -0
  131. package/build/events/liquidity-routing-failed-event.d.ts +7 -0
  132. package/build/events/liquidity-routing-failed-event.js +2 -0
  133. package/build/events/liquidity-transfer-failed-event.d.ts +7 -0
  134. package/build/events/liquidity-transfer-failed-event.js +2 -0
  135. package/build/events/liquidity-transfered-event.d.ts +9 -0
  136. package/build/events/liquidity-transfered-event.js +2 -0
  137. package/build/events/order-created-event.d.ts +39 -0
  138. package/build/events/order-created-event.js +2 -0
  139. package/build/events/order-deleted-event.d.ts +7 -0
  140. package/build/events/order-deleted-event.js +2 -0
  141. package/build/events/order-updated-event.d.ts +37 -0
  142. package/build/events/order-updated-event.js +2 -0
  143. package/build/events/partner-created-event.d.ts +14 -0
  144. package/build/events/partner-created-event.js +2 -0
  145. package/build/events/partner-updated-event.d.ts +19 -0
  146. package/build/events/partner-updated-event.js +2 -0
  147. package/build/events/payment-complete-event.d.ts +9 -0
  148. package/build/events/payment-complete-event.js +2 -0
  149. package/build/events/payment-created-event.d.ts +8 -0
  150. package/build/events/payment-created-event.js +2 -0
  151. package/build/events/payment-failed-event.d.ts +7 -0
  152. package/build/events/payment-failed-event.js +2 -0
  153. package/build/events/processor-routed-event.d.ts +9 -0
  154. package/build/events/processor-routed-event.js +2 -0
  155. package/build/events/processor-routing-failed-event.d.ts +7 -0
  156. package/build/events/processor-routing-failed-event.js +2 -0
  157. package/build/events/quote-failed-event.d.ts +7 -0
  158. package/build/events/quote-failed-event.js +2 -0
  159. package/build/events/rio-settings-created-event.d.ts +8 -0
  160. package/build/events/rio-settings-created-event.js +2 -0
  161. package/build/events/rio-settings-updated-event.d.ts +8 -0
  162. package/build/events/rio-settings-updated-event.js +2 -0
  163. package/build/events/subjects.d.ts +60 -0
  164. package/build/events/subjects.js +64 -0
  165. package/build/events/user-created-event.d.ts +25 -0
  166. package/build/events/user-created-event.js +2 -0
  167. package/build/events/user-deleted-event.d.ts +7 -0
  168. package/build/events/user-deleted-event.js +2 -0
  169. package/build/events/user-disabled-event.d.ts +7 -0
  170. package/build/events/user-disabled-event.js +2 -0
  171. package/build/events/user-updated-event.d.ts +23 -0
  172. package/build/events/user-updated-event.js +2 -0
  173. package/build/events/wyre-ach-payment-created-event.d.ts +9 -0
  174. package/build/events/wyre-ach-payment-created-event.js +2 -0
  175. package/build/events/wyre-payment-method-created-event.d.ts +11 -0
  176. package/build/events/wyre-payment-method-created-event.js +2 -0
  177. package/build/events/wyre-transfer-completed-event.d.ts +9 -0
  178. package/build/events/wyre-transfer-completed-event.js +2 -0
  179. package/build/events/wyre-transfer-created-event.d.ts +9 -0
  180. package/build/events/wyre-transfer-created-event.js +2 -0
  181. package/build/events/wyre-transfer-failed-event.d.ts +9 -0
  182. package/build/events/wyre-transfer-failed-event.js +2 -0
  183. package/build/events/wyre-user-created-event.d.ts +9 -0
  184. package/build/events/wyre-user-created-event.js +2 -0
  185. package/build/helpers/get-user-helper.d.ts +4 -0
  186. package/build/helpers/get-user-helper.js +35 -0
  187. package/build/index.d.ts +91 -0
  188. package/build/index.js +107 -0
  189. package/build/middlewares/authorize.d.ts +28 -0
  190. package/build/middlewares/authorize.js +195 -0
  191. package/build/middlewares/current-admin-auth.d.ts +15 -0
  192. package/build/middlewares/current-admin-auth.js +20 -0
  193. package/build/middlewares/current-auth.d.ts +16 -0
  194. package/build/middlewares/current-auth.js +20 -0
  195. package/build/middlewares/error-handler.d.ts +2 -0
  196. package/build/middlewares/error-handler.js +14 -0
  197. package/build/middlewares/get-order.d.ts +11 -0
  198. package/build/middlewares/get-order.js +57 -0
  199. package/build/middlewares/get-partner.d.ts +10 -0
  200. package/build/middlewares/get-partner.js +41 -0
  201. package/build/middlewares/get-user.d.ts +12 -0
  202. package/build/middlewares/get-user.js +45 -0
  203. package/build/middlewares/require-admin-api-key.d.ts +2 -0
  204. package/build/middlewares/require-admin-api-key.js +11 -0
  205. package/build/middlewares/require-auth.d.ts +2 -0
  206. package/build/middlewares/require-auth.js +11 -0
  207. package/build/middlewares/require-priveleges.d.ts +2 -0
  208. package/build/middlewares/require-priveleges.js +15 -0
  209. package/build/middlewares/validate-auth.d.ts +2 -0
  210. package/build/middlewares/validate-auth.js +30 -0
  211. package/build/middlewares/validate-kyc.d.ts +2 -0
  212. package/build/middlewares/validate-kyc.js +30 -0
  213. package/build/middlewares/validate-order.d.ts +0 -0
  214. package/build/middlewares/validate-order.js +20 -0
  215. package/build/middlewares/validate-request.d.ts +2 -0
  216. package/build/middlewares/validate-request.js +13 -0
  217. package/build/middlewares/verify-admin-api-key.d.ts +9 -0
  218. package/build/middlewares/verify-admin-api-key.js +11 -0
  219. package/build/models/admin-auth.d.ts +16 -0
  220. package/build/models/admin-auth.js +59 -0
  221. package/build/models/auth.d.ts +24 -0
  222. package/build/models/auth.js +83 -0
  223. package/build/models/bank-payout.d.ts +20 -0
  224. package/build/models/bank-payout.js +44 -0
  225. package/build/models/business-user.d.ts +57 -0
  226. package/build/models/business-user.js +111 -0
  227. package/build/models/ccxt-order.d.ts +16 -0
  228. package/build/models/ccxt-order.js +37 -0
  229. package/build/models/checked-address.d.ts +17 -0
  230. package/build/models/checked-address.js +37 -0
  231. package/build/models/kushki-payment.d.ts +16 -0
  232. package/build/models/kushki-payment.js +37 -0
  233. package/build/models/kyc.d.ts +20 -0
  234. package/build/models/kyc.js +45 -0
  235. package/build/models/order.d.ts +67 -0
  236. package/build/models/order.js +123 -0
  237. package/build/models/partner.d.ts +35 -0
  238. package/build/models/partner.js +69 -0
  239. package/build/models/rio-settings.d.ts +12 -0
  240. package/build/models/rio-settings.js +29 -0
  241. package/build/models/user.d.ts +53 -0
  242. package/build/models/user.js +94 -0
  243. package/build/services/apiKey.d.ts +3 -0
  244. package/build/services/apiKey.js +24 -0
  245. package/build/services/password.d.ts +4 -0
  246. package/build/services/password.js +32 -0
  247. package/build/services/s3.d.ts +5 -0
  248. package/build/services/s3.js +21 -0
  249. package/build/types/address-check-result.d.ts +4 -0
  250. package/build/types/address-check-result.js +8 -0
  251. package/build/types/admin.d.ts +4 -0
  252. package/build/types/admin.js +2 -0
  253. package/build/types/api-key.d.ts +5 -0
  254. package/build/types/api-key.js +2 -0
  255. package/build/types/auth-update.d.ts +8 -0
  256. package/build/types/auth-update.js +2 -0
  257. package/build/types/auth.d.ts +6 -0
  258. package/build/types/auth.js +2 -0
  259. package/build/types/authorization-type.d.ts +8 -0
  260. package/build/types/authorization-type.js +12 -0
  261. package/build/types/bank-payout.d.ts +7 -0
  262. package/build/types/bank-payout.js +2 -0
  263. package/build/types/business-user-input.d.ts +27 -0
  264. package/build/types/business-user-input.js +2 -0
  265. package/build/types/business-user-update.d.ts +26 -0
  266. package/build/types/business-user-update.js +2 -0
  267. package/build/types/business-user.d.ts +30 -0
  268. package/build/types/business-user.js +2 -0
  269. package/build/types/ccxt-liquidity-provider.d.ts +5 -0
  270. package/build/types/ccxt-liquidity-provider.js +9 -0
  271. package/build/types/checked-address.d.ts +7 -0
  272. package/build/types/checked-address.js +2 -0
  273. package/build/types/clip-payment-status.d.ts +3 -0
  274. package/build/types/clip-payment-status.js +7 -0
  275. package/build/types/country.d.ts +57 -0
  276. package/build/types/country.js +256 -0
  277. package/build/types/crypto.d.ts +6 -0
  278. package/build/types/crypto.js +38 -0
  279. package/build/types/dlocal-payment-method.d.ts +4 -0
  280. package/build/types/dlocal-payment-method.js +8 -0
  281. package/build/types/fees.d.ts +9 -0
  282. package/build/types/fees.js +2 -0
  283. package/build/types/fiat.d.ts +6 -0
  284. package/build/types/fiat.js +45 -0
  285. package/build/types/kyc-status.d.ts +7 -0
  286. package/build/types/kyc-status.js +11 -0
  287. package/build/types/language.d.ts +6 -0
  288. package/build/types/language.js +10 -0
  289. package/build/types/liquidity-provider.d.ts +9 -0
  290. package/build/types/liquidity-provider.js +13 -0
  291. package/build/types/order-input.d.ts +31 -0
  292. package/build/types/order-input.js +2 -0
  293. package/build/types/order-status.d.ts +21 -0
  294. package/build/types/order-status.js +51 -0
  295. package/build/types/order.d.ts +37 -0
  296. package/build/types/order.js +2 -0
  297. package/build/types/partner-auth.d.ts +5 -0
  298. package/build/types/partner-auth.js +2 -0
  299. package/build/types/partner-stats.d.ts +5 -0
  300. package/build/types/partner-stats.js +2 -0
  301. package/build/types/partner-status.d.ts +6 -0
  302. package/build/types/partner-status.js +10 -0
  303. package/build/types/partner-update.d.ts +10 -0
  304. package/build/types/partner-update.js +2 -0
  305. package/build/types/partner.d.ts +15 -0
  306. package/build/types/partner.js +2 -0
  307. package/build/types/payment-method.d.ts +5 -0
  308. package/build/types/payment-method.js +9 -0
  309. package/build/types/payout-method.d.ts +3 -0
  310. package/build/types/payout-method.js +7 -0
  311. package/build/types/platform-fee-range.d.ts +5 -0
  312. package/build/types/platform-fee-range.js +2 -0
  313. package/build/types/processor.d.ts +12 -0
  314. package/build/types/processor.js +16 -0
  315. package/build/types/quote.d.ts +21 -0
  316. package/build/types/quote.js +2 -0
  317. package/build/types/rio-env.d.ts +6 -0
  318. package/build/types/rio-env.js +10 -0
  319. package/build/types/rio-settings-update.d.ts +4 -0
  320. package/build/types/rio-settings-update.js +2 -0
  321. package/build/types/rio-settings.d.ts +4 -0
  322. package/build/types/rio-settings.js +2 -0
  323. package/build/types/security-question.d.ts +7 -0
  324. package/build/types/security-question.js +11 -0
  325. package/build/types/side.d.ts +4 -0
  326. package/build/types/side.js +8 -0
  327. package/build/types/us-state.d.ts +61 -0
  328. package/build/types/us-state.js +65 -0
  329. package/build/types/user-attribute.d.ts +10 -0
  330. package/build/types/user-attribute.js +14 -0
  331. package/build/types/user-input.d.ts +26 -0
  332. package/build/types/user-input.js +2 -0
  333. package/build/types/user-type.d.ts +4 -0
  334. package/build/types/user-type.js +8 -0
  335. package/build/types/user-update.d.ts +25 -0
  336. package/build/types/user-update.js +2 -0
  337. package/build/types/user.d.ts +30 -0
  338. package/build/types/user.js +2 -0
  339. package/build/types/users-stats.d.ts +3 -0
  340. package/build/types/users-stats.js +2 -0
  341. package/build/types/wyre-address.d.ts +9 -0
  342. package/build/types/wyre-address.js +2 -0
  343. package/build/types/wyre-order-status.d.ts +7 -0
  344. package/build/types/wyre-order-status.js +11 -0
  345. package/build/types/wyre-payment-method.d.ts +40 -0
  346. package/build/types/wyre-payment-method.js +2 -0
  347. package/build/types/wyre-webhook-notification.d.ts +12 -0
  348. package/build/types/wyre-webhook-notification.js +2 -0
  349. package/package.json +36 -0
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildCheckedAddress = void 0;
4
+ const buildCheckedAddress = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.CheckedAddress) {
7
+ return mongoose.model("CheckedAddress");
8
+ }
9
+ const CheckedAddressSchema = new mongoose.Schema({
10
+ address: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ result: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ lastChecked: {
19
+ type: mongoose.Schema.Types.Date,
20
+ required: true,
21
+ },
22
+ }, {
23
+ toJSON: {
24
+ transform(doc, ret) {
25
+ ret.id = ret._id;
26
+ delete ret._id;
27
+ delete ret.__v;
28
+ },
29
+ },
30
+ });
31
+ CheckedAddressSchema.statics.build = (attrs) => {
32
+ return new CheckedAddress(attrs);
33
+ };
34
+ const CheckedAddress = mongoose.model("CheckedAddress", CheckedAddressSchema);
35
+ return CheckedAddress;
36
+ };
37
+ exports.buildCheckedAddress = buildCheckedAddress;
@@ -0,0 +1,16 @@
1
+ import mongoose from "mongoose";
2
+ interface KushkiPaymentAttrs {
3
+ orderId: string;
4
+ kushkiTransactionReference: string;
5
+ status: string;
6
+ }
7
+ interface KushkiPaymentDoc extends mongoose.Document {
8
+ orderId: string;
9
+ status: string;
10
+ kushkiTransactionReference: string;
11
+ }
12
+ interface KushkiPaymentModel extends mongoose.Model<KushkiPaymentDoc> {
13
+ build(attrs: KushkiPaymentAttrs): KushkiPaymentDoc;
14
+ }
15
+ declare const buildKushkiPayment: (mongoose: typeof mongoose) => KushkiPaymentModel;
16
+ export { buildKushkiPayment, KushkiPaymentDoc };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildKushkiPayment = void 0;
4
+ const buildKushkiPayment = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.KushkiPayment) {
7
+ return mongoose.model("KushkiPayment");
8
+ }
9
+ const KushkiPaymentSchema = new mongoose.Schema({
10
+ orderId: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ kushkiTransactionReference: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ status: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ }, {
23
+ toJSON: {
24
+ transform(doc, ret) {
25
+ ret.id = ret._id;
26
+ delete ret._id;
27
+ delete ret.__v;
28
+ },
29
+ },
30
+ });
31
+ KushkiPaymentSchema.statics.build = (attrs) => {
32
+ return new KushkiPayment(attrs);
33
+ };
34
+ const KushkiPayment = mongoose.model("KushkiPayment", KushkiPaymentSchema);
35
+ return KushkiPayment;
36
+ };
37
+ exports.buildKushkiPayment = buildKushkiPayment;
@@ -0,0 +1,20 @@
1
+ import mongoose from "mongoose";
2
+ interface KYCAttrs {
3
+ userId: string;
4
+ provider: string;
5
+ providerId: string;
6
+ result: string;
7
+ lastChecked: Date;
8
+ }
9
+ interface KYCDoc extends mongoose.Document {
10
+ userId: string;
11
+ provider: string;
12
+ providerId: string;
13
+ result: string;
14
+ lastChecked: Date;
15
+ }
16
+ interface KYCModel extends mongoose.Model<KYCDoc> {
17
+ build(attrs: KYCAttrs): KYCDoc;
18
+ }
19
+ declare const buildKYC: (mongoose: typeof mongoose) => KYCModel;
20
+ export { buildKYC, KYCDoc };
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildKYC = void 0;
4
+ const buildKYC = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.KYC) {
7
+ return mongoose.model("KYC");
8
+ }
9
+ const KYCSchema = new mongoose.Schema({
10
+ userId: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ provider: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ providerId: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ result: {
23
+ type: String,
24
+ required: true,
25
+ },
26
+ lastChecked: {
27
+ type: mongoose.Schema.Types.Date,
28
+ required: true,
29
+ },
30
+ }, {
31
+ toJSON: {
32
+ transform(doc, ret) {
33
+ ret.id = ret._id;
34
+ delete ret._id;
35
+ delete ret.__v;
36
+ },
37
+ },
38
+ });
39
+ KYCSchema.statics.build = (attrs) => {
40
+ return new KYC(attrs);
41
+ };
42
+ const KYC = mongoose.model("KYC", KYCSchema);
43
+ return KYC;
44
+ };
45
+ exports.buildKYC = buildKYC;
@@ -0,0 +1,67 @@
1
+ import { Country } from "../types/country";
2
+ import { Fees } from "../types/fees";
3
+ import { Fiat } from "../types/fiat";
4
+ import { LiquidityProvider } from "../types/liquidity-provider";
5
+ import { OrderStatus } from "../types/order-status";
6
+ import { PaymentMethod } from "../types/payment-method";
7
+ import { PayoutMethod } from "../types/payout-method";
8
+ import { Processor } from "../types/processor";
9
+ import { Side } from "../types/side";
10
+ import { USState } from "../types/us-state";
11
+ import { Crypto } from "../types/crypto";
12
+ import { Mongoose, Model, Document } from "mongoose";
13
+ interface OrderAttrs {
14
+ userId: string;
15
+ crypto: Crypto;
16
+ side: Side;
17
+ fiat: Fiat;
18
+ paymentMethod?: PaymentMethod;
19
+ payoutMethod?: PayoutMethod;
20
+ createdAt: Date;
21
+ status: OrderStatus;
22
+ cryptoAddress: string;
23
+ country: Country;
24
+ state: USState | string;
25
+ amountFiat?: number;
26
+ amountCrypto?: number;
27
+ liquidityProvider?: LiquidityProvider;
28
+ processor?: Processor;
29
+ fees?: Fees;
30
+ price?: number;
31
+ partnerId?: string;
32
+ depositAddress?: string;
33
+ depositTxId?: string;
34
+ withdrawalTxId?: string;
35
+ addressVerified?: boolean;
36
+ brokerCustomerId?: string;
37
+ }
38
+ interface OrderDoc extends Document {
39
+ userId: string;
40
+ status: OrderStatus;
41
+ crypto: Crypto;
42
+ side: Side;
43
+ fiat: Fiat;
44
+ paymentMethod?: PaymentMethod;
45
+ payoutMethod?: PayoutMethod;
46
+ createdAt: Date;
47
+ country: Country;
48
+ state: USState | string;
49
+ cryptoAddress: string;
50
+ amountFiat?: number;
51
+ amountCrypto?: number;
52
+ liquidityProvider?: LiquidityProvider;
53
+ processor?: Processor;
54
+ fees?: Fees;
55
+ price?: number;
56
+ partnerId?: string;
57
+ depositAddress?: string;
58
+ depositTxId?: string;
59
+ withdrawalTxId?: string;
60
+ addressVerified?: boolean;
61
+ brokerCustomerId?: string;
62
+ }
63
+ interface OrderModel extends Model<OrderDoc> {
64
+ build(attrs: OrderAttrs): OrderDoc;
65
+ }
66
+ declare const buildOrder: (mongoose: Mongoose) => OrderModel;
67
+ export { buildOrder, OrderDoc };
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildOrder = void 0;
4
+ const buildOrder = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.Order) {
7
+ return mongoose.model("Order");
8
+ }
9
+ const orderSchema = new mongoose.Schema({
10
+ userId: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ status: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ crypto: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ side: {
23
+ type: String,
24
+ required: true,
25
+ },
26
+ fiat: {
27
+ type: String,
28
+ required: true,
29
+ },
30
+ paymentMethod: {
31
+ type: String,
32
+ },
33
+ payoutMethod: {
34
+ type: String,
35
+ },
36
+ createdAt: {
37
+ type: mongoose.Schema.Types.Date,
38
+ required: true,
39
+ },
40
+ cryptoAddress: {
41
+ type: String,
42
+ required: true,
43
+ },
44
+ country: {
45
+ type: String,
46
+ required: true,
47
+ },
48
+ state: {
49
+ type: String,
50
+ required: true,
51
+ },
52
+ amountFiat: {
53
+ type: Number,
54
+ },
55
+ amountCrypto: {
56
+ type: Number,
57
+ },
58
+ processor: {
59
+ type: String,
60
+ },
61
+ liquidityProvider: {
62
+ type: String,
63
+ },
64
+ depositTxId: {
65
+ type: String,
66
+ },
67
+ withdrawalTxId: {
68
+ type: String,
69
+ },
70
+ depositAddress: {
71
+ type: String,
72
+ },
73
+ fees: {
74
+ processingFeeCrypto: {
75
+ type: Number,
76
+ },
77
+ transferFeeCrypto: {
78
+ type: Number,
79
+ },
80
+ platformFeeCrypto: {
81
+ type: Number,
82
+ },
83
+ processingFeeFiat: {
84
+ type: Number,
85
+ },
86
+ transferFeeFiat: {
87
+ type: Number,
88
+ },
89
+ platformFeeFiat: {
90
+ type: Number,
91
+ },
92
+ partnerFeeFiat: {
93
+ type: Number,
94
+ },
95
+ },
96
+ price: {
97
+ type: Number,
98
+ },
99
+ partnerId: {
100
+ type: String,
101
+ },
102
+ addressVerified: {
103
+ type: Boolean,
104
+ },
105
+ brokerCustomerId: {
106
+ type: String,
107
+ },
108
+ }, {
109
+ toJSON: {
110
+ transform(doc, ret) {
111
+ ret.id = ret._id.valueOf();
112
+ delete ret._id;
113
+ delete ret.__v;
114
+ },
115
+ },
116
+ });
117
+ orderSchema.statics.build = (attrs) => {
118
+ return new Order(attrs);
119
+ };
120
+ const Order = mongoose.model("Order", orderSchema);
121
+ return Order;
122
+ };
123
+ exports.buildOrder = buildOrder;
@@ -0,0 +1,35 @@
1
+ import { PartnerStatus } from "../types/partner-status";
2
+ import { Mongoose, Document, Model } from "mongoose";
3
+ interface PartnerAttrs {
4
+ authId: string;
5
+ name: string;
6
+ status: PartnerStatus;
7
+ partnerFee: number;
8
+ platformFee: number;
9
+ color?: string;
10
+ logo?: string;
11
+ apiKeys?: {
12
+ value: string;
13
+ label: string;
14
+ id: string;
15
+ }[];
16
+ }
17
+ interface PartnerDoc extends Document {
18
+ authId: string;
19
+ name: string;
20
+ status: PartnerStatus;
21
+ partnerFee: number;
22
+ platformFee: number;
23
+ color?: string;
24
+ logo?: string;
25
+ apiKeys?: {
26
+ value: string;
27
+ label: string;
28
+ id: string;
29
+ }[];
30
+ }
31
+ interface PartnerModel extends Model<PartnerDoc> {
32
+ build(attrs: PartnerAttrs): PartnerDoc;
33
+ }
34
+ declare const buildPartner: (mongoose: Mongoose) => PartnerModel;
35
+ export { buildPartner, PartnerDoc };
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildPartner = void 0;
4
+ const buildPartner = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.Partner) {
7
+ return mongoose.model("Partner");
8
+ }
9
+ const PartnerSchema = new mongoose.Schema({
10
+ authId: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ name: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ status: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ partnerFee: {
23
+ type: Number,
24
+ required: true,
25
+ },
26
+ platformFee: {
27
+ type: Number,
28
+ required: true,
29
+ },
30
+ color: {
31
+ type: String,
32
+ },
33
+ logo: {
34
+ type: String,
35
+ },
36
+ apiKeys: [
37
+ {
38
+ value: {
39
+ type: String,
40
+ required: true,
41
+ },
42
+ label: {
43
+ type: String,
44
+ },
45
+ id: {
46
+ type: String,
47
+ required: true,
48
+ },
49
+ },
50
+ ],
51
+ }, {
52
+ toJSON: {
53
+ transform(doc, ret) {
54
+ ret.id = ret._id.valueOf();
55
+ delete ret._id;
56
+ delete ret.__v;
57
+ ret.apiKeys.forEach((apiKey) => {
58
+ delete apiKey.value;
59
+ });
60
+ },
61
+ },
62
+ });
63
+ PartnerSchema.statics.build = (attrs) => {
64
+ return new Partner(attrs);
65
+ };
66
+ const Partner = mongoose.model("Partner", PartnerSchema);
67
+ return Partner;
68
+ };
69
+ exports.buildPartner = buildPartner;
@@ -0,0 +1,12 @@
1
+ import mongoose from "mongoose";
2
+ interface RioSettingsAttrs {
3
+ platformFee: number;
4
+ }
5
+ interface RioSettingsDoc extends mongoose.Document {
6
+ platformFee: number;
7
+ }
8
+ interface RioSettingsModel extends mongoose.Model<RioSettingsDoc> {
9
+ build(attrs: RioSettingsAttrs): RioSettingsDoc;
10
+ }
11
+ declare const buildRioSettings: (mongoose: typeof mongoose) => RioSettingsModel;
12
+ export { buildRioSettings, RioSettingsModel };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildRioSettings = void 0;
4
+ const buildRioSettings = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.RioSettings) {
7
+ return mongoose.model("RioSettings");
8
+ }
9
+ const RioSettingsSchema = new mongoose.Schema({
10
+ platformFee: {
11
+ type: Number,
12
+ required: true,
13
+ },
14
+ }, {
15
+ toJSON: {
16
+ transform(doc, ret) {
17
+ ret.id = ret._id;
18
+ delete ret._id;
19
+ delete ret.__v;
20
+ },
21
+ },
22
+ });
23
+ RioSettingsSchema.statics.build = (attrs) => {
24
+ return new RioSettings(attrs);
25
+ };
26
+ const RioSettings = mongoose.model("RioSettings", RioSettingsSchema);
27
+ return RioSettings;
28
+ };
29
+ exports.buildRioSettings = buildRioSettings;
@@ -0,0 +1,53 @@
1
+ import { Country } from "../types/country";
2
+ import { KYCStatus } from "../types/kyc-status";
3
+ import { Language } from "../types/language";
4
+ import { USState } from "../types/us-state";
5
+ import { UserAttribute } from "../types/user-attribute";
6
+ import { UserType } from "../types/user-type";
7
+ import { Mongoose, Model, Document } from "mongoose";
8
+ interface UserAttrs {
9
+ authId: string;
10
+ type: UserType;
11
+ firstName: string;
12
+ lastName: string;
13
+ phoneNumber: string;
14
+ birthday: Date;
15
+ email: string;
16
+ street1: string;
17
+ street2?: string;
18
+ city: string;
19
+ state: USState | string;
20
+ postalCode: string;
21
+ country: Country;
22
+ kycStatus: KYCStatus;
23
+ cpf?: string;
24
+ language?: Language;
25
+ attributes?: UserAttribute[];
26
+ partnerId?: string;
27
+ }
28
+ interface UserModel extends Model<UserDoc> {
29
+ build(attrs: UserAttrs): UserDoc;
30
+ }
31
+ interface UserDoc extends Document {
32
+ _id: string;
33
+ authId: string;
34
+ type: UserType;
35
+ firstName: string;
36
+ lastName: string;
37
+ phoneNumber: string;
38
+ birthday: Date;
39
+ email: string;
40
+ street1: string;
41
+ street2?: string;
42
+ city: string;
43
+ state: USState | string;
44
+ postalCode: string;
45
+ country: Country;
46
+ kycStatus: KYCStatus;
47
+ cpf?: string;
48
+ language?: Language;
49
+ attributes?: UserAttribute[];
50
+ partnerId?: string;
51
+ }
52
+ declare const buildUser: (mongoose: Mongoose) => UserModel;
53
+ export { buildUser, UserDoc };
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildUser = void 0;
4
+ const buildUser = (mongoose) => {
5
+ // if model is already defined, return it
6
+ if (mongoose.models.User) {
7
+ return mongoose.model("User");
8
+ }
9
+ const userSchema = new mongoose.Schema({
10
+ authId: {
11
+ type: String,
12
+ required: true,
13
+ },
14
+ type: {
15
+ type: String,
16
+ required: true,
17
+ },
18
+ firstName: {
19
+ type: String,
20
+ required: true,
21
+ },
22
+ lastName: {
23
+ type: String,
24
+ required: true,
25
+ },
26
+ phoneNumber: {
27
+ type: String,
28
+ required: true,
29
+ },
30
+ birthday: {
31
+ type: Date,
32
+ required: true,
33
+ },
34
+ email: {
35
+ type: String,
36
+ required: true,
37
+ },
38
+ street1: {
39
+ type: String,
40
+ required: true,
41
+ },
42
+ street2: {
43
+ type: String,
44
+ },
45
+ city: {
46
+ type: String,
47
+ required: true,
48
+ },
49
+ state: {
50
+ type: String,
51
+ required: true,
52
+ },
53
+ postalCode: {
54
+ type: String,
55
+ required: true,
56
+ },
57
+ country: {
58
+ type: String,
59
+ required: true,
60
+ },
61
+ language: {
62
+ type: String,
63
+ },
64
+ cpf: {
65
+ type: String,
66
+ },
67
+ attributes: [
68
+ {
69
+ type: String,
70
+ },
71
+ ],
72
+ kycStatus: {
73
+ type: String,
74
+ required: true,
75
+ },
76
+ partnerId: {
77
+ type: String,
78
+ },
79
+ }, {
80
+ toJSON: {
81
+ transform(doc, ret) {
82
+ ret.id = ret._id.valueOf();
83
+ delete ret._id;
84
+ delete ret.__v;
85
+ },
86
+ },
87
+ });
88
+ userSchema.statics.build = (attrs) => {
89
+ return new User(attrs);
90
+ };
91
+ const User = mongoose.model("User", userSchema);
92
+ return User;
93
+ };
94
+ exports.buildUser = buildUser;
@@ -0,0 +1,3 @@
1
+ export declare class ApiKey {
2
+ static toHash(apiKey: string): Promise<string>;
3
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ApiKey = void 0;
13
+ const crypto_1 = require("crypto");
14
+ class ApiKey {
15
+ static toHash(apiKey) {
16
+ return __awaiter(this, void 0, void 0, function* () {
17
+ const salt = process.env.API_KEY_SALT;
18
+ const hash = (0, crypto_1.createHmac)("sha256", salt);
19
+ hash.update(apiKey);
20
+ return hash.digest("hex");
21
+ });
22
+ }
23
+ }
24
+ exports.ApiKey = ApiKey;
@@ -0,0 +1,4 @@
1
+ export declare class Password {
2
+ static toHash(password: string): Promise<string>;
3
+ static compare(storedPassword: string, suppliedPassword: string): Promise<boolean>;
4
+ }