@webiny/api-headless-cms 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7be00a75a9

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 (1710) 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.d.ts +2 -1
  6. package/constants.js +56 -52
  7. package/constants.js.map +1 -1
  8. package/context.d.ts +2 -5
  9. package/context.js +102 -121
  10. package/context.js.map +1 -1
  11. package/crud/AccessControl/AccessControl.d.ts +18 -28
  12. package/crud/AccessControl/AccessControl.js +315 -470
  13. package/crud/AccessControl/AccessControl.js.map +1 -1
  14. package/crud/AccessControl/README.md +1 -1
  15. package/crud/contentEntry/entryDataValidation.d.ts +1 -1
  16. package/crud/contentEntry/entryDataValidation.js +193 -308
  17. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  18. package/crud/contentEntry/referenceFieldsMapping.js +29 -59
  19. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  20. package/crud/contentEntry/references/buildPaths.d.ts +1 -1
  21. package/crud/contentEntry/references/buildPaths.js +105 -130
  22. package/crud/contentEntry/references/buildPaths.js.map +1 -1
  23. package/crud/contentEntry/references/validateEntries.js +36 -74
  24. package/crud/contentEntry/references/validateEntries.js.map +1 -1
  25. package/crud/contentEntry/searchableFields.d.ts +2 -3
  26. package/crud/contentEntry/searchableFields.js +43 -62
  27. package/crud/contentEntry/searchableFields.js.map +1 -1
  28. package/crud/contentEntry.crud.js +287 -359
  29. package/crud/contentEntry.crud.js.map +1 -1
  30. package/crud/contentModel/compatibility/modelApiName.js +7 -10
  31. package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
  32. package/crud/contentModel/createFieldStorageId.js +6 -8
  33. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  34. package/crud/contentModel/defaultFields.js +56 -49
  35. package/crud/contentModel/defaultFields.js.map +1 -1
  36. package/crud/contentModel/fields/descriptionField.js +8 -18
  37. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  38. package/crud/contentModel/fields/getApplicableFieldById.js +4 -5
  39. package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -1
  40. package/crud/contentModel/fields/imageField.js +8 -13
  41. package/crud/contentModel/fields/imageField.js.map +1 -1
  42. package/crud/contentModel/fields/titleField.js +8 -18
  43. package/crud/contentModel/fields/titleField.js.map +1 -1
  44. package/crud/contentModel/validate/endingAllowed.js +10 -14
  45. package/crud/contentModel/validate/endingAllowed.js.map +1 -1
  46. package/crud/contentModel/validate/isModelEndingAllowed.js +15 -14
  47. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  48. package/crud/contentModel/validate/modelId.js +19 -24
  49. package/crud/contentModel/validate/modelId.js.map +1 -1
  50. package/crud/contentModel/validate/pluralApiName.js +8 -13
  51. package/crud/contentModel/validate/pluralApiName.js.map +1 -1
  52. package/crud/contentModel/validate/singularApiName.js +8 -13
  53. package/crud/contentModel/validate/singularApiName.js.map +1 -1
  54. package/crud/contentModel/validateStorageId.js +10 -8
  55. package/crud/contentModel/validateStorageId.js.map +1 -1
  56. package/crud/contentModel/validation.d.ts +224 -902
  57. package/crud/contentModel/validation.js +198 -189
  58. package/crud/contentModel/validation.js.map +1 -1
  59. package/crud/contentModel.crud.js +66 -109
  60. package/crud/contentModel.crud.js.map +1 -1
  61. package/crud/contentModelGroup.crud.js +65 -90
  62. package/crud/contentModelGroup.crud.js.map +1 -1
  63. package/domain/contentEntry/EntryId.d.ts +1 -0
  64. package/domain/contentEntry/EntryId.js +37 -43
  65. package/domain/contentEntry/EntryId.js.map +1 -1
  66. package/domain/contentEntry/errors.d.ts +2 -2
  67. package/domain/contentEntry/errors.js +38 -42
  68. package/domain/contentEntry/errors.js.map +1 -1
  69. package/domain/contentModel/createFieldStorageId.js +6 -8
  70. package/domain/contentModel/createFieldStorageId.js.map +1 -1
  71. package/domain/contentModel/ensureTypeTag.js +5 -11
  72. package/domain/contentModel/ensureTypeTag.js.map +1 -1
  73. package/domain/contentModel/errors.d.ts +1 -1
  74. package/domain/contentModel/errors.js +82 -91
  75. package/domain/contentModel/errors.js.map +1 -1
  76. package/domain/contentModel/schemas.d.ts +198 -616
  77. package/domain/contentModel/schemas.js +137 -150
  78. package/domain/contentModel/schemas.js.map +1 -1
  79. package/domain/contentModel/validation/endingAllowed.js +10 -14
  80. package/domain/contentModel/validation/endingAllowed.js.map +1 -1
  81. package/domain/contentModel/validation/fields/descriptionField.js +8 -18
  82. package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
  83. package/domain/contentModel/validation/fields/getApplicableFieldById.js +4 -5
  84. package/domain/contentModel/validation/fields/getApplicableFieldById.js.map +1 -1
  85. package/domain/contentModel/validation/fields/imageField.js +8 -13
  86. package/domain/contentModel/validation/fields/imageField.js.map +1 -1
  87. package/domain/contentModel/validation/fields/titleField.js +8 -18
  88. package/domain/contentModel/validation/fields/titleField.js.map +1 -1
  89. package/domain/contentModel/validation/isModelEndingAllowed.js +15 -14
  90. package/domain/contentModel/validation/isModelEndingAllowed.js.map +1 -1
  91. package/domain/contentModel/validation/modelFields.js +142 -249
  92. package/domain/contentModel/validation/modelFields.js.map +1 -1
  93. package/domain/contentModel/validation/modelId.js +19 -24
  94. package/domain/contentModel/validation/modelId.js.map +1 -1
  95. package/domain/contentModel/validation/pluralApiName.js +8 -13
  96. package/domain/contentModel/validation/pluralApiName.js.map +1 -1
  97. package/domain/contentModel/validation/singularApiName.js +8 -13
  98. package/domain/contentModel/validation/singularApiName.js.map +1 -1
  99. package/domain/contentModelGroup/errors.js +60 -67
  100. package/domain/contentModelGroup/errors.js.map +1 -1
  101. package/domain/contentModelGroup/validation.d.ts +34 -82
  102. package/domain/contentModelGroup/validation.js +23 -32
  103. package/domain/contentModelGroup/validation.js.map +1 -1
  104. package/export/crud/exporting.js +18 -38
  105. package/export/crud/exporting.js.map +1 -1
  106. package/export/crud/importing.js +48 -67
  107. package/export/crud/importing.js.map +1 -1
  108. package/export/crud/imports/importData.js +28 -39
  109. package/export/crud/imports/importData.js.map +1 -1
  110. package/export/crud/imports/importGroups.js +75 -90
  111. package/export/crud/imports/importGroups.js.map +1 -1
  112. package/export/crud/imports/importModels.js +99 -120
  113. package/export/crud/imports/importModels.js.map +1 -1
  114. package/export/crud/imports/remapIcon.js +7 -10
  115. package/export/crud/imports/remapIcon.js.map +1 -1
  116. package/export/crud/imports/validateGroups.js +75 -99
  117. package/export/crud/imports/validateGroups.js.map +1 -1
  118. package/export/crud/imports/validateInput.js +42 -60
  119. package/export/crud/imports/validateInput.js.map +1 -1
  120. package/export/crud/imports/validateModels.js +117 -175
  121. package/export/crud/imports/validateModels.js.map +1 -1
  122. package/export/crud/index.js +4 -5
  123. package/export/crud/index.js.map +1 -1
  124. package/export/crud/sanitize.js +23 -26
  125. package/export/crud/sanitize.js.map +1 -1
  126. package/export/graphql/index.js +44 -47
  127. package/export/graphql/index.js.map +1 -1
  128. package/export/index.js +0 -2
  129. package/export/types.js +7 -13
  130. package/export/types.js.map +1 -1
  131. package/exports/api/cms/entry.d.ts +9 -0
  132. package/exports/api/cms/entry.js +22 -68
  133. package/exports/api/cms/graphql.d.ts +1 -0
  134. package/exports/api/cms/graphql.js +1 -0
  135. package/exports/api/cms/group.js +3 -14
  136. package/exports/api/cms/model.d.ts +5 -1
  137. package/exports/api/cms/model.js +5 -19
  138. package/exports/api/cms/storage.d.ts +3 -0
  139. package/exports/api/cms/storage.js +3 -0
  140. package/exports/api/cms/validation.d.ts +4 -0
  141. package/exports/api/cms/validation.js +4 -0
  142. package/extensions/entryHooks/OnEntryBeforeCreate.d.ts +3 -7
  143. package/extensions/entryHooks/OnEntryBeforeCreate.js +16 -19
  144. package/extensions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
  145. package/extensions/entryHooks/index.js +0 -2
  146. package/extensions/index.d.ts +2 -6
  147. package/extensions/index.js +4 -2
  148. package/extensions/index.js.map +1 -1
  149. package/features/contentEntry/ContentEntriesFeature.d.ts +4 -1
  150. package/features/contentEntry/ContentEntriesFeature.js +37 -33
  151. package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
  152. package/{utils/contentEntryTraverser → features/contentEntry/ContentEntryTraverser}/ContentEntryTraverser.d.ts +1 -1
  153. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js +69 -0
  154. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -0
  155. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.d.ts +14 -0
  156. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +27 -0
  157. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -0
  158. package/features/contentEntry/ContentEntryTraverser/abstractions.d.ts +12 -0
  159. package/features/contentEntry/ContentEntryTraverser/abstractions.js +5 -0
  160. package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -0
  161. package/features/contentEntry/ContentEntryTraverser/feature.d.ts +4 -0
  162. package/features/contentEntry/ContentEntryTraverser/feature.js +11 -0
  163. package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -0
  164. package/features/contentEntry/ContentEntryTraverser/index.d.ts +2 -0
  165. package/features/contentEntry/ContentEntryTraverser/index.js +2 -0
  166. package/features/contentEntry/CreateEntry/CreateEntryRepository.js +25 -30
  167. package/features/contentEntry/CreateEntry/CreateEntryRepository.js.map +1 -1
  168. package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +5 -17
  169. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +51 -89
  170. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
  171. package/features/contentEntry/CreateEntry/abstractions.d.ts +1 -0
  172. package/features/contentEntry/CreateEntry/abstractions.js +3 -13
  173. package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
  174. package/features/contentEntry/CreateEntry/events.d.ts +4 -2
  175. package/features/contentEntry/CreateEntry/events.js +18 -24
  176. package/features/contentEntry/CreateEntry/events.js.map +1 -1
  177. package/features/contentEntry/CreateEntry/feature.d.ts +4 -1
  178. package/features/contentEntry/CreateEntry/feature.js +7 -18
  179. package/features/contentEntry/CreateEntry/feature.js.map +1 -1
  180. package/features/contentEntry/CreateEntry/index.js +1 -3
  181. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js +29 -41
  182. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js.map +1 -1
  183. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +5 -21
  184. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +82 -130
  185. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
  186. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.d.ts +1 -0
  187. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +3 -24
  188. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
  189. package/features/contentEntry/CreateEntryRevisionFrom/events.d.ts +4 -2
  190. package/features/contentEntry/CreateEntryRevisionFrom/events.js +26 -28
  191. package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
  192. package/features/contentEntry/CreateEntryRevisionFrom/feature.d.ts +4 -1
  193. package/features/contentEntry/CreateEntryRevisionFrom/feature.js +7 -9
  194. package/features/contentEntry/CreateEntryRevisionFrom/feature.js.map +1 -1
  195. package/features/contentEntry/CreateEntryRevisionFrom/index.js +0 -2
  196. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js +21 -23
  197. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js.map +1 -1
  198. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.d.ts +1 -1
  199. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +71 -97
  200. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
  201. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js +26 -30
  202. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js.map +1 -1
  203. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.d.ts +2 -2
  204. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +88 -117
  205. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
  206. package/features/contentEntry/DeleteEntry/abstractions.d.ts +2 -0
  207. package/features/contentEntry/DeleteEntry/abstractions.js +5 -38
  208. package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
  209. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js +30 -41
  210. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js.map +1 -1
  211. package/features/contentEntry/DeleteEntry/events.d.ts +4 -2
  212. package/features/contentEntry/DeleteEntry/events.js +26 -28
  213. package/features/contentEntry/DeleteEntry/events.js.map +1 -1
  214. package/features/contentEntry/DeleteEntry/feature.d.ts +4 -1
  215. package/features/contentEntry/DeleteEntry/feature.js +10 -14
  216. package/features/contentEntry/DeleteEntry/feature.js.map +1 -1
  217. package/features/contentEntry/DeleteEntry/index.js +2 -4
  218. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js +37 -43
  219. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js.map +1 -1
  220. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.d.ts +1 -1
  221. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +86 -127
  222. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
  223. package/features/contentEntry/DeleteEntryRevision/abstractions.d.ts +1 -0
  224. package/features/contentEntry/DeleteEntryRevision/abstractions.js +3 -25
  225. package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
  226. package/features/contentEntry/DeleteEntryRevision/events.d.ts +4 -2
  227. package/features/contentEntry/DeleteEntryRevision/events.js +26 -28
  228. package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
  229. package/features/contentEntry/DeleteEntryRevision/feature.d.ts +4 -1
  230. package/features/contentEntry/DeleteEntryRevision/feature.js +7 -9
  231. package/features/contentEntry/DeleteEntryRevision/feature.js.map +1 -1
  232. package/features/contentEntry/DeleteEntryRevision/index.js +2 -4
  233. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js +21 -27
  234. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js.map +1 -1
  235. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.d.ts +1 -1
  236. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +83 -123
  237. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
  238. package/features/contentEntry/DeleteMultipleEntries/abstractions.d.ts +1 -0
  239. package/features/contentEntry/DeleteMultipleEntries/abstractions.js +3 -24
  240. package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
  241. package/features/contentEntry/DeleteMultipleEntries/events.d.ts +4 -2
  242. package/features/contentEntry/DeleteMultipleEntries/events.js +26 -28
  243. package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
  244. package/features/contentEntry/DeleteMultipleEntries/feature.d.ts +4 -1
  245. package/features/contentEntry/DeleteMultipleEntries/feature.js +7 -9
  246. package/features/contentEntry/DeleteMultipleEntries/feature.js.map +1 -1
  247. package/features/contentEntry/DeleteMultipleEntries/index.js +0 -2
  248. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js +30 -35
  249. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js.map +1 -1
  250. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js +21 -34
  251. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js.map +1 -1
  252. package/features/contentEntry/GetEntriesByIds/abstractions.d.ts +1 -0
  253. package/features/contentEntry/GetEntriesByIds/abstractions.js +3 -13
  254. package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
  255. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js +15 -25
  256. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js.map +1 -1
  257. package/features/contentEntry/GetEntriesByIds/feature.d.ts +4 -1
  258. package/features/contentEntry/GetEntriesByIds/feature.js +8 -7
  259. package/features/contentEntry/GetEntriesByIds/feature.js.map +1 -1
  260. package/features/contentEntry/GetEntriesByIds/index.js +1 -3
  261. package/features/contentEntry/GetEntry/GetEntryUseCase.js +22 -31
  262. package/features/contentEntry/GetEntry/GetEntryUseCase.js.map +1 -1
  263. package/features/contentEntry/GetEntry/abstractions.d.ts +1 -0
  264. package/features/contentEntry/GetEntry/abstractions.js +2 -7
  265. package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
  266. package/features/contentEntry/GetEntry/feature.d.ts +4 -1
  267. package/features/contentEntry/GetEntry/feature.js +6 -5
  268. package/features/contentEntry/GetEntry/feature.js.map +1 -1
  269. package/features/contentEntry/GetEntry/index.js +0 -2
  270. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js +20 -25
  271. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js.map +1 -1
  272. package/features/contentEntry/GetEntryById/abstractions.d.ts +1 -0
  273. package/features/contentEntry/GetEntryById/abstractions.js +2 -7
  274. package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
  275. package/features/contentEntry/GetEntryById/feature.d.ts +4 -1
  276. package/features/contentEntry/GetEntryById/feature.js +6 -5
  277. package/features/contentEntry/GetEntryById/feature.js.map +1 -1
  278. package/features/contentEntry/GetEntryById/index.js +0 -2
  279. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js +24 -30
  280. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js.map +1 -1
  281. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js +21 -34
  282. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js.map +1 -1
  283. package/features/contentEntry/GetLatestEntriesByIds/abstractions.d.ts +1 -0
  284. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +3 -13
  285. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
  286. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js +15 -25
  287. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js.map +1 -1
  288. package/features/contentEntry/GetLatestEntriesByIds/feature.d.ts +4 -1
  289. package/features/contentEntry/GetLatestEntriesByIds/feature.js +8 -7
  290. package/features/contentEntry/GetLatestEntriesByIds/feature.js.map +1 -1
  291. package/features/contentEntry/GetLatestEntriesByIds/index.js +1 -3
  292. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js +21 -35
  293. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js.map +1 -1
  294. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js +23 -29
  295. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js.map +1 -1
  296. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.d.ts +4 -9
  297. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +6 -26
  298. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
  299. package/features/contentEntry/GetLatestRevisionByEntryId/feature.d.ts +4 -1
  300. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js +10 -19
  301. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js.map +1 -1
  302. package/features/contentEntry/GetLatestRevisionByEntryId/index.js +1 -3
  303. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js +17 -29
  304. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js.map +1 -1
  305. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js +14 -16
  306. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js.map +1 -1
  307. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js +17 -27
  308. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js.map +1 -1
  309. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js +21 -35
  310. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js.map +1 -1
  311. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js +23 -29
  312. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js.map +1 -1
  313. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js +17 -28
  314. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js.map +1 -1
  315. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.d.ts +2 -3
  316. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +4 -17
  317. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
  318. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.d.ts +4 -1
  319. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js +8 -12
  320. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js.map +1 -1
  321. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js +1 -3
  322. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js +24 -29
  323. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js.map +1 -1
  324. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js +21 -34
  325. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js.map +1 -1
  326. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.d.ts +1 -0
  327. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +3 -13
  328. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
  329. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js +15 -25
  330. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js.map +1 -1
  331. package/features/contentEntry/GetPublishedEntriesByIds/feature.d.ts +4 -1
  332. package/features/contentEntry/GetPublishedEntriesByIds/feature.js +8 -7
  333. package/features/contentEntry/GetPublishedEntriesByIds/feature.js.map +1 -1
  334. package/features/contentEntry/GetPublishedEntriesByIds/index.js +1 -3
  335. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js +25 -31
  336. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js.map +1 -1
  337. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js +16 -23
  338. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js.map +1 -1
  339. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.d.ts +1 -0
  340. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +3 -12
  341. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
  342. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.d.ts +4 -1
  343. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js +7 -17
  344. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js.map +1 -1
  345. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js +1 -3
  346. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js +26 -33
  347. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js.map +1 -1
  348. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js +14 -17
  349. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js.map +1 -1
  350. package/features/contentEntry/GetRevisionById/abstractions.d.ts +1 -0
  351. package/features/contentEntry/GetRevisionById/abstractions.js +3 -14
  352. package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
  353. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js +14 -26
  354. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js.map +1 -1
  355. package/features/contentEntry/GetRevisionById/feature.d.ts +4 -1
  356. package/features/contentEntry/GetRevisionById/feature.js +8 -21
  357. package/features/contentEntry/GetRevisionById/feature.js.map +1 -1
  358. package/features/contentEntry/GetRevisionById/index.js +1 -3
  359. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js +24 -30
  360. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js.map +1 -1
  361. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js +21 -34
  362. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js.map +1 -1
  363. package/features/contentEntry/GetRevisionsByEntryId/abstractions.d.ts +1 -0
  364. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +3 -13
  365. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
  366. package/features/contentEntry/GetRevisionsByEntryId/feature.d.ts +4 -1
  367. package/features/contentEntry/GetRevisionsByEntryId/feature.js +7 -6
  368. package/features/contentEntry/GetRevisionsByEntryId/feature.js.map +1 -1
  369. package/features/contentEntry/GetRevisionsByEntryId/index.js +1 -3
  370. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js +25 -43
  371. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js.map +1 -1
  372. package/features/contentEntry/GetSingletonEntry/abstractions.d.ts +1 -0
  373. package/features/contentEntry/GetSingletonEntry/abstractions.js +2 -8
  374. package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
  375. package/features/contentEntry/GetSingletonEntry/feature.d.ts +4 -1
  376. package/features/contentEntry/GetSingletonEntry/feature.js +6 -13
  377. package/features/contentEntry/GetSingletonEntry/feature.js.map +1 -1
  378. package/features/contentEntry/GetSingletonEntry/index.js +0 -2
  379. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js +23 -24
  380. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js.map +1 -1
  381. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.d.ts +2 -2
  382. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +45 -67
  383. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
  384. package/features/contentEntry/GetUniqueFieldValues/abstractions.js +3 -13
  385. package/features/contentEntry/GetUniqueFieldValues/abstractions.js.map +1 -1
  386. package/features/contentEntry/GetUniqueFieldValues/errors.js +19 -20
  387. package/features/contentEntry/GetUniqueFieldValues/errors.js.map +1 -1
  388. package/features/contentEntry/GetUniqueFieldValues/feature.d.ts +4 -1
  389. package/features/contentEntry/GetUniqueFieldValues/feature.js +7 -6
  390. package/features/contentEntry/GetUniqueFieldValues/feature.js.map +1 -1
  391. package/features/contentEntry/GetUniqueFieldValues/index.js +1 -3
  392. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js +22 -29
  393. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js.map +1 -1
  394. package/features/contentEntry/ListEntries/ListEntriesRepository.js +55 -52
  395. package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
  396. package/features/contentEntry/ListEntries/ListEntriesUseCase.d.ts +1 -1
  397. package/features/contentEntry/ListEntries/ListEntriesUseCase.js +34 -54
  398. package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
  399. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js +25 -27
  400. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js.map +1 -1
  401. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js +22 -29
  402. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js.map +1 -1
  403. package/features/contentEntry/ListEntries/abstractions.d.ts +4 -0
  404. package/features/contentEntry/ListEntries/abstractions.js +6 -31
  405. package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
  406. package/features/contentEntry/ListEntries/feature.d.ts +4 -1
  407. package/features/contentEntry/ListEntries/feature.js +10 -12
  408. package/features/contentEntry/ListEntries/feature.js.map +1 -1
  409. package/features/contentEntry/ListEntries/index.js +1 -3
  410. package/features/contentEntry/MoveEntry/MoveEntryRepository.js +19 -25
  411. package/features/contentEntry/MoveEntry/MoveEntryRepository.js.map +1 -1
  412. package/features/contentEntry/MoveEntry/MoveEntryUseCase.d.ts +1 -1
  413. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +67 -95
  414. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
  415. package/features/contentEntry/MoveEntry/abstractions.d.ts +1 -0
  416. package/features/contentEntry/MoveEntry/abstractions.js +3 -24
  417. package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
  418. package/features/contentEntry/MoveEntry/events.d.ts +4 -2
  419. package/features/contentEntry/MoveEntry/events.js +26 -28
  420. package/features/contentEntry/MoveEntry/events.js.map +1 -1
  421. package/features/contentEntry/MoveEntry/feature.d.ts +4 -1
  422. package/features/contentEntry/MoveEntry/feature.js +7 -9
  423. package/features/contentEntry/MoveEntry/feature.js.map +1 -1
  424. package/features/contentEntry/MoveEntry/index.js +1 -3
  425. package/features/contentEntry/PublishEntry/PublishEntryRepository.js +28 -38
  426. package/features/contentEntry/PublishEntry/PublishEntryRepository.js.map +1 -1
  427. package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +4 -18
  428. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +78 -119
  429. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
  430. package/features/contentEntry/PublishEntry/abstractions.d.ts +1 -0
  431. package/features/contentEntry/PublishEntry/abstractions.js +3 -24
  432. package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
  433. package/features/contentEntry/PublishEntry/events.d.ts +4 -2
  434. package/features/contentEntry/PublishEntry/events.js +26 -28
  435. package/features/contentEntry/PublishEntry/events.js.map +1 -1
  436. package/features/contentEntry/PublishEntry/feature.d.ts +4 -1
  437. package/features/contentEntry/PublishEntry/feature.js +7 -9
  438. package/features/contentEntry/PublishEntry/feature.js.map +1 -1
  439. package/features/contentEntry/PublishEntry/index.js +1 -3
  440. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js +33 -48
  441. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js.map +1 -1
  442. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +4 -16
  443. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +69 -104
  444. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
  445. package/features/contentEntry/RepublishEntry/abstractions.d.ts +1 -0
  446. package/features/contentEntry/RepublishEntry/abstractions.js +3 -25
  447. package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
  448. package/features/contentEntry/RepublishEntry/events.d.ts +4 -2
  449. package/features/contentEntry/RepublishEntry/events.js +26 -28
  450. package/features/contentEntry/RepublishEntry/events.js.map +1 -1
  451. package/features/contentEntry/RepublishEntry/feature.d.ts +4 -1
  452. package/features/contentEntry/RepublishEntry/feature.js +7 -9
  453. package/features/contentEntry/RepublishEntry/feature.js.map +1 -1
  454. package/features/contentEntry/RepublishEntry/index.js +0 -2
  455. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js +28 -38
  456. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js.map +1 -1
  457. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.d.ts +2 -2
  458. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +82 -112
  459. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
  460. package/features/contentEntry/RestoreEntryFromBin/abstractions.d.ts +1 -0
  461. package/features/contentEntry/RestoreEntryFromBin/abstractions.js +3 -25
  462. package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
  463. package/features/contentEntry/RestoreEntryFromBin/events.d.ts +4 -2
  464. package/features/contentEntry/RestoreEntryFromBin/events.js +26 -28
  465. package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
  466. package/features/contentEntry/RestoreEntryFromBin/feature.d.ts +4 -1
  467. package/features/contentEntry/RestoreEntryFromBin/feature.js +7 -9
  468. package/features/contentEntry/RestoreEntryFromBin/feature.js.map +1 -1
  469. package/features/contentEntry/RestoreEntryFromBin/index.js +0 -2
  470. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js +25 -30
  471. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js.map +1 -1
  472. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +4 -15
  473. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +71 -116
  474. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
  475. package/features/contentEntry/UnpublishEntry/abstractions.d.ts +1 -0
  476. package/features/contentEntry/UnpublishEntry/abstractions.js +3 -13
  477. package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
  478. package/features/contentEntry/UnpublishEntry/events.d.ts +4 -2
  479. package/features/contentEntry/UnpublishEntry/events.js +26 -33
  480. package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
  481. package/features/contentEntry/UnpublishEntry/feature.d.ts +4 -1
  482. package/features/contentEntry/UnpublishEntry/feature.js +7 -18
  483. package/features/contentEntry/UnpublishEntry/feature.js.map +1 -1
  484. package/features/contentEntry/UnpublishEntry/index.js +1 -3
  485. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js +25 -30
  486. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js.map +1 -1
  487. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +6 -23
  488. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +59 -108
  489. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
  490. package/features/contentEntry/UpdateEntry/abstractions.d.ts +2 -3
  491. package/features/contentEntry/UpdateEntry/abstractions.js +3 -13
  492. package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
  493. package/features/contentEntry/UpdateEntry/events.d.ts +4 -2
  494. package/features/contentEntry/UpdateEntry/events.js +18 -24
  495. package/features/contentEntry/UpdateEntry/events.js.map +1 -1
  496. package/features/contentEntry/UpdateEntry/feature.d.ts +4 -1
  497. package/features/contentEntry/UpdateEntry/feature.js +7 -18
  498. package/features/contentEntry/UpdateEntry/feature.js.map +1 -1
  499. package/features/contentEntry/UpdateEntry/index.js +1 -3
  500. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
  501. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +77 -0
  502. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js.map +1 -0
  503. package/features/contentEntry/UpdateRevisionDescription/abstractions.d.ts +25 -0
  504. package/features/contentEntry/UpdateRevisionDescription/abstractions.js +5 -0
  505. package/features/contentEntry/UpdateRevisionDescription/abstractions.js.map +1 -0
  506. package/features/contentEntry/UpdateRevisionDescription/events.d.ts +44 -0
  507. package/features/contentEntry/UpdateRevisionDescription/events.js +23 -0
  508. package/features/contentEntry/UpdateRevisionDescription/events.js.map +1 -0
  509. package/features/contentEntry/UpdateRevisionDescription/feature.d.ts +12 -0
  510. package/features/contentEntry/UpdateRevisionDescription/feature.js +11 -0
  511. package/features/contentEntry/UpdateRevisionDescription/feature.js.map +1 -0
  512. package/features/contentEntry/UpdateRevisionDescription/index.d.ts +2 -0
  513. package/features/contentEntry/UpdateRevisionDescription/index.js +2 -0
  514. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js +17 -26
  515. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js.map +1 -1
  516. package/features/contentEntry/UpdateSingletonEntry/abstractions.d.ts +1 -0
  517. package/features/contentEntry/UpdateSingletonEntry/abstractions.js +2 -8
  518. package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
  519. package/features/contentEntry/UpdateSingletonEntry/feature.d.ts +4 -1
  520. package/features/contentEntry/UpdateSingletonEntry/feature.js +6 -13
  521. package/features/contentEntry/UpdateSingletonEntry/feature.js.map +1 -1
  522. package/features/contentEntry/UpdateSingletonEntry/index.js +0 -2
  523. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js +42 -63
  524. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js.map +1 -1
  525. package/features/contentEntry/ValidateEntry/abstractions.d.ts +1 -0
  526. package/features/contentEntry/ValidateEntry/abstractions.js +2 -7
  527. package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
  528. package/features/contentEntry/ValidateEntry/feature.d.ts +4 -1
  529. package/features/contentEntry/ValidateEntry/feature.js +6 -6
  530. package/features/contentEntry/ValidateEntry/feature.js.map +1 -1
  531. package/features/contentEntry/ValidateEntry/index.js +0 -2
  532. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.d.ts +15 -0
  533. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js +216 -0
  534. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js.map +1 -0
  535. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.d.ts +13 -0
  536. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js +5 -0
  537. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js.map +1 -0
  538. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.d.ts +4 -0
  539. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js +11 -0
  540. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js.map +1 -0
  541. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.d.ts +2 -0
  542. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.js +2 -0
  543. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.d.ts +15 -0
  544. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js +151 -0
  545. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js.map +1 -0
  546. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.d.ts +13 -0
  547. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js +5 -0
  548. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js.map +1 -0
  549. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.d.ts +4 -0
  550. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js +11 -0
  551. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js.map +1 -0
  552. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.d.ts +2 -0
  553. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.js +2 -0
  554. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.d.ts +12 -0
  555. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js +66 -0
  556. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js.map +1 -0
  557. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.d.ts +12 -0
  558. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js +5 -0
  559. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js.map +1 -0
  560. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.d.ts +4 -0
  561. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js +11 -0
  562. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js.map +1 -0
  563. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.d.ts +2 -0
  564. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.js +2 -0
  565. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.d.ts +12 -0
  566. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js +62 -0
  567. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js.map +1 -0
  568. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.d.ts +12 -0
  569. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js +5 -0
  570. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js.map +1 -0
  571. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.d.ts +4 -0
  572. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js +11 -0
  573. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js.map +1 -0
  574. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.d.ts +2 -0
  575. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.js +2 -0
  576. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.d.ts +10 -0
  577. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js +41 -0
  578. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js.map +1 -0
  579. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.d.ts +12 -0
  580. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js +5 -0
  581. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js.map +1 -0
  582. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.d.ts +4 -0
  583. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js +11 -0
  584. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js.map +1 -0
  585. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.d.ts +2 -0
  586. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.js +2 -0
  587. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.d.ts +4 -0
  588. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js +21 -0
  589. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js.map +1 -0
  590. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.d.ts +12 -0
  591. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js +108 -0
  592. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js.map +1 -0
  593. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.d.ts +13 -0
  594. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js +5 -0
  595. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js.map +1 -0
  596. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.d.ts +4 -0
  597. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js +11 -0
  598. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js.map +1 -0
  599. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.d.ts +2 -0
  600. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.js +2 -0
  601. package/features/contentEntry/entryDataFactories/expiresAt.d.ts +5 -0
  602. package/features/contentEntry/entryDataFactories/expiresAt.js +9 -0
  603. package/features/contentEntry/entryDataFactories/expiresAt.js.map +1 -0
  604. package/{crud → features}/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +0 -3
  605. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +17 -0
  606. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
  607. package/features/contentEntry/entryDataFactories/statuses.js +7 -0
  608. package/features/contentEntry/entryDataFactories/statuses.js.map +1 -0
  609. package/features/contentEntry/entryDataFactories/system.d.ts +10 -0
  610. package/features/contentEntry/entryDataFactories/system.js +10 -0
  611. package/features/contentEntry/entryDataFactories/system.js.map +1 -0
  612. package/features/contentModel/ContentModelFeature.d.ts +4 -1
  613. package/features/contentModel/ContentModelFeature.js +17 -18
  614. package/features/contentModel/ContentModelFeature.js.map +1 -1
  615. package/features/contentModel/CreateModel/CreateModelRepository.d.ts +12 -12
  616. package/features/contentModel/CreateModel/CreateModelRepository.js +109 -148
  617. package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
  618. package/features/contentModel/CreateModel/CreateModelUseCase.d.ts +3 -3
  619. package/features/contentModel/CreateModel/CreateModelUseCase.js +77 -122
  620. package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
  621. package/features/contentModel/CreateModel/abstractions.d.ts +1 -0
  622. package/features/contentModel/CreateModel/abstractions.js +3 -12
  623. package/features/contentModel/CreateModel/abstractions.js.map +1 -1
  624. package/features/contentModel/CreateModel/events.d.ts +4 -2
  625. package/features/contentModel/CreateModel/events.js +26 -33
  626. package/features/contentModel/CreateModel/events.js.map +1 -1
  627. package/features/contentModel/CreateModel/feature.d.ts +4 -1
  628. package/features/contentModel/CreateModel/feature.js +7 -16
  629. package/features/contentModel/CreateModel/feature.js.map +1 -1
  630. package/features/contentModel/CreateModel/index.js +1 -3
  631. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.d.ts +12 -13
  632. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +112 -145
  633. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
  634. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.d.ts +3 -3
  635. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +87 -121
  636. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
  637. package/features/contentModel/CreateModelFrom/abstractions.d.ts +1 -0
  638. package/features/contentModel/CreateModelFrom/abstractions.js +3 -12
  639. package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
  640. package/features/contentModel/CreateModelFrom/events.d.ts +4 -2
  641. package/features/contentModel/CreateModelFrom/events.js +26 -33
  642. package/features/contentModel/CreateModelFrom/events.js.map +1 -1
  643. package/features/contentModel/CreateModelFrom/feature.d.ts +4 -1
  644. package/features/contentModel/CreateModelFrom/feature.js +7 -16
  645. package/features/contentModel/CreateModelFrom/feature.js.map +1 -1
  646. package/features/contentModel/CreateModelFrom/index.js +1 -3
  647. package/features/contentModel/DeleteModel/DeleteModelRepository.js +27 -41
  648. package/features/contentModel/DeleteModel/DeleteModelRepository.js.map +1 -1
  649. package/features/contentModel/DeleteModel/DeleteModelUseCase.d.ts +1 -1
  650. package/features/contentModel/DeleteModel/DeleteModelUseCase.js +45 -73
  651. package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
  652. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js +50 -83
  653. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js.map +1 -1
  654. package/features/contentModel/DeleteModel/abstractions.d.ts +1 -0
  655. package/features/contentModel/DeleteModel/abstractions.js +3 -12
  656. package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
  657. package/features/contentModel/DeleteModel/events.d.ts +4 -2
  658. package/features/contentModel/DeleteModel/events.js +26 -33
  659. package/features/contentModel/DeleteModel/events.js.map +1 -1
  660. package/features/contentModel/DeleteModel/feature.d.ts +4 -1
  661. package/features/contentModel/DeleteModel/feature.js +8 -19
  662. package/features/contentModel/DeleteModel/feature.js.map +1 -1
  663. package/features/contentModel/DeleteModel/index.js +1 -3
  664. package/features/contentModel/GetModel/GetModelRepository.js +15 -23
  665. package/features/contentModel/GetModel/GetModelRepository.js.map +1 -1
  666. package/features/contentModel/GetModel/GetModelUseCase.js +21 -34
  667. package/features/contentModel/GetModel/GetModelUseCase.js.map +1 -1
  668. package/features/contentModel/GetModel/abstractions.d.ts +1 -0
  669. package/features/contentModel/GetModel/abstractions.js +3 -12
  670. package/features/contentModel/GetModel/abstractions.js.map +1 -1
  671. package/features/contentModel/GetModel/feature.d.ts +4 -1
  672. package/features/contentModel/GetModel/feature.js +7 -16
  673. package/features/contentModel/GetModel/feature.js.map +1 -1
  674. package/features/contentModel/GetModel/index.d.ts +1 -1
  675. package/features/contentModel/GetModel/index.js +1 -3
  676. package/features/contentModel/ListModels/ListModelsRepository.js +18 -36
  677. package/features/contentModel/ListModels/ListModelsRepository.js.map +1 -1
  678. package/features/contentModel/ListModels/ListModelsUseCase.js +23 -41
  679. package/features/contentModel/ListModels/ListModelsUseCase.js.map +1 -1
  680. package/features/contentModel/ListModels/abstractions.d.ts +1 -0
  681. package/features/contentModel/ListModels/abstractions.js +3 -12
  682. package/features/contentModel/ListModels/abstractions.js.map +1 -1
  683. package/features/contentModel/ListModels/feature.d.ts +4 -1
  684. package/features/contentModel/ListModels/feature.js +7 -17
  685. package/features/contentModel/ListModels/feature.js.map +1 -1
  686. package/features/contentModel/ListModels/index.js +0 -2
  687. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.d.ts +15 -0
  688. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +27 -0
  689. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -0
  690. package/features/contentModel/ModelFieldCompression/abstractions.d.ts +17 -0
  691. package/features/contentModel/ModelFieldCompression/abstractions.js +5 -0
  692. package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -0
  693. package/features/contentModel/ModelFieldCompression/feature.d.ts +4 -0
  694. package/features/contentModel/ModelFieldCompression/feature.js +11 -0
  695. package/features/contentModel/ModelFieldCompression/feature.js.map +1 -0
  696. package/features/contentModel/ModelFieldCompression/index.d.ts +1 -0
  697. package/features/contentModel/ModelFieldCompression/index.js +1 -0
  698. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.d.ts +3 -3
  699. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +17 -21
  700. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
  701. package/features/contentModel/ModelToAstConverter/abstractions.js +2 -6
  702. package/features/contentModel/ModelToAstConverter/abstractions.js.map +1 -1
  703. package/features/contentModel/ModelToAstConverter/feature.d.ts +4 -1
  704. package/features/contentModel/ModelToAstConverter/feature.js +6 -5
  705. package/features/contentModel/ModelToAstConverter/feature.js.map +1 -1
  706. package/features/contentModel/ModelToAstConverter/index.js +0 -2
  707. package/features/contentModel/UpdateModel/UpdateModelRepository.d.ts +9 -9
  708. package/features/contentModel/UpdateModel/UpdateModelRepository.js +75 -92
  709. package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
  710. package/features/contentModel/UpdateModel/UpdateModelUseCase.d.ts +2 -2
  711. package/features/contentModel/UpdateModel/UpdateModelUseCase.js +77 -117
  712. package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
  713. package/features/contentModel/UpdateModel/abstractions.d.ts +1 -0
  714. package/features/contentModel/UpdateModel/abstractions.js +3 -12
  715. package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
  716. package/features/contentModel/UpdateModel/events.d.ts +4 -2
  717. package/features/contentModel/UpdateModel/events.js +26 -33
  718. package/features/contentModel/UpdateModel/events.js.map +1 -1
  719. package/features/contentModel/UpdateModel/feature.d.ts +4 -1
  720. package/features/contentModel/UpdateModel/feature.js +7 -16
  721. package/features/contentModel/UpdateModel/feature.js.map +1 -1
  722. package/features/contentModel/UpdateModel/index.js +1 -3
  723. package/features/contentModel/shared/ModelsFetcher.d.ts +8 -6
  724. package/features/contentModel/shared/ModelsFetcher.js +68 -73
  725. package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
  726. package/features/contentModel/shared/PluginModelsProvider.js +38 -54
  727. package/features/contentModel/shared/PluginModelsProvider.js.map +1 -1
  728. package/features/contentModel/shared/abstractions.js +4 -16
  729. package/features/contentModel/shared/abstractions.js.map +1 -1
  730. package/features/contentModelGroup/ContentModelGroupFeature.d.ts +4 -1
  731. package/features/contentModelGroup/ContentModelGroupFeature.js +12 -16
  732. package/features/contentModelGroup/ContentModelGroupFeature.js.map +1 -1
  733. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.d.ts +1 -1
  734. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +64 -95
  735. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
  736. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.d.ts +3 -3
  737. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +83 -110
  738. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
  739. package/features/contentModelGroup/CreateGroup/abstractions.d.ts +1 -0
  740. package/features/contentModelGroup/CreateGroup/abstractions.js +3 -12
  741. package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
  742. package/features/contentModelGroup/CreateGroup/events.d.ts +4 -2
  743. package/features/contentModelGroup/CreateGroup/events.js +26 -33
  744. package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
  745. package/features/contentModelGroup/CreateGroup/feature.d.ts +4 -1
  746. package/features/contentModelGroup/CreateGroup/feature.js +7 -16
  747. package/features/contentModelGroup/CreateGroup/feature.js.map +1 -1
  748. package/features/contentModelGroup/CreateGroup/index.js +0 -2
  749. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js +37 -56
  750. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js.map +1 -1
  751. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.d.ts +1 -1
  752. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +54 -81
  753. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
  754. package/features/contentModelGroup/DeleteGroup/abstractions.d.ts +1 -0
  755. package/features/contentModelGroup/DeleteGroup/abstractions.js +3 -12
  756. package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
  757. package/features/contentModelGroup/DeleteGroup/events.d.ts +4 -2
  758. package/features/contentModelGroup/DeleteGroup/events.js +26 -33
  759. package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
  760. package/features/contentModelGroup/DeleteGroup/feature.d.ts +4 -1
  761. package/features/contentModelGroup/DeleteGroup/feature.js +7 -16
  762. package/features/contentModelGroup/DeleteGroup/feature.js.map +1 -1
  763. package/features/contentModelGroup/DeleteGroup/index.js +0 -2
  764. package/features/contentModelGroup/GetGroup/GetGroupRepository.d.ts +2 -2
  765. package/features/contentModelGroup/GetGroup/GetGroupRepository.js +62 -82
  766. package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
  767. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js +19 -34
  768. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js.map +1 -1
  769. package/features/contentModelGroup/GetGroup/abstractions.d.ts +1 -0
  770. package/features/contentModelGroup/GetGroup/abstractions.js +3 -12
  771. package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
  772. package/features/contentModelGroup/GetGroup/feature.d.ts +4 -1
  773. package/features/contentModelGroup/GetGroup/feature.js +7 -16
  774. package/features/contentModelGroup/GetGroup/feature.js.map +1 -1
  775. package/features/contentModelGroup/GetGroup/index.js +0 -2
  776. package/features/contentModelGroup/ListGroups/ListGroupsRepository.d.ts +2 -2
  777. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +59 -76
  778. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
  779. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js +19 -34
  780. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js.map +1 -1
  781. package/features/contentModelGroup/ListGroups/abstractions.d.ts +1 -0
  782. package/features/contentModelGroup/ListGroups/abstractions.js +3 -12
  783. package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
  784. package/features/contentModelGroup/ListGroups/feature.d.ts +4 -1
  785. package/features/contentModelGroup/ListGroups/feature.js +7 -16
  786. package/features/contentModelGroup/ListGroups/feature.js.map +1 -1
  787. package/features/contentModelGroup/ListGroups/index.js +0 -2
  788. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js +31 -44
  789. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js.map +1 -1
  790. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.d.ts +2 -2
  791. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +77 -113
  792. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
  793. package/features/contentModelGroup/UpdateGroup/abstractions.d.ts +1 -0
  794. package/features/contentModelGroup/UpdateGroup/abstractions.js +3 -12
  795. package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
  796. package/features/contentModelGroup/UpdateGroup/events.d.ts +4 -2
  797. package/features/contentModelGroup/UpdateGroup/events.js +26 -33
  798. package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
  799. package/features/contentModelGroup/UpdateGroup/feature.d.ts +4 -1
  800. package/features/contentModelGroup/UpdateGroup/feature.js +7 -16
  801. package/features/contentModelGroup/UpdateGroup/feature.js.map +1 -1
  802. package/features/contentModelGroup/UpdateGroup/index.js +0 -2
  803. package/features/contentModelGroup/shared/PluginGroupsProvider.d.ts +2 -2
  804. package/features/contentModelGroup/shared/PluginGroupsProvider.js +63 -80
  805. package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
  806. package/features/contentModelGroup/shared/abstractions.d.ts +1 -0
  807. package/features/contentModelGroup/shared/abstractions.js +4 -8
  808. package/features/contentModelGroup/shared/abstractions.js.map +1 -1
  809. package/features/contentModelGroup/shared/index.js +1 -3
  810. package/features/graphql/feature.d.ts +4 -0
  811. package/features/graphql/feature.js +35 -0
  812. package/features/graphql/feature.js.map +1 -0
  813. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.d.ts +13 -0
  814. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +31 -0
  815. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  816. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.d.ts +97 -0
  817. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +5 -0
  818. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -0
  819. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.d.ts +10 -0
  820. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +5 -0
  821. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  822. package/features/graphql/fields/base/BooleanToGraphQL.d.ts +26 -0
  823. package/features/graphql/fields/base/BooleanToGraphQL.js +53 -0
  824. package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -0
  825. package/features/graphql/fields/base/DateTimeToGraphQL.d.ts +26 -0
  826. package/features/graphql/fields/base/DateTimeToGraphQL.js +82 -0
  827. package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -0
  828. package/features/graphql/fields/base/DynamicZoneToGraphQL.d.ts +30 -0
  829. package/features/graphql/fields/base/DynamicZoneToGraphQL.js +196 -0
  830. package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -0
  831. package/features/graphql/fields/base/FileToGraphQL.d.ts +22 -0
  832. package/features/graphql/fields/base/FileToGraphQL.js +36 -0
  833. package/features/graphql/fields/base/FileToGraphQL.js.map +1 -0
  834. package/features/graphql/fields/base/JsonToGraphQL.d.ts +24 -0
  835. package/features/graphql/fields/base/JsonToGraphQL.js +43 -0
  836. package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -0
  837. package/features/graphql/fields/base/LongTextToGraphQL.d.ts +24 -0
  838. package/features/graphql/fields/base/LongTextToGraphQL.js +46 -0
  839. package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -0
  840. package/features/graphql/fields/base/NumberToGraphQL.d.ts +26 -0
  841. package/features/graphql/fields/base/NumberToGraphQL.js +63 -0
  842. package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -0
  843. package/features/graphql/fields/base/ObjectToGraphQL.d.ts +31 -0
  844. package/features/graphql/fields/base/ObjectToGraphQL.js +205 -0
  845. package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -0
  846. package/features/graphql/fields/base/RefToGraphQL.d.ts +29 -0
  847. package/features/graphql/fields/base/RefToGraphQL.js +201 -0
  848. package/features/graphql/fields/base/RefToGraphQL.js.map +1 -0
  849. package/features/graphql/fields/base/RichTextToGraphQL.d.ts +25 -0
  850. package/features/graphql/fields/base/RichTextToGraphQL.js +47 -0
  851. package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -0
  852. package/features/graphql/fields/base/SearchableJsonToGraphQL.d.ts +26 -0
  853. package/features/graphql/fields/base/SearchableJsonToGraphQL.js +49 -0
  854. package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -0
  855. package/features/graphql/fields/base/TextToGraphQL.d.ts +26 -0
  856. package/features/graphql/fields/base/TextToGraphQL.js +59 -0
  857. package/features/graphql/fields/base/TextToGraphQL.js.map +1 -0
  858. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.d.ts +16 -0
  859. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +32 -0
  860. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -0
  861. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.d.ts +3 -0
  862. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +11 -0
  863. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -0
  864. package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.d.ts +1 -1
  865. package/features/graphql/fields/base/richText/richTextResolver.js +13 -0
  866. package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -0
  867. package/{graphqlFields/helpers.d.ts → features/graphql/fields/base/utils/createGraphQLInputField.d.ts} +1 -1
  868. package/features/graphql/fields/base/utils/createGraphQLInputField.js +10 -0
  869. package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -0
  870. package/features/graphql/index.d.ts +4 -0
  871. package/features/graphql/index.js +4 -0
  872. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.d.ts +13 -0
  873. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +5 -0
  874. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -0
  875. package/features/installer/CmsInstaller.d.ts +1 -1
  876. package/features/installer/CmsInstaller.js +32 -33
  877. package/features/installer/CmsInstaller.js.map +1 -1
  878. package/features/installer/feature.d.ts +4 -1
  879. package/features/installer/feature.js +6 -5
  880. package/features/installer/feature.js.map +1 -1
  881. package/features/modelBuilder/LayoutBuilder.js +66 -122
  882. package/features/modelBuilder/LayoutBuilder.js.map +1 -1
  883. package/features/modelBuilder/abstractions.d.ts +11 -6
  884. package/features/modelBuilder/abstractions.js +3 -14
  885. package/features/modelBuilder/abstractions.js.map +1 -1
  886. package/features/modelBuilder/feature.d.ts +4 -1
  887. package/features/modelBuilder/feature.js +34 -39
  888. package/features/modelBuilder/feature.js.map +1 -1
  889. package/features/modelBuilder/fields/BaseFieldBuilder.d.ts +39 -0
  890. package/features/modelBuilder/fields/BaseFieldBuilder.js +41 -0
  891. package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -0
  892. package/features/modelBuilder/fields/BooleanFieldType.d.ts +2 -2
  893. package/features/modelBuilder/fields/BooleanFieldType.js +20 -19
  894. package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
  895. package/features/modelBuilder/fields/DataFieldBuilder.d.ts +221 -0
  896. package/features/modelBuilder/fields/DataFieldBuilder.js +171 -0
  897. package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -0
  898. package/features/modelBuilder/fields/DateTimeFieldType.d.ts +3 -3
  899. package/features/modelBuilder/fields/DateTimeFieldType.js +61 -60
  900. package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
  901. package/features/modelBuilder/fields/DynamicZoneFieldType.d.ts +3 -3
  902. package/features/modelBuilder/fields/DynamicZoneFieldType.js +53 -49
  903. package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
  904. package/features/modelBuilder/fields/FieldBuilder.d.ts +5 -46
  905. package/features/modelBuilder/fields/FieldBuilder.js +3 -154
  906. package/features/modelBuilder/fields/FieldBuilderRegistry.d.ts +3 -3
  907. package/features/modelBuilder/fields/FieldBuilderRegistry.js +38 -52
  908. package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
  909. package/features/modelBuilder/fields/FileFieldType.d.ts +3 -3
  910. package/features/modelBuilder/fields/FileFieldType.js +27 -26
  911. package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
  912. package/features/modelBuilder/fields/JsonFieldType.d.ts +2 -2
  913. package/features/modelBuilder/fields/JsonFieldType.js +15 -14
  914. package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
  915. package/features/modelBuilder/fields/LayoutFieldBuilder.d.ts +7 -0
  916. package/features/modelBuilder/fields/LayoutFieldBuilder.js +6 -0
  917. package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -0
  918. package/features/modelBuilder/fields/LocationFieldType.js +15 -14
  919. package/features/modelBuilder/fields/LocationFieldType.js.map +1 -1
  920. package/features/modelBuilder/fields/LongTextFieldType.d.ts +3 -4
  921. package/features/modelBuilder/fields/LongTextFieldType.js +117 -116
  922. package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
  923. package/features/modelBuilder/fields/NumberFieldType.d.ts +3 -3
  924. package/features/modelBuilder/fields/NumberFieldType.js +40 -39
  925. package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
  926. package/features/modelBuilder/fields/ObjectFieldType.d.ts +7 -6
  927. package/features/modelBuilder/fields/ObjectFieldType.js +53 -55
  928. package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
  929. package/features/modelBuilder/fields/RefFieldType.d.ts +3 -3
  930. package/features/modelBuilder/fields/RefFieldType.js +27 -26
  931. package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
  932. package/features/modelBuilder/fields/RichTextFieldType.d.ts +2 -2
  933. package/features/modelBuilder/fields/RichTextFieldType.js +22 -21
  934. package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
  935. package/features/modelBuilder/fields/SearchableJsonFieldType.d.ts +2 -2
  936. package/features/modelBuilder/fields/SearchableJsonFieldType.js +15 -14
  937. package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
  938. package/features/modelBuilder/fields/TextFieldType.d.ts +14 -3
  939. package/features/modelBuilder/fields/TextFieldType.js +150 -125
  940. package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
  941. package/features/modelBuilder/fields/UiAlertFieldType.d.ts +19 -0
  942. package/features/modelBuilder/fields/UiAlertFieldType.js +36 -0
  943. package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -0
  944. package/features/modelBuilder/fields/UiSeparatorFieldType.d.ts +17 -0
  945. package/features/modelBuilder/fields/UiSeparatorFieldType.js +32 -0
  946. package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -0
  947. package/features/modelBuilder/fields/UiTabsFieldType.d.ts +28 -0
  948. package/features/modelBuilder/fields/UiTabsFieldType.js +70 -0
  949. package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -0
  950. package/features/modelBuilder/fields/abstractions.d.ts +6 -3
  951. package/features/modelBuilder/fields/abstractions.js +2 -9
  952. package/features/modelBuilder/fields/abstractions.js.map +1 -1
  953. package/features/modelBuilder/fields/{validators.d.ts → fieldTypeValidator.d.ts} +23 -1
  954. package/features/modelBuilder/fields/fieldTypeValidator.js +0 -0
  955. package/features/modelBuilder/index.d.ts +5 -2
  956. package/features/modelBuilder/index.js +13 -16
  957. package/features/modelBuilder/models/BaseModelBuilder.d.ts +10 -4
  958. package/features/modelBuilder/models/BaseModelBuilder.js +71 -112
  959. package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
  960. package/features/modelBuilder/models/ModelBuilder.d.ts +14 -3
  961. package/features/modelBuilder/models/ModelBuilder.js +20 -23
  962. package/features/modelBuilder/models/ModelBuilder.js.map +1 -1
  963. package/features/modelBuilder/models/ModelsProvider.d.ts +2 -1
  964. package/features/modelBuilder/models/ModelsProvider.js +24 -33
  965. package/features/modelBuilder/models/ModelsProvider.js.map +1 -1
  966. package/features/modelBuilder/models/PrivateModelBuilder.js +15 -22
  967. package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
  968. package/features/modelBuilder/models/PublicModelBuilder.d.ts +5 -0
  969. package/features/modelBuilder/models/PublicModelBuilder.js +90 -91
  970. package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
  971. package/features/modelBuilder/models/abstractions.js +2 -6
  972. package/features/modelBuilder/models/abstractions.js.map +1 -1
  973. package/features/shared/abstractions.d.ts +9 -2
  974. package/features/shared/abstractions.js +5 -15
  975. package/features/shared/abstractions.js.map +1 -1
  976. package/features/sortMapper/SortMapper.js +27 -46
  977. package/features/sortMapper/SortMapper.js.map +1 -1
  978. package/features/sortMapper/abstractions.d.ts +1 -0
  979. package/features/sortMapper/abstractions.js +2 -1
  980. package/features/sortMapper/abstractions.js.map +1 -1
  981. package/features/sortMapper/feature.d.ts +4 -1
  982. package/features/sortMapper/feature.js +7 -6
  983. package/features/sortMapper/feature.js.map +1 -1
  984. package/features/storage/StorageTransformRegistry.d.ts +14 -0
  985. package/features/storage/StorageTransformRegistry.js +36 -0
  986. package/features/storage/StorageTransformRegistry.js.map +1 -0
  987. package/features/storage/abstractions/StorageTransform.d.ts +26 -0
  988. package/features/storage/abstractions/StorageTransform.js +5 -0
  989. package/features/storage/abstractions/StorageTransform.js.map +1 -0
  990. package/features/storage/abstractions/StorageTransformRegistry.d.ts +10 -0
  991. package/features/storage/abstractions/StorageTransformRegistry.js +5 -0
  992. package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -0
  993. package/features/storage/feature.d.ts +4 -0
  994. package/features/storage/feature.js +29 -0
  995. package/features/storage/feature.js.map +1 -0
  996. package/features/storage/fields/CompressedTextStorageTransform.d.ts +14 -0
  997. package/features/storage/fields/CompressedTextStorageTransform.js +38 -0
  998. package/features/storage/fields/CompressedTextStorageTransform.js.map +1 -0
  999. package/features/storage/fields/DateStorageTransform.d.ts +10 -0
  1000. package/features/storage/fields/DateStorageTransform.js +81 -0
  1001. package/features/storage/fields/DateStorageTransform.js.map +1 -0
  1002. package/features/storage/fields/DefaultStorageTransform.d.ts +10 -0
  1003. package/features/storage/fields/DefaultStorageTransform.js +19 -0
  1004. package/features/storage/fields/DefaultStorageTransform.js.map +1 -0
  1005. package/features/storage/fields/DynamicZoneStorageTransform.d.ts +10 -0
  1006. package/features/storage/fields/DynamicZoneStorageTransform.js +105 -0
  1007. package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -0
  1008. package/features/storage/fields/EncryptedTextStorageTransform.d.ts +14 -0
  1009. package/features/storage/fields/EncryptedTextStorageTransform.js +36 -0
  1010. package/features/storage/fields/EncryptedTextStorageTransform.js.map +1 -0
  1011. package/features/storage/fields/JsonStorageTransform.d.ts +13 -0
  1012. package/features/storage/fields/JsonStorageTransform.js +26 -0
  1013. package/features/storage/fields/JsonStorageTransform.js.map +1 -0
  1014. package/features/storage/fields/LongTextStorageTransform.d.ts +18 -0
  1015. package/features/storage/fields/LongTextStorageTransform.js +44 -0
  1016. package/features/storage/fields/LongTextStorageTransform.js.map +1 -0
  1017. package/features/storage/fields/ObjectStorageTransform.d.ts +10 -0
  1018. package/features/storage/fields/ObjectStorageTransform.js +76 -0
  1019. package/features/storage/fields/ObjectStorageTransform.js.map +1 -0
  1020. package/features/storage/fields/RichTextStorageTransform.d.ts +13 -0
  1021. package/features/storage/fields/RichTextStorageTransform.js +34 -0
  1022. package/features/storage/fields/RichTextStorageTransform.js.map +1 -0
  1023. package/features/storage/index.d.ts +3 -0
  1024. package/features/storage/index.js +3 -0
  1025. package/features/validation/CmsModelFieldPatternValidatorRegistry.d.ts +12 -0
  1026. package/features/validation/CmsModelFieldPatternValidatorRegistry.js +27 -0
  1027. package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  1028. package/features/validation/CmsModelFieldValidatorRegistry.d.ts +12 -0
  1029. package/features/validation/CmsModelFieldValidatorRegistry.js +27 -0
  1030. package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -0
  1031. package/features/validation/abstractions/CmsModelFieldPatternValidator.d.ts +13 -0
  1032. package/features/validation/abstractions/CmsModelFieldPatternValidator.js +5 -0
  1033. package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -0
  1034. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.d.ts +9 -0
  1035. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +5 -0
  1036. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  1037. package/features/validation/abstractions/CmsModelFieldValidator.d.ts +11 -0
  1038. package/features/validation/abstractions/CmsModelFieldValidator.js +5 -0
  1039. package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -0
  1040. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.d.ts +9 -0
  1041. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +5 -0
  1042. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -0
  1043. package/features/validation/feature.d.ts +4 -0
  1044. package/features/validation/feature.js +49 -0
  1045. package/features/validation/feature.js.map +1 -0
  1046. package/features/validation/index.d.ts +5 -0
  1047. package/features/validation/index.js +5 -0
  1048. package/features/validation/validators/DateGteValidator.d.ts +10 -0
  1049. package/features/validation/validators/DateGteValidator.js +20 -0
  1050. package/features/validation/validators/DateGteValidator.js.map +1 -0
  1051. package/features/validation/validators/DateLteValidator.d.ts +10 -0
  1052. package/features/validation/validators/DateLteValidator.js +20 -0
  1053. package/features/validation/validators/DateLteValidator.js.map +1 -0
  1054. package/features/validation/validators/GteValidator.d.ts +10 -0
  1055. package/features/validation/validators/GteValidator.js +19 -0
  1056. package/features/validation/validators/GteValidator.js.map +1 -0
  1057. package/features/validation/validators/InValidator.d.ts +10 -0
  1058. package/features/validation/validators/InValidator.js +19 -0
  1059. package/features/validation/validators/InValidator.js.map +1 -0
  1060. package/features/validation/validators/LteValidator.d.ts +10 -0
  1061. package/features/validation/validators/LteValidator.js +19 -0
  1062. package/features/validation/validators/LteValidator.js.map +1 -0
  1063. package/features/validation/validators/MaxLengthValidator.d.ts +10 -0
  1064. package/features/validation/validators/MaxLengthValidator.js +19 -0
  1065. package/features/validation/validators/MaxLengthValidator.js.map +1 -0
  1066. package/features/validation/validators/MinLengthValidator.d.ts +10 -0
  1067. package/features/validation/validators/MinLengthValidator.js +19 -0
  1068. package/features/validation/validators/MinLengthValidator.js.map +1 -0
  1069. package/features/validation/validators/PatternValidator.d.ts +13 -0
  1070. package/features/validation/validators/PatternValidator.js +29 -0
  1071. package/features/validation/validators/PatternValidator.js.map +1 -0
  1072. package/features/validation/validators/RequiredValidator.d.ts +10 -0
  1073. package/features/validation/validators/RequiredValidator.js +17 -0
  1074. package/features/validation/validators/RequiredValidator.js.map +1 -0
  1075. package/features/validation/validators/TimeGteValidator.d.ts +10 -0
  1076. package/features/validation/validators/TimeGteValidator.js +19 -0
  1077. package/features/validation/validators/TimeGteValidator.js.map +1 -0
  1078. package/features/validation/validators/TimeLteValidator.d.ts +10 -0
  1079. package/features/validation/validators/TimeLteValidator.js +19 -0
  1080. package/features/validation/validators/TimeLteValidator.js.map +1 -0
  1081. package/features/validation/validators/UniqueValidator.d.ts +10 -0
  1082. package/features/validation/validators/UniqueValidator.js +40 -0
  1083. package/features/validation/validators/UniqueValidator.js.map +1 -0
  1084. package/features/validation/validators/patterns/EmailPattern.d.ts +12 -0
  1085. package/features/validation/validators/patterns/EmailPattern.js +17 -0
  1086. package/features/validation/validators/patterns/EmailPattern.js.map +1 -0
  1087. package/features/validation/validators/patterns/LowerCasePattern.d.ts +12 -0
  1088. package/features/validation/validators/patterns/LowerCasePattern.js +17 -0
  1089. package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -0
  1090. package/features/validation/validators/patterns/LowerCaseSpacePattern.d.ts +12 -0
  1091. package/features/validation/validators/patterns/LowerCaseSpacePattern.js +17 -0
  1092. package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -0
  1093. package/features/validation/validators/patterns/UpperCasePattern.d.ts +12 -0
  1094. package/features/validation/validators/patterns/UpperCasePattern.js +17 -0
  1095. package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -0
  1096. package/features/validation/validators/patterns/UpperCaseSpacePattern.d.ts +12 -0
  1097. package/features/validation/validators/patterns/UpperCaseSpacePattern.js +17 -0
  1098. package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -0
  1099. package/features/validation/validators/patterns/UrlPattern.d.ts +12 -0
  1100. package/features/validation/validators/patterns/UrlPattern.js +17 -0
  1101. package/features/validation/validators/patterns/UrlPattern.js.map +1 -0
  1102. package/features/webhooks/CmsWebhookFactory.d.ts +11 -0
  1103. package/features/webhooks/CmsWebhookFactory.js +44 -0
  1104. package/features/webhooks/CmsWebhookFactory.js.map +1 -0
  1105. package/features/webhooks/feature.d.ts +4 -0
  1106. package/features/webhooks/feature.js +25 -0
  1107. package/features/webhooks/feature.js.map +1 -0
  1108. package/features/webhooks/handlers/OnEntryCreatedHandler.d.ts +11 -0
  1109. package/features/webhooks/handlers/OnEntryCreatedHandler.js +22 -0
  1110. package/features/webhooks/handlers/OnEntryCreatedHandler.js.map +1 -0
  1111. package/features/webhooks/handlers/OnEntryDeletedHandler.d.ts +11 -0
  1112. package/features/webhooks/handlers/OnEntryDeletedHandler.js +23 -0
  1113. package/features/webhooks/handlers/OnEntryDeletedHandler.js.map +1 -0
  1114. package/features/webhooks/handlers/OnEntryPublishedHandler.d.ts +11 -0
  1115. package/features/webhooks/handlers/OnEntryPublishedHandler.js +22 -0
  1116. package/features/webhooks/handlers/OnEntryPublishedHandler.js.map +1 -0
  1117. package/features/webhooks/handlers/OnEntryRestoredHandler.d.ts +11 -0
  1118. package/features/webhooks/handlers/OnEntryRestoredHandler.js +22 -0
  1119. package/features/webhooks/handlers/OnEntryRestoredHandler.js.map +1 -0
  1120. package/features/webhooks/handlers/OnEntryTrashedHandler.d.ts +11 -0
  1121. package/features/webhooks/handlers/OnEntryTrashedHandler.js +23 -0
  1122. package/features/webhooks/handlers/OnEntryTrashedHandler.js.map +1 -0
  1123. package/features/webhooks/handlers/OnEntryUnpublishedHandler.d.ts +11 -0
  1124. package/features/webhooks/handlers/OnEntryUnpublishedHandler.js +22 -0
  1125. package/features/webhooks/handlers/OnEntryUnpublishedHandler.js.map +1 -0
  1126. package/features/webhooks/handlers/OnEntryUpdatedHandler.d.ts +11 -0
  1127. package/features/webhooks/handlers/OnEntryUpdatedHandler.js +23 -0
  1128. package/features/webhooks/handlers/OnEntryUpdatedHandler.js.map +1 -0
  1129. package/features/whereMapper/WhereMapper.js +42 -69
  1130. package/features/whereMapper/WhereMapper.js.map +1 -1
  1131. package/features/whereMapper/abstractions.d.ts +1 -0
  1132. package/features/whereMapper/abstractions.js +2 -1
  1133. package/features/whereMapper/abstractions.js.map +1 -1
  1134. package/features/whereMapper/feature.d.ts +4 -1
  1135. package/features/whereMapper/feature.js +7 -6
  1136. package/features/whereMapper/feature.js.map +1 -1
  1137. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +18 -37
  1138. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  1139. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +92 -136
  1140. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  1141. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +103 -152
  1142. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  1143. package/fieldConverters/index.js +6 -6
  1144. package/fieldConverters/index.js.map +1 -1
  1145. package/graphql/buildSchemaPlugins.js +16 -20
  1146. package/graphql/buildSchemaPlugins.js.map +1 -1
  1147. package/graphql/checkEndpointAccess.js +4 -5
  1148. package/graphql/checkEndpointAccess.js.map +1 -1
  1149. package/graphql/createExecutableSchema.js +30 -41
  1150. package/graphql/createExecutableSchema.js.map +1 -1
  1151. package/graphql/formatErrorPayload.js +13 -14
  1152. package/graphql/formatErrorPayload.js.map +1 -1
  1153. package/graphql/generateSchema.js +20 -24
  1154. package/graphql/generateSchema.js.map +1 -1
  1155. package/graphql/getSchema/generateCacheId.js +7 -6
  1156. package/graphql/getSchema/generateCacheId.js.map +1 -1
  1157. package/graphql/getSchema/generateCacheKey.js +23 -23
  1158. package/graphql/getSchema/generateCacheKey.js.map +1 -1
  1159. package/graphql/getSchema.js +46 -63
  1160. package/graphql/getSchema.js.map +1 -1
  1161. package/graphql/graphQLHandlerFactory.js +15 -23
  1162. package/graphql/graphQLHandlerFactory.js.map +1 -1
  1163. package/graphql/handleRequest.js +50 -63
  1164. package/graphql/handleRequest.js.map +1 -1
  1165. package/graphql/index.js +7 -3
  1166. package/graphql/index.js.map +1 -1
  1167. package/graphql/scalars/RevisionId.js +10 -14
  1168. package/graphql/scalars/RevisionId.js.map +1 -1
  1169. package/graphql/scalars/RevisionIdScalarPlugin.js +10 -7
  1170. package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -1
  1171. package/graphql/schema/baseContentSchema.js +29 -30
  1172. package/graphql/schema/baseContentSchema.js.map +1 -1
  1173. package/graphql/schema/baseSchema.d.ts +2 -1
  1174. package/graphql/schema/baseSchema.js +52 -51
  1175. package/graphql/schema/baseSchema.js.map +1 -1
  1176. package/graphql/schema/cms/createEntryResolver.d.ts +10 -0
  1177. package/graphql/schema/cms/createEntryResolver.js +53 -0
  1178. package/graphql/schema/cms/createEntryResolver.js.map +1 -0
  1179. package/graphql/schema/cms/deleteEntryResolver.d.ts +10 -0
  1180. package/graphql/schema/cms/deleteEntryResolver.js +53 -0
  1181. package/graphql/schema/cms/deleteEntryResolver.js.map +1 -0
  1182. package/graphql/schema/cms/getEntryResolver.d.ts +11 -0
  1183. package/graphql/schema/cms/getEntryResolver.js +53 -0
  1184. package/graphql/schema/cms/getEntryResolver.js.map +1 -0
  1185. package/graphql/schema/cms/helpers/buildFieldsSelection.d.ts +23 -0
  1186. package/graphql/schema/cms/helpers/buildFieldsSelection.js +34 -0
  1187. package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -0
  1188. package/graphql/schema/cms/helpers/getErrorMessage.d.ts +4 -0
  1189. package/graphql/schema/cms/helpers/getErrorMessage.js +8 -0
  1190. package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -0
  1191. package/graphql/schema/cms/helpers/getModel.d.ts +6 -0
  1192. package/graphql/schema/cms/helpers/getModel.js +8 -0
  1193. package/graphql/schema/cms/helpers/getModel.js.map +1 -0
  1194. package/graphql/schema/cms/helpers/index.d.ts +5 -0
  1195. package/graphql/schema/cms/helpers/index.js +5 -0
  1196. package/graphql/schema/cms/helpers/transformSortToArray.d.ts +18 -0
  1197. package/graphql/schema/cms/helpers/transformSortToArray.js +11 -0
  1198. package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -0
  1199. package/graphql/schema/cms/helpers/transformWhereToNested.d.ts +17 -0
  1200. package/graphql/schema/cms/helpers/transformWhereToNested.js +27 -0
  1201. package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -0
  1202. package/graphql/schema/cms/helpers.d.ts +5 -0
  1203. package/graphql/schema/cms/helpers.js +5 -0
  1204. package/graphql/schema/cms/index.d.ts +2 -0
  1205. package/graphql/schema/cms/index.js +24 -0
  1206. package/graphql/schema/cms/index.js.map +1 -0
  1207. package/graphql/schema/cms/listEntriesResolver.d.ts +15 -0
  1208. package/graphql/schema/cms/listEntriesResolver.js +91 -0
  1209. package/graphql/schema/cms/listEntriesResolver.js.map +1 -0
  1210. package/graphql/schema/cms/publishEntryResolver.d.ts +10 -0
  1211. package/graphql/schema/cms/publishEntryResolver.js +53 -0
  1212. package/graphql/schema/cms/publishEntryResolver.js.map +1 -0
  1213. package/graphql/schema/cms/resolvers/createEntry.d.ts +8 -0
  1214. package/graphql/schema/cms/resolvers/createEntry.js +18 -0
  1215. package/graphql/schema/cms/resolvers/createEntry.js.map +1 -0
  1216. package/graphql/schema/cms/resolvers/deleteEntryRevision.d.ts +8 -0
  1217. package/graphql/schema/cms/resolvers/deleteEntryRevision.js +18 -0
  1218. package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -0
  1219. package/graphql/schema/cms/resolvers/getEntry.d.ts +8 -0
  1220. package/graphql/schema/cms/resolvers/getEntry.js +18 -0
  1221. package/graphql/schema/cms/resolvers/getEntry.js.map +1 -0
  1222. package/graphql/schema/cms/resolvers/index.d.ts +9 -0
  1223. package/graphql/schema/cms/resolvers/index.js +9 -0
  1224. package/graphql/schema/cms/resolvers/listEntries.d.ts +8 -0
  1225. package/graphql/schema/cms/resolvers/listEntries.js +18 -0
  1226. package/graphql/schema/cms/resolvers/listEntries.js.map +1 -0
  1227. package/graphql/schema/cms/resolvers/mutationCms.d.ts +8 -0
  1228. package/graphql/schema/cms/resolvers/mutationCms.js +19 -0
  1229. package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -0
  1230. package/graphql/schema/cms/resolvers/publishEntryRevision.d.ts +8 -0
  1231. package/graphql/schema/cms/resolvers/publishEntryRevision.js +18 -0
  1232. package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -0
  1233. package/graphql/schema/cms/resolvers/queryCms.d.ts +8 -0
  1234. package/graphql/schema/cms/resolvers/queryCms.js +19 -0
  1235. package/graphql/schema/cms/resolvers/queryCms.js.map +1 -0
  1236. package/graphql/schema/cms/resolvers/unpublishEntryRevision.d.ts +8 -0
  1237. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +18 -0
  1238. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -0
  1239. package/graphql/schema/cms/resolvers/updateEntryRevision.d.ts +8 -0
  1240. package/graphql/schema/cms/resolvers/updateEntryRevision.js +18 -0
  1241. package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -0
  1242. package/graphql/schema/cms/typeDefs/index.d.ts +3 -0
  1243. package/graphql/schema/cms/typeDefs/index.js +3 -0
  1244. package/graphql/schema/cms/typeDefs/mutation.d.ts +8 -0
  1245. package/graphql/schema/cms/typeDefs/mutation.js +43 -0
  1246. package/graphql/schema/cms/typeDefs/mutation.js.map +1 -0
  1247. package/graphql/schema/cms/typeDefs/query.d.ts +8 -0
  1248. package/graphql/schema/cms/typeDefs/query.js +37 -0
  1249. package/graphql/schema/cms/typeDefs/query.js.map +1 -0
  1250. package/graphql/schema/cms/typeDefs/responses.d.ts +8 -0
  1251. package/graphql/schema/cms/typeDefs/responses.js +36 -0
  1252. package/graphql/schema/cms/typeDefs/responses.js.map +1 -0
  1253. package/graphql/schema/cms/unpublishEntryResolver.d.ts +10 -0
  1254. package/graphql/schema/cms/unpublishEntryResolver.js +53 -0
  1255. package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -0
  1256. package/graphql/schema/cms/updateEntryResolver.d.ts +11 -0
  1257. package/graphql/schema/cms/updateEntryResolver.js +54 -0
  1258. package/graphql/schema/cms/updateEntryResolver.js.map +1 -0
  1259. package/graphql/schema/contentEntries.js +218 -305
  1260. package/graphql/schema/contentEntries.js.map +1 -1
  1261. package/graphql/schema/contentModelGroups.js +70 -89
  1262. package/graphql/schema/contentModelGroups.js.map +1 -1
  1263. package/graphql/schema/contentModels.js +123 -114
  1264. package/graphql/schema/contentModels.js.map +1 -1
  1265. package/graphql/schema/createFieldResolvers.d.ts +3 -2
  1266. package/graphql/schema/createFieldResolvers.js +67 -120
  1267. package/graphql/schema/createFieldResolvers.js.map +1 -1
  1268. package/graphql/schema/createManageResolvers.d.ts +3 -2
  1269. package/graphql/schema/createManageResolvers.js +70 -86
  1270. package/graphql/schema/createManageResolvers.js.map +1 -1
  1271. package/graphql/schema/createManageSDL.d.ts +4 -4
  1272. package/graphql/schema/createManageSDL.js +52 -60
  1273. package/graphql/schema/createManageSDL.js.map +1 -1
  1274. package/graphql/schema/createPreviewResolvers.d.ts +3 -2
  1275. package/graphql/schema/createPreviewResolvers.js +25 -28
  1276. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  1277. package/graphql/schema/createReadResolvers.d.ts +3 -2
  1278. package/graphql/schema/createReadResolvers.js +27 -36
  1279. package/graphql/schema/createReadResolvers.js.map +1 -1
  1280. package/graphql/schema/createReadSDL.d.ts +4 -4
  1281. package/graphql/schema/createReadSDL.js +35 -42
  1282. package/graphql/schema/createReadSDL.js.map +1 -1
  1283. package/graphql/schema/createSingularResolvers.d.ts +3 -2
  1284. package/graphql/schema/createSingularResolvers.js +32 -40
  1285. package/graphql/schema/createSingularResolvers.js.map +1 -1
  1286. package/graphql/schema/createSingularSDL.d.ts +3 -2
  1287. package/graphql/schema/createSingularSDL.js +33 -44
  1288. package/graphql/schema/createSingularSDL.js.map +1 -1
  1289. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +37 -47
  1290. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
  1291. package/graphql/schema/resolvers/manage/resolveCreate.js +9 -10
  1292. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  1293. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +9 -10
  1294. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  1295. package/graphql/schema/resolvers/manage/resolveDelete.js +18 -28
  1296. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  1297. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +11 -12
  1298. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
  1299. package/graphql/schema/resolvers/manage/resolveGet.js +41 -53
  1300. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  1301. package/graphql/schema/resolvers/manage/resolveGetByIds.js +9 -10
  1302. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  1303. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +9 -10
  1304. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  1305. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +9 -10
  1306. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
  1307. package/graphql/schema/resolvers/manage/resolveList.js +10 -11
  1308. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  1309. package/graphql/schema/resolvers/manage/resolveListDeleted.js +10 -11
  1310. package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -1
  1311. package/graphql/schema/resolvers/manage/resolveMove.js +11 -17
  1312. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
  1313. package/graphql/schema/resolvers/manage/resolvePublish.js +9 -10
  1314. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  1315. package/graphql/schema/resolvers/manage/resolveRepublish.js +10 -11
  1316. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  1317. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +9 -10
  1318. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -1
  1319. package/graphql/schema/resolvers/manage/resolveUnpublish.js +10 -11
  1320. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  1321. package/graphql/schema/resolvers/manage/resolveUpdate.js +9 -10
  1322. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  1323. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
  1324. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +12 -0
  1325. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
  1326. package/graphql/schema/resolvers/manage/resolveValidate.js +10 -11
  1327. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -1
  1328. package/graphql/schema/resolvers/preview/resolveGet.js +13 -16
  1329. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  1330. package/graphql/schema/resolvers/preview/resolveList.js +10 -11
  1331. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  1332. package/graphql/schema/resolvers/read/resolveGet.js +13 -16
  1333. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  1334. package/graphql/schema/resolvers/read/resolveList.js +10 -11
  1335. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  1336. package/graphql/schema/resolvers/singular/resolveGet.js +7 -10
  1337. package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -1
  1338. package/graphql/schema/resolvers/singular/resolveUpdate.js +7 -10
  1339. package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -1
  1340. package/graphql/schema/schemaPlugins.js +83 -102
  1341. package/graphql/schema/schemaPlugins.js.map +1 -1
  1342. package/index.d.ts +3 -5
  1343. package/index.js +18 -27
  1344. package/index.js.map +1 -1
  1345. package/legacy/abstractions.js +5 -22
  1346. package/legacy/abstractions.js.map +1 -1
  1347. package/package.json +42 -36
  1348. package/parameters/context.js +4 -7
  1349. package/parameters/context.js.map +1 -1
  1350. package/parameters/header.js +10 -22
  1351. package/parameters/header.js.map +1 -1
  1352. package/parameters/index.js +0 -2
  1353. package/parameters/path.js +9 -19
  1354. package/parameters/path.js.map +1 -1
  1355. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js +6 -5
  1356. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -1
  1357. package/plugins/CmsGraphQLSchemaPlugin/index.js +0 -2
  1358. package/plugins/CmsGroupPlugin.js +15 -26
  1359. package/plugins/CmsGroupPlugin.js.map +1 -1
  1360. package/plugins/CmsModelFieldConverterPlugin.js +5 -5
  1361. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  1362. package/plugins/CmsModelPlugin.js +138 -201
  1363. package/plugins/CmsModelPlugin.js.map +1 -1
  1364. package/plugins/CmsParametersPlugin.js +12 -14
  1365. package/plugins/CmsParametersPlugin.js.map +1 -1
  1366. package/plugins/StorageOperationsCmsModelPlugin.js +22 -29
  1367. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
  1368. package/plugins/index.d.ts +0 -2
  1369. package/plugins/index.js +0 -4
  1370. package/types/context.d.ts +6 -7
  1371. package/types/context.js +0 -3
  1372. package/types/fields/dynamicZoneField.js +0 -3
  1373. package/types/fields/objectField.d.ts +2 -0
  1374. package/types/fields/objectField.js +0 -3
  1375. package/types/identity.js +0 -3
  1376. package/types/index.js +0 -2
  1377. package/types/model.d.ts +39 -3
  1378. package/types/model.js +0 -3
  1379. package/types/modelAst.js +0 -3
  1380. package/types/modelField.d.ts +47 -15
  1381. package/types/modelField.js +0 -3
  1382. package/types/modelGroup.js +0 -3
  1383. package/types/plugins.d.ts +1 -305
  1384. package/types/plugins.js +0 -3
  1385. package/types/types.d.ts +34 -70
  1386. package/types/types.js +6 -222
  1387. package/types/types.js.map +1 -1
  1388. package/utils/caching/Cache.js +28 -35
  1389. package/utils/caching/Cache.js.map +1 -1
  1390. package/utils/caching/CacheKey.js +13 -14
  1391. package/utils/caching/CacheKey.js.map +1 -1
  1392. package/utils/caching/index.js +0 -2
  1393. package/utils/caching/types.js +0 -3
  1394. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +3 -2
  1395. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +12 -15
  1396. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
  1397. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +4 -3
  1398. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +13 -12
  1399. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
  1400. package/utils/contentModelAst/CmsModelToAstConverter.js +14 -18
  1401. package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -1
  1402. package/utils/contentModelAst/index.js +0 -2
  1403. package/utils/converters/Converter.js +35 -44
  1404. package/utils/converters/Converter.js.map +1 -1
  1405. package/utils/converters/ConverterCollection.d.ts +2 -0
  1406. package/utils/converters/ConverterCollection.js +70 -106
  1407. package/utils/converters/ConverterCollection.js.map +1 -1
  1408. package/utils/converters/types.js +0 -3
  1409. package/utils/converters/valueKeyFromStorageConverter.d.ts +2 -0
  1410. package/utils/converters/valueKeyFromStorageConverter.js +13 -17
  1411. package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
  1412. package/utils/converters/valueKeyStorageConverter.d.ts +2 -3
  1413. package/utils/converters/valueKeyStorageConverter.js +19 -18
  1414. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  1415. package/utils/converters/valueKeyToStorageConverter.d.ts +2 -0
  1416. package/utils/converters/valueKeyToStorageConverter.js +13 -17
  1417. package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
  1418. package/utils/createModelField.js +24 -42
  1419. package/utils/createModelField.js.map +1 -1
  1420. package/utils/createTypeFromFields.d.ts +3 -2
  1421. package/utils/createTypeFromFields.js +30 -52
  1422. package/utils/createTypeFromFields.js.map +1 -1
  1423. package/utils/createTypeName.js +2 -3
  1424. package/utils/createTypeName.js.map +1 -1
  1425. package/utils/date.js +9 -24
  1426. package/utils/date.js.map +1 -1
  1427. package/utils/entryStorage.d.ts +8 -15
  1428. package/utils/entryStorage.js +59 -120
  1429. package/utils/entryStorage.js.map +1 -1
  1430. package/utils/errors.js +7 -7
  1431. package/utils/errors.js.map +1 -1
  1432. package/utils/filterAsync.js +8 -9
  1433. package/utils/filterAsync.js.map +1 -1
  1434. package/utils/getBaseFieldType.js +4 -2
  1435. package/utils/getBaseFieldType.js.map +1 -1
  1436. package/utils/getEntryDescription.js +9 -14
  1437. package/utils/getEntryDescription.js.map +1 -1
  1438. package/utils/getEntryImage.js +9 -14
  1439. package/utils/getEntryImage.js.map +1 -1
  1440. package/utils/getEntryTitle.js +11 -26
  1441. package/utils/getEntryTitle.js.map +1 -1
  1442. package/utils/getSchemaFromFieldPlugins.d.ts +3 -2
  1443. package/utils/getSchemaFromFieldPlugins.js +27 -43
  1444. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  1445. package/utils/identity.js +9 -16
  1446. package/utils/identity.js.map +1 -1
  1447. package/utils/incrementEntryIdVersion.js +14 -18
  1448. package/utils/incrementEntryIdVersion.js.map +1 -1
  1449. package/utils/index.js +0 -2
  1450. package/utils/isHeadlessCmsReady.js +5 -14
  1451. package/utils/isHeadlessCmsReady.js.map +1 -1
  1452. package/utils/modelFieldTraverser/ModelFieldTraverser.js +27 -29
  1453. package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -1
  1454. package/utils/modelFieldTraverser/index.js +0 -2
  1455. package/utils/renderFields.d.ts +4 -3
  1456. package/utils/renderFields.js +26 -44
  1457. package/utils/renderFields.js.map +1 -1
  1458. package/utils/renderGetFilterFields.d.ts +3 -2
  1459. package/utils/renderGetFilterFields.js +31 -37
  1460. package/utils/renderGetFilterFields.js.map +1 -1
  1461. package/utils/renderInputFields.d.ts +4 -3
  1462. package/utils/renderInputFields.js +23 -46
  1463. package/utils/renderInputFields.js.map +1 -1
  1464. package/utils/renderListFilterFields.d.ts +3 -2
  1465. package/utils/renderListFilterFields.js +60 -54
  1466. package/utils/renderListFilterFields.js.map +1 -1
  1467. package/utils/renderSortEnum.d.ts +4 -4
  1468. package/utils/renderSortEnum.js +21 -23
  1469. package/utils/renderSortEnum.js.map +1 -1
  1470. package/utils/toSlug.js +6 -7
  1471. package/utils/toSlug.js.map +1 -1
  1472. package/abstractions/entryHooks/index.js.map +0 -1
  1473. package/abstractions/index.js.map +0 -1
  1474. package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +0 -19
  1475. package/crud/contentEntry/entryDataFactories/createEntryData.js +0 -249
  1476. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +0 -1
  1477. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +0 -22
  1478. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +0 -158
  1479. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +0 -1
  1480. package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +0 -14
  1481. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +0 -56
  1482. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +0 -1
  1483. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +0 -13
  1484. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +0 -51
  1485. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +0 -1
  1486. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +0 -11
  1487. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +0 -33
  1488. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +0 -1
  1489. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +0 -19
  1490. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +0 -130
  1491. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +0 -1
  1492. package/crud/contentEntry/entryDataFactories/index.d.ts +0 -8
  1493. package/crud/contentEntry/entryDataFactories/index.js +0 -10
  1494. package/crud/contentEntry/entryDataFactories/index.js.map +0 -1
  1495. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +0 -32
  1496. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +0 -1
  1497. package/crud/contentEntry/entryDataFactories/state.d.ts +0 -10
  1498. package/crud/contentEntry/entryDataFactories/state.js +0 -16
  1499. package/crud/contentEntry/entryDataFactories/state.js.map +0 -1
  1500. package/crud/contentEntry/entryDataFactories/statuses.js +0 -6
  1501. package/crud/contentEntry/entryDataFactories/statuses.js.map +0 -1
  1502. package/crud/contentModel/validateModel.d.ts +0 -9
  1503. package/crud/contentModel/validateModel.js +0 -21
  1504. package/crud/contentModel/validateModel.js.map +0 -1
  1505. package/crud/contentModel/validateModelFields.d.ts +0 -9
  1506. package/crud/contentModel/validateModelFields.js +0 -267
  1507. package/crud/contentModel/validateModelFields.js.map +0 -1
  1508. package/export/index.js.map +0 -1
  1509. package/exports/api/cms/entry.js.map +0 -1
  1510. package/exports/api/cms/group.js.map +0 -1
  1511. package/exports/api/cms/model.js.map +0 -1
  1512. package/extensions/entryHooks/index.js.map +0 -1
  1513. package/features/contentEntry/CreateEntry/index.js.map +0 -1
  1514. package/features/contentEntry/CreateEntryRevisionFrom/index.js.map +0 -1
  1515. package/features/contentEntry/DeleteEntry/index.js.map +0 -1
  1516. package/features/contentEntry/DeleteEntryRevision/index.js.map +0 -1
  1517. package/features/contentEntry/DeleteMultipleEntries/index.js.map +0 -1
  1518. package/features/contentEntry/GetEntriesByIds/index.js.map +0 -1
  1519. package/features/contentEntry/GetEntry/index.js.map +0 -1
  1520. package/features/contentEntry/GetEntryById/index.js.map +0 -1
  1521. package/features/contentEntry/GetLatestEntriesByIds/index.js.map +0 -1
  1522. package/features/contentEntry/GetLatestRevisionByEntryId/index.js.map +0 -1
  1523. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js.map +0 -1
  1524. package/features/contentEntry/GetPublishedEntriesByIds/index.js.map +0 -1
  1525. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js.map +0 -1
  1526. package/features/contentEntry/GetRevisionById/index.js.map +0 -1
  1527. package/features/contentEntry/GetRevisionsByEntryId/index.js.map +0 -1
  1528. package/features/contentEntry/GetSingletonEntry/index.js.map +0 -1
  1529. package/features/contentEntry/GetUniqueFieldValues/index.js.map +0 -1
  1530. package/features/contentEntry/ListEntries/index.js.map +0 -1
  1531. package/features/contentEntry/MoveEntry/index.js.map +0 -1
  1532. package/features/contentEntry/PublishEntry/index.js.map +0 -1
  1533. package/features/contentEntry/RepublishEntry/index.js.map +0 -1
  1534. package/features/contentEntry/RestoreEntryFromBin/index.js.map +0 -1
  1535. package/features/contentEntry/UnpublishEntry/index.js.map +0 -1
  1536. package/features/contentEntry/UpdateEntry/index.js.map +0 -1
  1537. package/features/contentEntry/UpdateSingletonEntry/index.js.map +0 -1
  1538. package/features/contentEntry/ValidateEntry/index.js.map +0 -1
  1539. package/features/contentModel/CreateModel/index.js.map +0 -1
  1540. package/features/contentModel/CreateModelFrom/index.js.map +0 -1
  1541. package/features/contentModel/DeleteModel/index.js.map +0 -1
  1542. package/features/contentModel/GetModel/index.js.map +0 -1
  1543. package/features/contentModel/ListModels/index.js.map +0 -1
  1544. package/features/contentModel/ModelToAstConverter/index.js.map +0 -1
  1545. package/features/contentModel/UpdateModel/index.js.map +0 -1
  1546. package/features/contentModelGroup/CreateGroup/index.js.map +0 -1
  1547. package/features/contentModelGroup/DeleteGroup/index.js.map +0 -1
  1548. package/features/contentModelGroup/GetGroup/index.js.map +0 -1
  1549. package/features/contentModelGroup/ListGroups/index.js.map +0 -1
  1550. package/features/contentModelGroup/UpdateGroup/index.js.map +0 -1
  1551. package/features/contentModelGroup/shared/index.js.map +0 -1
  1552. package/features/modelBuilder/fields/FieldBuilder.js.map +0 -1
  1553. package/features/modelBuilder/fields/validators.js +0 -3
  1554. package/features/modelBuilder/fields/validators.js.map +0 -1
  1555. package/features/modelBuilder/index.js.map +0 -1
  1556. package/graphql/schema/createFieldTypePluginRecords.d.ts +0 -3
  1557. package/graphql/schema/createFieldTypePluginRecords.js +0 -8
  1558. package/graphql/schema/createFieldTypePluginRecords.js.map +0 -1
  1559. package/graphqlFields/boolean.d.ts +0 -2
  1560. package/graphqlFields/boolean.js +0 -52
  1561. package/graphqlFields/boolean.js.map +0 -1
  1562. package/graphqlFields/datetime.d.ts +0 -2
  1563. package/graphqlFields/datetime.js +0 -71
  1564. package/graphqlFields/datetime.js.map +0 -1
  1565. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +0 -2
  1566. package/graphqlFields/dynamicZone/dynamicZoneField.js +0 -313
  1567. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +0 -1
  1568. package/graphqlFields/dynamicZone/index.d.ts +0 -1
  1569. package/graphqlFields/dynamicZone/index.js +0 -3
  1570. package/graphqlFields/dynamicZone/index.js.map +0 -1
  1571. package/graphqlFields/file.d.ts +0 -2
  1572. package/graphqlFields/file.js +0 -37
  1573. package/graphqlFields/file.js.map +0 -1
  1574. package/graphqlFields/helpers.js +0 -20
  1575. package/graphqlFields/helpers.js.map +0 -1
  1576. package/graphqlFields/index.d.ts +0 -2
  1577. package/graphqlFields/index.js +0 -15
  1578. package/graphqlFields/index.js.map +0 -1
  1579. package/graphqlFields/json.d.ts +0 -2
  1580. package/graphqlFields/json.js +0 -42
  1581. package/graphqlFields/json.js.map +0 -1
  1582. package/graphqlFields/longText.d.ts +0 -2
  1583. package/graphqlFields/longText.js +0 -57
  1584. package/graphqlFields/longText.js.map +0 -1
  1585. package/graphqlFields/number.d.ts +0 -2
  1586. package/graphqlFields/number.js +0 -63
  1587. package/graphqlFields/number.js.map +0 -1
  1588. package/graphqlFields/object.d.ts +0 -2
  1589. package/graphqlFields/object.js +0 -245
  1590. package/graphqlFields/object.js.map +0 -1
  1591. package/graphqlFields/ref.d.ts +0 -2
  1592. package/graphqlFields/ref.js +0 -286
  1593. package/graphqlFields/ref.js.map +0 -1
  1594. package/graphqlFields/richText/richTextResolver.js +0 -22
  1595. package/graphqlFields/richText/richTextResolver.js.map +0 -1
  1596. package/graphqlFields/richText.d.ts +0 -2
  1597. package/graphqlFields/richText.js +0 -48
  1598. package/graphqlFields/richText.js.map +0 -1
  1599. package/graphqlFields/searchableJson.d.ts +0 -2
  1600. package/graphqlFields/searchableJson.js +0 -53
  1601. package/graphqlFields/searchableJson.js.map +0 -1
  1602. package/graphqlFields/text.d.ts +0 -2
  1603. package/graphqlFields/text.js +0 -59
  1604. package/graphqlFields/text.js.map +0 -1
  1605. package/parameters/index.js.map +0 -1
  1606. package/plugins/CmsGraphQLSchemaPlugin/index.js.map +0 -1
  1607. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +0 -20
  1608. package/plugins/CmsGraphQLSchemaSorterPlugin.js +0 -19
  1609. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +0 -1
  1610. package/plugins/StorageTransformPlugin.d.ts +0 -35
  1611. package/plugins/StorageTransformPlugin.js +0 -26
  1612. package/plugins/StorageTransformPlugin.js.map +0 -1
  1613. package/plugins/index.js.map +0 -1
  1614. package/storage/date.d.ts +0 -3
  1615. package/storage/date.js +0 -110
  1616. package/storage/date.js.map +0 -1
  1617. package/storage/default.d.ts +0 -2
  1618. package/storage/default.js +0 -19
  1619. package/storage/default.js.map +0 -1
  1620. package/storage/dynamicZone.d.ts +0 -2
  1621. package/storage/dynamicZone.js +0 -149
  1622. package/storage/dynamicZone.js.map +0 -1
  1623. package/storage/index.d.ts +0 -1
  1624. package/storage/index.js +0 -13
  1625. package/storage/index.js.map +0 -1
  1626. package/storage/json.d.ts +0 -2
  1627. package/storage/json.js +0 -49
  1628. package/storage/json.js.map +0 -1
  1629. package/storage/object.d.ts +0 -2
  1630. package/storage/object.js +0 -104
  1631. package/storage/object.js.map +0 -1
  1632. package/types/context.js.map +0 -1
  1633. package/types/fields/dynamicZoneField.js.map +0 -1
  1634. package/types/fields/objectField.js.map +0 -1
  1635. package/types/identity.js.map +0 -1
  1636. package/types/index.js.map +0 -1
  1637. package/types/model.js.map +0 -1
  1638. package/types/modelAst.js.map +0 -1
  1639. package/types/modelField.js.map +0 -1
  1640. package/types/modelGroup.js.map +0 -1
  1641. package/types/plugins.js.map +0 -1
  1642. package/utils/caching/index.js.map +0 -1
  1643. package/utils/caching/types.js.map +0 -1
  1644. package/utils/contentEntryTraverser/ContentEntryTraverser.js +0 -89
  1645. package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +0 -1
  1646. package/utils/contentModelAst/index.js.map +0 -1
  1647. package/utils/converters/types.js.map +0 -1
  1648. package/utils/index.js.map +0 -1
  1649. package/utils/modelFieldTraverser/index.js.map +0 -1
  1650. package/validators/dateGte.d.ts +0 -2
  1651. package/validators/dateGte.js +0 -25
  1652. package/validators/dateGte.js.map +0 -1
  1653. package/validators/dateLte.d.ts +0 -2
  1654. package/validators/dateLte.js +0 -25
  1655. package/validators/dateLte.js.map +0 -1
  1656. package/validators/gte.d.ts +0 -2
  1657. package/validators/gte.js +0 -22
  1658. package/validators/gte.js.map +0 -1
  1659. package/validators/in.d.ts +0 -2
  1660. package/validators/in.js +0 -22
  1661. package/validators/in.js.map +0 -1
  1662. package/validators/index.d.ts +0 -1
  1663. package/validators/index.js +0 -16
  1664. package/validators/index.js.map +0 -1
  1665. package/validators/lte.d.ts +0 -2
  1666. package/validators/lte.js +0 -22
  1667. package/validators/lte.js.map +0 -1
  1668. package/validators/maxLength.d.ts +0 -2
  1669. package/validators/maxLength.js +0 -22
  1670. package/validators/maxLength.js.map +0 -1
  1671. package/validators/minLength.d.ts +0 -2
  1672. package/validators/minLength.js +0 -22
  1673. package/validators/minLength.js.map +0 -1
  1674. package/validators/pattern.d.ts +0 -2
  1675. package/validators/pattern.js +0 -36
  1676. package/validators/pattern.js.map +0 -1
  1677. package/validators/patternPlugins/email.d.ts +0 -2
  1678. package/validators/patternPlugins/email.js +0 -13
  1679. package/validators/patternPlugins/email.js.map +0 -1
  1680. package/validators/patternPlugins/index.d.ts +0 -2
  1681. package/validators/patternPlugins/index.js +0 -11
  1682. package/validators/patternPlugins/index.js.map +0 -1
  1683. package/validators/patternPlugins/lowerCase.d.ts +0 -2
  1684. package/validators/patternPlugins/lowerCase.js +0 -13
  1685. package/validators/patternPlugins/lowerCase.js.map +0 -1
  1686. package/validators/patternPlugins/lowerCaseSpace.d.ts +0 -2
  1687. package/validators/patternPlugins/lowerCaseSpace.js +0 -13
  1688. package/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  1689. package/validators/patternPlugins/upperCase.d.ts +0 -2
  1690. package/validators/patternPlugins/upperCase.js +0 -13
  1691. package/validators/patternPlugins/upperCase.js.map +0 -1
  1692. package/validators/patternPlugins/upperCaseSpace.d.ts +0 -2
  1693. package/validators/patternPlugins/upperCaseSpace.js +0 -13
  1694. package/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  1695. package/validators/patternPlugins/url.d.ts +0 -2
  1696. package/validators/patternPlugins/url.js +0 -13
  1697. package/validators/patternPlugins/url.js.map +0 -1
  1698. package/validators/required.d.ts +0 -2
  1699. package/validators/required.js +0 -17
  1700. package/validators/required.js.map +0 -1
  1701. package/validators/timeGte.d.ts +0 -2
  1702. package/validators/timeGte.js +0 -20
  1703. package/validators/timeGte.js.map +0 -1
  1704. package/validators/timeLte.d.ts +0 -2
  1705. package/validators/timeLte.js +0 -20
  1706. package/validators/timeLte.js.map +0 -1
  1707. package/validators/unique.d.ts +0 -6
  1708. package/validators/unique.js +0 -57
  1709. package/validators/unique.js.map +0 -1
  1710. /package/{crud → features}/contentEntry/entryDataFactories/statuses.d.ts +0 -0
@@ -1,162 +1,129 @@
1
1
  import camelCase from "lodash/camelCase.js";
2
2
  import { Result } from "@webiny/feature/api";
3
- import { CreateModelFromRepository as RepositoryAbstraction } from "./abstractions.js";
4
- import { ModelCache } from "../shared/abstractions.js";
5
- import { PluginModelsProvider } from "../shared/abstractions.js";
6
- import { ModelsFetcher } from "../shared/abstractions.js";
7
- import { ModelAlreadyExistsError } from "../../../domain/contentModel/errors.js";
8
- import { ModelPersistenceError } from "../../../domain/contentModel/errors.js";
9
- import { ModelValidationError } from "../../../domain/contentModel/errors.js";
10
- import { StorageOperations } from "../../shared/abstractions.js";
11
- import { TenantContext } from "@webiny/api-core/features/TenantContext";
12
- import { CmsContext } from "../../shared/abstractions.js";
3
+ import { CreateModelFromRepository } from "./abstractions.js";
4
+ import { ModelCache, ModelsFetcher, PluginModelsProvider } from "../shared/abstractions.js";
5
+ import { ModelAlreadyExistsError, ModelPersistenceError, ModelValidationError } from "../../../domain/contentModel/errors.js";
6
+ import { CmsContext, StorageOperations } from "../../shared/abstractions.js";
7
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
13
8
  import { validateExistingModelId, validateModelIdAllowed } from "../../../crud/contentModel/validate/modelId.js";
14
9
  import { validateEndingAllowed } from "../../../crud/contentModel/validate/endingAllowed.js";
15
10
  import { validateSingularApiName } from "../../../domain/contentModel/validation/singularApiName.js";
16
11
  import { validatePluralApiName } from "../../../domain/contentModel/validation/pluralApiName.js";
17
12
  import { validateModelFields } from "../../../domain/contentModel/validation/modelFields.js";
18
13
  import { ensureTypeTag } from "../../../domain/contentModel/ensureTypeTag.js";
19
-
20
- /**
21
- * Generate modelId from model following the exact logic from beforeCreate.ts
22
- */
23
- const getModelId = model => {
24
- const {
25
- modelId,
26
- name
27
- } = model;
28
- const value = modelId ? modelId.trim() : null;
29
- if (value) {
30
- const isModelIdValid = camelCase(value).toLowerCase() === value.toLowerCase();
31
- if (isModelIdValid) {
32
- return value;
14
+ import { ModelFieldCompression } from "../ModelFieldCompression/index.js";
15
+ const getModelId = (model)=>{
16
+ const { modelId, name } = model;
17
+ const value = modelId ? modelId.trim() : null;
18
+ if (value) {
19
+ const isModelIdValid = camelCase(value).toLowerCase() === value.toLowerCase();
20
+ if (isModelIdValid) return value;
21
+ return camelCase(value);
33
22
  }
34
- return camelCase(value);
35
- } else if (name) {
36
- return camelCase(name.trim());
37
- }
38
- throw new ModelValidationError(`There is no "modelId" or "name" passed into the create model from method.`);
23
+ if (name) return camelCase(name.trim());
24
+ throw new ModelValidationError('There is no "modelId" or "name" passed into the create model from method.');
39
25
  };
40
-
41
- /**
42
- * CreateModelFromRepository - Validates domain rules and persists cloned model.
43
- *
44
- * Responsibilities:
45
- * - Generate modelId from input
46
- * - Validate modelId is allowed (not in disallowed list)
47
- * - Validate API name endings
48
- * - Validate modelId uniqueness (database + plugins)
49
- * - Validate API name uniqueness (database + plugins)
50
- * - Validate plugin conflicts
51
- * - Validate model fields
52
- * - Persist to storage
53
- * - Clear ModelCache after successful create
54
- */
55
26
  class CreateModelFromRepositoryImpl {
56
- constructor(modelCache, pluginModelsProvider, modelsFetcher, storageOperations, tenantContext, cmsContext) {
57
- this.modelCache = modelCache;
58
- this.pluginModelsProvider = pluginModelsProvider;
59
- this.modelsFetcher = modelsFetcher;
60
- this.storageOperations = storageOperations;
61
- this.tenantContext = tenantContext;
62
- this.cmsContext = cmsContext;
63
- }
64
- async execute(model) {
65
- try {
66
- const tenant = this.tenantContext.getTenant();
67
-
68
- // Generate modelId using the exact logic from beforeCreate.ts
69
- const modelId = getModelId(model);
70
- model.modelId = modelId;
71
-
72
- // Validate modelId is allowed (not in disallowed list)
73
- try {
74
- validateModelIdAllowed({
75
- model
76
- });
77
- } catch (error) {
78
- return Result.fail(new ModelValidationError(error.message));
79
- }
80
-
81
- // Validate API name endings
82
- try {
83
- validateEndingAllowed({
84
- model
85
- });
86
- } catch (error) {
87
- return Result.fail(new ModelValidationError(error.message));
88
- }
89
-
90
- // Validate modelId uniqueness (database)
91
- const modelsResult = await this.modelsFetcher.fetchAll();
92
- if (modelsResult.isFail()) {
93
- return Result.fail(new ModelPersistenceError(modelsResult.error));
94
- }
95
- const existingModel = modelsResult.value.find(m => m.modelId === modelId);
96
- if (existingModel) {
97
- return Result.fail(new ModelAlreadyExistsError({
98
- modelId
99
- }));
100
- }
101
-
102
- // Check for plugin model conflicts
103
- const pluginModels = await this.pluginModelsProvider.list(tenant.id);
104
- const pluginModelConflict = pluginModels.find(pm => {
105
- return pm.modelId === model.modelId || pm.singularApiName === model.singularApiName || pm.pluralApiName === model.pluralApiName;
106
- });
107
- if (pluginModelConflict) {
108
- return Result.fail(new ModelAlreadyExistsError({
109
- modelId,
110
- message: `Model "${modelId}" is already registered via a plugin.`
111
- }));
112
- }
113
- const models = modelsResult.value;
114
- try {
115
- // Validate uniqueness
116
- for (const existingModel of models) {
117
- validateExistingModelId({
118
- existingModel,
119
- model
120
- });
121
- validateSingularApiName({
122
- existingModel,
123
- model
124
- });
125
- validatePluralApiName({
126
- existingModel,
127
- model
128
- });
27
+ constructor(modelCache, pluginModelsProvider, modelsFetcher, storageOperations, tenantContext, cmsContext, modelFieldCompression){
28
+ this.modelCache = modelCache;
29
+ this.pluginModelsProvider = pluginModelsProvider;
30
+ this.modelsFetcher = modelsFetcher;
31
+ this.storageOperations = storageOperations;
32
+ this.tenantContext = tenantContext;
33
+ this.cmsContext = cmsContext;
34
+ this.modelFieldCompression = modelFieldCompression;
35
+ }
36
+ async execute(model) {
37
+ try {
38
+ const tenant = this.tenantContext.getTenant();
39
+ const modelId = getModelId(model);
40
+ model.modelId = modelId;
41
+ try {
42
+ validateModelIdAllowed({
43
+ model
44
+ });
45
+ } catch (error) {
46
+ return Result.fail(new ModelValidationError({
47
+ message: error.message,
48
+ data: error.data
49
+ }));
50
+ }
51
+ try {
52
+ validateEndingAllowed({
53
+ model
54
+ });
55
+ } catch (error) {
56
+ return Result.fail(new ModelValidationError({
57
+ message: error.message,
58
+ data: error.data
59
+ }));
60
+ }
61
+ const modelsResult = await this.modelsFetcher.fetchAll();
62
+ if (modelsResult.isFail()) return Result.fail(new ModelPersistenceError(modelsResult.error));
63
+ const existingModel = modelsResult.value.find((m)=>m.modelId === modelId);
64
+ if (existingModel) return Result.fail(new ModelAlreadyExistsError({
65
+ modelId
66
+ }));
67
+ const pluginModels = await this.pluginModelsProvider.list(tenant.id);
68
+ const pluginModelConflict = pluginModels.find((pm)=>pm.modelId === model.modelId || pm.singularApiName === model.singularApiName || pm.pluralApiName === model.pluralApiName);
69
+ if (pluginModelConflict) return Result.fail(new ModelAlreadyExistsError({
70
+ modelId,
71
+ message: `Model "${modelId}" is already registered via a plugin.`
72
+ }));
73
+ const models = modelsResult.value;
74
+ try {
75
+ for (const existingModel of models){
76
+ validateExistingModelId({
77
+ existingModel,
78
+ model
79
+ });
80
+ validateSingularApiName({
81
+ existingModel,
82
+ model
83
+ });
84
+ validatePluralApiName({
85
+ existingModel,
86
+ model
87
+ });
88
+ }
89
+ await validateModelFields({
90
+ models,
91
+ model,
92
+ context: this.cmsContext
93
+ });
94
+ } catch (error) {
95
+ return Result.fail(new ModelValidationError({
96
+ message: error.message,
97
+ data: error.data
98
+ }));
99
+ }
100
+ model.tags = ensureTypeTag(model);
101
+ const fields = await this.modelFieldCompression.compress(model.fields);
102
+ await this.storageOperations.models.create({
103
+ model: {
104
+ ...model,
105
+ fields
106
+ }
107
+ });
108
+ this.modelCache.clear();
109
+ return Result.ok();
110
+ } catch (error) {
111
+ return Result.fail(new ModelPersistenceError(error));
129
112
  }
130
-
131
- // Validate model fields
132
- await validateModelFields({
133
- models,
134
- model,
135
- context: this.cmsContext
136
- });
137
- } catch (error) {
138
- return Result.fail(new ModelValidationError(error.message));
139
- }
140
-
141
- // Ensure type tags
142
- model.tags = ensureTypeTag(model);
143
-
144
- // Persist to storage
145
- await this.storageOperations.models.create({
146
- model
147
- });
148
-
149
- // Clear cache
150
- this.modelCache.clear();
151
- return Result.ok();
152
- } catch (error) {
153
- return Result.fail(new ModelPersistenceError(error));
154
113
  }
155
- }
156
114
  }
157
- export const CreateModelFromRepository = RepositoryAbstraction.createImplementation({
158
- implementation: CreateModelFromRepositoryImpl,
159
- dependencies: [ModelCache, PluginModelsProvider, ModelsFetcher, StorageOperations, TenantContext, CmsContext]
115
+ const CreateModelFromRepository_CreateModelFromRepository = CreateModelFromRepository.createImplementation({
116
+ implementation: CreateModelFromRepositoryImpl,
117
+ dependencies: [
118
+ ModelCache,
119
+ PluginModelsProvider,
120
+ ModelsFetcher,
121
+ StorageOperations,
122
+ TenantContext,
123
+ CmsContext,
124
+ ModelFieldCompression
125
+ ]
160
126
  });
127
+ export { CreateModelFromRepository_CreateModelFromRepository as CreateModelFromRepository };
161
128
 
162
129
  //# sourceMappingURL=CreateModelFromRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["camelCase","Result","CreateModelFromRepository","RepositoryAbstraction","ModelCache","PluginModelsProvider","ModelsFetcher","ModelAlreadyExistsError","ModelPersistenceError","ModelValidationError","StorageOperations","TenantContext","CmsContext","validateExistingModelId","validateModelIdAllowed","validateEndingAllowed","validateSingularApiName","validatePluralApiName","validateModelFields","ensureTypeTag","getModelId","model","modelId","name","value","trim","isModelIdValid","toLowerCase","CreateModelFromRepositoryImpl","constructor","modelCache","pluginModelsProvider","modelsFetcher","storageOperations","tenantContext","cmsContext","execute","tenant","getTenant","error","fail","message","modelsResult","fetchAll","isFail","existingModel","find","m","pluginModels","list","id","pluginModelConflict","pm","singularApiName","pluralApiName","models","context","tags","create","clear","ok","createImplementation","implementation","dependencies"],"sources":["CreateModelFromRepository.ts"],"sourcesContent":["import camelCase from \"lodash/camelCase.js\";\nimport { Result } from \"@webiny/feature/api\";\nimport { CreateModelFromRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ModelCache } from \"~/features/contentModel/shared/abstractions.js\";\nimport { PluginModelsProvider } from \"~/features/contentModel/shared/abstractions.js\";\nimport { ModelsFetcher } from \"~/features/contentModel/shared/abstractions.js\";\nimport { ModelAlreadyExistsError } from \"~/domain/contentModel/errors.js\";\nimport { ModelPersistenceError } from \"~/domain/contentModel/errors.js\";\nimport { ModelValidationError } from \"~/domain/contentModel/errors.js\";\nimport { StorageOperations } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/TenantContext\";\nimport { CmsContext } from \"~/features/shared/abstractions.js\";\nimport {\n validateExistingModelId,\n validateModelIdAllowed\n} from \"~/crud/contentModel/validate/modelId.js\";\nimport { validateEndingAllowed } from \"~/crud/contentModel/validate/endingAllowed.js\";\nimport { validateSingularApiName } from \"~/domain/contentModel/validation/singularApiName.js\";\nimport { validatePluralApiName } from \"~/domain/contentModel/validation/pluralApiName.js\";\nimport { validateModelFields } from \"~/domain/contentModel/validation/modelFields.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport { ensureTypeTag } from \"~/domain/contentModel/ensureTypeTag.js\";\n\n/**\n * Generate modelId from model following the exact logic from beforeCreate.ts\n */\nconst getModelId = (model: { modelId?: string; name?: string }): string => {\n const { modelId, name } = model;\n const value = modelId ? modelId.trim() : null;\n if (value) {\n const isModelIdValid = camelCase(value).toLowerCase() === value.toLowerCase();\n if (isModelIdValid) {\n return value;\n }\n return camelCase(value);\n } else if (name) {\n return camelCase(name.trim());\n }\n throw new ModelValidationError(\n `There is no \"modelId\" or \"name\" passed into the create model from method.`\n );\n};\n\n/**\n * CreateModelFromRepository - Validates domain rules and persists cloned model.\n *\n * Responsibilities:\n * - Generate modelId from input\n * - Validate modelId is allowed (not in disallowed list)\n * - Validate API name endings\n * - Validate modelId uniqueness (database + plugins)\n * - Validate API name uniqueness (database + plugins)\n * - Validate plugin conflicts\n * - Validate model fields\n * - Persist to storage\n * - Clear ModelCache after successful create\n */\nclass CreateModelFromRepositoryImpl implements RepositoryAbstraction.Interface {\n public constructor(\n private modelCache: ModelCache.Interface,\n private pluginModelsProvider: PluginModelsProvider.Interface,\n private modelsFetcher: ModelsFetcher.Interface,\n private storageOperations: StorageOperations.Interface,\n private tenantContext: TenantContext.Interface,\n private cmsContext: CmsContext.Interface\n ) {}\n\n async execute(model: CmsModel): Promise<Result<void, RepositoryAbstraction.Error>> {\n try {\n const tenant = this.tenantContext.getTenant();\n\n // Generate modelId using the exact logic from beforeCreate.ts\n const modelId = getModelId(model);\n model.modelId = modelId;\n\n // Validate modelId is allowed (not in disallowed list)\n try {\n validateModelIdAllowed({ model });\n } catch (error) {\n return Result.fail(new ModelValidationError((error as Error).message));\n }\n\n // Validate API name endings\n try {\n validateEndingAllowed({ model });\n } catch (error) {\n return Result.fail(new ModelValidationError((error as Error).message));\n }\n\n // Validate modelId uniqueness (database)\n const modelsResult = await this.modelsFetcher.fetchAll();\n if (modelsResult.isFail()) {\n return Result.fail(new ModelPersistenceError(modelsResult.error));\n }\n\n const existingModel = modelsResult.value.find(m => m.modelId === modelId);\n if (existingModel) {\n return Result.fail(new ModelAlreadyExistsError({ modelId }));\n }\n\n // Check for plugin model conflicts\n const pluginModels = await this.pluginModelsProvider.list(tenant.id);\n const pluginModelConflict = pluginModels.find(pm => {\n return (\n pm.modelId === model.modelId ||\n pm.singularApiName === model.singularApiName ||\n pm.pluralApiName === model.pluralApiName\n );\n });\n\n if (pluginModelConflict) {\n return Result.fail(\n new ModelAlreadyExistsError({\n modelId,\n message: `Model \"${modelId}\" is already registered via a plugin.`\n })\n );\n }\n\n const models = modelsResult.value;\n\n try {\n // Validate uniqueness\n for (const existingModel of models) {\n validateExistingModelId({\n existingModel,\n model\n });\n validateSingularApiName({\n existingModel,\n model\n });\n validatePluralApiName({\n existingModel,\n model\n });\n }\n\n // Validate model fields\n await validateModelFields({\n models,\n model,\n context: this.cmsContext\n });\n } catch (error) {\n return Result.fail(new ModelValidationError((error as Error).message));\n }\n\n // Ensure type tags\n model.tags = ensureTypeTag(model);\n\n // Persist to storage\n await this.storageOperations.models.create({ 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 CreateModelFromRepository = RepositoryAbstraction.createImplementation({\n implementation: CreateModelFromRepositoryImpl,\n dependencies: [\n ModelCache,\n PluginModelsProvider,\n ModelsFetcher,\n StorageOperations,\n TenantContext,\n CmsContext\n ]\n});\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/CreateModelFrom/CreateModelFromRepository.js","sources":["../../../../src/features/contentModel/CreateModelFrom/CreateModelFromRepository.ts"],"sourcesContent":["import camelCase from \"lodash/camelCase.js\";\nimport { Result } from \"@webiny/feature/api\";\nimport { CreateModelFromRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport {\n ModelCache,\n ModelsFetcher,\n PluginModelsProvider\n} from \"~/features/contentModel/shared/abstractions.js\";\nimport {\n ModelAlreadyExistsError,\n ModelPersistenceError,\n ModelValidationError\n} from \"~/domain/contentModel/errors.js\";\nimport { CmsContext, StorageOperations } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport {\n validateExistingModelId,\n validateModelIdAllowed\n} from \"~/crud/contentModel/validate/modelId.js\";\nimport { validateEndingAllowed } from \"~/crud/contentModel/validate/endingAllowed.js\";\nimport { validateSingularApiName } from \"~/domain/contentModel/validation/singularApiName.js\";\nimport { validatePluralApiName } from \"~/domain/contentModel/validation/pluralApiName.js\";\nimport { validateModelFields } from \"~/domain/contentModel/validation/modelFields.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport { ensureTypeTag } from \"~/domain/contentModel/ensureTypeTag.js\";\nimport { ModelFieldCompression } from \"~/features/contentModel/ModelFieldCompression/index.js\";\n\n/**\n * Generate modelId from model following the exact logic from beforeCreate.ts\n */\nconst getModelId = (model: { modelId?: string; name?: string }): string => {\n const { modelId, name } = model;\n const value = modelId ? modelId.trim() : null;\n if (value) {\n const isModelIdValid = camelCase(value).toLowerCase() === value.toLowerCase();\n if (isModelIdValid) {\n return value;\n }\n return camelCase(value);\n } else if (name) {\n return camelCase(name.trim());\n }\n throw new ModelValidationError(\n `There is no \"modelId\" or \"name\" passed into the create model from method.`\n );\n};\n\n/**\n * CreateModelFromRepository - Validates domain rules and persists cloned model.\n *\n * Responsibilities:\n * - Generate modelId from input\n * - Validate modelId is allowed (not in disallowed list)\n * - Validate API name endings\n * - Validate modelId uniqueness (database + plugins)\n * - Validate API name uniqueness (database + plugins)\n * - Validate plugin conflicts\n * - Validate model fields\n * - Persist to storage\n * - Clear ModelCache after successful create\n */\nclass CreateModelFromRepositoryImpl implements RepositoryAbstraction.Interface {\n public constructor(\n private readonly modelCache: ModelCache.Interface,\n private readonly pluginModelsProvider: PluginModelsProvider.Interface,\n private readonly modelsFetcher: ModelsFetcher.Interface,\n private readonly storageOperations: StorageOperations.Interface,\n private readonly tenantContext: TenantContext.Interface,\n private readonly cmsContext: CmsContext.Interface,\n private readonly modelFieldCompression: ModelFieldCompression.Interface\n ) {}\n\n async execute(model: CmsModel): Promise<Result<void, RepositoryAbstraction.Error>> {\n try {\n const tenant = this.tenantContext.getTenant();\n\n // Generate modelId using the exact logic from beforeCreate.ts\n const modelId = getModelId(model);\n model.modelId = modelId;\n\n // Validate modelId is allowed (not in disallowed list)\n try {\n validateModelIdAllowed({ model });\n } catch (error) {\n return Result.fail(\n new ModelValidationError({ message: error.message, data: error.data })\n );\n }\n\n // Validate API name endings\n try {\n validateEndingAllowed({ model });\n } catch (error) {\n return Result.fail(\n new ModelValidationError({ message: error.message, data: error.data })\n );\n }\n\n // Validate modelId uniqueness (database)\n const modelsResult = await this.modelsFetcher.fetchAll();\n if (modelsResult.isFail()) {\n return Result.fail(new ModelPersistenceError(modelsResult.error));\n }\n\n const existingModel = modelsResult.value.find(m => m.modelId === modelId);\n if (existingModel) {\n return Result.fail(new ModelAlreadyExistsError({ modelId }));\n }\n\n // Check for plugin model conflicts\n const pluginModels = await this.pluginModelsProvider.list(tenant.id);\n const pluginModelConflict = pluginModels.find(pm => {\n return (\n pm.modelId === model.modelId ||\n pm.singularApiName === model.singularApiName ||\n pm.pluralApiName === model.pluralApiName\n );\n });\n\n if (pluginModelConflict) {\n return Result.fail(\n new ModelAlreadyExistsError({\n modelId,\n message: `Model \"${modelId}\" is already registered via a plugin.`\n })\n );\n }\n\n const models = modelsResult.value;\n\n try {\n // Validate uniqueness\n for (const existingModel of models) {\n validateExistingModelId({\n existingModel,\n model\n });\n validateSingularApiName({\n existingModel,\n model\n });\n validatePluralApiName({\n existingModel,\n model\n });\n }\n\n // Validate model fields\n await validateModelFields({\n models,\n model,\n context: this.cmsContext\n });\n } catch (error) {\n return Result.fail(\n new ModelValidationError({ message: error.message, data: error.data })\n );\n }\n\n // Ensure type tags\n model.tags = ensureTypeTag(model);\n\n const fields = await this.modelFieldCompression.compress(model.fields);\n\n // Persist to storage\n await this.storageOperations.models.create({\n model: {\n ...model,\n fields\n }\n });\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 CreateModelFromRepository = RepositoryAbstraction.createImplementation({\n implementation: CreateModelFromRepositoryImpl,\n dependencies: [\n ModelCache,\n PluginModelsProvider,\n ModelsFetcher,\n StorageOperations,\n TenantContext,\n CmsContext,\n ModelFieldCompression\n ]\n});\n"],"names":["getModelId","model","modelId","name","value","isModelIdValid","camelCase","ModelValidationError","CreateModelFromRepositoryImpl","modelCache","pluginModelsProvider","modelsFetcher","storageOperations","tenantContext","cmsContext","modelFieldCompression","tenant","validateModelIdAllowed","error","Result","validateEndingAllowed","modelsResult","ModelPersistenceError","existingModel","m","ModelAlreadyExistsError","pluginModels","pluginModelConflict","pm","models","validateExistingModelId","validateSingularApiName","validatePluralApiName","validateModelFields","ensureTypeTag","fields","CreateModelFromRepository","RepositoryAbstraction","ModelCache","PluginModelsProvider","ModelsFetcher","StorageOperations","TenantContext","CmsContext","ModelFieldCompression"],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { CreateModelFromUseCase as UseCaseAbstraction } from "./abstractions.js";
3
3
  import { CreateModelFromRepository } from "./abstractions.js";
4
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
4
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
5
5
  import { AccessControl } from "../../../features/shared/abstractions.js";
6
- import { TenantContext } from "@webiny/api-core/features/TenantContext";
7
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
6
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
7
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
8
8
  import type { CmsModel } from "../../../types/index.js";
9
9
  import type { CmsModelCreateFromInput } from "../../../types/index.js";
10
10
  import { GetModelUseCase } from "../../../features/contentModel/GetModel/index.js";
@@ -1,133 +1,99 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { CreateModelFromUseCase as UseCaseAbstraction } from "./abstractions.js";
3
- import { CreateModelFromRepository } from "./abstractions.js";
4
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
5
- import { ModelBeforeCreateFromEvent } from "./events.js";
6
- import { ModelAfterCreateFromEvent } from "./events.js";
7
- import { ModelCreateFromErrorEvent } from "./events.js";
2
+ import { CreateModelFromRepository, CreateModelFromUseCase } from "./abstractions.js";
3
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
4
+ import { ModelAfterCreateFromEvent, ModelBeforeCreateFromEvent, ModelCreateFromErrorEvent } from "./events.js";
8
5
  import { AccessControl } from "../../shared/abstractions.js";
9
- import { TenantContext } from "@webiny/api-core/features/TenantContext";
10
- import { IdentityContext } from "@webiny/api-core/features/IdentityContext";
6
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
7
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
11
8
  import { ModelNotAuthorizedError, ModelValidationError } from "../../../domain/contentModel/errors.js";
12
- import { createZodError } from "@webiny/utils";
13
- import { removeUndefinedValues } from "@webiny/utils";
9
+ import { createZodError, removeUndefinedValues } from "@webiny/utils";
14
10
  import { createModelCreateFromValidation } from "../../../domain/contentModel/schemas.js";
15
11
  import { GetModelUseCase } from "../GetModel/index.js";
16
-
17
- /**
18
- * CreateModelFromUseCase - Clone/copy a model from existing model.
19
- *
20
- * Responsibilities:
21
- * - Validate input (Zod)
22
- * - Fetch original model
23
- * - Create new model preserving fields and layout
24
- * - Handle group changes
25
- * - Access control checks
26
- * - Publish before event
27
- * - Delegate to repository for validation and persistence
28
- * - Publish after event or error event
29
- *
30
- * Note: Repository handles domain validations (modelId generation, uniqueness, etc.)
31
- */
32
12
  class CreateModelFromUseCaseImpl {
33
- constructor(getModelUseCase, eventPublisher, repository, accessControl, tenantContext, identityContext) {
34
- this.getModelUseCase = getModelUseCase;
35
- this.eventPublisher = eventPublisher;
36
- this.repository = repository;
37
- this.accessControl = accessControl;
38
- this.tenantContext = tenantContext;
39
- this.identityContext = identityContext;
40
- }
41
- async execute(modelId, input) {
42
- // Initial access control check
43
- const canAccess = await this.accessControl.canAccessModel({
44
- rwd: "w"
45
- });
46
- if (!canAccess) {
47
- return Result.fail(new ModelNotAuthorizedError());
48
- }
49
-
50
- // Get the original model (with access control check)
51
- const getResult = await this.getModelUseCase.execute(modelId);
52
- if (getResult.isFail()) {
53
- return getResult;
13
+ constructor(getModelUseCase, eventPublisher, repository, accessControl, tenantContext, identityContext){
14
+ this.getModelUseCase = getModelUseCase;
15
+ this.eventPublisher = eventPublisher;
16
+ this.repository = repository;
17
+ this.accessControl = accessControl;
18
+ this.tenantContext = tenantContext;
19
+ this.identityContext = identityContext;
54
20
  }
55
- const original = getResult.value;
56
-
57
- // Validate input (merge with original description if not provided)
58
- const validationResult = await createModelCreateFromValidation().safeParseAsync({
59
- ...input,
60
- description: input.description || original.description
61
- });
62
- if (!validationResult.success) {
63
- const zodError = createZodError(validationResult.error);
64
- return Result.fail(new ModelValidationError(zodError.message));
21
+ async execute(modelId, input) {
22
+ const canAccess = await this.accessControl.canAccessModel({
23
+ rwd: "w"
24
+ });
25
+ if (!canAccess) return Result.fail(new ModelNotAuthorizedError());
26
+ const getResult = await this.getModelUseCase.execute(modelId);
27
+ if (getResult.isFail()) return getResult;
28
+ const original = getResult.value;
29
+ const validationResult = await createModelCreateFromValidation().safeParseAsync({
30
+ ...input,
31
+ description: input.description || original.description
32
+ });
33
+ if (!validationResult.success) {
34
+ const zodError = createZodError(validationResult.error);
35
+ return Result.fail(new ModelValidationError(zodError.message));
36
+ }
37
+ const data = removeUndefinedValues(validationResult.data);
38
+ const identity = this.identityContext.getIdentity();
39
+ const tenant = this.tenantContext.getTenant();
40
+ const model = {
41
+ ...original,
42
+ isPlugin: void 0,
43
+ group: input.group || original.group,
44
+ singularApiName: data.singularApiName,
45
+ pluralApiName: data.pluralApiName,
46
+ icon: data.icon,
47
+ name: data.name,
48
+ modelId: data.modelId || "",
49
+ description: data.description || "",
50
+ createdBy: {
51
+ id: identity.id,
52
+ displayName: identity.displayName,
53
+ type: identity.type
54
+ },
55
+ createdOn: new Date().toISOString(),
56
+ savedOn: new Date().toISOString(),
57
+ tenant: original.tenant || tenant.id
58
+ };
59
+ const canAccessModel = await this.accessControl.canAccessModel({
60
+ model,
61
+ rwd: "w"
62
+ });
63
+ if (!canAccessModel) return Result.fail(ModelNotAuthorizedError.fromModel(model));
64
+ await this.eventPublisher.publish(new ModelBeforeCreateFromEvent({
65
+ model,
66
+ original,
67
+ input: data
68
+ }));
69
+ const result = await this.repository.execute(model);
70
+ if (result.isFail()) {
71
+ await this.eventPublisher.publish(new ModelCreateFromErrorEvent({
72
+ input: data,
73
+ model,
74
+ original,
75
+ error: result.error
76
+ }));
77
+ return Result.fail(result.error);
78
+ }
79
+ await this.eventPublisher.publish(new ModelAfterCreateFromEvent({
80
+ model,
81
+ original
82
+ }));
83
+ return Result.ok(model);
65
84
  }
66
- const data = removeUndefinedValues(validationResult.data);
67
-
68
- // Create new model from original (preserve fields and layout)
69
- const identity = this.identityContext.getIdentity();
70
- const tenant = this.tenantContext.getTenant();
71
- const model = {
72
- ...original,
73
- group: input.group || original.group,
74
- singularApiName: data.singularApiName,
75
- pluralApiName: data.pluralApiName,
76
- icon: data.icon,
77
- name: data.name,
78
- modelId: data.modelId || "",
79
- // Will be set by repository
80
- description: data.description || "",
81
- createdBy: {
82
- id: identity.id,
83
- displayName: identity.displayName,
84
- type: identity.type
85
- },
86
- createdOn: new Date().toISOString(),
87
- savedOn: new Date().toISOString(),
88
- tenant: original.tenant || tenant.id
89
- };
90
-
91
- // Access control check on the new model
92
- const canAccessModel = await this.accessControl.canAccessModel({
93
- model,
94
- rwd: "w"
95
- });
96
- if (!canAccessModel) {
97
- return Result.fail(ModelNotAuthorizedError.fromModel(model));
98
- }
99
-
100
- // Publish before event
101
- await this.eventPublisher.publish(new ModelBeforeCreateFromEvent({
102
- model,
103
- original,
104
- input: data
105
- }));
106
-
107
- // Persist via repository (repository will validate and set modelId)
108
- const result = await this.repository.execute(model);
109
- if (result.isFail()) {
110
- // Publish error event
111
- await this.eventPublisher.publish(new ModelCreateFromErrorEvent({
112
- input: data,
113
- model,
114
- original,
115
- error: result.error
116
- }));
117
- return Result.fail(result.error);
118
- }
119
-
120
- // Publish after event
121
- await this.eventPublisher.publish(new ModelAfterCreateFromEvent({
122
- model,
123
- original
124
- }));
125
- return Result.ok(model);
126
- }
127
85
  }
128
- export const CreateModelFromUseCase = UseCaseAbstraction.createImplementation({
129
- implementation: CreateModelFromUseCaseImpl,
130
- dependencies: [GetModelUseCase, EventPublisher, CreateModelFromRepository, AccessControl, TenantContext, IdentityContext]
86
+ const CreateModelFromUseCase_CreateModelFromUseCase = CreateModelFromUseCase.createImplementation({
87
+ implementation: CreateModelFromUseCaseImpl,
88
+ dependencies: [
89
+ GetModelUseCase,
90
+ EventPublisher,
91
+ CreateModelFromRepository,
92
+ AccessControl,
93
+ TenantContext,
94
+ IdentityContext
95
+ ]
131
96
  });
97
+ export { CreateModelFromUseCase_CreateModelFromUseCase as CreateModelFromUseCase };
132
98
 
133
99
  //# sourceMappingURL=CreateModelFromUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","CreateModelFromUseCase","UseCaseAbstraction","CreateModelFromRepository","EventPublisher","ModelBeforeCreateFromEvent","ModelAfterCreateFromEvent","ModelCreateFromErrorEvent","AccessControl","TenantContext","IdentityContext","ModelNotAuthorizedError","ModelValidationError","createZodError","removeUndefinedValues","createModelCreateFromValidation","GetModelUseCase","CreateModelFromUseCaseImpl","constructor","getModelUseCase","eventPublisher","repository","accessControl","tenantContext","identityContext","execute","modelId","input","canAccess","canAccessModel","rwd","fail","getResult","isFail","original","value","validationResult","safeParseAsync","description","success","zodError","error","message","data","identity","getIdentity","tenant","getTenant","model","group","singularApiName","pluralApiName","icon","name","createdBy","id","displayName","type","createdOn","Date","toISOString","savedOn","fromModel","publish","result","ok","createImplementation","implementation","dependencies"],"sources":["CreateModelFromUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { CreateModelFromUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { CreateModelFromRepository } from \"./abstractions.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/EventPublisher\";\nimport { ModelBeforeCreateFromEvent } from \"./events.js\";\nimport { ModelAfterCreateFromEvent } from \"./events.js\";\nimport { ModelCreateFromErrorEvent } from \"./events.js\";\nimport { AccessControl } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/TenantContext\";\nimport { IdentityContext } from \"@webiny/api-core/features/IdentityContext\";\nimport { ModelNotAuthorizedError, ModelValidationError } from \"~/domain/contentModel/errors.js\";\nimport { createZodError } from \"@webiny/utils\";\nimport { removeUndefinedValues } from \"@webiny/utils\";\nimport { createModelCreateFromValidation } from \"~/domain/contentModel/schemas.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport type { CmsModelCreateFromInput } from \"~/types/index.js\";\nimport { GetModelUseCase } from \"~/features/contentModel/GetModel/index.js\";\n\n/**\n * CreateModelFromUseCase - Clone/copy a model from existing model.\n *\n * Responsibilities:\n * - Validate input (Zod)\n * - Fetch original model\n * - Create new model preserving fields and layout\n * - Handle group changes\n * - Access control checks\n * - Publish before event\n * - Delegate to repository for validation and persistence\n * - Publish after event or error event\n *\n * Note: Repository handles domain validations (modelId generation, uniqueness, etc.)\n */\nclass CreateModelFromUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(\n private getModelUseCase: GetModelUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: CreateModelFromRepository.Interface,\n private accessControl: AccessControl.Interface,\n private tenantContext: TenantContext.Interface,\n private identityContext: IdentityContext.Interface\n ) {}\n\n async execute(\n modelId: string,\n input: CmsModelCreateFromInput\n ): Promise<Result<CmsModel, UseCaseAbstraction.Error>> {\n // Initial access control check\n const canAccess = await this.accessControl.canAccessModel({ rwd: \"w\" });\n if (!canAccess) {\n return Result.fail(new ModelNotAuthorizedError());\n }\n\n // Get the original model (with access control check)\n const getResult = await this.getModelUseCase.execute(modelId);\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n // Validate input (merge with original description if not provided)\n const validationResult = await createModelCreateFromValidation().safeParseAsync({\n ...input,\n description: input.description || original.description\n });\n\n if (!validationResult.success) {\n const zodError = createZodError(validationResult.error);\n return Result.fail(new ModelValidationError(zodError.message));\n }\n\n const data = removeUndefinedValues(validationResult.data);\n\n // Create new model from original (preserve fields and layout)\n const identity = this.identityContext.getIdentity();\n const tenant = this.tenantContext.getTenant();\n\n const model: CmsModel = {\n ...original,\n group: input.group || original.group,\n singularApiName: data.singularApiName,\n pluralApiName: data.pluralApiName,\n icon: data.icon,\n name: data.name,\n modelId: data.modelId || \"\", // Will be set by repository\n description: data.description || \"\",\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n },\n createdOn: new Date().toISOString(),\n savedOn: new Date().toISOString(),\n tenant: original.tenant || tenant.id\n };\n\n // Access control check on the new model\n const canAccessModel = await this.accessControl.canAccessModel({ model, rwd: \"w\" });\n if (!canAccessModel) {\n return Result.fail(ModelNotAuthorizedError.fromModel(model));\n }\n\n // Publish before event\n await this.eventPublisher.publish(\n new ModelBeforeCreateFromEvent({ model, original, input: data })\n );\n\n // Persist via repository (repository will validate and set modelId)\n const result = await this.repository.execute(model);\n if (result.isFail()) {\n // Publish error event\n await this.eventPublisher.publish(\n new ModelCreateFromErrorEvent({\n input: data,\n model,\n original,\n error: result.error\n })\n );\n return Result.fail(result.error);\n }\n\n // Publish after event\n await this.eventPublisher.publish(new ModelAfterCreateFromEvent({ model, original }));\n\n return Result.ok(model);\n }\n}\n\nexport const CreateModelFromUseCase = UseCaseAbstraction.createImplementation({\n implementation: CreateModelFromUseCaseImpl,\n dependencies: [\n GetModelUseCase,\n EventPublisher,\n CreateModelFromRepository,\n AccessControl,\n TenantContext,\n IdentityContext\n ]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,sBAAsB,IAAIC,kBAAkB;AACrD,SAASC,yBAAyB;AAClC,SAASC,cAAc,QAAQ,0CAA0C;AACzE,SAASC,0BAA0B;AACnC,SAASC,yBAAyB;AAClC,SAASC,yBAAyB;AAClC,SAASC,aAAa;AACtB,SAASC,aAAa,QAAQ,yCAAyC;AACvE,SAASC,eAAe,QAAQ,2CAA2C;AAC3E,SAASC,uBAAuB,EAAEC,oBAAoB;AACtD,SAASC,cAAc,QAAQ,eAAe;AAC9C,SAASC,qBAAqB,QAAQ,eAAe;AACrD,SAASC,+BAA+B;AAGxC,SAASC,eAAe;;AAExB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,0BAA0B,CAAyC;EAC9DC,WAAWA,CACNC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA+C,EAC/CC,aAAsC,EACtCC,aAAsC,EACtCC,eAA0C,EACpD;IAAA,KANUL,eAA0C,GAA1CA,eAA0C;IAAA,KAC1CC,cAAwC,GAAxCA,cAAwC;IAAA,KACxCC,UAA+C,GAA/CA,UAA+C;IAAA,KAC/CC,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,eAA0C,GAA1CA,eAA0C;EACnD;EAEH,MAAMC,OAAOA,CACTC,OAAe,EACfC,KAA8B,EACqB;IACnD;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACN,aAAa,CAACO,cAAc,CAAC;MAAEC,GAAG,EAAE;IAAI,CAAC,CAAC;IACvE,IAAI,CAACF,SAAS,EAAE;MACZ,OAAO5B,MAAM,CAAC+B,IAAI,CAAC,IAAIpB,uBAAuB,CAAC,CAAC,CAAC;IACrD;;IAEA;IACA,MAAMqB,SAAS,GAAG,MAAM,IAAI,CAACb,eAAe,CAACM,OAAO,CAACC,OAAO,CAAC;IAC7D,IAAIM,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOD,SAAS;IACpB;IAEA,MAAME,QAAQ,GAAGF,SAAS,CAACG,KAAK;;IAEhC;IACA,MAAMC,gBAAgB,GAAG,MAAMrB,+BAA+B,CAAC,CAAC,CAACsB,cAAc,CAAC;MAC5E,GAAGV,KAAK;MACRW,WAAW,EAAEX,KAAK,CAACW,WAAW,IAAIJ,QAAQ,CAACI;IAC/C,CAAC,CAAC;IAEF,IAAI,CAACF,gBAAgB,CAACG,OAAO,EAAE;MAC3B,MAAMC,QAAQ,GAAG3B,cAAc,CAACuB,gBAAgB,CAACK,KAAK,CAAC;MACvD,OAAOzC,MAAM,CAAC+B,IAAI,CAAC,IAAInB,oBAAoB,CAAC4B,QAAQ,CAACE,OAAO,CAAC,CAAC;IAClE;IAEA,MAAMC,IAAI,GAAG7B,qBAAqB,CAACsB,gBAAgB,CAACO,IAAI,CAAC;;IAEzD;IACA,MAAMC,QAAQ,GAAG,IAAI,CAACpB,eAAe,CAACqB,WAAW,CAAC,CAAC;IACnD,MAAMC,MAAM,GAAG,IAAI,CAACvB,aAAa,CAACwB,SAAS,CAAC,CAAC;IAE7C,MAAMC,KAAe,GAAG;MACpB,GAAGd,QAAQ;MACXe,KAAK,EAAEtB,KAAK,CAACsB,KAAK,IAAIf,QAAQ,CAACe,KAAK;MACpCC,eAAe,EAAEP,IAAI,CAACO,eAAe;MACrCC,aAAa,EAAER,IAAI,CAACQ,aAAa;MACjCC,IAAI,EAAET,IAAI,CAACS,IAAI;MACfC,IAAI,EAAEV,IAAI,CAACU,IAAI;MACf3B,OAAO,EAAEiB,IAAI,CAACjB,OAAO,IAAI,EAAE;MAAE;MAC7BY,WAAW,EAAEK,IAAI,CAACL,WAAW,IAAI,EAAE;MACnCgB,SAAS,EAAE;QACPC,EAAE,EAAEX,QAAQ,CAACW,EAAE;QACfC,WAAW,EAAEZ,QAAQ,CAACY,WAAW;QACjCC,IAAI,EAAEb,QAAQ,CAACa;MACnB,CAAC;MACDC,SAAS,EAAE,IAAIC,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MACnCC,OAAO,EAAE,IAAIF,IAAI,CAAC,CAAC,CAACC,WAAW,CAAC,CAAC;MACjCd,MAAM,EAAEZ,QAAQ,CAACY,MAAM,IAAIA,MAAM,CAACS;IACtC,CAAC;;IAED;IACA,MAAM1B,cAAc,GAAG,MAAM,IAAI,CAACP,aAAa,CAACO,cAAc,CAAC;MAAEmB,KAAK;MAAElB,GAAG,EAAE;IAAI,CAAC,CAAC;IACnF,IAAI,CAACD,cAAc,EAAE;MACjB,OAAO7B,MAAM,CAAC+B,IAAI,CAACpB,uBAAuB,CAACmD,SAAS,CAACd,KAAK,CAAC,CAAC;IAChE;;IAEA;IACA,MAAM,IAAI,CAAC5B,cAAc,CAAC2C,OAAO,CAC7B,IAAI1D,0BAA0B,CAAC;MAAE2C,KAAK;MAAEd,QAAQ;MAAEP,KAAK,EAAEgB;IAAK,CAAC,CACnE,CAAC;;IAED;IACA,MAAMqB,MAAM,GAAG,MAAM,IAAI,CAAC3C,UAAU,CAACI,OAAO,CAACuB,KAAK,CAAC;IACnD,IAAIgB,MAAM,CAAC/B,MAAM,CAAC,CAAC,EAAE;MACjB;MACA,MAAM,IAAI,CAACb,cAAc,CAAC2C,OAAO,CAC7B,IAAIxD,yBAAyB,CAAC;QAC1BoB,KAAK,EAAEgB,IAAI;QACXK,KAAK;QACLd,QAAQ;QACRO,KAAK,EAAEuB,MAAM,CAACvB;MAClB,CAAC,CACL,CAAC;MACD,OAAOzC,MAAM,CAAC+B,IAAI,CAACiC,MAAM,CAACvB,KAAK,CAAC;IACpC;;IAEA;IACA,MAAM,IAAI,CAACrB,cAAc,CAAC2C,OAAO,CAAC,IAAIzD,yBAAyB,CAAC;MAAE0C,KAAK;MAAEd;IAAS,CAAC,CAAC,CAAC;IAErF,OAAOlC,MAAM,CAACiE,EAAE,CAACjB,KAAK,CAAC;EAC3B;AACJ;AAEA,OAAO,MAAM/C,sBAAsB,GAAGC,kBAAkB,CAACgE,oBAAoB,CAAC;EAC1EC,cAAc,EAAElD,0BAA0B;EAC1CmD,YAAY,EAAE,CACVpD,eAAe,EACfZ,cAAc,EACdD,yBAAyB,EACzBK,aAAa,EACbC,aAAa,EACbC,eAAe;AAEvB,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/contentModel/CreateModelFrom/CreateModelFromUseCase.js","sources":["../../../../src/features/contentModel/CreateModelFrom/CreateModelFromUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { CreateModelFromUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport { CreateModelFromRepository } from \"./abstractions.js\";\nimport { EventPublisher } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { ModelBeforeCreateFromEvent } from \"./events.js\";\nimport { ModelAfterCreateFromEvent } from \"./events.js\";\nimport { ModelCreateFromErrorEvent } from \"./events.js\";\nimport { AccessControl } from \"~/features/shared/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { ModelNotAuthorizedError, ModelValidationError } from \"~/domain/contentModel/errors.js\";\nimport { createZodError } from \"@webiny/utils\";\nimport { removeUndefinedValues } from \"@webiny/utils\";\nimport { createModelCreateFromValidation } from \"~/domain/contentModel/schemas.js\";\nimport type { CmsModel } from \"~/types/index.js\";\nimport type { CmsModelCreateFromInput } from \"~/types/index.js\";\nimport { GetModelUseCase } from \"~/features/contentModel/GetModel/index.js\";\n\n/**\n * CreateModelFromUseCase - Clone/copy a model from existing model.\n *\n * Responsibilities:\n * - Validate input (Zod)\n * - Fetch original model\n * - Create new model preserving fields and layout\n * - Handle group changes\n * - Access control checks\n * - Publish before event\n * - Delegate to repository for validation and persistence\n * - Publish after event or error event\n *\n * Note: Repository handles domain validations (modelId generation, uniqueness, etc.)\n */\nclass CreateModelFromUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(\n private getModelUseCase: GetModelUseCase.Interface,\n private eventPublisher: EventPublisher.Interface,\n private repository: CreateModelFromRepository.Interface,\n private accessControl: AccessControl.Interface,\n private tenantContext: TenantContext.Interface,\n private identityContext: IdentityContext.Interface\n ) {}\n\n async execute(\n modelId: string,\n input: CmsModelCreateFromInput\n ): Promise<Result<CmsModel, UseCaseAbstraction.Error>> {\n // Initial access control check\n const canAccess = await this.accessControl.canAccessModel({ rwd: \"w\" });\n if (!canAccess) {\n return Result.fail(new ModelNotAuthorizedError());\n }\n\n // Get the original model (with access control check)\n const getResult = await this.getModelUseCase.execute(modelId);\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n // Validate input (merge with original description if not provided)\n const validationResult = await createModelCreateFromValidation().safeParseAsync({\n ...input,\n description: input.description || original.description\n });\n\n if (!validationResult.success) {\n const zodError = createZodError(validationResult.error);\n return Result.fail(new ModelValidationError(zodError.message));\n }\n\n const data = removeUndefinedValues(validationResult.data);\n\n // Create new model from original (preserve fields and layout)\n const identity = this.identityContext.getIdentity();\n const tenant = this.tenantContext.getTenant();\n\n const model: CmsModel = {\n ...original,\n isPlugin: undefined,\n group: input.group || original.group,\n singularApiName: data.singularApiName,\n pluralApiName: data.pluralApiName,\n icon: data.icon,\n name: data.name,\n modelId: data.modelId || \"\", // Will be set by repository\n description: data.description || \"\",\n createdBy: {\n id: identity.id,\n displayName: identity.displayName,\n type: identity.type\n },\n createdOn: new Date().toISOString(),\n savedOn: new Date().toISOString(),\n tenant: original.tenant || tenant.id\n };\n\n // Access control check on the new model\n const canAccessModel = await this.accessControl.canAccessModel({ model, rwd: \"w\" });\n if (!canAccessModel) {\n return Result.fail(ModelNotAuthorizedError.fromModel(model));\n }\n\n // Publish before event\n await this.eventPublisher.publish(\n new ModelBeforeCreateFromEvent({ model, original, input: data })\n );\n\n // Persist via repository (repository will validate and set modelId)\n const result = await this.repository.execute(model);\n if (result.isFail()) {\n // Publish error event\n await this.eventPublisher.publish(\n new ModelCreateFromErrorEvent({\n input: data,\n model,\n original,\n error: result.error\n })\n );\n return Result.fail(result.error);\n }\n\n // Publish after event\n await this.eventPublisher.publish(new ModelAfterCreateFromEvent({ model, original }));\n\n return Result.ok(model);\n }\n}\n\nexport const CreateModelFromUseCase = UseCaseAbstraction.createImplementation({\n implementation: CreateModelFromUseCaseImpl,\n dependencies: [\n GetModelUseCase,\n EventPublisher,\n CreateModelFromRepository,\n AccessControl,\n TenantContext,\n IdentityContext\n ]\n});\n"],"names":["CreateModelFromUseCaseImpl","getModelUseCase","eventPublisher","repository","accessControl","tenantContext","identityContext","modelId","input","canAccess","Result","ModelNotAuthorizedError","getResult","original","validationResult","createModelCreateFromValidation","zodError","createZodError","ModelValidationError","data","removeUndefinedValues","identity","tenant","model","undefined","Date","canAccessModel","ModelBeforeCreateFromEvent","result","ModelCreateFromErrorEvent","ModelAfterCreateFromEvent","CreateModelFromUseCase","UseCaseAbstraction","GetModelUseCase","EventPublisher","CreateModelFromRepository","AccessControl","TenantContext","IdentityContext"],"mappings":";;;;;;;;;;;AAiCA,MAAMA;IACF,YACYC,eAA0C,EAC1CC,cAAwC,EACxCC,UAA+C,EAC/CC,aAAsC,EACtCC,aAAsC,EACtCC,eAA0C,CACpD;aANUL,eAAe,GAAfA;aACAC,cAAc,GAAdA;aACAC,UAAU,GAAVA;aACAC,aAAa,GAAbA;aACAC,aAAa,GAAbA;aACAC,eAAe,GAAfA;IACT;IAEH,MAAM,QACFC,OAAe,EACfC,KAA8B,EACqB;QAEnD,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,CAACL;QACrD,IAAIK,UAAU,MAAM,IAChB,OAAOA;QAGX,MAAMC,WAAWD,UAAU,KAAK;QAGhC,MAAME,mBAAmB,MAAMC,kCAAkC,cAAc,CAAC;YAC5E,GAAGP,KAAK;YACR,aAAaA,MAAM,WAAW,IAAIK,SAAS,WAAW;QAC1D;QAEA,IAAI,CAACC,iBAAiB,OAAO,EAAE;YAC3B,MAAME,WAAWC,eAAeH,iBAAiB,KAAK;YACtD,OAAOJ,OAAO,IAAI,CAAC,IAAIQ,qBAAqBF,SAAS,OAAO;QAChE;QAEA,MAAMG,OAAOC,sBAAsBN,iBAAiB,IAAI;QAGxD,MAAMO,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;QACjD,MAAMC,SAAS,IAAI,CAAC,aAAa,CAAC,SAAS;QAE3C,MAAMC,QAAkB;YACpB,GAAGV,QAAQ;YACX,UAAUW;YACV,OAAOhB,MAAM,KAAK,IAAIK,SAAS,KAAK;YACpC,iBAAiBM,KAAK,eAAe;YACrC,eAAeA,KAAK,aAAa;YACjC,MAAMA,KAAK,IAAI;YACf,MAAMA,KAAK,IAAI;YACf,SAASA,KAAK,OAAO,IAAI;YACzB,aAAaA,KAAK,WAAW,IAAI;YACjC,WAAW;gBACP,IAAIE,SAAS,EAAE;gBACf,aAAaA,SAAS,WAAW;gBACjC,MAAMA,SAAS,IAAI;YACvB;YACA,WAAW,IAAII,OAAO,WAAW;YACjC,SAAS,IAAIA,OAAO,WAAW;YAC/B,QAAQZ,SAAS,MAAM,IAAIS,OAAO,EAAE;QACxC;QAGA,MAAMI,iBAAiB,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC;YAAEH;YAAO,KAAK;QAAI;QACjF,IAAI,CAACG,gBACD,OAAOhB,OAAO,IAAI,CAACC,wBAAwB,SAAS,CAACY;QAIzD,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAII,2BAA2B;YAAEJ;YAAOV;YAAU,OAAOM;QAAK;QAIlE,MAAMS,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACL;QAC7C,IAAIK,OAAO,MAAM,IAAI;YAEjB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAC7B,IAAIC,0BAA0B;gBAC1B,OAAOV;gBACPI;gBACAV;gBACA,OAAOe,OAAO,KAAK;YACvB;YAEJ,OAAOlB,OAAO,IAAI,CAACkB,OAAO,KAAK;QACnC;QAGA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAIE,0BAA0B;YAAEP;YAAOV;QAAS;QAElF,OAAOH,OAAO,EAAE,CAACa;IACrB;AACJ;AAEO,MAAMQ,gDAAyBC,uBAAAA,oBAAuC,CAAC;IAC1E,gBAAgBhC;IAChB,cAAc;QACViC;QACAC;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
@@ -18,6 +18,7 @@ export interface ICreateModelFromUseCaseErrors {
18
18
  groupNotAccessible: GroupNotAuthorizedError;
19
19
  }
20
20
  type UseCaseError = ICreateModelFromUseCaseErrors[keyof ICreateModelFromUseCaseErrors];
21
+ /** Create a content model by cloning an existing one. */
21
22
  export declare const CreateModelFromUseCase: import("@webiny/di").Abstraction<ICreateModelFromUseCase>;
22
23
  export declare namespace CreateModelFromUseCase {
23
24
  type Interface = ICreateModelFromUseCase;