@cheqd/studio 3.12.1 → 3.13.0-develop.2

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 (156) hide show
  1. package/dist/app.d.ts.map +1 -1
  2. package/dist/app.js +18 -1
  3. package/dist/app.js.map +1 -1
  4. package/dist/controllers/admin/subscriptions.d.ts.map +1 -1
  5. package/dist/controllers/admin/subscriptions.js.map +1 -1
  6. package/dist/controllers/api/accreditation.js.map +1 -1
  7. package/dist/controllers/api/credential.d.ts +55 -0
  8. package/dist/controllers/api/credential.d.ts.map +1 -1
  9. package/dist/controllers/api/credential.js +105 -0
  10. package/dist/controllers/api/credential.js.map +1 -1
  11. package/dist/controllers/api/did.d.ts +6 -0
  12. package/dist/controllers/api/did.d.ts.map +1 -1
  13. package/dist/controllers/api/did.js +37 -20
  14. package/dist/controllers/api/did.js.map +1 -1
  15. package/dist/controllers/api/providers.controller.d.ts +152 -0
  16. package/dist/controllers/api/providers.controller.d.ts.map +1 -0
  17. package/dist/controllers/api/providers.controller.js +348 -0
  18. package/dist/controllers/api/providers.controller.js.map +1 -0
  19. package/dist/controllers/validator/service-create-request.js +2 -2
  20. package/dist/controllers/validator/service-create-request.js.map +1 -1
  21. package/dist/controllers/validator/service.js +2 -2
  22. package/dist/controllers/validator/service.js.map +1 -1
  23. package/dist/database/entities/credential-provider.entity.d.ts +16 -0
  24. package/dist/database/entities/credential-provider.entity.d.ts.map +1 -0
  25. package/dist/database/entities/credential-provider.entity.js +109 -0
  26. package/dist/database/entities/credential-provider.entity.js.map +1 -0
  27. package/dist/database/entities/provider-configuration.entity.d.ts +23 -0
  28. package/dist/database/entities/provider-configuration.entity.d.ts.map +1 -0
  29. package/dist/database/entities/provider-configuration.entity.js +139 -0
  30. package/dist/database/entities/provider-configuration.entity.js.map +1 -0
  31. package/dist/database/migrations/1758011998054-studio-migrations.d.ts +7 -0
  32. package/dist/database/migrations/1758011998054-studio-migrations.d.ts.map +1 -0
  33. package/dist/database/migrations/1758011998054-studio-migrations.js +18 -0
  34. package/dist/database/migrations/1758011998054-studio-migrations.js.map +1 -0
  35. package/dist/database/seeds/providers.seed.d.ts +2 -0
  36. package/dist/database/seeds/providers.seed.d.ts.map +1 -0
  37. package/dist/database/seeds/providers.seed.js +89 -0
  38. package/dist/database/seeds/providers.seed.js.map +1 -0
  39. package/dist/database/types/types.d.ts.map +1 -1
  40. package/dist/database/types/types.js +6 -0
  41. package/dist/database/types/types.js.map +1 -1
  42. package/dist/middleware/auth/routes/api/accreditation-auth.js.map +1 -1
  43. package/dist/middleware/auth/routes/api/credential-auth.d.ts.map +1 -1
  44. package/dist/middleware/auth/routes/api/credential-auth.js +2 -0
  45. package/dist/middleware/auth/routes/api/credential-auth.js.map +1 -1
  46. package/dist/middleware/auth/routes/api/provider-auth.d.ts +5 -0
  47. package/dist/middleware/auth/routes/api/provider-auth.d.ts.map +1 -0
  48. package/dist/middleware/auth/routes/api/provider-auth.js +27 -0
  49. package/dist/middleware/auth/routes/api/provider-auth.js.map +1 -0
  50. package/dist/middleware/authentication.d.ts.map +1 -1
  51. package/dist/middleware/authentication.js +2 -0
  52. package/dist/middleware/authentication.js.map +1 -1
  53. package/dist/services/api/credentials.d.ts.map +1 -1
  54. package/dist/services/api/credentials.js +26 -15
  55. package/dist/services/api/credentials.js.map +1 -1
  56. package/dist/services/api/provider.factory.d.ts +9 -0
  57. package/dist/services/api/provider.factory.d.ts.map +1 -0
  58. package/dist/services/api/provider.factory.js +41 -0
  59. package/dist/services/api/provider.factory.js.map +1 -0
  60. package/dist/services/api/provider.service.d.ts +25 -0
  61. package/dist/services/api/provider.service.d.ts.map +1 -0
  62. package/dist/services/api/provider.service.js +148 -0
  63. package/dist/services/api/provider.service.js.map +1 -0
  64. package/dist/services/api/providers/base-provider.service.d.ts +22 -0
  65. package/dist/services/api/providers/base-provider.service.d.ts.map +1 -0
  66. package/dist/services/api/providers/base-provider.service.js +60 -0
  67. package/dist/services/api/providers/base-provider.service.js.map +1 -0
  68. package/dist/services/api/providers/dock-api.service.d.ts +18 -0
  69. package/dist/services/api/providers/dock-api.service.d.ts.map +1 -0
  70. package/dist/services/api/providers/dock-api.service.js +95 -0
  71. package/dist/services/api/providers/dock-api.service.js.map +1 -0
  72. package/dist/services/api/providers/hovi-api.service.d.ts +16 -0
  73. package/dist/services/api/providers/hovi-api.service.d.ts.map +1 -0
  74. package/dist/services/api/providers/hovi-api.service.js +99 -0
  75. package/dist/services/api/providers/hovi-api.service.js.map +1 -0
  76. package/dist/services/api/providers/paradym-api.service.d.ts +16 -0
  77. package/dist/services/api/providers/paradym-api.service.d.ts.map +1 -0
  78. package/dist/services/api/providers/paradym-api.service.js +99 -0
  79. package/dist/services/api/providers/paradym-api.service.js.map +1 -0
  80. package/dist/services/api/providers/studio-api.service.d.ts +18 -0
  81. package/dist/services/api/providers/studio-api.service.d.ts.map +1 -0
  82. package/dist/services/api/providers/studio-api.service.js +104 -0
  83. package/dist/services/api/providers/studio-api.service.js.map +1 -0
  84. package/dist/services/api/resource.d.ts +2 -2
  85. package/dist/services/api/resource.d.ts.map +1 -1
  86. package/dist/services/api/resource.js.map +1 -1
  87. package/dist/services/connectors/resource.d.ts.map +1 -1
  88. package/dist/services/connectors/resource.js.map +1 -1
  89. package/dist/services/identity/abstract.d.ts +4 -1
  90. package/dist/services/identity/abstract.d.ts.map +1 -1
  91. package/dist/services/identity/abstract.js +5 -0
  92. package/dist/services/identity/abstract.js.map +1 -1
  93. package/dist/services/identity/default.js +1 -1
  94. package/dist/services/identity/default.js.map +1 -1
  95. package/dist/services/identity/index.d.ts +4 -3
  96. package/dist/services/identity/index.d.ts.map +1 -1
  97. package/dist/services/identity/index.js +2 -3
  98. package/dist/services/identity/index.js.map +1 -1
  99. package/dist/services/identity/providers/dock/identity.d.ts +19 -0
  100. package/dist/services/identity/providers/dock/identity.d.ts.map +1 -0
  101. package/dist/services/identity/providers/dock/identity.js +201 -0
  102. package/dist/services/identity/providers/dock/identity.js.map +1 -0
  103. package/dist/services/identity/providers/dock/types.d.ts +138 -0
  104. package/dist/services/identity/providers/dock/types.d.ts.map +1 -0
  105. package/dist/services/identity/providers/dock/types.js +2 -0
  106. package/dist/services/identity/providers/dock/types.js.map +1 -0
  107. package/dist/services/identity/providers/index.d.ts +3 -0
  108. package/dist/services/identity/providers/index.d.ts.map +1 -0
  109. package/dist/services/identity/providers/index.js +3 -0
  110. package/dist/services/identity/providers/index.js.map +1 -0
  111. package/dist/services/identity/{agent.d.ts → providers/studio/agent.d.ts} +8 -8
  112. package/dist/services/identity/providers/studio/agent.d.ts.map +1 -0
  113. package/dist/services/identity/{agent.js → providers/studio/agent.js} +6 -5
  114. package/dist/services/identity/providers/studio/agent.js.map +1 -0
  115. package/dist/services/identity/providers/studio/index.d.ts +3 -0
  116. package/dist/services/identity/providers/studio/index.d.ts.map +1 -0
  117. package/dist/services/identity/providers/studio/index.js +3 -0
  118. package/dist/services/identity/providers/studio/index.js.map +1 -0
  119. package/dist/services/identity/{local.d.ts → providers/studio/local.d.ts} +9 -9
  120. package/dist/services/identity/providers/studio/local.d.ts.map +1 -0
  121. package/dist/services/identity/{local.js → providers/studio/local.js} +3 -3
  122. package/dist/services/identity/providers/studio/local.js.map +1 -0
  123. package/dist/services/identity/{postgres.d.ts → providers/studio/postgres.d.ts} +18 -17
  124. package/dist/services/identity/providers/studio/postgres.d.ts.map +1 -0
  125. package/dist/services/identity/{postgres.js → providers/studio/postgres.js} +51 -11
  126. package/dist/services/identity/providers/studio/postgres.js.map +1 -0
  127. package/dist/services/identity/providers/studio/unauthorized.d.ts +6 -0
  128. package/dist/services/identity/providers/studio/unauthorized.d.ts.map +1 -0
  129. package/dist/services/identity/{unauthorized.js → providers/studio/unauthorized.js} +2 -2
  130. package/dist/services/identity/providers/studio/unauthorized.js.map +1 -0
  131. package/dist/static/swagger-api.json +330 -0
  132. package/dist/types/credential.d.ts +33 -2
  133. package/dist/types/credential.d.ts.map +1 -1
  134. package/dist/types/credential.js +4 -2
  135. package/dist/types/credential.js.map +1 -1
  136. package/dist/types/did.d.ts +2 -0
  137. package/dist/types/did.d.ts.map +1 -1
  138. package/dist/types/provider.types.d.ts +30 -0
  139. package/dist/types/provider.types.d.ts.map +1 -0
  140. package/dist/types/provider.types.js +2 -0
  141. package/dist/types/provider.types.js.map +1 -0
  142. package/dist/types/swagger-api-types.d.ts +28 -0
  143. package/dist/types/swagger-api-types.d.ts.map +1 -1
  144. package/dist/types/swagger-api-types.js +28 -0
  145. package/dist/types/swagger-api-types.js.map +1 -1
  146. package/example.env +6 -0
  147. package/package.json +3 -2
  148. package/dist/services/identity/agent.d.ts.map +0 -1
  149. package/dist/services/identity/agent.js.map +0 -1
  150. package/dist/services/identity/local.d.ts.map +0 -1
  151. package/dist/services/identity/local.js.map +0 -1
  152. package/dist/services/identity/postgres.d.ts.map +0 -1
  153. package/dist/services/identity/postgres.js.map +0 -1
  154. package/dist/services/identity/unauthorized.d.ts +0 -6
  155. package/dist/services/identity/unauthorized.d.ts.map +0 -1
  156. package/dist/services/identity/unauthorized.js.map +0 -1
@@ -0,0 +1,348 @@
1
+ import { StatusCodes } from 'http-status-codes';
2
+ import { ProviderService } from '../../services/api/provider.service.js';
3
+ export class ProvidersController {
4
+ /**
5
+ * @openapi
6
+ * /providers:
7
+ * get:
8
+ * tags: [Providers]
9
+ * summary: Get all available credential providers
10
+ * description: Returns list of available credential providers
11
+ * responses:
12
+ * 200:
13
+ * description: Successful response
14
+ * content:
15
+ * application/json:
16
+ * schema:
17
+ * type: object
18
+ * properties:
19
+ * providers:
20
+ * type: array
21
+ * items:
22
+ * type: object
23
+ */
24
+ async getProviders(req, res) {
25
+ try {
26
+ const providers = await ProviderService.instance.getAllProviders();
27
+ return res.status(StatusCodes.OK).json({ providers });
28
+ }
29
+ catch (error) {
30
+ return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({
31
+ error: `Internal error: ${error?.message || error}`,
32
+ });
33
+ }
34
+ }
35
+ /**
36
+ * @openapi
37
+ * /providers/activated:
38
+ * get:
39
+ * tags: [Providers]
40
+ * summary: Get customer's activated providers
41
+ * description: Returns list of providers activated by the customer
42
+ * responses:
43
+ * 200:
44
+ * description: Successful response
45
+ */
46
+ async getActiveProviders(req, res) {
47
+ try {
48
+ const customer = res.locals.customer;
49
+ const configurations = await ProviderService.instance.getCustomerConfigurations(customer.customerId);
50
+ const configuredProviders = configurations.map((config) => ({
51
+ configId: config.configId,
52
+ providerId: config.providerId,
53
+ tenantId: config.tenantId,
54
+ providerName: config.provider.name,
55
+ providerType: config.provider.providerType,
56
+ apiEndpoint: config.apiEndpoint,
57
+ webhookUrl: config.webhookUrl,
58
+ validated: config.validated,
59
+ validatedAt: config.validatedAt,
60
+ active: config.active,
61
+ defaultSettings: config.defaultSettings,
62
+ createdAt: config.createdAt,
63
+ updatedAt: config.updatedAt,
64
+ }));
65
+ return res.status(StatusCodes.OK).json({ providers: configuredProviders });
66
+ }
67
+ catch (error) {
68
+ return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({
69
+ error: `Internal error: ${error?.message || error}`,
70
+ });
71
+ }
72
+ }
73
+ /**
74
+ * @openapi
75
+ * /providers/{providerId}/configuration:
76
+ * get:
77
+ * tags: [Providers]
78
+ * summary: Get provider configuration
79
+ * parameters:
80
+ * - name: providerId
81
+ * in: path
82
+ * required: true
83
+ * schema:
84
+ * type: string
85
+ * responses:
86
+ * 200:
87
+ * description: Provider configuration
88
+ */
89
+ async getProviderConfiguration(req, res) {
90
+ try {
91
+ const customer = res.locals.customer;
92
+ const { providerId } = req.params;
93
+ const config = await ProviderService.instance.getProviderConfiguration(customer.customerId, providerId);
94
+ if (!config) {
95
+ return res.status(StatusCodes.NOT_FOUND).json({
96
+ error: `No configuration found for provider ${providerId}`,
97
+ });
98
+ }
99
+ // Don't return encrypted API key
100
+ const safeConfig = {
101
+ configId: config.configId,
102
+ providerId: config.providerId,
103
+ tenantId: config.tenantId,
104
+ apiEndpoint: config.apiEndpoint,
105
+ webhookUrl: config.webhookUrl,
106
+ validated: config.validated,
107
+ validatedAt: config.validatedAt,
108
+ active: config.active,
109
+ defaultSettings: config.defaultSettings,
110
+ hasApiKey: !!config.encryptedApiKey,
111
+ provider: {
112
+ name: config.provider.name,
113
+ description: config.provider.description,
114
+ providerType: config.provider.providerType,
115
+ supportedFormats: config.provider.supportedFormats,
116
+ supportedProtocols: config.provider.supportedProtocols,
117
+ metadata: config.provider.metadata,
118
+ },
119
+ };
120
+ return res.status(StatusCodes.OK).json({ configuration: safeConfig });
121
+ }
122
+ catch (error) {
123
+ return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({
124
+ error: `Internal error: ${error?.message || error}`,
125
+ });
126
+ }
127
+ }
128
+ /**
129
+ * @openapi
130
+ * /providers/{providerId}/activate:
131
+ * post:
132
+ * tags: [Providers]
133
+ * summary: Activate a provider for the customer
134
+ * parameters:
135
+ * - name: providerId
136
+ * in: path
137
+ * required: true
138
+ * schema:
139
+ * type: string
140
+ * responses:
141
+ * 200:
142
+ * description: Provider activated successfully
143
+ * 400:
144
+ * description: Invalid provider or already activated
145
+ * 404:
146
+ * description: Provider not found
147
+ */
148
+ async activateProvider(req, res) {
149
+ try {
150
+ const customer = res.locals.customer;
151
+ const { providerId } = req.params;
152
+ const config = await ProviderService.instance.activateProvider(customer.customerId, providerId);
153
+ return res.status(StatusCodes.OK).json({
154
+ message: 'Provider activated successfully',
155
+ configuration: {
156
+ configId: config.configId,
157
+ providerId: config.providerId,
158
+ tenantId: config.tenantId,
159
+ providerName: config.provider.name,
160
+ apiEndpoint: config.apiEndpoint,
161
+ active: config.active,
162
+ createdAt: config.createdAt,
163
+ },
164
+ });
165
+ }
166
+ catch (error) {
167
+ const status = error?.message.includes('not found')
168
+ ? StatusCodes.NOT_FOUND
169
+ : error?.message.includes('already activated')
170
+ ? StatusCodes.CONFLICT
171
+ : StatusCodes.BAD_REQUEST;
172
+ return res.status(status).json({
173
+ error: `Activation failed: ${error?.message || error}`,
174
+ });
175
+ }
176
+ }
177
+ /**
178
+ * @openapi
179
+ * /providers/{providerId}/configuration:
180
+ * put:
181
+ * tags: [Providers]
182
+ * summary: Update provider configuration
183
+ * parameters:
184
+ * - name: providerId
185
+ * in: path
186
+ * required: true
187
+ * schema:
188
+ * type: string
189
+ * requestBody:
190
+ * required: true
191
+ * content:
192
+ * application/json:
193
+ * schema:
194
+ * type: object
195
+ * properties:
196
+ * apiEndpoint:
197
+ * type: string
198
+ * format: uri
199
+ * description: API endpoint URL
200
+ * webhookUrl:
201
+ * type: string
202
+ * format: uri
203
+ * description: Webhook URL for notifications
204
+ * defaultSettings:
205
+ * type: object
206
+ * description: Provider-specific default settings
207
+ * responses:
208
+ * 200:
209
+ * description: Configuration updated successfully
210
+ * 400:
211
+ * description: Invalid configuration data
212
+ * 404:
213
+ * description: Provider configuration not found
214
+ */
215
+ async updateProviderConfiguration(req, res) {
216
+ try {
217
+ const customer = res.locals.customer;
218
+ const { providerId } = req.params;
219
+ const { apiEndpoint, webhookUrl, defaultSettings } = req.body;
220
+ // Validate input
221
+ if (apiEndpoint && typeof apiEndpoint !== 'string') {
222
+ return res.status(StatusCodes.BAD_REQUEST).json({
223
+ error: 'Invalid API endpoint: must be a string',
224
+ });
225
+ }
226
+ if (webhookUrl && typeof webhookUrl !== 'string') {
227
+ return res.status(StatusCodes.BAD_REQUEST).json({
228
+ error: 'Invalid webhook URL: must be a string',
229
+ });
230
+ }
231
+ if (process.env.APPLICATION_BASE_URL?.includes('localhost')) {
232
+ console.warn('Skipping URL validation in local development environment');
233
+ }
234
+ else {
235
+ if (apiEndpoint && !apiEndpoint.startsWith('https://')) {
236
+ return res.status(StatusCodes.BAD_REQUEST).json({
237
+ error: 'API endpoint must be a valid HTTPS URL',
238
+ });
239
+ }
240
+ if (webhookUrl && webhookUrl.trim() && !webhookUrl.startsWith('https://')) {
241
+ return res.status(StatusCodes.BAD_REQUEST).json({
242
+ error: 'Webhook URL must be a valid HTTPS URL',
243
+ });
244
+ }
245
+ }
246
+ const updatedConfig = await ProviderService.instance.updateProviderConfiguration(customer.customerId, providerId, {
247
+ apiEndpoint: apiEndpoint?.trim() || undefined,
248
+ webhookUrl: webhookUrl?.trim() || undefined,
249
+ defaultSettings: defaultSettings || undefined,
250
+ });
251
+ const safeConfig = {
252
+ configId: updatedConfig.configId,
253
+ providerId: updatedConfig.providerId,
254
+ apiEndpoint: updatedConfig.apiEndpoint,
255
+ webhookUrl: updatedConfig.webhookUrl,
256
+ validated: updatedConfig.validated,
257
+ validatedAt: updatedConfig.validatedAt,
258
+ active: updatedConfig.active,
259
+ defaultSettings: updatedConfig.defaultSettings,
260
+ hasApiKey: !!updatedConfig.encryptedApiKey,
261
+ updatedAt: updatedConfig.updatedAt,
262
+ };
263
+ return res.status(StatusCodes.OK).json({
264
+ message: 'Provider configuration updated successfully',
265
+ data: safeConfig,
266
+ });
267
+ }
268
+ catch (error) {
269
+ const status = error?.message.includes('not found')
270
+ ? StatusCodes.NOT_FOUND
271
+ : StatusCodes.BAD_REQUEST;
272
+ return res.status(status).json({
273
+ error: `Configuration update failed: ${error?.message || error}`,
274
+ });
275
+ }
276
+ }
277
+ /**
278
+ * @openapi
279
+ * /providers/{providerId}/test:
280
+ * post:
281
+ * tags: [Providers]
282
+ * summary: Test connection to a provider
283
+ * parameters:
284
+ * - name: providerId
285
+ * in: path
286
+ * required: true
287
+ * schema:
288
+ * type: string
289
+ * responses:
290
+ * 200:
291
+ * description: Connection test completed
292
+ * 400:
293
+ * description: Connection test failed
294
+ * 404:
295
+ * description: Provider configuration not found
296
+ */
297
+ async testConnection(req, res) {
298
+ try {
299
+ const customer = res.locals.customer;
300
+ const { providerId } = req.params;
301
+ const result = await ProviderService.instance.testConnection(customer.customerId, providerId);
302
+ const statusCode = result.success ? StatusCodes.OK : StatusCodes.BAD_REQUEST;
303
+ return res.status(statusCode).json({
304
+ providerId,
305
+ success: result.success,
306
+ message: result.message,
307
+ testedAt: new Date().toISOString(),
308
+ });
309
+ }
310
+ catch (error) {
311
+ return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({
312
+ error: `Connection test failed: ${error?.message || error}`,
313
+ });
314
+ }
315
+ }
316
+ /**
317
+ * @openapi
318
+ * /providers/{providerId}:
319
+ * delete:
320
+ * tags: [Providers]
321
+ * summary: Remove provider configuration
322
+ * parameters:
323
+ * - name: providerId
324
+ * in: path
325
+ * required: true
326
+ * schema:
327
+ * type: string
328
+ * responses:
329
+ * 200:
330
+ * description: Configuration removed successfully
331
+ */
332
+ async removeProvider(req, res) {
333
+ try {
334
+ const customer = res.locals.customer;
335
+ const { providerId } = req.params;
336
+ await ProviderService.instance.deleteConfiguration(customer.customerId, providerId);
337
+ return res.status(StatusCodes.OK).json({
338
+ message: `Provider ${providerId} configuration removed successfully`,
339
+ });
340
+ }
341
+ catch (error) {
342
+ return res.status(StatusCodes.INTERNAL_SERVER_ERROR).json({
343
+ error: `Internal error: ${error?.message || error}`,
344
+ });
345
+ }
346
+ }
347
+ }
348
+ //# sourceMappingURL=providers.controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"providers.controller.js","sourceRoot":"","sources":["../../../src/controllers/api/providers.controller.ts"],"names":[],"mappings":"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"}
@@ -27,10 +27,10 @@ export class CreateDIDDocumentServiceValidator {
27
27
  error: `service.serviceEndpoint is required in object ${service}`,
28
28
  };
29
29
  }
30
- if (!Array.isArray(service.serviceEndpoint)) {
30
+ if (!Array.isArray(service.serviceEndpoint) || typeof service.serviceEndpoint === 'string') {
31
31
  return {
32
32
  valid: false,
33
- error: `service.serviceEndpoint should be an array in object ${service}`,
33
+ error: `service.serviceEndpoint should be an array or a string in object ${service}`,
34
34
  };
35
35
  }
36
36
  // Optional fields validation
@@ -1 +1 @@
1
- {"version":3,"file":"service-create-request.js","sourceRoot":"","sources":["../../../src/controllers/validator/service-create-request.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AAGtD,+FAA+F;AAC/F,MAAM,OAAO,iCAAiC;IAC7C,OAAO,CAAW;IAElB,YAAY,OAAkB;QAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,YAAY,CAAC,OAAyB;QACrC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACzB,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,oCAAoC,OAAO,EAAE;aACpD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,sCAAsC,OAAO,EAAE;aACtD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;YAC9B,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,iDAAiD,OAAO,EAAE;aACjE,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAC7C,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,wDAAwD,OAAO,EAAE;aACxE,CAAC;QACH,CAAC;QACD,6BAA6B;QAC7B,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YACtG,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,8DAA8D,OAAO,EAAE,EAAE,CAAC;QACzG,CAAC;QAED,IACC,OAAO,CAAC,MAAM,KAAK,SAAS;YAC5B,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,EAC5F,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,0DAA0D,OAAO,EAAE,EAAE,CAAC;QACrG,CAAC;QAED,IACC,OAAO,CAAC,WAAW,KAAK,SAAS;YACjC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,EACpG,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,+DAA+D,OAAO,EAAE,EAAE,CAAC;QAC1G,CAAC;QAED,IACC,OAAO,CAAC,aAAa,KAAK,SAAS;YACnC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,EACxG,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iEAAiE,OAAO,EAAE,EAAE,CAAC;QAC5G,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,QAAQ,CAAC,QAAqB;QAC7B,QAAQ,GAAG,QAA8B,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9B,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,yDAAyD;aAChE,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,8DAA8D;aACrE,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO;gBACN,KAAK,EAAE,KAAK;gBACZ,KAAK,EACJ,wDAAwD,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aAClG,CAAC;QACH,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;CACD"}
1
+ {"version":3,"file":"service-create-request.js","sourceRoot":"","sources":["../../../src/controllers/validator/service-create-request.ts"],"names":[],"mappings":"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"}
@@ -32,10 +32,10 @@ export class ServiceValidator {
32
32
  error: 'service.serviceEndpoint is required',
33
33
  };
34
34
  }
35
- if (!Array.isArray(service.serviceEndpoint)) {
35
+ if (!Array.isArray(service.serviceEndpoint) || typeof service.serviceEndpoint === 'string') {
36
36
  return {
37
37
  valid: false,
38
- error: 'service.serviceEndpoint should be an array',
38
+ error: 'service.serviceEndpoint should be an array or a string',
39
39
  };
40
40
  }
41
41
  // Optional fields validation
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/controllers/validator/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/controllers/validator/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ export declare class CredentialProviderEntity {
2
+ providerId: string;
3
+ name: string;
4
+ description?: string;
5
+ providerType: string;
6
+ supportedFormats: string[];
7
+ supportedProtocols: string[];
8
+ metadata?: any;
9
+ deprecated: boolean;
10
+ createdAt: Date;
11
+ updatedAt?: Date;
12
+ setCreatedAt(): void;
13
+ setUpdateAt(): void;
14
+ constructor(providerId: string, name: string, providerType: string, supportedFormats?: string[], supportedProtocols?: string[], description?: string, metadata?: any);
15
+ }
16
+ //# sourceMappingURL=credential-provider.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credential-provider.entity.d.ts","sourceRoot":"","sources":["../../../src/database/entities/credential-provider.entity.ts"],"names":[],"mappings":"AAKA,qBACa,wBAAwB;IAKpC,UAAU,EAAG,MAAM,CAAC;IAMpB,IAAI,EAAG,MAAM,CAAC;IAMd,WAAW,CAAC,EAAE,MAAM,CAAC;IAMrB,YAAY,EAAG,MAAM,CAAC;IAOtB,gBAAgB,EAAG,MAAM,EAAE,CAAC;IAO5B,kBAAkB,EAAG,MAAM,EAAE,CAAC;IAM9B,QAAQ,CAAC,EAAE,GAAG,CAAC;IAMf,UAAU,EAAG,OAAO,CAAC;IAMrB,SAAS,EAAG,IAAI,CAAC;IAMjB,SAAS,CAAC,EAAE,IAAI,CAAC;IAGjB,YAAY;IAKZ,WAAW;gBAKV,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,gBAAgB,GAAE,MAAM,EAAO,EAC/B,kBAAkB,GAAE,MAAM,EAAO,EACjC,WAAW,CAAC,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,GAAG;CAUf"}
@@ -0,0 +1,109 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { BeforeInsert, BeforeUpdate, Column, Entity } from 'typeorm';
8
+ import * as dotenv from 'dotenv';
9
+ dotenv.config();
10
+ let CredentialProviderEntity = class CredentialProviderEntity {
11
+ providerId;
12
+ name;
13
+ description;
14
+ providerType; // 'credential-all', 'credential-issuance', 'credential-verification', 'etc'
15
+ supportedFormats;
16
+ supportedProtocols;
17
+ metadata;
18
+ deprecated;
19
+ createdAt;
20
+ updatedAt;
21
+ setCreatedAt() {
22
+ this.createdAt = new Date();
23
+ }
24
+ setUpdateAt() {
25
+ this.updatedAt = new Date();
26
+ }
27
+ constructor(providerId, name, providerType, supportedFormats = [], supportedProtocols = [], description, metadata) {
28
+ this.providerId = providerId;
29
+ this.name = name;
30
+ this.providerType = providerType;
31
+ this.supportedFormats = supportedFormats;
32
+ this.supportedProtocols = supportedProtocols;
33
+ this.description = description;
34
+ this.metadata = metadata;
35
+ }
36
+ };
37
+ __decorate([
38
+ Column({
39
+ type: 'varchar',
40
+ primary: true,
41
+ })
42
+ ], CredentialProviderEntity.prototype, "providerId", void 0);
43
+ __decorate([
44
+ Column({
45
+ type: 'varchar',
46
+ nullable: false,
47
+ })
48
+ ], CredentialProviderEntity.prototype, "name", void 0);
49
+ __decorate([
50
+ Column({
51
+ type: 'text',
52
+ nullable: true,
53
+ })
54
+ ], CredentialProviderEntity.prototype, "description", void 0);
55
+ __decorate([
56
+ Column({
57
+ type: 'varchar',
58
+ nullable: false,
59
+ })
60
+ ], CredentialProviderEntity.prototype, "providerType", void 0);
61
+ __decorate([
62
+ Column({
63
+ type: 'json',
64
+ nullable: false,
65
+ default: '[]',
66
+ })
67
+ ], CredentialProviderEntity.prototype, "supportedFormats", void 0);
68
+ __decorate([
69
+ Column({
70
+ type: 'json',
71
+ nullable: false,
72
+ default: '[]',
73
+ })
74
+ ], CredentialProviderEntity.prototype, "supportedProtocols", void 0);
75
+ __decorate([
76
+ Column({
77
+ type: 'json',
78
+ nullable: false,
79
+ })
80
+ ], CredentialProviderEntity.prototype, "metadata", void 0);
81
+ __decorate([
82
+ Column({
83
+ type: 'boolean',
84
+ default: false,
85
+ })
86
+ ], CredentialProviderEntity.prototype, "deprecated", void 0);
87
+ __decorate([
88
+ Column({
89
+ type: 'timestamptz',
90
+ nullable: false,
91
+ })
92
+ ], CredentialProviderEntity.prototype, "createdAt", void 0);
93
+ __decorate([
94
+ Column({
95
+ type: 'timestamptz',
96
+ nullable: true,
97
+ })
98
+ ], CredentialProviderEntity.prototype, "updatedAt", void 0);
99
+ __decorate([
100
+ BeforeInsert()
101
+ ], CredentialProviderEntity.prototype, "setCreatedAt", null);
102
+ __decorate([
103
+ BeforeUpdate()
104
+ ], CredentialProviderEntity.prototype, "setUpdateAt", null);
105
+ CredentialProviderEntity = __decorate([
106
+ Entity('credentialProvider')
107
+ ], CredentialProviderEntity);
108
+ export { CredentialProviderEntity };
109
+ //# sourceMappingURL=credential-provider.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credential-provider.entity.js","sourceRoot":"","sources":["../../../src/database/entities/credential-provider.entity.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,MAAM,CAAC,MAAM,EAAE,CAAC;AAGT,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAKpC,UAAU,CAAU;IAMpB,IAAI,CAAU;IAMd,WAAW,CAAU;IAMrB,YAAY,CAAU,CAAC,4EAA4E;IAOnG,gBAAgB,CAAY;IAO5B,kBAAkB,CAAY;IAM9B,QAAQ,CAAO;IAMf,UAAU,CAAW;IAMrB,SAAS,CAAQ;IAMjB,SAAS,CAAQ;IAGjB,YAAY;QACX,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,CAAC;IAGD,WAAW;QACV,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC7B,CAAC;IAED,YACC,UAAkB,EAClB,IAAY,EACZ,YAAoB,EACpB,mBAA6B,EAAE,EAC/B,qBAA+B,EAAE,EACjC,WAAoB,EACpB,QAAc;QAEd,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;CACD,CAAA;AArFA;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,IAAI;KACb,CAAC;4DACkB;AAMpB;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK;KACf,CAAC;sDACY;AAMd;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACd,CAAC;6DACmB;AAMrB;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,KAAK;KACf,CAAC;8DACoB;AAOtB;IALC,MAAM,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI;KACb,CAAC;kEAC0B;AAO5B;IALC,MAAM,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,IAAI;KACb,CAAC;oEAC4B;AAM9B;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;KACf,CAAC;0DACa;AAMf;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;KACd,CAAC;4DACmB;AAMrB;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,KAAK;KACf,CAAC;2DACe;AAMjB;IAJC,MAAM,CAAC;QACP,IAAI,EAAE,aAAa;QACnB,QAAQ,EAAE,IAAI;KACd,CAAC;2DACe;AAGjB;IADC,YAAY,EAAE;4DAGd;AAGD;IADC,YAAY,EAAE;2DAGd;AAvEW,wBAAwB;IADpC,MAAM,CAAC,oBAAoB,CAAC;GAChB,wBAAwB,CA0FpC"}
@@ -0,0 +1,23 @@
1
+ import { CustomerEntity } from './customer.entity.js';
2
+ import { CredentialProviderEntity } from './credential-provider.entity.js';
3
+ export declare class ProviderConfigurationEntity {
4
+ configId: string;
5
+ providerId: string;
6
+ tenantId: string;
7
+ encryptedApiKey: string;
8
+ apiEndpoint: string;
9
+ webhookUrl?: string;
10
+ validated: boolean;
11
+ validatedAt?: Date;
12
+ active: boolean;
13
+ defaultSettings?: any;
14
+ deprecated: boolean;
15
+ createdAt: Date;
16
+ updatedAt?: Date;
17
+ customer: CustomerEntity;
18
+ provider: CredentialProviderEntity;
19
+ setCreatedAt(): void;
20
+ setUpdateAt(): void;
21
+ constructor(providerId: string, tenantId: string, encryptedApiKey: string, apiEndpoint: string, customer: CustomerEntity, provider: CredentialProviderEntity, webhookUrl?: string, defaultSettings?: any);
22
+ }
23
+ //# sourceMappingURL=provider-configuration.entity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider-configuration.entity.d.ts","sourceRoot":"","sources":["../../../src/database/entities/provider-configuration.entity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAK3E,qBACa,2BAA2B;IAEvC,QAAQ,EAAG,MAAM,CAAC;IAMlB,UAAU,EAAG,MAAM,CAAC;IAMpB,QAAQ,EAAG,MAAM,CAAC;IAMlB,eAAe,EAAG,MAAM,CAAC;IAMzB,WAAW,EAAG,MAAM,CAAC;IAMrB,UAAU,CAAC,EAAE,MAAM,CAAC;IAMpB,SAAS,EAAG,OAAO,CAAC;IAMpB,WAAW,CAAC,EAAE,IAAI,CAAC;IAMnB,MAAM,EAAG,OAAO,CAAC;IAMjB,eAAe,CAAC,EAAE,GAAG,CAAC;IAMtB,UAAU,EAAG,OAAO,CAAC;IAMrB,SAAS,EAAG,IAAI,CAAC;IAMjB,SAAS,CAAC,EAAE,IAAI,CAAC;IAIjB,QAAQ,EAAG,cAAc,CAAC;IAI1B,QAAQ,EAAG,wBAAwB,CAAC;IAGpC,YAAY;IAKZ,WAAW;gBAKV,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,cAAc,EACxB,QAAQ,EAAE,wBAAwB,EAClC,UAAU,CAAC,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,GAAG;CAWtB"}