@solidxai/core 0.1.10-beta.24 → 0.1.10-beta.26
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/dist/controllers/action-metadata.controller.d.ts +1 -20
- package/dist/controllers/action-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/agent-event.controller.d.ts +1 -20
- package/dist/controllers/agent-event.controller.d.ts.map +1 -1
- package/dist/controllers/agent-session.controller.d.ts +1 -20
- package/dist/controllers/agent-session.controller.d.ts.map +1 -1
- package/dist/controllers/ai-interaction.controller.d.ts +1 -20
- package/dist/controllers/ai-interaction.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message-details.controller.d.ts +1 -20
- package/dist/controllers/chatter-message-details.controller.d.ts.map +1 -1
- package/dist/controllers/chatter-message.controller.d.ts +1 -20
- package/dist/controllers/chatter-message.controller.d.ts.map +1 -1
- package/dist/controllers/dashboard-user-layout.controller.d.ts +1 -20
- package/dist/controllers/dashboard-user-layout.controller.d.ts.map +1 -1
- package/dist/controllers/email-template.controller.d.ts +1 -20
- package/dist/controllers/email-template.controller.d.ts.map +1 -1
- package/dist/controllers/export-template.controller.d.ts +1 -20
- package/dist/controllers/export-template.controller.d.ts.map +1 -1
- package/dist/controllers/export-transaction.controller.d.ts +1 -20
- package/dist/controllers/export-transaction.controller.d.ts.map +1 -1
- package/dist/controllers/import-transaction-error-log.controller.d.ts +1 -20
- package/dist/controllers/import-transaction-error-log.controller.d.ts.map +1 -1
- package/dist/controllers/import-transaction.controller.d.ts +1 -20
- package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
- package/dist/controllers/list-of-values.controller.d.ts +1 -20
- package/dist/controllers/list-of-values.controller.d.ts.map +1 -1
- package/dist/controllers/locale.controller.d.ts +1 -20
- package/dist/controllers/locale.controller.d.ts.map +1 -1
- package/dist/controllers/mcp-audit-log.controller.d.ts +1 -20
- package/dist/controllers/mcp-audit-log.controller.d.ts.map +1 -1
- package/dist/controllers/media.controller.d.ts +1 -20
- package/dist/controllers/media.controller.d.ts.map +1 -1
- package/dist/controllers/menu-item-metadata.controller.d.ts +1 -20
- package/dist/controllers/menu-item-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.d.ts +10 -30
- package/dist/controllers/model-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/model-metadata.controller.js +2 -2
- package/dist/controllers/model-sequence.controller.d.ts +1 -20
- package/dist/controllers/model-sequence.controller.d.ts.map +1 -1
- package/dist/controllers/module-metadata-explorer.controller.d.ts +171 -0
- package/dist/controllers/module-metadata-explorer.controller.d.ts.map +1 -0
- package/dist/controllers/module-metadata-explorer.controller.js +143 -0
- package/dist/controllers/module-metadata-explorer.controller.js.map +1 -0
- package/dist/controllers/module-metadata.controller.d.ts +5 -0
- package/dist/controllers/module-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/module-metadata.controller.js +12 -0
- package/dist/controllers/module-metadata.controller.js.map +1 -1
- package/dist/controllers/module-package.controller.d.ts +622 -0
- package/dist/controllers/module-package.controller.d.ts.map +1 -0
- package/dist/controllers/module-package.controller.js +150 -0
- package/dist/controllers/module-package.controller.js.map +1 -0
- package/dist/controllers/mq-message-queue.controller.d.ts +1 -20
- package/dist/controllers/mq-message-queue.controller.d.ts.map +1 -1
- package/dist/controllers/mq-message.controller.d.ts +1 -20
- package/dist/controllers/mq-message.controller.d.ts.map +1 -1
- package/dist/controllers/permission-metadata.controller.d.ts +1 -20
- package/dist/controllers/permission-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/role-metadata.controller.d.ts +1 -20
- package/dist/controllers/role-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/saved-filters.controller.d.ts +1 -20
- package/dist/controllers/saved-filters.controller.d.ts.map +1 -1
- package/dist/controllers/scheduled-job.controller.d.ts +1 -20
- package/dist/controllers/scheduled-job.controller.d.ts.map +1 -1
- package/dist/controllers/security-rule.controller.d.ts +1 -20
- package/dist/controllers/security-rule.controller.d.ts.map +1 -1
- package/dist/controllers/sms-template.controller.d.ts +1 -20
- package/dist/controllers/sms-template.controller.d.ts.map +1 -1
- package/dist/controllers/user-activity-history.controller.d.ts +1 -20
- package/dist/controllers/user-activity-history.controller.d.ts.map +1 -1
- package/dist/controllers/user-view-metadata.controller.d.ts +1 -20
- package/dist/controllers/user-view-metadata.controller.d.ts.map +1 -1
- package/dist/controllers/user.controller.d.ts +1 -20
- package/dist/controllers/user.controller.d.ts.map +1 -1
- package/dist/controllers/view-metadata.controller.d.ts +1 -20
- package/dist/controllers/view-metadata.controller.d.ts.map +1 -1
- package/dist/dtos/confirm-module-package-import.dto.d.ts +4 -0
- package/dist/dtos/confirm-module-package-import.dto.d.ts.map +1 -0
- package/dist/dtos/confirm-module-package-import.dto.js +34 -0
- package/dist/dtos/confirm-module-package-import.dto.js.map +1 -0
- package/dist/dtos/metadata-explorer-references-query.dto.d.ts +10 -0
- package/dist/dtos/metadata-explorer-references-query.dto.d.ts.map +1 -0
- package/dist/dtos/metadata-explorer-references-query.dto.js +69 -0
- package/dist/dtos/metadata-explorer-references-query.dto.js.map +1 -0
- package/dist/dtos/metadata-explorer-search-query.dto.d.ts +8 -0
- package/dist/dtos/metadata-explorer-search-query.dto.d.ts.map +1 -0
- package/dist/dtos/metadata-explorer-search-query.dto.js +55 -0
- package/dist/dtos/metadata-explorer-search-query.dto.js.map +1 -0
- package/dist/dtos/metadata-explorer-write.dto.d.ts +4 -0
- package/dist/dtos/metadata-explorer-write.dto.d.ts.map +1 -0
- package/dist/dtos/metadata-explorer-write.dto.js +30 -0
- package/dist/dtos/metadata-explorer-write.dto.js.map +1 -0
- package/dist/dtos/run-module-package-build.dto.d.ts +5 -0
- package/dist/dtos/run-module-package-build.dto.d.ts.map +1 -0
- package/dist/dtos/run-module-package-build.dto.js +38 -0
- package/dist/dtos/run-module-package-build.dto.js.map +1 -0
- package/dist/dtos/run-module-package-seed.dto.d.ts +4 -0
- package/dist/dtos/run-module-package-seed.dto.d.ts.map +1 -0
- package/dist/dtos/run-module-package-seed.dto.js +34 -0
- package/dist/dtos/run-module-package-seed.dto.js.map +1 -0
- package/dist/helpers/command.service.js +1 -1
- package/dist/helpers/command.service.js.map +1 -1
- package/dist/helpers/module-metadata-helper.service.d.ts +2 -0
- package/dist/helpers/module-metadata-helper.service.d.ts.map +1 -1
- package/dist/helpers/module-metadata-helper.service.js +14 -12
- package/dist/helpers/module-metadata-helper.service.js.map +1 -1
- package/dist/helpers/module.helper.d.ts.map +1 -1
- package/dist/helpers/module.helper.js +11 -6
- package/dist/helpers/module.helper.js.map +1 -1
- package/dist/helpers/typeorm-migration-helpers.d.ts +12 -0
- package/dist/helpers/typeorm-migration-helpers.d.ts.map +1 -0
- package/dist/helpers/typeorm-migration-helpers.js +119 -0
- package/dist/helpers/typeorm-migration-helpers.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.d.ts +1 -0
- package/dist/seeders/module-metadata-seeder.service.d.ts.map +1 -1
- package/dist/seeders/module-metadata-seeder.service.js +57 -38
- package/dist/seeders/module-metadata-seeder.service.js.map +1 -1
- package/dist/seeders/module-test-data.service.js +1 -1
- package/dist/seeders/module-test-data.service.js.map +1 -1
- package/dist/seeders/seed-data/solid-core-metadata.json +2364 -1106
- package/dist/services/crud-helper.service.d.ts +18 -0
- package/dist/services/crud-helper.service.d.ts.map +1 -1
- package/dist/services/crud-helper.service.js +67 -1
- package/dist/services/crud-helper.service.js.map +1 -1
- package/dist/services/crud.service.d.ts +1 -21
- package/dist/services/crud.service.d.ts.map +1 -1
- package/dist/services/crud.service.js +23 -87
- package/dist/services/crud.service.js.map +1 -1
- package/dist/services/genai/ingest-metadata.service.js +2 -2
- package/dist/services/genai/ingest-metadata.service.js.map +1 -1
- package/dist/services/media.service.d.ts +1 -20
- package/dist/services/media.service.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js +31 -2
- package/dist/services/mediaStorageProviders/file-s3-storage-provider.js.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.d.ts.map +1 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js +5 -1
- package/dist/services/mediaStorageProviders/file-storage-provider.js.map +1 -1
- package/dist/services/model-metadata.service.d.ts +15 -30
- package/dist/services/model-metadata.service.d.ts.map +1 -1
- package/dist/services/model-metadata.service.js +249 -29
- package/dist/services/model-metadata.service.js.map +1 -1
- package/dist/services/module-metadata-explorer.service.d.ts +161 -0
- package/dist/services/module-metadata-explorer.service.d.ts.map +1 -0
- package/dist/services/module-metadata-explorer.service.js +485 -0
- package/dist/services/module-metadata-explorer.service.js.map +1 -0
- package/dist/services/module-metadata.service.d.ts +7 -0
- package/dist/services/module-metadata.service.d.ts.map +1 -1
- package/dist/services/module-metadata.service.js +121 -2
- package/dist/services/module-metadata.service.js.map +1 -1
- package/dist/services/module-package.service.d.ts +266 -0
- package/dist/services/module-package.service.d.ts.map +1 -0
- package/dist/services/module-package.service.js +980 -0
- package/dist/services/module-package.service.js.map +1 -0
- package/dist/services/settings/default-settings-provider.service.d.ts +18 -0
- package/dist/services/settings/default-settings-provider.service.d.ts.map +1 -1
- package/dist/services/settings/default-settings-provider.service.js +10 -0
- package/dist/services/settings/default-settings-provider.service.js.map +1 -1
- package/dist/solid-core.module.d.ts.map +1 -1
- package/dist/solid-core.module.js +10 -2
- package/dist/solid-core.module.js.map +1 -1
- package/dist-tests/api/authenticate.spec.js +119 -0
- package/dist-tests/api/authenticate.spec.js.map +1 -0
- package/dist-tests/api/crud-service.findOne.cityMaster.spec.js +97 -0
- package/dist-tests/api/crud-service.findOne.cityMaster.spec.js.map +1 -0
- package/dist-tests/api/ping.spec.js +21 -0
- package/dist-tests/api/ping.spec.js.map +1 -0
- package/dist-tests/helpers/auth.js +41 -0
- package/dist-tests/helpers/auth.js.map +1 -0
- package/dist-tests/helpers/env.js +11 -0
- package/dist-tests/helpers/env.js.map +1 -0
- package/docs/dashboards/AGENTIC_DASHBOARD_IMPLEMENTATION_PLAN.md +438 -0
- package/docs/dashboards/dashboard-curl-smoke-tests.txt +146 -0
- package/docs/dashboards/delete-legacy-dashboard-metadata.sql +172 -0
- package/docs/grouping-enhancements.md +89 -0
- package/docs/java-spring/README.md +3 -0
- package/docs/java-spring/solid-core-module-deep-dive-report.md +1317 -0
- package/docs/module-package-import-handoff.md +691 -0
- package/docs/seed-changes.md +65 -0
- package/docs/test-data-workflow.md +200 -0
- package/docs/type-declaration-import-issue.md +24 -0
- package/package.json +2 -1
- package/src/controllers/module-metadata-explorer.controller.ts +83 -0
- package/src/controllers/module-metadata.controller.ts +6 -0
- package/src/controllers/module-package.controller.ts +102 -0
- package/src/dtos/confirm-module-package-import.dto.ts +12 -0
- package/src/dtos/metadata-explorer-references-query.dto.ts +39 -0
- package/src/dtos/metadata-explorer-search-query.dto.ts +28 -0
- package/src/dtos/metadata-explorer-write.dto.ts +11 -0
- package/src/dtos/run-module-package-build.dto.ts +14 -0
- package/src/dtos/run-module-package-seed.dto.ts +12 -0
- package/src/helpers/command.service.ts +1 -1
- package/src/helpers/module-metadata-helper.service.ts +19 -21
- package/src/helpers/module.helper.ts +12 -9
- package/src/helpers/typeorm-migration-helpers.ts +163 -0
- package/src/index.ts +8 -0
- package/src/seeders/module-metadata-seeder.service.ts +63 -38
- package/src/seeders/module-test-data.service.ts +1 -1
- package/src/seeders/seed-data/solid-core-metadata.json +2365 -1107
- package/src/services/crud-helper.service.ts +79 -1
- package/src/services/crud.service.ts +26 -119
- package/src/services/dashboard-providers/README.md +1 -1
- package/src/services/genai/ingest-metadata.service.ts +3 -3
- package/src/services/mediaStorageProviders/file-s3-storage-provider.ts +37 -2
- package/src/services/mediaStorageProviders/file-storage-provider.ts +5 -1
- package/src/services/model-metadata.service.ts +302 -98
- package/src/services/module-metadata-explorer.service.ts +670 -0
- package/src/services/module-metadata.service.ts +136 -10
- package/src/services/module-package.service.ts +1171 -0
- package/src/services/settings/default-settings-provider.service.ts +10 -0
- package/src/solid-core.module.ts +10 -2
- package/.claude/settings.local.json +0 -15
- package/CLAUDE.md +0 -26
- package/dist/services/database/database-bootstrap.service.d.ts +0 -12
- package/dist/services/database/database-bootstrap.service.d.ts.map +0 -1
- package/dist/services/database/database-bootstrap.service.js +0 -115
- package/dist/services/database/database-bootstrap.service.js.map +0 -1
- package/sql/default/mariadb/proc_CleanupModelMetadata.sql +0 -153
- package/sql/default/mariadb/proc_CleanupModuleMetadata.sql +0 -56
- package/sql/default/mssql/proc_CleanupModuleMetadata.sql +0 -78
- package/sql/default/mysql/proc_CleanupModelMetadata.sql +0 -153
- package/sql/default/mysql/proc_CleanupModuleMetadata.sql +0 -56
- package/sql/default/postgres/proc_CleanupModelMetadata.sql +0 -148
- package/sql/default/postgres/proc_CleanupModuleMetadata.sql +0 -50
- package/sql/default/postgres/scratchpad.sql.txt +0 -12
- package/src/services/1.js +0 -6
- package/src/services/database/database-bootstrap.service.ts +0 -91
|
@@ -124,11 +124,17 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
124
124
|
let currentModule = 'global';
|
|
125
125
|
let currentStep = 'bootstrap';
|
|
126
126
|
let modulesToSeed = null;
|
|
127
|
+
const shouldSeedGlobalMetadata = conf?.seedGlobalMetadata !== false;
|
|
127
128
|
try {
|
|
128
129
|
this.enablePruning = Boolean(conf?.pruneMetadata);
|
|
129
130
|
console.log(this.enablePruning ? '▶ Pruning enabled: metadata not present in JSON will be removed.' : '▶ Pruning disabled: existing metadata will be kept.');
|
|
130
|
-
|
|
131
|
-
|
|
131
|
+
if (shouldSeedGlobalMetadata) {
|
|
132
|
+
currentStep = 'seedGlobalMetadata';
|
|
133
|
+
await this.seedGlobalMetadata();
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
this.logger.log(`Skipping global metadata seeding.`);
|
|
137
|
+
}
|
|
132
138
|
const seedDataFiles = this.seedDataFiles;
|
|
133
139
|
this.logger.debug(`Found seed data for modules: ${seedDataFiles.map(s => s.moduleMetadata?.name)}`);
|
|
134
140
|
currentStep = 'resolveModulesToSeed';
|
|
@@ -150,6 +156,10 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
150
156
|
const overallMetadata = filteredSeedDataFiles[i];
|
|
151
157
|
const moduleMetadata = overallMetadata.moduleMetadata;
|
|
152
158
|
currentModule = moduleMetadata?.name ?? 'unknown';
|
|
159
|
+
if (!moduleMetadata?.name) {
|
|
160
|
+
this.logger.warn(`Skipping seed metadata file because moduleMetadata.name is missing.`);
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
153
163
|
console.log(`▶ Seeding Metadata for Module: ${moduleMetadata.name}`);
|
|
154
164
|
this.logger.log(`Seeding Metadata for Module: ${moduleMetadata.name}`);
|
|
155
165
|
currentStep = 'seedMediaStorageProviders';
|
|
@@ -230,31 +240,31 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
230
240
|
}
|
|
231
241
|
async seedScheduledJobs(moduleMetadata, overallMetadata) {
|
|
232
242
|
this.logger.debug(`[Start] Processing scheduled jobs for ${moduleMetadata.name}`);
|
|
233
|
-
const scheduledJobs = overallMetadata
|
|
243
|
+
const scheduledJobs = this.getSeedArray(overallMetadata?.scheduledJobs);
|
|
234
244
|
const pruned = this.enablePruning ? await this.pruneScheduledJobs(scheduledJobs, moduleMetadata.name) : 0;
|
|
235
|
-
if (scheduledJobs
|
|
245
|
+
if (scheduledJobs.length > 0) {
|
|
236
246
|
await this.handleSeedScheduledJobs(scheduledJobs);
|
|
237
247
|
}
|
|
238
248
|
this.logger.debug(`[End] Processing scheduled jobs for ${moduleMetadata.name}`);
|
|
239
|
-
return { pruned, upserted: scheduledJobs
|
|
249
|
+
return { pruned, upserted: scheduledJobs.length };
|
|
240
250
|
}
|
|
241
251
|
async seedSavedFilters(moduleMetadata, overallMetadata) {
|
|
242
252
|
this.logger.debug(`[Start] Processing saved filters for ${moduleMetadata.name}`);
|
|
243
|
-
const savedFilters = overallMetadata
|
|
253
|
+
const savedFilters = this.getSeedArray(overallMetadata?.savedFilters);
|
|
244
254
|
const pruned = this.enablePruning ? await this.pruneSavedFilters(savedFilters, moduleMetadata.name) : 0;
|
|
245
|
-
if (savedFilters
|
|
255
|
+
if (savedFilters.length > 0) {
|
|
246
256
|
await this.handleSeedSavedFilters(savedFilters);
|
|
247
257
|
}
|
|
248
258
|
this.logger.debug(`[End] Processing saved filters for ${moduleMetadata.name}`);
|
|
249
|
-
return { pruned, upserted: savedFilters
|
|
259
|
+
return { pruned, upserted: savedFilters.length };
|
|
250
260
|
}
|
|
251
261
|
async seedListOfValues(moduleMetadata, overallMetadata) {
|
|
252
262
|
this.logger.debug(`[Start] Processing List Of Values for ${moduleMetadata.name}`);
|
|
253
|
-
const listOfValues = overallMetadata
|
|
263
|
+
const listOfValues = this.getSeedArray(overallMetadata?.listOfValues);
|
|
254
264
|
const pruned = this.enablePruning ? await this.pruneListOfValues(listOfValues, moduleMetadata.name) : 0;
|
|
255
265
|
await this.handleSeedListOfValues(listOfValues);
|
|
256
266
|
this.logger.debug(`[End] Processing List Of Values for ${moduleMetadata.name}`);
|
|
257
|
-
return { pruned, upserted: listOfValues
|
|
267
|
+
return { pruned, upserted: listOfValues.length };
|
|
258
268
|
}
|
|
259
269
|
async setupDefaultRolesWithPermissions() {
|
|
260
270
|
this.logger.debug(`About to add all permissions to the Admin role`);
|
|
@@ -262,11 +272,11 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
262
272
|
}
|
|
263
273
|
async seedSecurityRules(overallMetadata) {
|
|
264
274
|
this.logger.debug(`[Start] Processing security rules`);
|
|
265
|
-
const securityRules = overallMetadata
|
|
275
|
+
const securityRules = this.getSeedArray(overallMetadata?.securityRules);
|
|
266
276
|
const pruned = this.enablePruning ? await this.pruneSecurityRules(securityRules, overallMetadata?.moduleMetadata?.name) : 0;
|
|
267
277
|
await this.handleSeedSecurityRules(securityRules);
|
|
268
278
|
this.logger.debug(`[End] Processing security rules`);
|
|
269
|
-
return { pruned, upserted: securityRules
|
|
279
|
+
return { pruned, upserted: securityRules.length };
|
|
270
280
|
}
|
|
271
281
|
async seedDefaultSettings() {
|
|
272
282
|
this.logger.debug(`[Start] Processing settings`);
|
|
@@ -275,59 +285,64 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
275
285
|
}
|
|
276
286
|
async seedSmsTemplates(overallMetadata, moduleName) {
|
|
277
287
|
this.logger.debug(`[Start] Processing sms templates`);
|
|
278
|
-
const smsTemplates = overallMetadata
|
|
288
|
+
const smsTemplates = this.getSeedArray(overallMetadata?.smsTemplates);
|
|
279
289
|
await this.handleSeedSmsTemplates(smsTemplates, moduleName);
|
|
280
290
|
this.logger.debug(`[End] Processing sms templates`);
|
|
281
|
-
return { pruned: 0, upserted: smsTemplates
|
|
291
|
+
return { pruned: 0, upserted: smsTemplates.length };
|
|
282
292
|
}
|
|
283
293
|
async seedEmailTemplates(overallMetadata, moduleName) {
|
|
284
294
|
this.logger.debug(`[Start] Processing email templates`);
|
|
285
|
-
const emailTemplates = overallMetadata
|
|
295
|
+
const emailTemplates = this.getSeedArray(overallMetadata?.emailTemplates);
|
|
286
296
|
await this.handleSeedEmailTemplates(emailTemplates, moduleName);
|
|
287
297
|
this.logger.debug(`[End] Processing email templates`);
|
|
288
|
-
return { pruned: 0, upserted: emailTemplates
|
|
298
|
+
return { pruned: 0, upserted: emailTemplates.length };
|
|
289
299
|
}
|
|
290
300
|
async seedMenus(overallMetadata) {
|
|
291
301
|
this.logger.debug(`[Start] Processing menus`);
|
|
292
|
-
const menus = overallMetadata
|
|
302
|
+
const menus = this.getSeedArray(overallMetadata?.menus);
|
|
293
303
|
const pruned = this.enablePruning ? await this.pruneMenus(menus, overallMetadata?.moduleMetadata?.name) : 0;
|
|
294
304
|
await this.handleSeedMenus(menus);
|
|
295
305
|
this.logger.debug(`[End] Processing menus`);
|
|
296
|
-
return { pruned, upserted: menus
|
|
306
|
+
return { pruned, upserted: menus.length };
|
|
297
307
|
}
|
|
298
308
|
async seedActions(overallMetadata) {
|
|
299
309
|
this.logger.debug(`[Start] Processing actions`);
|
|
300
|
-
const actions = overallMetadata
|
|
310
|
+
const actions = this.getSeedArray(overallMetadata?.actions);
|
|
301
311
|
const pruned = this.enablePruning ? await this.pruneActions(actions, overallMetadata?.moduleMetadata?.name) : 0;
|
|
302
312
|
await this.handleSeedActions(actions);
|
|
303
313
|
this.logger.debug(`[End] Processing actions`);
|
|
304
|
-
return { pruned, upserted: actions
|
|
314
|
+
return { pruned, upserted: actions.length };
|
|
305
315
|
}
|
|
306
316
|
async seedViews(overallMetadata) {
|
|
307
317
|
this.logger.debug(`[Start] Processing views`);
|
|
308
|
-
const views = overallMetadata
|
|
318
|
+
const views = this.getSeedArray(overallMetadata?.views);
|
|
309
319
|
const pruned = this.enablePruning ? await this.pruneViews(views, overallMetadata?.moduleMetadata?.name) : 0;
|
|
310
320
|
await this.handleSeedViews(views);
|
|
311
321
|
this.logger.debug(`[End] Processing views`);
|
|
312
|
-
return { pruned, upserted: views
|
|
322
|
+
return { pruned, upserted: views.length };
|
|
313
323
|
}
|
|
314
324
|
async seedUsers(overallMetadata) {
|
|
315
325
|
this.logger.debug(`[Start] Processing users`);
|
|
316
|
-
const users = overallMetadata
|
|
326
|
+
const users = this.getSeedArray(overallMetadata?.users);
|
|
317
327
|
await this.handleSeedUsers(users);
|
|
318
328
|
this.logger.debug(`[End] Processing users`);
|
|
319
|
-
return { pruned: 0, upserted: users
|
|
329
|
+
return { pruned: 0, upserted: users.length };
|
|
320
330
|
}
|
|
321
331
|
async seedRoles(overallMetadata) {
|
|
322
332
|
this.logger.debug(`[Start] Processing roles`);
|
|
323
|
-
|
|
324
|
-
|
|
333
|
+
const roles = this.getSeedArray(overallMetadata?.roles);
|
|
334
|
+
await this.roleService.createRolesIfNotExists(roles
|
|
335
|
+
.filter((role) => role?.name)
|
|
336
|
+
.map((role) => ({ name: role.name })));
|
|
337
|
+
for (const role of roles) {
|
|
325
338
|
if (role.permissions) {
|
|
326
|
-
await this.roleService.addPermissionsToRole(role.name, role.permissions
|
|
339
|
+
await this.roleService.addPermissionsToRole(role.name, role.permissions
|
|
340
|
+
.map((permission) => typeof permission === 'string' ? permission : permission?.name)
|
|
341
|
+
.filter(Boolean));
|
|
327
342
|
}
|
|
328
343
|
}
|
|
329
344
|
this.logger.debug(`[End] Processing roles`);
|
|
330
|
-
return { pruned: 0, upserted:
|
|
345
|
+
return { pruned: 0, upserted: roles.length };
|
|
331
346
|
}
|
|
332
347
|
async seedPermissions(overallMetadata) {
|
|
333
348
|
this.logger.debug(`[Start] Processing permissions`);
|
|
@@ -341,7 +356,7 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
341
356
|
const seedDataFiles = [typedSolidCoreMetadata];
|
|
342
357
|
const enabledModules = (0, module_helper_1.getDynamicModuleNamesBasedOnMetadata)();
|
|
343
358
|
for (const enabledModule of enabledModules) {
|
|
344
|
-
const enabledModuleSeedFile = `
|
|
359
|
+
const enabledModuleSeedFile = `src/${enabledModule}/metadata/${enabledModule}-metadata.json`;
|
|
345
360
|
const fullPath = path.join(process.cwd(), enabledModuleSeedFile);
|
|
346
361
|
if (fs.existsSync(fullPath)) {
|
|
347
362
|
const overallMetadata = JSON.parse(fs.readFileSync(fullPath, 'utf-8'));
|
|
@@ -408,20 +423,21 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
408
423
|
}
|
|
409
424
|
async seedMediaStorageProviders(mediaStorageProviders) {
|
|
410
425
|
this.logger.debug(`[Start] Processing Media Storage Provider`);
|
|
411
|
-
|
|
412
|
-
|
|
426
|
+
const providers = this.getSeedArray(mediaStorageProviders);
|
|
427
|
+
for (let i = 0; i < providers.length; i++) {
|
|
428
|
+
const mediaStorageProvider = providers[i];
|
|
413
429
|
await this.mediaStorageProviderMetadataService.upsert(mediaStorageProvider);
|
|
414
430
|
}
|
|
415
431
|
this.logger.debug(`[End] Processing Media Storage Provider`);
|
|
416
|
-
return { pruned: 0, upserted:
|
|
432
|
+
return { pruned: 0, upserted: providers.length };
|
|
417
433
|
}
|
|
418
434
|
async seedModelSequences(overallMetadata) {
|
|
419
435
|
this.logger.debug(`[Start] Processing model sequences`);
|
|
420
|
-
const modelSequences = overallMetadata
|
|
436
|
+
const modelSequences = this.getSeedArray(overallMetadata?.modelSequences);
|
|
421
437
|
const pruned = this.enablePruning ? await this.pruneModelSequences(modelSequences, overallMetadata?.moduleMetadata?.name) : 0;
|
|
422
438
|
await this.handleSeedModelSequences(modelSequences);
|
|
423
439
|
this.logger.debug(`[End] Processing model sequences`);
|
|
424
|
-
return { pruned, upserted: modelSequences
|
|
440
|
+
return { pruned, upserted: modelSequences.length };
|
|
425
441
|
}
|
|
426
442
|
async handleSeedEmailTemplates(emailTemplates, moduleName) {
|
|
427
443
|
if (!emailTemplates) {
|
|
@@ -451,7 +467,7 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
451
467
|
}
|
|
452
468
|
}
|
|
453
469
|
else {
|
|
454
|
-
const emailTemplateHandlebar = `
|
|
470
|
+
const emailTemplateHandlebar = `src/${moduleName}/metadata/email-templates/${emailTemplate.body}`;
|
|
455
471
|
const fullPath = path.join(process.cwd(), emailTemplateHandlebar);
|
|
456
472
|
if (fs.existsSync(fullPath)) {
|
|
457
473
|
emailTemplate.body = fs.readFileSync(fullPath, 'utf-8').toString();
|
|
@@ -489,7 +505,7 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
489
505
|
}
|
|
490
506
|
}
|
|
491
507
|
else {
|
|
492
|
-
const emailTemplateHandlebar = `
|
|
508
|
+
const emailTemplateHandlebar = `src/${moduleName}/metadata/sms-templates/${smsTemplate.body}`;
|
|
493
509
|
const fullPath = path.join(process.cwd(), emailTemplateHandlebar);
|
|
494
510
|
if (fs.existsSync(fullPath)) {
|
|
495
511
|
smsTemplate.body = fs.readFileSync(fullPath, 'utf-8').toString();
|
|
@@ -635,8 +651,8 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
635
651
|
const module = await this.moduleMetadataService.upsert(moduleMetadata);
|
|
636
652
|
let pruned = 0;
|
|
637
653
|
let upserted = 1;
|
|
638
|
-
const modelsMetadata = moduleMetadata
|
|
639
|
-
upserted += modelsMetadata
|
|
654
|
+
const modelsMetadata = this.getSeedArray(moduleMetadata?.models);
|
|
655
|
+
upserted += modelsMetadata.length;
|
|
640
656
|
for (let j = 0; j < modelsMetadata.length; j++) {
|
|
641
657
|
const modelMetadata = modelsMetadata[j];
|
|
642
658
|
modelMetadata['module'] = module;
|
|
@@ -676,6 +692,9 @@ let ModuleMetadataSeederService = ModuleMetadataSeederService_1 = class ModuleMe
|
|
|
676
692
|
this.logger.debug(`[End] Processing module metadata`);
|
|
677
693
|
return { pruned, upserted };
|
|
678
694
|
}
|
|
695
|
+
getSeedArray(value) {
|
|
696
|
+
return Array.isArray(value) ? value : [];
|
|
697
|
+
}
|
|
679
698
|
async handleSeedSecurityRules(rulesDto) {
|
|
680
699
|
if (!rulesDto || rulesDto.length === 0) {
|
|
681
700
|
this.logger.debug(`No security rules found to seed`);
|