account-lookup-service 15.5.0-iso.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (209) hide show
  1. package/.circleci/config.yml +11 -0
  2. package/.ncurc.yaml +6 -0
  3. package/.nvmrc +1 -0
  4. package/.nycrc.yml +20 -0
  5. package/.versionrc +15 -0
  6. package/CHANGELOG.md +330 -0
  7. package/CODEOWNERS +38 -0
  8. package/Dockerfile +45 -0
  9. package/LICENSE.md +10 -0
  10. package/README.md +252 -0
  11. package/audit-ci.jsonc +32 -0
  12. package/audit-resolve.json +161 -0
  13. package/config/default.json +109 -0
  14. package/config/knexfile.js +21 -0
  15. package/docker/account-lookup-service/default.json +106 -0
  16. package/docker/account-lookup-service/make-default-json.sh +5 -0
  17. package/docker/account-lookup-service/override.json +15 -0
  18. package/docker/central-ledger/default.json +458 -0
  19. package/docker/config-modifier/account-lookup-service.js +31 -0
  20. package/docker/kafka/consumer.properties +26 -0
  21. package/docker/kafka/producer.properties +45 -0
  22. package/docker/kafka/server.properties +143 -0
  23. package/docker/kafka/tools-log4j.properties +21 -0
  24. package/docker/mock-proxy/Dockerfile +15 -0
  25. package/docker/mock-proxy/package-lock.json +4986 -0
  26. package/docker/mock-proxy/package.json +24 -0
  27. package/docker/mock-proxy/src/config.ts +14 -0
  28. package/docker/mock-proxy/src/server.ts +94 -0
  29. package/docker/mock-proxy/src/utils.ts +29 -0
  30. package/docker/mock-proxy/tsconfig.json +24 -0
  31. package/docker/sql-init/01_permissions.sql +2 -0
  32. package/docker/sql-init-central-ledger/01_permissions.sql +2 -0
  33. package/docker/wait-for/wait-for-account-lookup-service.sh +10 -0
  34. package/docker/wait-for/wait-for-central-ledger.sh +11 -0
  35. package/docker/wait-for/wait-for-kafka.sh +7 -0
  36. package/docker/wait-for/wait-for-ml-api-adapter.sh +9 -0
  37. package/docker/wait-for/wait-for-mockserver.sh +20 -0
  38. package/docker/wait-for/wait-for-mysql-als.sh +14 -0
  39. package/docker/wait-for/wait-for-mysql-central-ledger.sh +11 -0
  40. package/docker/wait-for/wait-for-mysql.sh +11 -0
  41. package/docker/wait-for/wait-for-objstore.sh +12 -0
  42. package/docker/wait-for/wait-for.env +18 -0
  43. package/docker/wait-for/wait-for.sh +81 -0
  44. package/docker-compose.integration.yml +29 -0
  45. package/docker-compose.yml +243 -0
  46. package/jest-int.config.js +8 -0
  47. package/jest.config.js +16 -0
  48. package/jsdoc.json +38 -0
  49. package/migrations/01_currency.js +42 -0
  50. package/migrations/02_endpointType.js +43 -0
  51. package/migrations/03_endpointType-indexes.js +37 -0
  52. package/migrations/04_partyIdType.js +43 -0
  53. package/migrations/05_partyIdType-indexes.js +38 -0
  54. package/migrations/08_oracleEndpoint.js +51 -0
  55. package/migrations/09_oracleEndpoint-indexes.js +41 -0
  56. package/migrations/10_oracleEndpoint-remove-constraints.js +38 -0
  57. package/package.json +180 -0
  58. package/scripts/_wait4_all.js +143 -0
  59. package/scripts/test-functional.sh +76 -0
  60. package/secrets/jwsSigningKey.key +27 -0
  61. package/seeds/currency.js +765 -0
  62. package/seeds/endpointType.js +65 -0
  63. package/seeds/partyIdType.js +79 -0
  64. package/src/api/endpointcache.js +67 -0
  65. package/src/api/health.js +66 -0
  66. package/src/api/index.js +85 -0
  67. package/src/api/oracles/{ID}.js +100 -0
  68. package/src/api/oracles.js +96 -0
  69. package/src/api/participants/{ID}/error.js +44 -0
  70. package/src/api/participants/{ID}.js +44 -0
  71. package/src/api/participants/{Type}/{ID}/error.js +74 -0
  72. package/src/api/participants/{Type}/{ID}/{SubId}/error.js +68 -0
  73. package/src/api/participants/{Type}/{ID}/{SubId}.js +113 -0
  74. package/src/api/participants/{Type}/{ID}.js +133 -0
  75. package/src/api/participants.js +63 -0
  76. package/src/api/parties/{Type}/{ID}/error.js +66 -0
  77. package/src/api/parties/{Type}/{ID}/{SubId}/error.js +56 -0
  78. package/src/api/parties/{Type}/{ID}/{SubId}.js +77 -0
  79. package/src/api/parties/{Type}/{ID}.js +98 -0
  80. package/src/api/routes.js +294 -0
  81. package/src/constants.js +16 -0
  82. package/src/domain/oracle/index.js +33 -0
  83. package/src/domain/oracle/oracle.js +234 -0
  84. package/src/domain/participants/index.js +35 -0
  85. package/src/domain/participants/participants.js +560 -0
  86. package/src/domain/parties/getPartiesByTypeAndID.js +239 -0
  87. package/src/domain/parties/index.js +32 -0
  88. package/src/domain/parties/parties.js +215 -0
  89. package/src/domain/parties/utils.js +84 -0
  90. package/src/domain/timeout/dto.js +48 -0
  91. package/src/domain/timeout/index.js +104 -0
  92. package/src/handlers/TimeoutHandler.js +94 -0
  93. package/src/handlers/index.js +70 -0
  94. package/src/handlers/monitoring/index.js +51 -0
  95. package/src/handlers/monitoring/plugins/health.js +61 -0
  96. package/src/handlers/monitoring/plugins/metrics.js +48 -0
  97. package/src/handlers/register.js +102 -0
  98. package/src/index.js +66 -0
  99. package/src/interface/admin-swagger.yaml +804 -0
  100. package/src/interface/admin_swagger.json +959 -0
  101. package/src/interface/api-swagger-iso20022-parties.yaml +1734 -0
  102. package/src/interface/api-swagger.yaml +1733 -0
  103. package/src/interface/api_swagger.json +3046 -0
  104. package/src/interface/fspiop-rest-v2.0-ISO20022_parties.yaml +2256 -0
  105. package/src/interface/thirdparty/admin-swagger.yaml +808 -0
  106. package/src/interface/thirdparty/admin_swagger.json +961 -0
  107. package/src/interface/thirdparty/api-swagger.yaml +1739 -0
  108. package/src/interface/thirdparty/api_swagger.json +3142 -0
  109. package/src/lib/argv.js +39 -0
  110. package/src/lib/cache.js +126 -0
  111. package/src/lib/config.js +183 -0
  112. package/src/lib/db.js +26 -0
  113. package/src/lib/headers.js +53 -0
  114. package/src/lib/healthCheck/subServiceHealth.js +84 -0
  115. package/src/lib/index.js +11 -0
  116. package/src/lib/migrator.js +17 -0
  117. package/src/lib/requestLogger.js +54 -0
  118. package/src/lib/util.js +66 -0
  119. package/src/metrics/handler.js +33 -0
  120. package/src/metrics/plugin.js +52 -0
  121. package/src/metrics/routes.js +43 -0
  122. package/src/models/currency/currency.js +48 -0
  123. package/src/models/currency/index.js +32 -0
  124. package/src/models/endpointType/endpointType.js +48 -0
  125. package/src/models/endpointType/index.js +32 -0
  126. package/src/models/misc/migrationLock.js +49 -0
  127. package/src/models/oracle/facade.js +341 -0
  128. package/src/models/oracle/index.js +41 -0
  129. package/src/models/oracle/oracleEndpoint.js +192 -0
  130. package/src/models/oracle/oracleEndpointCached.js +108 -0
  131. package/src/models/participantEndpoint/facade.js +238 -0
  132. package/src/models/partyIdType/index.js +32 -0
  133. package/src/models/partyIdType/partyIdType.js +41 -0
  134. package/src/plugins.js +139 -0
  135. package/src/server.js +199 -0
  136. package/test/fixtures/index.js +131 -0
  137. package/test/fixtures/iso.js +110 -0
  138. package/test/integration/.env +8 -0
  139. package/test/integration/api/parties.test.js +137 -0
  140. package/test/integration/constants.js +20 -0
  141. package/test/integration/domain/oracle/index.test.js +324 -0
  142. package/test/integration/domain/timeout/index.test.js +75 -0
  143. package/test/integration/env.sh +15 -0
  144. package/test/integration/example.test.js +12 -0
  145. package/test/integration/models/currency/currency.test.js +68 -0
  146. package/test/integration/plugins.test.js +62 -0
  147. package/test/integration/prepareTestParticipants.js +30 -0
  148. package/test/integration/setup.js +5 -0
  149. package/test/integration-config.json +81 -0
  150. package/test/integration-runner.sh +108 -0
  151. package/test/unit/api/health.test.js +142 -0
  152. package/test/unit/api/oracles/{ID}.test.js +264 -0
  153. package/test/unit/api/oracles.test.js +173 -0
  154. package/test/unit/api/participants/participants.test.js +117 -0
  155. package/test/unit/api/participants/{Type}/{ID}/error.test.js +155 -0
  156. package/test/unit/api/participants/{Type}/{ID}/{SubId}/error.test.js +131 -0
  157. package/test/unit/api/participants/{Type}/{ID}/{SubId}.test.js +377 -0
  158. package/test/unit/api/participants/{Type}/{ID}.test.js +383 -0
  159. package/test/unit/api/participants.test.js +108 -0
  160. package/test/unit/api/parties/endpointcache.test.js +83 -0
  161. package/test/unit/api/parties/parties.test.js +102 -0
  162. package/test/unit/api/parties/{Type}/{ID}/error.test.js +145 -0
  163. package/test/unit/api/parties/{Type}/{ID}/{SubId}/error.test.js +141 -0
  164. package/test/unit/api/parties/{Type}/{ID}/{SubId}.test.js +241 -0
  165. package/test/unit/api/parties/{Type}/{ID}.test.js +240 -0
  166. package/test/unit/domain/oracle/oracle.test.js +505 -0
  167. package/test/unit/domain/participants/participants.test.js +1724 -0
  168. package/test/unit/domain/parties/parties.test.js +940 -0
  169. package/test/unit/domain/timeout/dto.test.js +28 -0
  170. package/test/unit/domain/timeout/index.test.js +81 -0
  171. package/test/unit/handlers/TimeoutHandler.test.js +125 -0
  172. package/test/unit/handlers/index.test.js +56 -0
  173. package/test/unit/handlers/register.test.js +90 -0
  174. package/test/unit/index.test.js +139 -0
  175. package/test/unit/iso20022/partiesValidation.test.js +129 -0
  176. package/test/unit/lib/TransformFacades.test.js +18 -0
  177. package/test/unit/lib/argv.test.js +40 -0
  178. package/test/unit/lib/cache.test.js +172 -0
  179. package/test/unit/lib/config.test.js +108 -0
  180. package/test/unit/lib/healthCheck/subServiceHealth.test.js +89 -0
  181. package/test/unit/lib/migrator.test.js +52 -0
  182. package/test/unit/lib/requestLogger.test.js +115 -0
  183. package/test/unit/lib/util.test.js +68 -0
  184. package/test/unit/mocks.js +66 -0
  185. package/test/unit/models/currency/currency.test.js +91 -0
  186. package/test/unit/models/endpointType/endpointType.test.js +69 -0
  187. package/test/unit/models/misc/migrationLock.test.js +96 -0
  188. package/test/unit/models/oracle/facade.test.js +546 -0
  189. package/test/unit/models/oracle/oracleEndpoint.test.js +409 -0
  190. package/test/unit/models/oracle/oracleEndpointCached.test.js +153 -0
  191. package/test/unit/models/participantEndpoint/facade.test.js +295 -0
  192. package/test/unit/models/partyIdType/partyIdType.test.js +88 -0
  193. package/test/unit/plugins.test.js +89 -0
  194. package/test/unit/setup.js +7 -0
  195. package/test/util/apiClients/AlsApiClient.js +44 -0
  196. package/test/util/apiClients/BasicApiClient.js +34 -0
  197. package/test/util/apiClients/ProxyApiClient.js +25 -0
  198. package/test/util/apiClients/index.js +7 -0
  199. package/test/util/helper.js +332 -0
  200. package/test/util/index.js +11 -0
  201. package/test/util/mockgen.js +43 -0
  202. package/test/util/onboarding.js +132 -0
  203. package/test/util/scripts/addAlsDb.sh +33 -0
  204. package/test/util/scripts/configureMockServer.sh +35 -0
  205. package/test/util/scripts/env.sh +19 -0
  206. package/test/util/scripts/populateTestData.sh +62 -0
  207. package/test/util/scripts/startMockCentralServer.sh +45 -0
  208. package/test/util/scripts/startMockOracleServer.sh +45 -0
  209. package/test/util/testConfig.js +44 -0
@@ -0,0 +1,11 @@
1
+ version: 2.1
2
+ setup: true
3
+ orbs:
4
+ build: mojaloop/build@1.0.22
5
+ workflows:
6
+ setup:
7
+ jobs:
8
+ - build/workflow:
9
+ filters:
10
+ tags:
11
+ only: /v\d+(\.\d+){2}(-[a-zA-Z-][0-9a-zA-Z-]*\.\d+)?/
package/.ncurc.yaml ADDED
@@ -0,0 +1,6 @@
1
+ ## Add a TODO comment indicating the reason for each rejected dependency upgrade added to this list, and what should be done to resolve it (i.e. handle it through a story, etc).
2
+ reject: [
3
+ # TODO: v6+ (ref: https://github.com/sindresorhus/get-port/releases/tag/v6.0.0) is an ESM library and thus not compatible with CommonJS. Future story needed to resolve.
4
+ "get-port",
5
+ "@mojaloop/central-services-shared" ## need to remove before merging proxyCache functionality to main
6
+ ]
package/.nvmrc ADDED
@@ -0,0 +1 @@
1
+ 18.20.4
package/.nycrc.yml ADDED
@@ -0,0 +1,20 @@
1
+ temp-directory: "./.nyc_output"
2
+ check-coverage: true
3
+ per-file: true
4
+ lines: 90
5
+ statements: 90
6
+ functions: 90
7
+ branches: 90
8
+ all: true
9
+ include: [
10
+ "src/**/*.js"
11
+ ]
12
+ reporter: [
13
+ "lcov",
14
+ "text-summary"
15
+ ]
16
+ exclude: [
17
+ "**/node_modules/**",
18
+ '**/migrations/**',
19
+ '**/docs/**'
20
+ ]
package/.versionrc ADDED
@@ -0,0 +1,15 @@
1
+ {
2
+ "types": [
3
+ {"type": "feat", "section": "Features"},
4
+ {"type": "fix", "section": "Bug Fixes"},
5
+ {"type": "docs", "section": "Documentation"},
6
+ {"type": "style", "section": "Styling"},
7
+ {"type": "refactor", "section": "Refactors"},
8
+ {"type": "perf", "section": "Performance"},
9
+ {"type": "test", "section": "Tests"},
10
+ {"type": "build", "section": "Build System"},
11
+ {"type": "ci", "section": "CI"},
12
+ {"type": "chore", "section": "Chore"},
13
+ {"type": "revert", "section": "Reverts"}
14
+ ]
15
+ }
package/CHANGELOG.md ADDED
@@ -0,0 +1,330 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
+
5
+ ### [15.3.4](https://github.com/mojaloop/account-lookup-service/compare/v15.3.3...v15.3.4) (2024-06-11)
6
+
7
+
8
+ ### Chore
9
+
10
+ * updates regarding markdown it, overrides ([#481](https://github.com/mojaloop/account-lookup-service/issues/481)) ([ea645e8](https://github.com/mojaloop/account-lookup-service/commit/ea645e807d3c36df1f59c343403b496e66734399))
11
+
12
+ ### [15.3.3](https://github.com/mojaloop/account-lookup-service/compare/v15.3.2...v15.3.3) (2024-06-11)
13
+
14
+
15
+ ### Chore
16
+
17
+ * update cs shared ([#480](https://github.com/mojaloop/account-lookup-service/issues/480)) ([8c12569](https://github.com/mojaloop/account-lookup-service/commit/8c12569e448003b991366f18d9cc72a166d0af69))
18
+
19
+ ### [15.3.2](https://github.com/mojaloop/account-lookup-service/compare/v15.3.1...v15.3.2) (2024-06-11)
20
+
21
+
22
+ ### Chore
23
+
24
+ * dependency updates and minor maintenance changes ([#478](https://github.com/mojaloop/account-lookup-service/issues/478)) ([9227508](https://github.com/mojaloop/account-lookup-service/commit/92275083355e1f058914a617d2cd49cfb29eb9be))
25
+
26
+ ### [15.3.1](https://github.com/mojaloop/account-lookup-service/compare/v15.3.0...v15.3.1) (2024-06-07)
27
+
28
+
29
+ ### Bug Fixes
30
+
31
+ * image scan error ([#477](https://github.com/mojaloop/account-lookup-service/issues/477)) ([395c3ba](https://github.com/mojaloop/account-lookup-service/commit/395c3bae79a729422b8fc75d85656231338bcdf6))
32
+
33
+ ## [15.3.0](https://github.com/mojaloop/account-lookup-service/compare/v15.2.5...v15.3.0) (2024-05-28)
34
+
35
+
36
+ ### Features
37
+
38
+ * enable sending events directly to Kafka ([#476](https://github.com/mojaloop/account-lookup-service/issues/476)) ([a2ad614](https://github.com/mojaloop/account-lookup-service/commit/a2ad61451be300304f050ceb9946774385fc2e23))
39
+
40
+ ### [15.2.5](https://github.com/mojaloop/account-lookup-service/compare/v15.2.4...v15.2.5) (2024-05-17)
41
+
42
+
43
+ ### Bug Fixes
44
+
45
+ * stack overflow ([#475](https://github.com/mojaloop/account-lookup-service/issues/475)) ([a6a3b5d](https://github.com/mojaloop/account-lookup-service/commit/a6a3b5da22d271279985bd0d590fa68787c2f409))
46
+
47
+ ### [15.2.4](https://github.com/mojaloop/account-lookup-service/compare/v15.2.3...v15.2.4) (2024-04-23)
48
+
49
+
50
+ ### Bug Fixes
51
+
52
+ * excessive span logging ([#474](https://github.com/mojaloop/account-lookup-service/issues/474)) ([c51b7de](https://github.com/mojaloop/account-lookup-service/commit/c51b7de89d9b5856a4bd6f4c18f4848656725606))
53
+ * **mojaloop#/3829:** added jwsSigner defining to PUT /participants callback ([#472](https://github.com/mojaloop/account-lookup-service/issues/472)) ([92908a4](https://github.com/mojaloop/account-lookup-service/commit/92908a417e776e866ec96c0ca8016a7a86c7880a))
54
+
55
+ ### [15.2.3](https://github.com/mojaloop/account-lookup-service/compare/v15.2.2...v15.2.3) (2024-03-07)
56
+
57
+
58
+ ### Chore
59
+
60
+ * **mojaloop/#3759:** update central shared ([#470](https://github.com/mojaloop/account-lookup-service/issues/470)) ([3f6b233](https://github.com/mojaloop/account-lookup-service/commit/3f6b233420ebb6d78d88fdc81c27ff2c12caeeb2)), closes [mojaloop/#3759](https://github.com/mojaloop/project/issues/3759)
61
+
62
+ ### [15.2.2](https://github.com/mojaloop/account-lookup-service/compare/v15.2.1...v15.2.2) (2024-03-01)
63
+
64
+
65
+ ### Chore
66
+
67
+ * **mojaloop/#3759:** fix incorrect error description ([#469](https://github.com/mojaloop/account-lookup-service/issues/469)) ([3fba290](https://github.com/mojaloop/account-lookup-service/commit/3fba290328d6d0c9ab89e794cd840241a16d872e))
68
+
69
+ ### [15.2.1](https://github.com/mojaloop/account-lookup-service/compare/v15.2.0...v15.2.1) (2023-12-20)
70
+
71
+
72
+ ### Bug Fixes
73
+
74
+ * **mojaloop/#3682:** fix cache implementation ([#468](https://github.com/mojaloop/account-lookup-service/issues/468)) ([b2458d9](https://github.com/mojaloop/account-lookup-service/commit/b2458d9afa00e7e47ae38670286d0d0314454330))
75
+
76
+ ## [15.2.0](https://github.com/mojaloop/account-lookup-service/compare/v15.1.0...v15.2.0) (2023-11-28)
77
+
78
+
79
+ ### Features
80
+
81
+ * **mojaloop/#3427:** add oracle endpoint db caching and oracle request caching ([#467](https://github.com/mojaloop/account-lookup-service/issues/467)) ([42e93d0](https://github.com/mojaloop/account-lookup-service/commit/42e93d013427c69b93ad1b096bb480630528a047)), closes [mojaloop/#3427](https://github.com/mojaloop/project/issues/3427)
82
+
83
+ ## [15.1.0](https://github.com/mojaloop/account-lookup-service/compare/v15.0.0...v15.1.0) (2023-11-24)
84
+
85
+
86
+ ### Features
87
+
88
+ * **mojaloop/#3426:** add participant req caching, enable cache metrics, log fixes ([#465](https://github.com/mojaloop/account-lookup-service/issues/465)) ([803d671](https://github.com/mojaloop/account-lookup-service/commit/803d671f77acd97b224d0f7debed1e2edc5b10d5))
89
+
90
+ ## [15.0.0](https://github.com/mojaloop/account-lookup-service/compare/v14.2.5...v15.0.0) (2023-11-07)
91
+
92
+
93
+ ### Bug Fixes
94
+
95
+ * **mojaloop/#3615:** update dependencies ([#464](https://github.com/mojaloop/account-lookup-service/issues/464)) ([f6a544c](https://github.com/mojaloop/account-lookup-service/commit/f6a544ce07b6d72cdabd93208bb51e38afa28faa)), closes [mojaloop/#3615](https://github.com/mojaloop/project/issues/3615)
96
+
97
+ ### [14.2.5](https://github.com/mojaloop/account-lookup-service/compare/v14.2.3...v14.2.5) (2023-09-12)
98
+
99
+
100
+ ### Chore
101
+
102
+ * **mojaloop/#3435:** nodejs upgrade ([#462](https://github.com/mojaloop/account-lookup-service/issues/462)) ([cea1fae](https://github.com/mojaloop/account-lookup-service/commit/cea1fae3fc32043e381b9dbcfc8642bf5387ce67)), closes [mojaloop/#3435](https://github.com/mojaloop/project/issues/3435)
103
+
104
+ ### [14.2.3](https://github.com/mojaloop/account-lookup-service/compare/v14.2.2...v14.2.3) (2023-07-27)
105
+
106
+
107
+ ### Bug Fixes
108
+
109
+ * json stringify on every response ([#460](https://github.com/mojaloop/account-lookup-service/issues/460)) ([2525b6c](https://github.com/mojaloop/account-lookup-service/commit/2525b6ccbc866d05697f73cd224a5a6fdc35ef2f))
110
+
111
+ ### [14.2.2](https://github.com/mojaloop/account-lookup-service/compare/v14.2.1...v14.2.2) (2023-07-12)
112
+
113
+
114
+ ### Chore
115
+
116
+ * update default.json ([#459](https://github.com/mojaloop/account-lookup-service/issues/459)) ([527d5ee](https://github.com/mojaloop/account-lookup-service/commit/527d5ee118ea2fb347327491486f82b456a4cc7d))
117
+
118
+ ### [14.2.1](https://github.com/mojaloop/account-lookup-service/compare/v14.2.0...v14.2.1) (2023-07-12)
119
+
120
+
121
+ ### Bug Fixes
122
+
123
+ * added missing metrics initialisation ([#458](https://github.com/mojaloop/account-lookup-service/issues/458)) ([fd0d87b](https://github.com/mojaloop/account-lookup-service/commit/fd0d87ba52862b2e901ea1a52310f5f1d23a377f))
124
+
125
+ ## [14.2.0](https://github.com/mojaloop/account-lookup-service/compare/v14.1.0...v14.2.0) (2023-07-11)
126
+
127
+
128
+ ### Features
129
+
130
+ * **mojaloop/#3396:** added missing metrics ([#457](https://github.com/mojaloop/account-lookup-service/issues/457)) ([eb82101](https://github.com/mojaloop/account-lookup-service/commit/eb821018c05e03a9ca72ee1be14ecb88a93b1f7a)), closes [mojaloop/#3396](https://github.com/mojaloop/project/issues/3396)
131
+
132
+ ## [14.1.0](https://github.com/mojaloop/account-lookup-service/compare/v14.0.0...v14.1.0) (2022-11-25)
133
+
134
+
135
+ ### Features
136
+
137
+ * **mojaloop/#2740:** add testing currency codes and update codeowners ([#450](https://github.com/mojaloop/account-lookup-service/issues/450)) ([7cec9f2](https://github.com/mojaloop/account-lookup-service/commit/7cec9f2633dd29e8b7854fd5a5846ebdc70e764d)), closes [mojaloop/#2740](https://github.com/mojaloop/project/issues/2740)
138
+
139
+ ## [14.0.0](https://github.com/mojaloop/account-lookup-service/compare/v13.0.0...v14.0.0) (2022-06-20)
140
+
141
+
142
+ ### ⚠ BREAKING CHANGES
143
+
144
+ * **mojaloop/#2092:** Major version bump for node v16 LTS support, re-structuring of project directories to align to core Mojaloop repositories and docker image now uses `/opt/app` instead of `/opt/account-lookup-service` which will impact config mounts. Also, take note of the [knexfile.js](https://github.com/mojaloop/helm/blob/master/account-lookup-service/chart-service/configs/knexfile.js#L2) defined in the Helm charts which have hard-coded directories which should also be changed to reflect this change.
145
+
146
+ ### Features
147
+
148
+ * **mojaloop/#2092:** upgrade nodeJS version for core services ([#445](https://github.com/mojaloop/account-lookup-service/issues/445)) ([67d9a0e](https://github.com/mojaloop/account-lookup-service/commit/67d9a0eb72e5eb8365c73f9c98cb215755b54dbe)), closes [mojaloop/#2092](https://github.com/mojaloop/project/issues/2092)
149
+
150
+
151
+ ### Bug Fixes
152
+
153
+ * package.json & package-lock.json to reduce vulnerabilities ([#443](https://github.com/mojaloop/account-lookup-service/issues/443)) ([812671e](https://github.com/mojaloop/account-lookup-service/commit/812671e56587ed1c6fdeebb0005ee78b2740421d))
154
+
155
+ ## [13.0.0](https://github.com/mojaloop/account-lookup-service/compare/v12.1.0...v13.0.0) (2022-03-04)
156
+
157
+
158
+ ### ⚠ BREAKING CHANGES
159
+
160
+ * **mojaloop/#2704:** - Config PROTOCOL_VERSIONS.CONTENT has now been modified to support backward compatibility for minor versions (i.e. v1.0 & 1.1) as follows:
161
+
162
+ > ```
163
+ > "PROTOCOL_VERSIONS": {
164
+ > "CONTENT": "1.1", <-- used when generating messages from the "SWITCH", and validate incoming FSPIOP API requests/callbacks CONTENT-TYPE headers
165
+ > "ACCEPT": {
166
+ > "DEFAULT": "1", <-- used when generating messages from the "SWITCH"
167
+ > "VALIDATELIST": [ <-- used to validate incoming FSPIOP API requests/callbacks ACCEPT headers
168
+ > "1",
169
+ > "1.0",
170
+ > "1.1"
171
+ > ]
172
+ > }
173
+ > },
174
+ > ```
175
+ >
176
+ > to be consistent with the ACCEPT structure as follows:
177
+ >
178
+ > ```
179
+ > "PROTOCOL_VERSIONS": {
180
+ > "CONTENT": {
181
+ > "DEFAULT": "1.1", <-- used when generating messages from the "SWITCH"
182
+ > "VALIDATELIST": [ <-- used to validate incoming FSPIOP API requests/callbacks CONTENT-TYPE headers
183
+ > "1.1",
184
+ > "1.0"
185
+ > ]
186
+ > },
187
+ > "ACCEPT": {
188
+ > "DEFAULT": "1", <-- used when generating messages from the "SWITCH"
189
+ > "VALIDATELIST": [ <-- used to validate incoming FSPIOP API requests/callbacks ACCEPT headers
190
+ > "1",
191
+ > "1.0",
192
+ > "1.1"
193
+ > ]
194
+ > }
195
+ > },
196
+ > ```
197
+
198
+ ### Features
199
+
200
+ * **mojaloop/#2704:** core-services support for non-breaking backward api compatibility ([#436](https://github.com/mojaloop/account-lookup-service/issues/436)) ([5900e52](https://github.com/mojaloop/account-lookup-service/commit/5900e52d48d511934fea222d093727e3fc02ffc3)), closes [mojaloop/#2704](https://github.com/mojaloop/project/issues/2704)
201
+
202
+
203
+ ### Bug Fixes
204
+
205
+ * [#2704](https://github.com/mojaloop/account-lookup-service/issues/2704) core services support for non breaking backward api compatibility ([#438](https://github.com/mojaloop/account-lookup-service/issues/438)) ([273bd7d](https://github.com/mojaloop/account-lookup-service/commit/273bd7d0b1447d97114483370ee9e2fffccd9edf))
206
+
207
+
208
+ ### Chore
209
+
210
+ * **deps:** bump follow-redirects from 1.14.5 to 1.14.7 ([#433](https://github.com/mojaloop/account-lookup-service/issues/433)) ([d7a715a](https://github.com/mojaloop/account-lookup-service/commit/d7a715a672da7345e7fc40708f71ad9d71d27abb))
211
+
212
+ ## [12.1.0](https://github.com/mojaloop/account-lookup-service/compare/v12.0.0...v12.1.0) (2021-12-14)
213
+
214
+
215
+ ### Features
216
+
217
+ * **mojaloop/#2608:** injected resource versions config for outbound requests ([#432](https://github.com/mojaloop/account-lookup-service/issues/432)) ([9df1d88](https://github.com/mojaloop/account-lookup-service/commit/9df1d88e3387fb4ddd6abfdfee40f45dbbd15ab5)), closes [mojaloop/#2608](https://github.com/mojaloop/project/issues/2608)
218
+
219
+ ## [12.0.0](https://github.com/mojaloop/account-lookup-service/compare/v11.8.0...v12.0.0) (2021-11-05)
220
+
221
+
222
+ ### ⚠ BREAKING CHANGES
223
+
224
+ * **mojaloop/#2534:** Forcing a major version change for awareness of the config changes. The `LIB_RESOURCE_VERSIONS` env var is now deprecated, and this is now also controlled by the PROTOCOL_VERSIONS config in the default.json. This has been done for consistency between all API services going forward and unifies the config for both inbound and outbound Protocol API validation/transformation features.
225
+
226
+ ### Bug Fixes
227
+
228
+ * **mojaloop/#2534:** fspiop api version negotiation not handled by account lookup service ([#430](https://github.com/mojaloop/account-lookup-service/issues/430)) ([f1cf4a3](https://github.com/mojaloop/account-lookup-service/commit/f1cf4a3f2001d6c814ec5832aae9da83efce1ffa)), closes [mojaloop/#2534](https://github.com/mojaloop/project/issues/2534)
229
+
230
+ ## [11.8.0](https://github.com/mojaloop/account-lookup-service/compare/v11.7.7...v11.8.0) (2021-09-28)
231
+
232
+
233
+ ### Features
234
+
235
+ * **mojaloop/#2505:** als-subid-error-callback-endpoint-not-implemented ([#429](https://github.com/mojaloop/account-lookup-service/issues/429)) ([6051259](https://github.com/mojaloop/account-lookup-service/commit/605125925a5e181677fd357caf5605895b4b42a6)), closes [mojaloop/#2505](https://github.com/mojaloop/project/issues/2505)
236
+
237
+ ### [11.7.7](https://github.com/mojaloop/account-lookup-service/compare/v11.7.6...v11.7.7) (2021-09-10)
238
+
239
+
240
+ ### Bug Fixes
241
+
242
+ * **mojaloop/#2470:** central-services-shared streamingprotocol encode/decode functionality fix ([#428](https://github.com/mojaloop/account-lookup-service/issues/428)) ([2f5d26a](https://github.com/mojaloop/account-lookup-service/commit/2f5d26a094a329c20fa2b83d569a9e90f6474f89)), closes [mojaloop/#2470](https://github.com/mojaloop/project/issues/2470)
243
+
244
+ ### [11.7.6](https://github.com/mojaloop/account-lookup-service/compare/v11.7.5...v11.7.6) (2021-09-09)
245
+
246
+
247
+ ### Bug Fixes
248
+
249
+ * updated circleci config for slack env var typo fix ([#427](https://github.com/mojaloop/account-lookup-service/issues/427)) ([a9b03d2](https://github.com/mojaloop/account-lookup-service/commit/a9b03d2a02c04d4c7f2555b967d864c5fff49dfe))
250
+
251
+ ### [11.7.5](https://github.com/mojaloop/account-lookup-service/compare/v11.7.4...v11.7.5) (2021-09-09)
252
+
253
+
254
+ ### Chore
255
+
256
+ * expand unit tests for myanmar characters ([#426](https://github.com/mojaloop/account-lookup-service/issues/426)) ([d21176c](https://github.com/mojaloop/account-lookup-service/commit/d21176c452a2f17cdbcb0ef57706351fd2f98567)), closes [/github.com/mojaloop/project/issues/2358#issuecomment-916031483](https://github.com/mojaloop//github.com/mojaloop/project/issues/2358/issues/issuecomment-916031483)
257
+
258
+ ### [11.7.4](https://github.com/mojaloop/account-lookup-service/compare/v11.7.3...v11.7.4) (2021-08-17)
259
+
260
+
261
+ ### Bug Fixes
262
+
263
+ * **#2358-2:** firstname, middlename and lastname regex not supporting myanmar script unicode strings ([#425](https://github.com/mojaloop/account-lookup-service/issues/425)) ([7a61510](https://github.com/mojaloop/account-lookup-service/commit/7a61510be1a5fdcaf812d0ff059cedae112a4b79)), closes [#2358-2](https://github.com/mojaloop/account-lookup-service/issues/2358-2) [mojaloop/#2374](https://github.com/mojaloop/project/issues/2374)
264
+
265
+ ### [11.7.3](https://github.com/mojaloop/account-lookup-service/compare/v11.7.2...v11.7.3) (2021-08-16)
266
+
267
+
268
+ ### Bug Fixes
269
+
270
+ * **mojaloop/#2374:** ALS is sending out multiple requests to participants for both Oracle records that match non-subId and subId result set ([#424](https://github.com/mojaloop/account-lookup-service/issues/424)) ([3639ddc](https://github.com/mojaloop/account-lookup-service/commit/3639ddcc692abb0fbf835bfd879cf99bfa2556f3)), closes [mojaloop/#2374](https://github.com/mojaloop/project/issues/2374)
271
+
272
+ ### [11.7.2](https://github.com/mojaloop/account-lookup-service/compare/v11.7.0...v11.7.2) (2021-08-11)
273
+
274
+
275
+ ### Bug Fixes
276
+
277
+ * **#2358:** firstname, middlename and lastname regex not supporting myanmar script unicode strings ([#423](https://github.com/mojaloop/account-lookup-service/issues/423)) ([049ce8a](https://github.com/mojaloop/account-lookup-service/commit/049ce8ab296d9eb44825c9cd0f7e7b3bd69d279c)), closes [#2358](https://github.com/mojaloop/account-lookup-service/issues/2358) [#2358](https://github.com/mojaloop/account-lookup-service/issues/2358)
278
+
279
+ ## [11.7.0](https://github.com/mojaloop/account-lookup-service/compare/v11.5.6...v11.7.0) (2021-07-22)
280
+
281
+
282
+ ### Features
283
+
284
+ * da issue 79 ([#417](https://github.com/mojaloop/account-lookup-service/issues/417)) ([409bd68](https://github.com/mojaloop/account-lookup-service/commit/409bd68176728f560e6216ac9ff1dbf99d0db6cc))
285
+
286
+ ### [11.5.6](https://github.com/mojaloop/account-lookup-service/compare/v11.5.5...v11.5.6) (2021-07-14)
287
+
288
+
289
+ ### Documentation
290
+
291
+ * add overview of automated releases in readme ([#403](https://github.com/mojaloop/account-lookup-service/issues/403)) ([216b024](https://github.com/mojaloop/account-lookup-service/commit/216b0241cb8afe7b6eddc84f612127039445591a))
292
+
293
+ ### [11.5.5](https://github.com/mojaloop/account-lookup-service/compare/v11.5.4...v11.5.5) (2021-07-14)
294
+
295
+ ### [11.5.4](https://github.com/mojaloop/account-lookup-service/compare/v11.5.3...v11.5.4) (2021-07-14)
296
+
297
+
298
+ ### Refactors
299
+
300
+ * change behaviour and validation of oracle CRUD ([#418](https://github.com/mojaloop/account-lookup-service/issues/418)) ([ef1e181](https://github.com/mojaloop/account-lookup-service/commit/ef1e1813d35bcff158e82a713a2e04ecd5e1baa5))
301
+
302
+ ### [11.5.3](https://github.com/mojaloop/account-lookup-service/compare/v11.5.1...v11.5.3) (2021-06-11)
303
+
304
+
305
+ ### Bug Fixes
306
+
307
+ * **mojaloop/project#2246:** updated dependency version ([#415](https://github.com/mojaloop/account-lookup-service/issues/415)) ([2c63093](https://github.com/mojaloop/account-lookup-service/commit/2c6309321c46744b8ae85d123cd5c65bca9bf70c)), closes [mojaloop/project#2246](https://github.com/mojaloop/project/issues/2246)
308
+
309
+ ### [11.5.1](https://github.com/mojaloop/account-lookup-service/compare/v11.5.0...v11.5.1) (2021-06-02)
310
+
311
+
312
+ ### Chore
313
+
314
+ * **2151:** helm-release-v12.1.0 ([#411](https://github.com/mojaloop/account-lookup-service/issues/411)) ([fb83b4e](https://github.com/mojaloop/account-lookup-service/commit/fb83b4e1d2bc9de63b58ec3a6f544c871ff13c63))
315
+
316
+ ## [11.5.0](https://github.com/mojaloop/account-lookup-service/compare/v11.3.2...v11.5.0) (2021-06-01)
317
+
318
+
319
+ ### Features
320
+
321
+ * **2151:** helm-release-v12.1.0 ([#408](https://github.com/mojaloop/account-lookup-service/issues/408)) ([f5b3270](https://github.com/mojaloop/account-lookup-service/commit/f5b32700ed981e1a2ad3e6ce25d365dafc0889b8))
322
+
323
+ ### [11.3.2](https://github.com/mojaloop/account-lookup-service/compare/v11.3.1...v11.3.2) (2021-02-24)
324
+
325
+
326
+ ### Chore
327
+
328
+ * fix hidden commit types not being included in changelog ([#402](https://github.com/mojaloop/account-lookup-service/issues/402)) ([81e626d](https://github.com/mojaloop/account-lookup-service/commit/81e626d8493a7f8b5a5687b7ffaea3ae34b8ef38))
329
+
330
+ ### [11.3.1](https://github.com/mojaloop/account-lookup-service/compare/v11.3.0...v11.3.1) (2021-02-24)
package/CODEOWNERS ADDED
@@ -0,0 +1,38 @@
1
+ # This is a comment.
2
+ # Each line is a file pattern followed by one or more owners.
3
+
4
+ ## These owners will be the default owners for everything in
5
+ ## the repo. Unless a later match takes precedence,
6
+ ## @global-owner1 and @global-owner2 will be requested for
7
+ ## review when someone opens a pull request.
8
+ #* @global-owner1 @global-owner2
9
+ * @mdebarros @elnyry-sam-k @vijayg10 @kleyow @geka-evk @bushjames @oderayi
10
+
11
+ ## Order is important; the last matching pattern takes the most
12
+ ## precedence. When someone opens a pull request that only
13
+ ## modifies JS files, only @js-owner and not the global
14
+ ## owner(s) will be requested for a review.
15
+ # *.js @js-owner
16
+
17
+ ## You can also use email addresses if you prefer. They'll be
18
+ ## used to look up users just like we do for commit author
19
+ ## emails.
20
+ #*.go docs@example.com
21
+
22
+ # In this example, @doctocat owns any files in the build/logs
23
+ # directory at the root of the repository and any of its
24
+ # subdirectories.
25
+ # /build/logs/ @doctocat
26
+
27
+ ## The `docs/*` pattern will match files like
28
+ ## `docs/getting-started.md` but not further nested files like
29
+ ## `docs/build-app/troubleshooting.md`.
30
+ # docs/* docs@example.com
31
+
32
+ ## In this example, @octocat owns any file in an apps directory
33
+ ## anywhere in your repository.
34
+ #apps/ @octocat
35
+
36
+ ## In this example, @doctocat owns any file in the `/docs`
37
+ ## directory in the root of your repository.
38
+ #/docs/ @doctocat
package/Dockerfile ADDED
@@ -0,0 +1,45 @@
1
+ # Arguments
2
+ ARG NODE_VERSION=lts-alpine
3
+
4
+ # NOTE: Ensure you set NODE_VERSION Build Argument as follows...
5
+ #
6
+ # export NODE_VERSION="$(cat .nvmrc)-alpine" \
7
+ # docker build \
8
+ # --build-arg NODE_VERSION=$NODE_VERSION \
9
+ # -t mojaloop/account-lookup-service:local \
10
+ # . \
11
+ #
12
+
13
+ # Build Image
14
+ FROM node:${NODE_VERSION} AS builder
15
+ WORKDIR /opt/app
16
+
17
+ RUN apk --no-cache add git
18
+ RUN apk add --no-cache -t build-dependencies make gcc g++ python3 py3-setuptools libtool openssl-dev autoconf automake bash \
19
+ && cd $(npm root -g)/npm
20
+
21
+ COPY package.json package-lock.json /opt/app/
22
+
23
+ RUN npm ci
24
+
25
+ COPY src /opt/app/src
26
+ COPY config /opt/app/config
27
+ COPY migrations /opt/app/migrations
28
+ COPY seeds /opt/app/seeds
29
+
30
+ FROM node:${NODE_VERSION}
31
+ WORKDIR /opt/app
32
+
33
+ # Create empty log file & link stdout to the application log file
34
+ RUN mkdir ./logs && touch ./logs/combined.log
35
+ RUN ln -sf /dev/stdout ./logs/combined.log
36
+
37
+ # Create a non-root user: ml-user
38
+ RUN adduser -D ml-user
39
+ USER ml-user
40
+
41
+ COPY --chown=ml-user --from=builder /opt/app .
42
+ RUN npm prune --production
43
+
44
+ EXPOSE 3001
45
+ CMD ["npm", "run", "start"]
package/LICENSE.md ADDED
@@ -0,0 +1,10 @@
1
+ # LICENSE
2
+
3
+ Copyright © 2020-2024 Mojaloop Foundation
4
+
5
+ The Mojaloop files are made available by the Mojaloop Foundation under the Apache License, Version 2.0
6
+ (the "License") and you may not use these files except in compliance with the [License](http://www.apache.org/licenses/LICENSE-2.0).
7
+
8
+ You may obtain a copy of the License at [http://www.apache.org/licenses/LICENSE-2.0](http://www.apache.org/licenses/LICENSE-2.0)
9
+
10
+ Unless required by applicable law or agreed to in writing, the Mojaloop files are distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the [License](http://www.apache.org/licenses/LICENSE-2.0).