@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,41 +4,43 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.renderFields = exports.renderField = void 0;
7
-
7
+ var _getBaseFieldType = require("./getBaseFieldType");
8
8
  const renderFields = ({
9
+ models,
9
10
  model,
10
11
  type,
11
12
  fieldTypePlugins
12
13
  }) => {
13
14
  return model.fields.map(field => renderField({
15
+ models,
14
16
  model,
15
17
  type,
16
18
  field,
17
19
  fieldTypePlugins
18
20
  })).filter(Boolean);
19
21
  };
20
-
21
22
  exports.renderFields = renderFields;
22
-
23
23
  const renderField = ({
24
+ models,
24
25
  model,
25
26
  type,
26
27
  field,
27
28
  fieldTypePlugins
28
29
  }) => {
29
- const plugin = fieldTypePlugins[field.type];
30
-
30
+ const plugin = fieldTypePlugins[(0, _getBaseFieldType.getBaseFieldType)(field)];
31
31
  if (!plugin) {
32
32
  // Let's not render the field if it does not exist in the field plugins.
33
33
  return null;
34
34
  }
35
-
36
- const defs = plugin[type].createTypeField({
35
+ const {
36
+ createTypeField
37
+ } = plugin[type];
38
+ const defs = createTypeField({
39
+ models,
37
40
  model,
38
41
  field,
39
42
  fieldTypePlugins
40
43
  });
41
-
42
44
  if (!defs) {
43
45
  return null;
44
46
  } else if (typeof defs === "string") {
@@ -46,8 +48,6 @@ const renderField = ({
46
48
  fields: defs
47
49
  };
48
50
  }
49
-
50
51
  return defs;
51
52
  };
52
-
53
53
  exports.renderField = renderField;
@@ -1 +1 @@
1
- {"version":3,"names":["renderFields","model","type","fieldTypePlugins","fields","map","field","renderField","filter","Boolean","plugin","defs","createTypeField"],"sources":["renderFields.ts"],"sourcesContent":["import {\n ApiEndpoint,\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldDefinition,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\n\ninterface RenderFieldsParams {\n model: CmsModel;\n type: ApiEndpoint;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderFields {\n (params: RenderFieldsParams): CmsModelFieldDefinition[];\n}\n\nexport const renderFields: RenderFields = ({\n model,\n type,\n fieldTypePlugins\n}): CmsModelFieldDefinition[] => {\n return model.fields\n .map(field => renderField({ model, type, field, fieldTypePlugins }))\n .filter(Boolean) as CmsModelFieldDefinition[];\n};\n\ninterface RenderFieldParams extends RenderFieldsParams {\n field: CmsModelField;\n}\n\nexport const renderField = ({\n model,\n type,\n field,\n fieldTypePlugins\n}: RenderFieldParams): CmsModelFieldDefinition | null => {\n const plugin: CmsModelFieldToGraphQLPlugin = fieldTypePlugins[field.type];\n if (!plugin) {\n // Let's not render the field if it does not exist in the field plugins.\n return null;\n }\n const defs = plugin[type].createTypeField({\n model,\n field,\n fieldTypePlugins\n });\n\n if (!defs) {\n return null;\n } else if (typeof defs === \"string\") {\n return {\n fields: defs\n };\n }\n\n return defs;\n};\n"],"mappings":";;;;;;;AAkBO,MAAMA,YAA0B,GAAG,CAAC;EACvCC,KADuC;EAEvCC,IAFuC;EAGvCC;AAHuC,CAAD,KAIT;EAC7B,OAAOF,KAAK,CAACG,MAAN,CACFC,GADE,CACEC,KAAK,IAAIC,WAAW,CAAC;IAAEN,KAAF;IAASC,IAAT;IAAeI,KAAf;IAAsBH;EAAtB,CAAD,CADtB,EAEFK,MAFE,CAEKC,OAFL,CAAP;AAGH,CARM;;;;AAcA,MAAMF,WAAW,GAAG,CAAC;EACxBN,KADwB;EAExBC,IAFwB;EAGxBI,KAHwB;EAIxBH;AAJwB,CAAD,KAK8B;EACrD,MAAMO,MAAoC,GAAGP,gBAAgB,CAACG,KAAK,CAACJ,IAAP,CAA7D;;EACA,IAAI,CAACQ,MAAL,EAAa;IACT;IACA,OAAO,IAAP;EACH;;EACD,MAAMC,IAAI,GAAGD,MAAM,CAACR,IAAD,CAAN,CAAaU,eAAb,CAA6B;IACtCX,KADsC;IAEtCK,KAFsC;IAGtCH;EAHsC,CAA7B,CAAb;;EAMA,IAAI,CAACQ,IAAL,EAAW;IACP,OAAO,IAAP;EACH,CAFD,MAEO,IAAI,OAAOA,IAAP,KAAgB,QAApB,EAA8B;IACjC,OAAO;MACHP,MAAM,EAAEO;IADL,CAAP;EAGH;;EAED,OAAOA,IAAP;AACH,CA1BM"}
1
+ {"version":3,"names":["renderFields","models","model","type","fieldTypePlugins","fields","map","field","renderField","filter","Boolean","plugin","getBaseFieldType","createTypeField","defs"],"sources":["renderFields.ts"],"sourcesContent":["import {\n ApiEndpoint,\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldDefinition,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface RenderFieldsParams {\n models: CmsModel[];\n model: CmsModel;\n type: ApiEndpoint;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\ninterface RenderFields {\n (params: RenderFieldsParams): CmsModelFieldDefinition[];\n}\n\nexport const renderFields: RenderFields = ({\n models,\n model,\n type,\n fieldTypePlugins\n}): CmsModelFieldDefinition[] => {\n return model.fields\n .map(field => renderField({ models, model, type, field, fieldTypePlugins }))\n .filter(Boolean) as CmsModelFieldDefinition[];\n};\n\ninterface RenderFieldParams extends RenderFieldsParams {\n field: CmsModelField;\n}\n\nexport const renderField = ({\n models,\n model,\n type,\n field,\n fieldTypePlugins\n}: RenderFieldParams): CmsModelFieldDefinition | null => {\n const plugin: CmsModelFieldToGraphQLPlugin = fieldTypePlugins[getBaseFieldType(field)];\n if (!plugin) {\n // Let's not render the field if it does not exist in the field plugins.\n return null;\n }\n const { createTypeField } = plugin[type] as CmsModelFieldToGraphQLPlugin[\"manage\"];\n const defs = createTypeField({\n models,\n model,\n field,\n fieldTypePlugins\n });\n\n if (!defs) {\n return null;\n } else if (typeof defs === \"string\") {\n return {\n fields: defs\n };\n }\n\n return defs;\n};\n"],"mappings":";;;;;;AAQA;AAaO,MAAMA,YAA0B,GAAG,CAAC;EACvCC,MAAM;EACNC,KAAK;EACLC,IAAI;EACJC;AACJ,CAAC,KAAgC;EAC7B,OAAOF,KAAK,CAACG,MAAM,CACdC,GAAG,CAACC,KAAK,IAAIC,WAAW,CAAC;IAAEP,MAAM;IAAEC,KAAK;IAAEC,IAAI;IAAEI,KAAK;IAAEH;EAAiB,CAAC,CAAC,CAAC,CAC3EK,MAAM,CAACC,OAAO,CAAC;AACxB,CAAC;AAAC;AAMK,MAAMF,WAAW,GAAG,CAAC;EACxBP,MAAM;EACNC,KAAK;EACLC,IAAI;EACJI,KAAK;EACLH;AACe,CAAC,KAAqC;EACrD,MAAMO,MAAoC,GAAGP,gBAAgB,CAAC,IAAAQ,kCAAgB,EAACL,KAAK,CAAC,CAAC;EACtF,IAAI,CAACI,MAAM,EAAE;IACT;IACA,OAAO,IAAI;EACf;EACA,MAAM;IAAEE;EAAgB,CAAC,GAAGF,MAAM,CAACR,IAAI,CAA2C;EAClF,MAAMW,IAAI,GAAGD,eAAe,CAAC;IACzBZ,MAAM;IACNC,KAAK;IACLK,KAAK;IACLH;EACJ,CAAC,CAAC;EAEF,IAAI,CAACU,IAAI,EAAE;IACP,OAAO,IAAI;EACf,CAAC,MAAM,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;IACjC,OAAO;MACHT,MAAM,EAAES;IACZ,CAAC;EACL;EAEA,OAAOA,IAAI;AACf,CAAC;AAAC"}
@@ -4,15 +4,13 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.renderGetFilterFields = void 0;
7
-
7
+ var _getBaseFieldType = require("./getBaseFieldType");
8
8
  const getCreateFilters = (plugins, fieldType) => {
9
9
  if (!plugins[fieldType] || !plugins[fieldType].read.createGetFilters) {
10
10
  return null;
11
11
  }
12
-
13
12
  return plugins[fieldType].read.createGetFilters;
14
13
  };
15
-
16
14
  const renderGetFilterFields = ({
17
15
  model,
18
16
  fieldTypePlugins
@@ -23,34 +21,28 @@ const renderGetFilterFields = ({
23
21
  // want to be careful when accessing the field plugin here too. It is still possible to have a content model
24
22
  // that contains a field, for which we don't have a plugin registered on the backend. For example, user
25
23
  // could've just removed the plugin from the backend.
26
- if (!fieldTypePlugins[field.type]) {
24
+ const baseType = (0, _getBaseFieldType.getBaseFieldType)(field);
25
+ if (!fieldTypePlugins[baseType]) {
27
26
  return false;
28
27
  }
29
-
30
- return fieldTypePlugins[field.type].isSearchable;
28
+ return fieldTypePlugins[baseType].isSearchable;
31
29
  }).map(f => f.fieldId);
32
30
  const filters = ["id: ID", "entryId: String"];
33
-
34
31
  for (const fieldId of fieldIdList) {
35
32
  const field = model.fields.find(item => item.fieldId === fieldId);
36
-
37
33
  if (!field) {
38
34
  continue;
39
35
  }
40
-
41
- const createGetFilters = getCreateFilters(fieldTypePlugins, field.type);
42
-
36
+ const baseType = (0, _getBaseFieldType.getBaseFieldType)(field);
37
+ const createGetFilters = getCreateFilters(fieldTypePlugins, baseType);
43
38
  if (typeof createGetFilters !== "function") {
44
39
  continue;
45
40
  }
46
-
47
41
  filters.push(createGetFilters({
48
42
  model,
49
43
  field
50
44
  }));
51
45
  }
52
-
53
46
  return filters.filter(Boolean).join("\n");
54
47
  };
55
-
56
48
  exports.renderGetFilterFields = renderGetFilterFields;
@@ -1 +1 @@
1
- {"version":3,"names":["getCreateFilters","plugins","fieldType","read","createGetFilters","renderGetFilterFields","model","fieldTypePlugins","fieldIdList","fields","filter","field","type","isSearchable","map","f","fieldId","filters","find","item","push","Boolean","join"],"sources":["renderGetFilterFields.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel, CmsModelFieldToGraphQLPlugin } from \"~/types\";\n\ninterface RenderGetFilterFieldsParams {\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderGetFilterFields {\n (params: RenderGetFilterFieldsParams): string;\n}\n\nconst getCreateFilters = (\n plugins: CmsFieldTypePlugins,\n fieldType: string\n): CmsModelFieldToGraphQLPlugin[\"read\"][\"createGetFilters\"] | null => {\n if (!plugins[fieldType] || !plugins[fieldType].read.createGetFilters) {\n return null;\n }\n return plugins[fieldType].read.createGetFilters;\n};\n\nexport const renderGetFilterFields: RenderGetFilterFields = ({ model, fieldTypePlugins }) => {\n const fieldIdList = model.fields\n .filter(field => {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n if (!fieldTypePlugins[field.type]) {\n return false;\n }\n return fieldTypePlugins[field.type].isSearchable;\n })\n .map(f => f.fieldId);\n\n const filters: string[] = [\"id: ID\", \"entryId: String\"];\n\n for (const fieldId of fieldIdList) {\n const field = model.fields.find(item => item.fieldId === fieldId);\n if (!field) {\n continue;\n }\n const createGetFilters = getCreateFilters(fieldTypePlugins, field.type);\n if (typeof createGetFilters !== \"function\") {\n continue;\n }\n filters.push(createGetFilters({ model, field }));\n }\n\n return filters.filter(Boolean).join(\"\\n\");\n};\n"],"mappings":";;;;;;;AAUA,MAAMA,gBAAgB,GAAG,CACrBC,OADqB,EAErBC,SAFqB,KAG6C;EAClE,IAAI,CAACD,OAAO,CAACC,SAAD,CAAR,IAAuB,CAACD,OAAO,CAACC,SAAD,CAAP,CAAmBC,IAAnB,CAAwBC,gBAApD,EAAsE;IAClE,OAAO,IAAP;EACH;;EACD,OAAOH,OAAO,CAACC,SAAD,CAAP,CAAmBC,IAAnB,CAAwBC,gBAA/B;AACH,CARD;;AAUO,MAAMC,qBAA4C,GAAG,CAAC;EAAEC,KAAF;EAASC;AAAT,CAAD,KAAiC;EACzF,MAAMC,WAAW,GAAGF,KAAK,CAACG,MAAN,CACfC,MADe,CACRC,KAAK,IAAI;IACb;IACA;IACA;IACA;IACA;IACA,IAAI,CAACJ,gBAAgB,CAACI,KAAK,CAACC,IAAP,CAArB,EAAmC;MAC/B,OAAO,KAAP;IACH;;IACD,OAAOL,gBAAgB,CAACI,KAAK,CAACC,IAAP,CAAhB,CAA6BC,YAApC;EACH,CAXe,EAYfC,GAZe,CAYXC,CAAC,IAAIA,CAAC,CAACC,OAZI,CAApB;EAcA,MAAMC,OAAiB,GAAG,CAAC,QAAD,EAAW,iBAAX,CAA1B;;EAEA,KAAK,MAAMD,OAAX,IAAsBR,WAAtB,EAAmC;IAC/B,MAAMG,KAAK,GAAGL,KAAK,CAACG,MAAN,CAAaS,IAAb,CAAkBC,IAAI,IAAIA,IAAI,CAACH,OAAL,KAAiBA,OAA3C,CAAd;;IACA,IAAI,CAACL,KAAL,EAAY;MACR;IACH;;IACD,MAAMP,gBAAgB,GAAGJ,gBAAgB,CAACO,gBAAD,EAAmBI,KAAK,CAACC,IAAzB,CAAzC;;IACA,IAAI,OAAOR,gBAAP,KAA4B,UAAhC,EAA4C;MACxC;IACH;;IACDa,OAAO,CAACG,IAAR,CAAahB,gBAAgB,CAAC;MAAEE,KAAF;MAASK;IAAT,CAAD,CAA7B;EACH;;EAED,OAAOM,OAAO,CAACP,MAAR,CAAeW,OAAf,EAAwBC,IAAxB,CAA6B,IAA7B,CAAP;AACH,CA9BM"}
1
+ {"version":3,"names":["getCreateFilters","plugins","fieldType","read","createGetFilters","renderGetFilterFields","model","fieldTypePlugins","fieldIdList","fields","filter","field","baseType","getBaseFieldType","isSearchable","map","f","fieldId","filters","find","item","push","Boolean","join"],"sources":["renderGetFilterFields.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface RenderGetFilterFieldsParams {\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderGetFilterFields {\n (params: RenderGetFilterFieldsParams): string;\n}\n\nconst getCreateFilters = (\n plugins: CmsFieldTypePlugins,\n fieldType: string\n): CmsModelFieldToGraphQLPlugin[\"read\"][\"createGetFilters\"] | null => {\n if (!plugins[fieldType] || !plugins[fieldType].read.createGetFilters) {\n return null;\n }\n return plugins[fieldType].read.createGetFilters;\n};\n\nexport const renderGetFilterFields: RenderGetFilterFields = ({ model, fieldTypePlugins }) => {\n const fieldIdList = model.fields\n .filter(field => {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n const baseType = getBaseFieldType(field);\n if (!fieldTypePlugins[baseType]) {\n return false;\n }\n return fieldTypePlugins[baseType].isSearchable;\n })\n .map(f => f.fieldId);\n\n const filters: string[] = [\"id: ID\", \"entryId: String\"];\n\n for (const fieldId of fieldIdList) {\n const field = model.fields.find(item => item.fieldId === fieldId);\n if (!field) {\n continue;\n }\n const baseType = getBaseFieldType(field);\n const createGetFilters = getCreateFilters(fieldTypePlugins, baseType);\n if (typeof createGetFilters !== \"function\") {\n continue;\n }\n filters.push(createGetFilters({ model, field }));\n }\n\n return filters.filter(Boolean).join(\"\\n\");\n};\n"],"mappings":";;;;;;AACA;AAUA,MAAMA,gBAAgB,GAAG,CACrBC,OAA4B,EAC5BC,SAAiB,KACiD;EAClE,IAAI,CAACD,OAAO,CAACC,SAAS,CAAC,IAAI,CAACD,OAAO,CAACC,SAAS,CAAC,CAACC,IAAI,CAACC,gBAAgB,EAAE;IAClE,OAAO,IAAI;EACf;EACA,OAAOH,OAAO,CAACC,SAAS,CAAC,CAACC,IAAI,CAACC,gBAAgB;AACnD,CAAC;AAEM,MAAMC,qBAA4C,GAAG,CAAC;EAAEC,KAAK;EAAEC;AAAiB,CAAC,KAAK;EACzF,MAAMC,WAAW,GAAGF,KAAK,CAACG,MAAM,CAC3BC,MAAM,CAACC,KAAK,IAAI;IACb;IACA;IACA;IACA;IACA;IACA,MAAMC,QAAQ,GAAG,IAAAC,kCAAgB,EAACF,KAAK,CAAC;IACxC,IAAI,CAACJ,gBAAgB,CAACK,QAAQ,CAAC,EAAE;MAC7B,OAAO,KAAK;IAChB;IACA,OAAOL,gBAAgB,CAACK,QAAQ,CAAC,CAACE,YAAY;EAClD,CAAC,CAAC,CACDC,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,CAAC;EAExB,MAAMC,OAAiB,GAAG,CAAC,QAAQ,EAAE,iBAAiB,CAAC;EAEvD,KAAK,MAAMD,OAAO,IAAIT,WAAW,EAAE;IAC/B,MAAMG,KAAK,GAAGL,KAAK,CAACG,MAAM,CAACU,IAAI,CAACC,IAAI,IAAIA,IAAI,CAACH,OAAO,KAAKA,OAAO,CAAC;IACjE,IAAI,CAACN,KAAK,EAAE;MACR;IACJ;IACA,MAAMC,QAAQ,GAAG,IAAAC,kCAAgB,EAACF,KAAK,CAAC;IACxC,MAAMP,gBAAgB,GAAGJ,gBAAgB,CAACO,gBAAgB,EAAEK,QAAQ,CAAC;IACrE,IAAI,OAAOR,gBAAgB,KAAK,UAAU,EAAE;MACxC;IACJ;IACAc,OAAO,CAACG,IAAI,CAACjB,gBAAgB,CAAC;MAAEE,KAAK;MAAEK;IAAM,CAAC,CAAC,CAAC;EACpD;EAEA,OAAOO,OAAO,CAACR,MAAM,CAACY,OAAO,CAAC,CAACC,IAAI,CAAC,IAAI,CAAC;AAC7C,CAAC;AAAC"}
@@ -1,5 +1,6 @@
1
1
  import { CmsFieldTypePlugins, CmsModel, CmsModelField, CmsModelFieldDefinition } from "../types";
2
2
  interface RenderInputFieldsParams {
3
+ models: CmsModel[];
3
4
  model: CmsModel;
4
5
  fieldTypePlugins: CmsFieldTypePlugins;
5
6
  }
@@ -10,5 +11,5 @@ interface RenderInputFields {
10
11
  (params: RenderInputFieldsParams): CmsModelFieldDefinition[];
11
12
  }
12
13
  export declare const renderInputFields: RenderInputFields;
13
- export declare const renderInputField: ({ model, field, fieldTypePlugins }: RenderInputFieldParams) => CmsModelFieldDefinition | null;
14
+ export declare const renderInputField: ({ models, model, field, fieldTypePlugins }: RenderInputFieldParams) => CmsModelFieldDefinition | null;
14
15
  export {};
@@ -4,21 +4,22 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.renderInputFields = exports.renderInputField = void 0;
7
-
7
+ var _getBaseFieldType = require("./getBaseFieldType");
8
8
  const renderInputFields = ({
9
+ models,
9
10
  model,
10
11
  fieldTypePlugins
11
12
  }) => {
12
13
  return model.fields.map(field => renderInputField({
14
+ models,
13
15
  model,
14
16
  field,
15
17
  fieldTypePlugins
16
18
  })).filter(Boolean);
17
19
  };
18
-
19
20
  exports.renderInputFields = renderInputFields;
20
-
21
21
  const renderInputField = ({
22
+ models,
22
23
  model,
23
24
  field,
24
25
  fieldTypePlugins
@@ -28,26 +29,22 @@ const renderInputField = ({
28
29
  // want to be careful when accessing the field plugin here too. It is still possible to have a content model
29
30
  // that contains a field, for which we don't have a plugin registered on the backend. For example, user
30
31
  // could've just removed the plugin from the backend.
31
- const plugin = fieldTypePlugins[field.type];
32
-
32
+ const plugin = fieldTypePlugins[(0, _getBaseFieldType.getBaseFieldType)(field)];
33
33
  if (!plugin) {
34
34
  // Let's not render the field if it does not exist in the field plugins.
35
35
  return null;
36
36
  }
37
-
38
37
  const def = plugin.manage.createInputField({
38
+ models,
39
39
  model,
40
40
  field,
41
41
  fieldTypePlugins
42
42
  });
43
-
44
43
  if (typeof def === "string") {
45
44
  return {
46
45
  fields: def
47
46
  };
48
47
  }
49
-
50
48
  return def;
51
49
  };
52
-
53
50
  exports.renderInputField = renderInputField;
@@ -1 +1 @@
1
- {"version":3,"names":["renderInputFields","model","fieldTypePlugins","fields","map","field","renderInputField","filter","Boolean","plugin","type","def","manage","createInputField"],"sources":["renderInputFields.ts"],"sourcesContent":["import {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldDefinition,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\n\ninterface RenderInputFieldsParams {\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderInputFieldParams extends RenderInputFieldsParams {\n field: CmsModelField;\n}\ninterface RenderInputFields {\n (params: RenderInputFieldsParams): CmsModelFieldDefinition[];\n}\n\nexport const renderInputFields: RenderInputFields = ({\n model,\n fieldTypePlugins\n}): CmsModelFieldDefinition[] => {\n return model.fields\n .map(field => renderInputField({ model, field, fieldTypePlugins }))\n .filter(Boolean) as CmsModelFieldDefinition[];\n};\n\nexport const renderInputField = ({\n model,\n field,\n fieldTypePlugins\n}: RenderInputFieldParams): CmsModelFieldDefinition | null => {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n const plugin: CmsModelFieldToGraphQLPlugin = fieldTypePlugins[field.type];\n\n if (!plugin) {\n // Let's not render the field if it does not exist in the field plugins.\n return null;\n }\n\n const def = plugin.manage.createInputField({\n model,\n field,\n fieldTypePlugins\n });\n if (typeof def === \"string\") {\n return {\n fields: def\n };\n }\n\n return def;\n};\n"],"mappings":";;;;;;;AAmBO,MAAMA,iBAAoC,GAAG,CAAC;EACjDC,KADiD;EAEjDC;AAFiD,CAAD,KAGnB;EAC7B,OAAOD,KAAK,CAACE,MAAN,CACFC,GADE,CACEC,KAAK,IAAIC,gBAAgB,CAAC;IAAEL,KAAF;IAASI,KAAT;IAAgBH;EAAhB,CAAD,CAD3B,EAEFK,MAFE,CAEKC,OAFL,CAAP;AAGH,CAPM;;;;AASA,MAAMF,gBAAgB,GAAG,CAAC;EAC7BL,KAD6B;EAE7BI,KAF6B;EAG7BH;AAH6B,CAAD,KAI8B;EAC1D;EACA;EACA;EACA;EACA;EACA,MAAMO,MAAoC,GAAGP,gBAAgB,CAACG,KAAK,CAACK,IAAP,CAA7D;;EAEA,IAAI,CAACD,MAAL,EAAa;IACT;IACA,OAAO,IAAP;EACH;;EAED,MAAME,GAAG,GAAGF,MAAM,CAACG,MAAP,CAAcC,gBAAd,CAA+B;IACvCZ,KADuC;IAEvCI,KAFuC;IAGvCH;EAHuC,CAA/B,CAAZ;;EAKA,IAAI,OAAOS,GAAP,KAAe,QAAnB,EAA6B;IACzB,OAAO;MACHR,MAAM,EAAEQ;IADL,CAAP;EAGH;;EAED,OAAOA,GAAP;AACH,CA7BM"}
1
+ {"version":3,"names":["renderInputFields","models","model","fieldTypePlugins","fields","map","field","renderInputField","filter","Boolean","plugin","getBaseFieldType","def","manage","createInputField"],"sources":["renderInputFields.ts"],"sourcesContent":["import {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldDefinition,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface RenderInputFieldsParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderInputFieldParams extends RenderInputFieldsParams {\n field: CmsModelField;\n}\ninterface RenderInputFields {\n (params: RenderInputFieldsParams): CmsModelFieldDefinition[];\n}\n\nexport const renderInputFields: RenderInputFields = ({\n models,\n model,\n fieldTypePlugins\n}): CmsModelFieldDefinition[] => {\n return model.fields\n .map(field => renderInputField({ models, model, field, fieldTypePlugins }))\n .filter(Boolean) as CmsModelFieldDefinition[];\n};\n\nexport const renderInputField = ({\n models,\n model,\n field,\n fieldTypePlugins\n}: RenderInputFieldParams): CmsModelFieldDefinition | null => {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n const plugin: CmsModelFieldToGraphQLPlugin = fieldTypePlugins[getBaseFieldType(field)];\n\n if (!plugin) {\n // Let's not render the field if it does not exist in the field plugins.\n return null;\n }\n\n const def = plugin.manage.createInputField({\n models,\n model,\n field,\n fieldTypePlugins\n });\n if (typeof def === \"string\") {\n return {\n fields: def\n };\n }\n\n return def;\n};\n"],"mappings":";;;;;;AAOA;AAcO,MAAMA,iBAAoC,GAAG,CAAC;EACjDC,MAAM;EACNC,KAAK;EACLC;AACJ,CAAC,KAAgC;EAC7B,OAAOD,KAAK,CAACE,MAAM,CACdC,GAAG,CAACC,KAAK,IAAIC,gBAAgB,CAAC;IAAEN,MAAM;IAAEC,KAAK;IAAEI,KAAK;IAAEH;EAAiB,CAAC,CAAC,CAAC,CAC1EK,MAAM,CAACC,OAAO,CAAC;AACxB,CAAC;AAAC;AAEK,MAAMF,gBAAgB,GAAG,CAAC;EAC7BN,MAAM;EACNC,KAAK;EACLI,KAAK;EACLH;AACoB,CAAC,KAAqC;EAC1D;EACA;EACA;EACA;EACA;EACA,MAAMO,MAAoC,GAAGP,gBAAgB,CAAC,IAAAQ,kCAAgB,EAACL,KAAK,CAAC,CAAC;EAEtF,IAAI,CAACI,MAAM,EAAE;IACT;IACA,OAAO,IAAI;EACf;EAEA,MAAME,GAAG,GAAGF,MAAM,CAACG,MAAM,CAACC,gBAAgB,CAAC;IACvCb,MAAM;IACNC,KAAK;IACLI,KAAK;IACLH;EACJ,CAAC,CAAC;EACF,IAAI,OAAOS,GAAG,KAAK,QAAQ,EAAE;IACzB,OAAO;MACHR,MAAM,EAAEQ;IACZ,CAAC;EACL;EAEA,OAAOA,GAAG;AACd,CAAC;AAAC"}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.renderListFilterFields = void 0;
7
-
7
+ var _getBaseFieldType = require("./getBaseFieldType");
8
8
  /**
9
9
  * We cast as read type, because input and output of read and manage are same. This way we ease things.
10
10
  * Internal stuff so it should be ok.
@@ -16,10 +16,8 @@ const getCreateListFilters = (plugins, fieldType, type) => {
16
16
  } else if (!plugins[fieldType][type]) {
17
17
  return null;
18
18
  }
19
-
20
19
  return plugins[fieldType][type].createListFilters;
21
20
  };
22
-
23
21
  const renderListFilterFields = params => {
24
22
  const {
25
23
  model,
@@ -30,30 +28,26 @@ const renderListFilterFields = params => {
30
28
  /**
31
29
  * We can find different statuses only in the manage API endpoint.
32
30
  */
33
-
34
31
  if (type === "manage") {
35
32
  fields.push(...["status: String", "status_not: String", "status_in: [String!]", "status_not_in: [String!]"]);
36
33
  }
37
-
38
34
  for (const field of model.fields) {
39
35
  // Every time a client updates content model's fields, we check the type of each field. If a field plugin
40
36
  // for a particular "field.type" doesn't exist on the backend yet, we throw an error. But still, we also
41
37
  // want to be careful when accessing the field plugin here too. It is still possible to have a content model
42
38
  // that contains a field, for which we don't have a plugin registered on the backend. For example, user
43
39
  // could've just removed the plugin from the backend.
44
- const createListFilters = getCreateListFilters(fieldTypePlugins, field.type, type);
45
40
 
41
+ const createListFilters = getCreateListFilters(fieldTypePlugins, (0, _getBaseFieldType.getBaseFieldType)(field), type);
46
42
  if (typeof createListFilters !== "function") {
47
43
  continue;
48
44
  }
49
-
50
45
  fields.push(createListFilters({
51
46
  model,
52
- field
47
+ field,
48
+ plugins: fieldTypePlugins
53
49
  }));
54
50
  }
55
-
56
51
  return fields.filter(Boolean).join("\n");
57
52
  };
58
-
59
53
  exports.renderListFilterFields = renderListFilterFields;
@@ -1 +1 @@
1
- {"version":3,"names":["getCreateListFilters","plugins","fieldType","type","createListFilters","renderListFilterFields","params","model","fieldTypePlugins","fields","join","push","field","filter","Boolean"],"sources":["renderListFilterFields.ts"],"sourcesContent":["import { ApiEndpoint, CmsFieldTypePlugins, CmsModel, CmsModelFieldToGraphQLPlugin } from \"~/types\";\n\ninterface RenderListFilterFieldsParams {\n model: CmsModel;\n type: ApiEndpoint;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderListFilterFields {\n (params: RenderListFilterFieldsParams): string;\n}\n\ntype CreateListFiltersType =\n | CmsModelFieldToGraphQLPlugin[\"read\"][\"createListFilters\"]\n | CmsModelFieldToGraphQLPlugin[\"manage\"][\"createListFilters\"];\n/**\n * We cast as read type, because input and output of read and manage are same. This way we ease things.\n * Internal stuff so it should be ok.\n * TODO note that if changing read/manage types, change this as well.\n */\nconst getCreateListFilters = (\n plugins: CmsFieldTypePlugins,\n fieldType: string,\n type: ApiEndpoint\n): CreateListFiltersType | null => {\n if (!plugins[fieldType]) {\n return null;\n } else if (!plugins[fieldType][type]) {\n return null;\n }\n return plugins[fieldType][type].createListFilters;\n};\n\nexport const renderListFilterFields: RenderListFilterFields = (params): string => {\n const { model, type, fieldTypePlugins } = params;\n const fields: string[] = [\n [\n \"id: ID\",\n \"id_not: ID\",\n \"id_in: [ID!]\",\n \"id_not_in: [ID!]\",\n \"entryId: String\",\n \"entryId_not: String\",\n \"entryId_in: [String!]\",\n \"entryId_not_in: [String!]\",\n \"createdOn: DateTime\",\n \"createdOn_gt: DateTime\",\n \"createdOn_gte: DateTime\",\n \"createdOn_lt: DateTime\",\n \"createdOn_lte: DateTime\",\n \"createdOn_between: [DateTime!]\",\n \"createdOn_not_between: [DateTime!]\",\n \"savedOn: DateTime\",\n \"savedOn_gt: DateTime\",\n \"savedOn_gte: DateTime\",\n \"savedOn_lt: DateTime\",\n \"savedOn_lte: DateTime\",\n \"savedOn_between: [DateTime!]\",\n \"savedOn_not_between: [DateTime!]\",\n \"createdBy: String\",\n \"createdBy_not: String\",\n \"createdBy_in: [String!]\",\n \"createdBy_not_in: [String!]\",\n \"ownedBy: String\",\n \"ownedBy_not: String\",\n \"ownedBy_in: [String!]\",\n \"ownedBy_not_in: [String!]\"\n ].join(\"\\n\")\n ];\n /**\n * We can find different statuses only in the manage API endpoint.\n */\n if (type === \"manage\") {\n fields.push(\n ...[\n \"status: String\",\n \"status_not: String\",\n \"status_in: [String!]\",\n \"status_not_in: [String!]\"\n ]\n );\n }\n\n for (const field of model.fields) {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n\n const createListFilters = getCreateListFilters(fieldTypePlugins, field.type, type);\n if (typeof createListFilters !== \"function\") {\n continue;\n }\n fields.push(createListFilters({ model, field }));\n }\n\n return fields.filter(Boolean).join(\"\\n\");\n};\n"],"mappings":";;;;;;;AAcA;AACA;AACA;AACA;AACA;AACA,MAAMA,oBAAoB,GAAG,CACzBC,OADyB,EAEzBC,SAFyB,EAGzBC,IAHyB,KAIM;EAC/B,IAAI,CAACF,OAAO,CAACC,SAAD,CAAZ,EAAyB;IACrB,OAAO,IAAP;EACH,CAFD,MAEO,IAAI,CAACD,OAAO,CAACC,SAAD,CAAP,CAAmBC,IAAnB,CAAL,EAA+B;IAClC,OAAO,IAAP;EACH;;EACD,OAAOF,OAAO,CAACC,SAAD,CAAP,CAAmBC,IAAnB,EAAyBC,iBAAhC;AACH,CAXD;;AAaO,MAAMC,sBAA8C,GAAIC,MAAD,IAAoB;EAC9E,MAAM;IAAEC,KAAF;IAASJ,IAAT;IAAeK;EAAf,IAAoCF,MAA1C;EACA,MAAMG,MAAgB,GAAG,CACrB,CACI,QADJ,EAEI,YAFJ,EAGI,cAHJ,EAII,kBAJJ,EAKI,iBALJ,EAMI,qBANJ,EAOI,uBAPJ,EAQI,2BARJ,EASI,qBATJ,EAUI,wBAVJ,EAWI,yBAXJ,EAYI,wBAZJ,EAaI,yBAbJ,EAcI,gCAdJ,EAeI,oCAfJ,EAgBI,mBAhBJ,EAiBI,sBAjBJ,EAkBI,uBAlBJ,EAmBI,sBAnBJ,EAoBI,uBApBJ,EAqBI,8BArBJ,EAsBI,kCAtBJ,EAuBI,mBAvBJ,EAwBI,uBAxBJ,EAyBI,yBAzBJ,EA0BI,6BA1BJ,EA2BI,iBA3BJ,EA4BI,qBA5BJ,EA6BI,uBA7BJ,EA8BI,2BA9BJ,EA+BEC,IA/BF,CA+BO,IA/BP,CADqB,CAAzB;EAkCA;AACJ;AACA;;EACI,IAAIP,IAAI,KAAK,QAAb,EAAuB;IACnBM,MAAM,CAACE,IAAP,CACI,GAAG,CACC,gBADD,EAEC,oBAFD,EAGC,sBAHD,EAIC,0BAJD,CADP;EAQH;;EAED,KAAK,MAAMC,KAAX,IAAoBL,KAAK,CAACE,MAA1B,EAAkC;IAC9B;IACA;IACA;IACA;IACA;IAEA,MAAML,iBAAiB,GAAGJ,oBAAoB,CAACQ,gBAAD,EAAmBI,KAAK,CAACT,IAAzB,EAA+BA,IAA/B,CAA9C;;IACA,IAAI,OAAOC,iBAAP,KAA6B,UAAjC,EAA6C;MACzC;IACH;;IACDK,MAAM,CAACE,IAAP,CAAYP,iBAAiB,CAAC;MAAEG,KAAF;MAASK;IAAT,CAAD,CAA7B;EACH;;EAED,OAAOH,MAAM,CAACI,MAAP,CAAcC,OAAd,EAAuBJ,IAAvB,CAA4B,IAA5B,CAAP;AACH,CAjEM"}
1
+ {"version":3,"names":["getCreateListFilters","plugins","fieldType","type","createListFilters","renderListFilterFields","params","model","fieldTypePlugins","fields","join","push","field","getBaseFieldType","filter","Boolean"],"sources":["renderListFilterFields.ts"],"sourcesContent":["import { ApiEndpoint, CmsFieldTypePlugins, CmsModel, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface RenderListFilterFieldsParams {\n model: CmsModel;\n type: ApiEndpoint;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\ninterface RenderListFilterFields {\n (params: RenderListFilterFieldsParams): string;\n}\n\ntype CreateListFiltersType =\n | CmsModelFieldToGraphQLPlugin[\"read\"][\"createListFilters\"]\n | CmsModelFieldToGraphQLPlugin[\"manage\"][\"createListFilters\"];\n/**\n * We cast as read type, because input and output of read and manage are same. This way we ease things.\n * Internal stuff so it should be ok.\n * TODO note that if changing read/manage types, change this as well.\n */\nconst getCreateListFilters = (\n plugins: CmsFieldTypePlugins,\n fieldType: string,\n type: ApiEndpoint\n): CreateListFiltersType | null => {\n if (!plugins[fieldType]) {\n return null;\n } else if (!plugins[fieldType][type]) {\n return null;\n }\n return plugins[fieldType][type].createListFilters;\n};\n\nexport const renderListFilterFields: RenderListFilterFields = (params): string => {\n const { model, type, fieldTypePlugins } = params;\n const fields: string[] = [\n [\n \"id: ID\",\n \"id_not: ID\",\n \"id_in: [ID!]\",\n \"id_not_in: [ID!]\",\n \"entryId: String\",\n \"entryId_not: String\",\n \"entryId_in: [String!]\",\n \"entryId_not_in: [String!]\",\n \"createdOn: DateTime\",\n \"createdOn_gt: DateTime\",\n \"createdOn_gte: DateTime\",\n \"createdOn_lt: DateTime\",\n \"createdOn_lte: DateTime\",\n \"createdOn_between: [DateTime!]\",\n \"createdOn_not_between: [DateTime!]\",\n \"savedOn: DateTime\",\n \"savedOn_gt: DateTime\",\n \"savedOn_gte: DateTime\",\n \"savedOn_lt: DateTime\",\n \"savedOn_lte: DateTime\",\n \"savedOn_between: [DateTime!]\",\n \"savedOn_not_between: [DateTime!]\",\n \"createdBy: String\",\n \"createdBy_not: String\",\n \"createdBy_in: [String!]\",\n \"createdBy_not_in: [String!]\",\n \"ownedBy: String\",\n \"ownedBy_not: String\",\n \"ownedBy_in: [String!]\",\n \"ownedBy_not_in: [String!]\"\n ].join(\"\\n\")\n ];\n /**\n * We can find different statuses only in the manage API endpoint.\n */\n if (type === \"manage\") {\n fields.push(\n ...[\n \"status: String\",\n \"status_not: String\",\n \"status_in: [String!]\",\n \"status_not_in: [String!]\"\n ]\n );\n }\n\n for (const field of model.fields) {\n // Every time a client updates content model's fields, we check the type of each field. If a field plugin\n // for a particular \"field.type\" doesn't exist on the backend yet, we throw an error. But still, we also\n // want to be careful when accessing the field plugin here too. It is still possible to have a content model\n // that contains a field, for which we don't have a plugin registered on the backend. For example, user\n // could've just removed the plugin from the backend.\n\n const createListFilters = getCreateListFilters(\n fieldTypePlugins,\n getBaseFieldType(field),\n type\n );\n if (typeof createListFilters !== \"function\") {\n continue;\n }\n fields.push(createListFilters({ model, field, plugins: fieldTypePlugins }));\n }\n\n return fields.filter(Boolean).join(\"\\n\");\n};\n"],"mappings":";;;;;;AACA;AAcA;AACA;AACA;AACA;AACA;AACA,MAAMA,oBAAoB,GAAG,CACzBC,OAA4B,EAC5BC,SAAiB,EACjBC,IAAiB,KACc;EAC/B,IAAI,CAACF,OAAO,CAACC,SAAS,CAAC,EAAE;IACrB,OAAO,IAAI;EACf,CAAC,MAAM,IAAI,CAACD,OAAO,CAACC,SAAS,CAAC,CAACC,IAAI,CAAC,EAAE;IAClC,OAAO,IAAI;EACf;EACA,OAAOF,OAAO,CAACC,SAAS,CAAC,CAACC,IAAI,CAAC,CAACC,iBAAiB;AACrD,CAAC;AAEM,MAAMC,sBAA8C,GAAIC,MAAM,IAAa;EAC9E,MAAM;IAAEC,KAAK;IAAEJ,IAAI;IAAEK;EAAiB,CAAC,GAAGF,MAAM;EAChD,MAAMG,MAAgB,GAAG,CACrB,CACI,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,EAC3B,qBAAqB,EACrB,wBAAwB,EACxB,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,EACzB,gCAAgC,EAChC,oCAAoC,EACpC,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,8BAA8B,EAC9B,kCAAkC,EAClC,mBAAmB,EACnB,uBAAuB,EACvB,yBAAyB,EACzB,6BAA6B,EAC7B,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,2BAA2B,CAC9B,CAACC,IAAI,CAAC,IAAI,CAAC,CACf;EACD;AACJ;AACA;EACI,IAAIP,IAAI,KAAK,QAAQ,EAAE;IACnBM,MAAM,CAACE,IAAI,CACP,GAAG,CACC,gBAAgB,EAChB,oBAAoB,EACpB,sBAAsB,EACtB,0BAA0B,CAC7B,CACJ;EACL;EAEA,KAAK,MAAMC,KAAK,IAAIL,KAAK,CAACE,MAAM,EAAE;IAC9B;IACA;IACA;IACA;IACA;;IAEA,MAAML,iBAAiB,GAAGJ,oBAAoB,CAC1CQ,gBAAgB,EAChB,IAAAK,kCAAgB,EAACD,KAAK,CAAC,EACvBT,IAAI,CACP;IACD,IAAI,OAAOC,iBAAiB,KAAK,UAAU,EAAE;MACzC;IACJ;IACAK,MAAM,CAACE,IAAI,CAACP,iBAAiB,CAAC;MAAEG,KAAK;MAAEK,KAAK;MAAEX,OAAO,EAAEO;IAAiB,CAAC,CAAC,CAAC;EAC/E;EAEA,OAAOC,MAAM,CAACK,MAAM,CAACC,OAAO,CAAC,CAACL,IAAI,CAAC,IAAI,CAAC;AAC5C,CAAC;AAAC"}
@@ -1,9 +1,12 @@
1
1
  import { CmsFieldTypePlugins, CmsModel } from "../types";
2
+ import { CmsGraphQLSchemaSorterPlugin } from "../plugins/CmsGraphQLSchemaSorterPlugin";
3
+ interface RenderSortEnumParams {
4
+ model: CmsModel;
5
+ fieldTypePlugins: CmsFieldTypePlugins;
6
+ sorterPlugins: CmsGraphQLSchemaSorterPlugin[];
7
+ }
2
8
  interface RenderSortEnum {
3
- (params: {
4
- model: CmsModel;
5
- fieldTypePlugins: CmsFieldTypePlugins;
6
- }): string;
9
+ (params: RenderSortEnumParams): string;
7
10
  }
8
11
  export declare const renderSortEnum: RenderSortEnum;
9
12
  export {};
@@ -4,29 +4,39 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.renderSortEnum = void 0;
7
-
7
+ var _getBaseFieldType = require("./getBaseFieldType");
8
8
  const renderSortEnum = ({
9
9
  model,
10
- fieldTypePlugins
10
+ fieldTypePlugins,
11
+ sorterPlugins
11
12
  }) => {
12
- const sorters = [`id_ASC`, `id_DESC`, "savedOn_ASC", "savedOn_DESC", "createdOn_ASC", "createdOn_DESC"];
13
-
13
+ let sorters = [`id_ASC`, `id_DESC`, "savedOn_ASC", "savedOn_DESC", "createdOn_ASC", "createdOn_DESC"];
14
14
  for (const field of model.fields) {
15
- const plugin = fieldTypePlugins[field.type];
16
-
15
+ const plugin = fieldTypePlugins[(0, _getBaseFieldType.getBaseFieldType)(field)];
17
16
  if (!plugin) {
18
17
  continue;
18
+ } else if (plugin.createSorters) {
19
+ const result = plugin.createSorters({
20
+ model,
21
+ field,
22
+ sorters
23
+ });
24
+ if (result) {
25
+ sorters = result;
26
+ continue;
27
+ }
19
28
  }
20
-
21
29
  if (!plugin.isSortable) {
22
30
  continue;
23
31
  }
24
-
25
32
  sorters.push(`${field.fieldId}_ASC`);
26
33
  sorters.push(`${field.fieldId}_DESC`);
27
34
  }
28
-
29
- return sorters.join("\n");
35
+ return sorterPlugins.reduce((result, plugin) => {
36
+ return plugin.createSorter({
37
+ model,
38
+ sorters: result
39
+ });
40
+ }, sorters).join("\n");
30
41
  };
31
-
32
42
  exports.renderSortEnum = renderSortEnum;
@@ -1 +1 @@
1
- {"version":3,"names":["renderSortEnum","model","fieldTypePlugins","sorters","field","fields","plugin","type","isSortable","push","fieldId","join"],"sources":["renderSortEnum.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\n\ninterface RenderSortEnum {\n (params: { model: CmsModel; fieldTypePlugins: CmsFieldTypePlugins }): string;\n}\n\nexport const renderSortEnum: RenderSortEnum = ({ model, fieldTypePlugins }): string => {\n const sorters: string[] = [\n `id_ASC`,\n `id_DESC`,\n \"savedOn_ASC\",\n \"savedOn_DESC\",\n \"createdOn_ASC\",\n \"createdOn_DESC\"\n ];\n\n for (const field of model.fields) {\n const plugin = fieldTypePlugins[field.type];\n if (!plugin) {\n continue;\n }\n if (!plugin.isSortable) {\n continue;\n }\n sorters.push(`${field.fieldId}_ASC`);\n sorters.push(`${field.fieldId}_DESC`);\n }\n\n return sorters.join(\"\\n\");\n};\n"],"mappings":";;;;;;;AAMO,MAAMA,cAA8B,GAAG,CAAC;EAAEC,KAAF;EAASC;AAAT,CAAD,KAAyC;EACnF,MAAMC,OAAiB,GAAG,CACrB,QADqB,EAErB,SAFqB,EAGtB,aAHsB,EAItB,cAJsB,EAKtB,eALsB,EAMtB,gBANsB,CAA1B;;EASA,KAAK,MAAMC,KAAX,IAAoBH,KAAK,CAACI,MAA1B,EAAkC;IAC9B,MAAMC,MAAM,GAAGJ,gBAAgB,CAACE,KAAK,CAACG,IAAP,CAA/B;;IACA,IAAI,CAACD,MAAL,EAAa;MACT;IACH;;IACD,IAAI,CAACA,MAAM,CAACE,UAAZ,EAAwB;MACpB;IACH;;IACDL,OAAO,CAACM,IAAR,CAAc,GAAEL,KAAK,CAACM,OAAQ,MAA9B;IACAP,OAAO,CAACM,IAAR,CAAc,GAAEL,KAAK,CAACM,OAAQ,OAA9B;EACH;;EAED,OAAOP,OAAO,CAACQ,IAAR,CAAa,IAAb,CAAP;AACH,CAvBM"}
1
+ {"version":3,"names":["renderSortEnum","model","fieldTypePlugins","sorterPlugins","sorters","field","fields","plugin","getBaseFieldType","createSorters","result","isSortable","push","fieldId","reduce","createSorter","join"],"sources":["renderSortEnum.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins/CmsGraphQLSchemaSorterPlugin\";\n\ninterface RenderSortEnumParams {\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\ninterface RenderSortEnum {\n (params: RenderSortEnumParams): string;\n}\n\nexport const renderSortEnum: RenderSortEnum = ({\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n let sorters: string[] = [\n `id_ASC`,\n `id_DESC`,\n \"savedOn_ASC\",\n \"savedOn_DESC\",\n \"createdOn_ASC\",\n \"createdOn_DESC\"\n ];\n\n for (const field of model.fields) {\n const plugin = fieldTypePlugins[getBaseFieldType(field)];\n if (!plugin) {\n continue;\n } else if (plugin.createSorters) {\n const result = plugin.createSorters({\n model,\n field,\n sorters\n });\n if (result) {\n sorters = result;\n continue;\n }\n }\n if (!plugin.isSortable) {\n continue;\n }\n sorters.push(`${field.fieldId}_ASC`);\n sorters.push(`${field.fieldId}_DESC`);\n }\n\n return sorterPlugins\n .reduce((result, plugin) => {\n return plugin.createSorter({\n model,\n sorters: result\n });\n }, sorters)\n .join(\"\\n\");\n};\n"],"mappings":";;;;;;AACA;AAYO,MAAMA,cAA8B,GAAG,CAAC;EAC3CC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,IAAIC,OAAiB,GAAG,CACnB,QAAO,EACP,SAAQ,EACT,aAAa,EACb,cAAc,EACd,eAAe,EACf,gBAAgB,CACnB;EAED,KAAK,MAAMC,KAAK,IAAIJ,KAAK,CAACK,MAAM,EAAE;IAC9B,MAAMC,MAAM,GAAGL,gBAAgB,CAAC,IAAAM,kCAAgB,EAACH,KAAK,CAAC,CAAC;IACxD,IAAI,CAACE,MAAM,EAAE;MACT;IACJ,CAAC,MAAM,IAAIA,MAAM,CAACE,aAAa,EAAE;MAC7B,MAAMC,MAAM,GAAGH,MAAM,CAACE,aAAa,CAAC;QAChCR,KAAK;QACLI,KAAK;QACLD;MACJ,CAAC,CAAC;MACF,IAAIM,MAAM,EAAE;QACRN,OAAO,GAAGM,MAAM;QAChB;MACJ;IACJ;IACA,IAAI,CAACH,MAAM,CAACI,UAAU,EAAE;MACpB;IACJ;IACAP,OAAO,CAACQ,IAAI,CAAE,GAAEP,KAAK,CAACQ,OAAQ,MAAK,CAAC;IACpCT,OAAO,CAACQ,IAAI,CAAE,GAAEP,KAAK,CAACQ,OAAQ,OAAM,CAAC;EACzC;EAEA,OAAOV,aAAa,CACfW,MAAM,CAAC,CAACJ,MAAM,EAAEH,MAAM,KAAK;IACxB,OAAOA,MAAM,CAACQ,YAAY,CAAC;MACvBd,KAAK;MACLG,OAAO,EAAEM;IACb,CAAC,CAAC;EACN,CAAC,EAAEN,OAAO,CAAC,CACVY,IAAI,CAAC,IAAI,CAAC;AACnB,CAAC;AAAC"}
package/utils/toSlug.js CHANGED
@@ -1,14 +1,11 @@
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.toSlug = void 0;
9
-
10
8
  var _slugify = _interopRequireDefault(require("slugify"));
11
-
12
9
  const toSlug = text => {
13
10
  return (0, _slugify.default)(text, {
14
11
  replacement: "-",
@@ -16,5 +13,4 @@ const toSlug = text => {
16
13
  remove: /[*#\?<>_\{\}\[\]+~.()'"!:;@]/g
17
14
  });
18
15
  };
19
-
20
16
  exports.toSlug = toSlug;
@@ -1 +1 @@
1
- {"version":3,"names":["toSlug","text","slugify","replacement","lower","remove"],"sources":["toSlug.ts"],"sourcesContent":["import slugify from \"slugify\";\n\nexport const toSlug = (text: string): string => {\n return slugify(text, {\n replacement: \"-\",\n lower: true,\n remove: /[*#\\?<>_\\{\\}\\[\\]+~.()'\"!:;@]/g\n });\n};\n"],"mappings":";;;;;;;;;AAAA;;AAEO,MAAMA,MAAM,GAAIC,IAAD,IAA0B;EAC5C,OAAO,IAAAC,gBAAA,EAAQD,IAAR,EAAc;IACjBE,WAAW,EAAE,GADI;IAEjBC,KAAK,EAAE,IAFU;IAGjBC,MAAM,EAAE;EAHS,CAAd,CAAP;AAKH,CANM"}
1
+ {"version":3,"names":["toSlug","text","slugify","replacement","lower","remove"],"sources":["toSlug.ts"],"sourcesContent":["import slugify from \"slugify\";\n\nexport const toSlug = (text: string): string => {\n return slugify(text, {\n replacement: \"-\",\n lower: true,\n remove: /[*#\\?<>_\\{\\}\\[\\]+~.()'\"!:;@]/g\n });\n};\n"],"mappings":";;;;;;;AAAA;AAEO,MAAMA,MAAM,GAAIC,IAAY,IAAa;EAC5C,OAAO,IAAAC,gBAAO,EAACD,IAAI,EAAE;IACjBE,WAAW,EAAE,GAAG;IAChBC,KAAK,EAAE,IAAI;IACXC,MAAM,EAAE;EACZ,CAAC,CAAC;AACN,CAAC;AAAC"}
@@ -4,15 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createDateGteValidator = void 0;
7
-
8
7
  var _validation = require("@webiny/validation");
9
-
10
8
  const createDateGteValidator = () => ({
11
9
  type: "cms-model-field-validator",
12
10
  name: "cms-model-field-validator-date-gte",
13
11
  validator: {
14
12
  name: "dateGte",
15
-
16
13
  async validate({
17
14
  value,
18
15
  validator
@@ -21,17 +18,13 @@ const createDateGteValidator = () => ({
21
18
  value: gteValue,
22
19
  type
23
20
  } = validator.settings || {};
24
-
25
21
  if (typeof gteValue === "undefined") {
26
22
  return true;
27
23
  } else if (type === "time") {
28
24
  return _validation.validation.validate(value, `timeGte:${gteValue}`).then(v => v === true).catch(() => false);
29
25
  }
30
-
31
26
  return _validation.validation.validate(value, `dateGte:${gteValue}`).then(v => v === true).catch(() => false);
32
27
  }
33
-
34
28
  }
35
29
  });
36
-
37
30
  exports.createDateGteValidator = createDateGteValidator;
@@ -1 +1 @@
1
- {"version":3,"names":["createDateGteValidator","type","name","validator","validate","value","gteValue","settings","validation","then","v","catch"],"sources":["dateGte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createDateGteValidator = (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-gte\",\n validator: {\n name: \"dateGte\",\n async validate({ value, validator }) {\n const { value: gteValue, type } = validator.settings || {};\n if (typeof gteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"],"mappings":";;;;;;;AAAA;;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BADiE;EAEvEC,IAAI,EAAE,oCAFiE;EAGvEC,SAAS,EAAE;IACPD,IAAI,EAAE,SADC;;IAEP,MAAME,QAAN,CAAe;MAAEC,KAAF;MAASF;IAAT,CAAf,EAAqC;MACjC,MAAM;QAAEE,KAAK,EAAEC,QAAT;QAAmBL;MAAnB,IAA4BE,SAAS,CAACI,QAAV,IAAsB,EAAxD;;MACA,IAAI,OAAOD,QAAP,KAAoB,WAAxB,EAAqC;QACjC,OAAO,IAAP;MACH,CAFD,MAEO,IAAIL,IAAI,KAAK,MAAb,EAAqB;QACxB,OAAOO,sBAAA,CACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;MAIH;;MACD,OAAOH,sBAAA,CACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;IAIH;;EAhBM;AAH4D,CAArC,CAA/B"}
1
+ {"version":3,"names":["createDateGteValidator","type","name","validator","validate","value","gteValue","settings","validation","then","v","catch"],"sources":["dateGte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createDateGteValidator = (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-gte\",\n validator: {\n name: \"dateGte\",\n async validate({ value, validator }) {\n const { value: gteValue, type } = validator.settings || {};\n if (typeof gteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateGte:${gteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQ,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MACjC,MAAM;QAAEE,KAAK,EAAEC,QAAQ;QAAEL;MAAK,CAAC,GAAGE,SAAS,CAACI,QAAQ,IAAI,CAAC,CAAC;MAC1D,IAAI,OAAOD,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf,CAAC,MAAM,IAAIL,IAAI,KAAK,MAAM,EAAE;QACxB,OAAOO,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;MAC3B;MACA,OAAOH,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAAC"}
@@ -4,15 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createDateLteValidator = void 0;
7
-
8
7
  var _validation = require("@webiny/validation");
9
-
10
8
  const createDateLteValidator = () => ({
11
9
  type: "cms-model-field-validator",
12
10
  name: "cms-model-field-validator-date-lte",
13
11
  validator: {
14
12
  name: "dateLte",
15
-
16
13
  async validate({
17
14
  value,
18
15
  validator
@@ -21,17 +18,13 @@ const createDateLteValidator = () => ({
21
18
  value: lteValue,
22
19
  type
23
20
  } = validator.settings || {};
24
-
25
21
  if (typeof lteValue === "undefined") {
26
22
  return true;
27
23
  } else if (type === "time") {
28
24
  return _validation.validation.validate(value, `timeLte:${lteValue}`).then(v => v === true).catch(() => false);
29
25
  }
30
-
31
26
  return _validation.validation.validate(value, `dateLte:${lteValue}`).then(v => v === true).catch(() => false);
32
27
  }
33
-
34
28
  }
35
29
  });
36
-
37
30
  exports.createDateLteValidator = createDateLteValidator;
@@ -1 +1 @@
1
- {"version":3,"names":["createDateLteValidator","type","name","validator","validate","value","lteValue","settings","validation","then","v","catch"],"sources":["dateLte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createDateLteValidator = (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-lte\",\n validator: {\n name: \"dateLte\",\n async validate({ value, validator }) {\n const { value: lteValue, type } = validator.settings || {};\n if (typeof lteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"],"mappings":";;;;;;;AAAA;;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BADiE;EAEvEC,IAAI,EAAE,oCAFiE;EAGvEC,SAAS,EAAE;IACPD,IAAI,EAAE,SADC;;IAEP,MAAME,QAAN,CAAe;MAAEC,KAAF;MAASF;IAAT,CAAf,EAAqC;MACjC,MAAM;QAAEE,KAAK,EAAEC,QAAT;QAAmBL;MAAnB,IAA4BE,SAAS,CAACI,QAAV,IAAsB,EAAxD;;MACA,IAAI,OAAOD,QAAP,KAAoB,WAAxB,EAAqC;QACjC,OAAO,IAAP;MACH,CAFD,MAEO,IAAIL,IAAI,KAAK,MAAb,EAAqB;QACxB,OAAOO,sBAAA,CACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;MAIH;;MACD,OAAOH,sBAAA,CACFJ,QADE,CACOC,KADP,EACe,WAAUC,QAAS,EADlC,EAEFG,IAFE,CAEGC,CAAC,IAAIA,CAAC,KAAK,IAFd,EAGFC,KAHE,CAGI,MAAM,KAHV,CAAP;IAIH;;EAhBM;AAH4D,CAArC,CAA/B"}
1
+ {"version":3,"names":["createDateLteValidator","type","name","validator","validate","value","lteValue","settings","validation","then","v","catch"],"sources":["dateLte.ts"],"sourcesContent":["import { validation } from \"@webiny/validation\";\nimport { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createDateLteValidator = (): CmsModelFieldValidatorPlugin => ({\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-date-lte\",\n validator: {\n name: \"dateLte\",\n async validate({ value, validator }) {\n const { value: lteValue, type } = validator.settings || {};\n if (typeof lteValue === \"undefined\") {\n return true;\n } else if (type === \"time\") {\n return validation\n .validate(value, `timeLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n return validation\n .validate(value, `dateLte:${lteValue}`)\n .then(v => v === true)\n .catch(() => false);\n }\n }\n});\n"],"mappings":";;;;;;AAAA;AAGO,MAAMA,sBAAsB,GAAG,OAAqC;EACvEC,IAAI,EAAE,2BAA2B;EACjCC,IAAI,EAAE,oCAAoC;EAC1CC,SAAS,EAAE;IACPD,IAAI,EAAE,SAAS;IACf,MAAME,QAAQ,CAAC;MAAEC,KAAK;MAAEF;IAAU,CAAC,EAAE;MACjC,MAAM;QAAEE,KAAK,EAAEC,QAAQ;QAAEL;MAAK,CAAC,GAAGE,SAAS,CAACI,QAAQ,IAAI,CAAC,CAAC;MAC1D,IAAI,OAAOD,QAAQ,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI;MACf,CAAC,MAAM,IAAIL,IAAI,KAAK,MAAM,EAAE;QACxB,OAAOO,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;MAC3B;MACA,OAAOH,sBAAU,CACZJ,QAAQ,CAACC,KAAK,EAAG,WAAUC,QAAS,EAAC,CAAC,CACtCG,IAAI,CAACC,CAAC,IAAIA,CAAC,KAAK,IAAI,CAAC,CACrBC,KAAK,CAAC,MAAM,KAAK,CAAC;IAC3B;EACJ;AACJ,CAAC,CAAC;AAAC"}
@@ -0,0 +1,2 @@
1
+ import { CmsModelFieldValidatorPlugin } from "../types";
2
+ export declare const createDynamicZoneValidator: () => CmsModelFieldValidatorPlugin;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createDynamicZoneValidator = void 0;
7
+ const createDynamicZoneValidator = () => {
8
+ return {
9
+ type: "cms-model-field-validator",
10
+ name: "cms-model-field-validator-dynamic-zone",
11
+ validator: {
12
+ name: "dynamicZone",
13
+ validate() {
14
+ // TODO: implement validation.
15
+ return Promise.resolve(true);
16
+ }
17
+ }
18
+ };
19
+ };
20
+ exports.createDynamicZoneValidator = createDynamicZoneValidator;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createDynamicZoneValidator","type","name","validator","validate","Promise","resolve"],"sources":["dynamicZone.ts"],"sourcesContent":["import { CmsModelFieldValidatorPlugin } from \"~/types\";\n\nexport const createDynamicZoneValidator = (): CmsModelFieldValidatorPlugin => {\n return {\n type: \"cms-model-field-validator\",\n name: \"cms-model-field-validator-dynamic-zone\",\n validator: {\n name: \"dynamicZone\",\n validate() {\n // TODO: implement validation.\n return Promise.resolve(true);\n }\n }\n };\n};\n"],"mappings":";;;;;;AAEO,MAAMA,0BAA0B,GAAG,MAAoC;EAC1E,OAAO;IACHC,IAAI,EAAE,2BAA2B;IACjCC,IAAI,EAAE,wCAAwC;IAC9CC,SAAS,EAAE;MACPD,IAAI,EAAE,aAAa;MACnBE,QAAQ,GAAG;QACP;QACA,OAAOC,OAAO,CAACC,OAAO,CAAC,IAAI,CAAC;MAChC;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
package/validators/gte.js CHANGED
@@ -4,33 +4,25 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createGteValidator = void 0;
7
-
8
7
  var _validation = require("@webiny/validation");
9
-
10
8
  const createGteValidator = () => {
11
9
  return {
12
10
  type: "cms-model-field-validator",
13
11
  name: "cms-model-field-validator-gte",
14
12
  validator: {
15
13
  name: "gte",
16
-
17
14
  validate({
18
15
  value,
19
16
  validator
20
17
  }) {
21
18
  var _validator$settings;
22
-
23
19
  const gteValue = (_validator$settings = validator.settings) === null || _validator$settings === void 0 ? void 0 : _validator$settings.value;
24
-
25
20
  if (typeof gteValue !== "undefined") {
26
21
  return _validation.validation.validate(value, `gte:${gteValue}`).then(v => v === true).catch(() => false);
27
22
  }
28
-
29
23
  return Promise.resolve(true);
30
24
  }
31
-
32
25
  }
33
26
  };
34
27
  };
35
-
36
28
  exports.createGteValidator = createGteValidator;