@webiny/api-headless-cms 6.3.0-beta.4 → 6.4.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1241) hide show
  1. package/abstractions/entryHooks/OnEntryBeforeCreate.js +2 -1
  2. package/abstractions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
  3. package/abstractions/entryHooks/index.js +0 -2
  4. package/abstractions/index.js +0 -2
  5. package/constants.js +56 -56
  6. package/constants.js.map +1 -1
  7. package/context.js +97 -127
  8. package/context.js.map +1 -1
  9. package/crud/AccessControl/AccessControl.js +315 -470
  10. package/crud/AccessControl/AccessControl.js.map +1 -1
  11. package/crud/contentEntry/entryDataValidation.js +191 -309
  12. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  13. package/crud/contentEntry/referenceFieldsMapping.js +29 -59
  14. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  15. package/crud/contentEntry/references/buildPaths.js +105 -130
  16. package/crud/contentEntry/references/buildPaths.js.map +1 -1
  17. package/crud/contentEntry/references/validateEntries.js +36 -74
  18. package/crud/contentEntry/references/validateEntries.js.map +1 -1
  19. package/crud/contentEntry/searchableFields.js +42 -57
  20. package/crud/contentEntry/searchableFields.js.map +1 -1
  21. package/crud/contentEntry.crud.js +287 -348
  22. package/crud/contentEntry.crud.js.map +1 -1
  23. package/crud/contentModel/compatibility/modelApiName.js +7 -10
  24. package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
  25. package/crud/contentModel/createFieldStorageId.js +6 -8
  26. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  27. package/crud/contentModel/defaultFields.js +56 -49
  28. package/crud/contentModel/defaultFields.js.map +1 -1
  29. package/crud/contentModel/fields/descriptionField.js +8 -18
  30. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  31. package/crud/contentModel/fields/getApplicableFieldById.js +4 -5
  32. package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -1
  33. package/crud/contentModel/fields/imageField.js +8 -13
  34. package/crud/contentModel/fields/imageField.js.map +1 -1
  35. package/crud/contentModel/fields/titleField.js +8 -18
  36. package/crud/contentModel/fields/titleField.js.map +1 -1
  37. package/crud/contentModel/validate/endingAllowed.js +10 -14
  38. package/crud/contentModel/validate/endingAllowed.js.map +1 -1
  39. package/crud/contentModel/validate/isModelEndingAllowed.js +15 -14
  40. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  41. package/crud/contentModel/validate/modelId.js +19 -24
  42. package/crud/contentModel/validate/modelId.js.map +1 -1
  43. package/crud/contentModel/validate/pluralApiName.js +8 -13
  44. package/crud/contentModel/validate/pluralApiName.js.map +1 -1
  45. package/crud/contentModel/validate/singularApiName.js +8 -13
  46. package/crud/contentModel/validate/singularApiName.js.map +1 -1
  47. package/crud/contentModel/validateStorageId.js +10 -8
  48. package/crud/contentModel/validateStorageId.js.map +1 -1
  49. package/crud/contentModel/validation.js +190 -209
  50. package/crud/contentModel/validation.js.map +1 -1
  51. package/crud/contentModel.crud.js +65 -109
  52. package/crud/contentModel.crud.js.map +1 -1
  53. package/crud/contentModelGroup.crud.js +65 -90
  54. package/crud/contentModelGroup.crud.js.map +1 -1
  55. package/domain/contentEntry/EntryId.js +37 -45
  56. package/domain/contentEntry/EntryId.js.map +1 -1
  57. package/domain/contentEntry/errors.js +38 -42
  58. package/domain/contentEntry/errors.js.map +1 -1
  59. package/domain/contentModel/createFieldStorageId.js +6 -8
  60. package/domain/contentModel/createFieldStorageId.js.map +1 -1
  61. package/domain/contentModel/ensureTypeTag.js +5 -11
  62. package/domain/contentModel/ensureTypeTag.js.map +1 -1
  63. package/domain/contentModel/errors.js +82 -91
  64. package/domain/contentModel/errors.js.map +1 -1
  65. package/domain/contentModel/schemas.js +130 -161
  66. package/domain/contentModel/schemas.js.map +1 -1
  67. package/domain/contentModel/validation/endingAllowed.js +10 -14
  68. package/domain/contentModel/validation/endingAllowed.js.map +1 -1
  69. package/domain/contentModel/validation/fields/descriptionField.js +8 -18
  70. package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
  71. package/domain/contentModel/validation/fields/getApplicableFieldById.js +4 -5
  72. package/domain/contentModel/validation/fields/getApplicableFieldById.js.map +1 -1
  73. package/domain/contentModel/validation/fields/imageField.js +8 -13
  74. package/domain/contentModel/validation/fields/imageField.js.map +1 -1
  75. package/domain/contentModel/validation/fields/titleField.js +8 -18
  76. package/domain/contentModel/validation/fields/titleField.js.map +1 -1
  77. package/domain/contentModel/validation/isModelEndingAllowed.js +15 -14
  78. package/domain/contentModel/validation/isModelEndingAllowed.js.map +1 -1
  79. package/domain/contentModel/validation/modelFields.js +140 -242
  80. package/domain/contentModel/validation/modelFields.js.map +1 -1
  81. package/domain/contentModel/validation/modelId.js +19 -24
  82. package/domain/contentModel/validation/modelId.js.map +1 -1
  83. package/domain/contentModel/validation/pluralApiName.js +8 -13
  84. package/domain/contentModel/validation/pluralApiName.js.map +1 -1
  85. package/domain/contentModel/validation/singularApiName.js +8 -13
  86. package/domain/contentModel/validation/singularApiName.js.map +1 -1
  87. package/domain/contentModelGroup/errors.js +60 -67
  88. package/domain/contentModelGroup/errors.js.map +1 -1
  89. package/domain/contentModelGroup/validation.js +22 -31
  90. package/domain/contentModelGroup/validation.js.map +1 -1
  91. package/export/crud/exporting.js +18 -38
  92. package/export/crud/exporting.js.map +1 -1
  93. package/export/crud/importing.js +48 -67
  94. package/export/crud/importing.js.map +1 -1
  95. package/export/crud/imports/importData.js +28 -39
  96. package/export/crud/imports/importData.js.map +1 -1
  97. package/export/crud/imports/importGroups.js +75 -90
  98. package/export/crud/imports/importGroups.js.map +1 -1
  99. package/export/crud/imports/importModels.js +99 -120
  100. package/export/crud/imports/importModels.js.map +1 -1
  101. package/export/crud/imports/remapIcon.js +7 -10
  102. package/export/crud/imports/remapIcon.js.map +1 -1
  103. package/export/crud/imports/validateGroups.js +75 -99
  104. package/export/crud/imports/validateGroups.js.map +1 -1
  105. package/export/crud/imports/validateInput.js +42 -60
  106. package/export/crud/imports/validateInput.js.map +1 -1
  107. package/export/crud/imports/validateModels.js +117 -175
  108. package/export/crud/imports/validateModels.js.map +1 -1
  109. package/export/crud/index.js +4 -5
  110. package/export/crud/index.js.map +1 -1
  111. package/export/crud/sanitize.js +23 -26
  112. package/export/crud/sanitize.js.map +1 -1
  113. package/export/graphql/index.js +43 -46
  114. package/export/graphql/index.js.map +1 -1
  115. package/export/index.js +0 -2
  116. package/export/types.js +7 -13
  117. package/export/types.js.map +1 -1
  118. package/exports/api/cms/entry.d.ts +2 -0
  119. package/exports/api/cms/entry.js +15 -69
  120. package/exports/api/cms/graphql.js +1 -3
  121. package/exports/api/cms/group.js +3 -14
  122. package/exports/api/cms/model.js +5 -21
  123. package/exports/api/cms/storage.js +0 -2
  124. package/exports/api/cms/validation.js +0 -2
  125. package/extensions/entryHooks/OnEntryBeforeCreate.js +16 -19
  126. package/extensions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
  127. package/extensions/entryHooks/index.js +0 -2
  128. package/extensions/index.js +4 -2
  129. package/extensions/index.js.map +1 -1
  130. package/features/contentEntry/ContentEntriesFeature.js +36 -36
  131. package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
  132. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js +61 -81
  133. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -1
  134. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +18 -16
  135. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -1
  136. package/features/contentEntry/ContentEntryTraverser/abstractions.js +2 -4
  137. package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -1
  138. package/features/contentEntry/ContentEntryTraverser/feature.js +6 -5
  139. package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -1
  140. package/features/contentEntry/ContentEntryTraverser/index.js +0 -2
  141. package/features/contentEntry/CreateEntry/CreateEntryRepository.js +25 -30
  142. package/features/contentEntry/CreateEntry/CreateEntryRepository.js.map +1 -1
  143. package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +4 -16
  144. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +50 -88
  145. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
  146. package/features/contentEntry/CreateEntry/abstractions.js +3 -14
  147. package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
  148. package/features/contentEntry/CreateEntry/events.js +17 -27
  149. package/features/contentEntry/CreateEntry/events.js.map +1 -1
  150. package/features/contentEntry/CreateEntry/feature.js +7 -18
  151. package/features/contentEntry/CreateEntry/feature.js.map +1 -1
  152. package/features/contentEntry/CreateEntry/index.js +1 -3
  153. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js +29 -41
  154. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js.map +1 -1
  155. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +4 -20
  156. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +81 -129
  157. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
  158. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +3 -25
  159. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
  160. package/features/contentEntry/CreateEntryRevisionFrom/events.js +25 -31
  161. package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
  162. package/features/contentEntry/CreateEntryRevisionFrom/feature.js +7 -9
  163. package/features/contentEntry/CreateEntryRevisionFrom/feature.js.map +1 -1
  164. package/features/contentEntry/CreateEntryRevisionFrom/index.js +0 -2
  165. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js +21 -23
  166. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js.map +1 -1
  167. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +70 -96
  168. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
  169. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js +26 -30
  170. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js.map +1 -1
  171. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +86 -115
  172. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
  173. package/features/contentEntry/DeleteEntry/abstractions.js +5 -40
  174. package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
  175. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js +30 -41
  176. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js.map +1 -1
  177. package/features/contentEntry/DeleteEntry/events.js +25 -31
  178. package/features/contentEntry/DeleteEntry/events.js.map +1 -1
  179. package/features/contentEntry/DeleteEntry/feature.js +10 -14
  180. package/features/contentEntry/DeleteEntry/feature.js.map +1 -1
  181. package/features/contentEntry/DeleteEntry/index.js +2 -4
  182. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js +37 -43
  183. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js.map +1 -1
  184. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +85 -126
  185. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
  186. package/features/contentEntry/DeleteEntryRevision/abstractions.js +3 -26
  187. package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
  188. package/features/contentEntry/DeleteEntryRevision/events.js +25 -31
  189. package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
  190. package/features/contentEntry/DeleteEntryRevision/feature.js +7 -9
  191. package/features/contentEntry/DeleteEntryRevision/feature.js.map +1 -1
  192. package/features/contentEntry/DeleteEntryRevision/index.js +2 -4
  193. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js +21 -27
  194. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js.map +1 -1
  195. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +82 -122
  196. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
  197. package/features/contentEntry/DeleteMultipleEntries/abstractions.js +3 -25
  198. package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
  199. package/features/contentEntry/DeleteMultipleEntries/events.js +25 -31
  200. package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
  201. package/features/contentEntry/DeleteMultipleEntries/feature.js +7 -9
  202. package/features/contentEntry/DeleteMultipleEntries/feature.js.map +1 -1
  203. package/features/contentEntry/DeleteMultipleEntries/index.js +0 -2
  204. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js +30 -35
  205. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js.map +1 -1
  206. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js +21 -34
  207. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js.map +1 -1
  208. package/features/contentEntry/GetEntriesByIds/abstractions.js +3 -14
  209. package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
  210. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js +15 -25
  211. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js.map +1 -1
  212. package/features/contentEntry/GetEntriesByIds/feature.js +8 -7
  213. package/features/contentEntry/GetEntriesByIds/feature.js.map +1 -1
  214. package/features/contentEntry/GetEntriesByIds/index.js +1 -3
  215. package/features/contentEntry/GetEntry/GetEntryUseCase.js +22 -31
  216. package/features/contentEntry/GetEntry/GetEntryUseCase.js.map +1 -1
  217. package/features/contentEntry/GetEntry/abstractions.js +2 -8
  218. package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
  219. package/features/contentEntry/GetEntry/feature.js +6 -5
  220. package/features/contentEntry/GetEntry/feature.js.map +1 -1
  221. package/features/contentEntry/GetEntry/index.js +0 -2
  222. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js +20 -25
  223. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js.map +1 -1
  224. package/features/contentEntry/GetEntryById/abstractions.js +2 -8
  225. package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
  226. package/features/contentEntry/GetEntryById/feature.js +6 -5
  227. package/features/contentEntry/GetEntryById/feature.js.map +1 -1
  228. package/features/contentEntry/GetEntryById/index.js +0 -2
  229. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js +24 -30
  230. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js.map +1 -1
  231. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js +21 -34
  232. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js.map +1 -1
  233. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +3 -14
  234. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
  235. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js +15 -25
  236. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js.map +1 -1
  237. package/features/contentEntry/GetLatestEntriesByIds/feature.js +8 -7
  238. package/features/contentEntry/GetLatestEntriesByIds/feature.js.map +1 -1
  239. package/features/contentEntry/GetLatestEntriesByIds/index.js +1 -3
  240. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js +21 -35
  241. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js.map +1 -1
  242. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js +23 -29
  243. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js.map +1 -1
  244. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +6 -21
  245. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
  246. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js +10 -19
  247. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js.map +1 -1
  248. package/features/contentEntry/GetLatestRevisionByEntryId/index.js +1 -3
  249. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js +17 -29
  250. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js.map +1 -1
  251. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js +14 -16
  252. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js.map +1 -1
  253. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js +17 -27
  254. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js.map +1 -1
  255. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js +21 -35
  256. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js.map +1 -1
  257. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js +23 -29
  258. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js.map +1 -1
  259. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js +17 -28
  260. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js.map +1 -1
  261. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +4 -16
  262. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
  263. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js +8 -12
  264. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js.map +1 -1
  265. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js +1 -3
  266. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js +24 -29
  267. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js.map +1 -1
  268. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js +21 -34
  269. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js.map +1 -1
  270. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +3 -14
  271. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
  272. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js +15 -25
  273. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js.map +1 -1
  274. package/features/contentEntry/GetPublishedEntriesByIds/feature.js +8 -7
  275. package/features/contentEntry/GetPublishedEntriesByIds/feature.js.map +1 -1
  276. package/features/contentEntry/GetPublishedEntriesByIds/index.js +1 -3
  277. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js +25 -31
  278. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js.map +1 -1
  279. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js +16 -23
  280. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js.map +1 -1
  281. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +3 -13
  282. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
  283. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js +7 -17
  284. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js.map +1 -1
  285. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js +1 -3
  286. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js +26 -33
  287. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js.map +1 -1
  288. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js +14 -17
  289. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js.map +1 -1
  290. package/features/contentEntry/GetRevisionById/abstractions.js +3 -15
  291. package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
  292. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js +14 -26
  293. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js.map +1 -1
  294. package/features/contentEntry/GetRevisionById/feature.js +8 -21
  295. package/features/contentEntry/GetRevisionById/feature.js.map +1 -1
  296. package/features/contentEntry/GetRevisionById/index.js +1 -3
  297. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js +24 -30
  298. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js.map +1 -1
  299. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js +21 -34
  300. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js.map +1 -1
  301. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +3 -14
  302. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
  303. package/features/contentEntry/GetRevisionsByEntryId/feature.js +7 -6
  304. package/features/contentEntry/GetRevisionsByEntryId/feature.js.map +1 -1
  305. package/features/contentEntry/GetRevisionsByEntryId/index.js +1 -3
  306. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js +25 -43
  307. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js.map +1 -1
  308. package/features/contentEntry/GetSingletonEntry/abstractions.js +2 -9
  309. package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
  310. package/features/contentEntry/GetSingletonEntry/feature.js +6 -13
  311. package/features/contentEntry/GetSingletonEntry/feature.js.map +1 -1
  312. package/features/contentEntry/GetSingletonEntry/index.js +0 -2
  313. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js +23 -24
  314. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js.map +1 -1
  315. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +45 -61
  316. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
  317. package/features/contentEntry/GetUniqueFieldValues/abstractions.js +3 -13
  318. package/features/contentEntry/GetUniqueFieldValues/abstractions.js.map +1 -1
  319. package/features/contentEntry/GetUniqueFieldValues/errors.js +19 -20
  320. package/features/contentEntry/GetUniqueFieldValues/errors.js.map +1 -1
  321. package/features/contentEntry/GetUniqueFieldValues/feature.js +7 -6
  322. package/features/contentEntry/GetUniqueFieldValues/feature.js.map +1 -1
  323. package/features/contentEntry/GetUniqueFieldValues/index.js +1 -3
  324. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js +22 -29
  325. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js.map +1 -1
  326. package/features/contentEntry/ListEntries/ListEntriesRepository.js +55 -57
  327. package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
  328. package/features/contentEntry/ListEntries/ListEntriesUseCase.js +33 -53
  329. package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
  330. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js +25 -27
  331. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js.map +1 -1
  332. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js +22 -29
  333. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js.map +1 -1
  334. package/features/contentEntry/ListEntries/abstractions.js +6 -35
  335. package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
  336. package/features/contentEntry/ListEntries/feature.js +10 -12
  337. package/features/contentEntry/ListEntries/feature.js.map +1 -1
  338. package/features/contentEntry/ListEntries/index.js +1 -3
  339. package/features/contentEntry/MoveEntry/MoveEntryRepository.js +19 -25
  340. package/features/contentEntry/MoveEntry/MoveEntryRepository.js.map +1 -1
  341. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +66 -94
  342. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
  343. package/features/contentEntry/MoveEntry/abstractions.js +3 -25
  344. package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
  345. package/features/contentEntry/MoveEntry/events.js +25 -31
  346. package/features/contentEntry/MoveEntry/events.js.map +1 -1
  347. package/features/contentEntry/MoveEntry/feature.js +7 -9
  348. package/features/contentEntry/MoveEntry/feature.js.map +1 -1
  349. package/features/contentEntry/MoveEntry/index.js +1 -3
  350. package/features/contentEntry/PublishEntry/PublishEntryRepository.js +28 -38
  351. package/features/contentEntry/PublishEntry/PublishEntryRepository.js.map +1 -1
  352. package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +3 -17
  353. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +77 -118
  354. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
  355. package/features/contentEntry/PublishEntry/abstractions.js +3 -25
  356. package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
  357. package/features/contentEntry/PublishEntry/events.js +25 -31
  358. package/features/contentEntry/PublishEntry/events.js.map +1 -1
  359. package/features/contentEntry/PublishEntry/feature.js +7 -9
  360. package/features/contentEntry/PublishEntry/feature.js.map +1 -1
  361. package/features/contentEntry/PublishEntry/index.js +1 -3
  362. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js +33 -48
  363. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js.map +1 -1
  364. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +3 -15
  365. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +68 -103
  366. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
  367. package/features/contentEntry/RepublishEntry/abstractions.js +3 -26
  368. package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
  369. package/features/contentEntry/RepublishEntry/events.js +25 -31
  370. package/features/contentEntry/RepublishEntry/events.js.map +1 -1
  371. package/features/contentEntry/RepublishEntry/feature.js +7 -9
  372. package/features/contentEntry/RepublishEntry/feature.js.map +1 -1
  373. package/features/contentEntry/RepublishEntry/index.js +0 -2
  374. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js +28 -38
  375. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js.map +1 -1
  376. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +80 -110
  377. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
  378. package/features/contentEntry/RestoreEntryFromBin/abstractions.js +3 -26
  379. package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
  380. package/features/contentEntry/RestoreEntryFromBin/events.js +25 -31
  381. package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
  382. package/features/contentEntry/RestoreEntryFromBin/feature.js +7 -9
  383. package/features/contentEntry/RestoreEntryFromBin/feature.js.map +1 -1
  384. package/features/contentEntry/RestoreEntryFromBin/index.js +0 -2
  385. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js +25 -30
  386. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js.map +1 -1
  387. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +3 -14
  388. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +70 -115
  389. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
  390. package/features/contentEntry/UnpublishEntry/abstractions.js +3 -14
  391. package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
  392. package/features/contentEntry/UnpublishEntry/events.js +25 -36
  393. package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
  394. package/features/contentEntry/UnpublishEntry/feature.js +7 -18
  395. package/features/contentEntry/UnpublishEntry/feature.js.map +1 -1
  396. package/features/contentEntry/UnpublishEntry/index.js +1 -3
  397. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js +25 -30
  398. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js.map +1 -1
  399. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +5 -22
  400. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +58 -107
  401. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
  402. package/features/contentEntry/UpdateEntry/abstractions.d.ts +1 -3
  403. package/features/contentEntry/UpdateEntry/abstractions.js +3 -14
  404. package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
  405. package/features/contentEntry/UpdateEntry/events.js +17 -27
  406. package/features/contentEntry/UpdateEntry/events.js.map +1 -1
  407. package/features/contentEntry/UpdateEntry/feature.js +7 -18
  408. package/features/contentEntry/UpdateEntry/feature.js.map +1 -1
  409. package/features/contentEntry/UpdateEntry/index.js +1 -3
  410. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
  411. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +77 -0
  412. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js.map +1 -0
  413. package/features/contentEntry/UpdateRevisionDescription/abstractions.d.ts +25 -0
  414. package/features/contentEntry/UpdateRevisionDescription/abstractions.js +5 -0
  415. package/features/contentEntry/UpdateRevisionDescription/abstractions.js.map +1 -0
  416. package/features/contentEntry/UpdateRevisionDescription/events.d.ts +44 -0
  417. package/features/contentEntry/UpdateRevisionDescription/events.js +23 -0
  418. package/features/contentEntry/UpdateRevisionDescription/events.js.map +1 -0
  419. package/features/contentEntry/UpdateRevisionDescription/feature.d.ts +12 -0
  420. package/features/contentEntry/UpdateRevisionDescription/feature.js +11 -0
  421. package/features/contentEntry/UpdateRevisionDescription/feature.js.map +1 -0
  422. package/features/contentEntry/UpdateRevisionDescription/index.d.ts +2 -0
  423. package/features/contentEntry/UpdateRevisionDescription/index.js +2 -0
  424. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js +17 -26
  425. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js.map +1 -1
  426. package/features/contentEntry/UpdateSingletonEntry/abstractions.js +2 -9
  427. package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
  428. package/features/contentEntry/UpdateSingletonEntry/feature.js +6 -13
  429. package/features/contentEntry/UpdateSingletonEntry/feature.js.map +1 -1
  430. package/features/contentEntry/UpdateSingletonEntry/index.js +0 -2
  431. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js +42 -63
  432. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js.map +1 -1
  433. package/features/contentEntry/ValidateEntry/abstractions.js +2 -8
  434. package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
  435. package/features/contentEntry/ValidateEntry/feature.js +6 -6
  436. package/features/contentEntry/ValidateEntry/feature.js.map +1 -1
  437. package/features/contentEntry/ValidateEntry/index.js +0 -2
  438. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.d.ts +15 -0
  439. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js +212 -0
  440. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js.map +1 -0
  441. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.d.ts +13 -0
  442. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js +5 -0
  443. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js.map +1 -0
  444. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.d.ts +4 -0
  445. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js +11 -0
  446. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js.map +1 -0
  447. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.d.ts +2 -0
  448. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.js +2 -0
  449. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.d.ts +15 -0
  450. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js +150 -0
  451. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js.map +1 -0
  452. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.d.ts +13 -0
  453. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js +5 -0
  454. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js.map +1 -0
  455. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.d.ts +4 -0
  456. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js +11 -0
  457. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js.map +1 -0
  458. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.d.ts +2 -0
  459. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.js +2 -0
  460. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.d.ts +12 -0
  461. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js +66 -0
  462. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js.map +1 -0
  463. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.d.ts +12 -0
  464. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js +5 -0
  465. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js.map +1 -0
  466. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.d.ts +4 -0
  467. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js +11 -0
  468. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js.map +1 -0
  469. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.d.ts +2 -0
  470. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.js +2 -0
  471. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.d.ts +12 -0
  472. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js +62 -0
  473. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js.map +1 -0
  474. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.d.ts +12 -0
  475. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js +5 -0
  476. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js.map +1 -0
  477. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.d.ts +4 -0
  478. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js +11 -0
  479. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js.map +1 -0
  480. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.d.ts +2 -0
  481. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.js +2 -0
  482. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.d.ts +10 -0
  483. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js +41 -0
  484. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js.map +1 -0
  485. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.d.ts +12 -0
  486. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js +5 -0
  487. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js.map +1 -0
  488. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.d.ts +4 -0
  489. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js +11 -0
  490. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js.map +1 -0
  491. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.d.ts +2 -0
  492. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.js +2 -0
  493. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.d.ts +4 -0
  494. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js +21 -0
  495. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js.map +1 -0
  496. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.d.ts +12 -0
  497. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js +104 -0
  498. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js.map +1 -0
  499. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.d.ts +13 -0
  500. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js +5 -0
  501. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js.map +1 -0
  502. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.d.ts +4 -0
  503. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js +11 -0
  504. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js.map +1 -0
  505. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.d.ts +2 -0
  506. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.js +2 -0
  507. package/{crud → features}/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +0 -3
  508. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +17 -0
  509. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
  510. package/features/contentEntry/entryDataFactories/statuses.js +7 -0
  511. package/features/contentEntry/entryDataFactories/statuses.js.map +1 -0
  512. package/features/contentEntry/entryDataFactories/system.js +10 -0
  513. package/features/contentEntry/entryDataFactories/system.js.map +1 -0
  514. package/features/contentModel/ContentModelFeature.js +16 -19
  515. package/features/contentModel/ContentModelFeature.js.map +1 -1
  516. package/features/contentModel/CreateModel/CreateModelRepository.js +104 -148
  517. package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
  518. package/features/contentModel/CreateModel/CreateModelUseCase.js +74 -119
  519. package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
  520. package/features/contentModel/CreateModel/abstractions.js +3 -13
  521. package/features/contentModel/CreateModel/abstractions.js.map +1 -1
  522. package/features/contentModel/CreateModel/events.js +25 -36
  523. package/features/contentModel/CreateModel/events.js.map +1 -1
  524. package/features/contentModel/CreateModel/feature.js +7 -16
  525. package/features/contentModel/CreateModel/feature.js.map +1 -1
  526. package/features/contentModel/CreateModel/index.js +1 -3
  527. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +107 -150
  528. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
  529. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +84 -119
  530. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
  531. package/features/contentModel/CreateModelFrom/abstractions.js +3 -13
  532. package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
  533. package/features/contentModel/CreateModelFrom/events.js +25 -36
  534. package/features/contentModel/CreateModelFrom/events.js.map +1 -1
  535. package/features/contentModel/CreateModelFrom/feature.js +7 -16
  536. package/features/contentModel/CreateModelFrom/feature.js.map +1 -1
  537. package/features/contentModel/CreateModelFrom/index.js +1 -3
  538. package/features/contentModel/DeleteModel/DeleteModelRepository.js +27 -41
  539. package/features/contentModel/DeleteModel/DeleteModelRepository.js.map +1 -1
  540. package/features/contentModel/DeleteModel/DeleteModelUseCase.js +44 -72
  541. package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
  542. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js +50 -83
  543. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js.map +1 -1
  544. package/features/contentModel/DeleteModel/abstractions.js +3 -13
  545. package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
  546. package/features/contentModel/DeleteModel/events.js +25 -36
  547. package/features/contentModel/DeleteModel/events.js.map +1 -1
  548. package/features/contentModel/DeleteModel/feature.js +8 -19
  549. package/features/contentModel/DeleteModel/feature.js.map +1 -1
  550. package/features/contentModel/DeleteModel/index.js +1 -3
  551. package/features/contentModel/GetModel/GetModelRepository.js +15 -23
  552. package/features/contentModel/GetModel/GetModelRepository.js.map +1 -1
  553. package/features/contentModel/GetModel/GetModelUseCase.js +21 -34
  554. package/features/contentModel/GetModel/GetModelUseCase.js.map +1 -1
  555. package/features/contentModel/GetModel/abstractions.js +3 -13
  556. package/features/contentModel/GetModel/abstractions.js.map +1 -1
  557. package/features/contentModel/GetModel/feature.js +7 -16
  558. package/features/contentModel/GetModel/feature.js.map +1 -1
  559. package/features/contentModel/GetModel/index.js +0 -2
  560. package/features/contentModel/ListModels/ListModelsRepository.js +18 -36
  561. package/features/contentModel/ListModels/ListModelsRepository.js.map +1 -1
  562. package/features/contentModel/ListModels/ListModelsUseCase.js +23 -41
  563. package/features/contentModel/ListModels/ListModelsUseCase.js.map +1 -1
  564. package/features/contentModel/ListModels/abstractions.js +3 -13
  565. package/features/contentModel/ListModels/abstractions.js.map +1 -1
  566. package/features/contentModel/ListModels/feature.js +7 -17
  567. package/features/contentModel/ListModels/feature.js.map +1 -1
  568. package/features/contentModel/ListModels/index.js +0 -2
  569. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +18 -18
  570. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -1
  571. package/features/contentModel/ModelFieldCompression/abstractions.js +2 -1
  572. package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -1
  573. package/features/contentModel/ModelFieldCompression/feature.js +6 -5
  574. package/features/contentModel/ModelFieldCompression/feature.js.map +1 -1
  575. package/features/contentModel/ModelFieldCompression/index.js +0 -2
  576. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +15 -19
  577. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
  578. package/features/contentModel/ModelToAstConverter/abstractions.js +2 -6
  579. package/features/contentModel/ModelToAstConverter/abstractions.js.map +1 -1
  580. package/features/contentModel/ModelToAstConverter/feature.js +6 -5
  581. package/features/contentModel/ModelToAstConverter/feature.js.map +1 -1
  582. package/features/contentModel/ModelToAstConverter/index.js +0 -2
  583. package/features/contentModel/UpdateModel/UpdateModelRepository.js +71 -97
  584. package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
  585. package/features/contentModel/UpdateModel/UpdateModelUseCase.js +75 -118
  586. package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
  587. package/features/contentModel/UpdateModel/abstractions.js +3 -13
  588. package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
  589. package/features/contentModel/UpdateModel/events.js +25 -36
  590. package/features/contentModel/UpdateModel/events.js.map +1 -1
  591. package/features/contentModel/UpdateModel/feature.js +7 -16
  592. package/features/contentModel/UpdateModel/feature.js.map +1 -1
  593. package/features/contentModel/UpdateModel/index.js +1 -3
  594. package/features/contentModel/shared/ModelsFetcher.js +66 -81
  595. package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
  596. package/features/contentModel/shared/PluginModelsProvider.js +38 -54
  597. package/features/contentModel/shared/PluginModelsProvider.js.map +1 -1
  598. package/features/contentModel/shared/abstractions.js +4 -16
  599. package/features/contentModel/shared/abstractions.js.map +1 -1
  600. package/features/contentModelGroup/ContentModelGroupFeature.js +12 -16
  601. package/features/contentModelGroup/ContentModelGroupFeature.js.map +1 -1
  602. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +63 -94
  603. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
  604. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +80 -107
  605. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
  606. package/features/contentModelGroup/CreateGroup/abstractions.js +3 -13
  607. package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
  608. package/features/contentModelGroup/CreateGroup/events.js +25 -36
  609. package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
  610. package/features/contentModelGroup/CreateGroup/feature.js +7 -16
  611. package/features/contentModelGroup/CreateGroup/feature.js.map +1 -1
  612. package/features/contentModelGroup/CreateGroup/index.js +0 -2
  613. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js +37 -56
  614. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js.map +1 -1
  615. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +53 -80
  616. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
  617. package/features/contentModelGroup/DeleteGroup/abstractions.js +3 -13
  618. package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
  619. package/features/contentModelGroup/DeleteGroup/events.js +25 -36
  620. package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
  621. package/features/contentModelGroup/DeleteGroup/feature.js +7 -16
  622. package/features/contentModelGroup/DeleteGroup/feature.js.map +1 -1
  623. package/features/contentModelGroup/DeleteGroup/index.js +0 -2
  624. package/features/contentModelGroup/GetGroup/GetGroupRepository.js +60 -80
  625. package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
  626. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js +19 -34
  627. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js.map +1 -1
  628. package/features/contentModelGroup/GetGroup/abstractions.js +3 -13
  629. package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
  630. package/features/contentModelGroup/GetGroup/feature.js +7 -16
  631. package/features/contentModelGroup/GetGroup/feature.js.map +1 -1
  632. package/features/contentModelGroup/GetGroup/index.js +0 -2
  633. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +57 -74
  634. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
  635. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js +19 -34
  636. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js.map +1 -1
  637. package/features/contentModelGroup/ListGroups/abstractions.js +3 -13
  638. package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
  639. package/features/contentModelGroup/ListGroups/feature.js +7 -16
  640. package/features/contentModelGroup/ListGroups/feature.js.map +1 -1
  641. package/features/contentModelGroup/ListGroups/index.js +0 -2
  642. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js +31 -44
  643. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js.map +1 -1
  644. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +75 -111
  645. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
  646. package/features/contentModelGroup/UpdateGroup/abstractions.js +3 -13
  647. package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
  648. package/features/contentModelGroup/UpdateGroup/events.js +25 -36
  649. package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
  650. package/features/contentModelGroup/UpdateGroup/feature.js +7 -16
  651. package/features/contentModelGroup/UpdateGroup/feature.js.map +1 -1
  652. package/features/contentModelGroup/UpdateGroup/index.js +0 -2
  653. package/features/contentModelGroup/shared/PluginGroupsProvider.js +61 -78
  654. package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
  655. package/features/contentModelGroup/shared/abstractions.js +4 -9
  656. package/features/contentModelGroup/shared/abstractions.js.map +1 -1
  657. package/features/contentModelGroup/shared/index.js +1 -3
  658. package/features/graphql/feature.js +18 -17
  659. package/features/graphql/feature.js.map +1 -1
  660. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +24 -20
  661. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -1
  662. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +2 -1
  663. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -1
  664. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +2 -1
  665. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -1
  666. package/features/graphql/fields/base/BooleanToGraphQL.js +37 -52
  667. package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -1
  668. package/features/graphql/fields/base/DateTimeToGraphQL.js +48 -63
  669. package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -1
  670. package/features/graphql/fields/base/DynamicZoneToGraphQL.js +168 -252
  671. package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -1
  672. package/features/graphql/fields/base/FileToGraphQL.js +24 -27
  673. package/features/graphql/fields/base/FileToGraphQL.js.map +1 -1
  674. package/features/graphql/fields/base/JsonToGraphQL.js +30 -39
  675. package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -1
  676. package/features/graphql/fields/base/LongTextToGraphQL.js +31 -42
  677. package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -1
  678. package/features/graphql/fields/base/NumberToGraphQL.js +37 -52
  679. package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -1
  680. package/features/graphql/fields/base/ObjectToGraphQL.js +180 -239
  681. package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -1
  682. package/features/graphql/fields/base/RefToGraphQL.js +150 -210
  683. package/features/graphql/fields/base/RefToGraphQL.js.map +1 -1
  684. package/features/graphql/fields/base/RichTextToGraphQL.js +35 -46
  685. package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -1
  686. package/features/graphql/fields/base/SearchableJsonToGraphQL.js +38 -51
  687. package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -1
  688. package/features/graphql/fields/base/TextToGraphQL.js +37 -52
  689. package/features/graphql/fields/base/TextToGraphQL.js.map +1 -1
  690. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +26 -31
  691. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -1
  692. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +7 -10
  693. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -1
  694. package/features/graphql/fields/base/richText/richTextResolver.js +11 -20
  695. package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -1
  696. package/features/graphql/fields/base/utils/createGraphQLInputField.js +6 -13
  697. package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -1
  698. package/features/graphql/index.js +0 -2
  699. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +2 -1
  700. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -1
  701. package/features/installer/CmsInstaller.js +31 -32
  702. package/features/installer/CmsInstaller.js.map +1 -1
  703. package/features/installer/feature.js +6 -5
  704. package/features/installer/feature.js.map +1 -1
  705. package/features/modelBuilder/LayoutBuilder.js +66 -122
  706. package/features/modelBuilder/LayoutBuilder.js.map +1 -1
  707. package/features/modelBuilder/abstractions.js +3 -17
  708. package/features/modelBuilder/abstractions.js.map +1 -1
  709. package/features/modelBuilder/feature.js +31 -42
  710. package/features/modelBuilder/feature.js.map +1 -1
  711. package/features/modelBuilder/fields/BaseFieldBuilder.js +31 -38
  712. package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -1
  713. package/features/modelBuilder/fields/BooleanFieldType.js +18 -17
  714. package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
  715. package/features/modelBuilder/fields/DataFieldBuilder.js +157 -201
  716. package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -1
  717. package/features/modelBuilder/fields/DateTimeFieldType.js +59 -78
  718. package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
  719. package/features/modelBuilder/fields/DynamicZoneFieldType.js +51 -54
  720. package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
  721. package/features/modelBuilder/fields/FieldBuilder.js +0 -2
  722. package/features/modelBuilder/fields/FieldBuilderRegistry.js +38 -62
  723. package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
  724. package/features/modelBuilder/fields/FileFieldType.js +25 -24
  725. package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
  726. package/features/modelBuilder/fields/JsonFieldType.js +13 -12
  727. package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
  728. package/features/modelBuilder/fields/LayoutFieldBuilder.js +3 -6
  729. package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -1
  730. package/features/modelBuilder/fields/LocationFieldType.js +15 -14
  731. package/features/modelBuilder/fields/LocationFieldType.js.map +1 -1
  732. package/features/modelBuilder/fields/LongTextFieldType.js +115 -114
  733. package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
  734. package/features/modelBuilder/fields/NumberFieldType.js +38 -37
  735. package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
  736. package/features/modelBuilder/fields/ObjectFieldType.js +50 -67
  737. package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
  738. package/features/modelBuilder/fields/RefFieldType.js +25 -24
  739. package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
  740. package/features/modelBuilder/fields/RichTextFieldType.js +20 -19
  741. package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
  742. package/features/modelBuilder/fields/SearchableJsonFieldType.js +13 -12
  743. package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
  744. package/features/modelBuilder/fields/TextFieldType.js +123 -123
  745. package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
  746. package/features/modelBuilder/fields/UiAlertFieldType.js +27 -27
  747. package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -1
  748. package/features/modelBuilder/fields/UiSeparatorFieldType.js +23 -22
  749. package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -1
  750. package/features/modelBuilder/fields/UiTabsFieldType.js +58 -63
  751. package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -1
  752. package/features/modelBuilder/fields/abstractions.js +2 -9
  753. package/features/modelBuilder/fields/abstractions.js.map +1 -1
  754. package/features/modelBuilder/fields/fieldTypeValidator.js +0 -31
  755. package/features/modelBuilder/index.js +10 -16
  756. package/features/modelBuilder/models/BaseModelBuilder.js +70 -130
  757. package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
  758. package/features/modelBuilder/models/ModelBuilder.js +18 -33
  759. package/features/modelBuilder/models/ModelBuilder.js.map +1 -1
  760. package/features/modelBuilder/models/ModelsProvider.js +24 -33
  761. package/features/modelBuilder/models/ModelsProvider.js.map +1 -1
  762. package/features/modelBuilder/models/PrivateModelBuilder.js +15 -24
  763. package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
  764. package/features/modelBuilder/models/PublicModelBuilder.js +89 -114
  765. package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
  766. package/features/modelBuilder/models/abstractions.js +2 -6
  767. package/features/modelBuilder/models/abstractions.js.map +1 -1
  768. package/features/shared/abstractions.js +5 -16
  769. package/features/shared/abstractions.js.map +1 -1
  770. package/features/sortMapper/SortMapper.js +27 -46
  771. package/features/sortMapper/SortMapper.js.map +1 -1
  772. package/features/sortMapper/abstractions.js +2 -2
  773. package/features/sortMapper/abstractions.js.map +1 -1
  774. package/features/sortMapper/feature.js +7 -6
  775. package/features/sortMapper/feature.js.map +1 -1
  776. package/features/storage/StorageTransformRegistry.js +24 -20
  777. package/features/storage/StorageTransformRegistry.js.map +1 -1
  778. package/features/storage/abstractions/StorageTransform.js +2 -1
  779. package/features/storage/abstractions/StorageTransform.js.map +1 -1
  780. package/features/storage/abstractions/StorageTransformRegistry.js +2 -1
  781. package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -1
  782. package/features/storage/feature.js +13 -12
  783. package/features/storage/feature.js.map +1 -1
  784. package/features/storage/fields/DateStorageTransform.js +67 -96
  785. package/features/storage/fields/DateStorageTransform.js.map +1 -1
  786. package/features/storage/fields/DefaultStorageTransform.js +13 -14
  787. package/features/storage/fields/DefaultStorageTransform.js.map +1 -1
  788. package/features/storage/fields/DynamicZoneStorageTransform.js +91 -128
  789. package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -1
  790. package/features/storage/fields/JsonStorageTransform.js +17 -22
  791. package/features/storage/fields/JsonStorageTransform.js.map +1 -1
  792. package/features/storage/fields/LongTextStorageTransform.js +33 -44
  793. package/features/storage/fields/LongTextStorageTransform.js.map +1 -1
  794. package/features/storage/fields/ObjectStorageTransform.js +64 -87
  795. package/features/storage/fields/ObjectStorageTransform.js.map +1 -1
  796. package/features/storage/fields/RichTextStorageTransform.js +23 -28
  797. package/features/storage/fields/RichTextStorageTransform.js.map +1 -1
  798. package/features/storage/index.js +0 -2
  799. package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -15
  800. package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
  801. package/features/validation/CmsModelFieldValidatorRegistry.js +21 -17
  802. package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -1
  803. package/features/validation/abstractions/CmsModelFieldPatternValidator.js +2 -1
  804. package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -1
  805. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +2 -1
  806. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
  807. package/features/validation/abstractions/CmsModelFieldValidator.js +2 -1
  808. package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -1
  809. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +2 -1
  810. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -1
  811. package/features/validation/feature.js +25 -24
  812. package/features/validation/feature.js.map +1 -1
  813. package/features/validation/index.js +0 -2
  814. package/features/validation/validators/DateGteValidator.js +12 -18
  815. package/features/validation/validators/DateGteValidator.js.map +1 -1
  816. package/features/validation/validators/DateLteValidator.js +12 -18
  817. package/features/validation/validators/DateLteValidator.js.map +1 -1
  818. package/features/validation/validators/GteValidator.js +11 -13
  819. package/features/validation/validators/GteValidator.js.map +1 -1
  820. package/features/validation/validators/InValidator.js +11 -13
  821. package/features/validation/validators/InValidator.js.map +1 -1
  822. package/features/validation/validators/LteValidator.js +11 -13
  823. package/features/validation/validators/LteValidator.js.map +1 -1
  824. package/features/validation/validators/MaxLengthValidator.js +11 -13
  825. package/features/validation/validators/MaxLengthValidator.js.map +1 -1
  826. package/features/validation/validators/MinLengthValidator.js +11 -13
  827. package/features/validation/validators/MinLengthValidator.js.map +1 -1
  828. package/features/validation/validators/PatternValidator.js +20 -29
  829. package/features/validation/validators/PatternValidator.js.map +1 -1
  830. package/features/validation/validators/RequiredValidator.js +10 -9
  831. package/features/validation/validators/RequiredValidator.js.map +1 -1
  832. package/features/validation/validators/TimeGteValidator.js +11 -13
  833. package/features/validation/validators/TimeGteValidator.js.map +1 -1
  834. package/features/validation/validators/TimeLteValidator.js +11 -13
  835. package/features/validation/validators/TimeLteValidator.js.map +1 -1
  836. package/features/validation/validators/UniqueValidator.js +31 -38
  837. package/features/validation/validators/UniqueValidator.js.map +1 -1
  838. package/features/validation/validators/patterns/EmailPattern.js +11 -8
  839. package/features/validation/validators/patterns/EmailPattern.js.map +1 -1
  840. package/features/validation/validators/patterns/LowerCasePattern.js +11 -8
  841. package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -1
  842. package/features/validation/validators/patterns/LowerCaseSpacePattern.js +11 -8
  843. package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -1
  844. package/features/validation/validators/patterns/UpperCasePattern.js +11 -8
  845. package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -1
  846. package/features/validation/validators/patterns/UpperCaseSpacePattern.js +11 -8
  847. package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -1
  848. package/features/validation/validators/patterns/UrlPattern.js +11 -8
  849. package/features/validation/validators/patterns/UrlPattern.js.map +1 -1
  850. package/features/whereMapper/WhereMapper.js +42 -69
  851. package/features/whereMapper/WhereMapper.js.map +1 -1
  852. package/features/whereMapper/abstractions.js +2 -2
  853. package/features/whereMapper/abstractions.js.map +1 -1
  854. package/features/whereMapper/feature.js +7 -6
  855. package/features/whereMapper/feature.js.map +1 -1
  856. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +18 -37
  857. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  858. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +92 -136
  859. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  860. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +103 -152
  861. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  862. package/fieldConverters/index.js +6 -6
  863. package/fieldConverters/index.js.map +1 -1
  864. package/graphql/buildSchemaPlugins.js +16 -20
  865. package/graphql/buildSchemaPlugins.js.map +1 -1
  866. package/graphql/checkEndpointAccess.js +4 -5
  867. package/graphql/checkEndpointAccess.js.map +1 -1
  868. package/graphql/createExecutableSchema.js +30 -41
  869. package/graphql/createExecutableSchema.js.map +1 -1
  870. package/graphql/formatErrorPayload.js +13 -14
  871. package/graphql/formatErrorPayload.js.map +1 -1
  872. package/graphql/generateSchema.js +20 -24
  873. package/graphql/generateSchema.js.map +1 -1
  874. package/graphql/getSchema/generateCacheId.js +7 -6
  875. package/graphql/getSchema/generateCacheId.js.map +1 -1
  876. package/graphql/getSchema/generateCacheKey.js +23 -23
  877. package/graphql/getSchema/generateCacheKey.js.map +1 -1
  878. package/graphql/getSchema.js +46 -63
  879. package/graphql/getSchema.js.map +1 -1
  880. package/graphql/graphQLHandlerFactory.js +15 -23
  881. package/graphql/graphQLHandlerFactory.js.map +1 -1
  882. package/graphql/handleRequest.js +50 -63
  883. package/graphql/handleRequest.js.map +1 -1
  884. package/graphql/index.js +6 -3
  885. package/graphql/index.js.map +1 -1
  886. package/graphql/scalars/RevisionId.js +10 -14
  887. package/graphql/scalars/RevisionId.js.map +1 -1
  888. package/graphql/scalars/RevisionIdScalarPlugin.js +10 -7
  889. package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -1
  890. package/graphql/schema/baseContentSchema.js +29 -30
  891. package/graphql/schema/baseContentSchema.js.map +1 -1
  892. package/graphql/schema/baseSchema.js +33 -36
  893. package/graphql/schema/baseSchema.js.map +1 -1
  894. package/graphql/schema/cms/createEntryResolver.js +37 -49
  895. package/graphql/schema/cms/createEntryResolver.js.map +1 -1
  896. package/graphql/schema/cms/deleteEntryResolver.js +39 -51
  897. package/graphql/schema/cms/deleteEntryResolver.js.map +1 -1
  898. package/graphql/schema/cms/getEntryResolver.js +37 -51
  899. package/graphql/schema/cms/getEntryResolver.js.map +1 -1
  900. package/graphql/schema/cms/helpers/buildFieldsSelection.js +26 -71
  901. package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -1
  902. package/graphql/schema/cms/helpers/getErrorMessage.js +5 -11
  903. package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -1
  904. package/graphql/schema/cms/helpers/getModel.js +5 -9
  905. package/graphql/schema/cms/helpers/getModel.js.map +1 -1
  906. package/graphql/schema/cms/helpers/index.js +0 -2
  907. package/graphql/schema/cms/helpers/transformSortToArray.js +7 -34
  908. package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -1
  909. package/graphql/schema/cms/helpers/transformWhereToNested.js +23 -50
  910. package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -1
  911. package/graphql/schema/cms/helpers.js +0 -2
  912. package/graphql/schema/cms/index.js +20 -22
  913. package/graphql/schema/cms/index.js.map +1 -1
  914. package/graphql/schema/cms/listEntriesResolver.js +58 -82
  915. package/graphql/schema/cms/listEntriesResolver.js.map +1 -1
  916. package/graphql/schema/cms/publishEntryResolver.js +37 -49
  917. package/graphql/schema/cms/publishEntryResolver.js.map +1 -1
  918. package/graphql/schema/cms/resolvers/createEntry.js +11 -10
  919. package/graphql/schema/cms/resolvers/createEntry.js.map +1 -1
  920. package/graphql/schema/cms/resolvers/deleteEntryRevision.js +11 -10
  921. package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -1
  922. package/graphql/schema/cms/resolvers/getEntry.js +11 -10
  923. package/graphql/schema/cms/resolvers/getEntry.js.map +1 -1
  924. package/graphql/schema/cms/resolvers/index.js +0 -2
  925. package/graphql/schema/cms/resolvers/listEntries.js +11 -10
  926. package/graphql/schema/cms/resolvers/listEntries.js.map +1 -1
  927. package/graphql/schema/cms/resolvers/mutationCms.js +13 -18
  928. package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -1
  929. package/graphql/schema/cms/resolvers/publishEntryRevision.js +11 -10
  930. package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -1
  931. package/graphql/schema/cms/resolvers/queryCms.js +13 -17
  932. package/graphql/schema/cms/resolvers/queryCms.js.map +1 -1
  933. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +11 -10
  934. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -1
  935. package/graphql/schema/cms/resolvers/updateEntryRevision.js +11 -10
  936. package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -1
  937. package/graphql/schema/cms/typeDefs/index.js +0 -2
  938. package/graphql/schema/cms/typeDefs/mutation.js +8 -7
  939. package/graphql/schema/cms/typeDefs/mutation.js.map +1 -1
  940. package/graphql/schema/cms/typeDefs/query.js +8 -7
  941. package/graphql/schema/cms/typeDefs/query.js.map +1 -1
  942. package/graphql/schema/cms/typeDefs/responses.js +8 -7
  943. package/graphql/schema/cms/typeDefs/responses.js.map +1 -1
  944. package/graphql/schema/cms/unpublishEntryResolver.js +37 -49
  945. package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -1
  946. package/graphql/schema/cms/updateEntryResolver.js +38 -51
  947. package/graphql/schema/cms/updateEntryResolver.js.map +1 -1
  948. package/graphql/schema/contentEntries.js +218 -305
  949. package/graphql/schema/contentEntries.js.map +1 -1
  950. package/graphql/schema/contentModelGroups.js +70 -89
  951. package/graphql/schema/contentModelGroups.js.map +1 -1
  952. package/graphql/schema/contentModels.js +92 -105
  953. package/graphql/schema/contentModels.js.map +1 -1
  954. package/graphql/schema/createFieldResolvers.js +67 -121
  955. package/graphql/schema/createFieldResolvers.js.map +1 -1
  956. package/graphql/schema/createManageResolvers.js +70 -86
  957. package/graphql/schema/createManageResolvers.js.map +1 -1
  958. package/graphql/schema/createManageSDL.js +48 -58
  959. package/graphql/schema/createManageSDL.js.map +1 -1
  960. package/graphql/schema/createPreviewResolvers.js +24 -27
  961. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  962. package/graphql/schema/createReadResolvers.js +26 -35
  963. package/graphql/schema/createReadResolvers.js.map +1 -1
  964. package/graphql/schema/createReadSDL.js +35 -42
  965. package/graphql/schema/createReadSDL.js.map +1 -1
  966. package/graphql/schema/createSingularResolvers.js +32 -40
  967. package/graphql/schema/createSingularResolvers.js.map +1 -1
  968. package/graphql/schema/createSingularSDL.js +32 -44
  969. package/graphql/schema/createSingularSDL.js.map +1 -1
  970. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +36 -48
  971. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
  972. package/graphql/schema/resolvers/manage/resolveCreate.js +9 -10
  973. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  974. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +9 -10
  975. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  976. package/graphql/schema/resolvers/manage/resolveDelete.js +18 -28
  977. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  978. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +11 -12
  979. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
  980. package/graphql/schema/resolvers/manage/resolveGet.js +41 -53
  981. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  982. package/graphql/schema/resolvers/manage/resolveGetByIds.js +9 -10
  983. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  984. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +9 -10
  985. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  986. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +9 -10
  987. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
  988. package/graphql/schema/resolvers/manage/resolveList.js +10 -11
  989. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  990. package/graphql/schema/resolvers/manage/resolveListDeleted.js +10 -11
  991. package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -1
  992. package/graphql/schema/resolvers/manage/resolveMove.js +11 -17
  993. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
  994. package/graphql/schema/resolvers/manage/resolvePublish.js +9 -10
  995. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  996. package/graphql/schema/resolvers/manage/resolveRepublish.js +10 -11
  997. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  998. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +9 -10
  999. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -1
  1000. package/graphql/schema/resolvers/manage/resolveUnpublish.js +10 -11
  1001. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  1002. package/graphql/schema/resolvers/manage/resolveUpdate.js +9 -10
  1003. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  1004. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
  1005. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +12 -0
  1006. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
  1007. package/graphql/schema/resolvers/manage/resolveValidate.js +10 -11
  1008. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -1
  1009. package/graphql/schema/resolvers/preview/resolveGet.js +13 -16
  1010. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  1011. package/graphql/schema/resolvers/preview/resolveList.js +10 -11
  1012. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  1013. package/graphql/schema/resolvers/read/resolveGet.js +13 -16
  1014. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  1015. package/graphql/schema/resolvers/read/resolveList.js +10 -11
  1016. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  1017. package/graphql/schema/resolvers/singular/resolveGet.js +7 -10
  1018. package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -1
  1019. package/graphql/schema/resolvers/singular/resolveUpdate.js +7 -10
  1020. package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -1
  1021. package/graphql/schema/schemaPlugins.js +81 -97
  1022. package/graphql/schema/schemaPlugins.js.map +1 -1
  1023. package/index.js +17 -23
  1024. package/index.js.map +1 -1
  1025. package/legacy/abstractions.js +5 -22
  1026. package/legacy/abstractions.js.map +1 -1
  1027. package/package.json +25 -25
  1028. package/parameters/context.js +4 -7
  1029. package/parameters/context.js.map +1 -1
  1030. package/parameters/header.js +10 -22
  1031. package/parameters/header.js.map +1 -1
  1032. package/parameters/index.js +0 -2
  1033. package/parameters/path.js +9 -19
  1034. package/parameters/path.js.map +1 -1
  1035. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js +6 -5
  1036. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -1
  1037. package/plugins/CmsGraphQLSchemaPlugin/index.js +0 -2
  1038. package/plugins/CmsGroupPlugin.js +15 -26
  1039. package/plugins/CmsGroupPlugin.js.map +1 -1
  1040. package/plugins/CmsModelFieldConverterPlugin.js +5 -5
  1041. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  1042. package/plugins/CmsModelPlugin.js +135 -213
  1043. package/plugins/CmsModelPlugin.js.map +1 -1
  1044. package/plugins/CmsParametersPlugin.js +12 -14
  1045. package/plugins/CmsParametersPlugin.js.map +1 -1
  1046. package/plugins/StorageOperationsCmsModelPlugin.js +22 -29
  1047. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
  1048. package/plugins/index.js +0 -2
  1049. package/types/context.d.ts +6 -2
  1050. package/types/context.js +0 -3
  1051. package/types/fields/dynamicZoneField.js +0 -3
  1052. package/types/fields/objectField.js +0 -3
  1053. package/types/identity.js +0 -3
  1054. package/types/index.js +0 -2
  1055. package/types/model.js +0 -3
  1056. package/types/modelAst.js +0 -3
  1057. package/types/modelField.js +0 -3
  1058. package/types/modelGroup.js +0 -3
  1059. package/types/plugins.js +0 -3
  1060. package/types/types.d.ts +4 -9
  1061. package/types/types.js +6 -218
  1062. package/types/types.js.map +1 -1
  1063. package/utils/caching/Cache.js +28 -35
  1064. package/utils/caching/Cache.js.map +1 -1
  1065. package/utils/caching/CacheKey.js +13 -14
  1066. package/utils/caching/CacheKey.js.map +1 -1
  1067. package/utils/caching/index.js +0 -2
  1068. package/utils/caching/types.js +0 -3
  1069. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +12 -15
  1070. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
  1071. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +13 -12
  1072. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
  1073. package/utils/contentModelAst/CmsModelToAstConverter.js +14 -18
  1074. package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -1
  1075. package/utils/contentModelAst/index.js +0 -2
  1076. package/utils/converters/Converter.js +35 -44
  1077. package/utils/converters/Converter.js.map +1 -1
  1078. package/utils/converters/ConverterCollection.js +70 -107
  1079. package/utils/converters/ConverterCollection.js.map +1 -1
  1080. package/utils/converters/types.js +0 -3
  1081. package/utils/converters/valueKeyFromStorageConverter.js +13 -19
  1082. package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
  1083. package/utils/converters/valueKeyStorageConverter.js +18 -21
  1084. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  1085. package/utils/converters/valueKeyToStorageConverter.js +13 -19
  1086. package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
  1087. package/utils/createModelField.js +24 -44
  1088. package/utils/createModelField.js.map +1 -1
  1089. package/utils/createTypeFromFields.js +30 -52
  1090. package/utils/createTypeFromFields.js.map +1 -1
  1091. package/utils/createTypeName.js +2 -3
  1092. package/utils/createTypeName.js.map +1 -1
  1093. package/utils/date.js +9 -24
  1094. package/utils/date.js.map +1 -1
  1095. package/utils/entryStorage.js +57 -90
  1096. package/utils/entryStorage.js.map +1 -1
  1097. package/utils/errors.js +7 -7
  1098. package/utils/errors.js.map +1 -1
  1099. package/utils/filterAsync.js +8 -9
  1100. package/utils/filterAsync.js.map +1 -1
  1101. package/utils/getBaseFieldType.js +4 -5
  1102. package/utils/getBaseFieldType.js.map +1 -1
  1103. package/utils/getEntryDescription.js +9 -14
  1104. package/utils/getEntryDescription.js.map +1 -1
  1105. package/utils/getEntryImage.js +9 -14
  1106. package/utils/getEntryImage.js.map +1 -1
  1107. package/utils/getEntryTitle.js +11 -26
  1108. package/utils/getEntryTitle.js.map +1 -1
  1109. package/utils/getSchemaFromFieldPlugins.js +27 -39
  1110. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  1111. package/utils/identity.js +9 -16
  1112. package/utils/identity.js.map +1 -1
  1113. package/utils/incrementEntryIdVersion.js +14 -18
  1114. package/utils/incrementEntryIdVersion.js.map +1 -1
  1115. package/utils/index.js +0 -2
  1116. package/utils/isHeadlessCmsReady.js +5 -14
  1117. package/utils/isHeadlessCmsReady.js.map +1 -1
  1118. package/utils/modelFieldTraverser/ModelFieldTraverser.js +27 -29
  1119. package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -1
  1120. package/utils/modelFieldTraverser/index.js +0 -2
  1121. package/utils/renderFields.js +26 -49
  1122. package/utils/renderFields.js.map +1 -1
  1123. package/utils/renderGetFilterFields.js +31 -37
  1124. package/utils/renderGetFilterFields.js.map +1 -1
  1125. package/utils/renderInputFields.js +23 -40
  1126. package/utils/renderInputFields.js.map +1 -1
  1127. package/utils/renderListFilterFields.js +60 -56
  1128. package/utils/renderListFilterFields.js.map +1 -1
  1129. package/utils/renderSortEnum.js +21 -23
  1130. package/utils/renderSortEnum.js.map +1 -1
  1131. package/utils/toSlug.js +6 -7
  1132. package/utils/toSlug.js.map +1 -1
  1133. package/abstractions/entryHooks/index.js.map +0 -1
  1134. package/abstractions/index.js.map +0 -1
  1135. package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +0 -19
  1136. package/crud/contentEntry/entryDataFactories/createEntryData.js +0 -263
  1137. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +0 -1
  1138. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +0 -22
  1139. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +0 -165
  1140. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +0 -1
  1141. package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +0 -14
  1142. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +0 -59
  1143. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +0 -1
  1144. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +0 -13
  1145. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +0 -54
  1146. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +0 -1
  1147. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +0 -11
  1148. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +0 -34
  1149. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +0 -1
  1150. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +0 -19
  1151. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +0 -131
  1152. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +0 -1
  1153. package/crud/contentEntry/entryDataFactories/index.d.ts +0 -8
  1154. package/crud/contentEntry/entryDataFactories/index.js +0 -10
  1155. package/crud/contentEntry/entryDataFactories/index.js.map +0 -1
  1156. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +0 -32
  1157. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +0 -1
  1158. package/crud/contentEntry/entryDataFactories/statuses.js +0 -6
  1159. package/crud/contentEntry/entryDataFactories/statuses.js.map +0 -1
  1160. package/crud/contentEntry/entryDataFactories/system.js +0 -14
  1161. package/crud/contentEntry/entryDataFactories/system.js.map +0 -1
  1162. package/export/index.js.map +0 -1
  1163. package/exports/api/cms/entry.js.map +0 -1
  1164. package/exports/api/cms/graphql.js.map +0 -1
  1165. package/exports/api/cms/group.js.map +0 -1
  1166. package/exports/api/cms/model.js.map +0 -1
  1167. package/exports/api/cms/storage.js.map +0 -1
  1168. package/exports/api/cms/validation.js.map +0 -1
  1169. package/extensions/entryHooks/index.js.map +0 -1
  1170. package/features/contentEntry/ContentEntryTraverser/index.js.map +0 -1
  1171. package/features/contentEntry/CreateEntry/index.js.map +0 -1
  1172. package/features/contentEntry/CreateEntryRevisionFrom/index.js.map +0 -1
  1173. package/features/contentEntry/DeleteEntry/index.js.map +0 -1
  1174. package/features/contentEntry/DeleteEntryRevision/index.js.map +0 -1
  1175. package/features/contentEntry/DeleteMultipleEntries/index.js.map +0 -1
  1176. package/features/contentEntry/GetEntriesByIds/index.js.map +0 -1
  1177. package/features/contentEntry/GetEntry/index.js.map +0 -1
  1178. package/features/contentEntry/GetEntryById/index.js.map +0 -1
  1179. package/features/contentEntry/GetLatestEntriesByIds/index.js.map +0 -1
  1180. package/features/contentEntry/GetLatestRevisionByEntryId/index.js.map +0 -1
  1181. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js.map +0 -1
  1182. package/features/contentEntry/GetPublishedEntriesByIds/index.js.map +0 -1
  1183. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js.map +0 -1
  1184. package/features/contentEntry/GetRevisionById/index.js.map +0 -1
  1185. package/features/contentEntry/GetRevisionsByEntryId/index.js.map +0 -1
  1186. package/features/contentEntry/GetSingletonEntry/index.js.map +0 -1
  1187. package/features/contentEntry/GetUniqueFieldValues/index.js.map +0 -1
  1188. package/features/contentEntry/ListEntries/index.js.map +0 -1
  1189. package/features/contentEntry/MoveEntry/index.js.map +0 -1
  1190. package/features/contentEntry/PublishEntry/index.js.map +0 -1
  1191. package/features/contentEntry/RepublishEntry/index.js.map +0 -1
  1192. package/features/contentEntry/RestoreEntryFromBin/index.js.map +0 -1
  1193. package/features/contentEntry/UnpublishEntry/index.js.map +0 -1
  1194. package/features/contentEntry/UpdateEntry/index.js.map +0 -1
  1195. package/features/contentEntry/UpdateSingletonEntry/index.js.map +0 -1
  1196. package/features/contentEntry/ValidateEntry/index.js.map +0 -1
  1197. package/features/contentModel/CreateModel/index.js.map +0 -1
  1198. package/features/contentModel/CreateModelFrom/index.js.map +0 -1
  1199. package/features/contentModel/DeleteModel/index.js.map +0 -1
  1200. package/features/contentModel/GetModel/index.js.map +0 -1
  1201. package/features/contentModel/ListModels/index.js.map +0 -1
  1202. package/features/contentModel/ModelFieldCompression/index.js.map +0 -1
  1203. package/features/contentModel/ModelToAstConverter/index.js.map +0 -1
  1204. package/features/contentModel/UpdateModel/index.js.map +0 -1
  1205. package/features/contentModelGroup/CreateGroup/index.js.map +0 -1
  1206. package/features/contentModelGroup/DeleteGroup/index.js.map +0 -1
  1207. package/features/contentModelGroup/GetGroup/index.js.map +0 -1
  1208. package/features/contentModelGroup/ListGroups/index.js.map +0 -1
  1209. package/features/contentModelGroup/UpdateGroup/index.js.map +0 -1
  1210. package/features/contentModelGroup/shared/index.js.map +0 -1
  1211. package/features/graphql/index.js.map +0 -1
  1212. package/features/modelBuilder/fields/FieldBuilder.js.map +0 -1
  1213. package/features/modelBuilder/fields/fieldTypeValidator.js.map +0 -1
  1214. package/features/modelBuilder/index.js.map +0 -1
  1215. package/features/storage/index.js.map +0 -1
  1216. package/features/validation/index.js.map +0 -1
  1217. package/graphql/schema/cms/helpers/index.js.map +0 -1
  1218. package/graphql/schema/cms/helpers.js.map +0 -1
  1219. package/graphql/schema/cms/resolvers/index.js.map +0 -1
  1220. package/graphql/schema/cms/typeDefs/index.js.map +0 -1
  1221. package/parameters/index.js.map +0 -1
  1222. package/plugins/CmsGraphQLSchemaPlugin/index.js.map +0 -1
  1223. package/plugins/index.js.map +0 -1
  1224. package/types/context.js.map +0 -1
  1225. package/types/fields/dynamicZoneField.js.map +0 -1
  1226. package/types/fields/objectField.js.map +0 -1
  1227. package/types/identity.js.map +0 -1
  1228. package/types/index.js.map +0 -1
  1229. package/types/model.js.map +0 -1
  1230. package/types/modelAst.js.map +0 -1
  1231. package/types/modelField.js.map +0 -1
  1232. package/types/modelGroup.js.map +0 -1
  1233. package/types/plugins.js.map +0 -1
  1234. package/utils/caching/index.js.map +0 -1
  1235. package/utils/caching/types.js.map +0 -1
  1236. package/utils/contentModelAst/index.js.map +0 -1
  1237. package/utils/converters/types.js.map +0 -1
  1238. package/utils/index.js.map +0 -1
  1239. package/utils/modelFieldTraverser/index.js.map +0 -1
  1240. /package/{crud → features}/contentEntry/entryDataFactories/statuses.d.ts +0 -0
  1241. /package/{crud → features}/contentEntry/entryDataFactories/system.d.ts +0 -0
@@ -1,43 +1,32 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
2
  import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
3
-
4
- /**
5
- * Event payloads
6
- */
7
-
8
- /**
9
- * ModelBeforeCreateFromEvent - Published before creating a model from existing
10
- */
11
- export class ModelBeforeCreateFromEvent extends DomainEvent {
12
- eventType = "Cms/Model/BeforeCreateFrom";
13
- getHandlerAbstraction() {
14
- return ModelBeforeCreateFromEventHandler;
15
- }
3
+ class ModelBeforeCreateFromEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return ModelBeforeCreateFromEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "Cms/Model/BeforeCreateFrom";
9
+ }
16
10
  }
17
-
18
- /** Hook into model lifecycle before a model is cloned. */
19
- export const ModelBeforeCreateFromEventHandler = createAbstraction("ModelBeforeCreateFromEventHandler");
20
- /**
21
- * ModelAfterCreateFromEvent - Published after creating a model from existing
22
- */
23
- export class ModelAfterCreateFromEvent extends DomainEvent {
24
- eventType = "Cms/Model/AfterCreateFrom";
25
- getHandlerAbstraction() {
26
- return ModelAfterCreateFromEventHandler;
27
- }
11
+ const ModelBeforeCreateFromEventHandler = createAbstraction("ModelBeforeCreateFromEventHandler");
12
+ class ModelAfterCreateFromEvent extends DomainEvent {
13
+ getHandlerAbstraction() {
14
+ return ModelAfterCreateFromEventHandler;
15
+ }
16
+ constructor(...args){
17
+ super(...args), this.eventType = "Cms/Model/AfterCreateFrom";
18
+ }
28
19
  }
29
-
30
- /** Hook into model lifecycle after a model is cloned. */
31
- export const ModelAfterCreateFromEventHandler = createAbstraction("ModelAfterCreateFromEventHandler");
32
- /**
33
- * ModelCreateFromErrorEvent - Published when create from fails
34
- */
35
- export class ModelCreateFromErrorEvent extends DomainEvent {
36
- eventType = "Cms/Model/CreateFromError";
37
- getHandlerAbstraction() {
38
- return ModelCreateFromErrorEventHandler;
39
- }
20
+ const ModelAfterCreateFromEventHandler = createAbstraction("ModelAfterCreateFromEventHandler");
21
+ class ModelCreateFromErrorEvent extends DomainEvent {
22
+ getHandlerAbstraction() {
23
+ return ModelCreateFromErrorEventHandler;
24
+ }
25
+ constructor(...args){
26
+ super(...args), this.eventType = "Cms/Model/CreateFromError";
27
+ }
40
28
  }
41
- export const ModelCreateFromErrorEventHandler = createAbstraction("ModelCreateFromErrorEventHandler");
29
+ const ModelCreateFromErrorEventHandler = createAbstraction("ModelCreateFromErrorEventHandler");
30
+ export { ModelAfterCreateFromEvent, ModelAfterCreateFromEventHandler, ModelBeforeCreateFromEvent, ModelBeforeCreateFromEventHandler, ModelCreateFromErrorEvent, ModelCreateFromErrorEventHandler };
42
31
 
43
32
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","DomainEvent","ModelBeforeCreateFromEvent","eventType","getHandlerAbstraction","ModelBeforeCreateFromEventHandler","ModelAfterCreateFromEvent","ModelAfterCreateFromEventHandler","ModelCreateFromErrorEvent","ModelCreateFromErrorEventHandler"],"sources":["events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { CmsModel, CmsModelCreateFromInput } from \"~/types/index.js\";\n\n/**\n * Event payloads\n */\nexport interface ModelBeforeCreateFromEventPayload {\n model: CmsModel;\n original: CmsModel;\n input: CmsModelCreateFromInput;\n}\n\nexport interface ModelAfterCreateFromEventPayload {\n model: CmsModel;\n original: CmsModel;\n}\n\nexport interface ModelCreateFromErrorEventPayload {\n input: CmsModelCreateFromInput;\n model: CmsModel;\n original: CmsModel;\n error: Error;\n}\n\n/**\n * ModelBeforeCreateFromEvent - Published before creating a model from existing\n */\nexport class ModelBeforeCreateFromEvent extends DomainEvent<ModelBeforeCreateFromEventPayload> {\n eventType = \"Cms/Model/BeforeCreateFrom\" as const;\n\n getHandlerAbstraction() {\n return ModelBeforeCreateFromEventHandler;\n }\n}\n\n/** Hook into model lifecycle before a model is cloned. */\nexport const ModelBeforeCreateFromEventHandler = createAbstraction<\n IEventHandler<ModelBeforeCreateFromEvent>\n>(\"ModelBeforeCreateFromEventHandler\");\n\nexport namespace ModelBeforeCreateFromEventHandler {\n export type Interface = IEventHandler<ModelBeforeCreateFromEvent>;\n export type Event = ModelBeforeCreateFromEvent;\n}\n\n/**\n * ModelAfterCreateFromEvent - Published after creating a model from existing\n */\nexport class ModelAfterCreateFromEvent extends DomainEvent<ModelAfterCreateFromEventPayload> {\n eventType = \"Cms/Model/AfterCreateFrom\" as const;\n\n getHandlerAbstraction() {\n return ModelAfterCreateFromEventHandler;\n }\n}\n\n/** Hook into model lifecycle after a model is cloned. */\nexport const ModelAfterCreateFromEventHandler = createAbstraction<\n IEventHandler<ModelAfterCreateFromEvent>\n>(\"ModelAfterCreateFromEventHandler\");\n\nexport namespace ModelAfterCreateFromEventHandler {\n export type Interface = IEventHandler<ModelAfterCreateFromEvent>;\n export type Event = ModelAfterCreateFromEvent;\n}\n\n/**\n * ModelCreateFromErrorEvent - Published when create from fails\n */\nexport class ModelCreateFromErrorEvent extends DomainEvent<ModelCreateFromErrorEventPayload> {\n eventType = \"Cms/Model/CreateFromError\" as const;\n\n getHandlerAbstraction() {\n return ModelCreateFromErrorEventHandler;\n }\n}\n\nexport const ModelCreateFromErrorEventHandler = createAbstraction<\n IEventHandler<ModelCreateFromErrorEvent>\n>(\"ModelCreateFromErrorEventHandler\");\n\nexport namespace ModelCreateFromErrorEventHandler {\n export type Interface = IEventHandler<ModelCreateFromErrorEvent>;\n export type Event = ModelCreateFromErrorEvent;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAEvD,SAASC,WAAW,QAAQ,mDAAmD;;AAG/E;AACA;AACA;;AAmBA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,SAASD,WAAW,CAAoC;EAC3FE,SAAS,GAAG,4BAA4B;EAExCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOC,iCAAiC;EAC5C;AACJ;;AAEA;AACA,OAAO,MAAMA,iCAAiC,GAAGL,iBAAiB,CAEhE,mCAAmC,CAAC;AAOtC;AACA;AACA;AACA,OAAO,MAAMM,yBAAyB,SAASL,WAAW,CAAmC;EACzFE,SAAS,GAAG,2BAA2B;EAEvCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOG,gCAAgC;EAC3C;AACJ;;AAEA;AACA,OAAO,MAAMA,gCAAgC,GAAGP,iBAAiB,CAE/D,kCAAkC,CAAC;AAOrC;AACA;AACA;AACA,OAAO,MAAMQ,yBAAyB,SAASP,WAAW,CAAmC;EACzFE,SAAS,GAAG,2BAA2B;EAEvCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOK,gCAAgC;EAC3C;AACJ;AAEA,OAAO,MAAMA,gCAAgC,GAAGT,iBAAiB,CAE/D,kCAAkC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/CreateModelFrom/events.js","sources":["../../../../src/features/contentModel/CreateModelFrom/events.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { CmsModel, CmsModelCreateFromInput } from \"~/types/index.js\";\n\n/**\n * Event payloads\n */\nexport interface ModelBeforeCreateFromEventPayload {\n model: CmsModel;\n original: CmsModel;\n input: CmsModelCreateFromInput;\n}\n\nexport interface ModelAfterCreateFromEventPayload {\n model: CmsModel;\n original: CmsModel;\n}\n\nexport interface ModelCreateFromErrorEventPayload {\n input: CmsModelCreateFromInput;\n model: CmsModel;\n original: CmsModel;\n error: Error;\n}\n\n/**\n * ModelBeforeCreateFromEvent - Published before creating a model from existing\n */\nexport class ModelBeforeCreateFromEvent extends DomainEvent<ModelBeforeCreateFromEventPayload> {\n eventType = \"Cms/Model/BeforeCreateFrom\" as const;\n\n getHandlerAbstraction() {\n return ModelBeforeCreateFromEventHandler;\n }\n}\n\n/** Hook into model lifecycle before a model is cloned. */\nexport const ModelBeforeCreateFromEventHandler = createAbstraction<\n IEventHandler<ModelBeforeCreateFromEvent>\n>(\"ModelBeforeCreateFromEventHandler\");\n\nexport namespace ModelBeforeCreateFromEventHandler {\n export type Interface = IEventHandler<ModelBeforeCreateFromEvent>;\n export type Event = ModelBeforeCreateFromEvent;\n}\n\n/**\n * ModelAfterCreateFromEvent - Published after creating a model from existing\n */\nexport class ModelAfterCreateFromEvent extends DomainEvent<ModelAfterCreateFromEventPayload> {\n eventType = \"Cms/Model/AfterCreateFrom\" as const;\n\n getHandlerAbstraction() {\n return ModelAfterCreateFromEventHandler;\n }\n}\n\n/** Hook into model lifecycle after a model is cloned. */\nexport const ModelAfterCreateFromEventHandler = createAbstraction<\n IEventHandler<ModelAfterCreateFromEvent>\n>(\"ModelAfterCreateFromEventHandler\");\n\nexport namespace ModelAfterCreateFromEventHandler {\n export type Interface = IEventHandler<ModelAfterCreateFromEvent>;\n export type Event = ModelAfterCreateFromEvent;\n}\n\n/**\n * ModelCreateFromErrorEvent - Published when create from fails\n */\nexport class ModelCreateFromErrorEvent extends DomainEvent<ModelCreateFromErrorEventPayload> {\n eventType = \"Cms/Model/CreateFromError\" as const;\n\n getHandlerAbstraction() {\n return ModelCreateFromErrorEventHandler;\n }\n}\n\nexport const ModelCreateFromErrorEventHandler = createAbstraction<\n IEventHandler<ModelCreateFromErrorEvent>\n>(\"ModelCreateFromErrorEventHandler\");\n\nexport namespace ModelCreateFromErrorEventHandler {\n export type Interface = IEventHandler<ModelCreateFromErrorEvent>;\n export type Event = ModelCreateFromErrorEvent;\n}\n"],"names":["ModelBeforeCreateFromEvent","DomainEvent","ModelBeforeCreateFromEventHandler","createAbstraction","ModelAfterCreateFromEvent","ModelAfterCreateFromEventHandler","ModelCreateFromErrorEvent","ModelCreateFromErrorEventHandler"],"mappings":";;AA6BO,MAAMA,mCAAmCC;IAG5C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMA,oCAAoCC,kBAE/C;AAUK,MAAMC,kCAAkCH;IAG3C,wBAAwB;QACpB,OAAOI;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMA,mCAAmCF,kBAE9C;AAUK,MAAMG,kCAAkCL;IAG3C,wBAAwB;QACpB,OAAOM;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAEO,MAAMA,mCAAmCJ,kBAE9C"}
@@ -1,22 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { CreateModelFromUseCase } from "./CreateModelFromUseCase.js";
3
3
  import { CreateModelFromRepository } from "./CreateModelFromRepository.js";
4
-
5
- /**
6
- * CreateModelFrom Feature
7
- *
8
- * Provides functionality for cloning/copying existing content models.
9
- * All validation (modelId generation, domain rules, uniqueness) is handled by the repository.
10
- */
11
- export const CreateModelFromFeature = createFeature({
12
- name: "CreateModelFrom",
13
- register(container) {
14
- // Register core use case
15
- container.register(CreateModelFromUseCase);
16
-
17
- // Register repository in singleton scope (shared instance)
18
- container.register(CreateModelFromRepository).inSingletonScope();
19
- }
4
+ const CreateModelFromFeature = createFeature({
5
+ name: "CreateModelFrom",
6
+ register (container) {
7
+ container.register(CreateModelFromUseCase);
8
+ container.register(CreateModelFromRepository).inSingletonScope();
9
+ }
20
10
  });
11
+ export { CreateModelFromFeature };
21
12
 
22
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","CreateModelFromUseCase","CreateModelFromRepository","CreateModelFromFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateModelFromUseCase } from \"./CreateModelFromUseCase.js\";\nimport { CreateModelFromRepository } from \"./CreateModelFromRepository.js\";\n\n/**\n * CreateModelFrom Feature\n *\n * Provides functionality for cloning/copying existing content models.\n * All validation (modelId generation, domain rules, uniqueness) is handled by the repository.\n */\nexport const CreateModelFromFeature = createFeature({\n name: \"CreateModelFrom\",\n register(container) {\n // Register core use case\n container.register(CreateModelFromUseCase);\n\n // Register repository in singleton scope (shared instance)\n container.register(CreateModelFromRepository).inSingletonScope();\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,sBAAsB;AAC/B,SAASC,yBAAyB;;AAElC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,sBAAsB,GAAGH,aAAa,CAAC;EAChDI,IAAI,EAAE,iBAAiB;EACvBC,QAAQA,CAACC,SAAS,EAAE;IAChB;IACAA,SAAS,CAACD,QAAQ,CAACJ,sBAAsB,CAAC;;IAE1C;IACAK,SAAS,CAACD,QAAQ,CAACH,yBAAyB,CAAC,CAACK,gBAAgB,CAAC,CAAC;EACpE;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/CreateModelFrom/feature.js","sources":["../../../../src/features/contentModel/CreateModelFrom/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateModelFromUseCase } from \"./CreateModelFromUseCase.js\";\nimport { CreateModelFromRepository } from \"./CreateModelFromRepository.js\";\n\n/**\n * CreateModelFrom Feature\n *\n * Provides functionality for cloning/copying existing content models.\n * All validation (modelId generation, domain rules, uniqueness) is handled by the repository.\n */\nexport const CreateModelFromFeature = createFeature({\n name: \"CreateModelFrom\",\n register(container) {\n // Register core use case\n container.register(CreateModelFromUseCase);\n\n // Register repository in singleton scope (shared instance)\n container.register(CreateModelFromRepository).inSingletonScope();\n }\n});\n"],"names":["CreateModelFromFeature","createFeature","container","CreateModelFromUseCase","CreateModelFromRepository"],"mappings":";;;AAUO,MAAMA,yBAAyBC,cAAc;IAChD,MAAM;IACN,UAASC,SAAS;QAEdA,UAAU,QAAQ,CAACC;QAGnBD,UAAU,QAAQ,CAACE,2BAA2B,gBAAgB;IAClE;AACJ"}
@@ -1,4 +1,2 @@
1
- export { CreateModelFromUseCase, CreateModelFromRepository } from "./abstractions.js";
1
+ export { CreateModelFromRepository, CreateModelFromUseCase } from "./abstractions.js";
2
2
  export { ModelAfterCreateFromEventHandler, ModelBeforeCreateFromEventHandler } from "./events.js";
3
-
4
- //# sourceMappingURL=index.js.map
@@ -1,51 +1,37 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { DeleteModelRepository as RepositoryAbstraction } from "./abstractions.js";
2
+ import { DeleteModelRepository } from "./abstractions.js";
3
3
  import { ModelCache, ModelsFetcher } from "../shared/abstractions.js";
4
4
  import { ModelCannotDeleteCodeModelError, ModelPersistenceError } from "../../../domain/contentModel/errors.js";
5
5
  import { StorageOperations } from "../../shared/abstractions.js";
6
- /**
7
- * DeleteModelRepository - Validates and deletes a model from storage.
8
- *
9
- * Responsibilities:
10
- * - Validate model is not defined via plugin (core domain rule)
11
- * - Delete from storage
12
- * - Clear ModelCache after successful deletion
13
- *
14
- * Note: Entry validation and cleanup is handled by decorator
15
- */
16
6
  class DeleteModelRepositoryImpl {
17
- constructor(modelCache, modelsFetcher, storageOperations) {
18
- this.modelCache = modelCache;
19
- this.modelsFetcher = modelsFetcher;
20
- this.storageOperations = storageOperations;
21
- }
22
- async execute(model) {
23
- try {
24
- // Check if this is a plugin model
25
- const existingModelResult = await this.modelsFetcher.fetchById(model.modelId);
26
- if (existingModelResult.isFail()) {
27
- return Result.fail(new ModelPersistenceError(existingModelResult.error));
28
- }
29
- if (existingModelResult.value.isPlugin) {
30
- return Result.fail(new ModelCannotDeleteCodeModelError(model.modelId));
31
- }
32
-
33
- // Delete from storage
34
- await this.storageOperations.models.delete({
35
- model
36
- });
37
-
38
- // Clear cache
39
- this.modelCache.clear();
40
- return Result.ok();
41
- } catch (error) {
42
- return Result.fail(new ModelPersistenceError(error));
7
+ constructor(modelCache, modelsFetcher, storageOperations){
8
+ this.modelCache = modelCache;
9
+ this.modelsFetcher = modelsFetcher;
10
+ this.storageOperations = storageOperations;
11
+ }
12
+ async execute(model) {
13
+ try {
14
+ const existingModelResult = await this.modelsFetcher.fetchById(model.modelId);
15
+ if (existingModelResult.isFail()) return Result.fail(new ModelPersistenceError(existingModelResult.error));
16
+ if (existingModelResult.value.isPlugin) return Result.fail(new ModelCannotDeleteCodeModelError(model.modelId));
17
+ await this.storageOperations.models.delete({
18
+ model
19
+ });
20
+ this.modelCache.clear();
21
+ return Result.ok();
22
+ } catch (error) {
23
+ return Result.fail(new ModelPersistenceError(error));
24
+ }
43
25
  }
44
- }
45
26
  }
46
- export const DeleteModelRepository = RepositoryAbstraction.createImplementation({
47
- implementation: DeleteModelRepositoryImpl,
48
- dependencies: [ModelCache, ModelsFetcher, StorageOperations]
27
+ const DeleteModelRepository_DeleteModelRepository = DeleteModelRepository.createImplementation({
28
+ implementation: DeleteModelRepositoryImpl,
29
+ dependencies: [
30
+ ModelCache,
31
+ ModelsFetcher,
32
+ StorageOperations
33
+ ]
49
34
  });
35
+ export { DeleteModelRepository_DeleteModelRepository as DeleteModelRepository };
50
36
 
51
37
  //# sourceMappingURL=DeleteModelRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","DeleteModelRepository","RepositoryAbstraction","ModelCache","ModelsFetcher","ModelCannotDeleteCodeModelError","ModelPersistenceError","StorageOperations","DeleteModelRepositoryImpl","constructor","modelCache","modelsFetcher","storageOperations","execute","model","existingModelResult","fetchById","modelId","isFail","fail","error","value","isPlugin","models","delete","clear","ok","createImplementation","implementation","dependencies"],"sources":["DeleteModelRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ModelCache, ModelsFetcher } from \"~/features/contentModel/shared/abstractions.js\";\nimport {\n ModelCannotDeleteCodeModelError,\n ModelPersistenceError\n} from \"~/domain/contentModel/errors.js\";\nimport { StorageOperations } from \"~/features/shared/abstractions.js\";\nimport type { CmsModel } from \"~/types/index.js\";\n\n/**\n * DeleteModelRepository - Validates and deletes a model from storage.\n *\n * Responsibilities:\n * - Validate model is not defined via plugin (core domain rule)\n * - Delete from storage\n * - Clear ModelCache after successful deletion\n *\n * Note: Entry validation and cleanup is handled by decorator\n */\nclass DeleteModelRepositoryImpl implements RepositoryAbstraction.Interface {\n public constructor(\n private modelCache: ModelCache.Interface,\n private modelsFetcher: ModelsFetcher.Interface,\n private storageOperations: StorageOperations.Interface\n ) {}\n\n async execute(model: CmsModel): Promise<Result<void, RepositoryAbstraction.Error>> {\n try {\n // Check if this is a plugin model\n const existingModelResult = await this.modelsFetcher.fetchById(model.modelId);\n if (existingModelResult.isFail()) {\n return Result.fail(new ModelPersistenceError(existingModelResult.error));\n }\n\n if (existingModelResult.value.isPlugin) {\n return Result.fail(new ModelCannotDeleteCodeModelError(model.modelId));\n }\n\n // Delete from storage\n await this.storageOperations.models.delete({ model });\n\n // Clear cache\n this.modelCache.clear();\n\n return Result.ok();\n } catch (error) {\n return Result.fail(new ModelPersistenceError(error as Error));\n }\n }\n}\n\nexport const DeleteModelRepository = RepositoryAbstraction.createImplementation({\n implementation: DeleteModelRepositoryImpl,\n dependencies: [ModelCache, ModelsFetcher, StorageOperations]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,qBAAqB,IAAIC,qBAAqB;AACvD,SAASC,UAAU,EAAEC,aAAa;AAClC,SACIC,+BAA+B,EAC/BC,qBAAqB;AAEzB,SAASC,iBAAiB;AAG1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,yBAAyB,CAA4C;EAChEC,WAAWA,CACNC,UAAgC,EAChCC,aAAsC,EACtCC,iBAA8C,EACxD;IAAA,KAHUF,UAAgC,GAAhCA,UAAgC;IAAA,KAChCC,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,iBAA8C,GAA9CA,iBAA8C;EACvD;EAEH,MAAMC,OAAOA,CAACC,KAAe,EAAsD;IAC/E,IAAI;MACA;MACA,MAAMC,mBAAmB,GAAG,MAAM,IAAI,CAACJ,aAAa,CAACK,SAAS,CAACF,KAAK,CAACG,OAAO,CAAC;MAC7E,IAAIF,mBAAmB,CAACG,MAAM,CAAC,CAAC,EAAE;QAC9B,OAAOlB,MAAM,CAACmB,IAAI,CAAC,IAAIb,qBAAqB,CAACS,mBAAmB,CAACK,KAAK,CAAC,CAAC;MAC5E;MAEA,IAAIL,mBAAmB,CAACM,KAAK,CAACC,QAAQ,EAAE;QACpC,OAAOtB,MAAM,CAACmB,IAAI,CAAC,IAAId,+BAA+B,CAACS,KAAK,CAACG,OAAO,CAAC,CAAC;MAC1E;;MAEA;MACA,MAAM,IAAI,CAACL,iBAAiB,CAACW,MAAM,CAACC,MAAM,CAAC;QAAEV;MAAM,CAAC,CAAC;;MAErD;MACA,IAAI,CAACJ,UAAU,CAACe,KAAK,CAAC,CAAC;MAEvB,OAAOzB,MAAM,CAAC0B,EAAE,CAAC,CAAC;IACtB,CAAC,CAAC,OAAON,KAAK,EAAE;MACZ,OAAOpB,MAAM,CAACmB,IAAI,CAAC,IAAIb,qBAAqB,CAACc,KAAc,CAAC,CAAC;IACjE;EACJ;AACJ;AAEA,OAAO,MAAMnB,qBAAqB,GAAGC,qBAAqB,CAACyB,oBAAoB,CAAC;EAC5EC,cAAc,EAAEpB,yBAAyB;EACzCqB,YAAY,EAAE,CAAC1B,UAAU,EAAEC,aAAa,EAAEG,iBAAiB;AAC/D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/DeleteModel/DeleteModelRepository.js","sources":["../../../../src/features/contentModel/DeleteModel/DeleteModelRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ModelCache, ModelsFetcher } from \"~/features/contentModel/shared/abstractions.js\";\nimport {\n ModelCannotDeleteCodeModelError,\n ModelPersistenceError\n} from \"~/domain/contentModel/errors.js\";\nimport { StorageOperations } from \"~/features/shared/abstractions.js\";\nimport type { CmsModel } from \"~/types/index.js\";\n\n/**\n * DeleteModelRepository - Validates and deletes a model from storage.\n *\n * Responsibilities:\n * - Validate model is not defined via plugin (core domain rule)\n * - Delete from storage\n * - Clear ModelCache after successful deletion\n *\n * Note: Entry validation and cleanup is handled by decorator\n */\nclass DeleteModelRepositoryImpl implements RepositoryAbstraction.Interface {\n public constructor(\n private modelCache: ModelCache.Interface,\n private modelsFetcher: ModelsFetcher.Interface,\n private storageOperations: StorageOperations.Interface\n ) {}\n\n async execute(model: CmsModel): Promise<Result<void, RepositoryAbstraction.Error>> {\n try {\n // Check if this is a plugin model\n const existingModelResult = await this.modelsFetcher.fetchById(model.modelId);\n if (existingModelResult.isFail()) {\n return Result.fail(new ModelPersistenceError(existingModelResult.error));\n }\n\n if (existingModelResult.value.isPlugin) {\n return Result.fail(new ModelCannotDeleteCodeModelError(model.modelId));\n }\n\n // Delete from storage\n await this.storageOperations.models.delete({ model });\n\n // Clear cache\n this.modelCache.clear();\n\n return Result.ok();\n } catch (error) {\n return Result.fail(new ModelPersistenceError(error as Error));\n }\n }\n}\n\nexport const DeleteModelRepository = RepositoryAbstraction.createImplementation({\n implementation: DeleteModelRepositoryImpl,\n dependencies: [ModelCache, ModelsFetcher, StorageOperations]\n});\n"],"names":["DeleteModelRepositoryImpl","modelCache","modelsFetcher","storageOperations","model","existingModelResult","Result","ModelPersistenceError","ModelCannotDeleteCodeModelError","error","DeleteModelRepository","RepositoryAbstraction","ModelCache","ModelsFetcher","StorageOperations"],"mappings":";;;;;AAoBA,MAAMA;IACF,YACYC,UAAgC,EAChCC,aAAsC,EACtCC,iBAA8C,CACxD;aAHUF,UAAU,GAAVA;aACAC,aAAa,GAAbA;aACAC,iBAAiB,GAAjBA;IACT;IAEH,MAAM,QAAQC,KAAe,EAAsD;QAC/E,IAAI;YAEA,MAAMC,sBAAsB,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAACD,MAAM,OAAO;YAC5E,IAAIC,oBAAoB,MAAM,IAC1B,OAAOC,OAAO,IAAI,CAAC,IAAIC,sBAAsBF,oBAAoB,KAAK;YAG1E,IAAIA,oBAAoB,KAAK,CAAC,QAAQ,EAClC,OAAOC,OAAO,IAAI,CAAC,IAAIE,gCAAgCJ,MAAM,OAAO;YAIxE,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC;gBAAEA;YAAM;YAGnD,IAAI,CAAC,UAAU,CAAC,KAAK;YAErB,OAAOE,OAAO,EAAE;QACpB,EAAE,OAAOG,OAAO;YACZ,OAAOH,OAAO,IAAI,CAAC,IAAIC,sBAAsBE;QACjD;IACJ;AACJ;AAEO,MAAMC,8CAAwBC,sBAAAA,oBAA0C,CAAC;IAC5E,gBAAgBX;IAChB,cAAc;QAACY;QAAYC;QAAeC;KAAkB;AAChE"}
@@ -1,84 +1,56 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { DeleteModelUseCase as UseCaseAbstraction } from "./abstractions.js";
3
- import { DeleteModelRepository } from "./abstractions.js";
2
+ import { DeleteModelRepository, DeleteModelUseCase } from "./abstractions.js";
4
3
  import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
5
- import { ModelBeforeDeleteEvent } from "./events.js";
6
- import { ModelAfterDeleteEvent } from "./events.js";
7
- import { ModelDeleteErrorEvent } from "./events.js";
4
+ import { ModelAfterDeleteEvent, ModelBeforeDeleteEvent, ModelDeleteErrorEvent } from "./events.js";
8
5
  import { AccessControl } from "../../shared/abstractions.js";
9
6
  import { ModelNotAuthorizedError } from "../../../domain/contentModel/errors.js";
10
7
  import { GetModelUseCase } from "../GetModel/index.js";
11
-
12
- /**
13
- * DeleteModelUseCase - Core model deletion orchestration.
14
- *
15
- * Responsibilities:
16
- * - Fetch model
17
- * - Access control checks
18
- * - Publish before event
19
- * - Delegate to repository for deletion
20
- * - Publish after event or error event
21
- *
22
- * Note: Validation (e.g., checking for entries, plugin models) should be done in event handlers
23
- */
24
8
  class DeleteModelUseCaseImpl {
25
- constructor(getModelUseCase, eventPublisher, repository, accessControl) {
26
- this.getModelUseCase = getModelUseCase;
27
- this.eventPublisher = eventPublisher;
28
- this.repository = repository;
29
- this.accessControl = accessControl;
30
- }
31
- async execute(modelId) {
32
- // Initial access control check
33
- const canAccess = await this.accessControl.canAccessModel({
34
- rwd: "d"
35
- });
36
- if (!canAccess) {
37
- return Result.fail(new ModelNotAuthorizedError());
38
- }
39
-
40
- // Get the model (with access control check)
41
- const getResult = await this.getModelUseCase.execute(modelId);
42
- if (getResult.isFail()) {
43
- return Result.fail(getResult.error);
44
- }
45
- const model = getResult.value;
46
-
47
- // Access control check on the specific model
48
- const canAccessModel = await this.accessControl.canAccessModel({
49
- model,
50
- rwd: "d"
51
- });
52
- if (!canAccessModel) {
53
- return Result.fail(ModelNotAuthorizedError.fromModel(model));
9
+ constructor(getModelUseCase, eventPublisher, repository, accessControl){
10
+ this.getModelUseCase = getModelUseCase;
11
+ this.eventPublisher = eventPublisher;
12
+ this.repository = repository;
13
+ this.accessControl = accessControl;
54
14
  }
55
-
56
- // Publish before event
57
- await this.eventPublisher.publish(new ModelBeforeDeleteEvent({
58
- model
59
- }));
60
-
61
- // Delete via repository
62
- const result = await this.repository.execute(model);
63
- if (result.isFail()) {
64
- // Publish error event
65
- await this.eventPublisher.publish(new ModelDeleteErrorEvent({
66
- model,
67
- error: result.error
68
- }));
69
- return Result.fail(result.error);
15
+ async execute(modelId) {
16
+ const canAccess = await this.accessControl.canAccessModel({
17
+ rwd: "d"
18
+ });
19
+ if (!canAccess) return Result.fail(new ModelNotAuthorizedError());
20
+ const getResult = await this.getModelUseCase.execute(modelId);
21
+ if (getResult.isFail()) return Result.fail(getResult.error);
22
+ const model = getResult.value;
23
+ const canAccessModel = await this.accessControl.canAccessModel({
24
+ model,
25
+ rwd: "d"
26
+ });
27
+ if (!canAccessModel) return Result.fail(ModelNotAuthorizedError.fromModel(model));
28
+ await this.eventPublisher.publish(new ModelBeforeDeleteEvent({
29
+ model
30
+ }));
31
+ const result = await this.repository.execute(model);
32
+ if (result.isFail()) {
33
+ await this.eventPublisher.publish(new ModelDeleteErrorEvent({
34
+ model,
35
+ error: result.error
36
+ }));
37
+ return Result.fail(result.error);
38
+ }
39
+ await this.eventPublisher.publish(new ModelAfterDeleteEvent({
40
+ model
41
+ }));
42
+ return Result.ok();
70
43
  }
71
-
72
- // Publish after event
73
- await this.eventPublisher.publish(new ModelAfterDeleteEvent({
74
- model
75
- }));
76
- return Result.ok();
77
- }
78
44
  }
79
- export const DeleteModelUseCase = UseCaseAbstraction.createImplementation({
80
- implementation: DeleteModelUseCaseImpl,
81
- dependencies: [GetModelUseCase, EventPublisher, DeleteModelRepository, AccessControl]
45
+ const DeleteModelUseCase_DeleteModelUseCase = DeleteModelUseCase.createImplementation({
46
+ implementation: DeleteModelUseCaseImpl,
47
+ dependencies: [
48
+ GetModelUseCase,
49
+ EventPublisher,
50
+ DeleteModelRepository,
51
+ AccessControl
52
+ ]
82
53
  });
54
+ export { DeleteModelUseCase_DeleteModelUseCase as DeleteModelUseCase };
83
55
 
84
56
  //# sourceMappingURL=DeleteModelUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","DeleteModelUseCase","UseCaseAbstraction","DeleteModelRepository","EventPublisher","ModelBeforeDeleteEvent","ModelAfterDeleteEvent","ModelDeleteErrorEvent","AccessControl","ModelNotAuthorizedError","GetModelUseCase","DeleteModelUseCaseImpl","constructor","getModelUseCase","eventPublisher","repository","accessControl","execute","modelId","canAccess","canAccessModel","rwd","fail","getResult","isFail","error","model","value","fromModel","publish","result","ok","createImplementation","implementation","dependencies"],"sources":["DeleteModelUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { DeleteModelRepository } from \"./abstractions.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { ModelBeforeDeleteEvent } from \"./events.js\";\nimport { ModelAfterDeleteEvent } from \"./events.js\";\nimport { ModelDeleteErrorEvent } from \"./events.js\";\nimport { AccessControl } from \"~/features/shared/abstractions.js\";\nimport { ModelNotAuthorizedError } from \"~/domain/contentModel/errors.js\";\nimport { GetModelUseCase } from \"~/features/contentModel/GetModel/index.js\";\n\n/**\n * DeleteModelUseCase - Core model deletion orchestration.\n *\n * Responsibilities:\n * - Fetch model\n * - Access control checks\n * - Publish before event\n * - Delegate to repository for deletion\n * - Publish after event or error event\n *\n * Note: Validation (e.g., checking for entries, plugin models) should be done in event handlers\n */\nclass DeleteModelUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(\n private getModelUseCase: GetModelUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: DeleteModelRepository.Interface,\n private accessControl: AccessControl.Interface\n ) {}\n\n async execute(modelId: string): Promise<Result<void, UseCaseAbstraction.Error>> {\n // Initial access control check\n const canAccess = await this.accessControl.canAccessModel({ rwd: \"d\" });\n if (!canAccess) {\n return Result.fail(new ModelNotAuthorizedError());\n }\n\n // Get the model (with access control check)\n const getResult = await this.getModelUseCase.execute(modelId);\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n const model = getResult.value;\n\n // Access control check on the specific model\n const canAccessModel = await this.accessControl.canAccessModel({ model, rwd: \"d\" });\n if (!canAccessModel) {\n return Result.fail(ModelNotAuthorizedError.fromModel(model));\n }\n\n // Publish before event\n await this.eventPublisher.publish(new ModelBeforeDeleteEvent({ model }));\n\n // Delete via repository\n const result = await this.repository.execute(model);\n\n if (result.isFail()) {\n // Publish error event\n await this.eventPublisher.publish(\n new ModelDeleteErrorEvent({\n model,\n error: result.error\n })\n );\n return Result.fail(result.error);\n }\n\n // Publish after event\n await this.eventPublisher.publish(new ModelAfterDeleteEvent({ model }));\n\n return Result.ok();\n }\n}\n\nexport const DeleteModelUseCase = UseCaseAbstraction.createImplementation({\n implementation: DeleteModelUseCaseImpl,\n dependencies: [GetModelUseCase, EventPublisher, DeleteModelRepository, AccessControl]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,IAAIC,kBAAkB;AACjD,SAASC,qBAAqB;AAC9B,SAASC,cAAc,QAAQ,mDAAmD;AAClF,SAASC,sBAAsB;AAC/B,SAASC,qBAAqB;AAC9B,SAASC,qBAAqB;AAC9B,SAASC,aAAa;AACtB,SAASC,uBAAuB;AAChC,SAASC,eAAe;;AAExB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,sBAAsB,CAAyC;EAC1DC,WAAWA,CACNC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA2C,EAC3CC,aAAsC,EAChD;IAAA,KAJUH,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAA2C,GAA3CA,UAA2C;IAAA,KAC3CC,aAAsC,GAAtCA,aAAsC;EAC/C;EAEH,MAAMC,OAAOA,CAACC,OAAe,EAAmD;IAC5E;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACH,aAAa,CAACI,cAAc,CAAC;MAAEC,GAAG,EAAE;IAAI,CAAC,CAAC;IACvE,IAAI,CAACF,SAAS,EAAE;MACZ,OAAOnB,MAAM,CAACsB,IAAI,CAAC,IAAIb,uBAAuB,CAAC,CAAC,CAAC;IACrD;;IAEA;IACA,MAAMc,SAAS,GAAG,MAAM,IAAI,CAACV,eAAe,CAACI,OAAO,CAACC,OAAO,CAAC;IAC7D,IAAIK,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOxB,MAAM,CAACsB,IAAI,CAACC,SAAS,CAACE,KAAK,CAAC;IACvC;IAEA,MAAMC,KAAK,GAAGH,SAAS,CAACI,KAAK;;IAE7B;IACA,MAAMP,cAAc,GAAG,MAAM,IAAI,CAACJ,aAAa,CAACI,cAAc,CAAC;MAAEM,KAAK;MAAEL,GAAG,EAAE;IAAI,CAAC,CAAC;IACnF,IAAI,CAACD,cAAc,EAAE;MACjB,OAAOpB,MAAM,CAACsB,IAAI,CAACb,uBAAuB,CAACmB,SAAS,CAACF,KAAK,CAAC,CAAC;IAChE;;IAEA;IACA,MAAM,IAAI,CAACZ,cAAc,CAACe,OAAO,CAAC,IAAIxB,sBAAsB,CAAC;MAAEqB;IAAM,CAAC,CAAC,CAAC;;IAExE;IACA,MAAMI,MAAM,GAAG,MAAM,IAAI,CAACf,UAAU,CAACE,OAAO,CAACS,KAAK,CAAC;IAEnD,IAAII,MAAM,CAACN,MAAM,CAAC,CAAC,EAAE;MACjB;MACA,MAAM,IAAI,CAACV,cAAc,CAACe,OAAO,CAC7B,IAAItB,qBAAqB,CAAC;QACtBmB,KAAK;QACLD,KAAK,EAAEK,MAAM,CAACL;MAClB,CAAC,CACL,CAAC;MACD,OAAOzB,MAAM,CAACsB,IAAI,CAACQ,MAAM,CAACL,KAAK,CAAC;IACpC;;IAEA;IACA,MAAM,IAAI,CAACX,cAAc,CAACe,OAAO,CAAC,IAAIvB,qBAAqB,CAAC;MAAEoB;IAAM,CAAC,CAAC,CAAC;IAEvE,OAAO1B,MAAM,CAAC+B,EAAE,CAAC,CAAC;EACtB;AACJ;AAEA,OAAO,MAAM9B,kBAAkB,GAAGC,kBAAkB,CAAC8B,oBAAoB,CAAC;EACtEC,cAAc,EAAEtB,sBAAsB;EACtCuB,YAAY,EAAE,CAACxB,eAAe,EAAEN,cAAc,EAAED,qBAAqB,EAAEK,aAAa;AACxF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/DeleteModel/DeleteModelUseCase.js","sources":["../../../../src/features/contentModel/DeleteModel/DeleteModelUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { DeleteModelRepository } from \"./abstractions.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { ModelBeforeDeleteEvent } from \"./events.js\";\nimport { ModelAfterDeleteEvent } from \"./events.js\";\nimport { ModelDeleteErrorEvent } from \"./events.js\";\nimport { AccessControl } from \"~/features/shared/abstractions.js\";\nimport { ModelNotAuthorizedError } from \"~/domain/contentModel/errors.js\";\nimport { GetModelUseCase } from \"~/features/contentModel/GetModel/index.js\";\n\n/**\n * DeleteModelUseCase - Core model deletion orchestration.\n *\n * Responsibilities:\n * - Fetch model\n * - Access control checks\n * - Publish before event\n * - Delegate to repository for deletion\n * - Publish after event or error event\n *\n * Note: Validation (e.g., checking for entries, plugin models) should be done in event handlers\n */\nclass DeleteModelUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(\n private getModelUseCase: GetModelUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: DeleteModelRepository.Interface,\n private accessControl: AccessControl.Interface\n ) {}\n\n async execute(modelId: string): Promise<Result<void, UseCaseAbstraction.Error>> {\n // Initial access control check\n const canAccess = await this.accessControl.canAccessModel({ rwd: \"d\" });\n if (!canAccess) {\n return Result.fail(new ModelNotAuthorizedError());\n }\n\n // Get the model (with access control check)\n const getResult = await this.getModelUseCase.execute(modelId);\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n const model = getResult.value;\n\n // Access control check on the specific model\n const canAccessModel = await this.accessControl.canAccessModel({ model, rwd: \"d\" });\n if (!canAccessModel) {\n return Result.fail(ModelNotAuthorizedError.fromModel(model));\n }\n\n // Publish before event\n await this.eventPublisher.publish(new ModelBeforeDeleteEvent({ model }));\n\n // Delete via repository\n const result = await this.repository.execute(model);\n\n if (result.isFail()) {\n // Publish error event\n await this.eventPublisher.publish(\n new ModelDeleteErrorEvent({\n model,\n error: result.error\n })\n );\n return Result.fail(result.error);\n }\n\n // Publish after event\n await this.eventPublisher.publish(new ModelAfterDeleteEvent({ model }));\n\n return Result.ok();\n }\n}\n\nexport const DeleteModelUseCase = UseCaseAbstraction.createImplementation({\n implementation: DeleteModelUseCaseImpl,\n dependencies: [GetModelUseCase, EventPublisher, DeleteModelRepository, AccessControl]\n});\n"],"names":["DeleteModelUseCaseImpl","getModelUseCase","eventPublisher","repository","accessControl","modelId","canAccess","Result","ModelNotAuthorizedError","getResult","model","canAccessModel","ModelBeforeDeleteEvent","result","ModelDeleteErrorEvent","ModelAfterDeleteEvent","DeleteModelUseCase","UseCaseAbstraction","GetModelUseCase","EventPublisher","DeleteModelRepository","AccessControl"],"mappings":";;;;;;;AAuBA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA2C,EAC3CC,aAAsC,CAChD;aAJUH,eAAe,GAAfA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;aACAC,aAAa,GAAbA;IACT;IAEH,MAAM,QAAQC,OAAe,EAAmD;QAE5E,MAAMC,YAAY,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;YAAE,KAAK;QAAI;QACrE,IAAI,CAACA,WACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAI3B,MAAMC,YAAY,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAACJ;QACrD,IAAII,UAAU,MAAM,IAChB,OAAOF,OAAO,IAAI,CAACE,UAAU,KAAK;QAGtC,MAAMC,QAAQD,UAAU,KAAK;QAG7B,MAAME,iBAAiB,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;YAAED;YAAO,KAAK;QAAI;QACjF,IAAI,CAACC,gBACD,OAAOJ,OAAO,IAAI,CAACC,wBAAwB,SAAS,CAACE;QAIzD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAIE,uBAAuB;YAAEF;QAAM;QAGrE,MAAMG,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACH;QAE7C,IAAIG,OAAO,MAAM,IAAI;YAEjB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIC,sBAAsB;gBACtBJ;gBACA,OAAOG,OAAO,KAAK;YACvB;YAEJ,OAAON,OAAO,IAAI,CAACM,OAAO,KAAK;QACnC;QAGA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAIE,sBAAsB;YAAEL;QAAM;QAEpE,OAAOH,OAAO,EAAE;IACpB;AACJ;AAEO,MAAMS,wCAAqBC,mBAAAA,oBAAuC,CAAC;IACtE,gBAAgBjB;IAChB,cAAc;QAACkB;QAAiBC;QAAgBC;QAAuBC;KAAc;AACzF"}
@@ -3,95 +3,62 @@ import { DeleteModelUseCase } from "./abstractions.js";
3
3
  import { CmsContext } from "../../shared/abstractions.js";
4
4
  import { CMS_MODEL_SINGLETON_TAG } from "../../../constants.js";
5
5
  import { ModelCannotDeleteHasEntriesError, ModelCannotDeleteHasEntriesInTrashError, ModelPersistenceError, ModelValidationError } from "../../../domain/contentModel/errors.js";
6
- /**
7
- * DeleteModelWithEntryCleanup - Decorator that handles entry cleanup/validation before deletion.
8
- *
9
- * Responsibilities:
10
- * 1. For singleton models: Delete all entries (latest + deleted)
11
- * 2. For regular models: Check if there are any entries - if yes, throw error
12
- * 3. Only proceed to the base use case if validations pass
13
- */
14
6
  class DeleteModelWithEntryCleanupImpl {
15
- constructor(cmsContext, decoratee) {
16
- this.cmsContext = cmsContext;
17
- this.decoratee = decoratee;
18
- }
19
- async execute(modelId) {
20
- // First, get the model through the decorated use case's flow (up to before deletion)
21
- // We need to perform validation before the actual deletion happens
22
-
23
- // Get the model from context to check entries
24
- const model = await this.cmsContext.cms.getModel(modelId);
25
- const tags = Array.isArray(model.tags) ? model.tags : [];
26
-
27
- // Handle singleton models: delete all entries
28
- if (tags.includes(CMS_MODEL_SINGLETON_TAG)) {
29
- try {
30
- await this.deleteSingletonEntries(model);
31
- } catch (error) {
32
- return Result.fail(new ModelValidationError(`Failed to delete singleton entries: ${error.message}`));
33
- }
34
-
35
- // Proceed with the actual deletion
36
- return this.decoratee.execute(modelId);
37
- }
38
-
39
- // Regular models
40
- const canDelete = await this.canDelete(model);
41
- if (canDelete.isFail()) {
42
- return Result.fail(canDelete.error);
7
+ constructor(cmsContext, decoratee){
8
+ this.cmsContext = cmsContext;
9
+ this.decoratee = decoratee;
43
10
  }
44
-
45
- // Proceed with the actual deletion
46
- return this.decoratee.execute(modelId);
47
- }
48
- async deleteSingletonEntries(model) {
49
- // Delete all latest entries
50
- const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {
51
- limit: 10000
52
- });
53
- for (const item of latestEntries) {
54
- await this.cmsContext.cms.deleteEntry(model, item.id, {
55
- permanently: true
56
- });
11
+ async execute(modelId) {
12
+ const model = await this.cmsContext.cms.getModel(modelId);
13
+ const tags = Array.isArray(model.tags) ? model.tags : [];
14
+ if (tags.includes(CMS_MODEL_SINGLETON_TAG)) {
15
+ try {
16
+ await this.deleteSingletonEntries(model);
17
+ } catch (error) {
18
+ return Result.fail(new ModelValidationError(`Failed to delete singleton entries: ${error.message}`));
19
+ }
20
+ return this.decoratee.execute(modelId);
21
+ }
22
+ const canDelete = await this.canDelete(model);
23
+ if (canDelete.isFail()) return Result.fail(canDelete.error);
24
+ return this.decoratee.execute(modelId);
57
25
  }
58
-
59
- // Delete all deleted entries (trash)
60
- const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {
61
- limit: 10000
62
- });
63
- for (const item of deletedEntries) {
64
- await this.cmsContext.cms.deleteEntry(model, item.id, {
65
- permanently: true
66
- });
26
+ async deleteSingletonEntries(model) {
27
+ const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {
28
+ limit: 10000
29
+ });
30
+ for (const item of latestEntries)await this.cmsContext.cms.deleteEntry(model, item.id, {
31
+ permanently: true
32
+ });
33
+ const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {
34
+ limit: 10000
35
+ });
36
+ for (const item of deletedEntries)await this.cmsContext.cms.deleteEntry(model, item.id, {
37
+ permanently: true
38
+ });
67
39
  }
68
- }
69
- async canDelete(model) {
70
- try {
71
- // Check for latest entries
72
- const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {
73
- limit: 1
74
- });
75
- if (latestEntries.length > 0) {
76
- return Result.fail(new ModelCannotDeleteHasEntriesError(model.modelId));
77
- }
78
-
79
- // Check for deleted entries (trash)
80
- const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {
81
- limit: 1
82
- });
83
- if (deletedEntries.length > 0) {
84
- return Result.fail(new ModelCannotDeleteHasEntriesInTrashError(model.modelId));
85
- }
86
- } catch (error) {
87
- return Result.fail(new ModelPersistenceError(error));
40
+ async canDelete(model) {
41
+ try {
42
+ const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {
43
+ limit: 1
44
+ });
45
+ if (latestEntries.length > 0) return Result.fail(new ModelCannotDeleteHasEntriesError(model.modelId));
46
+ const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {
47
+ limit: 1
48
+ });
49
+ if (deletedEntries.length > 0) return Result.fail(new ModelCannotDeleteHasEntriesInTrashError(model.modelId));
50
+ } catch (error) {
51
+ return Result.fail(new ModelPersistenceError(error));
52
+ }
53
+ return Result.ok(true);
88
54
  }
89
- return Result.ok(true);
90
- }
91
55
  }
92
- export const DeleteModelWithEntryCleanup = DeleteModelUseCase.createDecorator({
93
- decorator: DeleteModelWithEntryCleanupImpl,
94
- dependencies: [CmsContext]
56
+ const DeleteModelWithEntryCleanup = DeleteModelUseCase.createDecorator({
57
+ decorator: DeleteModelWithEntryCleanupImpl,
58
+ dependencies: [
59
+ CmsContext
60
+ ]
95
61
  });
62
+ export { DeleteModelWithEntryCleanup };
96
63
 
97
64
  //# sourceMappingURL=DeleteModelWithEntryCleanup.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","DeleteModelUseCase","CmsContext","CMS_MODEL_SINGLETON_TAG","ModelCannotDeleteHasEntriesError","ModelCannotDeleteHasEntriesInTrashError","ModelPersistenceError","ModelValidationError","DeleteModelWithEntryCleanupImpl","constructor","cmsContext","decoratee","execute","modelId","model","cms","getModel","tags","Array","isArray","includes","deleteSingletonEntries","error","fail","message","canDelete","isFail","latestEntries","listLatestEntries","limit","item","deleteEntry","id","permanently","deletedEntries","listDeletedEntries","length","ok","DeleteModelWithEntryCleanup","createDecorator","decorator","dependencies"],"sources":["DeleteModelWithEntryCleanup.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelUseCase } from \"./abstractions.js\";\nimport { CmsContext } from \"~/features/shared/abstractions.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants.js\";\nimport {\n ModelCannotDeleteHasEntriesError,\n ModelCannotDeleteHasEntriesInTrashError,\n ModelPersistenceError,\n ModelValidationError\n} from \"~/domain/contentModel/errors.js\";\nimport { CmsModel } from \"~/types/model.js\";\n\n/**\n * DeleteModelWithEntryCleanup - Decorator that handles entry cleanup/validation before deletion.\n *\n * Responsibilities:\n * 1. For singleton models: Delete all entries (latest + deleted)\n * 2. For regular models: Check if there are any entries - if yes, throw error\n * 3. Only proceed to the base use case if validations pass\n */\nclass DeleteModelWithEntryCleanupImpl implements DeleteModelUseCase.Interface {\n public constructor(\n private cmsContext: CmsContext.Interface,\n private decoratee: DeleteModelUseCase.Interface\n ) {}\n\n async execute(modelId: string): Promise<Result<void, DeleteModelUseCase.Error>> {\n // First, get the model through the decorated use case's flow (up to before deletion)\n // We need to perform validation before the actual deletion happens\n\n // Get the model from context to check entries\n const model = await this.cmsContext.cms.getModel(modelId);\n\n const tags = Array.isArray(model.tags) ? model.tags : [];\n\n // Handle singleton models: delete all entries\n if (tags.includes(CMS_MODEL_SINGLETON_TAG)) {\n try {\n await this.deleteSingletonEntries(model);\n } catch (error) {\n return Result.fail(\n new ModelValidationError(\n `Failed to delete singleton entries: ${(error as Error).message}`\n )\n );\n }\n\n // Proceed with the actual deletion\n return this.decoratee.execute(modelId);\n }\n\n // Regular models\n const canDelete = await this.canDelete(model);\n if (canDelete.isFail()) {\n return Result.fail(canDelete.error);\n }\n\n // Proceed with the actual deletion\n return this.decoratee.execute(modelId);\n }\n\n private async deleteSingletonEntries(model: any): Promise<void> {\n // Delete all latest entries\n const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {\n limit: 10000\n });\n\n for (const item of latestEntries) {\n await this.cmsContext.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n\n // Delete all deleted entries (trash)\n const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {\n limit: 10000\n });\n\n for (const item of deletedEntries) {\n await this.cmsContext.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n }\n\n private async canDelete(\n model: CmsModel\n ): Promise<\n Result<\n boolean,\n | ModelCannotDeleteHasEntriesError\n | ModelCannotDeleteHasEntriesInTrashError\n | ModelPersistenceError\n >\n > {\n try {\n // Check for latest entries\n const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {\n limit: 1\n });\n\n if (latestEntries.length > 0) {\n return Result.fail(new ModelCannotDeleteHasEntriesError(model.modelId));\n }\n\n // Check for deleted entries (trash)\n const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {\n limit: 1\n });\n\n if (deletedEntries.length > 0) {\n return Result.fail(new ModelCannotDeleteHasEntriesInTrashError(model.modelId));\n }\n } catch (error) {\n return Result.fail(new ModelPersistenceError(error));\n }\n\n return Result.ok(true);\n }\n}\n\nexport const DeleteModelWithEntryCleanup = DeleteModelUseCase.createDecorator({\n decorator: DeleteModelWithEntryCleanupImpl,\n dependencies: [CmsContext]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB;AAC3B,SAASC,UAAU;AACnB,SAASC,uBAAuB;AAChC,SACIC,gCAAgC,EAChCC,uCAAuC,EACvCC,qBAAqB,EACrBC,oBAAoB;AAIxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,+BAA+B,CAAyC;EACnEC,WAAWA,CACNC,UAAgC,EAChCC,SAAuC,EACjD;IAAA,KAFUD,UAAgC,GAAhCA,UAAgC;IAAA,KAChCC,SAAuC,GAAvCA,SAAuC;EAChD;EAEH,MAAMC,OAAOA,CAACC,OAAe,EAAmD;IAC5E;IACA;;IAEA;IACA,MAAMC,KAAK,GAAG,MAAM,IAAI,CAACJ,UAAU,CAACK,GAAG,CAACC,QAAQ,CAACH,OAAO,CAAC;IAEzD,MAAMI,IAAI,GAAGC,KAAK,CAACC,OAAO,CAACL,KAAK,CAACG,IAAI,CAAC,GAAGH,KAAK,CAACG,IAAI,GAAG,EAAE;;IAExD;IACA,IAAIA,IAAI,CAACG,QAAQ,CAACjB,uBAAuB,CAAC,EAAE;MACxC,IAAI;QACA,MAAM,IAAI,CAACkB,sBAAsB,CAACP,KAAK,CAAC;MAC5C,CAAC,CAAC,OAAOQ,KAAK,EAAE;QACZ,OAAOtB,MAAM,CAACuB,IAAI,CACd,IAAIhB,oBAAoB,CACpB,uCAAwCe,KAAK,CAAWE,OAAO,EACnE,CACJ,CAAC;MACL;;MAEA;MACA,OAAO,IAAI,CAACb,SAAS,CAACC,OAAO,CAACC,OAAO,CAAC;IAC1C;;IAEA;IACA,MAAMY,SAAS,GAAG,MAAM,IAAI,CAACA,SAAS,CAACX,KAAK,CAAC;IAC7C,IAAIW,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAO1B,MAAM,CAACuB,IAAI,CAACE,SAAS,CAACH,KAAK,CAAC;IACvC;;IAEA;IACA,OAAO,IAAI,CAACX,SAAS,CAACC,OAAO,CAACC,OAAO,CAAC;EAC1C;EAEA,MAAcQ,sBAAsBA,CAACP,KAAU,EAAiB;IAC5D;IACA,MAAM,CAACa,aAAa,CAAC,GAAG,MAAM,IAAI,CAACjB,UAAU,CAACK,GAAG,CAACa,iBAAiB,CAACd,KAAK,EAAE;MACvEe,KAAK,EAAE;IACX,CAAC,CAAC;IAEF,KAAK,MAAMC,IAAI,IAAIH,aAAa,EAAE;MAC9B,MAAM,IAAI,CAACjB,UAAU,CAACK,GAAG,CAACgB,WAAW,CAACjB,KAAK,EAAEgB,IAAI,CAACE,EAAE,EAAE;QAClDC,WAAW,EAAE;MACjB,CAAC,CAAC;IACN;;IAEA;IACA,MAAM,CAACC,cAAc,CAAC,GAAG,MAAM,IAAI,CAACxB,UAAU,CAACK,GAAG,CAACoB,kBAAkB,CAACrB,KAAK,EAAE;MACzEe,KAAK,EAAE;IACX,CAAC,CAAC;IAEF,KAAK,MAAMC,IAAI,IAAII,cAAc,EAAE;MAC/B,MAAM,IAAI,CAACxB,UAAU,CAACK,GAAG,CAACgB,WAAW,CAACjB,KAAK,EAAEgB,IAAI,CAACE,EAAE,EAAE;QAClDC,WAAW,EAAE;MACjB,CAAC,CAAC;IACN;EACJ;EAEA,MAAcR,SAASA,CACnBX,KAAe,EAQjB;IACE,IAAI;MACA;MACA,MAAM,CAACa,aAAa,CAAC,GAAG,MAAM,IAAI,CAACjB,UAAU,CAACK,GAAG,CAACa,iBAAiB,CAACd,KAAK,EAAE;QACvEe,KAAK,EAAE;MACX,CAAC,CAAC;MAEF,IAAIF,aAAa,CAACS,MAAM,GAAG,CAAC,EAAE;QAC1B,OAAOpC,MAAM,CAACuB,IAAI,CAAC,IAAInB,gCAAgC,CAACU,KAAK,CAACD,OAAO,CAAC,CAAC;MAC3E;;MAEA;MACA,MAAM,CAACqB,cAAc,CAAC,GAAG,MAAM,IAAI,CAACxB,UAAU,CAACK,GAAG,CAACoB,kBAAkB,CAACrB,KAAK,EAAE;QACzEe,KAAK,EAAE;MACX,CAAC,CAAC;MAEF,IAAIK,cAAc,CAACE,MAAM,GAAG,CAAC,EAAE;QAC3B,OAAOpC,MAAM,CAACuB,IAAI,CAAC,IAAIlB,uCAAuC,CAACS,KAAK,CAACD,OAAO,CAAC,CAAC;MAClF;IACJ,CAAC,CAAC,OAAOS,KAAK,EAAE;MACZ,OAAOtB,MAAM,CAACuB,IAAI,CAAC,IAAIjB,qBAAqB,CAACgB,KAAK,CAAC,CAAC;IACxD;IAEA,OAAOtB,MAAM,CAACqC,EAAE,CAAC,IAAI,CAAC;EAC1B;AACJ;AAEA,OAAO,MAAMC,2BAA2B,GAAGrC,kBAAkB,CAACsC,eAAe,CAAC;EAC1EC,SAAS,EAAEhC,+BAA+B;EAC1CiC,YAAY,EAAE,CAACvC,UAAU;AAC7B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js","sources":["../../../../src/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteModelUseCase } from \"./abstractions.js\";\nimport { CmsContext } from \"~/features/shared/abstractions.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants.js\";\nimport {\n ModelCannotDeleteHasEntriesError,\n ModelCannotDeleteHasEntriesInTrashError,\n ModelPersistenceError,\n ModelValidationError\n} from \"~/domain/contentModel/errors.js\";\nimport { CmsModel } from \"~/types/model.js\";\n\n/**\n * DeleteModelWithEntryCleanup - Decorator that handles entry cleanup/validation before deletion.\n *\n * Responsibilities:\n * 1. For singleton models: Delete all entries (latest + deleted)\n * 2. For regular models: Check if there are any entries - if yes, throw error\n * 3. Only proceed to the base use case if validations pass\n */\nclass DeleteModelWithEntryCleanupImpl implements DeleteModelUseCase.Interface {\n public constructor(\n private cmsContext: CmsContext.Interface,\n private decoratee: DeleteModelUseCase.Interface\n ) {}\n\n async execute(modelId: string): Promise<Result<void, DeleteModelUseCase.Error>> {\n // First, get the model through the decorated use case's flow (up to before deletion)\n // We need to perform validation before the actual deletion happens\n\n // Get the model from context to check entries\n const model = await this.cmsContext.cms.getModel(modelId);\n\n const tags = Array.isArray(model.tags) ? model.tags : [];\n\n // Handle singleton models: delete all entries\n if (tags.includes(CMS_MODEL_SINGLETON_TAG)) {\n try {\n await this.deleteSingletonEntries(model);\n } catch (error) {\n return Result.fail(\n new ModelValidationError(\n `Failed to delete singleton entries: ${(error as Error).message}`\n )\n );\n }\n\n // Proceed with the actual deletion\n return this.decoratee.execute(modelId);\n }\n\n // Regular models\n const canDelete = await this.canDelete(model);\n if (canDelete.isFail()) {\n return Result.fail(canDelete.error);\n }\n\n // Proceed with the actual deletion\n return this.decoratee.execute(modelId);\n }\n\n private async deleteSingletonEntries(model: any): Promise<void> {\n // Delete all latest entries\n const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {\n limit: 10000\n });\n\n for (const item of latestEntries) {\n await this.cmsContext.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n\n // Delete all deleted entries (trash)\n const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {\n limit: 10000\n });\n\n for (const item of deletedEntries) {\n await this.cmsContext.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n }\n\n private async canDelete(\n model: CmsModel\n ): Promise<\n Result<\n boolean,\n | ModelCannotDeleteHasEntriesError\n | ModelCannotDeleteHasEntriesInTrashError\n | ModelPersistenceError\n >\n > {\n try {\n // Check for latest entries\n const [latestEntries] = await this.cmsContext.cms.listLatestEntries(model, {\n limit: 1\n });\n\n if (latestEntries.length > 0) {\n return Result.fail(new ModelCannotDeleteHasEntriesError(model.modelId));\n }\n\n // Check for deleted entries (trash)\n const [deletedEntries] = await this.cmsContext.cms.listDeletedEntries(model, {\n limit: 1\n });\n\n if (deletedEntries.length > 0) {\n return Result.fail(new ModelCannotDeleteHasEntriesInTrashError(model.modelId));\n }\n } catch (error) {\n return Result.fail(new ModelPersistenceError(error));\n }\n\n return Result.ok(true);\n }\n}\n\nexport const DeleteModelWithEntryCleanup = DeleteModelUseCase.createDecorator({\n decorator: DeleteModelWithEntryCleanupImpl,\n dependencies: [CmsContext]\n});\n"],"names":["DeleteModelWithEntryCleanupImpl","cmsContext","decoratee","modelId","model","tags","Array","CMS_MODEL_SINGLETON_TAG","error","Result","ModelValidationError","canDelete","latestEntries","item","deletedEntries","ModelCannotDeleteHasEntriesError","ModelCannotDeleteHasEntriesInTrashError","ModelPersistenceError","DeleteModelWithEntryCleanup","DeleteModelUseCase","CmsContext"],"mappings":";;;;;AAoBA,MAAMA;IACF,YACYC,UAAgC,EAChCC,SAAuC,CACjD;aAFUD,UAAU,GAAVA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QAAQC,OAAe,EAAmD;QAK5E,MAAMC,QAAQ,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAACD;QAEjD,MAAME,OAAOC,MAAM,OAAO,CAACF,MAAM,IAAI,IAAIA,MAAM,IAAI,GAAG,EAAE;QAGxD,IAAIC,KAAK,QAAQ,CAACE,0BAA0B;YACxC,IAAI;gBACA,MAAM,IAAI,CAAC,sBAAsB,CAACH;YACtC,EAAE,OAAOI,OAAO;gBACZ,OAAOC,OAAO,IAAI,CACd,IAAIC,qBACA,CAAC,oCAAoC,EAAGF,MAAgB,OAAO,EAAE;YAG7E;YAGA,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAACL;QAClC;QAGA,MAAMQ,YAAY,MAAM,IAAI,CAAC,SAAS,CAACP;QACvC,IAAIO,UAAU,MAAM,IAChB,OAAOF,OAAO,IAAI,CAACE,UAAU,KAAK;QAItC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAACR;IAClC;IAEA,MAAc,uBAAuBC,KAAU,EAAiB;QAE5D,MAAM,CAACQ,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAACR,OAAO;YACvE,OAAO;QACX;QAEA,KAAK,MAAMS,QAAQD,cACf,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAACR,OAAOS,KAAK,EAAE,EAAE;YAClD,aAAa;QACjB;QAIJ,MAAM,CAACC,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAACV,OAAO;YACzE,OAAO;QACX;QAEA,KAAK,MAAMS,QAAQC,eACf,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,CAACV,OAAOS,KAAK,EAAE,EAAE;YAClD,aAAa;QACjB;IAER;IAEA,MAAc,UACVT,KAAe,EAQjB;QACE,IAAI;YAEA,MAAM,CAACQ,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAACR,OAAO;gBACvE,OAAO;YACX;YAEA,IAAIQ,cAAc,MAAM,GAAG,GACvB,OAAOH,OAAO,IAAI,CAAC,IAAIM,iCAAiCX,MAAM,OAAO;YAIzE,MAAM,CAACU,eAAe,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAACV,OAAO;gBACzE,OAAO;YACX;YAEA,IAAIU,eAAe,MAAM,GAAG,GACxB,OAAOL,OAAO,IAAI,CAAC,IAAIO,wCAAwCZ,MAAM,OAAO;QAEpF,EAAE,OAAOI,OAAO;YACZ,OAAOC,OAAO,IAAI,CAAC,IAAIQ,sBAAsBT;QACjD;QAEA,OAAOC,OAAO,EAAE,CAAC;IACrB;AACJ;AAEO,MAAMS,8BAA8BC,mBAAmB,eAAe,CAAC;IAC1E,WAAWnB;IACX,cAAc;QAACoB;KAAW;AAC9B"}