@cef-ebsi/cli 0.0.0-alpha.0

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 (159) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +32 -0
  3. package/bin/cli.js +13 -0
  4. package/dist/abi/pilot/DidRegistry-old.json +2192 -0
  5. package/dist/abi/pilot/DidRegistry.json +1081 -0
  6. package/dist/abi/pilot/DidRegistryV3.json +1081 -0
  7. package/dist/abi/pilot/SchemaSCRegistry.json +972 -0
  8. package/dist/abi/pilot/SchemaSCRegistryV2.json +473 -0
  9. package/dist/abi/pilot/Tar.json +1394 -0
  10. package/dist/abi/pilot/TarV3.json +1107 -0
  11. package/dist/abi/pilot/Timestamp.json +1091 -0
  12. package/dist/abi/pilot/TimestampV2.json +1127 -0
  13. package/dist/abi/pilot/Tir.json +896 -0
  14. package/dist/abi/pilot/TirV3.json +495 -0
  15. package/dist/abi/pilot/Tpr.json +1267 -0
  16. package/dist/abi/pilot/TprV2.json +888 -0
  17. package/dist/abi/test/DidRegistry-old.json +2192 -0
  18. package/dist/abi/test/DidRegistry.json +1081 -0
  19. package/dist/abi/test/DidRegistryV3.json +1088 -0
  20. package/dist/abi/test/SchemaSCRegistry.json +972 -0
  21. package/dist/abi/test/SchemaSCRegistryV2.json +473 -0
  22. package/dist/abi/test/Tar.json +1394 -0
  23. package/dist/abi/test/TarV3.json +1107 -0
  24. package/dist/abi/test/Timestamp.json +1091 -0
  25. package/dist/abi/test/TimestampV2.json +1127 -0
  26. package/dist/abi/test/Tir.json +896 -0
  27. package/dist/abi/test/TirV3.json +495 -0
  28. package/dist/abi/test/Tpr.json +1267 -0
  29. package/dist/abi/test/TprV2.json +888 -0
  30. package/dist/app.js +1205 -0
  31. package/dist/app.js.map +1 -0
  32. package/dist/buildParam/did.js +355 -0
  33. package/dist/buildParam/did.js.map +1 -0
  34. package/dist/buildParam/didOld.js +275 -0
  35. package/dist/buildParam/didOld.js.map +1 -0
  36. package/dist/buildParam/didV3.js +353 -0
  37. package/dist/buildParam/didV3.js.map +1 -0
  38. package/dist/buildParam/index.js +54 -0
  39. package/dist/buildParam/index.js.map +1 -0
  40. package/dist/buildParam/tar.js +240 -0
  41. package/dist/buildParam/tar.js.map +1 -0
  42. package/dist/buildParam/tarV3.js +193 -0
  43. package/dist/buildParam/tarV3.js.map +1 -0
  44. package/dist/buildParam/timestamp.js +323 -0
  45. package/dist/buildParam/timestamp.js.map +1 -0
  46. package/dist/buildParam/timestampV2.js +317 -0
  47. package/dist/buildParam/timestampV2.js.map +1 -0
  48. package/dist/buildParam/tir.js +200 -0
  49. package/dist/buildParam/tir.js.map +1 -0
  50. package/dist/buildParam/tirV3.js +104 -0
  51. package/dist/buildParam/tirV3.js.map +1 -0
  52. package/dist/buildParam/tpr.js +167 -0
  53. package/dist/buildParam/tpr.js.map +1 -0
  54. package/dist/buildParam/tprV2.js +82 -0
  55. package/dist/buildParam/tprV2.js.map +1 -0
  56. package/dist/buildParam/tsr.js +149 -0
  57. package/dist/buildParam/tsr.js.map +1 -0
  58. package/dist/buildParam/tsrV2.js +110 -0
  59. package/dist/buildParam/tsrV2.js.map +1 -0
  60. package/dist/cli.js +10 -0
  61. package/dist/cli.js.map +1 -0
  62. package/dist/commands/authorisation-v3.js +98 -0
  63. package/dist/commands/authorisation-v3.js.map +1 -0
  64. package/dist/commands/authorisation-v4.js +221 -0
  65. package/dist/commands/authorisation-v4.js.map +1 -0
  66. package/dist/commands/compute.js +374 -0
  67. package/dist/commands/compute.js.map +1 -0
  68. package/dist/commands/conformance-v3.js +745 -0
  69. package/dist/commands/conformance-v3.js.map +1 -0
  70. package/dist/commands/conformance-v4.js +767 -0
  71. package/dist/commands/conformance-v4.js.map +1 -0
  72. package/dist/commands/index.js +9 -0
  73. package/dist/commands/index.js.map +1 -0
  74. package/dist/commands/ledger-v3.js +189 -0
  75. package/dist/commands/ledger-v3.js.map +1 -0
  76. package/dist/commands/ledger-v4.js +188 -0
  77. package/dist/commands/ledger-v4.js.map +1 -0
  78. package/dist/commands/view.js +62 -0
  79. package/dist/commands/view.js.map +1 -0
  80. package/dist/config.js +910 -0
  81. package/dist/config.js.map +1 -0
  82. package/dist/index.js +7 -0
  83. package/dist/index.js.map +1 -0
  84. package/dist/interfaces/authorisation/authorisation.interface.js +2 -0
  85. package/dist/interfaces/authorisation/authorisation.interface.js.map +1 -0
  86. package/dist/interfaces/authorisation/index.js +2 -0
  87. package/dist/interfaces/authorisation/index.js.map +1 -0
  88. package/dist/interfaces/context.js +2 -0
  89. package/dist/interfaces/context.js.map +1 -0
  90. package/dist/interfaces/index.js +10 -0
  91. package/dist/interfaces/index.js.map +1 -0
  92. package/dist/interfaces/ledger/besu.interface.js +2 -0
  93. package/dist/interfaces/ledger/besu.interface.js.map +1 -0
  94. package/dist/interfaces/ledger/index.js +2 -0
  95. package/dist/interfaces/ledger/index.js.map +1 -0
  96. package/dist/interfaces/notifications/index.js +2 -0
  97. package/dist/interfaces/notifications/index.js.map +1 -0
  98. package/dist/interfaces/notifications/notifications.interface.js +2 -0
  99. package/dist/interfaces/notifications/notifications.interface.js.map +1 -0
  100. package/dist/interfaces/proxy-data-hub/attributes.interface.js +2 -0
  101. package/dist/interfaces/proxy-data-hub/attributes.interface.js.map +1 -0
  102. package/dist/interfaces/proxy-data-hub/index.js +2 -0
  103. package/dist/interfaces/proxy-data-hub/index.js.map +1 -0
  104. package/dist/interfaces/shared/index.js +5 -0
  105. package/dist/interfaces/shared/index.js.map +1 -0
  106. package/dist/interfaces/shared/jsonrpc.interface.js +2 -0
  107. package/dist/interfaces/shared/jsonrpc.interface.js.map +1 -0
  108. package/dist/interfaces/shared/paginated-list.interface.js +2 -0
  109. package/dist/interfaces/shared/paginated-list.interface.js.map +1 -0
  110. package/dist/interfaces/shared/unsigned-transaction.interface.js +2 -0
  111. package/dist/interfaces/shared/unsigned-transaction.interface.js.map +1 -0
  112. package/dist/interfaces/shared/utils.interface.js +2 -0
  113. package/dist/interfaces/shared/utils.interface.js.map +1 -0
  114. package/dist/interfaces/timestamp/hash-algorithms.interface.js +2 -0
  115. package/dist/interfaces/timestamp/hash-algorithms.interface.js.map +1 -0
  116. package/dist/interfaces/timestamp/index.js +4 -0
  117. package/dist/interfaces/timestamp/index.js.map +1 -0
  118. package/dist/interfaces/timestamp/records.interface.js +2 -0
  119. package/dist/interfaces/timestamp/records.interface.js.map +1 -0
  120. package/dist/interfaces/timestamp/timestamps.interface.js +2 -0
  121. package/dist/interfaces/timestamp/timestamps.interface.js.map +1 -0
  122. package/dist/interfaces/trusted-apps-registry/apps.interface.js +2 -0
  123. package/dist/interfaces/trusted-apps-registry/apps.interface.js.map +1 -0
  124. package/dist/interfaces/trusted-apps-registry/index.js +3 -0
  125. package/dist/interfaces/trusted-apps-registry/index.js.map +1 -0
  126. package/dist/interfaces/trusted-apps-registry/policies.interface.js +2 -0
  127. package/dist/interfaces/trusted-apps-registry/policies.interface.js.map +1 -0
  128. package/dist/interfaces/trusted-issuers-registry/index.js +2 -0
  129. package/dist/interfaces/trusted-issuers-registry/index.js.map +1 -0
  130. package/dist/interfaces/trusted-issuers-registry/issuers.interface.js +2 -0
  131. package/dist/interfaces/trusted-issuers-registry/issuers.interface.js.map +1 -0
  132. package/dist/interfaces/users-onboarding/authentication.js +2 -0
  133. package/dist/interfaces/users-onboarding/authentication.js.map +1 -0
  134. package/dist/interfaces/users-onboarding/index.js +2 -0
  135. package/dist/interfaces/users-onboarding/index.js.map +1 -0
  136. package/dist/programs/appRegistration.js +65 -0
  137. package/dist/programs/appRegistration.js.map +1 -0
  138. package/dist/tsconfig.tsbuildinfo +1 -0
  139. package/dist/utils/Client.js +176 -0
  140. package/dist/utils/Client.js.map +1 -0
  141. package/dist/utils/authorisation.js +118 -0
  142. package/dist/utils/authorisation.js.map +1 -0
  143. package/dist/utils/http.js +128 -0
  144. package/dist/utils/http.js.map +1 -0
  145. package/dist/utils/index.js +10 -0
  146. package/dist/utils/index.js.map +1 -0
  147. package/dist/utils/jsonrpc.js +33 -0
  148. package/dist/utils/jsonrpc.js.map +1 -0
  149. package/dist/utils/notification.js +51 -0
  150. package/dist/utils/notification.js.map +1 -0
  151. package/dist/utils/print.js +57 -0
  152. package/dist/utils/print.js.map +1 -0
  153. package/dist/utils/storage.js +97 -0
  154. package/dist/utils/storage.js.map +1 -0
  155. package/dist/utils/utils.js +161 -0
  156. package/dist/utils/utils.js.map +1 -0
  157. package/dist/utils/verifiablePresentation.js +43 -0
  158. package/dist/utils/verifiablePresentation.js.map +1 -0
  159. package/package.json +113 -0
package/dist/config.js ADDED
@@ -0,0 +1,910 @@
1
+ import { ethers } from "ethers";
2
+ import { auth, Client, types } from "cassandra-driver";
3
+ import * as dotenv from "dotenv";
4
+ // ABIs Test
5
+ import abiTimestampTest from "./abi/test/Timestamp.json" assert { type: "json" };
6
+ import abiTimestampNewTest from "./abi/test/TimestampV2.json" assert { type: "json" };
7
+ import abiDidTest from "./abi/test/DidRegistry.json" assert { type: "json" };
8
+ import abiDidOldTest from "./abi/test/DidRegistry-old.json" assert { type: "json" };
9
+ import abiDidNewTest from "./abi/test/DidRegistryV3.json" assert { type: "json" };
10
+ import abiTarTest from "./abi/test/Tar.json" assert { type: "json" };
11
+ import abiTarNewTest from "./abi/test/TarV3.json" assert { type: "json" };
12
+ import abiTirTest from "./abi/test/Tir.json" assert { type: "json" };
13
+ import abiTirNewTest from "./abi/test/TirV3.json" assert { type: "json" };
14
+ import abiTsrTest from "./abi/test/SchemaSCRegistry.json" assert { type: "json" };
15
+ import abiTsrNewTest from "./abi/test/SchemaSCRegistryV2.json" assert { type: "json" };
16
+ import abiTprTest from "./abi/test/Tpr.json" assert { type: "json" };
17
+ import abiTprNewTest from "./abi/test/TprV2.json" assert { type: "json" };
18
+ // ABIs Pilot
19
+ import abiTimestampPilot from "./abi/pilot/Timestamp.json" assert { type: "json" };
20
+ import abiTimestampNewPilot from "./abi/pilot/TimestampV2.json" assert { type: "json" };
21
+ import abiDidPilot from "./abi/pilot/DidRegistry.json" assert { type: "json" };
22
+ import abiDidOldPilot from "./abi/pilot/DidRegistry-old.json" assert { type: "json" };
23
+ import abiDidNewPilot from "./abi/pilot/DidRegistryV3.json" assert { type: "json" };
24
+ import abiTarPilot from "./abi/pilot/Tar.json" assert { type: "json" };
25
+ import abiTarNewPilot from "./abi/pilot/TarV3.json" assert { type: "json" };
26
+ import abiTirPilot from "./abi/pilot/Tir.json" assert { type: "json" };
27
+ import abiTirNewPilot from "./abi/pilot/TirV3.json" assert { type: "json" };
28
+ import abiTsrPilot from "./abi/pilot/SchemaSCRegistry.json" assert { type: "json" };
29
+ import abiTsrNewPilot from "./abi/pilot/SchemaSCRegistryV2.json" assert { type: "json" };
30
+ import abiTprPilot from "./abi/pilot/Tpr.json" assert { type: "json" };
31
+ import abiTprNewPilot from "./abi/pilot/TprV2.json" assert { type: "json" };
32
+ dotenv.config();
33
+ const configOpts = {
34
+ test: {
35
+ domain: "https://api-test.ebsi.eu",
36
+ casUrl: "https://ecas.acceptance.ec.europa.eu/cas",
37
+ besuProvider: process.env.TEST_BESU_PROVIDER,
38
+ keyspace: "ebsi_test",
39
+ contractAddresses: {
40
+ timestamp: "0xCA40574d5aD8dBa0370A5E34eE830e4714a0Fa09",
41
+ timestampNew: "0xCb9e9F0229f1492A22801B176196eCb158eb24B0",
42
+ didOld: "0x15582f47140ff4bd74843583a1e3111032fb91c8",
43
+ did: "0x823BBc0ceE3dE3B61AcfA0CEedb951AB9a013F05",
44
+ didNew: "0x26E603f6FdCfC007c7bdC5be5f2c91D2a64a32E7",
45
+ tar: "0x4d06B562588cb61616959806726c5D9f060b0F21",
46
+ tarNew: "0x82Fd4865F702E2b319f3B2f1E4FDE5836883aC5D",
47
+ tir: "0xFdfbCE7F3c12A902B79e0ceB0DB2662331bBA1aF",
48
+ tirNew: "0xC2113689d64b794Dc311A38bFA1f7A1D5E4B6Cb9",
49
+ tsr: "0x8E7E1387a72f9746B943187F6946E0e38b19FbFB",
50
+ tsrNew: "0x3B3B6Faa80f88aD7Da4ff1451aE716Bf6f741700",
51
+ tpr: "0x17a340418937A38b3Cb62FdA42241eB0722868A6",
52
+ tprNew: "0x3d5edA0b5183e245bA9713B58834525EDfE46E90",
53
+ },
54
+ abi: {
55
+ timestamp: abiTimestampTest,
56
+ timestampNew: abiTimestampNewTest,
57
+ did: abiDidTest,
58
+ didOld: abiDidOldTest,
59
+ didNew: abiDidNewTest,
60
+ tar: abiTarTest,
61
+ tarNew: abiTarNewTest,
62
+ tir: abiTirTest,
63
+ tirNew: abiTirNewTest,
64
+ tsr: abiTsrTest,
65
+ tsrNew: abiTsrNewTest,
66
+ tpr: abiTprTest,
67
+ tprNew: abiTprNewTest,
68
+ },
69
+ // variables for testing
70
+ authorisationApiId: "0xf0c34a721e1bb7606de33a6e44ab30698e8076d7bb5c0b11d108aa52a5de0337",
71
+ authorisationApiDid: "did:ebsi:zcPNLbvojYtj7R3B6pJXaFy",
72
+ onboardingApiDid: "did:ebsi:zwC56DZdiJh8kSxbgg4fMCu",
73
+ onboardingApiKid: "did:ebsi:zwC56DZdiJh8kSxbgg4fMCu#keys-1",
74
+ onboardingApiPrivateKey: process.env.TEST_ONBOARDING_API_PRIVATE_KEY,
75
+ conformanceApiV2Did: "did:ebsi:zicftVRNkkwfRourZd3nE5f",
76
+ conformanceApiV3Did: "did:ebsi:zy8jAhPDbhwKN74YFWAUzD5",
77
+ conformanceApiV4Did: "did:ebsi:ztTYEydcPQ2SrKoghHqxBfK",
78
+ programs: {
79
+ admin: {
80
+ did: process.env.TEST_PROGRAMS_ADMIN_DID,
81
+ keyId: process.env.TEST_PROGRAMS_ADMIN_KEY_ID,
82
+ privateKey: process.env.TEST_PROGRAMS_ADMIN_PRIVATE_KEY,
83
+ },
84
+ },
85
+ vitest: {
86
+ resourceApp: {
87
+ name: process.env.TEST_RESOURCE_APP_NAME,
88
+ id: process.env.TEST_RESOURCE_APP_ID,
89
+ kid: `https://api-test.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.TEST_RESOURCE_APP_NAME}`,
90
+ },
91
+ requesterApp: {
92
+ name: process.env.TEST_REQUESTER_APP_NAME,
93
+ id: process.env.TEST_REQUESTER_APP_ID,
94
+ kid: `https://api-test.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.TEST_REQUESTER_APP_NAME}`,
95
+ privateKey: process.env.TEST_REQUESTER_APP_PRIVATE_KEY,
96
+ },
97
+ tprOperator: {
98
+ did: process.env.TEST_TPR_OPERATOR_DID,
99
+ keyId: process.env.TEST_TPR_OPERATOR_KEY_ID,
100
+ privateKey: process.env.TEST_TPR_OPERATOR_PRIVATE_KEY,
101
+ },
102
+ admin: {
103
+ did: process.env.TEST_ADMIN_DID,
104
+ keyId: process.env.TEST_ADMIN_KEY_ID,
105
+ privateKey: process.env.TEST_ADMIN_PRIVATE_KEY,
106
+ accreditation: process.env.TEST_ADMIN_ACCREDITATION,
107
+ },
108
+ issuer1: {
109
+ did: process.env.TEST_ISSUER_1_DID,
110
+ keyId: process.env.TEST_ISSUER_1_ES256K_KEY_ID,
111
+ accreditation: process.env.TEST_ISSUER_1_ACCREDITATION,
112
+ privateKey: process.env.TEST_ISSUER_1_PRIVATE_KEY,
113
+ jwks: {
114
+ ES256: {
115
+ privateKeyBase64: process.env.TEST_ISSUER_1_PRIVATE_KEY_JWK_ES256_BASE64,
116
+ keyId: process.env.TEST_ISSUER_1_ES256_KEY_ID,
117
+ },
118
+ RS256: {
119
+ privateKeyBase64: process.env.TEST_ISSUER_1_PRIVATE_KEY_JWK_RS256_BASE64,
120
+ keyId: process.env.TEST_ISSUER_1_RS256_KEY_ID,
121
+ },
122
+ EdDSA: {
123
+ privateKeyBase64: process.env.TEST_ISSUER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
124
+ keyId: process.env.TEST_ISSUER_1_EDDSA_KEY_ID,
125
+ },
126
+ },
127
+ },
128
+ issuer2: {
129
+ did: process.env.TEST_ISSUER_2_DID,
130
+ keyId: process.env.TEST_ISSUER_2_KEY_ID,
131
+ accreditation: process.env.TEST_ISSUER_2_ACCREDITATION,
132
+ privateKey: process.env.TEST_ISSUER_2_PRIVATE_KEY,
133
+ },
134
+ user1: {
135
+ did: process.env.TEST_USER_1_DID,
136
+ keyId: process.env.TEST_USER_1_ES256K_KEY_ID,
137
+ privateKey: process.env.TEST_USER_1_PRIVATE_KEY,
138
+ jwks: {
139
+ ES256: {
140
+ privateKeyBase64: process.env.TEST_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
141
+ keyId: process.env.TEST_USER_1_ES256_KEY_ID,
142
+ },
143
+ RS256: {
144
+ privateKeyBase64: process.env.TEST_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
145
+ keyId: process.env.TEST_USER_1_RS256_KEY_ID,
146
+ },
147
+ EdDSA: {
148
+ privateKeyBase64: process.env.TEST_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
149
+ keyId: process.env.TEST_USER_1_EDDSA_KEY_ID,
150
+ },
151
+ },
152
+ },
153
+ user2: {
154
+ did: process.env.TEST_USER_2_DID,
155
+ keyId: process.env.TEST_USER_2_KEY_ID,
156
+ privateKey: process.env.TEST_USER_2_PRIVATE_KEY,
157
+ },
158
+ user3: {
159
+ did: process.env.TEST_USER_3_DID,
160
+ keyId: process.env.TEST_USER_3_KEY_ID,
161
+ privateKey: process.env.TEST_USER_3_PRIVATE_KEY,
162
+ },
163
+ np: {
164
+ ES256K: {
165
+ did: process.env.TEST_NP_ES256K_DID,
166
+ privateKeyBase64: process.env.TEST_NP_PRIVATE_KEY_JWK_ES256K_BASE64,
167
+ vcJwt: process.env.TEST_NP_ES256K_VC,
168
+ },
169
+ ES256: {
170
+ did: process.env.TEST_NP_ES256_DID,
171
+ privateKeyBase64: process.env.TEST_NP_PRIVATE_KEY_JWK_ES256_BASE64,
172
+ vcJwt: process.env.TEST_NP_ES256_VC,
173
+ },
174
+ RS256: {
175
+ did: process.env.TEST_NP_RS256_DID,
176
+ privateKeyBase64: process.env.TEST_NP_PRIVATE_KEY_JWK_RS256_BASE64,
177
+ vcJwt: process.env.TEST_NP_RS256_VC,
178
+ },
179
+ EdDSA: {
180
+ did: process.env.TEST_NP_EDDSA_DID,
181
+ privateKeyBase64: process.env.TEST_NP_PRIVATE_KEY_JWK_EDDSA_BASE64,
182
+ vcJwt: process.env.TEST_NP_EDDSA_VC,
183
+ },
184
+ },
185
+ },
186
+ vitestNew: {
187
+ resourceApp: {
188
+ name: process.env.TEST_NEW_RESOURCE_APP_NAME,
189
+ id: process.env.TEST_NEW_RESOURCE_APP_ID,
190
+ kid: `https://api-test.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.TEST_NEW_RESOURCE_APP_NAME}`,
191
+ },
192
+ requesterApp: {
193
+ name: process.env.TEST_NEW_REQUESTER_APP_NAME,
194
+ id: process.env.TEST_NEW_REQUESTER_APP_ID,
195
+ kid: `https://api-test.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.TEST_NEW_REQUESTER_APP_NAME}`,
196
+ privateKey: process.env.TEST_NEW_REQUESTER_APP_PRIVATE_KEY,
197
+ },
198
+ tprOperator: {
199
+ did: process.env.TEST_NEW_TPR_OPERATOR_DID,
200
+ keyId: process.env.TEST_NEW_TPR_OPERATOR_KEY_ID,
201
+ privateKey: process.env.TEST_NEW_TPR_OPERATOR_PRIVATE_KEY,
202
+ },
203
+ admin: {
204
+ did: process.env.TEST_NEW_ADMIN_DID,
205
+ keyId: process.env.TEST_NEW_ADMIN_KEY_ID,
206
+ privateKey: process.env.TEST_NEW_ADMIN_PRIVATE_KEY,
207
+ accreditation: process.env.TEST_NEW_ADMIN_ACCREDITATION,
208
+ },
209
+ issuer1: {
210
+ did: process.env.TEST_NEW_ISSUER_1_DID,
211
+ keyId: process.env.TEST_NEW_ISSUER_1_ES256K_KEY_ID,
212
+ accreditation: process.env.TEST_NEW_ISSUER_1_ACCREDITATION,
213
+ privateKey: process.env.TEST_NEW_ISSUER_1_PRIVATE_KEY,
214
+ jwks: {
215
+ ES256: {
216
+ privateKeyBase64: process.env.TEST_NEW_ISSUER_1_PRIVATE_KEY_JWK_ES256_BASE64,
217
+ keyId: process.env.TEST_NEW_ISSUER_1_ES256_KEY_ID,
218
+ },
219
+ RS256: {
220
+ privateKeyBase64: process.env.TEST_NEW_ISSUER_1_PRIVATE_KEY_JWK_RS256_BASE64,
221
+ keyId: process.env.TEST_NEW_ISSUER_1_RS256_KEY_ID,
222
+ },
223
+ EdDSA: {
224
+ privateKeyBase64: process.env.TEST_NEW_ISSUER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
225
+ keyId: process.env.TEST_NEW_ISSUER_1_EDDSA_KEY_ID,
226
+ },
227
+ },
228
+ },
229
+ issuer2: {
230
+ did: process.env.TEST_NEW_ISSUER_2_DID,
231
+ keyId: process.env.TEST_NEW_ISSUER_2_KEY_ID,
232
+ accreditation: process.env.TEST_NEW_ISSUER_2_ACCREDITATION,
233
+ privateKey: process.env.TEST_NEW_ISSUER_2_PRIVATE_KEY,
234
+ },
235
+ user1: {
236
+ did: process.env.TEST_NEW_USER_1_DID,
237
+ keyId: process.env.TEST_NEW_USER_1_ES256K_KEY_ID,
238
+ privateKey: process.env.TEST_NEW_USER_1_PRIVATE_KEY,
239
+ jwks: {
240
+ ES256: {
241
+ privateKeyBase64: process.env.TEST_NEW_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
242
+ keyId: process.env.TEST_NEW_USER_1_ES256_KEY_ID,
243
+ },
244
+ RS256: {
245
+ privateKeyBase64: process.env.TEST_NEW_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
246
+ keyId: process.env.TEST_NEW_USER_1_RS256_KEY_ID,
247
+ },
248
+ EdDSA: {
249
+ privateKeyBase64: process.env.TEST_NEW_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
250
+ keyId: process.env.TEST_NEW_USER_1_EDDSA_KEY_ID,
251
+ },
252
+ },
253
+ },
254
+ user2: {
255
+ did: process.env.TEST_NEW_USER_2_DID,
256
+ keyId: process.env.TEST_NEW_USER_2_KEY_ID,
257
+ privateKey: process.env.TEST_NEW_USER_2_PRIVATE_KEY,
258
+ },
259
+ user3: {
260
+ did: process.env.TEST_NEW_USER_3_DID,
261
+ keyId: process.env.TEST_NEW_USER_3_KEY_ID,
262
+ privateKey: process.env.TEST_NEW_USER_3_PRIVATE_KEY,
263
+ },
264
+ np: {},
265
+ },
266
+ },
267
+ pilot: {
268
+ domain: "https://api-pilot.ebsi.eu",
269
+ casUrl: "https://ecas.ec.europa.eu/cas",
270
+ besuProvider: process.env.PILOT_BESU_PROVIDER,
271
+ keyspace: "ebsi_pilot",
272
+ contractAddresses: {
273
+ timestamp: "0xaD00Eb7A224cBB0f3fCeC68595a4F4FF87e7eB2F",
274
+ timestampNew: "0x8b7ddD28FdE20080A337Bff5badCa043163Bc3a3",
275
+ didOld: "0xD55bDf1407E57D55C92BdB67088ECdA554b76B45",
276
+ did: "0x755DEd5d5e81282F0BE85EDaE8e6852814bAC3fa",
277
+ didNew: "0x76C8190D7422e5fa2A0190Bc2313bab0b2afEC78",
278
+ tar: "0x3Ba8dE431d3741A6077A20656aCC01027FF920e3",
279
+ tarNew: "0x35fE6e9be02Bc93381117e6c424B5688894B0639",
280
+ tir: "0xB1D9B0EC0B52aD095bab2A5320a808aCb7c9F186",
281
+ tirNew: "0x5C87455c82617579A10AD39C2DB3e60E846E7266",
282
+ tsr: "0x30cC78D20E21C8422F3B62052FD4C15D4b7894A4",
283
+ tsrNew: "0xF3aFc480b171CB8c2D89c3753FF46104d7011B07",
284
+ tpr: "0x3591e30eaea83343ed69A077D059821c5099154A",
285
+ tprNew: "0x81872fccf3AEDD94C00E643bC2967Bd7aC91CFEB",
286
+ },
287
+ abi: {
288
+ timestamp: abiTimestampPilot,
289
+ timestampNew: abiTimestampNewPilot,
290
+ did: abiDidPilot,
291
+ didOld: abiDidOldPilot,
292
+ didNew: abiDidNewPilot,
293
+ tar: abiTarPilot,
294
+ tarNew: abiTarNewPilot,
295
+ tir: abiTirPilot,
296
+ tirNew: abiTirNewPilot,
297
+ tsr: abiTsrPilot,
298
+ tsrNew: abiTsrNewPilot,
299
+ tpr: abiTprPilot,
300
+ tprNew: abiTprNewPilot,
301
+ },
302
+ // variables for testing
303
+ authorisationApiId: "0x559c4f32dc35566e4b92b697499c38f3847a6c53f8344821c24354ead1f2ab1e",
304
+ authorisationApiDid: "did:ebsi:znHeZWvhAK2FK2Dk1jXNe7m",
305
+ onboardingApiDid: "did:ebsi:zr2rWDHHrUCdZAW7wsSb5nQ",
306
+ onboardingApiKid: "did:ebsi:zr2rWDHHrUCdZAW7wsSb5nQ#keys-1",
307
+ onboardingApiPrivateKey: process.env.PILOT_ONBOARDING_API_PRIVATE_KEY,
308
+ conformanceApiV2Did: "",
309
+ conformanceApiV3Did: "",
310
+ conformanceApiV4Did: "",
311
+ programs: {
312
+ admin: {
313
+ did: process.env.PILOT_PROGRAMS_ADMIN_DID,
314
+ keyId: process.env.PILOT_PROGRAMS_ADMIN_KEY_ID,
315
+ privateKey: process.env.PILOT_PROGRAMS_ADMIN_PRIVATE_KEY,
316
+ },
317
+ },
318
+ vitest: {
319
+ resourceApp: {
320
+ name: process.env.PILOT_RESOURCE_APP_NAME,
321
+ id: process.env.PILOT_RESOURCE_APP_ID,
322
+ kid: `https://api-pilot.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.PILOT_RESOURCE_APP_NAME}`,
323
+ },
324
+ requesterApp: {
325
+ name: process.env.PILOT_REQUESTER_APP_NAME,
326
+ id: process.env.PILOT_REQUESTER_APP_ID,
327
+ kid: `https://api-pilot.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.PILOT_REQUESTER_APP_NAME}`,
328
+ privateKey: process.env.PILOT_REQUESTER_APP_PRIVATE_KEY,
329
+ },
330
+ tprOperator: {
331
+ did: "",
332
+ keyId: "",
333
+ privateKey: "",
334
+ },
335
+ admin: {
336
+ did: process.env.PILOT_ADMIN_DID,
337
+ keyId: "",
338
+ privateKey: "",
339
+ accreditation: "",
340
+ },
341
+ issuer1: {
342
+ did: process.env.PILOT_ISSUER_1_DID,
343
+ keyId: "",
344
+ accreditation: "",
345
+ privateKey: "",
346
+ },
347
+ issuer2: {
348
+ did: "",
349
+ keyId: "",
350
+ accreditation: "",
351
+ privateKey: "",
352
+ },
353
+ user1: {
354
+ did: process.env.PILOT_USER_1_DID,
355
+ keyId: process.env.PILOT_USER_1_ES256K_KEY_ID,
356
+ privateKey: process.env.PILOT_USER_1_PRIVATE_KEY,
357
+ jwks: {
358
+ ES256: {
359
+ privateKeyBase64: process.env.PILOT_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
360
+ keyId: process.env.PILOT_USER_1_ES256_KEY_ID,
361
+ },
362
+ RS256: {
363
+ privateKeyBase64: process.env.PILOT_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
364
+ keyId: process.env.PILOT_USER_1_RS256_KEY_ID,
365
+ },
366
+ EdDSA: {
367
+ privateKeyBase64: process.env.PILOT_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
368
+ keyId: process.env.PILOT_USER_1_EDDSA_KEY_ID,
369
+ },
370
+ },
371
+ },
372
+ user2: {
373
+ did: process.env.PILOT_USER_2_DID,
374
+ keyId: process.env.PILOT_USER_2_KEY_ID,
375
+ privateKey: process.env.PILOT_USER_2_PRIVATE_KEY,
376
+ },
377
+ user3: {
378
+ did: process.env.PILOT_USER_3_DID,
379
+ keyId: process.env.PILOT_USER_3_KEY_ID,
380
+ privateKey: process.env.PILOT_USER_3_PRIVATE_KEY,
381
+ },
382
+ np: {
383
+ ES256K: {
384
+ did: process.env.PILOT_NP_ES256K_DID,
385
+ privateKeyBase64: process.env.PILOT_NP_PRIVATE_KEY_JWK_ES256K_BASE64,
386
+ vcJwt: process.env.PILOT_NP_ES256K_VC,
387
+ },
388
+ ES256: {
389
+ did: process.env.PILOT_NP_ES256_DID,
390
+ privateKeyBase64: process.env.PILOT_NP_PRIVATE_KEY_JWK_ES256_BASE64,
391
+ vcJwt: process.env.PILOT_NP_ES256_VC,
392
+ },
393
+ RS256: {
394
+ did: process.env.PILOT_NP_RS256_DID,
395
+ privateKeyBase64: process.env.PILOT_NP_PRIVATE_KEY_JWK_RS256_BASE64,
396
+ vcJwt: process.env.PILOT_NP_RS256_VC,
397
+ },
398
+ EdDSA: {
399
+ did: process.env.PILOT_NP_EDDSA_DID,
400
+ privateKeyBase64: process.env.PILOT_NP_PRIVATE_KEY_JWK_EDDSA_BASE64,
401
+ vcJwt: process.env.PILOT_NP_EDDSA_VC,
402
+ },
403
+ },
404
+ },
405
+ vitestNew: {
406
+ resourceApp: {
407
+ name: process.env.PILOT_NEW_RESOURCE_APP_NAME,
408
+ id: process.env.PILOT_NEW_RESOURCE_APP_ID,
409
+ kid: `https://api-pilot.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.PILOT_NEW_RESOURCE_APP_NAME}`,
410
+ },
411
+ requesterApp: {
412
+ name: process.env.PILOT_NEW_REQUESTER_APP_NAME,
413
+ id: process.env.PILOT_NEW_REQUESTER_APP_ID,
414
+ kid: `https://api-pilot.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.PILOT_NEW_REQUESTER_APP_NAME}`,
415
+ privateKey: process.env.PILOT_NEW_REQUESTER_APP_PRIVATE_KEY,
416
+ },
417
+ tprOperator: {
418
+ did: "",
419
+ keyId: "",
420
+ privateKey: "",
421
+ },
422
+ admin: {
423
+ did: process.env.PILOT_NEW_ADMIN_DID,
424
+ keyId: "",
425
+ privateKey: "",
426
+ accreditation: "",
427
+ },
428
+ issuer1: {
429
+ did: process.env.PILOT_NEW_ISSUER_1_DID,
430
+ keyId: "",
431
+ accreditation: "",
432
+ privateKey: "",
433
+ },
434
+ issuer2: {
435
+ did: "",
436
+ keyId: "",
437
+ accreditation: "",
438
+ privateKey: "",
439
+ },
440
+ user1: {
441
+ did: process.env.PILOT_NEW_USER_1_DID,
442
+ keyId: process.env.PILOT_NEW_USER_1_ES256K_KEY_ID,
443
+ privateKey: process.env.PILOT_NEW_USER_1_PRIVATE_KEY,
444
+ jwks: {
445
+ ES256: {
446
+ privateKeyBase64: process.env.PILOT_NEW_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
447
+ keyId: process.env.PILOT_NEW_USER_1_ES256_KEY_ID,
448
+ },
449
+ RS256: {
450
+ privateKeyBase64: process.env.PILOT_NEW_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
451
+ keyId: process.env.PILOT_NEW_USER_1_RS256_KEY_ID,
452
+ },
453
+ EdDSA: {
454
+ privateKeyBase64: process.env.PILOT_NEW_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
455
+ keyId: process.env.PILOT_NEW_USER_1_EDDSA_KEY_ID,
456
+ },
457
+ },
458
+ },
459
+ user2: {
460
+ did: process.env.PILOT_NEW_USER_2_DID,
461
+ keyId: process.env.PILOT_NEW_USER_2_KEY_ID,
462
+ privateKey: process.env.PILOT_NEW_USER_2_PRIVATE_KEY,
463
+ },
464
+ user3: {
465
+ did: process.env.PILOT_NEW_USER_3_DID,
466
+ keyId: process.env.PILOT_NEW_USER_3_KEY_ID,
467
+ privateKey: process.env.PILOT_NEW_USER_3_PRIVATE_KEY,
468
+ },
469
+ np: {},
470
+ },
471
+ },
472
+ conformance: {
473
+ domain: "https://api-conformance.ebsi.eu",
474
+ casUrl: "https://ecas.ec.europa.eu/cas",
475
+ besuProvider: process.env.CONFORMANCE_BESU_PROVIDER,
476
+ keyspace: "ebsi_conformance",
477
+ contractAddresses: {
478
+ timestamp: "0xaD00Eb7A224cBB0f3fCeC68595a4F4FF87e7eB2F",
479
+ timestampNew: "0xF75917CD450602d78425901B6765111193cFD06f",
480
+ didOld: "0x36cf4f85c6d7d40B243314E4FA665bE626E59Ba5",
481
+ didNew: "0xf15e3682BCe7ADDefb2F1E1EAE3163448DB539f6",
482
+ did: "0x4Fa9Dbee2E7CF24737348D5249Db7F94fA45f099",
483
+ tar: "0x3Ba8dE431d3741A6077A20656aCC01027FF920e3",
484
+ tarNew: "0xDEdDF7bDa978828b3ed425791978EF9cf99CabD3",
485
+ tir: "0xB1D9B0EC0B52aD095bab2A5320a808aCb7c9F186",
486
+ tirNew: "0x24A84106AF7DfB216d0a69cEf06ae5413CA46C15",
487
+ tsr: "0x30cC78D20E21C8422F3B62052FD4C15D4b7894A4",
488
+ tsrNew: "0x76d0Ce94a6f2F07179ff48fc355FDa7Ff8C71A2C",
489
+ tpr: "0x3591e30eaea83343ed69A077D059821c5099154A",
490
+ tprNew: "0x38CcCfA3208dd65c2516C8004b142C1447Add3C2",
491
+ },
492
+ abi: {
493
+ timestamp: abiTimestampPilot,
494
+ timestampNew: abiTimestampNewPilot,
495
+ did: abiDidPilot,
496
+ didOld: abiDidOldPilot,
497
+ didNew: abiDidNewPilot,
498
+ tar: abiTarPilot,
499
+ tarNew: abiTarNewPilot,
500
+ tir: abiTirPilot,
501
+ tirNew: abiTirNewPilot,
502
+ tsr: abiTsrPilot,
503
+ tsrNew: abiTsrNewPilot,
504
+ tpr: abiTprPilot,
505
+ tprNew: abiTprNewPilot,
506
+ },
507
+ // variables for testing
508
+ authorisationApiId: "0x559c4f32dc35566e4b92b697499c38f3847a6c53f8344821c24354ead1f2ab1e",
509
+ authorisationApiDid: "did:ebsi:zkgWUcRsW8DiuEzXBcDtWrF",
510
+ onboardingApiDid: "did:ebsi:zeG8Qa84ZCZFoECmGjxiZcM",
511
+ onboardingApiKid: "did:ebsi:zeG8Qa84ZCZFoECmGjxiZcM#keys-1",
512
+ onboardingApiPrivateKey: process.env.CONFORMANCE_ONBOARDING_API_PRIVATE_KEY,
513
+ conformanceApiV2Did: "did:ebsi:zcfcwGjLBojczw9yhmUFE3Z",
514
+ conformanceApiV3Did: "did:ebsi:zhJARjPN69cEtgPxHen1Mid",
515
+ conformanceApiV4Did: "did:ebsi:zjHZjJ4Sy7r92BxXzFGs7qD",
516
+ programs: {
517
+ admin: {
518
+ did: process.env.CONFORMANCE_PROGRAMS_ADMIN_DID,
519
+ keyId: process.env.CONFORMANCE_PROGRAMS_ADMIN_KEY_ID,
520
+ privateKey: process.env.CONFORMANCE_PROGRAMS_ADMIN_PRIVATE_KEY,
521
+ },
522
+ },
523
+ vitest: {
524
+ resourceApp: {
525
+ name: process.env.CONFORMANCE_RESOURCE_APP_NAME,
526
+ id: process.env.CONFORMANCE_RESOURCE_APP_ID,
527
+ kid: `https://api-conformance.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.CONFORMANCE_RESOURCE_APP_NAME}`,
528
+ },
529
+ requesterApp: {
530
+ name: process.env.CONFORMANCE_REQUESTER_APP_NAME,
531
+ id: process.env.CONFORMANCE_REQUESTER_APP_ID,
532
+ kid: `https://api-conformance.ebsi.eu/trusted-apps-registry/v3/apps/${process.env.CONFORMANCE_REQUESTER_APP_NAME}`,
533
+ privateKey: process.env.CONFORMANCE_REQUESTER_APP_PRIVATE_KEY,
534
+ },
535
+ tprOperator: {
536
+ did: process.env.CONFORMANCE_TPR_OPERATOR_DID,
537
+ keyId: process.env.CONFORMANCE_TPR_OPERATOR_KEY_ID,
538
+ privateKey: process.env.CONFORMANCE_TPR_OPERATOR_PRIVATE_KEY,
539
+ },
540
+ admin: {
541
+ did: process.env.CONFORMANCE_ADMIN_DID,
542
+ keyId: process.env.CONFORMANCE_ADMIN_KEY_ID,
543
+ privateKey: process.env.CONFORMANCE_ADMIN_PRIVATE_KEY,
544
+ accreditation: process.env.CONFORMANCE_ADMIN_ACCREDITATION,
545
+ },
546
+ issuer1: {
547
+ did: process.env.CONFORMANCE_ISSUER_1_DID,
548
+ keyId: process.env.CONFORMANCE_ISSUER_1_ES256K_KEY_ID,
549
+ accreditation: process.env.CONFORMANCE_ISSUER_1_ACCREDITATION,
550
+ privateKey: process.env.CONFORMANCE_ISSUER_1_PRIVATE_KEY,
551
+ jwks: {
552
+ ES256: {
553
+ privateKeyBase64: process.env.CONFORMANCE_ISSUER_1_PRIVATE_KEY_JWK_ES256_BASE64,
554
+ keyId: process.env.CONFORMANCE_ISSUER_1_ES256_KEY_ID,
555
+ },
556
+ RS256: {
557
+ privateKeyBase64: process.env.CONFORMANCE_ISSUER_1_PRIVATE_KEY_JWK_RS256_BASE64,
558
+ keyId: process.env.CONFORMANCE_ISSUER_1_RS256_KEY_ID,
559
+ },
560
+ EdDSA: {
561
+ privateKeyBase64: process.env.CONFORMANCE_ISSUER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
562
+ keyId: process.env.CONFORMANCE_ISSUER_1_EDDSA_KEY_ID,
563
+ },
564
+ },
565
+ },
566
+ issuer2: {
567
+ did: process.env.CONFORMANCE_ISSUER_2_DID,
568
+ keyId: process.env.CONFORMANCE_ISSUER_2_KEY_ID,
569
+ accreditation: process.env.CONFORMANCE_ISSUER_2_ACCREDITATION,
570
+ privateKey: process.env.CONFORMANCE_ISSUER_2_PRIVATE_KEY,
571
+ },
572
+ user1: {
573
+ did: process.env.CONFORMANCE_USER_1_DID,
574
+ keyId: process.env.CONFORMANCE_USER_1_ES256K_KEY_ID,
575
+ privateKey: process.env.CONFORMANCE_USER_1_PRIVATE_KEY,
576
+ jwks: {
577
+ ES256: {
578
+ privateKeyBase64: process.env.CONFORMANCE_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
579
+ keyId: process.env.CONFORMANCE_USER_1_ES256_KEY_ID,
580
+ },
581
+ RS256: {
582
+ privateKeyBase64: process.env.CONFORMANCE_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
583
+ keyId: process.env.CONFORMANCE_USER_1_RS256_KEY_ID,
584
+ },
585
+ EdDSA: {
586
+ privateKeyBase64: process.env.CONFORMANCE_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
587
+ keyId: process.env.CONFORMANCE_USER_1_EDDSA_KEY_ID,
588
+ },
589
+ },
590
+ },
591
+ user2: {
592
+ did: process.env.CONFORMANCE_USER_2_DID,
593
+ keyId: process.env.CONFORMANCE_USER_2_KEY_ID,
594
+ privateKey: process.env.CONFORMANCE_USER_2_PRIVATE_KEY,
595
+ },
596
+ user3: {
597
+ did: process.env.CONFORMANCE_USER_3_DID,
598
+ keyId: process.env.CONFORMANCE_USER_3_KEY_ID,
599
+ privateKey: process.env.CONFORMANCE_USER_3_PRIVATE_KEY,
600
+ },
601
+ np: {
602
+ ES256K: {
603
+ did: process.env.CONFORMANCE_NP_ES256K_DID,
604
+ privateKeyBase64: process.env.CONFORMANCE_NP_PRIVATE_KEY_JWK_ES256K_BASE64,
605
+ vcJwt: process.env.CONFORMANCE_NP_ES256K_VC,
606
+ },
607
+ ES256: {
608
+ did: process.env.CONFORMANCE_NP_ES256_DID,
609
+ privateKeyBase64: process.env.CONFORMANCE_NP_PRIVATE_KEY_JWK_ES256_BASE64,
610
+ vcJwt: process.env.CONFORMANCE_NP_ES256_VC,
611
+ },
612
+ RS256: {
613
+ did: process.env.CONFORMANCE_NP_RS256_DID,
614
+ privateKeyBase64: process.env.CONFORMANCE_NP_PRIVATE_KEY_JWK_RS256_BASE64,
615
+ vcJwt: process.env.CONFORMANCE_NP_RS256_VC,
616
+ },
617
+ EdDSA: {
618
+ did: process.env.CONFORMANCE_NP_EDDSA_DID,
619
+ privateKeyBase64: process.env.CONFORMANCE_NP_PRIVATE_KEY_JWK_EDDSA_BASE64,
620
+ vcJwt: process.env.CONFORMANCE_NP_EDDSA_VC,
621
+ },
622
+ },
623
+ },
624
+ vitestNew: {
625
+ resourceApp: {
626
+ name: process.env.CONFORMANCE_NEW_RESOURCE_APP_NAME,
627
+ id: process.env.CONFORMANCE_NEW_RESOURCE_APP_ID,
628
+ kid: `https://api-conformance.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.CONFORMANCE_NEW_RESOURCE_APP_NAME}`,
629
+ },
630
+ requesterApp: {
631
+ name: process.env.CONFORMANCE_NEW_REQUESTER_APP_NAME,
632
+ id: process.env.CONFORMANCE_NEW_REQUESTER_APP_ID,
633
+ kid: `https://api-conformance.ebsi.eu/trusted-apps-registry/v4/apps/${process.env.CONFORMANCE_NEW_REQUESTER_APP_NAME}`,
634
+ privateKey: process.env.CONFORMANCE_NEW_REQUESTER_APP_PRIVATE_KEY,
635
+ },
636
+ tprOperator: {
637
+ did: process.env.CONFORMANCE_NEW_TPR_OPERATOR_DID,
638
+ keyId: process.env.CONFORMANCE_NEW_TPR_OPERATOR_KEY_ID,
639
+ privateKey: process.env.CONFORMANCE_NEW_TPR_OPERATOR_PRIVATE_KEY,
640
+ },
641
+ admin: {
642
+ did: process.env.CONFORMANCE_NEW_ADMIN_DID,
643
+ keyId: process.env.CONFORMANCE_NEW_ADMIN_KEY_ID,
644
+ privateKey: process.env.CONFORMANCE_NEW_ADMIN_PRIVATE_KEY,
645
+ accreditation: process.env.CONFORMANCE_NEW_ADMIN_ACCREDITATION,
646
+ },
647
+ issuer1: {
648
+ did: process.env.CONFORMANCE_NEW_ISSUER_1_DID,
649
+ keyId: process.env.CONFORMANCE_NEW_ISSUER_1_ES256K_KEY_ID,
650
+ accreditation: process.env.CONFORMANCE_NEW_ISSUER_1_ACCREDITATION,
651
+ privateKey: process.env.CONFORMANCE_NEW_ISSUER_1_PRIVATE_KEY,
652
+ jwks: {
653
+ ES256: {
654
+ privateKeyBase64: process.env.CONFORMANCE_NEW_ISSUER_1_PRIVATE_KEY_JWK_ES256_BASE64,
655
+ keyId: process.env.CONFORMANCE_NEW_ISSUER_1_ES256_KEY_ID,
656
+ },
657
+ RS256: {
658
+ privateKeyBase64: process.env.CONFORMANCE_NEW_ISSUER_1_PRIVATE_KEY_JWK_RS256_BASE64,
659
+ keyId: process.env.CONFORMANCE_NEW_ISSUER_1_RS256_KEY_ID,
660
+ },
661
+ EdDSA: {
662
+ privateKeyBase64: process.env.CONFORMANCE_NEW_ISSUER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
663
+ keyId: process.env.CONFORMANCE_NEW_ISSUER_1_EDDSA_KEY_ID,
664
+ },
665
+ },
666
+ },
667
+ issuer2: {
668
+ did: process.env.CONFORMANCE_NEW_ISSUER_2_DID,
669
+ keyId: process.env.CONFORMANCE_NEW_ISSUER_2_KEY_ID,
670
+ accreditation: process.env.CONFORMANCE_NEW_ISSUER_2_ACCREDITATION,
671
+ privateKey: process.env.CONFORMANCE_NEW_ISSUER_2_PRIVATE_KEY,
672
+ },
673
+ user1: {
674
+ did: process.env.CONFORMANCE_NEW_USER_1_DID,
675
+ keyId: process.env.CONFORMANCE_NEW_USER_1_ES256K_KEY_ID,
676
+ privateKey: process.env.CONFORMANCE_NEW_USER_1_PRIVATE_KEY,
677
+ jwks: {
678
+ ES256: {
679
+ privateKeyBase64: process.env.CONFORMANCE_NEW_USER_1_PRIVATE_KEY_JWK_ES256_BASE64,
680
+ keyId: process.env.CONFORMANCE_NEW_USER_1_ES256_KEY_ID,
681
+ },
682
+ RS256: {
683
+ privateKeyBase64: process.env.CONFORMANCE_NEW_USER_1_PRIVATE_KEY_JWK_RS256_BASE64,
684
+ keyId: process.env.CONFORMANCE_NEW_USER_1_RS256_KEY_ID,
685
+ },
686
+ EdDSA: {
687
+ privateKeyBase64: process.env.CONFORMANCE_NEW_USER_1_PRIVATE_KEY_JWK_EDDSA_BASE64,
688
+ keyId: process.env.CONFORMANCE_NEW_USER_1_EDDSA_KEY_ID,
689
+ },
690
+ },
691
+ },
692
+ user2: {
693
+ did: process.env.CONFORMANCE_NEW_USER_2_DID,
694
+ keyId: process.env.CONFORMANCE_NEW_USER_2_KEY_ID,
695
+ privateKey: process.env.CONFORMANCE_NEW_USER_2_PRIVATE_KEY,
696
+ },
697
+ user3: {
698
+ did: process.env.CONFORMANCE_NEW_USER_3_DID,
699
+ keyId: process.env.CONFORMANCE_NEW_USER_3_KEY_ID,
700
+ privateKey: process.env.CONFORMANCE_NEW_USER_3_PRIVATE_KEY,
701
+ },
702
+ np: {},
703
+ },
704
+ },
705
+ };
706
+ function setDomain(value, domain) {
707
+ const v = value.substring(value.lastIndexOf("/") + 1);
708
+ return `${domain}/${v}`;
709
+ }
710
+ export const loadConfig = (env = (process.env.EBSI_ENV || "test")) => {
711
+ const sharedConfig = configOpts[env];
712
+ const timeoutMining = Number(process.env.TIMEOUT_MINING) || Number.MAX_SAFE_INTEGER;
713
+ const timeoutNotificationConformanceResponse = Number(process.env.TIMEOUT_NOTIFICATION_CONFORMANCE_RESPONSE) ||
714
+ Number.MAX_SAFE_INTEGER;
715
+ const dockerServices = process.env.DOCKER_SERVICES
716
+ ? process.env.DOCKER_SERVICES.split(",")
717
+ : [
718
+ "authorisation-api",
719
+ "did-registry-api",
720
+ "notifications-api",
721
+ "proxy-data-hub-api",
722
+ "timestamp-api",
723
+ "trusted-issuers-registry-api",
724
+ "trusted-policies-registry-api",
725
+ "trusted-schemas-registry-api",
726
+ "users-onboarding-api",
727
+ ];
728
+ const { domain: domainEnv, contractAddresses, abi, keyspace, besuProvider, casUrl, authorisationApiId, authorisationApiDid, onboardingApiDid, onboardingApiKid, onboardingApiPrivateKey, // only for testing
729
+ conformanceApiV2Did, conformanceApiV3Did, conformanceApiV4Did, programs, vitest, vitestNew, } = sharedConfig;
730
+ const domain = process.env.DOMAIN ?? domainEnv;
731
+ const api = {
732
+ // Integration API
733
+ "timestamp-new": {
734
+ url: `${domain}/timestamp/v4`,
735
+ genericName: "timestamp-api",
736
+ contract: new ethers.Contract(contractAddresses.timestampNew, abi.timestampNew),
737
+ },
738
+ timestamp: {
739
+ url: `${domain}/timestamp/v3`,
740
+ genericName: "timestamp-api",
741
+ contract: new ethers.Contract(contractAddresses.timestamp, abi.timestamp),
742
+ },
743
+ storage: {
744
+ url: `${domain}/storage/v3`,
745
+ genericName: "storage-api",
746
+ },
747
+ "ledger-new": {
748
+ url: `${domain}/ledger/v4`,
749
+ genericName: "ledger-api",
750
+ },
751
+ ledger: {
752
+ url: `${domain}/ledger/v3`,
753
+ genericName: "ledger-api",
754
+ },
755
+ notifications: {
756
+ url: `${domain}/notifications/v2`,
757
+ genericName: "notifications-api",
758
+ },
759
+ "authorisation-new": {
760
+ url: `${domain}/authorisation/v4`,
761
+ genericName: "authorisation-api",
762
+ id: authorisationApiId,
763
+ genericKid: `${domain}/trusted-apps-registry/v5/apps/authorisation-api`,
764
+ urlCredentialSchema: `${domain}/trusted-schemas-registry/v3/schemas/0x312e332e362e312e342e312e313338312e332e31322e332e322e332e3738`,
765
+ },
766
+ authorisation: {
767
+ url: `${domain}/authorisation/v3`,
768
+ genericName: "authorisation-api",
769
+ id: authorisationApiId,
770
+ genericKid: `${domain}/trusted-apps-registry/v4/apps/authorisation-api`,
771
+ did: authorisationApiDid,
772
+ urlCredentialSchema: `${domain}/trusted-schemas-registry/v2/schemas/0x312e332e362e312e342e312e313338312e332e31322e332e322e332e3738`,
773
+ },
774
+ authorisationV2: {
775
+ url: `${domain}/authorisation/v2`,
776
+ genericName: "authorisation-api",
777
+ id: authorisationApiId,
778
+ genericKid: `${domain}/trusted-apps-registry/v3/apps/authorisation-api`,
779
+ did: authorisationApiDid,
780
+ urlCredentialSchema: `${domain}/trusted-schemas-registry/v2/schemas/0x312e332e362e312e342e312e313338312e332e31322e332e322e332e3738`,
781
+ },
782
+ // Identity
783
+ onboarding: {
784
+ url: `${domain}/users-onboarding/v2`,
785
+ genericName: "users-onboarding-api",
786
+ did: onboardingApiDid,
787
+ kid: onboardingApiKid,
788
+ privateKey: onboardingApiPrivateKey, // only for testing
789
+ },
790
+ "did-new": {
791
+ url: `${domain}/did-registry/v5`,
792
+ genericName: "did-registry-api",
793
+ contract: new ethers.Contract(contractAddresses.didNew, abi.didNew),
794
+ },
795
+ did: {
796
+ url: `${domain}/did-registry/v4`,
797
+ genericName: "did-registry-api",
798
+ contract: new ethers.Contract(contractAddresses.did, abi.did),
799
+ },
800
+ "did-old": {
801
+ url: `${domain}/did-registry/v3`,
802
+ genericName: "did-registry-api",
803
+ contract: new ethers.Contract(contractAddresses.didOld, abi.didOld),
804
+ },
805
+ datahub: {
806
+ url: `${domain}/proxy-data-hub/v3`,
807
+ genericName: "proxy-data-hub-api",
808
+ },
809
+ // Trusted registries
810
+ "tar-new": {
811
+ url: `${domain}/trusted-apps-registry/v4`,
812
+ genericName: "trusted-apps-registry-api",
813
+ contract: new ethers.Contract(contractAddresses.tarNew, abi.tarNew),
814
+ },
815
+ tar: {
816
+ url: `${domain}/trusted-apps-registry/v3`,
817
+ genericName: "trusted-apps-registry-api",
818
+ contract: new ethers.Contract(contractAddresses.tar, abi.tar),
819
+ },
820
+ "tir-new": {
821
+ url: `${domain}/trusted-issuers-registry/v5`,
822
+ genericName: "trusted-issuers-registry-api",
823
+ contract: new ethers.Contract(contractAddresses.tirNew, abi.tirNew),
824
+ },
825
+ tir: {
826
+ url: `${domain}/trusted-issuers-registry/v4`,
827
+ genericName: "trusted-issuers-registry-api",
828
+ contract: new ethers.Contract(contractAddresses.tir, abi.tir),
829
+ },
830
+ "tir-old": {
831
+ url: `${domain}/trusted-issuers-registry/v3`,
832
+ genericName: "trusted-issuers-registry-api",
833
+ contract: new ethers.Contract(contractAddresses.tir, abi.tir),
834
+ },
835
+ "tsr-new": {
836
+ url: `${domain}/trusted-schemas-registry/v3`,
837
+ genericName: "trusted-schemas-registry-api",
838
+ contract: new ethers.Contract(contractAddresses.tsrNew, abi.tsrNew),
839
+ },
840
+ tsr: {
841
+ url: `${domain}/trusted-schemas-registry/v2`,
842
+ genericName: "trusted-schemas-registry-api",
843
+ contract: new ethers.Contract(contractAddresses.tsr, abi.tsr),
844
+ },
845
+ "tpr-new": {
846
+ url: `${domain}/trusted-policies-registry/v3`,
847
+ genericName: "trusted-policies-registry-api",
848
+ contract: new ethers.Contract(contractAddresses.tprNew, abi.tprNew),
849
+ },
850
+ tpr: {
851
+ url: `${domain}/trusted-policies-registry/v2`,
852
+ genericName: "trusted-policies-registry-api",
853
+ contract: new ethers.Contract(contractAddresses.tpr, abi.tpr),
854
+ },
855
+ // Conformance
856
+ "conformance-new": {
857
+ url: `${env === "test" ? "https://conformance-test.ebsi.eu" : domain}/conformance/v4`,
858
+ did: conformanceApiV4Did,
859
+ },
860
+ conformance: {
861
+ url: `${env === "test" ? "https://conformance-test.ebsi.eu" : domain}/conformance/v3`,
862
+ did: conformanceApiV3Did,
863
+ },
864
+ conformanceV2: {
865
+ url: `${env === "test" ? "https://conformance-test.ebsi.eu" : domain}/conformance/v2`,
866
+ did: conformanceApiV2Did,
867
+ },
868
+ };
869
+ const onboardingService = `${domain.replace("api", "app")}/users-onboarding/authentication`;
870
+ const domainTarV3Apps = `${domain}/trusted-apps-registry/v3/apps`;
871
+ vitest.resourceApp.kid = setDomain(vitest.resourceApp.kid, domainTarV3Apps);
872
+ vitest.requesterApp.kid = setDomain(vitest.requesterApp.kid, domainTarV3Apps);
873
+ const cassandra = {
874
+ client: new Client({
875
+ contactPoints: (process.env.CASSANDRA_CONTACT_POINTS &&
876
+ process.env.CASSANDRA_CONTACT_POINTS.split(",")) || [
877
+ "cassandradb",
878
+ "localhost",
879
+ ],
880
+ localDataCenter: process.env.CASSANDRA_LOCAL_DATACENTER || "datacenter1",
881
+ keyspace: process.env.CASSANDRA_KEYSPACE || keyspace,
882
+ authProvider: process.env.CASSANDRA_USER && process.env.CASSANDRA_PASSWORD
883
+ ? new auth.PlainTextAuthProvider(process.env.CASSANDRA_USER, process.env.CASSANDRA_PASSWORD)
884
+ : undefined,
885
+ }),
886
+ consistency: {
887
+ read: (process.env.CASSANDRA_CONSISTENCY_READ &&
888
+ types.consistencies[process.env.CASSANDRA_CONSISTENCY_READ]) || types.consistencies.two,
889
+ write: (process.env.CASSANDRA_CONSISTENCY_WRITE &&
890
+ types.consistencies[process.env.CASSANDRA_CONSISTENCY_WRITE]) || types.consistencies.two,
891
+ },
892
+ };
893
+ return {
894
+ domain,
895
+ contractAddresses,
896
+ api,
897
+ cassandra,
898
+ besuProvider: process.env.BESU_PROVIDER || besuProvider,
899
+ casUrl,
900
+ onboardingService,
901
+ timeoutMining,
902
+ timeoutNotificationConformanceResponse,
903
+ programs,
904
+ vitest,
905
+ vitestNew,
906
+ env,
907
+ dockerServices,
908
+ };
909
+ };
910
+ //# sourceMappingURL=config.js.map