@webiny/api-headless-cms 0.0.0-unstable.99666aeb00 → 0.0.0-unstable.a9593f74dd

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 (495) hide show
  1. package/constants.d.ts +31 -0
  2. package/constants.js +51 -2
  3. package/constants.js.map +1 -1
  4. package/context.js +50 -45
  5. package/context.js.map +1 -1
  6. package/crud/contentEntry/afterDelete.js +3 -1
  7. package/crud/contentEntry/afterDelete.js.map +1 -1
  8. package/crud/contentEntry/beforeCreate.js +3 -1
  9. package/crud/contentEntry/beforeCreate.js.map +1 -1
  10. package/crud/contentEntry/beforeUpdate.js +3 -1
  11. package/crud/contentEntry/beforeUpdate.js.map +1 -1
  12. package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +20 -0
  13. package/crud/contentEntry/entryDataFactories/createEntryData.js +228 -0
  14. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -0
  15. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +21 -0
  16. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +114 -0
  17. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -0
  18. package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +13 -0
  19. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +61 -0
  20. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +1 -0
  21. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +12 -0
  22. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +57 -0
  23. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +1 -0
  24. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +12 -0
  25. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +38 -0
  26. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +1 -0
  27. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +20 -0
  28. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +122 -0
  29. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +1 -0
  30. package/crud/contentEntry/entryDataFactories/index.d.ts +8 -0
  31. package/crud/contentEntry/entryDataFactories/index.js +95 -0
  32. package/crud/contentEntry/entryDataFactories/index.js.map +1 -0
  33. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +5 -0
  34. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +36 -0
  35. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
  36. package/crud/contentEntry/entryDataFactories/statuses.d.ts +4 -0
  37. package/crud/contentEntry/entryDataFactories/statuses.js +15 -0
  38. package/crud/contentEntry/entryDataFactories/statuses.js.map +1 -0
  39. package/crud/contentEntry/entryDataValidation.d.ts +4 -2
  40. package/crud/contentEntry/entryDataValidation.js +223 -45
  41. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  42. package/crud/contentEntry/markLockedFields.js +17 -10
  43. package/crud/contentEntry/markLockedFields.js.map +1 -1
  44. package/crud/contentEntry/referenceFieldsMapping.d.ts +6 -0
  45. package/crud/contentEntry/referenceFieldsMapping.js +134 -111
  46. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  47. package/crud/contentEntry/searchableFields.js +5 -4
  48. package/crud/contentEntry/searchableFields.js.map +1 -1
  49. package/crud/contentEntry.crud.d.ts +1 -4
  50. package/crud/contentEntry.crud.js +295 -466
  51. package/crud/contentEntry.crud.js.map +1 -1
  52. package/crud/contentModel/beforeCreate.d.ts +1 -1
  53. package/crud/contentModel/beforeCreate.js +11 -9
  54. package/crud/contentModel/beforeCreate.js.map +1 -1
  55. package/crud/contentModel/beforeDelete.js +3 -1
  56. package/crud/contentModel/beforeDelete.js.map +1 -1
  57. package/crud/contentModel/beforeUpdate.d.ts +1 -1
  58. package/crud/contentModel/beforeUpdate.js +3 -6
  59. package/crud/contentModel/beforeUpdate.js.map +1 -1
  60. package/crud/contentModel/compatibility/modelApiName.js +3 -1
  61. package/crud/contentModel/compatibility/modelApiName.js.map +1 -1
  62. package/crud/contentModel/contentModelManagerFactory.js +3 -1
  63. package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
  64. package/crud/contentModel/createFieldStorageId.js +3 -1
  65. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  66. package/crud/contentModel/defaultFields.js +3 -1
  67. package/crud/contentModel/defaultFields.js.map +1 -1
  68. package/crud/contentModel/ensureTypeTag.d.ts +5 -0
  69. package/crud/contentModel/ensureTypeTag.js +21 -0
  70. package/crud/contentModel/ensureTypeTag.js.map +1 -0
  71. package/crud/contentModel/fields/descriptionField.js +4 -2
  72. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  73. package/crud/contentModel/fields/imageField.js +6 -8
  74. package/crud/contentModel/fields/imageField.js.map +1 -1
  75. package/crud/contentModel/fields/titleField.js +4 -2
  76. package/crud/contentModel/fields/titleField.js.map +1 -1
  77. package/crud/contentModel/listModelsFromDatabase.d.ts +10 -0
  78. package/crud/contentModel/listModelsFromDatabase.js +38 -0
  79. package/crud/contentModel/listModelsFromDatabase.js.map +1 -0
  80. package/crud/contentModel/validate/endingAllowed.js +3 -1
  81. package/crud/contentModel/validate/endingAllowed.js.map +1 -1
  82. package/crud/contentModel/validate/isModelEndingAllowed.js +4 -2
  83. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  84. package/crud/contentModel/validate/modelId.js +3 -1
  85. package/crud/contentModel/validate/modelId.js.map +1 -1
  86. package/crud/contentModel/validate/pluralApiName.js +3 -1
  87. package/crud/contentModel/validate/pluralApiName.js.map +1 -1
  88. package/crud/contentModel/validate/singularApiName.js +3 -1
  89. package/crud/contentModel/validate/singularApiName.js.map +1 -1
  90. package/crud/contentModel/validateModel.js +3 -1
  91. package/crud/contentModel/validateModel.js.map +1 -1
  92. package/crud/contentModel/validateModelFields.js +7 -6
  93. package/crud/contentModel/validateModelFields.js.map +1 -1
  94. package/crud/contentModel/validation.d.ts +531 -210
  95. package/crud/contentModel/validation.js +71 -11
  96. package/crud/contentModel/validation.js.map +1 -1
  97. package/crud/contentModel.crud.js +137 -182
  98. package/crud/contentModel.crud.js.map +1 -1
  99. package/crud/contentModelGroup/beforeCreate.d.ts +1 -1
  100. package/crud/contentModelGroup/beforeCreate.js +15 -1
  101. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  102. package/crud/contentModelGroup/beforeDelete.js +3 -1
  103. package/crud/contentModelGroup/beforeDelete.js.map +1 -1
  104. package/crud/contentModelGroup/beforeUpdate.js +3 -1
  105. package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
  106. package/crud/contentModelGroup/listGroupsFromDatabase.d.ts +8 -0
  107. package/crud/contentModelGroup/listGroupsFromDatabase.js +22 -0
  108. package/crud/contentModelGroup/listGroupsFromDatabase.js.map +1 -0
  109. package/crud/contentModelGroup/validation.d.ts +9 -6
  110. package/crud/contentModelGroup/validation.js +5 -2
  111. package/crud/contentModelGroup/validation.js.map +1 -1
  112. package/crud/contentModelGroup.crud.d.ts +1 -1
  113. package/crud/contentModelGroup.crud.js +113 -112
  114. package/crud/contentModelGroup.crud.js.map +1 -1
  115. package/crud/system.crud.js +8 -11
  116. package/crud/system.crud.js.map +1 -1
  117. package/export/crud/exporting.d.ts +3 -0
  118. package/export/crud/exporting.js +49 -0
  119. package/export/crud/exporting.js.map +1 -0
  120. package/export/crud/importing.d.ts +3 -0
  121. package/export/crud/importing.js +79 -0
  122. package/export/crud/importing.js.map +1 -0
  123. package/export/crud/imports/importData.d.ts +14 -0
  124. package/export/crud/imports/importData.js +52 -0
  125. package/export/crud/imports/importData.js.map +1 -0
  126. package/export/crud/imports/importGroups.d.ts +8 -0
  127. package/export/crud/imports/importGroups.js +104 -0
  128. package/export/crud/imports/importGroups.js.map +1 -0
  129. package/export/crud/imports/importModels.d.ts +8 -0
  130. package/export/crud/imports/importModels.js +136 -0
  131. package/export/crud/imports/importModels.js.map +1 -0
  132. package/export/crud/imports/validateGroups.d.ts +8 -0
  133. package/export/crud/imports/validateGroups.js +112 -0
  134. package/export/crud/imports/validateGroups.js.map +1 -0
  135. package/export/crud/imports/validateInput.d.ts +19 -0
  136. package/export/crud/imports/validateInput.js +55 -0
  137. package/export/crud/imports/validateInput.js.map +1 -0
  138. package/export/crud/imports/validateModels.d.ts +12 -0
  139. package/export/crud/imports/validateModels.js +203 -0
  140. package/export/crud/imports/validateModels.js.map +1 -0
  141. package/export/crud/index.d.ts +4 -0
  142. package/export/crud/index.js +15 -0
  143. package/export/crud/index.js.map +1 -0
  144. package/export/crud/sanitize.d.ts +4 -0
  145. package/export/crud/sanitize.js +35 -0
  146. package/export/crud/sanitize.js.map +1 -0
  147. package/export/graphql/index.d.ts +3 -0
  148. package/export/graphql/index.js +188 -0
  149. package/export/graphql/index.js.map +1 -0
  150. package/export/index.d.ts +2 -0
  151. package/export/index.js +29 -0
  152. package/export/index.js.map +1 -0
  153. package/export/types.d.ts +113 -0
  154. package/export/types.js +22 -0
  155. package/export/types.js.map +1 -0
  156. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +4 -7
  157. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  158. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +5 -8
  159. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  160. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +47 -38
  161. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  162. package/fieldConverters/index.js +3 -1
  163. package/fieldConverters/index.js.map +1 -1
  164. package/graphql/buildSchemaPlugins.js +7 -1
  165. package/graphql/buildSchemaPlugins.js.map +1 -1
  166. package/graphql/checkEndpointAccess.js +3 -1
  167. package/graphql/checkEndpointAccess.js.map +1 -1
  168. package/graphql/createExecutableSchema.js +3 -1
  169. package/graphql/createExecutableSchema.js.map +1 -1
  170. package/graphql/createRequestBody.js +3 -1
  171. package/graphql/createRequestBody.js.map +1 -1
  172. package/graphql/formatErrorPayload.js +3 -1
  173. package/graphql/formatErrorPayload.js.map +1 -1
  174. package/graphql/generateSchema.js +3 -1
  175. package/graphql/generateSchema.js.map +1 -1
  176. package/graphql/getSchema.d.ts +0 -1
  177. package/graphql/getSchema.js +34 -18
  178. package/graphql/getSchema.js.map +1 -1
  179. package/graphql/graphQLHandlerFactory.js +3 -1
  180. package/graphql/graphQLHandlerFactory.js.map +1 -1
  181. package/graphql/handleRequest.js +3 -5
  182. package/graphql/handleRequest.js.map +1 -1
  183. package/graphql/index.d.ts +1 -1
  184. package/graphql/index.js +4 -2
  185. package/graphql/index.js.map +1 -1
  186. package/graphql/schema/baseContentSchema.js +9 -8
  187. package/graphql/schema/baseContentSchema.js.map +1 -1
  188. package/graphql/schema/baseSchema.d.ts +2 -3
  189. package/graphql/schema/baseSchema.js +64 -2
  190. package/graphql/schema/baseSchema.js.map +1 -1
  191. package/graphql/schema/contentEntries.js +51 -18
  192. package/graphql/schema/contentEntries.js.map +1 -1
  193. package/graphql/schema/contentModelGroups.js +5 -2
  194. package/graphql/schema/contentModelGroups.js.map +1 -1
  195. package/graphql/schema/contentModels.js +10 -10
  196. package/graphql/schema/contentModels.js.map +1 -1
  197. package/graphql/schema/createFieldResolvers.js +14 -12
  198. package/graphql/schema/createFieldResolvers.js.map +1 -1
  199. package/graphql/schema/createFieldTypePluginRecords.js +3 -1
  200. package/graphql/schema/createFieldTypePluginRecords.js.map +1 -1
  201. package/graphql/schema/createManageResolvers.js +13 -10
  202. package/graphql/schema/createManageResolvers.js.map +1 -1
  203. package/graphql/schema/createManageSDL.js +37 -19
  204. package/graphql/schema/createManageSDL.js.map +1 -1
  205. package/graphql/schema/createPreviewResolvers.js +7 -6
  206. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  207. package/graphql/schema/createReadResolvers.js +7 -6
  208. package/graphql/schema/createReadResolvers.js.map +1 -1
  209. package/graphql/schema/createReadSDL.js +12 -5
  210. package/graphql/schema/createReadSDL.js.map +1 -1
  211. package/graphql/schema/resolvers/manage/resolveCreate.d.ts +2 -1
  212. package/graphql/schema/resolvers/manage/resolveCreate.js +4 -2
  213. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  214. package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +2 -1
  215. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +4 -2
  216. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  217. package/graphql/schema/resolvers/manage/resolveDelete.js +4 -2
  218. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  219. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +4 -2
  220. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -1
  221. package/graphql/schema/resolvers/manage/resolveGet.js +12 -5
  222. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  223. package/graphql/schema/resolvers/manage/resolveGetByIds.js +3 -1
  224. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  225. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +3 -1
  226. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  227. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +3 -1
  228. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -1
  229. package/graphql/schema/resolvers/manage/resolveList.js +3 -1
  230. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  231. package/graphql/schema/resolvers/manage/resolveMove.js +7 -10
  232. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -1
  233. package/graphql/schema/resolvers/manage/resolvePublish.js +3 -1
  234. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  235. package/graphql/schema/resolvers/manage/resolveRepublish.js +3 -1
  236. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  237. package/graphql/schema/resolvers/manage/resolveUnpublish.js +3 -1
  238. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  239. package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +2 -1
  240. package/graphql/schema/resolvers/manage/resolveUpdate.js +4 -2
  241. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  242. package/graphql/schema/resolvers/manage/resolveValidate.d.ts +8 -0
  243. package/graphql/schema/resolvers/manage/resolveValidate.js +20 -0
  244. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -0
  245. package/graphql/schema/resolvers/preview/resolveGet.js +6 -5
  246. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  247. package/graphql/schema/resolvers/preview/resolveList.js +3 -1
  248. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  249. package/graphql/schema/resolvers/read/resolveGet.js +6 -5
  250. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  251. package/graphql/schema/resolvers/read/resolveList.js +3 -1
  252. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  253. package/graphql/schema/schemaPlugins.js +3 -1
  254. package/graphql/schema/schemaPlugins.js.map +1 -1
  255. package/graphql/system.js +3 -1
  256. package/graphql/system.js.map +1 -1
  257. package/graphqlFields/boolean.js +3 -1
  258. package/graphqlFields/boolean.js.map +1 -1
  259. package/graphqlFields/datetime.js +5 -5
  260. package/graphqlFields/datetime.js.map +1 -1
  261. package/graphqlFields/dynamicZone/dynamicZoneField.js +42 -19
  262. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
  263. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +60 -12
  264. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -1
  265. package/graphqlFields/dynamicZone/index.js +3 -1
  266. package/graphqlFields/dynamicZone/index.js.map +1 -1
  267. package/graphqlFields/file.js +3 -1
  268. package/graphqlFields/file.js.map +1 -1
  269. package/graphqlFields/helpers.d.ts +0 -1
  270. package/graphqlFields/helpers.js +6 -18
  271. package/graphqlFields/helpers.js.map +1 -1
  272. package/graphqlFields/index.js +5 -2
  273. package/graphqlFields/index.js.map +1 -1
  274. package/graphqlFields/json.d.ts +2 -0
  275. package/graphqlFields/json.js +49 -0
  276. package/graphqlFields/json.js.map +1 -0
  277. package/graphqlFields/longText.js +14 -3
  278. package/graphqlFields/longText.js.map +1 -1
  279. package/graphqlFields/number.js +3 -1
  280. package/graphqlFields/number.js.map +1 -1
  281. package/graphqlFields/object.js +24 -44
  282. package/graphqlFields/object.js.map +1 -1
  283. package/graphqlFields/ref.js +28 -16
  284. package/graphqlFields/ref.js.map +1 -1
  285. package/graphqlFields/richText/RichTextPluginsProcessor.d.ts +6 -0
  286. package/graphqlFields/richText/RichTextPluginsProcessor.js +34 -0
  287. package/graphqlFields/richText/RichTextPluginsProcessor.js.map +1 -0
  288. package/graphqlFields/richText/richTextResolver.d.ts +7 -0
  289. package/graphqlFields/richText/richTextResolver.js +39 -0
  290. package/graphqlFields/richText/richTextResolver.js.map +1 -0
  291. package/graphqlFields/richText.js +11 -3
  292. package/graphqlFields/richText.js.map +1 -1
  293. package/graphqlFields/text.js +3 -1
  294. package/graphqlFields/text.js.map +1 -1
  295. package/htmlRenderer/LexicalRenderer.d.ts +5 -0
  296. package/htmlRenderer/LexicalRenderer.js +28 -0
  297. package/htmlRenderer/LexicalRenderer.js.map +1 -0
  298. package/htmlRenderer/createLexicalHTMLRenderer.d.ts +2 -0
  299. package/htmlRenderer/createLexicalHTMLRenderer.js +31 -0
  300. package/htmlRenderer/createLexicalHTMLRenderer.js.map +1 -0
  301. package/index.d.ts +2 -1
  302. package/index.js +20 -5
  303. package/index.js.map +1 -1
  304. package/modelManager/DefaultCmsModelManager.js +3 -5
  305. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  306. package/modelManager/index.js +3 -1
  307. package/modelManager/index.js.map +1 -1
  308. package/package.json +27 -26
  309. package/parameters/context.js +4 -2
  310. package/parameters/context.js.map +1 -1
  311. package/parameters/header.js +7 -6
  312. package/parameters/header.js.map +1 -1
  313. package/parameters/index.js +3 -1
  314. package/parameters/index.js.map +1 -1
  315. package/parameters/manual.js +9 -4
  316. package/parameters/manual.js.map +1 -1
  317. package/parameters/path.js +4 -3
  318. package/parameters/path.js.map +1 -1
  319. package/plugins/CmsGraphQLSchemaPlugin.js +5 -4
  320. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -1
  321. package/plugins/CmsGraphQLSchemaSorterPlugin.js +4 -5
  322. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -1
  323. package/plugins/CmsGroupPlugin.d.ts +6 -3
  324. package/plugins/CmsGroupPlugin.js +8 -6
  325. package/plugins/CmsGroupPlugin.js.map +1 -1
  326. package/plugins/CmsModelFieldConverterPlugin.js +5 -4
  327. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  328. package/plugins/CmsModelPlugin.d.ts +6 -4
  329. package/plugins/CmsModelPlugin.js +56 -27
  330. package/plugins/CmsModelPlugin.js.map +1 -1
  331. package/plugins/CmsParametersPlugin.js +7 -4
  332. package/plugins/CmsParametersPlugin.js.map +1 -1
  333. package/plugins/CmsRichTextRendererPlugin.d.ts +24 -0
  334. package/plugins/CmsRichTextRendererPlugin.js +28 -0
  335. package/plugins/CmsRichTextRendererPlugin.js.map +1 -0
  336. package/plugins/StorageOperationsCmsModelPlugin.js +5 -6
  337. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -1
  338. package/plugins/StorageTransformPlugin.d.ts +2 -2
  339. package/plugins/StorageTransformPlugin.js +3 -4
  340. package/plugins/StorageTransformPlugin.js.map +1 -1
  341. package/plugins/index.d.ts +1 -0
  342. package/plugins/index.js +14 -1
  343. package/plugins/index.js.map +1 -1
  344. package/storage/default.js +3 -1
  345. package/storage/default.js.map +1 -1
  346. package/storage/index.d.ts +1 -0
  347. package/storage/index.js +15 -0
  348. package/storage/index.js.map +1 -0
  349. package/storage/json.d.ts +2 -0
  350. package/storage/json.js +27 -0
  351. package/storage/json.js.map +1 -0
  352. package/storage/object.js +8 -8
  353. package/storage/object.js.map +1 -1
  354. package/types.d.ts +300 -260
  355. package/types.js +9 -20
  356. package/types.js.map +1 -1
  357. package/utils/access.d.ts +9 -0
  358. package/utils/access.js +26 -0
  359. package/utils/access.js.map +1 -0
  360. package/utils/caching/Cache.d.ts +2 -0
  361. package/utils/caching/Cache.js +51 -0
  362. package/utils/caching/Cache.js.map +1 -0
  363. package/utils/caching/CacheKey.d.ts +2 -0
  364. package/utils/caching/CacheKey.js +40 -0
  365. package/utils/caching/CacheKey.js.map +1 -0
  366. package/utils/caching/index.d.ts +2 -0
  367. package/utils/caching/index.js +29 -0
  368. package/utils/caching/index.js.map +1 -0
  369. package/utils/caching/types.d.ts +11 -0
  370. package/utils/caching/types.js +7 -0
  371. package/utils/caching/types.js.map +1 -0
  372. package/utils/converters/Converter.js +4 -5
  373. package/utils/converters/Converter.js.map +1 -1
  374. package/utils/converters/ConverterCollection.js +13 -7
  375. package/utils/converters/ConverterCollection.js.map +1 -1
  376. package/utils/converters/valueKeyStorageConverter.js +11 -4
  377. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  378. package/utils/createTypeFromFields.js +6 -1
  379. package/utils/createTypeFromFields.js.map +1 -1
  380. package/utils/createTypeName.js +3 -1
  381. package/utils/createTypeName.js.map +1 -1
  382. package/utils/date.d.ts +10 -0
  383. package/utils/date.js +36 -0
  384. package/utils/date.js.map +1 -0
  385. package/utils/entryStorage.d.ts +4 -4
  386. package/utils/entryStorage.js +6 -4
  387. package/utils/entryStorage.js.map +1 -1
  388. package/utils/filterAsync.js +9 -8
  389. package/utils/filterAsync.js.map +1 -1
  390. package/utils/getBaseFieldType.js +3 -1
  391. package/utils/getBaseFieldType.js.map +1 -1
  392. package/utils/getEntryDescription.js +3 -1
  393. package/utils/getEntryDescription.js.map +1 -1
  394. package/utils/getEntryImage.js +3 -1
  395. package/utils/getEntryImage.js.map +1 -1
  396. package/utils/getEntryTitle.js +3 -1
  397. package/utils/getEntryTitle.js.map +1 -1
  398. package/utils/getSchemaFromFieldPlugins.d.ts +13 -2
  399. package/utils/getSchemaFromFieldPlugins.js +22 -4
  400. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  401. package/utils/identity.d.ts +2 -0
  402. package/utils/identity.js +20 -0
  403. package/utils/identity.js.map +1 -0
  404. package/utils/incrementEntryIdVersion.js +3 -1
  405. package/utils/incrementEntryIdVersion.js.map +1 -1
  406. package/utils/index.d.ts +1 -0
  407. package/utils/index.js +18 -0
  408. package/utils/index.js.map +1 -0
  409. package/utils/permissions/EntriesPermissions.js +3 -1
  410. package/utils/permissions/EntriesPermissions.js.map +1 -1
  411. package/utils/permissions/ModelGroupsPermissions.d.ts +3 -5
  412. package/utils/permissions/ModelGroupsPermissions.js +8 -6
  413. package/utils/permissions/ModelGroupsPermissions.js.map +1 -1
  414. package/utils/permissions/ModelsPermissions.d.ts +9 -7
  415. package/utils/permissions/ModelsPermissions.js +5 -6
  416. package/utils/permissions/ModelsPermissions.js.map +1 -1
  417. package/utils/renderFields.js +3 -1
  418. package/utils/renderFields.js.map +1 -1
  419. package/utils/renderGetFilterFields.js +5 -4
  420. package/utils/renderGetFilterFields.js.map +1 -1
  421. package/utils/renderInputFields.js +3 -1
  422. package/utils/renderInputFields.js.map +1 -1
  423. package/utils/renderListFilterFields.js +12 -4
  424. package/utils/renderListFilterFields.js.map +1 -1
  425. package/utils/renderSortEnum.js +5 -2
  426. package/utils/renderSortEnum.js.map +1 -1
  427. package/utils/toSlug.js +3 -1
  428. package/utils/toSlug.js.map +1 -1
  429. package/validators/dateGte.js +3 -1
  430. package/validators/dateGte.js.map +1 -1
  431. package/validators/dateLte.js +3 -1
  432. package/validators/dateLte.js.map +1 -1
  433. package/validators/gte.js +4 -3
  434. package/validators/gte.js.map +1 -1
  435. package/validators/in.js +4 -3
  436. package/validators/in.js.map +1 -1
  437. package/validators/index.js +4 -3
  438. package/validators/index.js.map +1 -1
  439. package/validators/lte.js +4 -3
  440. package/validators/lte.js.map +1 -1
  441. package/validators/maxLength.js +4 -3
  442. package/validators/maxLength.js.map +1 -1
  443. package/validators/minLength.js +4 -3
  444. package/validators/minLength.js.map +1 -1
  445. package/validators/pattern.js +5 -3
  446. package/validators/pattern.js.map +1 -1
  447. package/validators/patternPlugins/email.js +3 -1
  448. package/validators/patternPlugins/email.js.map +1 -1
  449. package/validators/patternPlugins/index.js +3 -1
  450. package/validators/patternPlugins/index.js.map +1 -1
  451. package/validators/patternPlugins/lowerCase.js +3 -1
  452. package/validators/patternPlugins/lowerCase.js.map +1 -1
  453. package/validators/patternPlugins/lowerCaseSpace.js +3 -1
  454. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  455. package/validators/patternPlugins/upperCase.js +3 -1
  456. package/validators/patternPlugins/upperCase.js.map +1 -1
  457. package/validators/patternPlugins/upperCaseSpace.js +3 -1
  458. package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  459. package/validators/patternPlugins/url.js +3 -1
  460. package/validators/patternPlugins/url.js.map +1 -1
  461. package/validators/required.js +3 -1
  462. package/validators/required.js.map +1 -1
  463. package/validators/timeGte.js +4 -3
  464. package/validators/timeGte.js.map +1 -1
  465. package/validators/timeLte.js +4 -3
  466. package/validators/timeLte.js.map +1 -1
  467. package/validators/unique.js +4 -2
  468. package/validators/unique.js.map +1 -1
  469. package/crud/contentModel/afterCreate.d.ts +0 -8
  470. package/crud/contentModel/afterCreate.js +0 -16
  471. package/crud/contentModel/afterCreate.js.map +0 -1
  472. package/crud/contentModel/afterCreateFrom.d.ts +0 -8
  473. package/crud/contentModel/afterCreateFrom.js +0 -16
  474. package/crud/contentModel/afterCreateFrom.js.map +0 -1
  475. package/crud/contentModel/afterDelete.d.ts +0 -8
  476. package/crud/contentModel/afterDelete.js +0 -16
  477. package/crud/contentModel/afterDelete.js.map +0 -1
  478. package/crud/contentModel/afterUpdate.d.ts +0 -8
  479. package/crud/contentModel/afterUpdate.js +0 -16
  480. package/crud/contentModel/afterUpdate.js.map +0 -1
  481. package/crud/contentModel/validateLayout.d.ts +0 -2
  482. package/crud/contentModel/validateLayout.js +0 -28
  483. package/crud/contentModel/validateLayout.js.map +0 -1
  484. package/crud/settings.crud.d.ts +0 -12
  485. package/crud/settings.crud.js +0 -62
  486. package/crud/settings.crud.js.map +0 -1
  487. package/graphql/schema/resolvers/commonFieldResolvers.d.ts +0 -7
  488. package/graphql/schema/resolvers/commonFieldResolvers.js +0 -13
  489. package/graphql/schema/resolvers/commonFieldResolvers.js.map +0 -1
  490. package/utils/permissions/SettingsPermissions.d.ts +0 -4
  491. package/utils/permissions/SettingsPermissions.js +0 -9
  492. package/utils/permissions/SettingsPermissions.js.map +0 -1
  493. package/validators/dynamicZone.d.ts +0 -2
  494. package/validators/dynamicZone.js +0 -20
  495. package/validators/dynamicZone.js.map +0 -1
package/types.d.ts CHANGED
@@ -6,8 +6,17 @@ import { SecurityPermission } from "@webiny/api-security/types";
6
6
  import { DbContext } from "@webiny/handler-db/types";
7
7
  import { Topic } from "@webiny/pubsub/types";
8
8
  import { CmsModelConverterCallable } from "./utils/converters/ConverterCollection";
9
+ import { ModelGroupsPermissions } from "./utils/permissions/ModelGroupsPermissions";
10
+ import { ModelsPermissions } from "./utils/permissions/ModelsPermissions";
11
+ import { EntriesPermissions } from "./utils/permissions/EntriesPermissions";
12
+ import { HeadlessCmsExport, HeadlessCmsImport } from "./export/types";
9
13
  export declare type ApiEndpoint = "manage" | "preview" | "read";
10
- export interface HeadlessCms extends CmsSettingsContext, CmsSystemContext, CmsGroupContext, CmsModelContext, CmsEntryContext {
14
+ interface HeadlessCmsPermissions {
15
+ groups: ModelGroupsPermissions;
16
+ models: ModelsPermissions;
17
+ entries: EntriesPermissions;
18
+ }
19
+ export interface HeadlessCms extends CmsSystemContext, CmsGroupContext, CmsModelContext, CmsEntryContext {
11
20
  /**
12
21
  * API type
13
22
  */
@@ -36,6 +45,17 @@ export interface HeadlessCms extends CmsSettingsContext, CmsSystemContext, CmsGr
36
45
  * The storage operations loaded for current context.
37
46
  */
38
47
  storageOperations: HeadlessCmsStorageOperations;
48
+ /**
49
+ * Permissions for groups, models and entries.
50
+ *
51
+ * @internal
52
+ */
53
+ permissions: HeadlessCmsPermissions;
54
+ /**
55
+ * Export operations.
56
+ */
57
+ export: HeadlessCmsExport;
58
+ importing: HeadlessCmsImport;
39
59
  }
40
60
  /**
41
61
  * @description This combines all contexts used in the CMS into a single one.
@@ -112,12 +132,16 @@ export interface CmsModelFieldSettings {
112
132
  * Date field.
113
133
  */
114
134
  type?: string;
135
+ /**
136
+ * Disable full text search explicitly on this field.
137
+ */
138
+ disableFullTextSearch?: boolean;
115
139
  /**
116
140
  * There are a lot of other settings that are possible to add, so we keep the type opened.
117
141
  */
118
142
  [key: string]: any;
119
143
  }
120
- export declare type CmsModelFieldType = "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | "dynamicZone" | string;
144
+ export declare type CmsModelFieldType = "boolean" | "datetime" | "file" | "long-text" | "number" | "json" | "object" | "ref" | "rich-text" | "text" | "dynamicZone" | string;
121
145
  /**
122
146
  * A definition for content model field. This type exists on the app side as well.
123
147
  *
@@ -234,9 +258,6 @@ export interface CmsModelDynamicZoneField extends CmsModelField {
234
258
  export interface CmsModelFieldWithParent extends CmsModelField {
235
259
  parent?: CmsModelFieldWithParent | null;
236
260
  }
237
- export interface CmsModelDynamicZoneFieldWithParent extends CmsModelDynamicZoneField {
238
- parent?: CmsModelDynamicZoneFieldWithParent | null;
239
- }
240
261
  /**
241
262
  * A definition for dateTime field to show possible type of the field in settings.
242
263
  */
@@ -291,6 +312,9 @@ export interface CmsModelFieldValidatorValidateParams<T = any> {
291
312
  * @category ModelField
292
313
  * @category FieldValidation
293
314
  */
315
+ export interface CmsModelFieldValidatorPluginValidateCb {
316
+ (params: CmsModelFieldValidatorValidateParams): Promise<boolean>;
317
+ }
294
318
  export interface CmsModelFieldValidatorPlugin extends Plugin {
295
319
  /**
296
320
  * A plugin type.
@@ -307,7 +331,7 @@ export interface CmsModelFieldValidatorPlugin extends Plugin {
307
331
  /**
308
332
  * Validation method.
309
333
  */
310
- validate(params: CmsModelFieldValidatorValidateParams): Promise<boolean>;
334
+ validate: CmsModelFieldValidatorPluginValidateCb;
311
335
  };
312
336
  }
313
337
  /**
@@ -490,6 +514,10 @@ export interface CmsModel {
490
514
  * Only available for the plugin constructed models.
491
515
  */
492
516
  isPrivate?: boolean;
517
+ /**
518
+ * Is this model created via plugin?
519
+ */
520
+ isPlugin?: boolean;
493
521
  }
494
522
  /**
495
523
  * When sending model to the storage operations, it must contain createValueKeyToStorageConverter and createValueKeyFromStorageConverter
@@ -553,7 +581,7 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
553
581
  * fieldType: "myField"
554
582
  * ```
555
583
  */
556
- fieldType: string;
584
+ fieldType: CmsModelFieldType;
557
585
  /**
558
586
  * Is the field searchable via the GraphQL?
559
587
  *
@@ -856,44 +884,6 @@ export interface CmsIdentity {
856
884
  */
857
885
  type: string;
858
886
  }
859
- /**
860
- * Representation of settings database model.
861
- *
862
- * @category Database model
863
- */
864
- export interface CmsSettings {
865
- /**
866
- * Last content model change. Used to cache GraphQL schema.
867
- */
868
- contentModelLastChange: Date;
869
- /**
870
- * Settings tenant.
871
- */
872
- tenant: string;
873
- /**
874
- * Settings locale.
875
- */
876
- locale: string;
877
- }
878
- /**
879
- * Settings CRUD in context.
880
- *
881
- * @category Context
882
- */
883
- export interface CmsSettingsContext {
884
- /**
885
- * Gets settings model from the database.
886
- */
887
- getSettings: () => Promise<CmsSettings | null>;
888
- /**
889
- * Updates settings model with a new date.
890
- */
891
- updateModelLastChange: () => Promise<void>;
892
- /**
893
- * Get the datetime when content model last changed.
894
- */
895
- getModelLastChange: () => Promise<Date | null>;
896
- }
897
887
  export interface OnSystemBeforeInstallTopicParams {
898
888
  tenant: string;
899
889
  locale: string;
@@ -912,18 +902,7 @@ export declare type CmsSystemContext = {
912
902
  setSystemVersion: (version: string) => Promise<void>;
913
903
  installSystem: () => Promise<void>;
914
904
  /**
915
- * Lifecycle events - deprecated
916
- */
917
- /**
918
- * @deprecated
919
- */
920
- onBeforeSystemInstall: Topic<OnSystemBeforeInstallTopicParams>;
921
- /**
922
- * @deprecated
923
- */
924
- onAfterSystemInstall: Topic<OnSystemAfterInstallTopicParams>;
925
- /**
926
- * Released in 5.34.0
905
+ * Lifecycle Events
927
906
  */
928
907
  onSystemBeforeInstall: Topic<OnSystemBeforeInstallTopicParams>;
929
908
  onSystemAfterInstall: Topic<OnSystemAfterInstallTopicParams>;
@@ -936,9 +915,10 @@ export declare type CmsSystemContext = {
936
915
  * @category GraphQL params
937
916
  */
938
917
  export interface CmsGroupCreateInput {
918
+ id?: string;
939
919
  name: string;
940
920
  slug?: string;
941
- description?: string;
921
+ description?: string | null;
942
922
  icon: string;
943
923
  }
944
924
  /**
@@ -983,7 +963,7 @@ export interface CmsGroup {
983
963
  /**
984
964
  * Description for the group.
985
965
  */
986
- description: string;
966
+ description: string | null;
987
967
  /**
988
968
  * Icon for the group. In a form of "ico/ico".
989
969
  */
@@ -1010,6 +990,10 @@ export interface CmsGroup {
1010
990
  * Only available for the plugin constructed groups.
1011
991
  */
1012
992
  isPrivate?: boolean;
993
+ /**
994
+ * Is this group created via plugin?
995
+ */
996
+ isPlugin?: boolean;
1013
997
  }
1014
998
  /**
1015
999
  * A `data.where` parameter received when listing content model groups.
@@ -1021,7 +1005,6 @@ export interface CmsGroupListParams {
1021
1005
  where: {
1022
1006
  tenant: string;
1023
1007
  locale: string;
1024
- [key: string]: any;
1025
1008
  };
1026
1009
  }
1027
1010
  /**
@@ -1105,7 +1088,7 @@ export interface CmsGroupContext {
1105
1088
  /**
1106
1089
  * Gets content model group by given id.
1107
1090
  */
1108
- getGroup: (id: string) => Promise<CmsGroup | null>;
1091
+ getGroup: (id: string) => Promise<CmsGroup>;
1109
1092
  /**
1110
1093
  * List all content model groups. Filterable via params.
1111
1094
  */
@@ -1127,34 +1110,7 @@ export interface CmsGroupContext {
1127
1110
  */
1128
1111
  clearGroupsCache: () => void;
1129
1112
  /**
1130
- * Lifecycle events - deprecated
1131
- */
1132
- /**
1133
- * @deprecated
1134
- */
1135
- onBeforeGroupCreate: Topic<OnGroupBeforeCreateTopicParams>;
1136
- /**
1137
- * @deprecated
1138
- */
1139
- onAfterGroupCreate: Topic<OnGroupAfterCreateTopicParams>;
1140
- /**
1141
- * @deprecated
1142
- */
1143
- onBeforeGroupUpdate: Topic<OnGroupBeforeUpdateTopicParams>;
1144
- /**
1145
- * @deprecated
1146
- */
1147
- onAfterGroupUpdate: Topic<OnGroupAfterUpdateTopicParams>;
1148
- /**
1149
- * @deprecated
1150
- */
1151
- onBeforeGroupDelete: Topic<OnGroupBeforeDeleteTopicParams>;
1152
- /**
1153
- * @deprecated
1154
- */
1155
- onAfterGroupDelete: Topic<OnGroupAfterDeleteTopicParams>;
1156
- /**
1157
- * Lifecycle events released in 5.33.0
1113
+ * Lifecycle Events
1158
1114
  */
1159
1115
  onGroupBeforeCreate: Topic<OnGroupBeforeCreateTopicParams>;
1160
1116
  onGroupAfterCreate: Topic<OnGroupAfterCreateTopicParams>;
@@ -1424,27 +1380,88 @@ export interface CmsEntry<T = CmsEntryValues> {
1424
1380
  */
1425
1381
  id: string;
1426
1382
  /**
1427
- * CreatedBy object reference.
1383
+ * Revision-level meta fields. 👇
1428
1384
  */
1429
- createdBy: CmsIdentity;
1430
1385
  /**
1431
- * OwnedBy object reference. Can be different from CreatedBy.
1386
+ * An ISO 8601 date/time string.
1432
1387
  */
1433
- ownedBy: CmsIdentity;
1388
+ revisionCreatedOn: string;
1434
1389
  /**
1435
- * ModifiedBy object reference. Last person who modified the entry.
1390
+ * An ISO 8601 date/time string.
1436
1391
  */
1437
- modifiedBy?: CmsIdentity | null;
1392
+ revisionSavedOn: string;
1393
+ /**
1394
+ * An ISO 8601 date/time string.
1395
+ */
1396
+ revisionModifiedOn: string | null;
1397
+ /**
1398
+ * An ISO 8601 date/time string.
1399
+ */
1400
+ revisionFirstPublishedOn: string | null;
1401
+ /**
1402
+ * An ISO 8601 date/time string.
1403
+ */
1404
+ revisionLastPublishedOn: string | null;
1405
+ /**
1406
+ * Identity that last ionCreated the entry.
1407
+ */
1408
+ revisionCreatedBy: CmsIdentity;
1409
+ /**
1410
+ * Identity that last ionSaved the entry.
1411
+ */
1412
+ revisionSavedBy: CmsIdentity;
1413
+ /**
1414
+ * Identity that last ionModified the entry.
1415
+ */
1416
+ revisionModifiedBy: CmsIdentity | null;
1417
+ /**
1418
+ * Identity that first published the entry.
1419
+ */
1420
+ revisionFirstPublishedBy: CmsIdentity | null;
1438
1421
  /**
1439
- * A string of Date.toISOString() type.
1440
- * Populated on creation.
1422
+ * Identity that last published the entry.
1423
+ */
1424
+ revisionLastPublishedBy: CmsIdentity | null;
1425
+ /**
1426
+ * An ISO 8601 date/time string.
1441
1427
  */
1442
1428
  createdOn: string;
1443
1429
  /**
1444
- * A string of Date.toISOString() type.
1445
- * Populated every time entry is saved.
1430
+ * An ISO 8601 date/time string.
1446
1431
  */
1447
1432
  savedOn: string;
1433
+ /**
1434
+ * An ISO 8601 date/time string.
1435
+ */
1436
+ modifiedOn: string | null;
1437
+ /**
1438
+ * An ISO 8601 date/time string.
1439
+ */
1440
+ firstPublishedOn: string | null;
1441
+ /**
1442
+ * An ISO 8601 date/time string.
1443
+ */
1444
+ lastPublishedOn: string | null;
1445
+ /**
1446
+ * Identity that last created the entry.
1447
+ */
1448
+ createdBy: CmsIdentity;
1449
+ /**
1450
+ * Identity that last saved the entry.
1451
+ */
1452
+ savedBy: CmsIdentity;
1453
+ /**
1454
+ * Identity that last modified the entry.
1455
+ */
1456
+ modifiedBy: CmsIdentity | null;
1457
+ /**
1458
+ * Identity that first published the entry.
1459
+ */
1460
+ firstPublishedBy: CmsIdentity | null;
1461
+ /**
1462
+ * Identity that last published the entry.
1463
+ */
1464
+ lastPublishedBy: CmsIdentity | null;
1448
1465
  /**
1449
1466
  * Model ID of the definition for the entry.
1450
1467
  * @see CmsModel
@@ -1455,11 +1472,6 @@ export interface CmsEntry<T = CmsEntryValues> {
1455
1472
  * @see I18NLocale.code
1456
1473
  */
1457
1474
  locale: string;
1458
- /**
1459
- * A string of Date.toISOString() type - if published.
1460
- * Populated when entry is published.
1461
- */
1462
- publishedOn?: string;
1463
1475
  /**
1464
1476
  * A revision version of the entry.
1465
1477
  */
@@ -1675,59 +1687,19 @@ export interface CmsModelContext {
1675
1687
  * Get an instance of CmsModelManager for given content modelId.
1676
1688
  *
1677
1689
  * @see CmsModelManager
1678
- *
1679
- * @deprecated use the getEntryManager() method instead
1680
1690
  */
1681
- getModelManager: (model: CmsModel | string) => Promise<CmsModelManager>;
1682
1691
  getEntryManager: (model: CmsModel | string) => Promise<CmsModelManager>;
1683
1692
  /**
1684
1693
  * Get all content model managers mapped by modelId.
1685
1694
  * @see CmsModelManager
1686
- * @deprecated use getEntryManagers instead
1687
1695
  */
1688
- getManagers: () => Map<string, CmsModelManager>;
1689
1696
  getEntryManagers: () => Map<string, CmsModelManager>;
1690
1697
  /**
1691
1698
  * Clear all the model caches.
1692
1699
  */
1693
1700
  clearModelsCache: () => void;
1694
1701
  /**
1695
- * Lifecycle events - deprecated.
1696
- */
1697
- /**
1698
- * @deprecated
1699
- */
1700
- onBeforeModelCreate: Topic<OnModelBeforeCreateTopicParams>;
1701
- /**
1702
- * @deprecated
1703
- */
1704
- onAfterModelCreate: Topic<OnModelAfterCreateTopicParams>;
1705
- /**
1706
- * @deprecated
1707
- */
1708
- onBeforeModelCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
1709
- /**
1710
- * @deprecated
1711
- */
1712
- onAfterModelCreateFrom: Topic<OnModelAfterCreateFromTopicParams>;
1713
- /**
1714
- * @deprecated
1715
- */
1716
- onBeforeModelUpdate: Topic<OnModelBeforeUpdateTopicParams>;
1717
- /**
1718
- * @deprecated
1719
- */
1720
- onAfterModelUpdate: Topic<OnModelAfterUpdateTopicParams>;
1721
- /**
1722
- * @deprecated
1723
- */
1724
- onBeforeModelDelete: Topic<OnModelBeforeDeleteTopicParams>;
1725
- /**
1726
- * @deprecated
1727
- */
1728
- onAfterModelDelete: Topic<OnModelAfterDeleteTopicParams>;
1729
- /**
1730
- * Lifecycle events - released in 5.33.0
1702
+ * Lifecycle Events
1731
1703
  */
1732
1704
  onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;
1733
1705
  onModelAfterCreate: Topic<OnModelAfterCreateTopicParams>;
@@ -1781,23 +1753,51 @@ export interface CmsEntryListWhere {
1781
1753
  entryId_in?: string[];
1782
1754
  entryId_not_in?: string[];
1783
1755
  /**
1784
- * Contains the owner of the entry. An "owner" is the identity who originally created the entry.
1785
- * Subsequent revisions can be created by other identities, and those will be stored in `createdBy`,
1786
- * but the `owner` is always the original author of the entry.
1787
- *
1788
- * Can be sent via the API or set internal if user can see only their own entries.
1789
- */
1790
- ownedBy?: string;
1791
- ownedBy_not?: string;
1792
- ownedBy_in?: string[];
1793
- ownedBy_not_in?: string[];
1794
- /**
1795
- * Who created the entry?
1756
+ * Revision-level meta fields. 👇
1757
+ */
1758
+ revisionCreatedBy?: string;
1759
+ revisionCreatedBy_not?: string;
1760
+ revisionCreatedBy_in?: string[];
1761
+ revisionCreatedBy_not_in?: string[];
1762
+ revisionModifiedBy?: string;
1763
+ revisionModifiedBy_not?: string;
1764
+ revisionModifiedBy_in?: string[];
1765
+ revisionModifiedBy_not_in?: string[];
1766
+ revisionSavedBy?: string;
1767
+ revisionSavedBy_not?: string;
1768
+ revisionSavedBy_in?: string[];
1769
+ revisionSavedBy_not_in?: string[];
1770
+ revisionFirstPublishedBy?: string;
1771
+ revisionFirstPublishedBy_not?: string;
1772
+ revisionFirstPublishedBy_in?: string[];
1773
+ revisionFirstPublishedBy_not_in?: string[];
1774
+ revisionLastPublishedBy?: string;
1775
+ revisionLastPublishedBy_not?: string;
1776
+ revisionLastPublishedBy_in?: string[];
1777
+ revisionLastPublishedBy_not_in?: string[];
1778
+ /**
1779
+ * Entry-level meta fields. 👇
1796
1780
  */
1797
1781
  createdBy?: string;
1798
1782
  createdBy_not?: string;
1799
1783
  createdBy_in?: string[];
1800
1784
  createdBy_not_in?: string[];
1785
+ modifiedBy?: string;
1786
+ modifiedBy_not?: string;
1787
+ modifiedBy_in?: string[];
1788
+ modifiedBy_not_in?: string[];
1789
+ savedBy?: string;
1790
+ savedBy_not?: string;
1791
+ savedBy_in?: string[];
1792
+ savedBy_not_in?: string[];
1793
+ firstPublishedBy?: string;
1794
+ firstPublishedBy_not?: string;
1795
+ firstPublishedBy_in?: string[];
1796
+ firstPublishedBy_not_in?: string[];
1797
+ lastPublishedBy?: string;
1798
+ lastPublishedBy_not?: string;
1799
+ lastPublishedBy_in?: string[];
1800
+ lastPublishedBy_not_in?: string[];
1801
1801
  /**
1802
1802
  * Version of the entry.
1803
1803
  *
@@ -1823,6 +1823,17 @@ export interface CmsEntryListWhere {
1823
1823
  * @internal
1824
1824
  */
1825
1825
  latest?: boolean;
1826
+ /**
1827
+ * ACO related parameters.
1828
+ */
1829
+ wbyAco_location?: {
1830
+ folderId?: string;
1831
+ folderId_not?: string;
1832
+ folderId_in?: string[];
1833
+ folderId_not_in?: string[];
1834
+ AND?: CmsEntryListWhere[];
1835
+ OR?: CmsEntryListWhere[];
1836
+ };
1826
1837
  /**
1827
1838
  * This is to allow querying by any content model field defined by the user.
1828
1839
  */
@@ -1949,20 +1960,42 @@ export interface OnEntryUpdateErrorTopicParams {
1949
1960
  entry: CmsEntry;
1950
1961
  model: CmsModel;
1951
1962
  }
1963
+ /**
1964
+ * Move
1965
+ */
1966
+ export interface OnEntryBeforeMoveTopicParams {
1967
+ folderId: string;
1968
+ entry: CmsEntry;
1969
+ model: CmsModel;
1970
+ }
1971
+ export interface OnEntryAfterMoveTopicParams {
1972
+ folderId: string;
1973
+ entry: CmsEntry;
1974
+ model: CmsModel;
1975
+ }
1976
+ export interface OnEntryMoveErrorTopicParams {
1977
+ error: Error;
1978
+ folderId: string;
1979
+ entry: CmsEntry;
1980
+ model: CmsModel;
1981
+ }
1952
1982
  /**
1953
1983
  * Publish
1954
1984
  */
1955
1985
  export interface OnEntryBeforePublishTopicParams {
1986
+ original: CmsEntry;
1956
1987
  entry: CmsEntry;
1957
1988
  model: CmsModel;
1958
1989
  }
1959
1990
  export interface OnEntryAfterPublishTopicParams {
1991
+ original: CmsEntry;
1960
1992
  entry: CmsEntry;
1961
1993
  model: CmsModel;
1962
1994
  storageEntry: CmsEntry;
1963
1995
  }
1964
1996
  export interface OnEntryPublishErrorTopicParams {
1965
1997
  error: Error;
1998
+ original: CmsEntry;
1966
1999
  entry: CmsEntry;
1967
2000
  model: CmsModel;
1968
2001
  }
@@ -2056,28 +2089,116 @@ export interface EntryBeforeListTopicParams {
2056
2089
  */
2057
2090
  export interface CreateCmsEntryInput {
2058
2091
  id?: string;
2092
+ status?: CmsEntryStatus;
2093
+ /**
2094
+ * Entry-level meta fields. 👇
2095
+ */
2096
+ createdOn?: Date | string;
2097
+ modifiedOn?: Date | string | null;
2098
+ savedOn?: Date | string;
2099
+ createdBy?: CmsIdentity;
2100
+ modifiedBy?: CmsIdentity | null;
2101
+ savedBy?: CmsIdentity;
2102
+ firstPublishedOn?: Date | string;
2103
+ lastPublishedOn?: Date | string;
2104
+ firstPublishedBy?: CmsIdentity;
2105
+ lastPublishedBy?: CmsIdentity;
2106
+ /**
2107
+ * Revision-level meta fields. 👇
2108
+ */
2109
+ revisionCreatedOn?: Date | string;
2110
+ revisionModifiedOn?: Date | string | null;
2111
+ revisionSavedOn?: Date | string;
2112
+ revisionCreatedBy?: CmsIdentity;
2113
+ revisionModifiedBy?: CmsIdentity | null;
2114
+ revisionSavedBy?: CmsIdentity;
2115
+ revisionFirstPublishedOn?: Date | string;
2116
+ revisionLastPublishedOn?: Date | string;
2117
+ revisionFirstPublishedBy?: CmsIdentity;
2118
+ revisionLastPublishedBy?: CmsIdentity;
2059
2119
  wbyAco_location?: {
2060
2120
  folderId?: string | null;
2061
2121
  };
2062
2122
  [key: string]: any;
2063
2123
  }
2124
+ export interface CreateCmsEntryOptionsInput {
2125
+ skipValidators?: string[];
2126
+ }
2064
2127
  /**
2065
2128
  * @category Context
2066
2129
  * @category CmsEntry
2067
2130
  */
2068
2131
  export interface CreateFromCmsEntryInput {
2132
+ /**
2133
+ * Revision-level meta fields. 👇
2134
+ */
2135
+ revisionCreatedOn?: Date;
2136
+ revisionSavedOn?: Date;
2137
+ revisionModifiedOn?: Date;
2138
+ revisionCreatedBy?: CmsIdentity;
2139
+ revisionModifiedBy?: CmsIdentity;
2140
+ revisionSavedBy?: CmsIdentity;
2141
+ revisionFirstPublishedOn?: Date | string;
2142
+ revisionLastPublishedOn?: Date | string;
2143
+ revisionFirstPublishedBy?: CmsIdentity;
2144
+ revisionLastPublishedBy?: CmsIdentity;
2145
+ /**
2146
+ * Entry-level meta fields. 👇
2147
+ */
2148
+ createdOn?: Date;
2149
+ savedOn?: Date;
2150
+ modifiedOn?: Date;
2151
+ createdBy?: CmsIdentity;
2152
+ modifiedBy?: CmsIdentity;
2153
+ savedBy?: CmsIdentity;
2154
+ firstPublishedOn?: Date | string;
2155
+ lastPublishedOn?: Date | string;
2156
+ firstPublishedBy?: CmsIdentity;
2157
+ lastPublishedBy?: CmsIdentity;
2069
2158
  [key: string]: any;
2070
2159
  }
2160
+ export interface CreateRevisionCmsEntryOptionsInput {
2161
+ skipValidators?: string[];
2162
+ }
2071
2163
  /**
2072
2164
  * @category Context
2073
2165
  * @category CmsEntry
2074
2166
  */
2075
2167
  export interface UpdateCmsEntryInput {
2168
+ /**
2169
+ * Revision-level meta fields. 👇
2170
+ */
2171
+ revisionCreatedOn?: Date | string | null;
2172
+ revisionModifiedOn?: Date | string | null;
2173
+ revisionSavedOn?: Date | string | null;
2174
+ revisionFirstPublishedOn?: Date | string | null;
2175
+ revisionLastPublishedOn?: Date | string | null;
2176
+ revisionModifiedBy?: CmsIdentity | null;
2177
+ revisionCreatedBy?: CmsIdentity | null;
2178
+ revisionSavedBy?: CmsIdentity | null;
2179
+ revisionFirstPublishedBy?: CmsIdentity | null;
2180
+ revisionLastPublishedBy?: CmsIdentity | null;
2181
+ /**
2182
+ * Entry-level meta fields. 👇
2183
+ */
2184
+ createdOn?: Date | string | null;
2185
+ modifiedOn?: Date | string | null;
2186
+ savedOn?: Date | string | null;
2187
+ firstPublishedOn?: Date | string | null;
2188
+ lastPublishedOn?: Date | string | null;
2189
+ createdBy?: CmsIdentity | null;
2190
+ modifiedBy?: CmsIdentity | null;
2191
+ savedBy?: CmsIdentity | null;
2192
+ firstPublishedBy?: CmsIdentity | null;
2193
+ lastPublishedBy?: CmsIdentity | null;
2076
2194
  wbyAco_location?: {
2077
2195
  folderId?: string | null;
2078
2196
  };
2079
2197
  [key: string]: any;
2080
2198
  }
2199
+ export interface UpdateCmsEntryOptionsInput {
2200
+ skipValidators?: string[];
2201
+ }
2081
2202
  /**
2082
2203
  * @category Context
2083
2204
  * @category CmsEntry
@@ -2106,6 +2227,9 @@ export interface DeleteMultipleEntriesParams {
2106
2227
  export declare type DeleteMultipleEntriesResponse = {
2107
2228
  id: string;
2108
2229
  }[];
2230
+ export interface CmsEntryValidateResponse {
2231
+ [key: string]: any;
2232
+ }
2109
2233
  /**
2110
2234
  * Cms Entry CRUD methods in the context.
2111
2235
  *
@@ -2148,15 +2272,23 @@ export interface CmsEntryContext {
2148
2272
  /**
2149
2273
  * Create a new content entry.
2150
2274
  */
2151
- createEntry: (model: CmsModel, input: CreateCmsEntryInput) => Promise<CmsEntry>;
2275
+ createEntry: (model: CmsModel, input: CreateCmsEntryInput, options?: CreateCmsEntryOptionsInput) => Promise<CmsEntry>;
2152
2276
  /**
2153
2277
  * Create a new entry from already existing entry.
2154
2278
  */
2155
- createEntryRevisionFrom: (model: CmsModel, id: string, input: CreateFromCmsEntryInput) => Promise<CmsEntry>;
2279
+ createEntryRevisionFrom: (model: CmsModel, id: string, input: CreateFromCmsEntryInput, options?: CreateRevisionCmsEntryOptionsInput) => Promise<CmsEntry>;
2156
2280
  /**
2157
2281
  * Update existing entry.
2158
2282
  */
2159
- updateEntry: (model: CmsModel, id: string, input: UpdateCmsEntryInput, meta?: Record<string, any>) => Promise<CmsEntry>;
2283
+ updateEntry: (model: CmsModel, id: string, input: UpdateCmsEntryInput, meta?: Record<string, any>, options?: UpdateCmsEntryOptionsInput) => Promise<CmsEntry>;
2284
+ /**
2285
+ * Validate the entry - either new one or existing one.
2286
+ */
2287
+ validateEntry: (model: CmsModel, id?: string, input?: UpdateCmsEntryInput) => Promise<CmsEntryValidateResponse>;
2288
+ /**
2289
+ * Move entry, and all its revisions, to a new folder.
2290
+ */
2291
+ moveEntry: (model: CmsModel, id: string, folderId: string) => Promise<CmsEntry>;
2160
2292
  /**
2161
2293
  * Method that republishes entry with given identifier.
2162
2294
  * @internal
@@ -2193,74 +2325,7 @@ export interface CmsEntryContext {
2193
2325
  */
2194
2326
  getUniqueFieldValues: (model: CmsModel, params: GetUniqueFieldValuesParams) => Promise<CmsEntryUniqueValue[]>;
2195
2327
  /**
2196
- * Lifecycle events - deprecated.
2197
- */
2198
- /**
2199
- * @deprecated
2200
- */
2201
- onBeforeEntryCreate: Topic<OnEntryBeforeCreateTopicParams>;
2202
- /**
2203
- * @deprecated
2204
- */
2205
- onAfterEntryCreate: Topic<OnEntryAfterCreateTopicParams>;
2206
- /**
2207
- * @deprecated
2208
- */
2209
- onBeforeEntryCreateRevision: Topic<OnEntryRevisionBeforeCreateTopicParams>;
2210
- /**
2211
- * @deprecated
2212
- */
2213
- onAfterEntryCreateRevision: Topic<OnEntryRevisionAfterCreateTopicParams>;
2214
- /**
2215
- * @deprecated
2216
- */
2217
- onBeforeEntryUpdate: Topic<OnEntryBeforeUpdateTopicParams>;
2218
- /**
2219
- * @deprecated
2220
- */
2221
- onAfterEntryUpdate: Topic<OnEntryAfterUpdateTopicParams>;
2222
- /**
2223
- * @deprecated
2224
- */
2225
- onBeforeEntryDelete: Topic<OnEntryBeforeDeleteTopicParams>;
2226
- /**
2227
- * @deprecated
2228
- */
2229
- onAfterEntryDelete: Topic<OnEntryAfterDeleteTopicParams>;
2230
- /**
2231
- * @deprecated
2232
- */
2233
- onBeforeEntryDeleteRevision: Topic<OnEntryRevisionBeforeDeleteTopicParams>;
2234
- /**
2235
- * @deprecated
2236
- */
2237
- onAfterEntryDeleteRevision: Topic<OnEntryRevisionAfterDeleteTopicParams>;
2238
- /**
2239
- * @deprecated
2240
- */
2241
- onBeforeEntryPublish: Topic<OnEntryBeforePublishTopicParams>;
2242
- /**
2243
- * @deprecated
2244
- */
2245
- onAfterEntryPublish: Topic<OnEntryAfterPublishTopicParams>;
2246
- /**
2247
- * @deprecated
2248
- */
2249
- onBeforeEntryUnpublish: Topic<OnEntryBeforeUnpublishTopicParams>;
2250
- /**
2251
- * @deprecated
2252
- */
2253
- onAfterEntryUnpublish: Topic<OnEntryAfterUnpublishTopicParams>;
2254
- /**
2255
- * @deprecated
2256
- */
2257
- onBeforeEntryGet: Topic<OnEntryBeforeGetTopicParams>;
2258
- /**
2259
- * @deprecated
2260
- */
2261
- onBeforeEntryList: Topic<EntryBeforeListTopicParams>;
2262
- /**
2263
- * Lifecycle events released in 5.33.0
2328
+ * Lifecycle Events
2264
2329
  */
2265
2330
  onEntryBeforeCreate: Topic<OnEntryBeforeCreateTopicParams>;
2266
2331
  onEntryAfterCreate: Topic<OnEntryAfterCreateTopicParams>;
@@ -2271,6 +2336,9 @@ export interface CmsEntryContext {
2271
2336
  onEntryBeforeUpdate: Topic<OnEntryBeforeUpdateTopicParams>;
2272
2337
  onEntryAfterUpdate: Topic<OnEntryAfterUpdateTopicParams>;
2273
2338
  onEntryUpdateError: Topic<OnEntryUpdateErrorTopicParams>;
2339
+ onEntryBeforeMove: Topic<OnEntryBeforeMoveTopicParams>;
2340
+ onEntryAfterMove: Topic<OnEntryAfterMoveTopicParams>;
2341
+ onEntryMoveError: Topic<OnEntryMoveErrorTopicParams>;
2274
2342
  onEntryBeforeDelete: Topic<OnEntryBeforeDeleteTopicParams>;
2275
2343
  onEntryAfterDelete: Topic<OnEntryAfterDeleteTopicParams>;
2276
2344
  onEntryDeleteError: Topic<OnEntryDeleteErrorTopicParams>;
@@ -2307,13 +2375,6 @@ interface CmsEntryResolverFactoryParams {
2307
2375
  export declare type CmsEntryResolverFactory<TSource = any, TArgs = any, TContext = CmsContext> = {
2308
2376
  (params: CmsEntryResolverFactoryParams): GraphQLFieldResolver<TSource, TArgs, TContext>;
2309
2377
  };
2310
- /**
2311
- * Settings security permission.
2312
- *
2313
- * @category SecurityPermission
2314
- */
2315
- export interface CmsSettingsPermission extends SecurityPermission {
2316
- }
2317
2378
  /**
2318
2379
  * A base security permission for CMS.
2319
2380
  *
@@ -2674,6 +2735,10 @@ export interface CmsEntryStorageOperations<T extends CmsStorageEntry = CmsStorag
2674
2735
  * Update existing entry.
2675
2736
  */
2676
2737
  update: (model: CmsModel, params: CmsEntryStorageOperationsUpdateParams<T>) => Promise<T>;
2738
+ /**
2739
+ * Move entry and all its entries into a new folder.
2740
+ */
2741
+ move: (model: CmsModel, id: string, folderId: string) => Promise<void>;
2677
2742
  /**
2678
2743
  * Delete the entry revision.
2679
2744
  */
@@ -2706,30 +2771,6 @@ export declare enum CONTENT_ENTRY_STATUS {
2706
2771
  PUBLISHED = "published",
2707
2772
  UNPUBLISHED = "unpublished"
2708
2773
  }
2709
- export interface CmsSettingsStorageOperationsGetParams {
2710
- locale: string;
2711
- tenant: string;
2712
- }
2713
- export interface CmsSettingsStorageOperationsCreateParams {
2714
- settings: CmsSettings;
2715
- }
2716
- export interface CmsSettingsStorageOperationsUpdateParams {
2717
- settings: CmsSettings;
2718
- }
2719
- export interface CmsSettingsStorageOperations {
2720
- /**
2721
- * Get the settings from the storage.
2722
- */
2723
- get: (params: CmsSettingsStorageOperationsGetParams) => Promise<CmsSettings | null>;
2724
- /**
2725
- * Create settings in the storage.
2726
- */
2727
- create: (params: CmsSettingsStorageOperationsCreateParams) => Promise<CmsSettings>;
2728
- /**
2729
- * Update the settings in the storage.
2730
- */
2731
- update: (params: CmsSettingsStorageOperationsUpdateParams) => Promise<CmsSettings>;
2732
- }
2733
2774
  export interface CmsSystem {
2734
2775
  version?: string;
2735
2776
  readAPIKey?: string;
@@ -2764,7 +2805,6 @@ export interface CmsSystemStorageOperations {
2764
2805
  export interface HeadlessCmsStorageOperations<C = CmsContext> {
2765
2806
  name: string;
2766
2807
  system: CmsSystemStorageOperations;
2767
- settings: CmsSettingsStorageOperations;
2768
2808
  groups: CmsGroupStorageOperations;
2769
2809
  models: CmsModelStorageOperations;
2770
2810
  entries: CmsEntryStorageOperations;