@webiny/api-headless-cms 0.0.0-unstable.5e7233243f → 0.0.0-unstable.60a863e033

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 (358) hide show
  1. package/context.d.ts +5 -2
  2. package/context.js +55 -25
  3. package/context.js.map +1 -1
  4. package/crud/contentEntry/afterDelete.d.ts +2 -2
  5. package/crud/contentEntry/afterDelete.js +2 -7
  6. package/crud/contentEntry/afterDelete.js.map +1 -1
  7. package/crud/contentEntry/beforeCreate.d.ts +2 -2
  8. package/crud/contentEntry/beforeCreate.js +2 -5
  9. package/crud/contentEntry/beforeCreate.js.map +1 -1
  10. package/crud/contentEntry/beforeUpdate.d.ts +2 -2
  11. package/crud/contentEntry/beforeUpdate.js +2 -5
  12. package/crud/contentEntry/beforeUpdate.js.map +1 -1
  13. package/crud/contentEntry/entryDataValidation.js +4 -47
  14. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  15. package/crud/contentEntry/markLockedFields.js +22 -39
  16. package/crud/contentEntry/markLockedFields.js.map +1 -1
  17. package/crud/contentEntry/referenceFieldsMapping.js +15 -73
  18. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  19. package/crud/contentEntry/searchableFields.d.ts +9 -0
  20. package/crud/contentEntry/searchableFields.js +72 -0
  21. package/crud/contentEntry/searchableFields.js.map +1 -0
  22. package/crud/contentEntry.crud.d.ts +0 -2
  23. package/crud/contentEntry.crud.js +292 -395
  24. package/crud/contentEntry.crud.js.map +1 -1
  25. package/crud/contentModel/afterCreate.d.ts +3 -3
  26. package/crud/contentModel/afterCreate.js +5 -7
  27. package/crud/contentModel/afterCreate.js.map +1 -1
  28. package/crud/contentModel/afterCreateFrom.d.ts +3 -3
  29. package/crud/contentModel/afterCreateFrom.js +5 -7
  30. package/crud/contentModel/afterCreateFrom.js.map +1 -1
  31. package/crud/contentModel/afterDelete.d.ts +3 -3
  32. package/crud/contentModel/afterDelete.js +5 -7
  33. package/crud/contentModel/afterDelete.js.map +1 -1
  34. package/crud/contentModel/afterUpdate.d.ts +3 -3
  35. package/crud/contentModel/afterUpdate.js +5 -7
  36. package/crud/contentModel/afterUpdate.js.map +1 -1
  37. package/crud/contentModel/beforeCreate.d.ts +5 -6
  38. package/crud/contentModel/beforeCreate.js +17 -46
  39. package/crud/contentModel/beforeCreate.js.map +1 -1
  40. package/crud/contentModel/beforeDelete.d.ts +3 -3
  41. package/crud/contentModel/beforeDelete.js +6 -16
  42. package/crud/contentModel/beforeDelete.js.map +1 -1
  43. package/crud/contentModel/beforeUpdate.d.ts +4 -6
  44. package/crud/contentModel/beforeUpdate.js +7 -12
  45. package/crud/contentModel/beforeUpdate.js.map +1 -1
  46. package/crud/contentModel/contentModelManagerFactory.js +0 -7
  47. package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
  48. package/crud/contentModel/createFieldStorageId.js +4 -3
  49. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  50. package/crud/contentModel/models.js +12 -0
  51. package/crud/contentModel/models.js.map +1 -1
  52. package/crud/contentModel/systemFields.js.map +1 -1
  53. package/crud/contentModel/validateLayout.js +0 -8
  54. package/crud/contentModel/validateLayout.js.map +1 -1
  55. package/crud/contentModel/validateModel.d.ts +3 -4
  56. package/crud/contentModel/validateModel.js +7 -12
  57. package/crud/contentModel/validateModel.js.map +1 -1
  58. package/crud/contentModel/validateModelFields.d.ts +3 -4
  59. package/crud/contentModel/validateModelFields.js +121 -104
  60. package/crud/contentModel/validateModelFields.js.map +1 -1
  61. package/crud/contentModel/validation.d.ts +477 -0
  62. package/crud/contentModel/validation.js +97 -0
  63. package/crud/contentModel/validation.js.map +1 -0
  64. package/crud/contentModel.crud.js +278 -304
  65. package/crud/contentModel.crud.js.map +1 -1
  66. package/crud/contentModelGroup/beforeCreate.d.ts +2 -2
  67. package/crud/contentModelGroup/beforeCreate.js +3 -15
  68. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  69. package/crud/contentModelGroup/beforeDelete.d.ts +2 -2
  70. package/crud/contentModelGroup/beforeDelete.js +3 -11
  71. package/crud/contentModelGroup/beforeDelete.js.map +1 -1
  72. package/crud/contentModelGroup/beforeUpdate.d.ts +2 -2
  73. package/crud/contentModelGroup/beforeUpdate.js +2 -7
  74. package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
  75. package/crud/contentModelGroup/validation.d.ts +30 -0
  76. package/crud/contentModelGroup/validation.js +34 -0
  77. package/crud/contentModelGroup/validation.js.map +1 -0
  78. package/crud/contentModelGroup.crud.js +96 -118
  79. package/crud/contentModelGroup.crud.js.map +1 -1
  80. package/crud/settings.crud.js +3 -20
  81. package/crud/settings.crud.js.map +1 -1
  82. package/crud/system.crud.js +61 -84
  83. package/crud/system.crud.js.map +1 -1
  84. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +1 -14
  85. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  86. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  87. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
  88. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  89. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +16 -71
  90. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  91. package/fieldConverters/index.d.ts +2 -1
  92. package/fieldConverters/index.js +2 -5
  93. package/fieldConverters/index.js.map +1 -1
  94. package/graphql/buildSchemaPlugins.d.ts +8 -3
  95. package/graphql/buildSchemaPlugins.js +6 -14
  96. package/graphql/buildSchemaPlugins.js.map +1 -1
  97. package/graphql/createExecutableSchema.d.ts +7 -0
  98. package/graphql/createExecutableSchema.js +29 -0
  99. package/graphql/createExecutableSchema.js.map +1 -0
  100. package/graphql/generateSchema.d.ts +8 -0
  101. package/graphql/generateSchema.js +31 -0
  102. package/graphql/generateSchema.js.map +1 -0
  103. package/graphql/graphQLHandlerFactory.js +91 -75
  104. package/graphql/graphQLHandlerFactory.js.map +1 -1
  105. package/graphql/index.d.ts +1 -3
  106. package/graphql/index.js +2 -46
  107. package/graphql/index.js.map +1 -1
  108. package/graphql/schema/baseContentSchema.d.ts +6 -2
  109. package/graphql/schema/baseContentSchema.js +14 -22
  110. package/graphql/schema/baseContentSchema.js.map +1 -1
  111. package/graphql/schema/baseSchema.d.ts +3 -0
  112. package/graphql/schema/baseSchema.js +53 -0
  113. package/graphql/schema/baseSchema.js.map +1 -0
  114. package/graphql/schema/contentEntries.d.ts +6 -2
  115. package/graphql/schema/contentEntries.js +40 -66
  116. package/graphql/schema/contentEntries.js.map +1 -1
  117. package/graphql/schema/contentModelGroups.d.ts +6 -2
  118. package/graphql/schema/contentModelGroups.js +9 -22
  119. package/graphql/schema/contentModelGroups.js.map +1 -1
  120. package/graphql/schema/contentModels.d.ts +6 -2
  121. package/graphql/schema/contentModels.js +57 -21
  122. package/graphql/schema/contentModels.js.map +1 -1
  123. package/graphql/schema/createFieldResolvers.d.ts +1 -1
  124. package/graphql/schema/createFieldResolvers.js +24 -37
  125. package/graphql/schema/createFieldResolvers.js.map +1 -1
  126. package/graphql/schema/createManageResolvers.js +4 -44
  127. package/graphql/schema/createManageResolvers.js.map +1 -1
  128. package/graphql/schema/createManageSDL.d.ts +2 -0
  129. package/graphql/schema/createManageSDL.js +13 -26
  130. package/graphql/schema/createManageSDL.js.map +1 -1
  131. package/graphql/schema/createPreviewResolvers.js +3 -17
  132. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  133. package/graphql/schema/createReadResolvers.js +8 -17
  134. package/graphql/schema/createReadResolvers.js.map +1 -1
  135. package/graphql/schema/createReadSDL.d.ts +2 -0
  136. package/graphql/schema/createReadSDL.js +11 -15
  137. package/graphql/schema/createReadSDL.js.map +1 -1
  138. package/graphql/schema/resolvers/commonFieldResolvers.js +0 -2
  139. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
  140. package/graphql/schema/resolvers/manage/resolveCreate.js +0 -3
  141. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  142. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +0 -3
  143. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  144. package/graphql/schema/resolvers/manage/resolveDelete.js +0 -6
  145. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  146. package/graphql/schema/resolvers/manage/resolveGet.js +5 -25
  147. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  148. package/graphql/schema/resolvers/manage/resolveGetByIds.js +0 -3
  149. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  150. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +0 -3
  151. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  152. package/graphql/schema/resolvers/manage/resolveList.js +0 -3
  153. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  154. package/graphql/schema/resolvers/manage/resolvePublish.js +0 -3
  155. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  156. package/graphql/schema/resolvers/manage/resolveRepublish.js +0 -3
  157. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  158. package/graphql/schema/resolvers/manage/resolveUnpublish.js +0 -3
  159. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  160. package/graphql/schema/resolvers/manage/resolveUpdate.js +0 -3
  161. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  162. package/graphql/schema/resolvers/preview/resolveGet.js +3 -15
  163. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  164. package/graphql/schema/resolvers/preview/resolveList.js +0 -3
  165. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  166. package/graphql/schema/resolvers/read/resolveGet.js +3 -15
  167. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  168. package/graphql/schema/resolvers/read/resolveList.js +0 -3
  169. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  170. package/graphql/schema/schemaPlugins.d.ts +8 -3
  171. package/graphql/schema/schemaPlugins.js +63 -65
  172. package/graphql/schema/schemaPlugins.js.map +1 -1
  173. package/graphql/system.js +69 -85
  174. package/graphql/system.js.map +1 -1
  175. package/graphqlFields/boolean.js +0 -12
  176. package/graphqlFields/boolean.js.map +1 -1
  177. package/graphqlFields/datetime.js +0 -17
  178. package/graphqlFields/datetime.js.map +1 -1
  179. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
  180. package/graphqlFields/dynamicZone/dynamicZoneField.js +208 -0
  181. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
  182. package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +3 -0
  183. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +63 -0
  184. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -0
  185. package/graphqlFields/dynamicZone/index.d.ts +2 -0
  186. package/graphqlFields/dynamicZone/index.js +19 -0
  187. package/graphqlFields/dynamicZone/index.js.map +1 -0
  188. package/graphqlFields/file.js +0 -8
  189. package/graphqlFields/file.js.map +1 -1
  190. package/graphqlFields/helpers.js +0 -10
  191. package/graphqlFields/helpers.js.map +1 -1
  192. package/graphqlFields/index.d.ts +1 -1
  193. package/graphqlFields/index.js +2 -12
  194. package/graphqlFields/index.js.map +1 -1
  195. package/graphqlFields/longText.js +0 -10
  196. package/graphqlFields/longText.js.map +1 -1
  197. package/graphqlFields/number.js +4 -12
  198. package/graphqlFields/number.js.map +1 -1
  199. package/graphqlFields/object.js +113 -99
  200. package/graphqlFields/object.js.map +1 -1
  201. package/graphqlFields/ref.js +52 -104
  202. package/graphqlFields/ref.js.map +1 -1
  203. package/graphqlFields/richText.js +0 -9
  204. package/graphqlFields/richText.js.map +1 -1
  205. package/graphqlFields/text.js +0 -11
  206. package/graphqlFields/text.js.map +1 -1
  207. package/index.d.ts +3 -3
  208. package/index.js +3 -26
  209. package/index.js.map +1 -1
  210. package/modelManager/DefaultCmsModelManager.d.ts +7 -7
  211. package/modelManager/DefaultCmsModelManager.js +1 -17
  212. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  213. package/modelManager/index.js +0 -4
  214. package/modelManager/index.js.map +1 -1
  215. package/package.json +31 -32
  216. package/parameters/context.js +0 -4
  217. package/parameters/context.js.map +1 -1
  218. package/parameters/header.js +1 -12
  219. package/parameters/header.js.map +1 -1
  220. package/parameters/index.js +0 -8
  221. package/parameters/index.js.map +1 -1
  222. package/parameters/manual.js +7 -15
  223. package/parameters/manual.js.map +1 -1
  224. package/parameters/path.js +1 -12
  225. package/parameters/path.js.map +1 -1
  226. package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
  227. package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
  228. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
  229. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  230. package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
  231. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  232. package/plugins/CmsGroupPlugin.js +1 -9
  233. package/plugins/CmsGroupPlugin.js.map +1 -1
  234. package/plugins/CmsModelFieldConverterPlugin.d.ts +2 -2
  235. package/plugins/CmsModelFieldConverterPlugin.js +1 -6
  236. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  237. package/plugins/CmsModelPlugin.d.ts +6 -2
  238. package/plugins/CmsModelPlugin.js +18 -49
  239. package/plugins/CmsModelPlugin.js.map +1 -1
  240. package/plugins/CmsParametersPlugin.js +1 -8
  241. package/plugins/CmsParametersPlugin.js.map +1 -1
  242. package/plugins/StorageTransformPlugin.d.ts +11 -11
  243. package/plugins/StorageTransformPlugin.js +1 -10
  244. package/plugins/StorageTransformPlugin.js.map +1 -1
  245. package/plugins/index.d.ts +2 -0
  246. package/plugins/index.js +22 -10
  247. package/plugins/index.js.map +1 -1
  248. package/storage/default.js +0 -3
  249. package/storage/default.js.map +1 -1
  250. package/storage/object.js +7 -27
  251. package/storage/object.js.map +1 -1
  252. package/types.d.ts +504 -179
  253. package/types.js +62 -71
  254. package/types.js.map +1 -1
  255. package/upgrades/5.33.0/index.js +8 -35
  256. package/upgrades/5.33.0/index.js.map +1 -1
  257. package/upgrades/index.js +0 -3
  258. package/upgrades/index.js.map +1 -1
  259. package/utils/access.js +11 -25
  260. package/utils/access.js.map +1 -1
  261. package/utils/converters/Converter.js +1 -14
  262. package/utils/converters/Converter.js.map +1 -1
  263. package/utils/converters/ConverterCollection.d.ts +7 -0
  264. package/utils/converters/ConverterCollection.js +36 -32
  265. package/utils/converters/ConverterCollection.js.map +1 -1
  266. package/utils/converters/valueKeyStorageConverter.js +3 -33
  267. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  268. package/utils/createTypeFromFields.d.ts +15 -0
  269. package/utils/createTypeFromFields.js +64 -0
  270. package/utils/createTypeFromFields.js.map +1 -0
  271. package/utils/createTypeName.js +3 -10
  272. package/utils/createTypeName.js.map +1 -1
  273. package/utils/entryStorage.js +25 -42
  274. package/utils/entryStorage.js.map +1 -1
  275. package/utils/filterAsync.js +0 -5
  276. package/utils/filterAsync.js.map +1 -1
  277. package/utils/getBaseFieldType.d.ts +4 -0
  278. package/utils/getBaseFieldType.js +10 -0
  279. package/utils/getBaseFieldType.js.map +1 -0
  280. package/utils/getEntryTitle.js +0 -9
  281. package/utils/getEntryTitle.js.map +1 -1
  282. package/utils/getSchemaFromFieldPlugins.d.ts +4 -7
  283. package/utils/getSchemaFromFieldPlugins.js +23 -19
  284. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  285. package/utils/ownership.js +0 -8
  286. package/utils/ownership.js.map +1 -1
  287. package/utils/permissions.js +7 -26
  288. package/utils/permissions.js.map +1 -1
  289. package/utils/pluralizedTypeName.js +1 -7
  290. package/utils/pluralizedTypeName.js.map +1 -1
  291. package/utils/renderFields.js +2 -9
  292. package/utils/renderFields.js.map +1 -1
  293. package/utils/renderGetFilterFields.js +6 -14
  294. package/utils/renderGetFilterFields.js.map +1 -1
  295. package/utils/renderInputFields.js +2 -9
  296. package/utils/renderInputFields.js.map +1 -1
  297. package/utils/renderListFilterFields.js +10 -9
  298. package/utils/renderListFilterFields.js.map +1 -1
  299. package/utils/renderSortEnum.d.ts +7 -4
  300. package/utils/renderSortEnum.js +21 -11
  301. package/utils/renderSortEnum.js.map +1 -1
  302. package/utils/toSlug.js +1 -5
  303. package/utils/toSlug.js.map +1 -1
  304. package/validators/dateGte.js +0 -7
  305. package/validators/dateGte.js.map +1 -1
  306. package/validators/dateLte.js +0 -7
  307. package/validators/dateLte.js.map +1 -1
  308. package/validators/dynamicZone.d.ts +2 -0
  309. package/validators/dynamicZone.js +20 -0
  310. package/validators/dynamicZone.js.map +1 -0
  311. package/validators/gte.js +0 -8
  312. package/validators/gte.js.map +1 -1
  313. package/validators/in.js +0 -8
  314. package/validators/in.js.map +1 -1
  315. package/validators/index.js +2 -16
  316. package/validators/index.js.map +1 -1
  317. package/validators/lte.js +0 -8
  318. package/validators/lte.js.map +1 -1
  319. package/validators/maxLength.js +0 -8
  320. package/validators/maxLength.js.map +1 -1
  321. package/validators/minLength.js +0 -8
  322. package/validators/minLength.js.map +1 -1
  323. package/validators/pattern.js +0 -9
  324. package/validators/pattern.js.map +1 -1
  325. package/validators/patternPlugins/email.js +0 -2
  326. package/validators/patternPlugins/email.js.map +1 -1
  327. package/validators/patternPlugins/index.js +0 -8
  328. package/validators/patternPlugins/index.js.map +1 -1
  329. package/validators/patternPlugins/lowerCase.js +0 -2
  330. package/validators/patternPlugins/lowerCase.js.map +1 -1
  331. package/validators/patternPlugins/lowerCaseSpace.js +0 -2
  332. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  333. package/validators/patternPlugins/upperCase.js +0 -2
  334. package/validators/patternPlugins/upperCase.js.map +1 -1
  335. package/validators/patternPlugins/upperCaseSpace.js +0 -2
  336. package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  337. package/validators/patternPlugins/url.js +0 -2
  338. package/validators/patternPlugins/url.js.map +1 -1
  339. package/validators/required.js +0 -5
  340. package/validators/required.js.map +1 -1
  341. package/validators/timeGte.js +0 -8
  342. package/validators/timeGte.js.map +1 -1
  343. package/validators/timeLte.js +0 -8
  344. package/validators/timeLte.js.map +1 -1
  345. package/validators/unique.js +1 -8
  346. package/validators/unique.js.map +1 -1
  347. package/crud/index.d.ts +0 -6
  348. package/crud/index.js +0 -89
  349. package/crud/index.js.map +0 -1
  350. package/graphql/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -7
  351. package/graphql/schema/resolvers/manage/resolveRequestChanges.js +0 -21
  352. package/graphql/schema/resolvers/manage/resolveRequestChanges.js.map +0 -1
  353. package/graphql/schema/resolvers/manage/resolveRequestReview.d.ts +0 -7
  354. package/graphql/schema/resolvers/manage/resolveRequestReview.js +0 -21
  355. package/graphql/schema/resolvers/manage/resolveRequestReview.js.map +0 -1
  356. package/utils/filterModelFields.d.ts +0 -16
  357. package/utils/filterModelFields.js +0 -81
  358. package/utils/filterModelFields.js.map +0 -1
package/types.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { Plugin } from "@webiny/plugins/types";
2
2
  import { I18NContext, I18NLocale } from "@webiny/api-i18n/types";
3
3
  import { Context } from "@webiny/api/types";
4
- import { TenancyContext } from "@webiny/api-tenancy/types";
5
4
  import { GraphQLFieldResolver, GraphQLSchemaDefinition, Resolvers } from "@webiny/handler-graphql/types";
6
5
  import { SecurityPermission } from "@webiny/api-security/types";
7
6
  import { DbContext } from "@webiny/handler-db/types";
@@ -45,7 +44,7 @@ export interface HeadlessCms extends CmsSettingsContext, CmsSystemContext, CmsGr
45
44
  *
46
45
  * @category Context
47
46
  */
48
- export interface CmsContext extends Context, DbContext, I18NContext, FileManagerContext, TenancyContext {
47
+ export interface CmsContext extends Context, DbContext, I18NContext, FileManagerContext {
49
48
  cms: HeadlessCms;
50
49
  }
51
50
  interface CmsModelFieldPredefinedValuesValue {
@@ -136,7 +135,7 @@ export interface CmsModelField {
136
135
  * A type of the field.
137
136
  * We are defining our built-in fields, so people know which are available by the default.
138
137
  */
139
- type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | string;
138
+ type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | "dynamicZone" | string;
140
139
  /**
141
140
  * A unique storage ID for storing actual values.
142
141
  * Must in form of a-zA-Z0-9@a-zA-Z0-9@a-zA-Z0-9.
@@ -196,6 +195,10 @@ export interface CmsModelField {
196
195
  *
197
196
  */
198
197
  multipleValues?: boolean;
198
+ /**
199
+ * Fields can be tagged to give them contextual meaning.
200
+ */
201
+ tags?: string[];
199
202
  /**
200
203
  * Any user defined settings.
201
204
  *
@@ -203,18 +206,42 @@ export interface CmsModelField {
203
206
  */
204
207
  settings?: CmsModelFieldSettings;
205
208
  }
209
+ export interface CmsDynamicZoneTemplate {
210
+ id: string;
211
+ name: string;
212
+ gqlTypeName: string;
213
+ description: string;
214
+ icon: string;
215
+ fields: CmsModelField[];
216
+ layout: string[][];
217
+ validation: CmsModelFieldValidation[];
218
+ }
219
+ /**
220
+ * A definition for dynamic-zone field to show possible type of the field in settings.
221
+ */
222
+ export interface CmsModelDynamicZoneField extends CmsModelField {
223
+ /**
224
+ * Settings object for the field. Contains `templates` property.
225
+ */
226
+ settings: {
227
+ templates: CmsDynamicZoneTemplate[];
228
+ };
229
+ }
206
230
  /**
207
231
  * Used for our internal functionality.
208
232
  */
209
233
  export interface CmsModelFieldWithParent extends CmsModelField {
210
234
  parent?: CmsModelFieldWithParent | null;
211
235
  }
236
+ export interface CmsModelDynamicZoneFieldWithParent extends CmsModelDynamicZoneField {
237
+ parent?: CmsModelDynamicZoneFieldWithParent | null;
238
+ }
212
239
  /**
213
240
  * A definition for dateTime field to show possible type of the field in settings.
214
241
  */
215
242
  export interface CmsModelDateTimeField extends CmsModelField {
216
243
  /**
217
- * Settings object for the field. Contains type property.
244
+ * Settings object for the field. Contains `type` property.
218
245
  */
219
246
  settings: {
220
247
  type: "time" | "date" | "dateTimeWithoutTimezone" | "dateTimeWithTimezone";
@@ -335,6 +362,20 @@ export interface LockedField {
335
362
  type: string;
336
363
  [key: string]: any;
337
364
  }
365
+ /**
366
+ * @category Database model
367
+ * @category CmsModel
368
+ */
369
+ export interface CmsModelGroup {
370
+ /**
371
+ * Generated ID of the group
372
+ */
373
+ id: string;
374
+ /**
375
+ * Name of the group
376
+ */
377
+ name: string;
378
+ }
338
379
  /**
339
380
  * Cms Model defining an entry.
340
381
  *
@@ -361,16 +402,7 @@ export interface CmsModel {
361
402
  /**
362
403
  * Cms Group reference object.
363
404
  */
364
- group: {
365
- /**
366
- * Generated ID of the group
367
- */
368
- id: string;
369
- /**
370
- * Name of the group
371
- */
372
- name: string;
373
- };
405
+ group: CmsModelGroup;
374
406
  /**
375
407
  * Description for the content model.
376
408
  */
@@ -402,6 +434,10 @@ export interface CmsModel {
402
434
  * ```
403
435
  */
404
436
  layout: string[][];
437
+ /**
438
+ * Models can be tagged to give them contextual meaning.
439
+ */
440
+ tags?: string[];
405
441
  /**
406
442
  * List of locked fields. Updated when entry is saved and a field has been used.
407
443
  */
@@ -438,25 +474,40 @@ export interface CmsModelFieldDefinition {
438
474
  fields: string;
439
475
  typeDefs?: string;
440
476
  }
441
- interface CmsModelFieldToGraphQLCreateResolverParams {
477
+ interface CmsModelFieldToGraphQLCreateResolverParams<TField> {
442
478
  models: CmsModel[];
443
479
  model: CmsModel;
444
480
  graphQLType: string;
445
- field: CmsModelField;
481
+ field: TField;
446
482
  createFieldResolvers: any;
447
483
  }
448
- export interface CmsModelFieldToGraphQLCreateResolver {
449
- (params: CmsModelFieldToGraphQLCreateResolverParams): GraphQLFieldResolver | {
484
+ export interface CmsModelFieldToGraphQLCreateResolver<TField = CmsModelField> {
485
+ (params: CmsModelFieldToGraphQLCreateResolverParams<TField>): GraphQLFieldResolver | {
450
486
  resolver: GraphQLFieldResolver | null;
451
487
  typeResolvers: Resolvers<CmsContext>;
452
488
  } | false;
453
489
  }
490
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams<TField extends CmsModelField = CmsModelField> {
491
+ fields: TField[];
492
+ originalFields: TField[];
493
+ }
494
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidate {
495
+ (params: CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams): void;
496
+ }
497
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField extends CmsModelField = CmsModelField> {
498
+ field: TField;
499
+ originalField?: TField;
500
+ validate: CmsModelFieldToGraphQLPluginValidateChildFieldsValidate;
501
+ }
502
+ export interface CmsModelFieldToGraphQLPluginValidateChildFields<TField extends CmsModelField = CmsModelField> {
503
+ (params: CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField>): void;
504
+ }
454
505
  /**
455
506
  * @category Plugin
456
507
  * @category ModelField
457
508
  * @category GraphQL
458
509
  */
459
- export interface CmsModelFieldToGraphQLPlugin extends Plugin {
510
+ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = CmsModelField> extends Plugin {
460
511
  /**
461
512
  * A plugin type
462
513
  */
@@ -510,7 +561,7 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
510
561
  */
511
562
  createStorageId?: (params: {
512
563
  model: CmsModel;
513
- field: CmsModelField;
564
+ field: TField;
514
565
  }) => string | null | undefined;
515
566
  /**
516
567
  * Read API methods.
@@ -529,7 +580,7 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
529
580
  */
530
581
  createGetFilters?(params: {
531
582
  model: CmsModel;
532
- field: CmsModelField;
583
+ field: TField;
533
584
  }): string;
534
585
  /**
535
586
  * Definition for list filtering for GraphQL.
@@ -549,7 +600,8 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
549
600
  */
550
601
  createListFilters?(params: {
551
602
  model: CmsModel;
552
- field: CmsModelField;
603
+ field: TField;
604
+ plugins: CmsFieldTypePlugins;
553
605
  }): string;
554
606
  /**
555
607
  * Definition of the field type for GraphQL - be aware if multiple values is selected.
@@ -568,12 +620,12 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
568
620
  */
569
621
  createTypeField(params: {
570
622
  model: CmsModel;
571
- field: CmsModelField;
623
+ field: TField;
572
624
  fieldTypePlugins: CmsFieldTypePlugins;
573
625
  }): CmsModelFieldDefinition | string | null;
574
626
  /**
575
627
  * Definition for field resolver.
576
- * By default it is simple return of the `instance.values[storageId]` but if required, users can define their own.
628
+ * By default, it is simple return of the `instance.values[storageId]` but if required, users can define their own.
577
629
  *
578
630
  * ```ts
579
631
  * read: {
@@ -585,7 +637,7 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
585
637
  * }
586
638
  * ```
587
639
  */
588
- createResolver?: CmsModelFieldToGraphQLCreateResolver;
640
+ createResolver?: CmsModelFieldToGraphQLCreateResolver<TField>;
589
641
  /**
590
642
  * Read API schema definitions for the field and resolvers for them.
591
643
  *
@@ -628,7 +680,8 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
628
680
  */
629
681
  createListFilters?: (params: {
630
682
  model: CmsModel;
631
- field: CmsModelField;
683
+ field: TField;
684
+ plugins: CmsFieldTypePlugins;
632
685
  }) => string;
633
686
  /**
634
687
  * Manage API schema definitions for the field and resolvers for them. Probably similar to `read.createSchema`.
@@ -667,7 +720,7 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
667
720
  */
668
721
  createTypeField: (params: {
669
722
  model: CmsModel;
670
- field: CmsModelField;
723
+ field: TField;
671
724
  fieldTypePlugins: CmsFieldTypePlugins;
672
725
  }) => CmsModelFieldDefinition | string | null;
673
726
  /**
@@ -687,12 +740,12 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
687
740
  */
688
741
  createInputField: (params: {
689
742
  model: CmsModel;
690
- field: CmsModelField;
743
+ field: TField;
691
744
  fieldTypePlugins: CmsFieldTypePlugins;
692
745
  }) => CmsModelFieldDefinition | string | null;
693
746
  /**
694
747
  * Definition for field resolver.
695
- * By default it is simple return of the `instance.values[storageId]` but if required, users can define their own.
748
+ * By default, it is simple return of the `instance.values[storageId]` but if required, users can define their own.
696
749
  *
697
750
  * ```ts
698
751
  * manage: {
@@ -704,8 +757,13 @@ export interface CmsModelFieldToGraphQLPlugin extends Plugin {
704
757
  * }
705
758
  * ```
706
759
  */
707
- createResolver?: CmsModelFieldToGraphQLCreateResolver;
760
+ createResolver?: CmsModelFieldToGraphQLCreateResolver<TField>;
708
761
  };
762
+ /**
763
+ *
764
+ * @param field
765
+ */
766
+ validateChildFields?: CmsModelFieldToGraphQLPluginValidateChildFields<TField>;
709
767
  }
710
768
  /**
711
769
  * Check for content model locked field.
@@ -744,7 +802,7 @@ export interface CmsFieldTypePlugins {
744
802
  [key: string]: CmsModelFieldToGraphQLPlugin;
745
803
  }
746
804
  /**
747
- * A interface describing the reference to a user that created some data in the database.
805
+ * An interface describing the reference to a user that created some data in the database.
748
806
  *
749
807
  * @category General
750
808
  */
@@ -800,11 +858,16 @@ export interface CmsSettingsContext {
800
858
  */
801
859
  getModelLastChange: () => Promise<Date>;
802
860
  }
803
- export interface BeforeInstallTopicParams {
861
+ export interface OnSystemBeforeInstallTopicParams {
804
862
  tenant: string;
805
863
  locale: string;
806
864
  }
807
- export interface AfterInstallTopicParams {
865
+ export interface OnSystemAfterInstallTopicParams {
866
+ tenant: string;
867
+ locale: string;
868
+ }
869
+ export interface OnSystemInstallErrorTopicParams {
870
+ error: Error;
808
871
  tenant: string;
809
872
  locale: string;
810
873
  }
@@ -815,13 +878,25 @@ export declare type CmsSystemContext = {
815
878
  installSystem: () => Promise<void>;
816
879
  upgradeSystem: (version: string) => Promise<boolean>;
817
880
  /**
818
- * Events
881
+ * Lifecycle events - deprecated
882
+ */
883
+ /**
884
+ * @deprecated
885
+ */
886
+ onBeforeSystemInstall: Topic<OnSystemBeforeInstallTopicParams>;
887
+ /**
888
+ * @deprecated
819
889
  */
820
- onBeforeSystemInstall: Topic<BeforeInstallTopicParams>;
821
- onAfterSystemInstall: Topic<AfterInstallTopicParams>;
890
+ onAfterSystemInstall: Topic<OnSystemAfterInstallTopicParams>;
891
+ /**
892
+ * Released in 5.34.0
893
+ */
894
+ onSystemBeforeInstall: Topic<OnSystemBeforeInstallTopicParams>;
895
+ onSystemAfterInstall: Topic<OnSystemAfterInstallTopicParams>;
896
+ onSystemInstallError: Topic<OnSystemInstallErrorTopicParams>;
822
897
  };
823
898
  /**
824
- * A GraphQL params.data parameter received when creating content model group.
899
+ * A GraphQL `params.data` parameter received when creating content model group.
825
900
  *
826
901
  * @category CmsGroup
827
902
  * @category GraphQL params
@@ -833,7 +908,7 @@ export interface CmsGroupCreateInput {
833
908
  icon: string;
834
909
  }
835
910
  /**
836
- * A GraphQL params.data parameter received when updating content model group.
911
+ * A GraphQL `params.data` parameter received when updating content model group.
837
912
  *
838
913
  * @category CmsGroup
839
914
  * @category GraphQL params
@@ -903,7 +978,7 @@ export interface CmsGroup {
903
978
  isPrivate?: boolean;
904
979
  }
905
980
  /**
906
- * A data.where parameter received when listing content model groups.
981
+ * A `data.where` parameter received when listing content model groups.
907
982
  *
908
983
  * @category CmsGroup
909
984
  * @category GraphQL params
@@ -919,21 +994,30 @@ export interface CmsGroupListParams {
919
994
  * @category CmsGroup
920
995
  * @category Topic
921
996
  */
922
- export interface BeforeGroupCreateTopicParams {
997
+ export interface OnGroupBeforeCreateTopicParams {
998
+ group: CmsGroup;
999
+ }
1000
+ /**
1001
+ * @category CmsGroup
1002
+ * @category Topic
1003
+ */
1004
+ export interface OnGroupAfterCreateTopicParams {
923
1005
  group: CmsGroup;
924
1006
  }
925
1007
  /**
926
1008
  * @category CmsGroup
927
1009
  * @category Topic
928
1010
  */
929
- export interface AfterGroupCreateTopicParams {
1011
+ export interface OnGroupCreateErrorTopicParams {
1012
+ input: CmsGroupCreateInput;
930
1013
  group: CmsGroup;
1014
+ error: Error;
931
1015
  }
932
1016
  /**
933
1017
  * @category CmsGroup
934
1018
  * @category Topic
935
1019
  */
936
- export interface BeforeGroupUpdateTopicParams {
1020
+ export interface OnGroupBeforeUpdateTopicParams {
937
1021
  original: CmsGroup;
938
1022
  group: CmsGroup;
939
1023
  }
@@ -941,7 +1025,7 @@ export interface BeforeGroupUpdateTopicParams {
941
1025
  * @category CmsGroup
942
1026
  * @category Topic
943
1027
  */
944
- export interface AfterGroupUpdateTopicParams {
1028
+ export interface OnGroupAfterUpdateTopicParams {
945
1029
  original: CmsGroup;
946
1030
  group: CmsGroup;
947
1031
  }
@@ -949,16 +1033,34 @@ export interface AfterGroupUpdateTopicParams {
949
1033
  * @category CmsGroup
950
1034
  * @category Topic
951
1035
  */
952
- export interface BeforeGroupDeleteTopicParams {
1036
+ export interface OnGroupUpdateErrorTopicParams {
1037
+ input: CmsGroupUpdateInput;
1038
+ original: CmsGroup;
1039
+ group: CmsGroup;
1040
+ error: Error;
1041
+ }
1042
+ /**
1043
+ * @category CmsGroup
1044
+ * @category Topic
1045
+ */
1046
+ export interface OnGroupBeforeDeleteTopicParams {
953
1047
  group: CmsGroup;
954
1048
  }
955
1049
  /**
956
1050
  * @category CmsGroup
957
1051
  * @category Topic
958
1052
  */
959
- export interface AfterGroupDeleteTopicParams {
1053
+ export interface OnGroupAfterDeleteTopicParams {
960
1054
  group: CmsGroup;
961
1055
  }
1056
+ /**
1057
+ * @category CmsGroup
1058
+ * @category Topic
1059
+ */
1060
+ export interface OnGroupDeleteErrorTopicParams {
1061
+ group: CmsGroup;
1062
+ error: Error;
1063
+ }
962
1064
  /**
963
1065
  * Cms Group in context.
964
1066
  *
@@ -991,14 +1093,44 @@ export interface CmsGroupContext {
991
1093
  */
992
1094
  clearGroupsCache: () => void;
993
1095
  /**
994
- * Events.
1096
+ * Lifecycle events - deprecated
1097
+ */
1098
+ /**
1099
+ * @deprecated
995
1100
  */
996
- onBeforeGroupCreate: Topic<BeforeGroupCreateTopicParams>;
997
- onAfterGroupCreate: Topic<AfterGroupCreateTopicParams>;
998
- onBeforeGroupUpdate: Topic<BeforeGroupUpdateTopicParams>;
999
- onAfterGroupUpdate: Topic<AfterGroupUpdateTopicParams>;
1000
- onBeforeGroupDelete: Topic<BeforeGroupDeleteTopicParams>;
1001
- onAfterGroupDelete: Topic<AfterGroupDeleteTopicParams>;
1101
+ onBeforeGroupCreate: Topic<OnGroupBeforeCreateTopicParams>;
1102
+ /**
1103
+ * @deprecated
1104
+ */
1105
+ onAfterGroupCreate: Topic<OnGroupAfterCreateTopicParams>;
1106
+ /**
1107
+ * @deprecated
1108
+ */
1109
+ onBeforeGroupUpdate: Topic<OnGroupBeforeUpdateTopicParams>;
1110
+ /**
1111
+ * @deprecated
1112
+ */
1113
+ onAfterGroupUpdate: Topic<OnGroupAfterUpdateTopicParams>;
1114
+ /**
1115
+ * @deprecated
1116
+ */
1117
+ onBeforeGroupDelete: Topic<OnGroupBeforeDeleteTopicParams>;
1118
+ /**
1119
+ * @deprecated
1120
+ */
1121
+ onAfterGroupDelete: Topic<OnGroupAfterDeleteTopicParams>;
1122
+ /**
1123
+ * Lifecycle events released in 5.33.0
1124
+ */
1125
+ onGroupBeforeCreate: Topic<OnGroupBeforeCreateTopicParams>;
1126
+ onGroupAfterCreate: Topic<OnGroupAfterCreateTopicParams>;
1127
+ onGroupCreateError: Topic<OnGroupCreateErrorTopicParams>;
1128
+ onGroupBeforeUpdate: Topic<OnGroupBeforeUpdateTopicParams>;
1129
+ onGroupAfterUpdate: Topic<OnGroupAfterUpdateTopicParams>;
1130
+ onGroupUpdateError: Topic<OnGroupUpdateErrorTopicParams>;
1131
+ onGroupBeforeDelete: Topic<OnGroupBeforeDeleteTopicParams>;
1132
+ onGroupAfterDelete: Topic<OnGroupAfterDeleteTopicParams>;
1133
+ onGroupDeleteError: Topic<OnGroupDeleteErrorTopicParams>;
1002
1134
  }
1003
1135
  /**
1004
1136
  * Definition for content model field validator.
@@ -1017,7 +1149,7 @@ export interface CmsModelFieldValidation {
1017
1149
  };
1018
1150
  }
1019
1151
  /**
1020
- * A GraphQL params.data parameter received when creating content model.
1152
+ * A GraphQL `params.data` parameter received when creating content model.
1021
1153
  *
1022
1154
  * @category GraphQL params
1023
1155
  * @category CmsModel
@@ -1034,7 +1166,7 @@ export interface CmsModelCreateInput {
1034
1166
  /**
1035
1167
  * Description of the content model.
1036
1168
  */
1037
- description?: string;
1169
+ description?: string | null;
1038
1170
  /**
1039
1171
  * Group where to put the content model in.
1040
1172
  */
@@ -1054,6 +1186,10 @@ export interface CmsModelCreateInput {
1054
1186
  * ```
1055
1187
  */
1056
1188
  layout?: string[][];
1189
+ /**
1190
+ * Models can be tagged to give them contextual meaning.
1191
+ */
1192
+ tags?: string[];
1057
1193
  /**
1058
1194
  * The field that is being displayed as entry title.
1059
1195
  * It is picked as first available text field. Or user can select own field.
@@ -1061,7 +1197,7 @@ export interface CmsModelCreateInput {
1061
1197
  titleFieldId?: string;
1062
1198
  }
1063
1199
  /**
1064
- * A GraphQL params.data parameter received when creating content model from existing model.
1200
+ * A GraphQL `params.data` parameter received when creating content model from existing model.
1065
1201
  *
1066
1202
  * @category GraphQL params
1067
1203
  * @category CmsModel
@@ -1102,11 +1238,15 @@ export interface CmsModelFieldInput {
1102
1238
  /**
1103
1239
  * Text to display below the field to help user what to write in the field.
1104
1240
  */
1105
- helpText?: string;
1241
+ helpText?: string | null;
1106
1242
  /**
1107
1243
  * Text to display in the field.
1108
1244
  */
1109
- placeholderText?: string;
1245
+ placeholderText?: string | null;
1246
+ /**
1247
+ * Fields can be tagged to give them contextual meaning.
1248
+ */
1249
+ tags?: string[];
1110
1250
  /**
1111
1251
  * Are multiple values allowed?
1112
1252
  */
@@ -1133,7 +1273,7 @@ export interface CmsModelFieldInput {
1133
1273
  settings?: Record<string, any>;
1134
1274
  }
1135
1275
  /**
1136
- * A GraphQL params.data parameter received when updating content model.
1276
+ * A GraphQL `params.data` parameter received when updating content model.
1137
1277
  *
1138
1278
  * @category GraphQL params
1139
1279
  * @category CmsModel
@@ -1150,7 +1290,7 @@ export interface CmsModelUpdateInput {
1150
1290
  /**
1151
1291
  * A new description of the content model.
1152
1292
  */
1153
- description?: string;
1293
+ description?: string | null;
1154
1294
  /**
1155
1295
  * A list of content model fields to define the entry values.
1156
1296
  */
@@ -1212,10 +1352,10 @@ export interface CmsEntryValues {
1212
1352
  * @category Database model
1213
1353
  * @category CmsEntry
1214
1354
  */
1215
- export interface CmsEntry {
1355
+ export interface CmsEntry<T = CmsEntryValues> {
1216
1356
  /**
1217
1357
  * A version of the webiny this entry was created with.
1218
- * This can be used when upgrading the system so we know which entries to update.
1358
+ * This can be used when upgrading the system, so we know which entries to update.
1219
1359
  */
1220
1360
  webinyVersion: string;
1221
1361
  /**
@@ -1281,14 +1421,14 @@ export interface CmsEntry {
1281
1421
  *
1282
1422
  * @see CmsModelField
1283
1423
  */
1284
- values: CmsEntryValues;
1424
+ values: T;
1285
1425
  /**
1286
1426
  * Settings for the given entry.
1287
1427
  *
1288
- * Introduced with Advanced Publishing Workflow - will be always inserted after this PR is merged.
1289
- * Be aware that when accessing properties in it on old systems - it will break if not checked first.
1428
+ * Introduced with Advanced Publishing Workflow. Will always be inserted once this PR is merged.
1429
+ * Be aware that when accessing properties in it on old systems, it will break if not checked first.
1290
1430
  *
1291
- * Available only on the Manage API in entry GraphQL type meta.data property.
1431
+ * Available only on the Manage API in entry GraphQL type `meta.data` property.
1292
1432
  */
1293
1433
  meta?: {
1294
1434
  [key: string]: any;
@@ -1321,7 +1461,7 @@ export interface CmsModelManager {
1321
1461
  */
1322
1462
  getPublishedByIds: (ids: string[]) => Promise<CmsEntry[]>;
1323
1463
  /**
1324
- * Get a list of latest entries by the ID list.
1464
+ * Get a list of the latest entries by the ID list.
1325
1465
  */
1326
1466
  getLatestByIds: (ids: string[]) => Promise<CmsEntry[]>;
1327
1467
  /**
@@ -1329,52 +1469,95 @@ export interface CmsModelManager {
1329
1469
  */
1330
1470
  get: (id: string) => Promise<CmsEntry>;
1331
1471
  /**
1332
- * Create a entry.
1472
+ * Create an entry.
1333
1473
  */
1334
1474
  create: (data: CreateCmsEntryInput) => Promise<CmsEntry>;
1335
1475
  /**
1336
- * Update a entry.
1476
+ * Update an entry.
1337
1477
  */
1338
1478
  update: (id: string, data: UpdateCmsEntryInput) => Promise<CmsEntry>;
1339
1479
  /**
1340
- * Delete a entry.
1480
+ * Delete an entry.
1341
1481
  */
1342
1482
  delete: (id: string) => Promise<void>;
1343
1483
  }
1344
- export interface BeforeModelCreateTopicParams {
1484
+ /**
1485
+ * Create
1486
+ */
1487
+ export interface OnModelBeforeCreateTopicParams {
1345
1488
  input: CmsModelCreateInput;
1346
1489
  model: CmsModel;
1347
1490
  }
1348
- export interface AfterModelCreateTopicParams {
1491
+ export interface OnModelAfterCreateTopicParams {
1349
1492
  input: CmsModelCreateInput;
1350
1493
  model: CmsModel;
1351
1494
  }
1352
- export interface BeforeModelCreateFromTopicParams {
1495
+ export interface OnModelCreateErrorTopicParams {
1496
+ input: CmsModelCreateInput;
1497
+ model: CmsModel;
1498
+ error: Error;
1499
+ }
1500
+ /**
1501
+ * Create From / Clone
1502
+ */
1503
+ export interface OnModelBeforeCreateFromTopicParams {
1353
1504
  input: CmsModelCreateInput;
1354
1505
  original: CmsModel;
1355
1506
  model: CmsModel;
1356
1507
  }
1357
- export interface AfterModelCreateFromTopicParams {
1508
+ export interface OnModelAfterCreateFromTopicParams {
1358
1509
  input: CmsModelCreateInput;
1359
1510
  original: CmsModel;
1360
1511
  model: CmsModel;
1361
1512
  }
1362
- export interface BeforeModelUpdateTopicParams {
1513
+ export interface OnModelCreateFromErrorParams {
1514
+ input: CmsModelCreateInput;
1515
+ original: CmsModel;
1516
+ model: CmsModel;
1517
+ error: Error;
1518
+ }
1519
+ /**
1520
+ * Update
1521
+ */
1522
+ export interface OnModelBeforeUpdateTopicParams {
1523
+ input: CmsModelUpdateInput;
1524
+ original: CmsModel;
1525
+ model: CmsModel;
1526
+ }
1527
+ export interface OnModelAfterUpdateTopicParams {
1363
1528
  input: CmsModelUpdateInput;
1364
1529
  original: CmsModel;
1365
1530
  model: CmsModel;
1366
1531
  }
1367
- export interface AfterModelUpdateTopicParams {
1532
+ export interface OnModelUpdateErrorTopicParams {
1368
1533
  input: CmsModelUpdateInput;
1369
1534
  original: CmsModel;
1370
1535
  model: CmsModel;
1536
+ error: Error;
1371
1537
  }
1372
- export interface BeforeModelDeleteTopicParams {
1538
+ /**
1539
+ * Delete
1540
+ */
1541
+ export interface OnModelBeforeDeleteTopicParams {
1542
+ model: CmsModel;
1543
+ }
1544
+ export interface OnModelAfterDeleteTopicParams {
1373
1545
  model: CmsModel;
1374
1546
  }
1375
- export interface AfterModelDeleteTopicParams {
1547
+ export interface OnModelDeleteErrorTopicParams {
1376
1548
  model: CmsModel;
1549
+ error: Error;
1377
1550
  }
1551
+ /**
1552
+ * Initialize
1553
+ */
1554
+ export interface OnModelInitializeParams {
1555
+ model: CmsModel;
1556
+ data: Record<string, any>;
1557
+ }
1558
+ /**
1559
+ *
1560
+ */
1378
1561
  export interface CmsModelUpdateDirectParams {
1379
1562
  model: CmsModel;
1380
1563
  original: CmsModel;
@@ -1416,7 +1599,14 @@ export interface CmsModelContext {
1416
1599
  */
1417
1600
  deleteModel: (modelId: string) => Promise<void>;
1418
1601
  /**
1419
- * Get a instance of CmsModelManager for given content modelId.
1602
+ * Possibility for users to trigger the model initialization.
1603
+ * They can hook into it and do what ever they want to.
1604
+ *
1605
+ * Primary idea behind this is creating the index, for the code models, in the ES.
1606
+ */
1607
+ initializeModel: (modelId: string, data: Record<string, any>) => Promise<boolean>;
1608
+ /**
1609
+ * Get an instance of CmsModelManager for given content modelId.
1420
1610
  *
1421
1611
  * @see CmsModelManager
1422
1612
  *
@@ -1436,23 +1626,63 @@ export interface CmsModelContext {
1436
1626
  */
1437
1627
  clearModelsCache: () => void;
1438
1628
  /**
1439
- * Events.
1629
+ * Lifecycle events - deprecated.
1630
+ */
1631
+ /**
1632
+ * @deprecated
1633
+ */
1634
+ onBeforeModelCreate: Topic<OnModelBeforeCreateTopicParams>;
1635
+ /**
1636
+ * @deprecated
1637
+ */
1638
+ onAfterModelCreate: Topic<OnModelAfterCreateTopicParams>;
1639
+ /**
1640
+ * @deprecated
1641
+ */
1642
+ onBeforeModelCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
1643
+ /**
1644
+ * @deprecated
1440
1645
  */
1441
- onBeforeModelCreate: Topic<BeforeModelCreateTopicParams>;
1442
- onAfterModelCreate: Topic<AfterModelCreateTopicParams>;
1443
- onBeforeModelCreateFrom: Topic<BeforeModelCreateFromTopicParams>;
1444
- onAfterModelCreateFrom: Topic<AfterModelCreateFromTopicParams>;
1445
- onBeforeModelUpdate: Topic<BeforeModelUpdateTopicParams>;
1446
- onAfterModelUpdate: Topic<AfterModelUpdateTopicParams>;
1447
- onBeforeModelDelete: Topic<BeforeModelDeleteTopicParams>;
1448
- onAfterModelDelete: Topic<AfterModelDeleteTopicParams>;
1646
+ onAfterModelCreateFrom: Topic<OnModelAfterCreateFromTopicParams>;
1647
+ /**
1648
+ * @deprecated
1649
+ */
1650
+ onBeforeModelUpdate: Topic<OnModelBeforeUpdateTopicParams>;
1651
+ /**
1652
+ * @deprecated
1653
+ */
1654
+ onAfterModelUpdate: Topic<OnModelAfterUpdateTopicParams>;
1655
+ /**
1656
+ * @deprecated
1657
+ */
1658
+ onBeforeModelDelete: Topic<OnModelBeforeDeleteTopicParams>;
1659
+ /**
1660
+ * @deprecated
1661
+ */
1662
+ onAfterModelDelete: Topic<OnModelAfterDeleteTopicParams>;
1663
+ /**
1664
+ * Lifecycle events - released in 5.33.0
1665
+ */
1666
+ onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;
1667
+ onModelAfterCreate: Topic<OnModelAfterCreateTopicParams>;
1668
+ onModelCreateError: Topic<OnModelCreateErrorTopicParams>;
1669
+ onModelBeforeCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
1670
+ onModelAfterCreateFrom: Topic<OnModelAfterCreateFromTopicParams>;
1671
+ onModelCreateFromError: Topic<OnModelCreateFromErrorParams>;
1672
+ onModelBeforeUpdate: Topic<OnModelBeforeUpdateTopicParams>;
1673
+ onModelAfterUpdate: Topic<OnModelAfterUpdateTopicParams>;
1674
+ onModelUpdateError: Topic<OnModelUpdateErrorTopicParams>;
1675
+ onModelBeforeDelete: Topic<OnModelBeforeDeleteTopicParams>;
1676
+ onModelAfterDelete: Topic<OnModelAfterDeleteTopicParams>;
1677
+ onModelDeleteError: Topic<OnModelDeleteErrorTopicParams>;
1678
+ onModelInitialize: Topic<OnModelInitializeParams>;
1449
1679
  }
1450
1680
  /**
1451
1681
  * Available statuses for content entry.
1452
1682
  *
1453
1683
  * @category CmsEntry
1454
1684
  */
1455
- export declare type CmsEntryStatus = "published" | "unpublished" | "reviewRequested" | "changesRequested" | "draft";
1685
+ export declare type CmsEntryStatus = "published" | "unpublished" | "draft";
1456
1686
  export interface CmsEntryListWhereRef {
1457
1687
  id?: string;
1458
1688
  id_in?: string[];
@@ -1530,7 +1760,12 @@ export interface CmsEntryListWhere {
1530
1760
  /**
1531
1761
  * This is to allow querying by any content model field defined by the user.
1532
1762
  */
1533
- [key: string]: any | CmsEntryListWhereRef;
1763
+ [key: string]: string | number | boolean | undefined | string[] | number[] | null | CmsEntryListWhere[] | CmsEntryListWhere | CmsEntryListWhereRef;
1764
+ /**
1765
+ * To allow querying via nested queries, we added the AND / OR properties.
1766
+ */
1767
+ AND?: CmsEntryListWhere[];
1768
+ OR?: CmsEntryListWhere[];
1534
1769
  }
1535
1770
  /**
1536
1771
  * Entry listing sort.
@@ -1583,100 +1818,153 @@ export interface CmsEntryMeta {
1583
1818
  */
1584
1819
  totalCount: number;
1585
1820
  }
1586
- export interface BeforeEntryCreateTopicParams {
1821
+ /**
1822
+ * Create
1823
+ */
1824
+ export interface OnEntryBeforeCreateTopicParams {
1587
1825
  input: CreateCmsEntryInput;
1588
1826
  entry: CmsEntry;
1589
1827
  model: StorageOperationsCmsModel;
1590
1828
  }
1591
- export interface AfterEntryCreateTopicParams {
1829
+ export interface OnEntryAfterCreateTopicParams {
1592
1830
  input: CreateCmsEntryInput;
1593
1831
  entry: CmsEntry;
1594
1832
  model: StorageOperationsCmsModel;
1595
1833
  storageEntry: CmsEntry;
1596
1834
  }
1597
- export interface BeforeEntryCreateRevisionTopicParams {
1835
+ export interface OnEntryCreateErrorTopicParams {
1836
+ error: Error;
1837
+ input: CreateCmsEntryInput;
1838
+ entry: CmsEntry;
1839
+ model: CmsModel;
1840
+ }
1841
+ /**
1842
+ * Revision Create
1843
+ */
1844
+ export interface OnEntryRevisionBeforeCreateTopicParams {
1598
1845
  input: CreateFromCmsEntryInput;
1599
1846
  entry: CmsEntry;
1600
1847
  original: CmsEntry;
1601
1848
  model: StorageOperationsCmsModel;
1602
1849
  }
1603
- export interface AfterEntryCreateRevisionTopicParams {
1850
+ export interface OnEntryRevisionAfterCreateTopicParams {
1604
1851
  input: CreateFromCmsEntryInput;
1605
1852
  entry: CmsEntry;
1606
1853
  original: CmsEntry;
1607
1854
  model: StorageOperationsCmsModel;
1608
1855
  storageEntry: CmsEntry;
1609
1856
  }
1610
- export interface BeforeEntryUpdateTopicParams {
1857
+ export interface OnEntryCreateRevisionErrorTopicParams {
1858
+ error: Error;
1859
+ input: CreateFromCmsEntryInput;
1860
+ original: CmsEntry;
1861
+ entry: CmsEntry;
1862
+ model: CmsModel;
1863
+ }
1864
+ /**
1865
+ * Update
1866
+ */
1867
+ export interface OnEntryBeforeUpdateTopicParams {
1611
1868
  input: UpdateCmsEntryInput;
1612
1869
  original: CmsEntry;
1613
1870
  entry: CmsEntry;
1614
1871
  model: StorageOperationsCmsModel;
1615
1872
  }
1616
- export interface AfterEntryUpdateTopicParams {
1873
+ export interface OnEntryAfterUpdateTopicParams {
1617
1874
  input: UpdateCmsEntryInput;
1618
1875
  original: CmsEntry;
1619
1876
  entry: CmsEntry;
1620
1877
  model: StorageOperationsCmsModel;
1621
1878
  storageEntry: CmsEntry;
1622
1879
  }
1623
- export interface BeforeEntryPublishTopicParams {
1880
+ export interface OnEntryUpdateErrorTopicParams {
1881
+ error: Error;
1882
+ input: CreateFromCmsEntryInput;
1883
+ entry: CmsEntry;
1884
+ model: CmsModel;
1885
+ }
1886
+ /**
1887
+ * Publish
1888
+ */
1889
+ export interface OnEntryBeforePublishTopicParams {
1624
1890
  entry: CmsEntry;
1625
1891
  model: StorageOperationsCmsModel;
1626
1892
  }
1627
- export interface AfterEntryPublishTopicParams {
1893
+ export interface OnEntryAfterPublishTopicParams {
1628
1894
  entry: CmsEntry;
1629
1895
  model: StorageOperationsCmsModel;
1630
1896
  storageEntry: CmsEntry;
1631
1897
  }
1632
- export interface BeforeEntryUnpublishTopicParams {
1898
+ export interface OnEntryPublishErrorTopicParams {
1899
+ error: Error;
1900
+ entry: CmsEntry;
1901
+ model: StorageOperationsCmsModel;
1902
+ }
1903
+ /**
1904
+ * Republish
1905
+ */
1906
+ export interface OnEntryBeforeRepublishTopicParams {
1633
1907
  entry: CmsEntry;
1634
1908
  model: StorageOperationsCmsModel;
1635
1909
  }
1636
- export interface AfterEntryUnpublishTopicParams {
1910
+ export interface OnEntryAfterRepublishTopicParams {
1637
1911
  entry: CmsEntry;
1638
1912
  model: StorageOperationsCmsModel;
1639
1913
  storageEntry: CmsEntry;
1640
1914
  }
1641
- export interface BeforeEntryRequestChangesTopicParams {
1915
+ export interface OnEntryRepublishErrorTopicParams {
1916
+ error: Error;
1642
1917
  entry: CmsEntry;
1643
1918
  model: StorageOperationsCmsModel;
1644
1919
  }
1645
- export interface AfterEntryRequestChangesTopicParams {
1920
+ /**
1921
+ * Unpublish
1922
+ */
1923
+ export interface OnEntryBeforeUnpublishTopicParams {
1924
+ entry: CmsEntry;
1925
+ model: StorageOperationsCmsModel;
1926
+ }
1927
+ export interface OnEntryAfterUnpublishTopicParams {
1646
1928
  entry: CmsEntry;
1647
1929
  model: StorageOperationsCmsModel;
1648
1930
  storageEntry: CmsEntry;
1649
1931
  }
1650
- export interface BeforeEntryRequestReviewTopicParams {
1932
+ export interface OnEntryUnpublishErrorTopicParams {
1933
+ error: Error;
1934
+ entry: CmsEntry;
1935
+ model: CmsModel;
1936
+ }
1937
+ export interface OnEntryBeforeDeleteTopicParams {
1651
1938
  entry: CmsEntry;
1652
1939
  model: StorageOperationsCmsModel;
1653
1940
  }
1654
- export interface AfterEntryRequestReviewTopicParams {
1941
+ export interface OnEntryAfterDeleteTopicParams {
1655
1942
  entry: CmsEntry;
1656
1943
  model: StorageOperationsCmsModel;
1657
- storageEntry: CmsEntry;
1658
1944
  }
1659
- export interface BeforeEntryDeleteTopicParams {
1945
+ export interface OnEntryDeleteErrorTopicParams {
1946
+ error: Error;
1660
1947
  entry: CmsEntry;
1661
1948
  model: StorageOperationsCmsModel;
1662
1949
  }
1663
- export interface AfterEntryDeleteTopicParams {
1950
+ export interface OnEntryRevisionBeforeDeleteTopicParams {
1664
1951
  entry: CmsEntry;
1665
1952
  model: StorageOperationsCmsModel;
1666
1953
  }
1667
- export interface BeforeEntryDeleteRevisionTopicParams {
1954
+ export interface OnEntryRevisionAfterDeleteTopicParams {
1668
1955
  entry: CmsEntry;
1669
1956
  model: StorageOperationsCmsModel;
1670
1957
  }
1671
- export interface AfterEntryDeleteRevisionTopicParams {
1958
+ export interface OnEntryRevisionDeleteErrorTopicParams {
1959
+ error: Error;
1672
1960
  entry: CmsEntry;
1673
1961
  model: StorageOperationsCmsModel;
1674
1962
  }
1675
- export interface BeforeEntryGetTopicParams {
1963
+ export interface OnEntryBeforeGetTopicParams {
1676
1964
  model: StorageOperationsCmsModel;
1677
1965
  where: CmsEntryListWhere;
1678
1966
  }
1679
- export interface BeforeEntryListTopicParams {
1967
+ export interface EntryBeforeListTopicParams {
1680
1968
  where: CmsEntryListWhere;
1681
1969
  model: StorageOperationsCmsModel;
1682
1970
  }
@@ -1685,6 +1973,7 @@ export interface BeforeEntryListTopicParams {
1685
1973
  * @category CmsEntry
1686
1974
  */
1687
1975
  export interface CreateCmsEntryInput {
1976
+ id?: string;
1688
1977
  [key: string]: any;
1689
1978
  }
1690
1979
  /**
@@ -1725,7 +2014,7 @@ export interface CmsEntryContext {
1725
2014
  */
1726
2015
  listEntries: (model: CmsModel, params: CmsEntryListParams) => Promise<[CmsEntry[], CmsEntryMeta]>;
1727
2016
  /**
1728
- * Lists latest entries. Used for manage API.
2017
+ * Lists the latest entries. Used for manage API.
1729
2018
  */
1730
2019
  listLatestEntries: (model: CmsModel, params?: CmsEntryListParams) => Promise<[CmsEntry[], CmsEntryMeta]>;
1731
2020
  /**
@@ -1774,40 +2063,105 @@ export interface CmsEntryContext {
1774
2063
  */
1775
2064
  unpublishEntry: (model: CmsModel, id: string) => Promise<CmsEntry>;
1776
2065
  /**
1777
- * Request a review for the entry.
2066
+ * Get all entry revisions.
1778
2067
  */
1779
- requestEntryReview: (model: CmsModel, id: string) => Promise<CmsEntry>;
2068
+ getEntryRevisions: (model: CmsModel, id: string) => Promise<CmsEntry[]>;
1780
2069
  /**
1781
- * Request changes for the entry.
2070
+ * Lifecyle events - deprecated.
1782
2071
  */
1783
- requestEntryChanges: (model: CmsModel, id: string) => Promise<CmsEntry>;
1784
2072
  /**
1785
- * Get all entry revisions.
2073
+ * @deprecated
1786
2074
  */
1787
- getEntryRevisions: (model: CmsModel, id: string) => Promise<CmsEntry[]>;
2075
+ onBeforeEntryCreate: Topic<OnEntryBeforeCreateTopicParams>;
2076
+ /**
2077
+ * @deprecated
2078
+ */
2079
+ onAfterEntryCreate: Topic<OnEntryAfterCreateTopicParams>;
2080
+ /**
2081
+ * @deprecated
2082
+ */
2083
+ onBeforeEntryCreateRevision: Topic<OnEntryRevisionBeforeCreateTopicParams>;
2084
+ /**
2085
+ * @deprecated
2086
+ */
2087
+ onAfterEntryCreateRevision: Topic<OnEntryRevisionAfterCreateTopicParams>;
2088
+ /**
2089
+ * @deprecated
2090
+ */
2091
+ onBeforeEntryUpdate: Topic<OnEntryBeforeUpdateTopicParams>;
2092
+ /**
2093
+ * @deprecated
2094
+ */
2095
+ onAfterEntryUpdate: Topic<OnEntryAfterUpdateTopicParams>;
2096
+ /**
2097
+ * @deprecated
2098
+ */
2099
+ onBeforeEntryDelete: Topic<OnEntryBeforeDeleteTopicParams>;
2100
+ /**
2101
+ * @deprecated
2102
+ */
2103
+ onAfterEntryDelete: Topic<OnEntryAfterDeleteTopicParams>;
2104
+ /**
2105
+ * @deprecated
2106
+ */
2107
+ onBeforeEntryDeleteRevision: Topic<OnEntryRevisionBeforeDeleteTopicParams>;
2108
+ /**
2109
+ * @deprecated
2110
+ */
2111
+ onAfterEntryDeleteRevision: Topic<OnEntryRevisionAfterDeleteTopicParams>;
2112
+ /**
2113
+ * @deprecated
2114
+ */
2115
+ onBeforeEntryPublish: Topic<OnEntryBeforePublishTopicParams>;
2116
+ /**
2117
+ * @deprecated
2118
+ */
2119
+ onAfterEntryPublish: Topic<OnEntryAfterPublishTopicParams>;
1788
2120
  /**
1789
- * Events.
1790
- */
1791
- onBeforeEntryCreate: Topic<BeforeEntryCreateTopicParams>;
1792
- onAfterEntryCreate: Topic<AfterEntryCreateTopicParams>;
1793
- onBeforeEntryCreateRevision: Topic<BeforeEntryCreateRevisionTopicParams>;
1794
- onAfterEntryCreateRevision: Topic<AfterEntryCreateRevisionTopicParams>;
1795
- onBeforeEntryUpdate: Topic<BeforeEntryUpdateTopicParams>;
1796
- onAfterEntryUpdate: Topic<AfterEntryUpdateTopicParams>;
1797
- onBeforeEntryDelete: Topic<BeforeEntryDeleteTopicParams>;
1798
- onAfterEntryDelete: Topic<AfterEntryDeleteTopicParams>;
1799
- onBeforeEntryDeleteRevision: Topic<BeforeEntryDeleteRevisionTopicParams>;
1800
- onAfterEntryDeleteRevision: Topic<AfterEntryDeleteRevisionTopicParams>;
1801
- onBeforeEntryPublish: Topic<BeforeEntryPublishTopicParams>;
1802
- onAfterEntryPublish: Topic<AfterEntryPublishTopicParams>;
1803
- onBeforeEntryUnpublish: Topic<BeforeEntryUnpublishTopicParams>;
1804
- onAfterEntryUnpublish: Topic<AfterEntryUnpublishTopicParams>;
1805
- onBeforeEntryRequestChanges: Topic<BeforeEntryRequestChangesTopicParams>;
1806
- onAfterEntryRequestChanges: Topic<AfterEntryRequestChangesTopicParams>;
1807
- onBeforeEntryRequestReview: Topic<BeforeEntryRequestReviewTopicParams>;
1808
- onAfterEntryRequestReview: Topic<AfterEntryRequestReviewTopicParams>;
1809
- onBeforeEntryGet: Topic<BeforeEntryGetTopicParams>;
1810
- onBeforeEntryList: Topic<BeforeEntryListTopicParams>;
2121
+ * @deprecated
2122
+ */
2123
+ onBeforeEntryUnpublish: Topic<OnEntryBeforeUnpublishTopicParams>;
2124
+ /**
2125
+ * @deprecated
2126
+ */
2127
+ onAfterEntryUnpublish: Topic<OnEntryAfterUnpublishTopicParams>;
2128
+ /**
2129
+ * @deprecated
2130
+ */
2131
+ onBeforeEntryGet: Topic<OnEntryBeforeGetTopicParams>;
2132
+ /**
2133
+ * @deprecated
2134
+ */
2135
+ onBeforeEntryList: Topic<EntryBeforeListTopicParams>;
2136
+ /**
2137
+ * Lifecycle events released in 5.33.0
2138
+ */
2139
+ onEntryBeforeCreate: Topic<OnEntryBeforeCreateTopicParams>;
2140
+ onEntryAfterCreate: Topic<OnEntryAfterCreateTopicParams>;
2141
+ onEntryCreateError: Topic<OnEntryCreateErrorTopicParams>;
2142
+ onEntryRevisionBeforeCreate: Topic<OnEntryRevisionBeforeCreateTopicParams>;
2143
+ onEntryRevisionAfterCreate: Topic<OnEntryRevisionAfterCreateTopicParams>;
2144
+ onEntryRevisionCreateError: Topic<OnEntryCreateRevisionErrorTopicParams>;
2145
+ onEntryBeforeUpdate: Topic<OnEntryBeforeUpdateTopicParams>;
2146
+ onEntryAfterUpdate: Topic<OnEntryAfterUpdateTopicParams>;
2147
+ onEntryUpdateError: Topic<OnEntryUpdateErrorTopicParams>;
2148
+ onEntryBeforeDelete: Topic<OnEntryBeforeDeleteTopicParams>;
2149
+ onEntryAfterDelete: Topic<OnEntryAfterDeleteTopicParams>;
2150
+ onEntryDeleteError: Topic<OnEntryDeleteErrorTopicParams>;
2151
+ onEntryRevisionBeforeDelete: Topic<OnEntryRevisionBeforeDeleteTopicParams>;
2152
+ onEntryRevisionAfterDelete: Topic<OnEntryRevisionAfterDeleteTopicParams>;
2153
+ onEntryRevisionDeleteError: Topic<OnEntryRevisionDeleteErrorTopicParams>;
2154
+ onEntryBeforePublish: Topic<OnEntryBeforePublishTopicParams>;
2155
+ onEntryAfterPublish: Topic<OnEntryAfterPublishTopicParams>;
2156
+ onEntryPublishError: Topic<OnEntryPublishErrorTopicParams>;
2157
+ onEntryBeforeRepublish: Topic<OnEntryBeforeRepublishTopicParams>;
2158
+ onEntryAfterRepublish: Topic<OnEntryAfterRepublishTopicParams>;
2159
+ onEntryRepublishError: Topic<OnEntryRepublishErrorTopicParams>;
2160
+ onEntryBeforeUnpublish: Topic<OnEntryBeforeUnpublishTopicParams>;
2161
+ onEntryAfterUnpublish: Topic<OnEntryAfterUnpublishTopicParams>;
2162
+ onEntryUnpublishError: Topic<OnEntryUnpublishErrorTopicParams>;
2163
+ onEntryBeforeGet: Topic<OnEntryBeforeGetTopicParams>;
2164
+ onEntryBeforeList: Topic<EntryBeforeListTopicParams>;
1811
2165
  }
1812
2166
  /**
1813
2167
  * Parameters for CmsEntryResolverFactory.
@@ -1851,13 +2205,13 @@ export interface BaseCmsSecurityPermission extends SecurityPermission {
1851
2205
  */
1852
2206
  export interface CmsModelPermission extends BaseCmsSecurityPermission {
1853
2207
  /**
1854
- * A object representing `key: model.modelId` values where key is locale code.
2208
+ * An object representing `key: model.modelId` values where key is locale code.
1855
2209
  */
1856
2210
  models?: {
1857
2211
  [key: string]: string[];
1858
2212
  };
1859
2213
  /**
1860
- * A object representing `key: group.id` values where key is locale code.
2214
+ * {locale: groupId[]} map, where key is a locale code.
1861
2215
  */
1862
2216
  groups?: {
1863
2217
  [key: string]: string[];
@@ -1871,7 +2225,7 @@ export interface CmsModelPermission extends BaseCmsSecurityPermission {
1871
2225
  */
1872
2226
  export interface CmsGroupPermission extends BaseCmsSecurityPermission {
1873
2227
  /**
1874
- * A object representing `key: group.id` values where key is locale code.
2228
+ * {locale: groupId[]} map, where key is a locale code.
1875
2229
  */
1876
2230
  groups?: {
1877
2231
  [key: string]: string[];
@@ -1886,13 +2240,13 @@ export interface CmsGroupPermission extends BaseCmsSecurityPermission {
1886
2240
  export interface CmsEntryPermission extends BaseCmsSecurityPermission {
1887
2241
  pw?: string;
1888
2242
  /**
1889
- * A object representing `key: model.modelId` values where key is locale code.
2243
+ * An object representing `key: model.modelId` values where key is locale code.
1890
2244
  */
1891
2245
  models?: {
1892
2246
  [key: string]: string[];
1893
2247
  };
1894
2248
  /**
1895
- * A object representing `key: group.id` values where key is locale code.
2249
+ * {locale: groupId[]} map, where key is a locale code.
1896
2250
  */
1897
2251
  groups?: {
1898
2252
  [key: string]: string[];
@@ -2007,7 +2361,7 @@ export interface CmsEntryStorageOperationsListParams {
2007
2361
  sort?: CmsEntryListSort;
2008
2362
  search?: string;
2009
2363
  fields?: string[];
2010
- limit?: number;
2364
+ limit: number;
2011
2365
  after?: string | null;
2012
2366
  }
2013
2367
  export interface CmsEntryStorageOperationsCreateParams<T extends CmsStorageEntry = CmsStorageEntry> {
@@ -2085,26 +2439,6 @@ export interface CmsEntryStorageOperationsUnpublishParams<T extends CmsStorageEn
2085
2439
  */
2086
2440
  storageEntry: T;
2087
2441
  }
2088
- export interface CmsEntryStorageOperationsRequestChangesParams<T extends CmsStorageEntry = CmsStorageEntry> {
2089
- /**
2090
- * Entry data updated with the required properties.
2091
- */
2092
- entry: CmsEntry;
2093
- /**
2094
- * Entry that is prepared for the storageOperations, with the transformations.
2095
- */
2096
- storageEntry: T;
2097
- }
2098
- export interface CmsEntryStorageOperationsRequestReviewParams<T extends CmsStorageEntry = CmsStorageEntry> {
2099
- /**
2100
- * Entry that is prepared for the storageOperations.
2101
- */
2102
- entry: CmsEntry;
2103
- /**
2104
- * Entry that is prepared for the storageOperations, with the transformations.
2105
- */
2106
- storageEntry: T;
2107
- }
2108
2442
  export interface CmsEntryStorageOperationsGetByIdsParams {
2109
2443
  ids: readonly string[];
2110
2444
  }
@@ -2226,21 +2560,11 @@ export interface CmsEntryStorageOperations<T extends CmsStorageEntry = CmsStorag
2226
2560
  * Unpublish the entry.
2227
2561
  */
2228
2562
  unpublish: (model: StorageOperationsCmsModel, params: CmsEntryStorageOperationsUnpublishParams<T>) => Promise<T>;
2229
- /**
2230
- * Request changes the entry.
2231
- */
2232
- requestChanges: (model: StorageOperationsCmsModel, params: CmsEntryStorageOperationsRequestChangesParams<T>) => Promise<T>;
2233
- /**
2234
- * Request review the entry.
2235
- */
2236
- requestReview: (model: StorageOperationsCmsModel, params: CmsEntryStorageOperationsRequestReviewParams<T>) => Promise<CmsEntry>;
2237
2563
  }
2238
2564
  export declare enum CONTENT_ENTRY_STATUS {
2239
2565
  DRAFT = "draft",
2240
2566
  PUBLISHED = "published",
2241
- UNPUBLISHED = "unpublished",
2242
- CHANGES_REQUESTED = "changesRequested",
2243
- REVIEW_REQUESTED = "reviewRequested"
2567
+ UNPUBLISHED = "unpublished"
2244
2568
  }
2245
2569
  export interface CmsSettingsStorageOperationsGetParams {
2246
2570
  locale: string;
@@ -2297,7 +2621,8 @@ export interface CmsSystemStorageOperations {
2297
2621
  */
2298
2622
  update: (params: CmsSystemStorageOperationsUpdateParams) => Promise<CmsSystem>;
2299
2623
  }
2300
- export interface HeadlessCmsStorageOperations {
2624
+ export interface HeadlessCmsStorageOperations<C = CmsContext> {
2625
+ name: string;
2301
2626
  system: CmsSystemStorageOperations;
2302
2627
  settings: CmsSettingsStorageOperations;
2303
2628
  groups: CmsGroupStorageOperations;
@@ -2306,8 +2631,8 @@ export interface HeadlessCmsStorageOperations {
2306
2631
  /**
2307
2632
  * Either attach something from the storage operations or run something in it.
2308
2633
  */
2309
- beforeInit?: (context: CmsContext) => Promise<void>;
2310
- init?: (context: CmsContext) => Promise<void>;
2634
+ beforeInit?: (context: C) => Promise<void>;
2635
+ init?: (context: C) => Promise<void>;
2311
2636
  /**
2312
2637
  * An upgrade to run if necessary.
2313
2638
  */