@webiny/api-headless-cms 6.1.0 → 6.2.0

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 (577) hide show
  1. package/context.d.ts +2 -5
  2. package/context.js +16 -7
  3. package/context.js.map +1 -1
  4. package/crud/AccessControl/AccessControl.d.ts +18 -28
  5. package/crud/AccessControl/AccessControl.js.map +1 -1
  6. package/crud/contentEntry/entryDataFactories/createEntryData.js +17 -6
  7. package/crud/contentEntry/entryDataFactories/createEntryData.js.map +1 -1
  8. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js +9 -3
  9. package/crud/contentEntry/entryDataFactories/createEntryRevisionFromData.js.map +1 -1
  10. package/crud/contentEntry/entryDataValidation.d.ts +1 -1
  11. package/crud/contentEntry/entryDataValidation.js +16 -13
  12. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  13. package/crud/contentEntry/searchableFields.d.ts +2 -3
  14. package/crud/contentEntry/searchableFields.js +10 -18
  15. package/crud/contentEntry/searchableFields.js.map +1 -1
  16. package/crud/contentModel.crud.js +2 -1
  17. package/crud/contentModel.crud.js.map +1 -1
  18. package/domain/contentModel/validation/modelFields.js +15 -20
  19. package/domain/contentModel/validation/modelFields.js.map +1 -1
  20. package/exports/api/cms/graphql.d.ts +1 -0
  21. package/exports/api/cms/graphql.js +3 -0
  22. package/exports/api/cms/graphql.js.map +1 -0
  23. package/exports/api/cms/storage.d.ts +3 -0
  24. package/exports/api/cms/storage.js +5 -0
  25. package/exports/api/cms/storage.js.map +1 -0
  26. package/exports/api/cms/validation.d.ts +4 -0
  27. package/exports/api/cms/validation.js +6 -0
  28. package/exports/api/cms/validation.js.map +1 -0
  29. package/features/contentEntry/CreateEntry/CreateEntryUseCase.d.ts +3 -3
  30. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js +3 -3
  31. package/features/contentEntry/CreateEntry/CreateEntryUseCase.js.map +1 -1
  32. package/features/contentEntry/CreateEntry/events.d.ts +2 -2
  33. package/features/contentEntry/CreateEntry/events.js +1 -1
  34. package/features/contentEntry/CreateEntry/events.js.map +1 -1
  35. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.d.ts +3 -3
  36. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js +3 -3
  37. package/features/contentEntry/CreateEntryRevisionFrom/CreateEntryRevisionFromUseCase.js.map +1 -1
  38. package/features/contentEntry/CreateEntryRevisionFrom/events.d.ts +2 -2
  39. package/features/contentEntry/CreateEntryRevisionFrom/events.js +1 -1
  40. package/features/contentEntry/CreateEntryRevisionFrom/events.js.map +1 -1
  41. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.d.ts +1 -1
  42. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js +1 -1
  43. package/features/contentEntry/DeleteEntry/DeleteEntryUseCase.js.map +1 -1
  44. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.d.ts +2 -2
  45. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js +2 -2
  46. package/features/contentEntry/DeleteEntry/MoveEntryToBinUseCase.js.map +1 -1
  47. package/features/contentEntry/DeleteEntry/events.d.ts +2 -2
  48. package/features/contentEntry/DeleteEntry/events.js +1 -1
  49. package/features/contentEntry/DeleteEntry/events.js.map +1 -1
  50. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.d.ts +1 -1
  51. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js +1 -1
  52. package/features/contentEntry/DeleteEntryRevision/DeleteEntryRevisionUseCase.js.map +1 -1
  53. package/features/contentEntry/DeleteEntryRevision/events.d.ts +2 -2
  54. package/features/contentEntry/DeleteEntryRevision/events.js +1 -1
  55. package/features/contentEntry/DeleteEntryRevision/events.js.map +1 -1
  56. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.d.ts +1 -1
  57. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js +1 -1
  58. package/features/contentEntry/DeleteMultipleEntries/DeleteMultipleEntriesUseCase.js.map +1 -1
  59. package/features/contentEntry/DeleteMultipleEntries/events.d.ts +2 -2
  60. package/features/contentEntry/DeleteMultipleEntries/events.js +1 -1
  61. package/features/contentEntry/DeleteMultipleEntries/events.js.map +1 -1
  62. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js +6 -11
  63. package/features/contentEntry/GetUniqueFieldValues/GetUniqueFieldValuesUseCase.js.map +1 -1
  64. package/features/contentEntry/ListEntries/ListEntriesUseCase.d.ts +1 -1
  65. package/features/contentEntry/ListEntries/ListEntriesUseCase.js +1 -1
  66. package/features/contentEntry/ListEntries/ListEntriesUseCase.js.map +1 -1
  67. package/features/contentEntry/MoveEntry/MoveEntryUseCase.d.ts +1 -1
  68. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js +1 -1
  69. package/features/contentEntry/MoveEntry/MoveEntryUseCase.js.map +1 -1
  70. package/features/contentEntry/MoveEntry/events.d.ts +2 -2
  71. package/features/contentEntry/MoveEntry/events.js +1 -1
  72. package/features/contentEntry/MoveEntry/events.js.map +1 -1
  73. package/features/contentEntry/PublishEntry/PublishEntryUseCase.d.ts +2 -2
  74. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js +2 -2
  75. package/features/contentEntry/PublishEntry/PublishEntryUseCase.js.map +1 -1
  76. package/features/contentEntry/PublishEntry/events.d.ts +2 -2
  77. package/features/contentEntry/PublishEntry/events.js +1 -1
  78. package/features/contentEntry/PublishEntry/events.js.map +1 -1
  79. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.d.ts +2 -2
  80. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js +2 -2
  81. package/features/contentEntry/RepublishEntry/RepublishEntryUseCase.js.map +1 -1
  82. package/features/contentEntry/RepublishEntry/events.d.ts +2 -2
  83. package/features/contentEntry/RepublishEntry/events.js +1 -1
  84. package/features/contentEntry/RepublishEntry/events.js.map +1 -1
  85. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.d.ts +2 -2
  86. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js +2 -2
  87. package/features/contentEntry/RestoreEntryFromBin/RestoreEntryFromBinUseCase.js.map +1 -1
  88. package/features/contentEntry/RestoreEntryFromBin/events.d.ts +2 -2
  89. package/features/contentEntry/RestoreEntryFromBin/events.js +1 -1
  90. package/features/contentEntry/RestoreEntryFromBin/events.js.map +1 -1
  91. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.d.ts +2 -2
  92. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js +2 -2
  93. package/features/contentEntry/UnpublishEntry/UnpublishEntryUseCase.js.map +1 -1
  94. package/features/contentEntry/UnpublishEntry/events.d.ts +2 -2
  95. package/features/contentEntry/UnpublishEntry/events.js +1 -1
  96. package/features/contentEntry/UnpublishEntry/events.js.map +1 -1
  97. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.d.ts +3 -3
  98. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js +3 -3
  99. package/features/contentEntry/UpdateEntry/UpdateEntryUseCase.js.map +1 -1
  100. package/features/contentEntry/UpdateEntry/events.d.ts +2 -2
  101. package/features/contentEntry/UpdateEntry/events.js +1 -1
  102. package/features/contentEntry/UpdateEntry/events.js.map +1 -1
  103. package/features/contentModel/CreateModel/CreateModelRepository.d.ts +1 -1
  104. package/features/contentModel/CreateModel/CreateModelRepository.js +1 -1
  105. package/features/contentModel/CreateModel/CreateModelRepository.js.map +1 -1
  106. package/features/contentModel/CreateModel/CreateModelUseCase.d.ts +3 -3
  107. package/features/contentModel/CreateModel/CreateModelUseCase.js +3 -3
  108. package/features/contentModel/CreateModel/CreateModelUseCase.js.map +1 -1
  109. package/features/contentModel/CreateModel/events.d.ts +2 -2
  110. package/features/contentModel/CreateModel/events.js +1 -1
  111. package/features/contentModel/CreateModel/events.js.map +1 -1
  112. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.d.ts +1 -1
  113. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js +1 -1
  114. package/features/contentModel/CreateModelFrom/CreateModelFromRepository.js.map +1 -1
  115. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.d.ts +3 -3
  116. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js +4 -3
  117. package/features/contentModel/CreateModelFrom/CreateModelFromUseCase.js.map +1 -1
  118. package/features/contentModel/CreateModelFrom/events.d.ts +2 -2
  119. package/features/contentModel/CreateModelFrom/events.js +1 -1
  120. package/features/contentModel/CreateModelFrom/events.js.map +1 -1
  121. package/features/contentModel/DeleteModel/DeleteModelUseCase.d.ts +1 -1
  122. package/features/contentModel/DeleteModel/DeleteModelUseCase.js +1 -1
  123. package/features/contentModel/DeleteModel/DeleteModelUseCase.js.map +1 -1
  124. package/features/contentModel/DeleteModel/events.d.ts +2 -2
  125. package/features/contentModel/DeleteModel/events.js +1 -1
  126. package/features/contentModel/DeleteModel/events.js.map +1 -1
  127. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.d.ts +3 -3
  128. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js +6 -6
  129. package/features/contentModel/ModelToAstConverter/ModelToAstConverter.js.map +1 -1
  130. package/features/contentModel/UpdateModel/UpdateModelUseCase.d.ts +2 -2
  131. package/features/contentModel/UpdateModel/UpdateModelUseCase.js +2 -2
  132. package/features/contentModel/UpdateModel/UpdateModelUseCase.js.map +1 -1
  133. package/features/contentModel/UpdateModel/events.d.ts +2 -2
  134. package/features/contentModel/UpdateModel/events.js +1 -1
  135. package/features/contentModel/UpdateModel/events.js.map +1 -1
  136. package/features/contentModel/shared/ModelsFetcher.d.ts +1 -1
  137. package/features/contentModel/shared/ModelsFetcher.js +1 -1
  138. package/features/contentModel/shared/ModelsFetcher.js.map +1 -1
  139. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.d.ts +1 -1
  140. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js +1 -1
  141. package/features/contentModelGroup/CreateGroup/CreateGroupRepository.js.map +1 -1
  142. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.d.ts +3 -3
  143. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js +3 -3
  144. package/features/contentModelGroup/CreateGroup/CreateGroupUseCase.js.map +1 -1
  145. package/features/contentModelGroup/CreateGroup/events.d.ts +2 -2
  146. package/features/contentModelGroup/CreateGroup/events.js +1 -1
  147. package/features/contentModelGroup/CreateGroup/events.js.map +1 -1
  148. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.d.ts +1 -1
  149. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js +1 -1
  150. package/features/contentModelGroup/DeleteGroup/DeleteGroupUseCase.js.map +1 -1
  151. package/features/contentModelGroup/DeleteGroup/events.d.ts +2 -2
  152. package/features/contentModelGroup/DeleteGroup/events.js +1 -1
  153. package/features/contentModelGroup/DeleteGroup/events.js.map +1 -1
  154. package/features/contentModelGroup/GetGroup/GetGroupRepository.d.ts +2 -2
  155. package/features/contentModelGroup/GetGroup/GetGroupRepository.js +2 -2
  156. package/features/contentModelGroup/GetGroup/GetGroupRepository.js.map +1 -1
  157. package/features/contentModelGroup/ListGroups/ListGroupsRepository.d.ts +2 -2
  158. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js +2 -2
  159. package/features/contentModelGroup/ListGroups/ListGroupsRepository.js.map +1 -1
  160. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.d.ts +2 -2
  161. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js +2 -2
  162. package/features/contentModelGroup/UpdateGroup/UpdateGroupUseCase.js.map +1 -1
  163. package/features/contentModelGroup/UpdateGroup/events.d.ts +2 -2
  164. package/features/contentModelGroup/UpdateGroup/events.js +1 -1
  165. package/features/contentModelGroup/UpdateGroup/events.js.map +1 -1
  166. package/features/contentModelGroup/shared/PluginGroupsProvider.d.ts +2 -2
  167. package/features/contentModelGroup/shared/PluginGroupsProvider.js +2 -2
  168. package/features/contentModelGroup/shared/PluginGroupsProvider.js.map +1 -1
  169. package/features/graphql/feature.d.ts +1 -0
  170. package/features/graphql/feature.js +34 -0
  171. package/features/graphql/feature.js.map +1 -0
  172. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.d.ts +13 -0
  173. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js +27 -0
  174. package/features/graphql/fields/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  175. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.d.ts +97 -0
  176. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js +4 -0
  177. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQL.js.map +1 -0
  178. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.d.ts +10 -0
  179. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js +4 -0
  180. package/features/graphql/fields/abstractions/CmsModelFieldToGraphQLRegistry.js.map +1 -0
  181. package/features/graphql/fields/base/BooleanToGraphQL.d.ts +26 -0
  182. package/features/graphql/fields/base/BooleanToGraphQL.js +68 -0
  183. package/features/graphql/fields/base/BooleanToGraphQL.js.map +1 -0
  184. package/features/graphql/fields/base/DateTimeToGraphQL.d.ts +26 -0
  185. package/features/graphql/fields/base/DateTimeToGraphQL.js +97 -0
  186. package/features/graphql/fields/base/DateTimeToGraphQL.js.map +1 -0
  187. package/features/graphql/fields/base/DynamicZoneToGraphQL.d.ts +30 -0
  188. package/features/graphql/fields/base/DynamicZoneToGraphQL.js +280 -0
  189. package/features/graphql/fields/base/DynamicZoneToGraphQL.js.map +1 -0
  190. package/features/graphql/fields/base/FileToGraphQL.d.ts +22 -0
  191. package/features/graphql/fields/base/FileToGraphQL.js +39 -0
  192. package/features/graphql/fields/base/FileToGraphQL.js.map +1 -0
  193. package/features/graphql/fields/base/JsonToGraphQL.d.ts +24 -0
  194. package/features/graphql/fields/base/JsonToGraphQL.js +52 -0
  195. package/features/graphql/fields/base/JsonToGraphQL.js.map +1 -0
  196. package/features/graphql/fields/base/LongTextToGraphQL.d.ts +24 -0
  197. package/features/graphql/fields/base/LongTextToGraphQL.js +57 -0
  198. package/features/graphql/fields/base/LongTextToGraphQL.js.map +1 -0
  199. package/features/graphql/fields/base/NumberToGraphQL.d.ts +26 -0
  200. package/features/graphql/fields/base/NumberToGraphQL.js +78 -0
  201. package/features/graphql/fields/base/NumberToGraphQL.js.map +1 -0
  202. package/features/graphql/fields/base/ObjectToGraphQL.d.ts +31 -0
  203. package/features/graphql/fields/base/ObjectToGraphQL.js +264 -0
  204. package/features/graphql/fields/base/ObjectToGraphQL.js.map +1 -0
  205. package/features/graphql/fields/base/RefToGraphQL.d.ts +29 -0
  206. package/features/graphql/fields/base/RefToGraphQL.js +261 -0
  207. package/features/graphql/fields/base/RefToGraphQL.js.map +1 -0
  208. package/features/graphql/fields/base/RichTextToGraphQL.d.ts +25 -0
  209. package/features/graphql/fields/base/RichTextToGraphQL.js +58 -0
  210. package/features/graphql/fields/base/RichTextToGraphQL.js.map +1 -0
  211. package/features/graphql/fields/base/SearchableJsonToGraphQL.d.ts +26 -0
  212. package/features/graphql/fields/base/SearchableJsonToGraphQL.js +62 -0
  213. package/features/graphql/fields/base/SearchableJsonToGraphQL.js.map +1 -0
  214. package/features/graphql/fields/base/TextToGraphQL.d.ts +26 -0
  215. package/features/graphql/fields/base/TextToGraphQL.js +74 -0
  216. package/features/graphql/fields/base/TextToGraphQL.js.map +1 -0
  217. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.d.ts +16 -0
  218. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js +37 -0
  219. package/features/graphql/fields/base/dynamicZone/createTypeDefsForTemplates.js.map +1 -0
  220. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.d.ts +3 -0
  221. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js +14 -0
  222. package/features/graphql/fields/base/dynamicZone/normalizeDynamicZoneInput.js.map +1 -0
  223. package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.d.ts +1 -1
  224. package/{graphqlFields → features/graphql/fields/base}/richText/richTextResolver.js +2 -2
  225. package/features/graphql/fields/base/richText/richTextResolver.js.map +1 -0
  226. package/{graphqlFields/helpers.d.ts → features/graphql/fields/base/utils/createGraphQLInputField.d.ts} +1 -1
  227. package/features/graphql/fields/base/utils/createGraphQLInputField.js +17 -0
  228. package/features/graphql/fields/base/utils/createGraphQLInputField.js.map +1 -0
  229. package/features/graphql/index.d.ts +4 -0
  230. package/features/graphql/index.js +6 -0
  231. package/features/graphql/index.js.map +1 -0
  232. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.d.ts +13 -0
  233. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js +4 -0
  234. package/features/graphql/sort/abstractions/CmsGraphQLSchemaSorter.js.map +1 -0
  235. package/features/installer/CmsInstaller.d.ts +1 -1
  236. package/features/installer/CmsInstaller.js +1 -1
  237. package/features/installer/CmsInstaller.js.map +1 -1
  238. package/features/shared/abstractions.d.ts +9 -2
  239. package/features/shared/abstractions.js +1 -0
  240. package/features/shared/abstractions.js.map +1 -1
  241. package/features/storage/StorageTransformRegistry.d.ts +13 -0
  242. package/features/storage/StorageTransformRegistry.js +27 -0
  243. package/features/storage/StorageTransformRegistry.js.map +1 -0
  244. package/features/storage/abstractions/StorageTransform.d.ts +26 -0
  245. package/features/storage/abstractions/StorageTransform.js +4 -0
  246. package/features/storage/abstractions/StorageTransform.js.map +1 -0
  247. package/features/storage/abstractions/StorageTransformRegistry.d.ts +10 -0
  248. package/features/storage/abstractions/StorageTransformRegistry.js +4 -0
  249. package/features/storage/abstractions/StorageTransformRegistry.js.map +1 -0
  250. package/features/storage/feature.d.ts +1 -0
  251. package/features/storage/feature.js +24 -0
  252. package/features/storage/feature.js.map +1 -0
  253. package/features/storage/fields/DateStorageTransform.d.ts +10 -0
  254. package/features/storage/fields/DateStorageTransform.js +110 -0
  255. package/features/storage/fields/DateStorageTransform.js.map +1 -0
  256. package/features/storage/fields/DefaultStorageTransform.d.ts +10 -0
  257. package/features/storage/fields/DefaultStorageTransform.js +20 -0
  258. package/features/storage/fields/DefaultStorageTransform.js.map +1 -0
  259. package/features/storage/fields/DynamicZoneStorageTransform.d.ts +10 -0
  260. package/features/storage/fields/DynamicZoneStorageTransform.js +142 -0
  261. package/features/storage/fields/DynamicZoneStorageTransform.js.map +1 -0
  262. package/features/storage/fields/JsonStorageTransform.d.ts +13 -0
  263. package/features/storage/fields/JsonStorageTransform.js +31 -0
  264. package/features/storage/fields/JsonStorageTransform.js.map +1 -0
  265. package/features/storage/fields/LongTextStorageTransform.d.ts +18 -0
  266. package/features/storage/fields/LongTextStorageTransform.js +55 -0
  267. package/features/storage/fields/LongTextStorageTransform.js.map +1 -0
  268. package/features/storage/fields/ObjectStorageTransform.d.ts +10 -0
  269. package/features/storage/fields/ObjectStorageTransform.js +99 -0
  270. package/features/storage/fields/ObjectStorageTransform.js.map +1 -0
  271. package/features/storage/fields/RichTextStorageTransform.d.ts +13 -0
  272. package/features/storage/fields/RichTextStorageTransform.js +39 -0
  273. package/features/storage/fields/RichTextStorageTransform.js.map +1 -0
  274. package/features/storage/index.d.ts +3 -0
  275. package/features/storage/index.js +5 -0
  276. package/features/storage/index.js.map +1 -0
  277. package/features/validation/CmsModelFieldPatternValidatorRegistry.d.ts +12 -0
  278. package/features/validation/CmsModelFieldPatternValidatorRegistry.js +21 -0
  279. package/features/validation/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  280. package/features/validation/CmsModelFieldValidatorRegistry.d.ts +12 -0
  281. package/features/validation/CmsModelFieldValidatorRegistry.js +23 -0
  282. package/features/validation/CmsModelFieldValidatorRegistry.js.map +1 -0
  283. package/features/validation/abstractions/CmsModelFieldPatternValidator.d.ts +13 -0
  284. package/features/validation/abstractions/CmsModelFieldPatternValidator.js +4 -0
  285. package/features/validation/abstractions/CmsModelFieldPatternValidator.js.map +1 -0
  286. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.d.ts +9 -0
  287. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js +4 -0
  288. package/features/validation/abstractions/CmsModelFieldPatternValidatorRegistry.js.map +1 -0
  289. package/features/validation/abstractions/CmsModelFieldValidator.d.ts +11 -0
  290. package/features/validation/abstractions/CmsModelFieldValidator.js +4 -0
  291. package/features/validation/abstractions/CmsModelFieldValidator.js.map +1 -0
  292. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.d.ts +9 -0
  293. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js +4 -0
  294. package/features/validation/abstractions/CmsModelFieldValidatorRegistry.js.map +1 -0
  295. package/features/validation/feature.d.ts +1 -0
  296. package/features/validation/feature.js +48 -0
  297. package/features/validation/feature.js.map +1 -0
  298. package/features/validation/index.d.ts +5 -0
  299. package/features/validation/index.js +7 -0
  300. package/features/validation/index.js.map +1 -0
  301. package/features/validation/validators/DateGteValidator.d.ts +10 -0
  302. package/features/validation/validators/DateGteValidator.js +26 -0
  303. package/features/validation/validators/DateGteValidator.js.map +1 -0
  304. package/features/validation/validators/DateLteValidator.d.ts +10 -0
  305. package/features/validation/validators/DateLteValidator.js +26 -0
  306. package/features/validation/validators/DateLteValidator.js.map +1 -0
  307. package/features/validation/validators/GteValidator.d.ts +10 -0
  308. package/features/validation/validators/GteValidator.js +21 -0
  309. package/features/validation/validators/GteValidator.js.map +1 -0
  310. package/features/validation/validators/InValidator.d.ts +10 -0
  311. package/features/validation/validators/InValidator.js +21 -0
  312. package/features/validation/validators/InValidator.js.map +1 -0
  313. package/features/validation/validators/LteValidator.d.ts +10 -0
  314. package/features/validation/validators/LteValidator.js +21 -0
  315. package/features/validation/validators/LteValidator.js.map +1 -0
  316. package/features/validation/validators/MaxLengthValidator.d.ts +10 -0
  317. package/features/validation/validators/MaxLengthValidator.js +21 -0
  318. package/features/validation/validators/MaxLengthValidator.js.map +1 -0
  319. package/features/validation/validators/MinLengthValidator.d.ts +10 -0
  320. package/features/validation/validators/MinLengthValidator.js +21 -0
  321. package/features/validation/validators/MinLengthValidator.js.map +1 -0
  322. package/features/validation/validators/PatternValidator.d.ts +13 -0
  323. package/features/validation/validators/PatternValidator.js +38 -0
  324. package/features/validation/validators/PatternValidator.js.map +1 -0
  325. package/features/validation/validators/RequiredValidator.d.ts +10 -0
  326. package/features/validation/validators/RequiredValidator.js +16 -0
  327. package/features/validation/validators/RequiredValidator.js.map +1 -0
  328. package/features/validation/validators/TimeGteValidator.d.ts +10 -0
  329. package/features/validation/validators/TimeGteValidator.js +21 -0
  330. package/features/validation/validators/TimeGteValidator.js.map +1 -0
  331. package/features/validation/validators/TimeLteValidator.d.ts +10 -0
  332. package/features/validation/validators/TimeLteValidator.js +21 -0
  333. package/features/validation/validators/TimeLteValidator.js.map +1 -0
  334. package/features/validation/validators/UniqueValidator.d.ts +10 -0
  335. package/features/validation/validators/UniqueValidator.js +47 -0
  336. package/features/validation/validators/UniqueValidator.js.map +1 -0
  337. package/features/validation/validators/patterns/EmailPattern.d.ts +12 -0
  338. package/features/validation/validators/patterns/EmailPattern.js +14 -0
  339. package/features/validation/validators/patterns/EmailPattern.js.map +1 -0
  340. package/features/validation/validators/patterns/LowerCasePattern.d.ts +12 -0
  341. package/features/validation/validators/patterns/LowerCasePattern.js +14 -0
  342. package/features/validation/validators/patterns/LowerCasePattern.js.map +1 -0
  343. package/features/validation/validators/patterns/LowerCaseSpacePattern.d.ts +12 -0
  344. package/features/validation/validators/patterns/LowerCaseSpacePattern.js +14 -0
  345. package/features/validation/validators/patterns/LowerCaseSpacePattern.js.map +1 -0
  346. package/features/validation/validators/patterns/UpperCasePattern.d.ts +12 -0
  347. package/features/validation/validators/patterns/UpperCasePattern.js +14 -0
  348. package/features/validation/validators/patterns/UpperCasePattern.js.map +1 -0
  349. package/features/validation/validators/patterns/UpperCaseSpacePattern.d.ts +12 -0
  350. package/features/validation/validators/patterns/UpperCaseSpacePattern.js +14 -0
  351. package/features/validation/validators/patterns/UpperCaseSpacePattern.js.map +1 -0
  352. package/features/validation/validators/patterns/UrlPattern.d.ts +12 -0
  353. package/features/validation/validators/patterns/UrlPattern.js +14 -0
  354. package/features/validation/validators/patterns/UrlPattern.js.map +1 -0
  355. package/graphql/getSchema/generateCacheKey.js +1 -1
  356. package/graphql/getSchema/generateCacheKey.js.map +1 -1
  357. package/graphql/schema/baseSchema.d.ts +2 -1
  358. package/graphql/schema/baseSchema.js +11 -9
  359. package/graphql/schema/baseSchema.js.map +1 -1
  360. package/graphql/schema/createFieldResolvers.d.ts +3 -2
  361. package/graphql/schema/createFieldResolvers.js +5 -4
  362. package/graphql/schema/createFieldResolvers.js.map +1 -1
  363. package/graphql/schema/createManageResolvers.d.ts +3 -2
  364. package/graphql/schema/createManageResolvers.js +3 -3
  365. package/graphql/schema/createManageResolvers.js.map +1 -1
  366. package/graphql/schema/createManageSDL.d.ts +4 -4
  367. package/graphql/schema/createManageSDL.js +8 -8
  368. package/graphql/schema/createManageSDL.js.map +1 -1
  369. package/graphql/schema/createPreviewResolvers.d.ts +3 -2
  370. package/graphql/schema/createPreviewResolvers.js +4 -4
  371. package/graphql/schema/createPreviewResolvers.js.map +1 -1
  372. package/graphql/schema/createReadResolvers.d.ts +3 -2
  373. package/graphql/schema/createReadResolvers.js +4 -4
  374. package/graphql/schema/createReadResolvers.js.map +1 -1
  375. package/graphql/schema/createReadSDL.d.ts +4 -4
  376. package/graphql/schema/createReadSDL.js +7 -7
  377. package/graphql/schema/createReadSDL.js.map +1 -1
  378. package/graphql/schema/createSingularResolvers.d.ts +3 -2
  379. package/graphql/schema/createSingularResolvers.js +3 -3
  380. package/graphql/schema/createSingularResolvers.js.map +1 -1
  381. package/graphql/schema/createSingularSDL.d.ts +3 -2
  382. package/graphql/schema/createSingularSDL.js +3 -3
  383. package/graphql/schema/createSingularSDL.js.map +1 -1
  384. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js +6 -7
  385. package/graphql/schema/resolvers/manage/normalizeGraphQlInput.js.map +1 -1
  386. package/graphql/schema/schemaPlugins.js +14 -17
  387. package/graphql/schema/schemaPlugins.js.map +1 -1
  388. package/index.d.ts +1 -4
  389. package/index.js +2 -6
  390. package/index.js.map +1 -1
  391. package/package.json +25 -25
  392. package/plugins/index.d.ts +0 -2
  393. package/plugins/index.js +0 -2
  394. package/plugins/index.js.map +1 -1
  395. package/types/modelField.d.ts +1 -1
  396. package/types/modelField.js.map +1 -1
  397. package/types/plugins.d.ts +1 -305
  398. package/types/plugins.js.map +1 -1
  399. package/types/types.d.ts +4 -44
  400. package/types/types.js +0 -4
  401. package/types/types.js.map +1 -1
  402. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.d.ts +3 -2
  403. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js +3 -3
  404. package/utils/contentModelAst/CmsModelFieldToAstConverterFromPlugins.js.map +1 -1
  405. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.d.ts +4 -3
  406. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js +3 -3
  407. package/utils/contentModelAst/CmsModelFieldToAstFromPlugin.js.map +1 -1
  408. package/utils/converters/ConverterCollection.d.ts +2 -0
  409. package/utils/converters/ConverterCollection.js +3 -2
  410. package/utils/converters/ConverterCollection.js.map +1 -1
  411. package/utils/converters/valueKeyFromStorageConverter.d.ts +2 -0
  412. package/utils/converters/valueKeyFromStorageConverter.js +4 -2
  413. package/utils/converters/valueKeyFromStorageConverter.js.map +1 -1
  414. package/utils/converters/valueKeyStorageConverter.d.ts +2 -3
  415. package/utils/converters/valueKeyStorageConverter.js +7 -3
  416. package/utils/converters/valueKeyStorageConverter.js.map +1 -1
  417. package/utils/converters/valueKeyToStorageConverter.d.ts +2 -0
  418. package/utils/converters/valueKeyToStorageConverter.js +4 -2
  419. package/utils/converters/valueKeyToStorageConverter.js.map +1 -1
  420. package/utils/createTypeFromFields.d.ts +3 -2
  421. package/utils/createTypeFromFields.js +3 -3
  422. package/utils/createTypeFromFields.js.map +1 -1
  423. package/utils/entryStorage.d.ts +8 -15
  424. package/utils/entryStorage.js +31 -59
  425. package/utils/entryStorage.js.map +1 -1
  426. package/utils/getBaseFieldType.js +3 -0
  427. package/utils/getBaseFieldType.js.map +1 -1
  428. package/utils/getSchemaFromFieldPlugins.d.ts +3 -2
  429. package/utils/getSchemaFromFieldPlugins.js +5 -9
  430. package/utils/getSchemaFromFieldPlugins.js.map +1 -1
  431. package/utils/renderFields.d.ts +4 -3
  432. package/utils/renderFields.js +14 -9
  433. package/utils/renderFields.js.map +1 -1
  434. package/utils/renderGetFilterFields.d.ts +3 -2
  435. package/utils/renderGetFilterFields.js +2 -2
  436. package/utils/renderGetFilterFields.js.map +1 -1
  437. package/utils/renderInputFields.d.ts +4 -3
  438. package/utils/renderInputFields.js +5 -11
  439. package/utils/renderInputFields.js.map +1 -1
  440. package/utils/renderListFilterFields.d.ts +3 -2
  441. package/utils/renderListFilterFields.js +5 -3
  442. package/utils/renderListFilterFields.js.map +1 -1
  443. package/utils/renderSortEnum.d.ts +4 -4
  444. package/utils/renderSortEnum.js +11 -11
  445. package/utils/renderSortEnum.js.map +1 -1
  446. package/graphql/schema/createFieldTypePluginRecords.d.ts +0 -3
  447. package/graphql/schema/createFieldTypePluginRecords.js +0 -8
  448. package/graphql/schema/createFieldTypePluginRecords.js.map +0 -1
  449. package/graphqlFields/boolean.d.ts +0 -2
  450. package/graphqlFields/boolean.js +0 -52
  451. package/graphqlFields/boolean.js.map +0 -1
  452. package/graphqlFields/datetime.d.ts +0 -2
  453. package/graphqlFields/datetime.js +0 -71
  454. package/graphqlFields/datetime.js.map +0 -1
  455. package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +0 -2
  456. package/graphqlFields/dynamicZone/dynamicZoneField.js +0 -313
  457. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +0 -1
  458. package/graphqlFields/dynamicZone/index.d.ts +0 -1
  459. package/graphqlFields/dynamicZone/index.js +0 -3
  460. package/graphqlFields/dynamicZone/index.js.map +0 -1
  461. package/graphqlFields/file.d.ts +0 -2
  462. package/graphqlFields/file.js +0 -37
  463. package/graphqlFields/file.js.map +0 -1
  464. package/graphqlFields/helpers.js +0 -20
  465. package/graphqlFields/helpers.js.map +0 -1
  466. package/graphqlFields/index.d.ts +0 -2
  467. package/graphqlFields/index.js +0 -15
  468. package/graphqlFields/index.js.map +0 -1
  469. package/graphqlFields/json.d.ts +0 -2
  470. package/graphqlFields/json.js +0 -42
  471. package/graphqlFields/json.js.map +0 -1
  472. package/graphqlFields/longText.d.ts +0 -2
  473. package/graphqlFields/longText.js +0 -57
  474. package/graphqlFields/longText.js.map +0 -1
  475. package/graphqlFields/number.d.ts +0 -2
  476. package/graphqlFields/number.js +0 -63
  477. package/graphqlFields/number.js.map +0 -1
  478. package/graphqlFields/object.d.ts +0 -2
  479. package/graphqlFields/object.js +0 -245
  480. package/graphqlFields/object.js.map +0 -1
  481. package/graphqlFields/ref.d.ts +0 -2
  482. package/graphqlFields/ref.js +0 -286
  483. package/graphqlFields/ref.js.map +0 -1
  484. package/graphqlFields/richText/richTextResolver.js.map +0 -1
  485. package/graphqlFields/richText.d.ts +0 -2
  486. package/graphqlFields/richText.js +0 -48
  487. package/graphqlFields/richText.js.map +0 -1
  488. package/graphqlFields/searchableJson.d.ts +0 -2
  489. package/graphqlFields/searchableJson.js +0 -53
  490. package/graphqlFields/searchableJson.js.map +0 -1
  491. package/graphqlFields/text.d.ts +0 -2
  492. package/graphqlFields/text.js +0 -59
  493. package/graphqlFields/text.js.map +0 -1
  494. package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +0 -20
  495. package/plugins/CmsGraphQLSchemaSorterPlugin.js +0 -19
  496. package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +0 -1
  497. package/plugins/StorageTransformPlugin.d.ts +0 -35
  498. package/plugins/StorageTransformPlugin.js +0 -26
  499. package/plugins/StorageTransformPlugin.js.map +0 -1
  500. package/storage/date.d.ts +0 -3
  501. package/storage/date.js +0 -110
  502. package/storage/date.js.map +0 -1
  503. package/storage/default.d.ts +0 -2
  504. package/storage/default.js +0 -19
  505. package/storage/default.js.map +0 -1
  506. package/storage/dynamicZone.d.ts +0 -2
  507. package/storage/dynamicZone.js +0 -149
  508. package/storage/dynamicZone.js.map +0 -1
  509. package/storage/index.d.ts +0 -1
  510. package/storage/index.js +0 -13
  511. package/storage/index.js.map +0 -1
  512. package/storage/json.d.ts +0 -2
  513. package/storage/json.js +0 -49
  514. package/storage/json.js.map +0 -1
  515. package/storage/object.d.ts +0 -2
  516. package/storage/object.js +0 -104
  517. package/storage/object.js.map +0 -1
  518. package/validators/dateGte.d.ts +0 -2
  519. package/validators/dateGte.js +0 -25
  520. package/validators/dateGte.js.map +0 -1
  521. package/validators/dateLte.d.ts +0 -2
  522. package/validators/dateLte.js +0 -25
  523. package/validators/dateLte.js.map +0 -1
  524. package/validators/gte.d.ts +0 -2
  525. package/validators/gte.js +0 -22
  526. package/validators/gte.js.map +0 -1
  527. package/validators/in.d.ts +0 -2
  528. package/validators/in.js +0 -22
  529. package/validators/in.js.map +0 -1
  530. package/validators/index.d.ts +0 -1
  531. package/validators/index.js +0 -16
  532. package/validators/index.js.map +0 -1
  533. package/validators/lte.d.ts +0 -2
  534. package/validators/lte.js +0 -22
  535. package/validators/lte.js.map +0 -1
  536. package/validators/maxLength.d.ts +0 -2
  537. package/validators/maxLength.js +0 -22
  538. package/validators/maxLength.js.map +0 -1
  539. package/validators/minLength.d.ts +0 -2
  540. package/validators/minLength.js +0 -22
  541. package/validators/minLength.js.map +0 -1
  542. package/validators/pattern.d.ts +0 -2
  543. package/validators/pattern.js +0 -36
  544. package/validators/pattern.js.map +0 -1
  545. package/validators/patternPlugins/email.d.ts +0 -2
  546. package/validators/patternPlugins/email.js +0 -13
  547. package/validators/patternPlugins/email.js.map +0 -1
  548. package/validators/patternPlugins/index.d.ts +0 -2
  549. package/validators/patternPlugins/index.js +0 -11
  550. package/validators/patternPlugins/index.js.map +0 -1
  551. package/validators/patternPlugins/lowerCase.d.ts +0 -2
  552. package/validators/patternPlugins/lowerCase.js +0 -13
  553. package/validators/patternPlugins/lowerCase.js.map +0 -1
  554. package/validators/patternPlugins/lowerCaseSpace.d.ts +0 -2
  555. package/validators/patternPlugins/lowerCaseSpace.js +0 -13
  556. package/validators/patternPlugins/lowerCaseSpace.js.map +0 -1
  557. package/validators/patternPlugins/upperCase.d.ts +0 -2
  558. package/validators/patternPlugins/upperCase.js +0 -13
  559. package/validators/patternPlugins/upperCase.js.map +0 -1
  560. package/validators/patternPlugins/upperCaseSpace.d.ts +0 -2
  561. package/validators/patternPlugins/upperCaseSpace.js +0 -13
  562. package/validators/patternPlugins/upperCaseSpace.js.map +0 -1
  563. package/validators/patternPlugins/url.d.ts +0 -2
  564. package/validators/patternPlugins/url.js +0 -13
  565. package/validators/patternPlugins/url.js.map +0 -1
  566. package/validators/required.d.ts +0 -2
  567. package/validators/required.js +0 -17
  568. package/validators/required.js.map +0 -1
  569. package/validators/timeGte.d.ts +0 -2
  570. package/validators/timeGte.js +0 -20
  571. package/validators/timeGte.js.map +0 -1
  572. package/validators/timeLte.d.ts +0 -2
  573. package/validators/timeLte.js +0 -20
  574. package/validators/timeLte.js.map +0 -1
  575. package/validators/unique.d.ts +0 -6
  576. package/validators/unique.js +0 -57
  577. package/validators/unique.js.map +0 -1
@@ -0,0 +1,280 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import { createTypeName } from "../../../../utils/createTypeName.js";
3
+ import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
4
+ import { createTypeDefsForTemplates } from "./dynamicZone/createTypeDefsForTemplates.js";
5
+ import { normalizeDynamicZoneInput } from "./dynamicZone/normalizeDynamicZoneInput.js";
6
+ const createUnionTypeName = (model, field) => {
7
+ return `${model.singularApiName}_${createTypeName(field.fieldId)}`;
8
+ };
9
+ const getFieldTemplates = field => {
10
+ if (!Array.isArray(field.settings?.templates)) {
11
+ return [];
12
+ }
13
+ return field.settings.templates;
14
+ };
15
+ const remapTemplateValue = (value, typeName) => {
16
+ return {
17
+ ...value,
18
+ __typename: typeName
19
+ };
20
+ };
21
+ const createDynamicZoneResolver = endpointType => {
22
+ return ({
23
+ model,
24
+ models,
25
+ field,
26
+ fieldRegistry,
27
+ createFieldResolvers,
28
+ graphQLType
29
+ }) => {
30
+ const dzField = field;
31
+ const templates = getFieldTemplates(dzField);
32
+ if (!templates.length) {
33
+ return false;
34
+ }
35
+ const resolver = parent => {
36
+ const value = parent[field.fieldId];
37
+ if (!value) {
38
+ return value;
39
+ }
40
+ const typeName = `${graphQLType}_${createTypeName(field.fieldId)}`;
41
+ if (field.list && Array.isArray(value)) {
42
+ return value.map(v => {
43
+ const template = templates.find(tpl => tpl.id === v._templateId);
44
+ if (!template) {
45
+ return undefined;
46
+ }
47
+ return remapTemplateValue(v, `${typeName}_${template.gqlTypeName}`);
48
+ });
49
+ }
50
+ const template = templates.find(tpl => tpl.id === value._templateId);
51
+ if (!template) {
52
+ return undefined;
53
+ }
54
+ return remapTemplateValue(value, `${typeName}_${template.gqlTypeName}`);
55
+ };
56
+ const {
57
+ templateTypes
58
+ } = createTypeDefsForTemplates({
59
+ models,
60
+ field,
61
+ type: endpointType,
62
+ typeOfType: "type",
63
+ model,
64
+ fieldRegistry,
65
+ templates
66
+ });
67
+ const replace = new RegExp(`${model.singularApiName}_`, "g");
68
+ const typeResolvers = templateTypes.map(templateType => {
69
+ return templateType.replace(replace, `${graphQLType}_`);
70
+ }).reduce((typeResolvers, templateType, index) => {
71
+ return {
72
+ ...typeResolvers,
73
+ ...createFieldResolvers({
74
+ graphQLType: templateType,
75
+ fields: dzField.settings.templates[index].fields
76
+ })
77
+ };
78
+ }, {});
79
+ return {
80
+ resolver,
81
+ typeResolvers
82
+ };
83
+ };
84
+ };
85
+ class ReadApi {
86
+ createTypeField({
87
+ models,
88
+ model,
89
+ field,
90
+ fieldRegistry
91
+ }) {
92
+ const dzField = field;
93
+ const templates = getFieldTemplates(dzField);
94
+ if (!templates.length) {
95
+ return null;
96
+ }
97
+ const unionTypeName = createUnionTypeName(model, field);
98
+ const {
99
+ typeDefs,
100
+ templateTypes
101
+ } = createTypeDefsForTemplates({
102
+ models,
103
+ field,
104
+ type: "read",
105
+ typeOfType: "type",
106
+ model,
107
+ fieldRegistry,
108
+ templates
109
+ });
110
+ typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
111
+ return {
112
+ fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,
113
+ typeDefs: typeDefs.join("\n")
114
+ };
115
+ }
116
+ createResolver(params) {
117
+ return createDynamicZoneResolver("read")(params);
118
+ }
119
+ }
120
+ class ManageApi {
121
+ createTypeField({
122
+ models,
123
+ model,
124
+ field,
125
+ fieldRegistry
126
+ }) {
127
+ const dzField = field;
128
+ const templates = getFieldTemplates(dzField);
129
+ if (!templates.length) {
130
+ return null;
131
+ }
132
+ const unionTypeName = createUnionTypeName(model, field);
133
+ const {
134
+ typeDefs,
135
+ templateTypes
136
+ } = createTypeDefsForTemplates({
137
+ models,
138
+ field,
139
+ type: "manage",
140
+ typeOfType: "type",
141
+ model,
142
+ fieldRegistry,
143
+ templates
144
+ });
145
+
146
+ /* Add _templateId. */
147
+ const templateIds = templateTypes.map(type => {
148
+ return `extend type ${type} {
149
+ _templateId: ID!
150
+ }
151
+ `;
152
+ });
153
+ typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(" | ")}`);
154
+ return {
155
+ fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,
156
+ typeDefs: typeDefs.concat(templateIds).join("\n")
157
+ };
158
+ }
159
+ createInputField({
160
+ models,
161
+ model,
162
+ field,
163
+ fieldRegistry
164
+ }) {
165
+ const dzField = field;
166
+ const templates = getFieldTemplates(dzField);
167
+ if (!templates.length) {
168
+ return null;
169
+ }
170
+ const {
171
+ typeDefs,
172
+ templateTypes
173
+ } = createTypeDefsForTemplates({
174
+ models,
175
+ field,
176
+ type: "manage",
177
+ typeOfType: "input",
178
+ model,
179
+ fieldRegistry,
180
+ templates
181
+ });
182
+ const typeName = `${model.singularApiName}_${createTypeName(field.fieldId)}`;
183
+ const inputProperties = templateTypes.map(inputTypeName => {
184
+ const key = inputTypeName.replace(`${typeName}_`, "").replace("Input", "");
185
+ return [key, inputTypeName];
186
+ });
187
+
188
+ /**
189
+ * Generate a field input type, similar to this example:
190
+ *
191
+ * input Article_ContentInput {
192
+ * Hero: Article_Content_HeroInput
193
+ * SimpleText: Article_Content_SimpleTextInput
194
+ * }
195
+ */
196
+ typeDefs.push(`input ${typeName}Input {
197
+ ${inputProperties.map(([key, value]) => `
198
+ ${key}: ${value}
199
+ `)}
200
+ }`);
201
+ return {
202
+ fields: createGraphQLInputField(field, `${typeName}Input`),
203
+ typeDefs: typeDefs.join("\n")
204
+ };
205
+ }
206
+ createResolver(params) {
207
+ return createDynamicZoneResolver("manage")(params);
208
+ }
209
+ async normalizeInput({
210
+ field,
211
+ input
212
+ }) {
213
+ const dzField = field;
214
+ const templates = dzField.settings?.templates || [];
215
+ if (Array.isArray(input) && field.list) {
216
+ return input.map(value => normalizeDynamicZoneInput(value, templates)).filter(Boolean);
217
+ }
218
+ return normalizeDynamicZoneInput(input, templates);
219
+ }
220
+ }
221
+ class DynamicZoneToGraphQL {
222
+ read = new ReadApi();
223
+ manage = new ManageApi();
224
+ fieldType = "dynamicZone";
225
+ isSearchable = false;
226
+ isSortable = false;
227
+ isFullTextSearchable = false;
228
+ getReadApi() {
229
+ return this.read;
230
+ }
231
+ getManageApi() {
232
+ return this.manage;
233
+ }
234
+ validateChildFields(params) {
235
+ const field = params.field;
236
+ const originalField = params.originalField;
237
+ const getOriginalTemplateFields = templateId => {
238
+ if (!originalField?.settings?.templates) {
239
+ return [];
240
+ }
241
+ const template = originalField.settings.templates.find(t => t.id === templateId);
242
+ return template?.fields || [];
243
+ };
244
+ for (const template of field.settings.templates) {
245
+ params.validate({
246
+ fields: template.fields,
247
+ originalFields: getOriginalTemplateFields(template.id)
248
+ });
249
+ }
250
+ }
251
+ getFieldAst(field, converter) {
252
+ const dzField = field;
253
+ const {
254
+ templates = []
255
+ } = dzField.settings;
256
+ return {
257
+ type: "field",
258
+ field,
259
+ children: templates.map(({
260
+ fields,
261
+ ...template
262
+ }) => {
263
+ return {
264
+ type: "collection",
265
+ collection: {
266
+ ...template,
267
+ discriminator: "_templateId"
268
+ },
269
+ children: fields.map(f => converter.toAst(f))
270
+ };
271
+ })
272
+ };
273
+ }
274
+ }
275
+ export const DynamicZoneFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
276
+ implementation: DynamicZoneToGraphQL,
277
+ dependencies: []
278
+ });
279
+
280
+ //# sourceMappingURL=DynamicZoneToGraphQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CmsModelFieldToGraphQL","createTypeName","createGraphQLInputField","createTypeDefsForTemplates","normalizeDynamicZoneInput","createUnionTypeName","model","field","singularApiName","fieldId","getFieldTemplates","Array","isArray","settings","templates","remapTemplateValue","value","typeName","__typename","createDynamicZoneResolver","endpointType","models","fieldRegistry","createFieldResolvers","graphQLType","dzField","length","resolver","parent","list","map","v","template","find","tpl","id","_templateId","undefined","gqlTypeName","templateTypes","type","typeOfType","replace","RegExp","typeResolvers","templateType","reduce","index","fields","ReadApi","createTypeField","unionTypeName","typeDefs","unshift","join","createResolver","params","ManageApi","templateIds","concat","createInputField","inputProperties","inputTypeName","key","push","normalizeInput","input","filter","Boolean","DynamicZoneToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","validateChildFields","originalField","getOriginalTemplateFields","templateId","t","validate","originalFields","getFieldAst","converter","children","collection","discriminator","f","toAst","DynamicZoneFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["DynamicZoneToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type {\n ApiEndpoint,\n CmsDynamicZoneTemplate,\n CmsModel,\n CmsModelDynamicZoneField,\n CmsModelField,\n CmsModelFieldType,\n CmsModelFieldDefinition\n} from \"~/types/index.js\";\nimport type { ValidateChildFieldsParams } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldAstNode, ICmsModelFieldToAst } from \"~/types/modelAst.js\";\nimport type { GraphQLFieldResolver } from \"@webiny/handler-graphql/types.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { createTypeName } from \"~/utils/createTypeName.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\nimport { createTypeDefsForTemplates } from \"./dynamicZone/createTypeDefsForTemplates.js\";\nimport { normalizeDynamicZoneInput } from \"./dynamicZone/normalizeDynamicZoneInput.js\";\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${model.singularApiName}_${createTypeName(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\nconst remapTemplateValue = (value: any, typeName: string) => {\n return { ...value, __typename: typeName };\n};\n\nconst createDynamicZoneResolver = (\n endpointType: ApiEndpoint\n): ((params: CmsModelFieldToGraphQL.ResolverParams) => CmsModelFieldToGraphQL.Resolver) => {\n return ({ model, models, field, fieldRegistry, createFieldResolvers, graphQLType }) => {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return false;\n }\n\n const resolver = (parent: any) => {\n const value = parent[field.fieldId];\n if (!value) {\n return value;\n }\n\n const typeName = `${graphQLType}_${createTypeName(field.fieldId)}`;\n\n if (field.list && Array.isArray(value)) {\n return value.map(v => {\n const template = templates.find(tpl => tpl.id === v._templateId);\n if (!template) {\n return undefined;\n }\n return remapTemplateValue(v, `${typeName}_${template.gqlTypeName}`);\n });\n }\n\n const template = templates.find(tpl => tpl.id === value._templateId);\n if (!template) {\n return undefined;\n }\n return remapTemplateValue(value, `${typeName}_${template.gqlTypeName}`);\n };\n\n const { templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: endpointType,\n typeOfType: \"type\",\n model,\n fieldRegistry,\n templates\n });\n\n const replace = new RegExp(`${model.singularApiName}_`, \"g\");\n\n const typeResolvers = templateTypes\n .map(templateType => {\n return templateType.replace(replace, `${graphQLType}_`);\n })\n .reduce<Record<string, Record<string, GraphQLFieldResolver>>>(\n (typeResolvers, templateType, index) => {\n return {\n ...typeResolvers,\n ...createFieldResolvers({\n graphQLType: templateType,\n fields: dzField.settings.templates[index].fields\n })\n };\n },\n {}\n );\n\n return {\n resolver,\n typeResolvers\n };\n };\n};\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n if (!templates.length) {\n return null;\n }\n\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 fieldRegistry,\n templates\n });\n\n typeDefs.unshift(`union ${unionTypeName} = ${templateTypes.join(\" | \")}`);\n\n return {\n fields: `${field.fieldId}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,\n typeDefs: typeDefs.join(\"\\n\")\n };\n }\n\n public createResolver(\n params: CmsModelFieldToGraphQL.ResolverParams\n ): CmsModelFieldToGraphQL.Resolver {\n return createDynamicZoneResolver(\"read\")(params);\n }\n}\n\nclass ManageApi implements CmsModelFieldToGraphQL.ManageApi {\n public createTypeField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return null;\n }\n\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 fieldRegistry,\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}: ${field.list ? `[${unionTypeName}!]` : unionTypeName}`,\n typeDefs: typeDefs.concat(templateIds).join(\"\\n\")\n };\n }\n\n public createInputField({\n models,\n model,\n field,\n fieldRegistry\n }: CmsModelFieldToGraphQL.TypeFieldParams): CmsModelFieldDefinition | null {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = getFieldTemplates(dzField);\n\n if (!templates.length) {\n return null;\n }\n\n const { typeDefs, templateTypes } = createTypeDefsForTemplates({\n models,\n field,\n type: \"manage\",\n typeOfType: \"input\",\n model,\n fieldRegistry,\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\n public createResolver(\n params: CmsModelFieldToGraphQL.ResolverParams\n ): CmsModelFieldToGraphQL.Resolver {\n return createDynamicZoneResolver(\"manage\")(params);\n }\n\n public async normalizeInput<T>({\n field,\n input\n }: CmsModelFieldToGraphQL.InputNormalizeParams): Promise<T> {\n const dzField = field as CmsModelDynamicZoneField;\n const templates = dzField.settings?.templates || [];\n\n if (Array.isArray(input) && field.list) {\n return input\n .map(value => normalizeDynamicZoneInput(value, templates))\n .filter(Boolean) as T;\n }\n\n return normalizeDynamicZoneInput(input as GenericRecord<string>, templates) as T;\n }\n}\n\nclass DynamicZoneToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"dynamicZone\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n\n public validateChildFields(params: ValidateChildFieldsParams<CmsModelField>): void {\n const field = params.field as CmsModelDynamicZoneField;\n const originalField = params.originalField as CmsModelDynamicZoneField | undefined;\n\n const getOriginalTemplateFields = (templateId: string) => {\n if (!originalField?.settings?.templates) {\n return [];\n }\n const template = originalField.settings.templates.find(t => t.id === templateId);\n return template?.fields || [];\n };\n\n for (const template of field.settings.templates) {\n params.validate({\n fields: template.fields,\n originalFields: getOriginalTemplateFields(template.id)\n });\n }\n }\n\n public getFieldAst(field: CmsModelField, converter: ICmsModelFieldToAst): CmsModelFieldAstNode {\n const dzField = field as CmsModelDynamicZoneField;\n const { templates = [] } = dzField.settings;\n\n return {\n type: \"field\",\n field,\n children: templates.map(({ fields, ...template }) => {\n return {\n type: \"collection\" as const,\n collection: {\n ...template,\n discriminator: \"_templateId\"\n },\n children: fields.map(f => converter.toAst(f))\n };\n })\n };\n }\n}\n\nexport const DynamicZoneFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: DynamicZoneToGraphQL,\n dependencies: []\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import type { CmsModelFieldType } from "../../../../types/modelField.js";
3
+ declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
4
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
5
+ }
6
+ declare class ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {
7
+ createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
8
+ }
9
+ declare class FileToGraphQL implements CmsModelFieldToGraphQL.Interface {
10
+ readonly read: ReadApi;
11
+ readonly manage: ManageApi;
12
+ readonly fieldType: CmsModelFieldType;
13
+ readonly isSearchable: boolean;
14
+ readonly isSortable: boolean;
15
+ readonly isFullTextSearchable: boolean;
16
+ getReadApi(): CmsModelFieldToGraphQL.ReadApi;
17
+ getManageApi(): CmsModelFieldToGraphQL.ManageApi;
18
+ }
19
+ export declare const FileFieldToGraphQL: typeof FileToGraphQL & {
20
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
21
+ };
22
+ export {};
@@ -0,0 +1,39 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
3
+ class ReadApi {
4
+ createTypeField({
5
+ field
6
+ }) {
7
+ if (field.list) {
8
+ return `${field.fieldId}: [String]`;
9
+ }
10
+ return `${field.fieldId}: String`;
11
+ }
12
+ }
13
+ class ManageApi extends ReadApi {
14
+ createInputField({
15
+ field
16
+ }) {
17
+ return createGraphQLInputField(field, "String");
18
+ }
19
+ }
20
+ class FileToGraphQL {
21
+ read = new ReadApi();
22
+ manage = new ManageApi();
23
+ fieldType = "file";
24
+ isSearchable = false;
25
+ isSortable = false;
26
+ isFullTextSearchable = false;
27
+ getReadApi() {
28
+ return this.read;
29
+ }
30
+ getManageApi() {
31
+ return this.manage;
32
+ }
33
+ }
34
+ export const FileFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
35
+ implementation: FileToGraphQL,
36
+ dependencies: []
37
+ });
38
+
39
+ //# sourceMappingURL=FileToGraphQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","ReadApi","createTypeField","field","list","fieldId","ManageApi","createInputField","FileToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","FileFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["FileToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n }\n}\n\nclass ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"String\");\n }\n}\n\nclass FileToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"file\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const FileFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: FileToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,YAAY;IACvC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,UAAU;EACrC;AACJ;AAEA,MAAMC,SAAS,SAASL,OAAO,CAA6C;EACjEM,gBAAgBA,CAAC;IAAEJ;EAA8C,CAAC,EAAU;IAC/E,OAAOH,uBAAuB,CAACG,KAAK,EAAE,QAAQ,CAAC;EACnD;AACJ;AAEA,MAAMK,aAAa,CAA6C;EAC5CC,IAAI,GAAG,IAAIR,OAAO,CAAC,CAAC;EACpBS,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,MAAM;EACrCC,YAAY,GAAY,KAAK;EAC7BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,KAAK;EAE9CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,kBAAkB,GAAGlB,sBAAsB,CAACmB,oBAAoB,CAAC;EAC1EC,cAAc,EAAEX,aAAa;EAC7BY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import type { CmsModelFieldType } from "../../../../types/modelField.js";
3
+ declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
4
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
5
+ createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string;
6
+ }
7
+ declare class ManageApi implements CmsModelFieldToGraphQL.ManageApi {
8
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
9
+ createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
10
+ }
11
+ declare class JsonToGraphQL implements CmsModelFieldToGraphQL.Interface {
12
+ readonly read: ReadApi;
13
+ readonly manage: ManageApi;
14
+ readonly fieldType: CmsModelFieldType;
15
+ readonly isSearchable: boolean;
16
+ readonly isSortable: boolean;
17
+ readonly isFullTextSearchable: boolean;
18
+ getReadApi(): CmsModelFieldToGraphQL.ReadApi;
19
+ getManageApi(): CmsModelFieldToGraphQL.ManageApi;
20
+ }
21
+ export declare const JsonFieldToGraphQL: typeof JsonToGraphQL & {
22
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
23
+ };
24
+ export {};
@@ -0,0 +1,52 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
3
+ class ReadApi {
4
+ createTypeField({
5
+ field
6
+ }) {
7
+ if (field.list) {
8
+ return `${field.fieldId}: [JSON]`;
9
+ }
10
+ return `${field.fieldId}: JSON`;
11
+ }
12
+ createGetFilters({
13
+ field
14
+ }) {
15
+ return `${field.fieldId}: JSON`;
16
+ }
17
+ }
18
+ class ManageApi {
19
+ createTypeField({
20
+ field
21
+ }) {
22
+ if (field.list) {
23
+ return `${field.fieldId}: [JSON]`;
24
+ }
25
+ return `${field.fieldId}: JSON`;
26
+ }
27
+ createInputField({
28
+ field
29
+ }) {
30
+ return createGraphQLInputField(field, "JSON");
31
+ }
32
+ }
33
+ class JsonToGraphQL {
34
+ read = new ReadApi();
35
+ manage = new ManageApi();
36
+ fieldType = "json";
37
+ isSearchable = false;
38
+ isSortable = false;
39
+ isFullTextSearchable = false;
40
+ getReadApi() {
41
+ return this.read;
42
+ }
43
+ getManageApi() {
44
+ return this.manage;
45
+ }
46
+ }
47
+ export const JsonFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
48
+ implementation: JsonToGraphQL,
49
+ dependencies: []
50
+ });
51
+
52
+ //# sourceMappingURL=JsonToGraphQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","ReadApi","createTypeField","field","list","fieldId","createGetFilters","ManageApi","createInputField","JsonToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","JsonFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["JsonToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n }\n\n public createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string {\n return `${field.fieldId}: JSON`;\n }\n}\n\nclass ManageApi implements CmsModelFieldToGraphQL.ManageApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n }\n\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"JSON\");\n }\n}\n\nclass JsonToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"json\";\n public readonly isSearchable: boolean = false;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = false;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const JsonFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: JsonToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,UAAU;IACrC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,QAAQ;EACnC;EAEOC,gBAAgBA,CAAC;IAAEH;EAA+C,CAAC,EAAU;IAChF,OAAO,GAAGA,KAAK,CAACE,OAAO,QAAQ;EACnC;AACJ;AAEA,MAAME,SAAS,CAA6C;EACjDL,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACE,OAAO,UAAU;IACrC;IACA,OAAO,GAAGF,KAAK,CAACE,OAAO,QAAQ;EACnC;EAEOG,gBAAgBA,CAAC;IAAEL;EAA8C,CAAC,EAAU;IAC/E,OAAOH,uBAAuB,CAACG,KAAK,EAAE,MAAM,CAAC;EACjD;AACJ;AAEA,MAAMM,aAAa,CAA6C;EAC5CC,IAAI,GAAG,IAAIT,OAAO,CAAC,CAAC;EACpBU,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,MAAM;EACrCC,YAAY,GAAY,KAAK;EAC7BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,KAAK;EAE9CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,kBAAkB,GAAGnB,sBAAsB,CAACoB,oBAAoB,CAAC;EAC1EC,cAAc,EAAEX,aAAa;EAC7BY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import type { CmsModelFieldType } from "../../../../types/modelField.js";
3
+ declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
4
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
5
+ createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
6
+ createResolver({ field }: CmsModelFieldToGraphQL.ResolverParams): CmsModelFieldToGraphQL.Resolver;
7
+ }
8
+ declare class ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {
9
+ createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
10
+ }
11
+ declare class LongTextToGraphQL implements CmsModelFieldToGraphQL.Interface {
12
+ readonly read: ReadApi;
13
+ readonly manage: ManageApi;
14
+ readonly fieldType: CmsModelFieldType;
15
+ readonly isSearchable: boolean;
16
+ readonly isSortable: boolean;
17
+ readonly isFullTextSearchable: boolean;
18
+ getReadApi(): CmsModelFieldToGraphQL.ReadApi;
19
+ getManageApi(): CmsModelFieldToGraphQL.ManageApi;
20
+ }
21
+ export declare const LongTextFieldToGraphQL: typeof LongTextToGraphQL & {
22
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
23
+ };
24
+ export {};
@@ -0,0 +1,57 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import { createGraphQLInputField } from "./utils/createGraphQLInputField.js";
3
+ const createListFilters = fieldId => {
4
+ return `
5
+ ${fieldId}_contains: String
6
+ ${fieldId}_not_contains: String
7
+ `;
8
+ };
9
+ class ReadApi {
10
+ createTypeField({
11
+ field
12
+ }) {
13
+ if (field.list) {
14
+ return `${field.fieldId}: [String]`;
15
+ }
16
+ return `${field.fieldId}: String`;
17
+ }
18
+ createListFilters({
19
+ field
20
+ }) {
21
+ return createListFilters(field.fieldId);
22
+ }
23
+ createResolver({
24
+ field
25
+ }) {
26
+ return async parent => {
27
+ return parent[field.fieldId] || null;
28
+ };
29
+ }
30
+ }
31
+ class ManageApi extends ReadApi {
32
+ createInputField({
33
+ field
34
+ }) {
35
+ return createGraphQLInputField(field, "String");
36
+ }
37
+ }
38
+ class LongTextToGraphQL {
39
+ read = new ReadApi();
40
+ manage = new ManageApi();
41
+ fieldType = "long-text";
42
+ isSearchable = true;
43
+ isSortable = false;
44
+ isFullTextSearchable = true;
45
+ getReadApi() {
46
+ return this.read;
47
+ }
48
+ getManageApi() {
49
+ return this.manage;
50
+ }
51
+ }
52
+ export const LongTextFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({
53
+ implementation: LongTextToGraphQL,
54
+ dependencies: []
55
+ });
56
+
57
+ //# sourceMappingURL=LongTextToGraphQL.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CmsModelFieldToGraphQL","createGraphQLInputField","createListFilters","fieldId","ReadApi","createTypeField","field","list","createResolver","parent","ManageApi","createInputField","LongTextToGraphQL","read","manage","fieldType","isSearchable","isSortable","isFullTextSearchable","getReadApi","getManageApi","LongTextFieldToGraphQL","createImplementation","implementation","dependencies"],"sources":["LongTextToGraphQL.ts"],"sourcesContent":["import { CmsModelFieldToGraphQL } from \"../abstractions/CmsModelFieldToGraphQL.js\";\nimport type { CmsModelFieldType } from \"~/types/modelField.js\";\nimport { createGraphQLInputField } from \"./utils/createGraphQLInputField.js\";\n\nconst createListFilters = (fieldId: string): string => {\n return `\n ${fieldId}_contains: String\n ${fieldId}_not_contains: String\n `;\n};\n\nclass ReadApi implements CmsModelFieldToGraphQL.ReadApi {\n public createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n if (field.list) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n }\n\n public createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string {\n return createListFilters(field.fieldId);\n }\n\n public createResolver({\n field\n }: CmsModelFieldToGraphQL.ResolverParams): CmsModelFieldToGraphQL.Resolver {\n return async (parent: any) => {\n return parent[field.fieldId] || null;\n };\n }\n}\n\nclass ManageApi extends ReadApi implements CmsModelFieldToGraphQL.ManageApi {\n public createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string {\n return createGraphQLInputField(field, \"String\");\n }\n}\n\nclass LongTextToGraphQL implements CmsModelFieldToGraphQL.Interface {\n public readonly read = new ReadApi();\n public readonly manage = new ManageApi();\n\n public readonly fieldType: CmsModelFieldType = \"long-text\";\n public readonly isSearchable: boolean = true;\n public readonly isSortable: boolean = false;\n public readonly isFullTextSearchable: boolean = true;\n\n public getReadApi(): CmsModelFieldToGraphQL.ReadApi {\n return this.read;\n }\n\n public getManageApi(): CmsModelFieldToGraphQL.ManageApi {\n return this.manage;\n }\n}\n\nexport const LongTextFieldToGraphQL = CmsModelFieldToGraphQL.createImplementation({\n implementation: LongTextToGraphQL,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,sBAAsB;AAE/B,SAASC,uBAAuB;AAEhC,MAAMC,iBAAiB,GAAIC,OAAe,IAAa;EACnD,OAAO;AACX,UAAUA,OAAO;AACjB,UAAUA,OAAO;AACjB,KAAK;AACL,CAAC;AAED,MAAMC,OAAO,CAA2C;EAC7CC,eAAeA,CAAC;IAAEC;EAA8C,CAAC,EAAU;IAC9E,IAAIA,KAAK,CAACC,IAAI,EAAE;MACZ,OAAO,GAAGD,KAAK,CAACH,OAAO,YAAY;IACvC;IACA,OAAO,GAAGG,KAAK,CAACH,OAAO,UAAU;EACrC;EAEOD,iBAAiBA,CAAC;IAAEI;EAAgD,CAAC,EAAU;IAClF,OAAOJ,iBAAiB,CAACI,KAAK,CAACH,OAAO,CAAC;EAC3C;EAEOK,cAAcA,CAAC;IAClBF;EACmC,CAAC,EAAmC;IACvE,OAAO,MAAOG,MAAW,IAAK;MAC1B,OAAOA,MAAM,CAACH,KAAK,CAACH,OAAO,CAAC,IAAI,IAAI;IACxC,CAAC;EACL;AACJ;AAEA,MAAMO,SAAS,SAASN,OAAO,CAA6C;EACjEO,gBAAgBA,CAAC;IAAEL;EAA8C,CAAC,EAAU;IAC/E,OAAOL,uBAAuB,CAACK,KAAK,EAAE,QAAQ,CAAC;EACnD;AACJ;AAEA,MAAMM,iBAAiB,CAA6C;EAChDC,IAAI,GAAG,IAAIT,OAAO,CAAC,CAAC;EACpBU,MAAM,GAAG,IAAIJ,SAAS,CAAC,CAAC;EAExBK,SAAS,GAAsB,WAAW;EAC1CC,YAAY,GAAY,IAAI;EAC5BC,UAAU,GAAY,KAAK;EAC3BC,oBAAoB,GAAY,IAAI;EAE7CC,UAAUA,CAAA,EAAmC;IAChD,OAAO,IAAI,CAACN,IAAI;EACpB;EAEOO,YAAYA,CAAA,EAAqC;IACpD,OAAO,IAAI,CAACN,MAAM;EACtB;AACJ;AAEA,OAAO,MAAMO,sBAAsB,GAAGrB,sBAAsB,CAACsB,oBAAoB,CAAC;EAC9EC,cAAc,EAAEX,iBAAiB;EACjCY,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ import { CmsModelFieldToGraphQL } from "../abstractions/CmsModelFieldToGraphQL.js";
2
+ import type { CmsModelFieldType } from "../../../../types/modelField.js";
3
+ declare class ReadApi implements CmsModelFieldToGraphQL.ReadApi {
4
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
5
+ createGetFilters({ field }: CmsModelFieldToGraphQL.GetFiltersParams): string;
6
+ createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
7
+ }
8
+ declare class ManageApi implements CmsModelFieldToGraphQL.ManageApi {
9
+ createTypeField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
10
+ createListFilters({ field }: CmsModelFieldToGraphQL.ListFiltersParams): string;
11
+ createInputField({ field }: CmsModelFieldToGraphQL.TypeFieldParams): string;
12
+ }
13
+ declare class NumberToGraphQL implements CmsModelFieldToGraphQL.Interface {
14
+ readonly read: ReadApi;
15
+ readonly manage: ManageApi;
16
+ readonly fieldType: CmsModelFieldType;
17
+ readonly isSearchable: boolean;
18
+ readonly isSortable: boolean;
19
+ readonly isFullTextSearchable: boolean;
20
+ getReadApi(): CmsModelFieldToGraphQL.ReadApi;
21
+ getManageApi(): CmsModelFieldToGraphQL.ManageApi;
22
+ }
23
+ export declare const NumberFieldToGraphQL: typeof NumberToGraphQL & {
24
+ __abstraction: import("@webiny/di").Abstraction<import("../abstractions/CmsModelFieldToGraphQL.js").ICmsModelFieldToGraphQL<import("~/types/modelField.js").CmsModelField>>;
25
+ };
26
+ export {};