@webiny/api-headless-cms 0.0.0-unstable.e622468070 → 0.0.0-unstable.e6f0dc8ca7

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 (1056) hide show
  1. package/constants.d.ts +2 -1
  2. package/constants.js +4 -0
  3. package/constants.js.map +1 -1
  4. package/context.d.ts +2 -5
  5. package/context.js +16 -7
  6. package/context.js.map +1 -1
  7. package/crud/AccessControl/AccessControl.d.ts +18 -28
  8. package/crud/AccessControl/AccessControl.js.map +1 -1
  9. package/crud/AccessControl/README.md +1 -1
  10. package/crud/contentEntry/entryDataFactories/createEntryData.js +27 -12
  11. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -1
  12. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +13 -6
  13. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -1
  14. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +4 -1
  15. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +1 -1
  16. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +4 -1
  17. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +1 -1
  18. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +2 -1
  19. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +1 -1
  20. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +4 -3
  21. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +1 -1
  22. package/crud/contentEntry/entryDataFactories/system.d.ts +10 -0
  23. package/crud/contentEntry/entryDataFactories/system.js +14 -0
  24. package/crud/contentEntry/entryDataFactories/system.js.map +1 -0
  25. package/crud/contentEntry/entryDataValidation.d.ts +1 -1
  26. package/crud/contentEntry/entryDataValidation.js +19 -16
  27. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  28. package/crud/contentEntry/references/buildPaths.d.ts +1 -1
  29. package/crud/contentEntry/references/buildPaths.js +3 -3
  30. package/crud/contentEntry/references/buildPaths.js.map +1 -1
  31. package/crud/contentEntry/searchableFields.d.ts +2 -3
  32. package/crud/contentEntry/searchableFields.js +15 -19
  33. package/crud/contentEntry/searchableFields.js.map +1 -1
  34. package/crud/contentEntry.crud.js +16 -11
  35. package/crud/contentEntry.crud.js.map +1 -1
  36. package/crud/contentModel/fields/descriptionField.js +1 -1
  37. package/crud/contentModel/fields/descriptionField.js.map +1 -1
  38. package/crud/contentModel/fields/imageField.js +1 -1
  39. package/crud/contentModel/fields/imageField.js.map +1 -1
  40. package/crud/contentModel/fields/titleField.js +1 -1
  41. package/crud/contentModel/fields/titleField.js.map +1 -1
  42. package/crud/contentModel/validation.d.ts +224 -902
  43. package/crud/contentModel/validation.js +64 -36
  44. package/crud/contentModel/validation.js.map +1 -1
  45. package/crud/contentModel.crud.js +2 -1
  46. package/crud/contentModel.crud.js.map +1 -1
  47. package/domain/contentEntry/EntryId.d.ts +1 -0
  48. package/domain/contentEntry/EntryId.js +2 -0
  49. package/domain/contentEntry/EntryId.js.map +1 -1
  50. package/domain/contentEntry/errors.d.ts +2 -2
  51. package/domain/contentEntry/errors.js.map +1 -1
  52. package/domain/contentModel/errors.d.ts +1 -1
  53. package/domain/contentModel/errors.js.map +1 -1
  54. package/domain/contentModel/schemas.d.ts +198 -616
  55. package/domain/contentModel/schemas.js +55 -37
  56. package/domain/contentModel/schemas.js.map +1 -1
  57. package/domain/contentModel/validation/fields/descriptionField.js +1 -1
  58. package/domain/contentModel/validation/fields/descriptionField.js.map +1 -1
  59. package/domain/contentModel/validation/fields/imageField.js +1 -1
  60. package/domain/contentModel/validation/fields/imageField.js.map +1 -1
  61. package/domain/contentModel/validation/fields/titleField.js +1 -1
  62. package/domain/contentModel/validation/fields/titleField.js.map +1 -1
  63. package/domain/contentModel/validation/modelFields.js +15 -20
  64. package/domain/contentModel/validation/modelFields.js.map +1 -1
  65. package/domain/contentModelGroup/validation.d.ts +34 -82
  66. package/domain/contentModelGroup/validation.js +2 -2
  67. package/domain/contentModelGroup/validation.js.map +1 -1
  68. package/export/graphql/index.js +1 -1
  69. package/export/graphql/index.js.map +1 -1
  70. package/export/types.js.map +1 -1
  71. package/exports/api/cms/entry.d.ts +3 -0
  72. package/exports/api/cms/entry.js +6 -0
  73. package/exports/api/cms/entry.js.map +1 -1
  74. package/exports/api/cms/graphql.d.ts +1 -0
  75. package/exports/api/cms/graphql.js +3 -0
  76. package/exports/api/cms/graphql.js.map +1 -0
  77. package/exports/api/cms/model.d.ts +5 -1
  78. package/exports/api/cms/model.js +3 -1
  79. package/exports/api/cms/model.js.map +1 -1
  80. package/exports/api/cms/storage.d.ts +3 -0
  81. package/exports/api/cms/storage.js +5 -0
  82. package/exports/api/cms/storage.js.map +1 -0
  83. package/exports/api/cms/validation.d.ts +4 -0
  84. package/exports/api/cms/validation.js +6 -0
  85. package/exports/api/cms/validation.js.map +1 -0
  86. package/extensions/entryHooks/OnEntryBeforeCreate.d.ts +3 -7
  87. package/extensions/index.d.ts +2 -6
  88. package/features/contentEntry/ContentEntriesFeature.d.ts +4 -1
  89. package/features/contentEntry/ContentEntriesFeature.js +6 -0
  90. package/features/contentEntry/ContentEntriesFeature.js.map +1 -1
  91. package/{utils/contentEntryTraverser → features/contentEntry/ContentEntryTraverser}/ContentEntryTraverser.d.ts +1 -1
  92. package/{utils/contentEntryTraverser → features/contentEntry/ContentEntryTraverser}/ContentEntryTraverser.js +2 -2
  93. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js.map +1 -0
  94. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.d.ts +14 -0
  95. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js +25 -0
  96. package/features/contentEntry/ContentEntryTraverser/ContentEntryTraverserProvider.js.map +1 -0
  97. package/features/contentEntry/ContentEntryTraverser/abstractions.d.ts +12 -0
  98. package/features/contentEntry/ContentEntryTraverser/abstractions.js +7 -0
  99. package/features/contentEntry/ContentEntryTraverser/abstractions.js.map +1 -0
  100. package/features/contentEntry/ContentEntryTraverser/feature.d.ts +4 -0
  101. package/features/contentEntry/ContentEntryTraverser/feature.js +10 -0
  102. package/features/contentEntry/ContentEntryTraverser/feature.js.map +1 -0
  103. package/features/contentEntry/ContentEntryTraverser/index.d.ts +2 -0
  104. package/features/contentEntry/ContentEntryTraverser/index.js +4 -0
  105. package/features/contentEntry/ContentEntryTraverser/index.js.map +1 -0
  106. package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +3 -3
  107. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +3 -3
  108. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
  109. package/features/contentEntry/CreateEntry/abstractions.d.ts +1 -0
  110. package/features/contentEntry/CreateEntry/abstractions.js +1 -0
  111. package/features/contentEntry/CreateEntry/abstractions.js.map +1 -1
  112. package/features/contentEntry/CreateEntry/events.d.ts +4 -2
  113. package/features/contentEntry/CreateEntry/events.js +5 -1
  114. package/features/contentEntry/CreateEntry/events.js.map +1 -1
  115. package/features/contentEntry/CreateEntry/feature.d.ts +4 -1
  116. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +3 -3
  117. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +3 -3
  118. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
  119. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.d.ts +1 -0
  120. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js +1 -0
  121. package/features/contentEntry/CreateEntryRevisionFrom/abstractions.js.map +1 -1
  122. package/features/contentEntry/CreateEntryRevisionFrom/events.d.ts +4 -2
  123. package/features/contentEntry/CreateEntryRevisionFrom/events.js +5 -1
  124. package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
  125. package/features/contentEntry/CreateEntryRevisionFrom/feature.d.ts +4 -1
  126. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.d.ts +1 -1
  127. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +1 -1
  128. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
  129. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.d.ts +2 -2
  130. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +2 -2
  131. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
  132. package/features/contentEntry/DeleteEntry/abstractions.d.ts +2 -0
  133. package/features/contentEntry/DeleteEntry/abstractions.js +2 -0
  134. package/features/contentEntry/DeleteEntry/abstractions.js.map +1 -1
  135. package/features/contentEntry/DeleteEntry/events.d.ts +4 -2
  136. package/features/contentEntry/DeleteEntry/events.js +5 -1
  137. package/features/contentEntry/DeleteEntry/events.js.map +1 -1
  138. package/features/contentEntry/DeleteEntry/feature.d.ts +4 -1
  139. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.d.ts +1 -1
  140. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +1 -1
  141. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
  142. package/features/contentEntry/DeleteEntryRevision/abstractions.d.ts +1 -0
  143. package/features/contentEntry/DeleteEntryRevision/abstractions.js +1 -0
  144. package/features/contentEntry/DeleteEntryRevision/abstractions.js.map +1 -1
  145. package/features/contentEntry/DeleteEntryRevision/events.d.ts +4 -2
  146. package/features/contentEntry/DeleteEntryRevision/events.js +5 -1
  147. package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
  148. package/features/contentEntry/DeleteEntryRevision/feature.d.ts +4 -1
  149. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.d.ts +1 -1
  150. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +1 -1
  151. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
  152. package/features/contentEntry/DeleteMultipleEntries/abstractions.d.ts +1 -0
  153. package/features/contentEntry/DeleteMultipleEntries/abstractions.js +1 -0
  154. package/features/contentEntry/DeleteMultipleEntries/abstractions.js.map +1 -1
  155. package/features/contentEntry/DeleteMultipleEntries/events.d.ts +4 -2
  156. package/features/contentEntry/DeleteMultipleEntries/events.js +5 -1
  157. package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
  158. package/features/contentEntry/DeleteMultipleEntries/feature.d.ts +4 -1
  159. package/features/contentEntry/GetEntriesByIds/abstractions.d.ts +1 -0
  160. package/features/contentEntry/GetEntriesByIds/abstractions.js +1 -0
  161. package/features/contentEntry/GetEntriesByIds/abstractions.js.map +1 -1
  162. package/features/contentEntry/GetEntriesByIds/feature.d.ts +4 -1
  163. package/features/contentEntry/GetEntry/abstractions.d.ts +1 -0
  164. package/features/contentEntry/GetEntry/abstractions.js +1 -0
  165. package/features/contentEntry/GetEntry/abstractions.js.map +1 -1
  166. package/features/contentEntry/GetEntry/feature.d.ts +4 -1
  167. package/features/contentEntry/GetEntryById/abstractions.d.ts +1 -0
  168. package/features/contentEntry/GetEntryById/abstractions.js +1 -0
  169. package/features/contentEntry/GetEntryById/abstractions.js.map +1 -1
  170. package/features/contentEntry/GetEntryById/feature.d.ts +4 -1
  171. package/features/contentEntry/GetLatestEntriesByIds/abstractions.d.ts +1 -0
  172. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js +1 -0
  173. package/features/contentEntry/GetLatestEntriesByIds/abstractions.js.map +1 -1
  174. package/features/contentEntry/GetLatestEntriesByIds/feature.d.ts +4 -1
  175. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.d.ts +4 -9
  176. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js +4 -9
  177. package/features/contentEntry/GetLatestRevisionByEntryId/abstractions.js.map +1 -1
  178. package/features/contentEntry/GetLatestRevisionByEntryId/feature.d.ts +4 -1
  179. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.d.ts +2 -3
  180. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js +2 -3
  181. package/features/contentEntry/GetPreviousRevisionByEntryId/abstractions.js.map +1 -1
  182. package/features/contentEntry/GetPreviousRevisionByEntryId/feature.d.ts +4 -1
  183. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.d.ts +1 -0
  184. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js +1 -0
  185. package/features/contentEntry/GetPublishedEntriesByIds/abstractions.js.map +1 -1
  186. package/features/contentEntry/GetPublishedEntriesByIds/feature.d.ts +4 -1
  187. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.d.ts +1 -0
  188. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js +1 -0
  189. package/features/contentEntry/GetPublishedRevisionByEntryId/abstractions.js.map +1 -1
  190. package/features/contentEntry/GetPublishedRevisionByEntryId/feature.d.ts +4 -1
  191. package/features/contentEntry/GetRevisionById/abstractions.d.ts +1 -0
  192. package/features/contentEntry/GetRevisionById/abstractions.js +1 -0
  193. package/features/contentEntry/GetRevisionById/abstractions.js.map +1 -1
  194. package/features/contentEntry/GetRevisionById/feature.d.ts +4 -1
  195. package/features/contentEntry/GetRevisionsByEntryId/abstractions.d.ts +1 -0
  196. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js +1 -0
  197. package/features/contentEntry/GetRevisionsByEntryId/abstractions.js.map +1 -1
  198. package/features/contentEntry/GetRevisionsByEntryId/feature.d.ts +4 -1
  199. package/features/contentEntry/GetSingletonEntry/abstractions.d.ts +1 -0
  200. package/features/contentEntry/GetSingletonEntry/abstractions.js +1 -0
  201. package/features/contentEntry/GetSingletonEntry/abstractions.js.map +1 -1
  202. package/features/contentEntry/GetSingletonEntry/feature.d.ts +4 -1
  203. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.d.ts +2 -2
  204. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +9 -15
  205. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
  206. package/features/contentEntry/GetUniqueFieldValues/feature.d.ts +4 -1
  207. package/features/contentEntry/ListEntries/ListEntriesRepository.js +6 -1
  208. package/features/contentEntry/ListEntries/ListEntriesRepository.js.map +1 -1
  209. package/features/contentEntry/ListEntries/ListEntriesUseCase.d.ts +1 -1
  210. package/features/contentEntry/ListEntries/ListEntriesUseCase.js +1 -1
  211. package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
  212. package/features/contentEntry/ListEntries/abstractions.d.ts +4 -0
  213. package/features/contentEntry/ListEntries/abstractions.js +4 -0
  214. package/features/contentEntry/ListEntries/abstractions.js.map +1 -1
  215. package/features/contentEntry/ListEntries/feature.d.ts +4 -1
  216. package/features/contentEntry/MoveEntry/MoveEntryUseCase.d.ts +1 -1
  217. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +1 -1
  218. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
  219. package/features/contentEntry/MoveEntry/abstractions.d.ts +1 -0
  220. package/features/contentEntry/MoveEntry/abstractions.js +1 -0
  221. package/features/contentEntry/MoveEntry/abstractions.js.map +1 -1
  222. package/features/contentEntry/MoveEntry/events.d.ts +4 -2
  223. package/features/contentEntry/MoveEntry/events.js +5 -1
  224. package/features/contentEntry/MoveEntry/events.js.map +1 -1
  225. package/features/contentEntry/MoveEntry/feature.d.ts +4 -1
  226. package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +2 -2
  227. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +2 -2
  228. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
  229. package/features/contentEntry/PublishEntry/abstractions.d.ts +1 -0
  230. package/features/contentEntry/PublishEntry/abstractions.js +1 -0
  231. package/features/contentEntry/PublishEntry/abstractions.js.map +1 -1
  232. package/features/contentEntry/PublishEntry/events.d.ts +4 -2
  233. package/features/contentEntry/PublishEntry/events.js +5 -1
  234. package/features/contentEntry/PublishEntry/events.js.map +1 -1
  235. package/features/contentEntry/PublishEntry/feature.d.ts +4 -1
  236. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +2 -2
  237. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +2 -2
  238. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
  239. package/features/contentEntry/RepublishEntry/abstractions.d.ts +1 -0
  240. package/features/contentEntry/RepublishEntry/abstractions.js +1 -0
  241. package/features/contentEntry/RepublishEntry/abstractions.js.map +1 -1
  242. package/features/contentEntry/RepublishEntry/events.d.ts +4 -2
  243. package/features/contentEntry/RepublishEntry/events.js +5 -1
  244. package/features/contentEntry/RepublishEntry/events.js.map +1 -1
  245. package/features/contentEntry/RepublishEntry/feature.d.ts +4 -1
  246. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.d.ts +2 -2
  247. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +2 -2
  248. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
  249. package/features/contentEntry/RestoreEntryFromBin/abstractions.d.ts +1 -0
  250. package/features/contentEntry/RestoreEntryFromBin/abstractions.js +1 -0
  251. package/features/contentEntry/RestoreEntryFromBin/abstractions.js.map +1 -1
  252. package/features/contentEntry/RestoreEntryFromBin/events.d.ts +4 -2
  253. package/features/contentEntry/RestoreEntryFromBin/events.js +5 -1
  254. package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
  255. package/features/contentEntry/RestoreEntryFromBin/feature.d.ts +4 -1
  256. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +2 -2
  257. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +2 -2
  258. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
  259. package/features/contentEntry/UnpublishEntry/abstractions.d.ts +1 -0
  260. package/features/contentEntry/UnpublishEntry/abstractions.js +1 -0
  261. package/features/contentEntry/UnpublishEntry/abstractions.js.map +1 -1
  262. package/features/contentEntry/UnpublishEntry/events.d.ts +4 -2
  263. package/features/contentEntry/UnpublishEntry/events.js +5 -1
  264. package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
  265. package/features/contentEntry/UnpublishEntry/feature.d.ts +4 -1
  266. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +3 -3
  267. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +3 -3
  268. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
  269. package/features/contentEntry/UpdateEntry/abstractions.d.ts +1 -0
  270. package/features/contentEntry/UpdateEntry/abstractions.js +1 -0
  271. package/features/contentEntry/UpdateEntry/abstractions.js.map +1 -1
  272. package/features/contentEntry/UpdateEntry/events.d.ts +4 -2
  273. package/features/contentEntry/UpdateEntry/events.js +5 -1
  274. package/features/contentEntry/UpdateEntry/events.js.map +1 -1
  275. package/features/contentEntry/UpdateEntry/feature.d.ts +4 -1
  276. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.d.ts +22 -0
  277. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js +90 -0
  278. package/features/contentEntry/UpdateRevisionDescription/UpdateRevisionDescriptionUseCase.js.map +1 -0
  279. package/features/contentEntry/UpdateRevisionDescription/abstractions.d.ts +25 -0
  280. package/features/contentEntry/UpdateRevisionDescription/abstractions.js +10 -0
  281. package/features/contentEntry/UpdateRevisionDescription/abstractions.js.map +1 -0
  282. package/features/contentEntry/UpdateRevisionDescription/events.d.ts +44 -0
  283. package/features/contentEntry/UpdateRevisionDescription/events.js +33 -0
  284. package/features/contentEntry/UpdateRevisionDescription/events.js.map +1 -0
  285. package/features/contentEntry/UpdateRevisionDescription/feature.d.ts +12 -0
  286. package/features/contentEntry/UpdateRevisionDescription/feature.js +20 -0
  287. package/features/contentEntry/UpdateRevisionDescription/feature.js.map +1 -0
  288. package/features/contentEntry/UpdateRevisionDescription/index.d.ts +2 -0
  289. package/features/contentEntry/UpdateRevisionDescription/index.js +4 -0
  290. package/features/contentEntry/UpdateRevisionDescription/index.js.map +1 -0
  291. package/features/contentEntry/UpdateSingletonEntry/abstractions.d.ts +1 -0
  292. package/features/contentEntry/UpdateSingletonEntry/abstractions.js +1 -0
  293. package/features/contentEntry/UpdateSingletonEntry/abstractions.js.map +1 -1
  294. package/features/contentEntry/UpdateSingletonEntry/feature.d.ts +4 -1
  295. package/features/contentEntry/ValidateEntry/abstractions.d.ts +1 -0
  296. package/features/contentEntry/ValidateEntry/abstractions.js +1 -0
  297. package/features/contentEntry/ValidateEntry/abstractions.js.map +1 -1
  298. package/features/contentEntry/ValidateEntry/feature.d.ts +4 -1
  299. package/features/contentModel/ContentModelFeature.d.ts +4 -1
  300. package/features/contentModel/ContentModelFeature.js +2 -0
  301. package/features/contentModel/ContentModelFeature.js.map +1 -1
  302. package/features/contentModel/CreateModel/CreateModelRepository.d.ts +12 -12
  303. package/features/contentModel/CreateModel/CreateModelRepository.js +17 -12
  304. package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
  305. package/features/contentModel/CreateModel/CreateModelUseCase.d.ts +3 -3
  306. package/features/contentModel/CreateModel/CreateModelUseCase.js +3 -3
  307. package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
  308. package/features/contentModel/CreateModel/abstractions.d.ts +1 -0
  309. package/features/contentModel/CreateModel/abstractions.js +1 -0
  310. package/features/contentModel/CreateModel/abstractions.js.map +1 -1
  311. package/features/contentModel/CreateModel/events.d.ts +4 -2
  312. package/features/contentModel/CreateModel/events.js +5 -1
  313. package/features/contentModel/CreateModel/events.js.map +1 -1
  314. package/features/contentModel/CreateModel/feature.d.ts +4 -1
  315. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.d.ts +12 -13
  316. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +25 -15
  317. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
  318. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.d.ts +3 -3
  319. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +4 -3
  320. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
  321. package/features/contentModel/CreateModelFrom/abstractions.d.ts +1 -0
  322. package/features/contentModel/CreateModelFrom/abstractions.js +1 -0
  323. package/features/contentModel/CreateModelFrom/abstractions.js.map +1 -1
  324. package/features/contentModel/CreateModelFrom/events.d.ts +4 -2
  325. package/features/contentModel/CreateModelFrom/events.js +5 -1
  326. package/features/contentModel/CreateModelFrom/events.js.map +1 -1
  327. package/features/contentModel/CreateModelFrom/feature.d.ts +4 -1
  328. package/features/contentModel/DeleteModel/DeleteModelUseCase.d.ts +1 -1
  329. package/features/contentModel/DeleteModel/DeleteModelUseCase.js +1 -1
  330. package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
  331. package/features/contentModel/DeleteModel/abstractions.d.ts +1 -0
  332. package/features/contentModel/DeleteModel/abstractions.js +1 -0
  333. package/features/contentModel/DeleteModel/abstractions.js.map +1 -1
  334. package/features/contentModel/DeleteModel/events.d.ts +4 -2
  335. package/features/contentModel/DeleteModel/events.js +5 -1
  336. package/features/contentModel/DeleteModel/events.js.map +1 -1
  337. package/features/contentModel/DeleteModel/feature.d.ts +4 -1
  338. package/features/contentModel/GetModel/abstractions.d.ts +1 -0
  339. package/features/contentModel/GetModel/abstractions.js +1 -0
  340. package/features/contentModel/GetModel/abstractions.js.map +1 -1
  341. package/features/contentModel/GetModel/feature.d.ts +4 -1
  342. package/features/contentModel/ListModels/abstractions.d.ts +1 -0
  343. package/features/contentModel/ListModels/abstractions.js +1 -0
  344. package/features/contentModel/ListModels/abstractions.js.map +1 -1
  345. package/features/contentModel/ListModels/feature.d.ts +4 -1
  346. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.d.ts +15 -0
  347. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js +27 -0
  348. package/features/contentModel/ModelFieldCompression/ModelFieldCompression.js.map +1 -0
  349. package/features/contentModel/ModelFieldCompression/abstractions.d.ts +17 -0
  350. package/features/contentModel/ModelFieldCompression/abstractions.js +4 -0
  351. package/features/contentModel/ModelFieldCompression/abstractions.js.map +1 -0
  352. package/features/contentModel/ModelFieldCompression/feature.d.ts +4 -0
  353. package/features/contentModel/ModelFieldCompression/feature.js +10 -0
  354. package/features/contentModel/ModelFieldCompression/feature.js.map +1 -0
  355. package/features/contentModel/ModelFieldCompression/index.d.ts +1 -0
  356. package/features/contentModel/ModelFieldCompression/index.js +3 -0
  357. package/features/contentModel/ModelFieldCompression/index.js.map +1 -0
  358. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.d.ts +3 -3
  359. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +6 -6
  360. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
  361. package/features/contentModel/ModelToAstConverter/feature.d.ts +4 -1
  362. package/features/contentModel/UpdateModel/UpdateModelRepository.d.ts +9 -9
  363. package/features/contentModel/UpdateModel/UpdateModelRepository.js +21 -12
  364. package/features/contentModel/UpdateModel/UpdateModelRepository.js.map +1 -1
  365. package/features/contentModel/UpdateModel/UpdateModelUseCase.d.ts +2 -2
  366. package/features/contentModel/UpdateModel/UpdateModelUseCase.js +6 -3
  367. package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
  368. package/features/contentModel/UpdateModel/abstractions.d.ts +1 -0
  369. package/features/contentModel/UpdateModel/abstractions.js +1 -0
  370. package/features/contentModel/UpdateModel/abstractions.js.map +1 -1
  371. package/features/contentModel/UpdateModel/events.d.ts +4 -2
  372. package/features/contentModel/UpdateModel/events.js +5 -1
  373. package/features/contentModel/UpdateModel/events.js.map +1 -1
  374. package/features/contentModel/UpdateModel/feature.d.ts +4 -1
  375. package/features/contentModel/shared/ModelsFetcher.d.ts +8 -6
  376. package/features/contentModel/shared/ModelsFetcher.js +14 -4
  377. package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
  378. package/features/contentModelGroup/ContentModelGroupFeature.d.ts +4 -1
  379. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.d.ts +1 -1
  380. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +1 -1
  381. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
  382. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.d.ts +3 -3
  383. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +3 -3
  384. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
  385. package/features/contentModelGroup/CreateGroup/abstractions.d.ts +1 -0
  386. package/features/contentModelGroup/CreateGroup/abstractions.js +1 -0
  387. package/features/contentModelGroup/CreateGroup/abstractions.js.map +1 -1
  388. package/features/contentModelGroup/CreateGroup/events.d.ts +4 -2
  389. package/features/contentModelGroup/CreateGroup/events.js +5 -1
  390. package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
  391. package/features/contentModelGroup/CreateGroup/feature.d.ts +4 -1
  392. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.d.ts +1 -1
  393. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +1 -1
  394. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
  395. package/features/contentModelGroup/DeleteGroup/abstractions.d.ts +1 -0
  396. package/features/contentModelGroup/DeleteGroup/abstractions.js +1 -0
  397. package/features/contentModelGroup/DeleteGroup/abstractions.js.map +1 -1
  398. package/features/contentModelGroup/DeleteGroup/events.d.ts +4 -2
  399. package/features/contentModelGroup/DeleteGroup/events.js +5 -1
  400. package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
  401. package/features/contentModelGroup/DeleteGroup/feature.d.ts +4 -1
  402. package/features/contentModelGroup/GetGroup/GetGroupRepository.d.ts +2 -2
  403. package/features/contentModelGroup/GetGroup/GetGroupRepository.js +2 -2
  404. package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
  405. package/features/contentModelGroup/GetGroup/abstractions.d.ts +1 -0
  406. package/features/contentModelGroup/GetGroup/abstractions.js +1 -0
  407. package/features/contentModelGroup/GetGroup/abstractions.js.map +1 -1
  408. package/features/contentModelGroup/GetGroup/feature.d.ts +4 -1
  409. package/features/contentModelGroup/ListGroups/ListGroupsRepository.d.ts +2 -2
  410. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +2 -2
  411. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
  412. package/features/contentModelGroup/ListGroups/abstractions.d.ts +1 -0
  413. package/features/contentModelGroup/ListGroups/abstractions.js +1 -0
  414. package/features/contentModelGroup/ListGroups/abstractions.js.map +1 -1
  415. package/features/contentModelGroup/ListGroups/feature.d.ts +4 -1
  416. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.d.ts +2 -2
  417. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +2 -2
  418. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
  419. package/features/contentModelGroup/UpdateGroup/abstractions.d.ts +1 -0
  420. package/features/contentModelGroup/UpdateGroup/abstractions.js +1 -0
  421. package/features/contentModelGroup/UpdateGroup/abstractions.js.map +1 -1
  422. package/features/contentModelGroup/UpdateGroup/events.d.ts +4 -2
  423. package/features/contentModelGroup/UpdateGroup/events.js +5 -1
  424. package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
  425. package/features/contentModelGroup/UpdateGroup/feature.d.ts +4 -1
  426. package/features/contentModelGroup/shared/PluginGroupsProvider.d.ts +2 -2
  427. package/features/contentModelGroup/shared/PluginGroupsProvider.js +2 -2
  428. package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
  429. package/features/contentModelGroup/shared/abstractions.d.ts +1 -0
  430. package/features/contentModelGroup/shared/abstractions.js +1 -0
  431. package/features/contentModelGroup/shared/abstractions.js.map +1 -1
  432. package/features/graphql/feature.d.ts +4 -0
  433. package/features/graphql/feature.js +34 -0
  434. package/features/graphql/feature.js.map +1 -0
  435. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.d.ts +13 -0
  436. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +27 -0
  437. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  438. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.d.ts +97 -0
  439. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +4 -0
  440. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -0
  441. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.d.ts +10 -0
  442. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +4 -0
  443. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  444. package/features/graphql/fields/base/BooleanToGraphQL.d.ts +26 -0
  445. package/features/graphql/fields/base/BooleanToGraphQL.js +68 -0
  446. package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -0
  447. package/features/graphql/fields/base/DateTimeToGraphQL.d.ts +26 -0
  448. package/features/graphql/fields/base/DateTimeToGraphQL.js +97 -0
  449. package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -0
  450. package/features/graphql/fields/base/DynamicZoneToGraphQL.d.ts +30 -0
  451. package/features/graphql/fields/base/DynamicZoneToGraphQL.js +280 -0
  452. package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -0
  453. package/features/graphql/fields/base/FileToGraphQL.d.ts +22 -0
  454. package/features/graphql/fields/base/FileToGraphQL.js +39 -0
  455. package/features/graphql/fields/base/FileToGraphQL.js.map +1 -0
  456. package/features/graphql/fields/base/JsonToGraphQL.d.ts +24 -0
  457. package/features/graphql/fields/base/JsonToGraphQL.js +52 -0
  458. package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -0
  459. package/features/graphql/fields/base/LongTextToGraphQL.d.ts +24 -0
  460. package/features/graphql/fields/base/LongTextToGraphQL.js +57 -0
  461. package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -0
  462. package/features/graphql/fields/base/NumberToGraphQL.d.ts +26 -0
  463. package/features/graphql/fields/base/NumberToGraphQL.js +78 -0
  464. package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -0
  465. package/features/graphql/fields/base/ObjectToGraphQL.d.ts +31 -0
  466. package/features/graphql/fields/base/ObjectToGraphQL.js +264 -0
  467. package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -0
  468. package/features/graphql/fields/base/RefToGraphQL.d.ts +29 -0
  469. package/features/graphql/fields/base/RefToGraphQL.js +261 -0
  470. package/features/graphql/fields/base/RefToGraphQL.js.map +1 -0
  471. package/features/graphql/fields/base/RichTextToGraphQL.d.ts +25 -0
  472. package/features/graphql/fields/base/RichTextToGraphQL.js +58 -0
  473. package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -0
  474. package/features/graphql/fields/base/SearchableJsonToGraphQL.d.ts +26 -0
  475. package/features/graphql/fields/base/SearchableJsonToGraphQL.js +62 -0
  476. package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -0
  477. package/features/graphql/fields/base/TextToGraphQL.d.ts +26 -0
  478. package/features/graphql/fields/base/TextToGraphQL.js +74 -0
  479. package/features/graphql/fields/base/TextToGraphQL.js.map +1 -0
  480. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.d.ts +16 -0
  481. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +37 -0
  482. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -0
  483. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.d.ts +3 -0
  484. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +14 -0
  485. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -0
  486. package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.d.ts +1 -1
  487. package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.js +4 -4
  488. package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -0
  489. package/{graphqlFields/helpers.d.ts → features/graphql/fields/base/utils/createGraphQLInputField.d.ts} +1 -1
  490. package/features/graphql/fields/base/utils/createGraphQLInputField.js +17 -0
  491. package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -0
  492. package/features/graphql/index.d.ts +4 -0
  493. package/features/graphql/index.js +6 -0
  494. package/features/graphql/index.js.map +1 -0
  495. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.d.ts +13 -0
  496. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +4 -0
  497. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -0
  498. package/features/installer/CmsInstaller.d.ts +1 -1
  499. package/features/installer/CmsInstaller.js +1 -1
  500. package/features/installer/CmsInstaller.js.map +1 -1
  501. package/features/installer/feature.d.ts +4 -1
  502. package/features/modelBuilder/abstractions.d.ts +8 -4
  503. package/features/modelBuilder/abstractions.js +5 -2
  504. package/features/modelBuilder/abstractions.js.map +1 -1
  505. package/features/modelBuilder/feature.d.ts +4 -1
  506. package/features/modelBuilder/feature.js +6 -0
  507. package/features/modelBuilder/feature.js.map +1 -1
  508. package/features/modelBuilder/fields/BaseFieldBuilder.d.ts +36 -0
  509. package/features/modelBuilder/fields/BaseFieldBuilder.js +41 -0
  510. package/features/modelBuilder/fields/BaseFieldBuilder.js.map +1 -0
  511. package/features/modelBuilder/fields/BooleanFieldType.d.ts +2 -2
  512. package/features/modelBuilder/fields/BooleanFieldType.js +2 -2
  513. package/features/modelBuilder/fields/BooleanFieldType.js.map +1 -1
  514. package/features/modelBuilder/fields/DataFieldBuilder.d.ts +220 -0
  515. package/features/modelBuilder/fields/DataFieldBuilder.js +211 -0
  516. package/features/modelBuilder/fields/DataFieldBuilder.js.map +1 -0
  517. package/features/modelBuilder/fields/DateTimeFieldType.d.ts +3 -3
  518. package/features/modelBuilder/fields/DateTimeFieldType.js +22 -2
  519. package/features/modelBuilder/fields/DateTimeFieldType.js.map +1 -1
  520. package/features/modelBuilder/fields/DynamicZoneFieldType.d.ts +3 -3
  521. package/features/modelBuilder/fields/DynamicZoneFieldType.js +12 -5
  522. package/features/modelBuilder/fields/DynamicZoneFieldType.js.map +1 -1
  523. package/features/modelBuilder/fields/FieldBuilder.d.ts +5 -46
  524. package/features/modelBuilder/fields/FieldBuilder.js +3 -152
  525. package/features/modelBuilder/fields/FieldBuilder.js.map +1 -1
  526. package/features/modelBuilder/fields/FieldBuilderRegistry.d.ts +3 -3
  527. package/features/modelBuilder/fields/FieldBuilderRegistry.js +11 -1
  528. package/features/modelBuilder/fields/FieldBuilderRegistry.js.map +1 -1
  529. package/features/modelBuilder/fields/FileFieldType.d.ts +3 -3
  530. package/features/modelBuilder/fields/FileFieldType.js +2 -2
  531. package/features/modelBuilder/fields/FileFieldType.js.map +1 -1
  532. package/features/modelBuilder/fields/JsonFieldType.d.ts +2 -2
  533. package/features/modelBuilder/fields/JsonFieldType.js +2 -2
  534. package/features/modelBuilder/fields/JsonFieldType.js.map +1 -1
  535. package/features/modelBuilder/fields/LayoutFieldBuilder.d.ts +7 -0
  536. package/features/modelBuilder/fields/LayoutFieldBuilder.js +9 -0
  537. package/features/modelBuilder/fields/LayoutFieldBuilder.js.map +1 -0
  538. package/features/modelBuilder/fields/LongTextFieldType.d.ts +3 -4
  539. package/features/modelBuilder/fields/LongTextFieldType.js +2 -2
  540. package/features/modelBuilder/fields/LongTextFieldType.js.map +1 -1
  541. package/features/modelBuilder/fields/NumberFieldType.d.ts +3 -3
  542. package/features/modelBuilder/fields/NumberFieldType.js +2 -2
  543. package/features/modelBuilder/fields/NumberFieldType.js.map +1 -1
  544. package/features/modelBuilder/fields/ObjectFieldType.d.ts +7 -6
  545. package/features/modelBuilder/fields/ObjectFieldType.js +21 -6
  546. package/features/modelBuilder/fields/ObjectFieldType.js.map +1 -1
  547. package/features/modelBuilder/fields/RefFieldType.d.ts +3 -3
  548. package/features/modelBuilder/fields/RefFieldType.js +2 -2
  549. package/features/modelBuilder/fields/RefFieldType.js.map +1 -1
  550. package/features/modelBuilder/fields/RichTextFieldType.d.ts +2 -2
  551. package/features/modelBuilder/fields/RichTextFieldType.js +2 -2
  552. package/features/modelBuilder/fields/RichTextFieldType.js.map +1 -1
  553. package/features/modelBuilder/fields/SearchableJsonFieldType.d.ts +2 -2
  554. package/features/modelBuilder/fields/SearchableJsonFieldType.js +2 -2
  555. package/features/modelBuilder/fields/SearchableJsonFieldType.js.map +1 -1
  556. package/features/modelBuilder/fields/TextFieldType.d.ts +3 -3
  557. package/features/modelBuilder/fields/TextFieldType.js +2 -2
  558. package/features/modelBuilder/fields/TextFieldType.js.map +1 -1
  559. package/features/modelBuilder/fields/UiAlertFieldType.d.ts +19 -0
  560. package/features/modelBuilder/fields/UiAlertFieldType.js +36 -0
  561. package/features/modelBuilder/fields/UiAlertFieldType.js.map +1 -0
  562. package/features/modelBuilder/fields/UiSeparatorFieldType.d.ts +17 -0
  563. package/features/modelBuilder/fields/UiSeparatorFieldType.js +31 -0
  564. package/features/modelBuilder/fields/UiSeparatorFieldType.js.map +1 -0
  565. package/features/modelBuilder/fields/UiTabsFieldType.d.ts +28 -0
  566. package/features/modelBuilder/fields/UiTabsFieldType.js +75 -0
  567. package/features/modelBuilder/fields/UiTabsFieldType.js.map +1 -0
  568. package/features/modelBuilder/fields/abstractions.d.ts +6 -3
  569. package/features/modelBuilder/fields/abstractions.js +1 -1
  570. package/features/modelBuilder/fields/abstractions.js.map +1 -1
  571. package/features/modelBuilder/fields/{validators.d.ts → fieldTypeValidator.d.ts} +23 -1
  572. package/features/modelBuilder/fields/fieldTypeValidator.js +31 -0
  573. package/features/modelBuilder/fields/fieldTypeValidator.js.map +1 -0
  574. package/features/modelBuilder/index.d.ts +3 -0
  575. package/features/modelBuilder/index.js +3 -0
  576. package/features/modelBuilder/index.js.map +1 -1
  577. package/features/modelBuilder/models/BaseModelBuilder.d.ts +9 -4
  578. package/features/modelBuilder/models/BaseModelBuilder.js +19 -0
  579. package/features/modelBuilder/models/BaseModelBuilder.js.map +1 -1
  580. package/features/modelBuilder/models/PrivateModelBuilder.js +4 -2
  581. package/features/modelBuilder/models/PrivateModelBuilder.js.map +1 -1
  582. package/features/modelBuilder/models/PublicModelBuilder.js +16 -4
  583. package/features/modelBuilder/models/PublicModelBuilder.js.map +1 -1
  584. package/features/shared/abstractions.d.ts +9 -2
  585. package/features/shared/abstractions.js +1 -0
  586. package/features/shared/abstractions.js.map +1 -1
  587. package/features/sortMapper/abstractions.d.ts +1 -0
  588. package/features/sortMapper/abstractions.js +1 -0
  589. package/features/sortMapper/abstractions.js.map +1 -1
  590. package/features/sortMapper/feature.d.ts +4 -1
  591. package/features/storage/StorageTransformRegistry.d.ts +13 -0
  592. package/features/storage/StorageTransformRegistry.js +27 -0
  593. package/features/storage/StorageTransformRegistry.js.map +1 -0
  594. package/features/storage/abstractions/StorageTransform.d.ts +26 -0
  595. package/features/storage/abstractions/StorageTransform.js +4 -0
  596. package/features/storage/abstractions/StorageTransform.js.map +1 -0
  597. package/features/storage/abstractions/StorageTransformRegistry.d.ts +10 -0
  598. package/features/storage/abstractions/StorageTransformRegistry.js +4 -0
  599. package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -0
  600. package/features/storage/feature.d.ts +4 -0
  601. package/features/storage/feature.js +24 -0
  602. package/features/storage/feature.js.map +1 -0
  603. package/features/storage/fields/DateStorageTransform.d.ts +10 -0
  604. package/features/storage/fields/DateStorageTransform.js +110 -0
  605. package/features/storage/fields/DateStorageTransform.js.map +1 -0
  606. package/features/storage/fields/DefaultStorageTransform.d.ts +10 -0
  607. package/features/storage/fields/DefaultStorageTransform.js +20 -0
  608. package/features/storage/fields/DefaultStorageTransform.js.map +1 -0
  609. package/features/storage/fields/DynamicZoneStorageTransform.d.ts +10 -0
  610. package/features/storage/fields/DynamicZoneStorageTransform.js +142 -0
  611. package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -0
  612. package/features/storage/fields/JsonStorageTransform.d.ts +13 -0
  613. package/features/storage/fields/JsonStorageTransform.js +31 -0
  614. package/features/storage/fields/JsonStorageTransform.js.map +1 -0
  615. package/features/storage/fields/LongTextStorageTransform.d.ts +18 -0
  616. package/features/storage/fields/LongTextStorageTransform.js +55 -0
  617. package/features/storage/fields/LongTextStorageTransform.js.map +1 -0
  618. package/features/storage/fields/ObjectStorageTransform.d.ts +10 -0
  619. package/features/storage/fields/ObjectStorageTransform.js +99 -0
  620. package/features/storage/fields/ObjectStorageTransform.js.map +1 -0
  621. package/features/storage/fields/RichTextStorageTransform.d.ts +13 -0
  622. package/features/storage/fields/RichTextStorageTransform.js +39 -0
  623. package/features/storage/fields/RichTextStorageTransform.js.map +1 -0
  624. package/features/storage/index.d.ts +3 -0
  625. package/features/storage/index.js +5 -0
  626. package/features/storage/index.js.map +1 -0
  627. package/features/validation/CmsModelFieldPatternValidatorRegistry.d.ts +12 -0
  628. package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -0
  629. package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  630. package/features/validation/CmsModelFieldValidatorRegistry.d.ts +12 -0
  631. package/features/validation/CmsModelFieldValidatorRegistry.js +23 -0
  632. package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -0
  633. package/features/validation/abstractions/CmsModelFieldPatternValidator.d.ts +13 -0
  634. package/features/validation/abstractions/CmsModelFieldPatternValidator.js +4 -0
  635. package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -0
  636. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.d.ts +9 -0
  637. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +4 -0
  638. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  639. package/features/validation/abstractions/CmsModelFieldValidator.d.ts +11 -0
  640. package/features/validation/abstractions/CmsModelFieldValidator.js +4 -0
  641. package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -0
  642. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.d.ts +9 -0
  643. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +4 -0
  644. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -0
  645. package/features/validation/feature.d.ts +4 -0
  646. package/features/validation/feature.js +48 -0
  647. package/features/validation/feature.js.map +1 -0
  648. package/features/validation/index.d.ts +5 -0
  649. package/features/validation/index.js +7 -0
  650. package/features/validation/index.js.map +1 -0
  651. package/features/validation/validators/DateGteValidator.d.ts +10 -0
  652. package/features/validation/validators/DateGteValidator.js +26 -0
  653. package/features/validation/validators/DateGteValidator.js.map +1 -0
  654. package/features/validation/validators/DateLteValidator.d.ts +10 -0
  655. package/features/validation/validators/DateLteValidator.js +26 -0
  656. package/features/validation/validators/DateLteValidator.js.map +1 -0
  657. package/features/validation/validators/GteValidator.d.ts +10 -0
  658. package/features/validation/validators/GteValidator.js +21 -0
  659. package/features/validation/validators/GteValidator.js.map +1 -0
  660. package/features/validation/validators/InValidator.d.ts +10 -0
  661. package/features/validation/validators/InValidator.js +21 -0
  662. package/features/validation/validators/InValidator.js.map +1 -0
  663. package/features/validation/validators/LteValidator.d.ts +10 -0
  664. package/features/validation/validators/LteValidator.js +21 -0
  665. package/features/validation/validators/LteValidator.js.map +1 -0
  666. package/features/validation/validators/MaxLengthValidator.d.ts +10 -0
  667. package/features/validation/validators/MaxLengthValidator.js +21 -0
  668. package/features/validation/validators/MaxLengthValidator.js.map +1 -0
  669. package/features/validation/validators/MinLengthValidator.d.ts +10 -0
  670. package/features/validation/validators/MinLengthValidator.js +21 -0
  671. package/features/validation/validators/MinLengthValidator.js.map +1 -0
  672. package/features/validation/validators/PatternValidator.d.ts +13 -0
  673. package/features/validation/validators/PatternValidator.js +38 -0
  674. package/features/validation/validators/PatternValidator.js.map +1 -0
  675. package/features/validation/validators/RequiredValidator.d.ts +10 -0
  676. package/features/validation/validators/RequiredValidator.js +16 -0
  677. package/features/validation/validators/RequiredValidator.js.map +1 -0
  678. package/features/validation/validators/TimeGteValidator.d.ts +10 -0
  679. package/features/validation/validators/TimeGteValidator.js +21 -0
  680. package/features/validation/validators/TimeGteValidator.js.map +1 -0
  681. package/features/validation/validators/TimeLteValidator.d.ts +10 -0
  682. package/features/validation/validators/TimeLteValidator.js +21 -0
  683. package/features/validation/validators/TimeLteValidator.js.map +1 -0
  684. package/features/validation/validators/UniqueValidator.d.ts +10 -0
  685. package/features/validation/validators/UniqueValidator.js +47 -0
  686. package/features/validation/validators/UniqueValidator.js.map +1 -0
  687. package/features/validation/validators/patterns/EmailPattern.d.ts +12 -0
  688. package/features/validation/validators/patterns/EmailPattern.js +14 -0
  689. package/features/validation/validators/patterns/EmailPattern.js.map +1 -0
  690. package/features/validation/validators/patterns/LowerCasePattern.d.ts +12 -0
  691. package/features/validation/validators/patterns/LowerCasePattern.js +14 -0
  692. package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -0
  693. package/features/validation/validators/patterns/LowerCaseSpacePattern.d.ts +12 -0
  694. package/features/validation/validators/patterns/LowerCaseSpacePattern.js +14 -0
  695. package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -0
  696. package/features/validation/validators/patterns/UpperCasePattern.d.ts +12 -0
  697. package/features/validation/validators/patterns/UpperCasePattern.js +14 -0
  698. package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -0
  699. package/features/validation/validators/patterns/UpperCaseSpacePattern.d.ts +12 -0
  700. package/features/validation/validators/patterns/UpperCaseSpacePattern.js +14 -0
  701. package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -0
  702. package/features/validation/validators/patterns/UrlPattern.d.ts +12 -0
  703. package/features/validation/validators/patterns/UrlPattern.js +14 -0
  704. package/features/validation/validators/patterns/UrlPattern.js.map +1 -0
  705. package/features/whereMapper/abstractions.d.ts +1 -0
  706. package/features/whereMapper/abstractions.js +1 -0
  707. package/features/whereMapper/abstractions.js.map +1 -1
  708. package/features/whereMapper/feature.d.ts +4 -1
  709. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +2 -2
  710. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -1
  711. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +2 -2
  712. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  713. package/graphql/getSchema/generateCacheKey.js +15 -7
  714. package/graphql/getSchema/generateCacheKey.js.map +1 -1
  715. package/graphql/index.js +2 -1
  716. package/graphql/index.js.map +1 -1
  717. package/graphql/schema/baseSchema.d.ts +2 -1
  718. package/graphql/schema/baseSchema.js +28 -24
  719. package/graphql/schema/baseSchema.js.map +1 -1
  720. package/graphql/schema/cms/createEntryResolver.d.ts +10 -0
  721. package/graphql/schema/cms/createEntryResolver.js +65 -0
  722. package/graphql/schema/cms/createEntryResolver.js.map +1 -0
  723. package/graphql/schema/cms/deleteEntryResolver.d.ts +10 -0
  724. package/graphql/schema/cms/deleteEntryResolver.js +65 -0
  725. package/graphql/schema/cms/deleteEntryResolver.js.map +1 -0
  726. package/graphql/schema/cms/getEntryResolver.d.ts +11 -0
  727. package/graphql/schema/cms/getEntryResolver.js +67 -0
  728. package/graphql/schema/cms/getEntryResolver.js.map +1 -0
  729. package/graphql/schema/cms/helpers/buildFieldsSelection.d.ts +23 -0
  730. package/graphql/schema/cms/helpers/buildFieldsSelection.js +79 -0
  731. package/graphql/schema/cms/helpers/buildFieldsSelection.js.map +1 -0
  732. package/graphql/schema/cms/helpers/getErrorMessage.d.ts +4 -0
  733. package/graphql/schema/cms/helpers/getErrorMessage.js +14 -0
  734. package/graphql/schema/cms/helpers/getErrorMessage.js.map +1 -0
  735. package/graphql/schema/cms/helpers/getModel.d.ts +6 -0
  736. package/graphql/schema/cms/helpers/getModel.js +12 -0
  737. package/graphql/schema/cms/helpers/getModel.js.map +1 -0
  738. package/graphql/schema/cms/helpers/index.d.ts +5 -0
  739. package/graphql/schema/cms/helpers/index.js +7 -0
  740. package/graphql/schema/cms/helpers/index.js.map +1 -0
  741. package/graphql/schema/cms/helpers/transformSortToArray.d.ts +18 -0
  742. package/graphql/schema/cms/helpers/transformSortToArray.js +38 -0
  743. package/graphql/schema/cms/helpers/transformSortToArray.js.map +1 -0
  744. package/graphql/schema/cms/helpers/transformWhereToNested.d.ts +17 -0
  745. package/graphql/schema/cms/helpers/transformWhereToNested.js +54 -0
  746. package/graphql/schema/cms/helpers/transformWhereToNested.js.map +1 -0
  747. package/graphql/schema/cms/helpers.d.ts +5 -0
  748. package/graphql/schema/cms/helpers.js +7 -0
  749. package/graphql/schema/cms/helpers.js.map +1 -0
  750. package/graphql/schema/cms/index.d.ts +2 -0
  751. package/graphql/schema/cms/index.js +26 -0
  752. package/graphql/schema/cms/index.js.map +1 -0
  753. package/graphql/schema/cms/listEntriesResolver.d.ts +15 -0
  754. package/graphql/schema/cms/listEntriesResolver.js +115 -0
  755. package/graphql/schema/cms/listEntriesResolver.js.map +1 -0
  756. package/graphql/schema/cms/publishEntryResolver.d.ts +10 -0
  757. package/graphql/schema/cms/publishEntryResolver.js +65 -0
  758. package/graphql/schema/cms/publishEntryResolver.js.map +1 -0
  759. package/graphql/schema/cms/resolvers/createEntry.d.ts +8 -0
  760. package/graphql/schema/cms/resolvers/createEntry.js +17 -0
  761. package/graphql/schema/cms/resolvers/createEntry.js.map +1 -0
  762. package/graphql/schema/cms/resolvers/deleteEntryRevision.d.ts +8 -0
  763. package/graphql/schema/cms/resolvers/deleteEntryRevision.js +17 -0
  764. package/graphql/schema/cms/resolvers/deleteEntryRevision.js.map +1 -0
  765. package/graphql/schema/cms/resolvers/getEntry.d.ts +8 -0
  766. package/graphql/schema/cms/resolvers/getEntry.js +17 -0
  767. package/graphql/schema/cms/resolvers/getEntry.js.map +1 -0
  768. package/graphql/schema/cms/resolvers/index.d.ts +9 -0
  769. package/graphql/schema/cms/resolvers/index.js +11 -0
  770. package/graphql/schema/cms/resolvers/index.js.map +1 -0
  771. package/graphql/schema/cms/resolvers/listEntries.d.ts +8 -0
  772. package/graphql/schema/cms/resolvers/listEntries.js +17 -0
  773. package/graphql/schema/cms/resolvers/listEntries.js.map +1 -0
  774. package/graphql/schema/cms/resolvers/mutationCms.d.ts +8 -0
  775. package/graphql/schema/cms/resolvers/mutationCms.js +24 -0
  776. package/graphql/schema/cms/resolvers/mutationCms.js.map +1 -0
  777. package/graphql/schema/cms/resolvers/publishEntryRevision.d.ts +8 -0
  778. package/graphql/schema/cms/resolvers/publishEntryRevision.js +17 -0
  779. package/graphql/schema/cms/resolvers/publishEntryRevision.js.map +1 -0
  780. package/graphql/schema/cms/resolvers/queryCms.d.ts +8 -0
  781. package/graphql/schema/cms/resolvers/queryCms.js +23 -0
  782. package/graphql/schema/cms/resolvers/queryCms.js.map +1 -0
  783. package/graphql/schema/cms/resolvers/unpublishEntryRevision.d.ts +8 -0
  784. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js +17 -0
  785. package/graphql/schema/cms/resolvers/unpublishEntryRevision.js.map +1 -0
  786. package/graphql/schema/cms/resolvers/updateEntryRevision.d.ts +8 -0
  787. package/graphql/schema/cms/resolvers/updateEntryRevision.js +17 -0
  788. package/graphql/schema/cms/resolvers/updateEntryRevision.js.map +1 -0
  789. package/graphql/schema/cms/typeDefs/index.d.ts +3 -0
  790. package/graphql/schema/cms/typeDefs/index.js +5 -0
  791. package/graphql/schema/cms/typeDefs/index.js.map +1 -0
  792. package/graphql/schema/cms/typeDefs/mutation.d.ts +8 -0
  793. package/graphql/schema/cms/typeDefs/mutation.js +42 -0
  794. package/graphql/schema/cms/typeDefs/mutation.js.map +1 -0
  795. package/graphql/schema/cms/typeDefs/query.d.ts +8 -0
  796. package/graphql/schema/cms/typeDefs/query.js +36 -0
  797. package/graphql/schema/cms/typeDefs/query.js.map +1 -0
  798. package/graphql/schema/cms/typeDefs/responses.d.ts +8 -0
  799. package/graphql/schema/cms/typeDefs/responses.js +35 -0
  800. package/graphql/schema/cms/typeDefs/responses.js.map +1 -0
  801. package/graphql/schema/cms/unpublishEntryResolver.d.ts +10 -0
  802. package/graphql/schema/cms/unpublishEntryResolver.js +65 -0
  803. package/graphql/schema/cms/unpublishEntryResolver.js.map +1 -0
  804. package/graphql/schema/cms/updateEntryResolver.d.ts +11 -0
  805. package/graphql/schema/cms/updateEntryResolver.js +67 -0
  806. package/graphql/schema/cms/updateEntryResolver.js.map +1 -0
  807. package/graphql/schema/contentEntries.js +1 -1
  808. package/graphql/schema/contentEntries.js.map +1 -1
  809. package/graphql/schema/contentModels.js +31 -9
  810. package/graphql/schema/contentModels.js.map +1 -1
  811. package/graphql/schema/createFieldResolvers.d.ts +3 -2
  812. package/graphql/schema/createFieldResolvers.js +5 -4
  813. package/graphql/schema/createFieldResolvers.js.map +1 -1
  814. package/graphql/schema/createManageResolvers.d.ts +3 -2
  815. package/graphql/schema/createManageResolvers.js +5 -3
  816. package/graphql/schema/createManageResolvers.js.map +1 -1
  817. package/graphql/schema/createManageSDL.d.ts +4 -4
  818. package/graphql/schema/createManageSDL.js +16 -11
  819. package/graphql/schema/createManageSDL.js.map +1 -1
  820. package/graphql/schema/createPreviewResolvers.d.ts +3 -2
  821. package/graphql/schema/createPreviewResolvers.js +4 -4
  822. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  823. package/graphql/schema/createReadResolvers.d.ts +3 -2
  824. package/graphql/schema/createReadResolvers.js +4 -4
  825. package/graphql/schema/createReadResolvers.js.map +1 -1
  826. package/graphql/schema/createReadSDL.d.ts +4 -4
  827. package/graphql/schema/createReadSDL.js +7 -7
  828. package/graphql/schema/createReadSDL.js.map +1 -1
  829. package/graphql/schema/createSingularResolvers.d.ts +3 -2
  830. package/graphql/schema/createSingularResolvers.js +3 -3
  831. package/graphql/schema/createSingularResolvers.js.map +1 -1
  832. package/graphql/schema/createSingularSDL.d.ts +3 -2
  833. package/graphql/schema/createSingularSDL.js +5 -4
  834. package/graphql/schema/createSingularSDL.js.map +1 -1
  835. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +9 -7
  836. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
  837. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.d.ts +8 -0
  838. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js +13 -0
  839. package/graphql/schema/resolvers/manage/resolveUpdateRevisionDescription.js.map +1 -0
  840. package/graphql/schema/schemaPlugins.js +14 -17
  841. package/graphql/schema/schemaPlugins.js.map +1 -1
  842. package/index.d.ts +3 -5
  843. package/index.js +4 -7
  844. package/index.js.map +1 -1
  845. package/package.json +36 -32
  846. package/plugins/CmsModelPlugin.js +19 -4
  847. package/plugins/CmsModelPlugin.js.map +1 -1
  848. package/plugins/index.d.ts +0 -2
  849. package/plugins/index.js +0 -2
  850. package/plugins/index.js.map +1 -1
  851. package/types/context.d.ts +5 -5
  852. package/types/context.js.map +1 -1
  853. package/types/fields/objectField.d.ts +2 -0
  854. package/types/fields/objectField.js.map +1 -1
  855. package/types/model.d.ts +39 -3
  856. package/types/model.js.map +1 -1
  857. package/types/modelField.d.ts +47 -15
  858. package/types/modelField.js.map +1 -1
  859. package/types/plugins.d.ts +1 -305
  860. package/types/plugins.js.map +1 -1
  861. package/types/types.d.ts +28 -61
  862. package/types/types.js +0 -4
  863. package/types/types.js.map +1 -1
  864. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +3 -2
  865. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +3 -3
  866. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
  867. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +4 -3
  868. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +3 -3
  869. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
  870. package/utils/converters/ConverterCollection.d.ts +2 -0
  871. package/utils/converters/ConverterCollection.js +3 -2
  872. package/utils/converters/ConverterCollection.js.map +1 -1
  873. package/utils/converters/types.js.map +1 -1
  874. package/utils/converters/valueKeyFromStorageConverter.d.ts +2 -0
  875. package/utils/converters/valueKeyFromStorageConverter.js +4 -2
  876. package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
  877. package/utils/converters/valueKeyStorageConverter.d.ts +2 -3
  878. package/utils/converters/valueKeyStorageConverter.js +7 -3
  879. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  880. package/utils/converters/valueKeyToStorageConverter.d.ts +2 -0
  881. package/utils/converters/valueKeyToStorageConverter.js +4 -2
  882. package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
  883. package/utils/createModelField.js +10 -8
  884. package/utils/createModelField.js.map +1 -1
  885. package/utils/createTypeFromFields.d.ts +3 -2
  886. package/utils/createTypeFromFields.js +3 -3
  887. package/utils/createTypeFromFields.js.map +1 -1
  888. package/utils/entryStorage.d.ts +8 -15
  889. package/utils/entryStorage.js +31 -59
  890. package/utils/entryStorage.js.map +1 -1
  891. package/utils/getBaseFieldType.js +3 -0
  892. package/utils/getBaseFieldType.js.map +1 -1
  893. package/utils/getSchemaFromFieldPlugins.d.ts +3 -2
  894. package/utils/getSchemaFromFieldPlugins.js +5 -9
  895. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  896. package/utils/renderFields.d.ts +4 -3
  897. package/utils/renderFields.js +14 -9
  898. package/utils/renderFields.js.map +1 -1
  899. package/utils/renderGetFilterFields.d.ts +3 -2
  900. package/utils/renderGetFilterFields.js +2 -2
  901. package/utils/renderGetFilterFields.js.map +1 -1
  902. package/utils/renderInputFields.d.ts +4 -3
  903. package/utils/renderInputFields.js +5 -11
  904. package/utils/renderInputFields.js.map +1 -1
  905. package/utils/renderListFilterFields.d.ts +3 -2
  906. package/utils/renderListFilterFields.js +5 -3
  907. package/utils/renderListFilterFields.js.map +1 -1
  908. package/utils/renderSortEnum.d.ts +4 -4
  909. package/utils/renderSortEnum.js +11 -11
  910. package/utils/renderSortEnum.js.map +1 -1
  911. package/utils/toSlug.js +1 -1
  912. package/utils/toSlug.js.map +1 -1
  913. package/crud/contentEntry/entryDataFactories/state.d.ts +0 -10
  914. package/crud/contentEntry/entryDataFactories/state.js +0 -16
  915. package/crud/contentEntry/entryDataFactories/state.js.map +0 -1
  916. package/crud/contentModel/validateModel.d.ts +0 -9
  917. package/crud/contentModel/validateModel.js +0 -21
  918. package/crud/contentModel/validateModel.js.map +0 -1
  919. package/crud/contentModel/validateModelFields.d.ts +0 -9
  920. package/crud/contentModel/validateModelFields.js +0 -267
  921. package/crud/contentModel/validateModelFields.js.map +0 -1
  922. package/features/modelBuilder/fields/validators.js +0 -3
  923. package/features/modelBuilder/fields/validators.js.map +0 -1
  924. package/graphql/schema/createFieldTypePluginRecords.d.ts +0 -3
  925. package/graphql/schema/createFieldTypePluginRecords.js +0 -8
  926. package/graphql/schema/createFieldTypePluginRecords.js.map +0 -1
  927. package/graphqlFields/boolean.d.ts +0 -2
  928. package/graphqlFields/boolean.js +0 -52
  929. package/graphqlFields/boolean.js.map +0 -1
  930. package/graphqlFields/datetime.d.ts +0 -2
  931. package/graphqlFields/datetime.js +0 -71
  932. package/graphqlFields/datetime.js.map +0 -1
  933. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +0 -2
  934. package/graphqlFields/dynamicZone/dynamicZoneField.js +0 -313
  935. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +0 -1
  936. package/graphqlFields/dynamicZone/index.d.ts +0 -1
  937. package/graphqlFields/dynamicZone/index.js +0 -3
  938. package/graphqlFields/dynamicZone/index.js.map +0 -1
  939. package/graphqlFields/file.d.ts +0 -2
  940. package/graphqlFields/file.js +0 -37
  941. package/graphqlFields/file.js.map +0 -1
  942. package/graphqlFields/helpers.js +0 -20
  943. package/graphqlFields/helpers.js.map +0 -1
  944. package/graphqlFields/index.d.ts +0 -2
  945. package/graphqlFields/index.js +0 -15
  946. package/graphqlFields/index.js.map +0 -1
  947. package/graphqlFields/json.d.ts +0 -2
  948. package/graphqlFields/json.js +0 -42
  949. package/graphqlFields/json.js.map +0 -1
  950. package/graphqlFields/longText.d.ts +0 -2
  951. package/graphqlFields/longText.js +0 -57
  952. package/graphqlFields/longText.js.map +0 -1
  953. package/graphqlFields/number.d.ts +0 -2
  954. package/graphqlFields/number.js +0 -63
  955. package/graphqlFields/number.js.map +0 -1
  956. package/graphqlFields/object.d.ts +0 -2
  957. package/graphqlFields/object.js +0 -245
  958. package/graphqlFields/object.js.map +0 -1
  959. package/graphqlFields/ref.d.ts +0 -2
  960. package/graphqlFields/ref.js +0 -286
  961. package/graphqlFields/ref.js.map +0 -1
  962. package/graphqlFields/richText/richTextResolver.js.map +0 -1
  963. package/graphqlFields/richText.d.ts +0 -2
  964. package/graphqlFields/richText.js +0 -48
  965. package/graphqlFields/richText.js.map +0 -1
  966. package/graphqlFields/searchableJson.d.ts +0 -2
  967. package/graphqlFields/searchableJson.js +0 -53
  968. package/graphqlFields/searchableJson.js.map +0 -1
  969. package/graphqlFields/text.d.ts +0 -2
  970. package/graphqlFields/text.js +0 -59
  971. package/graphqlFields/text.js.map +0 -1
  972. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +0 -20
  973. package/plugins/CmsGraphQLSchemaSorterPlugin.js +0 -19
  974. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +0 -1
  975. package/plugins/StorageTransformPlugin.d.ts +0 -35
  976. package/plugins/StorageTransformPlugin.js +0 -26
  977. package/plugins/StorageTransformPlugin.js.map +0 -1
  978. package/storage/date.d.ts +0 -3
  979. package/storage/date.js +0 -110
  980. package/storage/date.js.map +0 -1
  981. package/storage/default.d.ts +0 -2
  982. package/storage/default.js +0 -19
  983. package/storage/default.js.map +0 -1
  984. package/storage/dynamicZone.d.ts +0 -2
  985. package/storage/dynamicZone.js +0 -149
  986. package/storage/dynamicZone.js.map +0 -1
  987. package/storage/index.d.ts +0 -1
  988. package/storage/index.js +0 -13
  989. package/storage/index.js.map +0 -1
  990. package/storage/json.d.ts +0 -2
  991. package/storage/json.js +0 -49
  992. package/storage/json.js.map +0 -1
  993. package/storage/object.d.ts +0 -2
  994. package/storage/object.js +0 -104
  995. package/storage/object.js.map +0 -1
  996. package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +0 -1
  997. package/validators/dateGte.d.ts +0 -2
  998. package/validators/dateGte.js +0 -25
  999. package/validators/dateGte.js.map +0 -1
  1000. package/validators/dateLte.d.ts +0 -2
  1001. package/validators/dateLte.js +0 -25
  1002. package/validators/dateLte.js.map +0 -1
  1003. package/validators/gte.d.ts +0 -2
  1004. package/validators/gte.js +0 -22
  1005. package/validators/gte.js.map +0 -1
  1006. package/validators/in.d.ts +0 -2
  1007. package/validators/in.js +0 -22
  1008. package/validators/in.js.map +0 -1
  1009. package/validators/index.d.ts +0 -1
  1010. package/validators/index.js +0 -16
  1011. package/validators/index.js.map +0 -1
  1012. package/validators/lte.d.ts +0 -2
  1013. package/validators/lte.js +0 -22
  1014. package/validators/lte.js.map +0 -1
  1015. package/validators/maxLength.d.ts +0 -2
  1016. package/validators/maxLength.js +0 -22
  1017. package/validators/maxLength.js.map +0 -1
  1018. package/validators/minLength.d.ts +0 -2
  1019. package/validators/minLength.js +0 -22
  1020. package/validators/minLength.js.map +0 -1
  1021. package/validators/pattern.d.ts +0 -2
  1022. package/validators/pattern.js +0 -36
  1023. package/validators/pattern.js.map +0 -1
  1024. package/validators/patternPlugins/email.d.ts +0 -2
  1025. package/validators/patternPlugins/email.js +0 -13
  1026. package/validators/patternPlugins/email.js.map +0 -1
  1027. package/validators/patternPlugins/index.d.ts +0 -2
  1028. package/validators/patternPlugins/index.js +0 -11
  1029. package/validators/patternPlugins/index.js.map +0 -1
  1030. package/validators/patternPlugins/lowerCase.d.ts +0 -2
  1031. package/validators/patternPlugins/lowerCase.js +0 -13
  1032. package/validators/patternPlugins/lowerCase.js.map +0 -1
  1033. package/validators/patternPlugins/lowerCaseSpace.d.ts +0 -2
  1034. package/validators/patternPlugins/lowerCaseSpace.js +0 -13
  1035. package/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  1036. package/validators/patternPlugins/upperCase.d.ts +0 -2
  1037. package/validators/patternPlugins/upperCase.js +0 -13
  1038. package/validators/patternPlugins/upperCase.js.map +0 -1
  1039. package/validators/patternPlugins/upperCaseSpace.d.ts +0 -2
  1040. package/validators/patternPlugins/upperCaseSpace.js +0 -13
  1041. package/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  1042. package/validators/patternPlugins/url.d.ts +0 -2
  1043. package/validators/patternPlugins/url.js +0 -13
  1044. package/validators/patternPlugins/url.js.map +0 -1
  1045. package/validators/required.d.ts +0 -2
  1046. package/validators/required.js +0 -17
  1047. package/validators/required.js.map +0 -1
  1048. package/validators/timeGte.d.ts +0 -2
  1049. package/validators/timeGte.js +0 -20
  1050. package/validators/timeGte.js.map +0 -1
  1051. package/validators/timeLte.d.ts +0 -2
  1052. package/validators/timeLte.js +0 -20
  1053. package/validators/timeLte.js.map +0 -1
  1054. package/validators/unique.d.ts +0 -6
  1055. package/validators/unique.js +0 -57
  1056. package/validators/unique.js.map +0 -1
@@ -4,18 +4,17 @@ import { createManageResolvers } from "./createManageResolvers.js";
4
4
  import { createReadResolvers } from "./createReadResolvers.js";
5
5
  import { createPreviewResolvers } from "./createPreviewResolvers.js";
6
6
  import { createGraphQLSchemaPluginFromFieldPlugins } from "../../utils/getSchemaFromFieldPlugins.js";
7
- import { CmsGraphQLSchemaSorterPlugin, createCmsGraphQLSchemaPlugin } from "../../plugins/index.js";
8
- import { createFieldTypePluginRecords } from "./createFieldTypePluginRecords.js";
7
+ import { createCmsGraphQLSchemaPlugin } from "../../plugins/index.js";
9
8
  import { CMS_MODEL_SINGLETON_TAG } from "../../constants.js";
10
9
  import { createSingularSDL } from "./createSingularSDL.js";
11
10
  import { createSingularResolvers } from "./createSingularResolvers.js";
11
+ import { CmsGraphQLSchemaSorter, CmsModelFieldToGraphQLRegistry } from "../../features/graphql/index.js";
12
12
  export const generateSchemaPlugins = async params => {
13
13
  const {
14
14
  context,
15
15
  models
16
16
  } = params;
17
17
  const {
18
- plugins,
19
18
  cms
20
19
  } = context;
21
20
 
@@ -29,13 +28,11 @@ export const generateSchemaPlugins = async params => {
29
28
  if (!type) {
30
29
  return [];
31
30
  }
32
-
33
- // Structure plugins for faster access
34
- const fieldTypePlugins = createFieldTypePluginRecords(plugins);
35
- const sorterPlugins = plugins.byType(CmsGraphQLSchemaSorterPlugin.type);
31
+ const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);
32
+ const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);
36
33
  const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({
37
34
  models,
38
- fieldTypePlugins,
35
+ fieldRegistry,
39
36
  type
40
37
  });
41
38
  models.forEach(model => {
@@ -48,13 +45,13 @@ export const generateSchemaPlugins = async params => {
48
45
  typeDefs: createSingularSDL({
49
46
  models,
50
47
  model,
51
- fieldTypePlugins,
48
+ fieldRegistry,
52
49
  type: singularType
53
50
  }),
54
51
  resolvers: createSingularResolvers({
55
52
  models,
56
53
  model,
57
- fieldTypePlugins,
54
+ fieldRegistry,
58
55
  type: singularType
59
56
  })
60
57
  });
@@ -69,13 +66,13 @@ export const generateSchemaPlugins = async params => {
69
66
  typeDefs: createManageSDL({
70
67
  models,
71
68
  model,
72
- fieldTypePlugins,
73
- sorterPlugins
69
+ fieldRegistry,
70
+ sorters
74
71
  }),
75
72
  resolvers: createManageResolvers({
76
73
  models,
77
74
  model,
78
- fieldTypePlugins
75
+ fieldRegistry
79
76
  })
80
77
  });
81
78
  plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;
@@ -89,17 +86,17 @@ export const generateSchemaPlugins = async params => {
89
86
  typeDefs: createReadSDL({
90
87
  models,
91
88
  model,
92
- fieldTypePlugins,
93
- sorterPlugins
89
+ fieldRegistry,
90
+ sorters
94
91
  }),
95
92
  resolvers: cms.READ ? createReadResolvers({
96
93
  models,
97
94
  model,
98
- fieldTypePlugins
95
+ fieldRegistry
99
96
  }) : createPreviewResolvers({
100
97
  models,
101
98
  model,
102
- fieldTypePlugins
99
+ fieldRegistry
103
100
  })
104
101
  });
105
102
  plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;
@@ -1 +1 @@
1
- {"version":3,"names":["createManageSDL","createReadSDL","createManageResolvers","createReadResolvers","createPreviewResolvers","createGraphQLSchemaPluginFromFieldPlugins","CmsGraphQLSchemaSorterPlugin","createCmsGraphQLSchemaPlugin","createFieldTypePluginRecords","CMS_MODEL_SINGLETON_TAG","createSingularSDL","createSingularResolvers","generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","sorterPlugins","byType","schemaPlugins","forEach","model","tags","includes","singularType","plugin","typeDefs","resolvers","name","modelId","push","READ","filter","pl","schema"],"sources":["schemaPlugins.ts"],"sourcesContent":["import type { ApiEndpoint, CmsContext, CmsModel } from \"~/types/index.js\";\nimport { createManageSDL } from \"./createManageSDL.js\";\nimport { createReadSDL } from \"./createReadSDL.js\";\nimport { createManageResolvers } from \"./createManageResolvers.js\";\nimport { createReadResolvers } from \"./createReadResolvers.js\";\nimport { createPreviewResolvers } from \"./createPreviewResolvers.js\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"~/utils/getSchemaFromFieldPlugins.js\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { CmsGraphQLSchemaSorterPlugin, createCmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { createFieldTypePluginRecords } from \"./createFieldTypePluginRecords.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants.js\";\nimport { createSingularSDL } from \"./createSingularSDL.js\";\nimport { createSingularResolvers } from \"./createSingularResolvers.js\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\n const { context, models } = params;\n const { plugins, cms } = context;\n\n /**\n * If type does not exist, we are not generating schema plugins for models.\n * It should not come to this point, but we check it anyways.\n */\n const { type } = cms;\n if (!type) {\n return [];\n }\n\n // Structure plugins for faster access\n const fieldTypePlugins = createFieldTypePluginRecords(plugins);\n\n const sorterPlugins = plugins.byType<CmsGraphQLSchemaSorterPlugin>(\n CmsGraphQLSchemaSorterPlugin.type\n );\n\n const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n fieldTypePlugins,\n type\n });\n\n models.forEach(model => {\n if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n /**\n * We always need to send either manage or read.\n */\n const singularType: ApiEndpoint = type === \"manage\" ? \"manage\" : \"read\";\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createSingularSDL({\n models,\n model,\n fieldTypePlugins,\n type: singularType\n }),\n resolvers: createSingularResolvers({\n models,\n model,\n fieldTypePlugins,\n type: singularType\n })\n });\n plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;\n schemaPlugins.push(plugin);\n return;\n }\n switch (type) {\n case \"manage\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createManageSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: createManageResolvers({\n models,\n model,\n fieldTypePlugins\n })\n });\n plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n\n break;\n case \"preview\":\n case \"read\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createReadSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: cms.READ\n ? createReadResolvers({\n models,\n model,\n fieldTypePlugins\n })\n : createPreviewResolvers({\n models,\n model,\n fieldTypePlugins\n })\n });\n plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n break;\n default:\n return;\n }\n });\n\n return schemaPlugins.filter(pl => !!pl.schema.typeDefs);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createManageSDL","createReadSDL","createManageResolvers","createReadResolvers","createPreviewResolvers","createGraphQLSchemaPluginFromFieldPlugins","createCmsGraphQLSchemaPlugin","CMS_MODEL_SINGLETON_TAG","createSingularSDL","createSingularResolvers","CmsGraphQLSchemaSorter","CmsModelFieldToGraphQLRegistry","generateSchemaPlugins","params","context","models","cms","type","fieldRegistry","container","resolve","sorters","resolveAll","schemaPlugins","forEach","model","tags","includes","singularType","plugin","typeDefs","resolvers","name","modelId","push","READ","filter","pl","schema"],"sources":["schemaPlugins.ts"],"sourcesContent":["import type { ApiEndpoint, CmsContext, CmsModel } from \"~/types/index.js\";\nimport { createManageSDL } from \"./createManageSDL.js\";\nimport { createReadSDL } from \"./createReadSDL.js\";\nimport { createManageResolvers } from \"./createManageResolvers.js\";\nimport { createReadResolvers } from \"./createReadResolvers.js\";\nimport { createPreviewResolvers } from \"./createPreviewResolvers.js\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"~/utils/getSchemaFromFieldPlugins.js\";\nimport type { ICmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { createCmsGraphQLSchemaPlugin } from \"~/plugins/index.js\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants.js\";\nimport { createSingularSDL } from \"./createSingularSDL.js\";\nimport { createSingularResolvers } from \"./createSingularResolvers.js\";\nimport {\n CmsGraphQLSchemaSorter,\n CmsModelFieldToGraphQLRegistry\n} from \"~/features/graphql/index.js\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\n const { context, models } = params;\n const { cms } = context;\n\n /**\n * If type does not exist, we are not generating schema plugins for models.\n * It should not come to this point, but we check it anyways.\n */\n const { type } = cms;\n if (!type) {\n return [];\n }\n\n const fieldRegistry = context.container.resolve(CmsModelFieldToGraphQLRegistry);\n\n const sorters = context.container.resolveAll(CmsGraphQLSchemaSorter);\n\n const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n fieldRegistry,\n type\n });\n\n models.forEach(model => {\n if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n /**\n * We always need to send either manage or read.\n */\n const singularType: ApiEndpoint = type === \"manage\" ? \"manage\" : \"read\";\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createSingularSDL({\n models,\n model,\n fieldRegistry,\n type: singularType\n }),\n resolvers: createSingularResolvers({\n models,\n model,\n fieldRegistry,\n type: singularType\n })\n });\n plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;\n schemaPlugins.push(plugin);\n return;\n }\n switch (type) {\n case \"manage\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createManageSDL({\n models,\n model,\n fieldRegistry,\n sorters\n }),\n resolvers: createManageResolvers({\n models,\n model,\n fieldRegistry\n })\n });\n plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n\n break;\n case \"preview\":\n case \"read\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createReadSDL({\n models,\n model,\n fieldRegistry,\n sorters\n }),\n resolvers: cms.READ\n ? createReadResolvers({\n models,\n model,\n fieldRegistry\n })\n : createPreviewResolvers({\n models,\n model,\n fieldRegistry\n })\n });\n plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n break;\n default:\n return;\n }\n });\n\n return schemaPlugins.filter(pl => !!pl.schema.typeDefs);\n};\n"],"mappings":"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","ignoreList":[]}
package/index.d.ts CHANGED
@@ -1,5 +1,4 @@
1
1
  import type { CreateGraphQLParams } from "./graphql/index.js";
2
- import type { CrudParams } from "./context.js";
3
2
  import { entryFieldFromStorageTransform, entryFromStorageTransform, entryToStorageTransform } from "./utils/entryStorage.js";
4
3
  import type { Plugin } from "@webiny/plugins/types.js";
5
4
  export * from "./utils/isHeadlessCmsReady.js";
@@ -7,13 +6,12 @@ export * from "./utils/createModelField.js";
7
6
  export * from "./graphql/schema/resolvers/manage/normalizeGraphQlInput.js";
8
7
  export type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;
9
8
  export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => Plugin[];
10
- export type ContentContextParams = CrudParams;
11
- export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("~/plugins/index.js").StorageTransformPlugin<any, any, import("./types/modelField.js").CmsModelField> | import("@webiny/api/index.js").ContextPlugin<import("./types/types.js").CmsContext> | import("./types/plugins.js").CmsModelFieldToGraphQLPlugin<any>[] | (import("./types/plugins.js").CmsModelFieldValidatorPlugin | import("./types/plugins.js").CmsModelFieldPatternValidatorPlugin[])[] | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin.js").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin.js").CmsModelDefaultFieldConverterPlugin | import("./fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js").CmsModelDynamicZoneFieldConverterPlugin)[])[];
12
- export * from "./graphqlFields/index.js";
9
+ export declare const createHeadlessCmsContext: () => (import("@webiny/api/index.js").ContextPlugin<import("./types/types.js").CmsContext> | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin.js").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin.js").CmsModelDefaultFieldConverterPlugin | import("./fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js").CmsModelDynamicZoneFieldConverterPlugin)[])[];
13
10
  export * from "./plugins/index.js";
14
11
  export * from "./utils/incrementEntryIdVersion.js";
15
12
  export * from "./graphql/handleRequest.js";
16
- export * from "./utils/contentEntryTraverser/ContentEntryTraverser.js";
13
+ export * from "./features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js";
14
+ export { ContentEntryTraverserProvider } from "./features/contentEntry/ContentEntryTraverser/abstractions.js";
17
15
  export * from "./utils/contentModelAst/index.js";
18
16
  export { CmsWhereMapper } from "./features/whereMapper/abstractions.js";
19
17
  export { CmsSortMapper } from "./features/sortMapper/abstractions.js";
package/index.js CHANGED
@@ -1,12 +1,9 @@
1
1
  import { createGraphQL as baseCreateGraphQL } from "./graphql/index.js";
2
- import { createGraphQLFields } from "./graphqlFields/index.js";
3
- import { createValidators } from "./validators/index.js";
4
2
  import { createContextParameterPlugin, createHeaderParameterPlugin, createPathParameterPlugin } from "./parameters/index.js";
5
3
  import { createContextPlugin } from "./context.js";
6
4
  import { entryFieldFromStorageTransform, entryFromStorageTransform, entryToStorageTransform } from "./utils/entryStorage.js";
7
5
  import { createFieldConverters } from "./fieldConverters/index.js";
8
6
  import { createExportGraphQL } from "./export/index.js";
9
- import { createStorageTransform } from "./storage/index.js";
10
7
  import { createRevisionIdScalarPlugin } from "./graphql/scalars/RevisionIdScalarPlugin.js";
11
8
  export * from "./utils/isHeadlessCmsReady.js";
12
9
  export * from "./utils/createModelField.js";
@@ -22,18 +19,18 @@ export const createHeadlessCmsGraphQL = (params = {}) => {
22
19
  */
23
20
  ...baseCreateGraphQL(params), createExportGraphQL()];
24
21
  };
25
- export const createHeadlessCmsContext = params => {
22
+ export const createHeadlessCmsContext = () => {
26
23
  return [
27
24
  /**
28
25
  * Context for all Lambdas - everything is loaded now.
29
26
  */
30
- createContextPlugin(params), createGraphQLFields(), createFieldConverters(), createValidators(), ...createStorageTransform()];
27
+ createContextPlugin(), createFieldConverters()];
31
28
  };
32
- export * from "./graphqlFields/index.js";
33
29
  export * from "./plugins/index.js";
34
30
  export * from "./utils/incrementEntryIdVersion.js";
35
31
  export * from "./graphql/handleRequest.js";
36
- export * from "./utils/contentEntryTraverser/ContentEntryTraverser.js";
32
+ export * from "./features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js";
33
+ export { ContentEntryTraverserProvider } from "./features/contentEntry/ContentEntryTraverser/abstractions.js";
37
34
  export * from "./utils/contentModelAst/index.js";
38
35
  export { CmsWhereMapper } from "./features/whereMapper/abstractions.js";
39
36
  export { CmsSortMapper } from "./features/sortMapper/abstractions.js";
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["createGraphQL","baseCreateGraphQL","createGraphQLFields","createValidators","createContextParameterPlugin","createHeaderParameterPlugin","createPathParameterPlugin","createContextPlugin","entryFieldFromStorageTransform","entryFromStorageTransform","entryToStorageTransform","createFieldConverters","createExportGraphQL","createStorageTransform","createRevisionIdScalarPlugin","createHeadlessCmsGraphQL","params","createHeadlessCmsContext","CmsWhereMapper","CmsSortMapper"],"sources":["index.ts"],"sourcesContent":["import type { CreateGraphQLParams } from \"~/graphql/index.js\";\nimport { createGraphQL as baseCreateGraphQL } from \"~/graphql/index.js\";\nimport { createGraphQLFields } from \"~/graphqlFields/index.js\";\nimport { createValidators } from \"~/validators/index.js\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters/index.js\";\nimport type { CrudParams } from \"~/context.js\";\nimport { createContextPlugin } from \"~/context.js\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage.js\";\nimport { createFieldConverters } from \"~/fieldConverters/index.js\";\nimport { createExportGraphQL } from \"~/export/index.js\";\nimport { createStorageTransform } from \"~/storage/index.js\";\nimport { createRevisionIdScalarPlugin } from \"~/graphql/scalars/RevisionIdScalarPlugin.js\";\nimport type { Plugin } from \"@webiny/plugins/types.js\";\n\nexport * from \"./utils/isHeadlessCmsReady.js\";\nexport * from \"./utils/createModelField.js\";\nexport * from \"./graphql/schema/resolvers/manage/normalizeGraphQlInput.js\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}): Plugin[] => {\n return [\n ...createRevisionIdScalarPlugin(),\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params),\n createExportGraphQL()\n ];\n};\n\nexport type ContentContextParams = CrudParams;\nexport const createHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(params),\n createGraphQLFields(),\n createFieldConverters(),\n createValidators(),\n ...createStorageTransform()\n ];\n};\nexport * from \"~/graphqlFields/index.js\";\nexport * from \"~/plugins/index.js\";\nexport * from \"~/utils/incrementEntryIdVersion.js\";\nexport * from \"./graphql/handleRequest.js\";\nexport * from \"./utils/contentEntryTraverser/ContentEntryTraverser.js\";\nexport * from \"./utils/contentModelAst/index.js\";\nexport { CmsWhereMapper } from \"~/features/whereMapper/abstractions.js\";\nexport { CmsSortMapper } from \"~/features/sortMapper/abstractions.js\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"AACA,SAASA,aAAa,IAAIC,iBAAiB;AAC3C,SAASC,mBAAmB;AAC5B,SAASC,gBAAgB;AACzB,SACIC,4BAA4B,EAC5BC,2BAA2B,EAC3BC,yBAAyB;AAG7B,SAASC,mBAAmB;AAC5B,SACIC,8BAA8B,EAC9BC,yBAAyB,EACzBC,uBAAuB;AAE3B,SAASC,qBAAqB;AAC9B,SAASC,mBAAmB;AAC5B,SAASC,sBAAsB;AAC/B,SAASC,4BAA4B;AAGrC;AACA;AACA;AAGA,OAAO,MAAMC,wBAAwB,GAAGA,CAACC,MAAsC,GAAG,CAAC,CAAC,KAAe;EAC/F,OAAO,CACH,GAAGF,4BAA4B,CAAC,CAAC;EACjC;AACR;AACA;EACQR,yBAAyB,CAAC,CAAC,EAC3BD,2BAA2B,CAAC,CAAC,EAC7BD,4BAA4B,CAAC,CAAC;EAC9B;AACR;AACA;EACQ,GAAGH,iBAAiB,CAACe,MAAM,CAAC,EAC5BJ,mBAAmB,CAAC,CAAC,CACxB;AACL,CAAC;AAGD,OAAO,MAAMK,wBAAwB,GAAID,MAA4B,IAAK;EACtE,OAAO;EACH;AACR;AACA;EACQT,mBAAmB,CAACS,MAAM,CAAC,EAC3Bd,mBAAmB,CAAC,CAAC,EACrBS,qBAAqB,CAAC,CAAC,EACvBR,gBAAgB,CAAC,CAAC,EAClB,GAAGU,sBAAsB,CAAC,CAAC,CAC9B;AACL,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA,SAASK,cAAc;AACvB,SAASC,aAAa;AACtB,SAAST,uBAAuB,EAAEF,8BAA8B,EAAEC,yBAAyB","ignoreList":[]}
1
+ {"version":3,"names":["createGraphQL","baseCreateGraphQL","createContextParameterPlugin","createHeaderParameterPlugin","createPathParameterPlugin","createContextPlugin","entryFieldFromStorageTransform","entryFromStorageTransform","entryToStorageTransform","createFieldConverters","createExportGraphQL","createRevisionIdScalarPlugin","createHeadlessCmsGraphQL","params","createHeadlessCmsContext","ContentEntryTraverserProvider","CmsWhereMapper","CmsSortMapper"],"sources":["index.ts"],"sourcesContent":["import type { CreateGraphQLParams } from \"~/graphql/index.js\";\nimport { createGraphQL as baseCreateGraphQL } from \"~/graphql/index.js\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters/index.js\";\nimport { createContextPlugin } from \"~/context.js\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage.js\";\nimport { createFieldConverters } from \"~/fieldConverters/index.js\";\nimport { createExportGraphQL } from \"~/export/index.js\";\nimport { createRevisionIdScalarPlugin } from \"~/graphql/scalars/RevisionIdScalarPlugin.js\";\nimport type { Plugin } from \"@webiny/plugins/types.js\";\n\nexport * from \"./utils/isHeadlessCmsReady.js\";\nexport * from \"./utils/createModelField.js\";\nexport * from \"./graphql/schema/resolvers/manage/normalizeGraphQlInput.js\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}): Plugin[] => {\n return [\n ...createRevisionIdScalarPlugin(),\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params),\n createExportGraphQL()\n ];\n};\n\nexport const createHeadlessCmsContext = () => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(),\n createFieldConverters()\n ];\n};\nexport * from \"~/plugins/index.js\";\nexport * from \"~/utils/incrementEntryIdVersion.js\";\nexport * from \"./graphql/handleRequest.js\";\nexport * from \"./features/contentEntry/ContentEntryTraverser/ContentEntryTraverser.js\";\nexport { ContentEntryTraverserProvider } from \"./features/contentEntry/ContentEntryTraverser/abstractions.js\";\nexport * from \"./utils/contentModelAst/index.js\";\nexport { CmsWhereMapper } from \"~/features/whereMapper/abstractions.js\";\nexport { CmsSortMapper } from \"~/features/sortMapper/abstractions.js\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"AACA,SAASA,aAAa,IAAIC,iBAAiB;AAC3C,SACIC,4BAA4B,EAC5BC,2BAA2B,EAC3BC,yBAAyB;AAE7B,SAASC,mBAAmB;AAC5B,SACIC,8BAA8B,EAC9BC,yBAAyB,EACzBC,uBAAuB;AAE3B,SAASC,qBAAqB;AAC9B,SAASC,mBAAmB;AAC5B,SAASC,4BAA4B;AAGrC;AACA;AACA;AAGA,OAAO,MAAMC,wBAAwB,GAAGA,CAACC,MAAsC,GAAG,CAAC,CAAC,KAAe;EAC/F,OAAO,CACH,GAAGF,4BAA4B,CAAC,CAAC;EACjC;AACR;AACA;EACQP,yBAAyB,CAAC,CAAC,EAC3BD,2BAA2B,CAAC,CAAC,EAC7BD,4BAA4B,CAAC,CAAC;EAC9B;AACR;AACA;EACQ,GAAGD,iBAAiB,CAACY,MAAM,CAAC,EAC5BH,mBAAmB,CAAC,CAAC,CACxB;AACL,CAAC;AAED,OAAO,MAAMI,wBAAwB,GAAGA,CAAA,KAAM;EAC1C,OAAO;EACH;AACR;AACA;EACQT,mBAAmB,CAAC,CAAC,EACrBI,qBAAqB,CAAC,CAAC,CAC1B;AACL,CAAC;AACD;AACA;AACA;AACA;AACA,SAASM,6BAA6B;AACtC;AACA,SAASC,cAAc;AACvB,SAASC,aAAa;AACtB,SAAST,uBAAuB,EAAEF,8BAA8B,EAAEC,yBAAyB","ignoreList":[]}
package/package.json CHANGED
@@ -1,8 +1,11 @@
1
1
  {
2
2
  "name": "@webiny/api-headless-cms",
3
- "version": "0.0.0-unstable.e622468070",
3
+ "version": "0.0.0-unstable.e6f0dc8ca7",
4
4
  "type": "module",
5
- "main": "index.js",
5
+ "exports": {
6
+ ".": "./index.js",
7
+ "./*": "./*"
8
+ },
6
9
  "keywords": [
7
10
  "cms:base"
8
11
  ],
@@ -20,51 +23,52 @@
20
23
  "license": "MIT",
21
24
  "dependencies": {
22
25
  "@babel/code-frame": "7.29.0",
23
- "@graphql-tools/merge": "9.1.7",
24
- "@graphql-tools/schema": "10.0.31",
25
- "@webiny/api": "0.0.0-unstable.e622468070",
26
- "@webiny/api-core": "0.0.0-unstable.e622468070",
26
+ "@graphql-tools/merge": "9.1.9",
27
+ "@graphql-tools/schema": "10.0.33",
28
+ "@webiny/api": "0.0.0-unstable.e6f0dc8ca7",
29
+ "@webiny/api-core": "0.0.0-unstable.e6f0dc8ca7",
27
30
  "@webiny/di": "0.2.3",
28
- "@webiny/error": "0.0.0-unstable.e622468070",
29
- "@webiny/feature": "0.0.0-unstable.e622468070",
30
- "@webiny/handler": "0.0.0-unstable.e622468070",
31
- "@webiny/handler-aws": "0.0.0-unstable.e622468070",
32
- "@webiny/handler-db": "0.0.0-unstable.e622468070",
33
- "@webiny/handler-graphql": "0.0.0-unstable.e622468070",
34
- "@webiny/plugins": "0.0.0-unstable.e622468070",
35
- "@webiny/project": "0.0.0-unstable.e622468070",
36
- "@webiny/utils": "0.0.0-unstable.e622468070",
37
- "@webiny/validation": "0.0.0-unstable.e622468070",
31
+ "@webiny/error": "0.0.0-unstable.e6f0dc8ca7",
32
+ "@webiny/feature": "0.0.0-unstable.e6f0dc8ca7",
33
+ "@webiny/handler": "0.0.0-unstable.e6f0dc8ca7",
34
+ "@webiny/handler-aws": "0.0.0-unstable.e6f0dc8ca7",
35
+ "@webiny/handler-db": "0.0.0-unstable.e6f0dc8ca7",
36
+ "@webiny/handler-graphql": "0.0.0-unstable.e6f0dc8ca7",
37
+ "@webiny/plugins": "0.0.0-unstable.e6f0dc8ca7",
38
+ "@webiny/project": "0.0.0-unstable.e6f0dc8ca7",
39
+ "@webiny/utils": "0.0.0-unstable.e6f0dc8ca7",
40
+ "@webiny/validation": "0.0.0-unstable.e6f0dc8ca7",
38
41
  "dot-prop-immutable": "2.1.1",
39
- "graphql": "16.12.0",
42
+ "graphql": "16.14.0",
40
43
  "graphql-tag": "2.12.6",
41
- "lodash": "4.17.23",
44
+ "lodash": "4.18.1",
42
45
  "p-map": "7.0.4",
43
46
  "p-reduce": "3.0.0",
44
47
  "pluralize": "8.0.0",
45
- "slugify": "1.6.6",
46
- "zod": "3.25.76"
48
+ "slugify": "1.6.9",
49
+ "zod": "4.4.3"
47
50
  },
48
51
  "devDependencies": {
49
52
  "@types/babel__code-frame": "7.27.0",
50
53
  "@types/pluralize": "0.0.33",
51
- "@webiny/aws-sdk": "0.0.0-unstable.e622468070",
52
- "@webiny/build-tools": "0.0.0-unstable.e622468070",
53
- "@webiny/db-dynamodb": "0.0.0-unstable.e622468070",
54
+ "@webiny/aws-sdk": "0.0.0-unstable.e6f0dc8ca7",
55
+ "@webiny/build-tools": "0.0.0-unstable.e6f0dc8ca7",
56
+ "@webiny/db-dynamodb": "0.0.0-unstable.e6f0dc8ca7",
54
57
  "@webiny/handler-db": "0.0.0",
55
- "@webiny/project-utils": "0.0.0-unstable.e622468070",
56
- "@webiny/wcp": "0.0.0-unstable.e622468070",
58
+ "@webiny/project-utils": "0.0.0-unstable.e6f0dc8ca7",
59
+ "@webiny/sdk": "0.0.0-unstable.e6f0dc8ca7",
60
+ "@webiny/wcp": "0.0.0-unstable.e6f0dc8ca7",
57
61
  "apollo-graphql": "0.9.7",
58
- "graphql": "16.12.0",
59
- "prettier": "3.6.2",
60
- "rimraf": "6.1.2",
61
- "typescript": "5.9.3",
62
- "vitest": "3.2.4",
63
- "write-json-file": "4.3.0"
62
+ "graphql": "16.14.0",
63
+ "oxfmt": "0.48.0",
64
+ "rimraf": "6.1.3",
65
+ "typescript": "6.0.3",
66
+ "vitest": "4.1.5",
67
+ "write-json-file": "7.0.0"
64
68
  },
65
69
  "publishConfig": {
66
70
  "access": "public",
67
71
  "directory": "dist"
68
72
  },
69
- "gitHead": "e622468070839dc3f9552c85bf2bbac12d2ef88f"
73
+ "gitHead": "e6f0dc8ca741c1fcc3fec9a5b9e86fdd49544641"
70
74
  }
@@ -168,12 +168,27 @@ export class CmsModelPlugin extends Plugin {
168
168
  if (this.options.validateLayout === false) {
169
169
  return;
170
170
  }
171
- for (const field of model.fields) {
171
+ const countFieldInLayout = (fieldId, layout) => {
172
172
  let total = 0;
173
- for (const row of model.layout) {
174
- const count = row.filter(cell => cell === field.id).length;
175
- total = total + count;
173
+ for (const row of layout) {
174
+ for (const cell of row) {
175
+ if (typeof cell === "string") {
176
+ if (cell === fieldId) {
177
+ total++;
178
+ }
179
+ } else if (cell && typeof cell === "object" && Array.isArray(cell.tabs)) {
180
+ for (const tab of cell.tabs) {
181
+ if (Array.isArray(tab.layout)) {
182
+ total += countFieldInLayout(fieldId, tab.layout);
183
+ }
184
+ }
185
+ }
186
+ }
176
187
  }
188
+ return total;
189
+ };
190
+ for (const field of model.fields) {
191
+ const total = countFieldInLayout(field.id, model.layout);
177
192
  if (total === 1) {
178
193
  continue;
179
194
  } else if (total > 1) {
@@ -1 +1 @@
1
- {"version":3,"names":["WebinyError","lodashCamelCase","camelCase","upperFirst","pluralize","Plugin","createFieldStorageId","validateStorageId","createApiName","name","createPluralApiName","CmsModelPlugin","type","constructor","contentModel","options","buildModel","input","isPrivate","singularApiName","pluralApiName","modelPlugin","group","description","fields","isPlugin","icon","layout","modelId","titleFieldId","noValidate","model","buildFields","validateLayout","inputFields","length","storageIdList","fieldIdList","fieldId","trim","field","match","includes","id","storageId","e","from","data","settings","childFields","push","total","row","count","filter","cell","createModelPlugin","createPrivateModelPlugin","authorization"],"sources":["CmsModelPlugin.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport lodashCamelCase from \"lodash/camelCase.js\";\nimport camelCase from \"lodash/camelCase.js\";\nimport upperFirst from \"lodash/upperFirst.js\";\nimport pluralize from \"pluralize\";\nimport { Plugin } from \"@webiny/plugins\";\nimport type {\n CmsModel as CmsModelBase,\n CmsModelField as CmsModelFieldBase,\n CmsModelFieldSettings as BaseCmsModelFieldSettings\n} from \"~/types/index.js\";\nimport { createFieldStorageId } from \"~/crud/contentModel/createFieldStorageId.js\";\nimport { validateStorageId } from \"~/crud/contentModel/validateStorageId.js\";\n\nconst createApiName = (name: string) => {\n return upperFirst(camelCase(name));\n};\n\nconst createPluralApiName = (name: string) => {\n return pluralize(createApiName(name));\n};\n\ninterface CmsModelFieldSettings extends Omit<BaseCmsModelFieldSettings, \"fields\"> {\n /**\n * Object field has child fields.\n */\n fields?: CmsModelFieldInput[];\n}\n\ninterface CmsModelFieldInput extends Omit<CmsModelFieldBase, \"storageId\" | \"settings\"> {\n /**\n * If defined, it must be camelCased string.\n * This is for backwards compatibility - before fields had storageId.\n *\n * This should only be populated in old model fields.\n * New ones must have this empty.\n */\n storageId?: string;\n /**\n * We must have a possibility to have a nested field defined without the storageId.\n */\n settings?: CmsModelFieldSettings;\n}\n\nexport interface CmsApiModel\n extends Omit<\n CmsModelPluginModel,\n \"isPrivate\" | \"fields\" | \"singularApiName\" | \"pluralApiName\" | \"isPlugin\"\n > {\n isPrivate?: never;\n noValidate?: boolean;\n singularApiName?: string;\n pluralApiName?: string;\n fields: CmsModelFieldInput[];\n}\n\nexport interface CmsApiModelFull extends Omit<CmsApiModel, \"fields\"> {\n fields: CmsModelFieldBase[];\n}\n\ninterface CmsPrivateModel\n extends Omit<\n CmsModelPluginModel,\n | \"isPrivate\"\n | \"singularApiName\"\n | \"pluralApiName\"\n | \"fields\"\n | \"isPlugin\"\n | \"layout\"\n | \"icon\"\n | \"titleFieldId\"\n | \"description\"\n > {\n noValidate?: boolean;\n titleFieldId?: string;\n singularApiName?: never;\n pluralApiName?: never;\n isPrivate: true;\n fields: CmsModelFieldInput[];\n}\n\nexport interface CmsPrivateModelFull\n extends Omit<CmsPrivateModel, \"fields\" | \"createdBy\" | \"createdOn\" | \"savedOn\"> {\n fields: CmsModelFieldBase[];\n}\n\nexport type CmsModelInput = CmsApiModel | CmsPrivateModel | CmsApiModelFull | CmsPrivateModelFull;\n\nexport interface CmsModelPluginModel extends Omit<CmsModelBase, \"tenant\"> {\n tenant?: string;\n}\n\ninterface CmsModelPluginOptions {\n validateLayout?: boolean;\n}\n\nexport class CmsModelPlugin extends Plugin {\n public static override readonly type: string = \"cms-content-model\";\n public readonly contentModel: CmsModelPluginModel;\n\n private readonly options: CmsModelPluginOptions;\n\n constructor(contentModel: CmsModelInput, options?: CmsModelPluginOptions) {\n super();\n this.options = options || {};\n this.contentModel = this.buildModel(contentModel);\n }\n\n private buildModel(input: CmsModelInput): CmsModelPluginModel {\n const isPrivate = input.isPrivate ?? false;\n\n const singularApiName = input.singularApiName\n ? createApiName(input.singularApiName)\n : createApiName(input.name);\n\n const pluralApiName = input.pluralApiName\n ? createApiName(input.pluralApiName)\n : createPluralApiName(input.name);\n\n const modelPlugin: CmsModelPluginModel = {\n group: input.group ?? \"ungrouped\",\n description: \"\",\n fields: [],\n isPlugin: true,\n isPrivate,\n icon: null,\n layout: [],\n modelId: input.modelId,\n name: input.name,\n pluralApiName,\n singularApiName,\n titleFieldId: \"id\"\n };\n\n if (input.noValidate) {\n /**\n * We can safely ignore this error, because we are sure noValidate is not a model field.\n */\n delete input[\"noValidate\"];\n\n return {\n ...modelPlugin,\n ...input,\n // Since `noValidate` is set, we trust the input, and cast to `CmsModelFieldBase`.\n fields: input.fields as CmsModelFieldBase[],\n pluralApiName,\n singularApiName\n };\n }\n\n const model: CmsModelPluginModel = {\n ...modelPlugin,\n ...input,\n pluralApiName,\n singularApiName,\n fields: this.buildFields(input, input.fields)\n };\n this.validateLayout(model);\n return model;\n }\n\n private buildFields(\n model: CmsModelInput,\n inputFields: CmsModelFieldInput[]\n ): CmsModelFieldBase[] {\n if (inputFields.length === 0) {\n throw new WebinyError(\n `Missing fields for the defined model \"${model.modelId}\".`,\n \"MISSING_FIELDS\",\n {\n model\n }\n );\n }\n const fields: CmsModelFieldBase[] = [];\n const storageIdList: string[] = [];\n const fieldIdList: string[] = [];\n for (const input of inputFields) {\n /**\n * Field must contain an fieldId. It is required in the graphql, but lets check it just in case\n */\n if (!(input.fieldId || \"\").trim()) {\n throw new WebinyError(\n `Field's \"storageId\" is not defined for the content model \"${model.modelId}\".`,\n \"FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n const fieldId = lodashCamelCase(input.fieldId);\n /**\n * FieldID must be in correct pattern.\n */\n if (fieldId.match(/^[0-9]/) !== null) {\n throw new WebinyError(\n `Field's \"fieldId\" does not match correct pattern in the content model \"${model.modelId}\" - cannot start with a number.`,\n \"FIELD_FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n /**\n * FieldID also must be camelCased.\n */\n if (fieldId !== input.fieldId) {\n throw new WebinyError(\n `Field's \"fieldId\" must be a camel cased string in the content model \"${model.modelId}\".`,\n \"FIELD_FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n /**\n * ... and fieldId must be unique.\n */\n if (fieldIdList.includes(fieldId)) {\n throw new WebinyError(\n `Field's \"fieldId\" (id: ${input.id}) is not unique in the content model \"${model.modelId}\".`,\n \"FIELD_ID_NOT_UNIQUE_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n\n let storageId = input.storageId;\n if (storageId) {\n try {\n validateStorageId(storageId);\n } catch (e) {\n throw WebinyError.from(e, {\n data: { model, storageId, field: input }\n });\n }\n } else {\n storageId = createFieldStorageId(input);\n }\n\n /**\n * Fields storageId must be unique.\n */\n if (storageIdList.includes(storageId)) {\n throw new WebinyError(\n `Field's \"storageId\" is not unique in the content model \"${model.modelId}\".`,\n \"STORAGE_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n\n /**\n * We can safely ignore error because we are going through the fields and making sure each has storageId.\n */\n // @ts-expect-error\n let settings: BaseCmsModelFieldSettings = input.settings;\n\n const childFields = settings?.fields || [];\n if (input.type === \"object\" && childFields.length > 0) {\n settings = {\n ...(settings || {}),\n fields: this.buildFields(model, childFields)\n };\n }\n\n const field: CmsModelFieldBase = {\n ...input,\n settings,\n storageId\n };\n /**\n * Add all relevant data to arrays.\n */\n fields.push(field);\n storageIdList.push(field.storageId);\n fieldIdList.push(field.fieldId);\n }\n return fields;\n }\n\n private validateLayout(model: CmsModelPluginModel): void {\n /**\n * Only skip validation if option.validateLayout was set as false, explicitly.\n */\n if (this.options.validateLayout === false) {\n return;\n }\n for (const field of model.fields) {\n let total = 0;\n for (const row of model.layout) {\n const count = row.filter(cell => cell === field.id).length;\n total = total + count;\n }\n if (total === 1) {\n continue;\n } else if (total > 1) {\n throw new WebinyError(\n `Field \"${field.id}\" is in more than one layout cell.`,\n \"DUPLICATE_FIELD_IN_LAYOUT\",\n {\n model,\n field\n }\n );\n }\n throw new WebinyError(\n `Missing field \"${field.id}\" in layout.`,\n \"MISSING_FIELD_IN_LAYOUT\",\n {\n model,\n field\n }\n );\n }\n }\n}\n\n/**\n * IMPORTANT! This function should NOT be used outside the `api-headless-cms` package!\n * @internal\n */\nexport const createModelPlugin = (\n model: CmsModelInput,\n options?: CmsModelPluginOptions\n): CmsModelPlugin => {\n return new CmsModelPlugin(model, options);\n};\n\n/**\n * IMPORTANT! This function should NOT be used outside the `api-headless-cms` package!\n * @internal\n */\nexport const createPrivateModelPlugin = (\n input: Omit<CmsPrivateModelFull, \"group\" | \"isPrivate\">\n): CmsModelPlugin => {\n return createModelPlugin(\n {\n authorization: false,\n noValidate: true,\n isPrivate: true,\n group: \"private\",\n ...input\n },\n {\n validateLayout: false\n }\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["WebinyError","lodashCamelCase","camelCase","upperFirst","pluralize","Plugin","createFieldStorageId","validateStorageId","createApiName","name","createPluralApiName","CmsModelPlugin","type","constructor","contentModel","options","buildModel","input","isPrivate","singularApiName","pluralApiName","modelPlugin","group","description","fields","isPlugin","icon","layout","modelId","titleFieldId","noValidate","model","buildFields","validateLayout","inputFields","length","storageIdList","fieldIdList","fieldId","trim","field","match","includes","id","storageId","e","from","data","settings","childFields","push","countFieldInLayout","total","row","cell","Array","isArray","tabs","tab","createModelPlugin","createPrivateModelPlugin","authorization"],"sources":["CmsModelPlugin.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport lodashCamelCase from \"lodash/camelCase.js\";\nimport camelCase from \"lodash/camelCase.js\";\nimport upperFirst from \"lodash/upperFirst.js\";\nimport pluralize from \"pluralize\";\nimport { Plugin } from \"@webiny/plugins\";\nimport type {\n CmsModel as CmsModelBase,\n CmsModelField as CmsModelFieldBase,\n CmsModelFieldSettings as BaseCmsModelFieldSettings\n} from \"~/types/index.js\";\nimport { createFieldStorageId } from \"~/crud/contentModel/createFieldStorageId.js\";\nimport { validateStorageId } from \"~/crud/contentModel/validateStorageId.js\";\n\nconst createApiName = (name: string) => {\n return upperFirst(camelCase(name));\n};\n\nconst createPluralApiName = (name: string) => {\n return pluralize(createApiName(name));\n};\n\ninterface CmsModelFieldSettings extends Omit<BaseCmsModelFieldSettings, \"fields\"> {\n /**\n * Object field has child fields.\n */\n fields?: CmsModelFieldInput[];\n}\n\ninterface CmsModelFieldInput extends Omit<CmsModelFieldBase, \"storageId\" | \"settings\"> {\n /**\n * If defined, it must be camelCased string.\n * This is for backwards compatibility - before fields had storageId.\n *\n * This should only be populated in old model fields.\n * New ones must have this empty.\n */\n storageId?: string;\n /**\n * We must have a possibility to have a nested field defined without the storageId.\n */\n settings?: CmsModelFieldSettings;\n}\n\nexport interface CmsApiModel extends Omit<\n CmsModelPluginModel,\n \"isPrivate\" | \"fields\" | \"singularApiName\" | \"pluralApiName\" | \"isPlugin\"\n> {\n isPrivate?: never;\n noValidate?: boolean;\n singularApiName?: string;\n pluralApiName?: string;\n fields: CmsModelFieldInput[];\n}\n\nexport interface CmsApiModelFull extends Omit<CmsApiModel, \"fields\"> {\n fields: CmsModelFieldBase[];\n}\n\ninterface CmsPrivateModel extends Omit<\n CmsModelPluginModel,\n | \"isPrivate\"\n | \"singularApiName\"\n | \"pluralApiName\"\n | \"fields\"\n | \"isPlugin\"\n | \"layout\"\n | \"icon\"\n | \"titleFieldId\"\n | \"description\"\n> {\n noValidate?: boolean;\n titleFieldId?: string;\n singularApiName?: never;\n pluralApiName?: never;\n isPrivate: true;\n fields: CmsModelFieldInput[];\n}\n\nexport interface CmsPrivateModelFull extends Omit<\n CmsPrivateModel,\n \"fields\" | \"createdBy\" | \"createdOn\" | \"savedOn\"\n> {\n fields: CmsModelFieldBase[];\n}\n\nexport type CmsModelInput = CmsApiModel | CmsPrivateModel | CmsApiModelFull | CmsPrivateModelFull;\n\nexport interface CmsModelPluginModel extends Omit<CmsModelBase, \"tenant\"> {\n tenant?: string;\n}\n\ninterface CmsModelPluginOptions {\n validateLayout?: boolean;\n}\n\nexport class CmsModelPlugin extends Plugin {\n public static override readonly type: string = \"cms-content-model\";\n public readonly contentModel: CmsModelPluginModel;\n\n private readonly options: CmsModelPluginOptions;\n\n constructor(contentModel: CmsModelInput, options?: CmsModelPluginOptions) {\n super();\n this.options = options || {};\n this.contentModel = this.buildModel(contentModel);\n }\n\n private buildModel(input: CmsModelInput): CmsModelPluginModel {\n const isPrivate = input.isPrivate ?? false;\n\n const singularApiName = input.singularApiName\n ? createApiName(input.singularApiName)\n : createApiName(input.name);\n\n const pluralApiName = input.pluralApiName\n ? createApiName(input.pluralApiName)\n : createPluralApiName(input.name);\n\n const modelPlugin: CmsModelPluginModel = {\n group: input.group ?? \"ungrouped\",\n description: \"\",\n fields: [],\n isPlugin: true,\n isPrivate,\n icon: null,\n layout: [],\n modelId: input.modelId,\n name: input.name,\n pluralApiName,\n singularApiName,\n titleFieldId: \"id\"\n };\n\n if (input.noValidate) {\n /**\n * We can safely ignore this error, because we are sure noValidate is not a model field.\n */\n delete input[\"noValidate\"];\n\n return {\n ...modelPlugin,\n ...input,\n // Since `noValidate` is set, we trust the input, and cast to `CmsModelFieldBase`.\n fields: input.fields as CmsModelFieldBase[],\n pluralApiName,\n singularApiName\n };\n }\n\n const model: CmsModelPluginModel = {\n ...modelPlugin,\n ...input,\n pluralApiName,\n singularApiName,\n fields: this.buildFields(input, input.fields)\n };\n this.validateLayout(model);\n return model;\n }\n\n private buildFields(\n model: CmsModelInput,\n inputFields: CmsModelFieldInput[]\n ): CmsModelFieldBase[] {\n if (inputFields.length === 0) {\n throw new WebinyError(\n `Missing fields for the defined model \"${model.modelId}\".`,\n \"MISSING_FIELDS\",\n {\n model\n }\n );\n }\n const fields: CmsModelFieldBase[] = [];\n const storageIdList: string[] = [];\n const fieldIdList: string[] = [];\n for (const input of inputFields) {\n /**\n * Field must contain an fieldId. It is required in the graphql, but lets check it just in case\n */\n if (!(input.fieldId || \"\").trim()) {\n throw new WebinyError(\n `Field's \"storageId\" is not defined for the content model \"${model.modelId}\".`,\n \"FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n const fieldId = lodashCamelCase(input.fieldId);\n /**\n * FieldID must be in correct pattern.\n */\n if (fieldId.match(/^[0-9]/) !== null) {\n throw new WebinyError(\n `Field's \"fieldId\" does not match correct pattern in the content model \"${model.modelId}\" - cannot start with a number.`,\n \"FIELD_FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n /**\n * FieldID also must be camelCased.\n */\n if (fieldId !== input.fieldId) {\n throw new WebinyError(\n `Field's \"fieldId\" must be a camel cased string in the content model \"${model.modelId}\".`,\n \"FIELD_FIELD_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n /**\n * ... and fieldId must be unique.\n */\n if (fieldIdList.includes(fieldId)) {\n throw new WebinyError(\n `Field's \"fieldId\" (id: ${input.id}) is not unique in the content model \"${model.modelId}\".`,\n \"FIELD_ID_NOT_UNIQUE_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n\n let storageId = input.storageId;\n if (storageId) {\n try {\n validateStorageId(storageId);\n } catch (e) {\n throw WebinyError.from(e, {\n data: { model, storageId, field: input }\n });\n }\n } else {\n storageId = createFieldStorageId(input);\n }\n\n /**\n * Fields storageId must be unique.\n */\n if (storageIdList.includes(storageId)) {\n throw new WebinyError(\n `Field's \"storageId\" is not unique in the content model \"${model.modelId}\".`,\n \"STORAGE_ID_ERROR\",\n {\n model,\n field: input\n }\n );\n }\n\n /**\n * We can safely ignore error because we are going through the fields and making sure each has storageId.\n */\n // @ts-expect-error\n let settings: BaseCmsModelFieldSettings = input.settings;\n\n const childFields = settings?.fields || [];\n if (input.type === \"object\" && childFields.length > 0) {\n settings = {\n ...(settings || {}),\n fields: this.buildFields(model, childFields)\n };\n }\n\n const field: CmsModelFieldBase = {\n ...input,\n settings,\n storageId\n };\n /**\n * Add all relevant data to arrays.\n */\n fields.push(field);\n storageIdList.push(field.storageId);\n fieldIdList.push(field.fieldId);\n }\n return fields;\n }\n\n private validateLayout(model: CmsModelPluginModel): void {\n /**\n * Only skip validation if option.validateLayout was set as false, explicitly.\n */\n if (this.options.validateLayout === false) {\n return;\n }\n\n const countFieldInLayout = (fieldId: string, layout: any[][]): number => {\n let total = 0;\n for (const row of layout) {\n for (const cell of row) {\n if (typeof cell === \"string\") {\n if (cell === fieldId) {\n total++;\n }\n } else if (cell && typeof cell === \"object\" && Array.isArray(cell.tabs)) {\n for (const tab of cell.tabs) {\n if (Array.isArray(tab.layout)) {\n total += countFieldInLayout(fieldId, tab.layout);\n }\n }\n }\n }\n }\n return total;\n };\n\n for (const field of model.fields) {\n const total = countFieldInLayout(field.id, model.layout);\n if (total === 1) {\n continue;\n } else if (total > 1) {\n throw new WebinyError(\n `Field \"${field.id}\" is in more than one layout cell.`,\n \"DUPLICATE_FIELD_IN_LAYOUT\",\n {\n model,\n field\n }\n );\n }\n throw new WebinyError(\n `Missing field \"${field.id}\" in layout.`,\n \"MISSING_FIELD_IN_LAYOUT\",\n {\n model,\n field\n }\n );\n }\n }\n}\n\n/**\n * IMPORTANT! This function should NOT be used outside the `api-headless-cms` package!\n * @internal\n */\nexport const createModelPlugin = (\n model: CmsModelInput,\n options?: CmsModelPluginOptions\n): CmsModelPlugin => {\n return new CmsModelPlugin(model, options);\n};\n\n/**\n * IMPORTANT! This function should NOT be used outside the `api-headless-cms` package!\n * @internal\n */\nexport const createPrivateModelPlugin = (\n input: Omit<CmsPrivateModelFull, \"group\" | \"isPrivate\">\n): CmsModelPlugin => {\n return createModelPlugin(\n {\n authorization: false,\n noValidate: true,\n isPrivate: true,\n group: \"private\",\n ...input\n },\n {\n validateLayout: false\n }\n );\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,6 @@
1
1
  export * from "./CmsGroupPlugin.js";
2
2
  export * from "./CmsModelPlugin.js";
3
- export * from "./StorageTransformPlugin.js";
4
3
  export * from "./CmsParametersPlugin.js";
5
4
  export * from "./CmsModelFieldConverterPlugin.js";
6
5
  export * from "./CmsGraphQLSchemaPlugin/index.js";
7
- export * from "./CmsGraphQLSchemaSorterPlugin.js";
8
6
  export * from "./StorageOperationsCmsModelPlugin.js";
package/plugins/index.js CHANGED
@@ -1,10 +1,8 @@
1
1
  export * from "./CmsGroupPlugin.js";
2
2
  export * from "./CmsModelPlugin.js";
3
- export * from "./StorageTransformPlugin.js";
4
3
  export * from "./CmsParametersPlugin.js";
5
4
  export * from "./CmsModelFieldConverterPlugin.js";
6
5
  export * from "./CmsGraphQLSchemaPlugin/index.js";
7
- export * from "./CmsGraphQLSchemaSorterPlugin.js";
8
6
  export * from "./StorageOperationsCmsModelPlugin.js";
9
7
 
10
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./CmsGroupPlugin.js\";\nexport * from \"./CmsModelPlugin.js\";\nexport * from \"./StorageTransformPlugin.js\";\nexport * from \"./CmsParametersPlugin.js\";\nexport * from \"./CmsModelFieldConverterPlugin.js\";\nexport * from \"./CmsGraphQLSchemaPlugin/index.js\";\nexport * from \"./CmsGraphQLSchemaSorterPlugin.js\";\nexport * from \"./StorageOperationsCmsModelPlugin.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./CmsGroupPlugin.js\";\nexport * from \"./CmsModelPlugin.js\";\nexport * from \"./CmsParametersPlugin.js\";\nexport * from \"./CmsModelFieldConverterPlugin.js\";\nexport * from \"./CmsGraphQLSchemaPlugin/index.js\";\nexport * from \"./StorageOperationsCmsModelPlugin.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -1,4 +1,3 @@
1
- import type { ContentEntryTraverser } from "../utils/contentEntryTraverser/ContentEntryTraverser.js";
2
1
  import type { CmsDeleteEntryOptions, CmsEntry, CmsEntryGetParams, CmsEntryListParams, CmsEntryMeta, CmsEntryUniqueValue, CmsEntryValidateResponse, CmsEntryValues, CreateCmsEntryInput, CreateCmsEntryOptionsInput, CreateFromCmsEntryInput, CreateRevisionCmsEntryOptionsInput, DeleteMultipleEntriesParams, DeleteMultipleEntriesResponse, GetUniqueFieldValuesParams, UpdateCmsEntryInput, UpdateCmsEntryOptionsInput } from "./types.js";
3
2
  import type { CmsModel } from "./model.js";
4
3
  import type { GenericRecord } from "@webiny/api/types.js";
@@ -9,10 +8,6 @@ import type { GenericRecord } from "@webiny/api/types.js";
9
8
  * @category CmsEntry
10
9
  */
11
10
  export interface CmsEntryContext {
12
- /**
13
- * Get content entry traverser.
14
- */
15
- getEntryTraverser: (modelId: string) => Promise<ContentEntryTraverser>;
16
11
  /**
17
12
  * Get a single content entry for a model.
18
13
  */
@@ -61,6 +56,11 @@ export interface CmsEntryContext {
61
56
  * Update existing entry.
62
57
  */
63
58
  updateEntry: <TInput extends CmsEntryValues = CmsEntryValues>(model: CmsModel, id: string, input: UpdateCmsEntryInput<TInput>, meta?: GenericRecord, options?: UpdateCmsEntryOptionsInput) => Promise<CmsEntry<TInput>>;
59
+ /**
60
+ * Update entry revision description.
61
+ * It does not matter if the entry is published/unpublished or any other state.
62
+ */
63
+ updateRevisionDescription: <T extends CmsEntryValues = CmsEntryValues>(model: CmsModel, id: string, revisionDescription: string | undefined) => Promise<CmsEntry<T>>;
64
64
  /**
65
65
  * Validate the entry - either new one or existing one.
66
66
  */
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["context.ts"],"sourcesContent":["import type { ContentEntryTraverser } from \"~/utils/contentEntryTraverser/ContentEntryTraverser.js\";\nimport type {\n CmsDeleteEntryOptions,\n CmsEntry,\n CmsEntryGetParams,\n CmsEntryListParams,\n CmsEntryMeta,\n CmsEntryUniqueValue,\n CmsEntryValidateResponse,\n CmsEntryValues,\n CreateCmsEntryInput,\n CreateCmsEntryOptionsInput,\n CreateFromCmsEntryInput,\n CreateRevisionCmsEntryOptionsInput,\n DeleteMultipleEntriesParams,\n DeleteMultipleEntriesResponse,\n GetUniqueFieldValuesParams,\n UpdateCmsEntryInput,\n UpdateCmsEntryOptionsInput\n} from \"./types.js\";\nimport type { CmsModel } from \"./model.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\n/**\n * Cms Entry CRUD methods in the context.\n *\n * @category Context\n * @category CmsEntry\n */\nexport interface CmsEntryContext {\n /**\n * Get content entry traverser.\n */\n getEntryTraverser: (modelId: string) => Promise<ContentEntryTraverser>;\n /**\n * Get a single content entry for a model.\n */\n getEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryGetParams\n ) => Promise<CmsEntry<T>>;\n /**\n * Get a list of entries for a model by a given ID (revision).\n */\n getEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n revisions: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * Get the entry for a model by a given ID.\n */\n getEntryById<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n revision: string\n ): Promise<CmsEntry<T>>;\n /**\n * List entries for a model. Internal method used by get, listLatest and listPublished.\n */\n listEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * Lists the latest entries. Used for manage API.\n */\n listLatestEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * List published entries. Used for read API.\n */\n listPublishedEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * Lists the deleted entries. Used for manage API.\n */\n listDeletedEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * List published entries by IDs.\n */\n getPublishedEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n ids: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * List latest entries by IDs.\n */\n getLatestEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n ids: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * Create a new content entry.\n */\n createEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n input: CreateCmsEntryInput<T>,\n options?: CreateCmsEntryOptionsInput\n ) => Promise<CmsEntry<T>>;\n /**\n * Create a new entry from already existing entry.\n */\n createEntryRevisionFrom: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: CreateFromCmsEntryInput<T>,\n options?: CreateRevisionCmsEntryOptionsInput\n ) => Promise<CmsEntry<T>>;\n /**\n * Update existing entry.\n */\n updateEntry: <TInput extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: UpdateCmsEntryInput<TInput>,\n meta?: GenericRecord,\n options?: UpdateCmsEntryOptionsInput\n ) => Promise<CmsEntry<TInput>>;\n /**\n * Validate the entry - either new one or existing one.\n */\n validateEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: UpdateCmsEntryInput<T>\n ) => Promise<CmsEntryValidateResponse>;\n /**\n * Move entry, and all its revisions, to a new folder.\n */\n moveEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n folderId: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Method that republishes entry with given identifier.\n * @internal\n */\n republishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Delete only a certain revision of the entry.\n */\n deleteEntryRevision: (model: CmsModel, id: string) => Promise<void>;\n /**\n * Delete entry with all its revisions.\n */\n deleteEntry: (model: CmsModel, id: string, options?: CmsDeleteEntryOptions) => Promise<void>;\n /**\n * Restore entry from trash bin with all its revisions.\n */\n restoreEntryFromBin: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Delete multiple entries\n */\n deleteMultipleEntries: (\n model: CmsModel,\n params: DeleteMultipleEntriesParams\n ) => Promise<DeleteMultipleEntriesResponse>;\n /**\n * Publish entry.\n */\n publishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Unpublish entry.\n */\n unpublishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Get all entry revisions.\n */\n getEntryRevisions: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>[]>;\n /**\n * List all unique values for a given field.\n *\n * @internal\n */\n getUniqueFieldValues: (\n model: CmsModel,\n params: GetUniqueFieldValuesParams\n ) => Promise<CmsEntryUniqueValue[]>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["context.ts"],"sourcesContent":["import type {\n CmsDeleteEntryOptions,\n CmsEntry,\n CmsEntryGetParams,\n CmsEntryListParams,\n CmsEntryMeta,\n CmsEntryUniqueValue,\n CmsEntryValidateResponse,\n CmsEntryValues,\n CreateCmsEntryInput,\n CreateCmsEntryOptionsInput,\n CreateFromCmsEntryInput,\n CreateRevisionCmsEntryOptionsInput,\n DeleteMultipleEntriesParams,\n DeleteMultipleEntriesResponse,\n GetUniqueFieldValuesParams,\n UpdateCmsEntryInput,\n UpdateCmsEntryOptionsInput\n} from \"./types.js\";\nimport type { CmsModel } from \"./model.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\n\n/**\n * Cms Entry CRUD methods in the context.\n *\n * @category Context\n * @category CmsEntry\n */\nexport interface CmsEntryContext {\n /**\n * Get a single content entry for a model.\n */\n getEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryGetParams\n ) => Promise<CmsEntry<T>>;\n /**\n * Get a list of entries for a model by a given ID (revision).\n */\n getEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n revisions: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * Get the entry for a model by a given ID.\n */\n getEntryById<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n revision: string\n ): Promise<CmsEntry<T>>;\n /**\n * List entries for a model. Internal method used by get, listLatest and listPublished.\n */\n listEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * Lists the latest entries. Used for manage API.\n */\n listLatestEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * List published entries. Used for read API.\n */\n listPublishedEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * Lists the deleted entries. Used for manage API.\n */\n listDeletedEntries: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ) => Promise<[CmsEntry<T>[], CmsEntryMeta]>;\n /**\n * List published entries by IDs.\n */\n getPublishedEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n ids: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * List latest entries by IDs.\n */\n getLatestEntriesByIds: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n ids: string[]\n ) => Promise<CmsEntry<T>[]>;\n /**\n * Create a new content entry.\n */\n createEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n input: CreateCmsEntryInput<T>,\n options?: CreateCmsEntryOptionsInput\n ) => Promise<CmsEntry<T>>;\n /**\n * Create a new entry from already existing entry.\n */\n createEntryRevisionFrom: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: CreateFromCmsEntryInput<T>,\n options?: CreateRevisionCmsEntryOptionsInput\n ) => Promise<CmsEntry<T>>;\n /**\n * Update existing entry.\n */\n updateEntry: <TInput extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: UpdateCmsEntryInput<TInput>,\n meta?: GenericRecord,\n options?: UpdateCmsEntryOptionsInput\n ) => Promise<CmsEntry<TInput>>;\n /**\n * Update entry revision description.\n * It does not matter if the entry is published/unpublished or any other state.\n */\n updateRevisionDescription: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n revisionDescription: string | undefined\n ) => Promise<CmsEntry<T>>;\n /**\n * Validate the entry - either new one or existing one.\n */\n validateEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n input: UpdateCmsEntryInput<T>\n ) => Promise<CmsEntryValidateResponse>;\n /**\n * Move entry, and all its revisions, to a new folder.\n */\n moveEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string,\n folderId: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Method that republishes entry with given identifier.\n * @internal\n */\n republishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Delete only a certain revision of the entry.\n */\n deleteEntryRevision: (model: CmsModel, id: string) => Promise<void>;\n /**\n * Delete entry with all its revisions.\n */\n deleteEntry: (model: CmsModel, id: string, options?: CmsDeleteEntryOptions) => Promise<void>;\n /**\n * Restore entry from trash bin with all its revisions.\n */\n restoreEntryFromBin: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Delete multiple entries\n */\n deleteMultipleEntries: (\n model: CmsModel,\n params: DeleteMultipleEntriesParams\n ) => Promise<DeleteMultipleEntriesResponse>;\n /**\n * Publish entry.\n */\n publishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Unpublish entry.\n */\n unpublishEntry: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>>;\n /**\n * Get all entry revisions.\n */\n getEntryRevisions: <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => Promise<CmsEntry<T>[]>;\n /**\n * List all unique values for a given field.\n *\n * @internal\n */\n getUniqueFieldValues: (\n model: CmsModel,\n params: GetUniqueFieldValuesParams\n ) => Promise<CmsEntryUniqueValue[]>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,4 +1,5 @@
1
1
  import type { CmsModelField } from "../modelField.js";
2
+ import type { CmsModelLayout } from "../../types/index.js";
2
3
  /**
3
4
  * A definition for object field to show possible type of the field in settings.
4
5
  */
@@ -8,6 +9,7 @@ export interface CmsModelObjectField extends CmsModelField {
8
9
  */
9
10
  settings: {
10
11
  fields: CmsModelField[];
12
+ layout?: CmsModelLayout;
11
13
  parents?: string[];
12
14
  };
13
15
  }
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["objectField.ts"],"sourcesContent":["import type { CmsModelField } from \"../modelField.js\";\n\n/**\n * A definition for object field to show possible type of the field in settings.\n */\nexport interface CmsModelObjectField extends CmsModelField {\n /**\n * Settings object for the field. Contains `templates` property.\n */\n settings: {\n fields: CmsModelField[];\n parents?: string[];\n };\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["objectField.ts"],"sourcesContent":["import type { CmsModelField } from \"../modelField.js\";\nimport type { CmsModelLayout } from \"~/types/index.js\";\n\n/**\n * A definition for object field to show possible type of the field in settings.\n */\nexport interface CmsModelObjectField extends CmsModelField {\n /**\n * Settings object for the field. Contains `templates` property.\n */\n settings: {\n fields: CmsModelField[];\n layout?: CmsModelLayout;\n parents?: string[];\n };\n}\n"],"mappings":"","ignoreList":[]}