@webiny/api-headless-cms 0.0.0-unstable.97a151f74d → 0.0.0-unstable.9e825fd5fb

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 (374) hide show
  1. package/context.d.ts +5 -2
  2. package/context.js +60 -23
  3. package/context.js.map +1 -1
  4. package/crud/contentEntry/afterDelete.js +0 -5
  5. package/crud/contentEntry/afterDelete.js.map +1 -1
  6. package/crud/contentEntry/beforeCreate.js +0 -3
  7. package/crud/contentEntry/beforeCreate.js.map +1 -1
  8. package/crud/contentEntry/beforeUpdate.js +0 -3
  9. package/crud/contentEntry/beforeUpdate.js.map +1 -1
  10. package/crud/contentEntry/entryDataValidation.js +1 -40
  11. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  12. package/crud/contentEntry/markLockedFields.d.ts +1 -1
  13. package/crud/contentEntry/markLockedFields.js +15 -28
  14. package/crud/contentEntry/markLockedFields.js.map +1 -1
  15. package/crud/contentEntry/referenceFieldsMapping.js +5 -61
  16. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  17. package/crud/contentEntry/searchableFields.js +1 -12
  18. package/crud/contentEntry/searchableFields.js.map +1 -1
  19. package/crud/contentEntry.crud.d.ts +4 -1
  20. package/crud/contentEntry.crud.js +964 -916
  21. package/crud/contentEntry.crud.js.map +1 -1
  22. package/crud/contentModel/afterCreate.js +0 -2
  23. package/crud/contentModel/afterCreate.js.map +1 -1
  24. package/crud/contentModel/afterCreateFrom.js +0 -2
  25. package/crud/contentModel/afterCreateFrom.js.map +1 -1
  26. package/crud/contentModel/afterDelete.js +0 -2
  27. package/crud/contentModel/afterDelete.js.map +1 -1
  28. package/crud/contentModel/afterUpdate.js +0 -2
  29. package/crud/contentModel/afterUpdate.js.map +1 -1
  30. package/crud/contentModel/beforeCreate.d.ts +2 -3
  31. package/crud/contentModel/beforeCreate.js +43 -109
  32. package/crud/contentModel/beforeCreate.js.map +1 -1
  33. package/crud/contentModel/beforeDelete.js +0 -10
  34. package/crud/contentModel/beforeDelete.js.map +1 -1
  35. package/crud/contentModel/beforeUpdate.d.ts +2 -4
  36. package/crud/contentModel/beforeUpdate.js +33 -10
  37. package/crud/contentModel/beforeUpdate.js.map +1 -1
  38. package/crud/contentModel/compatibility/modelApiName.d.ts +3 -0
  39. package/crud/contentModel/compatibility/modelApiName.js +24 -0
  40. package/crud/contentModel/compatibility/modelApiName.js.map +1 -0
  41. package/crud/contentModel/contentModelManagerFactory.js +0 -7
  42. package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
  43. package/crud/contentModel/createFieldStorageId.js +0 -3
  44. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  45. package/crud/contentModel/defaultFields.d.ts +5 -0
  46. package/crud/contentModel/defaultFields.js +58 -0
  47. package/crud/contentModel/defaultFields.js.map +1 -0
  48. package/crud/contentModel/fields/descriptionField.d.ts +2 -0
  49. package/crud/contentModel/fields/descriptionField.js +42 -0
  50. package/crud/contentModel/fields/descriptionField.js.map +1 -0
  51. package/crud/contentModel/fields/imageField.d.ts +2 -0
  52. package/crud/contentModel/fields/imageField.js +46 -0
  53. package/crud/contentModel/fields/imageField.js.map +1 -0
  54. package/crud/contentModel/fields/titleField.d.ts +2 -0
  55. package/crud/contentModel/fields/titleField.js +58 -0
  56. package/crud/contentModel/fields/titleField.js.map +1 -0
  57. package/crud/contentModel/validate/endingAllowed.d.ts +6 -0
  58. package/crud/contentModel/validate/endingAllowed.js +26 -0
  59. package/crud/contentModel/validate/endingAllowed.js.map +1 -0
  60. package/crud/contentModel/validate/isModelEndingAllowed.d.ts +6 -0
  61. package/crud/contentModel/validate/isModelEndingAllowed.js +24 -0
  62. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -0
  63. package/crud/contentModel/validate/modelId.d.ts +11 -0
  64. package/crud/contentModel/validate/modelId.js +36 -0
  65. package/crud/contentModel/validate/modelId.js.map +1 -0
  66. package/crud/contentModel/validate/pluralApiName.d.ts +7 -0
  67. package/crud/contentModel/validate/pluralApiName.js +24 -0
  68. package/crud/contentModel/validate/pluralApiName.js.map +1 -0
  69. package/crud/contentModel/validate/singularApiName.d.ts +7 -0
  70. package/crud/contentModel/validate/singularApiName.js +24 -0
  71. package/crud/contentModel/validate/singularApiName.js.map +1 -0
  72. package/crud/contentModel/validateLayout.js +0 -8
  73. package/crud/contentModel/validateLayout.js.map +1 -1
  74. package/crud/contentModel/validateModel.d.ts +4 -4
  75. package/crud/contentModel/validateModel.js +6 -11
  76. package/crud/contentModel/validateModel.js.map +1 -1
  77. package/crud/contentModel/validateModelFields.d.ts +4 -4
  78. package/crud/contentModel/validateModelFields.js +119 -144
  79. package/crud/contentModel/validateModelFields.js.map +1 -1
  80. package/crud/contentModel/validation.d.ts +519 -0
  81. package/crud/contentModel/validation.js +145 -0
  82. package/crud/contentModel/validation.js.map +1 -0
  83. package/crud/contentModel.crud.js +364 -375
  84. package/crud/contentModel.crud.js.map +1 -1
  85. package/crud/contentModelGroup/beforeCreate.js +0 -12
  86. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  87. package/crud/contentModelGroup/beforeDelete.js +0 -8
  88. package/crud/contentModelGroup/beforeDelete.js.map +1 -1
  89. package/crud/contentModelGroup/beforeUpdate.js +0 -5
  90. package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
  91. package/crud/contentModelGroup/validation.d.ts +30 -0
  92. package/crud/contentModelGroup/validation.js +34 -0
  93. package/crud/contentModelGroup/validation.js.map +1 -0
  94. package/crud/contentModelGroup.crud.js +194 -208
  95. package/crud/contentModelGroup.crud.js.map +1 -1
  96. package/crud/settings.crud.d.ts +1 -1
  97. package/crud/settings.crud.js +5 -22
  98. package/crud/settings.crud.js.map +1 -1
  99. package/crud/system.crud.js +1 -96
  100. package/crud/system.crud.js.map +1 -1
  101. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +0 -13
  102. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  103. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  104. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
  105. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  106. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +0 -53
  107. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  108. package/fieldConverters/index.d.ts +2 -1
  109. package/fieldConverters/index.js +2 -5
  110. package/fieldConverters/index.js.map +1 -1
  111. package/graphql/buildSchemaPlugins.d.ts +8 -3
  112. package/graphql/buildSchemaPlugins.js +6 -14
  113. package/graphql/buildSchemaPlugins.js.map +1 -1
  114. package/graphql/createExecutableSchema.d.ts +6 -0
  115. package/graphql/createExecutableSchema.js +29 -0
  116. package/graphql/createExecutableSchema.js.map +1 -0
  117. package/graphql/generateSchema.d.ts +8 -0
  118. package/graphql/generateSchema.js +31 -0
  119. package/graphql/generateSchema.js.map +1 -0
  120. package/graphql/graphQLHandlerFactory.js +134 -110
  121. package/graphql/graphQLHandlerFactory.js.map +1 -1
  122. package/graphql/index.d.ts +1 -3
  123. package/graphql/index.js +2 -46
  124. package/graphql/index.js.map +1 -1
  125. package/graphql/schema/baseContentSchema.d.ts +6 -2
  126. package/graphql/schema/baseContentSchema.js +10 -20
  127. package/graphql/schema/baseContentSchema.js.map +1 -1
  128. package/graphql/schema/baseSchema.d.ts +3 -0
  129. package/graphql/schema/baseSchema.js +53 -0
  130. package/graphql/schema/baseSchema.js.map +1 -0
  131. package/graphql/schema/contentEntries.d.ts +6 -2
  132. package/graphql/schema/contentEntries.js +118 -107
  133. package/graphql/schema/contentEntries.js.map +1 -1
  134. package/graphql/schema/contentModelGroups.d.ts +6 -2
  135. package/graphql/schema/contentModelGroups.js +16 -29
  136. package/graphql/schema/contentModelGroups.js.map +1 -1
  137. package/graphql/schema/contentModels.d.ts +6 -2
  138. package/graphql/schema/contentModels.js +46 -27
  139. package/graphql/schema/contentModels.js.map +1 -1
  140. package/graphql/schema/createFieldResolvers.js +13 -24
  141. package/graphql/schema/createFieldResolvers.js.map +1 -1
  142. package/graphql/schema/createManageResolvers.d.ts +1 -1
  143. package/graphql/schema/createManageResolvers.js +33 -43
  144. package/graphql/schema/createManageResolvers.js.map +1 -1
  145. package/graphql/schema/createManageSDL.d.ts +3 -0
  146. package/graphql/schema/createManageSDL.js +61 -65
  147. package/graphql/schema/createManageSDL.js.map +1 -1
  148. package/graphql/schema/createPreviewResolvers.js +3 -17
  149. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  150. package/graphql/schema/createReadResolvers.js +8 -17
  151. package/graphql/schema/createReadResolvers.js.map +1 -1
  152. package/graphql/schema/createReadSDL.d.ts +3 -0
  153. package/graphql/schema/createReadSDL.js +30 -34
  154. package/graphql/schema/createReadSDL.js.map +1 -1
  155. package/graphql/schema/resolvers/commonFieldResolvers.d.ts +3 -2
  156. package/graphql/schema/resolvers/commonFieldResolvers.js +2 -3
  157. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
  158. package/graphql/schema/resolvers/manage/resolveCreate.js +0 -3
  159. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  160. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +0 -3
  161. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  162. package/graphql/schema/resolvers/manage/resolveDelete.js +0 -6
  163. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  164. package/graphql/schema/resolvers/manage/resolveGet.js +0 -16
  165. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  166. package/graphql/schema/resolvers/manage/resolveGetByIds.js +0 -3
  167. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  168. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +0 -3
  169. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  170. package/graphql/schema/resolvers/manage/resolveList.js +0 -3
  171. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  172. package/graphql/schema/resolvers/manage/resolvePublish.js +0 -3
  173. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  174. package/graphql/schema/resolvers/manage/resolveRepublish.js +0 -3
  175. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  176. package/graphql/schema/resolvers/manage/resolveUnpublish.js +0 -3
  177. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  178. package/graphql/schema/resolvers/manage/resolveUpdate.js +0 -3
  179. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  180. package/graphql/schema/resolvers/preview/resolveGet.js +0 -8
  181. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  182. package/graphql/schema/resolvers/preview/resolveList.js +0 -3
  183. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  184. package/graphql/schema/resolvers/read/resolveGet.js +0 -8
  185. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  186. package/graphql/schema/resolvers/read/resolveList.js +0 -3
  187. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  188. package/graphql/schema/schemaPlugins.d.ts +8 -3
  189. package/graphql/schema/schemaPlugins.js +64 -66
  190. package/graphql/schema/schemaPlugins.js.map +1 -1
  191. package/graphql/system.js +55 -87
  192. package/graphql/system.js.map +1 -1
  193. package/graphqlFields/boolean.js +0 -12
  194. package/graphqlFields/boolean.js.map +1 -1
  195. package/graphqlFields/datetime.js +0 -17
  196. package/graphqlFields/datetime.js.map +1 -1
  197. package/graphqlFields/dynamicZone/dynamicZoneField.js +37 -30
  198. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
  199. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +2 -18
  200. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -1
  201. package/graphqlFields/dynamicZone/index.js +0 -2
  202. package/graphqlFields/dynamicZone/index.js.map +1 -1
  203. package/graphqlFields/file.js +0 -8
  204. package/graphqlFields/file.js.map +1 -1
  205. package/graphqlFields/helpers.js +0 -10
  206. package/graphqlFields/helpers.js.map +1 -1
  207. package/graphqlFields/index.js +0 -12
  208. package/graphqlFields/index.js.map +1 -1
  209. package/graphqlFields/longText.js +0 -10
  210. package/graphqlFields/longText.js.map +1 -1
  211. package/graphqlFields/number.js +0 -12
  212. package/graphqlFields/number.js.map +1 -1
  213. package/graphqlFields/object.js +46 -50
  214. package/graphqlFields/object.js.map +1 -1
  215. package/graphqlFields/ref.js +64 -66
  216. package/graphqlFields/ref.js.map +1 -1
  217. package/graphqlFields/richText.js +0 -9
  218. package/graphqlFields/richText.js.map +1 -1
  219. package/graphqlFields/text.js +0 -11
  220. package/graphqlFields/text.js.map +1 -1
  221. package/index.d.ts +5 -3
  222. package/index.js +23 -29
  223. package/index.js.map +1 -1
  224. package/modelManager/DefaultCmsModelManager.js +0 -16
  225. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  226. package/modelManager/index.js +0 -4
  227. package/modelManager/index.js.map +1 -1
  228. package/package.json +26 -28
  229. package/parameters/context.js +0 -4
  230. package/parameters/context.js.map +1 -1
  231. package/parameters/header.js +0 -11
  232. package/parameters/header.js.map +1 -1
  233. package/parameters/index.js +0 -8
  234. package/parameters/index.js.map +1 -1
  235. package/parameters/manual.js +1 -8
  236. package/parameters/manual.js.map +1 -1
  237. package/parameters/path.js +0 -11
  238. package/parameters/path.js.map +1 -1
  239. package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
  240. package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
  241. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
  242. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  243. package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
  244. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  245. package/plugins/CmsGroupPlugin.js +0 -8
  246. package/plugins/CmsGroupPlugin.js.map +1 -1
  247. package/plugins/CmsModelFieldConverterPlugin.d.ts +2 -2
  248. package/plugins/CmsModelFieldConverterPlugin.js +0 -5
  249. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  250. package/plugins/CmsModelPlugin.d.ts +19 -3
  251. package/plugins/CmsModelPlugin.js +30 -40
  252. package/plugins/CmsModelPlugin.js.map +1 -1
  253. package/plugins/CmsParametersPlugin.js +0 -7
  254. package/plugins/CmsParametersPlugin.js.map +1 -1
  255. package/plugins/StorageTransformPlugin.js +0 -9
  256. package/plugins/StorageTransformPlugin.js.map +1 -1
  257. package/plugins/index.d.ts +2 -0
  258. package/plugins/index.js +22 -10
  259. package/plugins/index.js.map +1 -1
  260. package/storage/default.js +0 -3
  261. package/storage/default.js.map +1 -1
  262. package/storage/object.js +0 -19
  263. package/storage/object.js.map +1 -1
  264. package/types.d.ts +234 -43
  265. package/types.js +53 -64
  266. package/types.js.map +1 -1
  267. package/utils/access.js +11 -25
  268. package/utils/access.js.map +1 -1
  269. package/utils/converters/Converter.js +0 -13
  270. package/utils/converters/Converter.js.map +1 -1
  271. package/utils/converters/ConverterCollection.js +9 -33
  272. package/utils/converters/ConverterCollection.js.map +1 -1
  273. package/utils/converters/valueKeyStorageConverter.d.ts +2 -2
  274. package/utils/converters/valueKeyStorageConverter.js +8 -27
  275. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  276. package/utils/createTypeFromFields.d.ts +1 -0
  277. package/utils/createTypeFromFields.js +11 -19
  278. package/utils/createTypeFromFields.js.map +1 -1
  279. package/utils/createTypeName.js +0 -9
  280. package/utils/createTypeName.js.map +1 -1
  281. package/utils/entryStorage.js +17 -34
  282. package/utils/entryStorage.js.map +1 -1
  283. package/utils/filterAsync.js +0 -5
  284. package/utils/filterAsync.js.map +1 -1
  285. package/utils/getBaseFieldType.js +0 -2
  286. package/utils/getBaseFieldType.js.map +1 -1
  287. package/utils/getEntryDescription.d.ts +2 -0
  288. package/utils/getEntryDescription.js +17 -0
  289. package/utils/getEntryDescription.js.map +1 -0
  290. package/utils/getEntryImage.d.ts +2 -0
  291. package/utils/getEntryImage.js +17 -0
  292. package/utils/getEntryImage.js.map +1 -0
  293. package/utils/getEntryTitle.js +0 -9
  294. package/utils/getEntryTitle.js.map +1 -1
  295. package/utils/getSchemaFromFieldPlugins.d.ts +4 -7
  296. package/utils/getSchemaFromFieldPlugins.js +23 -19
  297. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  298. package/utils/incrementEntryIdVersion.d.ts +5 -0
  299. package/utils/incrementEntryIdVersion.js +29 -0
  300. package/utils/incrementEntryIdVersion.js.map +1 -0
  301. package/utils/ownership.d.ts +3 -3
  302. package/utils/ownership.js +0 -8
  303. package/utils/ownership.js.map +1 -1
  304. package/utils/permissions.js +8 -23
  305. package/utils/permissions.js.map +1 -1
  306. package/utils/renderFields.d.ts +2 -1
  307. package/utils/renderFields.js +8 -10
  308. package/utils/renderFields.js.map +1 -1
  309. package/utils/renderGetFilterFields.js +0 -13
  310. package/utils/renderGetFilterFields.js.map +1 -1
  311. package/utils/renderInputFields.d.ts +2 -1
  312. package/utils/renderInputFields.js +4 -9
  313. package/utils/renderInputFields.js.map +1 -1
  314. package/utils/renderListFilterFields.js +1 -10
  315. package/utils/renderListFilterFields.js.map +1 -1
  316. package/utils/renderSortEnum.d.ts +7 -4
  317. package/utils/renderSortEnum.js +19 -11
  318. package/utils/renderSortEnum.js.map +1 -1
  319. package/utils/toSlug.js +0 -4
  320. package/utils/toSlug.js.map +1 -1
  321. package/validators/dateGte.js +0 -7
  322. package/validators/dateGte.js.map +1 -1
  323. package/validators/dateLte.js +0 -7
  324. package/validators/dateLte.js.map +1 -1
  325. package/validators/dynamicZone.js +0 -4
  326. package/validators/dynamicZone.js.map +1 -1
  327. package/validators/gte.js +0 -8
  328. package/validators/gte.js.map +1 -1
  329. package/validators/in.js +0 -8
  330. package/validators/in.js.map +1 -1
  331. package/validators/index.js +0 -16
  332. package/validators/index.js.map +1 -1
  333. package/validators/lte.js +0 -8
  334. package/validators/lte.js.map +1 -1
  335. package/validators/maxLength.js +0 -8
  336. package/validators/maxLength.js.map +1 -1
  337. package/validators/minLength.js +0 -8
  338. package/validators/minLength.js.map +1 -1
  339. package/validators/pattern.js +0 -9
  340. package/validators/pattern.js.map +1 -1
  341. package/validators/patternPlugins/email.js +0 -2
  342. package/validators/patternPlugins/email.js.map +1 -1
  343. package/validators/patternPlugins/index.js +0 -8
  344. package/validators/patternPlugins/index.js.map +1 -1
  345. package/validators/patternPlugins/lowerCase.js +0 -2
  346. package/validators/patternPlugins/lowerCase.js.map +1 -1
  347. package/validators/patternPlugins/lowerCaseSpace.js +0 -2
  348. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  349. package/validators/patternPlugins/upperCase.js +0 -2
  350. package/validators/patternPlugins/upperCase.js.map +1 -1
  351. package/validators/patternPlugins/upperCaseSpace.js +0 -2
  352. package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  353. package/validators/patternPlugins/url.js +0 -2
  354. package/validators/patternPlugins/url.js.map +1 -1
  355. package/validators/required.js +0 -5
  356. package/validators/required.js.map +1 -1
  357. package/validators/timeGte.js +0 -8
  358. package/validators/timeGte.js.map +1 -1
  359. package/validators/timeLte.js +0 -8
  360. package/validators/timeLte.js.map +1 -1
  361. package/validators/unique.js +0 -7
  362. package/validators/unique.js.map +1 -1
  363. package/crud/index.d.ts +0 -6
  364. package/crud/index.js +0 -85
  365. package/crud/index.js.map +0 -1
  366. package/graphql/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -7
  367. package/graphql/schema/resolvers/manage/resolveRequestChanges.js +0 -21
  368. package/graphql/schema/resolvers/manage/resolveRequestChanges.js.map +0 -1
  369. package/graphql/schema/resolvers/manage/resolveRequestReview.d.ts +0 -7
  370. package/graphql/schema/resolvers/manage/resolveRequestReview.js +0 -21
  371. package/graphql/schema/resolvers/manage/resolveRequestReview.js.map +0 -1
  372. package/utils/filterModelFields.d.ts +0 -16
  373. package/utils/filterModelFields.js +0 -77
  374. package/utils/filterModelFields.js.map +0 -1
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createBooleanField = void 0;
7
-
8
7
  var _helpers = require("./helpers");
9
-
10
8
  const createListFilters = ({
11
9
  field
12
10
  }) => {
@@ -15,7 +13,6 @@ const createListFilters = ({
15
13
  ${field.fieldId}_not: Boolean
16
14
  `;
17
15
  };
18
-
19
16
  const createBooleanField = () => {
20
17
  return {
21
18
  name: "cms-model-field-to-graphql-boolean",
@@ -25,45 +22,36 @@ const createBooleanField = () => {
25
22
  isSearchable: true,
26
23
  read: {
27
24
  createListFilters,
28
-
29
25
  createGetFilters({
30
26
  field
31
27
  }) {
32
28
  return `${field.fieldId}: Boolean`;
33
29
  },
34
-
35
30
  createTypeField({
36
31
  field
37
32
  }) {
38
33
  if (field.multipleValues) {
39
34
  return `${field.fieldId}: [Boolean]`;
40
35
  }
41
-
42
36
  return `${field.fieldId}: Boolean`;
43
37
  }
44
-
45
38
  },
46
39
  manage: {
47
40
  createListFilters,
48
-
49
41
  createTypeField({
50
42
  field
51
43
  }) {
52
44
  if (field.multipleValues) {
53
45
  return field.fieldId + ": [Boolean]";
54
46
  }
55
-
56
47
  return field.fieldId + ": Boolean";
57
48
  },
58
-
59
49
  createInputField({
60
50
  field
61
51
  }) {
62
52
  return (0, _helpers.createGraphQLInputField)(field, "Boolean");
63
53
  }
64
-
65
54
  }
66
55
  };
67
56
  };
68
-
69
57
  exports.createBooleanField = createBooleanField;
@@ -1 +1 @@
1
- {"version":3,"names":["createListFilters","field","fieldId","createBooleanField","name","type","fieldType","isSortable","isSearchable","read","createGetFilters","createTypeField","multipleValues","manage","createInputField","createGraphQLInputField"],"sources":["boolean.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: Boolean\n ${field.fieldId}_not: Boolean\n `;\n};\n\nexport const createBooleanField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-boolean\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"boolean\",\n isSortable: true,\n isSearchable: true,\n read: {\n createListFilters,\n createGetFilters({ field }) {\n return `${field.fieldId}: Boolean`;\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [Boolean]`;\n }\n\n return `${field.fieldId}: Boolean`;\n }\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n return field.fieldId + \": [Boolean]\";\n }\n\n return field.fieldId + \": Boolean\";\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"Boolean\");\n }\n }\n };\n};\n"],"mappings":";;;;;;;AACA;;AAKA,MAAMA,iBAAiB,GAAG,CAAC;EAAEC;AAAF,CAAD,KAAwC;EAC9D,OAAQ;AACZ,UAAUA,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,KAHI;AAIH,CALD;;AAOO,MAAMC,kBAAkB,GAAG,MAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,oCADH;IAEHC,IAAI,EAAE,4BAFH;IAGHC,SAAS,EAAE,SAHR;IAIHC,UAAU,EAAE,IAJT;IAKHC,YAAY,EAAE,IALX;IAMHC,IAAI,EAAE;MACFT,iBADE;;MAEFU,gBAAgB,CAAC;QAAET;MAAF,CAAD,EAAY;QACxB,OAAQ,GAAEA,KAAK,CAACC,OAAQ,WAAxB;MACH,CAJC;;MAKFS,eAAe,CAAC;QAAEV;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACW,cAAV,EAA0B;UACtB,OAAQ,GAAEX,KAAK,CAACC,OAAQ,aAAxB;QACH;;QAED,OAAQ,GAAED,KAAK,CAACC,OAAQ,WAAxB;MACH;;IAXC,CANH;IAmBHW,MAAM,EAAE;MACJb,iBADI;;MAEJW,eAAe,CAAC;QAAEV;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACW,cAAV,EAA0B;UACtB,OAAOX,KAAK,CAACC,OAAN,GAAgB,aAAvB;QACH;;QAED,OAAOD,KAAK,CAACC,OAAN,GAAgB,WAAvB;MACH,CARG;;MASJY,gBAAgB,CAAC;QAAEb;MAAF,CAAD,EAAY;QACxB,OAAO,IAAAc,gCAAA,EAAwBd,KAAxB,EAA+B,SAA/B,CAAP;MACH;;IAXG;EAnBL,CAAP;AAiCH,CAlCM"}
1
+ {"version":3,"names":["createListFilters","field","fieldId","createBooleanField","name","type","fieldType","isSortable","isSearchable","read","createGetFilters","createTypeField","multipleValues","manage","createInputField","createGraphQLInputField"],"sources":["boolean.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: Boolean\n ${field.fieldId}_not: Boolean\n `;\n};\n\nexport const createBooleanField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-boolean\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"boolean\",\n isSortable: true,\n isSearchable: true,\n read: {\n createListFilters,\n createGetFilters({ field }) {\n return `${field.fieldId}: Boolean`;\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [Boolean]`;\n }\n\n return `${field.fieldId}: Boolean`;\n }\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n return field.fieldId + \": [Boolean]\";\n }\n\n return field.fieldId + \": Boolean\";\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"Boolean\");\n }\n }\n };\n};\n"],"mappings":";;;;;;AACA;AAKA,MAAMA,iBAAiB,GAAG,CAAC;EAAEC;AAA+B,CAAC,KAAK;EAC9D,OAAQ;AACZ,UAAUA,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,KAAK;AACL,CAAC;AAEM,MAAMC,kBAAkB,GAAG,MAAoC;EAClE,OAAO;IACHC,IAAI,EAAE,oCAAoC;IAC1CC,IAAI,EAAE,4BAA4B;IAClCC,SAAS,EAAE,SAAS;IACpBC,UAAU,EAAE,IAAI;IAChBC,YAAY,EAAE,IAAI;IAClBC,IAAI,EAAE;MACFT,iBAAiB;MACjBU,gBAAgB,CAAC;QAAET;MAAM,CAAC,EAAE;QACxB,OAAQ,GAAEA,KAAK,CAACC,OAAQ,WAAU;MACtC,CAAC;MACDS,eAAe,CAAC;QAAEV;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACW,cAAc,EAAE;UACtB,OAAQ,GAAEX,KAAK,CAACC,OAAQ,aAAY;QACxC;QAEA,OAAQ,GAAED,KAAK,CAACC,OAAQ,WAAU;MACtC;IACJ,CAAC;IACDW,MAAM,EAAE;MACJb,iBAAiB;MACjBW,eAAe,CAAC;QAAEV;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACW,cAAc,EAAE;UACtB,OAAOX,KAAK,CAACC,OAAO,GAAG,aAAa;QACxC;QAEA,OAAOD,KAAK,CAACC,OAAO,GAAG,WAAW;MACtC,CAAC;MACDY,gBAAgB,CAAC;QAAEb;MAAM,CAAC,EAAE;QACxB,OAAO,IAAAc,gCAAuB,EAACd,KAAK,EAAE,SAAS,CAAC;MACpD;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
@@ -4,28 +4,21 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createDateTimeField = void 0;
7
-
8
7
  var _helpers = require("./helpers");
9
-
10
8
  const fieldGraphQLTypes = {
11
9
  time: "Time",
12
10
  dateTimeWithoutTimezone: "DateTime",
13
11
  dateTimeWithTimezone: "DateTimeZ",
14
12
  date: "Date"
15
13
  };
16
-
17
14
  const getFieldGraphQLType = field => {
18
15
  var _field$settings;
19
-
20
16
  const type = (_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.type;
21
-
22
17
  if (!type || !fieldGraphQLTypes[type]) {
23
18
  return fieldGraphQLTypes.dateTimeWithoutTimezone;
24
19
  }
25
-
26
20
  return fieldGraphQLTypes[type];
27
21
  };
28
-
29
22
  const createListFilters = ({
30
23
  field
31
24
  }) => {
@@ -40,7 +33,6 @@ const createListFilters = ({
40
33
  ${field.fieldId}_gte: ${getFieldGraphQLType(field)}
41
34
  `;
42
35
  };
43
-
44
36
  const createDateTimeField = () => {
45
37
  return {
46
38
  name: "cms-model-field-to-graphql-datetime",
@@ -50,27 +42,22 @@ const createDateTimeField = () => {
50
42
  isSearchable: true,
51
43
  read: {
52
44
  createListFilters,
53
-
54
45
  createGetFilters({
55
46
  field
56
47
  }) {
57
48
  return `${field.fieldId}: ${getFieldGraphQLType(field)}`;
58
49
  },
59
-
60
50
  createTypeField({
61
51
  field
62
52
  }) {
63
53
  if (field.multipleValues) {
64
54
  return `${field.fieldId}: [${getFieldGraphQLType(field)}]`;
65
55
  }
66
-
67
56
  return `${field.fieldId}: ${getFieldGraphQLType(field)}`;
68
57
  }
69
-
70
58
  },
71
59
  manage: {
72
60
  createListFilters,
73
-
74
61
  createTypeField({
75
62
  field
76
63
  }) {
@@ -78,18 +65,14 @@ const createDateTimeField = () => {
78
65
  const def = (0, _helpers.attachRequiredFieldValue)(getFieldGraphQLType(field), field);
79
66
  return `${field.fieldId}: [${def}]`;
80
67
  }
81
-
82
68
  return `${field.fieldId}: ${getFieldGraphQLType(field)}`;
83
69
  },
84
-
85
70
  createInputField({
86
71
  field
87
72
  }) {
88
73
  return (0, _helpers.createGraphQLInputField)(field, getFieldGraphQLType(field));
89
74
  }
90
-
91
75
  }
92
76
  };
93
77
  };
94
-
95
78
  exports.createDateTimeField = createDateTimeField;
@@ -1 +1 @@
1
- {"version":3,"names":["fieldGraphQLTypes","time","dateTimeWithoutTimezone","dateTimeWithTimezone","date","getFieldGraphQLType","field","type","settings","createListFilters","fieldId","createDateTimeField","name","fieldType","isSortable","isSearchable","read","createGetFilters","createTypeField","multipleValues","manage","def","attachRequiredFieldValue","createInputField","createGraphQLInputField"],"sources":["datetime.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { attachRequiredFieldValue, createGraphQLInputField } from \"./helpers\";\n\nconst fieldGraphQLTypes = {\n time: \"Time\",\n dateTimeWithoutTimezone: \"DateTime\",\n dateTimeWithTimezone: \"DateTimeZ\",\n date: \"Date\"\n};\n\ntype FieldGraphQLKeys = keyof typeof fieldGraphQLTypes;\n\nconst getFieldGraphQLType = (field: CmsModelField): string => {\n const type = field.settings?.type as FieldGraphQLKeys | undefined;\n if (!type || !fieldGraphQLTypes[type]) {\n return fieldGraphQLTypes.dateTimeWithoutTimezone;\n }\n return fieldGraphQLTypes[type];\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: ${getFieldGraphQLType(field)}\n ${field.fieldId}_not: ${getFieldGraphQLType(field)}\n ${field.fieldId}_in: [${getFieldGraphQLType(field)}]\n ${field.fieldId}_not_in: [${getFieldGraphQLType(field)}]\n ${field.fieldId}_lt: ${getFieldGraphQLType(field)}\n ${field.fieldId}_lte: ${getFieldGraphQLType(field)}\n ${field.fieldId}_gt: ${getFieldGraphQLType(field)}\n ${field.fieldId}_gte: ${getFieldGraphQLType(field)}\n `;\n};\n\nexport const createDateTimeField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-datetime\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"datetime\",\n isSortable: true,\n isSearchable: true,\n read: {\n createListFilters,\n createGetFilters({ field }) {\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [${getFieldGraphQLType(field)}]`;\n }\n\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n }\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n const def = attachRequiredFieldValue(getFieldGraphQLType(field), field);\n return `${field.fieldId}: [${def}]`;\n }\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, getFieldGraphQLType(field));\n }\n }\n };\n};\n"],"mappings":";;;;;;;AACA;;AAEA,MAAMA,iBAAiB,GAAG;EACtBC,IAAI,EAAE,MADgB;EAEtBC,uBAAuB,EAAE,UAFH;EAGtBC,oBAAoB,EAAE,WAHA;EAItBC,IAAI,EAAE;AAJgB,CAA1B;;AASA,MAAMC,mBAAmB,GAAIC,KAAD,IAAkC;EAAA;;EAC1D,MAAMC,IAAI,sBAAGD,KAAK,CAACE,QAAT,oDAAG,gBAAgBD,IAA7B;;EACA,IAAI,CAACA,IAAD,IAAS,CAACP,iBAAiB,CAACO,IAAD,CAA/B,EAAuC;IACnC,OAAOP,iBAAiB,CAACE,uBAAzB;EACH;;EACD,OAAOF,iBAAiB,CAACO,IAAD,CAAxB;AACH,CAND;;AAWA,MAAME,iBAAiB,GAAG,CAAC;EAAEH;AAAF,CAAD,KAAwC;EAC9D,OAAQ;AACZ,UAAUA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAD,CAAQ;AACvD,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAD,CAAQ;AAC3D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAD,CAAQ;AAC3D,UAAUA,KAAK,CAACI,OAAQ,aAAYL,mBAAmB,CAACC,KAAD,CAAQ;AAC/D,UAAUA,KAAK,CAACI,OAAQ,QAAOL,mBAAmB,CAACC,KAAD,CAAQ;AAC1D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAD,CAAQ;AAC3D,UAAUA,KAAK,CAACI,OAAQ,QAAOL,mBAAmB,CAACC,KAAD,CAAQ;AAC1D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAD,CAAQ;AAC3D,KATI;AAUH,CAXD;;AAaO,MAAMK,mBAAmB,GAAG,MAAoC;EACnE,OAAO;IACHC,IAAI,EAAE,qCADH;IAEHL,IAAI,EAAE,4BAFH;IAGHM,SAAS,EAAE,UAHR;IAIHC,UAAU,EAAE,IAJT;IAKHC,YAAY,EAAE,IALX;IAMHC,IAAI,EAAE;MACFP,iBADE;;MAEFQ,gBAAgB,CAAC;QAAEX;MAAF,CAAD,EAAY;QACxB,OAAQ,GAAEA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAD,CAAQ,EAAvD;MACH,CAJC;;MAKFY,eAAe,CAAC;QAAEZ;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACa,cAAV,EAA0B;UACtB,OAAQ,GAAEb,KAAK,CAACI,OAAQ,MAAKL,mBAAmB,CAACC,KAAD,CAAQ,GAAxD;QACH;;QAED,OAAQ,GAAEA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAD,CAAQ,EAAvD;MACH;;IAXC,CANH;IAmBHc,MAAM,EAAE;MACJX,iBADI;;MAEJS,eAAe,CAAC;QAAEZ;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACa,cAAV,EAA0B;UACtB,MAAME,GAAG,GAAG,IAAAC,iCAAA,EAAyBjB,mBAAmB,CAACC,KAAD,CAA5C,EAAqDA,KAArD,CAAZ;UACA,OAAQ,GAAEA,KAAK,CAACI,OAAQ,MAAKW,GAAI,GAAjC;QACH;;QACD,OAAQ,GAAEf,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAD,CAAQ,EAAvD;MACH,CARG;;MASJiB,gBAAgB,CAAC;QAAEjB;MAAF,CAAD,EAAY;QACxB,OAAO,IAAAkB,gCAAA,EAAwBlB,KAAxB,EAA+BD,mBAAmB,CAACC,KAAD,CAAlD,CAAP;MACH;;IAXG;EAnBL,CAAP;AAiCH,CAlCM"}
1
+ {"version":3,"names":["fieldGraphQLTypes","time","dateTimeWithoutTimezone","dateTimeWithTimezone","date","getFieldGraphQLType","field","type","settings","createListFilters","fieldId","createDateTimeField","name","fieldType","isSortable","isSearchable","read","createGetFilters","createTypeField","multipleValues","manage","def","attachRequiredFieldValue","createInputField","createGraphQLInputField"],"sources":["datetime.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { attachRequiredFieldValue, createGraphQLInputField } from \"./helpers\";\n\nconst fieldGraphQLTypes = {\n time: \"Time\",\n dateTimeWithoutTimezone: \"DateTime\",\n dateTimeWithTimezone: \"DateTimeZ\",\n date: \"Date\"\n};\n\ntype FieldGraphQLKeys = keyof typeof fieldGraphQLTypes;\n\nconst getFieldGraphQLType = (field: CmsModelField): string => {\n const type = field.settings?.type as FieldGraphQLKeys | undefined;\n if (!type || !fieldGraphQLTypes[type]) {\n return fieldGraphQLTypes.dateTimeWithoutTimezone;\n }\n return fieldGraphQLTypes[type];\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: ${getFieldGraphQLType(field)}\n ${field.fieldId}_not: ${getFieldGraphQLType(field)}\n ${field.fieldId}_in: [${getFieldGraphQLType(field)}]\n ${field.fieldId}_not_in: [${getFieldGraphQLType(field)}]\n ${field.fieldId}_lt: ${getFieldGraphQLType(field)}\n ${field.fieldId}_lte: ${getFieldGraphQLType(field)}\n ${field.fieldId}_gt: ${getFieldGraphQLType(field)}\n ${field.fieldId}_gte: ${getFieldGraphQLType(field)}\n `;\n};\n\nexport const createDateTimeField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-datetime\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"datetime\",\n isSortable: true,\n isSearchable: true,\n read: {\n createListFilters,\n createGetFilters({ field }) {\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [${getFieldGraphQLType(field)}]`;\n }\n\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n }\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n const def = attachRequiredFieldValue(getFieldGraphQLType(field), field);\n return `${field.fieldId}: [${def}]`;\n }\n return `${field.fieldId}: ${getFieldGraphQLType(field)}`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, getFieldGraphQLType(field));\n }\n }\n };\n};\n"],"mappings":";;;;;;AACA;AAEA,MAAMA,iBAAiB,GAAG;EACtBC,IAAI,EAAE,MAAM;EACZC,uBAAuB,EAAE,UAAU;EACnCC,oBAAoB,EAAE,WAAW;EACjCC,IAAI,EAAE;AACV,CAAC;AAID,MAAMC,mBAAmB,GAAIC,KAAoB,IAAa;EAAA;EAC1D,MAAMC,IAAI,sBAAGD,KAAK,CAACE,QAAQ,oDAAd,gBAAgBD,IAAoC;EACjE,IAAI,CAACA,IAAI,IAAI,CAACP,iBAAiB,CAACO,IAAI,CAAC,EAAE;IACnC,OAAOP,iBAAiB,CAACE,uBAAuB;EACpD;EACA,OAAOF,iBAAiB,CAACO,IAAI,CAAC;AAClC,CAAC;AAKD,MAAME,iBAAiB,GAAG,CAAC;EAAEH;AAA+B,CAAC,KAAK;EAC9D,OAAQ;AACZ,UAAUA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAK,CAAE;AACvD,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAK,CAAE;AAC3D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAK,CAAE;AAC3D,UAAUA,KAAK,CAACI,OAAQ,aAAYL,mBAAmB,CAACC,KAAK,CAAE;AAC/D,UAAUA,KAAK,CAACI,OAAQ,QAAOL,mBAAmB,CAACC,KAAK,CAAE;AAC1D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAK,CAAE;AAC3D,UAAUA,KAAK,CAACI,OAAQ,QAAOL,mBAAmB,CAACC,KAAK,CAAE;AAC1D,UAAUA,KAAK,CAACI,OAAQ,SAAQL,mBAAmB,CAACC,KAAK,CAAE;AAC3D,KAAK;AACL,CAAC;AAEM,MAAMK,mBAAmB,GAAG,MAAoC;EACnE,OAAO;IACHC,IAAI,EAAE,qCAAqC;IAC3CL,IAAI,EAAE,4BAA4B;IAClCM,SAAS,EAAE,UAAU;IACrBC,UAAU,EAAE,IAAI;IAChBC,YAAY,EAAE,IAAI;IAClBC,IAAI,EAAE;MACFP,iBAAiB;MACjBQ,gBAAgB,CAAC;QAAEX;MAAM,CAAC,EAAE;QACxB,OAAQ,GAAEA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAK,CAAE,EAAC;MAC5D,CAAC;MACDY,eAAe,CAAC;QAAEZ;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACa,cAAc,EAAE;UACtB,OAAQ,GAAEb,KAAK,CAACI,OAAQ,MAAKL,mBAAmB,CAACC,KAAK,CAAE,GAAE;QAC9D;QAEA,OAAQ,GAAEA,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAK,CAAE,EAAC;MAC5D;IACJ,CAAC;IACDc,MAAM,EAAE;MACJX,iBAAiB;MACjBS,eAAe,CAAC;QAAEZ;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACa,cAAc,EAAE;UACtB,MAAME,GAAG,GAAG,IAAAC,iCAAwB,EAACjB,mBAAmB,CAACC,KAAK,CAAC,EAAEA,KAAK,CAAC;UACvE,OAAQ,GAAEA,KAAK,CAACI,OAAQ,MAAKW,GAAI,GAAE;QACvC;QACA,OAAQ,GAAEf,KAAK,CAACI,OAAQ,KAAIL,mBAAmB,CAACC,KAAK,CAAE,EAAC;MAC5D,CAAC;MACDiB,gBAAgB,CAAC;QAAEjB;MAAM,CAAC,EAAE;QACxB,OAAO,IAAAkB,gCAAuB,EAAClB,KAAK,EAAED,mBAAmB,CAACC,KAAK,CAAC,CAAC;MACrE;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
@@ -1,35 +1,26 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.createDynamicZoneField = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
9
  var _createTypeName = require("../../utils/createTypeName");
13
-
14
10
  var _createTypeFromFields = require("../../utils/createTypeFromFields");
15
-
16
11
  var _helpers = require("../helpers");
17
-
18
12
  const createUnionTypeName = (model, field) => {
19
- return `${(0, _createTypeName.createReadTypeName)(model.modelId)}_${(0, _createTypeName.createReadTypeName)(field.fieldId)}`;
13
+ return `${model.singularApiName}_${(0, _createTypeName.createReadTypeName)(field.fieldId)}`;
20
14
  };
21
-
22
15
  const getFieldTemplates = field => {
23
16
  var _field$settings;
24
-
25
17
  if (!Array.isArray((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.templates)) {
26
18
  return [];
27
19
  }
28
-
29
20
  return field.settings.templates;
30
21
  };
31
-
32
22
  const createTypeDefsForTemplates = ({
23
+ models,
33
24
  model,
34
25
  field,
35
26
  type,
@@ -40,8 +31,9 @@ const createTypeDefsForTemplates = ({
40
31
  const typeDefs = [];
41
32
  const templateTypes = [];
42
33
  templates.forEach(template => {
43
- const typeName = [(0, _createTypeName.createTypeName)(model.modelId), (0, _createTypeName.createTypeName)(field.fieldId), template.gqlTypeName].join("_");
34
+ const typeName = [model.singularApiName, (0, _createTypeName.createTypeName)(field.fieldId), template.gqlTypeName].join("_");
44
35
  const result = (0, _createTypeFromFields.createTypeFromFields)({
36
+ models,
45
37
  typeOfType,
46
38
  model,
47
39
  type,
@@ -49,11 +41,9 @@ const createTypeDefsForTemplates = ({
49
41
  fields: template.fields,
50
42
  fieldTypePlugins
51
43
  });
52
-
53
44
  if (!result) {
54
45
  return;
55
46
  }
56
-
57
47
  typeDefs.push(result.typeDefs);
58
48
  templateTypes.push(result.fieldType);
59
49
  });
@@ -62,35 +52,28 @@ const createTypeDefsForTemplates = ({
62
52
  templateTypes
63
53
  };
64
54
  };
65
-
66
55
  const remapTemplateValue = (value, typeName) => {
67
56
  const templateType = Object.keys(value)[0];
68
57
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, value[templateType]), {}, {
69
58
  __typename: `${typeName}_${templateType}`
70
59
  });
71
60
  };
72
-
73
61
  const createResolver = ({
74
62
  model,
75
63
  field
76
64
  }) => {
77
65
  return parent => {
78
66
  const value = parent[field.fieldId];
79
-
80
67
  if (!value) {
81
68
  return value;
82
69
  }
83
-
84
- const typeName = `${(0, _createTypeName.createTypeName)(model.modelId)}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
85
-
70
+ const typeName = `${model.singularApiName}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
86
71
  if (field.multipleValues && Array.isArray(value)) {
87
72
  return value.map(v => remapTemplateValue(v, typeName));
88
73
  }
89
-
90
74
  return remapTemplateValue(value, typeName);
91
75
  };
92
76
  };
93
-
94
77
  const createDynamicZoneField = () => {
95
78
  return {
96
79
  name: "cms-model-field-to-graphql-dynamic-zone",
@@ -98,8 +81,30 @@ const createDynamicZoneField = () => {
98
81
  fieldType: "dynamicZone",
99
82
  isSortable: false,
100
83
  isSearchable: false,
84
+ validateChildFields: params => {
85
+ const {
86
+ validate,
87
+ originalField,
88
+ field
89
+ } = params;
90
+ const getOriginalTemplateFields = templateId => {
91
+ var _originalField$settin;
92
+ if (!(originalField !== null && originalField !== void 0 && (_originalField$settin = originalField.settings) !== null && _originalField$settin !== void 0 && _originalField$settin.templates)) {
93
+ return [];
94
+ }
95
+ const template = originalField.settings.templates.find(t => t.id === templateId);
96
+ return (template === null || template === void 0 ? void 0 : template.fields) || [];
97
+ };
98
+ for (const template of field.settings.templates) {
99
+ validate({
100
+ fields: template.fields,
101
+ originalFields: getOriginalTemplateFields(template.id)
102
+ });
103
+ }
104
+ },
101
105
  read: {
102
106
  createTypeField({
107
+ models,
103
108
  model,
104
109
  field,
105
110
  fieldTypePlugins
@@ -110,6 +115,7 @@ const createDynamicZoneField = () => {
110
115
  typeDefs,
111
116
  templateTypes
112
117
  } = createTypeDefsForTemplates({
118
+ models,
113
119
  field,
114
120
  type: "read",
115
121
  typeOfType: "type",
@@ -123,11 +129,11 @@ const createDynamicZoneField = () => {
123
129
  typeDefs: typeDefs.join("\n")
124
130
  };
125
131
  },
126
-
127
132
  createResolver
128
133
  },
129
134
  manage: {
130
135
  createTypeField({
136
+ models,
131
137
  model,
132
138
  field,
133
139
  fieldTypePlugins
@@ -138,14 +144,16 @@ const createDynamicZoneField = () => {
138
144
  typeDefs,
139
145
  templateTypes
140
146
  } = createTypeDefsForTemplates({
147
+ models,
141
148
  field,
142
149
  type: "manage",
143
150
  typeOfType: "type",
144
151
  model,
145
152
  fieldTypePlugins,
146
153
  templates
147
- }); // Add _templateId
154
+ });
148
155
 
156
+ // Add _templateId
149
157
  const templateIds = templateTypes.map(type => {
150
158
  return `extend type ${type} {
151
159
  _templateId: ID!
@@ -158,8 +166,8 @@ const createDynamicZoneField = () => {
158
166
  typeDefs: typeDefs.concat(templateIds).join("\n")
159
167
  };
160
168
  },
161
-
162
169
  createInputField({
170
+ models,
163
171
  model,
164
172
  field,
165
173
  fieldTypePlugins
@@ -169,6 +177,7 @@ const createDynamicZoneField = () => {
169
177
  typeDefs,
170
178
  templateTypes
171
179
  } = createTypeDefsForTemplates({
180
+ models,
172
181
  field,
173
182
  type: "manage",
174
183
  typeOfType: "input",
@@ -176,11 +185,12 @@ const createDynamicZoneField = () => {
176
185
  fieldTypePlugins,
177
186
  templates
178
187
  });
179
- const typeName = `${(0, _createTypeName.createTypeName)(model.modelId)}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
188
+ const typeName = `${model.singularApiName}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
180
189
  const inputProperties = templateTypes.map(inputTypeName => {
181
190
  const key = inputTypeName.replace(`${typeName}_`, "").replace("Input", "");
182
191
  return [key, inputTypeName];
183
192
  });
193
+
184
194
  /**
185
195
  * Generate a field input type, similar to this example:
186
196
  *
@@ -189,21 +199,18 @@ const createDynamicZoneField = () => {
189
199
  * SimpleText: Article_Content_SimpleTextInput
190
200
  * }
191
201
  */
192
-
193
202
  typeDefs.push(`input ${typeName}Input {
194
203
  ${inputProperties.map(([key, value]) => `
195
204
  ${key}: ${value}
196
- `)}
205
+ `)}
197
206
  }`);
198
207
  return {
199
208
  fields: (0, _helpers.createGraphQLInputField)(field, `${typeName}Input`),
200
209
  typeDefs: typeDefs.join("\n")
201
210
  };
202
211
  },
203
-
204
212
  createResolver
205
213
  }
206
214
  };
207
215
  };
208
-
209
216
  exports.createDynamicZoneField = createDynamicZoneField;
@@ -1 +1 @@
1
- {"version":3,"names":["createUnionTypeName","model","field","createReadTypeName","modelId","fieldId","getFieldTemplates","Array","isArray","settings","templates","createTypeDefsForTemplates","type","typeOfType","fieldTypePlugins","typeDefs","templateTypes","forEach","template","typeName","createTypeName","gqlTypeName","join","result","createTypeFromFields","typeNamePrefix","fields","push","fieldType","remapTemplateValue","value","templateType","Object","keys","__typename","createResolver","parent","multipleValues","map","v","createDynamicZoneField","name","isSortable","isSearchable","read","createTypeField","unionTypeName","unshift","manage","templateIds","concat","createInputField","inputProperties","inputTypeName","key","replace","createGraphQLInputField"],"sources":["dynamicZoneField.ts"],"sourcesContent":["import {\n CmsModelFieldToGraphQLPlugin,\n CmsModel,\n CmsModelField,\n CmsModelDynamicZoneField,\n CmsDynamicZoneTemplate,\n ApiEndpoint,\n CmsFieldTypePlugins,\n CmsModelFieldToGraphQLCreateResolver\n} from \"~/types\";\nimport { createReadTypeName, createTypeName } from \"~/utils/createTypeName\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\nimport { createGraphQLInputField } from \"../helpers\";\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${createReadTypeName(model.modelId)}_${createReadTypeName(field.fieldId)}`;\n};\n\nconst getFieldTemplates = (field: CmsModelDynamicZoneField): CmsDynamicZoneTemplate[] => {\n if (!Array.isArray(field.settings?.templates)) {\n return [];\n }\n return field.settings.templates;\n};\n\ninterface CreateTypeDefsForTemplatesParams {\n model: CmsModel;\n field: CmsModelField;\n type: ApiEndpoint;\n typeOfType: \"type\" | \"input\";\n templates: CmsDynamicZoneTemplate[];\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\nconst createTypeDefsForTemplates = ({\n model,\n field,\n type,\n templates,\n typeOfType,\n fieldTypePlugins\n}: CreateTypeDefsForTemplatesParams) => {\n const typeDefs: string[] = [];\n const templateTypes: string[] = [];\n\n templates.forEach(template => {\n const typeName = [\n createTypeName(model.modelId),\n createTypeName(field.fieldId),\n template.gqlTypeName\n ].join(\"_\");\n\n const result = createTypeFromFields({\n typeOfType,\n model,\n type,\n typeNamePrefix: typeName,\n fields: template.fields,\n fieldTypePlugins\n });\n\n if (!result) {\n return;\n }\n\n typeDefs.push(result.typeDefs);\n templateTypes.push(result.fieldType);\n });\n\n return { typeDefs, templateTypes };\n};\n\nconst remapTemplateValue = (value: any, typeName: string) => {\n const templateType = Object.keys(value)[0];\n\n return { ...value[templateType], __typename: `${typeName}_${templateType}` };\n};\n\nconst createResolver: CmsModelFieldToGraphQLCreateResolver<CmsModelDynamicZoneField> = ({\n model,\n field\n}) => {\n return parent => {\n const value = parent[field.fieldId];\n if (!value) {\n return value;\n }\n\n const typeName = `${createTypeName(model.modelId)}_${createTypeName(field.fieldId)}`;\n\n if (field.multipleValues && Array.isArray(value)) {\n return value.map(v => remapTemplateValue(v, typeName));\n }\n\n return remapTemplateValue(value, typeName);\n };\n};\n\nexport const createDynamicZoneField =\n (): CmsModelFieldToGraphQLPlugin<CmsModelDynamicZoneField> => {\n return {\n name: \"cms-model-field-to-graphql-dynamic-zone\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"dynamicZone\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n field,\n type: \"read\",\n typeOfType: \"type\",\n model,\n fieldTypePlugins,\n templates\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${unionTypeName}!]` : unionTypeName\n }`,\n typeDefs: typeDefs.join(\"\\n\")\n };\n },\n createResolver\n },\n manage: {\n createTypeField({ model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n field,\n type: \"manage\",\n typeOfType: \"type\",\n model,\n fieldTypePlugins,\n templates\n });\n\n // Add _templateId\n const templateIds = templateTypes.map(type => {\n return `extend type ${type} {\n _templateId: ID!\n }\n `;\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${unionTypeName}!]` : unionTypeName\n }`,\n typeDefs: typeDefs.concat(templateIds).join(\"\\n\")\n };\n },\n createInputField({ model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n field,\n type: \"manage\",\n typeOfType: \"input\",\n model,\n fieldTypePlugins,\n templates\n });\n\n const typeName = `${createTypeName(model.modelId)}_${createTypeName(\n field.fieldId\n )}`;\n\n const inputProperties = templateTypes.map(inputTypeName => {\n const key = inputTypeName.replace(`${typeName}_`, \"\").replace(\"Input\", \"\");\n return [key, inputTypeName];\n });\n\n /**\n * Generate a field input type, similar to this example:\n *\n * input Article_ContentInput {\n * Hero: Article_Content_HeroInput\n * SimpleText: Article_Content_SimpleTextInput\n * }\n */\n typeDefs.push(`input ${typeName}Input {\n ${inputProperties.map(\n ([key, value]) => `\n ${key}: ${value}\n `\n )} \n }`);\n\n return {\n fields: createGraphQLInputField(field, `${typeName}Input`),\n typeDefs: typeDefs.join(\"\\n\")\n };\n },\n createResolver\n }\n };\n };\n"],"mappings":"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"}
1
+ {"version":3,"names":["createUnionTypeName","model","field","singularApiName","createReadTypeName","fieldId","getFieldTemplates","Array","isArray","settings","templates","createTypeDefsForTemplates","models","type","typeOfType","fieldTypePlugins","typeDefs","templateTypes","forEach","template","typeName","createTypeName","gqlTypeName","join","result","createTypeFromFields","typeNamePrefix","fields","push","fieldType","remapTemplateValue","value","templateType","Object","keys","__typename","createResolver","parent","multipleValues","map","v","createDynamicZoneField","name","isSortable","isSearchable","validateChildFields","params","validate","originalField","getOriginalTemplateFields","templateId","find","t","id","originalFields","read","createTypeField","unionTypeName","unshift","manage","templateIds","concat","createInputField","inputProperties","inputTypeName","key","replace","createGraphQLInputField"],"sources":["dynamicZoneField.ts"],"sourcesContent":["import {\n CmsModelFieldToGraphQLPlugin,\n CmsModel,\n CmsModelField,\n CmsModelDynamicZoneField,\n CmsDynamicZoneTemplate,\n ApiEndpoint,\n CmsFieldTypePlugins,\n CmsModelFieldToGraphQLCreateResolver\n} from \"~/types\";\nimport { createReadTypeName, createTypeName } from \"~/utils/createTypeName\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\nimport { createGraphQLInputField } from \"../helpers\";\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${model.singularApiName}_${createReadTypeName(field.fieldId)}`;\n};\n\nconst getFieldTemplates = (field: CmsModelDynamicZoneField): CmsDynamicZoneTemplate[] => {\n if (!Array.isArray(field.settings?.templates)) {\n return [];\n }\n return field.settings.templates;\n};\n\ninterface CreateTypeDefsForTemplatesParams {\n models: CmsModel[];\n model: CmsModel;\n field: CmsModelField;\n type: ApiEndpoint;\n typeOfType: \"type\" | \"input\";\n templates: CmsDynamicZoneTemplate[];\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\nconst createTypeDefsForTemplates = ({\n models,\n model,\n field,\n type,\n templates,\n typeOfType,\n fieldTypePlugins\n}: CreateTypeDefsForTemplatesParams) => {\n const typeDefs: string[] = [];\n const templateTypes: string[] = [];\n\n templates.forEach(template => {\n const typeName = [\n model.singularApiName,\n createTypeName(field.fieldId),\n template.gqlTypeName\n ].join(\"_\");\n\n const result = createTypeFromFields({\n models,\n typeOfType,\n model,\n type,\n typeNamePrefix: typeName,\n fields: template.fields,\n fieldTypePlugins\n });\n\n if (!result) {\n return;\n }\n\n typeDefs.push(result.typeDefs);\n templateTypes.push(result.fieldType);\n });\n\n return { typeDefs, templateTypes };\n};\n\nconst remapTemplateValue = (value: any, typeName: string) => {\n const templateType = Object.keys(value)[0];\n\n return { ...value[templateType], __typename: `${typeName}_${templateType}` };\n};\n\nconst createResolver: CmsModelFieldToGraphQLCreateResolver<CmsModelDynamicZoneField> = ({\n model,\n field\n}) => {\n return parent => {\n const value = parent[field.fieldId];\n if (!value) {\n return value;\n }\n\n const typeName = `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n\n if (field.multipleValues && Array.isArray(value)) {\n return value.map(v => remapTemplateValue(v, typeName));\n }\n\n return remapTemplateValue(value, typeName);\n };\n};\n\nexport const createDynamicZoneField =\n (): CmsModelFieldToGraphQLPlugin<CmsModelDynamicZoneField> => {\n return {\n name: \"cms-model-field-to-graphql-dynamic-zone\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"dynamicZone\",\n isSortable: false,\n isSearchable: false,\n validateChildFields: params => {\n const { validate, originalField, field } = params;\n\n const getOriginalTemplateFields = (templateId: string) => {\n if (!originalField?.settings?.templates) {\n return [];\n }\n const template = originalField.settings.templates.find(\n t => t.id === templateId\n );\n return template?.fields || [];\n };\n\n for (const template of field.settings.templates) {\n validate({\n fields: template.fields,\n originalFields: getOriginalTemplateFields(template.id)\n });\n }\n },\n read: {\n createTypeField({ models, model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"read\",\n typeOfType: \"type\",\n model,\n fieldTypePlugins,\n templates\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${unionTypeName}!]` : unionTypeName\n }`,\n typeDefs: typeDefs.join(\"\\n\")\n };\n },\n createResolver\n },\n manage: {\n createTypeField({ models, model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n const unionTypeName = createUnionTypeName(model, field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"manage\",\n typeOfType: \"type\",\n model,\n fieldTypePlugins,\n templates\n });\n\n // Add _templateId\n const templateIds = templateTypes.map(type => {\n return `extend type ${type} {\n _templateId: ID!\n }\n `;\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${unionTypeName}!]` : unionTypeName\n }`,\n typeDefs: typeDefs.concat(templateIds).join(\"\\n\")\n };\n },\n createInputField({ models, model, field, fieldTypePlugins }) {\n const templates = getFieldTemplates(field);\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"manage\",\n typeOfType: \"input\",\n model,\n fieldTypePlugins,\n templates\n });\n\n const typeName = `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n\n const inputProperties = templateTypes.map(inputTypeName => {\n const key = inputTypeName.replace(`${typeName}_`, \"\").replace(\"Input\", \"\");\n return [key, inputTypeName];\n });\n\n /**\n * Generate a field input type, similar to this example:\n *\n * input Article_ContentInput {\n * Hero: Article_Content_HeroInput\n * SimpleText: Article_Content_SimpleTextInput\n * }\n */\n typeDefs.push(`input ${typeName}Input {\n ${inputProperties.map(\n ([key, value]) => `\n ${key}: ${value}\n `\n )}\n }`);\n\n return {\n fields: createGraphQLInputField(field, `${typeName}Input`),\n typeDefs: typeDefs.join(\"\\n\")\n };\n },\n createResolver\n }\n };\n };\n"],"mappings":"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"}
@@ -1,43 +1,34 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.createDynamicZoneStorageTransform = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
9
  var _plugins = require("../../plugins");
13
-
14
10
  const convertToStorage = (value, templates) => {
15
11
  // Only one key is allowed in the input object.
16
12
  const inputType = Object.keys(value)[0];
17
13
  const template = templates.find(tpl => tpl.gqlTypeName === inputType);
18
-
19
14
  if (!template) {
20
15
  return undefined;
21
16
  }
22
-
23
17
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, value[inputType]), {}, {
24
18
  _templateId: template.id
25
19
  });
26
20
  };
27
-
28
21
  const convertFromStorage = (value, templates) => {
29
22
  const template = templates.find(tpl => value._templateId === tpl.id);
30
-
31
23
  if (!template) {
32
24
  return undefined;
33
- } // We keep the `_templateId` property, to simplify further processing.
34
-
25
+ }
35
26
 
27
+ // We keep the `_templateId` property, to simplify further processing.
36
28
  return {
37
29
  [template.gqlTypeName]: value
38
30
  };
39
31
  };
40
-
41
32
  const createDynamicZoneStorageTransform = () => {
42
33
  return new _plugins.StorageTransformPlugin({
43
34
  fieldType: "dynamicZone",
@@ -48,13 +39,10 @@ const createDynamicZoneStorageTransform = () => {
48
39
  if (!value) {
49
40
  return null;
50
41
  }
51
-
52
42
  const templates = field.settings.templates;
53
-
54
43
  if (Array.isArray(value) && field.multipleValues) {
55
44
  return value.map(value => convertFromStorage(value, templates)).filter(Boolean);
56
45
  }
57
-
58
46
  return convertFromStorage(value, templates);
59
47
  },
60
48
  toStorage: async ({
@@ -64,16 +52,12 @@ const createDynamicZoneStorageTransform = () => {
64
52
  if (!value) {
65
53
  return value;
66
54
  }
67
-
68
55
  const templates = field.settings.templates;
69
-
70
56
  if (Array.isArray(value) && field.multipleValues) {
71
57
  return value.map(value => convertToStorage(value, templates)).filter(Boolean);
72
58
  }
73
-
74
59
  return convertToStorage(value, templates);
75
60
  }
76
61
  });
77
62
  };
78
-
79
63
  exports.createDynamicZoneStorageTransform = createDynamicZoneStorageTransform;
@@ -1 +1 @@
1
- {"version":3,"names":["convertToStorage","value","templates","inputType","Object","keys","template","find","tpl","gqlTypeName","undefined","_templateId","id","convertFromStorage","createDynamicZoneStorageTransform","StorageTransformPlugin","fieldType","fromStorage","field","settings","Array","isArray","multipleValues","map","filter","Boolean","toStorage"],"sources":["dynamicZoneStorage.ts"],"sourcesContent":["import { CmsDynamicZoneTemplate, CmsModelDynamicZoneField } from \"~/types\";\nimport { StorageTransformPlugin } from \"~/plugins\";\n\nconst convertToStorage = (value: any, templates: CmsDynamicZoneTemplate[]) => {\n // Only one key is allowed in the input object.\n const inputType = Object.keys(value)[0];\n const template = templates.find(tpl => tpl.gqlTypeName === inputType);\n if (!template) {\n return undefined;\n }\n\n return { ...value[inputType], _templateId: template.id };\n};\n\ninterface TemplateValueFromStorage {\n _templateId: string;\n [key: string]: any;\n}\n\nconst convertFromStorage = (\n value: TemplateValueFromStorage,\n templates: CmsDynamicZoneTemplate[]\n) => {\n const template = templates.find(tpl => value._templateId === tpl.id);\n if (!template) {\n return undefined;\n }\n\n // We keep the `_templateId` property, to simplify further processing.\n return { [template.gqlTypeName]: value };\n};\n\nexport const createDynamicZoneStorageTransform = () => {\n return new StorageTransformPlugin<any, any, CmsModelDynamicZoneField>({\n fieldType: \"dynamicZone\",\n fromStorage: async ({ value, field }) => {\n if (!value) {\n return null;\n }\n\n const templates = field.settings.templates;\n\n if (Array.isArray(value) && field.multipleValues) {\n return value.map(value => convertFromStorage(value, templates)).filter(Boolean);\n }\n\n return convertFromStorage(value, templates);\n },\n toStorage: async ({ value, field }) => {\n if (!value) {\n return value;\n }\n\n const templates = field.settings.templates;\n\n if (Array.isArray(value) && field.multipleValues) {\n return value.map(value => convertToStorage(value, templates)).filter(Boolean);\n }\n\n return convertToStorage(value, templates);\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AACA;;AAEA,MAAMA,gBAAgB,GAAG,CAACC,KAAD,EAAaC,SAAb,KAAqD;EAC1E;EACA,MAAMC,SAAS,GAAGC,MAAM,CAACC,IAAP,CAAYJ,KAAZ,EAAmB,CAAnB,CAAlB;EACA,MAAMK,QAAQ,GAAGJ,SAAS,CAACK,IAAV,CAAeC,GAAG,IAAIA,GAAG,CAACC,WAAJ,KAAoBN,SAA1C,CAAjB;;EACA,IAAI,CAACG,QAAL,EAAe;IACX,OAAOI,SAAP;EACH;;EAED,mEAAYT,KAAK,CAACE,SAAD,CAAjB;IAA8BQ,WAAW,EAAEL,QAAQ,CAACM;EAApD;AACH,CATD;;AAgBA,MAAMC,kBAAkB,GAAG,CACvBZ,KADuB,EAEvBC,SAFuB,KAGtB;EACD,MAAMI,QAAQ,GAAGJ,SAAS,CAACK,IAAV,CAAeC,GAAG,IAAIP,KAAK,CAACU,WAAN,KAAsBH,GAAG,CAACI,EAAhD,CAAjB;;EACA,IAAI,CAACN,QAAL,EAAe;IACX,OAAOI,SAAP;EACH,CAJA,CAMD;;;EACA,OAAO;IAAE,CAACJ,QAAQ,CAACG,WAAV,GAAwBR;EAA1B,CAAP;AACH,CAXD;;AAaO,MAAMa,iCAAiC,GAAG,MAAM;EACnD,OAAO,IAAIC,+BAAJ,CAA+D;IAClEC,SAAS,EAAE,aADuD;IAElEC,WAAW,EAAE,OAAO;MAAEhB,KAAF;MAASiB;IAAT,CAAP,KAA4B;MACrC,IAAI,CAACjB,KAAL,EAAY;QACR,OAAO,IAAP;MACH;;MAED,MAAMC,SAAS,GAAGgB,KAAK,CAACC,QAAN,CAAejB,SAAjC;;MAEA,IAAIkB,KAAK,CAACC,OAAN,CAAcpB,KAAd,KAAwBiB,KAAK,CAACI,cAAlC,EAAkD;QAC9C,OAAOrB,KAAK,CAACsB,GAAN,CAAUtB,KAAK,IAAIY,kBAAkB,CAACZ,KAAD,EAAQC,SAAR,CAArC,EAAyDsB,MAAzD,CAAgEC,OAAhE,CAAP;MACH;;MAED,OAAOZ,kBAAkB,CAACZ,KAAD,EAAQC,SAAR,CAAzB;IACH,CAdiE;IAelEwB,SAAS,EAAE,OAAO;MAAEzB,KAAF;MAASiB;IAAT,CAAP,KAA4B;MACnC,IAAI,CAACjB,KAAL,EAAY;QACR,OAAOA,KAAP;MACH;;MAED,MAAMC,SAAS,GAAGgB,KAAK,CAACC,QAAN,CAAejB,SAAjC;;MAEA,IAAIkB,KAAK,CAACC,OAAN,CAAcpB,KAAd,KAAwBiB,KAAK,CAACI,cAAlC,EAAkD;QAC9C,OAAOrB,KAAK,CAACsB,GAAN,CAAUtB,KAAK,IAAID,gBAAgB,CAACC,KAAD,EAAQC,SAAR,CAAnC,EAAuDsB,MAAvD,CAA8DC,OAA9D,CAAP;MACH;;MAED,OAAOzB,gBAAgB,CAACC,KAAD,EAAQC,SAAR,CAAvB;IACH;EA3BiE,CAA/D,CAAP;AA6BH,CA9BM"}
1
+ {"version":3,"names":["convertToStorage","value","templates","inputType","Object","keys","template","find","tpl","gqlTypeName","undefined","_templateId","id","convertFromStorage","createDynamicZoneStorageTransform","StorageTransformPlugin","fieldType","fromStorage","field","settings","Array","isArray","multipleValues","map","filter","Boolean","toStorage"],"sources":["dynamicZoneStorage.ts"],"sourcesContent":["import { CmsDynamicZoneTemplate, CmsModelDynamicZoneField } from \"~/types\";\nimport { StorageTransformPlugin } from \"~/plugins\";\n\nconst convertToStorage = (value: any, templates: CmsDynamicZoneTemplate[]) => {\n // Only one key is allowed in the input object.\n const inputType = Object.keys(value)[0];\n const template = templates.find(tpl => tpl.gqlTypeName === inputType);\n if (!template) {\n return undefined;\n }\n\n return { ...value[inputType], _templateId: template.id };\n};\n\ninterface TemplateValueFromStorage {\n _templateId: string;\n [key: string]: any;\n}\n\nconst convertFromStorage = (\n value: TemplateValueFromStorage,\n templates: CmsDynamicZoneTemplate[]\n) => {\n const template = templates.find(tpl => value._templateId === tpl.id);\n if (!template) {\n return undefined;\n }\n\n // We keep the `_templateId` property, to simplify further processing.\n return { [template.gqlTypeName]: value };\n};\n\nexport const createDynamicZoneStorageTransform = () => {\n return new StorageTransformPlugin<any, any, CmsModelDynamicZoneField>({\n fieldType: \"dynamicZone\",\n fromStorage: async ({ value, field }) => {\n if (!value) {\n return null;\n }\n\n const templates = field.settings.templates;\n\n if (Array.isArray(value) && field.multipleValues) {\n return value.map(value => convertFromStorage(value, templates)).filter(Boolean);\n }\n\n return convertFromStorage(value, templates);\n },\n toStorage: async ({ value, field }) => {\n if (!value) {\n return value;\n }\n\n const templates = field.settings.templates;\n\n if (Array.isArray(value) && field.multipleValues) {\n return value.map(value => convertToStorage(value, templates)).filter(Boolean);\n }\n\n return convertToStorage(value, templates);\n }\n });\n};\n"],"mappings":";;;;;;;;AACA;AAEA,MAAMA,gBAAgB,GAAG,CAACC,KAAU,EAAEC,SAAmC,KAAK;EAC1E;EACA,MAAMC,SAAS,GAAGC,MAAM,CAACC,IAAI,CAACJ,KAAK,CAAC,CAAC,CAAC,CAAC;EACvC,MAAMK,QAAQ,GAAGJ,SAAS,CAACK,IAAI,CAACC,GAAG,IAAIA,GAAG,CAACC,WAAW,KAAKN,SAAS,CAAC;EACrE,IAAI,CAACG,QAAQ,EAAE;IACX,OAAOI,SAAS;EACpB;EAEA,mEAAYT,KAAK,CAACE,SAAS,CAAC;IAAEQ,WAAW,EAAEL,QAAQ,CAACM;EAAE;AAC1D,CAAC;AAOD,MAAMC,kBAAkB,GAAG,CACvBZ,KAA+B,EAC/BC,SAAmC,KAClC;EACD,MAAMI,QAAQ,GAAGJ,SAAS,CAACK,IAAI,CAACC,GAAG,IAAIP,KAAK,CAACU,WAAW,KAAKH,GAAG,CAACI,EAAE,CAAC;EACpE,IAAI,CAACN,QAAQ,EAAE;IACX,OAAOI,SAAS;EACpB;;EAEA;EACA,OAAO;IAAE,CAACJ,QAAQ,CAACG,WAAW,GAAGR;EAAM,CAAC;AAC5C,CAAC;AAEM,MAAMa,iCAAiC,GAAG,MAAM;EACnD,OAAO,IAAIC,+BAAsB,CAAqC;IAClEC,SAAS,EAAE,aAAa;IACxBC,WAAW,EAAE,OAAO;MAAEhB,KAAK;MAAEiB;IAAM,CAAC,KAAK;MACrC,IAAI,CAACjB,KAAK,EAAE;QACR,OAAO,IAAI;MACf;MAEA,MAAMC,SAAS,GAAGgB,KAAK,CAACC,QAAQ,CAACjB,SAAS;MAE1C,IAAIkB,KAAK,CAACC,OAAO,CAACpB,KAAK,CAAC,IAAIiB,KAAK,CAACI,cAAc,EAAE;QAC9C,OAAOrB,KAAK,CAACsB,GAAG,CAACtB,KAAK,IAAIY,kBAAkB,CAACZ,KAAK,EAAEC,SAAS,CAAC,CAAC,CAACsB,MAAM,CAACC,OAAO,CAAC;MACnF;MAEA,OAAOZ,kBAAkB,CAACZ,KAAK,EAAEC,SAAS,CAAC;IAC/C,CAAC;IACDwB,SAAS,EAAE,OAAO;MAAEzB,KAAK;MAAEiB;IAAM,CAAC,KAAK;MACnC,IAAI,CAACjB,KAAK,EAAE;QACR,OAAOA,KAAK;MAChB;MAEA,MAAMC,SAAS,GAAGgB,KAAK,CAACC,QAAQ,CAACjB,SAAS;MAE1C,IAAIkB,KAAK,CAACC,OAAO,CAACpB,KAAK,CAAC,IAAIiB,KAAK,CAACI,cAAc,EAAE;QAC9C,OAAOrB,KAAK,CAACsB,GAAG,CAACtB,KAAK,IAAID,gBAAgB,CAACC,KAAK,EAAEC,SAAS,CAAC,CAAC,CAACsB,MAAM,CAACC,OAAO,CAAC;MACjF;MAEA,OAAOzB,gBAAgB,CAACC,KAAK,EAAEC,SAAS,CAAC;IAC7C;EACJ,CAAC,CAAC;AACN,CAAC;AAAC"}
@@ -15,7 +15,5 @@ Object.defineProperty(exports, "createDynamicZoneStorageTransform", {
15
15
  return _dynamicZoneStorage.createDynamicZoneStorageTransform;
16
16
  }
17
17
  });
18
-
19
18
  var _dynamicZoneField = require("./dynamicZoneField");
20
-
21
19
  var _dynamicZoneStorage = require("./dynamicZoneStorage");
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { createDynamicZoneField } from \"./dynamicZoneField\";\nexport { createDynamicZoneStorageTransform } from \"./dynamicZoneStorage\";\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AACA"}
1
+ {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export { createDynamicZoneField } from \"./dynamicZoneField\";\nexport { createDynamicZoneStorageTransform } from \"./dynamicZoneStorage\";\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;AACA"}
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createFileField = void 0;
7
-
8
7
  var _helpers = require("./helpers");
9
-
10
8
  const createFileField = () => {
11
9
  return {
12
10
  name: "cms-model-field-to-graphql-file",
@@ -21,10 +19,8 @@ const createFileField = () => {
21
19
  if (field.multipleValues) {
22
20
  return `${field.fieldId}: [String]`;
23
21
  }
24
-
25
22
  return `${field.fieldId}: String`;
26
23
  }
27
-
28
24
  },
29
25
  manage: {
30
26
  createTypeField({
@@ -33,18 +29,14 @@ const createFileField = () => {
33
29
  if (field.multipleValues) {
34
30
  return field.fieldId + ": [String]";
35
31
  }
36
-
37
32
  return field.fieldId + ": String";
38
33
  },
39
-
40
34
  createInputField({
41
35
  field
42
36
  }) {
43
37
  return (0, _helpers.createGraphQLInputField)(field, "String");
44
38
  }
45
-
46
39
  }
47
40
  };
48
41
  };
49
-
50
42
  exports.createFileField = createFileField;
@@ -1 +1 @@
1
- {"version":3,"names":["createFileField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","field","multipleValues","fieldId","manage","createInputField","createGraphQLInputField"],"sources":["file.ts"],"sourcesContent":["import { CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\nexport const createFileField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-file\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"file\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n\n return `${field.fieldId}: String`;\n }\n },\n manage: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return field.fieldId + \": [String]\";\n }\n return field.fieldId + \": String\";\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"String\");\n }\n }\n };\n};\n"],"mappings":";;;;;;;AACA;;AAEO,MAAMA,eAAe,GAAG,MAAoC;EAC/D,OAAO;IACHC,IAAI,EAAE,iCADH;IAEHC,IAAI,EAAE,4BAFH;IAGHC,SAAS,EAAE,MAHR;IAIHC,UAAU,EAAE,KAJT;IAKHC,YAAY,EAAE,KALX;IAMHC,IAAI,EAAE;MACFC,eAAe,CAAC;QAAEC;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACC,cAAV,EAA0B;UACtB,OAAQ,GAAED,KAAK,CAACE,OAAQ,YAAxB;QACH;;QAED,OAAQ,GAAEF,KAAK,CAACE,OAAQ,UAAxB;MACH;;IAPC,CANH;IAeHC,MAAM,EAAE;MACJJ,eAAe,CAAC;QAAEC;MAAF,CAAD,EAAY;QACvB,IAAIA,KAAK,CAACC,cAAV,EAA0B;UACtB,OAAOD,KAAK,CAACE,OAAN,GAAgB,YAAvB;QACH;;QACD,OAAOF,KAAK,CAACE,OAAN,GAAgB,UAAvB;MACH,CANG;;MAOJE,gBAAgB,CAAC;QAAEJ;MAAF,CAAD,EAAY;QACxB,OAAO,IAAAK,gCAAA,EAAwBL,KAAxB,EAA+B,QAA/B,CAAP;MACH;;IATG;EAfL,CAAP;AA2BH,CA5BM"}
1
+ {"version":3,"names":["createFileField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","field","multipleValues","fieldId","manage","createInputField","createGraphQLInputField"],"sources":["file.ts"],"sourcesContent":["import { CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\nexport const createFileField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-file\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"file\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n\n return `${field.fieldId}: String`;\n }\n },\n manage: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return field.fieldId + \": [String]\";\n }\n return field.fieldId + \": String\";\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"String\");\n }\n }\n };\n};\n"],"mappings":";;;;;;AACA;AAEO,MAAMA,eAAe,GAAG,MAAoC;EAC/D,OAAO;IACHC,IAAI,EAAE,iCAAiC;IACvCC,IAAI,EAAE,4BAA4B;IAClCC,SAAS,EAAE,MAAM;IACjBC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE,KAAK;IACnBC,IAAI,EAAE;MACFC,eAAe,CAAC;QAAEC;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACC,cAAc,EAAE;UACtB,OAAQ,GAAED,KAAK,CAACE,OAAQ,YAAW;QACvC;QAEA,OAAQ,GAAEF,KAAK,CAACE,OAAQ,UAAS;MACrC;IACJ,CAAC;IACDC,MAAM,EAAE;MACJJ,eAAe,CAAC;QAAEC;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACC,cAAc,EAAE;UACtB,OAAOD,KAAK,CAACE,OAAO,GAAG,YAAY;QACvC;QACA,OAAOF,KAAK,CAACE,OAAO,GAAG,UAAU;MACrC,CAAC;MACDE,gBAAgB,CAAC;QAAEJ;MAAM,CAAC,EAAE;QACxB,OAAO,IAAAK,gCAAuB,EAACL,KAAK,EAAE,QAAQ,CAAC;MACnD;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}