@webiny/api-headless-cms 0.0.0-mt-3 → 0.0.0-unstable.2af142b57e

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 (606) hide show
  1. package/context.d.ts +6 -0
  2. package/context.js +94 -0
  3. package/context.js.map +1 -0
  4. package/crud/contentEntry/afterDelete.d.ts +8 -0
  5. package/{content/plugins/crud → crud}/contentEntry/afterDelete.js +2 -7
  6. package/crud/contentEntry/afterDelete.js.map +1 -0
  7. package/crud/contentEntry/beforeCreate.d.ts +8 -0
  8. package/{content/plugins/crud → crud}/contentEntry/beforeCreate.js +2 -5
  9. package/crud/contentEntry/beforeCreate.js.map +1 -0
  10. package/crud/contentEntry/beforeUpdate.d.ts +8 -0
  11. package/{content/plugins/crud → crud}/contentEntry/beforeUpdate.js +2 -5
  12. package/crud/contentEntry/beforeUpdate.js.map +1 -0
  13. package/crud/contentEntry/entryDataValidation.d.ts +10 -0
  14. package/{content/plugins/crud → crud}/contentEntry/entryDataValidation.js +22 -49
  15. package/crud/contentEntry/entryDataValidation.js.map +1 -0
  16. package/{content/plugins/crud → crud}/contentEntry/markLockedFields.d.ts +3 -2
  17. package/{content/plugins/crud → crud}/contentEntry/markLockedFields.js +26 -43
  18. package/crud/contentEntry/markLockedFields.js.map +1 -0
  19. package/crud/contentEntry/referenceFieldsMapping.d.ts +13 -0
  20. package/crud/contentEntry/referenceFieldsMapping.js +236 -0
  21. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -0
  22. package/crud/contentEntry/searchableFields.d.ts +9 -0
  23. package/crud/contentEntry/searchableFields.js +72 -0
  24. package/crud/contentEntry/searchableFields.js.map +1 -0
  25. package/{content/plugins/crud → crud}/contentEntry.crud.d.ts +5 -9
  26. package/crud/contentEntry.crud.js +1194 -0
  27. package/crud/contentEntry.crud.js.map +1 -0
  28. package/crud/contentModel/afterCreate.d.ts +8 -0
  29. package/crud/contentModel/afterCreate.js +16 -0
  30. package/crud/contentModel/afterCreate.js.map +1 -0
  31. package/crud/contentModel/afterCreateFrom.d.ts +8 -0
  32. package/crud/contentModel/afterCreateFrom.js +16 -0
  33. package/crud/contentModel/afterCreateFrom.js.map +1 -0
  34. package/crud/contentModel/afterDelete.d.ts +8 -0
  35. package/crud/contentModel/afterDelete.js +16 -0
  36. package/crud/contentModel/afterDelete.js.map +1 -0
  37. package/crud/contentModel/afterUpdate.d.ts +8 -0
  38. package/crud/contentModel/afterUpdate.js +16 -0
  39. package/crud/contentModel/afterUpdate.js.map +1 -0
  40. package/crud/contentModel/beforeCreate.d.ts +14 -0
  41. package/{content/plugins/crud → crud}/contentModel/beforeCreate.js +58 -39
  42. package/crud/contentModel/beforeCreate.js.map +1 -0
  43. package/crud/contentModel/beforeDelete.d.ts +10 -0
  44. package/{content/plugins/crud → crud}/contentModel/beforeDelete.js +13 -19
  45. package/crud/contentModel/beforeDelete.js.map +1 -0
  46. package/crud/contentModel/beforeUpdate.d.ts +8 -0
  47. package/crud/contentModel/beforeUpdate.js +32 -0
  48. package/crud/contentModel/beforeUpdate.js.map +1 -0
  49. package/crud/contentModel/contentModelManagerFactory.d.ts +2 -0
  50. package/{content/plugins/crud → crud}/contentModel/contentModelManagerFactory.js +0 -7
  51. package/crud/contentModel/contentModelManagerFactory.js.map +1 -0
  52. package/crud/contentModel/createFieldStorageId.d.ts +2 -0
  53. package/crud/contentModel/createFieldStorageId.js +17 -0
  54. package/crud/contentModel/createFieldStorageId.js.map +1 -0
  55. package/crud/contentModel/systemFields.d.ts +1 -0
  56. package/crud/contentModel/systemFields.js +8 -0
  57. package/crud/contentModel/systemFields.js.map +1 -0
  58. package/crud/contentModel/validateLayout.d.ts +2 -0
  59. package/{content/plugins/crud → crud}/contentModel/validateLayout.js +1 -11
  60. package/crud/contentModel/validateLayout.js.map +1 -0
  61. package/crud/contentModel/validateModel.d.ts +8 -0
  62. package/crud/contentModel/validateModel.js +27 -0
  63. package/crud/contentModel/validateModel.js.map +1 -0
  64. package/crud/contentModel/validateModelFields.d.ts +8 -0
  65. package/crud/contentModel/validateModelFields.js +380 -0
  66. package/crud/contentModel/validateModelFields.js.map +1 -0
  67. package/crud/contentModel/validation.d.ts +477 -0
  68. package/crud/contentModel/validation.js +97 -0
  69. package/crud/contentModel/validation.js.map +1 -0
  70. package/{content/plugins/crud → crud}/contentModel.crud.d.ts +3 -3
  71. package/crud/contentModel.crud.js +555 -0
  72. package/crud/contentModel.crud.js.map +1 -0
  73. package/crud/contentModelGroup/beforeCreate.d.ts +10 -0
  74. package/{content/plugins/crud → crud}/contentModelGroup/beforeCreate.js +8 -20
  75. package/crud/contentModelGroup/beforeCreate.js.map +1 -0
  76. package/crud/contentModelGroup/beforeDelete.d.ts +10 -0
  77. package/{content/plugins/crud → crud}/contentModelGroup/beforeDelete.js +4 -12
  78. package/crud/contentModelGroup/beforeDelete.js.map +1 -0
  79. package/crud/contentModelGroup/beforeUpdate.d.ts +9 -0
  80. package/{content/plugins/crud → crud}/contentModelGroup/beforeUpdate.js +3 -8
  81. package/crud/contentModelGroup/beforeUpdate.js.map +1 -0
  82. package/crud/contentModelGroup/validation.d.ts +30 -0
  83. package/crud/contentModelGroup/validation.js +34 -0
  84. package/crud/contentModelGroup/validation.js.map +1 -0
  85. package/{content/plugins/crud → crud}/contentModelGroup.crud.d.ts +3 -3
  86. package/crud/contentModelGroup.crud.js +324 -0
  87. package/crud/contentModelGroup.crud.js.map +1 -0
  88. package/{plugins/crud → crud}/settings.crud.d.ts +3 -3
  89. package/crud/settings.crud.js +71 -0
  90. package/crud/settings.crud.js.map +1 -0
  91. package/{plugins/crud → crud}/system.crud.d.ts +6 -3
  92. package/crud/system.crud.js +186 -0
  93. package/crud/system.crud.js.map +1 -0
  94. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.d.ts +7 -0
  95. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +53 -0
  96. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -0
  97. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  98. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
  99. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  100. package/fieldConverters/CmsModelObjectFieldConverterPlugin.d.ts +11 -0
  101. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +251 -0
  102. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -0
  103. package/fieldConverters/index.d.ts +4 -0
  104. package/fieldConverters/index.js +13 -0
  105. package/fieldConverters/index.js.map +1 -0
  106. package/graphql/buildSchemaPlugins.d.ts +11 -0
  107. package/graphql/buildSchemaPlugins.js +19 -0
  108. package/graphql/buildSchemaPlugins.js.map +1 -0
  109. package/graphql/createExecutableSchema.d.ts +7 -0
  110. package/graphql/createExecutableSchema.js +29 -0
  111. package/graphql/createExecutableSchema.js.map +1 -0
  112. package/graphql/generateSchema.d.ts +8 -0
  113. package/graphql/generateSchema.js +31 -0
  114. package/graphql/generateSchema.js.map +1 -0
  115. package/graphql/graphQLHandlerFactory.d.ts +5 -0
  116. package/graphql/graphQLHandlerFactory.js +174 -0
  117. package/graphql/graphQLHandlerFactory.js.map +1 -0
  118. package/graphql/index.d.ts +3 -0
  119. package/graphql/index.js +13 -0
  120. package/graphql/index.js.map +1 -0
  121. package/graphql/schema/baseContentSchema.d.ts +7 -0
  122. package/graphql/schema/baseContentSchema.js +72 -0
  123. package/graphql/schema/baseContentSchema.js.map +1 -0
  124. package/graphql/schema/baseSchema.d.ts +3 -0
  125. package/graphql/schema/baseSchema.js +53 -0
  126. package/graphql/schema/baseSchema.js.map +1 -0
  127. package/graphql/schema/contentEntries.d.ts +7 -0
  128. package/graphql/schema/contentEntries.js +325 -0
  129. package/graphql/schema/contentEntries.js.map +1 -0
  130. package/graphql/schema/contentModelGroups.d.ts +7 -0
  131. package/{content/plugins → graphql}/schema/contentModelGroups.js +38 -32
  132. package/graphql/schema/contentModelGroups.js.map +1 -0
  133. package/graphql/schema/contentModels.d.ts +7 -0
  134. package/{content/plugins → graphql}/schema/contentModels.js +101 -28
  135. package/graphql/schema/contentModels.js.map +1 -0
  136. package/graphql/schema/createFieldResolvers.d.ts +20 -0
  137. package/graphql/schema/createFieldResolvers.js +110 -0
  138. package/graphql/schema/createFieldResolvers.js.map +1 -0
  139. package/graphql/schema/createManageResolvers.d.ts +12 -0
  140. package/{content/plugins → graphql}/schema/createManageResolvers.js +32 -56
  141. package/graphql/schema/createManageResolvers.js.map +1 -0
  142. package/graphql/schema/createManageSDL.d.ts +12 -0
  143. package/{content/plugins → graphql}/schema/createManageSDL.js +31 -33
  144. package/graphql/schema/createManageSDL.js.map +1 -0
  145. package/graphql/schema/createPreviewResolvers.d.ts +12 -0
  146. package/graphql/schema/createPreviewResolvers.js +48 -0
  147. package/graphql/schema/createPreviewResolvers.js.map +1 -0
  148. package/graphql/schema/createReadResolvers.d.ts +12 -0
  149. package/graphql/schema/createReadResolvers.js +53 -0
  150. package/graphql/schema/createReadResolvers.js.map +1 -0
  151. package/graphql/schema/createReadSDL.d.ts +12 -0
  152. package/{content/plugins → graphql}/schema/createReadSDL.js +23 -21
  153. package/graphql/schema/createReadSDL.js.map +1 -0
  154. package/graphql/schema/resolvers/commonFieldResolvers.d.ts +6 -0
  155. package/{content/plugins → graphql}/schema/resolvers/commonFieldResolvers.js +0 -2
  156. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -0
  157. package/graphql/schema/resolvers/manage/resolveCreate.d.ts +7 -0
  158. package/{content/plugins → graphql}/schema/resolvers/manage/resolveCreate.js +2 -7
  159. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -0
  160. package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +8 -0
  161. package/{content/plugins → graphql}/schema/resolvers/manage/resolveCreateFrom.js +2 -7
  162. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -0
  163. package/graphql/schema/resolvers/manage/resolveDelete.d.ts +7 -0
  164. package/{content/plugins → graphql}/schema/resolvers/manage/resolveDelete.js +8 -12
  165. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -0
  166. package/graphql/schema/resolvers/manage/resolveGet.d.ts +7 -0
  167. package/graphql/schema/resolvers/manage/resolveGet.js +63 -0
  168. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -0
  169. package/graphql/schema/resolvers/manage/resolveGetByIds.d.ts +7 -0
  170. package/{content/plugins → graphql}/schema/resolvers/manage/resolveGetByIds.js +2 -7
  171. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -0
  172. package/graphql/schema/resolvers/manage/resolveGetRevisions.d.ts +7 -0
  173. package/{content/plugins → graphql}/schema/resolvers/manage/resolveGetRevisions.js +2 -7
  174. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -0
  175. package/graphql/schema/resolvers/manage/resolveList.d.ts +4 -0
  176. package/{content/plugins/schema/resolvers/preview → graphql/schema/resolvers/manage}/resolveList.js +2 -7
  177. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -0
  178. package/graphql/schema/resolvers/manage/resolvePublish.d.ts +7 -0
  179. package/{content/plugins → graphql}/schema/resolvers/manage/resolvePublish.js +0 -3
  180. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -0
  181. package/graphql/schema/resolvers/manage/resolveRepublish.d.ts +7 -0
  182. package/{content/plugins/schema/resolvers/manage/resolveGet.js → graphql/schema/resolvers/manage/resolveRepublish.js} +4 -7
  183. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -0
  184. package/graphql/schema/resolvers/manage/resolveUnpublish.d.ts +7 -0
  185. package/{content/plugins → graphql}/schema/resolvers/manage/resolveUnpublish.js +0 -3
  186. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -0
  187. package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +8 -0
  188. package/{content/plugins → graphql}/schema/resolvers/manage/resolveUpdate.js +2 -7
  189. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -0
  190. package/graphql/schema/resolvers/preview/resolveGet.d.ts +4 -0
  191. package/graphql/schema/resolvers/preview/resolveGet.js +26 -0
  192. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -0
  193. package/graphql/schema/resolvers/preview/resolveList.d.ts +4 -0
  194. package/{content/plugins/schema/resolvers/manage → graphql/schema/resolvers/preview}/resolveList.js +2 -7
  195. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -0
  196. package/graphql/schema/resolvers/read/resolveGet.d.ts +4 -0
  197. package/graphql/schema/resolvers/read/resolveGet.js +26 -0
  198. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -0
  199. package/graphql/schema/resolvers/read/resolveList.d.ts +4 -0
  200. package/{content/plugins → graphql}/schema/resolvers/read/resolveList.js +2 -7
  201. package/graphql/schema/resolvers/read/resolveList.js.map +1 -0
  202. package/graphql/schema/schemaPlugins.d.ts +8 -0
  203. package/graphql/schema/schemaPlugins.js +109 -0
  204. package/graphql/schema/schemaPlugins.js.map +1 -0
  205. package/graphql/system.d.ts +6 -0
  206. package/{plugins/graphql → graphql}/system.js +43 -12
  207. package/graphql/system.js.map +1 -0
  208. package/graphqlFields/boolean.d.ts +2 -0
  209. package/graphqlFields/boolean.js +57 -0
  210. package/graphqlFields/boolean.js.map +1 -0
  211. package/graphqlFields/datetime.d.ts +2 -0
  212. package/graphqlFields/datetime.js +78 -0
  213. package/graphqlFields/datetime.js.map +1 -0
  214. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
  215. package/graphqlFields/dynamicZone/dynamicZoneField.js +208 -0
  216. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
  217. package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +3 -0
  218. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +63 -0
  219. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -0
  220. package/graphqlFields/dynamicZone/index.d.ts +2 -0
  221. package/graphqlFields/dynamicZone/index.js +19 -0
  222. package/graphqlFields/dynamicZone/index.js.map +1 -0
  223. package/graphqlFields/file.d.ts +2 -0
  224. package/graphqlFields/file.js +42 -0
  225. package/graphqlFields/file.js.map +1 -0
  226. package/graphqlFields/helpers.d.ts +6 -0
  227. package/graphqlFields/helpers.js +39 -0
  228. package/graphqlFields/helpers.js.map +1 -0
  229. package/graphqlFields/index.d.ts +2 -0
  230. package/graphqlFields/index.js +18 -0
  231. package/graphqlFields/index.js.map +1 -0
  232. package/graphqlFields/longText.d.ts +2 -0
  233. package/graphqlFields/longText.js +53 -0
  234. package/graphqlFields/longText.js.map +1 -0
  235. package/graphqlFields/number.d.ts +2 -0
  236. package/graphqlFields/number.js +67 -0
  237. package/graphqlFields/number.js.map +1 -0
  238. package/graphqlFields/object.d.ts +2 -0
  239. package/graphqlFields/object.js +239 -0
  240. package/graphqlFields/object.js.map +1 -0
  241. package/graphqlFields/ref.d.ts +2 -0
  242. package/graphqlFields/ref.js +227 -0
  243. package/graphqlFields/ref.js.map +1 -0
  244. package/graphqlFields/richText.d.ts +2 -0
  245. package/graphqlFields/richText.js +47 -0
  246. package/graphqlFields/richText.js.map +1 -0
  247. package/graphqlFields/text.d.ts +2 -0
  248. package/graphqlFields/text.js +62 -0
  249. package/graphqlFields/text.js.map +1 -0
  250. package/index.d.ts +10 -12
  251. package/index.js +75 -55
  252. package/index.js.map +1 -0
  253. package/modelManager/DefaultCmsModelManager.d.ts +14 -0
  254. package/{content/plugins/modelManager → modelManager}/DefaultCmsModelManager.js +10 -24
  255. package/modelManager/DefaultCmsModelManager.js.map +1 -0
  256. package/modelManager/index.d.ts +2 -0
  257. package/{content/plugins/modelManager → modelManager}/index.js +3 -7
  258. package/modelManager/index.js.map +1 -0
  259. package/package.json +38 -38
  260. package/parameters/context.d.ts +2 -0
  261. package/parameters/context.js +18 -0
  262. package/parameters/context.js.map +1 -0
  263. package/parameters/header.d.ts +2 -0
  264. package/parameters/header.js +44 -0
  265. package/parameters/header.js.map +1 -0
  266. package/parameters/index.d.ts +4 -0
  267. package/parameters/index.js +49 -0
  268. package/parameters/index.js.map +1 -0
  269. package/parameters/manual.d.ts +6 -0
  270. package/parameters/manual.js +37 -0
  271. package/parameters/manual.js.map +1 -0
  272. package/parameters/path.d.ts +2 -0
  273. package/parameters/path.js +40 -0
  274. package/parameters/path.js.map +1 -0
  275. package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
  276. package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
  277. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
  278. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  279. package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
  280. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  281. package/plugins/CmsGroupPlugin.d.ts +13 -0
  282. package/{content/plugins → plugins}/CmsGroupPlugin.js +7 -9
  283. package/plugins/CmsGroupPlugin.js.map +1 -0
  284. package/plugins/CmsModelFieldConverterPlugin.d.ts +14 -0
  285. package/plugins/CmsModelFieldConverterPlugin.js +12 -0
  286. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -0
  287. package/plugins/CmsModelPlugin.d.ts +45 -0
  288. package/plugins/CmsModelPlugin.js +158 -0
  289. package/plugins/CmsModelPlugin.js.map +1 -0
  290. package/plugins/CmsParametersPlugin.d.ts +20 -0
  291. package/plugins/CmsParametersPlugin.js +21 -0
  292. package/plugins/CmsParametersPlugin.js.map +1 -0
  293. package/plugins/StorageTransformPlugin.d.ts +31 -0
  294. package/{content/plugins/storage → plugins}/StorageTransformPlugin.js +2 -10
  295. package/plugins/StorageTransformPlugin.js.map +1 -0
  296. package/plugins/index.d.ts +7 -0
  297. package/plugins/index.js +82 -0
  298. package/plugins/index.js.map +1 -0
  299. package/storage/default.d.ts +2 -0
  300. package/storage/default.js +24 -0
  301. package/storage/default.js.map +1 -0
  302. package/storage/object.d.ts +2 -0
  303. package/storage/object.js +108 -0
  304. package/storage/object.js.map +1 -0
  305. package/types.d.ts +881 -389
  306. package/types.js +104 -61
  307. package/types.js.map +1 -0
  308. package/upgrades/5.33.0/index.d.ts +3 -0
  309. package/upgrades/5.33.0/index.js +159 -0
  310. package/upgrades/5.33.0/index.js.map +1 -0
  311. package/upgrades/index.d.ts +1 -0
  312. package/upgrades/index.js +9 -0
  313. package/upgrades/index.js.map +1 -0
  314. package/utils/access.d.ts +8 -0
  315. package/utils/access.js +76 -0
  316. package/utils/access.js.map +1 -0
  317. package/utils/converters/Converter.d.ts +27 -0
  318. package/utils/converters/Converter.js +58 -0
  319. package/utils/converters/Converter.js.map +1 -0
  320. package/utils/converters/ConverterCollection.d.ts +31 -0
  321. package/utils/converters/ConverterCollection.js +119 -0
  322. package/utils/converters/ConverterCollection.js.map +1 -0
  323. package/utils/converters/valueKeyStorageConverter.d.ts +18 -0
  324. package/utils/converters/valueKeyStorageConverter.js +122 -0
  325. package/utils/converters/valueKeyStorageConverter.js.map +1 -0
  326. package/utils/createTypeFromFields.d.ts +15 -0
  327. package/utils/createTypeFromFields.js +64 -0
  328. package/utils/createTypeFromFields.js.map +1 -0
  329. package/{content/plugins/utils → utils}/createTypeName.d.ts +3 -3
  330. package/{content/plugins/utils → utils}/createTypeName.js +3 -10
  331. package/utils/createTypeName.js.map +1 -0
  332. package/{content/plugins/utils → utils}/entryStorage.d.ts +3 -3
  333. package/{content/plugins/utils → utils}/entryStorage.js +26 -47
  334. package/utils/entryStorage.js.map +1 -0
  335. package/utils/filterAsync.d.ts +1 -0
  336. package/utils/filterAsync.js +18 -0
  337. package/utils/filterAsync.js.map +1 -0
  338. package/utils/getBaseFieldType.d.ts +4 -0
  339. package/utils/getBaseFieldType.js +10 -0
  340. package/utils/getBaseFieldType.js.map +1 -0
  341. package/utils/getEntryTitle.d.ts +2 -0
  342. package/{content/plugins/utils → utils}/getEntryTitle.js +7 -15
  343. package/utils/getEntryTitle.js.map +1 -0
  344. package/utils/getSchemaFromFieldPlugins.d.ts +9 -0
  345. package/utils/getSchemaFromFieldPlugins.js +39 -0
  346. package/utils/getSchemaFromFieldPlugins.js.map +1 -0
  347. package/utils/ownership.d.ts +8 -0
  348. package/utils/ownership.js +33 -0
  349. package/utils/ownership.js.map +1 -0
  350. package/utils/permissions.d.ts +7 -0
  351. package/utils/permissions.js +91 -0
  352. package/utils/permissions.js.map +1 -0
  353. package/utils/pluralizedTypeName.d.ts +1 -0
  354. package/{content/plugins/utils → utils}/pluralizedTypeName.js +1 -7
  355. package/utils/pluralizedTypeName.js.map +1 -0
  356. package/utils/renderFields.d.ts +15 -0
  357. package/{content/plugins/utils → utils}/renderFields.js +6 -11
  358. package/utils/renderFields.js.map +1 -0
  359. package/utils/renderGetFilterFields.d.ts +10 -0
  360. package/utils/renderGetFilterFields.js +48 -0
  361. package/utils/renderGetFilterFields.js.map +1 -0
  362. package/utils/renderInputFields.d.ts +14 -0
  363. package/{content/plugins/utils → utils}/renderInputFields.js +3 -10
  364. package/utils/renderInputFields.js.map +1 -0
  365. package/utils/renderListFilterFields.d.ts +11 -0
  366. package/{content/plugins/utils → utils}/renderListFilterFields.js +36 -22
  367. package/utils/renderListFilterFields.js.map +1 -0
  368. package/utils/renderSortEnum.d.ts +12 -0
  369. package/utils/renderSortEnum.js +42 -0
  370. package/utils/renderSortEnum.js.map +1 -0
  371. package/utils/toSlug.d.ts +1 -0
  372. package/utils/toSlug.js +16 -0
  373. package/utils/toSlug.js.map +1 -0
  374. package/validators/dateGte.d.ts +2 -0
  375. package/{content/plugins/validators → validators}/dateGte.js +4 -11
  376. package/validators/dateGte.js.map +1 -0
  377. package/validators/dateLte.d.ts +2 -0
  378. package/{content/plugins/validators → validators}/dateLte.js +4 -11
  379. package/validators/dateLte.js.map +1 -0
  380. package/validators/dynamicZone.d.ts +2 -0
  381. package/validators/dynamicZone.js +20 -0
  382. package/validators/dynamicZone.js.map +1 -0
  383. package/validators/gte.d.ts +2 -0
  384. package/validators/gte.js +28 -0
  385. package/validators/gte.js.map +1 -0
  386. package/validators/in.d.ts +2 -0
  387. package/validators/in.js +28 -0
  388. package/validators/in.js.map +1 -0
  389. package/validators/index.d.ts +1 -0
  390. package/validators/index.js +22 -0
  391. package/validators/index.js.map +1 -0
  392. package/validators/lte.d.ts +2 -0
  393. package/validators/lte.js +28 -0
  394. package/validators/lte.js.map +1 -0
  395. package/validators/maxLength.d.ts +2 -0
  396. package/validators/maxLength.js +28 -0
  397. package/validators/maxLength.js.map +1 -0
  398. package/validators/minLength.d.ts +2 -0
  399. package/validators/minLength.js +28 -0
  400. package/validators/minLength.js.map +1 -0
  401. package/validators/pattern.d.ts +2 -0
  402. package/validators/pattern.js +41 -0
  403. package/validators/pattern.js.map +1 -0
  404. package/validators/patternPlugins/email.d.ts +2 -0
  405. package/validators/patternPlugins/email.js +18 -0
  406. package/validators/patternPlugins/email.js.map +1 -0
  407. package/validators/patternPlugins/index.d.ts +2 -0
  408. package/validators/patternPlugins/index.js +16 -0
  409. package/validators/patternPlugins/index.js.map +1 -0
  410. package/validators/patternPlugins/lowerCase.d.ts +2 -0
  411. package/validators/patternPlugins/lowerCase.js +18 -0
  412. package/validators/patternPlugins/lowerCase.js.map +1 -0
  413. package/validators/patternPlugins/lowerCaseSpace.d.ts +2 -0
  414. package/validators/patternPlugins/lowerCaseSpace.js +18 -0
  415. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -0
  416. package/validators/patternPlugins/upperCase.d.ts +2 -0
  417. package/validators/patternPlugins/upperCase.js +18 -0
  418. package/validators/patternPlugins/upperCase.js.map +1 -0
  419. package/validators/patternPlugins/upperCaseSpace.d.ts +2 -0
  420. package/validators/patternPlugins/upperCaseSpace.js +18 -0
  421. package/validators/patternPlugins/upperCaseSpace.js.map +1 -0
  422. package/validators/patternPlugins/url.d.ts +2 -0
  423. package/validators/patternPlugins/url.js +18 -0
  424. package/validators/patternPlugins/url.js.map +1 -0
  425. package/validators/required.d.ts +2 -0
  426. package/validators/required.js +22 -0
  427. package/validators/required.js.map +1 -0
  428. package/validators/timeGte.d.ts +2 -0
  429. package/{content/plugins/validators → validators}/timeGte.js +5 -11
  430. package/validators/timeGte.js.map +1 -0
  431. package/validators/timeLte.d.ts +2 -0
  432. package/{content/plugins/validators → validators}/timeLte.js +5 -11
  433. package/validators/timeLte.js.map +1 -0
  434. package/validators/unique.d.ts +6 -0
  435. package/validators/unique.js +56 -0
  436. package/validators/unique.js.map +1 -0
  437. package/content/contextSetup.d.ts +0 -4
  438. package/content/contextSetup.js +0 -65
  439. package/content/graphQLHandlerFactory.d.ts +0 -5
  440. package/content/graphQLHandlerFactory.js +0 -173
  441. package/content/plugins/CmsGroupPlugin.d.ts +0 -11
  442. package/content/plugins/CmsModelPlugin.d.ts +0 -11
  443. package/content/plugins/CmsModelPlugin.js +0 -24
  444. package/content/plugins/buildSchemaPlugins.d.ts +0 -7
  445. package/content/plugins/buildSchemaPlugins.js +0 -29
  446. package/content/plugins/crud/contentEntry/afterDelete.d.ts +0 -7
  447. package/content/plugins/crud/contentEntry/beforeCreate.d.ts +0 -7
  448. package/content/plugins/crud/contentEntry/beforeUpdate.d.ts +0 -7
  449. package/content/plugins/crud/contentEntry/entryDataValidation.d.ts +0 -4
  450. package/content/plugins/crud/contentEntry.crud.js +0 -931
  451. package/content/plugins/crud/contentModel/afterCreate.d.ts +0 -7
  452. package/content/plugins/crud/contentModel/afterCreate.js +0 -18
  453. package/content/plugins/crud/contentModel/afterDelete.d.ts +0 -7
  454. package/content/plugins/crud/contentModel/afterDelete.js +0 -18
  455. package/content/plugins/crud/contentModel/afterUpdate.d.ts +0 -7
  456. package/content/plugins/crud/contentModel/afterUpdate.js +0 -18
  457. package/content/plugins/crud/contentModel/beforeCreate.d.ts +0 -9
  458. package/content/plugins/crud/contentModel/beforeDelete.d.ts +0 -9
  459. package/content/plugins/crud/contentModel/beforeUpdate.d.ts +0 -9
  460. package/content/plugins/crud/contentModel/beforeUpdate.js +0 -128
  461. package/content/plugins/crud/contentModel/contentModelManagerFactory.d.ts +0 -2
  462. package/content/plugins/crud/contentModel/createFieldModels.d.ts +0 -2
  463. package/content/plugins/crud/contentModel/createFieldModels.js +0 -22
  464. package/content/plugins/crud/contentModel/idValidation.d.ts +0 -2
  465. package/content/plugins/crud/contentModel/idValidation.js +0 -22
  466. package/content/plugins/crud/contentModel/models.d.ts +0 -3
  467. package/content/plugins/crud/contentModel/models.js +0 -141
  468. package/content/plugins/crud/contentModel/validateLayout.d.ts +0 -2
  469. package/content/plugins/crud/contentModel.crud.js +0 -425
  470. package/content/plugins/crud/contentModelGroup/beforeCreate.d.ts +0 -9
  471. package/content/plugins/crud/contentModelGroup/beforeDelete.d.ts +0 -9
  472. package/content/plugins/crud/contentModelGroup/beforeUpdate.d.ts +0 -8
  473. package/content/plugins/crud/contentModelGroup.crud.js +0 -351
  474. package/content/plugins/crud/index.d.ts +0 -6
  475. package/content/plugins/crud/index.js +0 -100
  476. package/content/plugins/graphqlFields/boolean.d.ts +0 -3
  477. package/content/plugins/graphqlFields/boolean.js +0 -69
  478. package/content/plugins/graphqlFields/datetime.d.ts +0 -3
  479. package/content/plugins/graphqlFields/datetime.js +0 -83
  480. package/content/plugins/graphqlFields/file.d.ts +0 -3
  481. package/content/plugins/graphqlFields/file.js +0 -49
  482. package/content/plugins/graphqlFields/index.d.ts +0 -2
  483. package/content/plugins/graphqlFields/index.js +0 -30
  484. package/content/plugins/graphqlFields/longText.d.ts +0 -3
  485. package/content/plugins/graphqlFields/longText.js +0 -62
  486. package/content/plugins/graphqlFields/number.d.ts +0 -3
  487. package/content/plugins/graphqlFields/number.js +0 -75
  488. package/content/plugins/graphqlFields/object.d.ts +0 -3
  489. package/content/plugins/graphqlFields/object.js +0 -180
  490. package/content/plugins/graphqlFields/ref.d.ts +0 -3
  491. package/content/plugins/graphqlFields/ref.js +0 -205
  492. package/content/plugins/graphqlFields/richText.d.ts +0 -3
  493. package/content/plugins/graphqlFields/richText.js +0 -55
  494. package/content/plugins/graphqlFields/text.d.ts +0 -3
  495. package/content/plugins/graphqlFields/text.js +0 -72
  496. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.d.ts +0 -8
  497. package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js +0 -54
  498. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.d.ts +0 -7
  499. package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js +0 -35
  500. package/content/plugins/modelManager/DefaultCmsModelManager.d.ts +0 -15
  501. package/content/plugins/modelManager/index.d.ts +0 -3
  502. package/content/plugins/schema/baseSchema.d.ts +0 -4
  503. package/content/plugins/schema/baseSchema.js +0 -98
  504. package/content/plugins/schema/contentEntries.d.ts +0 -4
  505. package/content/plugins/schema/contentEntries.js +0 -166
  506. package/content/plugins/schema/contentModelGroups.d.ts +0 -4
  507. package/content/plugins/schema/contentModels.d.ts +0 -4
  508. package/content/plugins/schema/createFieldResolvers.d.ts +0 -19
  509. package/content/plugins/schema/createFieldResolvers.js +0 -92
  510. package/content/plugins/schema/createManageResolvers.d.ts +0 -11
  511. package/content/plugins/schema/createManageSDL.d.ts +0 -9
  512. package/content/plugins/schema/createPreviewResolvers.d.ts +0 -10
  513. package/content/plugins/schema/createPreviewResolvers.js +0 -55
  514. package/content/plugins/schema/createReadResolvers.d.ts +0 -10
  515. package/content/plugins/schema/createReadResolvers.js +0 -55
  516. package/content/plugins/schema/createReadSDL.d.ts +0 -9
  517. package/content/plugins/schema/resolvers/commonFieldResolvers.d.ts +0 -6
  518. package/content/plugins/schema/resolvers/manage/resolveCreate.d.ts +0 -6
  519. package/content/plugins/schema/resolvers/manage/resolveCreateFrom.d.ts +0 -7
  520. package/content/plugins/schema/resolvers/manage/resolveDelete.d.ts +0 -2
  521. package/content/plugins/schema/resolvers/manage/resolveGet.d.ts +0 -2
  522. package/content/plugins/schema/resolvers/manage/resolveGetByIds.d.ts +0 -2
  523. package/content/plugins/schema/resolvers/manage/resolveGetRevisions.d.ts +0 -2
  524. package/content/plugins/schema/resolvers/manage/resolveList.d.ts +0 -2
  525. package/content/plugins/schema/resolvers/manage/resolvePublish.d.ts +0 -2
  526. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -6
  527. package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js +0 -23
  528. package/content/plugins/schema/resolvers/manage/resolveRequestReview.d.ts +0 -6
  529. package/content/plugins/schema/resolvers/manage/resolveRequestReview.js +0 -23
  530. package/content/plugins/schema/resolvers/manage/resolveUnpublish.d.ts +0 -2
  531. package/content/plugins/schema/resolvers/manage/resolveUpdate.d.ts +0 -7
  532. package/content/plugins/schema/resolvers/preview/resolveGet.d.ts +0 -2
  533. package/content/plugins/schema/resolvers/preview/resolveGet.js +0 -38
  534. package/content/plugins/schema/resolvers/preview/resolveList.d.ts +0 -2
  535. package/content/plugins/schema/resolvers/read/resolveGet.d.ts +0 -2
  536. package/content/plugins/schema/resolvers/read/resolveGet.js +0 -38
  537. package/content/plugins/schema/resolvers/read/resolveList.d.ts +0 -2
  538. package/content/plugins/schema/schemaPlugins.d.ts +0 -3
  539. package/content/plugins/schema/schemaPlugins.js +0 -92
  540. package/content/plugins/storage/StorageTransformPlugin.d.ts +0 -30
  541. package/content/plugins/storage/default.d.ts +0 -3
  542. package/content/plugins/storage/default.js +0 -28
  543. package/content/plugins/storage/object.d.ts +0 -3
  544. package/content/plugins/storage/object.js +0 -119
  545. package/content/plugins/utils/getEntryTitle.d.ts +0 -2
  546. package/content/plugins/utils/getSchemaFromFieldPlugins.d.ts +0 -11
  547. package/content/plugins/utils/getSchemaFromFieldPlugins.js +0 -30
  548. package/content/plugins/utils/pluralizedTypeName.d.ts +0 -1
  549. package/content/plugins/utils/renderFields.d.ts +0 -16
  550. package/content/plugins/utils/renderGetFilterFields.d.ts +0 -9
  551. package/content/plugins/utils/renderGetFilterFields.js +0 -41
  552. package/content/plugins/utils/renderInputFields.d.ts +0 -14
  553. package/content/plugins/utils/renderListFilterFields.d.ts +0 -10
  554. package/content/plugins/utils/renderSortEnum.d.ts +0 -9
  555. package/content/plugins/utils/renderSortEnum.js +0 -32
  556. package/content/plugins/validators/dateGte.d.ts +0 -3
  557. package/content/plugins/validators/dateLte.d.ts +0 -3
  558. package/content/plugins/validators/gte.d.ts +0 -3
  559. package/content/plugins/validators/gte.js +0 -32
  560. package/content/plugins/validators/in.d.ts +0 -3
  561. package/content/plugins/validators/in.js +0 -32
  562. package/content/plugins/validators/index.d.ts +0 -2
  563. package/content/plugins/validators/index.js +0 -36
  564. package/content/plugins/validators/lte.d.ts +0 -3
  565. package/content/plugins/validators/lte.js +0 -32
  566. package/content/plugins/validators/maxLength.d.ts +0 -3
  567. package/content/plugins/validators/maxLength.js +0 -32
  568. package/content/plugins/validators/minLength.d.ts +0 -3
  569. package/content/plugins/validators/minLength.js +0 -32
  570. package/content/plugins/validators/pattern.d.ts +0 -3
  571. package/content/plugins/validators/pattern.js +0 -47
  572. package/content/plugins/validators/patternPlugins/email.d.ts +0 -3
  573. package/content/plugins/validators/patternPlugins/email.js +0 -17
  574. package/content/plugins/validators/patternPlugins/index.d.ts +0 -2
  575. package/content/plugins/validators/patternPlugins/index.js +0 -19
  576. package/content/plugins/validators/patternPlugins/lowerCase.d.ts +0 -3
  577. package/content/plugins/validators/patternPlugins/lowerCase.js +0 -17
  578. package/content/plugins/validators/patternPlugins/upperCase.d.ts +0 -3
  579. package/content/plugins/validators/patternPlugins/upperCase.js +0 -17
  580. package/content/plugins/validators/patternPlugins/url.d.ts +0 -3
  581. package/content/plugins/validators/patternPlugins/url.js +0 -17
  582. package/content/plugins/validators/required.d.ts +0 -3
  583. package/content/plugins/validators/required.js +0 -25
  584. package/content/plugins/validators/timeGte.d.ts +0 -3
  585. package/content/plugins/validators/timeLte.d.ts +0 -3
  586. package/migrateCMSPermissions.d.ts +0 -17
  587. package/migrateCMSPermissions.js +0 -193
  588. package/plugins/context.d.ts +0 -4
  589. package/plugins/context.js +0 -34
  590. package/plugins/crud/index.d.ts +0 -6
  591. package/plugins/crud/index.js +0 -100
  592. package/plugins/crud/settings.crud.js +0 -93
  593. package/plugins/crud/system.crud.js +0 -182
  594. package/plugins/graphql/system.d.ts +0 -17
  595. package/plugins/graphql.d.ts +0 -2
  596. package/plugins/graphql.js +0 -79
  597. package/plugins/upgrades/index.d.ts +0 -2
  598. package/plugins/upgrades/index.js +0 -14
  599. package/plugins/upgrades/v5.5.0/helpers.d.ts +0 -6
  600. package/plugins/upgrades/v5.5.0/helpers.js +0 -10
  601. package/plugins/upgrades/v5.5.0/index.d.ts +0 -4
  602. package/plugins/upgrades/v5.5.0/index.js +0 -129
  603. package/transformers.d.ts +0 -2
  604. package/transformers.js +0 -25
  605. package/utils.d.ts +0 -25
  606. package/utils.js +0 -251
@@ -1,22 +1,28 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.default = void 0;
7
-
7
+ exports.createModelsSchema = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
9
  var _handlerGraphql = require("@webiny/handler-graphql");
9
-
10
- var _GraphQLSchemaPlugin = require("@webiny/handler-graphql/plugins/GraphQLSchemaPlugin");
11
-
12
- var _CmsModelPlugin = require("../CmsModelPlugin");
13
-
14
- const plugin = context => {
10
+ var _CmsModelPlugin = require("../../plugins/CmsModelPlugin");
11
+ var _plugins = require("../../plugins");
12
+ var _toSlug = require("../../utils/toSlug");
13
+ const createModelsSchema = ({
14
+ context
15
+ }) => {
15
16
  const resolvers = {
16
17
  Query: {
17
18
  getContentModel: async (_, args, context) => {
18
19
  try {
19
20
  const model = await context.cms.getModel(args.modelId);
21
+ if ((model === null || model === void 0 ? void 0 : model.isPrivate) === true) {
22
+ if (!model) {
23
+ throw new _handlerGraphql.NotFoundError(`Content model "${args.modelId}" was not found!`);
24
+ }
25
+ }
20
26
  return new _handlerGraphql.Response(model);
21
27
  } catch (e) {
22
28
  return new _handlerGraphql.ErrorResponse(e);
@@ -24,24 +30,42 @@ const plugin = context => {
24
30
  },
25
31
  listContentModels: async (_, __, context) => {
26
32
  try {
27
- const model = await context.cms.listModels();
28
- return new _handlerGraphql.Response(model);
33
+ const models = await context.cms.listModels();
34
+ return new _handlerGraphql.Response(models.filter(model => model.isPrivate !== true));
29
35
  } catch (e) {
30
36
  return new _handlerGraphql.ErrorResponse(e);
31
37
  }
32
38
  }
33
39
  },
40
+ CmsContentModelField: {
41
+ tags(field) {
42
+ // Make sure `tags` are always returned as an array.
43
+ return Array.isArray(field.tags) ? field.tags : [];
44
+ }
45
+ },
34
46
  CmsContentModel: {
47
+ group: async model => {
48
+ context.security.disableAuthorization();
49
+ const groups = await context.cms.listGroups();
50
+ context.security.enableAuthorization();
51
+ const group = groups.find(group => group.id === model.group.id);
52
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, model.group), {}, {
53
+ slug: (0, _toSlug.toSlug)(model.group.name)
54
+ }, group || {});
55
+ },
56
+ tags(model) {
57
+ // Make sure `tags` always contain a `type` tag, to differentiate between models.
58
+ const hasType = (model.tags || []).find(tag => tag.startsWith("type:"));
59
+ return hasType ? model.tags : ["type:model", ...(model.tags || [])];
60
+ },
35
61
  plugin: async (model, _, context) => {
36
- const modelPlugin = context.plugins.byType(_CmsModelPlugin.CmsModelPlugin.type).find(item => item.contentModel.modelId === model.modelId);
37
- return Boolean(modelPlugin);
62
+ return context.plugins.byType(_CmsModelPlugin.CmsModelPlugin.type).some(item => item.contentModel.modelId === model.modelId);
38
63
  }
39
64
  }
40
65
  };
41
66
  let manageSchema = "";
42
-
43
67
  if (context.cms.MANAGE) {
44
- resolvers.Mutation = {
68
+ resolvers["Mutation"] = {
45
69
  createContentModel: async (_, args, context) => {
46
70
  try {
47
71
  const model = await context.cms.createModel(args.data);
@@ -50,12 +74,19 @@ const plugin = context => {
50
74
  return new _handlerGraphql.ErrorResponse(e);
51
75
  }
52
76
  },
77
+ createContentModelFrom: async (_, args, context) => {
78
+ try {
79
+ const model = await context.cms.createModelFrom(args.modelId, args.data);
80
+ return new _handlerGraphql.Response(model);
81
+ } catch (e) {
82
+ return new _handlerGraphql.ErrorResponse(e);
83
+ }
84
+ },
53
85
  updateContentModel: async (_, args, context) => {
54
86
  const {
55
87
  modelId,
56
88
  data
57
89
  } = args;
58
-
59
90
  try {
60
91
  const model = await context.cms.updateModel(modelId, data);
61
92
  return new _handlerGraphql.Response(model);
@@ -67,21 +98,31 @@ const plugin = context => {
67
98
  const {
68
99
  modelId
69
100
  } = args;
70
-
71
101
  try {
72
102
  await context.cms.deleteModel(modelId);
73
103
  return new _handlerGraphql.Response(true);
74
104
  } catch (e) {
75
105
  return new _handlerGraphql.ErrorResponse(e);
76
106
  }
107
+ },
108
+ initializeModel: async (_, args, context) => {
109
+ const {
110
+ modelId,
111
+ data
112
+ } = args;
113
+ try {
114
+ const result = await context.cms.initializeModel(modelId, data || {});
115
+ return new _handlerGraphql.Response(result);
116
+ } catch (e) {
117
+ return new _handlerGraphql.ErrorResponse(e);
118
+ }
77
119
  }
78
120
  };
79
- manageSchema =
80
- /* GraphQL */
81
- `
121
+ manageSchema = /* GraphQL */`
82
122
  input CmsPredefinedValueInput {
83
123
  label: String!
84
124
  value: String!
125
+ selected: Boolean
85
126
  }
86
127
 
87
128
  input CmsPredefinedValuesInput {
@@ -103,8 +144,12 @@ const plugin = context => {
103
144
  label: String!
104
145
  helpText: String
105
146
  placeholderText: String
147
+ # we never use user input - this is here to the GraphQL does not break when posting from our UI
148
+ # used for debugging purposes
149
+ storageId: String
106
150
  fieldId: String!
107
151
  type: String!
152
+ tags: [String!]
108
153
  multipleValues: Boolean
109
154
  predefinedValues: CmsPredefinedValuesInput
110
155
  renderer: CmsFieldRendererInput
@@ -118,6 +163,18 @@ const plugin = context => {
118
163
  modelId: String
119
164
  group: RefInput!
120
165
  description: String
166
+ layout: [[ID!]!]
167
+ fields: [CmsContentModelFieldInput!]
168
+ titleFieldId: String
169
+ tags: [String!]
170
+ }
171
+
172
+ input CmsContentModelCreateFromInput {
173
+ name: String!
174
+ modelId: String
175
+ group: RefInput!
176
+ description: String
177
+ locale: String
121
178
  }
122
179
 
123
180
  input CmsContentModelUpdateInput {
@@ -127,25 +184,36 @@ const plugin = context => {
127
184
  layout: [[ID!]!]!
128
185
  fields: [CmsContentModelFieldInput!]!
129
186
  titleFieldId: String
187
+ tags: [String!]
188
+ }
189
+
190
+ type InitializeModelResponse {
191
+ data: Boolean
192
+ error: CmsError
130
193
  }
131
194
 
132
195
  extend type Mutation {
133
196
  createContentModel(data: CmsContentModelCreateInput!): CmsContentModelResponse
134
197
 
198
+ createContentModelFrom(
199
+ modelId: ID!
200
+ data: CmsContentModelCreateFromInput!
201
+ ): CmsContentModelResponse
202
+
135
203
  updateContentModel(
136
204
  modelId: ID!
137
205
  data: CmsContentModelUpdateInput!
138
206
  ): CmsContentModelResponse
139
207
 
140
208
  deleteContentModel(modelId: ID!): CmsDeleteResponse
209
+
210
+ # users can send anything into the data variable
211
+ initializeModel(modelId: ID!, data: JSON): InitializeModelResponse!
141
212
  }
142
213
  `;
143
214
  }
144
-
145
- return new _GraphQLSchemaPlugin.GraphQLSchemaPlugin({
146
- typeDefs:
147
- /* GraphQL */
148
- `
215
+ const plugin = new _plugins.CmsGraphQLSchemaPlugin({
216
+ typeDefs: /* GraphQL */`
149
217
  type CmsFieldValidation {
150
218
  name: String!
151
219
  message: String
@@ -159,6 +227,7 @@ const plugin = context => {
159
227
  type CmsPredefinedValue {
160
228
  label: String
161
229
  value: String
230
+ selected: Boolean
162
231
  }
163
232
 
164
233
  type CmsPredefinedValues {
@@ -168,11 +237,15 @@ const plugin = context => {
168
237
 
169
238
  type CmsContentModelField {
170
239
  id: ID!
240
+ # auto-generated value
241
+ # used for debugging purposes
242
+ storageId: String
171
243
  fieldId: String!
172
244
  label: String!
173
245
  helpText: String
174
246
  placeholderText: String
175
247
  type: String!
248
+ tags: [String!]!
176
249
  multipleValues: Boolean
177
250
  predefinedValues: CmsPredefinedValues
178
251
  renderer: CmsFieldRenderer
@@ -193,7 +266,7 @@ const plugin = context => {
193
266
  lockedFields: [JSON]
194
267
  layout: [[String!]!]!
195
268
  titleFieldId: String
196
-
269
+ tags: [String!]!
197
270
  # Returns true if the content model is registered via a plugin.
198
271
  plugin: Boolean!
199
272
  }
@@ -219,7 +292,7 @@ const plugin = context => {
219
292
  `,
220
293
  resolvers
221
294
  });
295
+ plugin.name = `headless-cms.graphql.schema.${context.cms.type}.content-models`;
296
+ return plugin;
222
297
  };
223
-
224
- var _default = plugin;
225
- exports.default = _default;
298
+ exports.createModelsSchema = createModelsSchema;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createModelsSchema","context","resolvers","Query","getContentModel","_","args","model","cms","getModel","modelId","isPrivate","NotFoundError","Response","e","ErrorResponse","listContentModels","__","models","listModels","filter","CmsContentModelField","tags","field","Array","isArray","CmsContentModel","group","security","disableAuthorization","groups","listGroups","enableAuthorization","find","id","slug","toSlug","name","hasType","tag","startsWith","plugin","plugins","byType","CmsModelPlugin","type","some","item","contentModel","manageSchema","MANAGE","createContentModel","createModel","data","createContentModelFrom","createModelFrom","updateContentModel","updateModel","deleteContentModel","deleteModel","initializeModel","result","CmsGraphQLSchemaPlugin","typeDefs"],"sources":["contentModels.ts"],"sourcesContent":["import { ErrorResponse, NotFoundError, Response } from \"@webiny/handler-graphql\";\nimport { CmsContext, CmsModel } from \"~/types\";\nimport { Resolvers } from \"@webiny/handler-graphql/types\";\nimport { CmsModelPlugin } from \"~/plugins/CmsModelPlugin\";\nimport { CmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { toSlug } from \"~/utils/toSlug\";\n\ninterface Params {\n context: CmsContext;\n}\nexport const createModelsSchema = ({ context }: Params): CmsGraphQLSchemaPlugin => {\n const resolvers: Resolvers<CmsContext> = {\n Query: {\n getContentModel: async (_: unknown, args: any, context) => {\n try {\n const model = await context.cms.getModel(args.modelId);\n if (model?.isPrivate === true) {\n if (!model) {\n throw new NotFoundError(\n `Content model \"${args.modelId}\" was not found!`\n );\n }\n }\n return new Response(model);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listContentModels: async (_: unknown, __: unknown, context: CmsContext) => {\n try {\n const models = await context.cms.listModels();\n return new Response(models.filter(model => model.isPrivate !== true));\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n CmsContentModelField: {\n tags(field) {\n // Make sure `tags` are always returned as an array.\n return Array.isArray(field.tags) ? field.tags : [];\n }\n },\n CmsContentModel: {\n group: async (model: CmsModel) => {\n context.security.disableAuthorization();\n const groups = await context.cms.listGroups();\n context.security.enableAuthorization();\n\n const group = groups.find(group => group.id === model.group.id);\n return {\n ...model.group,\n slug: toSlug(model.group.name),\n ...(group || {})\n };\n },\n tags(model: CmsModel) {\n // Make sure `tags` always contain a `type` tag, to differentiate between models.\n const hasType = (model.tags || []).find(tag => tag.startsWith(\"type:\"));\n\n return hasType ? model.tags : [\"type:model\", ...(model.tags || [])];\n },\n plugin: async (model, _, context): Promise<boolean> => {\n return context.plugins\n .byType<CmsModelPlugin>(CmsModelPlugin.type)\n .some(item => item.contentModel.modelId === model.modelId);\n }\n }\n };\n\n let manageSchema = \"\";\n if (context.cms.MANAGE) {\n resolvers[\"Mutation\"] = {\n createContentModel: async (_: unknown, args: any, context) => {\n try {\n const model = await context.cms.createModel(args.data);\n return new Response(model);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n createContentModelFrom: async (_: unknown, args: any, context) => {\n try {\n const model = await context.cms.createModelFrom(args.modelId, args.data);\n return new Response(model);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n updateContentModel: async (_: unknown, args: any, context) => {\n const { modelId, data } = args;\n try {\n const model = await context.cms.updateModel(modelId, data);\n return new Response(model);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n deleteContentModel: async (_: unknown, args: any, context) => {\n const { modelId } = args;\n try {\n await context.cms.deleteModel(modelId);\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n initializeModel: async (_, args, context) => {\n const { modelId, data } = args;\n\n try {\n const result = await context.cms.initializeModel(modelId, data || {});\n return new Response(result);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n };\n\n manageSchema = /* GraphQL */ `\n input CmsPredefinedValueInput {\n label: String!\n value: String!\n selected: Boolean\n }\n\n input CmsPredefinedValuesInput {\n enabled: Boolean\n values: [CmsPredefinedValueInput]\n }\n input CmsFieldRendererInput {\n name: String\n }\n\n input CmsFieldValidationInput {\n name: String!\n message: String\n settings: JSON\n }\n\n input CmsContentModelFieldInput {\n id: ID!\n label: String!\n helpText: String\n placeholderText: String\n # we never use user input - this is here to the GraphQL does not break when posting from our UI\n # used for debugging purposes\n storageId: String\n fieldId: String!\n type: String!\n tags: [String!]\n multipleValues: Boolean\n predefinedValues: CmsPredefinedValuesInput\n renderer: CmsFieldRendererInput\n validation: [CmsFieldValidationInput]\n listValidation: [CmsFieldValidationInput]\n settings: JSON\n }\n\n input CmsContentModelCreateInput {\n name: String!\n modelId: String\n group: RefInput!\n description: String\n layout: [[ID!]!]\n fields: [CmsContentModelFieldInput!]\n titleFieldId: String\n tags: [String!]\n }\n\n input CmsContentModelCreateFromInput {\n name: String!\n modelId: String\n group: RefInput!\n description: String\n locale: String\n }\n\n input CmsContentModelUpdateInput {\n name: String\n group: RefInput\n description: String\n layout: [[ID!]!]!\n fields: [CmsContentModelFieldInput!]!\n titleFieldId: String\n tags: [String!]\n }\n\n type InitializeModelResponse {\n data: Boolean\n error: CmsError\n }\n\n extend type Mutation {\n createContentModel(data: CmsContentModelCreateInput!): CmsContentModelResponse\n\n createContentModelFrom(\n modelId: ID!\n data: CmsContentModelCreateFromInput!\n ): CmsContentModelResponse\n\n updateContentModel(\n modelId: ID!\n data: CmsContentModelUpdateInput!\n ): CmsContentModelResponse\n\n deleteContentModel(modelId: ID!): CmsDeleteResponse\n\n # users can send anything into the data variable\n initializeModel(modelId: ID!, data: JSON): InitializeModelResponse!\n }\n `;\n }\n\n const plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type CmsFieldValidation {\n name: String!\n message: String\n settings: JSON\n }\n\n type CmsFieldRenderer {\n name: String\n }\n\n type CmsPredefinedValue {\n label: String\n value: String\n selected: Boolean\n }\n\n type CmsPredefinedValues {\n enabled: Boolean\n values: [CmsPredefinedValue]\n }\n\n type CmsContentModelField {\n id: ID!\n # auto-generated value\n # used for debugging purposes\n storageId: String\n fieldId: String!\n label: String!\n helpText: String\n placeholderText: String\n type: String!\n tags: [String!]!\n multipleValues: Boolean\n predefinedValues: CmsPredefinedValues\n renderer: CmsFieldRenderer\n validation: [CmsFieldValidation!]\n listValidation: [CmsFieldValidation!]\n settings: JSON\n }\n\n type CmsContentModel {\n name: String!\n modelId: String!\n description: String\n group: CmsContentModelGroup!\n createdOn: DateTime\n savedOn: DateTime\n createdBy: CmsCreatedBy\n fields: [CmsContentModelField!]!\n lockedFields: [JSON]\n layout: [[String!]!]!\n titleFieldId: String\n tags: [String!]!\n # Returns true if the content model is registered via a plugin.\n plugin: Boolean!\n }\n\n type CmsContentModelResponse {\n data: CmsContentModel\n error: CmsError\n }\n\n type CmsContentModelListResponse {\n data: [CmsContentModel]\n meta: CmsListMeta\n error: CmsError\n }\n\n extend type Query {\n getContentModel(modelId: ID!, where: JSON, sort: String): CmsContentModelResponse\n\n listContentModels: CmsContentModelListResponse\n }\n\n ${manageSchema}\n `,\n resolvers\n });\n plugin.name = `headless-cms.graphql.schema.${context.cms.type}.content-models`;\n return plugin;\n};\n"],"mappings":"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CAAC,CAAC;QAC/B;MACJ;IACJ,CAAC;IAEDmC,YAAY,GAAG,aAAe;AACtC;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;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;EACL;EAEA,MAAMR,MAAM,GAAG,IAAIqB,+BAAsB,CAAC;IACtCC,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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcd,YAAa;AAC3B,SAAS;IACD/C;EACJ,CAAC,CAAC;EACFuC,MAAM,CAACJ,IAAI,GAAI,+BAA8BpC,OAAO,CAACO,GAAG,CAACqC,IAAK,iBAAgB;EAC9E,OAAOJ,MAAM;AACjB,CAAC;AAAC"}
@@ -0,0 +1,20 @@
1
+ import { CmsModelField, ApiEndpoint, CmsModel, CmsFieldTypePlugins } from "../../types";
2
+ import { Resolvers } from "@webiny/handler-graphql/types";
3
+ interface CreateFieldResolvers {
4
+ graphQLType: string;
5
+ fields: CmsModelField[];
6
+ isRoot: boolean;
7
+ extraResolvers?: Resolvers<any>;
8
+ }
9
+ interface CreateFieldResolversFactoryParams {
10
+ endpointType: ApiEndpoint;
11
+ models: CmsModel[];
12
+ model: CmsModel;
13
+ fieldTypePlugins: CmsFieldTypePlugins;
14
+ }
15
+ /**
16
+ * We use a factory to avoid passing the parameters for recursive invocations.
17
+ * This way they will always be in the function scope, and we can only pass "fields".
18
+ */
19
+ export declare const createFieldResolversFactory: (factoryParams: CreateFieldResolversFactoryParams) => (params: CreateFieldResolvers) => {};
20
+ export {};
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createFieldResolversFactory = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _set = _interopRequireDefault(require("lodash/set"));
10
+ var _entryStorage = require("../../utils/entryStorage");
11
+ var _error = _interopRequireDefault(require("@webiny/error"));
12
+ var _getBaseFieldType = require("../../utils/getBaseFieldType");
13
+ const getCreateResolver = (plugins, field, endpointType) => {
14
+ const baseType = (0, _getBaseFieldType.getBaseFieldType)(field);
15
+ if (!plugins[baseType]) {
16
+ return null;
17
+ } else if (!plugins[baseType][endpointType]) {
18
+ return null;
19
+ }
20
+ return plugins[baseType][endpointType].createResolver;
21
+ };
22
+ /**
23
+ * We use a factory to avoid passing the parameters for recursive invocations.
24
+ * This way they will always be in the function scope, and we can only pass "fields".
25
+ */
26
+ const createFieldResolversFactory = factoryParams => {
27
+ const {
28
+ endpointType,
29
+ models,
30
+ model,
31
+ fieldTypePlugins
32
+ } = factoryParams;
33
+ return function createFieldResolvers(params) {
34
+ const {
35
+ graphQLType,
36
+ fields,
37
+ isRoot = false,
38
+ extraResolvers = {}
39
+ } = params;
40
+ const fieldResolvers = (0, _objectSpread2.default)({}, extraResolvers);
41
+ const typeResolvers = {};
42
+ for (const field of fields) {
43
+ if (!fieldTypePlugins[(0, _getBaseFieldType.getBaseFieldType)(field)]) {
44
+ continue;
45
+ }
46
+ /**
47
+ * Field that is passed into this factory MUST have fieldId, so filter it before the method call.
48
+ */
49
+ if (!field.fieldId) {
50
+ throw new _error.default("Field is missing an `fieldId`. Cannot process field without the `fieldId` in the resolvers.", "FIELD_ID_ERROR", {
51
+ field
52
+ });
53
+ }
54
+ const createResolver = getCreateResolver(fieldTypePlugins, field, endpointType);
55
+ let resolver;
56
+ const fieldResolver = createResolver ? createResolver({
57
+ graphQLType,
58
+ models,
59
+ model,
60
+ field,
61
+ createFieldResolvers
62
+ }) : null;
63
+
64
+ /**
65
+ * When fieldResolver is false it will completely skip adding field fieldId into the resolvers.
66
+ * This is to fix the breaking of GraphQL schema.
67
+ */
68
+ if (fieldResolver === false) {
69
+ continue;
70
+ } else if (typeof fieldResolver === "function") {
71
+ resolver = fieldResolver;
72
+ } else if (fieldResolver) {
73
+ resolver = fieldResolver.resolver;
74
+ Object.assign(typeResolvers, fieldResolver.typeResolvers);
75
+ }
76
+ const {
77
+ fieldId
78
+ } = field;
79
+ // TODO @ts-refactor figure out types for parameters
80
+ // @ts-ignore
81
+ fieldResolvers[fieldId] = async (parent, args, context, info) => {
82
+ var _parent$values, _parent$values2, _parent$values3;
83
+ /**
84
+ * This is required because due to ref field can be requested without the populated data.
85
+ * At that point there is no .values no fieldId property on the parent
86
+ */
87
+ const value = (parent === null || parent === void 0 ? void 0 : (_parent$values = parent.values) === null || _parent$values === void 0 ? void 0 : _parent$values[fieldId]) === undefined ? parent === null || parent === void 0 ? void 0 : parent[fieldId] : parent === null || parent === void 0 ? void 0 : (_parent$values2 = parent.values) === null || _parent$values2 === void 0 ? void 0 : _parent$values2[fieldId];
88
+ if (value === undefined) {
89
+ return undefined;
90
+ }
91
+ // Get transformed value (eg. data decompression)
92
+ const transformedValue = await (0, _entryStorage.entryFieldFromStorageTransform)({
93
+ context,
94
+ model,
95
+ field,
96
+ value: isRoot ? (_parent$values3 = parent.values) === null || _parent$values3 === void 0 ? void 0 : _parent$values3[fieldId] : parent[fieldId]
97
+ });
98
+ (0, _set.default)(isRoot ? parent.values : parent, fieldId, transformedValue);
99
+ if (!resolver) {
100
+ return isRoot ? parent.values[fieldId] : parent[fieldId];
101
+ }
102
+ return await resolver(isRoot ? parent.values : parent, args, context, info);
103
+ };
104
+ }
105
+ return (0, _objectSpread2.default)({
106
+ [graphQLType]: fieldResolvers
107
+ }, typeResolvers);
108
+ };
109
+ };
110
+ exports.createFieldResolversFactory = createFieldResolversFactory;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getCreateResolver","plugins","field","endpointType","baseType","getBaseFieldType","createResolver","createFieldResolversFactory","factoryParams","models","model","fieldTypePlugins","createFieldResolvers","params","graphQLType","fields","isRoot","extraResolvers","fieldResolvers","typeResolvers","fieldId","WebinyError","resolver","fieldResolver","Object","assign","parent","args","context","info","value","values","undefined","transformedValue","entryFieldFromStorageTransform","set"],"sources":["createFieldResolvers.ts"],"sourcesContent":["import set from \"lodash/set\";\nimport {\n CmsModelField,\n CmsContext,\n CmsModelFieldToGraphQLCreateResolver,\n ApiEndpoint,\n CmsModel,\n CmsFieldTypePlugins\n} from \"~/types\";\nimport { entryFieldFromStorageTransform } from \"~/utils/entryStorage\";\nimport { Resolvers } from \"@webiny/handler-graphql/types\";\nimport WebinyError from \"@webiny/error\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface CreateFieldResolvers {\n graphQLType: string;\n fields: CmsModelField[];\n isRoot: boolean;\n extraResolvers?: Resolvers<any>;\n}\n\ninterface CreateFieldResolversFactoryParams {\n endpointType: ApiEndpoint;\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\nconst getCreateResolver = (\n plugins: CmsFieldTypePlugins,\n field: CmsModelField,\n endpointType: ApiEndpoint\n): CmsModelFieldToGraphQLCreateResolver | null => {\n const baseType = getBaseFieldType(field);\n if (!plugins[baseType]) {\n return null;\n } else if (!plugins[baseType][endpointType]) {\n return null;\n }\n return plugins[baseType][endpointType].createResolver;\n};\n/**\n * We use a factory to avoid passing the parameters for recursive invocations.\n * This way they will always be in the function scope, and we can only pass \"fields\".\n */\nexport const createFieldResolversFactory = (factoryParams: CreateFieldResolversFactoryParams) => {\n const { endpointType, models, model, fieldTypePlugins } = factoryParams;\n return function createFieldResolvers(params: CreateFieldResolvers) {\n const { graphQLType, fields, isRoot = false, extraResolvers = {} } = params;\n\n const fieldResolvers = { ...extraResolvers };\n const typeResolvers = {};\n\n for (const field of fields) {\n if (!fieldTypePlugins[getBaseFieldType(field)]) {\n continue;\n }\n /**\n * Field that is passed into this factory MUST have fieldId, so filter it before the method call.\n */\n if (!field.fieldId) {\n throw new WebinyError(\n \"Field is missing an `fieldId`. Cannot process field without the `fieldId` in the resolvers.\",\n \"FIELD_ID_ERROR\",\n {\n field\n }\n );\n }\n\n const createResolver = getCreateResolver(fieldTypePlugins, field, endpointType);\n\n let resolver: any;\n const fieldResolver = createResolver\n ? createResolver({ graphQLType, models, model, field, createFieldResolvers })\n : null;\n\n /**\n * When fieldResolver is false it will completely skip adding field fieldId into the resolvers.\n * This is to fix the breaking of GraphQL schema.\n */\n if (fieldResolver === false) {\n continue;\n } else if (typeof fieldResolver === \"function\") {\n resolver = fieldResolver;\n } else if (fieldResolver) {\n resolver = fieldResolver.resolver;\n Object.assign(typeResolvers, fieldResolver.typeResolvers);\n }\n\n const { fieldId } = field;\n // TODO @ts-refactor figure out types for parameters\n // @ts-ignore\n fieldResolvers[fieldId] = async (parent, args, context: CmsContext, info) => {\n /**\n * This is required because due to ref field can be requested without the populated data.\n * At that point there is no .values no fieldId property on the parent\n */\n const value =\n parent?.values?.[fieldId] === undefined\n ? parent?.[fieldId]\n : parent?.values?.[fieldId];\n if (value === undefined) {\n return undefined;\n }\n // Get transformed value (eg. data decompression)\n const transformedValue = await entryFieldFromStorageTransform({\n context,\n model,\n field,\n value: isRoot ? parent.values?.[fieldId] : parent[fieldId]\n });\n\n set(isRoot ? parent.values : parent, fieldId, transformedValue);\n\n if (!resolver) {\n return isRoot ? parent.values[fieldId] : parent[fieldId];\n }\n\n return await resolver(isRoot ? parent.values : parent, args, context, info);\n };\n }\n\n return { [graphQLType]: fieldResolvers, ...typeResolvers };\n };\n};\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { CmsModel, CmsFieldTypePlugins, CmsContext } from "../../types";
2
+ interface CreateManageResolversParams {
3
+ models: CmsModel[];
4
+ model: CmsModel;
5
+ context: CmsContext;
6
+ fieldTypePlugins: CmsFieldTypePlugins;
7
+ }
8
+ interface CreateManageResolvers {
9
+ (params: CreateManageResolversParams): any;
10
+ }
11
+ export declare const createManageResolvers: CreateManageResolvers;
12
+ export {};
@@ -1,57 +1,38 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.createManageResolvers = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
9
  var _commonFieldResolvers = require("./resolvers/commonFieldResolvers");
13
-
14
10
  var _resolveGet = require("./resolvers/manage/resolveGet");
15
-
16
11
  var _resolveList = require("./resolvers/manage/resolveList");
17
-
18
12
  var _resolveGetRevisions = require("./resolvers/manage/resolveGetRevisions");
19
-
20
13
  var _resolveGetByIds = require("./resolvers/manage/resolveGetByIds");
21
-
22
14
  var _resolveCreate = require("./resolvers/manage/resolveCreate");
23
-
24
15
  var _resolveUpdate = require("./resolvers/manage/resolveUpdate");
25
-
26
- var _resolveRequestReview = require("./resolvers/manage/resolveRequestReview");
27
-
28
- var _resolveRequestChanges = require("./resolvers/manage/resolveRequestChanges");
29
-
30
16
  var _resolveDelete = require("./resolvers/manage/resolveDelete");
31
-
32
17
  var _resolvePublish = require("./resolvers/manage/resolvePublish");
33
-
18
+ var _resolveRepublish = require("./resolvers/manage/resolveRepublish");
34
19
  var _resolveUnpublish = require("./resolvers/manage/resolveUnpublish");
35
-
36
20
  var _resolveCreateFrom = require("./resolvers/manage/resolveCreateFrom");
37
-
38
21
  var _createFieldResolvers = require("./createFieldResolvers");
39
-
40
- var _createTypeName = require("../utils/createTypeName");
41
-
42
- var _pluralizedTypeName = require("../utils/pluralizedTypeName");
43
-
44
- var _getEntryTitle = require("../utils/getEntryTitle");
45
-
46
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
47
-
48
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
49
-
22
+ var _createTypeName = require("../../utils/createTypeName");
23
+ var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
24
+ var _getEntryTitle = require("../../utils/getEntryTitle");
50
25
  const createManageResolvers = ({
51
26
  models,
52
27
  model,
53
28
  fieldTypePlugins
54
29
  }) => {
30
+ if (model.fields.length === 0) {
31
+ return {
32
+ Query: {},
33
+ Mutation: {}
34
+ };
35
+ }
55
36
  const typeName = (0, _createTypeName.createTypeName)(model.modelId);
56
37
  const mTypeName = (0, _createTypeName.createManageTypeName)(typeName);
57
38
  const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
@@ -60,7 +41,18 @@ const createManageResolvers = ({
60
41
  model,
61
42
  fieldTypePlugins
62
43
  });
63
- return _objectSpread(_objectSpread({
44
+ const fieldResolvers = createFieldResolvers({
45
+ graphQLType: mTypeName,
46
+ fields: model.fields,
47
+ isRoot: true,
48
+ // These are extra fields we want to apply to field resolvers of "gqlType"
49
+ extraResolvers: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, (0, _commonFieldResolvers.commonFieldResolvers)()), {}, {
50
+ meta(entry) {
51
+ return entry;
52
+ }
53
+ })
54
+ });
55
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({
64
56
  Query: {
65
57
  [`get${typeName}`]: (0, _resolveGet.resolveGet)({
66
58
  model
@@ -88,48 +80,32 @@ const createManageResolvers = ({
88
80
  [`publish${typeName}`]: (0, _resolvePublish.resolvePublish)({
89
81
  model
90
82
  }),
91
- [`unpublish${typeName}`]: (0, _resolveUnpublish.resolveUnpublish)({
83
+ [`republish${typeName}`]: (0, _resolveRepublish.resolveRepublish)({
92
84
  model
93
85
  }),
94
- [`create${typeName}From`]: (0, _resolveCreateFrom.resolveCreateFrom)({
95
- model
96
- }),
97
- [`request${typeName}Review`]: (0, _resolveRequestReview.resolveRequestReview)({
86
+ [`unpublish${typeName}`]: (0, _resolveUnpublish.resolveUnpublish)({
98
87
  model
99
88
  }),
100
- [`request${typeName}Changes`]: (0, _resolveRequestChanges.resolveRequestChanges)({
89
+ [`create${typeName}From`]: (0, _resolveCreateFrom.resolveCreateFrom)({
101
90
  model
102
91
  })
103
92
  }
104
- }, createFieldResolvers({
105
- graphQLType: mTypeName,
106
- fields: model.fields,
107
- isRoot: true,
108
- // These are extra fields we want to apply to field resolvers of "gqlType"
109
- extraResolvers: _objectSpread(_objectSpread({}, (0, _commonFieldResolvers.commonFieldResolvers)()), {}, {
110
- meta(entry) {
111
- return entry;
112
- }
113
-
114
- })
115
- })), {}, {
93
+ }, fieldResolvers), {}, {
116
94
  [`${mTypeName}Meta`]: {
117
95
  title(entry) {
118
96
  return (0, _getEntryTitle.getEntryTitle)(model, entry);
119
97
  },
120
-
121
98
  status(entry) {
122
99
  return entry.status;
123
100
  },
124
-
101
+ data: entry => {
102
+ return entry.meta || {};
103
+ },
125
104
  async revisions(entry, _, context) {
126
- const entryId = entry.id.split("#")[0];
127
- const revisions = await context.cms.getEntryRevisions(model, entryId);
105
+ const revisions = await context.cms.getEntryRevisions(model, entry.entryId);
128
106
  return revisions.sort((a, b) => b.version - a.version);
129
107
  }
130
-
131
108
  }
132
109
  });
133
110
  };
134
-
135
111
  exports.createManageResolvers = createManageResolvers;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createManageResolvers","models","model","fieldTypePlugins","fields","length","Query","Mutation","typeName","createTypeName","modelId","mTypeName","createManageTypeName","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","isRoot","extraResolvers","commonFieldResolvers","meta","entry","resolveGet","resolveGetRevisions","pluralizedTypeName","resolveGetByIds","resolveList","resolveCreate","resolveUpdate","resolveDelete","resolvePublish","resolveRepublish","resolveUnpublish","resolveCreateFrom","title","getEntryTitle","status","data","revisions","_","context","cms","getEntryRevisions","entryId","sort","a","b","version"],"sources":["createManageResolvers.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, CmsContext, CmsEntry } from \"~/types\";\nimport { commonFieldResolvers } from \"./resolvers/commonFieldResolvers\";\nimport { resolveGet } from \"./resolvers/manage/resolveGet\";\nimport { resolveList } from \"./resolvers/manage/resolveList\";\nimport { resolveGetRevisions } from \"./resolvers/manage/resolveGetRevisions\";\nimport { resolveGetByIds } from \"./resolvers/manage/resolveGetByIds\";\nimport { resolveCreate } from \"./resolvers/manage/resolveCreate\";\nimport { resolveUpdate } from \"./resolvers/manage/resolveUpdate\";\nimport { resolveDelete } from \"./resolvers/manage/resolveDelete\";\nimport { resolvePublish } from \"./resolvers/manage/resolvePublish\";\nimport { resolveRepublish } from \"./resolvers/manage/resolveRepublish\";\nimport { resolveUnpublish } from \"./resolvers/manage/resolveUnpublish\";\nimport { resolveCreateFrom } from \"./resolvers/manage/resolveCreateFrom\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\nimport { createManageTypeName, createTypeName } from \"~/utils/createTypeName\";\nimport { pluralizedTypeName } from \"~/utils/pluralizedTypeName\";\nimport { getEntryTitle } from \"~/utils/getEntryTitle\";\n\ninterface CreateManageResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface CreateManageResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateManageResolversParams): any;\n}\n\nexport const createManageResolvers: CreateManageResolvers = ({\n models,\n model,\n fieldTypePlugins\n}) => {\n if (model.fields.length === 0) {\n return {\n Query: {},\n Mutation: {}\n };\n }\n const typeName = createTypeName(model.modelId);\n const mTypeName = createManageTypeName(typeName);\n const createFieldResolvers = createFieldResolversFactory({\n endpointType: \"manage\",\n models,\n model,\n fieldTypePlugins\n });\n\n const fieldResolvers = createFieldResolvers({\n graphQLType: mTypeName,\n fields: model.fields,\n isRoot: true,\n // These are extra fields we want to apply to field resolvers of \"gqlType\"\n extraResolvers: {\n ...commonFieldResolvers(),\n meta(entry) {\n return entry;\n }\n }\n });\n\n return {\n Query: {\n [`get${typeName}`]: resolveGet({ model }),\n [`get${typeName}Revisions`]: resolveGetRevisions({ model }),\n [`get${pluralizedTypeName(typeName)}ByIds`]: resolveGetByIds({ model }),\n [`list${pluralizedTypeName(typeName)}`]: resolveList({ model })\n },\n Mutation: {\n [`create${typeName}`]: resolveCreate({ model }),\n [`update${typeName}`]: resolveUpdate({ model }),\n [`delete${typeName}`]: resolveDelete({ model }),\n [`publish${typeName}`]: resolvePublish({ model }),\n [`republish${typeName}`]: resolveRepublish({ model }),\n [`unpublish${typeName}`]: resolveUnpublish({ model }),\n [`create${typeName}From`]: resolveCreateFrom({ model })\n },\n ...fieldResolvers,\n [`${mTypeName}Meta`]: {\n title(entry: CmsEntry) {\n return getEntryTitle(model, entry);\n },\n status(entry: CmsEntry) {\n return entry.status;\n },\n data: (entry: CmsEntry) => {\n return entry.meta || {};\n },\n async revisions(entry: CmsEntry, _: any, context: CmsContext) {\n const revisions = await context.cms.getEntryRevisions(model, entry.entryId);\n return revisions.sort((a, b) => b.version - a.version);\n }\n }\n };\n};\n"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { CmsFieldTypePlugins, CmsModel } from "../../types";
2
+ import { CmsGraphQLSchemaSorterPlugin } from "../../plugins";
3
+ interface CreateManageSDLParams {
4
+ model: CmsModel;
5
+ fieldTypePlugins: CmsFieldTypePlugins;
6
+ sorterPlugins: CmsGraphQLSchemaSorterPlugin[];
7
+ }
8
+ interface CreateManageSDL {
9
+ (params: CreateManageSDLParams): string;
10
+ }
11
+ export declare const createManageSDL: CreateManageSDL;
12
+ export {};