@friggframework/core 2.0.0-next.66 → 2.0.0-next.68
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.
- package/generated/prisma-mongodb/edge.js +4 -3
- package/generated/prisma-mongodb/index-browser.js +1 -0
- package/generated/prisma-mongodb/index.d.ts +53 -1
- package/generated/prisma-mongodb/index.js +4 -3
- package/generated/prisma-mongodb/package.json +1 -1
- package/generated/prisma-mongodb/schema.prisma +2 -0
- package/generated/prisma-mongodb/wasm.js +4 -3
- package/generated/prisma-postgresql/edge.js +4 -3
- package/generated/prisma-postgresql/index-browser.js +1 -0
- package/generated/prisma-postgresql/index.d.ts +55 -1
- package/generated/prisma-postgresql/index.js +4 -3
- package/generated/prisma-postgresql/package.json +1 -1
- package/generated/prisma-postgresql/schema.prisma +2 -0
- package/generated/prisma-postgresql/wasm.js +4 -3
- package/modules/repositories/module-repository-documentdb.js +52 -24
- package/modules/repositories/module-repository-mongo.js +62 -31
- package/modules/repositories/module-repository-postgres.js +64 -37
- package/modules/repositories/module-repository.js +58 -29
- package/package.json +5 -5
- package/prisma-mongodb/schema.prisma +2 -0
- package/prisma-postgresql/schema.prisma +2 -0
|
@@ -101,47 +101,74 @@ class ModuleRepositoryDocumentDB extends ModuleRepositoryInterface {
|
|
|
101
101
|
}
|
|
102
102
|
|
|
103
103
|
async createEntity(entityData) {
|
|
104
|
+
const {
|
|
105
|
+
user,
|
|
106
|
+
userId,
|
|
107
|
+
credential,
|
|
108
|
+
credentialId,
|
|
109
|
+
name,
|
|
110
|
+
moduleName,
|
|
111
|
+
externalId,
|
|
112
|
+
...dynamicData
|
|
113
|
+
} = entityData;
|
|
114
|
+
|
|
104
115
|
const document = {
|
|
105
|
-
userId: toObjectId(
|
|
106
|
-
credentialId: toObjectId(
|
|
107
|
-
name:
|
|
108
|
-
moduleName:
|
|
109
|
-
externalId:
|
|
110
|
-
|
|
116
|
+
userId: toObjectId(userId || user),
|
|
117
|
+
credentialId: toObjectId(credentialId || credential) || null,
|
|
118
|
+
name: name ?? null,
|
|
119
|
+
moduleName: moduleName ?? null,
|
|
120
|
+
externalId: externalId ?? null,
|
|
121
|
+
data: dynamicData,
|
|
111
122
|
};
|
|
112
123
|
const insertedId = await insertOne(this.prisma, 'Entity', document);
|
|
113
124
|
const created = await findOne(this.prisma, 'Entity', { _id: insertedId });
|
|
114
|
-
const
|
|
115
|
-
return this._mapEntity(created,
|
|
125
|
+
const credentialObj = await this._fetchCredential(created?.credentialId);
|
|
126
|
+
return this._mapEntity(created, credentialObj);
|
|
116
127
|
}
|
|
117
128
|
|
|
118
129
|
async updateEntity(entityId, updates) {
|
|
119
130
|
const objectId = toObjectId(entityId);
|
|
120
131
|
if (!objectId) return null;
|
|
132
|
+
|
|
133
|
+
const existing = await findOne(this.prisma, 'Entity', { _id: objectId });
|
|
134
|
+
if (!existing) return null;
|
|
135
|
+
|
|
136
|
+
const {
|
|
137
|
+
user,
|
|
138
|
+
userId,
|
|
139
|
+
credential,
|
|
140
|
+
credentialId,
|
|
141
|
+
name,
|
|
142
|
+
moduleName,
|
|
143
|
+
externalId,
|
|
144
|
+
...dynamicData
|
|
145
|
+
} = updates;
|
|
146
|
+
|
|
121
147
|
const updatePayload = {};
|
|
122
|
-
if (
|
|
123
|
-
|
|
124
|
-
|
|
148
|
+
if (user !== undefined || userId !== undefined) {
|
|
149
|
+
updatePayload.userId = toObjectId(userId || user) || null;
|
|
150
|
+
}
|
|
151
|
+
if (credential !== undefined || credentialId !== undefined) {
|
|
152
|
+
updatePayload.credentialId = toObjectId(credentialId || credential) || null;
|
|
125
153
|
}
|
|
126
|
-
if (
|
|
127
|
-
|
|
128
|
-
|
|
154
|
+
if (name !== undefined) updatePayload.name = name;
|
|
155
|
+
if (moduleName !== undefined) updatePayload.moduleName = moduleName;
|
|
156
|
+
if (externalId !== undefined) updatePayload.externalId = externalId;
|
|
157
|
+
|
|
158
|
+
if (Object.keys(dynamicData).length > 0) {
|
|
159
|
+
updatePayload.data = { ...(existing.data || {}), ...dynamicData };
|
|
129
160
|
}
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
if (updates.externalId !== undefined) updatePayload.externalId = updates.externalId;
|
|
133
|
-
if (updates.accountId !== undefined) updatePayload.accountId = updates.accountId;
|
|
134
|
-
const result = await updateOne(
|
|
161
|
+
|
|
162
|
+
await updateOne(
|
|
135
163
|
this.prisma,
|
|
136
164
|
'Entity',
|
|
137
165
|
{ _id: objectId },
|
|
138
166
|
{ $set: updatePayload }
|
|
139
167
|
);
|
|
140
|
-
const modified = result?.nModified ?? result?.n ?? 0;
|
|
141
|
-
if (modified === 0) return null;
|
|
142
168
|
const updated = await findOne(this.prisma, 'Entity', { _id: objectId });
|
|
143
|
-
|
|
144
|
-
|
|
169
|
+
if (!updated) return null;
|
|
170
|
+
const credentialObj = await this._fetchCredential(updated?.credentialId);
|
|
171
|
+
return this._mapEntity(updated, credentialObj);
|
|
145
172
|
}
|
|
146
173
|
|
|
147
174
|
async deleteEntity(entityId) {
|
|
@@ -291,14 +318,15 @@ class ModuleRepositoryDocumentDB extends ModuleRepositoryInterface {
|
|
|
291
318
|
}
|
|
292
319
|
|
|
293
320
|
_mapEntity(doc, credential) {
|
|
321
|
+
const dynamicData = doc?.data || {};
|
|
294
322
|
return {
|
|
295
323
|
id: fromObjectId(doc?._id),
|
|
296
|
-
accountId: doc?.accountId ?? null,
|
|
297
324
|
credential,
|
|
298
325
|
userId: fromObjectId(doc?.userId),
|
|
299
326
|
name: doc?.name ?? null,
|
|
300
327
|
externalId: doc?.externalId ?? null,
|
|
301
328
|
moduleName: doc?.moduleName ?? null,
|
|
329
|
+
...dynamicData,
|
|
302
330
|
};
|
|
303
331
|
}
|
|
304
332
|
}
|
|
@@ -97,12 +97,12 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
97
97
|
|
|
98
98
|
return {
|
|
99
99
|
id: entity.id,
|
|
100
|
-
accountId: entity.accountId,
|
|
101
100
|
credential,
|
|
102
101
|
userId: entity.userId,
|
|
103
102
|
name: entity.name,
|
|
104
103
|
externalId: entity.externalId,
|
|
105
104
|
moduleName: entity.moduleName,
|
|
105
|
+
...(entity.data || {}),
|
|
106
106
|
};
|
|
107
107
|
}
|
|
108
108
|
|
|
@@ -123,12 +123,12 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
123
123
|
|
|
124
124
|
return entities.map((e) => ({
|
|
125
125
|
id: e.id,
|
|
126
|
-
accountId: e.accountId,
|
|
127
126
|
credential: credentialMap.get(e.credentialId) || null,
|
|
128
127
|
userId: e.userId,
|
|
129
128
|
name: e.name,
|
|
130
129
|
externalId: e.externalId,
|
|
131
130
|
moduleName: e.moduleName,
|
|
131
|
+
...(e.data || {}),
|
|
132
132
|
}));
|
|
133
133
|
}
|
|
134
134
|
|
|
@@ -149,12 +149,12 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
149
149
|
|
|
150
150
|
return entities.map((e) => ({
|
|
151
151
|
id: e.id,
|
|
152
|
-
accountId: e.accountId,
|
|
153
152
|
credential: credentialMap.get(e.credentialId) || null,
|
|
154
153
|
userId: e.userId,
|
|
155
154
|
name: e.name,
|
|
156
155
|
externalId: e.externalId,
|
|
157
156
|
moduleName: e.moduleName,
|
|
157
|
+
...(e.data || {}),
|
|
158
158
|
}));
|
|
159
159
|
}
|
|
160
160
|
|
|
@@ -179,12 +179,12 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
179
179
|
|
|
180
180
|
return entities.map((e) => ({
|
|
181
181
|
id: e.id,
|
|
182
|
-
accountId: e.accountId,
|
|
183
182
|
credential: credentialMap.get(e.credentialId) || null,
|
|
184
183
|
userId: e.userId,
|
|
185
184
|
name: e.name,
|
|
186
185
|
externalId: e.externalId,
|
|
187
186
|
moduleName: e.moduleName,
|
|
187
|
+
...(e.data || {}),
|
|
188
188
|
}));
|
|
189
189
|
}
|
|
190
190
|
|
|
@@ -225,12 +225,12 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
225
225
|
|
|
226
226
|
return {
|
|
227
227
|
id: entity.id,
|
|
228
|
-
accountId: entity.accountId,
|
|
229
228
|
credential,
|
|
230
229
|
userId: entity.userId,
|
|
231
230
|
name: entity.name,
|
|
232
231
|
externalId: entity.externalId,
|
|
233
232
|
moduleName: entity.moduleName,
|
|
233
|
+
...(entity.data || {}),
|
|
234
234
|
};
|
|
235
235
|
}
|
|
236
236
|
|
|
@@ -242,29 +242,40 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
242
242
|
* @returns {Promise<Object>} Created entity object with string IDs
|
|
243
243
|
*/
|
|
244
244
|
async createEntity(entityData) {
|
|
245
|
+
const {
|
|
246
|
+
user,
|
|
247
|
+
userId,
|
|
248
|
+
credential,
|
|
249
|
+
credentialId,
|
|
250
|
+
name,
|
|
251
|
+
moduleName,
|
|
252
|
+
externalId,
|
|
253
|
+
...dynamicData
|
|
254
|
+
} = entityData;
|
|
255
|
+
|
|
245
256
|
const data = {
|
|
246
|
-
userId:
|
|
247
|
-
credentialId:
|
|
248
|
-
name
|
|
249
|
-
moduleName
|
|
250
|
-
externalId
|
|
251
|
-
|
|
257
|
+
userId: userId || user,
|
|
258
|
+
credentialId: credentialId || credential,
|
|
259
|
+
name,
|
|
260
|
+
moduleName,
|
|
261
|
+
externalId,
|
|
262
|
+
data: dynamicData,
|
|
252
263
|
};
|
|
253
264
|
|
|
254
265
|
const entity = await this.prisma.entity.create({
|
|
255
266
|
data,
|
|
256
267
|
});
|
|
257
268
|
|
|
258
|
-
const
|
|
269
|
+
const credentialObj = await this._fetchCredential(entity.credentialId);
|
|
259
270
|
|
|
260
271
|
return {
|
|
261
272
|
id: entity.id,
|
|
262
|
-
|
|
263
|
-
credential,
|
|
273
|
+
credential: credentialObj,
|
|
264
274
|
userId: entity.userId,
|
|
265
275
|
name: entity.name,
|
|
266
276
|
externalId: entity.externalId,
|
|
267
277
|
moduleName: entity.moduleName,
|
|
278
|
+
...(entity.data || {}),
|
|
268
279
|
};
|
|
269
280
|
}
|
|
270
281
|
|
|
@@ -277,36 +288,56 @@ class ModuleRepositoryMongo extends ModuleRepositoryInterface {
|
|
|
277
288
|
* @returns {Promise<Object|null>} Updated entity object with string IDs or null if not found
|
|
278
289
|
*/
|
|
279
290
|
async updateEntity(entityId, updates) {
|
|
280
|
-
const
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
291
|
+
const existing = await this.prisma.entity.findUnique({
|
|
292
|
+
where: { id: entityId },
|
|
293
|
+
});
|
|
294
|
+
|
|
295
|
+
if (!existing) {
|
|
296
|
+
return null;
|
|
297
|
+
}
|
|
298
|
+
|
|
299
|
+
const {
|
|
300
|
+
user,
|
|
301
|
+
userId,
|
|
302
|
+
credential,
|
|
303
|
+
credentialId,
|
|
304
|
+
name,
|
|
305
|
+
moduleName,
|
|
306
|
+
externalId,
|
|
307
|
+
...dynamicData
|
|
308
|
+
} = updates;
|
|
309
|
+
|
|
310
|
+
const schemaUpdates = {};
|
|
311
|
+
if (user !== undefined || userId !== undefined) {
|
|
312
|
+
schemaUpdates.userId = userId || user;
|
|
313
|
+
}
|
|
314
|
+
if (credential !== undefined || credentialId !== undefined) {
|
|
315
|
+
schemaUpdates.credentialId = credentialId || credential;
|
|
316
|
+
}
|
|
317
|
+
if (name !== undefined) schemaUpdates.name = name;
|
|
318
|
+
if (moduleName !== undefined) schemaUpdates.moduleName = moduleName;
|
|
319
|
+
if (externalId !== undefined) schemaUpdates.externalId = externalId;
|
|
320
|
+
|
|
321
|
+
if (Object.keys(dynamicData).length > 0) {
|
|
322
|
+
schemaUpdates.data = { ...(existing.data || {}), ...dynamicData };
|
|
323
|
+
}
|
|
293
324
|
|
|
294
325
|
try {
|
|
295
326
|
const entity = await this.prisma.entity.update({
|
|
296
327
|
where: { id: entityId },
|
|
297
|
-
data,
|
|
328
|
+
data: schemaUpdates,
|
|
298
329
|
});
|
|
299
330
|
|
|
300
|
-
const
|
|
331
|
+
const credentialObj = await this._fetchCredential(entity.credentialId);
|
|
301
332
|
|
|
302
333
|
return {
|
|
303
334
|
id: entity.id,
|
|
304
|
-
|
|
305
|
-
credential,
|
|
335
|
+
credential: credentialObj,
|
|
306
336
|
userId: entity.userId,
|
|
307
337
|
name: entity.name,
|
|
308
338
|
externalId: entity.externalId,
|
|
309
339
|
moduleName: entity.moduleName,
|
|
340
|
+
...(entity.data || {}),
|
|
310
341
|
};
|
|
311
342
|
} catch (error) {
|
|
312
343
|
if (error.code === 'P2025') {
|
|
@@ -131,12 +131,12 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
131
131
|
|
|
132
132
|
return {
|
|
133
133
|
id: entity.id.toString(),
|
|
134
|
-
accountId: entity.accountId,
|
|
135
134
|
credential,
|
|
136
135
|
userId: entity.userId?.toString(),
|
|
137
136
|
name: entity.name,
|
|
138
137
|
externalId: entity.externalId,
|
|
139
138
|
moduleName: entity.moduleName,
|
|
139
|
+
...(entity.data || {}),
|
|
140
140
|
};
|
|
141
141
|
}
|
|
142
142
|
|
|
@@ -159,12 +159,12 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
159
159
|
|
|
160
160
|
return entities.map((e) => ({
|
|
161
161
|
id: e.id.toString(),
|
|
162
|
-
accountId: e.accountId,
|
|
163
162
|
credential: credentialMap.get(e.credentialId) || null,
|
|
164
163
|
userId: e.userId?.toString(),
|
|
165
164
|
name: e.name,
|
|
166
165
|
externalId: e.externalId,
|
|
167
166
|
moduleName: e.moduleName,
|
|
167
|
+
...(e.data || {}),
|
|
168
168
|
}));
|
|
169
169
|
}
|
|
170
170
|
|
|
@@ -187,12 +187,12 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
187
187
|
|
|
188
188
|
return entities.map((e) => ({
|
|
189
189
|
id: e.id.toString(),
|
|
190
|
-
accountId: e.accountId,
|
|
191
190
|
credential: credentialMap.get(e.credentialId) || null,
|
|
192
191
|
userId: e.userId?.toString(),
|
|
193
192
|
name: e.name,
|
|
194
193
|
externalId: e.externalId,
|
|
195
194
|
moduleName: e.moduleName,
|
|
195
|
+
...(e.data || {}),
|
|
196
196
|
}));
|
|
197
197
|
}
|
|
198
198
|
|
|
@@ -219,12 +219,12 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
219
219
|
|
|
220
220
|
return entities.map((e) => ({
|
|
221
221
|
id: e.id.toString(),
|
|
222
|
-
accountId: e.accountId,
|
|
223
222
|
credential: credentialMap.get(e.credentialId) || null,
|
|
224
223
|
userId: e.userId?.toString(),
|
|
225
224
|
name: e.name,
|
|
226
225
|
externalId: e.externalId,
|
|
227
226
|
moduleName: e.moduleName,
|
|
227
|
+
...(e.data || {}),
|
|
228
228
|
}));
|
|
229
229
|
}
|
|
230
230
|
|
|
@@ -266,12 +266,12 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
266
266
|
|
|
267
267
|
return {
|
|
268
268
|
id: entity.id.toString(),
|
|
269
|
-
accountId: entity.accountId,
|
|
270
269
|
credential,
|
|
271
270
|
userId: entity.userId?.toString(),
|
|
272
271
|
name: entity.name,
|
|
273
272
|
externalId: entity.externalId,
|
|
274
273
|
moduleName: entity.moduleName,
|
|
274
|
+
...(entity.data || {}),
|
|
275
275
|
};
|
|
276
276
|
}
|
|
277
277
|
|
|
@@ -283,31 +283,40 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
283
283
|
* @returns {Promise<Object>} Created entity object with string IDs
|
|
284
284
|
*/
|
|
285
285
|
async createEntity(entityData) {
|
|
286
|
+
const {
|
|
287
|
+
user,
|
|
288
|
+
userId,
|
|
289
|
+
credential,
|
|
290
|
+
credentialId,
|
|
291
|
+
name,
|
|
292
|
+
moduleName,
|
|
293
|
+
externalId,
|
|
294
|
+
...dynamicData
|
|
295
|
+
} = entityData;
|
|
296
|
+
|
|
286
297
|
const data = {
|
|
287
|
-
userId: this._convertId(
|
|
288
|
-
credentialId: this._convertId(
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
externalId: entityData.externalId,
|
|
294
|
-
accountId: entityData.accountId,
|
|
298
|
+
userId: this._convertId(userId || user),
|
|
299
|
+
credentialId: this._convertId(credentialId || credential),
|
|
300
|
+
name,
|
|
301
|
+
moduleName,
|
|
302
|
+
externalId,
|
|
303
|
+
data: dynamicData,
|
|
295
304
|
};
|
|
296
305
|
|
|
297
306
|
const entity = await this.prisma.entity.create({
|
|
298
307
|
data,
|
|
299
308
|
});
|
|
300
309
|
|
|
301
|
-
const
|
|
310
|
+
const credentialObj = await this._fetchCredential(entity.credentialId);
|
|
302
311
|
|
|
303
312
|
return {
|
|
304
313
|
id: entity.id.toString(),
|
|
305
|
-
|
|
306
|
-
credential,
|
|
314
|
+
credential: credentialObj,
|
|
307
315
|
userId: entity.userId?.toString(),
|
|
308
316
|
name: entity.name,
|
|
309
317
|
externalId: entity.externalId,
|
|
310
318
|
moduleName: entity.moduleName,
|
|
319
|
+
...(entity.data || {}),
|
|
311
320
|
};
|
|
312
321
|
}
|
|
313
322
|
|
|
@@ -320,40 +329,58 @@ class ModuleRepositoryPostgres extends ModuleRepositoryInterface {
|
|
|
320
329
|
* @returns {Promise<Object|null>} Updated entity object with string IDs or null if not found
|
|
321
330
|
*/
|
|
322
331
|
async updateEntity(entityId, updates) {
|
|
323
|
-
const
|
|
324
|
-
if (updates.user !== undefined)
|
|
325
|
-
data.userId = this._convertId(updates.user);
|
|
326
|
-
if (updates.userId !== undefined)
|
|
327
|
-
data.userId = this._convertId(updates.userId);
|
|
328
|
-
if (updates.credential !== undefined)
|
|
329
|
-
data.credentialId = this._convertId(updates.credential);
|
|
330
|
-
if (updates.credentialId !== undefined)
|
|
331
|
-
data.credentialId = this._convertId(updates.credentialId);
|
|
332
|
-
if (updates.name !== undefined) data.name = updates.name;
|
|
333
|
-
if (updates.moduleName !== undefined)
|
|
334
|
-
data.moduleName = updates.moduleName;
|
|
335
|
-
if (updates.externalId !== undefined)
|
|
336
|
-
data.externalId = updates.externalId;
|
|
337
|
-
if (updates.accountId !== undefined) data.accountId = updates.accountId;
|
|
332
|
+
const intId = this._convertId(entityId);
|
|
338
333
|
|
|
339
|
-
|
|
340
|
-
|
|
334
|
+
const existing = await this.prisma.entity.findUnique({
|
|
335
|
+
where: { id: intId },
|
|
336
|
+
});
|
|
341
337
|
|
|
338
|
+
if (!existing) {
|
|
339
|
+
return null;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
const {
|
|
343
|
+
user,
|
|
344
|
+
userId,
|
|
345
|
+
credential,
|
|
346
|
+
credentialId,
|
|
347
|
+
name,
|
|
348
|
+
moduleName,
|
|
349
|
+
externalId,
|
|
350
|
+
...dynamicData
|
|
351
|
+
} = updates;
|
|
352
|
+
|
|
353
|
+
const schemaUpdates = {};
|
|
354
|
+
if (user !== undefined || userId !== undefined) {
|
|
355
|
+
schemaUpdates.userId = this._convertId(userId || user);
|
|
356
|
+
}
|
|
357
|
+
if (credential !== undefined || credentialId !== undefined) {
|
|
358
|
+
schemaUpdates.credentialId = this._convertId(credentialId || credential);
|
|
359
|
+
}
|
|
360
|
+
if (name !== undefined) schemaUpdates.name = name;
|
|
361
|
+
if (moduleName !== undefined) schemaUpdates.moduleName = moduleName;
|
|
362
|
+
if (externalId !== undefined) schemaUpdates.externalId = externalId;
|
|
363
|
+
|
|
364
|
+
if (Object.keys(dynamicData).length > 0) {
|
|
365
|
+
schemaUpdates.data = { ...(existing.data || {}), ...dynamicData };
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
try {
|
|
342
369
|
const entity = await this.prisma.entity.update({
|
|
343
370
|
where: { id: intId },
|
|
344
|
-
data,
|
|
371
|
+
data: schemaUpdates,
|
|
345
372
|
});
|
|
346
373
|
|
|
347
|
-
const
|
|
374
|
+
const credentialObj = await this._fetchCredential(entity.credentialId);
|
|
348
375
|
|
|
349
376
|
return {
|
|
350
377
|
id: entity.id.toString(),
|
|
351
|
-
|
|
352
|
-
credential,
|
|
378
|
+
credential: credentialObj,
|
|
353
379
|
userId: entity.userId?.toString(),
|
|
354
380
|
name: entity.name,
|
|
355
381
|
externalId: entity.externalId,
|
|
356
382
|
moduleName: entity.moduleName,
|
|
383
|
+
...(entity.data || {}),
|
|
357
384
|
};
|
|
358
385
|
} catch (error) {
|
|
359
386
|
if (error.code === 'P2025') {
|