@webiny/api-headless-cms 0.0.0-mt-2 → 0.0.0-unstable.06b2ede40f

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 (1157) hide show
  1. package/constants.d.ts +44 -0
  2. package/constants.js +70 -0
  3. package/constants.js.map +1 -0
  4. package/context.d.ts +6 -0
  5. package/context.js +164 -0
  6. package/context.js.map +1 -0
  7. package/crud/AccessControl/AccessControl.d.ts +98 -0
  8. package/crud/AccessControl/AccessControl.js +542 -0
  9. package/crud/AccessControl/AccessControl.js.map +1 -0
  10. package/crud/AccessControl/README.md +47 -0
  11. package/crud/AccessControl/groups-own.png +0 -0
  12. package/crud/AccessControl/models-own.png +0 -0
  13. package/crud/contentEntry/abstractions/IDeleteEntry.d.ts +4 -0
  14. package/crud/contentEntry/abstractions/IDeleteEntry.js +7 -0
  15. package/crud/contentEntry/abstractions/IDeleteEntry.js.map +1 -0
  16. package/crud/contentEntry/abstractions/IDeleteEntryOperation.d.ts +4 -0
  17. package/crud/contentEntry/abstractions/IDeleteEntryOperation.js +7 -0
  18. package/crud/contentEntry/abstractions/IDeleteEntryOperation.js.map +1 -0
  19. package/crud/contentEntry/abstractions/IGetEntriesByIds.d.ts +4 -0
  20. package/crud/contentEntry/abstractions/IGetEntriesByIds.js +7 -0
  21. package/crud/contentEntry/abstractions/IGetEntriesByIds.js.map +1 -0
  22. package/crud/contentEntry/abstractions/IGetEntry.d.ts +4 -0
  23. package/crud/contentEntry/abstractions/IGetEntry.js +7 -0
  24. package/crud/contentEntry/abstractions/IGetEntry.js.map +1 -0
  25. package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.d.ts +4 -0
  26. package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.js +7 -0
  27. package/crud/contentEntry/abstractions/IGetLatestEntriesByIds.js.map +1 -0
  28. package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.d.ts +4 -0
  29. package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.js +7 -0
  30. package/crud/contentEntry/abstractions/IGetLatestRevisionByEntryId.js.map +1 -0
  31. package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.d.ts +4 -0
  32. package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.js +7 -0
  33. package/crud/contentEntry/abstractions/IGetPreviousRevisionByEntryId.js.map +1 -0
  34. package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.d.ts +4 -0
  35. package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.js +7 -0
  36. package/crud/contentEntry/abstractions/IGetPublishedEntriesByIds.js.map +1 -0
  37. package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.d.ts +4 -0
  38. package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.js +7 -0
  39. package/crud/contentEntry/abstractions/IGetPublishedRevisionByEntryId.js.map +1 -0
  40. package/crud/contentEntry/abstractions/IGetRevisionById.d.ts +4 -0
  41. package/crud/contentEntry/abstractions/IGetRevisionById.js +7 -0
  42. package/crud/contentEntry/abstractions/IGetRevisionById.js.map +1 -0
  43. package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.d.ts +4 -0
  44. package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.js +7 -0
  45. package/crud/contentEntry/abstractions/IGetRevisionsByEntryId.js.map +1 -0
  46. package/crud/contentEntry/abstractions/IListEntries.d.ts +4 -0
  47. package/crud/contentEntry/abstractions/IListEntries.js +7 -0
  48. package/crud/contentEntry/abstractions/IListEntries.js.map +1 -0
  49. package/crud/contentEntry/abstractions/IListEntriesOperation.d.ts +4 -0
  50. package/crud/contentEntry/abstractions/IListEntriesOperation.js +7 -0
  51. package/crud/contentEntry/abstractions/IListEntriesOperation.js.map +1 -0
  52. package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.d.ts +4 -0
  53. package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.js +7 -0
  54. package/crud/contentEntry/abstractions/IMoveEntryToBinOperation.js.map +1 -0
  55. package/crud/contentEntry/abstractions/IRestoreEntryFromBin.d.ts +4 -0
  56. package/crud/contentEntry/abstractions/IRestoreEntryFromBin.js +7 -0
  57. package/crud/contentEntry/abstractions/IRestoreEntryFromBin.js.map +1 -0
  58. package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.d.ts +4 -0
  59. package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.js +7 -0
  60. package/crud/contentEntry/abstractions/IRestoreEntryFromBinOperation.js.map +1 -0
  61. package/crud/contentEntry/abstractions/index.d.ts +16 -0
  62. package/crud/contentEntry/abstractions/index.js +183 -0
  63. package/crud/contentEntry/abstractions/index.js.map +1 -0
  64. package/crud/contentEntry/afterDelete.d.ts +12 -0
  65. package/crud/contentEntry/afterDelete.js +52 -0
  66. package/crud/contentEntry/afterDelete.js.map +1 -0
  67. package/crud/contentEntry/beforeCreate.d.ts +8 -0
  68. package/crud/contentEntry/beforeCreate.js +27 -0
  69. package/crud/contentEntry/beforeCreate.js.map +1 -0
  70. package/crud/contentEntry/beforeUpdate.d.ts +8 -0
  71. package/crud/contentEntry/beforeUpdate.js +27 -0
  72. package/crud/contentEntry/beforeUpdate.js.map +1 -0
  73. package/crud/contentEntry/entryDataFactories/createEntryData.d.ts +20 -0
  74. package/crud/contentEntry/entryDataFactories/createEntryData.js +254 -0
  75. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -0
  76. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.d.ts +23 -0
  77. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +157 -0
  78. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -0
  79. package/crud/contentEntry/entryDataFactories/createPublishEntryData.d.ts +13 -0
  80. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js +63 -0
  81. package/crud/contentEntry/entryDataFactories/createPublishEntryData.js.map +1 -0
  82. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.d.ts +12 -0
  83. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js +59 -0
  84. package/crud/contentEntry/entryDataFactories/createRepublishEntryData.js.map +1 -0
  85. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.d.ts +12 -0
  86. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js +40 -0
  87. package/crud/contentEntry/entryDataFactories/createUnpublishEntryData.js.map +1 -0
  88. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.d.ts +20 -0
  89. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js +130 -0
  90. package/crud/contentEntry/entryDataFactories/createUpdateEntryData.js.map +1 -0
  91. package/crud/contentEntry/entryDataFactories/index.d.ts +8 -0
  92. package/crud/contentEntry/entryDataFactories/index.js +95 -0
  93. package/crud/contentEntry/entryDataFactories/index.js.map +1 -0
  94. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.d.ts +5 -0
  95. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js +36 -0
  96. package/crud/contentEntry/entryDataFactories/mapAndCleanUpdatedInputData.js.map +1 -0
  97. package/crud/contentEntry/entryDataFactories/statuses.d.ts +4 -0
  98. package/crud/contentEntry/entryDataFactories/statuses.js +12 -0
  99. package/crud/contentEntry/entryDataFactories/statuses.js.map +1 -0
  100. package/crud/contentEntry/entryDataValidation.d.ts +12 -0
  101. package/crud/contentEntry/entryDataValidation.js +339 -0
  102. package/crud/contentEntry/entryDataValidation.js.map +1 -0
  103. package/crud/contentEntry/markLockedFields.d.ts +13 -0
  104. package/crud/contentEntry/markLockedFields.js +110 -0
  105. package/crud/contentEntry/markLockedFields.js.map +1 -0
  106. package/crud/contentEntry/referenceFieldsMapping.d.ts +19 -0
  107. package/crud/contentEntry/referenceFieldsMapping.js +288 -0
  108. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -0
  109. package/crud/contentEntry/searchableFields.d.ts +9 -0
  110. package/crud/contentEntry/searchableFields.js +73 -0
  111. package/crud/contentEntry/searchableFields.js.map +1 -0
  112. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.d.ts +10 -0
  113. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.js +58 -0
  114. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntry.js.map +1 -0
  115. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.d.ts +7 -0
  116. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.js +17 -0
  117. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperation.js.map +1 -0
  118. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.d.ts +9 -0
  119. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.js +45 -0
  120. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntryOperationWithEvents.js.map +1 -0
  121. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.d.ts +9 -0
  122. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.js +22 -0
  123. package/crud/contentEntry/useCases/DeleteEntry/DeleteEntrySecure.js.map +1 -0
  124. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.d.ts +10 -0
  125. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.js +33 -0
  126. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBin.js.map +1 -0
  127. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.d.ts +7 -0
  128. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.js +17 -0
  129. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperation.js.map +1 -0
  130. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.d.ts +9 -0
  131. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.js +45 -0
  132. package/crud/contentEntry/useCases/DeleteEntry/MoveEntryToBinOperationWithEvents.js.map +1 -0
  133. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.d.ts +6 -0
  134. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.js +21 -0
  135. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryDelete.js.map +1 -0
  136. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.d.ts +9 -0
  137. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js +54 -0
  138. package/crud/contentEntry/useCases/DeleteEntry/TransformEntryMoveToBin.js.map +1 -0
  139. package/crud/contentEntry/useCases/DeleteEntry/index.d.ts +28 -0
  140. package/crud/contentEntry/useCases/DeleteEntry/index.js +42 -0
  141. package/crud/contentEntry/useCases/DeleteEntry/index.js.map +1 -0
  142. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.d.ts +9 -0
  143. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.js +21 -0
  144. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIds.js.map +1 -0
  145. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.d.ts +7 -0
  146. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.js +18 -0
  147. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsNotDeleted.js.map +1 -0
  148. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.d.ts +9 -0
  149. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.js +28 -0
  150. package/crud/contentEntry/useCases/GetEntriesByIds/GetEntriesByIdsSecure.js.map +1 -0
  151. package/crud/contentEntry/useCases/GetEntriesByIds/index.d.ts +13 -0
  152. package/crud/contentEntry/useCases/GetEntriesByIds/index.js +20 -0
  153. package/crud/contentEntry/useCases/GetEntriesByIds/index.js.map +1 -0
  154. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.d.ts +9 -0
  155. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.js +21 -0
  156. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIds.js.map +1 -0
  157. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.d.ts +7 -0
  158. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.js +18 -0
  159. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsNotDeleted.js.map +1 -0
  160. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.d.ts +9 -0
  161. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.js +28 -0
  162. package/crud/contentEntry/useCases/GetLatestEntriesByIds/GetLatestEntriesByIdsSecure.js.map +1 -0
  163. package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.d.ts +13 -0
  164. package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.js +20 -0
  165. package/crud/contentEntry/useCases/GetLatestEntriesByIds/index.js.map +1 -0
  166. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.d.ts +9 -0
  167. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.js +22 -0
  168. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryId.js.map +1 -0
  169. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.d.ts +7 -0
  170. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.js +21 -0
  171. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdDeleted.js.map +1 -0
  172. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.d.ts +7 -0
  173. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.js +21 -0
  174. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/GetLatestRevisionByEntryIdNotDeleted.js.map +1 -0
  175. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.d.ts +15 -0
  176. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.js +22 -0
  177. package/crud/contentEntry/useCases/GetLatestRevisionByEntryId/index.js.map +1 -0
  178. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.d.ts +9 -0
  179. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.js +22 -0
  180. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryId.js.map +1 -0
  181. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.d.ts +7 -0
  182. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.js +21 -0
  183. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/GetPreviousRevisionByEntryIdNotDeleted.js.map +1 -0
  184. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.d.ts +11 -0
  185. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.js +18 -0
  186. package/crud/contentEntry/useCases/GetPreviousRevisionByEntryId/index.js.map +1 -0
  187. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.d.ts +9 -0
  188. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.js +21 -0
  189. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIds.js.map +1 -0
  190. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.d.ts +7 -0
  191. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.js +18 -0
  192. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsNotDeleted.js.map +1 -0
  193. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.d.ts +9 -0
  194. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.js +28 -0
  195. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/GetPublishedEntriesByIdsSecure.js.map +1 -0
  196. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.d.ts +13 -0
  197. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.js +20 -0
  198. package/crud/contentEntry/useCases/GetPublishedEntriesByIds/index.js.map +1 -0
  199. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.d.ts +9 -0
  200. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.js +22 -0
  201. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryId.js.map +1 -0
  202. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.d.ts +7 -0
  203. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.js +21 -0
  204. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/GetPublishedRevisionByEntryIdNotDeleted.js.map +1 -0
  205. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.d.ts +11 -0
  206. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.js +18 -0
  207. package/crud/contentEntry/useCases/GetPublishedRevisionByEntryId/index.js.map +1 -0
  208. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.d.ts +9 -0
  209. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.js +22 -0
  210. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionById.js.map +1 -0
  211. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.d.ts +7 -0
  212. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.js +21 -0
  213. package/crud/contentEntry/useCases/GetRevisionById/GetRevisionByIdNotDeleted.js.map +1 -0
  214. package/crud/contentEntry/useCases/GetRevisionById/index.d.ts +11 -0
  215. package/crud/contentEntry/useCases/GetRevisionById/index.js +18 -0
  216. package/crud/contentEntry/useCases/GetRevisionById/index.js.map +1 -0
  217. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.d.ts +9 -0
  218. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.js +21 -0
  219. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryId.js.map +1 -0
  220. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.d.ts +7 -0
  221. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.js +18 -0
  222. package/crud/contentEntry/useCases/GetRevisionsByEntryId/GetRevisionsByEntryIdNotDeleted.js.map +1 -0
  223. package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.d.ts +13 -0
  224. package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.js +18 -0
  225. package/crud/contentEntry/useCases/GetRevisionsByEntryId/index.js.map +1 -0
  226. package/crud/contentEntry/useCases/ListEntries/GetEntry.d.ts +7 -0
  227. package/crud/contentEntry/useCases/ListEntries/GetEntry.js +29 -0
  228. package/crud/contentEntry/useCases/ListEntries/GetEntry.js.map +1 -0
  229. package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.d.ts +11 -0
  230. package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.js +38 -0
  231. package/crud/contentEntry/useCases/ListEntries/GetEntrySecure.js.map +1 -0
  232. package/crud/contentEntry/useCases/ListEntries/ListEntries.d.ts +7 -0
  233. package/crud/contentEntry/useCases/ListEntries/ListEntries.js +62 -0
  234. package/crud/contentEntry/useCases/ListEntries/ListEntries.js.map +1 -0
  235. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.d.ts +14 -0
  236. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.js +24 -0
  237. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperation.js.map +1 -0
  238. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.d.ts +7 -0
  239. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.js +24 -0
  240. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationDeleted.js.map +1 -0
  241. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.d.ts +7 -0
  242. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.js +25 -0
  243. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationLatest.js.map +1 -0
  244. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.d.ts +7 -0
  245. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.js +24 -0
  246. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationNotDeleted.js.map +1 -0
  247. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.d.ts +7 -0
  248. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.js +24 -0
  249. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationPublished.js.map +1 -0
  250. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.d.ts +9 -0
  251. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.js +22 -0
  252. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithEvents.js.map +1 -0
  253. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.d.ts +8 -0
  254. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.js +27 -0
  255. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSearchableFields.js.map +1 -0
  256. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.d.ts +8 -0
  257. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.js +26 -0
  258. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithSort.js.map +1 -0
  259. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.d.ts +7 -0
  260. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.js +36 -0
  261. package/crud/contentEntry/useCases/ListEntries/ListEntriesOperationWithStatusCheck.js.map +1 -0
  262. package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.d.ts +11 -0
  263. package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.js +41 -0
  264. package/crud/contentEntry/useCases/ListEntries/ListEntriesSecure.js.map +1 -0
  265. package/crud/contentEntry/useCases/ListEntries/index.d.ts +26 -0
  266. package/crud/contentEntry/useCases/ListEntries/index.js +61 -0
  267. package/crud/contentEntry/useCases/ListEntries/index.js.map +1 -0
  268. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.d.ts +10 -0
  269. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.js +37 -0
  270. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBin.js.map +1 -0
  271. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.d.ts +9 -0
  272. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.js +19 -0
  273. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperation.js.map +1 -0
  274. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.d.ts +9 -0
  275. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.js +42 -0
  276. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinOperationWithEvents.js.map +1 -0
  277. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.d.ts +9 -0
  278. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.js +22 -0
  279. package/crud/contentEntry/useCases/RestoreEntryFromBin/RestoreEntryFromBinSecure.js.map +1 -0
  280. package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.d.ts +9 -0
  281. package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js +53 -0
  282. package/crud/contentEntry/useCases/RestoreEntryFromBin/TransformEntryRestoreFromBin.js.map +1 -0
  283. package/crud/contentEntry/useCases/RestoreEntryFromBin/index.d.ts +25 -0
  284. package/crud/contentEntry/useCases/RestoreEntryFromBin/index.js +24 -0
  285. package/crud/contentEntry/useCases/RestoreEntryFromBin/index.js.map +1 -0
  286. package/crud/contentEntry/useCases/index.d.ts +11 -0
  287. package/crud/contentEntry/useCases/index.js +128 -0
  288. package/crud/contentEntry/useCases/index.js.map +1 -0
  289. package/crud/contentEntry.crud.d.ts +15 -0
  290. package/crud/contentEntry.crud.js +1253 -0
  291. package/crud/contentEntry.crud.js.map +1 -0
  292. package/crud/contentModel/beforeCreate.d.ts +14 -0
  293. package/crud/contentModel/beforeCreate.js +130 -0
  294. package/crud/contentModel/beforeCreate.js.map +1 -0
  295. package/crud/contentModel/beforeDelete.d.ts +8 -0
  296. package/crud/contentModel/beforeDelete.js +82 -0
  297. package/crud/contentModel/beforeDelete.js.map +1 -0
  298. package/crud/contentModel/beforeUpdate.d.ts +8 -0
  299. package/crud/contentModel/beforeUpdate.js +57 -0
  300. package/crud/contentModel/beforeUpdate.js.map +1 -0
  301. package/crud/contentModel/compatibility/modelApiName.d.ts +3 -0
  302. package/crud/contentModel/compatibility/modelApiName.js +26 -0
  303. package/crud/contentModel/compatibility/modelApiName.js.map +1 -0
  304. package/crud/contentModel/contentModelManagerFactory.d.ts +2 -0
  305. package/crud/contentModel/contentModelManagerFactory.js +24 -0
  306. package/crud/contentModel/contentModelManagerFactory.js.map +1 -0
  307. package/crud/contentModel/createFieldStorageId.d.ts +2 -0
  308. package/crud/contentModel/createFieldStorageId.js +19 -0
  309. package/crud/contentModel/createFieldStorageId.js.map +1 -0
  310. package/crud/contentModel/defaultFields.d.ts +5 -0
  311. package/crud/contentModel/defaultFields.js +60 -0
  312. package/crud/contentModel/defaultFields.js.map +1 -0
  313. package/crud/contentModel/ensureTypeTag.d.ts +5 -0
  314. package/crud/contentModel/ensureTypeTag.js +21 -0
  315. package/crud/contentModel/ensureTypeTag.js.map +1 -0
  316. package/crud/contentModel/fields/descriptionField.d.ts +6 -0
  317. package/crud/contentModel/fields/descriptionField.js +30 -0
  318. package/crud/contentModel/fields/descriptionField.js.map +1 -0
  319. package/crud/contentModel/fields/getApplicableFieldById.d.ts +2 -0
  320. package/crud/contentModel/fields/getApplicableFieldById.js +15 -0
  321. package/crud/contentModel/fields/getApplicableFieldById.js.map +1 -0
  322. package/crud/contentModel/fields/imageField.d.ts +2 -0
  323. package/crud/contentModel/fields/imageField.js +25 -0
  324. package/crud/contentModel/fields/imageField.js.map +1 -0
  325. package/crud/contentModel/fields/titleField.d.ts +6 -0
  326. package/crud/contentModel/fields/titleField.js +31 -0
  327. package/crud/contentModel/fields/titleField.js.map +1 -0
  328. package/crud/contentModel/listModelsFromDatabase.d.ts +10 -0
  329. package/crud/contentModel/listModelsFromDatabase.js +38 -0
  330. package/crud/contentModel/listModelsFromDatabase.js.map +1 -0
  331. package/crud/contentModel/validate/endingAllowed.d.ts +6 -0
  332. package/crud/contentModel/validate/endingAllowed.js +28 -0
  333. package/crud/contentModel/validate/endingAllowed.js.map +1 -0
  334. package/crud/contentModel/validate/isModelEndingAllowed.d.ts +6 -0
  335. package/crud/contentModel/validate/isModelEndingAllowed.js +25 -0
  336. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -0
  337. package/crud/contentModel/validate/modelId.d.ts +11 -0
  338. package/crud/contentModel/validate/modelId.js +38 -0
  339. package/crud/contentModel/validate/modelId.js.map +1 -0
  340. package/crud/contentModel/validate/pluralApiName.d.ts +7 -0
  341. package/crud/contentModel/validate/pluralApiName.js +26 -0
  342. package/crud/contentModel/validate/pluralApiName.js.map +1 -0
  343. package/crud/contentModel/validate/singularApiName.d.ts +7 -0
  344. package/crud/contentModel/validate/singularApiName.js +26 -0
  345. package/crud/contentModel/validate/singularApiName.js.map +1 -0
  346. package/crud/contentModel/validateModel.d.ts +9 -0
  347. package/crud/contentModel/validateModel.js +29 -0
  348. package/crud/contentModel/validateModel.js.map +1 -0
  349. package/crud/contentModel/validateModelFields.d.ts +9 -0
  350. package/crud/contentModel/validateModelFields.js +343 -0
  351. package/crud/contentModel/validateModelFields.js.map +1 -0
  352. package/crud/contentModel/validateStorageId.d.ts +1 -0
  353. package/crud/contentModel/validateStorageId.js +19 -0
  354. package/crud/contentModel/validateStorageId.js.map +1 -0
  355. package/crud/contentModel/validation.d.ts +893 -0
  356. package/crud/contentModel/validation.js +205 -0
  357. package/crud/contentModel/validation.js.map +1 -0
  358. package/crud/contentModel.crud.d.ts +14 -0
  359. package/crud/contentModel.crud.js +620 -0
  360. package/crud/contentModel.crud.js.map +1 -0
  361. package/crud/contentModelGroup/beforeCreate.d.ts +10 -0
  362. package/crud/contentModelGroup/beforeCreate.js +68 -0
  363. package/crud/contentModelGroup/beforeCreate.js.map +1 -0
  364. package/crud/contentModelGroup/beforeDelete.d.ts +10 -0
  365. package/crud/contentModelGroup/beforeDelete.js +42 -0
  366. package/crud/contentModelGroup/beforeDelete.js.map +1 -0
  367. package/crud/contentModelGroup/beforeUpdate.d.ts +9 -0
  368. package/crud/contentModelGroup/beforeUpdate.js +25 -0
  369. package/crud/contentModelGroup/beforeUpdate.js.map +1 -0
  370. package/crud/contentModelGroup/listGroupsFromDatabase.d.ts +8 -0
  371. package/crud/contentModelGroup/listGroupsFromDatabase.js +22 -0
  372. package/crud/contentModelGroup/listGroupsFromDatabase.js.map +1 -0
  373. package/crud/contentModelGroup/validation.d.ts +33 -0
  374. package/crud/contentModelGroup/validation.js +37 -0
  375. package/crud/contentModelGroup/validation.js.map +1 -0
  376. package/crud/contentModelGroup.crud.d.ts +14 -0
  377. package/crud/contentModelGroup.crud.js +357 -0
  378. package/crud/contentModelGroup.crud.js.map +1 -0
  379. package/crud/system.crud.d.ts +13 -0
  380. package/crud/system.crud.js +133 -0
  381. package/crud/system.crud.js.map +1 -0
  382. package/export/crud/exporting.d.ts +3 -0
  383. package/export/crud/exporting.js +49 -0
  384. package/export/crud/exporting.js.map +1 -0
  385. package/export/crud/importing.d.ts +3 -0
  386. package/export/crud/importing.js +79 -0
  387. package/export/crud/importing.js.map +1 -0
  388. package/export/crud/imports/importData.d.ts +14 -0
  389. package/export/crud/imports/importData.js +52 -0
  390. package/export/crud/imports/importData.js.map +1 -0
  391. package/export/crud/imports/importGroups.d.ts +8 -0
  392. package/export/crud/imports/importGroups.js +104 -0
  393. package/export/crud/imports/importGroups.js.map +1 -0
  394. package/export/crud/imports/importModels.d.ts +8 -0
  395. package/export/crud/imports/importModels.js +136 -0
  396. package/export/crud/imports/importModels.js.map +1 -0
  397. package/export/crud/imports/validateGroups.d.ts +8 -0
  398. package/export/crud/imports/validateGroups.js +112 -0
  399. package/export/crud/imports/validateGroups.js.map +1 -0
  400. package/export/crud/imports/validateInput.d.ts +19 -0
  401. package/export/crud/imports/validateInput.js +55 -0
  402. package/export/crud/imports/validateInput.js.map +1 -0
  403. package/export/crud/imports/validateModels.d.ts +12 -0
  404. package/export/crud/imports/validateModels.js +203 -0
  405. package/export/crud/imports/validateModels.js.map +1 -0
  406. package/export/crud/index.d.ts +4 -0
  407. package/export/crud/index.js +15 -0
  408. package/export/crud/index.js.map +1 -0
  409. package/export/crud/sanitize.d.ts +4 -0
  410. package/export/crud/sanitize.js +36 -0
  411. package/export/crud/sanitize.js.map +1 -0
  412. package/export/graphql/index.d.ts +3 -0
  413. package/export/graphql/index.js +188 -0
  414. package/export/graphql/index.js.map +1 -0
  415. package/export/index.d.ts +2 -0
  416. package/export/index.js +29 -0
  417. package/export/index.js.map +1 -0
  418. package/export/types.d.ts +113 -0
  419. package/export/types.js +21 -0
  420. package/export/types.js.map +1 -0
  421. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.d.ts +9 -0
  422. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +50 -0
  423. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -0
  424. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +12 -0
  425. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +158 -0
  426. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  427. package/fieldConverters/CmsModelObjectFieldConverterPlugin.d.ts +12 -0
  428. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +260 -0
  429. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -0
  430. package/fieldConverters/index.d.ts +7 -0
  431. package/fieldConverters/index.js +19 -0
  432. package/fieldConverters/index.js.map +1 -0
  433. package/graphql/buildSchemaPlugins.d.ts +11 -0
  434. package/graphql/buildSchemaPlugins.js +25 -0
  435. package/graphql/buildSchemaPlugins.js.map +1 -0
  436. package/graphql/checkEndpointAccess.d.ts +2 -0
  437. package/graphql/checkEndpointAccess.js +20 -0
  438. package/graphql/checkEndpointAccess.js.map +1 -0
  439. package/graphql/createExecutableSchema.d.ts +6 -0
  440. package/graphql/createExecutableSchema.js +38 -0
  441. package/graphql/createExecutableSchema.js.map +1 -0
  442. package/graphql/createRequestBody.d.ts +2 -0
  443. package/graphql/createRequestBody.js +16 -0
  444. package/graphql/createRequestBody.js.map +1 -0
  445. package/graphql/formatErrorPayload.d.ts +1 -0
  446. package/graphql/formatErrorPayload.js +27 -0
  447. package/graphql/formatErrorPayload.js.map +1 -0
  448. package/graphql/generateSchema.d.ts +8 -0
  449. package/graphql/generateSchema.js +38 -0
  450. package/graphql/generateSchema.js.map +1 -0
  451. package/graphql/getSchema/generateCacheId.d.ts +10 -0
  452. package/graphql/getSchema/generateCacheId.js +17 -0
  453. package/graphql/getSchema/generateCacheId.js.map +1 -0
  454. package/graphql/getSchema/generateCacheKey.d.ts +10 -0
  455. package/graphql/getSchema/generateCacheKey.js +34 -0
  456. package/graphql/getSchema/generateCacheKey.js.map +1 -0
  457. package/graphql/getSchema.d.ts +16 -0
  458. package/graphql/getSchema.js +81 -0
  459. package/graphql/getSchema.js.map +1 -0
  460. package/graphql/graphQLHandlerFactory.d.ts +5 -0
  461. package/graphql/graphQLHandlerFactory.js +37 -0
  462. package/graphql/graphQLHandlerFactory.js.map +1 -0
  463. package/graphql/handleRequest.d.ts +11 -0
  464. package/graphql/handleRequest.js +86 -0
  465. package/graphql/handleRequest.js.map +1 -0
  466. package/graphql/index.d.ts +4 -0
  467. package/graphql/index.js +15 -0
  468. package/graphql/index.js.map +1 -0
  469. package/graphql/scalars/RevisionId.d.ts +2 -0
  470. package/graphql/scalars/RevisionId.js +26 -0
  471. package/graphql/scalars/RevisionId.js.map +1 -0
  472. package/graphql/scalars/RevisionIdScalarPlugin.d.ts +2 -0
  473. package/graphql/scalars/RevisionIdScalarPlugin.js +18 -0
  474. package/graphql/scalars/RevisionIdScalarPlugin.js.map +1 -0
  475. package/graphql/schema/baseContentSchema.d.ts +7 -0
  476. package/graphql/schema/baseContentSchema.js +61 -0
  477. package/graphql/schema/baseContentSchema.js.map +1 -0
  478. package/graphql/schema/baseSchema.d.ts +2 -0
  479. package/graphql/schema/baseSchema.js +153 -0
  480. package/graphql/schema/baseSchema.js.map +1 -0
  481. package/graphql/schema/contentEntries.d.ts +7 -0
  482. package/graphql/schema/contentEntries.js +399 -0
  483. package/graphql/schema/contentEntries.js.map +1 -0
  484. package/graphql/schema/contentModelGroups.d.ts +7 -0
  485. package/graphql/schema/contentModelGroups.js +162 -0
  486. package/graphql/schema/contentModelGroups.js.map +1 -0
  487. package/graphql/schema/contentModels.d.ts +6 -0
  488. package/graphql/schema/contentModels.js +333 -0
  489. package/graphql/schema/contentModels.js.map +1 -0
  490. package/graphql/schema/createFieldResolvers.d.ts +20 -0
  491. package/graphql/schema/createFieldResolvers.js +104 -0
  492. package/graphql/schema/createFieldResolvers.js.map +1 -0
  493. package/graphql/schema/createFieldTypePluginRecords.d.ts +3 -0
  494. package/graphql/schema/createFieldTypePluginRecords.js +15 -0
  495. package/graphql/schema/createFieldTypePluginRecords.js.map +1 -0
  496. package/graphql/schema/createManageResolvers.d.ts +11 -0
  497. package/graphql/schema/createManageResolvers.js +119 -0
  498. package/graphql/schema/createManageResolvers.js.map +1 -0
  499. package/graphql/schema/createManageSDL.d.ts +13 -0
  500. package/graphql/schema/createManageSDL.js +207 -0
  501. package/graphql/schema/createManageSDL.js.map +1 -0
  502. package/graphql/schema/createPreviewResolvers.d.ts +11 -0
  503. package/graphql/schema/createPreviewResolvers.js +42 -0
  504. package/graphql/schema/createPreviewResolvers.js.map +1 -0
  505. package/graphql/schema/createReadResolvers.d.ts +11 -0
  506. package/graphql/schema/createReadResolvers.js +47 -0
  507. package/graphql/schema/createReadResolvers.js.map +1 -0
  508. package/graphql/schema/createReadSDL.d.ts +13 -0
  509. package/graphql/schema/createReadSDL.js +110 -0
  510. package/graphql/schema/createReadSDL.js.map +1 -0
  511. package/graphql/schema/createSingularResolvers.d.ts +12 -0
  512. package/graphql/schema/createSingularResolvers.js +56 -0
  513. package/graphql/schema/createSingularResolvers.js.map +1 -0
  514. package/graphql/schema/createSingularSDL.d.ts +12 -0
  515. package/graphql/schema/createSingularSDL.js +95 -0
  516. package/graphql/schema/createSingularSDL.js.map +1 -0
  517. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.d.ts +7 -0
  518. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +59 -0
  519. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -0
  520. package/graphql/schema/resolvers/manage/resolveCreate.d.ts +8 -0
  521. package/graphql/schema/resolvers/manage/resolveCreate.js +20 -0
  522. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -0
  523. package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +9 -0
  524. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +20 -0
  525. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -0
  526. package/graphql/schema/resolvers/manage/resolveDelete.d.ts +8 -0
  527. package/graphql/schema/resolvers/manage/resolveDelete.js +39 -0
  528. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -0
  529. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.d.ts +7 -0
  530. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +22 -0
  531. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -0
  532. package/graphql/schema/resolvers/manage/resolveGet.d.ts +7 -0
  533. package/graphql/schema/resolvers/manage/resolveGet.js +70 -0
  534. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -0
  535. package/graphql/schema/resolvers/manage/resolveGetByIds.d.ts +7 -0
  536. package/graphql/schema/resolvers/manage/resolveGetByIds.js +20 -0
  537. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -0
  538. package/graphql/schema/resolvers/manage/resolveGetRevisions.d.ts +7 -0
  539. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +20 -0
  540. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -0
  541. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.d.ts +4 -0
  542. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +20 -0
  543. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -0
  544. package/graphql/schema/resolvers/manage/resolveList.d.ts +4 -0
  545. package/graphql/schema/resolvers/manage/resolveList.js +20 -0
  546. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -0
  547. package/graphql/schema/resolvers/manage/resolveListDeleted.d.ts +4 -0
  548. package/graphql/schema/resolvers/manage/resolveListDeleted.js +20 -0
  549. package/graphql/schema/resolvers/manage/resolveListDeleted.js.map +1 -0
  550. package/graphql/schema/resolvers/manage/resolveMove.d.ts +8 -0
  551. package/graphql/schema/resolvers/manage/resolveMove.js +27 -0
  552. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -0
  553. package/graphql/schema/resolvers/manage/resolvePublish.d.ts +7 -0
  554. package/graphql/schema/resolvers/manage/resolvePublish.js +20 -0
  555. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -0
  556. package/graphql/schema/resolvers/manage/resolveRepublish.d.ts +7 -0
  557. package/graphql/schema/resolvers/manage/resolveRepublish.js +20 -0
  558. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -0
  559. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.d.ts +7 -0
  560. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js +20 -0
  561. package/graphql/schema/resolvers/manage/resolveRestoreFromBin.js.map +1 -0
  562. package/graphql/schema/resolvers/manage/resolveUnpublish.d.ts +7 -0
  563. package/graphql/schema/resolvers/manage/resolveUnpublish.js +20 -0
  564. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -0
  565. package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +9 -0
  566. package/graphql/schema/resolvers/manage/resolveUpdate.js +20 -0
  567. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -0
  568. package/graphql/schema/resolvers/manage/resolveValidate.d.ts +8 -0
  569. package/graphql/schema/resolvers/manage/resolveValidate.js +20 -0
  570. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -0
  571. package/graphql/schema/resolvers/preview/resolveGet.d.ts +4 -0
  572. package/graphql/schema/resolvers/preview/resolveGet.js +27 -0
  573. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -0
  574. package/graphql/schema/resolvers/preview/resolveList.d.ts +4 -0
  575. package/graphql/schema/resolvers/preview/resolveList.js +20 -0
  576. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -0
  577. package/graphql/schema/resolvers/read/resolveGet.d.ts +4 -0
  578. package/graphql/schema/resolvers/read/resolveGet.js +27 -0
  579. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -0
  580. package/graphql/schema/resolvers/read/resolveList.d.ts +4 -0
  581. package/graphql/schema/resolvers/read/resolveList.js +20 -0
  582. package/graphql/schema/resolvers/read/resolveList.js.map +1 -0
  583. package/graphql/schema/resolvers/singular/resolveGet.d.ts +7 -0
  584. package/graphql/schema/resolvers/singular/resolveGet.js +21 -0
  585. package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -0
  586. package/graphql/schema/resolvers/singular/resolveUpdate.d.ts +8 -0
  587. package/graphql/schema/resolvers/singular/resolveUpdate.js +21 -0
  588. package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -0
  589. package/graphql/schema/schemaPlugins.d.ts +8 -0
  590. package/graphql/schema/schemaPlugins.js +123 -0
  591. package/graphql/schema/schemaPlugins.js.map +1 -0
  592. package/graphql/system.d.ts +3 -0
  593. package/graphql/system.js +80 -0
  594. package/graphql/system.js.map +1 -0
  595. package/graphqlFields/boolean.d.ts +2 -0
  596. package/graphqlFields/boolean.js +59 -0
  597. package/graphqlFields/boolean.js.map +1 -0
  598. package/graphqlFields/datetime.d.ts +2 -0
  599. package/graphqlFields/datetime.js +78 -0
  600. package/graphqlFields/datetime.js.map +1 -0
  601. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
  602. package/graphqlFields/dynamicZone/dynamicZoneField.js +320 -0
  603. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
  604. package/graphqlFields/dynamicZone/index.d.ts +1 -0
  605. package/graphqlFields/dynamicZone/index.js +14 -0
  606. package/graphqlFields/dynamicZone/index.js.map +1 -0
  607. package/graphqlFields/file.d.ts +2 -0
  608. package/graphqlFields/file.js +44 -0
  609. package/graphqlFields/file.js.map +1 -0
  610. package/graphqlFields/helpers.d.ts +5 -0
  611. package/graphqlFields/helpers.js +27 -0
  612. package/graphqlFields/helpers.js.map +1 -0
  613. package/graphqlFields/index.d.ts +2 -0
  614. package/graphqlFields/index.js +22 -0
  615. package/graphqlFields/index.js.map +1 -0
  616. package/graphqlFields/json.d.ts +2 -0
  617. package/graphqlFields/json.js +49 -0
  618. package/graphqlFields/json.js.map +1 -0
  619. package/graphqlFields/longText.d.ts +2 -0
  620. package/graphqlFields/longText.js +64 -0
  621. package/graphqlFields/longText.js.map +1 -0
  622. package/graphqlFields/number.d.ts +2 -0
  623. package/graphqlFields/number.js +70 -0
  624. package/graphqlFields/number.js.map +1 -0
  625. package/graphqlFields/object.d.ts +2 -0
  626. package/graphqlFields/object.js +252 -0
  627. package/graphqlFields/object.js.map +1 -0
  628. package/graphqlFields/ref.d.ts +2 -0
  629. package/graphqlFields/ref.js +267 -0
  630. package/graphqlFields/ref.js.map +1 -0
  631. package/graphqlFields/richText/RichTextPluginsProcessor.d.ts +6 -0
  632. package/graphqlFields/richText/RichTextPluginsProcessor.js +34 -0
  633. package/graphqlFields/richText/RichTextPluginsProcessor.js.map +1 -0
  634. package/graphqlFields/richText/richTextResolver.d.ts +7 -0
  635. package/graphqlFields/richText/richTextResolver.js +24 -0
  636. package/graphqlFields/richText/richTextResolver.js.map +1 -0
  637. package/graphqlFields/richText.d.ts +2 -0
  638. package/graphqlFields/richText.js +55 -0
  639. package/graphqlFields/richText.js.map +1 -0
  640. package/graphqlFields/searchableJson.d.ts +2 -0
  641. package/graphqlFields/searchableJson.js +60 -0
  642. package/graphqlFields/searchableJson.js.map +1 -0
  643. package/graphqlFields/text.d.ts +2 -0
  644. package/graphqlFields/text.js +66 -0
  645. package/graphqlFields/text.js.map +1 -0
  646. package/htmlRenderer/LexicalRenderer.d.ts +5 -0
  647. package/htmlRenderer/LexicalRenderer.js +28 -0
  648. package/htmlRenderer/LexicalRenderer.js.map +1 -0
  649. package/htmlRenderer/createLexicalHTMLRenderer.d.ts +2 -0
  650. package/htmlRenderer/createLexicalHTMLRenderer.js +31 -0
  651. package/htmlRenderer/createLexicalHTMLRenderer.js.map +1 -0
  652. package/index.d.ts +19 -12
  653. package/index.js +172 -54
  654. package/index.js.map +1 -0
  655. package/modelManager/DefaultCmsModelManager.d.ts +15 -0
  656. package/modelManager/DefaultCmsModelManager.js +49 -0
  657. package/modelManager/DefaultCmsModelManager.js.map +1 -0
  658. package/modelManager/SingletonModelManager.d.ts +12 -0
  659. package/modelManager/SingletonModelManager.js +48 -0
  660. package/modelManager/SingletonModelManager.js.map +1 -0
  661. package/modelManager/index.d.ts +3 -0
  662. package/modelManager/index.js +33 -0
  663. package/modelManager/index.js.map +1 -0
  664. package/package.json +42 -47
  665. package/parameters/context.d.ts +2 -0
  666. package/parameters/context.js +20 -0
  667. package/parameters/context.js.map +1 -0
  668. package/parameters/header.d.ts +2 -0
  669. package/parameters/header.js +45 -0
  670. package/parameters/header.js.map +1 -0
  671. package/parameters/index.d.ts +4 -0
  672. package/parameters/index.js +51 -0
  673. package/parameters/index.js.map +1 -0
  674. package/parameters/manual.d.ts +7 -0
  675. package/parameters/manual.js +42 -0
  676. package/parameters/manual.js.map +1 -0
  677. package/parameters/path.d.ts +2 -0
  678. package/parameters/path.js +41 -0
  679. package/parameters/path.js.map +1 -0
  680. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.d.ts +9 -0
  681. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js +17 -0
  682. package/plugins/CmsGraphQLSchemaPlugin/CmsGraphQLSchemaPlugin.js.map +1 -0
  683. package/plugins/CmsGraphQLSchemaPlugin/index.d.ts +1 -0
  684. package/plugins/CmsGraphQLSchemaPlugin/index.js +18 -0
  685. package/plugins/CmsGraphQLSchemaPlugin/index.js.map +1 -0
  686. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  687. package/plugins/CmsGraphQLSchemaSorterPlugin.js +27 -0
  688. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  689. package/plugins/CmsGroupPlugin.d.ts +24 -0
  690. package/plugins/CmsGroupPlugin.js +40 -0
  691. package/plugins/CmsGroupPlugin.js.map +1 -0
  692. package/plugins/CmsModelFieldConverterPlugin.d.ts +17 -0
  693. package/plugins/CmsModelFieldConverterPlugin.js +17 -0
  694. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -0
  695. package/plugins/CmsModelPlugin.d.ts +85 -0
  696. package/plugins/CmsModelPlugin.js +295 -0
  697. package/plugins/CmsModelPlugin.js.map +1 -0
  698. package/plugins/CmsParametersPlugin.d.ts +20 -0
  699. package/plugins/CmsParametersPlugin.js +24 -0
  700. package/plugins/CmsParametersPlugin.js.map +1 -0
  701. package/plugins/CmsRichTextRendererPlugin.d.ts +24 -0
  702. package/plugins/CmsRichTextRendererPlugin.js +28 -0
  703. package/plugins/CmsRichTextRendererPlugin.js.map +1 -0
  704. package/plugins/StorageOperationsCmsModelPlugin.d.ts +23 -0
  705. package/plugins/StorageOperationsCmsModelPlugin.js +41 -0
  706. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -0
  707. package/plugins/StorageTransformPlugin.d.ts +35 -0
  708. package/plugins/StorageTransformPlugin.js +35 -0
  709. package/plugins/StorageTransformPlugin.js.map +1 -0
  710. package/plugins/index.d.ts +9 -0
  711. package/plugins/index.js +106 -0
  712. package/plugins/index.js.map +1 -0
  713. package/storage/date.d.ts +3 -0
  714. package/storage/date.js +119 -0
  715. package/storage/date.js.map +1 -0
  716. package/storage/default.d.ts +2 -0
  717. package/storage/default.js +26 -0
  718. package/storage/default.js.map +1 -0
  719. package/storage/dynamicZone.d.ts +2 -0
  720. package/storage/dynamicZone.js +157 -0
  721. package/storage/dynamicZone.js.map +1 -0
  722. package/storage/index.d.ts +1 -0
  723. package/storage/index.js +21 -0
  724. package/storage/index.js.map +1 -0
  725. package/storage/json.d.ts +2 -0
  726. package/storage/json.js +56 -0
  727. package/storage/json.js.map +1 -0
  728. package/storage/object.d.ts +2 -0
  729. package/storage/object.js +112 -0
  730. package/storage/object.js.map +1 -0
  731. package/types/context.d.ts +146 -0
  732. package/types/context.js +7 -0
  733. package/types/context.js.map +1 -0
  734. package/types/fields/dynamicZoneField.d.ts +23 -0
  735. package/types/fields/dynamicZoneField.js +7 -0
  736. package/types/fields/dynamicZoneField.js.map +1 -0
  737. package/types/fields/objectField.d.ts +13 -0
  738. package/types/fields/objectField.js +7 -0
  739. package/types/fields/objectField.js.map +1 -0
  740. package/types/identity.d.ts +19 -0
  741. package/types/identity.js +7 -0
  742. package/types/identity.js.map +1 -0
  743. package/types/index.d.ts +10 -0
  744. package/types/index.js +117 -0
  745. package/types/index.js.map +1 -0
  746. package/types/model.d.ts +199 -0
  747. package/types/model.js +7 -0
  748. package/types/model.js.map +1 -0
  749. package/types/modelAst.d.ts +39 -0
  750. package/types/modelAst.js +7 -0
  751. package/types/modelAst.js.map +1 -0
  752. package/types/modelField.d.ts +330 -0
  753. package/types/modelField.js +7 -0
  754. package/types/modelField.js.map +1 -0
  755. package/types/modelGroup.d.ts +77 -0
  756. package/types/modelGroup.js +7 -0
  757. package/types/modelGroup.js.map +1 -0
  758. package/types/plugins.d.ts +365 -0
  759. package/types/plugins.js +7 -0
  760. package/types/plugins.js.map +1 -0
  761. package/types/types.d.ts +1897 -0
  762. package/types/types.js +308 -0
  763. package/types/types.js.map +1 -0
  764. package/utils/RichTextRenderer.d.ts +10 -0
  765. package/utils/RichTextRenderer.js +33 -0
  766. package/utils/RichTextRenderer.js.map +1 -0
  767. package/utils/caching/Cache.d.ts +5 -0
  768. package/utils/caching/Cache.js +48 -0
  769. package/utils/caching/Cache.js.map +1 -0
  770. package/utils/caching/CacheKey.d.ts +3 -0
  771. package/utils/caching/CacheKey.js +28 -0
  772. package/utils/caching/CacheKey.js.map +1 -0
  773. package/utils/caching/index.d.ts +2 -0
  774. package/utils/caching/index.js +29 -0
  775. package/utils/caching/index.js.map +1 -0
  776. package/utils/caching/types.d.ts +13 -0
  777. package/utils/caching/types.js +14 -0
  778. package/utils/caching/types.js.map +1 -0
  779. package/utils/contentEntryTraverser/ContentEntryTraverser.d.ts +13 -0
  780. package/utils/contentEntryTraverser/ContentEntryTraverser.js +97 -0
  781. package/utils/contentEntryTraverser/ContentEntryTraverser.js.map +1 -0
  782. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +6 -0
  783. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +23 -0
  784. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -0
  785. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +7 -0
  786. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +22 -0
  787. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -0
  788. package/utils/contentModelAst/CmsModelToAstConverter.d.ts +11 -0
  789. package/utils/contentModelAst/CmsModelToAstConverter.js +28 -0
  790. package/utils/contentModelAst/CmsModelToAstConverter.js.map +1 -0
  791. package/utils/contentModelAst/index.d.ts +3 -0
  792. package/utils/contentModelAst/index.js +40 -0
  793. package/utils/contentModelAst/index.js.map +1 -0
  794. package/utils/converters/Converter.d.ts +27 -0
  795. package/utils/converters/Converter.js +57 -0
  796. package/utils/converters/Converter.js.map +1 -0
  797. package/utils/converters/ConverterCollection.d.ts +31 -0
  798. package/utils/converters/ConverterCollection.js +125 -0
  799. package/utils/converters/ConverterCollection.js.map +1 -0
  800. package/utils/converters/valueKeyStorageConverter.d.ts +14 -0
  801. package/utils/converters/valueKeyStorageConverter.js +135 -0
  802. package/utils/converters/valueKeyStorageConverter.js.map +1 -0
  803. package/utils/createModelField.d.ts +7 -0
  804. package/utils/createModelField.js +51 -0
  805. package/utils/createModelField.js.map +1 -0
  806. package/utils/createTypeFromFields.d.ts +16 -0
  807. package/utils/createTypeFromFields.js +71 -0
  808. package/utils/createTypeFromFields.js.map +1 -0
  809. package/utils/createTypeName.d.ts +1 -0
  810. package/utils/createTypeName.js +15 -0
  811. package/utils/createTypeName.js.map +1 -0
  812. package/utils/date.d.ts +10 -0
  813. package/utils/date.js +36 -0
  814. package/utils/date.js.map +1 -0
  815. package/utils/entryStorage.d.ts +29 -0
  816. package/utils/entryStorage.js +140 -0
  817. package/utils/entryStorage.js.map +1 -0
  818. package/utils/filterAsync.d.ts +1 -0
  819. package/utils/filterAsync.js +19 -0
  820. package/utils/filterAsync.js.map +1 -0
  821. package/utils/getBaseFieldType.d.ts +2 -0
  822. package/utils/getBaseFieldType.js +12 -0
  823. package/utils/getBaseFieldType.js.map +1 -0
  824. package/utils/getEntryDescription.d.ts +2 -0
  825. package/utils/getEntryDescription.js +19 -0
  826. package/utils/getEntryDescription.js.map +1 -0
  827. package/utils/getEntryImage.d.ts +2 -0
  828. package/utils/getEntryImage.js +19 -0
  829. package/utils/getEntryImage.js.map +1 -0
  830. package/utils/getEntryTitle.d.ts +2 -0
  831. package/utils/getEntryTitle.js +36 -0
  832. package/utils/getEntryTitle.js.map +1 -0
  833. package/utils/getSchemaFromFieldPlugins.d.ts +20 -0
  834. package/utils/getSchemaFromFieldPlugins.js +58 -0
  835. package/utils/getSchemaFromFieldPlugins.js.map +1 -0
  836. package/utils/identity.d.ts +2 -0
  837. package/utils/identity.js +20 -0
  838. package/utils/identity.js.map +1 -0
  839. package/utils/incrementEntryIdVersion.d.ts +5 -0
  840. package/utils/incrementEntryIdVersion.js +31 -0
  841. package/utils/incrementEntryIdVersion.js.map +1 -0
  842. package/utils/index.d.ts +2 -0
  843. package/utils/index.js +29 -0
  844. package/utils/index.js.map +1 -0
  845. package/utils/isHeadlessCmsReady.d.ts +2 -0
  846. package/utils/isHeadlessCmsReady.js +23 -0
  847. package/utils/isHeadlessCmsReady.js.map +1 -0
  848. package/utils/modelFieldTraverser/ModelFieldTraverser.d.ts +16 -0
  849. package/utils/modelFieldTraverser/ModelFieldTraverser.js +41 -0
  850. package/utils/modelFieldTraverser/ModelFieldTraverser.js.map +1 -0
  851. package/utils/modelFieldTraverser/index.d.ts +1 -0
  852. package/utils/modelFieldTraverser/index.js +18 -0
  853. package/utils/modelFieldTraverser/index.js.map +1 -0
  854. package/utils/renderFields.d.ts +17 -0
  855. package/utils/renderFields.js +58 -0
  856. package/utils/renderFields.js.map +1 -0
  857. package/utils/renderGetFilterFields.d.ts +10 -0
  858. package/utils/renderGetFilterFields.js +36 -0
  859. package/utils/renderGetFilterFields.js.map +1 -0
  860. package/utils/renderInputFields.d.ts +16 -0
  861. package/utils/renderInputFields.js +60 -0
  862. package/utils/renderInputFields.js.map +1 -0
  863. package/utils/renderListFilterFields.d.ts +13 -0
  864. package/utils/renderListFilterFields.js +56 -0
  865. package/utils/renderListFilterFields.js.map +1 -0
  866. package/utils/renderSortEnum.d.ts +13 -0
  867. package/utils/renderSortEnum.js +49 -0
  868. package/utils/renderSortEnum.js.map +1 -0
  869. package/utils/toSlug.d.ts +1 -0
  870. package/utils/toSlug.js +18 -0
  871. package/utils/toSlug.js.map +1 -0
  872. package/validators/dateGte.d.ts +2 -0
  873. package/validators/dateGte.js +32 -0
  874. package/validators/dateGte.js.map +1 -0
  875. package/validators/dateLte.d.ts +2 -0
  876. package/validators/dateLte.js +32 -0
  877. package/validators/dateLte.js.map +1 -0
  878. package/validators/gte.d.ts +2 -0
  879. package/validators/gte.js +29 -0
  880. package/validators/gte.js.map +1 -0
  881. package/validators/in.d.ts +2 -0
  882. package/validators/in.js +29 -0
  883. package/validators/in.js.map +1 -0
  884. package/validators/index.d.ts +1 -0
  885. package/validators/index.js +23 -0
  886. package/validators/index.js.map +1 -0
  887. package/validators/lte.d.ts +2 -0
  888. package/validators/lte.js +29 -0
  889. package/validators/lte.js.map +1 -0
  890. package/validators/maxLength.d.ts +2 -0
  891. package/validators/maxLength.js +29 -0
  892. package/validators/maxLength.js.map +1 -0
  893. package/validators/minLength.d.ts +2 -0
  894. package/validators/minLength.js +29 -0
  895. package/validators/minLength.js.map +1 -0
  896. package/validators/pattern.d.ts +2 -0
  897. package/validators/pattern.js +43 -0
  898. package/validators/pattern.js.map +1 -0
  899. package/validators/patternPlugins/email.d.ts +2 -0
  900. package/validators/patternPlugins/email.js +20 -0
  901. package/validators/patternPlugins/email.js.map +1 -0
  902. package/validators/patternPlugins/index.d.ts +2 -0
  903. package/validators/patternPlugins/index.js +18 -0
  904. package/validators/patternPlugins/index.js.map +1 -0
  905. package/validators/patternPlugins/lowerCase.d.ts +2 -0
  906. package/validators/patternPlugins/lowerCase.js +20 -0
  907. package/validators/patternPlugins/lowerCase.js.map +1 -0
  908. package/validators/patternPlugins/lowerCaseSpace.d.ts +2 -0
  909. package/validators/patternPlugins/lowerCaseSpace.js +20 -0
  910. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
  911. package/validators/patternPlugins/upperCase.d.ts +2 -0
  912. package/validators/patternPlugins/upperCase.js +20 -0
  913. package/validators/patternPlugins/upperCase.js.map +1 -0
  914. package/validators/patternPlugins/upperCaseSpace.d.ts +2 -0
  915. package/validators/patternPlugins/upperCaseSpace.js +20 -0
  916. package/validators/patternPlugins/upperCaseSpace.js.map +1 -0
  917. package/validators/patternPlugins/url.d.ts +2 -0
  918. package/validators/patternPlugins/url.js +20 -0
  919. package/validators/patternPlugins/url.js.map +1 -0
  920. package/validators/required.d.ts +2 -0
  921. package/validators/required.js +24 -0
  922. package/validators/required.js.map +1 -0
  923. package/validators/timeGte.d.ts +2 -0
  924. package/validators/timeGte.js +27 -0
  925. package/validators/timeGte.js.map +1 -0
  926. package/validators/timeLte.d.ts +2 -0
  927. package/validators/timeLte.js +27 -0
  928. package/validators/timeLte.js.map +1 -0
  929. package/validators/unique.d.ts +6 -0
  930. package/validators/unique.js +58 -0
  931. package/validators/unique.js.map +1 -0
  932. package/content/contextSetup.d.ts +0 -4
  933. package/content/contextSetup.js +0 -65
  934. package/content/graphQLHandlerFactory.d.ts +0 -5
  935. package/content/graphQLHandlerFactory.js +0 -173
  936. package/content/plugins/CmsGroupPlugin.d.ts +0 -11
  937. package/content/plugins/CmsGroupPlugin.js +0 -24
  938. package/content/plugins/CmsModelPlugin.d.ts +0 -11
  939. package/content/plugins/CmsModelPlugin.js +0 -24
  940. package/content/plugins/buildSchemaPlugins.d.ts +0 -7
  941. package/content/plugins/buildSchemaPlugins.js +0 -29
  942. package/content/plugins/crud/contentEntry/afterDelete.d.ts +0 -7
  943. package/content/plugins/crud/contentEntry/afterDelete.js +0 -41
  944. package/content/plugins/crud/contentEntry/beforeCreate.d.ts +0 -7
  945. package/content/plugins/crud/contentEntry/beforeCreate.js +0 -28
  946. package/content/plugins/crud/contentEntry/beforeUpdate.d.ts +0 -7
  947. package/content/plugins/crud/contentEntry/beforeUpdate.js +0 -28
  948. package/content/plugins/crud/contentEntry/entryDataValidation.d.ts +0 -4
  949. package/content/plugins/crud/contentEntry/entryDataValidation.js +0 -188
  950. package/content/plugins/crud/contentEntry/markLockedFields.d.ts +0 -12
  951. package/content/plugins/crud/contentEntry/markLockedFields.js +0 -117
  952. package/content/plugins/crud/contentEntry.crud.d.ts +0 -17
  953. package/content/plugins/crud/contentEntry.crud.js +0 -931
  954. package/content/plugins/crud/contentModel/afterCreate.d.ts +0 -7
  955. package/content/plugins/crud/contentModel/afterCreate.js +0 -18
  956. package/content/plugins/crud/contentModel/afterDelete.d.ts +0 -7
  957. package/content/plugins/crud/contentModel/afterDelete.js +0 -18
  958. package/content/plugins/crud/contentModel/afterUpdate.d.ts +0 -7
  959. package/content/plugins/crud/contentModel/afterUpdate.js +0 -18
  960. package/content/plugins/crud/contentModel/beforeCreate.d.ts +0 -9
  961. package/content/plugins/crud/contentModel/beforeCreate.js +0 -146
  962. package/content/plugins/crud/contentModel/beforeDelete.d.ts +0 -9
  963. package/content/plugins/crud/contentModel/beforeDelete.js +0 -56
  964. package/content/plugins/crud/contentModel/beforeUpdate.d.ts +0 -9
  965. package/content/plugins/crud/contentModel/beforeUpdate.js +0 -128
  966. package/content/plugins/crud/contentModel/contentModelManagerFactory.d.ts +0 -2
  967. package/content/plugins/crud/contentModel/contentModelManagerFactory.js +0 -29
  968. package/content/plugins/crud/contentModel/createFieldModels.d.ts +0 -2
  969. package/content/plugins/crud/contentModel/createFieldModels.js +0 -22
  970. package/content/plugins/crud/contentModel/idValidation.d.ts +0 -2
  971. package/content/plugins/crud/contentModel/idValidation.js +0 -22
  972. package/content/plugins/crud/contentModel/models.d.ts +0 -3
  973. package/content/plugins/crud/contentModel/models.js +0 -141
  974. package/content/plugins/crud/contentModel/validateLayout.d.ts +0 -2
  975. package/content/plugins/crud/contentModel/validateLayout.js +0 -38
  976. package/content/plugins/crud/contentModel.crud.d.ts +0 -12
  977. package/content/plugins/crud/contentModel.crud.js +0 -425
  978. package/content/plugins/crud/contentModelGroup/beforeCreate.d.ts +0 -9
  979. package/content/plugins/crud/contentModelGroup/beforeCreate.js +0 -66
  980. package/content/plugins/crud/contentModelGroup/beforeDelete.d.ts +0 -9
  981. package/content/plugins/crud/contentModelGroup/beforeDelete.js +0 -48
  982. package/content/plugins/crud/contentModelGroup/beforeUpdate.d.ts +0 -8
  983. package/content/plugins/crud/contentModelGroup/beforeUpdate.js +0 -28
  984. package/content/plugins/crud/contentModelGroup.crud.d.ts +0 -12
  985. package/content/plugins/crud/contentModelGroup.crud.js +0 -351
  986. package/content/plugins/crud/index.d.ts +0 -6
  987. package/content/plugins/crud/index.js +0 -100
  988. package/content/plugins/graphqlFields/boolean.d.ts +0 -3
  989. package/content/plugins/graphqlFields/boolean.js +0 -69
  990. package/content/plugins/graphqlFields/datetime.d.ts +0 -3
  991. package/content/plugins/graphqlFields/datetime.js +0 -83
  992. package/content/plugins/graphqlFields/file.d.ts +0 -3
  993. package/content/plugins/graphqlFields/file.js +0 -49
  994. package/content/plugins/graphqlFields/index.d.ts +0 -2
  995. package/content/plugins/graphqlFields/index.js +0 -30
  996. package/content/plugins/graphqlFields/longText.d.ts +0 -3
  997. package/content/plugins/graphqlFields/longText.js +0 -62
  998. package/content/plugins/graphqlFields/number.d.ts +0 -3
  999. package/content/plugins/graphqlFields/number.js +0 -75
  1000. package/content/plugins/graphqlFields/object.d.ts +0 -3
  1001. package/content/plugins/graphqlFields/object.js +0 -180
  1002. package/content/plugins/graphqlFields/ref.d.ts +0 -3
  1003. package/content/plugins/graphqlFields/ref.js +0 -205
  1004. package/content/plugins/graphqlFields/richText.d.ts +0 -3
  1005. package/content/plugins/graphqlFields/richText.js +0 -55
  1006. package/content/plugins/graphqlFields/text.d.ts +0 -3
  1007. package/content/plugins/graphqlFields/text.js +0 -72
  1008. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.d.ts +0 -8
  1009. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js +0 -54
  1010. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.d.ts +0 -7
  1011. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js +0 -35
  1012. package/content/plugins/modelManager/DefaultCmsModelManager.d.ts +0 -15
  1013. package/content/plugins/modelManager/DefaultCmsModelManager.js +0 -62
  1014. package/content/plugins/modelManager/index.d.ts +0 -3
  1015. package/content/plugins/modelManager/index.js +0 -20
  1016. package/content/plugins/schema/baseSchema.d.ts +0 -4
  1017. package/content/plugins/schema/baseSchema.js +0 -98
  1018. package/content/plugins/schema/contentEntries.d.ts +0 -4
  1019. package/content/plugins/schema/contentEntries.js +0 -166
  1020. package/content/plugins/schema/contentModelGroups.d.ts +0 -4
  1021. package/content/plugins/schema/contentModelGroups.js +0 -153
  1022. package/content/plugins/schema/contentModels.d.ts +0 -4
  1023. package/content/plugins/schema/contentModels.js +0 -225
  1024. package/content/plugins/schema/createFieldResolvers.d.ts +0 -19
  1025. package/content/plugins/schema/createFieldResolvers.js +0 -92
  1026. package/content/plugins/schema/createManageResolvers.d.ts +0 -11
  1027. package/content/plugins/schema/createManageResolvers.js +0 -135
  1028. package/content/plugins/schema/createManageSDL.d.ts +0 -9
  1029. package/content/plugins/schema/createManageSDL.js +0 -153
  1030. package/content/plugins/schema/createPreviewResolvers.d.ts +0 -10
  1031. package/content/plugins/schema/createPreviewResolvers.js +0 -55
  1032. package/content/plugins/schema/createReadResolvers.d.ts +0 -10
  1033. package/content/plugins/schema/createReadResolvers.js +0 -55
  1034. package/content/plugins/schema/createReadSDL.d.ts +0 -9
  1035. package/content/plugins/schema/createReadSDL.js +0 -96
  1036. package/content/plugins/schema/resolvers/commonFieldResolvers.d.ts +0 -6
  1037. package/content/plugins/schema/resolvers/commonFieldResolvers.js +0 -14
  1038. package/content/plugins/schema/resolvers/manage/resolveCreate.d.ts +0 -6
  1039. package/content/plugins/schema/resolvers/manage/resolveCreate.js +0 -23
  1040. package/content/plugins/schema/resolvers/manage/resolveCreateFrom.d.ts +0 -7
  1041. package/content/plugins/schema/resolvers/manage/resolveCreateFrom.js +0 -23
  1042. package/content/plugins/schema/resolvers/manage/resolveDelete.d.ts +0 -2
  1043. package/content/plugins/schema/resolvers/manage/resolveDelete.js +0 -30
  1044. package/content/plugins/schema/resolvers/manage/resolveGet.d.ts +0 -2
  1045. package/content/plugins/schema/resolvers/manage/resolveGet.js +0 -21
  1046. package/content/plugins/schema/resolvers/manage/resolveGetByIds.d.ts +0 -2
  1047. package/content/plugins/schema/resolvers/manage/resolveGetByIds.js +0 -23
  1048. package/content/plugins/schema/resolvers/manage/resolveGetRevisions.d.ts +0 -2
  1049. package/content/plugins/schema/resolvers/manage/resolveGetRevisions.js +0 -23
  1050. package/content/plugins/schema/resolvers/manage/resolveList.d.ts +0 -2
  1051. package/content/plugins/schema/resolvers/manage/resolveList.js +0 -23
  1052. package/content/plugins/schema/resolvers/manage/resolvePublish.d.ts +0 -2
  1053. package/content/plugins/schema/resolvers/manage/resolvePublish.js +0 -21
  1054. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -6
  1055. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js +0 -23
  1056. package/content/plugins/schema/resolvers/manage/resolveRequestReview.d.ts +0 -6
  1057. package/content/plugins/schema/resolvers/manage/resolveRequestReview.js +0 -23
  1058. package/content/plugins/schema/resolvers/manage/resolveUnpublish.d.ts +0 -2
  1059. package/content/plugins/schema/resolvers/manage/resolveUnpublish.js +0 -21
  1060. package/content/plugins/schema/resolvers/manage/resolveUpdate.d.ts +0 -7
  1061. package/content/plugins/schema/resolvers/manage/resolveUpdate.js +0 -23
  1062. package/content/plugins/schema/resolvers/preview/resolveGet.d.ts +0 -2
  1063. package/content/plugins/schema/resolvers/preview/resolveGet.js +0 -38
  1064. package/content/plugins/schema/resolvers/preview/resolveList.d.ts +0 -2
  1065. package/content/plugins/schema/resolvers/preview/resolveList.js +0 -23
  1066. package/content/plugins/schema/resolvers/read/resolveGet.d.ts +0 -2
  1067. package/content/plugins/schema/resolvers/read/resolveGet.js +0 -38
  1068. package/content/plugins/schema/resolvers/read/resolveList.d.ts +0 -2
  1069. package/content/plugins/schema/resolvers/read/resolveList.js +0 -23
  1070. package/content/plugins/schema/schemaPlugins.d.ts +0 -3
  1071. package/content/plugins/schema/schemaPlugins.js +0 -92
  1072. package/content/plugins/storage/StorageTransformPlugin.d.ts +0 -30
  1073. package/content/plugins/storage/StorageTransformPlugin.js +0 -36
  1074. package/content/plugins/storage/default.d.ts +0 -3
  1075. package/content/plugins/storage/default.js +0 -28
  1076. package/content/plugins/storage/object.d.ts +0 -3
  1077. package/content/plugins/storage/object.js +0 -119
  1078. package/content/plugins/utils/createTypeName.d.ts +0 -3
  1079. package/content/plugins/utils/createTypeName.js +0 -28
  1080. package/content/plugins/utils/entryStorage.d.ts +0 -17
  1081. package/content/plugins/utils/entryStorage.js +0 -125
  1082. package/content/plugins/utils/getEntryTitle.d.ts +0 -2
  1083. package/content/plugins/utils/getEntryTitle.js +0 -42
  1084. package/content/plugins/utils/getSchemaFromFieldPlugins.d.ts +0 -11
  1085. package/content/plugins/utils/getSchemaFromFieldPlugins.js +0 -30
  1086. package/content/plugins/utils/pluralizedTypeName.d.ts +0 -1
  1087. package/content/plugins/utils/pluralizedTypeName.js +0 -26
  1088. package/content/plugins/utils/renderFields.d.ts +0 -16
  1089. package/content/plugins/utils/renderFields.js +0 -51
  1090. package/content/plugins/utils/renderGetFilterFields.d.ts +0 -9
  1091. package/content/plugins/utils/renderGetFilterFields.js +0 -41
  1092. package/content/plugins/utils/renderInputFields.d.ts +0 -14
  1093. package/content/plugins/utils/renderInputFields.js +0 -53
  1094. package/content/plugins/utils/renderListFilterFields.d.ts +0 -10
  1095. package/content/plugins/utils/renderListFilterFields.js +0 -39
  1096. package/content/plugins/utils/renderSortEnum.d.ts +0 -9
  1097. package/content/plugins/utils/renderSortEnum.js +0 -32
  1098. package/content/plugins/validators/dateGte.d.ts +0 -3
  1099. package/content/plugins/validators/dateGte.js +0 -37
  1100. package/content/plugins/validators/dateLte.d.ts +0 -3
  1101. package/content/plugins/validators/dateLte.js +0 -37
  1102. package/content/plugins/validators/gte.d.ts +0 -3
  1103. package/content/plugins/validators/gte.js +0 -32
  1104. package/content/plugins/validators/in.d.ts +0 -3
  1105. package/content/plugins/validators/in.js +0 -32
  1106. package/content/plugins/validators/index.d.ts +0 -2
  1107. package/content/plugins/validators/index.js +0 -36
  1108. package/content/plugins/validators/lte.d.ts +0 -3
  1109. package/content/plugins/validators/lte.js +0 -32
  1110. package/content/plugins/validators/maxLength.d.ts +0 -3
  1111. package/content/plugins/validators/maxLength.js +0 -32
  1112. package/content/plugins/validators/minLength.d.ts +0 -3
  1113. package/content/plugins/validators/minLength.js +0 -32
  1114. package/content/plugins/validators/pattern.d.ts +0 -3
  1115. package/content/plugins/validators/pattern.js +0 -47
  1116. package/content/plugins/validators/patternPlugins/email.d.ts +0 -3
  1117. package/content/plugins/validators/patternPlugins/email.js +0 -17
  1118. package/content/plugins/validators/patternPlugins/index.d.ts +0 -2
  1119. package/content/plugins/validators/patternPlugins/index.js +0 -19
  1120. package/content/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  1121. package/content/plugins/validators/patternPlugins/lowerCase.js +0 -17
  1122. package/content/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  1123. package/content/plugins/validators/patternPlugins/upperCase.js +0 -17
  1124. package/content/plugins/validators/patternPlugins/url.d.ts +0 -3
  1125. package/content/plugins/validators/patternPlugins/url.js +0 -17
  1126. package/content/plugins/validators/required.d.ts +0 -3
  1127. package/content/plugins/validators/required.js +0 -25
  1128. package/content/plugins/validators/timeGte.d.ts +0 -3
  1129. package/content/plugins/validators/timeGte.js +0 -32
  1130. package/content/plugins/validators/timeLte.d.ts +0 -3
  1131. package/content/plugins/validators/timeLte.js +0 -32
  1132. package/migrateCMSPermissions.d.ts +0 -17
  1133. package/migrateCMSPermissions.js +0 -193
  1134. package/plugins/context.d.ts +0 -4
  1135. package/plugins/context.js +0 -34
  1136. package/plugins/crud/index.d.ts +0 -6
  1137. package/plugins/crud/index.js +0 -100
  1138. package/plugins/crud/settings.crud.d.ts +0 -10
  1139. package/plugins/crud/settings.crud.js +0 -93
  1140. package/plugins/crud/system.crud.d.ts +0 -10
  1141. package/plugins/crud/system.crud.js +0 -182
  1142. package/plugins/graphql/system.d.ts +0 -17
  1143. package/plugins/graphql/system.js +0 -72
  1144. package/plugins/graphql.d.ts +0 -2
  1145. package/plugins/graphql.js +0 -79
  1146. package/plugins/upgrades/index.d.ts +0 -2
  1147. package/plugins/upgrades/index.js +0 -14
  1148. package/plugins/upgrades/v5.5.0/helpers.d.ts +0 -6
  1149. package/plugins/upgrades/v5.5.0/helpers.js +0 -10
  1150. package/plugins/upgrades/v5.5.0/index.d.ts +0 -4
  1151. package/plugins/upgrades/v5.5.0/index.js +0 -129
  1152. package/transformers.d.ts +0 -2
  1153. package/transformers.js +0 -25
  1154. package/types.d.ts +0 -2149
  1155. package/types.js +0 -366
  1156. package/utils.d.ts +0 -25
  1157. package/utils.js +0 -251
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_utils","require","_error","_interopRequireDefault","_handlerGraphql","_entryDataValidation","_pubsub","_beforeCreate","_beforeUpdate","_afterDelete","_entryStorage","_searchableFields","_filterAsync","_constants","_entryDataFactories","_useCases","_ContentEntryTraverser","createContentEntryCrud","params","storageOperations","accessControl","context","getIdentity","getSecurityIdentity","getTenant","getLocale","onEntryBeforeCreate","createTopic","onEntryAfterCreate","onEntryCreateError","onEntryBeforeCreateRevision","onEntryRevisionAfterCreate","onEntryCreateRevisionError","onEntryBeforeUpdate","onEntryAfterUpdate","onEntryUpdateError","onEntryBeforeMove","onEntryAfterMove","onEntryMoveError","onEntryBeforePublish","onEntryAfterPublish","onEntryPublishError","onEntryBeforeRepublish","onEntryAfterRepublish","onEntryRepublishError","onEntryBeforeUnpublish","onEntryAfterUnpublish","onEntryUnpublishError","onEntryBeforeDelete","onEntryAfterDelete","onEntryDeleteError","onEntryBeforeRestoreFromBin","onEntryAfterRestoreFromBin","onEntryRestoreFromBinError","onEntryRevisionBeforeDelete","onEntryRevisionAfterDelete","onEntryRevisionDeleteError","onEntryBeforeDeleteMultiple","onEntryAfterDeleteMultiple","onEntryDeleteMultipleError","onEntryBeforeGet","onEntryBeforeList","assignBeforeEntryCreate","assignBeforeEntryUpdate","assignAfterEntryDelete","transformEntryFromStorageCallable","createTransformEntryCallable","listEntriesUseCase","listLatestUseCase","listDeletedUseCase","listPublishedUseCase","getEntryUseCase","listEntriesUseCases","transform","operation","entries","list","topics","getEntriesByIdsUseCase","getEntriesByIdsUseCases","getByIds","getLatestEntriesByIdsUseCase","getLatestEntriesByIdsUseCases","getLatestByIds","getPublishedEntriesByIdsUseCase","getPublishedEntriesByIdsUseCases","getPublishedByIds","getRevisionsByEntryIdUseCase","getRevisionsByEntryIdUseCases","getRevisions","getRevisionByIdUseCase","getRevisionByIdUseCases","getRevisionById","getLatestRevisionByEntryIdUseCase","getLatestRevisionByEntryIdWithDeletedUseCase","getLatestRevisionByEntryIdDeletedUseCase","getLatestRevisionByEntryIdUseCases","getLatestRevisionByEntryId","getPreviousRevisionByEntryIdUseCase","getPreviousRevisionByEntryIdUseCases","getPreviousRevision","getPublishedRevisionByEntryIdUseCase","getPublishedRevisionByEntryIdUseCases","getPublishedRevisionByEntryId","deleteEntryUseCase","moveEntryToBinUseCase","deleteEntryOperation","deleteEntryUseCases","deleteOperation","delete","moveToBinOperation","moveToBin","getEntry","getEntryWithDeleted","restoreEntryFromBinUseCase","restoreEntryFromBinUseCases","restoreOperation","restoreFromBin","getEntryById","model","id","where","publish","entry","execute","ids","NotFoundError","createEntry","rawInput","options","ensureCanAccessEntry","rwd","input","createEntryData","storageEntry","entryToStorageTransform","result","create","ex","error","WebinyError","message","code","data","createEntryRevisionFrom","sourceId","uniqueId","parseIdentifier","originalStorageEntry","latestStorageEntry","modelId","originalEntry","entryFromStorageTransform","createEntryRevisionFromData","original","createRevisionFrom","updateEntry","metaInput","locked","createUpdateEntryData","update","validateEntry","inputData","mapAndCleanUpdatedInputData","validateModelEntryData","length","moveEntry","folderId","location","move","from","republishEntry","pw","createRepublishEntryData","deleteEntryRevision","revisionId","entryId","version","storageEntryToDelete","storagePreviousEntry","latestEntryRevisionId","entryToDelete","entryToSetAsLatest","storageEntryToSetAsLatest","updatedEntryToSetAsLatest","storageUpdatedEntryToSetAsLatest","pickedEntryLevelMetaFields","pickEntryMetaFields","isEntryLevelEntryMetaField","deleteRevision","latestEntry","deleteMultipleEntries","maxDeletableEntries","entryIdList","Set","add","Array","items","latest","entryId_in","limit","filterAsync","canAccessEntry","map","deleteEntry","permanently","publishEntry","createPublishEntryData","unpublishEntry","createUnpublishEntryData","unpublish","getUniqueFieldValues","initialWhere","fieldId","canAccessOnlyOwnedEntries","createdBy","published","fields","getSearchableFields","plugins","includes","getEntryTraverser","modelAstConverter","cms","getModelToAstConverter","getModel","Error","modelAst","toAst","ContentEntryTraverser","onEntryRevisionBeforeCreate","onEntryRevisionCreateError","getEntriesByIds","benchmark","measure","getPublishedEntriesByIds","getLatestEntriesByIds","getEntryRevisions","listEntries","listLatestEntries","listDeletedEntries","listPublishedEntries","meta","restoreEntryFromBin","exports"],"sources":["contentEntry.crud.ts"],"sourcesContent":["import { parseIdentifier } from \"@webiny/utils\";\nimport WebinyError from \"@webiny/error\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport type {\n CmsContext,\n CmsEntry,\n CmsEntryContext,\n CmsEntryGetParams,\n CmsEntryListParams,\n CmsEntryListWhere,\n CmsEntryMeta,\n CmsEntryValues,\n CmsModel,\n CmsStorageEntry,\n CreateCmsEntryInput,\n CreateCmsEntryOptionsInput,\n EntryBeforeListTopicParams,\n HeadlessCmsStorageOperations,\n OnEntryAfterCreateTopicParams,\n OnEntryAfterDeleteMultipleTopicParams,\n OnEntryAfterDeleteTopicParams,\n OnEntryAfterMoveTopicParams,\n OnEntryAfterPublishTopicParams,\n OnEntryAfterRepublishTopicParams,\n OnEntryAfterRestoreFromBinTopicParams,\n OnEntryAfterUnpublishTopicParams,\n OnEntryAfterUpdateTopicParams,\n OnEntryBeforeCreateTopicParams,\n OnEntryBeforeDeleteMultipleTopicParams,\n OnEntryBeforeDeleteTopicParams,\n OnEntryBeforeGetTopicParams,\n OnEntryBeforeMoveTopicParams,\n OnEntryBeforePublishTopicParams,\n OnEntryBeforeRepublishTopicParams,\n OnEntryBeforeRestoreFromBinTopicParams,\n OnEntryBeforeUnpublishTopicParams,\n OnEntryBeforeUpdateTopicParams,\n OnEntryCreateErrorTopicParams,\n OnEntryCreateRevisionErrorTopicParams,\n OnEntryDeleteErrorTopicParams,\n OnEntryDeleteMultipleErrorTopicParams,\n OnEntryMoveErrorTopicParams,\n OnEntryPublishErrorTopicParams,\n OnEntryRepublishErrorTopicParams,\n OnEntryRestoreFromBinErrorTopicParams,\n OnEntryRevisionAfterCreateTopicParams,\n OnEntryRevisionAfterDeleteTopicParams,\n OnEntryRevisionBeforeCreateTopicParams,\n OnEntryRevisionBeforeDeleteTopicParams,\n OnEntryRevisionDeleteErrorTopicParams,\n OnEntryUnpublishErrorTopicParams,\n OnEntryUpdateErrorTopicParams\n} from \"~/types\";\nimport { validateModelEntryData } from \"./contentEntry/entryDataValidation\";\nimport type { SecurityIdentity } from \"@webiny/api-security/types\";\nimport { createTopic } from \"@webiny/pubsub\";\nimport { assignBeforeEntryCreate } from \"./contentEntry/beforeCreate\";\nimport { assignBeforeEntryUpdate } from \"./contentEntry/beforeUpdate\";\nimport { assignAfterEntryDelete } from \"./contentEntry/afterDelete\";\nimport type { Tenant } from \"@webiny/api-tenancy/types\";\nimport {\n createTransformEntryCallable,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"~/utils/entryStorage\";\nimport { getSearchableFields } from \"./contentEntry/searchableFields\";\nimport type { I18NLocale } from \"@webiny/api-i18n/types\";\nimport { filterAsync } from \"~/utils/filterAsync\";\nimport { isEntryLevelEntryMetaField, pickEntryMetaFields } from \"~/constants\";\nimport {\n createEntryData,\n createEntryRevisionFromData,\n createPublishEntryData,\n createRepublishEntryData,\n createUnpublishEntryData,\n createUpdateEntryData,\n mapAndCleanUpdatedInputData\n} from \"./contentEntry/entryDataFactories\";\nimport type { AccessControl } from \"./AccessControl/AccessControl\";\nimport {\n deleteEntryUseCases,\n getEntriesByIdsUseCases,\n getLatestEntriesByIdsUseCases,\n getLatestRevisionByEntryIdUseCases,\n getPreviousRevisionByEntryIdUseCases,\n getPublishedEntriesByIdsUseCases,\n getPublishedRevisionByEntryIdUseCases,\n getRevisionByIdUseCases,\n getRevisionsByEntryIdUseCases,\n listEntriesUseCases,\n restoreEntryFromBinUseCases\n} from \"~/crud/contentEntry/useCases\";\nimport { ContentEntryTraverser } from \"~/utils/contentEntryTraverser/ContentEntryTraverser\";\n\ninterface CreateContentEntryCrudParams {\n storageOperations: HeadlessCmsStorageOperations;\n accessControl: AccessControl;\n context: CmsContext;\n getIdentity: () => SecurityIdentity;\n getTenant: () => Tenant;\n getLocale: () => I18NLocale;\n}\n\nexport const createContentEntryCrud = (params: CreateContentEntryCrudParams): CmsEntryContext => {\n const {\n storageOperations,\n accessControl,\n context,\n getIdentity: getSecurityIdentity,\n getTenant,\n getLocale\n } = params;\n\n /**\n * Create\n */\n const onEntryBeforeCreate =\n createTopic<OnEntryBeforeCreateTopicParams>(\"cms.onEntryBeforeCreate\");\n const onEntryAfterCreate = createTopic<OnEntryAfterCreateTopicParams>(\"cms.onEntryAfterCreate\");\n const onEntryCreateError = createTopic<OnEntryCreateErrorTopicParams>(\"cms.onEntryCreateError\");\n\n /**\n * Create new revision\n */\n const onEntryBeforeCreateRevision = createTopic<OnEntryRevisionBeforeCreateTopicParams>(\n \"cms.onEntryBeforeCreateRevision\"\n );\n const onEntryRevisionAfterCreate = createTopic<OnEntryRevisionAfterCreateTopicParams>(\n \"cms.onEntryRevisionAfterCreate\"\n );\n const onEntryCreateRevisionError = createTopic<OnEntryCreateRevisionErrorTopicParams>(\n \"cms.onEntryCreateRevisionError\"\n );\n\n /**\n * Update\n */\n const onEntryBeforeUpdate =\n createTopic<OnEntryBeforeUpdateTopicParams>(\"cms.onEntryBeforeUpdate\");\n const onEntryAfterUpdate = createTopic<OnEntryAfterUpdateTopicParams>(\"cms.onEntryAfterUpdate\");\n const onEntryUpdateError = createTopic<OnEntryUpdateErrorTopicParams>(\"cms.onEntryUpdateError\");\n\n /**\n * Move\n */\n const onEntryBeforeMove = createTopic<OnEntryBeforeMoveTopicParams>(\"cms.onEntryBeforeMove\");\n const onEntryAfterMove = createTopic<OnEntryAfterMoveTopicParams>(\"cms.onEntryAfterMove\");\n const onEntryMoveError = createTopic<OnEntryMoveErrorTopicParams>(\"cms.onEntryMoveError\");\n\n /**\n * Publish\n */\n const onEntryBeforePublish = createTopic<OnEntryBeforePublishTopicParams>(\n \"cms.onEntryBeforePublish\"\n );\n const onEntryAfterPublish =\n createTopic<OnEntryAfterPublishTopicParams>(\"cms.onEntryAfterPublish\");\n\n const onEntryPublishError =\n createTopic<OnEntryPublishErrorTopicParams>(\"cms.onEntryPublishError\");\n\n /**\n * Republish\n */\n const onEntryBeforeRepublish = createTopic<OnEntryBeforeRepublishTopicParams>(\n \"cms.onEntryBeforeRepublish\"\n );\n const onEntryAfterRepublish = createTopic<OnEntryAfterRepublishTopicParams>(\n \"cms.onEntryAfterRepublish\"\n );\n\n const onEntryRepublishError = createTopic<OnEntryRepublishErrorTopicParams>(\n \"cms.onEntryRepublishError\"\n );\n\n /**\n * Unpublish\n */\n const onEntryBeforeUnpublish = createTopic<OnEntryBeforeUnpublishTopicParams>(\n \"cms.onEntryBeforeUnpublish\"\n );\n const onEntryAfterUnpublish = createTopic<OnEntryAfterUnpublishTopicParams>(\n \"cms.onEntryAfterUnpublish\"\n );\n const onEntryUnpublishError = createTopic<OnEntryUnpublishErrorTopicParams>(\n \"cms.onEntryUnpublishError\"\n );\n\n /**\n * Delete\n */\n const onEntryBeforeDelete =\n createTopic<OnEntryBeforeDeleteTopicParams>(\"cms.onEntryBeforeDelete\");\n const onEntryAfterDelete = createTopic<OnEntryAfterDeleteTopicParams>(\"cms.onEntryAfterDelete\");\n const onEntryDeleteError = createTopic<OnEntryDeleteErrorTopicParams>(\"cms.onEntryDeleteError\");\n\n /**\n * Restore from bin\n */\n const onEntryBeforeRestoreFromBin = createTopic<OnEntryBeforeRestoreFromBinTopicParams>(\n \"cms.onEntryBeforeRestoreFromBin\"\n );\n const onEntryAfterRestoreFromBin = createTopic<OnEntryAfterRestoreFromBinTopicParams>(\n \"cms.onEntryAfterRestoreFromBin\"\n );\n const onEntryRestoreFromBinError = createTopic<OnEntryRestoreFromBinErrorTopicParams>(\n \"cms.onEntryRestoreFromBinError\"\n );\n\n /**\n * Delete revision\n */\n const onEntryRevisionBeforeDelete = createTopic<OnEntryRevisionBeforeDeleteTopicParams>(\n \"cms.onEntryRevisionBeforeDelete\"\n );\n const onEntryRevisionAfterDelete = createTopic<OnEntryRevisionAfterDeleteTopicParams>(\n \"cms.onEntryRevisionAfterDelete\"\n );\n const onEntryRevisionDeleteError = createTopic<OnEntryRevisionDeleteErrorTopicParams>(\n \"cms.onEntryRevisionDeleteError\"\n );\n /**\n * Delete multiple entries\n */\n const onEntryBeforeDeleteMultiple = createTopic<OnEntryBeforeDeleteMultipleTopicParams>(\n \"cms.onEntryBeforeDeleteMultiple\"\n );\n const onEntryAfterDeleteMultiple = createTopic<OnEntryAfterDeleteMultipleTopicParams>(\n \"cms.onEntryAfterDeleteMultiple\"\n );\n const onEntryDeleteMultipleError = createTopic<OnEntryDeleteMultipleErrorTopicParams>(\n \"cms.onEntryDeleteMultipleError\"\n );\n\n /**\n * Get entry\n */\n const onEntryBeforeGet = createTopic<OnEntryBeforeGetTopicParams>(\"cms.onEntryBeforeGet\");\n\n /**\n * List entries\n */\n const onEntryBeforeList = createTopic<EntryBeforeListTopicParams>(\"cms.onEntryBeforeList\");\n\n /**\n * We need to assign some default behaviors.\n */\n assignBeforeEntryCreate({\n context,\n onEntryBeforeCreate\n });\n assignBeforeEntryUpdate({\n context,\n onEntryBeforeUpdate\n });\n assignAfterEntryDelete({\n context,\n onEntryAfterDelete\n });\n\n const transformEntryFromStorageCallable = createTransformEntryCallable({\n context\n });\n /**\n * List entries\n */\n const {\n listEntriesUseCase,\n listLatestUseCase,\n listDeletedUseCase,\n listPublishedUseCase,\n getEntryUseCase\n } = listEntriesUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.list,\n accessControl,\n topics: { onEntryBeforeList },\n context,\n getIdentity: getSecurityIdentity\n });\n\n /**\n * Get entries by ids\n */\n const { getEntriesByIdsUseCase } = getEntriesByIdsUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getByIds,\n accessControl\n });\n\n /**\n * Get latest entries by ids\n */\n const { getLatestEntriesByIdsUseCase } = getLatestEntriesByIdsUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getLatestByIds,\n accessControl\n });\n\n /**\n * Get published entries by ids\n */\n const { getPublishedEntriesByIdsUseCase } = getPublishedEntriesByIdsUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getPublishedByIds,\n accessControl\n });\n\n /**\n * Get revisions by entryId\n */\n const { getRevisionsByEntryIdUseCase } = getRevisionsByEntryIdUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getRevisions,\n accessControl\n });\n\n /**\n * Get revision by id\n */\n const { getRevisionByIdUseCase } = getRevisionByIdUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getRevisionById\n });\n\n /**\n * Get latest revision by entryId\n */\n const {\n getLatestRevisionByEntryIdUseCase,\n getLatestRevisionByEntryIdWithDeletedUseCase,\n getLatestRevisionByEntryIdDeletedUseCase\n } = getLatestRevisionByEntryIdUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getLatestRevisionByEntryId\n });\n\n /**\n * Get previous revision by entryId\n */\n const { getPreviousRevisionByEntryIdUseCase } = getPreviousRevisionByEntryIdUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getPreviousRevision\n });\n\n /**\n * Get published revision by entryId\n */\n const { getPublishedRevisionByEntryIdUseCase } = getPublishedRevisionByEntryIdUseCases({\n transform: transformEntryFromStorageCallable,\n operation: storageOperations.entries.getPublishedRevisionByEntryId\n });\n\n /**\n * Delete entry\n */\n const { deleteEntryUseCase, moveEntryToBinUseCase, deleteEntryOperation } = deleteEntryUseCases(\n {\n deleteOperation: storageOperations.entries.delete,\n moveToBinOperation: storageOperations.entries.moveToBin,\n getEntry: getLatestRevisionByEntryIdUseCase,\n getEntryWithDeleted: getLatestRevisionByEntryIdWithDeletedUseCase,\n getIdentity: getSecurityIdentity,\n topics: { onEntryBeforeDelete, onEntryAfterDelete, onEntryDeleteError },\n accessControl,\n context\n }\n );\n\n /**\n * Restore entry from bin\n */\n const { restoreEntryFromBinUseCase } = restoreEntryFromBinUseCases({\n transform: transformEntryFromStorageCallable,\n getEntry: getLatestRevisionByEntryIdDeletedUseCase,\n getIdentity: getSecurityIdentity,\n restoreOperation: storageOperations.entries.restoreFromBin,\n topics: {\n onEntryBeforeRestoreFromBin,\n onEntryAfterRestoreFromBin,\n onEntryRestoreFromBinError\n },\n accessControl,\n context\n });\n\n const getEntryById = async <T = CmsEntryValues>(\n model: CmsModel,\n id: string\n ): Promise<CmsEntry<T>> => {\n const where: CmsEntryListWhere = {\n id\n };\n await onEntryBeforeGet.publish({\n where,\n model\n });\n const [entry] = await getEntriesByIdsUseCase.execute(model, { ids: [id] });\n if (!entry) {\n throw new NotFoundError(`Entry by ID \"${id}\" not found.`);\n }\n // TODO figure out without casting\n return entry as CmsEntry<T>;\n };\n const createEntry: CmsEntryContext[\"createEntry\"] = async <T = CmsEntryValues>(\n model: CmsModel,\n rawInput: CreateCmsEntryInput,\n options?: CreateCmsEntryOptionsInput\n ): Promise<CmsEntry<T>> => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\" });\n\n const { entry, input } = await createEntryData({\n context,\n model,\n options,\n rawInput,\n getLocale,\n getTenant,\n getIdentity: getSecurityIdentity,\n accessControl\n });\n\n await accessControl.ensureCanAccessEntry({ model, entry, rwd: \"w\" });\n\n let storageEntry: CmsStorageEntry | null = null;\n try {\n await onEntryBeforeCreate.publish({\n entry,\n input,\n model\n });\n\n storageEntry = await entryToStorageTransform(context, model, entry);\n\n const result = await storageOperations.entries.create(model, {\n entry,\n storageEntry\n });\n\n await onEntryAfterCreate.publish({\n entry,\n storageEntry: result,\n model,\n input\n });\n\n return entry as CmsEntry<T>;\n } catch (ex) {\n await onEntryCreateError.publish({\n error: ex,\n entry,\n model,\n input\n });\n throw new WebinyError(\n ex.message || \"Could not create content entry.\",\n ex.code || \"CREATE_ENTRY_ERROR\",\n ex.data || {\n error: ex,\n input,\n entry,\n storageEntry\n }\n );\n }\n };\n const createEntryRevisionFrom: CmsEntryContext[\"createEntryRevisionFrom\"] = async (\n model,\n sourceId,\n rawInput,\n options\n ) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\" });\n\n /**\n * Entries are identified by a common parent ID + Revision number.\n */\n const { id: uniqueId } = parseIdentifier(sourceId);\n\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, {\n id: sourceId\n });\n const latestStorageEntry = await getLatestRevisionByEntryIdUseCase.execute(model, {\n id: uniqueId\n });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(\n `Entry \"${sourceId}\" of model \"${model.modelId}\" was not found.`\n );\n }\n\n if (!latestStorageEntry) {\n throw new NotFoundError(\n `Latest entry \"${uniqueId}\" of model \"${model.modelId}\" was not found.`\n );\n }\n\n /**\n * We need to convert data from DB to its original form before using it further.\n */\n const originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n const { entry, input } = await createEntryRevisionFromData({\n sourceId,\n model,\n rawInput,\n options,\n context,\n getIdentity: getSecurityIdentity,\n getTenant,\n getLocale,\n originalEntry,\n latestStorageEntry,\n accessControl\n });\n\n await accessControl.ensureCanAccessEntry({ model, entry, rwd: \"w\" });\n\n let storageEntry: CmsStorageEntry | null = null;\n\n try {\n await onEntryBeforeCreateRevision.publish({\n input,\n entry,\n original: originalEntry,\n model\n });\n\n storageEntry = await entryToStorageTransform(context, model, entry);\n\n const result = await storageOperations.entries.createRevisionFrom(model, {\n entry,\n storageEntry\n });\n\n await onEntryRevisionAfterCreate.publish({\n input,\n entry,\n model,\n original: originalEntry,\n storageEntry: result\n });\n return entry;\n } catch (ex) {\n await onEntryCreateRevisionError.publish({\n entry,\n original: originalEntry,\n model,\n input,\n error: ex\n });\n throw new WebinyError(\n ex.message || \"Could not create entry from existing one.\",\n ex.code || \"CREATE_FROM_REVISION_ERROR\",\n {\n error: ex,\n entry,\n storageEntry,\n originalEntry,\n originalStorageEntry\n }\n );\n }\n };\n const updateEntry: CmsEntryContext[\"updateEntry\"] = async (\n model,\n id,\n rawInput,\n metaInput,\n options\n ) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\" });\n\n /**\n * The entry we are going to update.\n */\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, { id });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" of model \"${model.modelId}\" was not found.`);\n }\n\n if (originalStorageEntry.locked) {\n throw new WebinyError(\n `Cannot update entry because it's locked.`,\n \"CONTENT_ENTRY_UPDATE_ERROR\"\n );\n }\n\n const originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n const { entry, input } = await createUpdateEntryData({\n model,\n rawInput,\n options,\n context,\n getIdentity: getSecurityIdentity,\n getTenant,\n getLocale,\n originalEntry,\n metaInput\n });\n\n await accessControl.ensureCanAccessEntry({ model, entry, rwd: \"w\" });\n\n let storageEntry: CmsStorageEntry | null = null;\n\n try {\n await onEntryBeforeUpdate.publish({\n entry,\n model,\n input,\n original: originalEntry\n });\n\n storageEntry = await entryToStorageTransform(context, model, entry);\n\n const result = await storageOperations.entries.update(model, {\n entry,\n storageEntry\n });\n\n await onEntryAfterUpdate.publish({\n entry,\n storageEntry: result,\n model,\n input,\n original: originalEntry\n });\n\n return entry;\n } catch (ex) {\n await onEntryUpdateError.publish({\n entry,\n model,\n input,\n error: ex\n });\n throw new WebinyError(\n ex.message || \"Could not update existing entry.\",\n ex.code || \"UPDATE_ERROR\",\n {\n error: ex,\n entry,\n storageEntry,\n originalEntry,\n input\n }\n );\n }\n };\n\n const validateEntry: CmsEntryContext[\"validateEntry\"] = async (model, id, inputData) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\" });\n\n const input = mapAndCleanUpdatedInputData(model, inputData || {});\n let originalEntry: CmsEntry | undefined;\n if (id) {\n /**\n * The entry we are going to update.\n */\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, { id });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" of model \"${model.modelId}\" was not found.`);\n }\n originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n }\n\n await accessControl.ensureCanAccessEntry({ model, entry: originalEntry, rwd: \"w\" });\n\n const result = await validateModelEntryData({\n context,\n model,\n data: input,\n entry: originalEntry\n });\n return result.length > 0 ? result : [];\n };\n\n const moveEntry: CmsEntryContext[\"moveEntry\"] = async (model, id, folderId) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\" });\n\n /**\n * The entry we are going to move to another folder.\n */\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, { id });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" of model \"${model.modelId}\" was not found.`);\n }\n\n const entry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n await accessControl.ensureCanAccessEntry({ model, entry, rwd: \"w\" });\n\n /**\n * No need to continue if the entry is already in the requested folder.\n */\n if (entry.location?.folderId === folderId) {\n return entry;\n }\n\n try {\n await onEntryBeforeMove.publish({\n entry,\n model,\n folderId\n });\n await storageOperations.entries.move(model, id, folderId);\n await onEntryAfterMove.publish({\n entry,\n model,\n folderId\n });\n return entry;\n } catch (ex) {\n await onEntryMoveError.publish({\n entry,\n model,\n folderId,\n error: ex\n });\n throw WebinyError.from(ex, {\n message: `Could not move entry \"${id}\" of model \"${model.modelId}\".`,\n code: \"MOVE_ENTRY_ERROR\"\n });\n }\n };\n\n const republishEntry: CmsEntryContext[\"republishEntry\"] = async (model, id) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"w\", pw: \"p\" });\n\n /**\n * Fetch the entry from the storage.\n */\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, { id });\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" was not found!`);\n }\n\n const originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n await accessControl.ensureCanAccessEntry({\n model,\n entry: originalEntry,\n rwd: \"w\",\n pw: \"p\"\n });\n\n const { entry } = await createRepublishEntryData({\n context,\n model,\n originalEntry,\n getIdentity: getSecurityIdentity\n });\n\n const storageEntry = await entryToStorageTransform(context, model, entry);\n /**\n * First we need to update existing entry.\n */\n try {\n await storageOperations.entries.update(model, {\n entry,\n storageEntry\n });\n } catch (ex) {\n throw new WebinyError(\n \"Could not update existing entry with new data while re-publishing.\",\n \"REPUBLISH_UPDATE_ERROR\",\n {\n entry\n }\n );\n }\n /**\n * Then we move onto publishing it again.\n */\n try {\n await onEntryBeforeRepublish.publish({\n entry,\n model\n });\n\n const result = await storageOperations.entries.publish(model, {\n entry,\n storageEntry\n });\n\n await onEntryAfterRepublish.publish({\n entry,\n model,\n storageEntry: result\n });\n return entry;\n } catch (ex) {\n await onEntryRepublishError.publish({\n entry,\n model,\n error: ex\n });\n throw new WebinyError(\n \"Could not publish existing entry while re-publishing.\",\n \"REPUBLISH_PUBLISH_ERROR\",\n {\n entry\n }\n );\n }\n };\n const deleteEntryRevision: CmsEntryContext[\"deleteEntryRevision\"] = async (\n model,\n revisionId\n ) => {\n await accessControl.ensureCanAccessEntry({ model, rwd: \"d\" });\n\n const { id: entryId, version } = parseIdentifier(revisionId);\n\n const storageEntryToDelete = await getRevisionByIdUseCase.execute(model, {\n id: revisionId\n });\n const latestStorageEntry = await getLatestRevisionByEntryIdUseCase.execute(model, {\n id: entryId\n });\n const storagePreviousEntry = await getPreviousRevisionByEntryIdUseCase.execute(model, {\n entryId,\n version: version as number\n });\n\n if (!storageEntryToDelete) {\n throw new NotFoundError(`Entry \"${revisionId}\" was not found!`);\n }\n\n const latestEntryRevisionId = latestStorageEntry ? latestStorageEntry.id : null;\n\n const entryToDelete = await entryFromStorageTransform(context, model, storageEntryToDelete);\n\n await accessControl.ensureCanAccessEntry({ model, entry: entryToDelete, rwd: \"d\" });\n\n /**\n * If targeted record is the latest entry record and there is no previous one, we need\n * to run full delete with hooks. In this case, `deleteRevision` hooks are not fired.\n */\n if (entryToDelete.id === latestEntryRevisionId && !storagePreviousEntry) {\n return await deleteEntryOperation.execute(model, { entry: entryToDelete });\n }\n /**\n * If targeted record is the latest entry revision, set the previous one as the new latest.\n */\n let entryToSetAsLatest: CmsEntry | null = null;\n let storageEntryToSetAsLatest: CmsStorageEntry | null = null;\n let updatedEntryToSetAsLatest: CmsEntry | null = null;\n let storageUpdatedEntryToSetAsLatest: CmsStorageEntry | null = null;\n\n if (entryToDelete.id === latestEntryRevisionId && storagePreviousEntry) {\n entryToSetAsLatest = await entryFromStorageTransform(\n context,\n model,\n storagePreviousEntry\n );\n storageEntryToSetAsLatest = storagePreviousEntry;\n\n /**\n * Since we're setting a different revision as the latest, we need to update entry-level meta\n * fields. The values are taken from the latest revision we're about to delete. The update of the\n * new latest revision is performed within storage operations.\n */\n const pickedEntryLevelMetaFields = pickEntryMetaFields(\n entryToDelete,\n isEntryLevelEntryMetaField\n );\n\n updatedEntryToSetAsLatest = {\n ...entryToSetAsLatest,\n ...pickedEntryLevelMetaFields\n };\n\n storageUpdatedEntryToSetAsLatest = {\n ...storageEntryToSetAsLatest,\n ...pickedEntryLevelMetaFields\n };\n }\n\n try {\n await onEntryRevisionBeforeDelete.publish({\n entry: entryToDelete,\n model\n });\n\n await storageOperations.entries.deleteRevision(model, {\n entry: entryToDelete,\n storageEntry: storageEntryToDelete,\n latestEntry: updatedEntryToSetAsLatest,\n latestStorageEntry: storageUpdatedEntryToSetAsLatest\n });\n\n await onEntryRevisionAfterDelete.publish({\n entry: entryToDelete,\n model\n });\n } catch (ex) {\n await onEntryRevisionDeleteError.publish({\n entry: entryToDelete,\n model,\n error: ex\n });\n throw new WebinyError(ex.message, ex.code || \"DELETE_REVISION_ERROR\", {\n error: ex,\n entry: entryToDelete,\n storageEntry: storageEntryToDelete,\n latestEntry: updatedEntryToSetAsLatest,\n latestStorageEntry: storageUpdatedEntryToSetAsLatest\n });\n }\n };\n const deleteMultipleEntries: CmsEntryContext[\"deleteMultipleEntries\"] = async (\n model,\n params\n ) => {\n const { entries: input } = params;\n const maxDeletableEntries = 50;\n\n const entryIdList = new Set<string>();\n for (const id of input) {\n const { id: entryId } = parseIdentifier(id);\n entryIdList.add(entryId);\n }\n const ids = Array.from(entryIdList);\n\n if (ids.length > maxDeletableEntries) {\n throw new WebinyError(\n \"Cannot delete more than 50 entries at once.\",\n \"DELETE_ENTRIES_MAX\",\n {\n entries: ids\n }\n );\n }\n\n await accessControl.ensureCanAccessEntry({ model, rwd: \"d\" });\n\n const { items: entries } = await storageOperations.entries.list(model, {\n where: {\n latest: true,\n entryId_in: ids\n },\n limit: maxDeletableEntries + 1\n });\n /**\n * We do not want to allow deleting entries that user does not own or cannot access.\n */\n const items = (\n await filterAsync(entries, async entry => {\n return accessControl.canAccessEntry({ model, entry: entry });\n })\n ).map(entry => entry.id);\n\n try {\n await onEntryBeforeDeleteMultiple.publish({\n entries,\n ids,\n model\n });\n await storageOperations.entries.deleteMultipleEntries(model, {\n entries: items\n });\n await onEntryAfterDeleteMultiple.publish({\n entries,\n ids,\n model\n });\n return items.map(id => {\n return {\n id\n };\n });\n } catch (ex) {\n await onEntryDeleteMultipleError.publish({\n entries,\n ids,\n model,\n error: ex\n });\n throw new WebinyError(ex.message, ex.code || \"DELETE_ENTRIES_MULTIPLE_ERROR\", {\n error: ex,\n entries\n });\n }\n };\n\n const deleteEntry: CmsEntryContext[\"deleteEntry\"] = async (model, id, options = {}) => {\n const { permanently = true } = options;\n\n /**\n * If the 'permanently' flag is set to false, the entry must be moved to the bin; otherwise, deleted.\n */\n if (!permanently) {\n return await moveEntryToBinUseCase.execute(model, id, options);\n }\n\n return await deleteEntryUseCase.execute(model, id, options);\n };\n const publishEntry = async <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => {\n await accessControl.ensureCanAccessEntry({ model, pw: \"p\" });\n\n const originalStorageEntry = await getRevisionByIdUseCase.execute(model, { id });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" in the model \"${model.modelId}\" was not found.`);\n }\n\n const originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n await accessControl.ensureCanAccessEntry({ model, entry: originalEntry, pw: \"p\" });\n\n // We need the latest entry to get the latest entry-level meta fields.\n const latestStorageEntry = await getLatestRevisionByEntryIdUseCase.execute(model, {\n id: originalEntry.entryId\n });\n\n if (!latestStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" in the model \"${model.modelId}\" was not found.`);\n }\n\n const latestEntry = await entryFromStorageTransform(context, model, latestStorageEntry);\n\n const { entry } = await createPublishEntryData<T>({\n context,\n model,\n originalEntry,\n latestEntry,\n getIdentity: getSecurityIdentity\n });\n\n let storageEntry: CmsStorageEntry | null = null;\n\n try {\n await onEntryBeforePublish.publish({\n original: originalEntry,\n entry,\n model\n });\n\n storageEntry = await entryToStorageTransform(context, model, entry);\n const result = await storageOperations.entries.publish(model, {\n entry,\n storageEntry\n });\n\n await onEntryAfterPublish.publish({\n original: originalEntry,\n entry,\n storageEntry: result,\n model\n });\n return entry;\n } catch (ex) {\n await onEntryPublishError.publish({\n original: originalEntry,\n entry,\n model,\n error: ex\n });\n throw new WebinyError(\n ex.message || \"Could not publish entry.\",\n ex.code || \"PUBLISH_ERROR\",\n {\n error: ex,\n entry,\n storageEntry,\n originalEntry,\n originalStorageEntry\n }\n );\n }\n };\n const unpublishEntry = async <T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n id: string\n ) => {\n await accessControl.ensureCanAccessEntry({ model, pw: \"u\" });\n\n const { id: entryId } = parseIdentifier(id);\n\n const originalStorageEntry = await getPublishedRevisionByEntryIdUseCase.execute(model, {\n id: entryId\n });\n\n if (!originalStorageEntry) {\n throw new NotFoundError(`Entry \"${id}\" of model \"${model.modelId}\" was not found.`);\n }\n\n if (originalStorageEntry.id !== id) {\n throw new WebinyError(`Entry is not published.`, \"UNPUBLISH_ERROR\", {\n entry: originalStorageEntry\n });\n }\n\n const originalEntry = await entryFromStorageTransform(context, model, originalStorageEntry);\n\n await accessControl.ensureCanAccessEntry({ model, entry: originalEntry, pw: \"u\" });\n\n const { entry } = await createUnpublishEntryData<T>({\n context,\n model,\n originalEntry,\n getIdentity: getSecurityIdentity\n });\n\n let storageEntry: CmsStorageEntry | null = null;\n\n try {\n await onEntryBeforeUnpublish.publish({\n entry,\n model\n });\n\n storageEntry = await entryToStorageTransform(context, model, entry);\n\n const result = await storageOperations.entries.unpublish(model, {\n entry,\n storageEntry\n });\n\n await onEntryAfterUnpublish.publish({\n entry,\n storageEntry: result,\n model\n });\n\n return entry;\n } catch (ex) {\n await onEntryUnpublishError.publish({\n entry,\n model,\n error: ex\n });\n throw new WebinyError(\n ex.message || \"Could not unpublish entry.\",\n ex.code || \"UNPUBLISH_ERROR\",\n {\n originalEntry,\n originalStorageEntry,\n entry,\n storageEntry\n }\n );\n }\n };\n\n const getUniqueFieldValues: CmsEntryContext[\"getUniqueFieldValues\"] = async (model, params) => {\n await accessControl.ensureCanAccessEntry({ model });\n\n const { where: initialWhere, fieldId } = params;\n\n const where = {\n ...initialWhere\n };\n /**\n * Possibly only get records which are owned by current user.\n * Or if searching for the owner set that value - in the case that user can see other entries than their own.\n */\n if (await accessControl.canAccessOnlyOwnedEntries({ model })) {\n where.createdBy = getSecurityIdentity().id;\n }\n\n /**\n * Where must contain either latest or published keys.\n * We cannot list entries without one of those\n */\n if (where.latest && where.published) {\n throw new WebinyError(\n \"Cannot list entries that are both published and latest.\",\n \"LIST_ENTRIES_ERROR\",\n {\n where\n }\n );\n } else if (!where.latest && !where.published) {\n throw new WebinyError(\n \"Cannot list entries if we do not have latest or published defined.\",\n \"LIST_ENTRIES_ERROR\",\n {\n where\n }\n );\n }\n /**\n * We need to verify that the field in question is searchable.\n */\n const fields = getSearchableFields({\n fields: model.fields,\n plugins: context.plugins,\n input: []\n });\n\n if (!fields.includes(fieldId)) {\n throw new WebinyError(\n \"Cannot list unique entry field values if the field is not searchable.\",\n \"LIST_UNIQUE_ENTRY_VALUES_ERROR\",\n {\n fieldId\n }\n );\n }\n\n try {\n return await storageOperations.entries.getUniqueFieldValues(model, {\n where,\n fieldId\n });\n } catch (ex) {\n throw new WebinyError(\n \"Error while fetching unique entry values from storage.\",\n \"LIST_UNIQUE_ENTRY_VALUES_ERROR\",\n {\n error: {\n message: ex.message,\n code: ex.code,\n data: ex.data\n },\n model,\n where,\n fieldId\n }\n );\n }\n };\n\n const getEntryTraverser = async (modelId: string) => {\n const modelAstConverter = context.cms.getModelToAstConverter();\n const model = await context.cms.getModel(modelId);\n if (!model) {\n throw new Error(`Missing \"${modelId}\" model!`);\n }\n\n const modelAst = modelAstConverter.toAst(model);\n return new ContentEntryTraverser(modelAst);\n };\n\n return {\n getEntryTraverser,\n onEntryBeforeCreate,\n onEntryAfterCreate,\n onEntryCreateError,\n\n onEntryRevisionBeforeCreate: onEntryBeforeCreateRevision,\n onEntryRevisionAfterCreate,\n onEntryRevisionCreateError: onEntryCreateRevisionError,\n\n onEntryBeforeUpdate,\n onEntryAfterUpdate,\n onEntryUpdateError,\n\n onEntryBeforeMove,\n onEntryAfterMove,\n onEntryMoveError,\n\n onEntryBeforeDelete,\n onEntryAfterDelete,\n onEntryDeleteError,\n\n onEntryBeforeRestoreFromBin,\n onEntryAfterRestoreFromBin,\n onEntryRestoreFromBinError,\n\n onEntryRevisionBeforeDelete,\n onEntryRevisionAfterDelete,\n onEntryRevisionDeleteError,\n\n onEntryBeforePublish,\n onEntryAfterPublish,\n onEntryPublishError,\n\n onEntryBeforeRepublish,\n onEntryAfterRepublish,\n onEntryRepublishError,\n\n onEntryBeforeUnpublish,\n onEntryAfterUnpublish,\n onEntryUnpublishError,\n\n onEntryBeforeGet,\n onEntryBeforeList,\n /**\n * Get entries by exact revision IDs from the database.\n */\n async getEntriesByIds(model, ids) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.getEntriesByIds\",\n async () => {\n return getEntriesByIdsUseCase.execute(model, { ids });\n }\n );\n },\n /**\n * Get a single entry by revision ID from the database.\n */\n async getEntryById(model, id) {\n return context.benchmark.measure(\"headlessCms.crud.entries.getEntryById\", async () => {\n return getEntryById(model, id);\n });\n },\n /**\n * Get published revisions by entry IDs.\n */\n async getPublishedEntriesByIds(model: CmsModel, ids: string[]) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.getPublishedEntriesByIds\",\n async () => {\n return getPublishedEntriesByIdsUseCase.execute(model, { ids });\n }\n );\n },\n /**\n * Get the latest revisions by entry IDs.\n */\n async getLatestEntriesByIds(model: CmsModel, ids: string[]) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.getLatestEntriesByIds\",\n async () => {\n return await getLatestEntriesByIdsUseCase.execute(model, { ids });\n }\n );\n },\n async getEntryRevisions(model, entryId) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.getEntryRevisions\",\n async () => {\n return getRevisionsByEntryIdUseCase.execute(model, { id: entryId });\n }\n );\n },\n /**\n * @internal\n */\n async getEntry<T = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryGetParams\n ): Promise<CmsEntry<T>> {\n return context.benchmark.measure(\"headlessCms.crud.entries.getEntry\", async () => {\n return (await getEntryUseCase.execute(model, params)) as CmsEntry<T>;\n });\n },\n /**\n * @description Should not be used directly. Internal use only!\n *\n * @internal\n */\n async listEntries<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params: CmsEntryListParams\n ): Promise<[CmsEntry<T>[], CmsEntryMeta]> {\n return context.benchmark.measure(\"headlessCms.crud.entries.listEntries\", async () => {\n return await listEntriesUseCase.execute<T>(model, params);\n });\n },\n async listLatestEntries<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ): Promise<[CmsEntry<T>[], CmsEntryMeta]> {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.listLatestEntries\",\n async () => {\n return await listLatestUseCase.execute<T>(model, params);\n }\n );\n },\n async listDeletedEntries<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ): Promise<[CmsEntry<T>[], CmsEntryMeta]> {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.listDeletedEntries\",\n async () => {\n return await listDeletedUseCase.execute<T>(model, params);\n }\n );\n },\n async listPublishedEntries<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n params?: CmsEntryListParams\n ): Promise<[CmsEntry<T>[], CmsEntryMeta]> {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.listPublishedEntries\",\n async () => {\n return await listPublishedUseCase.execute<T>(model, params);\n }\n );\n },\n async createEntry<T extends CmsEntryValues = CmsEntryValues>(\n model: CmsModel,\n input: CreateCmsEntryInput<T>,\n options?: CreateCmsEntryOptionsInput\n ): Promise<CmsEntry<T>> {\n return context.benchmark.measure(\"headlessCms.crud.entries.createEntry\", async () => {\n return createEntry(model, input, options);\n });\n },\n async createEntryRevisionFrom(model, sourceId, input, options) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.createEntryRevisionFrom\",\n async () => {\n return createEntryRevisionFrom(model, sourceId, input, options);\n }\n );\n },\n async updateEntry(model, id, input, meta, options) {\n return context.benchmark.measure(\"headlessCms.crud.entries.updateEntry\", async () => {\n return updateEntry(model, id, input, meta, options);\n });\n },\n async validateEntry(model, id, input) {\n return context.benchmark.measure(\"headlessCms.crud.entries.validateEntry\", async () => {\n return validateEntry(model, id, input);\n });\n },\n async moveEntry(model, id, folderId) {\n return context.benchmark.measure(\"headlessCms.crud.entries.moveEntry\", async () => {\n return moveEntry(model, id, folderId);\n });\n },\n /**\n * Method used internally. Not documented and should not be used in users systems.\n * @internal\n */\n async republishEntry(model, id) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.republishEntry\",\n async () => {\n return republishEntry(model, id);\n }\n );\n },\n async deleteEntryRevision(model, id) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.deleteEntryRevision\",\n async () => {\n return deleteEntryRevision(model, id);\n }\n );\n },\n async deleteEntry(model, entryId, options) {\n return context.benchmark.measure(\"headlessCms.crud.entries.deleteEntry\", async () => {\n return deleteEntry(model, entryId, options);\n });\n },\n async restoreEntryFromBin(model, entryId) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.restoreEntryFromBin\",\n async () => {\n return await restoreEntryFromBinUseCase.execute(model, entryId);\n }\n );\n },\n async deleteMultipleEntries(model, ids) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.deleteMultipleEntries\",\n async () => {\n return deleteMultipleEntries(model, ids);\n }\n );\n },\n async publishEntry(model, id) {\n return context.benchmark.measure(\"headlessCms.crud.entries.publishEntry\", async () => {\n return publishEntry(model, id);\n });\n },\n async unpublishEntry(model, id) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.unpublishEntry\",\n async () => {\n return unpublishEntry(model, id);\n }\n );\n },\n async getUniqueFieldValues(model, params) {\n return context.benchmark.measure(\n \"headlessCms.crud.entries.getUniqueFieldValues\",\n async () => {\n return getUniqueFieldValues(model, params);\n }\n );\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import type { CmsContext, HeadlessCmsStorageOperations, OnModelBeforeCreateFromTopicParams, OnModelBeforeCreateTopicParams } from "../../types";
2
+ import type { Topic } from "@webiny/pubsub/types";
3
+ interface AssignBeforeModelCreateParams {
4
+ onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;
5
+ onModelBeforeCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
6
+ storageOperations: HeadlessCmsStorageOperations;
7
+ context: CmsContext;
8
+ }
9
+ /**
10
+ * We attach both on before create and createFrom events here.
11
+ * Callables are identical.
12
+ */
13
+ export declare const assignModelBeforeCreate: (params: AssignBeforeModelCreateParams) => void;
14
+ export {};
@@ -0,0 +1,130 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.assignModelBeforeCreate = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _camelCase = _interopRequireDefault(require("lodash/camelCase"));
10
+ var _CmsModelPlugin = require("../../plugins/CmsModelPlugin");
11
+ var _validateModel = require("./validateModel");
12
+ var _modelId = require("./validate/modelId");
13
+ var _singularApiName = require("./validate/singularApiName");
14
+ var _pluralApiName = require("./validate/pluralApiName");
15
+ var _endingAllowed = require("./validate/endingAllowed");
16
+ const getModelId = model => {
17
+ const {
18
+ modelId,
19
+ name
20
+ } = model;
21
+ const value = modelId ? modelId.trim() : null;
22
+ if (value) {
23
+ const isModelIdValid = (0, _camelCase.default)(value).toLowerCase() === value.toLowerCase();
24
+ if (isModelIdValid) {
25
+ return value;
26
+ }
27
+ return (0, _camelCase.default)(value);
28
+ } else if (name) {
29
+ return (0, _camelCase.default)(name.trim());
30
+ }
31
+ throw new _error.default(`There is no "modelId" or "name" passed into the create model method.`, "MISSING_MODEL_DATA", {
32
+ model
33
+ });
34
+ };
35
+ const createOnModelBeforeCb = ({
36
+ plugins,
37
+ storageOperations
38
+ }) => {
39
+ return async params => {
40
+ const {
41
+ model: newModel
42
+ } = params;
43
+ const modelId = getModelId(newModel);
44
+ newModel.modelId = modelId;
45
+ const modelPlugin = plugins.byType(_CmsModelPlugin.CmsModelPlugin.type).find(item => item.contentModel.modelId === modelId);
46
+ if (modelPlugin) {
47
+ throw new _error.default(`Cannot create "${newModel.modelId}" content model because one is already registered via a plugin.`, "CONTENT_MODEL_CREATE_ERROR", {
48
+ modelId: newModel.modelId
49
+ });
50
+ }
51
+ const models = await storageOperations.models.list({
52
+ where: {
53
+ tenant: newModel.tenant,
54
+ locale: newModel.locale
55
+ }
56
+ });
57
+ (0, _modelId.validateModelIdAllowed)({
58
+ model: newModel
59
+ });
60
+ (0, _endingAllowed.validateEndingAllowed)({
61
+ model: newModel
62
+ });
63
+ /**
64
+ * We need to check for the existence of:
65
+ * - modelId
66
+ * - singularApiName
67
+ * - pluralApiName
68
+ */
69
+ for (const model of models) {
70
+ (0, _modelId.validateExistingModelId)({
71
+ existingModel: model,
72
+ model: newModel
73
+ });
74
+ (0, _singularApiName.validateSingularApiName)({
75
+ existingModel: model,
76
+ model: newModel
77
+ });
78
+ (0, _pluralApiName.validatePluralApiName)({
79
+ existingModel: model,
80
+ model: newModel
81
+ });
82
+ }
83
+ };
84
+ };
85
+ /**
86
+ * We attach both on before create and createFrom events here.
87
+ * Callables are identical.
88
+ */
89
+ const assignModelBeforeCreate = params => {
90
+ const {
91
+ onModelBeforeCreate,
92
+ onModelBeforeCreateFrom,
93
+ storageOperations,
94
+ context
95
+ } = params;
96
+ onModelBeforeCreate.subscribe(async ({
97
+ model,
98
+ input
99
+ }) => {
100
+ /**
101
+ * Run the shared create/createFrom methods.
102
+ */
103
+ const cb = createOnModelBeforeCb({
104
+ storageOperations,
105
+ plugins: context.plugins
106
+ });
107
+ await cb({
108
+ model,
109
+ input
110
+ });
111
+ const models = await context.security.withoutAuthorization(async () => {
112
+ return context.cms.listModels();
113
+ });
114
+ /**
115
+ * and then we move onto model and fields...
116
+ */
117
+ await (0, _validateModel.validateModel)({
118
+ models,
119
+ model,
120
+ context
121
+ });
122
+ });
123
+ onModelBeforeCreateFrom.subscribe(createOnModelBeforeCb({
124
+ storageOperations,
125
+ plugins: context.plugins
126
+ }));
127
+ };
128
+ exports.assignModelBeforeCreate = assignModelBeforeCreate;
129
+
130
+ //# sourceMappingURL=beforeCreate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_camelCase","_CmsModelPlugin","_validateModel","_modelId","_singularApiName","_pluralApiName","_endingAllowed","getModelId","model","modelId","name","value","trim","isModelIdValid","camelCase","toLowerCase","WebinyError","createOnModelBeforeCb","plugins","storageOperations","params","newModel","modelPlugin","byType","CmsModelPlugin","type","find","item","contentModel","models","list","where","tenant","locale","validateModelIdAllowed","validateEndingAllowed","validateExistingModelId","existingModel","validateSingularApiName","validatePluralApiName","assignModelBeforeCreate","onModelBeforeCreate","onModelBeforeCreateFrom","context","subscribe","input","cb","security","withoutAuthorization","cms","listModels","validateModel","exports"],"sources":["beforeCreate.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport camelCase from \"lodash/camelCase\";\nimport type {\n CmsContext,\n CmsModel,\n HeadlessCmsStorageOperations,\n OnModelBeforeCreateFromTopicParams,\n OnModelBeforeCreateTopicParams\n} from \"~/types\";\nimport type { Topic } from \"@webiny/pubsub/types\";\nimport type { PluginsContainer } from \"@webiny/plugins\";\nimport { CmsModelPlugin } from \"~/plugins/CmsModelPlugin\";\nimport { validateModel } from \"./validateModel\";\nimport { validateExistingModelId, validateModelIdAllowed } from \"./validate/modelId\";\nimport { validateSingularApiName } from \"./validate/singularApiName\";\nimport { validatePluralApiName } from \"./validate/pluralApiName\";\nimport { validateEndingAllowed } from \"~/crud/contentModel/validate/endingAllowed\";\n\nconst getModelId = (model: CmsModel): string => {\n const { modelId, name } = model;\n const value = modelId ? modelId.trim() : null;\n if (value) {\n const isModelIdValid = camelCase(value).toLowerCase() === value.toLowerCase();\n if (isModelIdValid) {\n return value;\n }\n return camelCase(value);\n } else if (name) {\n return camelCase(name.trim());\n }\n throw new WebinyError(\n `There is no \"modelId\" or \"name\" passed into the create model method.`,\n \"MISSING_MODEL_DATA\",\n {\n model\n }\n );\n};\n\ninterface CreateOnModelBeforeCreateCbParams {\n plugins: PluginsContainer;\n storageOperations: HeadlessCmsStorageOperations;\n}\n\nconst createOnModelBeforeCb = ({\n plugins,\n storageOperations\n}: CreateOnModelBeforeCreateCbParams) => {\n return async (params: OnModelBeforeCreateTopicParams | OnModelBeforeCreateFromTopicParams) => {\n const { model: newModel } = params;\n\n const modelId = getModelId(newModel);\n\n newModel.modelId = modelId;\n\n const modelPlugin = plugins\n .byType<CmsModelPlugin>(CmsModelPlugin.type)\n .find((item: CmsModelPlugin) => item.contentModel.modelId === modelId);\n\n if (modelPlugin) {\n throw new WebinyError(\n `Cannot create \"${newModel.modelId}\" content model because one is already registered via a plugin.`,\n \"CONTENT_MODEL_CREATE_ERROR\",\n {\n modelId: newModel.modelId\n }\n );\n }\n\n const models = await storageOperations.models.list({\n where: {\n tenant: newModel.tenant,\n locale: newModel.locale\n }\n });\n\n validateModelIdAllowed({\n model: newModel\n });\n validateEndingAllowed({\n model: newModel\n });\n /**\n * We need to check for the existence of:\n * - modelId\n * - singularApiName\n * - pluralApiName\n */\n for (const model of models) {\n validateExistingModelId({\n existingModel: model,\n model: newModel\n });\n validateSingularApiName({\n existingModel: model,\n model: newModel\n });\n validatePluralApiName({\n existingModel: model,\n model: newModel\n });\n }\n };\n};\n\ninterface AssignBeforeModelCreateParams {\n onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;\n onModelBeforeCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;\n storageOperations: HeadlessCmsStorageOperations;\n context: CmsContext;\n}\n\n/**\n * We attach both on before create and createFrom events here.\n * Callables are identical.\n */\nexport const assignModelBeforeCreate = (params: AssignBeforeModelCreateParams) => {\n const { onModelBeforeCreate, onModelBeforeCreateFrom, storageOperations, context } = params;\n\n onModelBeforeCreate.subscribe(async ({ model, input }) => {\n /**\n * Run the shared create/createFrom methods.\n */\n const cb = createOnModelBeforeCb({\n storageOperations,\n plugins: context.plugins\n });\n await cb({\n model,\n input\n });\n const models = await context.security.withoutAuthorization(async () => {\n return context.cms.listModels();\n });\n /**\n * and then we move onto model and fields...\n */\n await validateModel({\n models,\n model,\n context\n });\n });\n\n onModelBeforeCreateFrom.subscribe(\n createOnModelBeforeCb({\n storageOperations,\n plugins: context.plugins\n })\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAUA,IAAAE,eAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AACA,IAAAO,cAAA,GAAAP,OAAA;AAEA,MAAMQ,UAAU,GAAIC,KAAe,IAAa;EAC5C,MAAM;IAAEC,OAAO;IAAEC;EAAK,CAAC,GAAGF,KAAK;EAC/B,MAAMG,KAAK,GAAGF,OAAO,GAAGA,OAAO,CAACG,IAAI,CAAC,CAAC,GAAG,IAAI;EAC7C,IAAID,KAAK,EAAE;IACP,MAAME,cAAc,GAAG,IAAAC,kBAAS,EAACH,KAAK,CAAC,CAACI,WAAW,CAAC,CAAC,KAAKJ,KAAK,CAACI,WAAW,CAAC,CAAC;IAC7E,IAAIF,cAAc,EAAE;MAChB,OAAOF,KAAK;IAChB;IACA,OAAO,IAAAG,kBAAS,EAACH,KAAK,CAAC;EAC3B,CAAC,MAAM,IAAID,IAAI,EAAE;IACb,OAAO,IAAAI,kBAAS,EAACJ,IAAI,CAACE,IAAI,CAAC,CAAC,CAAC;EACjC;EACA,MAAM,IAAII,cAAW,CACjB,sEAAsE,EACtE,oBAAoB,EACpB;IACIR;EACJ,CACJ,CAAC;AACL,CAAC;AAOD,MAAMS,qBAAqB,GAAGA,CAAC;EAC3BC,OAAO;EACPC;AAC+B,CAAC,KAAK;EACrC,OAAO,MAAOC,MAA2E,IAAK;IAC1F,MAAM;MAAEZ,KAAK,EAAEa;IAAS,CAAC,GAAGD,MAAM;IAElC,MAAMX,OAAO,GAAGF,UAAU,CAACc,QAAQ,CAAC;IAEpCA,QAAQ,CAACZ,OAAO,GAAGA,OAAO;IAE1B,MAAMa,WAAW,GAAGJ,OAAO,CACtBK,MAAM,CAAiBC,8BAAc,CAACC,IAAI,CAAC,CAC3CC,IAAI,CAAEC,IAAoB,IAAKA,IAAI,CAACC,YAAY,CAACnB,OAAO,KAAKA,OAAO,CAAC;IAE1E,IAAIa,WAAW,EAAE;MACb,MAAM,IAAIN,cAAW,CACjB,kBAAkBK,QAAQ,CAACZ,OAAO,iEAAiE,EACnG,4BAA4B,EAC5B;QACIA,OAAO,EAAEY,QAAQ,CAACZ;MACtB,CACJ,CAAC;IACL;IAEA,MAAMoB,MAAM,GAAG,MAAMV,iBAAiB,CAACU,MAAM,CAACC,IAAI,CAAC;MAC/CC,KAAK,EAAE;QACHC,MAAM,EAAEX,QAAQ,CAACW,MAAM;QACvBC,MAAM,EAAEZ,QAAQ,CAACY;MACrB;IACJ,CAAC,CAAC;IAEF,IAAAC,+BAAsB,EAAC;MACnB1B,KAAK,EAAEa;IACX,CAAC,CAAC;IACF,IAAAc,oCAAqB,EAAC;MAClB3B,KAAK,EAAEa;IACX,CAAC,CAAC;IACF;AACR;AACA;AACA;AACA;AACA;IACQ,KAAK,MAAMb,KAAK,IAAIqB,MAAM,EAAE;MACxB,IAAAO,gCAAuB,EAAC;QACpBC,aAAa,EAAE7B,KAAK;QACpBA,KAAK,EAAEa;MACX,CAAC,CAAC;MACF,IAAAiB,wCAAuB,EAAC;QACpBD,aAAa,EAAE7B,KAAK;QACpBA,KAAK,EAAEa;MACX,CAAC,CAAC;MACF,IAAAkB,oCAAqB,EAAC;QAClBF,aAAa,EAAE7B,KAAK;QACpBA,KAAK,EAAEa;MACX,CAAC,CAAC;IACN;EACJ,CAAC;AACL,CAAC;AASD;AACA;AACA;AACA;AACO,MAAMmB,uBAAuB,GAAIpB,MAAqC,IAAK;EAC9E,MAAM;IAAEqB,mBAAmB;IAAEC,uBAAuB;IAAEvB,iBAAiB;IAAEwB;EAAQ,CAAC,GAAGvB,MAAM;EAE3FqB,mBAAmB,CAACG,SAAS,CAAC,OAAO;IAAEpC,KAAK;IAAEqC;EAAM,CAAC,KAAK;IACtD;AACR;AACA;IACQ,MAAMC,EAAE,GAAG7B,qBAAqB,CAAC;MAC7BE,iBAAiB;MACjBD,OAAO,EAAEyB,OAAO,CAACzB;IACrB,CAAC,CAAC;IACF,MAAM4B,EAAE,CAAC;MACLtC,KAAK;MACLqC;IACJ,CAAC,CAAC;IACF,MAAMhB,MAAM,GAAG,MAAMc,OAAO,CAACI,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MACnE,OAAOL,OAAO,CAACM,GAAG,CAACC,UAAU,CAAC,CAAC;IACnC,CAAC,CAAC;IACF;AACR;AACA;IACQ,MAAM,IAAAC,4BAAa,EAAC;MAChBtB,MAAM;MACNrB,KAAK;MACLmC;IACJ,CAAC,CAAC;EACN,CAAC,CAAC;EAEFD,uBAAuB,CAACE,SAAS,CAC7B3B,qBAAqB,CAAC;IAClBE,iBAAiB;IACjBD,OAAO,EAAEyB,OAAO,CAACzB;EACrB,CAAC,CACL,CAAC;AACL,CAAC;AAACkC,OAAA,CAAAZ,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { Topic } from "@webiny/pubsub/types";
2
+ import type { CmsContext, OnModelBeforeDeleteTopicParams } from "../../types";
3
+ interface AssignBeforeModelDeleteParams {
4
+ onModelBeforeDelete: Topic<OnModelBeforeDeleteTopicParams>;
5
+ context: CmsContext;
6
+ }
7
+ export declare const assignModelBeforeDelete: (params: AssignBeforeModelDeleteParams) => void;
8
+ export {};
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.assignModelBeforeDelete = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _CmsModelPlugin = require("../../plugins/CmsModelPlugin");
10
+ var _constants = require("../../constants");
11
+ const assignModelBeforeDelete = params => {
12
+ const {
13
+ onModelBeforeDelete,
14
+ context
15
+ } = params;
16
+ onModelBeforeDelete.subscribe(async params => {
17
+ const {
18
+ model
19
+ } = params;
20
+ const modelPlugin = context.plugins.byType(_CmsModelPlugin.CmsModelPlugin.type).find(item => item.contentModel.modelId === model.modelId);
21
+ if (modelPlugin) {
22
+ throw new _error.default("Content models defined via plugins cannot be deleted.", "CONTENT_MODEL_DELETE_ERROR", {
23
+ modelId: model.modelId
24
+ });
25
+ }
26
+ const tags = Array.isArray(model.tags) ? model.tags : [];
27
+ /**
28
+ * If the model is a singleton, we need to delete all entries.
29
+ * There will be either 0 or 1 entries in latest or deleted, but let's put high limit, just in case...
30
+ */
31
+ if (tags.includes(_constants.CMS_MODEL_SINGLETON_TAG)) {
32
+ const [latestEntries] = await context.cms.listLatestEntries(model, {
33
+ limit: 10000
34
+ });
35
+ if (latestEntries.length > 0) {
36
+ for (const item of latestEntries) {
37
+ await context.cms.deleteEntry(model, item.id, {
38
+ permanently: true
39
+ });
40
+ }
41
+ return;
42
+ }
43
+ const [deletedEntries] = await context.cms.listDeletedEntries(model, {
44
+ limit: 10000
45
+ });
46
+ if (deletedEntries.length === 0) {
47
+ return;
48
+ }
49
+ for (const item of deletedEntries) {
50
+ await context.cms.deleteEntry(model, item.id, {
51
+ permanently: true
52
+ });
53
+ }
54
+ return;
55
+ }
56
+ try {
57
+ const [latestEntries] = await context.cms.listLatestEntries(model, {
58
+ limit: 1
59
+ });
60
+ if (latestEntries.length > 0) {
61
+ throw new _error.default(`Cannot delete content model "${model.modelId}" because there are existing entries.`, "CONTENT_MODEL_BEFORE_DELETE_HOOK_FAILED");
62
+ }
63
+ const [deletedEntries] = await context.cms.listDeletedEntries(model, {
64
+ limit: 1
65
+ });
66
+ if (deletedEntries.length > 0) {
67
+ throw new _error.default(`Cannot delete content model "${model.modelId}" because there are existing entries in the trash.`, "CONTENT_MODEL_BEFORE_DELETE_HOOK_FAILED");
68
+ }
69
+ } catch (ex) {
70
+ throw _error.default.from(ex, {
71
+ message: "Could not retrieve a list of content entries from the model.",
72
+ code: "ENTRIES_ERROR",
73
+ data: {
74
+ model
75
+ }
76
+ });
77
+ }
78
+ });
79
+ };
80
+ exports.assignModelBeforeDelete = assignModelBeforeDelete;
81
+
82
+ //# sourceMappingURL=beforeDelete.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_CmsModelPlugin","_constants","assignModelBeforeDelete","params","onModelBeforeDelete","context","subscribe","model","modelPlugin","plugins","byType","CmsModelPlugin","type","find","item","contentModel","modelId","WebinyError","tags","Array","isArray","includes","CMS_MODEL_SINGLETON_TAG","latestEntries","cms","listLatestEntries","limit","length","deleteEntry","id","permanently","deletedEntries","listDeletedEntries","ex","from","message","code","data","exports"],"sources":["beforeDelete.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport type { CmsContext, OnModelBeforeDeleteTopicParams } from \"~/types\";\nimport WebinyError from \"@webiny/error\";\nimport { CmsModelPlugin } from \"~/plugins/CmsModelPlugin\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants\";\n\ninterface AssignBeforeModelDeleteParams {\n onModelBeforeDelete: Topic<OnModelBeforeDeleteTopicParams>;\n context: CmsContext;\n}\nexport const assignModelBeforeDelete = (params: AssignBeforeModelDeleteParams) => {\n const { onModelBeforeDelete, context } = params;\n\n onModelBeforeDelete.subscribe(async params => {\n const { model } = params;\n\n const modelPlugin = context.plugins\n .byType<CmsModelPlugin>(CmsModelPlugin.type)\n .find(item => item.contentModel.modelId === model.modelId);\n\n if (modelPlugin) {\n throw new WebinyError(\n \"Content models defined via plugins cannot be deleted.\",\n \"CONTENT_MODEL_DELETE_ERROR\",\n {\n modelId: model.modelId\n }\n );\n }\n\n const tags = Array.isArray(model.tags) ? model.tags : [];\n /**\n * If the model is a singleton, we need to delete all entries.\n * There will be either 0 or 1 entries in latest or deleted, but let's put high limit, just in case...\n */\n if (tags.includes(CMS_MODEL_SINGLETON_TAG)) {\n const [latestEntries] = await context.cms.listLatestEntries(model, {\n limit: 10000\n });\n\n if (latestEntries.length > 0) {\n for (const item of latestEntries) {\n await context.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n return;\n }\n\n const [deletedEntries] = await context.cms.listDeletedEntries(model, {\n limit: 10000\n });\n\n if (deletedEntries.length === 0) {\n return;\n }\n\n for (const item of deletedEntries) {\n await context.cms.deleteEntry(model, item.id, {\n permanently: true\n });\n }\n\n return;\n }\n\n try {\n const [latestEntries] = await context.cms.listLatestEntries(model, { limit: 1 });\n\n if (latestEntries.length > 0) {\n throw new WebinyError(\n `Cannot delete content model \"${model.modelId}\" because there are existing entries.`,\n \"CONTENT_MODEL_BEFORE_DELETE_HOOK_FAILED\"\n );\n }\n\n const [deletedEntries] = await context.cms.listDeletedEntries(model, { limit: 1 });\n\n if (deletedEntries.length > 0) {\n throw new WebinyError(\n `Cannot delete content model \"${model.modelId}\" because there are existing entries in the trash.`,\n \"CONTENT_MODEL_BEFORE_DELETE_HOOK_FAILED\"\n );\n }\n } catch (ex) {\n throw WebinyError.from(ex, {\n message: \"Could not retrieve a list of content entries from the model.\",\n code: \"ENTRIES_ERROR\",\n data: {\n model\n }\n });\n }\n });\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { Topic } from "@webiny/pubsub/types";
2
+ import type { CmsContext, OnModelBeforeUpdateTopicParams } from "../../types";
3
+ interface AssignBeforeModelUpdateParams {
4
+ onModelBeforeUpdate: Topic<OnModelBeforeUpdateTopicParams>;
5
+ context: CmsContext;
6
+ }
7
+ export declare const assignModelBeforeUpdate: (params: AssignBeforeModelUpdateParams) => void;
8
+ export {};
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.assignModelBeforeUpdate = void 0;
7
+ var _validateModel = require("./validateModel");
8
+ var _singularApiName = require("./validate/singularApiName");
9
+ var _pluralApiName = require("./validate/pluralApiName");
10
+ var _endingAllowed = require("./validate/endingAllowed");
11
+ const assignModelBeforeUpdate = params => {
12
+ const {
13
+ onModelBeforeUpdate,
14
+ context
15
+ } = params;
16
+ onModelBeforeUpdate.subscribe(async ({
17
+ model: newModel,
18
+ original
19
+ }) => {
20
+ const models = await context.security.withoutAuthorization(async () => {
21
+ return (await context.cms.listModels()).filter(model => {
22
+ return model.modelId !== newModel.modelId;
23
+ });
24
+ });
25
+ (0, _endingAllowed.validateEndingAllowed)({
26
+ model: newModel
27
+ });
28
+ /**
29
+ * We need to check for the existence of:
30
+ * - modelId
31
+ * - singularApiName
32
+ * - pluralApiName
33
+ */
34
+ for (const model of models) {
35
+ (0, _singularApiName.validateSingularApiName)({
36
+ existingModel: model,
37
+ model: newModel
38
+ });
39
+ (0, _pluralApiName.validatePluralApiName)({
40
+ existingModel: model,
41
+ model: newModel
42
+ });
43
+ }
44
+ /**
45
+ * then the model and fields...
46
+ */
47
+ await (0, _validateModel.validateModel)({
48
+ models,
49
+ model: newModel,
50
+ original,
51
+ context
52
+ });
53
+ });
54
+ };
55
+ exports.assignModelBeforeUpdate = assignModelBeforeUpdate;
56
+
57
+ //# sourceMappingURL=beforeUpdate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_validateModel","require","_singularApiName","_pluralApiName","_endingAllowed","assignModelBeforeUpdate","params","onModelBeforeUpdate","context","subscribe","model","newModel","original","models","security","withoutAuthorization","cms","listModels","filter","modelId","validateEndingAllowed","validateSingularApiName","existingModel","validatePluralApiName","validateModel","exports"],"sources":["beforeUpdate.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport type { CmsContext, OnModelBeforeUpdateTopicParams } from \"~/types\";\nimport { validateModel } from \"./validateModel\";\nimport { validateSingularApiName } from \"./validate/singularApiName\";\nimport { validatePluralApiName } from \"./validate/pluralApiName\";\nimport { validateEndingAllowed } from \"~/crud/contentModel/validate/endingAllowed\";\n\ninterface AssignBeforeModelUpdateParams {\n onModelBeforeUpdate: Topic<OnModelBeforeUpdateTopicParams>;\n context: CmsContext;\n}\n\nexport const assignModelBeforeUpdate = (params: AssignBeforeModelUpdateParams) => {\n const { onModelBeforeUpdate, context } = params;\n\n onModelBeforeUpdate.subscribe(async ({ model: newModel, original }) => {\n const models = await context.security.withoutAuthorization(async () => {\n return (await context.cms.listModels()).filter(model => {\n return model.modelId !== newModel.modelId;\n });\n });\n\n validateEndingAllowed({\n model: newModel\n });\n /**\n * We need to check for the existence of:\n * - modelId\n * - singularApiName\n * - pluralApiName\n */\n for (const model of models) {\n validateSingularApiName({\n existingModel: model,\n model: newModel\n });\n validatePluralApiName({\n existingModel: model,\n model: newModel\n });\n }\n /**\n * then the model and fields...\n */\n await validateModel({\n models,\n model: newModel,\n original,\n context\n });\n });\n};\n"],"mappings":";;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AAOO,MAAMI,uBAAuB,GAAIC,MAAqC,IAAK;EAC9E,MAAM;IAAEC,mBAAmB;IAAEC;EAAQ,CAAC,GAAGF,MAAM;EAE/CC,mBAAmB,CAACE,SAAS,CAAC,OAAO;IAAEC,KAAK,EAAEC,QAAQ;IAAEC;EAAS,CAAC,KAAK;IACnE,MAAMC,MAAM,GAAG,MAAML,OAAO,CAACM,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MACnE,OAAO,CAAC,MAAMP,OAAO,CAACQ,GAAG,CAACC,UAAU,CAAC,CAAC,EAAEC,MAAM,CAACR,KAAK,IAAI;QACpD,OAAOA,KAAK,CAACS,OAAO,KAAKR,QAAQ,CAACQ,OAAO;MAC7C,CAAC,CAAC;IACN,CAAC,CAAC;IAEF,IAAAC,oCAAqB,EAAC;MAClBV,KAAK,EAAEC;IACX,CAAC,CAAC;IACF;AACR;AACA;AACA;AACA;AACA;IACQ,KAAK,MAAMD,KAAK,IAAIG,MAAM,EAAE;MACxB,IAAAQ,wCAAuB,EAAC;QACpBC,aAAa,EAAEZ,KAAK;QACpBA,KAAK,EAAEC;MACX,CAAC,CAAC;MACF,IAAAY,oCAAqB,EAAC;QAClBD,aAAa,EAAEZ,KAAK;QACpBA,KAAK,EAAEC;MACX,CAAC,CAAC;IACN;IACA;AACR;AACA;IACQ,MAAM,IAAAa,4BAAa,EAAC;MAChBX,MAAM;MACNH,KAAK,EAAEC,QAAQ;MACfC,QAAQ;MACRJ;IACJ,CAAC,CAAC;EACN,CAAC,CAAC;AACN,CAAC;AAACiB,OAAA,CAAApB,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { CmsModel } from "../../../types";
2
+ export declare const ensureSingularApiName: (model: CmsModel) => string;
3
+ export declare const ensurePluralApiName: (model: CmsModel) => string;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ensureSingularApiName = exports.ensurePluralApiName = void 0;
8
+ var _camelCase = _interopRequireDefault(require("lodash/camelCase"));
9
+ var _upperFirst = _interopRequireDefault(require("lodash/upperFirst"));
10
+ var _pluralize = _interopRequireDefault(require("pluralize"));
11
+ const ensureSingularApiName = model => {
12
+ if (!model.singularApiName) {
13
+ return (0, _upperFirst.default)((0, _camelCase.default)(model.modelId));
14
+ }
15
+ return model.singularApiName;
16
+ };
17
+ exports.ensureSingularApiName = ensureSingularApiName;
18
+ const ensurePluralApiName = model => {
19
+ if (!model.pluralApiName) {
20
+ return (0, _pluralize.default)(ensureSingularApiName(model));
21
+ }
22
+ return model.pluralApiName;
23
+ };
24
+ exports.ensurePluralApiName = ensurePluralApiName;
25
+
26
+ //# sourceMappingURL=modelApiName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_camelCase","_interopRequireDefault","require","_upperFirst","_pluralize","ensureSingularApiName","model","singularApiName","upperFirst","camelCase","modelId","exports","ensurePluralApiName","pluralApiName","pluralize"],"sources":["modelApiName.ts"],"sourcesContent":["import camelCase from \"lodash/camelCase\";\nimport upperFirst from \"lodash/upperFirst\";\nimport pluralize from \"pluralize\";\nimport type { CmsModel } from \"~/types\";\n\nexport const ensureSingularApiName = (model: CmsModel): string => {\n if (!model.singularApiName) {\n return upperFirst(camelCase(model.modelId));\n }\n return model.singularApiName;\n};\n\nexport const ensurePluralApiName = (model: CmsModel): string => {\n if (!model.pluralApiName) {\n return pluralize(ensureSingularApiName(model));\n }\n return model.pluralApiName;\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,sBAAA,CAAAC,OAAA;AAGO,MAAMG,qBAAqB,GAAIC,KAAe,IAAa;EAC9D,IAAI,CAACA,KAAK,CAACC,eAAe,EAAE;IACxB,OAAO,IAAAC,mBAAU,EAAC,IAAAC,kBAAS,EAACH,KAAK,CAACI,OAAO,CAAC,CAAC;EAC/C;EACA,OAAOJ,KAAK,CAACC,eAAe;AAChC,CAAC;AAACI,OAAA,CAAAN,qBAAA,GAAAA,qBAAA;AAEK,MAAMO,mBAAmB,GAAIN,KAAe,IAAa;EAC5D,IAAI,CAACA,KAAK,CAACO,aAAa,EAAE;IACtB,OAAO,IAAAC,kBAAS,EAACT,qBAAqB,CAACC,KAAK,CAAC,CAAC;EAClD;EACA,OAAOA,KAAK,CAACO,aAAa;AAC9B,CAAC;AAACF,OAAA,CAAAC,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { CmsModel, CmsContext, CmsModelManager } from "../../types";
2
+ export declare const contentModelManagerFactory: <T>(context: CmsContext, model: CmsModel) => Promise<CmsModelManager<T>>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.contentModelManagerFactory = void 0;
7
+ const defaultName = "content-model-manager-default";
8
+ const contentModelManagerFactory = async (context, model) => {
9
+ const pluginsByType = context.plugins.byType("cms-content-model-manager").reverse();
10
+ for (const plugin of pluginsByType) {
11
+ const target = Array.isArray(plugin.modelId) ? plugin.modelId : [plugin.modelId];
12
+ if (target.includes(model.modelId) === true && plugin.name !== defaultName) {
13
+ return await plugin.create(context, model);
14
+ }
15
+ }
16
+ const plugin = pluginsByType.find(plugin => plugin.name === defaultName);
17
+ if (!plugin) {
18
+ throw new Error("There is no default plugin to create CmsModelManager");
19
+ }
20
+ return await plugin.create(context, model);
21
+ };
22
+ exports.contentModelManagerFactory = contentModelManagerFactory;
23
+
24
+ //# sourceMappingURL=contentModelManagerFactory.js.map