@webiny/api-headless-cms 5.37.8 → 5.38.0-beta.1

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 (308) hide show
  1. package/constants.js +3 -1
  2. package/context.js +10 -17
  3. package/context.js.map +1 -1
  4. package/crud/contentEntry/afterDelete.js +3 -1
  5. package/crud/contentEntry/beforeCreate.js +3 -1
  6. package/crud/contentEntry/beforeUpdate.js +3 -1
  7. package/crud/contentEntry/entryDataValidation.d.ts +4 -2
  8. package/crud/contentEntry/entryDataValidation.js +220 -47
  9. package/crud/contentEntry/entryDataValidation.js.map +1 -1
  10. package/crud/contentEntry/markLockedFields.js +3 -1
  11. package/crud/contentEntry/referenceFieldsMapping.d.ts +6 -0
  12. package/crud/contentEntry/referenceFieldsMapping.js +118 -97
  13. package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
  14. package/crud/contentEntry/searchableFields.js +5 -3
  15. package/crud/contentEntry/searchableFields.js.map +1 -1
  16. package/crud/contentEntry.crud.js +68 -64
  17. package/crud/contentEntry.crud.js.map +1 -1
  18. package/crud/contentModel/beforeCreate.d.ts +1 -1
  19. package/crud/contentModel/beforeCreate.js +11 -9
  20. package/crud/contentModel/beforeCreate.js.map +1 -1
  21. package/crud/contentModel/beforeDelete.js +3 -1
  22. package/crud/contentModel/beforeUpdate.d.ts +1 -1
  23. package/crud/contentModel/beforeUpdate.js +3 -6
  24. package/crud/contentModel/beforeUpdate.js.map +1 -1
  25. package/crud/contentModel/compatibility/modelApiName.js +3 -1
  26. package/crud/contentModel/contentModelManagerFactory.js +3 -1
  27. package/crud/contentModel/createFieldStorageId.js +3 -1
  28. package/crud/contentModel/defaultFields.js +3 -1
  29. package/crud/contentModel/ensureTypeTag.d.ts +5 -0
  30. package/crud/contentModel/ensureTypeTag.js +21 -0
  31. package/crud/contentModel/ensureTypeTag.js.map +1 -0
  32. package/crud/contentModel/fields/descriptionField.js +3 -1
  33. package/crud/contentModel/fields/imageField.js +3 -1
  34. package/crud/contentModel/fields/titleField.js +3 -1
  35. package/crud/contentModel/listModelsFromDatabase.d.ts +10 -0
  36. package/crud/contentModel/listModelsFromDatabase.js +39 -0
  37. package/crud/contentModel/listModelsFromDatabase.js.map +1 -0
  38. package/crud/contentModel/validate/endingAllowed.js +3 -1
  39. package/crud/contentModel/validate/isModelEndingAllowed.js +4 -2
  40. package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
  41. package/crud/contentModel/validate/modelId.js +3 -1
  42. package/crud/contentModel/validate/pluralApiName.js +3 -1
  43. package/crud/contentModel/validate/singularApiName.js +3 -1
  44. package/crud/contentModel/validateModel.js +3 -1
  45. package/crud/contentModel/validateModel.js.map +1 -1
  46. package/crud/contentModel/validateModelFields.js +3 -1
  47. package/crud/contentModel/validation.d.ts +339 -58
  48. package/crud/contentModel/validation.js +71 -11
  49. package/crud/contentModel/validation.js.map +1 -1
  50. package/crud/contentModel.crud.js +80 -156
  51. package/crud/contentModel.crud.js.map +1 -1
  52. package/crud/contentModelGroup/beforeCreate.d.ts +1 -1
  53. package/crud/contentModelGroup/beforeCreate.js +15 -1
  54. package/crud/contentModelGroup/beforeCreate.js.map +1 -1
  55. package/crud/contentModelGroup/beforeDelete.js +3 -1
  56. package/crud/contentModelGroup/beforeUpdate.js +3 -1
  57. package/crud/contentModelGroup/listGroupsFromDatabase.d.ts +8 -0
  58. package/crud/contentModelGroup/listGroupsFromDatabase.js +22 -0
  59. package/crud/contentModelGroup/listGroupsFromDatabase.js.map +1 -0
  60. package/crud/contentModelGroup/validation.d.ts +9 -6
  61. package/crud/contentModelGroup/validation.js +5 -2
  62. package/crud/contentModelGroup/validation.js.map +1 -1
  63. package/crud/contentModelGroup.crud.js +89 -110
  64. package/crud/contentModelGroup.crud.js.map +1 -1
  65. package/crud/system.crud.js +4 -7
  66. package/crud/system.crud.js.map +1 -1
  67. package/export/crud/exporting.d.ts +3 -0
  68. package/export/crud/exporting.js +50 -0
  69. package/export/crud/exporting.js.map +1 -0
  70. package/export/crud/importing.d.ts +3 -0
  71. package/export/crud/importing.js +79 -0
  72. package/export/crud/importing.js.map +1 -0
  73. package/export/crud/imports/importData.d.ts +14 -0
  74. package/export/crud/imports/importData.js +25 -0
  75. package/export/crud/imports/importData.js.map +1 -0
  76. package/export/crud/imports/importGroups.d.ts +8 -0
  77. package/export/crud/imports/importGroups.js +99 -0
  78. package/export/crud/imports/importGroups.js.map +1 -0
  79. package/export/crud/imports/importModels.d.ts +8 -0
  80. package/export/crud/imports/importModels.js +134 -0
  81. package/export/crud/imports/importModels.js.map +1 -0
  82. package/export/crud/imports/validateGroups.d.ts +8 -0
  83. package/export/crud/imports/validateGroups.js +106 -0
  84. package/export/crud/imports/validateGroups.js.map +1 -0
  85. package/export/crud/imports/validateInput.d.ts +19 -0
  86. package/export/crud/imports/validateInput.js +49 -0
  87. package/export/crud/imports/validateInput.js.map +1 -0
  88. package/export/crud/imports/validateModels.d.ts +9 -0
  89. package/export/crud/imports/validateModels.js +204 -0
  90. package/export/crud/imports/validateModels.js.map +1 -0
  91. package/export/crud/index.d.ts +4 -0
  92. package/export/crud/index.js +15 -0
  93. package/export/crud/index.js.map +1 -0
  94. package/export/crud/sanitize.d.ts +4 -0
  95. package/export/crud/sanitize.js +35 -0
  96. package/export/crud/sanitize.js.map +1 -0
  97. package/export/graphql/index.d.ts +3 -0
  98. package/export/graphql/index.js +188 -0
  99. package/export/graphql/index.js.map +1 -0
  100. package/export/index.d.ts +2 -0
  101. package/export/index.js +29 -0
  102. package/export/index.js.map +1 -0
  103. package/export/types.d.ts +111 -0
  104. package/export/types.js +22 -0
  105. package/export/types.js.map +1 -0
  106. package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +3 -1
  107. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +3 -1
  108. package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +3 -1
  109. package/fieldConverters/index.js +3 -1
  110. package/graphql/buildSchemaPlugins.js +3 -1
  111. package/graphql/checkEndpointAccess.js +3 -1
  112. package/graphql/createExecutableSchema.js +3 -1
  113. package/graphql/createRequestBody.js +3 -1
  114. package/graphql/formatErrorPayload.js +3 -1
  115. package/graphql/generateSchema.js +3 -1
  116. package/graphql/getSchema.d.ts +0 -1
  117. package/graphql/getSchema.js +23 -13
  118. package/graphql/getSchema.js.map +1 -1
  119. package/graphql/graphQLHandlerFactory.js +3 -1
  120. package/graphql/handleRequest.js +3 -5
  121. package/graphql/handleRequest.js.map +1 -1
  122. package/graphql/index.d.ts +1 -1
  123. package/graphql/index.js +4 -2
  124. package/graphql/index.js.map +1 -1
  125. package/graphql/schema/baseContentSchema.js +3 -1
  126. package/graphql/schema/baseSchema.d.ts +2 -3
  127. package/graphql/schema/baseSchema.js +58 -2
  128. package/graphql/schema/baseSchema.js.map +1 -1
  129. package/graphql/schema/contentEntries.js +4 -2
  130. package/graphql/schema/contentEntries.js.map +1 -1
  131. package/graphql/schema/contentModelGroups.js +4 -1
  132. package/graphql/schema/contentModelGroups.js.map +1 -1
  133. package/graphql/schema/contentModels.js +5 -5
  134. package/graphql/schema/contentModels.js.map +1 -1
  135. package/graphql/schema/createFieldResolvers.js +3 -1
  136. package/graphql/schema/createFieldTypePluginRecords.js +3 -1
  137. package/graphql/schema/createManageResolvers.js +7 -1
  138. package/graphql/schema/createManageResolvers.js.map +1 -1
  139. package/graphql/schema/createManageSDL.js +8 -4
  140. package/graphql/schema/createManageSDL.js.map +1 -1
  141. package/graphql/schema/createPreviewResolvers.js +3 -1
  142. package/graphql/schema/createReadResolvers.js +3 -1
  143. package/graphql/schema/createReadSDL.js +3 -1
  144. package/graphql/schema/resolvers/commonFieldResolvers.js +3 -1
  145. package/graphql/schema/resolvers/manage/resolveCreate.d.ts +2 -1
  146. package/graphql/schema/resolvers/manage/resolveCreate.js +4 -2
  147. package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
  148. package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +2 -1
  149. package/graphql/schema/resolvers/manage/resolveCreateFrom.js +4 -2
  150. package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
  151. package/graphql/schema/resolvers/manage/resolveDelete.js +3 -1
  152. package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +3 -1
  153. package/graphql/schema/resolvers/manage/resolveGet.js +3 -1
  154. package/graphql/schema/resolvers/manage/resolveGetByIds.js +3 -1
  155. package/graphql/schema/resolvers/manage/resolveGetRevisions.js +3 -1
  156. package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +3 -1
  157. package/graphql/schema/resolvers/manage/resolveList.js +3 -1
  158. package/graphql/schema/resolvers/manage/resolveMove.js +3 -1
  159. package/graphql/schema/resolvers/manage/resolvePublish.js +3 -1
  160. package/graphql/schema/resolvers/manage/resolveRepublish.js +3 -1
  161. package/graphql/schema/resolvers/manage/resolveUnpublish.js +3 -1
  162. package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +2 -1
  163. package/graphql/schema/resolvers/manage/resolveUpdate.js +4 -2
  164. package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
  165. package/graphql/schema/resolvers/manage/resolveValidate.d.ts +8 -0
  166. package/graphql/schema/resolvers/manage/resolveValidate.js +20 -0
  167. package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -0
  168. package/graphql/schema/resolvers/preview/resolveGet.js +3 -1
  169. package/graphql/schema/resolvers/preview/resolveList.js +3 -1
  170. package/graphql/schema/resolvers/read/resolveGet.js +3 -1
  171. package/graphql/schema/resolvers/read/resolveList.js +3 -1
  172. package/graphql/schema/schemaPlugins.js +3 -1
  173. package/graphql/system.js +3 -1
  174. package/graphqlFields/boolean.js +3 -1
  175. package/graphqlFields/datetime.js +4 -3
  176. package/graphqlFields/datetime.js.map +1 -1
  177. package/graphqlFields/dynamicZone/dynamicZoneField.js +29 -6
  178. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
  179. package/graphqlFields/dynamicZone/dynamicZoneStorage.js +3 -1
  180. package/graphqlFields/dynamicZone/index.js +3 -1
  181. package/graphqlFields/file.js +3 -1
  182. package/graphqlFields/helpers.d.ts +0 -1
  183. package/graphqlFields/helpers.js +6 -18
  184. package/graphqlFields/helpers.js.map +1 -1
  185. package/graphqlFields/index.js +3 -1
  186. package/graphqlFields/longText.js +14 -3
  187. package/graphqlFields/longText.js.map +1 -1
  188. package/graphqlFields/number.js +3 -1
  189. package/graphqlFields/object.js +5 -17
  190. package/graphqlFields/object.js.map +1 -1
  191. package/graphqlFields/ref.js +4 -2
  192. package/graphqlFields/ref.js.map +1 -1
  193. package/graphqlFields/richText.js +3 -1
  194. package/graphqlFields/text.js +3 -1
  195. package/index.d.ts +1 -1
  196. package/index.js +5 -2
  197. package/index.js.map +1 -1
  198. package/modelManager/DefaultCmsModelManager.js +3 -1
  199. package/modelManager/index.js +3 -1
  200. package/package.json +18 -19
  201. package/parameters/context.js +3 -1
  202. package/parameters/header.js +3 -1
  203. package/parameters/index.js +3 -1
  204. package/parameters/manual.js +3 -1
  205. package/parameters/path.js +3 -1
  206. package/plugins/CmsGraphQLSchemaPlugin.js +3 -1
  207. package/plugins/CmsGraphQLSchemaSorterPlugin.js +3 -1
  208. package/plugins/CmsGroupPlugin.d.ts +6 -3
  209. package/plugins/CmsGroupPlugin.js +7 -2
  210. package/plugins/CmsGroupPlugin.js.map +1 -1
  211. package/plugins/CmsModelFieldConverterPlugin.js +3 -1
  212. package/plugins/CmsModelPlugin.d.ts +2 -2
  213. package/plugins/CmsModelPlugin.js +6 -2
  214. package/plugins/CmsModelPlugin.js.map +1 -1
  215. package/plugins/CmsParametersPlugin.js +3 -1
  216. package/plugins/StorageOperationsCmsModelPlugin.js +3 -1
  217. package/plugins/StorageTransformPlugin.js +3 -1
  218. package/plugins/index.js +3 -1
  219. package/storage/default.js +3 -1
  220. package/storage/object.js +3 -1
  221. package/types.d.ts +62 -230
  222. package/types.js +3 -17
  223. package/types.js.map +1 -1
  224. package/utils/access.js +3 -1
  225. package/utils/caching/Cache.d.ts +2 -0
  226. package/utils/caching/Cache.js +53 -0
  227. package/utils/caching/Cache.js.map +1 -0
  228. package/utils/caching/CacheKey.d.ts +3 -0
  229. package/utils/caching/CacheKey.js +41 -0
  230. package/utils/caching/CacheKey.js.map +1 -0
  231. package/utils/caching/index.d.ts +2 -0
  232. package/utils/caching/index.js +29 -0
  233. package/utils/caching/index.js.map +1 -0
  234. package/utils/caching/types.d.ts +9 -0
  235. package/utils/caching/types.js +7 -0
  236. package/utils/caching/types.js.map +1 -0
  237. package/utils/converters/Converter.js +3 -1
  238. package/utils/converters/ConverterCollection.js +3 -1
  239. package/utils/converters/valueKeyStorageConverter.js +3 -1
  240. package/utils/createTypeFromFields.js +6 -1
  241. package/utils/createTypeFromFields.js.map +1 -1
  242. package/utils/createTypeName.js +3 -1
  243. package/utils/entryStorage.js +3 -1
  244. package/utils/filterAsync.js +3 -1
  245. package/utils/getBaseFieldType.js +3 -1
  246. package/utils/getEntryDescription.js +3 -1
  247. package/utils/getEntryImage.js +3 -1
  248. package/utils/getEntryTitle.js +3 -1
  249. package/utils/getSchemaFromFieldPlugins.js +3 -1
  250. package/utils/incrementEntryIdVersion.js +3 -1
  251. package/utils/index.d.ts +1 -0
  252. package/utils/index.js +18 -0
  253. package/utils/index.js.map +1 -0
  254. package/utils/permissions/EntriesPermissions.js +3 -1
  255. package/utils/permissions/ModelGroupsPermissions.js +3 -1
  256. package/utils/permissions/ModelsPermissions.js +3 -1
  257. package/utils/renderFields.js +3 -1
  258. package/utils/renderGetFilterFields.js +3 -1
  259. package/utils/renderInputFields.js +3 -1
  260. package/utils/renderListFilterFields.js +3 -1
  261. package/utils/renderSortEnum.js +3 -1
  262. package/utils/toSlug.js +3 -1
  263. package/validators/dateGte.js +3 -1
  264. package/validators/dateLte.js +3 -1
  265. package/validators/gte.js +3 -1
  266. package/validators/in.js +3 -1
  267. package/validators/index.js +4 -3
  268. package/validators/index.js.map +1 -1
  269. package/validators/lte.js +3 -1
  270. package/validators/maxLength.js +3 -1
  271. package/validators/minLength.js +3 -1
  272. package/validators/pattern.js +3 -1
  273. package/validators/patternPlugins/email.js +3 -1
  274. package/validators/patternPlugins/index.js +3 -1
  275. package/validators/patternPlugins/lowerCase.js +3 -1
  276. package/validators/patternPlugins/lowerCaseSpace.js +3 -1
  277. package/validators/patternPlugins/upperCase.js +3 -1
  278. package/validators/patternPlugins/upperCaseSpace.js +3 -1
  279. package/validators/patternPlugins/url.js +3 -1
  280. package/validators/required.js +3 -1
  281. package/validators/timeGte.js +3 -1
  282. package/validators/timeLte.js +3 -1
  283. package/validators/unique.js +4 -2
  284. package/validators/unique.js.map +1 -1
  285. package/crud/contentModel/afterCreate.d.ts +0 -8
  286. package/crud/contentModel/afterCreate.js +0 -16
  287. package/crud/contentModel/afterCreate.js.map +0 -1
  288. package/crud/contentModel/afterCreateFrom.d.ts +0 -8
  289. package/crud/contentModel/afterCreateFrom.js +0 -16
  290. package/crud/contentModel/afterCreateFrom.js.map +0 -1
  291. package/crud/contentModel/afterDelete.d.ts +0 -8
  292. package/crud/contentModel/afterDelete.js +0 -16
  293. package/crud/contentModel/afterDelete.js.map +0 -1
  294. package/crud/contentModel/afterUpdate.d.ts +0 -8
  295. package/crud/contentModel/afterUpdate.js +0 -16
  296. package/crud/contentModel/afterUpdate.js.map +0 -1
  297. package/crud/contentModel/validateLayout.d.ts +0 -2
  298. package/crud/contentModel/validateLayout.js +0 -28
  299. package/crud/contentModel/validateLayout.js.map +0 -1
  300. package/crud/settings.crud.d.ts +0 -12
  301. package/crud/settings.crud.js +0 -62
  302. package/crud/settings.crud.js.map +0 -1
  303. package/utils/permissions/SettingsPermissions.d.ts +0 -4
  304. package/utils/permissions/SettingsPermissions.js +0 -9
  305. package/utils/permissions/SettingsPermissions.js.map +0 -1
  306. package/validators/dynamicZone.d.ts +0 -2
  307. package/validators/dynamicZone.js +0 -20
  308. package/validators/dynamicZone.js.map +0 -1
@@ -65,4 +65,6 @@ const createNumberField = () => {
65
65
  }
66
66
  };
67
67
  };
68
- exports.createNumberField = createNumberField;
68
+ exports.createNumberField = createNumberField;
69
+
70
+ //# sourceMappingURL=number.js.map
@@ -6,9 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.createObjectField = void 0;
8
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _error = _interopRequireDefault(require("@webiny/error"));
10
9
  var _upperFirst = _interopRequireDefault(require("lodash/upperFirst"));
11
- var _helpers = require("./helpers");
12
10
  var _createTypeFromFields = require("../utils/createTypeFromFields");
13
11
  const createChildTypeDefs = params => {
14
12
  var _field$settings, _field$settings2;
@@ -84,20 +82,8 @@ const createObjectField = () => {
84
82
  originalField,
85
83
  validate
86
84
  } = params;
87
- const fields = ((_field$settings4 = field.settings) === null || _field$settings4 === void 0 ? void 0 : _field$settings4.fields) || [];
88
- /**
89
- * At the moment we do not allow dynamic zone fields inside the object field.
90
- */
91
- const hasDynamicZone = fields.some(f => f.type === "dynamicZone");
92
- if (hasDynamicZone) {
93
- throw new _error.default("Dynamic zones cannot be used inside of an object field.", "DYNAMIC_ZONE_INSIDE_OBJECT", {
94
- id: field.id,
95
- fieldId: field.fieldId,
96
- fieldLabel: field.label
97
- });
98
- }
99
85
  validate({
100
- fields,
86
+ fields: ((_field$settings4 = field.settings) === null || _field$settings4 === void 0 ? void 0 : _field$settings4.fields) ?? [],
101
87
  originalFields: (originalField === null || originalField === void 0 || (_originalField$settin = originalField.settings) === null || _originalField$settin === void 0 ? void 0 : _originalField$settin.fields) || []
102
88
  });
103
89
  },
@@ -228,7 +214,7 @@ const createObjectField = () => {
228
214
  typeDefs
229
215
  } = result;
230
216
  return {
231
- fields: (0, _helpers.attachRequiredFieldValue)(`${field.fieldId}: ${field.multipleValues ? `[${fieldType}!]` : fieldType}`, field),
217
+ fields: `${field.fieldId}: ${field.multipleValues ? `[${fieldType}!]` : fieldType}`,
232
218
  typeDefs
233
219
  };
234
220
  },
@@ -255,4 +241,6 @@ const createObjectField = () => {
255
241
  }
256
242
  };
257
243
  };
258
- exports.createObjectField = createObjectField;
244
+ exports.createObjectField = createObjectField;
245
+
246
+ //# sourceMappingURL=object.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_error","_interopRequireDefault","require","_upperFirst","_helpers","_createTypeFromFields","createChildTypeDefs","params","_field$settings","_field$settings2","field","plugins","model","endpointType","fields","settings","typeName","createTypeName","parents","filters","map","child","_child$settings","createListFilters","type","_objectSpread2","default","concat","fieldId","filter","Boolean","join","singularApiName","id","lodashUpperFirst","_field$settings3","createObjectField","name","fieldType","isSortable","isSearchable","validateChildFields","_field$settings4","_originalField$settin","originalField","validate","hasDynamicZone","some","f","WebinyError","fieldLabel","label","originalFields","read","createTypeField","models","fieldTypePlugins","_field$settings5","_field$settings6","result","createTypeFromFields","typeOfType","typeNamePrefix","typeDefs","childTypeDefs","multipleValues","createResolver","createFieldResolvers","graphQLType","_field$settings7","length","upperFirst","typeResolvers","resolver","manage","_field$settings8","_field$settings9","createInputField","_field$settings10","_field$settings11","attachRequiredFieldValue","_field$settings12","exports"],"sources":["object.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport upperFirst from \"lodash/upperFirst\";\nimport {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { attachRequiredFieldValue } from \"./helpers\";\nimport lodashUpperFirst from \"lodash/upperFirst\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\n\ninterface AttachTypeDefinitionsParams {\n model: Pick<CmsModel, \"singularApiName\">;\n field: CmsModelField;\n plugins: CmsFieldTypePlugins;\n endpointType: \"manage\" | \"read\";\n}\nconst createChildTypeDefs = (params: AttachTypeDefinitionsParams): string => {\n const { field, plugins, model, endpointType } = params;\n const fields = field.settings?.fields || [];\n\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n const filters = fields\n .map(child => {\n const createListFilters = plugins[child.type][endpointType].createListFilters;\n if (!createListFilters) {\n return null;\n }\n\n const filters = createListFilters({\n model,\n field: {\n ...child,\n settings: {\n ...child.settings,\n parents: (child.settings?.parents || []).concat([field.fieldId])\n }\n },\n plugins\n });\n if (!filters) {\n return null;\n }\n return filters;\n })\n .filter(Boolean)\n .join(\"\\n\");\n return `input ${typeName}WhereInput {\n ${filters || \"_empty: String\"}\n }\\n`;\n};\n\ninterface CreateTypeNameParams {\n model: Pick<CmsModel, \"singularApiName\">;\n parents?: string[];\n field: CmsModelField;\n}\nconst createTypeName = (params: CreateTypeNameParams): string => {\n const { model, parents = [], field } = params;\n return [model.singularApiName]\n .concat(parents)\n .concat([field.fieldId])\n .filter(Boolean)\n .map(id => {\n return lodashUpperFirst(id);\n })\n .join(\"_\");\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n model: Pick<CmsModel, \"singularApiName\">;\n}\nconst createListFilters = ({ field, model }: CreateListFiltersParams) => {\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n return `${field.fieldId}: ${typeName}WhereInput`;\n};\n\nexport const createObjectField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-object\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"object\",\n isSortable: false,\n isSearchable: false,\n validateChildFields: params => {\n const { field, originalField, validate } = params;\n\n const fields = field.settings?.fields || [];\n /**\n * At the moment we do not allow dynamic zone fields inside the object field.\n */\n const hasDynamicZone = fields.some(f => f.type === \"dynamicZone\");\n if (hasDynamicZone) {\n throw new WebinyError(\n \"Dynamic zones cannot be used inside of an object field.\",\n \"DYNAMIC_ZONE_INSIDE_OBJECT\",\n {\n id: field.id,\n fieldId: field.fieldId,\n fieldLabel: field.label\n }\n );\n }\n\n validate({\n fields,\n originalFields: originalField?.settings?.fields || []\n });\n },\n read: {\n createTypeField({ field, models, model, fieldTypePlugins }) {\n const result = createTypeFromFields({\n models,\n typeOfType: \"type\",\n model,\n type: \"read\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"read\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createResolver({ field, createFieldResolvers, graphQLType }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n },\n manage: {\n createTypeField({ models, model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n models,\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"manage\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}\\n${childTypeDefs}`\n };\n },\n createInputField({ models, model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"input\",\n models,\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n return {\n fields: attachRequiredFieldValue(\n `${field.fieldId}: ${field.multipleValues ? `[${fieldType}!]` : fieldType}`,\n field\n ),\n typeDefs\n };\n },\n createResolver({ graphQLType, field, createFieldResolvers }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n }\n };\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AAOA,IAAAE,QAAA,GAAAF,OAAA;AAEA,IAAAG,qBAAA,GAAAH,OAAA;AAQA,MAAMI,mBAAmB,GAAIC,MAAmC,IAAa;EAAA,IAAAC,eAAA,EAAAC,gBAAA;EACzE,MAAM;IAAEC,KAAK;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAa,CAAC,GAAGN,MAAM;EACtD,MAAMO,MAAM,GAAG,EAAAN,eAAA,GAAAE,KAAK,CAACK,QAAQ,cAAAP,eAAA,uBAAdA,eAAA,CAAgBM,MAAM,KAAI,EAAE;EAE3C,MAAME,QAAQ,GAAGC,cAAc,CAAC;IAC5BL,KAAK;IACLF,KAAK;IACLQ,OAAO,GAAAT,gBAAA,GAAEC,KAAK,CAACK,QAAQ,cAAAN,gBAAA,uBAAdA,gBAAA,CAAgBS;EAC7B,CAAC,CAAC;EAEF,MAAMC,OAAO,GAAGL,MAAM,CACjBM,GAAG,CAACC,KAAK,IAAI;IAAA,IAAAC,eAAA;IACV,MAAMC,iBAAiB,GAAGZ,OAAO,CAACU,KAAK,CAACG,IAAI,CAAC,CAACX,YAAY,CAAC,CAACU,iBAAiB;IAC7E,IAAI,CAACA,iBAAiB,EAAE;MACpB,OAAO,IAAI;IACf;IAEA,MAAMJ,OAAO,GAAGI,iBAAiB,CAAC;MAC9BX,KAAK;MACLF,KAAK,MAAAe,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACEL,KAAK;QACRN,QAAQ,MAAAU,cAAA,CAAAC,OAAA,MAAAD,cAAA,CAAAC,OAAA,MACDL,KAAK,CAACN,QAAQ;UACjBG,OAAO,EAAE,CAAC,EAAAI,eAAA,GAAAD,KAAK,CAACN,QAAQ,cAAAO,eAAA,uBAAdA,eAAA,CAAgBJ,OAAO,KAAI,EAAE,EAAES,MAAM,CAAC,CAACjB,KAAK,CAACkB,OAAO,CAAC;QAAC;MACnE,EACJ;MACDjB;IACJ,CAAC,CAAC;IACF,IAAI,CAACQ,OAAO,EAAE;MACV,OAAO,IAAI;IACf;IACA,OAAOA,OAAO;EAClB,CAAC,CAAC,CACDU,MAAM,CAACC,OAAO,CAAC,CACfC,IAAI,CAAC,IAAI,CAAC;EACf,OAAQ,SAAQf,QAAS;AAC7B,UAAUG,OAAO,IAAI,gBAAiB;AACtC,QAAQ;AACR,CAAC;AAOD,MAAMF,cAAc,GAAIV,MAA4B,IAAa;EAC7D,MAAM;IAAEK,KAAK;IAAEM,OAAO,GAAG,EAAE;IAAER;EAAM,CAAC,GAAGH,MAAM;EAC7C,OAAO,CAACK,KAAK,CAACoB,eAAe,CAAC,CACzBL,MAAM,CAACT,OAAO,CAAC,CACfS,MAAM,CAAC,CAACjB,KAAK,CAACkB,OAAO,CAAC,CAAC,CACvBC,MAAM,CAACC,OAAO,CAAC,CACfV,GAAG,CAACa,EAAE,IAAI;IACP,OAAO,IAAAC,mBAAgB,EAACD,EAAE,CAAC;EAC/B,CAAC,CAAC,CACDF,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC;AAMD,MAAMR,iBAAiB,GAAGA,CAAC;EAAEb,KAAK;EAAEE;AAA+B,CAAC,KAAK;EAAA,IAAAuB,gBAAA;EACrE,MAAMnB,QAAQ,GAAGC,cAAc,CAAC;IAC5BL,KAAK;IACLF,KAAK;IACLQ,OAAO,GAAAiB,gBAAA,GAAEzB,KAAK,CAACK,QAAQ,cAAAoB,gBAAA,uBAAdA,gBAAA,CAAgBjB;EAC7B,CAAC,CAAC;EAEF,OAAQ,GAAER,KAAK,CAACkB,OAAQ,KAAIZ,QAAS,YAAW;AACpD,CAAC;AAEM,MAAMoB,iBAAiB,GAAGA,CAAA,KAAoC;EACjE,OAAO;IACHC,IAAI,EAAE,mCAAmC;IACzCb,IAAI,EAAE,4BAA4B;IAClCc,SAAS,EAAE,QAAQ;IACnBC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE,KAAK;IACnBC,mBAAmB,EAAElC,MAAM,IAAI;MAAA,IAAAmC,gBAAA,EAAAC,qBAAA;MAC3B,MAAM;QAAEjC,KAAK;QAAEkC,aAAa;QAAEC;MAAS,CAAC,GAAGtC,MAAM;MAEjD,MAAMO,MAAM,GAAG,EAAA4B,gBAAA,GAAAhC,KAAK,CAACK,QAAQ,cAAA2B,gBAAA,uBAAdA,gBAAA,CAAgB5B,MAAM,KAAI,EAAE;MAC3C;AACZ;AACA;MACY,MAAMgC,cAAc,GAAGhC,MAAM,CAACiC,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACxB,IAAI,KAAK,aAAa,CAAC;MACjE,IAAIsB,cAAc,EAAE;QAChB,MAAM,IAAIG,cAAW,CACjB,yDAAyD,EACzD,4BAA4B,EAC5B;UACIhB,EAAE,EAAEvB,KAAK,CAACuB,EAAE;UACZL,OAAO,EAAElB,KAAK,CAACkB,OAAO;UACtBsB,UAAU,EAAExC,KAAK,CAACyC;QACtB,CACJ,CAAC;MACL;MAEAN,QAAQ,CAAC;QACL/B,MAAM;QACNsC,cAAc,EAAE,CAAAR,aAAa,aAAbA,aAAa,gBAAAD,qBAAA,GAAbC,aAAa,CAAE7B,QAAQ,cAAA4B,qBAAA,uBAAvBA,qBAAA,CAAyB7B,MAAM,KAAI;MACvD,CAAC,CAAC;IACN,CAAC;IACDuC,IAAI,EAAE;MACFC,eAAeA,CAAC;QAAE5C,KAAK;QAAE6C,MAAM;QAAE3C,KAAK;QAAE4C;MAAiB,CAAC,EAAE;QAAA,IAAAC,gBAAA,EAAAC,gBAAA;QACxD,MAAMC,MAAM,GAAG,IAAAC,0CAAoB,EAAC;UAChCL,MAAM;UACNM,UAAU,EAAE,MAAM;UAClBjD,KAAK;UACLY,IAAI,EAAE,MAAM;UACZsC,cAAc,EAAE7C,cAAc,CAAC;YAC3BL,KAAK;YACLF,KAAK;YACLQ,OAAO,GAAAuC,gBAAA,GAAE/C,KAAK,CAACK,QAAQ,cAAA0C,gBAAA,uBAAdA,gBAAA,CAAgBvC;UAC7B,CAAC,CAAC;UACFJ,MAAM,EAAE,EAAA4C,gBAAA,GAAAhD,KAAK,CAACK,QAAQ,cAAA2C,gBAAA,uBAAdA,gBAAA,CAAgB5C,MAAM,KAAI,EAAE;UACpC0C;QACJ,CAAC,CAAC;QAEF,IAAI,CAACG,MAAM,EAAE;UACT,OAAO,IAAI;QACf;QACA,MAAM;UAAErB,SAAS;UAAEyB;QAAS,CAAC,GAAGJ,MAAM;QAEtC,MAAMK,aAAa,GAAG1D,mBAAmB,CAAC;UACtCM,KAAK;UACLF,KAAK;UACLC,OAAO,EAAE6C,gBAAgB;UACzB3C,YAAY,EAAE;QAClB,CAAC,CAAC;QAEF,OAAO;UACHC,MAAM,EAAG,GAAEJ,KAAK,CAACkB,OAAQ,KACrBlB,KAAK,CAACuD,cAAc,GAAI,IAAG3B,SAAU,IAAG,GAAGA,SAC9C,EAAC;UACFyB,QAAQ,EAAG,GAAEA,QAAS,GAAEC,aAAc;QAC1C,CAAC;MACL,CAAC;MACDE,cAAcA,CAAC;QAAExD,KAAK;QAAEyD,oBAAoB;QAAEC;MAAY,CAAC,EAAE;QAAA,IAAAC,gBAAA;QACzD,IAAI,GAAAA,gBAAA,GAAC3D,KAAK,CAACK,QAAQ,cAAAsD,gBAAA,eAAdA,gBAAA,CAAgBvD,MAAM,KAAIJ,KAAK,CAACK,QAAQ,CAACD,MAAM,CAACwD,MAAM,KAAK,CAAC,EAAE;UAC/D,OAAO,KAAK;QAChB;QAEA,MAAMhC,SAAS,GAAI,GAAE8B,WAAY,IAAG,IAAAG,mBAAU,EAAC7D,KAAK,CAACkB,OAAO,CAAE,EAAC;QAE/D,MAAM4C,aAAa,GAAGL,oBAAoB,CAAC;UACvCC,WAAW,EAAE9B,SAAS;UACtBxB,MAAM,EAAEJ,KAAK,CAACK,QAAQ,CAACD;QAC3B,CAAC,CAAC;QACF,OAAO;UACH2D,QAAQ,EAAE,IAAI;UACdD,aAAa,EAAEA,aAAa,IAAI,CAAC;QACrC,CAAC;MACL,CAAC;MACDjD;IACJ,CAAC;IACDmD,MAAM,EAAE;MACJpB,eAAeA,CAAC;QAAEC,MAAM;QAAE3C,KAAK;QAAEF,KAAK;QAAE8C;MAAiB,CAAC,EAAE;QAAA,IAAAmB,gBAAA,EAAAC,gBAAA;QACxD,MAAMjB,MAAM,GAAG,IAAAC,0CAAoB,EAAC;UAChCC,UAAU,EAAE,MAAM;UAClBN,MAAM;UACN3C,KAAK;UACLY,IAAI,EAAE,QAAQ;UACdsC,cAAc,EAAE7C,cAAc,CAAC;YAC3BL,KAAK;YACLF,KAAK;YACLQ,OAAO,GAAAyD,gBAAA,GAAEjE,KAAK,CAACK,QAAQ,cAAA4D,gBAAA,uBAAdA,gBAAA,CAAgBzD;UAC7B,CAAC,CAAC;UACFJ,MAAM,EAAE,EAAA8D,gBAAA,GAAAlE,KAAK,CAACK,QAAQ,cAAA6D,gBAAA,uBAAdA,gBAAA,CAAgB9D,MAAM,KAAI,EAAE;UACpC0C;QACJ,CAAC,CAAC;QAEF,IAAI,CAACG,MAAM,EAAE;UACT,OAAO,IAAI;QACf;QACA,MAAM;UAAErB,SAAS;UAAEyB;QAAS,CAAC,GAAGJ,MAAM;QAEtC,MAAMK,aAAa,GAAG1D,mBAAmB,CAAC;UACtCM,KAAK;UACLF,KAAK;UACLC,OAAO,EAAE6C,gBAAgB;UACzB3C,YAAY,EAAE;QAClB,CAAC,CAAC;QAEF,OAAO;UACHC,MAAM,EAAG,GAAEJ,KAAK,CAACkB,OAAQ,KACrBlB,KAAK,CAACuD,cAAc,GAAI,IAAG3B,SAAU,IAAG,GAAGA,SAC9C,EAAC;UACFyB,QAAQ,EAAG,GAAEA,QAAS,KAAIC,aAAc;QAC5C,CAAC;MACL,CAAC;MACDa,gBAAgBA,CAAC;QAAEtB,MAAM;QAAE3C,KAAK;QAAEF,KAAK;QAAE8C;MAAiB,CAAC,EAAE;QAAA,IAAAsB,iBAAA,EAAAC,iBAAA;QACzD,MAAMpB,MAAM,GAAG,IAAAC,0CAAoB,EAAC;UAChCC,UAAU,EAAE,OAAO;UACnBN,MAAM;UACN3C,KAAK;UACLY,IAAI,EAAE,QAAQ;UACdsC,cAAc,EAAE7C,cAAc,CAAC;YAC3BL,KAAK;YACLF,KAAK;YACLQ,OAAO,GAAA4D,iBAAA,GAAEpE,KAAK,CAACK,QAAQ,cAAA+D,iBAAA,uBAAdA,iBAAA,CAAgB5D;UAC7B,CAAC,CAAC;UACFJ,MAAM,EAAE,EAAAiE,iBAAA,GAAArE,KAAK,CAACK,QAAQ,cAAAgE,iBAAA,uBAAdA,iBAAA,CAAgBjE,MAAM,KAAI,EAAE;UACpC0C;QACJ,CAAC,CAAC;QACF,IAAI,CAACG,MAAM,EAAE;UACT,OAAO,IAAI;QACf;QACA,MAAM;UAAErB,SAAS;UAAEyB;QAAS,CAAC,GAAGJ,MAAM;QAEtC,OAAO;UACH7C,MAAM,EAAE,IAAAkE,iCAAwB,EAC3B,GAAEtE,KAAK,CAACkB,OAAQ,KAAIlB,KAAK,CAACuD,cAAc,GAAI,IAAG3B,SAAU,IAAG,GAAGA,SAAU,EAAC,EAC3E5B,KACJ,CAAC;UACDqD;QACJ,CAAC;MACL,CAAC;MACDG,cAAcA,CAAC;QAAEE,WAAW;QAAE1D,KAAK;QAAEyD;MAAqB,CAAC,EAAE;QAAA,IAAAc,iBAAA;QACzD,IAAI,GAAAA,iBAAA,GAACvE,KAAK,CAACK,QAAQ,cAAAkE,iBAAA,eAAdA,iBAAA,CAAgBnE,MAAM,KAAIJ,KAAK,CAACK,QAAQ,CAACD,MAAM,CAACwD,MAAM,KAAK,CAAC,EAAE;UAC/D,OAAO,KAAK;QAChB;QACA,MAAMhC,SAAS,GAAI,GAAE8B,WAAY,IAAG,IAAAG,mBAAU,EAAC7D,KAAK,CAACkB,OAAO,CAAE,EAAC;QAC/D,MAAM4C,aAAa,GAAGL,oBAAoB,CAAC;UACvCC,WAAW,EAAE9B,SAAS;UACtBxB,MAAM,EAAEJ,KAAK,CAACK,QAAQ,CAACD;QAC3B,CAAC,CAAC;QACF,OAAO;UACH2D,QAAQ,EAAE,IAAI;UACdD,aAAa,EAAEA,aAAa,IAAI,CAAC;QACrC,CAAC;MACL,CAAC;MACDjD;IACJ;EACJ,CAAC;AACL,CAAC;AAAC2D,OAAA,CAAA9C,iBAAA,GAAAA,iBAAA"}
1
+ {"version":3,"names":["_upperFirst","_interopRequireDefault","require","_createTypeFromFields","createChildTypeDefs","params","_field$settings","_field$settings2","field","plugins","model","endpointType","fields","settings","typeName","createTypeName","parents","filters","map","child","_child$settings","createListFilters","type","_objectSpread2","default","concat","fieldId","filter","Boolean","join","singularApiName","id","lodashUpperFirst","_field$settings3","createObjectField","name","fieldType","isSortable","isSearchable","validateChildFields","_field$settings4","_originalField$settin","originalField","validate","originalFields","read","createTypeField","models","fieldTypePlugins","_field$settings5","_field$settings6","result","createTypeFromFields","typeOfType","typeNamePrefix","typeDefs","childTypeDefs","multipleValues","createResolver","createFieldResolvers","graphQLType","_field$settings7","length","upperFirst","typeResolvers","resolver","manage","_field$settings8","_field$settings9","createInputField","_field$settings10","_field$settings11","_field$settings12","exports"],"sources":["object.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport lodashUpperFirst from \"lodash/upperFirst\";\nimport {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\n\ninterface AttachTypeDefinitionsParams {\n model: Pick<CmsModel, \"singularApiName\">;\n field: CmsModelField;\n plugins: CmsFieldTypePlugins;\n endpointType: \"manage\" | \"read\";\n}\nconst createChildTypeDefs = (params: AttachTypeDefinitionsParams): string => {\n const { field, plugins, model, endpointType } = params;\n const fields = field.settings?.fields || [];\n\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n const filters = fields\n .map(child => {\n const createListFilters = plugins[child.type][endpointType].createListFilters;\n if (!createListFilters) {\n return null;\n }\n\n const filters = createListFilters({\n model,\n field: {\n ...child,\n settings: {\n ...child.settings,\n parents: (child.settings?.parents || []).concat([field.fieldId])\n }\n },\n plugins\n });\n if (!filters) {\n return null;\n }\n return filters;\n })\n .filter(Boolean)\n .join(\"\\n\");\n return `input ${typeName}WhereInput {\n ${filters || \"_empty: String\"}\n }\\n`;\n};\n\ninterface CreateTypeNameParams {\n model: Pick<CmsModel, \"singularApiName\">;\n parents?: string[];\n field: CmsModelField;\n}\nconst createTypeName = (params: CreateTypeNameParams): string => {\n const { model, parents = [], field } = params;\n return [model.singularApiName]\n .concat(parents)\n .concat([field.fieldId])\n .filter(Boolean)\n .map(id => {\n return lodashUpperFirst(id);\n })\n .join(\"_\");\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n model: Pick<CmsModel, \"singularApiName\">;\n}\nconst createListFilters = ({ field, model }: CreateListFiltersParams) => {\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n return `${field.fieldId}: ${typeName}WhereInput`;\n};\n\nexport const createObjectField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-object\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"object\",\n isSortable: false,\n isSearchable: false,\n validateChildFields: params => {\n const { field, originalField, validate } = params;\n\n validate({\n fields: field.settings?.fields ?? [],\n originalFields: originalField?.settings?.fields || []\n });\n },\n read: {\n createTypeField({ field, models, model, fieldTypePlugins }) {\n const result = createTypeFromFields({\n models,\n typeOfType: \"type\",\n model,\n type: \"read\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"read\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createResolver({ field, createFieldResolvers, graphQLType }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n },\n manage: {\n createTypeField({ models, model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n models,\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"manage\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}\\n${childTypeDefs}`\n };\n },\n createInputField({ models, model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"input\",\n models,\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs\n };\n },\n createResolver({ graphQLType, field, createFieldResolvers }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n }\n };\n};\n"],"mappings":"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"}
@@ -151,7 +151,7 @@ const createRefField = () => {
151
151
  const getters = Object.keys(entriesByModel).map(async modelId => {
152
152
  const idList = entriesByModel[modelId];
153
153
  // Get model manager, to get access to CRUD methods
154
- const model = await cms.getModelManager(modelId);
154
+ const model = await cms.getEntryManager(modelId);
155
155
  let entries;
156
156
  // `read` API works with `published` data
157
157
  if (cms.READ) {
@@ -252,4 +252,6 @@ const createRefField = () => {
252
252
  }
253
253
  };
254
254
  };
255
- exports.createRefField = createRefField;
255
+ exports.createRefField = createRefField;
256
+
257
+ //# sourceMappingURL=ref.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_error","_interopRequireDefault","require","_createTypeName","_utils","_helpers","createUnionTypeName","model","field","singularApiName","createTypeName","fieldId","createListFilters","createFilteringTypeDef","appendTypename","entries","typename","map","item","_objectSpread2","default","__typename","getFieldModels","settings","Array","isArray","models","modelIdToTypeName","Map","getModel","params","modelId","find","WebinyError","getModelSingularApiName","createRefField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","_field$settings","fieldModels","gqlType","length","typeDefs","join","fields","multipleValues","createResolver","_field$settings2","set","parent","args","context","cms","initialValue","populate","value","entriesByModel","reduce","collection","ref","includes","entryId","push","getters","Object","keys","idList","getModelManager","READ","getPublishedByIds","getLatestByIds","get","Promise","all","then","results","result","concat","getEntryManager","revisions","createSchema","resolvers","manage","RefField","id","parseIdentifier","createInputField","createGraphQLInputField","exports"],"sources":["ref.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n CmsContext,\n CmsEntry,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { createTypeName } from \"~/utils/createTypeName\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface RefFieldValue {\n /**\n * `id` is optional for backwards compatibility with records created before this property was introduced.\n */\n id?: string;\n entryId: string;\n modelId: string;\n}\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n};\n\ninterface CreateListFilterParams {\n field: CmsModelField;\n}\n\nconst createListFilters = ({ field }: CreateListFilterParams) => {\n return `\n ${field.fieldId}: RefFieldWhereInput\n `;\n};\n\nconst createFilteringTypeDef = () => {\n return `\n input RefFieldWhereInput {\n id: String\n id_not: String\n id_in: [String!]\n id_not_in: [String]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n }\n `;\n};\n\nconst appendTypename = (entries: CmsEntry[], typename: string): CmsEntry[] => {\n return entries.map(item => {\n return {\n ...item,\n __typename: typename\n };\n });\n};\n/**\n * We cast settings.models as object to have modelId because internally we know that it is so.\n * Internal stuff so we are sure that settings.models contains what we require.\n */\nconst getFieldModels = (field: CmsModelField): Pick<CmsModel, \"modelId\">[] => {\n if (!field.settings || Array.isArray(field.settings.models) === false) {\n return [];\n }\n return field.settings.models as Pick<CmsModel, \"modelId\">[];\n};\n\nconst modelIdToTypeName = new Map();\n\ninterface GetModelParams {\n models: CmsModel[];\n modelId: string;\n}\n\nconst getModel = (params: GetModelParams): CmsModel => {\n const { models, modelId } = params;\n\n const model = models.find(item => item.modelId === modelId);\n if (model) {\n return model;\n }\n throw new WebinyError(\n `Could not find model with ID \"${modelId}\" in the list of models.`,\n \"MODEL_NOT_FOUND\",\n {\n modelId\n }\n );\n};\n\nconst getModelSingularApiName = (params: GetModelParams): string => {\n const model = getModel(params);\n\n return model.singularApiName;\n};\n\nexport const createRefField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-ref\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"ref\",\n isSortable: false,\n isSearchable: true,\n read: {\n createTypeField({ model, field, models }) {\n const fieldModels = field.settings?.models || [];\n const gqlType =\n fieldModels.length > 1\n ? createUnionTypeName(model, field)\n : getModelSingularApiName({ models, modelId: fieldModels[0].modelId });\n const typeDefs =\n fieldModels.length > 1\n ? `union ${gqlType} = ${getFieldModels(field)\n .map(({ modelId }) =>\n getModelSingularApiName({\n models,\n modelId\n })\n )\n .join(\" | \")}`\n : \"\";\n\n return {\n fields:\n field.fieldId +\n `(populate: Boolean = true): ${\n field.multipleValues ? `[${gqlType}!]` : gqlType\n }`,\n typeDefs\n };\n },\n /**\n * TS is complaining about mixed types for createResolver.\n * TODO @ts-refactor @pavel Maybe we should have a single createResolver method?\n */\n // @ts-ignore\n createResolver({ field, models }) {\n // Create a map of model types and corresponding modelIds so resolvers don't need to perform the lookup.\n const fieldModels = field.settings?.models || [];\n for (const item of fieldModels) {\n modelIdToTypeName.set(\n item.modelId,\n getModelSingularApiName({\n models,\n modelId: item.modelId\n })\n );\n }\n\n return async (parent, args, context: CmsContext) => {\n const { cms } = context;\n\n // Get field value for this entry\n const initialValue = parent[field.fieldId] as RefFieldValue | RefFieldValue[];\n\n if (!initialValue) {\n return null;\n }\n if (args.populate === false) {\n return initialValue;\n }\n\n if (field.multipleValues) {\n /**\n * We cast because value really can be array and single value.\n * At this point, we are 99% sure that it is an array (+ we check for it)\n */\n const value = initialValue as RefFieldValue[];\n if (Array.isArray(value) === false || value.length === 0) {\n return [];\n }\n\n const entriesByModel = value.reduce((collection, ref) => {\n if (!collection[ref.modelId]) {\n collection[ref.modelId] = [];\n } else if (collection[ref.modelId].includes(ref.entryId) === true) {\n return collection;\n }\n\n collection[ref.modelId].push(ref.entryId);\n\n return collection;\n }, {} as Record<string, string[]>);\n\n const getters = Object.keys(entriesByModel).map(async modelId => {\n const idList = entriesByModel[modelId];\n // Get model manager, to get access to CRUD methods\n const model = await cms.getModelManager(modelId);\n\n let entries: CmsEntry[];\n // `read` API works with `published` data\n if (cms.READ) {\n entries = await model.getPublishedByIds(idList);\n }\n // `preview` and `manage` with `latest` data\n else {\n entries = await model.getLatestByIds(idList);\n }\n\n return appendTypename(entries, modelIdToTypeName.get(modelId));\n });\n\n return await Promise.all(getters).then((results: any[]) =>\n results.reduce((result, item) => result.concat(item), [])\n );\n }\n\n const value = initialValue as RefFieldValue;\n\n // Get model manager, to get access to CRUD methods\n const model = await cms.getEntryManager(value.modelId);\n\n let revisions: CmsEntry[];\n // `read` API works with `published` data\n if (cms.READ) {\n revisions = await model.getPublishedByIds([value.entryId]);\n }\n // `preview` API works with `latest` data\n else {\n revisions = await model.getLatestByIds([value.entryId]);\n }\n\n /**\n * If there are no revisions we must return null.\n */\n if (!revisions || revisions.length === 0) {\n return null;\n }\n return {\n ...revisions[0],\n __typename: modelIdToTypeName.get(value.modelId)\n };\n };\n },\n createSchema() {\n return {\n typeDefs: createFilteringTypeDef(),\n resolvers: {}\n };\n },\n createListFilters\n },\n manage: {\n createSchema() {\n /**\n * `entryId` in `RefFieldInput` is deprecated, but we cannot mark it as such in GraphQL.\n * `entryId` is extracted at runtime from the `id` which contains both the `entryId` and revision number.\n * See: `packages/api-headless-cms/src/crud/contentEntry/referenceFieldsMapping.ts`\n */\n return {\n typeDefs: /* GraphQL */ `\n type RefField {\n modelId: String!\n entryId: ID!\n id: ID!\n }\n\n input RefFieldInput {\n modelId: String!\n id: ID!\n }\n\n ${createFilteringTypeDef()}\n `,\n resolvers: {\n RefField: {\n entryId: (parent: RefFieldValue) => {\n const { id } = parseIdentifier(parent.entryId || parent.id);\n return id;\n },\n id: (parent: RefFieldValue) => {\n return parent.id || parent.entryId;\n }\n }\n }\n };\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [RefField!]`;\n }\n return `${field.fieldId}: RefField`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"RefFieldInput\");\n },\n createListFilters\n }\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_createTypeName","_utils","_helpers","createUnionTypeName","model","field","singularApiName","createTypeName","fieldId","createListFilters","createFilteringTypeDef","appendTypename","entries","typename","map","item","_objectSpread2","default","__typename","getFieldModels","settings","Array","isArray","models","modelIdToTypeName","Map","getModel","params","modelId","find","WebinyError","getModelSingularApiName","createRefField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","_field$settings","fieldModels","gqlType","length","typeDefs","join","fields","multipleValues","createResolver","_field$settings2","set","parent","args","context","cms","initialValue","populate","value","entriesByModel","reduce","collection","ref","includes","entryId","push","getters","Object","keys","idList","getEntryManager","READ","getPublishedByIds","getLatestByIds","get","Promise","all","then","results","result","concat","revisions","createSchema","resolvers","manage","RefField","id","parseIdentifier","createInputField","createGraphQLInputField","exports"],"sources":["ref.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n CmsContext,\n CmsEntry,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { createTypeName } from \"~/utils/createTypeName\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface RefFieldValue {\n /**\n * `id` is optional for backwards compatibility with records created before this property was introduced.\n */\n id?: string;\n entryId: string;\n modelId: string;\n}\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${model.singularApiName}_${createTypeName(field.fieldId)}`;\n};\n\ninterface CreateListFilterParams {\n field: CmsModelField;\n}\n\nconst createListFilters = ({ field }: CreateListFilterParams) => {\n return `\n ${field.fieldId}: RefFieldWhereInput\n `;\n};\n\nconst createFilteringTypeDef = () => {\n return `\n input RefFieldWhereInput {\n id: String\n id_not: String\n id_in: [String!]\n id_not_in: [String]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n }\n `;\n};\n\nconst appendTypename = (entries: CmsEntry[], typename: string): CmsEntry[] => {\n return entries.map(item => {\n return {\n ...item,\n __typename: typename\n };\n });\n};\n/**\n * We cast settings.models as object to have modelId because internally we know that it is so.\n * Internal stuff so we are sure that settings.models contains what we require.\n */\nconst getFieldModels = (field: CmsModelField): Pick<CmsModel, \"modelId\">[] => {\n if (!field.settings || Array.isArray(field.settings.models) === false) {\n return [];\n }\n return field.settings.models as Pick<CmsModel, \"modelId\">[];\n};\n\nconst modelIdToTypeName = new Map();\n\ninterface GetModelParams {\n models: CmsModel[];\n modelId: string;\n}\n\nconst getModel = (params: GetModelParams): CmsModel => {\n const { models, modelId } = params;\n\n const model = models.find(item => item.modelId === modelId);\n if (model) {\n return model;\n }\n throw new WebinyError(\n `Could not find model with ID \"${modelId}\" in the list of models.`,\n \"MODEL_NOT_FOUND\",\n {\n modelId\n }\n );\n};\n\nconst getModelSingularApiName = (params: GetModelParams): string => {\n const model = getModel(params);\n\n return model.singularApiName;\n};\n\nexport const createRefField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-ref\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"ref\",\n isSortable: false,\n isSearchable: true,\n read: {\n createTypeField({ model, field, models }) {\n const fieldModels = field.settings?.models || [];\n const gqlType =\n fieldModels.length > 1\n ? createUnionTypeName(model, field)\n : getModelSingularApiName({ models, modelId: fieldModels[0].modelId });\n const typeDefs =\n fieldModels.length > 1\n ? `union ${gqlType} = ${getFieldModels(field)\n .map(({ modelId }) =>\n getModelSingularApiName({\n models,\n modelId\n })\n )\n .join(\" | \")}`\n : \"\";\n\n return {\n fields:\n field.fieldId +\n `(populate: Boolean = true): ${\n field.multipleValues ? `[${gqlType}!]` : gqlType\n }`,\n typeDefs\n };\n },\n /**\n * TS is complaining about mixed types for createResolver.\n * TODO @ts-refactor @pavel Maybe we should have a single createResolver method?\n */\n // @ts-ignore\n createResolver({ field, models }) {\n // Create a map of model types and corresponding modelIds so resolvers don't need to perform the lookup.\n const fieldModels = field.settings?.models || [];\n for (const item of fieldModels) {\n modelIdToTypeName.set(\n item.modelId,\n getModelSingularApiName({\n models,\n modelId: item.modelId\n })\n );\n }\n\n return async (parent, args, context: CmsContext) => {\n const { cms } = context;\n\n // Get field value for this entry\n const initialValue = parent[field.fieldId] as RefFieldValue | RefFieldValue[];\n\n if (!initialValue) {\n return null;\n }\n if (args.populate === false) {\n return initialValue;\n }\n\n if (field.multipleValues) {\n /**\n * We cast because value really can be array and single value.\n * At this point, we are 99% sure that it is an array (+ we check for it)\n */\n const value = initialValue as RefFieldValue[];\n if (Array.isArray(value) === false || value.length === 0) {\n return [];\n }\n\n const entriesByModel = value.reduce((collection, ref) => {\n if (!collection[ref.modelId]) {\n collection[ref.modelId] = [];\n } else if (collection[ref.modelId].includes(ref.entryId) === true) {\n return collection;\n }\n\n collection[ref.modelId].push(ref.entryId);\n\n return collection;\n }, {} as Record<string, string[]>);\n\n const getters = Object.keys(entriesByModel).map(async modelId => {\n const idList = entriesByModel[modelId];\n // Get model manager, to get access to CRUD methods\n const model = await cms.getEntryManager(modelId);\n\n let entries: CmsEntry[];\n // `read` API works with `published` data\n if (cms.READ) {\n entries = await model.getPublishedByIds(idList);\n }\n // `preview` and `manage` with `latest` data\n else {\n entries = await model.getLatestByIds(idList);\n }\n\n return appendTypename(entries, modelIdToTypeName.get(modelId));\n });\n\n return await Promise.all(getters).then((results: any[]) =>\n results.reduce((result, item) => result.concat(item), [])\n );\n }\n\n const value = initialValue as RefFieldValue;\n\n // Get model manager, to get access to CRUD methods\n const model = await cms.getEntryManager(value.modelId);\n\n let revisions: CmsEntry[];\n // `read` API works with `published` data\n if (cms.READ) {\n revisions = await model.getPublishedByIds([value.entryId]);\n }\n // `preview` API works with `latest` data\n else {\n revisions = await model.getLatestByIds([value.entryId]);\n }\n\n /**\n * If there are no revisions we must return null.\n */\n if (!revisions || revisions.length === 0) {\n return null;\n }\n return {\n ...revisions[0],\n __typename: modelIdToTypeName.get(value.modelId)\n };\n };\n },\n createSchema() {\n return {\n typeDefs: createFilteringTypeDef(),\n resolvers: {}\n };\n },\n createListFilters\n },\n manage: {\n createSchema() {\n /**\n * `entryId` in `RefFieldInput` is deprecated, but we cannot mark it as such in GraphQL.\n * `entryId` is extracted at runtime from the `id` which contains both the `entryId` and revision number.\n * See: `packages/api-headless-cms/src/crud/contentEntry/referenceFieldsMapping.ts`\n */\n return {\n typeDefs: /* GraphQL */ `\n type RefField {\n modelId: String!\n entryId: ID!\n id: ID!\n }\n\n input RefFieldInput {\n modelId: String!\n id: ID!\n }\n\n ${createFilteringTypeDef()}\n `,\n resolvers: {\n RefField: {\n entryId: (parent: RefFieldValue) => {\n const { id } = parseIdentifier(parent.entryId || parent.id);\n return id;\n },\n id: (parent: RefFieldValue) => {\n return parent.id || parent.entryId;\n }\n }\n }\n };\n },\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [RefField!]`;\n }\n return `${field.fieldId}: RefField`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"RefFieldInput\");\n },\n createListFilters\n }\n };\n};\n"],"mappings":"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"}
@@ -44,4 +44,6 @@ const createRichTextField = () => {
44
44
  }
45
45
  };
46
46
  };
47
- exports.createRichTextField = createRichTextField;
47
+ exports.createRichTextField = createRichTextField;
48
+
49
+ //# sourceMappingURL=richText.js.map
@@ -61,4 +61,6 @@ const createTextField = () => {
61
61
  }
62
62
  };
63
63
  };
64
- exports.createTextField = createTextField;
64
+ exports.createTextField = createTextField;
65
+
66
+ //# sourceMappingURL=text.js.map
package/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import { CreateGraphQLParams } from "./graphql";
2
2
  import { CrudParams } from "./context";
3
3
  import { entryFieldFromStorageTransform, entryFromStorageTransform, entryToStorageTransform } from "./utils/entryStorage";
4
4
  export declare type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;
5
- export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => (import("./plugins").CmsParametersPlugin | import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("./types").CmsContext> | import("@webiny/plugins/types").PluginCollection)[];
5
+ export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => (import("@webiny/plugins/types").PluginCollection | import("./plugins").CmsParametersPlugin | import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("./types").CmsContext> | import("@webiny/api").ContextPlugin<import("@webiny/api/types").Context>)[];
6
6
  export declare type ContentContextParams = CrudParams;
7
7
  export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("./types").ModelManagerPlugin | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelField> | import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelDynamicZoneField> | import("./types").CmsModelFieldToGraphQLPlugin<any>[] | (import("./types").CmsModelFieldValidatorPlugin | import("./types").CmsModelFieldPatternValidatorPlugin[])[] | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin").CmsModelDefaultFieldConverterPlugin | import("./fieldConverters/CmsModelDynamicZoneFieldConverterPlugin").CmsModelDynamicZoneFieldConverterPlugin)[])[];
8
8
  export * from "./graphqlFields";
package/index.js CHANGED
@@ -51,6 +51,7 @@ var _parameters = require("./parameters");
51
51
  var _context = require("./context");
52
52
  var _entryStorage = require("./utils/entryStorage");
53
53
  var _fieldConverters = require("./fieldConverters");
54
+ var _export = require("./export");
54
55
  var _plugins = require("./plugins");
55
56
  Object.keys(_plugins).forEach(function (key) {
56
57
  if (key === "default" || key === "__esModule") return;
@@ -108,7 +109,7 @@ const createHeadlessCmsGraphQL = (params = {}) => {
108
109
  /**
109
110
  * At this point we can create, or not create, CMS GraphQL Schema.
110
111
  */
111
- ...(0, _graphql.createGraphQL)(params)];
112
+ ...(0, _graphql.createGraphQL)(params), (0, _export.createExportGraphQL)()];
112
113
  };
113
114
  exports.createHeadlessCmsGraphQL = createHeadlessCmsGraphQL;
114
115
  const createHeadlessCmsContext = params => {
@@ -118,4 +119,6 @@ const createHeadlessCmsContext = params => {
118
119
  */
119
120
  (0, _context.createContextPlugin)(params), (0, _modelManager.createDefaultModelManager)(), (0, _graphqlFields.createGraphQLFields)(), (0, _fieldConverters.createFieldConverters)(), (0, _validators.createValidators)(), (0, _default.createDefaultStorageTransform)(), (0, _object.createObjectStorageTransform)(), (0, _dynamicZoneStorage.createDynamicZoneStorageTransform)()];
120
121
  };
121
- exports.createHeadlessCmsContext = createHeadlessCmsContext;
122
+ exports.createHeadlessCmsContext = createHeadlessCmsContext;
123
+
124
+ //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_graphql","require","_modelManager","_graphqlFields","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_validators","_default","_object","_dynamicZoneStorage","_parameters","_context","_entryStorage","_fieldConverters","_plugins","_incrementEntryIdVersion","_access","_handleRequest","createHeadlessCmsGraphQL","params","createPathParameterPlugin","createHeaderParameterPlugin","createContextParameterPlugin","baseCreateGraphQL","createHeadlessCmsContext","createContextPlugin","createDefaultModelManager","createGraphQLFields","createFieldConverters","createValidators","createDefaultStorageTransform","createObjectStorageTransform","createDynamicZoneStorageTransform"],"sources":["index.ts"],"sourcesContent":["import { createGraphQL as baseCreateGraphQL, CreateGraphQLParams } from \"~/graphql\";\nimport { createDefaultModelManager } from \"~/modelManager\";\nimport { createGraphQLFields } from \"~/graphqlFields\";\nimport { createValidators } from \"~/validators\";\nimport { createDefaultStorageTransform } from \"~/storage/default\";\nimport { createObjectStorageTransform } from \"~/storage/object\";\nimport { createDynamicZoneStorageTransform } from \"~/graphqlFields/dynamicZone/dynamicZoneStorage\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters\";\nimport { createContextPlugin, CrudParams } from \"~/context\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage\";\nimport { createFieldConverters } from \"~/fieldConverters\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}) => {\n return [\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params)\n ];\n};\n\nexport type ContentContextParams = CrudParams;\nexport const createHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(params),\n createDefaultModelManager(),\n createGraphQLFields(),\n createFieldConverters(),\n createValidators(),\n createDefaultStorageTransform(),\n createObjectStorageTransform(),\n createDynamicZoneStorageTransform()\n ];\n};\nexport * from \"~/graphqlFields\";\nexport * from \"~/plugins\";\nexport * from \"~/utils/incrementEntryIdVersion\";\nexport * from \"~/utils/access\";\nexport * from \"./graphql/handleRequest\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"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"}
1
+ {"version":3,"names":["_graphql","require","_modelManager","_graphqlFields","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_validators","_default","_object","_dynamicZoneStorage","_parameters","_context","_entryStorage","_fieldConverters","_export","_plugins","_incrementEntryIdVersion","_access","_handleRequest","createHeadlessCmsGraphQL","params","createPathParameterPlugin","createHeaderParameterPlugin","createContextParameterPlugin","baseCreateGraphQL","createExportGraphQL","createHeadlessCmsContext","createContextPlugin","createDefaultModelManager","createGraphQLFields","createFieldConverters","createValidators","createDefaultStorageTransform","createObjectStorageTransform","createDynamicZoneStorageTransform"],"sources":["index.ts"],"sourcesContent":["import { createGraphQL as baseCreateGraphQL, CreateGraphQLParams } from \"~/graphql\";\nimport { createDefaultModelManager } from \"~/modelManager\";\nimport { createGraphQLFields } from \"~/graphqlFields\";\nimport { createValidators } from \"~/validators\";\nimport { createDefaultStorageTransform } from \"~/storage/default\";\nimport { createObjectStorageTransform } from \"~/storage/object\";\nimport { createDynamicZoneStorageTransform } from \"~/graphqlFields/dynamicZone/dynamicZoneStorage\";\nimport {\n createContextParameterPlugin,\n createHeaderParameterPlugin,\n createPathParameterPlugin\n} from \"~/parameters\";\nimport { createContextPlugin, CrudParams } from \"~/context\";\nimport {\n entryFieldFromStorageTransform,\n entryFromStorageTransform,\n entryToStorageTransform\n} from \"./utils/entryStorage\";\nimport { createFieldConverters } from \"~/fieldConverters\";\nimport { createExportGraphQL } from \"~/export\";\n\nexport type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;\nexport const createHeadlessCmsGraphQL = (params: CreateHeadlessCmsGraphQLParams = {}) => {\n return [\n /**\n * PathParameter plugins are used to determine the type of the cms endpoint\n */\n createPathParameterPlugin(),\n createHeaderParameterPlugin(),\n createContextParameterPlugin(),\n /**\n * At this point we can create, or not create, CMS GraphQL Schema.\n */\n ...baseCreateGraphQL(params),\n createExportGraphQL()\n ];\n};\n\nexport type ContentContextParams = CrudParams;\nexport const createHeadlessCmsContext = (params: ContentContextParams) => {\n return [\n /**\n * Context for all Lambdas - everything is loaded now.\n */\n createContextPlugin(params),\n createDefaultModelManager(),\n createGraphQLFields(),\n createFieldConverters(),\n createValidators(),\n createDefaultStorageTransform(),\n createObjectStorageTransform(),\n createDynamicZoneStorageTransform()\n ];\n};\nexport * from \"~/graphqlFields\";\nexport * from \"~/plugins\";\nexport * from \"~/utils/incrementEntryIdVersion\";\nexport * from \"~/utils/access\";\nexport * from \"./graphql/handleRequest\";\nexport { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };\n"],"mappings":"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"}
@@ -45,4 +45,6 @@ class DefaultCmsModelManager {
45
45
  return this._context.cms.updateEntry(this._model, id, data);
46
46
  }
47
47
  }
48
- exports.DefaultCmsModelManager = DefaultCmsModelManager;
48
+ exports.DefaultCmsModelManager = DefaultCmsModelManager;
49
+
50
+ //# sourceMappingURL=DefaultCmsModelManager.js.map
@@ -13,4 +13,6 @@ const plugin = {
13
13
  }
14
14
  };
15
15
  const createDefaultModelManager = () => plugin;
16
- exports.createDefaultModelManager = createDefaultModelManager;
16
+ exports.createDefaultModelManager = createDefaultModelManager;
17
+
18
+ //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/api-headless-cms",
3
- "version": "5.37.8",
3
+ "version": "5.38.0-beta.1",
4
4
  "main": "index.js",
5
5
  "keywords": [
6
6
  "cms:base"
@@ -20,21 +20,20 @@
20
20
  "dependencies": {
21
21
  "@babel/runtime": "7.22.6",
22
22
  "@graphql-tools/schema": "7.1.5",
23
- "@webiny/api": "5.37.8",
24
- "@webiny/api-i18n": "5.37.8",
25
- "@webiny/api-security": "5.37.8",
26
- "@webiny/api-tenancy": "5.37.8",
27
- "@webiny/error": "5.37.8",
28
- "@webiny/handler": "5.37.8",
29
- "@webiny/handler-aws": "5.37.8",
30
- "@webiny/handler-db": "5.37.8",
31
- "@webiny/handler-graphql": "5.37.8",
32
- "@webiny/plugins": "5.37.8",
33
- "@webiny/pubsub": "5.37.8",
34
- "@webiny/utils": "5.37.8",
35
- "@webiny/validation": "5.37.8",
23
+ "@webiny/api": "5.38.0-beta.1",
24
+ "@webiny/api-i18n": "5.38.0-beta.1",
25
+ "@webiny/api-security": "5.38.0-beta.1",
26
+ "@webiny/api-tenancy": "5.38.0-beta.1",
27
+ "@webiny/error": "5.38.0-beta.1",
28
+ "@webiny/handler": "5.38.0-beta.1",
29
+ "@webiny/handler-aws": "5.38.0-beta.1",
30
+ "@webiny/handler-db": "5.38.0-beta.1",
31
+ "@webiny/handler-graphql": "5.38.0-beta.1",
32
+ "@webiny/plugins": "5.38.0-beta.1",
33
+ "@webiny/pubsub": "5.38.0-beta.1",
34
+ "@webiny/utils": "5.38.0-beta.1",
35
+ "@webiny/validation": "5.38.0-beta.1",
36
36
  "code-frame": "5.0.0",
37
- "dataloader": "2.2.1",
38
37
  "dot-prop": "6.0.1",
39
38
  "graphql-tag": "2.12.6",
40
39
  "lodash": "4.17.21",
@@ -49,9 +48,9 @@
49
48
  "@babel/cli": "7.22.6",
50
49
  "@babel/core": "7.22.8",
51
50
  "@babel/preset-env": "7.22.7",
52
- "@webiny/api-wcp": "5.37.8",
53
- "@webiny/cli": "5.37.8",
54
- "@webiny/project-utils": "5.37.8",
51
+ "@webiny/api-wcp": "5.38.0-beta.1",
52
+ "@webiny/cli": "5.38.0-beta.1",
53
+ "@webiny/project-utils": "5.38.0-beta.1",
55
54
  "apollo-graphql": "0.9.7",
56
55
  "get-yarn-workspaces": "1.0.2",
57
56
  "graphql": "15.8.0",
@@ -71,5 +70,5 @@
71
70
  "build": "yarn webiny run build",
72
71
  "watch": "yarn webiny run watch"
73
72
  },
74
- "gitHead": "7af94ec35e4614ac89549a544352fd2ceba1ba42"
73
+ "gitHead": "6daf38d3ed0c029a8fea005c2b6246e5b325a09c"
75
74
  }
@@ -15,4 +15,6 @@ const createContextParameterPlugin = () => {
15
15
  };
16
16
  });
17
17
  };
18
- exports.createContextParameterPlugin = createContextParameterPlugin;
18
+ exports.createContextParameterPlugin = createContextParameterPlugin;
19
+
20
+ //# sourceMappingURL=context.js.map
@@ -41,4 +41,6 @@ const createHeaderParameterPlugin = () => {
41
41
  };
42
42
  });
43
43
  };
44
- exports.createHeaderParameterPlugin = createHeaderParameterPlugin;
44
+ exports.createHeaderParameterPlugin = createHeaderParameterPlugin;
45
+
46
+ //# sourceMappingURL=header.js.map
@@ -46,4 +46,6 @@ Object.keys(_header).forEach(function (key) {
46
46
  return _header[key];
47
47
  }
48
48
  });
49
- });
49
+ });
50
+
51
+ //# sourceMappingURL=index.js.map
@@ -34,4 +34,6 @@ const createManualPlugin = params => {
34
34
  };
35
35
  });
36
36
  };
37
- exports.createManualPlugin = createManualPlugin;
37
+ exports.createManualPlugin = createManualPlugin;
38
+
39
+ //# sourceMappingURL=manual.js.map
@@ -37,4 +37,6 @@ const createPathParameterPlugin = () => {
37
37
  };
38
38
  });
39
39
  };
40
- exports.createPathParameterPlugin = createPathParameterPlugin;
40
+ exports.createPathParameterPlugin = createPathParameterPlugin;
41
+
42
+ //# sourceMappingURL=path.js.map
@@ -9,4 +9,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
9
9
  var _handlerGraphql = require("@webiny/handler-graphql");
10
10
  class CmsGraphQLSchemaPlugin extends _handlerGraphql.GraphQLSchemaPlugin {}
11
11
  exports.CmsGraphQLSchemaPlugin = CmsGraphQLSchemaPlugin;
12
- (0, _defineProperty2.default)(CmsGraphQLSchemaPlugin, "type", "cms.graphql.schema");
12
+ (0, _defineProperty2.default)(CmsGraphQLSchemaPlugin, "type", "cms.graphql.schema");
13
+
14
+ //# sourceMappingURL=CmsGraphQLSchemaPlugin.js.map
@@ -25,4 +25,6 @@ exports.CmsGraphQLSchemaSorterPlugin = CmsGraphQLSchemaSorterPlugin;
25
25
  const createCmsGraphQLSchemaSorterPlugin = cb => {
26
26
  return new CmsGraphQLSchemaSorterPlugin(cb);
27
27
  };
28
- exports.createCmsGraphQLSchemaSorterPlugin = createCmsGraphQLSchemaSorterPlugin;
28
+ exports.createCmsGraphQLSchemaSorterPlugin = createCmsGraphQLSchemaSorterPlugin;
29
+
30
+ //# sourceMappingURL=CmsGraphQLSchemaSorterPlugin.js.map
@@ -1,13 +1,16 @@
1
1
  import { Plugin } from "@webiny/plugins";
2
2
  import { CmsGroup as BaseCmsGroup } from "../types";
3
- interface CmsGroup extends Omit<BaseCmsGroup, "locale" | "tenant" | "webinyVersion"> {
3
+ export interface CmsGroupInput extends Omit<BaseCmsGroup, "locale" | "tenant" | "webinyVersion" | "isPlugin"> {
4
+ tenant?: string;
5
+ locale?: string;
6
+ }
7
+ export interface CmsGroup extends Omit<BaseCmsGroup, "locale" | "tenant" | "webinyVersion"> {
4
8
  tenant?: string;
5
9
  locale?: string;
6
10
  }
7
11
  export declare class CmsGroupPlugin extends Plugin {
8
12
  static readonly type: string;
9
13
  readonly contentModelGroup: CmsGroup;
10
- constructor(contentModelGroup: CmsGroup);
14
+ constructor(contentModelGroup: CmsGroupInput);
11
15
  }
12
16
  export declare const createCmsGroup: (group: CmsGroup) => CmsGroupPlugin;
13
- export {};
@@ -5,13 +5,16 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createCmsGroup = exports.CmsGroupPlugin = void 0;
8
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
10
  var _plugins = require("@webiny/plugins");
10
11
  class CmsGroupPlugin extends _plugins.Plugin {
11
12
  constructor(contentModelGroup) {
12
13
  super();
13
14
  (0, _defineProperty2.default)(this, "contentModelGroup", void 0);
14
- this.contentModelGroup = contentModelGroup;
15
+ this.contentModelGroup = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, contentModelGroup), {}, {
16
+ isPlugin: true
17
+ });
15
18
  }
16
19
  }
17
20
  exports.CmsGroupPlugin = CmsGroupPlugin;
@@ -19,4 +22,6 @@ exports.CmsGroupPlugin = CmsGroupPlugin;
19
22
  const createCmsGroup = group => {
20
23
  return new CmsGroupPlugin(group);
21
24
  };
22
- exports.createCmsGroup = createCmsGroup;
25
+ exports.createCmsGroup = createCmsGroup;
26
+
27
+ //# sourceMappingURL=CmsGroupPlugin.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_plugins","require","CmsGroupPlugin","Plugin","constructor","contentModelGroup","_defineProperty2","default","exports","createCmsGroup","group"],"sources":["CmsGroupPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport { CmsGroup as BaseCmsGroup } from \"~/types\";\n\ninterface CmsGroup extends Omit<BaseCmsGroup, \"locale\" | \"tenant\" | \"webinyVersion\"> {\n tenant?: string;\n locale?: string;\n}\nexport class CmsGroupPlugin extends Plugin {\n public static override readonly type: string = \"cms-content-model-group\";\n public readonly contentModelGroup: CmsGroup;\n\n constructor(contentModelGroup: CmsGroup) {\n super();\n this.contentModelGroup = contentModelGroup;\n }\n}\n\nexport const createCmsGroup = (group: CmsGroup): CmsGroupPlugin => {\n return new CmsGroupPlugin(group);\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAOO,MAAMC,cAAc,SAASC,eAAM,CAAC;EAIvCC,WAAWA,CAACC,iBAA2B,EAAE;IACrC,KAAK,CAAC,CAAC;IAAC,IAAAC,gBAAA,CAAAC,OAAA;IACR,IAAI,CAACF,iBAAiB,GAAGA,iBAAiB;EAC9C;AACJ;AAACG,OAAA,CAAAN,cAAA,GAAAA,cAAA;AAAA,IAAAI,gBAAA,CAAAC,OAAA,EARYL,cAAc,UACwB,yBAAyB;AASrE,MAAMO,cAAc,GAAIC,KAAe,IAAqB;EAC/D,OAAO,IAAIR,cAAc,CAACQ,KAAK,CAAC;AACpC,CAAC;AAACF,OAAA,CAAAC,cAAA,GAAAA,cAAA"}
1
+ {"version":3,"names":["_plugins","require","CmsGroupPlugin","Plugin","constructor","contentModelGroup","_defineProperty2","default","_objectSpread2","isPlugin","exports","createCmsGroup","group"],"sources":["CmsGroupPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport { CmsGroup as BaseCmsGroup } from \"~/types\";\n\nexport interface CmsGroupInput\n extends Omit<BaseCmsGroup, \"locale\" | \"tenant\" | \"webinyVersion\" | \"isPlugin\"> {\n tenant?: string;\n locale?: string;\n}\n\nexport interface CmsGroup extends Omit<BaseCmsGroup, \"locale\" | \"tenant\" | \"webinyVersion\"> {\n tenant?: string;\n locale?: string;\n}\n\nexport class CmsGroupPlugin extends Plugin {\n public static override readonly type: string = \"cms-content-model-group\";\n public readonly contentModelGroup: CmsGroup;\n\n constructor(contentModelGroup: CmsGroupInput) {\n super();\n this.contentModelGroup = {\n ...contentModelGroup,\n isPlugin: true\n };\n }\n}\n\nexport const createCmsGroup = (group: CmsGroup): CmsGroupPlugin => {\n return new CmsGroupPlugin(group);\n};\n"],"mappings":";;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAcO,MAAMC,cAAc,SAASC,eAAM,CAAC;EAIvCC,WAAWA,CAACC,iBAAgC,EAAE;IAC1C,KAAK,CAAC,CAAC;IAAC,IAAAC,gBAAA,CAAAC,OAAA;IACR,IAAI,CAACF,iBAAiB,OAAAG,cAAA,CAAAD,OAAA,MAAAC,cAAA,CAAAD,OAAA,MACfF,iBAAiB;MACpBI,QAAQ,EAAE;IAAI,EACjB;EACL;AACJ;AAACC,OAAA,CAAAR,cAAA,GAAAA,cAAA;AAAA,IAAAI,gBAAA,CAAAC,OAAA,EAXYL,cAAc,UACwB,yBAAyB;AAYrE,MAAMS,cAAc,GAAIC,KAAe,IAAqB;EAC/D,OAAO,IAAIV,cAAc,CAACU,KAAK,CAAC;AACpC,CAAC;AAACF,OAAA,CAAAC,cAAA,GAAAA,cAAA"}
@@ -9,4 +9,6 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
9
9
  var _plugins = require("@webiny/plugins");
10
10
  class CmsModelFieldConverterPlugin extends _plugins.Plugin {}
11
11
  exports.CmsModelFieldConverterPlugin = CmsModelFieldConverterPlugin;
12
- (0, _defineProperty2.default)(CmsModelFieldConverterPlugin, "type", "cms.field.converter");
12
+ (0, _defineProperty2.default)(CmsModelFieldConverterPlugin, "type", "cms.field.converter");
13
+
14
+ //# sourceMappingURL=CmsModelFieldConverterPlugin.js.map
@@ -20,7 +20,7 @@ interface CmsModelFieldInput extends Omit<CmsModelFieldBase, "storageId" | "sett
20
20
  */
21
21
  settings?: CmsModelFieldSettings;
22
22
  }
23
- export interface CmsApiModel extends Omit<CmsModel, "isPrivate" | "fields" | "singularApiName" | "pluralApiName"> {
23
+ export interface CmsApiModel extends Omit<CmsModel, "isPrivate" | "fields" | "singularApiName" | "pluralApiName" | "isPlugin"> {
24
24
  isPrivate?: never;
25
25
  noValidate?: never;
26
26
  singularApiName?: string;
@@ -31,7 +31,7 @@ export interface CmsApiModelFull extends Omit<CmsApiModel, "fields" | "noValidat
31
31
  noValidate: true;
32
32
  fields: CmsModelFieldBase[];
33
33
  }
34
- interface CmsPrivateModel extends Omit<CmsModel, "isPrivate" | "singularApiName" | "pluralApiName" | "fields"> {
34
+ interface CmsPrivateModel extends Omit<CmsModel, "isPrivate" | "singularApiName" | "pluralApiName" | "fields" | "isPlugin"> {
35
35
  noValidate?: never;
36
36
  singularApiName?: never;
37
37
  pluralApiName?: never;
@@ -35,15 +35,17 @@ class CmsModelPlugin extends _plugins.Plugin {
35
35
  /**
36
36
  * We can safely ignore this error, because we are sure noValidate is not a model field.
37
37
  */
38
- // @ts-ignore
38
+ // @ts-expect-error
39
39
  delete input["noValidate"];
40
40
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, input), {}, {
41
+ isPlugin: true,
41
42
  isPrivate,
42
43
  singularApiName,
43
44
  pluralApiName
44
45
  });
45
46
  }
46
47
  const model = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, input), {}, {
48
+ isPlugin: true,
47
49
  isPrivate,
48
50
  singularApiName,
49
51
  pluralApiName,
@@ -181,4 +183,6 @@ exports.CmsModelPlugin = CmsModelPlugin;
181
183
  const createCmsModel = (model, options) => {
182
184
  return new CmsModelPlugin(model, options);
183
185
  };
184
- exports.createCmsModel = createCmsModel;
186
+ exports.createCmsModel = createCmsModel;
187
+
188
+ //# sourceMappingURL=CmsModelPlugin.js.map