@webiny/api-headless-cms 0.0.0-unstable.40876133bb → 0.0.0-unstable.496cf268ac
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/context.d.ts +5 -2
- package/context.js +53 -19
- package/context.js.map +1 -1
- package/crud/contentEntry/afterDelete.js +0 -5
- package/crud/contentEntry/afterDelete.js.map +1 -1
- package/crud/contentEntry/beforeCreate.js +0 -3
- package/crud/contentEntry/beforeCreate.js.map +1 -1
- package/crud/contentEntry/beforeUpdate.js +0 -3
- package/crud/contentEntry/beforeUpdate.js.map +1 -1
- package/crud/contentEntry/entryDataValidation.js +1 -40
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/markLockedFields.d.ts +1 -1
- package/crud/contentEntry/markLockedFields.js +19 -29
- package/crud/contentEntry/markLockedFields.js.map +1 -1
- package/crud/contentEntry/referenceFieldsMapping.js +12 -64
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry/searchableFields.d.ts +9 -0
- package/crud/contentEntry/searchableFields.js +72 -0
- package/crud/contentEntry/searchableFields.js.map +1 -0
- package/crud/contentEntry.crud.d.ts +2 -1
- package/crud/contentEntry.crud.js +140 -193
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/afterCreate.js +0 -2
- package/crud/contentModel/afterCreate.js.map +1 -1
- package/crud/contentModel/afterCreateFrom.js +0 -2
- package/crud/contentModel/afterCreateFrom.js.map +1 -1
- package/crud/contentModel/afterDelete.js +0 -2
- package/crud/contentModel/afterDelete.js.map +1 -1
- package/crud/contentModel/afterUpdate.js +0 -2
- package/crud/contentModel/afterUpdate.js.map +1 -1
- package/crud/contentModel/beforeCreate.d.ts +2 -3
- package/crud/contentModel/beforeCreate.js +11 -36
- package/crud/contentModel/beforeCreate.js.map +1 -1
- package/crud/contentModel/beforeDelete.js +0 -10
- package/crud/contentModel/beforeDelete.js.map +1 -1
- package/crud/contentModel/beforeUpdate.d.ts +2 -4
- package/crud/contentModel/beforeUpdate.js +6 -7
- package/crud/contentModel/beforeUpdate.js.map +1 -1
- package/crud/contentModel/compatibility/modelApiName.d.ts +3 -0
- package/crud/contentModel/compatibility/modelApiName.js +24 -0
- package/crud/contentModel/compatibility/modelApiName.js.map +1 -0
- package/crud/contentModel/contentModelManagerFactory.js +0 -7
- package/crud/contentModel/contentModelManagerFactory.js.map +1 -1
- package/crud/contentModel/createFieldStorageId.js +4 -3
- package/crud/contentModel/createFieldStorageId.js.map +1 -1
- package/crud/contentModel/defaultFields.d.ts +5 -0
- package/crud/contentModel/defaultFields.js +58 -0
- package/crud/contentModel/defaultFields.js.map +1 -0
- package/crud/contentModel/fields/descriptionField.d.ts +2 -0
- package/crud/contentModel/fields/descriptionField.js +42 -0
- package/crud/contentModel/fields/descriptionField.js.map +1 -0
- package/crud/contentModel/fields/imageField.d.ts +2 -0
- package/crud/contentModel/fields/imageField.js +46 -0
- package/crud/contentModel/fields/imageField.js.map +1 -0
- package/crud/contentModel/fields/titleField.d.ts +2 -0
- package/crud/contentModel/fields/titleField.js +58 -0
- package/crud/contentModel/fields/titleField.js.map +1 -0
- package/crud/contentModel/models.js +12 -0
- package/crud/contentModel/models.js.map +1 -1
- package/crud/contentModel/validateLayout.js +0 -8
- package/crud/contentModel/validateLayout.js.map +1 -1
- package/crud/contentModel/validateModel.d.ts +4 -4
- package/crud/contentModel/validateModel.js +6 -11
- package/crud/contentModel/validateModel.js.map +1 -1
- package/crud/contentModel/validateModelFields.d.ts +4 -4
- package/crud/contentModel/validateModelFields.js +131 -147
- package/crud/contentModel/validateModelFields.js.map +1 -1
- package/crud/contentModel/validation.d.ts +519 -0
- package/crud/contentModel/validation.js +145 -0
- package/crud/contentModel/validation.js.map +1 -0
- package/crud/contentModel.crud.js +245 -272
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/contentModelGroup/beforeCreate.js +0 -12
- package/crud/contentModelGroup/beforeCreate.js.map +1 -1
- package/crud/contentModelGroup/beforeDelete.js +0 -8
- package/crud/contentModelGroup/beforeDelete.js.map +1 -1
- package/crud/contentModelGroup/beforeUpdate.js +0 -5
- package/crud/contentModelGroup/beforeUpdate.js.map +1 -1
- package/crud/contentModelGroup/validation.d.ts +30 -0
- package/crud/contentModelGroup/validation.js +34 -0
- package/crud/contentModelGroup/validation.js.map +1 -0
- package/crud/contentModelGroup.crud.js +53 -95
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/crud/settings.crud.js +0 -12
- package/crud/settings.crud.js.map +1 -1
- package/crud/system.crud.js +1 -96
- package/crud/system.crud.js.map +1 -1
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +0 -13
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +203 -0
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +0 -53
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js.map +1 -1
- package/fieldConverters/index.d.ts +2 -1
- package/fieldConverters/index.js +2 -5
- package/fieldConverters/index.js.map +1 -1
- package/graphql/buildSchemaPlugins.d.ts +8 -3
- package/graphql/buildSchemaPlugins.js +6 -14
- package/graphql/buildSchemaPlugins.js.map +1 -1
- package/graphql/createExecutableSchema.d.ts +7 -0
- package/graphql/createExecutableSchema.js +29 -0
- package/graphql/createExecutableSchema.js.map +1 -0
- package/graphql/generateSchema.d.ts +8 -0
- package/graphql/generateSchema.js +31 -0
- package/graphql/generateSchema.js.map +1 -0
- package/graphql/graphQLHandlerFactory.js +95 -74
- package/graphql/graphQLHandlerFactory.js.map +1 -1
- package/graphql/index.d.ts +1 -3
- package/graphql/index.js +2 -46
- package/graphql/index.js.map +1 -1
- package/graphql/schema/baseContentSchema.d.ts +6 -2
- package/graphql/schema/baseContentSchema.js +10 -20
- package/graphql/schema/baseContentSchema.js.map +1 -1
- package/graphql/schema/baseSchema.d.ts +3 -0
- package/graphql/schema/baseSchema.js +53 -0
- package/graphql/schema/baseSchema.js.map +1 -0
- package/graphql/schema/contentEntries.d.ts +6 -2
- package/graphql/schema/contentEntries.js +118 -107
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModelGroups.d.ts +6 -2
- package/graphql/schema/contentModelGroups.js +10 -23
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.d.ts +6 -2
- package/graphql/schema/contentModels.js +62 -26
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.d.ts +1 -1
- package/graphql/schema/createFieldResolvers.js +20 -27
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createManageResolvers.d.ts +1 -1
- package/graphql/schema/createManageResolvers.js +33 -43
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.d.ts +3 -0
- package/graphql/schema/createManageSDL.js +64 -67
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.js +3 -17
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.js +8 -17
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.d.ts +3 -0
- package/graphql/schema/createReadSDL.js +33 -35
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/resolvers/commonFieldResolvers.d.ts +3 -2
- package/graphql/schema/resolvers/commonFieldResolvers.js +2 -3
- package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreate.js +0 -3
- package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js +0 -3
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDelete.js +0 -6
- package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGet.js +0 -16
- package/graphql/schema/resolvers/manage/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetByIds.js +0 -3
- package/graphql/schema/resolvers/manage/resolveGetByIds.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js +0 -3
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveList.js +0 -3
- package/graphql/schema/resolvers/manage/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolvePublish.js +0 -3
- package/graphql/schema/resolvers/manage/resolvePublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveRepublish.js +0 -3
- package/graphql/schema/resolvers/manage/resolveRepublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUnpublish.js +0 -3
- package/graphql/schema/resolvers/manage/resolveUnpublish.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveUpdate.js +0 -3
- package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveGet.js +0 -8
- package/graphql/schema/resolvers/preview/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/preview/resolveList.js +0 -3
- package/graphql/schema/resolvers/preview/resolveList.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveGet.js +0 -8
- package/graphql/schema/resolvers/read/resolveGet.js.map +1 -1
- package/graphql/schema/resolvers/read/resolveList.js +0 -3
- package/graphql/schema/resolvers/read/resolveList.js.map +1 -1
- package/graphql/schema/schemaPlugins.d.ts +8 -3
- package/graphql/schema/schemaPlugins.js +64 -66
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/graphql/system.js +55 -87
- package/graphql/system.js.map +1 -1
- package/graphqlFields/boolean.js +0 -12
- package/graphqlFields/boolean.js.map +1 -1
- package/graphqlFields/datetime.js +0 -17
- package/graphqlFields/datetime.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.d.ts +2 -0
- package/graphqlFields/dynamicZone/dynamicZoneField.js +216 -0
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -0
- package/graphqlFields/dynamicZone/dynamicZoneStorage.d.ts +3 -0
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js +63 -0
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -0
- package/graphqlFields/dynamicZone/index.d.ts +2 -0
- package/graphqlFields/dynamicZone/index.js +19 -0
- package/graphqlFields/dynamicZone/index.js.map +1 -0
- package/graphqlFields/file.js +0 -8
- package/graphqlFields/file.js.map +1 -1
- package/graphqlFields/helpers.js +0 -10
- package/graphqlFields/helpers.js.map +1 -1
- package/graphqlFields/index.d.ts +1 -1
- package/graphqlFields/index.js +2 -12
- package/graphqlFields/index.js.map +1 -1
- package/graphqlFields/longText.js +0 -10
- package/graphqlFields/longText.js.map +1 -1
- package/graphqlFields/number.js +4 -12
- package/graphqlFields/number.js.map +1 -1
- package/graphqlFields/object.js +118 -98
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/ref.js +86 -106
- package/graphqlFields/ref.js.map +1 -1
- package/graphqlFields/richText.js +0 -9
- package/graphqlFields/richText.js.map +1 -1
- package/graphqlFields/text.js +0 -11
- package/graphqlFields/text.js.map +1 -1
- package/index.d.ts +3 -3
- package/index.js +3 -27
- package/index.js.map +1 -1
- package/modelManager/DefaultCmsModelManager.js +0 -16
- package/modelManager/DefaultCmsModelManager.js.map +1 -1
- package/modelManager/index.js +0 -4
- package/modelManager/index.js.map +1 -1
- package/package.json +27 -28
- package/parameters/context.js +0 -4
- package/parameters/context.js.map +1 -1
- package/parameters/header.js +0 -11
- package/parameters/header.js.map +1 -1
- package/parameters/index.js +0 -8
- package/parameters/index.js.map +1 -1
- package/parameters/manual.js +1 -8
- package/parameters/manual.js.map +1 -1
- package/parameters/path.js +0 -11
- package/parameters/path.js.map +1 -1
- package/plugins/CmsGraphQLSchemaPlugin.d.ts +5 -0
- package/plugins/CmsGraphQLSchemaPlugin.js +12 -0
- package/plugins/CmsGraphQLSchemaPlugin.js.map +1 -0
- package/plugins/CmsGraphQLSchemaSorterPlugin.d.ts +20 -0
- package/plugins/CmsGraphQLSchemaSorterPlugin.js +28 -0
- package/plugins/CmsGraphQLSchemaSorterPlugin.js.map +1 -0
- package/plugins/CmsGroupPlugin.js +0 -8
- package/plugins/CmsGroupPlugin.js.map +1 -1
- package/plugins/CmsModelFieldConverterPlugin.d.ts +2 -2
- package/plugins/CmsModelFieldConverterPlugin.js +0 -5
- package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
- package/plugins/CmsModelPlugin.d.ts +11 -1
- package/plugins/CmsModelPlugin.js +15 -40
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/CmsParametersPlugin.js +0 -7
- package/plugins/CmsParametersPlugin.js.map +1 -1
- package/plugins/StorageTransformPlugin.d.ts +11 -11
- package/plugins/StorageTransformPlugin.js +0 -9
- package/plugins/StorageTransformPlugin.js.map +1 -1
- package/plugins/index.d.ts +2 -0
- package/plugins/index.js +22 -10
- package/plugins/index.js.map +1 -1
- package/storage/default.js +0 -3
- package/storage/default.js.map +1 -1
- package/storage/object.js +4 -20
- package/storage/object.js.map +1 -1
- package/types.d.ts +315 -77
- package/types.js +63 -70
- package/types.js.map +1 -1
- package/utils/access.js +11 -25
- package/utils/access.js.map +1 -1
- package/utils/converters/Converter.js +0 -13
- package/utils/converters/Converter.js.map +1 -1
- package/utils/converters/ConverterCollection.js +14 -34
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.js +2 -27
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/createTypeFromFields.d.ts +16 -0
- package/utils/createTypeFromFields.js +67 -0
- package/utils/createTypeFromFields.js.map +1 -0
- package/utils/createTypeName.js +2 -9
- package/utils/createTypeName.js.map +1 -1
- package/utils/entryStorage.js +22 -35
- package/utils/entryStorage.js.map +1 -1
- package/utils/filterAsync.js +0 -5
- package/utils/filterAsync.js.map +1 -1
- package/utils/getBaseFieldType.d.ts +4 -0
- package/utils/getBaseFieldType.js +10 -0
- package/utils/getBaseFieldType.js.map +1 -0
- package/utils/getEntryDescription.d.ts +2 -0
- package/utils/getEntryDescription.js +17 -0
- package/utils/getEntryDescription.js.map +1 -0
- package/utils/getEntryImage.d.ts +2 -0
- package/utils/getEntryImage.js +17 -0
- package/utils/getEntryImage.js.map +1 -0
- package/utils/getEntryTitle.js +0 -9
- package/utils/getEntryTitle.js.map +1 -1
- package/utils/getSchemaFromFieldPlugins.d.ts +4 -7
- package/utils/getSchemaFromFieldPlugins.js +23 -19
- package/utils/getSchemaFromFieldPlugins.js.map +1 -1
- package/utils/ownership.d.ts +3 -3
- package/utils/ownership.js +0 -8
- package/utils/ownership.js.map +1 -1
- package/utils/permissions.js +8 -23
- package/utils/permissions.js.map +1 -1
- package/utils/removeNullValues.d.ts +1 -0
- package/utils/removeNullValues.js +17 -0
- package/utils/removeNullValues.js.map +1 -0
- package/utils/removeUndefinedValues.d.ts +1 -0
- package/utils/removeUndefinedValues.js +17 -0
- package/utils/removeUndefinedValues.js.map +1 -0
- package/utils/renderFields.d.ts +2 -1
- package/utils/renderFields.js +10 -10
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.js +6 -14
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +2 -1
- package/utils/renderInputFields.js +6 -9
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.js +4 -10
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +7 -4
- package/utils/renderSortEnum.js +21 -11
- package/utils/renderSortEnum.js.map +1 -1
- package/utils/toSlug.js +0 -4
- package/utils/toSlug.js.map +1 -1
- package/validators/dateGte.js +0 -7
- package/validators/dateGte.js.map +1 -1
- package/validators/dateLte.js +0 -7
- package/validators/dateLte.js.map +1 -1
- package/validators/dynamicZone.d.ts +2 -0
- package/validators/dynamicZone.js +20 -0
- package/validators/dynamicZone.js.map +1 -0
- package/validators/gte.js +0 -8
- package/validators/gte.js.map +1 -1
- package/validators/in.js +0 -8
- package/validators/in.js.map +1 -1
- package/validators/index.js +2 -16
- package/validators/index.js.map +1 -1
- package/validators/lte.js +0 -8
- package/validators/lte.js.map +1 -1
- package/validators/maxLength.js +0 -8
- package/validators/maxLength.js.map +1 -1
- package/validators/minLength.js +0 -8
- package/validators/minLength.js.map +1 -1
- package/validators/pattern.js +0 -9
- package/validators/pattern.js.map +1 -1
- package/validators/patternPlugins/email.js +0 -2
- package/validators/patternPlugins/email.js.map +1 -1
- package/validators/patternPlugins/index.js +0 -8
- package/validators/patternPlugins/index.js.map +1 -1
- package/validators/patternPlugins/lowerCase.js +0 -2
- package/validators/patternPlugins/lowerCase.js.map +1 -1
- package/validators/patternPlugins/lowerCaseSpace.js +0 -2
- package/validators/patternPlugins/lowerCaseSpace.js.map +1 -1
- package/validators/patternPlugins/upperCase.js +0 -2
- package/validators/patternPlugins/upperCase.js.map +1 -1
- package/validators/patternPlugins/upperCaseSpace.js +0 -2
- package/validators/patternPlugins/upperCaseSpace.js.map +1 -1
- package/validators/patternPlugins/url.js +0 -2
- package/validators/patternPlugins/url.js.map +1 -1
- package/validators/required.js +0 -5
- package/validators/required.js.map +1 -1
- package/validators/timeGte.js +0 -8
- package/validators/timeGte.js.map +1 -1
- package/validators/timeLte.js +0 -8
- package/validators/timeLte.js.map +1 -1
- package/validators/unique.js +0 -7
- package/validators/unique.js.map +1 -1
- package/crud/index.d.ts +0 -6
- package/crud/index.js +0 -85
- package/crud/index.js.map +0 -1
- package/graphql/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -7
- package/graphql/schema/resolvers/manage/resolveRequestChanges.js +0 -21
- package/graphql/schema/resolvers/manage/resolveRequestChanges.js.map +0 -1
- package/graphql/schema/resolvers/manage/resolveRequestReview.d.ts +0 -7
- package/graphql/schema/resolvers/manage/resolveRequestReview.js +0 -21
- package/graphql/schema/resolvers/manage/resolveRequestReview.js.map +0 -1
- package/utils/filterModelFields.d.ts +0 -16
- package/utils/filterModelFields.js +0 -77
- package/utils/filterModelFields.js.map +0 -1
package/graphqlFields/ref.js
CHANGED
|
@@ -1,24 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.createRefField = void 0;
|
|
9
|
-
|
|
10
8
|
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
-
|
|
9
|
+
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
12
10
|
var _createTypeName = require("../utils/createTypeName");
|
|
13
|
-
|
|
14
11
|
var _utils = require("@webiny/utils");
|
|
15
|
-
|
|
16
12
|
var _helpers = require("./helpers");
|
|
17
|
-
|
|
18
13
|
const createUnionTypeName = (model, field) => {
|
|
19
|
-
return `${
|
|
14
|
+
return `${model.singularApiName}_${(0, _createTypeName.createReadTypeName)(field.fieldId)}`;
|
|
20
15
|
};
|
|
21
|
-
|
|
22
16
|
const createListFilters = ({
|
|
23
17
|
field
|
|
24
18
|
}) => {
|
|
@@ -26,7 +20,6 @@ const createListFilters = ({
|
|
|
26
20
|
${field.fieldId}: RefFieldWhereInput
|
|
27
21
|
`;
|
|
28
22
|
};
|
|
29
|
-
|
|
30
23
|
const createFilteringTypeDef = () => {
|
|
31
24
|
return `
|
|
32
25
|
input RefFieldWhereInput {
|
|
@@ -41,7 +34,6 @@ const createFilteringTypeDef = () => {
|
|
|
41
34
|
}
|
|
42
35
|
`;
|
|
43
36
|
};
|
|
44
|
-
|
|
45
37
|
const appendTypename = (entries, typename) => {
|
|
46
38
|
return entries.map(item => {
|
|
47
39
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, item), {}, {
|
|
@@ -53,18 +45,30 @@ const appendTypename = (entries, typename) => {
|
|
|
53
45
|
* We cast settings.models as object to have modelId because internally we know that it is so.
|
|
54
46
|
* Internal stuff so we are sure that settings.models contains what we require.
|
|
55
47
|
*/
|
|
56
|
-
|
|
57
|
-
|
|
58
48
|
const getFieldModels = field => {
|
|
59
49
|
if (!field.settings || Array.isArray(field.settings.models) === false) {
|
|
60
50
|
return [];
|
|
61
51
|
}
|
|
62
|
-
|
|
63
52
|
return field.settings.models;
|
|
64
53
|
};
|
|
65
|
-
|
|
66
54
|
const modelIdToTypeName = new Map();
|
|
67
|
-
|
|
55
|
+
const getModel = params => {
|
|
56
|
+
const {
|
|
57
|
+
models,
|
|
58
|
+
modelId
|
|
59
|
+
} = params;
|
|
60
|
+
const model = models.find(item => item.modelId === modelId);
|
|
61
|
+
if (model) {
|
|
62
|
+
return model;
|
|
63
|
+
}
|
|
64
|
+
throw new _error.default(`Could not find model with ID "${modelId}" in the list of models.`, "MODEL_NOT_FOUND", {
|
|
65
|
+
modelId
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
const getModelSingularApiName = params => {
|
|
69
|
+
const model = getModel(params);
|
|
70
|
+
return model.singularApiName;
|
|
71
|
+
};
|
|
68
72
|
const createRefField = () => {
|
|
69
73
|
return {
|
|
70
74
|
name: "cms-model-field-to-graphql-ref",
|
|
@@ -75,166 +79,147 @@ const createRefField = () => {
|
|
|
75
79
|
read: {
|
|
76
80
|
createTypeField({
|
|
77
81
|
model,
|
|
78
|
-
field
|
|
82
|
+
field,
|
|
83
|
+
models
|
|
79
84
|
}) {
|
|
80
85
|
var _field$settings;
|
|
81
|
-
|
|
82
|
-
const
|
|
83
|
-
|
|
84
|
-
|
|
86
|
+
const fieldModels = ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.models) || [];
|
|
87
|
+
const gqlType = fieldModels.length > 1 ? createUnionTypeName(model, field) : (0, _createTypeName.createReadTypeName)(getModelSingularApiName({
|
|
88
|
+
models,
|
|
89
|
+
modelId: fieldModels[0].modelId
|
|
90
|
+
}));
|
|
91
|
+
const typeDefs = fieldModels.length > 1 ? `union ${gqlType} = ${getFieldModels(field).map(({
|
|
92
|
+
modelId
|
|
93
|
+
}) => (0, _createTypeName.createReadTypeName)(getModelSingularApiName({
|
|
94
|
+
models,
|
|
95
|
+
modelId
|
|
96
|
+
}))).join(" | ")}` : "";
|
|
97
|
+
return {
|
|
98
|
+
fields: field.fieldId + `(populate: Boolean = true): ${field.multipleValues ? `[${gqlType}!]` : gqlType}`,
|
|
99
|
+
typeDefs
|
|
100
|
+
};
|
|
85
101
|
},
|
|
86
|
-
|
|
87
102
|
/**
|
|
88
103
|
* TS is complaining about mixed types for createResolver.
|
|
89
104
|
* TODO @ts-refactor @pavel Maybe we should have a single createResolver method?
|
|
90
105
|
*/
|
|
91
106
|
// @ts-ignore
|
|
92
|
-
createResolver(
|
|
107
|
+
createResolver({
|
|
108
|
+
field,
|
|
109
|
+
models
|
|
110
|
+
}) {
|
|
93
111
|
var _field$settings2;
|
|
94
|
-
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
for (const item of models) {
|
|
102
|
-
modelIdToTypeName.set(item.modelId, (0, _createTypeName.createReadTypeName)(item.modelId));
|
|
112
|
+
// Create a map of model types and corresponding modelIds so resolvers don't need to perform the lookup.
|
|
113
|
+
const fieldModels = ((_field$settings2 = field.settings) === null || _field$settings2 === void 0 ? void 0 : _field$settings2.models) || [];
|
|
114
|
+
for (const item of fieldModels) {
|
|
115
|
+
modelIdToTypeName.set(item.modelId, (0, _createTypeName.createReadTypeName)(getModelSingularApiName({
|
|
116
|
+
models,
|
|
117
|
+
modelId: item.modelId
|
|
118
|
+
})));
|
|
103
119
|
}
|
|
104
|
-
|
|
105
|
-
return async (parent, _, context) => {
|
|
120
|
+
return async (parent, args, context) => {
|
|
106
121
|
const {
|
|
107
122
|
cms
|
|
108
|
-
} = context;
|
|
123
|
+
} = context;
|
|
109
124
|
|
|
125
|
+
// Get field value for this entry
|
|
110
126
|
const initialValue = parent[field.fieldId];
|
|
111
|
-
|
|
112
127
|
if (!initialValue) {
|
|
113
128
|
return null;
|
|
114
129
|
}
|
|
115
|
-
|
|
130
|
+
if (args.populate === false) {
|
|
131
|
+
return initialValue;
|
|
132
|
+
}
|
|
116
133
|
if (field.multipleValues) {
|
|
117
134
|
/**
|
|
118
135
|
* We cast because value really can be array and single value.
|
|
119
136
|
* At this point, we are 99% sure that it is an array (+ we check for it)
|
|
120
137
|
*/
|
|
121
138
|
const value = initialValue;
|
|
122
|
-
|
|
123
139
|
if (Array.isArray(value) === false || value.length === 0) {
|
|
124
140
|
return [];
|
|
125
141
|
}
|
|
126
|
-
|
|
127
142
|
const entriesByModel = value.reduce((collection, ref) => {
|
|
128
143
|
if (!collection[ref.modelId]) {
|
|
129
144
|
collection[ref.modelId] = [];
|
|
130
145
|
} else if (collection[ref.modelId].includes(ref.entryId) === true) {
|
|
131
146
|
return collection;
|
|
132
147
|
}
|
|
133
|
-
|
|
134
148
|
collection[ref.modelId].push(ref.entryId);
|
|
135
149
|
return collection;
|
|
136
150
|
}, {});
|
|
137
151
|
const getters = Object.keys(entriesByModel).map(async modelId => {
|
|
138
|
-
const idList = entriesByModel[modelId];
|
|
139
|
-
|
|
152
|
+
const idList = entriesByModel[modelId];
|
|
153
|
+
// Get model manager, to get access to CRUD methods
|
|
140
154
|
const model = await cms.getModelManager(modelId);
|
|
141
|
-
let entries;
|
|
142
|
-
|
|
155
|
+
let entries;
|
|
156
|
+
// `read` API works with `published` data
|
|
143
157
|
if (cms.READ) {
|
|
144
158
|
entries = await model.getPublishedByIds(idList);
|
|
145
|
-
}
|
|
159
|
+
}
|
|
160
|
+
// `preview` and `manage` with `latest` data
|
|
146
161
|
else {
|
|
147
162
|
entries = await model.getLatestByIds(idList);
|
|
148
163
|
}
|
|
149
|
-
|
|
150
164
|
return appendTypename(entries, modelIdToTypeName.get(modelId));
|
|
151
165
|
});
|
|
152
166
|
return await Promise.all(getters).then(results => results.reduce((result, item) => result.concat(item), []));
|
|
153
167
|
}
|
|
168
|
+
const value = initialValue;
|
|
154
169
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
170
|
+
// Get model manager, to get access to CRUD methods
|
|
171
|
+
const model = await cms.getEntryManager(value.modelId);
|
|
172
|
+
let revisions;
|
|
173
|
+
// `read` API works with `published` data
|
|
160
174
|
if (cms.READ) {
|
|
161
175
|
revisions = await model.getPublishedByIds([value.entryId]);
|
|
162
|
-
}
|
|
176
|
+
}
|
|
177
|
+
// `preview` API works with `latest` data
|
|
163
178
|
else {
|
|
164
179
|
revisions = await model.getLatestByIds([value.entryId]);
|
|
165
180
|
}
|
|
181
|
+
|
|
166
182
|
/**
|
|
167
183
|
* If there are no revisions we must return null.
|
|
168
184
|
*/
|
|
169
|
-
|
|
170
|
-
|
|
171
185
|
if (!revisions || revisions.length === 0) {
|
|
172
186
|
return null;
|
|
173
187
|
}
|
|
174
|
-
|
|
175
188
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, revisions[0]), {}, {
|
|
176
189
|
__typename: modelIdToTypeName.get(value.modelId)
|
|
177
190
|
});
|
|
178
191
|
};
|
|
179
192
|
},
|
|
180
|
-
|
|
181
|
-
createSchema({
|
|
182
|
-
models
|
|
183
|
-
}) {
|
|
184
|
-
const unionFields = [];
|
|
185
|
-
|
|
186
|
-
for (const model of models) {
|
|
187
|
-
// Generate a dedicated union type for every `ref` field which has more than 1 content model assigned.
|
|
188
|
-
model.fields.filter(field => {
|
|
189
|
-
var _field$settings3;
|
|
190
|
-
|
|
191
|
-
return field.type === "ref" && (((_field$settings3 = field.settings) === null || _field$settings3 === void 0 ? void 0 : _field$settings3.models) || []).length > 1;
|
|
192
|
-
}).forEach(field => unionFields.push({
|
|
193
|
-
model,
|
|
194
|
-
field,
|
|
195
|
-
typeName: createUnionTypeName(model, field)
|
|
196
|
-
}));
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
const unionFieldsTypeDef = unionFields.map(({
|
|
200
|
-
field,
|
|
201
|
-
typeName
|
|
202
|
-
}) => `union ${typeName} = ${getFieldModels(field).map(({
|
|
203
|
-
modelId
|
|
204
|
-
}) => (0, _createTypeName.createReadTypeName)(modelId)).join(" | ")}`).join("\n");
|
|
205
|
-
const filteringTypeDef = `
|
|
206
|
-
${createFilteringTypeDef()}
|
|
207
|
-
|
|
208
|
-
${unionFieldsTypeDef}
|
|
209
|
-
`;
|
|
193
|
+
createSchema() {
|
|
210
194
|
return {
|
|
211
|
-
typeDefs:
|
|
195
|
+
typeDefs: createFilteringTypeDef(),
|
|
212
196
|
resolvers: {}
|
|
213
197
|
};
|
|
214
198
|
},
|
|
215
|
-
|
|
216
199
|
createListFilters
|
|
217
200
|
},
|
|
218
201
|
manage: {
|
|
219
202
|
createSchema() {
|
|
220
203
|
/**
|
|
221
|
-
* entryId in RefFieldInput is deprecated but cannot mark it as
|
|
204
|
+
* `entryId` in `RefFieldInput` is deprecated, but we cannot mark it as such in GraphQL.
|
|
205
|
+
* `entryId` is extracted at runtime from the `id` which contains both the `entryId` and revision number.
|
|
206
|
+
* See: `packages/api-headless-cms/src/crud/contentEntry/referenceFieldsMapping.ts`
|
|
222
207
|
*/
|
|
223
208
|
return {
|
|
224
|
-
typeDefs:
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
209
|
+
typeDefs: /* GraphQL */`
|
|
210
|
+
type RefField {
|
|
211
|
+
modelId: String!
|
|
212
|
+
entryId: ID!
|
|
213
|
+
id: ID!
|
|
214
|
+
}
|
|
215
|
+
|
|
216
|
+
input RefFieldInput {
|
|
217
|
+
modelId: String!
|
|
218
|
+
id: ID!
|
|
219
|
+
}
|
|
220
|
+
|
|
221
|
+
${createFilteringTypeDef()}
|
|
222
|
+
`,
|
|
238
223
|
resolvers: {
|
|
239
224
|
RefField: {
|
|
240
225
|
entryId: parent => {
|
|
@@ -250,26 +235,21 @@ const createRefField = () => {
|
|
|
250
235
|
}
|
|
251
236
|
};
|
|
252
237
|
},
|
|
253
|
-
|
|
254
238
|
createTypeField({
|
|
255
239
|
field
|
|
256
240
|
}) {
|
|
257
241
|
if (field.multipleValues) {
|
|
258
242
|
return `${field.fieldId}: [RefField!]`;
|
|
259
243
|
}
|
|
260
|
-
|
|
261
244
|
return `${field.fieldId}: RefField`;
|
|
262
245
|
},
|
|
263
|
-
|
|
264
246
|
createInputField({
|
|
265
247
|
field
|
|
266
248
|
}) {
|
|
267
249
|
return (0, _helpers.createGraphQLInputField)(field, "RefFieldInput");
|
|
268
250
|
},
|
|
269
|
-
|
|
270
251
|
createListFilters
|
|
271
252
|
}
|
|
272
253
|
};
|
|
273
254
|
};
|
|
274
|
-
|
|
275
255
|
exports.createRefField = createRefField;
|
package/graphqlFields/ref.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createUnionTypeName","model","field","createReadTypeName","modelId","fieldId","createListFilters","createFilteringTypeDef","appendTypename","entries","typename","map","item","__typename","getFieldModels","settings","Array","isArray","models","modelIdToTypeName","Map","createRefField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","gqlType","length","multipleValues","createResolver","params","set","parent","_","context","cms","initialValue","value","entriesByModel","reduce","collection","ref","includes","entryId","push","getters","Object","keys","idList","getModelManager","READ","getPublishedByIds","getLatestByIds","get","Promise","all","then","results","result","concat","revisions","createSchema","unionFields","fields","filter","forEach","typeName","unionFieldsTypeDef","join","filteringTypeDef","typeDefs","resolvers","manage","RefField","id","parseIdentifier","createInputField","createGraphQLInputField"],"sources":["ref.ts"],"sourcesContent":["import {\n CmsEntry,\n CmsContext,\n CmsModelFieldToGraphQLPlugin,\n CmsModel,\n CmsModelField\n} from \"~/types\";\nimport { createReadTypeName } from \"~/utils/createTypeName\";\nimport { parseIdentifier } from \"@webiny/utils\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface RefFieldValue {\n id?: string;\n entryId: string;\n modelId: string;\n}\n\ninterface UnionField {\n model: CmsModel;\n field: CmsModelField;\n typeName: string;\n}\n\nconst createUnionTypeName = (model: CmsModel, field: CmsModelField) => {\n return `${createReadTypeName(model.modelId)}${createReadTypeName(field.fieldId)}`;\n};\n\ninterface CreateListFilterParams {\n field: CmsModelField;\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\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 }) {\n const models = field.settings?.models || [];\n const gqlType =\n models.length > 1\n ? createUnionTypeName(model, field)\n : createReadTypeName(models[0].modelId);\n\n return field.fieldId + `: ${field.multipleValues ? `[${gqlType}]` : gqlType}`;\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(params) {\n const { field } = params;\n // Create a map of model types and corresponding modelIds so resolvers don't need to perform the lookup.\n const models = field.settings?.models || [];\n for (const item of models) {\n modelIdToTypeName.set(item.modelId, createReadTypeName(item.modelId));\n }\n\n return async (parent, _, 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\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.getModelManager(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({ models }) {\n const unionFields: UnionField[] = [];\n for (const model of models) {\n // Generate a dedicated union type for every `ref` field which has more than 1 content model assigned.\n model.fields\n .filter(\n field =>\n field.type === \"ref\" && (field.settings?.models || []).length > 1\n )\n .forEach(field =>\n unionFields.push({\n model,\n field,\n typeName: createUnionTypeName(model, field)\n })\n );\n }\n const unionFieldsTypeDef = unionFields\n .map(\n ({ field, typeName }) =>\n `union ${typeName} = ${getFieldModels(field)\n .map(({ modelId }) => createReadTypeName(modelId))\n .join(\" | \")}`\n )\n .join(\"\\n\");\n\n const filteringTypeDef = `\n ${createFilteringTypeDef()}\n \n ${unionFieldsTypeDef}\n `;\n\n return {\n typeDefs: filteringTypeDef,\n resolvers: {}\n };\n },\n createListFilters\n },\n manage: {\n createSchema() {\n /**\n * entryId in RefFieldInput is deprecated but cannot mark it as GraphQL does not allow marking input fields as deprecated\n */\n return {\n typeDefs: `\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":["createUnionTypeName","model","field","singularApiName","createReadTypeName","fieldId","createListFilters","createFilteringTypeDef","appendTypename","entries","typename","map","item","__typename","getFieldModels","settings","Array","isArray","models","modelIdToTypeName","Map","getModel","params","modelId","find","WebinyError","getModelSingularApiName","createRefField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","fieldModels","gqlType","length","typeDefs","join","fields","multipleValues","createResolver","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"],"sources":["ref.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport {\n CmsEntry,\n CmsContext,\n CmsModelFieldToGraphQLPlugin,\n CmsModel,\n CmsModelField\n} from \"~/types\";\nimport { createReadTypeName } 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}_${createReadTypeName(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 : createReadTypeName(\n getModelSingularApiName({ models, modelId: fieldModels[0].modelId })\n );\n\n const typeDefs =\n fieldModels.length > 1\n ? `union ${gqlType} = ${getFieldModels(field)\n .map(({ modelId }) =>\n createReadTypeName(\n getModelSingularApiName({\n models,\n modelId\n })\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 createReadTypeName(\n getModelSingularApiName({\n models,\n modelId: item.modelId\n })\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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"}
|
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createRichTextField = void 0;
|
|
7
|
-
|
|
8
7
|
var _helpers = require("./helpers");
|
|
9
|
-
|
|
10
8
|
const createRichTextField = () => {
|
|
11
9
|
return {
|
|
12
10
|
name: "cms-model-field-to-graphql-rich-text",
|
|
@@ -21,16 +19,13 @@ const createRichTextField = () => {
|
|
|
21
19
|
if (field.multipleValues) {
|
|
22
20
|
return `${field.fieldId}: [JSON]`;
|
|
23
21
|
}
|
|
24
|
-
|
|
25
22
|
return `${field.fieldId}: JSON`;
|
|
26
23
|
},
|
|
27
|
-
|
|
28
24
|
createGetFilters({
|
|
29
25
|
field
|
|
30
26
|
}) {
|
|
31
27
|
return `${field.fieldId}: JSON`;
|
|
32
28
|
}
|
|
33
|
-
|
|
34
29
|
},
|
|
35
30
|
manage: {
|
|
36
31
|
createTypeField({
|
|
@@ -39,18 +34,14 @@ const createRichTextField = () => {
|
|
|
39
34
|
if (field.multipleValues) {
|
|
40
35
|
return `${field.fieldId}: [JSON]`;
|
|
41
36
|
}
|
|
42
|
-
|
|
43
37
|
return `${field.fieldId}: JSON`;
|
|
44
38
|
},
|
|
45
|
-
|
|
46
39
|
createInputField({
|
|
47
40
|
field
|
|
48
41
|
}) {
|
|
49
42
|
return (0, _helpers.createGraphQLInputField)(field, "JSON");
|
|
50
43
|
}
|
|
51
|
-
|
|
52
44
|
}
|
|
53
45
|
};
|
|
54
46
|
};
|
|
55
|
-
|
|
56
47
|
exports.createRichTextField = createRichTextField;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createRichTextField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","field","multipleValues","fieldId","createGetFilters","manage","createInputField","createGraphQLInputField"],"sources":["richText.ts"],"sourcesContent":["import { CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\nexport const createRichTextField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-rich-text\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"rich-text\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [JSON]`;\n }\n\n return `${field.fieldId}: JSON`;\n },\n createGetFilters({ field }) {\n return `${field.fieldId}: JSON`;\n }\n },\n manage: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"JSON\");\n }\n }\n };\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["createRichTextField","name","type","fieldType","isSortable","isSearchable","read","createTypeField","field","multipleValues","fieldId","createGetFilters","manage","createInputField","createGraphQLInputField"],"sources":["richText.ts"],"sourcesContent":["import { CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\nexport const createRichTextField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-rich-text\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"rich-text\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [JSON]`;\n }\n\n return `${field.fieldId}: JSON`;\n },\n createGetFilters({ field }) {\n return `${field.fieldId}: JSON`;\n }\n },\n manage: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [JSON]`;\n }\n return `${field.fieldId}: JSON`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"JSON\");\n }\n }\n };\n};\n"],"mappings":";;;;;;AACA;AAEO,MAAMA,mBAAmB,GAAG,MAAoC;EACnE,OAAO;IACHC,IAAI,EAAE,sCAAsC;IAC5CC,IAAI,EAAE,4BAA4B;IAClCC,SAAS,EAAE,WAAW;IACtBC,UAAU,EAAE,KAAK;IACjBC,YAAY,EAAE,KAAK;IACnBC,IAAI,EAAE;MACFC,eAAe,CAAC;QAAEC;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACC,cAAc,EAAE;UACtB,OAAQ,GAAED,KAAK,CAACE,OAAQ,UAAS;QACrC;QAEA,OAAQ,GAAEF,KAAK,CAACE,OAAQ,QAAO;MACnC,CAAC;MACDC,gBAAgB,CAAC;QAAEH;MAAM,CAAC,EAAE;QACxB,OAAQ,GAAEA,KAAK,CAACE,OAAQ,QAAO;MACnC;IACJ,CAAC;IACDE,MAAM,EAAE;MACJL,eAAe,CAAC;QAAEC;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACC,cAAc,EAAE;UACtB,OAAQ,GAAED,KAAK,CAACE,OAAQ,UAAS;QACrC;QACA,OAAQ,GAAEF,KAAK,CAACE,OAAQ,QAAO;MACnC,CAAC;MACDG,gBAAgB,CAAC;QAAEL;MAAM,CAAC,EAAE;QACxB,OAAO,IAAAM,gCAAuB,EAACN,KAAK,EAAE,MAAM,CAAC;MACjD;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
|
package/graphqlFields/text.js
CHANGED
|
@@ -4,9 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createTextField = void 0;
|
|
7
|
-
|
|
8
7
|
var _helpers = require("./helpers");
|
|
9
|
-
|
|
10
8
|
const createListFilters = ({
|
|
11
9
|
field
|
|
12
10
|
}) => {
|
|
@@ -19,7 +17,6 @@ const createListFilters = ({
|
|
|
19
17
|
${field.fieldId}_not_contains: String
|
|
20
18
|
`;
|
|
21
19
|
};
|
|
22
|
-
|
|
23
20
|
const createTextField = () => {
|
|
24
21
|
return {
|
|
25
22
|
name: "cms-model-field-to-graphql-text",
|
|
@@ -35,39 +32,31 @@ const createTextField = () => {
|
|
|
35
32
|
if (field.multipleValues) {
|
|
36
33
|
return `${field.fieldId}: [String]`;
|
|
37
34
|
}
|
|
38
|
-
|
|
39
35
|
return `${field.fieldId}: String`;
|
|
40
36
|
},
|
|
41
|
-
|
|
42
37
|
createGetFilters({
|
|
43
38
|
field
|
|
44
39
|
}) {
|
|
45
40
|
return `${field.fieldId}: String`;
|
|
46
41
|
},
|
|
47
|
-
|
|
48
42
|
createListFilters
|
|
49
43
|
},
|
|
50
44
|
manage: {
|
|
51
45
|
createListFilters,
|
|
52
|
-
|
|
53
46
|
createTypeField({
|
|
54
47
|
field
|
|
55
48
|
}) {
|
|
56
49
|
if (field.multipleValues) {
|
|
57
50
|
return `${field.fieldId}: [String]`;
|
|
58
51
|
}
|
|
59
|
-
|
|
60
52
|
return `${field.fieldId}: String`;
|
|
61
53
|
},
|
|
62
|
-
|
|
63
54
|
createInputField({
|
|
64
55
|
field
|
|
65
56
|
}) {
|
|
66
57
|
return (0, _helpers.createGraphQLInputField)(field, "String");
|
|
67
58
|
}
|
|
68
|
-
|
|
69
59
|
}
|
|
70
60
|
};
|
|
71
61
|
};
|
|
72
|
-
|
|
73
62
|
exports.createTextField = createTextField;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createListFilters","field","fieldId","createTextField","name","type","fieldType","isSortable","isSearchable","fullTextSearch","read","createTypeField","multipleValues","createGetFilters","manage","createInputField","createGraphQLInputField"],"sources":["text.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: String\n ${field.fieldId}_not: String\n ${field.fieldId}_in: [String]\n ${field.fieldId}_not_in: [String]\n ${field.fieldId}_contains: String\n ${field.fieldId}_not_contains: String\n `;\n};\n\nexport const createTextField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-text\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"text\",\n isSortable: true,\n isSearchable: true,\n fullTextSearch: true,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n },\n createGetFilters({ field }) {\n return `${field.fieldId}: String`;\n },\n createListFilters\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"String\");\n }\n }\n };\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["createListFilters","field","fieldId","createTextField","name","type","fieldType","isSortable","isSearchable","fullTextSearch","read","createTypeField","multipleValues","createGetFilters","manage","createInputField","createGraphQLInputField"],"sources":["text.ts"],"sourcesContent":["import { CmsModelField, CmsModelFieldToGraphQLPlugin } from \"~/types\";\nimport { createGraphQLInputField } from \"./helpers\";\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n}\nconst createListFilters = ({ field }: CreateListFiltersParams) => {\n return `\n ${field.fieldId}: String\n ${field.fieldId}_not: String\n ${field.fieldId}_in: [String]\n ${field.fieldId}_not_in: [String]\n ${field.fieldId}_contains: String\n ${field.fieldId}_not_contains: String\n `;\n};\n\nexport const createTextField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-text\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"text\",\n isSortable: true,\n isSearchable: true,\n fullTextSearch: true,\n read: {\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n },\n createGetFilters({ field }) {\n return `${field.fieldId}: String`;\n },\n createListFilters\n },\n manage: {\n createListFilters,\n createTypeField({ field }) {\n if (field.multipleValues) {\n return `${field.fieldId}: [String]`;\n }\n return `${field.fieldId}: String`;\n },\n createInputField({ field }) {\n return createGraphQLInputField(field, \"String\");\n }\n }\n };\n};\n"],"mappings":";;;;;;AACA;AAKA,MAAMA,iBAAiB,GAAG,CAAC;EAAEC;AAA+B,CAAC,KAAK;EAC9D,OAAQ;AACZ,UAAUA,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,UAAUD,KAAK,CAACC,OAAQ;AACxB,KAAK;AACL,CAAC;AAEM,MAAMC,eAAe,GAAG,MAAoC;EAC/D,OAAO;IACHC,IAAI,EAAE,iCAAiC;IACvCC,IAAI,EAAE,4BAA4B;IAClCC,SAAS,EAAE,MAAM;IACjBC,UAAU,EAAE,IAAI;IAChBC,YAAY,EAAE,IAAI;IAClBC,cAAc,EAAE,IAAI;IACpBC,IAAI,EAAE;MACFC,eAAe,CAAC;QAAEV;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACW,cAAc,EAAE;UACtB,OAAQ,GAAEX,KAAK,CAACC,OAAQ,YAAW;QACvC;QACA,OAAQ,GAAED,KAAK,CAACC,OAAQ,UAAS;MACrC,CAAC;MACDW,gBAAgB,CAAC;QAAEZ;MAAM,CAAC,EAAE;QACxB,OAAQ,GAAEA,KAAK,CAACC,OAAQ,UAAS;MACrC,CAAC;MACDF;IACJ,CAAC;IACDc,MAAM,EAAE;MACJd,iBAAiB;MACjBW,eAAe,CAAC;QAAEV;MAAM,CAAC,EAAE;QACvB,IAAIA,KAAK,CAACW,cAAc,EAAE;UACtB,OAAQ,GAAEX,KAAK,CAACC,OAAQ,YAAW;QACvC;QACA,OAAQ,GAAED,KAAK,CAACC,OAAQ,UAAS;MACrC,CAAC;MACDa,gBAAgB,CAAC;QAAEd;MAAM,CAAC,EAAE;QACxB,OAAO,IAAAe,gCAAuB,EAACf,KAAK,EAAE,QAAQ,CAAC;MACnD;IACJ;EACJ,CAAC;AACL,CAAC;AAAC"}
|
package/index.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { CreateGraphQLParams } from "./graphql";
|
|
2
|
-
import { CrudParams } from "./
|
|
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 |
|
|
5
|
+
export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => (import("./plugins").CmsParametersPlugin | import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("./types").CmsContext> | import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("@webiny/plugins/types").PluginCollection)[];
|
|
6
6
|
export declare type ContentContextParams = CrudParams;
|
|
7
|
-
export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("./types").
|
|
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";
|
|
9
9
|
export * from "./plugins";
|
|
10
10
|
export { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };
|
package/index.js
CHANGED
|
@@ -29,17 +29,9 @@ Object.defineProperty(exports, "entryToStorageTransform", {
|
|
|
29
29
|
return _entryStorage.entryToStorageTransform;
|
|
30
30
|
}
|
|
31
31
|
});
|
|
32
|
-
|
|
33
32
|
var _graphql = require("./graphql");
|
|
34
|
-
|
|
35
|
-
var _upgrades = require("./upgrades");
|
|
36
|
-
|
|
37
33
|
var _modelManager = require("./modelManager");
|
|
38
|
-
|
|
39
|
-
var _crud = require("./crud");
|
|
40
|
-
|
|
41
34
|
var _graphqlFields = require("./graphqlFields");
|
|
42
|
-
|
|
43
35
|
Object.keys(_graphqlFields).forEach(function (key) {
|
|
44
36
|
if (key === "default" || key === "__esModule") return;
|
|
45
37
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
@@ -51,23 +43,15 @@ Object.keys(_graphqlFields).forEach(function (key) {
|
|
|
51
43
|
}
|
|
52
44
|
});
|
|
53
45
|
});
|
|
54
|
-
|
|
55
46
|
var _validators = require("./validators");
|
|
56
|
-
|
|
57
47
|
var _default = require("./storage/default");
|
|
58
|
-
|
|
59
48
|
var _object = require("./storage/object");
|
|
60
|
-
|
|
49
|
+
var _dynamicZoneStorage = require("./graphqlFields/dynamicZone/dynamicZoneStorage");
|
|
61
50
|
var _parameters = require("./parameters");
|
|
62
|
-
|
|
63
51
|
var _context = require("./context");
|
|
64
|
-
|
|
65
52
|
var _entryStorage = require("./utils/entryStorage");
|
|
66
|
-
|
|
67
53
|
var _fieldConverters = require("./fieldConverters");
|
|
68
|
-
|
|
69
54
|
var _plugins = require("./plugins");
|
|
70
|
-
|
|
71
55
|
Object.keys(_plugins).forEach(function (key) {
|
|
72
56
|
if (key === "default" || key === "__esModule") return;
|
|
73
57
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
@@ -79,7 +63,6 @@ Object.keys(_plugins).forEach(function (key) {
|
|
|
79
63
|
}
|
|
80
64
|
});
|
|
81
65
|
});
|
|
82
|
-
|
|
83
66
|
const createHeadlessCmsGraphQL = (params = {}) => {
|
|
84
67
|
return [
|
|
85
68
|
/**
|
|
@@ -89,21 +72,14 @@ const createHeadlessCmsGraphQL = (params = {}) => {
|
|
|
89
72
|
/**
|
|
90
73
|
* At this point we can create, or not create, CMS GraphQL Schema.
|
|
91
74
|
*/
|
|
92
|
-
(0, _graphql.createGraphQL)(params)];
|
|
75
|
+
...(0, _graphql.createGraphQL)(params)];
|
|
93
76
|
};
|
|
94
|
-
|
|
95
77
|
exports.createHeadlessCmsGraphQL = createHeadlessCmsGraphQL;
|
|
96
|
-
|
|
97
78
|
const createHeadlessCmsContext = params => {
|
|
98
79
|
return [
|
|
99
80
|
/**
|
|
100
81
|
* Context for all Lambdas - everything is loaded now.
|
|
101
82
|
*/
|
|
102
|
-
(0, _context.createContextPlugin)(), (0, _modelManager.createDefaultModelManager)(),
|
|
103
|
-
/**
|
|
104
|
-
*
|
|
105
|
-
*/
|
|
106
|
-
(0, _crud.createCrud)(params), (0, _graphqlFields.createGraphQLFields)(), (0, _fieldConverters.createFieldConverters)(), (0, _validators.createValidators)(), (0, _default.createDefaultStorageTransform)(), (0, _object.createObjectStorageTransform)(), (0, _upgrades.createUpgrades)()];
|
|
83
|
+
(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)()];
|
|
107
84
|
};
|
|
108
|
-
|
|
109
85
|
exports.createHeadlessCmsContext = createHeadlessCmsContext;
|