@webiny/api-headless-cms 0.0.0-unstable.40876133bb → 0.0.0-unstable.496cf268ac

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 (371) hide show
  1. package/context.d.ts +5 -2
  2. package/context.js +53 -19
  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 +19 -29
  14. package/crud/contentEntry/markLockedFields.js.map +1 -1
  15. package/crud/contentEntry/referenceFieldsMapping.js +12 -64
  16. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  17. package/crud/contentEntry/searchableFields.d.ts +9 -0
  18. package/crud/contentEntry/searchableFields.js +72 -0
  19. package/crud/contentEntry/searchableFields.js.map +1 -0
  20. package/crud/contentEntry.crud.d.ts +2 -1
  21. package/crud/contentEntry.crud.js +140 -193
  22. package/crud/contentEntry.crud.js.map +1 -1
  23. package/crud/contentModel/afterCreate.js +0 -2
  24. package/crud/contentModel/afterCreate.js.map +1 -1
  25. package/crud/contentModel/afterCreateFrom.js +0 -2
  26. package/crud/contentModel/afterCreateFrom.js.map +1 -1
  27. package/crud/contentModel/afterDelete.js +0 -2
  28. package/crud/contentModel/afterDelete.js.map +1 -1
  29. package/crud/contentModel/afterUpdate.js +0 -2
  30. package/crud/contentModel/afterUpdate.js.map +1 -1
  31. package/crud/contentModel/beforeCreate.d.ts +2 -3
  32. package/crud/contentModel/beforeCreate.js +11 -36
  33. package/crud/contentModel/beforeCreate.js.map +1 -1
  34. package/crud/contentModel/beforeDelete.js +0 -10
  35. package/crud/contentModel/beforeDelete.js.map +1 -1
  36. package/crud/contentModel/beforeUpdate.d.ts +2 -4
  37. package/crud/contentModel/beforeUpdate.js +6 -7
  38. package/crud/contentModel/beforeUpdate.js.map +1 -1
  39. package/crud/contentModel/compatibility/modelApiName.d.ts +3 -0
  40. package/crud/contentModel/compatibility/modelApiName.js +24 -0
  41. package/crud/contentModel/compatibility/modelApiName.js.map +1 -0
  42. package/crud/contentModel/contentModelManagerFactory.js +0 -7
  43. package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
  44. package/crud/contentModel/createFieldStorageId.js +4 -3
  45. package/crud/contentModel/createFieldStorageId.js.map +1 -1
  46. package/crud/contentModel/defaultFields.d.ts +5 -0
  47. package/crud/contentModel/defaultFields.js +58 -0
  48. package/crud/contentModel/defaultFields.js.map +1 -0
  49. package/crud/contentModel/fields/descriptionField.d.ts +2 -0
  50. package/crud/contentModel/fields/descriptionField.js +42 -0
  51. package/crud/contentModel/fields/descriptionField.js.map +1 -0
  52. package/crud/contentModel/fields/imageField.d.ts +2 -0
  53. package/crud/contentModel/fields/imageField.js +46 -0
  54. package/crud/contentModel/fields/imageField.js.map +1 -0
  55. package/crud/contentModel/fields/titleField.d.ts +2 -0
  56. package/crud/contentModel/fields/titleField.js +58 -0
  57. package/crud/contentModel/fields/titleField.js.map +1 -0
  58. package/crud/contentModel/models.js +12 -0
  59. package/crud/contentModel/models.js.map +1 -1
  60. package/crud/contentModel/validateLayout.js +0 -8
  61. package/crud/contentModel/validateLayout.js.map +1 -1
  62. package/crud/contentModel/validateModel.d.ts +4 -4
  63. package/crud/contentModel/validateModel.js +6 -11
  64. package/crud/contentModel/validateModel.js.map +1 -1
  65. package/crud/contentModel/validateModelFields.d.ts +4 -4
  66. package/crud/contentModel/validateModelFields.js +131 -147
  67. package/crud/contentModel/validateModelFields.js.map +1 -1
  68. package/crud/contentModel/validation.d.ts +519 -0
  69. package/crud/contentModel/validation.js +145 -0
  70. package/crud/contentModel/validation.js.map +1 -0
  71. package/crud/contentModel.crud.js +245 -272
  72. package/crud/contentModel.crud.js.map +1 -1
  73. package/crud/contentModelGroup/beforeCreate.js +0 -12
  74. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  75. package/crud/contentModelGroup/beforeDelete.js +0 -8
  76. package/crud/contentModelGroup/beforeDelete.js.map +1 -1
  77. package/crud/contentModelGroup/beforeUpdate.js +0 -5
  78. package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
  79. package/crud/contentModelGroup/validation.d.ts +30 -0
  80. package/crud/contentModelGroup/validation.js +34 -0
  81. package/crud/contentModelGroup/validation.js.map +1 -0
  82. package/crud/contentModelGroup.crud.js +53 -95
  83. package/crud/contentModelGroup.crud.js.map +1 -1
  84. package/crud/settings.crud.js +0 -12
  85. package/crud/settings.crud.js.map +1 -1
  86. package/crud/system.crud.js +1 -96
  87. package/crud/system.crud.js.map +1 -1
  88. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +0 -13
  89. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
  90. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  91. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
  92. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  93. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +0 -53
  94. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
  95. package/fieldConverters/index.d.ts +2 -1
  96. package/fieldConverters/index.js +2 -5
  97. package/fieldConverters/index.js.map +1 -1
  98. package/graphql/buildSchemaPlugins.d.ts +8 -3
  99. package/graphql/buildSchemaPlugins.js +6 -14
  100. package/graphql/buildSchemaPlugins.js.map +1 -1
  101. package/graphql/createExecutableSchema.d.ts +7 -0
  102. package/graphql/createExecutableSchema.js +29 -0
  103. package/graphql/createExecutableSchema.js.map +1 -0
  104. package/graphql/generateSchema.d.ts +8 -0
  105. package/graphql/generateSchema.js +31 -0
  106. package/graphql/generateSchema.js.map +1 -0
  107. package/graphql/graphQLHandlerFactory.js +95 -74
  108. package/graphql/graphQLHandlerFactory.js.map +1 -1
  109. package/graphql/index.d.ts +1 -3
  110. package/graphql/index.js +2 -46
  111. package/graphql/index.js.map +1 -1
  112. package/graphql/schema/baseContentSchema.d.ts +6 -2
  113. package/graphql/schema/baseContentSchema.js +10 -20
  114. package/graphql/schema/baseContentSchema.js.map +1 -1
  115. package/graphql/schema/baseSchema.d.ts +3 -0
  116. package/graphql/schema/baseSchema.js +53 -0
  117. package/graphql/schema/baseSchema.js.map +1 -0
  118. package/graphql/schema/contentEntries.d.ts +6 -2
  119. package/graphql/schema/contentEntries.js +118 -107
  120. package/graphql/schema/contentEntries.js.map +1 -1
  121. package/graphql/schema/contentModelGroups.d.ts +6 -2
  122. package/graphql/schema/contentModelGroups.js +10 -23
  123. package/graphql/schema/contentModelGroups.js.map +1 -1
  124. package/graphql/schema/contentModels.d.ts +6 -2
  125. package/graphql/schema/contentModels.js +62 -26
  126. package/graphql/schema/contentModels.js.map +1 -1
  127. package/graphql/schema/createFieldResolvers.d.ts +1 -1
  128. package/graphql/schema/createFieldResolvers.js +20 -27
  129. package/graphql/schema/createFieldResolvers.js.map +1 -1
  130. package/graphql/schema/createManageResolvers.d.ts +1 -1
  131. package/graphql/schema/createManageResolvers.js +33 -43
  132. package/graphql/schema/createManageResolvers.js.map +1 -1
  133. package/graphql/schema/createManageSDL.d.ts +3 -0
  134. package/graphql/schema/createManageSDL.js +64 -67
  135. package/graphql/schema/createManageSDL.js.map +1 -1
  136. package/graphql/schema/createPreviewResolvers.js +3 -17
  137. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  138. package/graphql/schema/createReadResolvers.js +8 -17
  139. package/graphql/schema/createReadResolvers.js.map +1 -1
  140. package/graphql/schema/createReadSDL.d.ts +3 -0
  141. package/graphql/schema/createReadSDL.js +33 -35
  142. package/graphql/schema/createReadSDL.js.map +1 -1
  143. package/graphql/schema/resolvers/commonFieldResolvers.d.ts +3 -2
  144. package/graphql/schema/resolvers/commonFieldResolvers.js +2 -3
  145. package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
  146. package/graphql/schema/resolvers/manage/resolveCreate.js +0 -3
  147. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  148. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +0 -3
  149. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  150. package/graphql/schema/resolvers/manage/resolveDelete.js +0 -6
  151. package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
  152. package/graphql/schema/resolvers/manage/resolveGet.js +0 -16
  153. package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
  154. package/graphql/schema/resolvers/manage/resolveGetByIds.js +0 -3
  155. package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
  156. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +0 -3
  157. package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
  158. package/graphql/schema/resolvers/manage/resolveList.js +0 -3
  159. package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
  160. package/graphql/schema/resolvers/manage/resolvePublish.js +0 -3
  161. package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
  162. package/graphql/schema/resolvers/manage/resolveRepublish.js +0 -3
  163. package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
  164. package/graphql/schema/resolvers/manage/resolveUnpublish.js +0 -3
  165. package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
  166. package/graphql/schema/resolvers/manage/resolveUpdate.js +0 -3
  167. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  168. package/graphql/schema/resolvers/preview/resolveGet.js +0 -8
  169. package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
  170. package/graphql/schema/resolvers/preview/resolveList.js +0 -3
  171. package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
  172. package/graphql/schema/resolvers/read/resolveGet.js +0 -8
  173. package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
  174. package/graphql/schema/resolvers/read/resolveList.js +0 -3
  175. package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
  176. package/graphql/schema/schemaPlugins.d.ts +8 -3
  177. package/graphql/schema/schemaPlugins.js +64 -66
  178. package/graphql/schema/schemaPlugins.js.map +1 -1
  179. package/graphql/system.js +55 -87
  180. package/graphql/system.js.map +1 -1
  181. package/graphqlFields/boolean.js +0 -12
  182. package/graphqlFields/boolean.js.map +1 -1
  183. package/graphqlFields/datetime.js +0 -17
  184. package/graphqlFields/datetime.js.map +1 -1
  185. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
  186. package/graphqlFields/dynamicZone/dynamicZoneField.js +216 -0
  187. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
  188. package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +3 -0
  189. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +63 -0
  190. package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -0
  191. package/graphqlFields/dynamicZone/index.d.ts +2 -0
  192. package/graphqlFields/dynamicZone/index.js +19 -0
  193. package/graphqlFields/dynamicZone/index.js.map +1 -0
  194. package/graphqlFields/file.js +0 -8
  195. package/graphqlFields/file.js.map +1 -1
  196. package/graphqlFields/helpers.js +0 -10
  197. package/graphqlFields/helpers.js.map +1 -1
  198. package/graphqlFields/index.d.ts +1 -1
  199. package/graphqlFields/index.js +2 -12
  200. package/graphqlFields/index.js.map +1 -1
  201. package/graphqlFields/longText.js +0 -10
  202. package/graphqlFields/longText.js.map +1 -1
  203. package/graphqlFields/number.js +4 -12
  204. package/graphqlFields/number.js.map +1 -1
  205. package/graphqlFields/object.js +118 -98
  206. package/graphqlFields/object.js.map +1 -1
  207. package/graphqlFields/ref.js +86 -106
  208. package/graphqlFields/ref.js.map +1 -1
  209. package/graphqlFields/richText.js +0 -9
  210. package/graphqlFields/richText.js.map +1 -1
  211. package/graphqlFields/text.js +0 -11
  212. package/graphqlFields/text.js.map +1 -1
  213. package/index.d.ts +3 -3
  214. package/index.js +3 -27
  215. package/index.js.map +1 -1
  216. package/modelManager/DefaultCmsModelManager.js +0 -16
  217. package/modelManager/DefaultCmsModelManager.js.map +1 -1
  218. package/modelManager/index.js +0 -4
  219. package/modelManager/index.js.map +1 -1
  220. package/package.json +27 -28
  221. package/parameters/context.js +0 -4
  222. package/parameters/context.js.map +1 -1
  223. package/parameters/header.js +0 -11
  224. package/parameters/header.js.map +1 -1
  225. package/parameters/index.js +0 -8
  226. package/parameters/index.js.map +1 -1
  227. package/parameters/manual.js +1 -8
  228. package/parameters/manual.js.map +1 -1
  229. package/parameters/path.js +0 -11
  230. package/parameters/path.js.map +1 -1
  231. package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
  232. package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
  233. package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
  234. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
  235. package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
  236. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
  237. package/plugins/CmsGroupPlugin.js +0 -8
  238. package/plugins/CmsGroupPlugin.js.map +1 -1
  239. package/plugins/CmsModelFieldConverterPlugin.d.ts +2 -2
  240. package/plugins/CmsModelFieldConverterPlugin.js +0 -5
  241. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  242. package/plugins/CmsModelPlugin.d.ts +11 -1
  243. package/plugins/CmsModelPlugin.js +15 -40
  244. package/plugins/CmsModelPlugin.js.map +1 -1
  245. package/plugins/CmsParametersPlugin.js +0 -7
  246. package/plugins/CmsParametersPlugin.js.map +1 -1
  247. package/plugins/StorageTransformPlugin.d.ts +11 -11
  248. package/plugins/StorageTransformPlugin.js +0 -9
  249. package/plugins/StorageTransformPlugin.js.map +1 -1
  250. package/plugins/index.d.ts +2 -0
  251. package/plugins/index.js +22 -10
  252. package/plugins/index.js.map +1 -1
  253. package/storage/default.js +0 -3
  254. package/storage/default.js.map +1 -1
  255. package/storage/object.js +4 -20
  256. package/storage/object.js.map +1 -1
  257. package/types.d.ts +315 -77
  258. package/types.js +63 -70
  259. package/types.js.map +1 -1
  260. package/utils/access.js +11 -25
  261. package/utils/access.js.map +1 -1
  262. package/utils/converters/Converter.js +0 -13
  263. package/utils/converters/Converter.js.map +1 -1
  264. package/utils/converters/ConverterCollection.js +14 -34
  265. package/utils/converters/ConverterCollection.js.map +1 -1
  266. package/utils/converters/valueKeyStorageConverter.js +2 -27
  267. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  268. package/utils/createTypeFromFields.d.ts +16 -0
  269. package/utils/createTypeFromFields.js +67 -0
  270. package/utils/createTypeFromFields.js.map +1 -0
  271. package/utils/createTypeName.js +2 -9
  272. package/utils/createTypeName.js.map +1 -1
  273. package/utils/entryStorage.js +22 -35
  274. package/utils/entryStorage.js.map +1 -1
  275. package/utils/filterAsync.js +0 -5
  276. package/utils/filterAsync.js.map +1 -1
  277. package/utils/getBaseFieldType.d.ts +4 -0
  278. package/utils/getBaseFieldType.js +10 -0
  279. package/utils/getBaseFieldType.js.map +1 -0
  280. package/utils/getEntryDescription.d.ts +2 -0
  281. package/utils/getEntryDescription.js +17 -0
  282. package/utils/getEntryDescription.js.map +1 -0
  283. package/utils/getEntryImage.d.ts +2 -0
  284. package/utils/getEntryImage.js +17 -0
  285. package/utils/getEntryImage.js.map +1 -0
  286. package/utils/getEntryTitle.js +0 -9
  287. package/utils/getEntryTitle.js.map +1 -1
  288. package/utils/getSchemaFromFieldPlugins.d.ts +4 -7
  289. package/utils/getSchemaFromFieldPlugins.js +23 -19
  290. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  291. package/utils/ownership.d.ts +3 -3
  292. package/utils/ownership.js +0 -8
  293. package/utils/ownership.js.map +1 -1
  294. package/utils/permissions.js +8 -23
  295. package/utils/permissions.js.map +1 -1
  296. package/utils/removeNullValues.d.ts +1 -0
  297. package/utils/removeNullValues.js +17 -0
  298. package/utils/removeNullValues.js.map +1 -0
  299. package/utils/removeUndefinedValues.d.ts +1 -0
  300. package/utils/removeUndefinedValues.js +17 -0
  301. package/utils/removeUndefinedValues.js.map +1 -0
  302. package/utils/renderFields.d.ts +2 -1
  303. package/utils/renderFields.js +10 -10
  304. package/utils/renderFields.js.map +1 -1
  305. package/utils/renderGetFilterFields.js +6 -14
  306. package/utils/renderGetFilterFields.js.map +1 -1
  307. package/utils/renderInputFields.d.ts +2 -1
  308. package/utils/renderInputFields.js +6 -9
  309. package/utils/renderInputFields.js.map +1 -1
  310. package/utils/renderListFilterFields.js +4 -10
  311. package/utils/renderListFilterFields.js.map +1 -1
  312. package/utils/renderSortEnum.d.ts +7 -4
  313. package/utils/renderSortEnum.js +21 -11
  314. package/utils/renderSortEnum.js.map +1 -1
  315. package/utils/toSlug.js +0 -4
  316. package/utils/toSlug.js.map +1 -1
  317. package/validators/dateGte.js +0 -7
  318. package/validators/dateGte.js.map +1 -1
  319. package/validators/dateLte.js +0 -7
  320. package/validators/dateLte.js.map +1 -1
  321. package/validators/dynamicZone.d.ts +2 -0
  322. package/validators/dynamicZone.js +20 -0
  323. package/validators/dynamicZone.js.map +1 -0
  324. package/validators/gte.js +0 -8
  325. package/validators/gte.js.map +1 -1
  326. package/validators/in.js +0 -8
  327. package/validators/in.js.map +1 -1
  328. package/validators/index.js +2 -16
  329. package/validators/index.js.map +1 -1
  330. package/validators/lte.js +0 -8
  331. package/validators/lte.js.map +1 -1
  332. package/validators/maxLength.js +0 -8
  333. package/validators/maxLength.js.map +1 -1
  334. package/validators/minLength.js +0 -8
  335. package/validators/minLength.js.map +1 -1
  336. package/validators/pattern.js +0 -9
  337. package/validators/pattern.js.map +1 -1
  338. package/validators/patternPlugins/email.js +0 -2
  339. package/validators/patternPlugins/email.js.map +1 -1
  340. package/validators/patternPlugins/index.js +0 -8
  341. package/validators/patternPlugins/index.js.map +1 -1
  342. package/validators/patternPlugins/lowerCase.js +0 -2
  343. package/validators/patternPlugins/lowerCase.js.map +1 -1
  344. package/validators/patternPlugins/lowerCaseSpace.js +0 -2
  345. package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
  346. package/validators/patternPlugins/upperCase.js +0 -2
  347. package/validators/patternPlugins/upperCase.js.map +1 -1
  348. package/validators/patternPlugins/upperCaseSpace.js +0 -2
  349. package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
  350. package/validators/patternPlugins/url.js +0 -2
  351. package/validators/patternPlugins/url.js.map +1 -1
  352. package/validators/required.js +0 -5
  353. package/validators/required.js.map +1 -1
  354. package/validators/timeGte.js +0 -8
  355. package/validators/timeGte.js.map +1 -1
  356. package/validators/timeLte.js +0 -8
  357. package/validators/timeLte.js.map +1 -1
  358. package/validators/unique.js +0 -7
  359. package/validators/unique.js.map +1 -1
  360. package/crud/index.d.ts +0 -6
  361. package/crud/index.js +0 -85
  362. package/crud/index.js.map +0 -1
  363. package/graphql/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -7
  364. package/graphql/schema/resolvers/manage/resolveRequestChanges.js +0 -21
  365. package/graphql/schema/resolvers/manage/resolveRequestChanges.js.map +0 -1
  366. package/graphql/schema/resolvers/manage/resolveRequestReview.d.ts +0 -7
  367. package/graphql/schema/resolvers/manage/resolveRequestReview.js +0 -21
  368. package/graphql/schema/resolvers/manage/resolveRequestReview.js.map +0 -1
  369. package/utils/filterModelFields.d.ts +0 -16
  370. package/utils/filterModelFields.js +0 -77
  371. 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"}
@@ -0,0 +1,2 @@
1
+ import { CmsModelFieldToGraphQLPlugin, CmsModelDynamicZoneField } from "../../types";
2
+ export declare const createDynamicZoneField: () => CmsModelFieldToGraphQLPlugin<CmsModelDynamicZoneField>;
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createDynamicZoneField = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _createTypeName = require("../../utils/createTypeName");
10
+ var _createTypeFromFields = require("../../utils/createTypeFromFields");
11
+ var _helpers = require("../helpers");
12
+ const createUnionTypeName = (model, field) => {
13
+ return `${model.singularApiName}_${(0, _createTypeName.createReadTypeName)(field.fieldId)}`;
14
+ };
15
+ const getFieldTemplates = field => {
16
+ var _field$settings;
17
+ if (!Array.isArray((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.templates)) {
18
+ return [];
19
+ }
20
+ return field.settings.templates;
21
+ };
22
+ const createTypeDefsForTemplates = ({
23
+ models,
24
+ model,
25
+ field,
26
+ type,
27
+ templates,
28
+ typeOfType,
29
+ fieldTypePlugins
30
+ }) => {
31
+ const typeDefs = [];
32
+ const templateTypes = [];
33
+ templates.forEach(template => {
34
+ const typeName = [model.singularApiName, (0, _createTypeName.createTypeName)(field.fieldId), template.gqlTypeName].join("_");
35
+ const result = (0, _createTypeFromFields.createTypeFromFields)({
36
+ models,
37
+ typeOfType,
38
+ model,
39
+ type,
40
+ typeNamePrefix: typeName,
41
+ fields: template.fields,
42
+ fieldTypePlugins
43
+ });
44
+ if (!result) {
45
+ return;
46
+ }
47
+ typeDefs.push(result.typeDefs);
48
+ templateTypes.push(result.fieldType);
49
+ });
50
+ return {
51
+ typeDefs,
52
+ templateTypes
53
+ };
54
+ };
55
+ const remapTemplateValue = (value, typeName) => {
56
+ const templateType = Object.keys(value)[0];
57
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, value[templateType]), {}, {
58
+ __typename: `${typeName}_${templateType}`
59
+ });
60
+ };
61
+ const createResolver = ({
62
+ model,
63
+ field
64
+ }) => {
65
+ return parent => {
66
+ const value = parent[field.fieldId];
67
+ if (!value) {
68
+ return value;
69
+ }
70
+ const typeName = `${model.singularApiName}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
71
+ if (field.multipleValues && Array.isArray(value)) {
72
+ return value.map(v => remapTemplateValue(v, typeName));
73
+ }
74
+ return remapTemplateValue(value, typeName);
75
+ };
76
+ };
77
+ const createDynamicZoneField = () => {
78
+ return {
79
+ name: "cms-model-field-to-graphql-dynamic-zone",
80
+ type: "cms-model-field-to-graphql",
81
+ fieldType: "dynamicZone",
82
+ isSortable: false,
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
+ },
105
+ read: {
106
+ createTypeField({
107
+ models,
108
+ model,
109
+ field,
110
+ fieldTypePlugins
111
+ }) {
112
+ const templates = getFieldTemplates(field);
113
+ const unionTypeName = createUnionTypeName(model, field);
114
+ const {
115
+ typeDefs,
116
+ templateTypes
117
+ } = createTypeDefsForTemplates({
118
+ models,
119
+ field,
120
+ type: "read",
121
+ typeOfType: "type",
122
+ model,
123
+ fieldTypePlugins,
124
+ templates
125
+ });
126
+ typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
127
+ return {
128
+ fields: `${field.fieldId}: ${field.multipleValues ? `[${unionTypeName}!]` : unionTypeName}`,
129
+ typeDefs: typeDefs.join("\n")
130
+ };
131
+ },
132
+ createResolver
133
+ },
134
+ manage: {
135
+ createTypeField({
136
+ models,
137
+ model,
138
+ field,
139
+ fieldTypePlugins
140
+ }) {
141
+ const templates = getFieldTemplates(field);
142
+ const unionTypeName = createUnionTypeName(model, field);
143
+ const {
144
+ typeDefs,
145
+ templateTypes
146
+ } = createTypeDefsForTemplates({
147
+ models,
148
+ field,
149
+ type: "manage",
150
+ typeOfType: "type",
151
+ model,
152
+ fieldTypePlugins,
153
+ templates
154
+ });
155
+
156
+ // Add _templateId
157
+ const templateIds = templateTypes.map(type => {
158
+ return `extend type ${type} {
159
+ _templateId: ID!
160
+ }
161
+ `;
162
+ });
163
+ typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
164
+ return {
165
+ fields: `${field.fieldId}: ${field.multipleValues ? `[${unionTypeName}!]` : unionTypeName}`,
166
+ typeDefs: typeDefs.concat(templateIds).join("\n")
167
+ };
168
+ },
169
+ createInputField({
170
+ models,
171
+ model,
172
+ field,
173
+ fieldTypePlugins
174
+ }) {
175
+ const templates = getFieldTemplates(field);
176
+ const {
177
+ typeDefs,
178
+ templateTypes
179
+ } = createTypeDefsForTemplates({
180
+ models,
181
+ field,
182
+ type: "manage",
183
+ typeOfType: "input",
184
+ model,
185
+ fieldTypePlugins,
186
+ templates
187
+ });
188
+ const typeName = `${model.singularApiName}_${(0, _createTypeName.createTypeName)(field.fieldId)}`;
189
+ const inputProperties = templateTypes.map(inputTypeName => {
190
+ const key = inputTypeName.replace(`${typeName}_`, "").replace("Input", "");
191
+ return [key, inputTypeName];
192
+ });
193
+
194
+ /**
195
+ * Generate a field input type, similar to this example:
196
+ *
197
+ * input Article_ContentInput {
198
+ * Hero: Article_Content_HeroInput
199
+ * SimpleText: Article_Content_SimpleTextInput
200
+ * }
201
+ */
202
+ typeDefs.push(`input ${typeName}Input {
203
+ ${inputProperties.map(([key, value]) => `
204
+ ${key}: ${value}
205
+ `)}
206
+ }`);
207
+ return {
208
+ fields: (0, _helpers.createGraphQLInputField)(field, `${typeName}Input`),
209
+ typeDefs: typeDefs.join("\n")
210
+ };
211
+ },
212
+ createResolver
213
+ }
214
+ };
215
+ };
216
+ exports.createDynamicZoneField = createDynamicZoneField;
@@ -0,0 +1 @@
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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"}
@@ -0,0 +1,3 @@
1
+ import { CmsModelDynamicZoneField } from "../../types";
2
+ import { StorageTransformPlugin } from "../../plugins";
3
+ export declare const createDynamicZoneStorageTransform: () => StorageTransformPlugin<any, any, CmsModelDynamicZoneField>;
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.createDynamicZoneStorageTransform = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
+ var _plugins = require("../../plugins");
10
+ const convertToStorage = (value, templates) => {
11
+ // Only one key is allowed in the input object.
12
+ const inputType = Object.keys(value)[0];
13
+ const template = templates.find(tpl => tpl.gqlTypeName === inputType);
14
+ if (!template) {
15
+ return undefined;
16
+ }
17
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, value[inputType]), {}, {
18
+ _templateId: template.id
19
+ });
20
+ };
21
+ const convertFromStorage = (value, templates) => {
22
+ const template = templates.find(tpl => value._templateId === tpl.id);
23
+ if (!template) {
24
+ return undefined;
25
+ }
26
+
27
+ // We keep the `_templateId` property, to simplify further processing.
28
+ return {
29
+ [template.gqlTypeName]: value
30
+ };
31
+ };
32
+ const createDynamicZoneStorageTransform = () => {
33
+ return new _plugins.StorageTransformPlugin({
34
+ fieldType: "dynamicZone",
35
+ fromStorage: async ({
36
+ value,
37
+ field
38
+ }) => {
39
+ if (!value) {
40
+ return null;
41
+ }
42
+ const templates = field.settings.templates;
43
+ if (Array.isArray(value) && field.multipleValues) {
44
+ return value.map(value => convertFromStorage(value, templates)).filter(Boolean);
45
+ }
46
+ return convertFromStorage(value, templates);
47
+ },
48
+ toStorage: async ({
49
+ value,
50
+ field
51
+ }) => {
52
+ if (!value) {
53
+ return value;
54
+ }
55
+ const templates = field.settings.templates;
56
+ if (Array.isArray(value) && field.multipleValues) {
57
+ return value.map(value => convertToStorage(value, templates)).filter(Boolean);
58
+ }
59
+ return convertToStorage(value, templates);
60
+ }
61
+ });
62
+ };
63
+ exports.createDynamicZoneStorageTransform = createDynamicZoneStorageTransform;
@@ -0,0 +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,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"}
@@ -0,0 +1,2 @@
1
+ export { createDynamicZoneField } from "./dynamicZoneField";
2
+ export { createDynamicZoneStorageTransform } from "./dynamicZoneStorage";
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "createDynamicZoneField", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _dynamicZoneField.createDynamicZoneField;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "createDynamicZoneStorageTransform", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _dynamicZoneStorage.createDynamicZoneStorageTransform;
16
+ }
17
+ });
18
+ var _dynamicZoneField = require("./dynamicZoneField");
19
+ var _dynamicZoneStorage = require("./dynamicZoneStorage");
@@ -0,0 +1 @@
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"}
@@ -5,45 +5,35 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.createGraphQLInputField = exports.attachRequiredFieldValue = void 0;
7
7
  const requiredValidationName = "required";
8
-
9
8
  const getIsRequired = validations => {
10
9
  return (validations || []).some(validation => {
11
10
  return validation.name === requiredValidationName;
12
11
  });
13
12
  };
14
-
15
13
  const attachRequiredFieldValue = (def, field) => {
16
14
  if (!field.validation || field.validation.length === 0) {
17
15
  return def;
18
16
  }
19
-
20
17
  const isRequired = field.validation.some(validation => {
21
18
  return validation.name === "required";
22
19
  });
23
-
24
20
  if (!isRequired) {
25
21
  return def;
26
22
  }
27
-
28
23
  return `${def}!`;
29
24
  };
30
-
31
25
  exports.attachRequiredFieldValue = attachRequiredFieldValue;
32
26
  const envVars = ["HEADLESS_CMS_GRAPHQL_INPUT_REQUIRE_ARRAY_ITEM", "WEBINY_HEADLESS_CMS_GRAPHQL_INPUT_REQUIRE_ARRAY_ITEM"];
33
27
  /**
34
28
  * Method creates single and multiple values fields.
35
29
  */
36
-
37
30
  const createGraphQLInputField = (field, graphQlType) => {
38
31
  const singleRequired = getIsRequired(field.validation) ? "!" : "";
39
-
40
32
  if (!field.multipleValues) {
41
33
  return `${field.fieldId}: ${graphQlType}${singleRequired}`;
42
34
  }
43
-
44
35
  const multipleRequired = getIsRequired(field.listValidation) ? "!" : "";
45
36
  const itemRequired = envVars.some(v => process.env[v] === "false") ? "" : singleRequired;
46
37
  return `${field.fieldId}: [${graphQlType}${itemRequired}]${multipleRequired}`;
47
38
  };
48
-
49
39
  exports.createGraphQLInputField = createGraphQLInputField;