@webiny/api-headless-cms 0.0.0-mt-3 → 0.0.0-unstable.085ff6572f

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 (680) hide show
  1. package/constants.d.ts +1 -0
  2. package/constants.js +8 -0
  3. package/constants.js.map +1 -0
  4. package/context.d.ts +6 -0
  5. package/context.js +130 -0
  6. package/context.js.map +1 -0
  7. package/crud/contentEntry/afterDelete.d.ts +8 -0
  8. package/{content/plugins/crud → crud}/contentEntry/afterDelete.js +2 -7
  9. package/crud/contentEntry/afterDelete.js.map +1 -0
  10. package/crud/contentEntry/beforeCreate.d.ts +8 -0
  11. package/{content/plugins/crud → crud}/contentEntry/beforeCreate.js +2 -5
  12. package/crud/contentEntry/beforeCreate.js.map +1 -0
  13. package/crud/contentEntry/beforeUpdate.d.ts +8 -0
  14. package/{content/plugins/crud → crud}/contentEntry/beforeUpdate.js +2 -5
  15. package/crud/contentEntry/beforeUpdate.js.map +1 -0
  16. package/crud/contentEntry/entryDataValidation.d.ts +10 -0
  17. package/{content/plugins/crud → crud}/contentEntry/entryDataValidation.js +22 -49
  18. package/crud/contentEntry/entryDataValidation.js.map +1 -0
  19. package/{content/plugins/crud → crud}/contentEntry/markLockedFields.d.ts +3 -2
  20. package/{content/plugins/crud → crud}/contentEntry/markLockedFields.js +29 -43
  21. package/crud/contentEntry/markLockedFields.js.map +1 -0
  22. package/crud/contentEntry/referenceFieldsMapping.d.ts +13 -0
  23. package/crud/contentEntry/referenceFieldsMapping.js +265 -0
  24. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -0
  25. package/crud/contentEntry/searchableFields.d.ts +9 -0
  26. package/crud/contentEntry/searchableFields.js +72 -0
  27. package/crud/contentEntry/searchableFields.js.map +1 -0
  28. package/crud/contentEntry.crud.d.ts +20 -0
  29. package/crud/contentEntry.crud.js +1477 -0
  30. package/crud/contentEntry.crud.js.map +1 -0
  31. package/crud/contentModel/afterCreate.d.ts +8 -0
  32. package/crud/contentModel/afterCreate.js +16 -0
  33. package/crud/contentModel/afterCreate.js.map +1 -0
  34. package/crud/contentModel/afterCreateFrom.d.ts +8 -0
  35. package/crud/contentModel/afterCreateFrom.js +16 -0
  36. package/crud/contentModel/afterCreateFrom.js.map +1 -0
  37. package/crud/contentModel/afterDelete.d.ts +8 -0
  38. package/crud/contentModel/afterDelete.js +16 -0
  39. package/crud/contentModel/afterDelete.js.map +1 -0
  40. package/crud/contentModel/afterUpdate.d.ts +8 -0
  41. package/crud/contentModel/afterUpdate.js +16 -0
  42. package/crud/contentModel/afterUpdate.js.map +1 -0
  43. package/crud/contentModel/beforeCreate.d.ts +14 -0
  44. package/crud/contentModel/beforeCreate.js +128 -0
  45. package/crud/contentModel/beforeCreate.js.map +1 -0
  46. package/crud/contentModel/beforeDelete.d.ts +10 -0
  47. package/{content/plugins/crud → crud}/contentModel/beforeDelete.js +8 -18
  48. package/crud/contentModel/beforeDelete.js.map +1 -0
  49. package/crud/contentModel/beforeUpdate.d.ts +8 -0
  50. package/crud/contentModel/beforeUpdate.js +60 -0
  51. package/crud/contentModel/beforeUpdate.js.map +1 -0
  52. package/crud/contentModel/compatibility/modelApiName.d.ts +3 -0
  53. package/crud/contentModel/compatibility/modelApiName.js +24 -0
  54. package/crud/contentModel/compatibility/modelApiName.js.map +1 -0
  55. package/crud/contentModel/contentModelManagerFactory.d.ts +2 -0
  56. package/{content/plugins/crud → crud}/contentModel/contentModelManagerFactory.js +0 -7
  57. package/crud/contentModel/contentModelManagerFactory.js.map +1 -0
  58. package/crud/contentModel/createFieldStorageId.d.ts +2 -0
  59. package/crud/contentModel/createFieldStorageId.js +17 -0
  60. package/crud/contentModel/createFieldStorageId.js.map +1 -0
  61. package/crud/contentModel/defaultFields.d.ts +5 -0
  62. package/crud/contentModel/defaultFields.js +58 -0
  63. package/crud/contentModel/defaultFields.js.map +1 -0
  64. package/crud/contentModel/fields/descriptionField.d.ts +2 -0
  65. package/crud/contentModel/fields/descriptionField.js +42 -0
  66. package/crud/contentModel/fields/descriptionField.js.map +1 -0
  67. package/crud/contentModel/fields/imageField.d.ts +2 -0
  68. package/crud/contentModel/fields/imageField.js +46 -0
  69. package/crud/contentModel/fields/imageField.js.map +1 -0
  70. package/crud/contentModel/fields/titleField.d.ts +2 -0
  71. package/crud/contentModel/fields/titleField.js +58 -0
  72. package/crud/contentModel/fields/titleField.js.map +1 -0
  73. package/crud/contentModel/validate/endingAllowed.d.ts +6 -0
  74. package/crud/contentModel/validate/endingAllowed.js +26 -0
  75. package/crud/contentModel/validate/endingAllowed.js.map +1 -0
  76. package/crud/contentModel/validate/isModelEndingAllowed.d.ts +6 -0
  77. package/crud/contentModel/validate/isModelEndingAllowed.js +24 -0
  78. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -0
  79. package/crud/contentModel/validate/modelId.d.ts +11 -0
  80. package/crud/contentModel/validate/modelId.js +36 -0
  81. package/crud/contentModel/validate/modelId.js.map +1 -0
  82. package/crud/contentModel/validate/pluralApiName.d.ts +7 -0
  83. package/crud/contentModel/validate/pluralApiName.js +24 -0
  84. package/crud/contentModel/validate/pluralApiName.js.map +1 -0
  85. package/crud/contentModel/validate/singularApiName.d.ts +7 -0
  86. package/crud/contentModel/validate/singularApiName.js +24 -0
  87. package/crud/contentModel/validate/singularApiName.js.map +1 -0
  88. package/crud/contentModel/validateLayout.d.ts +2 -0
  89. package/{content/plugins/crud → crud}/contentModel/validateLayout.js +1 -11
  90. package/crud/contentModel/validateLayout.js.map +1 -0
  91. package/crud/contentModel/validateModel.d.ts +9 -0
  92. package/crud/contentModel/validateModel.js +27 -0
  93. package/crud/contentModel/validateModel.js.map +1 -0
  94. package/crud/contentModel/validateModelFields.d.ts +9 -0
  95. package/crud/contentModel/validateModelFields.js +342 -0
  96. package/crud/contentModel/validateModelFields.js.map +1 -0
  97. package/crud/contentModel/validation.d.ts +551 -0
  98. package/crud/contentModel/validation.js +145 -0
  99. package/crud/contentModel/validation.js.map +1 -0
  100. package/crud/contentModel.crud.d.ts +14 -0
  101. package/crud/contentModel.crud.js +626 -0
  102. package/crud/contentModel.crud.js.map +1 -0
  103. package/crud/contentModelGroup/beforeCreate.d.ts +10 -0
  104. package/{content/plugins/crud → crud}/contentModelGroup/beforeCreate.js +8 -20
  105. package/crud/contentModelGroup/beforeCreate.js.map +1 -0
  106. package/crud/contentModelGroup/beforeDelete.d.ts +10 -0
  107. package/{content/plugins/crud → crud}/contentModelGroup/beforeDelete.js +4 -12
  108. package/crud/contentModelGroup/beforeDelete.js.map +1 -0
  109. package/crud/contentModelGroup/beforeUpdate.d.ts +9 -0
  110. package/{content/plugins/crud → crud}/contentModelGroup/beforeUpdate.js +3 -8
  111. package/crud/contentModelGroup/beforeUpdate.js.map +1 -0
  112. package/crud/contentModelGroup/validation.d.ts +30 -0
  113. package/crud/contentModelGroup/validation.js +34 -0
  114. package/crud/contentModelGroup/validation.js.map +1 -0
  115. package/{content/plugins/crud → crud}/contentModelGroup.crud.d.ts +5 -3
  116. package/crud/contentModelGroup.crud.js +367 -0
  117. package/crud/contentModelGroup.crud.js.map +1 -0
  118. package/crud/settings.crud.d.ts +12 -0
  119. package/crud/settings.crud.js +62 -0
  120. package/crud/settings.crud.js.map +1 -0
  121. package/{content/plugins/crud/contentModel.crud.d.ts → crud/system.crud.d.ts} +5 -4
  122. package/crud/system.crud.js +126 -0
  123. package/crud/system.crud.js.map +1 -0
  124. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.d.ts +7 -0
  125. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +53 -0
  126. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -0
  127. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  128. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
  129. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  130. package/fieldConverters/CmsModelObjectFieldConverterPlugin.d.ts +11 -0
  131. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +251 -0
  132. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -0
  133. package/fieldConverters/index.d.ts +4 -0
  134. package/fieldConverters/index.js +13 -0
  135. package/fieldConverters/index.js.map +1 -0
  136. package/graphql/buildSchemaPlugins.d.ts +11 -0
  137. package/graphql/buildSchemaPlugins.js +19 -0
  138. package/graphql/buildSchemaPlugins.js.map +1 -0
  139. package/graphql/checkEndpointAccess.d.ts +2 -0
  140. package/graphql/checkEndpointAccess.js +18 -0
  141. package/graphql/checkEndpointAccess.js.map +1 -0
  142. package/graphql/createExecutableSchema.d.ts +6 -0
  143. package/graphql/createExecutableSchema.js +29 -0
  144. package/graphql/createExecutableSchema.js.map +1 -0
  145. package/graphql/createRequestBody.d.ts +2 -0
  146. package/graphql/createRequestBody.js +14 -0
  147. package/graphql/createRequestBody.js.map +1 -0
  148. package/graphql/formatErrorPayload.d.ts +1 -0
  149. package/graphql/formatErrorPayload.js +25 -0
  150. package/graphql/formatErrorPayload.js.map +1 -0
  151. package/graphql/generateSchema.d.ts +8 -0
  152. package/graphql/generateSchema.js +31 -0
  153. package/graphql/generateSchema.js.map +1 -0
  154. package/graphql/getSchema.d.ts +17 -0
  155. package/graphql/getSchema.js +102 -0
  156. package/graphql/getSchema.js.map +1 -0
  157. package/graphql/graphQLHandlerFactory.d.ts +5 -0
  158. package/graphql/graphQLHandlerFactory.js +35 -0
  159. package/graphql/graphQLHandlerFactory.js.map +1 -0
  160. package/graphql/handleRequest.d.ts +11 -0
  161. package/graphql/handleRequest.js +81 -0
  162. package/graphql/handleRequest.js.map +1 -0
  163. package/graphql/index.d.ts +3 -0
  164. package/graphql/index.js +13 -0
  165. package/graphql/index.js.map +1 -0
  166. package/graphql/schema/baseContentSchema.d.ts +7 -0
  167. package/graphql/schema/baseContentSchema.js +66 -0
  168. package/graphql/schema/baseContentSchema.js.map +1 -0
  169. package/graphql/schema/baseSchema.d.ts +3 -0
  170. package/graphql/schema/baseSchema.js +84 -0
  171. package/graphql/schema/baseSchema.js.map +1 -0
  172. package/graphql/schema/contentEntries.d.ts +7 -0
  173. package/graphql/schema/contentEntries.js +367 -0
  174. package/graphql/schema/contentEntries.js.map +1 -0
  175. package/graphql/schema/contentModelGroups.d.ts +7 -0
  176. package/{content/plugins → graphql}/schema/contentModelGroups.js +39 -33
  177. package/graphql/schema/contentModelGroups.js.map +1 -0
  178. package/graphql/schema/contentModels.d.ts +7 -0
  179. package/{content/plugins → graphql}/schema/contentModels.js +121 -29
  180. package/graphql/schema/contentModels.js.map +1 -0
  181. package/graphql/schema/createFieldResolvers.d.ts +20 -0
  182. package/graphql/schema/createFieldResolvers.js +104 -0
  183. package/graphql/schema/createFieldResolvers.js.map +1 -0
  184. package/graphql/schema/createFieldTypePluginRecords.d.ts +3 -0
  185. package/graphql/schema/createFieldTypePluginRecords.js +13 -0
  186. package/graphql/schema/createFieldTypePluginRecords.js.map +1 -0
  187. package/graphql/schema/createManageResolvers.d.ts +12 -0
  188. package/graphql/schema/createManageResolvers.js +141 -0
  189. package/graphql/schema/createManageResolvers.js.map +1 -0
  190. package/graphql/schema/createManageSDL.d.ts +13 -0
  191. package/graphql/schema/createManageSDL.js +180 -0
  192. package/graphql/schema/createManageSDL.js.map +1 -0
  193. package/graphql/schema/createPreviewResolvers.d.ts +12 -0
  194. package/graphql/schema/createPreviewResolvers.js +44 -0
  195. package/graphql/schema/createPreviewResolvers.js.map +1 -0
  196. package/graphql/schema/createReadResolvers.d.ts +12 -0
  197. package/graphql/schema/createReadResolvers.js +49 -0
  198. package/graphql/schema/createReadResolvers.js.map +1 -0
  199. package/graphql/schema/createReadSDL.d.ts +13 -0
  200. package/graphql/schema/createReadSDL.js +104 -0
  201. package/graphql/schema/createReadSDL.js.map +1 -0
  202. package/graphql/schema/resolvers/commonFieldResolvers.d.ts +7 -0
  203. package/{content/plugins → graphql}/schema/resolvers/commonFieldResolvers.js +2 -3
  204. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -0
  205. package/graphql/schema/resolvers/manage/resolveCreate.d.ts +7 -0
  206. package/{content/plugins → graphql}/schema/resolvers/manage/resolveCreate.js +2 -7
  207. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -0
  208. package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +8 -0
  209. package/{content/plugins → graphql}/schema/resolvers/manage/resolveCreateFrom.js +2 -7
  210. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -0
  211. package/graphql/schema/resolvers/manage/resolveDelete.d.ts +8 -0
  212. package/graphql/schema/resolvers/manage/resolveDelete.js +36 -0
  213. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -0
  214. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.d.ts +7 -0
  215. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +20 -0
  216. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -0
  217. package/graphql/schema/resolvers/manage/resolveGet.d.ts +7 -0
  218. package/graphql/schema/resolvers/manage/resolveGet.js +63 -0
  219. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -0
  220. package/graphql/schema/resolvers/manage/resolveGetByIds.d.ts +7 -0
  221. package/{content/plugins → graphql}/schema/resolvers/manage/resolveGetByIds.js +2 -7
  222. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -0
  223. package/graphql/schema/resolvers/manage/resolveGetRevisions.d.ts +7 -0
  224. package/{content/plugins → graphql}/schema/resolvers/manage/resolveGetRevisions.js +2 -7
  225. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -0
  226. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.d.ts +4 -0
  227. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +18 -0
  228. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -0
  229. package/graphql/schema/resolvers/manage/resolveList.d.ts +4 -0
  230. package/{content/plugins/schema/resolvers/preview → graphql/schema/resolvers/manage}/resolveList.js +2 -7
  231. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -0
  232. package/graphql/schema/resolvers/manage/resolveMove.d.ts +8 -0
  233. package/graphql/schema/resolvers/manage/resolveMove.js +30 -0
  234. package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -0
  235. package/graphql/schema/resolvers/manage/resolvePublish.d.ts +7 -0
  236. package/{content/plugins → graphql}/schema/resolvers/manage/resolvePublish.js +0 -3
  237. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -0
  238. package/graphql/schema/resolvers/manage/resolveRepublish.d.ts +7 -0
  239. package/{content/plugins/schema/resolvers/manage/resolveGet.js → graphql/schema/resolvers/manage/resolveRepublish.js} +4 -7
  240. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -0
  241. package/graphql/schema/resolvers/manage/resolveUnpublish.d.ts +7 -0
  242. package/{content/plugins → graphql}/schema/resolvers/manage/resolveUnpublish.js +0 -3
  243. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -0
  244. package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +8 -0
  245. package/{content/plugins → graphql}/schema/resolvers/manage/resolveUpdate.js +2 -7
  246. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -0
  247. package/graphql/schema/resolvers/preview/resolveGet.d.ts +4 -0
  248. package/graphql/schema/resolvers/preview/resolveGet.js +26 -0
  249. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -0
  250. package/graphql/schema/resolvers/preview/resolveList.d.ts +4 -0
  251. package/{content/plugins/schema/resolvers/manage → graphql/schema/resolvers/preview}/resolveList.js +2 -7
  252. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -0
  253. package/graphql/schema/resolvers/read/resolveGet.d.ts +4 -0
  254. package/graphql/schema/resolvers/read/resolveGet.js +26 -0
  255. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -0
  256. package/graphql/schema/resolvers/read/resolveList.d.ts +4 -0
  257. package/{content/plugins → graphql}/schema/resolvers/read/resolveList.js +2 -7
  258. package/graphql/schema/resolvers/read/resolveList.js.map +1 -0
  259. package/graphql/schema/schemaPlugins.d.ts +8 -0
  260. package/graphql/schema/schemaPlugins.js +100 -0
  261. package/graphql/schema/schemaPlugins.js.map +1 -0
  262. package/graphql/system.d.ts +3 -0
  263. package/{plugins/graphql → graphql}/system.js +29 -24
  264. package/graphql/system.js.map +1 -0
  265. package/graphqlFields/boolean.d.ts +2 -0
  266. package/graphqlFields/boolean.js +57 -0
  267. package/graphqlFields/boolean.js.map +1 -0
  268. package/graphqlFields/datetime.d.ts +2 -0
  269. package/graphqlFields/datetime.js +78 -0
  270. package/graphqlFields/datetime.js.map +1 -0
  271. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
  272. package/graphqlFields/dynamicZone/dynamicZoneField.js +243 -0
  273. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
  274. package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +3 -0
  275. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +63 -0
  276. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -0
  277. package/graphqlFields/dynamicZone/index.d.ts +2 -0
  278. package/graphqlFields/dynamicZone/index.js +19 -0
  279. package/graphqlFields/dynamicZone/index.js.map +1 -0
  280. package/graphqlFields/file.d.ts +2 -0
  281. package/graphqlFields/file.js +42 -0
  282. package/graphqlFields/file.js.map +1 -0
  283. package/graphqlFields/helpers.d.ts +6 -0
  284. package/graphqlFields/helpers.js +39 -0
  285. package/graphqlFields/helpers.js.map +1 -0
  286. package/graphqlFields/index.d.ts +2 -0
  287. package/graphqlFields/index.js +18 -0
  288. package/graphqlFields/index.js.map +1 -0
  289. package/graphqlFields/longText.d.ts +2 -0
  290. package/graphqlFields/longText.js +53 -0
  291. package/graphqlFields/longText.js.map +1 -0
  292. package/graphqlFields/number.d.ts +2 -0
  293. package/graphqlFields/number.js +68 -0
  294. package/graphqlFields/number.js.map +1 -0
  295. package/graphqlFields/object.d.ts +2 -0
  296. package/graphqlFields/object.js +258 -0
  297. package/graphqlFields/object.js.map +1 -0
  298. package/graphqlFields/ref.d.ts +2 -0
  299. package/graphqlFields/ref.js +255 -0
  300. package/graphqlFields/ref.js.map +1 -0
  301. package/graphqlFields/richText.d.ts +2 -0
  302. package/graphqlFields/richText.js +47 -0
  303. package/graphqlFields/richText.js.map +1 -0
  304. package/graphqlFields/text.d.ts +2 -0
  305. package/graphqlFields/text.js +64 -0
  306. package/graphqlFields/text.js.map +1 -0
  307. package/index.d.ts +12 -12
  308. package/index.js +98 -55
  309. package/index.js.map +1 -0
  310. package/modelManager/DefaultCmsModelManager.d.ts +14 -0
  311. package/{content/plugins/modelManager → modelManager}/DefaultCmsModelManager.js +10 -24
  312. package/modelManager/DefaultCmsModelManager.js.map +1 -0
  313. package/modelManager/index.d.ts +2 -0
  314. package/{content/plugins/modelManager → modelManager}/index.js +3 -7
  315. package/modelManager/index.js.map +1 -0
  316. package/package.json +39 -44
  317. package/parameters/context.d.ts +2 -0
  318. package/parameters/context.js +18 -0
  319. package/parameters/context.js.map +1 -0
  320. package/parameters/header.d.ts +2 -0
  321. package/parameters/header.js +44 -0
  322. package/parameters/header.js.map +1 -0
  323. package/parameters/index.d.ts +4 -0
  324. package/parameters/index.js +49 -0
  325. package/parameters/index.js.map +1 -0
  326. package/parameters/manual.d.ts +6 -0
  327. package/parameters/manual.js +37 -0
  328. package/parameters/manual.js.map +1 -0
  329. package/parameters/path.d.ts +2 -0
  330. package/parameters/path.js +40 -0
  331. package/parameters/path.js.map +1 -0
  332. package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
  333. package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
  334. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
  335. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  336. package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
  337. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  338. package/plugins/CmsGroupPlugin.d.ts +13 -0
  339. package/{content/plugins → plugins}/CmsGroupPlugin.js +7 -9
  340. package/plugins/CmsGroupPlugin.js.map +1 -0
  341. package/plugins/CmsModelFieldConverterPlugin.d.ts +14 -0
  342. package/plugins/CmsModelFieldConverterPlugin.js +12 -0
  343. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -0
  344. package/plugins/CmsModelPlugin.d.ts +63 -0
  345. package/plugins/CmsModelPlugin.js +184 -0
  346. package/plugins/CmsModelPlugin.js.map +1 -0
  347. package/plugins/CmsParametersPlugin.d.ts +20 -0
  348. package/plugins/CmsParametersPlugin.js +21 -0
  349. package/plugins/CmsParametersPlugin.js.map +1 -0
  350. package/plugins/StorageOperationsCmsModelPlugin.d.ts +23 -0
  351. package/plugins/StorageOperationsCmsModelPlugin.js +42 -0
  352. package/plugins/StorageOperationsCmsModelPlugin.js.map +1 -0
  353. package/plugins/StorageTransformPlugin.d.ts +31 -0
  354. package/{content/plugins/storage → plugins}/StorageTransformPlugin.js +2 -10
  355. package/plugins/StorageTransformPlugin.js.map +1 -0
  356. package/plugins/index.d.ts +8 -0
  357. package/plugins/index.js +93 -0
  358. package/plugins/index.js.map +1 -0
  359. package/storage/default.d.ts +2 -0
  360. package/storage/default.js +24 -0
  361. package/storage/default.js.map +1 -0
  362. package/storage/object.d.ts +2 -0
  363. package/storage/object.js +108 -0
  364. package/storage/object.js.map +1 -0
  365. package/types.d.ts +1010 -382
  366. package/types.js +116 -62
  367. package/types.js.map +1 -0
  368. package/utils/converters/Converter.d.ts +27 -0
  369. package/utils/converters/Converter.js +58 -0
  370. package/utils/converters/Converter.js.map +1 -0
  371. package/utils/converters/ConverterCollection.d.ts +31 -0
  372. package/utils/converters/ConverterCollection.js +119 -0
  373. package/utils/converters/ConverterCollection.js.map +1 -0
  374. package/utils/converters/valueKeyStorageConverter.d.ts +14 -0
  375. package/utils/converters/valueKeyStorageConverter.js +128 -0
  376. package/utils/converters/valueKeyStorageConverter.js.map +1 -0
  377. package/utils/createTypeFromFields.d.ts +16 -0
  378. package/utils/createTypeFromFields.js +66 -0
  379. package/utils/createTypeFromFields.js.map +1 -0
  380. package/utils/createTypeName.d.ts +1 -0
  381. package/utils/createTypeName.js +13 -0
  382. package/utils/createTypeName.js.map +1 -0
  383. package/{content/plugins/utils → utils}/entryStorage.d.ts +3 -3
  384. package/{content/plugins/utils → utils}/entryStorage.js +26 -47
  385. package/utils/entryStorage.js.map +1 -0
  386. package/utils/filterAsync.d.ts +1 -0
  387. package/utils/filterAsync.js +18 -0
  388. package/utils/filterAsync.js.map +1 -0
  389. package/utils/getBaseFieldType.d.ts +2 -0
  390. package/utils/getBaseFieldType.js +10 -0
  391. package/utils/getBaseFieldType.js.map +1 -0
  392. package/utils/getEntryDescription.d.ts +2 -0
  393. package/utils/getEntryDescription.js +17 -0
  394. package/utils/getEntryDescription.js.map +1 -0
  395. package/utils/getEntryImage.d.ts +2 -0
  396. package/utils/getEntryImage.js +17 -0
  397. package/utils/getEntryImage.js.map +1 -0
  398. package/utils/getEntryTitle.d.ts +2 -0
  399. package/{content/plugins/utils → utils}/getEntryTitle.js +7 -15
  400. package/utils/getEntryTitle.js.map +1 -0
  401. package/utils/getSchemaFromFieldPlugins.d.ts +9 -0
  402. package/utils/getSchemaFromFieldPlugins.js +39 -0
  403. package/utils/getSchemaFromFieldPlugins.js.map +1 -0
  404. package/utils/incrementEntryIdVersion.d.ts +5 -0
  405. package/utils/incrementEntryIdVersion.js +29 -0
  406. package/utils/incrementEntryIdVersion.js.map +1 -0
  407. package/utils/permissions/EntriesPermissions.d.ts +4 -0
  408. package/utils/permissions/EntriesPermissions.js +9 -0
  409. package/utils/permissions/EntriesPermissions.js.map +1 -0
  410. package/utils/permissions/ModelGroupsPermissions.d.ts +11 -0
  411. package/utils/permissions/ModelGroupsPermissions.js +48 -0
  412. package/utils/permissions/ModelGroupsPermissions.js.map +1 -0
  413. package/utils/permissions/ModelsPermissions.d.ts +20 -0
  414. package/utils/permissions/ModelsPermissions.js +91 -0
  415. package/utils/permissions/ModelsPermissions.js.map +1 -0
  416. package/utils/permissions/SettingsPermissions.d.ts +4 -0
  417. package/utils/permissions/SettingsPermissions.js +9 -0
  418. package/utils/permissions/SettingsPermissions.js.map +1 -0
  419. package/utils/renderFields.d.ts +17 -0
  420. package/{content/plugins/utils → utils}/renderFields.js +16 -13
  421. package/utils/renderFields.js.map +1 -0
  422. package/utils/renderGetFilterFields.d.ts +10 -0
  423. package/{content/plugins/utils → utils}/renderGetFilterFields.js +16 -22
  424. package/utils/renderGetFilterFields.js.map +1 -0
  425. package/utils/renderInputFields.d.ts +16 -0
  426. package/{content/plugins/utils → utils}/renderInputFields.js +20 -15
  427. package/utils/renderInputFields.js.map +1 -0
  428. package/utils/renderListFilterFields.d.ts +13 -0
  429. package/utils/renderListFilterFields.js +48 -0
  430. package/utils/renderListFilterFields.js.map +1 -0
  431. package/utils/renderSortEnum.d.ts +13 -0
  432. package/utils/renderSortEnum.js +46 -0
  433. package/utils/renderSortEnum.js.map +1 -0
  434. package/utils/toSlug.d.ts +1 -0
  435. package/utils/toSlug.js +16 -0
  436. package/utils/toSlug.js.map +1 -0
  437. package/validators/dateGte.d.ts +2 -0
  438. package/{content/plugins/validators → validators}/dateGte.js +4 -11
  439. package/validators/dateGte.js.map +1 -0
  440. package/validators/dateLte.d.ts +2 -0
  441. package/{content/plugins/validators → validators}/dateLte.js +4 -11
  442. package/validators/dateLte.js.map +1 -0
  443. package/validators/dynamicZone.d.ts +2 -0
  444. package/validators/dynamicZone.js +20 -0
  445. package/validators/dynamicZone.js.map +1 -0
  446. package/validators/gte.d.ts +2 -0
  447. package/validators/gte.js +28 -0
  448. package/validators/gte.js.map +1 -0
  449. package/validators/in.d.ts +2 -0
  450. package/validators/in.js +28 -0
  451. package/validators/in.js.map +1 -0
  452. package/validators/index.d.ts +1 -0
  453. package/validators/index.js +22 -0
  454. package/validators/index.js.map +1 -0
  455. package/validators/lte.d.ts +2 -0
  456. package/validators/lte.js +28 -0
  457. package/validators/lte.js.map +1 -0
  458. package/validators/maxLength.d.ts +2 -0
  459. package/validators/maxLength.js +28 -0
  460. package/validators/maxLength.js.map +1 -0
  461. package/validators/minLength.d.ts +2 -0
  462. package/validators/minLength.js +28 -0
  463. package/validators/minLength.js.map +1 -0
  464. package/validators/pattern.d.ts +2 -0
  465. package/validators/pattern.js +41 -0
  466. package/validators/pattern.js.map +1 -0
  467. package/validators/patternPlugins/email.d.ts +2 -0
  468. package/validators/patternPlugins/email.js +18 -0
  469. package/validators/patternPlugins/email.js.map +1 -0
  470. package/validators/patternPlugins/index.d.ts +2 -0
  471. package/validators/patternPlugins/index.js +16 -0
  472. package/validators/patternPlugins/index.js.map +1 -0
  473. package/validators/patternPlugins/lowerCase.d.ts +2 -0
  474. package/validators/patternPlugins/lowerCase.js +18 -0
  475. package/validators/patternPlugins/lowerCase.js.map +1 -0
  476. package/validators/patternPlugins/lowerCaseSpace.d.ts +2 -0
  477. package/validators/patternPlugins/lowerCaseSpace.js +18 -0
  478. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
  479. package/validators/patternPlugins/upperCase.d.ts +2 -0
  480. package/validators/patternPlugins/upperCase.js +18 -0
  481. package/validators/patternPlugins/upperCase.js.map +1 -0
  482. package/validators/patternPlugins/upperCaseSpace.d.ts +2 -0
  483. package/validators/patternPlugins/upperCaseSpace.js +18 -0
  484. package/validators/patternPlugins/upperCaseSpace.js.map +1 -0
  485. package/validators/patternPlugins/url.d.ts +2 -0
  486. package/validators/patternPlugins/url.js +18 -0
  487. package/validators/patternPlugins/url.js.map +1 -0
  488. package/validators/required.d.ts +2 -0
  489. package/validators/required.js +22 -0
  490. package/validators/required.js.map +1 -0
  491. package/validators/timeGte.d.ts +2 -0
  492. package/{content/plugins/validators → validators}/timeGte.js +5 -11
  493. package/validators/timeGte.js.map +1 -0
  494. package/validators/timeLte.d.ts +2 -0
  495. package/{content/plugins/validators → validators}/timeLte.js +5 -11
  496. package/validators/timeLte.js.map +1 -0
  497. package/validators/unique.d.ts +6 -0
  498. package/validators/unique.js +56 -0
  499. package/validators/unique.js.map +1 -0
  500. package/content/contextSetup.d.ts +0 -4
  501. package/content/contextSetup.js +0 -65
  502. package/content/graphQLHandlerFactory.d.ts +0 -5
  503. package/content/graphQLHandlerFactory.js +0 -173
  504. package/content/plugins/CmsGroupPlugin.d.ts +0 -11
  505. package/content/plugins/CmsModelPlugin.d.ts +0 -11
  506. package/content/plugins/CmsModelPlugin.js +0 -24
  507. package/content/plugins/buildSchemaPlugins.d.ts +0 -7
  508. package/content/plugins/buildSchemaPlugins.js +0 -29
  509. package/content/plugins/crud/contentEntry/afterDelete.d.ts +0 -7
  510. package/content/plugins/crud/contentEntry/beforeCreate.d.ts +0 -7
  511. package/content/plugins/crud/contentEntry/beforeUpdate.d.ts +0 -7
  512. package/content/plugins/crud/contentEntry/entryDataValidation.d.ts +0 -4
  513. package/content/plugins/crud/contentEntry.crud.d.ts +0 -17
  514. package/content/plugins/crud/contentEntry.crud.js +0 -931
  515. package/content/plugins/crud/contentModel/afterCreate.d.ts +0 -7
  516. package/content/plugins/crud/contentModel/afterCreate.js +0 -18
  517. package/content/plugins/crud/contentModel/afterDelete.d.ts +0 -7
  518. package/content/plugins/crud/contentModel/afterDelete.js +0 -18
  519. package/content/plugins/crud/contentModel/afterUpdate.d.ts +0 -7
  520. package/content/plugins/crud/contentModel/afterUpdate.js +0 -18
  521. package/content/plugins/crud/contentModel/beforeCreate.d.ts +0 -9
  522. package/content/plugins/crud/contentModel/beforeCreate.js +0 -146
  523. package/content/plugins/crud/contentModel/beforeDelete.d.ts +0 -9
  524. package/content/plugins/crud/contentModel/beforeUpdate.d.ts +0 -9
  525. package/content/plugins/crud/contentModel/beforeUpdate.js +0 -128
  526. package/content/plugins/crud/contentModel/contentModelManagerFactory.d.ts +0 -2
  527. package/content/plugins/crud/contentModel/createFieldModels.d.ts +0 -2
  528. package/content/plugins/crud/contentModel/createFieldModels.js +0 -22
  529. package/content/plugins/crud/contentModel/idValidation.d.ts +0 -2
  530. package/content/plugins/crud/contentModel/idValidation.js +0 -22
  531. package/content/plugins/crud/contentModel/models.d.ts +0 -3
  532. package/content/plugins/crud/contentModel/models.js +0 -141
  533. package/content/plugins/crud/contentModel/validateLayout.d.ts +0 -2
  534. package/content/plugins/crud/contentModel.crud.js +0 -425
  535. package/content/plugins/crud/contentModelGroup/beforeCreate.d.ts +0 -9
  536. package/content/plugins/crud/contentModelGroup/beforeDelete.d.ts +0 -9
  537. package/content/plugins/crud/contentModelGroup/beforeUpdate.d.ts +0 -8
  538. package/content/plugins/crud/contentModelGroup.crud.js +0 -351
  539. package/content/plugins/crud/index.d.ts +0 -6
  540. package/content/plugins/crud/index.js +0 -100
  541. package/content/plugins/graphqlFields/boolean.d.ts +0 -3
  542. package/content/plugins/graphqlFields/boolean.js +0 -69
  543. package/content/plugins/graphqlFields/datetime.d.ts +0 -3
  544. package/content/plugins/graphqlFields/datetime.js +0 -83
  545. package/content/plugins/graphqlFields/file.d.ts +0 -3
  546. package/content/plugins/graphqlFields/file.js +0 -49
  547. package/content/plugins/graphqlFields/index.d.ts +0 -2
  548. package/content/plugins/graphqlFields/index.js +0 -30
  549. package/content/plugins/graphqlFields/longText.d.ts +0 -3
  550. package/content/plugins/graphqlFields/longText.js +0 -62
  551. package/content/plugins/graphqlFields/number.d.ts +0 -3
  552. package/content/plugins/graphqlFields/number.js +0 -75
  553. package/content/plugins/graphqlFields/object.d.ts +0 -3
  554. package/content/plugins/graphqlFields/object.js +0 -180
  555. package/content/plugins/graphqlFields/ref.d.ts +0 -3
  556. package/content/plugins/graphqlFields/ref.js +0 -205
  557. package/content/plugins/graphqlFields/richText.d.ts +0 -3
  558. package/content/plugins/graphqlFields/richText.js +0 -55
  559. package/content/plugins/graphqlFields/text.d.ts +0 -3
  560. package/content/plugins/graphqlFields/text.js +0 -72
  561. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.d.ts +0 -8
  562. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js +0 -54
  563. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.d.ts +0 -7
  564. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js +0 -35
  565. package/content/plugins/modelManager/DefaultCmsModelManager.d.ts +0 -15
  566. package/content/plugins/modelManager/index.d.ts +0 -3
  567. package/content/plugins/schema/baseSchema.d.ts +0 -4
  568. package/content/plugins/schema/baseSchema.js +0 -98
  569. package/content/plugins/schema/contentEntries.d.ts +0 -4
  570. package/content/plugins/schema/contentEntries.js +0 -166
  571. package/content/plugins/schema/contentModelGroups.d.ts +0 -4
  572. package/content/plugins/schema/contentModels.d.ts +0 -4
  573. package/content/plugins/schema/createFieldResolvers.d.ts +0 -19
  574. package/content/plugins/schema/createFieldResolvers.js +0 -92
  575. package/content/plugins/schema/createManageResolvers.d.ts +0 -11
  576. package/content/plugins/schema/createManageResolvers.js +0 -135
  577. package/content/plugins/schema/createManageSDL.d.ts +0 -9
  578. package/content/plugins/schema/createManageSDL.js +0 -153
  579. package/content/plugins/schema/createPreviewResolvers.d.ts +0 -10
  580. package/content/plugins/schema/createPreviewResolvers.js +0 -55
  581. package/content/plugins/schema/createReadResolvers.d.ts +0 -10
  582. package/content/plugins/schema/createReadResolvers.js +0 -55
  583. package/content/plugins/schema/createReadSDL.d.ts +0 -9
  584. package/content/plugins/schema/createReadSDL.js +0 -96
  585. package/content/plugins/schema/resolvers/commonFieldResolvers.d.ts +0 -6
  586. package/content/plugins/schema/resolvers/manage/resolveCreate.d.ts +0 -6
  587. package/content/plugins/schema/resolvers/manage/resolveCreateFrom.d.ts +0 -7
  588. package/content/plugins/schema/resolvers/manage/resolveDelete.d.ts +0 -2
  589. package/content/plugins/schema/resolvers/manage/resolveDelete.js +0 -30
  590. package/content/plugins/schema/resolvers/manage/resolveGet.d.ts +0 -2
  591. package/content/plugins/schema/resolvers/manage/resolveGetByIds.d.ts +0 -2
  592. package/content/plugins/schema/resolvers/manage/resolveGetRevisions.d.ts +0 -2
  593. package/content/plugins/schema/resolvers/manage/resolveList.d.ts +0 -2
  594. package/content/plugins/schema/resolvers/manage/resolvePublish.d.ts +0 -2
  595. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -6
  596. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js +0 -23
  597. package/content/plugins/schema/resolvers/manage/resolveRequestReview.d.ts +0 -6
  598. package/content/plugins/schema/resolvers/manage/resolveRequestReview.js +0 -23
  599. package/content/plugins/schema/resolvers/manage/resolveUnpublish.d.ts +0 -2
  600. package/content/plugins/schema/resolvers/manage/resolveUpdate.d.ts +0 -7
  601. package/content/plugins/schema/resolvers/preview/resolveGet.d.ts +0 -2
  602. package/content/plugins/schema/resolvers/preview/resolveGet.js +0 -38
  603. package/content/plugins/schema/resolvers/preview/resolveList.d.ts +0 -2
  604. package/content/plugins/schema/resolvers/read/resolveGet.d.ts +0 -2
  605. package/content/plugins/schema/resolvers/read/resolveGet.js +0 -38
  606. package/content/plugins/schema/resolvers/read/resolveList.d.ts +0 -2
  607. package/content/plugins/schema/schemaPlugins.d.ts +0 -3
  608. package/content/plugins/schema/schemaPlugins.js +0 -92
  609. package/content/plugins/storage/StorageTransformPlugin.d.ts +0 -30
  610. package/content/plugins/storage/default.d.ts +0 -3
  611. package/content/plugins/storage/default.js +0 -28
  612. package/content/plugins/storage/object.d.ts +0 -3
  613. package/content/plugins/storage/object.js +0 -119
  614. package/content/plugins/utils/createTypeName.d.ts +0 -3
  615. package/content/plugins/utils/createTypeName.js +0 -28
  616. package/content/plugins/utils/getEntryTitle.d.ts +0 -2
  617. package/content/plugins/utils/getSchemaFromFieldPlugins.d.ts +0 -11
  618. package/content/plugins/utils/getSchemaFromFieldPlugins.js +0 -30
  619. package/content/plugins/utils/pluralizedTypeName.d.ts +0 -1
  620. package/content/plugins/utils/pluralizedTypeName.js +0 -26
  621. package/content/plugins/utils/renderFields.d.ts +0 -16
  622. package/content/plugins/utils/renderGetFilterFields.d.ts +0 -9
  623. package/content/plugins/utils/renderInputFields.d.ts +0 -14
  624. package/content/plugins/utils/renderListFilterFields.d.ts +0 -10
  625. package/content/plugins/utils/renderListFilterFields.js +0 -39
  626. package/content/plugins/utils/renderSortEnum.d.ts +0 -9
  627. package/content/plugins/utils/renderSortEnum.js +0 -32
  628. package/content/plugins/validators/dateGte.d.ts +0 -3
  629. package/content/plugins/validators/dateLte.d.ts +0 -3
  630. package/content/plugins/validators/gte.d.ts +0 -3
  631. package/content/plugins/validators/gte.js +0 -32
  632. package/content/plugins/validators/in.d.ts +0 -3
  633. package/content/plugins/validators/in.js +0 -32
  634. package/content/plugins/validators/index.d.ts +0 -2
  635. package/content/plugins/validators/index.js +0 -36
  636. package/content/plugins/validators/lte.d.ts +0 -3
  637. package/content/plugins/validators/lte.js +0 -32
  638. package/content/plugins/validators/maxLength.d.ts +0 -3
  639. package/content/plugins/validators/maxLength.js +0 -32
  640. package/content/plugins/validators/minLength.d.ts +0 -3
  641. package/content/plugins/validators/minLength.js +0 -32
  642. package/content/plugins/validators/pattern.d.ts +0 -3
  643. package/content/plugins/validators/pattern.js +0 -47
  644. package/content/plugins/validators/patternPlugins/email.d.ts +0 -3
  645. package/content/plugins/validators/patternPlugins/email.js +0 -17
  646. package/content/plugins/validators/patternPlugins/index.d.ts +0 -2
  647. package/content/plugins/validators/patternPlugins/index.js +0 -19
  648. package/content/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  649. package/content/plugins/validators/patternPlugins/lowerCase.js +0 -17
  650. package/content/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  651. package/content/plugins/validators/patternPlugins/upperCase.js +0 -17
  652. package/content/plugins/validators/patternPlugins/url.d.ts +0 -3
  653. package/content/plugins/validators/patternPlugins/url.js +0 -17
  654. package/content/plugins/validators/required.d.ts +0 -3
  655. package/content/plugins/validators/required.js +0 -25
  656. package/content/plugins/validators/timeGte.d.ts +0 -3
  657. package/content/plugins/validators/timeLte.d.ts +0 -3
  658. package/migrateCMSPermissions.d.ts +0 -17
  659. package/migrateCMSPermissions.js +0 -193
  660. package/plugins/context.d.ts +0 -4
  661. package/plugins/context.js +0 -34
  662. package/plugins/crud/index.d.ts +0 -6
  663. package/plugins/crud/index.js +0 -100
  664. package/plugins/crud/settings.crud.d.ts +0 -10
  665. package/plugins/crud/settings.crud.js +0 -93
  666. package/plugins/crud/system.crud.d.ts +0 -10
  667. package/plugins/crud/system.crud.js +0 -182
  668. package/plugins/graphql/system.d.ts +0 -17
  669. package/plugins/graphql.d.ts +0 -2
  670. package/plugins/graphql.js +0 -79
  671. package/plugins/upgrades/index.d.ts +0 -2
  672. package/plugins/upgrades/index.js +0 -14
  673. package/plugins/upgrades/v5.5.0/helpers.d.ts +0 -6
  674. package/plugins/upgrades/v5.5.0/helpers.js +0 -10
  675. package/plugins/upgrades/v5.5.0/index.d.ts +0 -4
  676. package/plugins/upgrades/v5.5.0/index.js +0 -129
  677. package/transformers.d.ts +0 -2
  678. package/transformers.js +0 -25
  679. package/utils.d.ts +0 -25
  680. package/utils.js +0 -251
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createBaseSchema = void 0;
7
+ var _plugins = require("../../plugins");
8
+ var _handlerGraphql = require("@webiny/handler-graphql");
9
+ const createBaseSchema = () => {
10
+ const cmsPlugin = new _plugins.CmsGraphQLSchemaPlugin({
11
+ typeDefs: /* GraphQL */`
12
+ type CmsError {
13
+ code: String
14
+ message: String
15
+ data: JSON
16
+ stack: String
17
+ }
18
+
19
+ type CmsCursors {
20
+ next: String
21
+ previous: String
22
+ }
23
+
24
+ type CmsListMeta {
25
+ cursor: String
26
+ hasMoreItems: Boolean
27
+ totalCount: Int
28
+ }
29
+
30
+ input CmsDeleteEntryOptions {
31
+ # force delete an entry that might have some records left behind in the database
32
+ # see CmsDeleteEntryOptions in types.ts
33
+ force: Boolean
34
+ }
35
+
36
+ type CmsDeleteResponse {
37
+ data: Boolean
38
+ error: CmsError
39
+ }
40
+
41
+ type CmsDeleteMultipleDataResponse {
42
+ id: ID!
43
+ }
44
+
45
+ type CmsDeleteMultipleResponse {
46
+ data: [CmsDeleteMultipleDataResponse!]
47
+ error: CmsError
48
+ }
49
+
50
+ type CmsBooleanResponse {
51
+ data: Boolean
52
+ error: CmsError
53
+ }
54
+
55
+ # Advanced Content Organization
56
+ type WbyAcoLocation {
57
+ folderId: ID
58
+ }
59
+
60
+ input WbyAcoLocationInput {
61
+ folderId: ID!
62
+ }
63
+
64
+ input WbyAcoLocationWhereInput {
65
+ folderId: ID
66
+ folderId_in: [ID!]
67
+ folderId_not: ID
68
+ folderId_not_in: [ID!]
69
+ }
70
+ `,
71
+ resolvers: {}
72
+ });
73
+ cmsPlugin.name = "headless-cms.graphql.schema.base";
74
+ const corePlugin = new _handlerGraphql.GraphQLSchemaPlugin({
75
+ typeDefs: cmsPlugin.schema.typeDefs,
76
+ resolvers: cmsPlugin.schema.resolvers
77
+ });
78
+ corePlugin.name = "headless-cms.graphql.core.schema.base";
79
+ /**
80
+ * Due to splitting of CMS and Core schema plugins, we must have both defined for CMS to work.
81
+ */
82
+ return [cmsPlugin, corePlugin];
83
+ };
84
+ exports.createBaseSchema = createBaseSchema;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createBaseSchema","cmsPlugin","CmsGraphQLSchemaPlugin","typeDefs","resolvers","name","corePlugin","GraphQLSchemaPlugin","schema"],"sources":["baseSchema.ts"],"sourcesContent":["import { CmsContext } from \"~/types\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\n\nexport const createBaseSchema = (): GraphQLSchemaPlugin<CmsContext>[] => {\n const cmsPlugin = new CmsGraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type CmsError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type CmsCursors {\n next: String\n previous: String\n }\n\n type CmsListMeta {\n cursor: String\n hasMoreItems: Boolean\n totalCount: Int\n }\n\n input CmsDeleteEntryOptions {\n # force delete an entry that might have some records left behind in the database\n # see CmsDeleteEntryOptions in types.ts\n force: Boolean\n }\n\n type CmsDeleteResponse {\n data: Boolean\n error: CmsError\n }\n\n type CmsDeleteMultipleDataResponse {\n id: ID!\n }\n\n type CmsDeleteMultipleResponse {\n data: [CmsDeleteMultipleDataResponse!]\n error: CmsError\n }\n\n type CmsBooleanResponse {\n data: Boolean\n error: CmsError\n }\n\n # Advanced Content Organization\n type WbyAcoLocation {\n folderId: ID\n }\n\n input WbyAcoLocationInput {\n folderId: ID!\n }\n\n input WbyAcoLocationWhereInput {\n folderId: ID\n folderId_in: [ID!]\n folderId_not: ID\n folderId_not_in: [ID!]\n }\n `,\n resolvers: {}\n });\n cmsPlugin.name = \"headless-cms.graphql.schema.base\";\n const corePlugin = new GraphQLSchemaPlugin<CmsContext>({\n typeDefs: cmsPlugin.schema.typeDefs,\n resolvers: cmsPlugin.schema.resolvers\n });\n corePlugin.name = \"headless-cms.graphql.core.schema.base\";\n /**\n * Due to splitting of CMS and Core schema plugins, we must have both defined for CMS to work.\n */\n return [cmsPlugin, corePlugin];\n};\n"],"mappings":";;;;;;AACA;AACA;AAEO,MAAMA,gBAAgB,GAAG,MAAyC;EACrE,MAAMC,SAAS,GAAG,IAAIC,+BAAsB,CAAC;IACzCC,QAAQ,EAAE,aAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;IACDC,SAAS,EAAE,CAAC;EAChB,CAAC,CAAC;EACFH,SAAS,CAACI,IAAI,GAAG,kCAAkC;EACnD,MAAMC,UAAU,GAAG,IAAIC,mCAAmB,CAAa;IACnDJ,QAAQ,EAAEF,SAAS,CAACO,MAAM,CAACL,QAAQ;IACnCC,SAAS,EAAEH,SAAS,CAACO,MAAM,CAACJ;EAChC,CAAC,CAAC;EACFE,UAAU,CAACD,IAAI,GAAG,uCAAuC;EACzD;AACJ;AACA;EACI,OAAO,CAACJ,SAAS,EAAEK,UAAU,CAAC;AAClC,CAAC;AAAC"}
@@ -0,0 +1,7 @@
1
+ import { CmsContext } from "../../types";
2
+ import { CmsGraphQLSchemaPlugin } from "../../plugins";
3
+ interface Params {
4
+ context: CmsContext;
5
+ }
6
+ export declare const createContentEntriesSchema: ({ context }: Params) => CmsGraphQLSchemaPlugin<CmsContext>;
7
+ export {};
@@ -0,0 +1,367 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createContentEntriesSchema = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _handlerGraphql = require("@webiny/handler-graphql");
10
+ var _apiSecurity = require("@webiny/api-security");
11
+ var _getEntryTitle = require("../../utils/getEntryTitle");
12
+ var _plugins = require("../../plugins");
13
+ var _getEntryDescription = require("../../utils/getEntryDescription");
14
+ var _getEntryImage = require("../../utils/getEntryImage");
15
+ var _entryStorage = require("../../utils/entryStorage");
16
+ const createDate = date => {
17
+ try {
18
+ return new Date(date);
19
+ } catch {}
20
+ return new Date();
21
+ };
22
+ const createCmsEntryRecord = (model, entry) => {
23
+ var _entry$location;
24
+ return {
25
+ id: entry.id,
26
+ entryId: entry.entryId,
27
+ model: {
28
+ modelId: model.modelId,
29
+ name: model.name
30
+ },
31
+ status: entry.status,
32
+ title: (0, _getEntryTitle.getEntryTitle)(model, entry),
33
+ description: (0, _getEntryDescription.getEntryDescription)(model, entry),
34
+ image: (0, _getEntryImage.getEntryImage)(model, entry),
35
+ createdBy: entry.createdBy,
36
+ modifiedBy: entry.modifiedBy,
37
+ createdOn: createDate(entry.createdOn),
38
+ savedOn: createDate(entry.savedOn),
39
+ wbyAco_location: {
40
+ folderId: ((_entry$location = entry.location) === null || _entry$location === void 0 ? void 0 : _entry$location.folderId) || null
41
+ }
42
+ };
43
+ };
44
+ const getFetchMethod = (type, context) => {
45
+ if (!getContentEntriesMethods[type]) {
46
+ throw new _error.default(`Unknown getContentEntries method "${type}". Could not fetch content entries.`, "UNKNOWN_METHOD_ERROR", {
47
+ type
48
+ });
49
+ }
50
+ const methodName = getContentEntriesMethods[type];
51
+ if (!context.cms[methodName]) {
52
+ throw new _error.default(`Unknown context.cms method "${methodName}". Could not fetch content entries.`, "UNKNOWN_METHOD_ERROR", {
53
+ type,
54
+ methodName
55
+ });
56
+ }
57
+ return context.cms[methodName];
58
+ };
59
+ /**
60
+ * Function to get the list of content entries depending on latest, published or exact GraphQL queries.
61
+ */
62
+ var GetContentEntryMethods;
63
+ (function (GetContentEntryMethods) {
64
+ GetContentEntryMethods["getLatestEntriesByIds"] = "getLatestEntriesByIds";
65
+ GetContentEntryMethods["getPublishedEntriesByIds"] = "getPublishedEntriesByIds";
66
+ GetContentEntryMethods["getEntriesByIds"] = "getEntriesByIds";
67
+ })(GetContentEntryMethods || (GetContentEntryMethods = {}));
68
+ const getContentEntriesMethods = {
69
+ latest: "getLatestEntriesByIds",
70
+ published: "getPublishedEntriesByIds",
71
+ exact: "getEntriesByIds"
72
+ };
73
+ const getContentEntries = async params => {
74
+ const {
75
+ args,
76
+ context,
77
+ type
78
+ } = params;
79
+ const method = getFetchMethod(type, context);
80
+ const models = await context.cms.listModels();
81
+ const modelsMap = models.reduce((collection, model) => {
82
+ collection[model.modelId] = model;
83
+ return collection;
84
+ }, {});
85
+ const argsEntries = args.entries;
86
+ const entriesByModel = argsEntries.reduce((collection, ref) => {
87
+ if (!collection[ref.modelId]) {
88
+ collection[ref.modelId] = [];
89
+ } else if (collection[ref.modelId].includes(ref.id)) {
90
+ return collection;
91
+ }
92
+ collection[ref.modelId].push(ref.id);
93
+ return collection;
94
+ }, {});
95
+ const getters = Object.keys(entriesByModel).map(async modelId => {
96
+ return method(modelsMap[modelId], entriesByModel[modelId]);
97
+ });
98
+ if (getters.length === 0) {
99
+ return new _handlerGraphql.Response([]);
100
+ }
101
+ try {
102
+ const results = await Promise.all(getters);
103
+ const entries = results.reduce((collection, items) => {
104
+ return collection.concat(items.map(item => {
105
+ const model = modelsMap[item.modelId];
106
+ return createCmsEntryRecord(model, item);
107
+ }));
108
+ }, []).filter(Boolean);
109
+ return new _handlerGraphql.Response(entries);
110
+ } catch (ex) {
111
+ return new _handlerGraphql.ErrorResponse(ex);
112
+ }
113
+ };
114
+
115
+ /**
116
+ * Function to fetch a single content entry depending on latest, published or exact GraphQL query.
117
+ */
118
+
119
+ const getContentEntry = async params => {
120
+ const {
121
+ args,
122
+ context,
123
+ type
124
+ } = params;
125
+ if (!getContentEntriesMethods[type]) {
126
+ throw new _error.default(`Unknown getContentEntry method "${type}". Could not fetch content entry.`, "UNKNOWN_METHOD_ERROR", {
127
+ args,
128
+ type
129
+ });
130
+ }
131
+ const method = getFetchMethod(type, context);
132
+ const {
133
+ modelId,
134
+ id
135
+ } = args.entry;
136
+ const models = await context.cms.listModels();
137
+ const model = models.find(m => m.modelId === modelId);
138
+ if (!model) {
139
+ return new _apiSecurity.NotAuthorizedResponse({
140
+ data: {
141
+ modelId
142
+ }
143
+ });
144
+ }
145
+ const result = await method(model, [id]);
146
+ const entry = result.shift();
147
+ if (!entry) {
148
+ return new _handlerGraphql.Response(null);
149
+ }
150
+ return new _handlerGraphql.Response(createCmsEntryRecord(model, entry));
151
+ };
152
+ /**
153
+ * As we support description field, we need to transform the value from storage.
154
+ */
155
+ const createResolveDescription = () => {
156
+ return async (parent, _, context) => {
157
+ const models = await context.cms.listModels();
158
+ const model = models.find(({
159
+ modelId
160
+ }) => {
161
+ return parent.model.modelId === modelId;
162
+ });
163
+ if (!model) {
164
+ return null;
165
+ }
166
+ const field = model.fields.find(f => f.fieldId === model.descriptionFieldId);
167
+ if (!field) {
168
+ return null;
169
+ }
170
+ const value = parent.description || parent[field.fieldId];
171
+ if (!value) {
172
+ return null;
173
+ }
174
+ return (0, _entryStorage.entryFieldFromStorageTransform)({
175
+ context,
176
+ model,
177
+ field,
178
+ value
179
+ });
180
+ };
181
+ };
182
+ const createContentEntriesSchema = ({
183
+ context
184
+ }) => {
185
+ if (!context.cms.MANAGE) {
186
+ const plugin = new _plugins.CmsGraphQLSchemaPlugin({
187
+ typeDefs: "",
188
+ resolvers: {}
189
+ });
190
+ plugin.name = `headless-cms.graphql.schema.${context.cms.type}.empty`;
191
+ return plugin;
192
+ }
193
+ const plugin = new _plugins.CmsGraphQLSchemaPlugin({
194
+ typeDefs: /* GraphQL */`
195
+ type CmsModelMeta {
196
+ modelId: String!
197
+ name: String!
198
+ }
199
+
200
+ type CmsPublishedContentEntry {
201
+ id: ID!
202
+ entryId: String!
203
+ title: String
204
+ description: String
205
+ image: String
206
+ }
207
+
208
+ type CmsContentEntry {
209
+ id: ID!
210
+ entryId: String!
211
+ model: CmsModelMeta!
212
+ status: String!
213
+ title: String!
214
+ description: String
215
+ image: String
216
+ createdBy: CmsIdentity!
217
+ ownedBy: CmsIdentity!
218
+ modifiedBy: CmsIdentity
219
+ published: CmsPublishedContentEntry
220
+ createdOn: DateTime!
221
+ savedOn: DateTime!
222
+ wbyAco_location: WbyAcoLocation
223
+ }
224
+
225
+ type CmsContentEntriesResponse {
226
+ data: [CmsContentEntry!]
227
+ error: CmsError
228
+ }
229
+
230
+ type CmsContentEntryResponse {
231
+ data: CmsContentEntry
232
+ error: CmsError
233
+ }
234
+
235
+ input CmsModelEntryInput {
236
+ modelId: ID!
237
+ id: ID!
238
+ }
239
+
240
+ extend type Query {
241
+ # Search content entries for given content models using the query string.
242
+ searchContentEntries(
243
+ modelIds: [ID!]!
244
+ query: String
245
+ fields: [String!]
246
+ limit: Int
247
+ ): CmsContentEntriesResponse!
248
+
249
+ # Get content entry meta data
250
+ getContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!
251
+
252
+ getLatestContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!
253
+ getPublishedContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!
254
+
255
+ # Get content entries meta data
256
+ getContentEntries(entries: [CmsModelEntryInput!]!): CmsContentEntriesResponse!
257
+ getLatestContentEntries(entries: [CmsModelEntryInput!]!): CmsContentEntriesResponse!
258
+ getPublishedContentEntries(
259
+ entries: [CmsModelEntryInput!]!
260
+ ): CmsContentEntriesResponse!
261
+ }
262
+ `,
263
+ resolvers: {
264
+ CmsContentEntry: {
265
+ published: async (parent, _, context) => {
266
+ try {
267
+ const models = await context.cms.listModels();
268
+ const model = models.find(({
269
+ modelId
270
+ }) => {
271
+ return parent.model.modelId === modelId;
272
+ });
273
+ if (!model) {
274
+ return null;
275
+ }
276
+ const [entry] = await context.cms.getPublishedEntriesByIds(model, [parent.id]);
277
+ if (!entry) {
278
+ return null;
279
+ }
280
+ return createCmsEntryRecord(model, entry);
281
+ } catch (ex) {
282
+ return null;
283
+ }
284
+ },
285
+ description: createResolveDescription()
286
+ },
287
+ CmsPublishedContentEntry: {
288
+ description: createResolveDescription()
289
+ },
290
+ Query: {
291
+ async searchContentEntries(_, args, context) {
292
+ const {
293
+ modelIds,
294
+ fields,
295
+ query,
296
+ limit = 10
297
+ } = args;
298
+ const models = await context.cms.listModels();
299
+ const getters = models.filter(model => modelIds.includes(model.modelId)).map(async model => {
300
+ const modelManager = await context.cms.getModelManager(model.modelId);
301
+ const where = {};
302
+ const [items] = await modelManager.listLatest({
303
+ limit,
304
+ where,
305
+ search: !!query ? query : undefined,
306
+ fields: fields || []
307
+ });
308
+ return items.map(entry => {
309
+ return createCmsEntryRecord(model, entry);
310
+ });
311
+ });
312
+ try {
313
+ const entries = await Promise.all(getters).then(results => results.reduce((result, item) => result.concat(item), []));
314
+ return new _handlerGraphql.Response(entries.sort((a, b) => b.savedOn.getTime() - a.savedOn.getTime()).slice(0, limit));
315
+ } catch (ex) {
316
+ return new _handlerGraphql.ErrorResponse(ex);
317
+ }
318
+ },
319
+ async getContentEntry(_, args, context) {
320
+ return getContentEntry({
321
+ args,
322
+ context,
323
+ type: "exact"
324
+ });
325
+ },
326
+ async getLatestContentEntry(_, args, context) {
327
+ return getContentEntry({
328
+ args,
329
+ context,
330
+ type: "latest"
331
+ });
332
+ },
333
+ async getPublishedContentEntry(_, args, context) {
334
+ return getContentEntry({
335
+ args,
336
+ context,
337
+ type: "published"
338
+ });
339
+ },
340
+ async getContentEntries(_, args, context) {
341
+ return getContentEntries({
342
+ args,
343
+ context,
344
+ type: "exact"
345
+ });
346
+ },
347
+ async getLatestContentEntries(_, args, context) {
348
+ return getContentEntries({
349
+ args,
350
+ context,
351
+ type: "latest"
352
+ });
353
+ },
354
+ async getPublishedContentEntries(_, args, context) {
355
+ return getContentEntries({
356
+ args,
357
+ context,
358
+ type: "published"
359
+ });
360
+ }
361
+ }
362
+ }
363
+ });
364
+ plugin.name = `headless-cms.graphql.schema.${context.cms.type}.content-entries`;
365
+ return plugin;
366
+ };
367
+ exports.createContentEntriesSchema = createContentEntriesSchema;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createDate","date","Date","createCmsEntryRecord","model","entry","id","entryId","modelId","name","status","title","getEntryTitle","description","getEntryDescription","image","getEntryImage","createdBy","modifiedBy","createdOn","savedOn","wbyAco_location","folderId","location","getFetchMethod","type","context","getContentEntriesMethods","WebinyError","methodName","cms","GetContentEntryMethods","latest","published","exact","getContentEntries","params","args","method","models","listModels","modelsMap","reduce","collection","argsEntries","entries","entriesByModel","ref","includes","push","getters","Object","keys","map","length","Response","results","Promise","all","items","concat","item","filter","Boolean","ex","ErrorResponse","getContentEntry","find","m","NotAuthorizedResponse","data","result","shift","createResolveDescription","parent","_","field","fields","f","fieldId","descriptionFieldId","value","entryFieldFromStorageTransform","createContentEntriesSchema","MANAGE","plugin","CmsGraphQLSchemaPlugin","typeDefs","resolvers","CmsContentEntry","getPublishedEntriesByIds","CmsPublishedContentEntry","Query","searchContentEntries","modelIds","query","limit","modelManager","getModelManager","where","listLatest","search","undefined","then","sort","a","b","getTime","slice","getLatestContentEntry","getPublishedContentEntry","getLatestContentEntries","getPublishedContentEntries"],"sources":["contentEntries.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { ErrorResponse, Response } from \"@webiny/handler-graphql\";\nimport { CmsContext, CmsEntry, CmsEntryListWhere, CmsIdentity, CmsModel } from \"~/types\";\nimport { NotAuthorizedResponse } from \"@webiny/api-security\";\nimport { getEntryTitle } from \"~/utils/getEntryTitle\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { getEntryDescription } from \"~/utils/getEntryDescription\";\nimport { getEntryImage } from \"~/utils/getEntryImage\";\nimport { entryFieldFromStorageTransform } from \"~/utils/entryStorage\";\nimport { Resolvers } from \"@webiny/handler-graphql/types\";\n\ninterface EntriesByModel {\n [key: string]: string[];\n}\n\ntype GetContentEntryType = \"latest\" | \"published\" | \"exact\";\n\nconst createDate = (date: string): Date => {\n try {\n return new Date(date);\n } catch {}\n return new Date();\n};\ninterface CmsEntryRecord {\n id: string;\n entryId: string;\n model: {\n modelId: string;\n name: string;\n };\n status: string;\n title: string;\n description?: string | null;\n image?: string | null;\n createdBy: CmsIdentity;\n modifiedBy?: CmsIdentity | null;\n /**\n * We can use the number since it is an internal field.\n * Created via Date.parse() method.\n */\n createdOn: Date;\n savedOn: Date;\n wbyAco_location?: {\n folderId?: string | null;\n };\n}\n\nconst createCmsEntryRecord = (model: CmsModel, entry: CmsEntry): CmsEntryRecord => {\n return {\n id: entry.id,\n entryId: entry.entryId,\n model: {\n modelId: model.modelId,\n name: model.name\n },\n status: entry.status,\n title: getEntryTitle(model, entry),\n description: getEntryDescription(model, entry),\n image: getEntryImage(model, entry),\n createdBy: entry.createdBy,\n modifiedBy: entry.modifiedBy,\n createdOn: createDate(entry.createdOn),\n savedOn: createDate(entry.savedOn),\n wbyAco_location: {\n folderId: entry.location?.folderId || null\n }\n };\n};\n\ninterface FetchMethod {\n (model: CmsModel, ids: string[]): Promise<CmsEntry[]>;\n}\n\nconst getFetchMethod = (type: GetContentEntryType, context: CmsContext): FetchMethod => {\n if (!getContentEntriesMethods[type]) {\n throw new WebinyError(\n `Unknown getContentEntries method \"${type}\". Could not fetch content entries.`,\n \"UNKNOWN_METHOD_ERROR\",\n {\n type\n }\n );\n }\n const methodName = getContentEntriesMethods[type] as GetContentEntryMethods;\n if (!context.cms[methodName]) {\n throw new WebinyError(\n `Unknown context.cms method \"${methodName}\". Could not fetch content entries.`,\n \"UNKNOWN_METHOD_ERROR\",\n {\n type,\n methodName\n }\n );\n }\n\n return context.cms[methodName];\n};\n/**\n * Function to get the list of content entries depending on latest, published or exact GraphQL queries.\n */\ninterface GetContentEntriesParams {\n args: {\n entries: Pick<CmsEntry, \"id\" | \"modelId\">[];\n };\n context: CmsContext;\n type: GetContentEntryType;\n}\nenum GetContentEntryMethods {\n getLatestEntriesByIds = \"getLatestEntriesByIds\",\n getPublishedEntriesByIds = \"getPublishedEntriesByIds\",\n getEntriesByIds = \"getEntriesByIds\"\n}\nconst getContentEntriesMethods = {\n latest: \"getLatestEntriesByIds\",\n published: \"getPublishedEntriesByIds\",\n exact: \"getEntriesByIds\"\n};\nconst getContentEntries = async (\n params: GetContentEntriesParams\n): Promise<Response | ErrorResponse> => {\n const { args, context, type } = params;\n\n const method = getFetchMethod(type, context);\n\n const models = await context.cms.listModels();\n\n const modelsMap = models.reduce((collection, model) => {\n collection[model.modelId] = model;\n return collection;\n }, {} as Record<string, CmsModel>);\n\n const argsEntries = args.entries as Pick<CmsEntry, \"id\" | \"modelId\">[];\n\n const entriesByModel = argsEntries.reduce((collection, ref) => {\n if (!collection[ref.modelId]) {\n collection[ref.modelId] = [];\n } else if (collection[ref.modelId].includes(ref.id)) {\n return collection;\n }\n collection[ref.modelId].push(ref.id);\n return collection;\n }, {} as EntriesByModel);\n\n const getters: Promise<CmsEntry[]>[] = Object.keys(entriesByModel).map(async modelId => {\n return method(modelsMap[modelId], entriesByModel[modelId]);\n });\n\n if (getters.length === 0) {\n return new Response([]);\n }\n\n try {\n const results = await Promise.all(getters);\n\n const entries = results\n .reduce<CmsEntryRecord[]>((collection, items) => {\n return collection.concat(\n items.map(item => {\n const model = modelsMap[item.modelId];\n\n return createCmsEntryRecord(model, item);\n })\n );\n }, [])\n .filter(Boolean);\n\n return new Response(entries);\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n};\n\n/**\n * Function to fetch a single content entry depending on latest, published or exact GraphQL query.\n */\ninterface GetContentEntryParams {\n args: {\n entry: Pick<CmsEntry, \"id\" | \"modelId\">;\n };\n context: CmsContext;\n type: \"latest\" | \"published\" | \"exact\";\n}\nconst getContentEntry = async (\n params: GetContentEntryParams\n): Promise<Response<CmsEntryRecord | null> | NotAuthorizedResponse> => {\n const { args, context, type } = params;\n if (!getContentEntriesMethods[type]) {\n throw new WebinyError(\n `Unknown getContentEntry method \"${type}\". Could not fetch content entry.`,\n \"UNKNOWN_METHOD_ERROR\",\n {\n args,\n type\n }\n );\n }\n\n const method = getFetchMethod(type, context);\n\n const { modelId, id } = args.entry;\n const models = await context.cms.listModels();\n const model = models.find(m => m.modelId === modelId);\n\n if (!model) {\n return new NotAuthorizedResponse({\n data: {\n modelId\n }\n });\n }\n\n const result = await method(model, [id]);\n\n const entry = result.shift();\n if (!entry) {\n return new Response(null);\n }\n\n return new Response(createCmsEntryRecord(model, entry));\n};\n/**\n * As we support description field, we need to transform the value from storage.\n */\nconst createResolveDescription = (): Resolvers<CmsContext> => {\n return async (parent, _, context) => {\n const models = await context.cms.listModels();\n const model = models.find(({ modelId }) => {\n return parent.model.modelId === modelId;\n });\n if (!model) {\n return null;\n }\n const field = model.fields.find(f => f.fieldId === model.descriptionFieldId);\n if (!field) {\n return null;\n }\n const value = parent.description || parent[field.fieldId];\n if (!value) {\n return null;\n }\n return entryFieldFromStorageTransform({\n context,\n model,\n field,\n value\n });\n };\n};\n\ninterface Params {\n context: CmsContext;\n}\nexport const createContentEntriesSchema = ({\n context\n}: Params): CmsGraphQLSchemaPlugin<CmsContext> => {\n if (!context.cms.MANAGE) {\n const plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: \"\",\n resolvers: {}\n });\n plugin.name = `headless-cms.graphql.schema.${context.cms.type}.empty`;\n return plugin;\n }\n\n const plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type CmsModelMeta {\n modelId: String!\n name: String!\n }\n\n type CmsPublishedContentEntry {\n id: ID!\n entryId: String!\n title: String\n description: String\n image: String\n }\n\n type CmsContentEntry {\n id: ID!\n entryId: String!\n model: CmsModelMeta!\n status: String!\n title: String!\n description: String\n image: String\n createdBy: CmsIdentity!\n ownedBy: CmsIdentity!\n modifiedBy: CmsIdentity\n published: CmsPublishedContentEntry\n createdOn: DateTime!\n savedOn: DateTime!\n wbyAco_location: WbyAcoLocation\n }\n\n type CmsContentEntriesResponse {\n data: [CmsContentEntry!]\n error: CmsError\n }\n\n type CmsContentEntryResponse {\n data: CmsContentEntry\n error: CmsError\n }\n\n input CmsModelEntryInput {\n modelId: ID!\n id: ID!\n }\n\n extend type Query {\n # Search content entries for given content models using the query string.\n searchContentEntries(\n modelIds: [ID!]!\n query: String\n fields: [String!]\n limit: Int\n ): CmsContentEntriesResponse!\n\n # Get content entry meta data\n getContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!\n\n getLatestContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!\n getPublishedContentEntry(entry: CmsModelEntryInput!): CmsContentEntryResponse!\n\n # Get content entries meta data\n getContentEntries(entries: [CmsModelEntryInput!]!): CmsContentEntriesResponse!\n getLatestContentEntries(entries: [CmsModelEntryInput!]!): CmsContentEntriesResponse!\n getPublishedContentEntries(\n entries: [CmsModelEntryInput!]!\n ): CmsContentEntriesResponse!\n }\n `,\n resolvers: {\n CmsContentEntry: {\n published: async (parent, _, context) => {\n try {\n const models = await context.cms.listModels();\n const model = models.find(({ modelId }) => {\n return parent.model.modelId === modelId;\n });\n if (!model) {\n return null;\n }\n const [entry] = await context.cms.getPublishedEntriesByIds(model, [\n parent.id\n ]);\n if (!entry) {\n return null;\n }\n return createCmsEntryRecord(model, entry);\n } catch (ex) {\n return null;\n }\n },\n description: createResolveDescription()\n },\n CmsPublishedContentEntry: {\n description: createResolveDescription()\n },\n Query: {\n async searchContentEntries(_, args: any, context) {\n const { modelIds, fields, query, limit = 10 } = args;\n const models = await context.cms.listModels();\n\n const getters = models\n .filter(model => modelIds.includes(model.modelId))\n .map(async model => {\n const modelManager = await context.cms.getModelManager(model.modelId);\n const where: CmsEntryListWhere = {};\n\n const [items] = await modelManager.listLatest({\n limit,\n where,\n search: !!query ? query : undefined,\n fields: fields || []\n });\n\n return items.map((entry: CmsEntry) => {\n return createCmsEntryRecord(model, entry);\n });\n });\n\n try {\n const entries = await Promise.all(getters).then(results =>\n results.reduce((result, item) => result.concat(item), [])\n );\n\n return new Response(\n entries\n .sort((a, b) => b.savedOn.getTime() - a.savedOn.getTime())\n .slice(0, limit)\n );\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n },\n async getContentEntry(_, args: any, context) {\n return getContentEntry({\n args,\n context,\n type: \"exact\"\n });\n },\n async getLatestContentEntry(_, args: any, context) {\n return getContentEntry({\n args,\n context,\n type: \"latest\"\n });\n },\n async getPublishedContentEntry(_, args: any, context) {\n return getContentEntry({\n args,\n context,\n type: \"published\"\n });\n },\n async getContentEntries(_, args: any, context) {\n return getContentEntries({\n args,\n context,\n type: \"exact\"\n });\n },\n async getLatestContentEntries(_, args: any, context) {\n return getContentEntries({\n args,\n context,\n type: \"latest\"\n });\n },\n async getPublishedContentEntries(_, args: any, context) {\n return getContentEntries({\n args,\n context,\n type: \"published\"\n });\n }\n }\n }\n });\n\n plugin.name = `headless-cms.graphql.schema.${context.cms.type}.content-entries`;\n\n return plugin;\n};\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { CmsContext } from "../../types";
2
+ import { CmsGraphQLSchemaPlugin } from "../../plugins";
3
+ interface Params {
4
+ context: CmsContext;
5
+ }
6
+ export declare const createGroupsSchema: ({ context }: Params) => CmsGraphQLSchemaPlugin;
7
+ export {};
@@ -3,21 +3,16 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.default = void 0;
7
-
6
+ exports.createGroupsSchema = void 0;
8
7
  var _handlerGraphql = require("@webiny/handler-graphql");
9
-
10
- var _GraphQLSchemaPlugin = require("@webiny/handler-graphql/plugins/GraphQLSchemaPlugin");
11
-
12
- var _CmsGroupPlugin = require("../CmsGroupPlugin");
13
-
14
- const plugin = context => {
8
+ var _CmsGroupPlugin = require("../../plugins/CmsGroupPlugin");
9
+ var _plugins = require("../../plugins");
10
+ const createGroupsSchema = ({
11
+ context
12
+ }) => {
15
13
  let manageSchema = "";
16
-
17
14
  if (context.cms.MANAGE) {
18
- manageSchema =
19
- /* GraphQL */
20
- `
15
+ manageSchema = /* GraphQL */`
21
16
  input CmsContentModelGroupInput {
22
17
  name: String!
23
18
  slug: String
@@ -55,23 +50,34 @@ const plugin = context => {
55
50
  }
56
51
  `;
57
52
  }
58
-
59
53
  let resolvers = {};
60
-
61
54
  if (context.cms.MANAGE) {
62
55
  resolvers = {
63
56
  CmsContentModelGroup: {
64
57
  contentModels: async (group, _, context) => {
65
- const models = await context.cms.silentAuthModel().list();
66
- return models.filter(m => m.group.id === group.id);
58
+ const models = await context.security.withoutAuthorization(async () => {
59
+ return context.cms.listModels();
60
+ });
61
+ return models.filter(model => {
62
+ if (model.isPrivate === true) {
63
+ return false;
64
+ }
65
+ return model.group.id === group.id;
66
+ });
67
67
  },
68
68
  totalContentModels: async (group, _, context) => {
69
- const models = await context.cms.silentAuthModel().list();
70
- return models.filter(m => m.group === group.id).length;
69
+ const models = await context.security.withoutAuthorization(async () => {
70
+ return context.cms.listModels();
71
+ });
72
+ return models.filter(model => {
73
+ if (model.isPrivate === true) {
74
+ return false;
75
+ }
76
+ return model.group === group.id;
77
+ }).length;
71
78
  },
72
79
  plugin: async (group, _, context) => {
73
- const groupPlugin = context.plugins.byType(_CmsGroupPlugin.CmsGroupPlugin.type).find(item => item.contentModelGroup.id === group.id);
74
- return Boolean(groupPlugin);
80
+ return context.plugins.byType(_CmsGroupPlugin.CmsGroupPlugin.type).some(item => item.contentModelGroup.id === group.id);
75
81
  }
76
82
  },
77
83
  Query: {
@@ -80,16 +86,19 @@ const plugin = context => {
80
86
  const {
81
87
  id
82
88
  } = args;
83
- const model = await context.cms.getGroup(id);
84
- return new _handlerGraphql.Response(model);
89
+ const group = await context.cms.getGroup(id);
90
+ if (group !== null && group !== void 0 && group.isPrivate) {
91
+ throw new _handlerGraphql.NotFoundError(`Cms Group "${id}" was not found!`);
92
+ }
93
+ return new _handlerGraphql.Response(group);
85
94
  } catch (e) {
86
95
  return new _handlerGraphql.ErrorResponse(e);
87
96
  }
88
97
  },
89
98
  listContentModelGroups: async (_, __, context) => {
90
99
  try {
91
- const models = await context.cms.listGroups();
92
- return new _handlerGraphql.Response(models);
100
+ const groups = await context.cms.listGroups();
101
+ return new _handlerGraphql.Response(groups.filter(group => group.isPrivate !== true));
93
102
  } catch (e) {
94
103
  return new _handlerGraphql.ErrorResponse(e);
95
104
  }
@@ -123,11 +132,8 @@ const plugin = context => {
123
132
  }
124
133
  };
125
134
  }
126
-
127
- return new _GraphQLSchemaPlugin.GraphQLSchemaPlugin({
128
- typeDefs:
129
- /* GraphQL */
130
- `
135
+ const plugin = new _plugins.CmsGraphQLSchemaPlugin({
136
+ typeDefs: /* GraphQL */`
131
137
  type CmsContentModelGroup {
132
138
  id: ID!
133
139
  createdOn: DateTime
@@ -138,7 +144,7 @@ const plugin = context => {
138
144
  slug: String!
139
145
  description: String
140
146
  icon: String
141
- createdBy: CmsCreatedBy
147
+ createdBy: CmsIdentity
142
148
 
143
149
  # Returns true if the content model group is registered via a plugin.
144
150
  plugin: Boolean!
@@ -147,7 +153,7 @@ const plugin = context => {
147
153
  `,
148
154
  resolvers
149
155
  });
156
+ plugin.name = `headless-cms.graphql.schema.${context.cms.type}.content-model-groups`;
157
+ return plugin;
150
158
  };
151
-
152
- var _default = plugin;
153
- exports.default = _default;
159
+ exports.createGroupsSchema = createGroupsSchema;