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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1241) hide show
  1. package/abstractions/entryHooks/OnEntryBeforeCreate.js +2 -1
  2. package/abstractions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
  3. package/abstractions/entryHooks/index.js +0 -2
  4. package/abstractions/index.js +0 -2
  5. package/constants.js +56 -56
  6. package/constants.js.map +1 -1
  7. package/context.js +97 -127
  8. package/context.js.map +1 -1
  9. package/crud/AccessControl/AccessControl.js +315 -470
  10. package/crud/AccessControl/AccessControl.js.map +1 -1
  11. package/crud/contentEntry/entryDataValidation.js +191 -309
  12. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  13. package/crud/contentEntry/referenceFieldsMapping.js +29 -59
  14. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  15. package/crud/contentEntry/references/buildPaths.js +105 -130
  16. package/crud/contentEntry/references/buildPaths.js.map +1 -1
  17. package/crud/contentEntry/references/validateEntries.js +36 -74
  18. package/crud/contentEntry/references/validateEntries.js.map +1 -1
  19. package/crud/contentEntry/searchableFields.js +42 -57
  20. package/crud/contentEntry/searchableFields.js.map +1 -1
  21. package/crud/contentEntry.crud.js +287 -348
  22. package/crud/contentEntry.crud.js.map +1 -1
  23. package/crud/contentModel/compatibility/modelApiName.js +7 -10
  24. package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
  25. package/crud/contentModel/createFieldStorageId.js +6 -8
  26. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  27. package/crud/contentModel/defaultFields.js +56 -49
  28. package/crud/contentModel/defaultFields.js.map +1 -1
  29. package/crud/contentModel/fields/descriptionField.js +8 -18
  30. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  31. package/crud/contentModel/fields/getApplicableFieldById.js +4 -5
  32. package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -1
  33. package/crud/contentModel/fields/imageField.js +8 -13
  34. package/crud/contentModel/fields/imageField.js.map +1 -1
  35. package/crud/contentModel/fields/titleField.js +8 -18
  36. package/crud/contentModel/fields/titleField.js.map +1 -1
  37. package/crud/contentModel/validate/endingAllowed.js +10 -14
  38. package/crud/contentModel/validate/endingAllowed.js.map +1 -1
  39. package/crud/contentModel/validate/isModelEndingAllowed.js +15 -14
  40. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  41. package/crud/contentModel/validate/modelId.js +19 -24
  42. package/crud/contentModel/validate/modelId.js.map +1 -1
  43. package/crud/contentModel/validate/pluralApiName.js +8 -13
  44. package/crud/contentModel/validate/pluralApiName.js.map +1 -1
  45. package/crud/contentModel/validate/singularApiName.js +8 -13
  46. package/crud/contentModel/validate/singularApiName.js.map +1 -1
  47. package/crud/contentModel/validateStorageId.js +10 -8
  48. package/crud/contentModel/validateStorageId.js.map +1 -1
  49. package/crud/contentModel/validation.js +190 -209
  50. package/crud/contentModel/validation.js.map +1 -1
  51. package/crud/contentModel.crud.js +65 -109
  52. package/crud/contentModel.crud.js.map +1 -1
  53. package/crud/contentModelGroup.crud.js +65 -90
  54. package/crud/contentModelGroup.crud.js.map +1 -1
  55. package/domain/contentEntry/EntryId.js +37 -45
  56. package/domain/contentEntry/EntryId.js.map +1 -1
  57. package/domain/contentEntry/errors.js +38 -42
  58. package/domain/contentEntry/errors.js.map +1 -1
  59. package/domain/contentModel/createFieldStorageId.js +6 -8
  60. package/domain/contentModel/createFieldStorageId.js.map +1 -1
  61. package/domain/contentModel/ensureTypeTag.js +5 -11
  62. package/domain/contentModel/ensureTypeTag.js.map +1 -1
  63. package/domain/contentModel/errors.js +82 -91
  64. package/domain/contentModel/errors.js.map +1 -1
  65. package/domain/contentModel/schemas.js +130 -161
  66. package/domain/contentModel/schemas.js.map +1 -1
  67. package/domain/contentModel/validation/endingAllowed.js +10 -14
  68. package/domain/contentModel/validation/endingAllowed.js.map +1 -1
  69. package/domain/contentModel/validation/fields/descriptionField.js +8 -18
  70. package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
  71. package/domain/contentModel/validation/fields/getApplicableFieldById.js +4 -5
  72. package/domain/contentModel/validation/fields/getApplicableFieldById.js.map +1 -1
  73. package/domain/contentModel/validation/fields/imageField.js +8 -13
  74. package/domain/contentModel/validation/fields/imageField.js.map +1 -1
  75. package/domain/contentModel/validation/fields/titleField.js +8 -18
  76. package/domain/contentModel/validation/fields/titleField.js.map +1 -1
  77. package/domain/contentModel/validation/isModelEndingAllowed.js +15 -14
  78. package/domain/contentModel/validation/isModelEndingAllowed.js.map +1 -1
  79. package/domain/contentModel/validation/modelFields.js +140 -242
  80. package/domain/contentModel/validation/modelFields.js.map +1 -1
  81. package/domain/contentModel/validation/modelId.js +19 -24
  82. package/domain/contentModel/validation/modelId.js.map +1 -1
  83. package/domain/contentModel/validation/pluralApiName.js +8 -13
  84. package/domain/contentModel/validation/pluralApiName.js.map +1 -1
  85. package/domain/contentModel/validation/singularApiName.js +8 -13
  86. package/domain/contentModel/validation/singularApiName.js.map +1 -1
  87. package/domain/contentModelGroup/errors.js +60 -67
  88. package/domain/contentModelGroup/errors.js.map +1 -1
  89. package/domain/contentModelGroup/validation.js +22 -31
  90. package/domain/contentModelGroup/validation.js.map +1 -1
  91. package/export/crud/exporting.js +18 -38
  92. package/export/crud/exporting.js.map +1 -1
  93. package/export/crud/importing.js +48 -67
  94. package/export/crud/importing.js.map +1 -1
  95. package/export/crud/imports/importData.js +28 -39
  96. package/export/crud/imports/importData.js.map +1 -1
  97. package/export/crud/imports/importGroups.js +75 -90
  98. package/export/crud/imports/importGroups.js.map +1 -1
  99. package/export/crud/imports/importModels.js +99 -120
  100. package/export/crud/imports/importModels.js.map +1 -1
  101. package/export/crud/imports/remapIcon.js +7 -10
  102. package/export/crud/imports/remapIcon.js.map +1 -1
  103. package/export/crud/imports/validateGroups.js +75 -99
  104. package/export/crud/imports/validateGroups.js.map +1 -1
  105. package/export/crud/imports/validateInput.js +42 -60
  106. package/export/crud/imports/validateInput.js.map +1 -1
  107. package/export/crud/imports/validateModels.js +117 -175
  108. package/export/crud/imports/validateModels.js.map +1 -1
  109. package/export/crud/index.js +4 -5
  110. package/export/crud/index.js.map +1 -1
  111. package/export/crud/sanitize.js +23 -26
  112. package/export/crud/sanitize.js.map +1 -1
  113. package/export/graphql/index.js +43 -46
  114. package/export/graphql/index.js.map +1 -1
  115. package/export/index.js +0 -2
  116. package/export/types.js +7 -13
  117. package/export/types.js.map +1 -1
  118. package/exports/api/cms/entry.d.ts +2 -0
  119. package/exports/api/cms/entry.js +15 -69
  120. package/exports/api/cms/graphql.js +1 -3
  121. package/exports/api/cms/group.js +3 -14
  122. package/exports/api/cms/model.js +5 -21
  123. package/exports/api/cms/storage.js +0 -2
  124. package/exports/api/cms/validation.js +0 -2
  125. package/extensions/entryHooks/OnEntryBeforeCreate.js +16 -19
  126. package/extensions/entryHooks/OnEntryBeforeCreate.js.map +1 -1
  127. package/extensions/entryHooks/index.js +0 -2
  128. package/extensions/index.js +4 -2
  129. package/extensions/index.js.map +1 -1
  130. package/features/contentEntry/ContentEntriesFeature.js +36 -36
  131. package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
  132. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js +61 -81
  133. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -1
  134. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +18 -16
  135. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -1
  136. package/features/contentEntry/ContentEntryTraverser/abstractions.js +2 -4
  137. package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -1
  138. package/features/contentEntry/ContentEntryTraverser/feature.js +6 -5
  139. package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -1
  140. package/features/contentEntry/ContentEntryTraverser/index.js +0 -2
  141. package/features/contentEntry/CreateEntry/CreateEntryRepository.js +25 -30
  142. package/features/contentEntry/CreateEntry/CreateEntryRepository.js.map +1 -1
  143. package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +4 -16
  144. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +50 -88
  145. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
  146. package/features/contentEntry/CreateEntry/abstractions.js +3 -14
  147. package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
  148. package/features/contentEntry/CreateEntry/events.js +17 -27
  149. package/features/contentEntry/CreateEntry/events.js.map +1 -1
  150. package/features/contentEntry/CreateEntry/feature.js +7 -18
  151. package/features/contentEntry/CreateEntry/feature.js.map +1 -1
  152. package/features/contentEntry/CreateEntry/index.js +1 -3
  153. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js +29 -41
  154. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromRepository.js.map +1 -1
  155. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +4 -20
  156. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +81 -129
  157. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
  158. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +3 -25
  159. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
  160. package/features/contentEntry/CreateEntryRevisionFrom/events.js +25 -31
  161. package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
  162. package/features/contentEntry/CreateEntryRevisionFrom/feature.js +7 -9
  163. package/features/contentEntry/CreateEntryRevisionFrom/feature.js.map +1 -1
  164. package/features/contentEntry/CreateEntryRevisionFrom/index.js +0 -2
  165. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js +21 -23
  166. package/features/contentEntry/DeleteEntry/DeleteEntryRepository.js.map +1 -1
  167. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +70 -96
  168. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
  169. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js +26 -30
  170. package/features/contentEntry/DeleteEntry/MoveEntryToBinRepository.js.map +1 -1
  171. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +86 -115
  172. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
  173. package/features/contentEntry/DeleteEntry/abstractions.js +5 -40
  174. package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
  175. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js +30 -41
  176. package/features/contentEntry/DeleteEntry/decorators/ForceDeleteDecorator.js.map +1 -1
  177. package/features/contentEntry/DeleteEntry/events.js +25 -31
  178. package/features/contentEntry/DeleteEntry/events.js.map +1 -1
  179. package/features/contentEntry/DeleteEntry/feature.js +10 -14
  180. package/features/contentEntry/DeleteEntry/feature.js.map +1 -1
  181. package/features/contentEntry/DeleteEntry/index.js +2 -4
  182. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js +37 -43
  183. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionRepository.js.map +1 -1
  184. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +85 -126
  185. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
  186. package/features/contentEntry/DeleteEntryRevision/abstractions.js +3 -26
  187. package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
  188. package/features/contentEntry/DeleteEntryRevision/events.js +25 -31
  189. package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
  190. package/features/contentEntry/DeleteEntryRevision/feature.js +7 -9
  191. package/features/contentEntry/DeleteEntryRevision/feature.js.map +1 -1
  192. package/features/contentEntry/DeleteEntryRevision/index.js +2 -4
  193. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js +21 -27
  194. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesRepository.js.map +1 -1
  195. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +82 -122
  196. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
  197. package/features/contentEntry/DeleteMultipleEntries/abstractions.js +3 -25
  198. package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
  199. package/features/contentEntry/DeleteMultipleEntries/events.js +25 -31
  200. package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
  201. package/features/contentEntry/DeleteMultipleEntries/feature.js +7 -9
  202. package/features/contentEntry/DeleteMultipleEntries/feature.js.map +1 -1
  203. package/features/contentEntry/DeleteMultipleEntries/index.js +0 -2
  204. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js +30 -35
  205. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsRepository.js.map +1 -1
  206. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js +21 -34
  207. package/features/contentEntry/GetEntriesByIds/GetEntriesByIdsUseCase.js.map +1 -1
  208. package/features/contentEntry/GetEntriesByIds/abstractions.js +3 -14
  209. package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
  210. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js +15 -25
  211. package/features/contentEntry/GetEntriesByIds/decorators/GetEntriesByIdsNotDeletedDecorator.js.map +1 -1
  212. package/features/contentEntry/GetEntriesByIds/feature.js +8 -7
  213. package/features/contentEntry/GetEntriesByIds/feature.js.map +1 -1
  214. package/features/contentEntry/GetEntriesByIds/index.js +1 -3
  215. package/features/contentEntry/GetEntry/GetEntryUseCase.js +22 -31
  216. package/features/contentEntry/GetEntry/GetEntryUseCase.js.map +1 -1
  217. package/features/contentEntry/GetEntry/abstractions.js +2 -8
  218. package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
  219. package/features/contentEntry/GetEntry/feature.js +6 -5
  220. package/features/contentEntry/GetEntry/feature.js.map +1 -1
  221. package/features/contentEntry/GetEntry/index.js +0 -2
  222. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js +20 -25
  223. package/features/contentEntry/GetEntryById/GetEntryByIdUseCase.js.map +1 -1
  224. package/features/contentEntry/GetEntryById/abstractions.js +2 -8
  225. package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
  226. package/features/contentEntry/GetEntryById/feature.js +6 -5
  227. package/features/contentEntry/GetEntryById/feature.js.map +1 -1
  228. package/features/contentEntry/GetEntryById/index.js +0 -2
  229. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js +24 -30
  230. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsRepository.js.map +1 -1
  231. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js +21 -34
  232. package/features/contentEntry/GetLatestEntriesByIds/GetLatestEntriesByIdsUseCase.js.map +1 -1
  233. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +3 -14
  234. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
  235. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js +15 -25
  236. package/features/contentEntry/GetLatestEntriesByIds/decorators/GetLatestEntriesByIdsNotDeletedDecorator.js.map +1 -1
  237. package/features/contentEntry/GetLatestEntriesByIds/feature.js +8 -7
  238. package/features/contentEntry/GetLatestEntriesByIds/feature.js.map +1 -1
  239. package/features/contentEntry/GetLatestEntriesByIds/index.js +1 -3
  240. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js +21 -35
  241. package/features/contentEntry/GetLatestRevisionByEntryId/BaseUseCase.js.map +1 -1
  242. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js +23 -29
  243. package/features/contentEntry/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdRepository.js.map +1 -1
  244. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +6 -21
  245. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
  246. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js +10 -19
  247. package/features/contentEntry/GetLatestRevisionByEntryId/feature.js.map +1 -1
  248. package/features/contentEntry/GetLatestRevisionByEntryId/index.js +1 -3
  249. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js +17 -29
  250. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestDeletedRevisionByEntryIdUseCase.js.map +1 -1
  251. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js +14 -16
  252. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdIncludingDeletedUseCase.js.map +1 -1
  253. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js +17 -27
  254. package/features/contentEntry/GetLatestRevisionByEntryId/variations/GetLatestRevisionByEntryIdUseCase.js.map +1 -1
  255. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js +21 -35
  256. package/features/contentEntry/GetPreviousRevisionByEntryId/BaseUseCase.js.map +1 -1
  257. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js +23 -29
  258. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdRepository.js.map +1 -1
  259. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js +17 -28
  260. package/features/contentEntry/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdUseCase.js.map +1 -1
  261. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +4 -16
  262. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
  263. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js +8 -12
  264. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.js.map +1 -1
  265. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js +1 -3
  266. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js +24 -29
  267. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsRepository.js.map +1 -1
  268. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js +21 -34
  269. package/features/contentEntry/GetPublishedEntriesByIds/GetPublishedEntriesByIdsUseCase.js.map +1 -1
  270. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +3 -14
  271. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
  272. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js +15 -25
  273. package/features/contentEntry/GetPublishedEntriesByIds/decorators/GetPublishedEntriesByIdsNotDeletedDecorator.js.map +1 -1
  274. package/features/contentEntry/GetPublishedEntriesByIds/feature.js +8 -7
  275. package/features/contentEntry/GetPublishedEntriesByIds/feature.js.map +1 -1
  276. package/features/contentEntry/GetPublishedEntriesByIds/index.js +1 -3
  277. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js +25 -31
  278. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdRepository.js.map +1 -1
  279. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js +16 -23
  280. package/features/contentEntry/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdUseCase.js.map +1 -1
  281. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +3 -13
  282. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
  283. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js +7 -17
  284. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.js.map +1 -1
  285. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js +1 -3
  286. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js +26 -33
  287. package/features/contentEntry/GetRevisionById/GetRevisionByIdRepository.js.map +1 -1
  288. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js +14 -17
  289. package/features/contentEntry/GetRevisionById/GetRevisionByIdUseCase.js.map +1 -1
  290. package/features/contentEntry/GetRevisionById/abstractions.js +3 -15
  291. package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
  292. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js +14 -26
  293. package/features/contentEntry/GetRevisionById/decorators/GetRevisionByIdNotDeletedDecorator.js.map +1 -1
  294. package/features/contentEntry/GetRevisionById/feature.js +8 -21
  295. package/features/contentEntry/GetRevisionById/feature.js.map +1 -1
  296. package/features/contentEntry/GetRevisionById/index.js +1 -3
  297. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js +24 -30
  298. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdRepository.js.map +1 -1
  299. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js +21 -34
  300. package/features/contentEntry/GetRevisionsByEntryId/GetRevisionsByEntryIdUseCase.js.map +1 -1
  301. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +3 -14
  302. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
  303. package/features/contentEntry/GetRevisionsByEntryId/feature.js +7 -6
  304. package/features/contentEntry/GetRevisionsByEntryId/feature.js.map +1 -1
  305. package/features/contentEntry/GetRevisionsByEntryId/index.js +1 -3
  306. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js +25 -43
  307. package/features/contentEntry/GetSingletonEntry/GetSingletonEntryUseCase.js.map +1 -1
  308. package/features/contentEntry/GetSingletonEntry/abstractions.js +2 -9
  309. package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
  310. package/features/contentEntry/GetSingletonEntry/feature.js +6 -13
  311. package/features/contentEntry/GetSingletonEntry/feature.js.map +1 -1
  312. package/features/contentEntry/GetSingletonEntry/index.js +0 -2
  313. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js +23 -24
  314. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesRepository.js.map +1 -1
  315. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +45 -61
  316. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
  317. package/features/contentEntry/GetUniqueFieldValues/abstractions.js +3 -13
  318. package/features/contentEntry/GetUniqueFieldValues/abstractions.js.map +1 -1
  319. package/features/contentEntry/GetUniqueFieldValues/errors.js +19 -20
  320. package/features/contentEntry/GetUniqueFieldValues/errors.js.map +1 -1
  321. package/features/contentEntry/GetUniqueFieldValues/feature.js +7 -6
  322. package/features/contentEntry/GetUniqueFieldValues/feature.js.map +1 -1
  323. package/features/contentEntry/GetUniqueFieldValues/index.js +1 -3
  324. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js +22 -29
  325. package/features/contentEntry/ListEntries/ListDeletedEntriesUseCase.js.map +1 -1
  326. package/features/contentEntry/ListEntries/ListEntriesRepository.js +55 -57
  327. package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
  328. package/features/contentEntry/ListEntries/ListEntriesUseCase.js +33 -53
  329. package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
  330. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js +25 -27
  331. package/features/contentEntry/ListEntries/ListLatestEntriesUseCase.js.map +1 -1
  332. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js +22 -29
  333. package/features/contentEntry/ListEntries/ListPublishedEntriesUseCase.js.map +1 -1
  334. package/features/contentEntry/ListEntries/abstractions.js +6 -35
  335. package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
  336. package/features/contentEntry/ListEntries/feature.js +10 -12
  337. package/features/contentEntry/ListEntries/feature.js.map +1 -1
  338. package/features/contentEntry/ListEntries/index.js +1 -3
  339. package/features/contentEntry/MoveEntry/MoveEntryRepository.js +19 -25
  340. package/features/contentEntry/MoveEntry/MoveEntryRepository.js.map +1 -1
  341. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +66 -94
  342. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
  343. package/features/contentEntry/MoveEntry/abstractions.js +3 -25
  344. package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
  345. package/features/contentEntry/MoveEntry/events.js +25 -31
  346. package/features/contentEntry/MoveEntry/events.js.map +1 -1
  347. package/features/contentEntry/MoveEntry/feature.js +7 -9
  348. package/features/contentEntry/MoveEntry/feature.js.map +1 -1
  349. package/features/contentEntry/MoveEntry/index.js +1 -3
  350. package/features/contentEntry/PublishEntry/PublishEntryRepository.js +28 -38
  351. package/features/contentEntry/PublishEntry/PublishEntryRepository.js.map +1 -1
  352. package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +3 -17
  353. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +77 -118
  354. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
  355. package/features/contentEntry/PublishEntry/abstractions.js +3 -25
  356. package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
  357. package/features/contentEntry/PublishEntry/events.js +25 -31
  358. package/features/contentEntry/PublishEntry/events.js.map +1 -1
  359. package/features/contentEntry/PublishEntry/feature.js +7 -9
  360. package/features/contentEntry/PublishEntry/feature.js.map +1 -1
  361. package/features/contentEntry/PublishEntry/index.js +1 -3
  362. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js +33 -48
  363. package/features/contentEntry/RepublishEntry/RepublishEntryRepository.js.map +1 -1
  364. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +3 -15
  365. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +68 -103
  366. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
  367. package/features/contentEntry/RepublishEntry/abstractions.js +3 -26
  368. package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
  369. package/features/contentEntry/RepublishEntry/events.js +25 -31
  370. package/features/contentEntry/RepublishEntry/events.js.map +1 -1
  371. package/features/contentEntry/RepublishEntry/feature.js +7 -9
  372. package/features/contentEntry/RepublishEntry/feature.js.map +1 -1
  373. package/features/contentEntry/RepublishEntry/index.js +0 -2
  374. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js +28 -38
  375. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinRepository.js.map +1 -1
  376. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +80 -110
  377. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
  378. package/features/contentEntry/RestoreEntryFromBin/abstractions.js +3 -26
  379. package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
  380. package/features/contentEntry/RestoreEntryFromBin/events.js +25 -31
  381. package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
  382. package/features/contentEntry/RestoreEntryFromBin/feature.js +7 -9
  383. package/features/contentEntry/RestoreEntryFromBin/feature.js.map +1 -1
  384. package/features/contentEntry/RestoreEntryFromBin/index.js +0 -2
  385. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js +25 -30
  386. package/features/contentEntry/UnpublishEntry/UnpublishEntryRepository.js.map +1 -1
  387. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +3 -14
  388. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +70 -115
  389. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
  390. package/features/contentEntry/UnpublishEntry/abstractions.js +3 -14
  391. package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
  392. package/features/contentEntry/UnpublishEntry/events.js +25 -36
  393. package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
  394. package/features/contentEntry/UnpublishEntry/feature.js +7 -18
  395. package/features/contentEntry/UnpublishEntry/feature.js.map +1 -1
  396. package/features/contentEntry/UnpublishEntry/index.js +1 -3
  397. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js +25 -30
  398. package/features/contentEntry/UpdateEntry/UpdateEntryRepository.js.map +1 -1
  399. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +5 -22
  400. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +58 -107
  401. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
  402. package/features/contentEntry/UpdateEntry/abstractions.d.ts +1 -3
  403. package/features/contentEntry/UpdateEntry/abstractions.js +3 -14
  404. package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
  405. package/features/contentEntry/UpdateEntry/events.js +17 -27
  406. package/features/contentEntry/UpdateEntry/events.js.map +1 -1
  407. package/features/contentEntry/UpdateEntry/feature.js +7 -18
  408. package/features/contentEntry/UpdateEntry/feature.js.map +1 -1
  409. package/features/contentEntry/UpdateEntry/index.js +1 -3
  410. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
  411. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +77 -0
  412. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js.map +1 -0
  413. package/features/contentEntry/UpdateRevisionDescription/abstractions.d.ts +25 -0
  414. package/features/contentEntry/UpdateRevisionDescription/abstractions.js +5 -0
  415. package/features/contentEntry/UpdateRevisionDescription/abstractions.js.map +1 -0
  416. package/features/contentEntry/UpdateRevisionDescription/events.d.ts +44 -0
  417. package/features/contentEntry/UpdateRevisionDescription/events.js +23 -0
  418. package/features/contentEntry/UpdateRevisionDescription/events.js.map +1 -0
  419. package/features/contentEntry/UpdateRevisionDescription/feature.d.ts +12 -0
  420. package/features/contentEntry/UpdateRevisionDescription/feature.js +11 -0
  421. package/features/contentEntry/UpdateRevisionDescription/feature.js.map +1 -0
  422. package/features/contentEntry/UpdateRevisionDescription/index.d.ts +2 -0
  423. package/features/contentEntry/UpdateRevisionDescription/index.js +2 -0
  424. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js +17 -26
  425. package/features/contentEntry/UpdateSingletonEntry/UpdateSingletonEntryUseCase.js.map +1 -1
  426. package/features/contentEntry/UpdateSingletonEntry/abstractions.js +2 -9
  427. package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
  428. package/features/contentEntry/UpdateSingletonEntry/feature.js +6 -13
  429. package/features/contentEntry/UpdateSingletonEntry/feature.js.map +1 -1
  430. package/features/contentEntry/UpdateSingletonEntry/index.js +0 -2
  431. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js +42 -63
  432. package/features/contentEntry/ValidateEntry/ValidateEntryUseCase.js.map +1 -1
  433. package/features/contentEntry/ValidateEntry/abstractions.js +2 -8
  434. package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
  435. package/features/contentEntry/ValidateEntry/feature.js +6 -6
  436. package/features/contentEntry/ValidateEntry/feature.js.map +1 -1
  437. package/features/contentEntry/ValidateEntry/index.js +0 -2
  438. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.d.ts +15 -0
  439. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js +212 -0
  440. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/CreateEntryDataFactory.js.map +1 -0
  441. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.d.ts +13 -0
  442. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js +5 -0
  443. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/abstractions.js.map +1 -0
  444. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.d.ts +4 -0
  445. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js +11 -0
  446. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/feature.js.map +1 -0
  447. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.d.ts +2 -0
  448. package/features/contentEntry/entryDataFactories/CreateEntryDataFactory/index.js +2 -0
  449. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.d.ts +15 -0
  450. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js +150 -0
  451. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/CreateEntryRevisionFromDataFactory.js.map +1 -0
  452. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.d.ts +13 -0
  453. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js +5 -0
  454. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/abstractions.js.map +1 -0
  455. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.d.ts +4 -0
  456. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js +11 -0
  457. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/feature.js.map +1 -0
  458. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.d.ts +2 -0
  459. package/features/contentEntry/entryDataFactories/CreateEntryRevisionFromDataFactory/index.js +2 -0
  460. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.d.ts +12 -0
  461. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js +66 -0
  462. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/CreatePublishEntryDataFactory.js.map +1 -0
  463. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.d.ts +12 -0
  464. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js +5 -0
  465. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/abstractions.js.map +1 -0
  466. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.d.ts +4 -0
  467. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js +11 -0
  468. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/feature.js.map +1 -0
  469. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.d.ts +2 -0
  470. package/features/contentEntry/entryDataFactories/CreatePublishEntryDataFactory/index.js +2 -0
  471. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.d.ts +12 -0
  472. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js +62 -0
  473. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/CreateRepublishEntryDataFactory.js.map +1 -0
  474. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.d.ts +12 -0
  475. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js +5 -0
  476. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/abstractions.js.map +1 -0
  477. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.d.ts +4 -0
  478. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js +11 -0
  479. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/feature.js.map +1 -0
  480. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.d.ts +2 -0
  481. package/features/contentEntry/entryDataFactories/CreateRepublishEntryDataFactory/index.js +2 -0
  482. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.d.ts +10 -0
  483. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js +41 -0
  484. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/CreateUnpublishEntryDataFactory.js.map +1 -0
  485. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.d.ts +12 -0
  486. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js +5 -0
  487. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/abstractions.js.map +1 -0
  488. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.d.ts +4 -0
  489. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js +11 -0
  490. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/feature.js.map +1 -0
  491. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.d.ts +2 -0
  492. package/features/contentEntry/entryDataFactories/CreateUnpublishEntryDataFactory/index.js +2 -0
  493. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.d.ts +4 -0
  494. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js +21 -0
  495. package/features/contentEntry/entryDataFactories/EntryDataFactoriesFeature.js.map +1 -0
  496. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.d.ts +12 -0
  497. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js +104 -0
  498. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/UpdateEntryDataFactory.js.map +1 -0
  499. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.d.ts +13 -0
  500. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js +5 -0
  501. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/abstractions.js.map +1 -0
  502. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.d.ts +4 -0
  503. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js +11 -0
  504. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/feature.js.map +1 -0
  505. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.d.ts +2 -0
  506. package/features/contentEntry/entryDataFactories/UpdateEntryDataFactory/index.js +2 -0
  507. package/{crud → features}/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +0 -3
  508. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +17 -0
  509. package/features/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
  510. package/features/contentEntry/entryDataFactories/statuses.js +7 -0
  511. package/features/contentEntry/entryDataFactories/statuses.js.map +1 -0
  512. package/features/contentEntry/entryDataFactories/system.js +10 -0
  513. package/features/contentEntry/entryDataFactories/system.js.map +1 -0
  514. package/features/contentModel/ContentModelFeature.js +16 -19
  515. package/features/contentModel/ContentModelFeature.js.map +1 -1
  516. package/features/contentModel/CreateModel/CreateModelRepository.js +104 -148
  517. package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
  518. package/features/contentModel/CreateModel/CreateModelUseCase.js +74 -119
  519. package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
  520. package/features/contentModel/CreateModel/abstractions.js +3 -13
  521. package/features/contentModel/CreateModel/abstractions.js.map +1 -1
  522. package/features/contentModel/CreateModel/events.js +25 -36
  523. package/features/contentModel/CreateModel/events.js.map +1 -1
  524. package/features/contentModel/CreateModel/feature.js +7 -16
  525. package/features/contentModel/CreateModel/feature.js.map +1 -1
  526. package/features/contentModel/CreateModel/index.js +1 -3
  527. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +107 -150
  528. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
  529. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +84 -119
  530. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
  531. package/features/contentModel/CreateModelFrom/abstractions.js +3 -13
  532. package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
  533. package/features/contentModel/CreateModelFrom/events.js +25 -36
  534. package/features/contentModel/CreateModelFrom/events.js.map +1 -1
  535. package/features/contentModel/CreateModelFrom/feature.js +7 -16
  536. package/features/contentModel/CreateModelFrom/feature.js.map +1 -1
  537. package/features/contentModel/CreateModelFrom/index.js +1 -3
  538. package/features/contentModel/DeleteModel/DeleteModelRepository.js +27 -41
  539. package/features/contentModel/DeleteModel/DeleteModelRepository.js.map +1 -1
  540. package/features/contentModel/DeleteModel/DeleteModelUseCase.js +44 -72
  541. package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
  542. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js +50 -83
  543. package/features/contentModel/DeleteModel/DeleteModelWithEntryCleanup.js.map +1 -1
  544. package/features/contentModel/DeleteModel/abstractions.js +3 -13
  545. package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
  546. package/features/contentModel/DeleteModel/events.js +25 -36
  547. package/features/contentModel/DeleteModel/events.js.map +1 -1
  548. package/features/contentModel/DeleteModel/feature.js +8 -19
  549. package/features/contentModel/DeleteModel/feature.js.map +1 -1
  550. package/features/contentModel/DeleteModel/index.js +1 -3
  551. package/features/contentModel/GetModel/GetModelRepository.js +15 -23
  552. package/features/contentModel/GetModel/GetModelRepository.js.map +1 -1
  553. package/features/contentModel/GetModel/GetModelUseCase.js +21 -34
  554. package/features/contentModel/GetModel/GetModelUseCase.js.map +1 -1
  555. package/features/contentModel/GetModel/abstractions.js +3 -13
  556. package/features/contentModel/GetModel/abstractions.js.map +1 -1
  557. package/features/contentModel/GetModel/feature.js +7 -16
  558. package/features/contentModel/GetModel/feature.js.map +1 -1
  559. package/features/contentModel/GetModel/index.js +0 -2
  560. package/features/contentModel/ListModels/ListModelsRepository.js +18 -36
  561. package/features/contentModel/ListModels/ListModelsRepository.js.map +1 -1
  562. package/features/contentModel/ListModels/ListModelsUseCase.js +23 -41
  563. package/features/contentModel/ListModels/ListModelsUseCase.js.map +1 -1
  564. package/features/contentModel/ListModels/abstractions.js +3 -13
  565. package/features/contentModel/ListModels/abstractions.js.map +1 -1
  566. package/features/contentModel/ListModels/feature.js +7 -17
  567. package/features/contentModel/ListModels/feature.js.map +1 -1
  568. package/features/contentModel/ListModels/index.js +0 -2
  569. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +18 -18
  570. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -1
  571. package/features/contentModel/ModelFieldCompression/abstractions.js +2 -1
  572. package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -1
  573. package/features/contentModel/ModelFieldCompression/feature.js +6 -5
  574. package/features/contentModel/ModelFieldCompression/feature.js.map +1 -1
  575. package/features/contentModel/ModelFieldCompression/index.js +0 -2
  576. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +15 -19
  577. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
  578. package/features/contentModel/ModelToAstConverter/abstractions.js +2 -6
  579. package/features/contentModel/ModelToAstConverter/abstractions.js.map +1 -1
  580. package/features/contentModel/ModelToAstConverter/feature.js +6 -5
  581. package/features/contentModel/ModelToAstConverter/feature.js.map +1 -1
  582. package/features/contentModel/ModelToAstConverter/index.js +0 -2
  583. package/features/contentModel/UpdateModel/UpdateModelRepository.js +71 -97
  584. package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
  585. package/features/contentModel/UpdateModel/UpdateModelUseCase.js +75 -118
  586. package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
  587. package/features/contentModel/UpdateModel/abstractions.js +3 -13
  588. package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
  589. package/features/contentModel/UpdateModel/events.js +25 -36
  590. package/features/contentModel/UpdateModel/events.js.map +1 -1
  591. package/features/contentModel/UpdateModel/feature.js +7 -16
  592. package/features/contentModel/UpdateModel/feature.js.map +1 -1
  593. package/features/contentModel/UpdateModel/index.js +1 -3
  594. package/features/contentModel/shared/ModelsFetcher.js +66 -81
  595. package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
  596. package/features/contentModel/shared/PluginModelsProvider.js +38 -54
  597. package/features/contentModel/shared/PluginModelsProvider.js.map +1 -1
  598. package/features/contentModel/shared/abstractions.js +4 -16
  599. package/features/contentModel/shared/abstractions.js.map +1 -1
  600. package/features/contentModelGroup/ContentModelGroupFeature.js +12 -16
  601. package/features/contentModelGroup/ContentModelGroupFeature.js.map +1 -1
  602. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +63 -94
  603. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
  604. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +80 -107
  605. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
  606. package/features/contentModelGroup/CreateGroup/abstractions.js +3 -13
  607. package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
  608. package/features/contentModelGroup/CreateGroup/events.js +25 -36
  609. package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
  610. package/features/contentModelGroup/CreateGroup/feature.js +7 -16
  611. package/features/contentModelGroup/CreateGroup/feature.js.map +1 -1
  612. package/features/contentModelGroup/CreateGroup/index.js +0 -2
  613. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js +37 -56
  614. package/features/contentModelGroup/DeleteGroup/DeleteGroupRepository.js.map +1 -1
  615. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +53 -80
  616. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
  617. package/features/contentModelGroup/DeleteGroup/abstractions.js +3 -13
  618. package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
  619. package/features/contentModelGroup/DeleteGroup/events.js +25 -36
  620. package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
  621. package/features/contentModelGroup/DeleteGroup/feature.js +7 -16
  622. package/features/contentModelGroup/DeleteGroup/feature.js.map +1 -1
  623. package/features/contentModelGroup/DeleteGroup/index.js +0 -2
  624. package/features/contentModelGroup/GetGroup/GetGroupRepository.js +60 -80
  625. package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
  626. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js +19 -34
  627. package/features/contentModelGroup/GetGroup/GetGroupUseCase.js.map +1 -1
  628. package/features/contentModelGroup/GetGroup/abstractions.js +3 -13
  629. package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
  630. package/features/contentModelGroup/GetGroup/feature.js +7 -16
  631. package/features/contentModelGroup/GetGroup/feature.js.map +1 -1
  632. package/features/contentModelGroup/GetGroup/index.js +0 -2
  633. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +57 -74
  634. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
  635. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js +19 -34
  636. package/features/contentModelGroup/ListGroups/ListGroupsUseCase.js.map +1 -1
  637. package/features/contentModelGroup/ListGroups/abstractions.js +3 -13
  638. package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
  639. package/features/contentModelGroup/ListGroups/feature.js +7 -16
  640. package/features/contentModelGroup/ListGroups/feature.js.map +1 -1
  641. package/features/contentModelGroup/ListGroups/index.js +0 -2
  642. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js +31 -44
  643. package/features/contentModelGroup/UpdateGroup/UpdateGroupRepository.js.map +1 -1
  644. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +75 -111
  645. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
  646. package/features/contentModelGroup/UpdateGroup/abstractions.js +3 -13
  647. package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
  648. package/features/contentModelGroup/UpdateGroup/events.js +25 -36
  649. package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
  650. package/features/contentModelGroup/UpdateGroup/feature.js +7 -16
  651. package/features/contentModelGroup/UpdateGroup/feature.js.map +1 -1
  652. package/features/contentModelGroup/UpdateGroup/index.js +0 -2
  653. package/features/contentModelGroup/shared/PluginGroupsProvider.js +61 -78
  654. package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
  655. package/features/contentModelGroup/shared/abstractions.js +4 -9
  656. package/features/contentModelGroup/shared/abstractions.js.map +1 -1
  657. package/features/contentModelGroup/shared/index.js +1 -3
  658. package/features/graphql/feature.js +18 -17
  659. package/features/graphql/feature.js.map +1 -1
  660. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +24 -20
  661. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -1
  662. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +2 -1
  663. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -1
  664. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +2 -1
  665. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -1
  666. package/features/graphql/fields/base/BooleanToGraphQL.js +37 -52
  667. package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -1
  668. package/features/graphql/fields/base/DateTimeToGraphQL.js +48 -63
  669. package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -1
  670. package/features/graphql/fields/base/DynamicZoneToGraphQL.js +168 -252
  671. package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -1
  672. package/features/graphql/fields/base/FileToGraphQL.js +24 -27
  673. package/features/graphql/fields/base/FileToGraphQL.js.map +1 -1
  674. package/features/graphql/fields/base/JsonToGraphQL.js +30 -39
  675. package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -1
  676. package/features/graphql/fields/base/LongTextToGraphQL.js +31 -42
  677. package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -1
  678. package/features/graphql/fields/base/NumberToGraphQL.js +37 -52
  679. package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -1
  680. package/features/graphql/fields/base/ObjectToGraphQL.js +180 -239
  681. package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -1
  682. package/features/graphql/fields/base/RefToGraphQL.js +150 -210
  683. package/features/graphql/fields/base/RefToGraphQL.js.map +1 -1
  684. package/features/graphql/fields/base/RichTextToGraphQL.js +35 -46
  685. package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -1
  686. package/features/graphql/fields/base/SearchableJsonToGraphQL.js +38 -51
  687. package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -1
  688. package/features/graphql/fields/base/TextToGraphQL.js +37 -52
  689. package/features/graphql/fields/base/TextToGraphQL.js.map +1 -1
  690. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +26 -31
  691. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -1
  692. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +7 -10
  693. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -1
  694. package/features/graphql/fields/base/richText/richTextResolver.js +11 -20
  695. package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -1
  696. package/features/graphql/fields/base/utils/createGraphQLInputField.js +6 -13
  697. package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -1
  698. package/features/graphql/index.js +0 -2
  699. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +2 -1
  700. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -1
  701. package/features/installer/CmsInstaller.js +31 -32
  702. package/features/installer/CmsInstaller.js.map +1 -1
  703. package/features/installer/feature.js +6 -5
  704. package/features/installer/feature.js.map +1 -1
  705. package/features/modelBuilder/LayoutBuilder.js +66 -122
  706. package/features/modelBuilder/LayoutBuilder.js.map +1 -1
  707. package/features/modelBuilder/abstractions.js +3 -17
  708. package/features/modelBuilder/abstractions.js.map +1 -1
  709. package/features/modelBuilder/feature.js +31 -42
  710. package/features/modelBuilder/feature.js.map +1 -1
  711. package/features/modelBuilder/fields/BaseFieldBuilder.js +31 -38
  712. package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -1
  713. package/features/modelBuilder/fields/BooleanFieldType.js +18 -17
  714. package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
  715. package/features/modelBuilder/fields/DataFieldBuilder.js +157 -201
  716. package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -1
  717. package/features/modelBuilder/fields/DateTimeFieldType.js +59 -78
  718. package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
  719. package/features/modelBuilder/fields/DynamicZoneFieldType.js +51 -54
  720. package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
  721. package/features/modelBuilder/fields/FieldBuilder.js +0 -2
  722. package/features/modelBuilder/fields/FieldBuilderRegistry.js +38 -62
  723. package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
  724. package/features/modelBuilder/fields/FileFieldType.js +25 -24
  725. package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
  726. package/features/modelBuilder/fields/JsonFieldType.js +13 -12
  727. package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
  728. package/features/modelBuilder/fields/LayoutFieldBuilder.js +3 -6
  729. package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -1
  730. package/features/modelBuilder/fields/LocationFieldType.js +15 -14
  731. package/features/modelBuilder/fields/LocationFieldType.js.map +1 -1
  732. package/features/modelBuilder/fields/LongTextFieldType.js +115 -114
  733. package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
  734. package/features/modelBuilder/fields/NumberFieldType.js +38 -37
  735. package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
  736. package/features/modelBuilder/fields/ObjectFieldType.js +50 -67
  737. package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
  738. package/features/modelBuilder/fields/RefFieldType.js +25 -24
  739. package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
  740. package/features/modelBuilder/fields/RichTextFieldType.js +20 -19
  741. package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
  742. package/features/modelBuilder/fields/SearchableJsonFieldType.js +13 -12
  743. package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
  744. package/features/modelBuilder/fields/TextFieldType.js +123 -123
  745. package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
  746. package/features/modelBuilder/fields/UiAlertFieldType.js +27 -27
  747. package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -1
  748. package/features/modelBuilder/fields/UiSeparatorFieldType.js +23 -22
  749. package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -1
  750. package/features/modelBuilder/fields/UiTabsFieldType.js +58 -63
  751. package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -1
  752. package/features/modelBuilder/fields/abstractions.js +2 -9
  753. package/features/modelBuilder/fields/abstractions.js.map +1 -1
  754. package/features/modelBuilder/fields/fieldTypeValidator.js +0 -31
  755. package/features/modelBuilder/index.js +10 -16
  756. package/features/modelBuilder/models/BaseModelBuilder.js +70 -130
  757. package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
  758. package/features/modelBuilder/models/ModelBuilder.js +18 -33
  759. package/features/modelBuilder/models/ModelBuilder.js.map +1 -1
  760. package/features/modelBuilder/models/ModelsProvider.js +24 -33
  761. package/features/modelBuilder/models/ModelsProvider.js.map +1 -1
  762. package/features/modelBuilder/models/PrivateModelBuilder.js +15 -24
  763. package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
  764. package/features/modelBuilder/models/PublicModelBuilder.js +89 -114
  765. package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
  766. package/features/modelBuilder/models/abstractions.js +2 -6
  767. package/features/modelBuilder/models/abstractions.js.map +1 -1
  768. package/features/shared/abstractions.js +5 -16
  769. package/features/shared/abstractions.js.map +1 -1
  770. package/features/sortMapper/SortMapper.js +27 -46
  771. package/features/sortMapper/SortMapper.js.map +1 -1
  772. package/features/sortMapper/abstractions.js +2 -2
  773. package/features/sortMapper/abstractions.js.map +1 -1
  774. package/features/sortMapper/feature.js +7 -6
  775. package/features/sortMapper/feature.js.map +1 -1
  776. package/features/storage/StorageTransformRegistry.js +24 -20
  777. package/features/storage/StorageTransformRegistry.js.map +1 -1
  778. package/features/storage/abstractions/StorageTransform.js +2 -1
  779. package/features/storage/abstractions/StorageTransform.js.map +1 -1
  780. package/features/storage/abstractions/StorageTransformRegistry.js +2 -1
  781. package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -1
  782. package/features/storage/feature.js +13 -12
  783. package/features/storage/feature.js.map +1 -1
  784. package/features/storage/fields/DateStorageTransform.js +67 -96
  785. package/features/storage/fields/DateStorageTransform.js.map +1 -1
  786. package/features/storage/fields/DefaultStorageTransform.js +13 -14
  787. package/features/storage/fields/DefaultStorageTransform.js.map +1 -1
  788. package/features/storage/fields/DynamicZoneStorageTransform.js +91 -128
  789. package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -1
  790. package/features/storage/fields/JsonStorageTransform.js +17 -22
  791. package/features/storage/fields/JsonStorageTransform.js.map +1 -1
  792. package/features/storage/fields/LongTextStorageTransform.js +33 -44
  793. package/features/storage/fields/LongTextStorageTransform.js.map +1 -1
  794. package/features/storage/fields/ObjectStorageTransform.js +64 -87
  795. package/features/storage/fields/ObjectStorageTransform.js.map +1 -1
  796. package/features/storage/fields/RichTextStorageTransform.js +23 -28
  797. package/features/storage/fields/RichTextStorageTransform.js.map +1 -1
  798. package/features/storage/index.js +0 -2
  799. package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -15
  800. package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
  801. package/features/validation/CmsModelFieldValidatorRegistry.js +21 -17
  802. package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -1
  803. package/features/validation/abstractions/CmsModelFieldPatternValidator.js +2 -1
  804. package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -1
  805. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +2 -1
  806. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -1
  807. package/features/validation/abstractions/CmsModelFieldValidator.js +2 -1
  808. package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -1
  809. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +2 -1
  810. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -1
  811. package/features/validation/feature.js +25 -24
  812. package/features/validation/feature.js.map +1 -1
  813. package/features/validation/index.js +0 -2
  814. package/features/validation/validators/DateGteValidator.js +12 -18
  815. package/features/validation/validators/DateGteValidator.js.map +1 -1
  816. package/features/validation/validators/DateLteValidator.js +12 -18
  817. package/features/validation/validators/DateLteValidator.js.map +1 -1
  818. package/features/validation/validators/GteValidator.js +11 -13
  819. package/features/validation/validators/GteValidator.js.map +1 -1
  820. package/features/validation/validators/InValidator.js +11 -13
  821. package/features/validation/validators/InValidator.js.map +1 -1
  822. package/features/validation/validators/LteValidator.js +11 -13
  823. package/features/validation/validators/LteValidator.js.map +1 -1
  824. package/features/validation/validators/MaxLengthValidator.js +11 -13
  825. package/features/validation/validators/MaxLengthValidator.js.map +1 -1
  826. package/features/validation/validators/MinLengthValidator.js +11 -13
  827. package/features/validation/validators/MinLengthValidator.js.map +1 -1
  828. package/features/validation/validators/PatternValidator.js +20 -29
  829. package/features/validation/validators/PatternValidator.js.map +1 -1
  830. package/features/validation/validators/RequiredValidator.js +10 -9
  831. package/features/validation/validators/RequiredValidator.js.map +1 -1
  832. package/features/validation/validators/TimeGteValidator.js +11 -13
  833. package/features/validation/validators/TimeGteValidator.js.map +1 -1
  834. package/features/validation/validators/TimeLteValidator.js +11 -13
  835. package/features/validation/validators/TimeLteValidator.js.map +1 -1
  836. package/features/validation/validators/UniqueValidator.js +31 -38
  837. package/features/validation/validators/UniqueValidator.js.map +1 -1
  838. package/features/validation/validators/patterns/EmailPattern.js +11 -8
  839. package/features/validation/validators/patterns/EmailPattern.js.map +1 -1
  840. package/features/validation/validators/patterns/LowerCasePattern.js +11 -8
  841. package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -1
  842. package/features/validation/validators/patterns/LowerCaseSpacePattern.js +11 -8
  843. package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -1
  844. package/features/validation/validators/patterns/UpperCasePattern.js +11 -8
  845. package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -1
  846. package/features/validation/validators/patterns/UpperCaseSpacePattern.js +11 -8
  847. package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -1
  848. package/features/validation/validators/patterns/UrlPattern.js +11 -8
  849. package/features/validation/validators/patterns/UrlPattern.js.map +1 -1
  850. package/features/whereMapper/WhereMapper.js +42 -69
  851. package/features/whereMapper/WhereMapper.js.map +1 -1
  852. package/features/whereMapper/abstractions.js +2 -2
  853. package/features/whereMapper/abstractions.js.map +1 -1
  854. package/features/whereMapper/feature.js +7 -6
  855. package/features/whereMapper/feature.js.map +1 -1
  856. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +18 -37
  857. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  858. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +92 -136
  859. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  860. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +103 -152
  861. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  862. package/fieldConverters/index.js +6 -6
  863. package/fieldConverters/index.js.map +1 -1
  864. package/graphql/buildSchemaPlugins.js +16 -20
  865. package/graphql/buildSchemaPlugins.js.map +1 -1
  866. package/graphql/checkEndpointAccess.js +4 -5
  867. package/graphql/checkEndpointAccess.js.map +1 -1
  868. package/graphql/createExecutableSchema.js +30 -41
  869. package/graphql/createExecutableSchema.js.map +1 -1
  870. package/graphql/formatErrorPayload.js +13 -14
  871. package/graphql/formatErrorPayload.js.map +1 -1
  872. package/graphql/generateSchema.js +20 -24
  873. package/graphql/generateSchema.js.map +1 -1
  874. package/graphql/getSchema/generateCacheId.js +7 -6
  875. package/graphql/getSchema/generateCacheId.js.map +1 -1
  876. package/graphql/getSchema/generateCacheKey.js +23 -23
  877. package/graphql/getSchema/generateCacheKey.js.map +1 -1
  878. package/graphql/getSchema.js +46 -63
  879. package/graphql/getSchema.js.map +1 -1
  880. package/graphql/graphQLHandlerFactory.js +15 -23
  881. package/graphql/graphQLHandlerFactory.js.map +1 -1
  882. package/graphql/handleRequest.js +50 -63
  883. package/graphql/handleRequest.js.map +1 -1
  884. package/graphql/index.js +6 -3
  885. package/graphql/index.js.map +1 -1
  886. package/graphql/scalars/RevisionId.js +10 -14
  887. package/graphql/scalars/RevisionId.js.map +1 -1
  888. package/graphql/scalars/RevisionIdScalarPlugin.js +10 -7
  889. package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -1
  890. package/graphql/schema/baseContentSchema.js +29 -30
  891. package/graphql/schema/baseContentSchema.js.map +1 -1
  892. package/graphql/schema/baseSchema.js +33 -36
  893. package/graphql/schema/baseSchema.js.map +1 -1
  894. package/graphql/schema/cms/createEntryResolver.js +37 -49
  895. package/graphql/schema/cms/createEntryResolver.js.map +1 -1
  896. package/graphql/schema/cms/deleteEntryResolver.js +39 -51
  897. package/graphql/schema/cms/deleteEntryResolver.js.map +1 -1
  898. package/graphql/schema/cms/getEntryResolver.js +37 -51
  899. package/graphql/schema/cms/getEntryResolver.js.map +1 -1
  900. package/graphql/schema/cms/helpers/buildFieldsSelection.js +26 -71
  901. package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -1
  902. package/graphql/schema/cms/helpers/getErrorMessage.js +5 -11
  903. package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -1
  904. package/graphql/schema/cms/helpers/getModel.js +5 -9
  905. package/graphql/schema/cms/helpers/getModel.js.map +1 -1
  906. package/graphql/schema/cms/helpers/index.js +0 -2
  907. package/graphql/schema/cms/helpers/transformSortToArray.js +7 -34
  908. package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -1
  909. package/graphql/schema/cms/helpers/transformWhereToNested.js +23 -50
  910. package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -1
  911. package/graphql/schema/cms/helpers.js +0 -2
  912. package/graphql/schema/cms/index.js +20 -22
  913. package/graphql/schema/cms/index.js.map +1 -1
  914. package/graphql/schema/cms/listEntriesResolver.js +58 -82
  915. package/graphql/schema/cms/listEntriesResolver.js.map +1 -1
  916. package/graphql/schema/cms/publishEntryResolver.js +37 -49
  917. package/graphql/schema/cms/publishEntryResolver.js.map +1 -1
  918. package/graphql/schema/cms/resolvers/createEntry.js +11 -10
  919. package/graphql/schema/cms/resolvers/createEntry.js.map +1 -1
  920. package/graphql/schema/cms/resolvers/deleteEntryRevision.js +11 -10
  921. package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -1
  922. package/graphql/schema/cms/resolvers/getEntry.js +11 -10
  923. package/graphql/schema/cms/resolvers/getEntry.js.map +1 -1
  924. package/graphql/schema/cms/resolvers/index.js +0 -2
  925. package/graphql/schema/cms/resolvers/listEntries.js +11 -10
  926. package/graphql/schema/cms/resolvers/listEntries.js.map +1 -1
  927. package/graphql/schema/cms/resolvers/mutationCms.js +13 -18
  928. package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -1
  929. package/graphql/schema/cms/resolvers/publishEntryRevision.js +11 -10
  930. package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -1
  931. package/graphql/schema/cms/resolvers/queryCms.js +13 -17
  932. package/graphql/schema/cms/resolvers/queryCms.js.map +1 -1
  933. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +11 -10
  934. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -1
  935. package/graphql/schema/cms/resolvers/updateEntryRevision.js +11 -10
  936. package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -1
  937. package/graphql/schema/cms/typeDefs/index.js +0 -2
  938. package/graphql/schema/cms/typeDefs/mutation.js +8 -7
  939. package/graphql/schema/cms/typeDefs/mutation.js.map +1 -1
  940. package/graphql/schema/cms/typeDefs/query.js +8 -7
  941. package/graphql/schema/cms/typeDefs/query.js.map +1 -1
  942. package/graphql/schema/cms/typeDefs/responses.js +8 -7
  943. package/graphql/schema/cms/typeDefs/responses.js.map +1 -1
  944. package/graphql/schema/cms/unpublishEntryResolver.js +37 -49
  945. package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -1
  946. package/graphql/schema/cms/updateEntryResolver.js +38 -51
  947. package/graphql/schema/cms/updateEntryResolver.js.map +1 -1
  948. package/graphql/schema/contentEntries.js +218 -305
  949. package/graphql/schema/contentEntries.js.map +1 -1
  950. package/graphql/schema/contentModelGroups.js +70 -89
  951. package/graphql/schema/contentModelGroups.js.map +1 -1
  952. package/graphql/schema/contentModels.js +92 -105
  953. package/graphql/schema/contentModels.js.map +1 -1
  954. package/graphql/schema/createFieldResolvers.js +67 -121
  955. package/graphql/schema/createFieldResolvers.js.map +1 -1
  956. package/graphql/schema/createManageResolvers.js +70 -86
  957. package/graphql/schema/createManageResolvers.js.map +1 -1
  958. package/graphql/schema/createManageSDL.js +48 -58
  959. package/graphql/schema/createManageSDL.js.map +1 -1
  960. package/graphql/schema/createPreviewResolvers.js +24 -27
  961. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  962. package/graphql/schema/createReadResolvers.js +26 -35
  963. package/graphql/schema/createReadResolvers.js.map +1 -1
  964. package/graphql/schema/createReadSDL.js +35 -42
  965. package/graphql/schema/createReadSDL.js.map +1 -1
  966. package/graphql/schema/createSingularResolvers.js +32 -40
  967. package/graphql/schema/createSingularResolvers.js.map +1 -1
  968. package/graphql/schema/createSingularSDL.js +32 -44
  969. package/graphql/schema/createSingularSDL.js.map +1 -1
  970. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +36 -48
  971. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
  972. package/graphql/schema/resolvers/manage/resolveCreate.js +9 -10
  973. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  974. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +9 -10
  975. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  976. package/graphql/schema/resolvers/manage/resolveDelete.js +18 -28
  977. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  978. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +11 -12
  979. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
  980. package/graphql/schema/resolvers/manage/resolveGet.js +41 -53
  981. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  982. package/graphql/schema/resolvers/manage/resolveGetByIds.js +9 -10
  983. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  984. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +9 -10
  985. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  986. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +9 -10
  987. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
  988. package/graphql/schema/resolvers/manage/resolveList.js +10 -11
  989. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  990. package/graphql/schema/resolvers/manage/resolveListDeleted.js +10 -11
  991. package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -1
  992. package/graphql/schema/resolvers/manage/resolveMove.js +11 -17
  993. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
  994. package/graphql/schema/resolvers/manage/resolvePublish.js +9 -10
  995. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  996. package/graphql/schema/resolvers/manage/resolveRepublish.js +10 -11
  997. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  998. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +9 -10
  999. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -1
  1000. package/graphql/schema/resolvers/manage/resolveUnpublish.js +10 -11
  1001. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  1002. package/graphql/schema/resolvers/manage/resolveUpdate.js +9 -10
  1003. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  1004. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
  1005. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +12 -0
  1006. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
  1007. package/graphql/schema/resolvers/manage/resolveValidate.js +10 -11
  1008. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -1
  1009. package/graphql/schema/resolvers/preview/resolveGet.js +13 -16
  1010. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  1011. package/graphql/schema/resolvers/preview/resolveList.js +10 -11
  1012. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  1013. package/graphql/schema/resolvers/read/resolveGet.js +13 -16
  1014. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  1015. package/graphql/schema/resolvers/read/resolveList.js +10 -11
  1016. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  1017. package/graphql/schema/resolvers/singular/resolveGet.js +7 -10
  1018. package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -1
  1019. package/graphql/schema/resolvers/singular/resolveUpdate.js +7 -10
  1020. package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -1
  1021. package/graphql/schema/schemaPlugins.js +81 -97
  1022. package/graphql/schema/schemaPlugins.js.map +1 -1
  1023. package/index.js +17 -23
  1024. package/index.js.map +1 -1
  1025. package/legacy/abstractions.js +5 -22
  1026. package/legacy/abstractions.js.map +1 -1
  1027. package/package.json +25 -25
  1028. package/parameters/context.js +4 -7
  1029. package/parameters/context.js.map +1 -1
  1030. package/parameters/header.js +10 -22
  1031. package/parameters/header.js.map +1 -1
  1032. package/parameters/index.js +0 -2
  1033. package/parameters/path.js +9 -19
  1034. package/parameters/path.js.map +1 -1
  1035. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js +6 -5
  1036. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -1
  1037. package/plugins/CmsGraphQLSchemaPlugin/index.js +0 -2
  1038. package/plugins/CmsGroupPlugin.js +15 -26
  1039. package/plugins/CmsGroupPlugin.js.map +1 -1
  1040. package/plugins/CmsModelFieldConverterPlugin.js +5 -5
  1041. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  1042. package/plugins/CmsModelPlugin.js +135 -213
  1043. package/plugins/CmsModelPlugin.js.map +1 -1
  1044. package/plugins/CmsParametersPlugin.js +12 -14
  1045. package/plugins/CmsParametersPlugin.js.map +1 -1
  1046. package/plugins/StorageOperationsCmsModelPlugin.js +22 -29
  1047. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
  1048. package/plugins/index.js +0 -2
  1049. package/types/context.d.ts +6 -2
  1050. package/types/context.js +0 -3
  1051. package/types/fields/dynamicZoneField.js +0 -3
  1052. package/types/fields/objectField.js +0 -3
  1053. package/types/identity.js +0 -3
  1054. package/types/index.js +0 -2
  1055. package/types/model.js +0 -3
  1056. package/types/modelAst.js +0 -3
  1057. package/types/modelField.js +0 -3
  1058. package/types/modelGroup.js +0 -3
  1059. package/types/plugins.js +0 -3
  1060. package/types/types.d.ts +4 -9
  1061. package/types/types.js +6 -218
  1062. package/types/types.js.map +1 -1
  1063. package/utils/caching/Cache.js +28 -35
  1064. package/utils/caching/Cache.js.map +1 -1
  1065. package/utils/caching/CacheKey.js +13 -14
  1066. package/utils/caching/CacheKey.js.map +1 -1
  1067. package/utils/caching/index.js +0 -2
  1068. package/utils/caching/types.js +0 -3
  1069. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +12 -15
  1070. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
  1071. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +13 -12
  1072. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
  1073. package/utils/contentModelAst/CmsModelToAstConverter.js +14 -18
  1074. package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -1
  1075. package/utils/contentModelAst/index.js +0 -2
  1076. package/utils/converters/Converter.js +35 -44
  1077. package/utils/converters/Converter.js.map +1 -1
  1078. package/utils/converters/ConverterCollection.js +70 -107
  1079. package/utils/converters/ConverterCollection.js.map +1 -1
  1080. package/utils/converters/types.js +0 -3
  1081. package/utils/converters/valueKeyFromStorageConverter.js +13 -19
  1082. package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
  1083. package/utils/converters/valueKeyStorageConverter.js +18 -21
  1084. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  1085. package/utils/converters/valueKeyToStorageConverter.js +13 -19
  1086. package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
  1087. package/utils/createModelField.js +24 -44
  1088. package/utils/createModelField.js.map +1 -1
  1089. package/utils/createTypeFromFields.js +30 -52
  1090. package/utils/createTypeFromFields.js.map +1 -1
  1091. package/utils/createTypeName.js +2 -3
  1092. package/utils/createTypeName.js.map +1 -1
  1093. package/utils/date.js +9 -24
  1094. package/utils/date.js.map +1 -1
  1095. package/utils/entryStorage.js +57 -90
  1096. package/utils/entryStorage.js.map +1 -1
  1097. package/utils/errors.js +7 -7
  1098. package/utils/errors.js.map +1 -1
  1099. package/utils/filterAsync.js +8 -9
  1100. package/utils/filterAsync.js.map +1 -1
  1101. package/utils/getBaseFieldType.js +4 -5
  1102. package/utils/getBaseFieldType.js.map +1 -1
  1103. package/utils/getEntryDescription.js +9 -14
  1104. package/utils/getEntryDescription.js.map +1 -1
  1105. package/utils/getEntryImage.js +9 -14
  1106. package/utils/getEntryImage.js.map +1 -1
  1107. package/utils/getEntryTitle.js +11 -26
  1108. package/utils/getEntryTitle.js.map +1 -1
  1109. package/utils/getSchemaFromFieldPlugins.js +27 -39
  1110. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  1111. package/utils/identity.js +9 -16
  1112. package/utils/identity.js.map +1 -1
  1113. package/utils/incrementEntryIdVersion.js +14 -18
  1114. package/utils/incrementEntryIdVersion.js.map +1 -1
  1115. package/utils/index.js +0 -2
  1116. package/utils/isHeadlessCmsReady.js +5 -14
  1117. package/utils/isHeadlessCmsReady.js.map +1 -1
  1118. package/utils/modelFieldTraverser/ModelFieldTraverser.js +27 -29
  1119. package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -1
  1120. package/utils/modelFieldTraverser/index.js +0 -2
  1121. package/utils/renderFields.js +26 -49
  1122. package/utils/renderFields.js.map +1 -1
  1123. package/utils/renderGetFilterFields.js +31 -37
  1124. package/utils/renderGetFilterFields.js.map +1 -1
  1125. package/utils/renderInputFields.js +23 -40
  1126. package/utils/renderInputFields.js.map +1 -1
  1127. package/utils/renderListFilterFields.js +60 -56
  1128. package/utils/renderListFilterFields.js.map +1 -1
  1129. package/utils/renderSortEnum.js +21 -23
  1130. package/utils/renderSortEnum.js.map +1 -1
  1131. package/utils/toSlug.js +6 -7
  1132. package/utils/toSlug.js.map +1 -1
  1133. package/abstractions/entryHooks/index.js.map +0 -1
  1134. package/abstractions/index.js.map +0 -1
  1135. package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +0 -19
  1136. package/crud/contentEntry/entryDataFactories/createEntryData.js +0 -263
  1137. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +0 -1
  1138. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +0 -22
  1139. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +0 -165
  1140. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +0 -1
  1141. package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +0 -14
  1142. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +0 -59
  1143. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +0 -1
  1144. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +0 -13
  1145. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +0 -54
  1146. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +0 -1
  1147. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +0 -11
  1148. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +0 -34
  1149. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +0 -1
  1150. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +0 -19
  1151. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +0 -131
  1152. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +0 -1
  1153. package/crud/contentEntry/entryDataFactories/index.d.ts +0 -8
  1154. package/crud/contentEntry/entryDataFactories/index.js +0 -10
  1155. package/crud/contentEntry/entryDataFactories/index.js.map +0 -1
  1156. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +0 -32
  1157. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +0 -1
  1158. package/crud/contentEntry/entryDataFactories/statuses.js +0 -6
  1159. package/crud/contentEntry/entryDataFactories/statuses.js.map +0 -1
  1160. package/crud/contentEntry/entryDataFactories/system.js +0 -14
  1161. package/crud/contentEntry/entryDataFactories/system.js.map +0 -1
  1162. package/export/index.js.map +0 -1
  1163. package/exports/api/cms/entry.js.map +0 -1
  1164. package/exports/api/cms/graphql.js.map +0 -1
  1165. package/exports/api/cms/group.js.map +0 -1
  1166. package/exports/api/cms/model.js.map +0 -1
  1167. package/exports/api/cms/storage.js.map +0 -1
  1168. package/exports/api/cms/validation.js.map +0 -1
  1169. package/extensions/entryHooks/index.js.map +0 -1
  1170. package/features/contentEntry/ContentEntryTraverser/index.js.map +0 -1
  1171. package/features/contentEntry/CreateEntry/index.js.map +0 -1
  1172. package/features/contentEntry/CreateEntryRevisionFrom/index.js.map +0 -1
  1173. package/features/contentEntry/DeleteEntry/index.js.map +0 -1
  1174. package/features/contentEntry/DeleteEntryRevision/index.js.map +0 -1
  1175. package/features/contentEntry/DeleteMultipleEntries/index.js.map +0 -1
  1176. package/features/contentEntry/GetEntriesByIds/index.js.map +0 -1
  1177. package/features/contentEntry/GetEntry/index.js.map +0 -1
  1178. package/features/contentEntry/GetEntryById/index.js.map +0 -1
  1179. package/features/contentEntry/GetLatestEntriesByIds/index.js.map +0 -1
  1180. package/features/contentEntry/GetLatestRevisionByEntryId/index.js.map +0 -1
  1181. package/features/contentEntry/GetPreviousRevisionByEntryId/index.js.map +0 -1
  1182. package/features/contentEntry/GetPublishedEntriesByIds/index.js.map +0 -1
  1183. package/features/contentEntry/GetPublishedRevisionByEntryId/index.js.map +0 -1
  1184. package/features/contentEntry/GetRevisionById/index.js.map +0 -1
  1185. package/features/contentEntry/GetRevisionsByEntryId/index.js.map +0 -1
  1186. package/features/contentEntry/GetSingletonEntry/index.js.map +0 -1
  1187. package/features/contentEntry/GetUniqueFieldValues/index.js.map +0 -1
  1188. package/features/contentEntry/ListEntries/index.js.map +0 -1
  1189. package/features/contentEntry/MoveEntry/index.js.map +0 -1
  1190. package/features/contentEntry/PublishEntry/index.js.map +0 -1
  1191. package/features/contentEntry/RepublishEntry/index.js.map +0 -1
  1192. package/features/contentEntry/RestoreEntryFromBin/index.js.map +0 -1
  1193. package/features/contentEntry/UnpublishEntry/index.js.map +0 -1
  1194. package/features/contentEntry/UpdateEntry/index.js.map +0 -1
  1195. package/features/contentEntry/UpdateSingletonEntry/index.js.map +0 -1
  1196. package/features/contentEntry/ValidateEntry/index.js.map +0 -1
  1197. package/features/contentModel/CreateModel/index.js.map +0 -1
  1198. package/features/contentModel/CreateModelFrom/index.js.map +0 -1
  1199. package/features/contentModel/DeleteModel/index.js.map +0 -1
  1200. package/features/contentModel/GetModel/index.js.map +0 -1
  1201. package/features/contentModel/ListModels/index.js.map +0 -1
  1202. package/features/contentModel/ModelFieldCompression/index.js.map +0 -1
  1203. package/features/contentModel/ModelToAstConverter/index.js.map +0 -1
  1204. package/features/contentModel/UpdateModel/index.js.map +0 -1
  1205. package/features/contentModelGroup/CreateGroup/index.js.map +0 -1
  1206. package/features/contentModelGroup/DeleteGroup/index.js.map +0 -1
  1207. package/features/contentModelGroup/GetGroup/index.js.map +0 -1
  1208. package/features/contentModelGroup/ListGroups/index.js.map +0 -1
  1209. package/features/contentModelGroup/UpdateGroup/index.js.map +0 -1
  1210. package/features/contentModelGroup/shared/index.js.map +0 -1
  1211. package/features/graphql/index.js.map +0 -1
  1212. package/features/modelBuilder/fields/FieldBuilder.js.map +0 -1
  1213. package/features/modelBuilder/fields/fieldTypeValidator.js.map +0 -1
  1214. package/features/modelBuilder/index.js.map +0 -1
  1215. package/features/storage/index.js.map +0 -1
  1216. package/features/validation/index.js.map +0 -1
  1217. package/graphql/schema/cms/helpers/index.js.map +0 -1
  1218. package/graphql/schema/cms/helpers.js.map +0 -1
  1219. package/graphql/schema/cms/resolvers/index.js.map +0 -1
  1220. package/graphql/schema/cms/typeDefs/index.js.map +0 -1
  1221. package/parameters/index.js.map +0 -1
  1222. package/plugins/CmsGraphQLSchemaPlugin/index.js.map +0 -1
  1223. package/plugins/index.js.map +0 -1
  1224. package/types/context.js.map +0 -1
  1225. package/types/fields/dynamicZoneField.js.map +0 -1
  1226. package/types/fields/objectField.js.map +0 -1
  1227. package/types/identity.js.map +0 -1
  1228. package/types/index.js.map +0 -1
  1229. package/types/model.js.map +0 -1
  1230. package/types/modelAst.js.map +0 -1
  1231. package/types/modelField.js.map +0 -1
  1232. package/types/modelGroup.js.map +0 -1
  1233. package/types/plugins.js.map +0 -1
  1234. package/utils/caching/index.js.map +0 -1
  1235. package/utils/caching/types.js.map +0 -1
  1236. package/utils/contentModelAst/index.js.map +0 -1
  1237. package/utils/converters/types.js.map +0 -1
  1238. package/utils/index.js.map +0 -1
  1239. package/utils/modelFieldTraverser/index.js.map +0 -1
  1240. /package/{crud → features}/contentEntry/entryDataFactories/statuses.d.ts +0 -0
  1241. /package/{crud → features}/contentEntry/entryDataFactories/system.d.ts +0 -0
@@ -1,18 +1,19 @@
1
- /**
2
- * This list is to disallow creating models that might interfere with GraphQL schema creation.
3
- * Add more if required.
4
- */
5
- export const disallowedEnding = ["Response", "List", "Meta", "Input", "Sorter", "RefType"];
6
- export const isModelEndingAllowed = apiName => {
7
- for (const ending of disallowedEnding) {
8
- const re = new RegExp(`${ending}$`);
9
- const matched = apiName.match(re);
10
- if (matched === null) {
11
- continue;
1
+ const disallowedEnding = [
2
+ "Response",
3
+ "List",
4
+ "Meta",
5
+ "Input",
6
+ "Sorter",
7
+ "RefType"
8
+ ];
9
+ const isModelEndingAllowed = (apiName)=>{
10
+ for (const ending of disallowedEnding){
11
+ const re = new RegExp(`${ending}$`);
12
+ const matched = apiName.match(re);
13
+ if (null !== matched) return false;
12
14
  }
13
- return false;
14
- }
15
- return true;
15
+ return true;
16
16
  };
17
+ export { disallowedEnding, isModelEndingAllowed };
17
18
 
18
19
  //# sourceMappingURL=isModelEndingAllowed.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["disallowedEnding","isModelEndingAllowed","apiName","ending","re","RegExp","matched","match"],"sources":["isModelEndingAllowed.ts"],"sourcesContent":["/**\n * This list is to disallow creating models that might interfere with GraphQL schema creation.\n * Add more if required.\n */\nexport const disallowedEnding: string[] = [\n \"Response\",\n \"List\",\n \"Meta\",\n \"Input\",\n \"Sorter\",\n \"RefType\"\n];\n\nexport const isModelEndingAllowed = (apiName: string): boolean => {\n for (const ending of disallowedEnding) {\n const re = new RegExp(`${ending}$`);\n const matched = apiName.match(re);\n if (matched === null) {\n continue;\n }\n return false;\n }\n return true;\n};\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA,OAAO,MAAMA,gBAA0B,GAAG,CACtC,UAAU,EACV,MAAM,EACN,MAAM,EACN,OAAO,EACP,QAAQ,EACR,SAAS,CACZ;AAED,OAAO,MAAMC,oBAAoB,GAAIC,OAAe,IAAc;EAC9D,KAAK,MAAMC,MAAM,IAAIH,gBAAgB,EAAE;IACnC,MAAMI,EAAE,GAAG,IAAIC,MAAM,CAAC,GAAGF,MAAM,GAAG,CAAC;IACnC,MAAMG,OAAO,GAAGJ,OAAO,CAACK,KAAK,CAACH,EAAE,CAAC;IACjC,IAAIE,OAAO,KAAK,IAAI,EAAE;MAClB;IACJ;IACA,OAAO,KAAK;EAChB;EACA,OAAO,IAAI;AACf,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/contentModel/validation/isModelEndingAllowed.js","sources":["../../../../src/domain/contentModel/validation/isModelEndingAllowed.ts"],"sourcesContent":["/**\n * This list is to disallow creating models that might interfere with GraphQL schema creation.\n * Add more if required.\n */\nexport const disallowedEnding: string[] = [\n \"Response\",\n \"List\",\n \"Meta\",\n \"Input\",\n \"Sorter\",\n \"RefType\"\n];\n\nexport const isModelEndingAllowed = (apiName: string): boolean => {\n for (const ending of disallowedEnding) {\n const re = new RegExp(`${ending}$`);\n const matched = apiName.match(re);\n if (matched === null) {\n continue;\n }\n return false;\n }\n return true;\n};\n"],"names":["disallowedEnding","isModelEndingAllowed","apiName","ending","re","RegExp","matched"],"mappings":"AAIO,MAAMA,mBAA6B;IACtC;IACA;IACA;IACA;IACA;IACA;CACH;AAEM,MAAMC,uBAAuB,CAACC;IACjC,KAAK,MAAMC,UAAUH,iBAAkB;QACnC,MAAMI,KAAK,IAAIC,OAAO,GAAGF,OAAO,CAAC,CAAC;QAClC,MAAMG,UAAUJ,QAAQ,KAAK,CAACE;QAC9B,IAAIE,AAAY,SAAZA,SAGJ,OAAO;IACX;IACA,OAAO;AACX"}
@@ -1,6 +1,6 @@
1
- import gql from "graphql-tag";
1
+ import graphql_tag from "graphql-tag";
2
2
  import { generateAlphaNumericId } from "@webiny/utils";
3
- import WebinyError from "@webiny/error";
3
+ import _webiny_error from "@webiny/error";
4
4
  import { createManageSDL } from "../../../graphql/schema/createManageSDL.js";
5
5
  import { createFieldStorageId } from "../createFieldStorageId.js";
6
6
  import { getBaseFieldType } from "../../../utils/getBaseFieldType.js";
@@ -11,257 +11,155 @@ import { CmsGraphQLSchemaPlugin } from "../../../plugins/index.js";
11
11
  import { buildSchemaPlugins } from "../../../graphql/buildSchemaPlugins.js";
12
12
  import { createExecutableSchema } from "../../../graphql/createExecutableSchema.js";
13
13
  import { CmsGraphQLSchemaSorter, CmsModelFieldToGraphQLRegistry } from "../../../features/graphql/index.js";
14
- const extractInvalidField = (model, err) => {
15
- const sdl = err.source?.body || "";
16
-
17
- /**
18
- * Find the invalid type
19
- */
20
- const {
21
- line: lineNumber
22
- } = err.locations ? err.locations[0] : {
23
- line: 0
24
- };
25
- const sdlLines = sdl.split("\n");
26
- let sdlLine;
27
- let gqlType;
28
- for (let i = lineNumber; i > 0; i--) {
29
- if (sdlLine && sdlLine.includes("type ")) {
30
- gqlType = sdlLine.match(/type\s+(.*?)\s+{/);
31
- break;
32
- }
33
- sdlLine = sdlLines[i];
34
- }
35
- let invalidField = undefined;
36
- if (Array.isArray(gqlType)) {
37
- const fieldRegex = new RegExp(`([^\\s+].*?):\\s+\\[?${gqlType[1]}!?\\]?`);
38
- const matched = sdl.match(fieldRegex);
39
- if (matched) {
40
- invalidField = matched[1];
14
+ const extractInvalidField = (model, err)=>{
15
+ const sdl = err.source?.body || "";
16
+ const { line: lineNumber } = err.locations ? err.locations[0] : {
17
+ line: 0
18
+ };
19
+ const sdlLines = sdl.split("\n");
20
+ let sdlLine;
21
+ let gqlType;
22
+ for(let i = lineNumber; i > 0; i--){
23
+ if (sdlLine && sdlLine.includes("type ")) {
24
+ gqlType = sdlLine.match(/type\s+(.*?)\s+{/);
25
+ break;
26
+ }
27
+ sdlLine = sdlLines[i];
41
28
  }
42
- }
43
- let message = `See more details in the browser console.`;
44
- if (invalidField) {
45
- message = `Please review the definition of "${invalidField}" field.`;
46
- }
47
- return {
48
- data: {
49
- modelId: model.modelId,
50
- sdl,
51
- invalidField
52
- },
53
- code: "INVALID_MODEL_DEFINITION",
54
- message: [`Model "${model.modelId}" was not saved!`, message].join("\n")
55
- };
56
- };
57
- const createValidateChildFields = registry => {
58
- return ({
59
- fields,
60
- originalFields
61
- }) => {
62
- if (fields.length === 0 && originalFields.length === 0) {
63
- return;
29
+ let invalidField;
30
+ if (Array.isArray(gqlType)) {
31
+ const fieldRegex = new RegExp(`([^\\s+].*?):\\s+\\[?${gqlType[1]}!?\\]?`);
32
+ const matched = sdl.match(fieldRegex);
33
+ if (matched) invalidField = matched[1];
64
34
  }
65
- validateFields({
66
- fields,
67
- originalFields,
68
- registry
69
- });
70
- };
35
+ let message = "See more details in the browser console.";
36
+ if (invalidField) message = `Please review the definition of "${invalidField}" field.`;
37
+ return {
38
+ data: {
39
+ modelId: model.modelId,
40
+ sdl,
41
+ invalidField
42
+ },
43
+ code: "INVALID_MODEL_DEFINITION",
44
+ message: [
45
+ `Model "${model.modelId}" was not saved!`,
46
+ message
47
+ ].join("\n")
48
+ };
71
49
  };
72
- const validateFields = params => {
73
- const {
74
- registry,
75
- fields,
76
- originalFields
77
- } = params;
78
- const idList = [];
79
- const fieldIdList = [];
80
- const storageIdList = [];
81
- for (const field of fields) {
82
- const baseType = getBaseFieldType(field);
83
- const fieldImpl = registry.get(baseType);
84
- if (!fieldImpl) {
85
- throw new Error(`Cannot update content model because of the unknown "${baseType}" field.`);
86
- }
87
- /**
88
- * Check the field's id against existing ones.
89
- * There cannot be two fields with the same id.
90
- */
91
- if (idList.includes(field.id)) {
92
- throw new WebinyError(`Cannot update content model because field "${field.storageId || field.fieldId}" has id "${field.id}", which is already used.`);
93
- }
94
- idList.push(field.id);
95
- const originalField = originalFields.find(f => f.id === field.id);
96
- /**
97
- * Field MUST have an fieldId defined.
98
- */
99
- if (!field.fieldId) {
100
- throw new WebinyError(`Field does not have an "fieldId" defined.`, "MISSING_FIELD_ID", {
101
- field
102
- });
103
- }
104
- /**
105
- * If storageId does not match a certain pattern, add that pattern, but only if field is not locked (used) already.
106
- * This is to avoid errors in the already installed systems.
107
- *
108
- * Why are we using the @?
109
- *
110
- * It is not part of special characters for the query syntax in the Lucene.
111
- *
112
- * Relevant links:
113
- * https://lucene.apache.org/core/3_4_0/queryparsersyntax.html
114
- * https://discuss.elastic.co/t/special-characters-in-field-names/10658/3
115
- * https://discuss.elastic.co/t/illegal-characters-in-elasticsearch-field-names/17196/2
116
- */
117
- if (!field.storageId) {
118
- /**
119
- * When having an original field, set the storageId to value from the originalField
120
- */
121
- if (originalField) {
122
- field.storageId = originalField.storageId;
123
- } else {
124
- field.storageId = createFieldStorageId(field);
125
- }
126
- }
127
- /**
128
- * Check the field's fieldId against existing ones.
129
- * There cannot be two fields with the same fieldId - outside world identifier.
130
- */
131
- if (fieldIdList.includes(field.fieldId)) {
132
- throw new WebinyError(`Cannot update content model because field "${field.storageId}" has fieldId "${field.fieldId}", which is already used.`);
133
- }
134
- fieldIdList.push(field.fieldId);
135
- /**
136
- * Check the field's storageId against the existing ones.
137
- * There cannot be two fields with the same storageId.
138
- */
139
- if (storageIdList.includes(field.storageId)) {
140
- throw new WebinyError(`Cannot update content model because field "${field.label}" has storageId "${field.storageId}", which is already used.`);
50
+ const createValidateChildFields = (registry)=>({ fields, originalFields })=>{
51
+ if (0 === fields.length && 0 === originalFields.length) return;
52
+ validateFields({
53
+ fields,
54
+ originalFields,
55
+ registry
56
+ });
57
+ };
58
+ const validateFields = (params)=>{
59
+ const { registry, fields, originalFields } = params;
60
+ const idList = [];
61
+ const fieldIdList = [];
62
+ const storageIdList = [];
63
+ for (const field of fields){
64
+ const baseType = getBaseFieldType(field);
65
+ const fieldImpl = registry.get(baseType);
66
+ if (!fieldImpl) throw new Error(`Cannot update content model because of the unknown "${baseType}" field.`);
67
+ if (idList.includes(field.id)) throw new _webiny_error(`Cannot update content model because field "${field.storageId || field.fieldId}" has id "${field.id}", which is already used.`);
68
+ idList.push(field.id);
69
+ const originalField = originalFields.find((f)=>f.id === field.id);
70
+ if (!field.fieldId) throw new _webiny_error('Field does not have an "fieldId" defined.', "MISSING_FIELD_ID", {
71
+ field
72
+ });
73
+ if (!field.storageId) if (originalField) field.storageId = originalField.storageId;
74
+ else field.storageId = createFieldStorageId(field);
75
+ if (fieldIdList.includes(field.fieldId)) throw new _webiny_error(`Cannot update content model because field "${field.storageId}" has fieldId "${field.fieldId}", which is already used.`);
76
+ fieldIdList.push(field.fieldId);
77
+ if (storageIdList.includes(field.storageId)) throw new _webiny_error(`Cannot update content model because field "${field.label}" has storageId "${field.storageId}", which is already used.`);
78
+ storageIdList.push(field.storageId);
79
+ if (!fieldImpl.validateChildFields) continue;
80
+ const validateChildFields = createValidateChildFields(registry);
81
+ fieldImpl.validateChildFields({
82
+ field,
83
+ originalField,
84
+ validate: validateChildFields
85
+ });
141
86
  }
142
- storageIdList.push(field.storageId);
143
- /**
144
- * There might be some plugins which allow child fields.
145
- * We use this method to validate them as well.
146
- */
147
- if (!fieldImpl.validateChildFields) {
148
- continue;
149
- }
150
- const validateChildFields = createValidateChildFields(registry);
151
- fieldImpl.validateChildFields({
152
- field,
153
- originalField,
154
- validate: validateChildFields
155
- });
156
- }
157
87
  };
158
- const createGraphQLSchema = async params => {
159
- const {
160
- context,
161
- model
162
- } = params;
163
- const models = await context.security.withoutAuthorization(async () => {
164
- return (await context.cms.listModels()).filter(model => {
165
- return model.isPrivate !== true;
88
+ const createGraphQLSchema = async (params)=>{
89
+ const { context, model } = params;
90
+ const models = await context.security.withoutAuthorization(async ()=>(await context.cms.listModels()).filter((model)=>true !== model.isPrivate));
91
+ const modelPlugins = await buildSchemaPlugins({
92
+ context,
93
+ models: models.filter((m)=>m.modelId !== model.modelId).concat([
94
+ model
95
+ ])
166
96
  });
167
- });
168
- const modelPlugins = await buildSchemaPlugins({
169
- context,
170
- /**
171
- * Must remove the current model from the list, as we are possibly updating it - there would be two if we didn't.
172
- */
173
- models: models.filter(m => m.modelId !== model.modelId).concat([model])
174
- });
175
- const plugins = context.plugins.byType(CmsGraphQLSchemaPlugin.type).filter(plugin => plugin.isApplicable(context)).reduce((collection, plugin) => {
176
- const name = plugin.name || `${CmsGraphQLSchemaPlugin.type}-${generateAlphaNumericId(16)}`;
177
- collection[name] = plugin;
178
- return collection;
179
- }, {});
180
- for (const plugin of modelPlugins) {
181
- const name = plugin.name || `${plugin.type}-${generateAlphaNumericId(16)}`;
182
- plugins[name] = plugin;
183
- }
184
- return createExecutableSchema({
185
- plugins: Object.values(plugins)
186
- });
187
- };
188
- const extractErrorObject = error => {
189
- return ["message", "code", "data", "stack"].reduce((output, key) => {
190
- if (!error[key]) {
191
- return output;
97
+ const plugins = context.plugins.byType(CmsGraphQLSchemaPlugin.type).filter((plugin)=>plugin.isApplicable(context)).reduce((collection, plugin)=>{
98
+ const name = plugin.name || `${CmsGraphQLSchemaPlugin.type}-${generateAlphaNumericId(16)}`;
99
+ collection[name] = plugin;
100
+ return collection;
101
+ }, {});
102
+ for (const plugin of modelPlugins){
103
+ const name = plugin.name || `${plugin.type}-${generateAlphaNumericId(16)}`;
104
+ plugins[name] = plugin;
192
105
  }
193
- output[key] = error[key];
194
- return output;
195
- }, {});
106
+ return createExecutableSchema({
107
+ plugins: Object.values(plugins)
108
+ });
196
109
  };
197
- export const validateModelFields = async params => {
198
- const {
199
- models,
200
- model,
201
- original,
202
- context
203
- } = params;
204
- const {
205
- titleFieldId,
206
- descriptionFieldId,
207
- imageFieldId
208
- } = model;
209
-
210
- /**
211
- * There should be fields/locked fields in either model or data to be updated.
212
- */
213
- const {
214
- fields = []
215
- } = model;
216
-
217
- /**
218
- * Let's inspect the fields of the received content model. We prevent saving of a content model if it
219
- * contains a field for which a "cms-model-field-to-graphql" plugin does not exist on the backend.
220
- */
221
- const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);
222
- const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);
223
- validateFields({
224
- fields,
225
- originalFields: original?.fields || [],
226
- registry: fieldRegistry
227
- });
228
- if (fields.length) {
229
- /**
230
- * Make sure that this model can be safely converted to a GraphQL SDL
231
- */
232
- const schema = createManageSDL({
233
- models,
234
- model,
235
- fieldRegistry,
236
- sorters
110
+ const extractErrorObject = (error)=>[
111
+ "message",
112
+ "code",
113
+ "data",
114
+ "stack"
115
+ ].reduce((output, key)=>{
116
+ if (!error[key]) return output;
117
+ output[key] = error[key];
118
+ return output;
119
+ }, {});
120
+ const validateModelFields = async (params)=>{
121
+ const { models, model, original, context } = params;
122
+ const { titleFieldId, descriptionFieldId, imageFieldId } = model;
123
+ const { fields = [] } = model;
124
+ const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);
125
+ const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);
126
+ validateFields({
127
+ fields,
128
+ originalFields: original?.fields || [],
129
+ registry: fieldRegistry
237
130
  });
238
- try {
239
- gql(schema);
240
- } catch (err) {
241
- throw new WebinyError(extractInvalidField(model, err));
242
- }
243
- /**
244
- *
245
- */
246
- try {
247
- await createGraphQLSchema({
248
- context,
249
- model
250
- });
251
- } catch (err) {
252
- throw new WebinyError({
253
- message: "Cannot generate GraphQL schema when testing with the given model. Please check the response for more details.",
254
- code: "GRAPHQL_SCHEMA_ERROR",
255
- data: {
256
- modelId: model.modelId,
257
- error: extractErrorObject(err)
131
+ if (fields.length) {
132
+ const schema = createManageSDL({
133
+ models,
134
+ model,
135
+ fieldRegistry,
136
+ sorters
137
+ });
138
+ try {
139
+ graphql_tag(schema);
140
+ } catch (err) {
141
+ throw new _webiny_error(extractInvalidField(model, err));
142
+ }
143
+ try {
144
+ await createGraphQLSchema({
145
+ context,
146
+ model
147
+ });
148
+ } catch (err) {
149
+ throw new _webiny_error({
150
+ message: "Cannot generate GraphQL schema when testing with the given model. Please check the response for more details.",
151
+ code: "GRAPHQL_SCHEMA_ERROR",
152
+ data: {
153
+ modelId: model.modelId,
154
+ error: extractErrorObject(err)
155
+ }
156
+ });
258
157
  }
259
- });
260
158
  }
261
- }
262
- model.titleFieldId = getContentModelTitleFieldId(fields, titleFieldId);
263
- model.descriptionFieldId = getContentModelDescriptionFieldId(fields, descriptionFieldId);
264
- model.imageFieldId = getContentModelImageFieldId(fields, imageFieldId);
159
+ model.titleFieldId = getContentModelTitleFieldId(fields, titleFieldId);
160
+ model.descriptionFieldId = getContentModelDescriptionFieldId(fields, descriptionFieldId);
161
+ model.imageFieldId = getContentModelImageFieldId(fields, imageFieldId);
265
162
  };
163
+ export { validateModelFields };
266
164
 
267
165
  //# sourceMappingURL=modelFields.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["gql","generateAlphaNumericId","WebinyError","createManageSDL","createFieldStorageId","getBaseFieldType","getContentModelTitleFieldId","getContentModelDescriptionFieldId","getContentModelImageFieldId","CmsGraphQLSchemaPlugin","buildSchemaPlugins","createExecutableSchema","CmsGraphQLSchemaSorter","CmsModelFieldToGraphQLRegistry","extractInvalidField","model","err","sdl","source","body","line","lineNumber","locations","sdlLines","split","sdlLine","gqlType","i","includes","match","invalidField","undefined","Array","isArray","fieldRegex","RegExp","matched","message","data","modelId","code","join","createValidateChildFields","registry","fields","originalFields","length","validateFields","params","idList","fieldIdList","storageIdList","field","baseType","fieldImpl","get","Error","id","storageId","fieldId","push","originalField","find","f","label","validateChildFields","validate","createGraphQLSchema","context","models","security","withoutAuthorization","cms","listModels","filter","isPrivate","modelPlugins","m","concat","plugins","byType","type","plugin","isApplicable","reduce","collection","name","Object","values","extractErrorObject","error","output","key","validateModelFields","original","titleFieldId","descriptionFieldId","imageFieldId","fieldRegistry","container","resolve","sorters","resolveAll","schema"],"sources":["modelFields.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { generateAlphaNumericId } from \"@webiny/utils\";\nimport WebinyError from \"@webiny/error\";\nimport type { CmsContext, CmsModel, CmsModelField } from \"~/types/index.js\";\nimport type { ValidateChildFieldsValidate } from \"~/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js\";\nimport { createManageSDL } from \"~/graphql/schema/createManageSDL.js\";\nimport { createFieldStorageId } from \"../createFieldStorageId.js\";\nimport type { GraphQLError } from \"graphql\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType.js\";\nimport { getContentModelTitleFieldId } from \"./fields/titleField.js\";\nimport { getContentModelDescriptionFieldId } from \"./fields/descriptionField.js\";\nimport { getContentModelImageFieldId } from \"./fields/imageField.js\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { buildSchemaPlugins } from \"~/graphql/buildSchemaPlugins.js\";\nimport { createExecutableSchema } from \"~/graphql/createExecutableSchema.js\";\nimport {\n CmsGraphQLSchemaSorter,\n CmsModelFieldToGraphQLRegistry\n} from \"~/features/graphql/index.js\";\n\nconst extractInvalidField = (model: CmsModel, err: GraphQLError) => {\n const sdl = err.source?.body || \"\";\n\n /**\n * Find the invalid type\n */\n const { line: lineNumber } = err.locations\n ? err.locations[0]\n : {\n line: 0\n };\n const sdlLines = sdl.split(\"\\n\");\n let sdlLine;\n let gqlType;\n for (let i = lineNumber; i > 0; i--) {\n if (sdlLine && sdlLine.includes(\"type \")) {\n gqlType = sdlLine.match(/type\\s+(.*?)\\s+{/);\n break;\n }\n\n sdlLine = sdlLines[i];\n }\n\n let invalidField: string | undefined = undefined;\n if (Array.isArray(gqlType)) {\n const fieldRegex = new RegExp(`([^\\\\s+].*?):\\\\s+\\\\[?${gqlType[1]}!?\\\\]?`);\n\n const matched = sdl.match(fieldRegex);\n if (matched) {\n invalidField = matched[1];\n }\n }\n\n let message = `See more details in the browser console.`;\n if (invalidField) {\n message = `Please review the definition of \"${invalidField}\" field.`;\n }\n\n return {\n data: {\n modelId: model.modelId,\n sdl,\n invalidField\n },\n code: \"INVALID_MODEL_DEFINITION\",\n message: [`Model \"${model.modelId}\" was not saved!`, message].join(\"\\n\")\n };\n};\n\nconst createValidateChildFields = (\n registry: CmsModelFieldToGraphQLRegistry.Interface\n): ValidateChildFieldsValidate => {\n return ({ fields, originalFields }) => {\n if (fields.length === 0 && originalFields.length === 0) {\n return;\n }\n validateFields({\n fields,\n originalFields,\n registry\n });\n };\n};\n\ninterface ValidateFieldsParams {\n registry: CmsModelFieldToGraphQLRegistry.Interface;\n fields: CmsModelField[];\n originalFields: CmsModelField[];\n}\n\nconst validateFields = (params: ValidateFieldsParams) => {\n const { registry, fields, originalFields } = params;\n\n const idList: string[] = [];\n const fieldIdList: string[] = [];\n const storageIdList: string[] = [];\n\n for (const field of fields) {\n const baseType = getBaseFieldType(field);\n const fieldImpl = registry.get(baseType);\n\n if (!fieldImpl) {\n throw new Error(\n `Cannot update content model because of the unknown \"${baseType}\" field.`\n );\n }\n /**\n * Check the field's id against existing ones.\n * There cannot be two fields with the same id.\n */\n if (idList.includes(field.id)) {\n throw new WebinyError(\n `Cannot update content model because field \"${\n field.storageId || field.fieldId\n }\" has id \"${field.id}\", which is already used.`\n );\n }\n idList.push(field.id);\n\n const originalField = originalFields.find(f => f.id === field.id);\n /**\n * Field MUST have an fieldId defined.\n */\n if (!field.fieldId) {\n throw new WebinyError(`Field does not have an \"fieldId\" defined.`, \"MISSING_FIELD_ID\", {\n field\n });\n }\n /**\n * If storageId does not match a certain pattern, add that pattern, but only if field is not locked (used) already.\n * This is to avoid errors in the already installed systems.\n *\n * Why are we using the @?\n *\n * It is not part of special characters for the query syntax in the Lucene.\n *\n * Relevant links:\n * https://lucene.apache.org/core/3_4_0/queryparsersyntax.html\n * https://discuss.elastic.co/t/special-characters-in-field-names/10658/3\n * https://discuss.elastic.co/t/illegal-characters-in-elasticsearch-field-names/17196/2\n */\n if (!field.storageId) {\n /**\n * When having an original field, set the storageId to value from the originalField\n */\n if (originalField) {\n field.storageId = originalField.storageId;\n } else {\n field.storageId = createFieldStorageId(field);\n }\n }\n /**\n * Check the field's fieldId against existing ones.\n * There cannot be two fields with the same fieldId - outside world identifier.\n */\n if (fieldIdList.includes(field.fieldId)) {\n throw new WebinyError(\n `Cannot update content model because field \"${field.storageId}\" has fieldId \"${field.fieldId}\", which is already used.`\n );\n }\n fieldIdList.push(field.fieldId);\n /**\n * Check the field's storageId against the existing ones.\n * There cannot be two fields with the same storageId.\n */\n if (storageIdList.includes(field.storageId)) {\n throw new WebinyError(\n `Cannot update content model because field \"${field.label}\" has storageId \"${field.storageId}\", which is already used.`\n );\n }\n storageIdList.push(field.storageId);\n /**\n * There might be some plugins which allow child fields.\n * We use this method to validate them as well.\n */\n if (!fieldImpl.validateChildFields) {\n continue;\n }\n const validateChildFields = createValidateChildFields(registry);\n fieldImpl.validateChildFields({\n field,\n originalField,\n validate: validateChildFields\n });\n }\n};\n\ninterface CreateGraphQLSchemaParams {\n context: CmsContext;\n model: CmsModel;\n}\n\nconst createGraphQLSchema = async (params: CreateGraphQLSchemaParams): Promise<any> => {\n const { context, model } = params;\n\n const models = await context.security.withoutAuthorization(async () => {\n return (await context.cms.listModels()).filter((model): model is CmsModel => {\n return model.isPrivate !== true;\n });\n });\n\n const modelPlugins = await buildSchemaPlugins({\n context,\n /**\n * Must remove the current model from the list, as we are possibly updating it - there would be two if we didn't.\n */\n models: models.filter(m => m.modelId !== model.modelId).concat([model])\n });\n\n const plugins = context.plugins\n .byType<ICmsGraphQLSchemaPlugin>(CmsGraphQLSchemaPlugin.type)\n .filter(plugin => plugin.isApplicable(context))\n .reduce<Record<string, ICmsGraphQLSchemaPlugin>>((collection, plugin) => {\n const name =\n plugin.name || `${CmsGraphQLSchemaPlugin.type}-${generateAlphaNumericId(16)}`;\n collection[name] = plugin;\n return collection;\n }, {});\n for (const plugin of modelPlugins) {\n const name = plugin.name || `${plugin.type}-${generateAlphaNumericId(16)}`;\n plugins[name] = plugin;\n }\n\n return createExecutableSchema({\n plugins: Object.values(plugins)\n });\n};\n\nconst extractErrorObject = (error: any) => {\n return [\"message\", \"code\", \"data\", \"stack\"].reduce<Record<string, any>>((output, key) => {\n if (!error[key]) {\n return output;\n }\n output[key] = error[key];\n return output;\n }, {});\n};\n\ninterface ValidateModelFieldsParams {\n models: CmsModel[];\n model: CmsModel;\n original?: CmsModel;\n context: CmsContext;\n}\n\nexport const validateModelFields = async (params: ValidateModelFieldsParams): Promise<void> => {\n const { models, model, original, context } = params;\n const { titleFieldId, descriptionFieldId, imageFieldId } = model;\n\n /**\n * There should be fields/locked fields in either model or data to be updated.\n */\n const { fields = [] } = model;\n\n /**\n * Let's inspect the fields of the received content model. We prevent saving of a content model if it\n * contains a field for which a \"cms-model-field-to-graphql\" plugin does not exist on the backend.\n */\n const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);\n const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);\n\n validateFields({\n fields,\n originalFields: original?.fields || [],\n registry: fieldRegistry\n });\n\n if (fields.length) {\n /**\n * Make sure that this model can be safely converted to a GraphQL SDL\n */\n const schema = createManageSDL({\n models,\n model,\n fieldRegistry,\n sorters\n });\n\n try {\n gql(schema);\n } catch (err) {\n throw new WebinyError(extractInvalidField(model, err));\n }\n /**\n *\n */\n try {\n await createGraphQLSchema({\n context,\n model\n });\n } catch (err) {\n throw new WebinyError({\n message:\n \"Cannot generate GraphQL schema when testing with the given model. Please check the response for more details.\",\n code: \"GRAPHQL_SCHEMA_ERROR\",\n data: {\n modelId: model.modelId,\n error: extractErrorObject(err)\n }\n });\n }\n }\n\n model.titleFieldId = getContentModelTitleFieldId(fields, titleFieldId);\n model.descriptionFieldId = getContentModelDescriptionFieldId(fields, descriptionFieldId);\n model.imageFieldId = getContentModelImageFieldId(fields, imageFieldId);\n};\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,aAAa;AAC7B,SAASC,sBAAsB,QAAQ,eAAe;AACtD,OAAOC,WAAW,MAAM,eAAe;AAGvC,SAASC,eAAe;AACxB,SAASC,oBAAoB;AAE7B,SAASC,gBAAgB;AACzB,SAASC,2BAA2B;AACpC,SAASC,iCAAiC;AAC1C,SAASC,2BAA2B;AAEpC,SAASC,sBAAsB;AAC/B,SAASC,kBAAkB;AAC3B,SAASC,sBAAsB;AAC/B,SACIC,sBAAsB,EACtBC,8BAA8B;AAGlC,MAAMC,mBAAmB,GAAGA,CAACC,KAAe,EAAEC,GAAiB,KAAK;EAChE,MAAMC,GAAG,GAAGD,GAAG,CAACE,MAAM,EAAEC,IAAI,IAAI,EAAE;;EAElC;AACJ;AACA;EACI,MAAM;IAAEC,IAAI,EAAEC;EAAW,CAAC,GAAGL,GAAG,CAACM,SAAS,GACpCN,GAAG,CAACM,SAAS,CAAC,CAAC,CAAC,GAChB;IACIF,IAAI,EAAE;EACV,CAAC;EACP,MAAMG,QAAQ,GAAGN,GAAG,CAACO,KAAK,CAAC,IAAI,CAAC;EAChC,IAAIC,OAAO;EACX,IAAIC,OAAO;EACX,KAAK,IAAIC,CAAC,GAAGN,UAAU,EAAEM,CAAC,GAAG,CAAC,EAAEA,CAAC,EAAE,EAAE;IACjC,IAAIF,OAAO,IAAIA,OAAO,CAACG,QAAQ,CAAC,OAAO,CAAC,EAAE;MACtCF,OAAO,GAAGD,OAAO,CAACI,KAAK,CAAC,kBAAkB,CAAC;MAC3C;IACJ;IAEAJ,OAAO,GAAGF,QAAQ,CAACI,CAAC,CAAC;EACzB;EAEA,IAAIG,YAAgC,GAAGC,SAAS;EAChD,IAAIC,KAAK,CAACC,OAAO,CAACP,OAAO,CAAC,EAAE;IACxB,MAAMQ,UAAU,GAAG,IAAIC,MAAM,CAAC,wBAAwBT,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEzE,MAAMU,OAAO,GAAGnB,GAAG,CAACY,KAAK,CAACK,UAAU,CAAC;IACrC,IAAIE,OAAO,EAAE;MACTN,YAAY,GAAGM,OAAO,CAAC,CAAC,CAAC;IAC7B;EACJ;EAEA,IAAIC,OAAO,GAAG,0CAA0C;EACxD,IAAIP,YAAY,EAAE;IACdO,OAAO,GAAG,oCAAoCP,YAAY,UAAU;EACxE;EAEA,OAAO;IACHQ,IAAI,EAAE;MACFC,OAAO,EAAExB,KAAK,CAACwB,OAAO;MACtBtB,GAAG;MACHa;IACJ,CAAC;IACDU,IAAI,EAAE,0BAA0B;IAChCH,OAAO,EAAE,CAAC,UAAUtB,KAAK,CAACwB,OAAO,kBAAkB,EAAEF,OAAO,CAAC,CAACI,IAAI,CAAC,IAAI;EAC3E,CAAC;AACL,CAAC;AAED,MAAMC,yBAAyB,GAC3BC,QAAkD,IACpB;EAC9B,OAAO,CAAC;IAAEC,MAAM;IAAEC;EAAe,CAAC,KAAK;IACnC,IAAID,MAAM,CAACE,MAAM,KAAK,CAAC,IAAID,cAAc,CAACC,MAAM,KAAK,CAAC,EAAE;MACpD;IACJ;IACAC,cAAc,CAAC;MACXH,MAAM;MACNC,cAAc;MACdF;IACJ,CAAC,CAAC;EACN,CAAC;AACL,CAAC;AAQD,MAAMI,cAAc,GAAIC,MAA4B,IAAK;EACrD,MAAM;IAAEL,QAAQ;IAAEC,MAAM;IAAEC;EAAe,CAAC,GAAGG,MAAM;EAEnD,MAAMC,MAAgB,GAAG,EAAE;EAC3B,MAAMC,WAAqB,GAAG,EAAE;EAChC,MAAMC,aAAuB,GAAG,EAAE;EAElC,KAAK,MAAMC,KAAK,IAAIR,MAAM,EAAE;IACxB,MAAMS,QAAQ,GAAGhD,gBAAgB,CAAC+C,KAAK,CAAC;IACxC,MAAME,SAAS,GAAGX,QAAQ,CAACY,GAAG,CAACF,QAAQ,CAAC;IAExC,IAAI,CAACC,SAAS,EAAE;MACZ,MAAM,IAAIE,KAAK,CACX,uDAAuDH,QAAQ,UACnE,CAAC;IACL;IACA;AACR;AACA;AACA;IACQ,IAAIJ,MAAM,CAACrB,QAAQ,CAACwB,KAAK,CAACK,EAAE,CAAC,EAAE;MAC3B,MAAM,IAAIvD,WAAW,CACjB,8CACIkD,KAAK,CAACM,SAAS,IAAIN,KAAK,CAACO,OAAO,aACvBP,KAAK,CAACK,EAAE,2BACzB,CAAC;IACL;IACAR,MAAM,CAACW,IAAI,CAACR,KAAK,CAACK,EAAE,CAAC;IAErB,MAAMI,aAAa,GAAGhB,cAAc,CAACiB,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACN,EAAE,KAAKL,KAAK,CAACK,EAAE,CAAC;IACjE;AACR;AACA;IACQ,IAAI,CAACL,KAAK,CAACO,OAAO,EAAE;MAChB,MAAM,IAAIzD,WAAW,CAAC,2CAA2C,EAAE,kBAAkB,EAAE;QACnFkD;MACJ,CAAC,CAAC;IACN;IACA;AACR;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACQ,IAAI,CAACA,KAAK,CAACM,SAAS,EAAE;MAClB;AACZ;AACA;MACY,IAAIG,aAAa,EAAE;QACfT,KAAK,CAACM,SAAS,GAAGG,aAAa,CAACH,SAAS;MAC7C,CAAC,MAAM;QACHN,KAAK,CAACM,SAAS,GAAGtD,oBAAoB,CAACgD,KAAK,CAAC;MACjD;IACJ;IACA;AACR;AACA;AACA;IACQ,IAAIF,WAAW,CAACtB,QAAQ,CAACwB,KAAK,CAACO,OAAO,CAAC,EAAE;MACrC,MAAM,IAAIzD,WAAW,CACjB,8CAA8CkD,KAAK,CAACM,SAAS,kBAAkBN,KAAK,CAACO,OAAO,2BAChG,CAAC;IACL;IACAT,WAAW,CAACU,IAAI,CAACR,KAAK,CAACO,OAAO,CAAC;IAC/B;AACR;AACA;AACA;IACQ,IAAIR,aAAa,CAACvB,QAAQ,CAACwB,KAAK,CAACM,SAAS,CAAC,EAAE;MACzC,MAAM,IAAIxD,WAAW,CACjB,8CAA8CkD,KAAK,CAACY,KAAK,oBAAoBZ,KAAK,CAACM,SAAS,2BAChG,CAAC;IACL;IACAP,aAAa,CAACS,IAAI,CAACR,KAAK,CAACM,SAAS,CAAC;IACnC;AACR;AACA;AACA;IACQ,IAAI,CAACJ,SAAS,CAACW,mBAAmB,EAAE;MAChC;IACJ;IACA,MAAMA,mBAAmB,GAAGvB,yBAAyB,CAACC,QAAQ,CAAC;IAC/DW,SAAS,CAACW,mBAAmB,CAAC;MAC1Bb,KAAK;MACLS,aAAa;MACbK,QAAQ,EAAED;IACd,CAAC,CAAC;EACN;AACJ,CAAC;AAOD,MAAME,mBAAmB,GAAG,MAAOnB,MAAiC,IAAmB;EACnF,MAAM;IAAEoB,OAAO;IAAErD;EAAM,CAAC,GAAGiC,MAAM;EAEjC,MAAMqB,MAAM,GAAG,MAAMD,OAAO,CAACE,QAAQ,CAACC,oBAAoB,CAAC,YAAY;IACnE,OAAO,CAAC,MAAMH,OAAO,CAACI,GAAG,CAACC,UAAU,CAAC,CAAC,EAAEC,MAAM,CAAE3D,KAAK,IAAwB;MACzE,OAAOA,KAAK,CAAC4D,SAAS,KAAK,IAAI;IACnC,CAAC,CAAC;EACN,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAG,MAAMlE,kBAAkB,CAAC;IAC1C0D,OAAO;IACP;AACR;AACA;IACQC,MAAM,EAAEA,MAAM,CAACK,MAAM,CAACG,CAAC,IAAIA,CAAC,CAACtC,OAAO,KAAKxB,KAAK,CAACwB,OAAO,CAAC,CAACuC,MAAM,CAAC,CAAC/D,KAAK,CAAC;EAC1E,CAAC,CAAC;EAEF,MAAMgE,OAAO,GAAGX,OAAO,CAACW,OAAO,CAC1BC,MAAM,CAA0BvE,sBAAsB,CAACwE,IAAI,CAAC,CAC5DP,MAAM,CAACQ,MAAM,IAAIA,MAAM,CAACC,YAAY,CAACf,OAAO,CAAC,CAAC,CAC9CgB,MAAM,CAA0C,CAACC,UAAU,EAAEH,MAAM,KAAK;IACrE,MAAMI,IAAI,GACNJ,MAAM,CAACI,IAAI,IAAI,GAAG7E,sBAAsB,CAACwE,IAAI,IAAIhF,sBAAsB,CAAC,EAAE,CAAC,EAAE;IACjFoF,UAAU,CAACC,IAAI,CAAC,GAAGJ,MAAM;IACzB,OAAOG,UAAU;EACrB,CAAC,EAAE,CAAC,CAAC,CAAC;EACV,KAAK,MAAMH,MAAM,IAAIN,YAAY,EAAE;IAC/B,MAAMU,IAAI,GAAGJ,MAAM,CAACI,IAAI,IAAI,GAAGJ,MAAM,CAACD,IAAI,IAAIhF,sBAAsB,CAAC,EAAE,CAAC,EAAE;IAC1E8E,OAAO,CAACO,IAAI,CAAC,GAAGJ,MAAM;EAC1B;EAEA,OAAOvE,sBAAsB,CAAC;IAC1BoE,OAAO,EAAEQ,MAAM,CAACC,MAAM,CAACT,OAAO;EAClC,CAAC,CAAC;AACN,CAAC;AAED,MAAMU,kBAAkB,GAAIC,KAAU,IAAK;EACvC,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAACN,MAAM,CAAsB,CAACO,MAAM,EAAEC,GAAG,KAAK;IACrF,IAAI,CAACF,KAAK,CAACE,GAAG,CAAC,EAAE;MACb,OAAOD,MAAM;IACjB;IACAA,MAAM,CAACC,GAAG,CAAC,GAAGF,KAAK,CAACE,GAAG,CAAC;IACxB,OAAOD,MAAM;EACjB,CAAC,EAAE,CAAC,CAAC,CAAC;AACV,CAAC;AASD,OAAO,MAAME,mBAAmB,GAAG,MAAO7C,MAAiC,IAAoB;EAC3F,MAAM;IAAEqB,MAAM;IAAEtD,KAAK;IAAE+E,QAAQ;IAAE1B;EAAQ,CAAC,GAAGpB,MAAM;EACnD,MAAM;IAAE+C,YAAY;IAAEC,kBAAkB;IAAEC;EAAa,CAAC,GAAGlF,KAAK;;EAEhE;AACJ;AACA;EACI,MAAM;IAAE6B,MAAM,GAAG;EAAG,CAAC,GAAG7B,KAAK;;EAE7B;AACJ;AACA;AACA;EACI,MAAMmF,aAAa,GAAG9B,OAAO,CAAC+B,SAAS,CAACC,OAAO,CAACvF,8BAA8B,CAAC;EAC/E,MAAMwF,OAAO,GAAGjC,OAAO,CAAC+B,SAAS,CAACG,UAAU,CAAC1F,sBAAsB,CAAC;EAEpEmC,cAAc,CAAC;IACXH,MAAM;IACNC,cAAc,EAAEiD,QAAQ,EAAElD,MAAM,IAAI,EAAE;IACtCD,QAAQ,EAAEuD;EACd,CAAC,CAAC;EAEF,IAAItD,MAAM,CAACE,MAAM,EAAE;IACf;AACR;AACA;IACQ,MAAMyD,MAAM,GAAGpG,eAAe,CAAC;MAC3BkE,MAAM;MACNtD,KAAK;MACLmF,aAAa;MACbG;IACJ,CAAC,CAAC;IAEF,IAAI;MACArG,GAAG,CAACuG,MAAM,CAAC;IACf,CAAC,CAAC,OAAOvF,GAAG,EAAE;MACV,MAAM,IAAId,WAAW,CAACY,mBAAmB,CAACC,KAAK,EAAEC,GAAG,CAAC,CAAC;IAC1D;IACA;AACR;AACA;IACQ,IAAI;MACA,MAAMmD,mBAAmB,CAAC;QACtBC,OAAO;QACPrD;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,OAAOC,GAAG,EAAE;MACV,MAAM,IAAId,WAAW,CAAC;QAClBmC,OAAO,EACH,+GAA+G;QACnHG,IAAI,EAAE,sBAAsB;QAC5BF,IAAI,EAAE;UACFC,OAAO,EAAExB,KAAK,CAACwB,OAAO;UACtBmD,KAAK,EAAED,kBAAkB,CAACzE,GAAG;QACjC;MACJ,CAAC,CAAC;IACN;EACJ;EAEAD,KAAK,CAACgF,YAAY,GAAGzF,2BAA2B,CAACsC,MAAM,EAAEmD,YAAY,CAAC;EACtEhF,KAAK,CAACiF,kBAAkB,GAAGzF,iCAAiC,CAACqC,MAAM,EAAEoD,kBAAkB,CAAC;EACxFjF,KAAK,CAACkF,YAAY,GAAGzF,2BAA2B,CAACoC,MAAM,EAAEqD,YAAY,CAAC;AAC1E,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/contentModel/validation/modelFields.js","sources":["../../../../src/domain/contentModel/validation/modelFields.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { generateAlphaNumericId } from \"@webiny/utils\";\nimport WebinyError from \"@webiny/error\";\nimport type { CmsContext, CmsModel, CmsModelField } from \"~/types/index.js\";\nimport type { ValidateChildFieldsValidate } from \"~/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js\";\nimport { createManageSDL } from \"~/graphql/schema/createManageSDL.js\";\nimport { createFieldStorageId } from \"../createFieldStorageId.js\";\nimport type { GraphQLError } from \"graphql\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType.js\";\nimport { getContentModelTitleFieldId } from \"./fields/titleField.js\";\nimport { getContentModelDescriptionFieldId } from \"./fields/descriptionField.js\";\nimport { getContentModelImageFieldId } from \"./fields/imageField.js\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { buildSchemaPlugins } from \"~/graphql/buildSchemaPlugins.js\";\nimport { createExecutableSchema } from \"~/graphql/createExecutableSchema.js\";\nimport {\n CmsGraphQLSchemaSorter,\n CmsModelFieldToGraphQLRegistry\n} from \"~/features/graphql/index.js\";\n\nconst extractInvalidField = (model: CmsModel, err: GraphQLError) => {\n const sdl = err.source?.body || \"\";\n\n /**\n * Find the invalid type\n */\n const { line: lineNumber } = err.locations\n ? err.locations[0]\n : {\n line: 0\n };\n const sdlLines = sdl.split(\"\\n\");\n let sdlLine;\n let gqlType;\n for (let i = lineNumber; i > 0; i--) {\n if (sdlLine && sdlLine.includes(\"type \")) {\n gqlType = sdlLine.match(/type\\s+(.*?)\\s+{/);\n break;\n }\n\n sdlLine = sdlLines[i];\n }\n\n let invalidField: string | undefined = undefined;\n if (Array.isArray(gqlType)) {\n const fieldRegex = new RegExp(`([^\\\\s+].*?):\\\\s+\\\\[?${gqlType[1]}!?\\\\]?`);\n\n const matched = sdl.match(fieldRegex);\n if (matched) {\n invalidField = matched[1];\n }\n }\n\n let message = `See more details in the browser console.`;\n if (invalidField) {\n message = `Please review the definition of \"${invalidField}\" field.`;\n }\n\n return {\n data: {\n modelId: model.modelId,\n sdl,\n invalidField\n },\n code: \"INVALID_MODEL_DEFINITION\",\n message: [`Model \"${model.modelId}\" was not saved!`, message].join(\"\\n\")\n };\n};\n\nconst createValidateChildFields = (\n registry: CmsModelFieldToGraphQLRegistry.Interface\n): ValidateChildFieldsValidate => {\n return ({ fields, originalFields }) => {\n if (fields.length === 0 && originalFields.length === 0) {\n return;\n }\n validateFields({\n fields,\n originalFields,\n registry\n });\n };\n};\n\ninterface ValidateFieldsParams {\n registry: CmsModelFieldToGraphQLRegistry.Interface;\n fields: CmsModelField[];\n originalFields: CmsModelField[];\n}\n\nconst validateFields = (params: ValidateFieldsParams) => {\n const { registry, fields, originalFields } = params;\n\n const idList: string[] = [];\n const fieldIdList: string[] = [];\n const storageIdList: string[] = [];\n\n for (const field of fields) {\n const baseType = getBaseFieldType(field);\n const fieldImpl = registry.get(baseType);\n\n if (!fieldImpl) {\n throw new Error(\n `Cannot update content model because of the unknown \"${baseType}\" field.`\n );\n }\n /**\n * Check the field's id against existing ones.\n * There cannot be two fields with the same id.\n */\n if (idList.includes(field.id)) {\n throw new WebinyError(\n `Cannot update content model because field \"${\n field.storageId || field.fieldId\n }\" has id \"${field.id}\", which is already used.`\n );\n }\n idList.push(field.id);\n\n const originalField = originalFields.find(f => f.id === field.id);\n /**\n * Field MUST have an fieldId defined.\n */\n if (!field.fieldId) {\n throw new WebinyError(`Field does not have an \"fieldId\" defined.`, \"MISSING_FIELD_ID\", {\n field\n });\n }\n /**\n * If storageId does not match a certain pattern, add that pattern, but only if field is not locked (used) already.\n * This is to avoid errors in the already installed systems.\n *\n * Why are we using the @?\n *\n * It is not part of special characters for the query syntax in the Lucene.\n *\n * Relevant links:\n * https://lucene.apache.org/core/3_4_0/queryparsersyntax.html\n * https://discuss.elastic.co/t/special-characters-in-field-names/10658/3\n * https://discuss.elastic.co/t/illegal-characters-in-elasticsearch-field-names/17196/2\n */\n if (!field.storageId) {\n /**\n * When having an original field, set the storageId to value from the originalField\n */\n if (originalField) {\n field.storageId = originalField.storageId;\n } else {\n field.storageId = createFieldStorageId(field);\n }\n }\n /**\n * Check the field's fieldId against existing ones.\n * There cannot be two fields with the same fieldId - outside world identifier.\n */\n if (fieldIdList.includes(field.fieldId)) {\n throw new WebinyError(\n `Cannot update content model because field \"${field.storageId}\" has fieldId \"${field.fieldId}\", which is already used.`\n );\n }\n fieldIdList.push(field.fieldId);\n /**\n * Check the field's storageId against the existing ones.\n * There cannot be two fields with the same storageId.\n */\n if (storageIdList.includes(field.storageId)) {\n throw new WebinyError(\n `Cannot update content model because field \"${field.label}\" has storageId \"${field.storageId}\", which is already used.`\n );\n }\n storageIdList.push(field.storageId);\n /**\n * There might be some plugins which allow child fields.\n * We use this method to validate them as well.\n */\n if (!fieldImpl.validateChildFields) {\n continue;\n }\n const validateChildFields = createValidateChildFields(registry);\n fieldImpl.validateChildFields({\n field,\n originalField,\n validate: validateChildFields\n });\n }\n};\n\ninterface CreateGraphQLSchemaParams {\n context: CmsContext;\n model: CmsModel;\n}\n\nconst createGraphQLSchema = async (params: CreateGraphQLSchemaParams): Promise<any> => {\n const { context, model } = params;\n\n const models = await context.security.withoutAuthorization(async () => {\n return (await context.cms.listModels()).filter((model): model is CmsModel => {\n return model.isPrivate !== true;\n });\n });\n\n const modelPlugins = await buildSchemaPlugins({\n context,\n /**\n * Must remove the current model from the list, as we are possibly updating it - there would be two if we didn't.\n */\n models: models.filter(m => m.modelId !== model.modelId).concat([model])\n });\n\n const plugins = context.plugins\n .byType<ICmsGraphQLSchemaPlugin>(CmsGraphQLSchemaPlugin.type)\n .filter(plugin => plugin.isApplicable(context))\n .reduce<Record<string, ICmsGraphQLSchemaPlugin>>((collection, plugin) => {\n const name =\n plugin.name || `${CmsGraphQLSchemaPlugin.type}-${generateAlphaNumericId(16)}`;\n collection[name] = plugin;\n return collection;\n }, {});\n for (const plugin of modelPlugins) {\n const name = plugin.name || `${plugin.type}-${generateAlphaNumericId(16)}`;\n plugins[name] = plugin;\n }\n\n return createExecutableSchema({\n plugins: Object.values(plugins)\n });\n};\n\nconst extractErrorObject = (error: any) => {\n return [\"message\", \"code\", \"data\", \"stack\"].reduce<Record<string, any>>((output, key) => {\n if (!error[key]) {\n return output;\n }\n output[key] = error[key];\n return output;\n }, {});\n};\n\ninterface ValidateModelFieldsParams {\n models: CmsModel[];\n model: CmsModel;\n original?: CmsModel;\n context: CmsContext;\n}\n\nexport const validateModelFields = async (params: ValidateModelFieldsParams): Promise<void> => {\n const { models, model, original, context } = params;\n const { titleFieldId, descriptionFieldId, imageFieldId } = model;\n\n /**\n * There should be fields/locked fields in either model or data to be updated.\n */\n const { fields = [] } = model;\n\n /**\n * Let's inspect the fields of the received content model. We prevent saving of a content model if it\n * contains a field for which a \"cms-model-field-to-graphql\" plugin does not exist on the backend.\n */\n const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);\n const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);\n\n validateFields({\n fields,\n originalFields: original?.fields || [],\n registry: fieldRegistry\n });\n\n if (fields.length) {\n /**\n * Make sure that this model can be safely converted to a GraphQL SDL\n */\n const schema = createManageSDL({\n models,\n model,\n fieldRegistry,\n sorters\n });\n\n try {\n gql(schema);\n } catch (err) {\n throw new WebinyError(extractInvalidField(model, err));\n }\n /**\n *\n */\n try {\n await createGraphQLSchema({\n context,\n model\n });\n } catch (err) {\n throw new WebinyError({\n message:\n \"Cannot generate GraphQL schema when testing with the given model. Please check the response for more details.\",\n code: \"GRAPHQL_SCHEMA_ERROR\",\n data: {\n modelId: model.modelId,\n error: extractErrorObject(err)\n }\n });\n }\n }\n\n model.titleFieldId = getContentModelTitleFieldId(fields, titleFieldId);\n model.descriptionFieldId = getContentModelDescriptionFieldId(fields, descriptionFieldId);\n model.imageFieldId = getContentModelImageFieldId(fields, imageFieldId);\n};\n"],"names":["extractInvalidField","model","err","sdl","lineNumber","sdlLines","sdlLine","gqlType","i","invalidField","Array","fieldRegex","RegExp","matched","message","createValidateChildFields","registry","fields","originalFields","validateFields","params","idList","fieldIdList","storageIdList","field","baseType","getBaseFieldType","fieldImpl","Error","WebinyError","originalField","f","createFieldStorageId","validateChildFields","createGraphQLSchema","context","models","modelPlugins","buildSchemaPlugins","m","plugins","CmsGraphQLSchemaPlugin","plugin","collection","name","generateAlphaNumericId","createExecutableSchema","Object","extractErrorObject","error","output","key","validateModelFields","original","titleFieldId","descriptionFieldId","imageFieldId","fieldRegistry","CmsModelFieldToGraphQLRegistry","sorters","CmsGraphQLSchemaSorter","schema","createManageSDL","gql","getContentModelTitleFieldId","getContentModelDescriptionFieldId","getContentModelImageFieldId"],"mappings":"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"}
@@ -1,29 +1,24 @@
1
- import WebinyError from "@webiny/error";
2
- const disallowedModelIdList = ["contentModel", "contentModels", "contentModelGroup", "contentModelGroups"];
3
- const isModelIdAllowed = modelId => {
4
- return disallowedModelIdList.includes(modelId) === false;
5
- };
6
- export const validateModelIdAllowed = params => {
7
- const {
8
- model
9
- } = params;
10
- if (isModelIdAllowed(model.modelId)) {
11
- return;
12
- }
13
- throw new WebinyError(`Provided model ID "${model.modelId}" is not allowed.`, "MODEL_ID_NOT_ALLOWED", {
14
- input: model.modelId
15
- });
1
+ import error from "@webiny/error";
2
+ const disallowedModelIdList = [
3
+ "contentModel",
4
+ "contentModels",
5
+ "contentModelGroup",
6
+ "contentModelGroups"
7
+ ];
8
+ const isModelIdAllowed = (modelId)=>false === disallowedModelIdList.includes(modelId);
9
+ const validateModelIdAllowed = (params)=>{
10
+ const { model } = params;
11
+ if (isModelIdAllowed(model.modelId)) return;
12
+ throw new error(`Provided model ID "${model.modelId}" is not allowed.`, "MODEL_ID_NOT_ALLOWED", {
13
+ input: model.modelId
14
+ });
16
15
  };
17
- export const validateExistingModelId = params => {
18
- const {
19
- existingModel,
20
- model
21
- } = params;
22
- if (existingModel.modelId === model.modelId) {
23
- throw new WebinyError(`Content model with modelId "${model.modelId}" already exists.`, "MODEL_ID_EXISTS", {
24
- input: existingModel.modelId
16
+ const validateExistingModelId = (params)=>{
17
+ const { existingModel, model } = params;
18
+ if (existingModel.modelId === model.modelId) throw new error(`Content model with modelId "${model.modelId}" already exists.`, "MODEL_ID_EXISTS", {
19
+ input: existingModel.modelId
25
20
  });
26
- }
27
21
  };
22
+ export { validateExistingModelId, validateModelIdAllowed };
28
23
 
29
24
  //# sourceMappingURL=modelId.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["WebinyError","disallowedModelIdList","isModelIdAllowed","modelId","includes","validateModelIdAllowed","params","model","input","validateExistingModelId","existingModel"],"sources":["modelId.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { CmsModel } from \"~/types/index.js\";\n\nconst disallowedModelIdList: string[] = [\n \"contentModel\",\n \"contentModels\",\n \"contentModelGroup\",\n \"contentModelGroups\"\n];\nconst isModelIdAllowed = (modelId: string): boolean => {\n return disallowedModelIdList.includes(modelId) === false;\n};\n\ninterface ModelIdAllowedParams {\n model: Pick<CmsModel, \"modelId\">;\n}\n\nexport const validateModelIdAllowed = (params: ModelIdAllowedParams) => {\n const { model } = params;\n if (isModelIdAllowed(model.modelId)) {\n return;\n }\n throw new WebinyError(\n `Provided model ID \"${model.modelId}\" is not allowed.`,\n \"MODEL_ID_NOT_ALLOWED\",\n {\n input: model.modelId\n }\n );\n};\n\ninterface Params {\n existingModel: Pick<CmsModel, \"modelId\">;\n model: Pick<CmsModel, \"modelId\">;\n}\n\nexport const validateExistingModelId = (params: Params): void => {\n const { existingModel, model } = params;\n\n if (existingModel.modelId === model.modelId) {\n throw new WebinyError(\n `Content model with modelId \"${model.modelId}\" already exists.`,\n \"MODEL_ID_EXISTS\",\n {\n input: existingModel.modelId\n }\n );\n }\n};\n"],"mappings":"AAAA,OAAOA,WAAW,MAAM,eAAe;AAGvC,MAAMC,qBAA+B,GAAG,CACpC,cAAc,EACd,eAAe,EACf,mBAAmB,EACnB,oBAAoB,CACvB;AACD,MAAMC,gBAAgB,GAAIC,OAAe,IAAc;EACnD,OAAOF,qBAAqB,CAACG,QAAQ,CAACD,OAAO,CAAC,KAAK,KAAK;AAC5D,CAAC;AAMD,OAAO,MAAME,sBAAsB,GAAIC,MAA4B,IAAK;EACpE,MAAM;IAAEC;EAAM,CAAC,GAAGD,MAAM;EACxB,IAAIJ,gBAAgB,CAACK,KAAK,CAACJ,OAAO,CAAC,EAAE;IACjC;EACJ;EACA,MAAM,IAAIH,WAAW,CACjB,sBAAsBO,KAAK,CAACJ,OAAO,mBAAmB,EACtD,sBAAsB,EACtB;IACIK,KAAK,EAAED,KAAK,CAACJ;EACjB,CACJ,CAAC;AACL,CAAC;AAOD,OAAO,MAAMM,uBAAuB,GAAIH,MAAc,IAAW;EAC7D,MAAM;IAAEI,aAAa;IAAEH;EAAM,CAAC,GAAGD,MAAM;EAEvC,IAAII,aAAa,CAACP,OAAO,KAAKI,KAAK,CAACJ,OAAO,EAAE;IACzC,MAAM,IAAIH,WAAW,CACjB,+BAA+BO,KAAK,CAACJ,OAAO,mBAAmB,EAC/D,iBAAiB,EACjB;MACIK,KAAK,EAAEE,aAAa,CAACP;IACzB,CACJ,CAAC;EACL;AACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"domain/contentModel/validation/modelId.js","sources":["../../../../src/domain/contentModel/validation/modelId.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { CmsModel } from \"~/types/index.js\";\n\nconst disallowedModelIdList: string[] = [\n \"contentModel\",\n \"contentModels\",\n \"contentModelGroup\",\n \"contentModelGroups\"\n];\nconst isModelIdAllowed = (modelId: string): boolean => {\n return disallowedModelIdList.includes(modelId) === false;\n};\n\ninterface ModelIdAllowedParams {\n model: Pick<CmsModel, \"modelId\">;\n}\n\nexport const validateModelIdAllowed = (params: ModelIdAllowedParams) => {\n const { model } = params;\n if (isModelIdAllowed(model.modelId)) {\n return;\n }\n throw new WebinyError(\n `Provided model ID \"${model.modelId}\" is not allowed.`,\n \"MODEL_ID_NOT_ALLOWED\",\n {\n input: model.modelId\n }\n );\n};\n\ninterface Params {\n existingModel: Pick<CmsModel, \"modelId\">;\n model: Pick<CmsModel, \"modelId\">;\n}\n\nexport const validateExistingModelId = (params: Params): void => {\n const { existingModel, model } = params;\n\n if (existingModel.modelId === model.modelId) {\n throw new WebinyError(\n `Content model with modelId \"${model.modelId}\" already exists.`,\n \"MODEL_ID_EXISTS\",\n {\n input: existingModel.modelId\n }\n );\n }\n};\n"],"names":["disallowedModelIdList","isModelIdAllowed","modelId","validateModelIdAllowed","params","model","WebinyError","validateExistingModelId","existingModel"],"mappings":";AAGA,MAAMA,wBAAkC;IACpC;IACA;IACA;IACA;CACH;AACD,MAAMC,mBAAmB,CAACC,UACfF,AAA4C,UAA5CA,sBAAsB,QAAQ,CAACE;AAOnC,MAAMC,yBAAyB,CAACC;IACnC,MAAM,EAAEC,KAAK,EAAE,GAAGD;IAClB,IAAIH,iBAAiBI,MAAM,OAAO,GAC9B;IAEJ,MAAM,IAAIC,MACN,CAAC,mBAAmB,EAAED,MAAM,OAAO,CAAC,iBAAiB,CAAC,EACtD,wBACA;QACI,OAAOA,MAAM,OAAO;IACxB;AAER;AAOO,MAAME,0BAA0B,CAACH;IACpC,MAAM,EAAEI,aAAa,EAAEH,KAAK,EAAE,GAAGD;IAEjC,IAAII,cAAc,OAAO,KAAKH,MAAM,OAAO,EACvC,MAAM,IAAIC,MACN,CAAC,4BAA4B,EAAED,MAAM,OAAO,CAAC,iBAAiB,CAAC,EAC/D,mBACA;QACI,OAAOG,cAAc,OAAO;IAChC;AAGZ"}
@@ -1,18 +1,13 @@
1
- import WebinyError from "@webiny/error";
2
- export const validatePluralApiName = params => {
3
- const {
4
- existingModel,
5
- model
6
- } = params;
7
- if (existingModel.singularApiName === model.pluralApiName) {
8
- throw new WebinyError(`Content model with singularApiName "${model.pluralApiName}" already exists.`, "MODEL_SINGULAR_API_NAME_EXISTS", {
9
- input: model.pluralApiName
1
+ import error from "@webiny/error";
2
+ const validatePluralApiName = (params)=>{
3
+ const { existingModel, model } = params;
4
+ if (existingModel.singularApiName === model.pluralApiName) throw new error(`Content model with singularApiName "${model.pluralApiName}" already exists.`, "MODEL_SINGULAR_API_NAME_EXISTS", {
5
+ input: model.pluralApiName
10
6
  });
11
- } else if (existingModel.pluralApiName === model.pluralApiName) {
12
- throw new WebinyError(`Content model with pluralApiName "${model.pluralApiName}" already exists.`, "MODEL_PLURAL_API_NAME_EXISTS", {
13
- input: model.pluralApiName
7
+ if (existingModel.pluralApiName === model.pluralApiName) throw new error(`Content model with pluralApiName "${model.pluralApiName}" already exists.`, "MODEL_PLURAL_API_NAME_EXISTS", {
8
+ input: model.pluralApiName
14
9
  });
15
- }
16
10
  };
11
+ export { validatePluralApiName };
17
12
 
18
13
  //# sourceMappingURL=pluralApiName.js.map