@solidxai/core 0.1.13-beta.6 → 0.1.13-beta.8

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 (211) hide show
  1. package/CHANGELOG.md +1076 -0
  2. package/dist/constants/draft-publish-fields.d.ts +2 -0
  3. package/dist/constants/draft-publish-fields.d.ts.map +1 -0
  4. package/dist/constants/draft-publish-fields.js +5 -0
  5. package/dist/constants/draft-publish-fields.js.map +1 -0
  6. package/dist/constants/media-file-types.d.ts +9 -0
  7. package/dist/constants/media-file-types.d.ts.map +1 -1
  8. package/dist/constants/media-file-types.js +27 -1
  9. package/dist/constants/media-file-types.js.map +1 -1
  10. package/dist/controllers/action-metadata.controller.d.ts +1 -1
  11. package/dist/controllers/action-metadata.controller.js +1 -1
  12. package/dist/controllers/agent-event.controller.d.ts +1 -1
  13. package/dist/controllers/agent-event.controller.js +1 -1
  14. package/dist/controllers/agent-session.controller.d.ts +1 -1
  15. package/dist/controllers/agent-session.controller.js +1 -1
  16. package/dist/controllers/dashboard-user-layout.controller.d.ts +1 -1
  17. package/dist/controllers/dashboard-user-layout.controller.js +1 -1
  18. package/dist/controllers/email-template.controller.d.ts +1 -1
  19. package/dist/controllers/email-template.controller.js +1 -1
  20. package/dist/controllers/export-template.controller.d.ts +1 -1
  21. package/dist/controllers/export-template.controller.d.ts.map +1 -1
  22. package/dist/controllers/export-template.controller.js +6 -4
  23. package/dist/controllers/export-template.controller.js.map +1 -1
  24. package/dist/controllers/export-transaction.controller.d.ts +1 -1
  25. package/dist/controllers/export-transaction.controller.js +1 -1
  26. package/dist/controllers/import-transaction-error-log.controller.d.ts +1 -1
  27. package/dist/controllers/import-transaction-error-log.controller.js +1 -1
  28. package/dist/controllers/import-transaction.controller.d.ts +1 -1
  29. package/dist/controllers/import-transaction.controller.d.ts.map +1 -1
  30. package/dist/controllers/import-transaction.controller.js +7 -7
  31. package/dist/controllers/import-transaction.controller.js.map +1 -1
  32. package/dist/controllers/list-of-values.controller.d.ts +1 -1
  33. package/dist/controllers/list-of-values.controller.js +1 -1
  34. package/dist/controllers/locale.controller.d.ts +1 -1
  35. package/dist/controllers/locale.controller.js +1 -1
  36. package/dist/controllers/mcp-audit-log.controller.d.ts +1 -1
  37. package/dist/controllers/mcp-audit-log.controller.js +1 -1
  38. package/dist/controllers/media.controller.d.ts +2 -2
  39. package/dist/controllers/media.controller.d.ts.map +1 -1
  40. package/dist/controllers/media.controller.js +13 -8
  41. package/dist/controllers/media.controller.js.map +1 -1
  42. package/dist/controllers/menu-item-metadata.controller.d.ts +1 -1
  43. package/dist/controllers/menu-item-metadata.controller.js +1 -1
  44. package/dist/controllers/model-sequence.controller.d.ts +1 -1
  45. package/dist/controllers/model-sequence.controller.js +1 -1
  46. package/dist/controllers/module-package.controller.d.ts.map +1 -1
  47. package/dist/controllers/module-package.controller.js +2 -3
  48. package/dist/controllers/module-package.controller.js.map +1 -1
  49. package/dist/controllers/mq-message-queue.controller.d.ts +1 -1
  50. package/dist/controllers/mq-message-queue.controller.js +1 -1
  51. package/dist/controllers/mq-message.controller.d.ts +1 -1
  52. package/dist/controllers/mq-message.controller.js +1 -1
  53. package/dist/controllers/permission-metadata.controller.d.ts +1 -1
  54. package/dist/controllers/permission-metadata.controller.js +1 -1
  55. package/dist/controllers/role-metadata.controller.d.ts +1 -1
  56. package/dist/controllers/role-metadata.controller.js +1 -1
  57. package/dist/controllers/saved-filters.controller.d.ts +1 -1
  58. package/dist/controllers/saved-filters.controller.js +1 -1
  59. package/dist/controllers/scheduled-job.controller.d.ts +1 -1
  60. package/dist/controllers/scheduled-job.controller.js +1 -1
  61. package/dist/controllers/security-rule.controller.d.ts +1 -1
  62. package/dist/controllers/security-rule.controller.js +1 -1
  63. package/dist/controllers/sms-template.controller.d.ts +1 -1
  64. package/dist/controllers/sms-template.controller.js +1 -1
  65. package/dist/controllers/user-activity-history.controller.d.ts +1 -1
  66. package/dist/controllers/user-activity-history.controller.js +1 -1
  67. package/dist/controllers/user-view-metadata.controller.d.ts +1 -1
  68. package/dist/controllers/user-view-metadata.controller.js +1 -1
  69. package/dist/controllers/user.controller.d.ts +2 -2
  70. package/dist/controllers/user.controller.js +2 -2
  71. package/dist/controllers/view-metadata.controller.d.ts +2 -2
  72. package/dist/controllers/view-metadata.controller.js +1 -1
  73. package/dist/controllers/workflow-definition.controller.d.ts +1 -1
  74. package/dist/controllers/workflow-definition.controller.js +1 -1
  75. package/dist/controllers/workflow-execution-artifact.controller.d.ts +1 -1
  76. package/dist/controllers/workflow-execution-artifact.controller.js +1 -1
  77. package/dist/controllers/workflow-execution-log.controller.d.ts +1 -1
  78. package/dist/controllers/workflow-execution-log.controller.js +1 -1
  79. package/dist/controllers/workflow-execution.controller.d.ts +1 -1
  80. package/dist/controllers/workflow-execution.controller.js +1 -1
  81. package/dist/controllers/workflow-secret.controller.d.ts +1 -1
  82. package/dist/controllers/workflow-secret.controller.js +1 -1
  83. package/dist/controllers/workflow-step-execution.controller.d.ts +1 -1
  84. package/dist/controllers/workflow-step-execution.controller.js +1 -1
  85. package/dist/controllers/workflow-trigger-execution.controller.d.ts +1 -1
  86. package/dist/controllers/workflow-trigger-execution.controller.js +1 -1
  87. package/dist/dtos/basic-filters.dto.d.ts +0 -1
  88. package/dist/dtos/basic-filters.dto.d.ts.map +1 -1
  89. package/dist/dtos/basic-filters.dto.js +1 -6
  90. package/dist/dtos/basic-filters.dto.js.map +1 -1
  91. package/dist/entities/common.entity.d.ts +4 -0
  92. package/dist/entities/common.entity.d.ts.map +1 -1
  93. package/dist/entities/common.entity.js +25 -1
  94. package/dist/entities/common.entity.js.map +1 -1
  95. package/dist/entities/user.entity.js +2 -2
  96. package/dist/entities/user.entity.js.map +1 -1
  97. package/dist/factories/mail.factory.d.ts.map +1 -1
  98. package/dist/factories/mail.factory.js +4 -0
  99. package/dist/factories/mail.factory.js.map +1 -1
  100. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts +1 -0
  101. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.d.ts.map +1 -1
  102. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js +18 -11
  103. package/dist/helpers/field-crud-managers/MediaFieldCrudManager.js.map +1 -1
  104. package/dist/helpers/file-download.helper.d.ts +9 -0
  105. package/dist/helpers/file-download.helper.d.ts.map +1 -0
  106. package/dist/helpers/file-download.helper.js +14 -0
  107. package/dist/helpers/file-download.helper.js.map +1 -0
  108. package/dist/helpers/model-metadata-helper.service.d.ts.map +1 -1
  109. package/dist/helpers/model-metadata-helper.service.js +30 -1
  110. package/dist/helpers/model-metadata-helper.service.js.map +1 -1
  111. package/dist/helpers/solid-registry.js +1 -1
  112. package/dist/helpers/solid-registry.js.map +1 -1
  113. package/dist/index.d.ts +2 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +2 -0
  116. package/dist/index.js.map +1 -1
  117. package/dist/seeders/module-test-data.service.d.ts +3 -1
  118. package/dist/seeders/module-test-data.service.d.ts.map +1 -1
  119. package/dist/seeders/module-test-data.service.js +8 -2
  120. package/dist/seeders/module-test-data.service.js.map +1 -1
  121. package/dist/seeders/seed-data/solid-core-metadata.json +30 -2
  122. package/dist/services/authentication.service.d.ts +4 -1
  123. package/dist/services/authentication.service.d.ts.map +1 -1
  124. package/dist/services/authentication.service.js +52 -4
  125. package/dist/services/authentication.service.js.map +1 -1
  126. package/dist/services/chatter-message.service.d.ts +1 -0
  127. package/dist/services/chatter-message.service.d.ts.map +1 -1
  128. package/dist/services/chatter-message.service.js +8 -0
  129. package/dist/services/chatter-message.service.js.map +1 -1
  130. package/dist/services/crud-helper.service.d.ts +5 -2
  131. package/dist/services/crud-helper.service.d.ts.map +1 -1
  132. package/dist/services/crud-helper.service.js +30 -32
  133. package/dist/services/crud-helper.service.js.map +1 -1
  134. package/dist/services/crud.service.d.ts +11 -1
  135. package/dist/services/crud.service.d.ts.map +1 -1
  136. package/dist/services/crud.service.js +79 -66
  137. package/dist/services/crud.service.js.map +1 -1
  138. package/dist/services/datasource-introspection.service.d.ts.map +1 -1
  139. package/dist/services/datasource-introspection.service.js.map +1 -1
  140. package/dist/services/draft-publish-helper.service.d.ts +52 -0
  141. package/dist/services/draft-publish-helper.service.d.ts.map +1 -0
  142. package/dist/services/draft-publish-helper.service.js +368 -0
  143. package/dist/services/draft-publish-helper.service.js.map +1 -0
  144. package/dist/services/internationalisation-helper.service.d.ts +19 -0
  145. package/dist/services/internationalisation-helper.service.d.ts.map +1 -0
  146. package/dist/services/internationalisation-helper.service.js +107 -0
  147. package/dist/services/internationalisation-helper.service.js.map +1 -0
  148. package/dist/services/locale.service.d.ts +1 -1
  149. package/dist/services/media.service.d.ts +3 -2
  150. package/dist/services/media.service.d.ts.map +1 -1
  151. package/dist/services/media.service.js +44 -29
  152. package/dist/services/media.service.js.map +1 -1
  153. package/dist/services/metadata-validation.service.d.ts +7 -0
  154. package/dist/services/metadata-validation.service.d.ts.map +1 -0
  155. package/dist/services/metadata-validation.service.js +42 -0
  156. package/dist/services/metadata-validation.service.js.map +1 -0
  157. package/dist/services/model-metadata.service.d.ts.map +1 -1
  158. package/dist/services/model-metadata.service.js +2 -1
  159. package/dist/services/model-metadata.service.js.map +1 -1
  160. package/dist/services/object.utils.d.ts +2 -0
  161. package/dist/services/object.utils.d.ts.map +1 -0
  162. package/dist/services/object.utils.js +11 -0
  163. package/dist/services/object.utils.js.map +1 -0
  164. package/dist/services/settings/default-settings-provider.service.d.ts +6 -6
  165. package/dist/services/settings/default-settings-provider.service.js +3 -3
  166. package/dist/services/settings/default-settings-provider.service.js.map +1 -1
  167. package/dist/services/user.service.d.ts +2 -2
  168. package/dist/services/user.service.d.ts.map +1 -1
  169. package/dist/services/user.service.js +9 -3
  170. package/dist/services/user.service.js.map +1 -1
  171. package/dist/services/view-metadata.service.d.ts +1 -2
  172. package/dist/services/view-metadata.service.d.ts.map +1 -1
  173. package/dist/services/view-metadata.service.js +3 -55
  174. package/dist/services/view-metadata.service.js.map +1 -1
  175. package/dist/services/workflow-definition.service.d.ts +1 -1
  176. package/dist/solid-core.module.d.ts.map +1 -1
  177. package/dist/solid-core.module.js +10 -1
  178. package/dist/solid-core.module.js.map +1 -1
  179. package/package.json +1 -1
  180. package/src/constants/draft-publish-fields.ts +5 -0
  181. package/src/constants/media-file-types.ts +50 -0
  182. package/src/controllers/export-template.controller.ts +5 -3
  183. package/src/controllers/import-transaction.controller.ts +6 -6
  184. package/src/controllers/media.controller.ts +17 -6
  185. package/src/controllers/module-package.controller.ts +2 -3
  186. package/src/dtos/basic-filters.dto.ts +0 -4
  187. package/src/entities/common.entity.ts +20 -0
  188. package/src/entities/user.entity.ts +2 -2
  189. package/src/factories/mail.factory.ts +7 -1
  190. package/src/helpers/field-crud-managers/MediaFieldCrudManager.ts +26 -12
  191. package/src/helpers/file-download.helper.ts +31 -0
  192. package/src/helpers/model-metadata-helper.service.ts +32 -1
  193. package/src/helpers/solid-registry.ts +1 -1
  194. package/src/index.ts +2 -0
  195. package/src/seeders/module-test-data.service.ts +6 -0
  196. package/src/seeders/seed-data/solid-core-metadata.json +30 -2
  197. package/src/services/authentication.service.ts +76 -5
  198. package/src/services/chatter-message.service.ts +16 -0
  199. package/src/services/crud-helper.service.ts +16 -34
  200. package/src/services/crud.service.ts +98 -103
  201. package/src/services/datasource-introspection.service.ts +5 -0
  202. package/src/services/draft-publish-helper.service.ts +529 -0
  203. package/src/services/internationalisation-helper.service.ts +148 -0
  204. package/src/services/media.service.ts +67 -36
  205. package/src/services/metadata-validation.service.ts +39 -0
  206. package/src/services/model-metadata.service.ts +4 -1
  207. package/src/services/object.utils.ts +10 -0
  208. package/src/services/settings/default-settings-provider.service.ts +3 -3
  209. package/src/services/user.service.ts +18 -3
  210. package/src/services/view-metadata.service.ts +5 -145
  211. package/src/solid-core.module.ts +16 -3
@@ -1 +1 @@
1
- {"version":3,"file":"crud.service.d.ts","sourceRoot":"","sources":["../../src/services/crud.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crud.service.d.ts","sourceRoot":"","sources":["../../src/services/crud.service.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,8 @@ const SelectionStaticFieldCrudManager_1 = require("../helpers/field-crud-manager
66
66
  const ShortTextFieldCrudManager_1 = require("../helpers/field-crud-managers/ShortTextFieldCrudManager");
67
67
  const UUIDFieldCrudManager_1 = require("../helpers/field-crud-managers/UUIDFieldCrudManager");
68
68
  const model_metadata_helper_service_1 = require("../helpers/model-metadata-helper.service");
69
+ const draft_publish_helper_service_1 = require("./draft-publish-helper.service");
70
+ const internationalisation_helper_service_1 = require("./internationalisation-helper.service");
69
71
  const crud_helper_service_1 = require("./crud-helper.service");
70
72
  const hashing_service_1 = require("./hashing.service");
71
73
  const solid_registry_1 = require("../helpers/solid-registry");
@@ -88,12 +90,30 @@ class CRUDService {
88
90
  get crudHelperService() {
89
91
  return this._crudHelperService ??= this.moduleRef.get(crud_helper_service_1.CrudHelperService, { strict: false });
90
92
  }
93
+ get draftPublishHelperService() {
94
+ return this._draftPublishHelperService ??= this.moduleRef.get(draft_publish_helper_service_1.DraftPublishHelperService, { strict: false });
95
+ }
96
+ get internationalisationHelperService() {
97
+ return this._internationalisationHelperService ??= this.moduleRef.get(internationalisation_helper_service_1.InternationalisationHelperService, { strict: false });
98
+ }
91
99
  get discoveryService() {
92
100
  return this._discoveryService ??= this.moduleRef.get(core_1.DiscoveryService, { strict: false });
93
101
  }
94
102
  get settingService() {
95
103
  return this._settingService ??= this.moduleRef.get(setting_service_1.SettingService, { strict: false });
96
104
  }
105
+ getDraftPublishCrudContext() {
106
+ return {
107
+ repo: this.repo,
108
+ modelName: this.modelName,
109
+ moduleName: this.moduleName,
110
+ validateAndTransformDto: this.validateAndTransformDto.bind(this),
111
+ saveMedia: this.saveMedia.bind(this),
112
+ getDatasourceDefaultEntityManager: this.getDatasourceDefaultEntityManager.bind(this),
113
+ getColumnDatabaseName: this.getColumnDatabaseName.bind(this),
114
+ escapeDatabaseName: this.escapeDatabaseName.bind(this),
115
+ };
116
+ }
97
117
  async tryCreateAsExtensionUser(createDto) {
98
118
  if (this.repo.metadata?.parentEntityMetadata?.target !== user_entity_1.User)
99
119
  return null;
@@ -125,8 +145,11 @@ class CRUDService {
125
145
  }
126
146
  ;
127
147
  try {
148
+ this.draftPublishHelperService.applyCreateDefaults(model, createDto);
149
+ this.internationalisationHelperService.applyCreateDefaults(model, createDto, this.moduleRef.get(solid_registry_1.SolidRegistry, { strict: false }));
128
150
  const entity = this.repo.create(createDto);
129
- const savedEntity = await this.repo.save(entity);
151
+ let savedEntity = await this.repo.save(entity);
152
+ savedEntity = await this.draftPublishHelperService.ensureInitialEntityVersionId(model, this.repo, savedEntity);
130
153
  if (hasMediaFields) {
131
154
  await this.saveMedia(model, files, savedEntity);
132
155
  }
@@ -194,8 +217,9 @@ class CRUDService {
194
217
  if (!entity) {
195
218
  throw new Error(`Entity [${this.moduleName}.${this.modelName}] with id ${id} not found`);
196
219
  }
197
- if (model.draftPublishWorkflow === true && entity.publishedAt) {
198
- throw new common_1.BadRequestException(`Cannot update a published record for model ${this.modelName}. Unpublish it first.`);
220
+ this.draftPublishHelperService.assertUpdateAllowed(model, entity, this.modelName);
221
+ if (this.draftPublishHelperService.shouldCopyPublishedVersionForUpdate(model, entity)) {
222
+ return this.draftPublishHelperService.copyPublishedVersionAndUpdate(this.getDraftPublishCrudContext(), id, updateDto, files, isPartialUpdate, model);
199
223
  }
200
224
  await this.prepareManyToManyAuditSnapshot(entity, id, model.singularName);
201
225
  let hasMediaFields = false;
@@ -213,6 +237,16 @@ class CRUDService {
213
237
  }
214
238
  return savedEntity;
215
239
  }
240
+ getColumnDatabaseName(propertyName) {
241
+ const column = this.repo.metadata.findColumnWithPropertyName(propertyName);
242
+ if (!column) {
243
+ throw new Error(`Column ${propertyName} not found in entity ${this.repo.metadata.name}`);
244
+ }
245
+ return column.databaseName;
246
+ }
247
+ escapeDatabaseName(databaseName) {
248
+ return this.repo.manager.connection.driver.escape(databaseName);
249
+ }
216
250
  async prepareManyToManyAuditSnapshot(entity, id, modelSingularName) {
217
251
  const modelMetadataHelperService = this.moduleRef.get(model_metadata_helper_service_1.ModelMetadataHelperService, { strict: false });
218
252
  const auditRelationFields = (await modelMetadataHelperService.loadFieldHierarchy(modelSingularName)).filter(field => field.enableAuditTracking &&
@@ -263,29 +297,32 @@ class CRUDService {
263
297
  if (!entity) {
264
298
  throw new Error(`Entity [${this.moduleName}.${this.modelName}] with id ${id} not found`);
265
299
  }
266
- if (model.draftPublishWorkflow === true && entity.publishedAt) {
267
- throw new common_1.BadRequestException(`Cannot update a published record for model ${this.modelName}, Unpublish it first.`);
268
- }
269
- if (model.internationalisation) {
270
- const childEntities = await this.repo.find({
271
- where: { defaultEntityLocaleId: id }
272
- });
273
- if (childEntities.length > 0) {
274
- if (model.enableSoftDelete === true) {
275
- await this.repo.softRemove(childEntities);
276
- }
277
- else {
278
- await this.repo.remove(childEntities);
279
- }
280
- }
300
+ const entitiesToDelete = [entity];
301
+ if (this.draftPublishHelperService.isDraftPublishEnabled(model)) {
302
+ this.draftPublishHelperService.assertDraftPublishDeleteAllowed(this.modelName, entitiesToDelete);
281
303
  }
304
+ await this.internationalisationHelperService.deleteChildLocaleEntities(this.repo, model, [id]);
305
+ return this.deleteEntitiesAndPromote(model, entitiesToDelete);
306
+ }
307
+ async deleteEntitiesAndPromote(model, entitiesToDelete) {
308
+ const isDraftPublishEnabled = this.draftPublishHelperService.isDraftPublishEnabled(model);
309
+ const deletedLatestChainIds = isDraftPublishEnabled
310
+ ? this.draftPublishHelperService.getLatestDraftPublishChainIds(entitiesToDelete)
311
+ : [];
312
+ let deleteResult;
282
313
  if (model.enableSoftDelete === true) {
283
- await this.repo.softRemove(entity);
284
- return this.repo.save(entity);
314
+ this.draftPublishHelperService.markDeletedDraftPublishVersionsAsNotLatest(model, entitiesToDelete);
315
+ await this.repo.softRemove(entitiesToDelete);
316
+ deleteResult = await this.repo.save(entitiesToDelete);
285
317
  }
286
318
  else {
287
- return this.repo.remove(entity);
319
+ deleteResult = await this.repo.remove(entitiesToDelete);
288
320
  }
321
+ if (isDraftPublishEnabled) {
322
+ const deletedEntityIds = this.draftPublishHelperService.getEntityIds(entitiesToDelete);
323
+ await this.draftPublishHelperService.promoteLatestDraftPublishVersionAfterDelete(this.repo, deletedLatestChainIds, deletedEntityIds);
324
+ }
325
+ return deleteResult;
289
326
  }
290
327
  async fieldCrudManager(fieldMetadata, entityManager, isPartialUpdate = false, isUpdate = false, entityId) {
291
328
  const commonOptions = { required: fieldMetadata.required && !isPartialUpdate, fieldName: fieldMetadata.name, isUpdate };
@@ -442,9 +479,7 @@ class CRUDService {
442
479
  requestContextService.setRequestFilter(basicFilterDto);
443
480
  var qb = await this.repo.createSecurityRuleAwareQueryBuilder(alias);
444
481
  if (basicFilterDto.groupBy?.length) {
445
- const groupFilterQb = (internationalisation && draftPublishWorkflow)
446
- ? this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias, internationalisation, draftPublishWorkflow, this.moduleRef, crud_helper_service_1.FilterCombinator.AND, false, false)
447
- : this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias, undefined, undefined, undefined, crud_helper_service_1.FilterCombinator.AND, false, false);
482
+ const groupFilterQb = this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias, internationalisation, draftPublishWorkflow, this.moduleRef, crud_helper_service_1.FilterCombinator.AND, false, false);
448
483
  return this.crudHelperService.executeGroupPipeline(groupFilterQb, basicFilterDto, alias, () => this.repo.createSecurityRuleAwareQueryBuilder(alias), async (entities) => {
449
484
  if (populateUserIdFields?.length)
450
485
  await this.handlePopulateUserIdFields(populateUserIdFields, entities);
@@ -453,9 +488,7 @@ class CRUDService {
453
488
  });
454
489
  }
455
490
  else {
456
- qb = (internationalisation && draftPublishWorkflow)
457
- ? this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias, internationalisation, draftPublishWorkflow, this.moduleRef)
458
- : this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias);
491
+ qb = this.crudHelperService.buildFilterQuery(qb, basicFilterDto, alias, internationalisation, draftPublishWorkflow, this.moduleRef);
459
492
  const { meta, records } = await this.handleNonGroupFind(qb, populateUserIdFields, populateMedia, offset, limit, alias);
460
493
  return {
461
494
  meta,
@@ -629,6 +662,7 @@ class CRUDService {
629
662
  },
630
663
  module: true,
631
664
  });
665
+ const solidRegistry = this.moduleRef.get(solid_registry_1.SolidRegistry, { strict: false });
632
666
  const entitiesForSave = [];
633
667
  for (const createDto of createDtos) {
634
668
  let transformedDto = createDto;
@@ -640,6 +674,7 @@ class CRUDService {
640
674
  }
641
675
  transformedDto = await fieldManager.transformForCreate(createDto);
642
676
  }
677
+ this.internationalisationHelperService.applyCreateDefaults(model, transformedDto, solidRegistry);
643
678
  const entity = this.repo.create(transformedDto);
644
679
  entitiesForSave.push(entity);
645
680
  }
@@ -676,24 +711,16 @@ class CRUDService {
676
711
  id: id,
677
712
  },
678
713
  });
714
+ if (!entity) {
715
+ throw new Error(`Entity [${this.moduleName}.${this.modelName}] with id ${id} not found`);
716
+ }
679
717
  removedEntities.push(entity);
680
718
  }
681
- const isDraftPublishEnabled = model?.draftPublishWorkflow === true;
682
- let publishedEntitiesExists = [];
683
- if (isDraftPublishEnabled) {
684
- publishedEntitiesExists = removedEntities.filter((x) => !!x?.publishedAt);
685
- }
686
- if (publishedEntitiesExists.length > 0) {
687
- const publishedEntitiesExistsID = publishedEntitiesExists.map(x => x.id);
688
- throw new common_1.BadRequestException(`Cannot delete published record(s) for model ${this.modelName} with Ids ${publishedEntitiesExistsID.join(', ')}. Unpublish them first.`);
689
- }
690
- if (model.enableSoftDelete === true) {
691
- await this.repo.softRemove(removedEntities);
692
- return this.repo.save(removedEntities);
693
- }
694
- else {
695
- return this.repo.remove(removedEntities);
719
+ if (this.draftPublishHelperService.isDraftPublishEnabled(model)) {
720
+ this.draftPublishHelperService.assertDraftPublishDeleteAllowed(this.modelName, removedEntities);
696
721
  }
722
+ await this.internationalisationHelperService.deleteChildLocaleEntities(this.repo, model, ids);
723
+ return this.deleteEntitiesAndPromote(model, removedEntities);
697
724
  }
698
725
  async recover(id, solidRequestContext = {}) {
699
726
  try {
@@ -716,6 +743,9 @@ class CRUDService {
716
743
  await this.repo.update(id, {
717
744
  deletedAt: null, deletedTracker: "not-deleted"
718
745
  });
746
+ if (this.draftPublishHelperService.isDraftPublishEnabled(loadedmodel)) {
747
+ await this.draftPublishHelperService.promoteRecoveredDraftPublishVersion(this.repo, softDeletedRows);
748
+ }
719
749
  return { message: success_messages_1.SUCCESS_MESSAGES.RECORD_RECOVERED, data: softDeletedRows };
720
750
  }
721
751
  catch (error) {
@@ -751,6 +781,11 @@ class CRUDService {
751
781
  throw new common_1.NotFoundException(error_messages_1.ERROR_MESSAGES.NO_SOFT_DELETED_RECORDS_FOUND);
752
782
  }
753
783
  await this.repo.update({ id: (0, typeorm_1.In)(ids) }, { deletedAt: null, deletedTracker: "not-deleted" });
784
+ if (this.draftPublishHelperService.isDraftPublishEnabled(loadedmodel)) {
785
+ for (const entity of softDeletedRows) {
786
+ await this.draftPublishHelperService.promoteRecoveredDraftPublishVersion(this.repo, entity);
787
+ }
788
+ }
754
789
  return { message: success_messages_1.SUCCESS_MESSAGES.SELECTED_RECORDS_RECOVERED, recoveredIds: ids };
755
790
  }
756
791
  catch (error) {
@@ -796,45 +831,23 @@ class CRUDService {
796
831
  }
797
832
  async publishRecord(id, solidRequestContext = {}) {
798
833
  const model = await this.loadModel();
799
- if (!model.draftPublishWorkflow) {
800
- throw new common_1.BadRequestException(`Publish workflow is not enabled for ${this.modelName}`);
801
- }
802
834
  if (solidRequestContext.activeUser) {
803
835
  const hasPermission = this.crudHelperService.hasPublishPermissionOnModel(solidRequestContext.activeUser, model.singularName);
804
836
  if (!hasPermission) {
805
837
  throw new common_1.BadRequestException(error_messages_1.ERROR_MESSAGES.FORBIDDEN);
806
838
  }
807
839
  }
808
- const entity = await this.repo.findOne({ where: { id } });
809
- if (!entity) {
810
- throw new common_1.NotFoundException(`${this.modelName} with id ${id} not found`);
811
- }
812
- if (entity.publishedAt) {
813
- throw new common_1.BadRequestException(`${this.modelName} with id ${id} is already published`);
814
- }
815
- const updatedEntity = await this.repo.save({ ...entity, publishedAt: new Date() });
816
- return updatedEntity;
840
+ return this.draftPublishHelperService.publishRecord(this.repo, model, this.modelName, id, solidRequestContext.activeUser);
817
841
  }
818
842
  async unpublishRecord(id, solidRequestContext = {}) {
819
843
  const model = await this.loadModel();
820
- if (!model.draftPublishWorkflow) {
821
- throw new common_1.BadRequestException(`Publish workflow is not enabled for ${this.modelName}`);
822
- }
823
844
  if (solidRequestContext.activeUser) {
824
845
  const hasPermission = this.crudHelperService.hasUnpublishPermissionOnModel(solidRequestContext.activeUser, model.singularName);
825
846
  if (!hasPermission) {
826
847
  throw new common_1.BadRequestException(error_messages_1.ERROR_MESSAGES.FORBIDDEN);
827
848
  }
828
849
  }
829
- const entity = await this.repo.findOne({ where: { id } });
830
- if (!entity) {
831
- throw new common_1.NotFoundException(`${this.modelName} with id ${id} not found`);
832
- }
833
- if (!entity.publishedAt) {
834
- throw new common_1.BadRequestException(`${this.modelName} with id ${id} is already unpublished`);
835
- }
836
- const updatedEntity = await this.repo.save({ ...entity, publishedAt: null });
837
- return updatedEntity;
850
+ return this.draftPublishHelperService.unpublishRecord(this.repo, model, this.modelName, id, solidRequestContext.activeUser);
838
851
  }
839
852
  getDatasourceDefaultEntityManager() {
840
853
  return this.defaultDatasourceEntityManager ?? this.entityManager;