@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.
- package/constants.js +3 -1
- package/context.js +10 -17
- package/context.js.map +1 -1
- package/crud/contentEntry/afterDelete.js +3 -1
- package/crud/contentEntry/beforeCreate.js +3 -1
- package/crud/contentEntry/beforeUpdate.js +3 -1
- package/crud/contentEntry/entryDataValidation.d.ts +4 -2
- package/crud/contentEntry/entryDataValidation.js +220 -47
- package/crud/contentEntry/entryDataValidation.js.map +1 -1
- package/crud/contentEntry/markLockedFields.js +3 -1
- package/crud/contentEntry/referenceFieldsMapping.d.ts +6 -0
- package/crud/contentEntry/referenceFieldsMapping.js +118 -97
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry/searchableFields.js +5 -3
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentEntry.crud.js +68 -64
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/beforeCreate.d.ts +1 -1
- package/crud/contentModel/beforeCreate.js +11 -9
- package/crud/contentModel/beforeCreate.js.map +1 -1
- package/crud/contentModel/beforeDelete.js +3 -1
- package/crud/contentModel/beforeUpdate.d.ts +1 -1
- package/crud/contentModel/beforeUpdate.js +3 -6
- package/crud/contentModel/beforeUpdate.js.map +1 -1
- package/crud/contentModel/compatibility/modelApiName.js +3 -1
- package/crud/contentModel/contentModelManagerFactory.js +3 -1
- package/crud/contentModel/createFieldStorageId.js +3 -1
- package/crud/contentModel/defaultFields.js +3 -1
- package/crud/contentModel/ensureTypeTag.d.ts +5 -0
- package/crud/contentModel/ensureTypeTag.js +21 -0
- package/crud/contentModel/ensureTypeTag.js.map +1 -0
- package/crud/contentModel/fields/descriptionField.js +3 -1
- package/crud/contentModel/fields/imageField.js +3 -1
- package/crud/contentModel/fields/titleField.js +3 -1
- package/crud/contentModel/listModelsFromDatabase.d.ts +10 -0
- package/crud/contentModel/listModelsFromDatabase.js +39 -0
- package/crud/contentModel/listModelsFromDatabase.js.map +1 -0
- package/crud/contentModel/validate/endingAllowed.js +3 -1
- package/crud/contentModel/validate/isModelEndingAllowed.js +4 -2
- package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -1
- package/crud/contentModel/validate/modelId.js +3 -1
- package/crud/contentModel/validate/pluralApiName.js +3 -1
- package/crud/contentModel/validate/singularApiName.js +3 -1
- package/crud/contentModel/validateModel.js +3 -1
- package/crud/contentModel/validateModel.js.map +1 -1
- package/crud/contentModel/validateModelFields.js +3 -1
- package/crud/contentModel/validation.d.ts +339 -58
- package/crud/contentModel/validation.js +71 -11
- package/crud/contentModel/validation.js.map +1 -1
- package/crud/contentModel.crud.js +80 -156
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/contentModelGroup/beforeCreate.d.ts +1 -1
- package/crud/contentModelGroup/beforeCreate.js +15 -1
- package/crud/contentModelGroup/beforeCreate.js.map +1 -1
- package/crud/contentModelGroup/beforeDelete.js +3 -1
- package/crud/contentModelGroup/beforeUpdate.js +3 -1
- package/crud/contentModelGroup/listGroupsFromDatabase.d.ts +8 -0
- package/crud/contentModelGroup/listGroupsFromDatabase.js +22 -0
- package/crud/contentModelGroup/listGroupsFromDatabase.js.map +1 -0
- package/crud/contentModelGroup/validation.d.ts +9 -6
- package/crud/contentModelGroup/validation.js +5 -2
- package/crud/contentModelGroup/validation.js.map +1 -1
- package/crud/contentModelGroup.crud.js +89 -110
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/crud/system.crud.js +4 -7
- package/crud/system.crud.js.map +1 -1
- package/export/crud/exporting.d.ts +3 -0
- package/export/crud/exporting.js +50 -0
- package/export/crud/exporting.js.map +1 -0
- package/export/crud/importing.d.ts +3 -0
- package/export/crud/importing.js +79 -0
- package/export/crud/importing.js.map +1 -0
- package/export/crud/imports/importData.d.ts +14 -0
- package/export/crud/imports/importData.js +25 -0
- package/export/crud/imports/importData.js.map +1 -0
- package/export/crud/imports/importGroups.d.ts +8 -0
- package/export/crud/imports/importGroups.js +99 -0
- package/export/crud/imports/importGroups.js.map +1 -0
- package/export/crud/imports/importModels.d.ts +8 -0
- package/export/crud/imports/importModels.js +134 -0
- package/export/crud/imports/importModels.js.map +1 -0
- package/export/crud/imports/validateGroups.d.ts +8 -0
- package/export/crud/imports/validateGroups.js +106 -0
- package/export/crud/imports/validateGroups.js.map +1 -0
- package/export/crud/imports/validateInput.d.ts +19 -0
- package/export/crud/imports/validateInput.js +49 -0
- package/export/crud/imports/validateInput.js.map +1 -0
- package/export/crud/imports/validateModels.d.ts +9 -0
- package/export/crud/imports/validateModels.js +204 -0
- package/export/crud/imports/validateModels.js.map +1 -0
- package/export/crud/index.d.ts +4 -0
- package/export/crud/index.js +15 -0
- package/export/crud/index.js.map +1 -0
- package/export/crud/sanitize.d.ts +4 -0
- package/export/crud/sanitize.js +35 -0
- package/export/crud/sanitize.js.map +1 -0
- package/export/graphql/index.d.ts +3 -0
- package/export/graphql/index.js +188 -0
- package/export/graphql/index.js.map +1 -0
- package/export/index.d.ts +2 -0
- package/export/index.js +29 -0
- package/export/index.js.map +1 -0
- package/export/types.d.ts +111 -0
- package/export/types.js +22 -0
- package/export/types.js.map +1 -0
- package/fieldConverters/CmsModelDefaultFieldConverterPlugin.js +3 -1
- package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +3 -1
- package/fieldConverters/CmsModelObjectFieldConverterPlugin.js +3 -1
- package/fieldConverters/index.js +3 -1
- package/graphql/buildSchemaPlugins.js +3 -1
- package/graphql/checkEndpointAccess.js +3 -1
- package/graphql/createExecutableSchema.js +3 -1
- package/graphql/createRequestBody.js +3 -1
- package/graphql/formatErrorPayload.js +3 -1
- package/graphql/generateSchema.js +3 -1
- package/graphql/getSchema.d.ts +0 -1
- package/graphql/getSchema.js +23 -13
- package/graphql/getSchema.js.map +1 -1
- package/graphql/graphQLHandlerFactory.js +3 -1
- package/graphql/handleRequest.js +3 -5
- package/graphql/handleRequest.js.map +1 -1
- package/graphql/index.d.ts +1 -1
- package/graphql/index.js +4 -2
- package/graphql/index.js.map +1 -1
- package/graphql/schema/baseContentSchema.js +3 -1
- package/graphql/schema/baseSchema.d.ts +2 -3
- package/graphql/schema/baseSchema.js +58 -2
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/contentEntries.js +4 -2
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModelGroups.js +4 -1
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.js +5 -5
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.js +3 -1
- package/graphql/schema/createFieldTypePluginRecords.js +3 -1
- package/graphql/schema/createManageResolvers.js +7 -1
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.js +8 -4
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.js +3 -1
- package/graphql/schema/createReadResolvers.js +3 -1
- package/graphql/schema/createReadSDL.js +3 -1
- package/graphql/schema/resolvers/commonFieldResolvers.js +3 -1
- package/graphql/schema/resolvers/manage/resolveCreate.d.ts +2 -1
- package/graphql/schema/resolvers/manage/resolveCreate.js +4 -2
- package/graphql/schema/resolvers/manage/resolveCreate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveCreateFrom.d.ts +2 -1
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js +4 -2
- package/graphql/schema/resolvers/manage/resolveCreateFrom.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDelete.js +3 -1
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +3 -1
- package/graphql/schema/resolvers/manage/resolveGet.js +3 -1
- package/graphql/schema/resolvers/manage/resolveGetByIds.js +3 -1
- package/graphql/schema/resolvers/manage/resolveGetRevisions.js +3 -1
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +3 -1
- package/graphql/schema/resolvers/manage/resolveList.js +3 -1
- package/graphql/schema/resolvers/manage/resolveMove.js +3 -1
- package/graphql/schema/resolvers/manage/resolvePublish.js +3 -1
- package/graphql/schema/resolvers/manage/resolveRepublish.js +3 -1
- package/graphql/schema/resolvers/manage/resolveUnpublish.js +3 -1
- package/graphql/schema/resolvers/manage/resolveUpdate.d.ts +2 -1
- package/graphql/schema/resolvers/manage/resolveUpdate.js +4 -2
- package/graphql/schema/resolvers/manage/resolveUpdate.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveValidate.d.ts +8 -0
- package/graphql/schema/resolvers/manage/resolveValidate.js +20 -0
- package/graphql/schema/resolvers/manage/resolveValidate.js.map +1 -0
- package/graphql/schema/resolvers/preview/resolveGet.js +3 -1
- package/graphql/schema/resolvers/preview/resolveList.js +3 -1
- package/graphql/schema/resolvers/read/resolveGet.js +3 -1
- package/graphql/schema/resolvers/read/resolveList.js +3 -1
- package/graphql/schema/schemaPlugins.js +3 -1
- package/graphql/system.js +3 -1
- package/graphqlFields/boolean.js +3 -1
- package/graphqlFields/datetime.js +4 -3
- package/graphqlFields/datetime.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.js +29 -6
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js +3 -1
- package/graphqlFields/dynamicZone/index.js +3 -1
- package/graphqlFields/file.js +3 -1
- package/graphqlFields/helpers.d.ts +0 -1
- package/graphqlFields/helpers.js +6 -18
- package/graphqlFields/helpers.js.map +1 -1
- package/graphqlFields/index.js +3 -1
- package/graphqlFields/longText.js +14 -3
- package/graphqlFields/longText.js.map +1 -1
- package/graphqlFields/number.js +3 -1
- package/graphqlFields/object.js +5 -17
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/ref.js +4 -2
- package/graphqlFields/ref.js.map +1 -1
- package/graphqlFields/richText.js +3 -1
- package/graphqlFields/text.js +3 -1
- package/index.d.ts +1 -1
- package/index.js +5 -2
- package/index.js.map +1 -1
- package/modelManager/DefaultCmsModelManager.js +3 -1
- package/modelManager/index.js +3 -1
- package/package.json +18 -19
- package/parameters/context.js +3 -1
- package/parameters/header.js +3 -1
- package/parameters/index.js +3 -1
- package/parameters/manual.js +3 -1
- package/parameters/path.js +3 -1
- package/plugins/CmsGraphQLSchemaPlugin.js +3 -1
- package/plugins/CmsGraphQLSchemaSorterPlugin.js +3 -1
- package/plugins/CmsGroupPlugin.d.ts +6 -3
- package/plugins/CmsGroupPlugin.js +7 -2
- package/plugins/CmsGroupPlugin.js.map +1 -1
- package/plugins/CmsModelFieldConverterPlugin.js +3 -1
- package/plugins/CmsModelPlugin.d.ts +2 -2
- package/plugins/CmsModelPlugin.js +6 -2
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/CmsParametersPlugin.js +3 -1
- package/plugins/StorageOperationsCmsModelPlugin.js +3 -1
- package/plugins/StorageTransformPlugin.js +3 -1
- package/plugins/index.js +3 -1
- package/storage/default.js +3 -1
- package/storage/object.js +3 -1
- package/types.d.ts +62 -230
- package/types.js +3 -17
- package/types.js.map +1 -1
- package/utils/access.js +3 -1
- package/utils/caching/Cache.d.ts +2 -0
- package/utils/caching/Cache.js +53 -0
- package/utils/caching/Cache.js.map +1 -0
- package/utils/caching/CacheKey.d.ts +3 -0
- package/utils/caching/CacheKey.js +41 -0
- package/utils/caching/CacheKey.js.map +1 -0
- package/utils/caching/index.d.ts +2 -0
- package/utils/caching/index.js +29 -0
- package/utils/caching/index.js.map +1 -0
- package/utils/caching/types.d.ts +9 -0
- package/utils/caching/types.js +7 -0
- package/utils/caching/types.js.map +1 -0
- package/utils/converters/Converter.js +3 -1
- package/utils/converters/ConverterCollection.js +3 -1
- package/utils/converters/valueKeyStorageConverter.js +3 -1
- package/utils/createTypeFromFields.js +6 -1
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/createTypeName.js +3 -1
- package/utils/entryStorage.js +3 -1
- package/utils/filterAsync.js +3 -1
- package/utils/getBaseFieldType.js +3 -1
- package/utils/getEntryDescription.js +3 -1
- package/utils/getEntryImage.js +3 -1
- package/utils/getEntryTitle.js +3 -1
- package/utils/getSchemaFromFieldPlugins.js +3 -1
- package/utils/incrementEntryIdVersion.js +3 -1
- package/utils/index.d.ts +1 -0
- package/utils/index.js +18 -0
- package/utils/index.js.map +1 -0
- package/utils/permissions/EntriesPermissions.js +3 -1
- package/utils/permissions/ModelGroupsPermissions.js +3 -1
- package/utils/permissions/ModelsPermissions.js +3 -1
- package/utils/renderFields.js +3 -1
- package/utils/renderGetFilterFields.js +3 -1
- package/utils/renderInputFields.js +3 -1
- package/utils/renderListFilterFields.js +3 -1
- package/utils/renderSortEnum.js +3 -1
- package/utils/toSlug.js +3 -1
- package/validators/dateGte.js +3 -1
- package/validators/dateLte.js +3 -1
- package/validators/gte.js +3 -1
- package/validators/in.js +3 -1
- package/validators/index.js +4 -3
- package/validators/index.js.map +1 -1
- package/validators/lte.js +3 -1
- package/validators/maxLength.js +3 -1
- package/validators/minLength.js +3 -1
- package/validators/pattern.js +3 -1
- package/validators/patternPlugins/email.js +3 -1
- package/validators/patternPlugins/index.js +3 -1
- package/validators/patternPlugins/lowerCase.js +3 -1
- package/validators/patternPlugins/lowerCaseSpace.js +3 -1
- package/validators/patternPlugins/upperCase.js +3 -1
- package/validators/patternPlugins/upperCaseSpace.js +3 -1
- package/validators/patternPlugins/url.js +3 -1
- package/validators/required.js +3 -1
- package/validators/timeGte.js +3 -1
- package/validators/timeLte.js +3 -1
- package/validators/unique.js +4 -2
- package/validators/unique.js.map +1 -1
- package/crud/contentModel/afterCreate.d.ts +0 -8
- package/crud/contentModel/afterCreate.js +0 -16
- package/crud/contentModel/afterCreate.js.map +0 -1
- package/crud/contentModel/afterCreateFrom.d.ts +0 -8
- package/crud/contentModel/afterCreateFrom.js +0 -16
- package/crud/contentModel/afterCreateFrom.js.map +0 -1
- package/crud/contentModel/afterDelete.d.ts +0 -8
- package/crud/contentModel/afterDelete.js +0 -16
- package/crud/contentModel/afterDelete.js.map +0 -1
- package/crud/contentModel/afterUpdate.d.ts +0 -8
- package/crud/contentModel/afterUpdate.js +0 -16
- package/crud/contentModel/afterUpdate.js.map +0 -1
- package/crud/contentModel/validateLayout.d.ts +0 -2
- package/crud/contentModel/validateLayout.js +0 -28
- package/crud/contentModel/validateLayout.js.map +0 -1
- package/crud/settings.crud.d.ts +0 -12
- package/crud/settings.crud.js +0 -62
- package/crud/settings.crud.js.map +0 -1
- package/utils/permissions/SettingsPermissions.d.ts +0 -4
- package/utils/permissions/SettingsPermissions.js +0 -9
- package/utils/permissions/SettingsPermissions.js.map +0 -1
- package/validators/dynamicZone.d.ts +0 -2
- package/validators/dynamicZone.js +0 -20
- package/validators/dynamicZone.js.map +0 -1
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.validateModels = void 0;
|
|
8
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
9
|
+
var _validation = require("../../../crud/contentModel/validation");
|
|
10
|
+
var _types = require("../../types");
|
|
11
|
+
var _utils = require("@webiny/utils");
|
|
12
|
+
const addCodeMessage = params => {
|
|
13
|
+
if (params.action !== _types.CmsImportAction.CODE) {
|
|
14
|
+
return params;
|
|
15
|
+
}
|
|
16
|
+
return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
|
|
17
|
+
errors: [{
|
|
18
|
+
message: `The model is defined via plugin and it cannot be updated.`,
|
|
19
|
+
code: "MODEL_IS_A_PLUGIN"
|
|
20
|
+
}]
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
const validateModel = params => {
|
|
24
|
+
const {
|
|
25
|
+
model,
|
|
26
|
+
models
|
|
27
|
+
} = params;
|
|
28
|
+
/**
|
|
29
|
+
* Let's check if model values that must be unique, already exist.
|
|
30
|
+
*/
|
|
31
|
+
const existingModelId = models.find(m => m.modelId.toLowerCase() === model.modelId.toLowerCase());
|
|
32
|
+
const existingSingularApiName = models.find(m => m.singularApiName.toLowerCase() === model.singularApiName.toLowerCase() || m.singularApiName.toLowerCase() === model.pluralApiName.toString());
|
|
33
|
+
const existingPluralApiName = models.find(m => m.pluralApiName.toLowerCase() === model.pluralApiName.toLowerCase() || m.pluralApiName.toLowerCase() === model.singularApiName.toString());
|
|
34
|
+
const UPDATE_KEYWORD = existingModelId !== null && existingModelId !== void 0 && existingModelId.isPlugin ? _types.CmsImportAction.CODE : _types.CmsImportAction.UPDATE;
|
|
35
|
+
/**
|
|
36
|
+
* There are few cases that we must address:
|
|
37
|
+
*
|
|
38
|
+
* 1. modelId, singular and plural names do not exist in any of the models
|
|
39
|
+
* - this is OK, we can create the model
|
|
40
|
+
*/
|
|
41
|
+
if (!existingModelId && !existingSingularApiName && !existingPluralApiName) {
|
|
42
|
+
return {
|
|
43
|
+
action: _types.CmsImportAction.CREATE
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* 2. modelId, singular and plural names are a part of a single model
|
|
48
|
+
* - this is OK, we can update the model
|
|
49
|
+
*/
|
|
50
|
+
if (existingModelId && existingSingularApiName && existingPluralApiName && existingModelId.modelId === existingSingularApiName.modelId && existingModelId.modelId === existingPluralApiName.modelId) {
|
|
51
|
+
return addCodeMessage({
|
|
52
|
+
action: UPDATE_KEYWORD
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* 3. modelId already exists, but singular and plural names do not
|
|
57
|
+
* - this is OK, we can update the model
|
|
58
|
+
*/
|
|
59
|
+
if (existingModelId && !existingSingularApiName && !existingPluralApiName) {
|
|
60
|
+
return addCodeMessage({
|
|
61
|
+
action: UPDATE_KEYWORD
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* 4. modelId already exists, but only the singular name exists.
|
|
66
|
+
* - this is OK, we can update the model
|
|
67
|
+
*/
|
|
68
|
+
if (existingModelId && (existingSingularApiName === null || existingSingularApiName === void 0 ? void 0 : existingSingularApiName.modelId) === existingModelId.modelId && !existingPluralApiName) {
|
|
69
|
+
return addCodeMessage({
|
|
70
|
+
action: UPDATE_KEYWORD
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* 5. modelId already exists, but only the plural name exists.
|
|
75
|
+
* - this is OK, we can update the model
|
|
76
|
+
*/
|
|
77
|
+
if (existingModelId && (existingPluralApiName === null || existingPluralApiName === void 0 ? void 0 : existingPluralApiName.modelId) === existingModelId.modelId && !existingSingularApiName) {
|
|
78
|
+
return addCodeMessage({
|
|
79
|
+
action: UPDATE_KEYWORD
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* 6. modelId already exists, but singular and plural names are in different models.
|
|
84
|
+
*/
|
|
85
|
+
if (existingModelId && ((existingSingularApiName === null || existingSingularApiName === void 0 ? void 0 : existingSingularApiName.modelId) !== existingModelId.modelId || (existingPluralApiName === null || existingPluralApiName === void 0 ? void 0 : existingPluralApiName.modelId) !== existingModelId.modelId)) {
|
|
86
|
+
return {
|
|
87
|
+
action: _types.CmsImportAction.NONE,
|
|
88
|
+
errors: [{
|
|
89
|
+
message: `The model has singular or plural API names same as some other model.`,
|
|
90
|
+
code: "MODEL_API_NAMES_ERROR"
|
|
91
|
+
}]
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
action: _types.CmsImportAction.NONE,
|
|
96
|
+
errors: [{
|
|
97
|
+
message: `The model cannot be imported.`,
|
|
98
|
+
code: "MODEL_IMPORT_ERROR",
|
|
99
|
+
data: {
|
|
100
|
+
modelId: existingModelId === null || existingModelId === void 0 ? void 0 : existingModelId.modelId,
|
|
101
|
+
singularApiName: existingSingularApiName === null || existingSingularApiName === void 0 ? void 0 : existingSingularApiName.modelId,
|
|
102
|
+
pluralApiName: existingPluralApiName === null || existingPluralApiName === void 0 ? void 0 : existingPluralApiName.modelId
|
|
103
|
+
}
|
|
104
|
+
}]
|
|
105
|
+
};
|
|
106
|
+
};
|
|
107
|
+
const getRelatedModels = params => {
|
|
108
|
+
const {
|
|
109
|
+
fields,
|
|
110
|
+
models
|
|
111
|
+
} = params;
|
|
112
|
+
const result = [];
|
|
113
|
+
for (const field of fields) {
|
|
114
|
+
if (field.type === "ref") {
|
|
115
|
+
for (const model of ((_field$settings = field.settings) === null || _field$settings === void 0 ? void 0 : _field$settings.models) || []) {
|
|
116
|
+
var _field$settings;
|
|
117
|
+
result.push(model.modelId);
|
|
118
|
+
}
|
|
119
|
+
} else if (field.type === "object") {
|
|
120
|
+
var _field$settings2;
|
|
121
|
+
result.push(...getRelatedModels({
|
|
122
|
+
fields: ((_field$settings2 = field.settings) === null || _field$settings2 === void 0 ? void 0 : _field$settings2.fields) || [],
|
|
123
|
+
models
|
|
124
|
+
}));
|
|
125
|
+
} else if (field.type === "dynamicZone") {
|
|
126
|
+
var _field$settings3;
|
|
127
|
+
const templates = ((_field$settings3 = field.settings) === null || _field$settings3 === void 0 ? void 0 : _field$settings3.templates) || [];
|
|
128
|
+
for (const tpl of templates) {
|
|
129
|
+
result.push(...getRelatedModels({
|
|
130
|
+
fields: tpl.fields || [],
|
|
131
|
+
models
|
|
132
|
+
}));
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
return Array.from(new Set(result));
|
|
137
|
+
};
|
|
138
|
+
const validateModels = async params => {
|
|
139
|
+
const {
|
|
140
|
+
groups,
|
|
141
|
+
models,
|
|
142
|
+
input
|
|
143
|
+
} = params;
|
|
144
|
+
const validation = (0, _validation.createModelImportValidation)();
|
|
145
|
+
return await Promise.all(input.map(async model => {
|
|
146
|
+
var _model$fields, _modelValidationResul;
|
|
147
|
+
const result = await validation.safeParseAsync(model);
|
|
148
|
+
if (!result.success) {
|
|
149
|
+
const error = (0, _utils.createZodError)(result.error);
|
|
150
|
+
return {
|
|
151
|
+
model: model,
|
|
152
|
+
action: _types.CmsImportAction.NONE,
|
|
153
|
+
error: {
|
|
154
|
+
message: error.message,
|
|
155
|
+
code: error.code,
|
|
156
|
+
data: error.data
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
const data = result.data;
|
|
161
|
+
const group = groups.find(g => g.id === data.group);
|
|
162
|
+
if (!group) {
|
|
163
|
+
return {
|
|
164
|
+
model: data,
|
|
165
|
+
action: _types.CmsImportAction.NONE,
|
|
166
|
+
error: {
|
|
167
|
+
message: `The model group "${data.group}" does not exist.`,
|
|
168
|
+
code: "MODEL_GROUP_NOT_FOUND"
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
} else if (!((_model$fields = model.fields) !== null && _model$fields !== void 0 && _model$fields.length)) {
|
|
172
|
+
return {
|
|
173
|
+
model: data,
|
|
174
|
+
action: _types.CmsImportAction.NONE,
|
|
175
|
+
error: {
|
|
176
|
+
message: `Model is missing fields.`,
|
|
177
|
+
code: "MODEL_FIELDS_MISSING"
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
const modelValidationResult = validateModel({
|
|
182
|
+
model: data,
|
|
183
|
+
models
|
|
184
|
+
});
|
|
185
|
+
if (!((_modelValidationResul = modelValidationResult.errors) !== null && _modelValidationResul !== void 0 && _modelValidationResul.length)) {
|
|
186
|
+
return {
|
|
187
|
+
model: data,
|
|
188
|
+
related: getRelatedModels({
|
|
189
|
+
fields: data.fields,
|
|
190
|
+
models
|
|
191
|
+
}),
|
|
192
|
+
action: modelValidationResult.action
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
return {
|
|
196
|
+
model: data,
|
|
197
|
+
action: modelValidationResult.action,
|
|
198
|
+
error: modelValidationResult.errors[0]
|
|
199
|
+
};
|
|
200
|
+
}));
|
|
201
|
+
};
|
|
202
|
+
exports.validateModels = validateModels;
|
|
203
|
+
|
|
204
|
+
//# sourceMappingURL=validateModels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_validation","require","_types","_utils","addCodeMessage","params","action","CmsImportAction","CODE","_objectSpread2","default","errors","message","code","validateModel","model","models","existingModelId","find","m","modelId","toLowerCase","existingSingularApiName","singularApiName","pluralApiName","toString","existingPluralApiName","UPDATE_KEYWORD","isPlugin","UPDATE","CREATE","NONE","data","getRelatedModels","fields","result","field","type","_field$settings","settings","push","_field$settings2","_field$settings3","templates","tpl","Array","from","Set","validateModels","groups","input","validation","createModelImportValidation","Promise","all","map","_model$fields","_modelValidationResul","safeParseAsync","success","error","createZodError","group","g","id","length","modelValidationResult","related","exports"],"sources":["validateModels.ts"],"sourcesContent":["import { createModelImportValidation } from \"~/crud/contentModel/validation\";\nimport {\n CmsImportAction,\n CmsImportError,\n HeadlessCmsImportStructureParamsDataModel,\n ValidatedCmsModel,\n ValidatedCmsModelResult\n} from \"~/export/types\";\nimport { CmsDynamicZoneTemplate, CmsGroup, CmsModel, CmsModelField } from \"~/types\";\nimport { createZodError } from \"@webiny/utils\";\n\ninterface CreateModelValidationParams {\n model: ValidatedCmsModel;\n models: CmsModel[];\n}\n\ninterface AddCodeMessageParams {\n action: CmsImportAction;\n}\n\nconst addCodeMessage = (params: AddCodeMessageParams) => {\n if (params.action !== CmsImportAction.CODE) {\n return params;\n }\n return {\n ...params,\n errors: [\n {\n message: `The model is defined via plugin and it cannot be updated.`,\n code: \"MODEL_IS_A_PLUGIN\"\n }\n ]\n };\n};\n\ninterface ValidationResult {\n errors?: CmsImportError[];\n action: CmsImportAction;\n}\n\nconst validateModel = (params: CreateModelValidationParams): ValidationResult => {\n const { model, models } = params;\n /**\n * Let's check if model values that must be unique, already exist.\n */\n const existingModelId = models.find(\n m => m.modelId.toLowerCase() === model.modelId.toLowerCase()\n );\n const existingSingularApiName = models.find(\n m =>\n m.singularApiName.toLowerCase() === model.singularApiName.toLowerCase() ||\n m.singularApiName.toLowerCase() === model.pluralApiName.toString()\n );\n const existingPluralApiName = models.find(\n m =>\n m.pluralApiName.toLowerCase() === model.pluralApiName.toLowerCase() ||\n m.pluralApiName.toLowerCase() === model.singularApiName.toString()\n );\n\n const UPDATE_KEYWORD = existingModelId?.isPlugin\n ? CmsImportAction.CODE\n : CmsImportAction.UPDATE;\n /**\n * There are few cases that we must address:\n *\n * 1. modelId, singular and plural names do not exist in any of the models\n * - this is OK, we can create the model\n */\n if (!existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return {\n action: CmsImportAction.CREATE\n };\n }\n /**\n * 2. modelId, singular and plural names are a part of a single model\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName &&\n existingPluralApiName &&\n existingModelId.modelId === existingSingularApiName.modelId &&\n existingModelId.modelId === existingPluralApiName.modelId\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 3. modelId already exists, but singular and plural names do not\n * - this is OK, we can update the model\n */\n if (existingModelId && !existingSingularApiName && !existingPluralApiName) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 4. modelId already exists, but only the singular name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingSingularApiName?.modelId === existingModelId.modelId &&\n !existingPluralApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 5. modelId already exists, but only the plural name exists.\n * - this is OK, we can update the model\n */\n if (\n existingModelId &&\n existingPluralApiName?.modelId === existingModelId.modelId &&\n !existingSingularApiName\n ) {\n return addCodeMessage({\n action: UPDATE_KEYWORD\n });\n }\n /**\n * 6. modelId already exists, but singular and plural names are in different models.\n */\n if (\n existingModelId &&\n (existingSingularApiName?.modelId !== existingModelId.modelId ||\n existingPluralApiName?.modelId !== existingModelId.modelId)\n ) {\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model has singular or plural API names same as some other model.`,\n code: \"MODEL_API_NAMES_ERROR\"\n }\n ]\n };\n }\n\n return {\n action: CmsImportAction.NONE,\n errors: [\n {\n message: `The model cannot be imported.`,\n code: \"MODEL_IMPORT_ERROR\",\n data: {\n modelId: existingModelId?.modelId,\n singularApiName: existingSingularApiName?.modelId,\n pluralApiName: existingPluralApiName?.modelId\n }\n }\n ]\n };\n};\n\ninterface Params {\n groups: Pick<CmsGroup, \"id\">[];\n models: CmsModel[];\n input: HeadlessCmsImportStructureParamsDataModel[];\n}\n\ninterface GetRelatedModelsParams {\n fields: CmsModelField[];\n models: CmsModel[];\n}\n\nconst getRelatedModels = (params: GetRelatedModelsParams): string[] => {\n const { fields, models } = params;\n\n const result: string[] = [];\n for (const field of fields) {\n if (field.type === \"ref\") {\n for (const model of field.settings?.models || []) {\n result.push(model.modelId);\n }\n } else if (field.type === \"object\") {\n result.push(...getRelatedModels({ fields: field.settings?.fields || [], models }));\n } else if (field.type === \"dynamicZone\") {\n const templates = (field.settings?.templates || []) as CmsDynamicZoneTemplate[];\n for (const tpl of templates) {\n result.push(\n ...getRelatedModels({\n fields: tpl.fields || [],\n models\n })\n );\n }\n }\n }\n\n return Array.from(new Set(result));\n};\n\nexport const validateModels = async (params: Params): Promise<ValidatedCmsModelResult[]> => {\n const { groups, models, input } = params;\n\n const validation = createModelImportValidation();\n\n return await Promise.all(\n input.map(async (model): Promise<ValidatedCmsModelResult> => {\n const result = await validation.safeParseAsync(model);\n if (!result.success) {\n const error = createZodError(result.error);\n return {\n model: model as ValidatedCmsModel,\n action: CmsImportAction.NONE,\n error: {\n message: error.message,\n code: error.code,\n data: error.data\n }\n };\n }\n const data = result.data as unknown as ValidatedCmsModel;\n const group = groups.find(g => g.id === data.group);\n if (!group) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `The model group \"${data.group}\" does not exist.`,\n code: \"MODEL_GROUP_NOT_FOUND\"\n }\n };\n } else if (!model.fields?.length) {\n return {\n model: data,\n action: CmsImportAction.NONE,\n error: {\n message: `Model is missing fields.`,\n code: \"MODEL_FIELDS_MISSING\"\n }\n };\n }\n\n const modelValidationResult = validateModel({\n model: data,\n models\n });\n\n if (!modelValidationResult.errors?.length) {\n return {\n model: data,\n related: getRelatedModels({\n fields: data.fields,\n models\n }),\n action: modelValidationResult.action\n };\n }\n return {\n model: data,\n action: modelValidationResult.action,\n error: modelValidationResult.errors[0]\n };\n })\n );\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createExportCrud = void 0;
|
|
7
|
+
var _exporting = require("./exporting");
|
|
8
|
+
const createExportCrud = context => {
|
|
9
|
+
return {
|
|
10
|
+
structure: (0, _exporting.createExportStructureContext)(context)
|
|
11
|
+
};
|
|
12
|
+
};
|
|
13
|
+
exports.createExportCrud = createExportCrud;
|
|
14
|
+
|
|
15
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_exporting","require","createExportCrud","context","structure","createExportStructureContext","exports"],"sources":["index.ts"],"sourcesContent":["import { CmsContext } from \"~/types\";\nimport { createExportStructureContext } from \"./exporting\";\n\nexport const createExportCrud = (context: CmsContext) => {\n return {\n structure: createExportStructureContext(context)\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAEO,MAAMC,gBAAgB,GAAIC,OAAmB,IAAK;EACrD,OAAO;IACHC,SAAS,EAAE,IAAAC,uCAA4B,EAACF,OAAO;EACnD,CAAC;AACL,CAAC;AAACG,OAAA,CAAAJ,gBAAA,GAAAA,gBAAA"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CmsGroup, CmsModel } from "../../types";
|
|
2
|
+
import { SanitizedCmsGroup, SanitizedCmsModel } from "../types";
|
|
3
|
+
export declare const sanitizeGroup: (group: CmsGroup) => SanitizedCmsGroup;
|
|
4
|
+
export declare const sanitizeModel: (group: Pick<CmsGroup, "id" | "name">, model: CmsModel) => SanitizedCmsModel;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.sanitizeModel = exports.sanitizeGroup = void 0;
|
|
7
|
+
const sanitizeGroup = group => {
|
|
8
|
+
return {
|
|
9
|
+
id: group.id,
|
|
10
|
+
name: group.name,
|
|
11
|
+
slug: group.slug,
|
|
12
|
+
description: group.description,
|
|
13
|
+
icon: group.icon
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
exports.sanitizeGroup = sanitizeGroup;
|
|
17
|
+
const sanitizeModel = (group, model) => {
|
|
18
|
+
return {
|
|
19
|
+
modelId: model.modelId,
|
|
20
|
+
name: model.name,
|
|
21
|
+
group: group.id,
|
|
22
|
+
icon: model.icon,
|
|
23
|
+
description: model.description,
|
|
24
|
+
singularApiName: model.singularApiName,
|
|
25
|
+
pluralApiName: model.pluralApiName,
|
|
26
|
+
fields: model.fields,
|
|
27
|
+
layout: model.layout,
|
|
28
|
+
titleFieldId: model.titleFieldId,
|
|
29
|
+
descriptionFieldId: model.descriptionFieldId,
|
|
30
|
+
imageFieldId: model.imageFieldId
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
exports.sanitizeModel = sanitizeModel;
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=sanitize.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["sanitizeGroup","group","id","name","slug","description","icon","exports","sanitizeModel","model","modelId","singularApiName","pluralApiName","fields","layout","titleFieldId","descriptionFieldId","imageFieldId"],"sources":["sanitize.ts"],"sourcesContent":["import { CmsGroup, CmsModel } from \"~/types\";\nimport { SanitizedCmsGroup, SanitizedCmsModel } from \"~/export/types\";\n\nexport const sanitizeGroup = (group: CmsGroup): SanitizedCmsGroup => {\n return {\n id: group.id,\n name: group.name,\n slug: group.slug,\n description: group.description,\n icon: group.icon\n };\n};\n\nexport const sanitizeModel = (\n group: Pick<CmsGroup, \"id\" | \"name\">,\n model: CmsModel\n): SanitizedCmsModel => {\n return {\n modelId: model.modelId,\n name: model.name,\n group: group.id,\n icon: model.icon,\n description: model.description,\n singularApiName: model.singularApiName,\n pluralApiName: model.pluralApiName,\n fields: model.fields,\n layout: model.layout,\n titleFieldId: model.titleFieldId,\n descriptionFieldId: model.descriptionFieldId,\n imageFieldId: model.imageFieldId\n };\n};\n"],"mappings":";;;;;;AAGO,MAAMA,aAAa,GAAIC,KAAe,IAAwB;EACjE,OAAO;IACHC,EAAE,EAAED,KAAK,CAACC,EAAE;IACZC,IAAI,EAAEF,KAAK,CAACE,IAAI;IAChBC,IAAI,EAAEH,KAAK,CAACG,IAAI;IAChBC,WAAW,EAAEJ,KAAK,CAACI,WAAW;IAC9BC,IAAI,EAAEL,KAAK,CAACK;EAChB,CAAC;AACL,CAAC;AAACC,OAAA,CAAAP,aAAA,GAAAA,aAAA;AAEK,MAAMQ,aAAa,GAAGA,CACzBP,KAAoC,EACpCQ,KAAe,KACK;EACpB,OAAO;IACHC,OAAO,EAAED,KAAK,CAACC,OAAO;IACtBP,IAAI,EAAEM,KAAK,CAACN,IAAI;IAChBF,KAAK,EAAEA,KAAK,CAACC,EAAE;IACfI,IAAI,EAAEG,KAAK,CAACH,IAAI;IAChBD,WAAW,EAAEI,KAAK,CAACJ,WAAW;IAC9BM,eAAe,EAAEF,KAAK,CAACE,eAAe;IACtCC,aAAa,EAAEH,KAAK,CAACG,aAAa;IAClCC,MAAM,EAAEJ,KAAK,CAACI,MAAM;IACpBC,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBC,YAAY,EAAEN,KAAK,CAACM,YAAY;IAChCC,kBAAkB,EAAEP,KAAK,CAACO,kBAAkB;IAC5CC,YAAY,EAAER,KAAK,CAACQ;EACxB,CAAC;AACL,CAAC;AAACV,OAAA,CAAAC,aAAA,GAAAA,aAAA"}
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createExportGraphQL = void 0;
|
|
7
|
+
var _plugins = require("../../plugins");
|
|
8
|
+
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
9
|
+
var _handler = require("@webiny/handler");
|
|
10
|
+
const plugin = new _plugins.CmsGraphQLSchemaPlugin({
|
|
11
|
+
typeDefs: /* GraphQL */`
|
|
12
|
+
type CmsExportStructureResponse {
|
|
13
|
+
data: String
|
|
14
|
+
error: CmsError
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
input CmsImportStructureGroupInput {
|
|
18
|
+
id: ID!
|
|
19
|
+
name: String!
|
|
20
|
+
slug: String
|
|
21
|
+
description: String
|
|
22
|
+
icon: String!
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
input CmsImportStructureModelInput {
|
|
26
|
+
name: String!
|
|
27
|
+
singularApiName: String!
|
|
28
|
+
pluralApiName: String!
|
|
29
|
+
modelId: String!
|
|
30
|
+
group: String!
|
|
31
|
+
icon: String
|
|
32
|
+
description: String
|
|
33
|
+
layout: [[ID!]!]!
|
|
34
|
+
fields: [CmsContentModelFieldInput!]!
|
|
35
|
+
titleFieldId: String!
|
|
36
|
+
descriptionFieldId: String
|
|
37
|
+
imageFieldId: String
|
|
38
|
+
tags: [String!]
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
enum CmsImportGroupStructureAction {
|
|
42
|
+
create
|
|
43
|
+
update
|
|
44
|
+
code
|
|
45
|
+
none
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
enum CmsImportModelStructureAction {
|
|
49
|
+
create
|
|
50
|
+
update
|
|
51
|
+
code
|
|
52
|
+
none
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
input CmsImportStructureInput {
|
|
56
|
+
groups: [CmsImportStructureGroupInput!]!
|
|
57
|
+
models: [CmsImportStructureModelInput!]!
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
type CmsImportValidateResponseDataGroupResultItem {
|
|
61
|
+
id: String
|
|
62
|
+
name: String
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
type CmsImportValidateResponseDataGroupResult {
|
|
66
|
+
group: CmsImportValidateResponseDataGroupResultItem!
|
|
67
|
+
error: CmsError
|
|
68
|
+
action: CmsImportGroupStructureAction
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
type CmsImportValidateResponseDataModelResultItem {
|
|
72
|
+
modelId: String
|
|
73
|
+
name: String
|
|
74
|
+
group: String
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
type CmsImportValidateResponseDataModelResult {
|
|
78
|
+
model: CmsImportValidateResponseDataModelResultItem!
|
|
79
|
+
related: [String!]
|
|
80
|
+
error: CmsError
|
|
81
|
+
action: CmsImportModelStructureAction
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
type CmsImportValidateResponseData {
|
|
85
|
+
groups: [CmsImportValidateResponseDataGroupResult!]!
|
|
86
|
+
models: [CmsImportValidateResponseDataModelResult!]!
|
|
87
|
+
message: String!
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
type CmsImportValidateResponse {
|
|
91
|
+
data: CmsImportValidateResponseData
|
|
92
|
+
error: CmsError
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
type CmsImportStructureResponseDataGroupResultItem {
|
|
96
|
+
id: String!
|
|
97
|
+
name: String!
|
|
98
|
+
}
|
|
99
|
+
type CmsImportStructureResponseDataGroupResult {
|
|
100
|
+
group: CmsImportStructureResponseDataGroupResultItem!
|
|
101
|
+
error: CmsError
|
|
102
|
+
action: CmsImportGroupStructureAction
|
|
103
|
+
imported: Boolean
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
type CmsImportStructureResponseDataResultItem {
|
|
107
|
+
modelId: String!
|
|
108
|
+
name: String!
|
|
109
|
+
group: String!
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
type CmsImportStructureResponseDataModelResult {
|
|
113
|
+
model: CmsImportStructureResponseDataResultItem!
|
|
114
|
+
related: [String!]
|
|
115
|
+
error: CmsError
|
|
116
|
+
action: CmsImportModelStructureAction
|
|
117
|
+
imported: Boolean
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
type CmsImportStructureResponseData {
|
|
121
|
+
groups: [CmsImportStructureResponseDataGroupResult!]!
|
|
122
|
+
models: [CmsImportStructureResponseDataModelResult!]!
|
|
123
|
+
message: String
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
type CmsImportStructureResponse {
|
|
127
|
+
data: CmsImportStructureResponseData
|
|
128
|
+
error: CmsError
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
extend type Query {
|
|
132
|
+
exportStructure(models: [String!]): CmsExportStructureResponse!
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
extend type Mutation {
|
|
136
|
+
validateImportStructure(data: CmsImportStructureInput!): CmsImportValidateResponse!
|
|
137
|
+
importStructure(data: CmsImportStructureInput!): CmsImportStructureResponse!
|
|
138
|
+
}
|
|
139
|
+
`,
|
|
140
|
+
resolvers: {
|
|
141
|
+
Query: {
|
|
142
|
+
exportStructure: async (_, args, context) => {
|
|
143
|
+
try {
|
|
144
|
+
const result = await context.cms.export.structure({
|
|
145
|
+
models: args.models
|
|
146
|
+
});
|
|
147
|
+
return new _handlerGraphql.Response(JSON.stringify(result));
|
|
148
|
+
} catch (ex) {
|
|
149
|
+
return new _handlerGraphql.ErrorResponse(ex);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
Mutation: {
|
|
154
|
+
validateImportStructure: async (_, args, context) => {
|
|
155
|
+
try {
|
|
156
|
+
const result = await context.cms.importing.validate({
|
|
157
|
+
data: args.data
|
|
158
|
+
});
|
|
159
|
+
return new _handlerGraphql.Response(result);
|
|
160
|
+
} catch (ex) {
|
|
161
|
+
return new _handlerGraphql.ErrorResponse(ex);
|
|
162
|
+
}
|
|
163
|
+
},
|
|
164
|
+
importStructure: async (_, args, context) => {
|
|
165
|
+
try {
|
|
166
|
+
const result = await context.cms.importing.structure({
|
|
167
|
+
data: args.data
|
|
168
|
+
});
|
|
169
|
+
return new _handlerGraphql.Response(result);
|
|
170
|
+
} catch (ex) {
|
|
171
|
+
return new _handlerGraphql.ErrorResponse(ex);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
plugin.name = "headless-cms.graphql.export";
|
|
178
|
+
const createExportGraphQL = () => {
|
|
179
|
+
return new _handler.ContextPlugin(async context => {
|
|
180
|
+
if (!context.cms.MANAGE) {
|
|
181
|
+
return;
|
|
182
|
+
}
|
|
183
|
+
context.plugins.register(plugin);
|
|
184
|
+
});
|
|
185
|
+
};
|
|
186
|
+
exports.createExportGraphQL = createExportGraphQL;
|
|
187
|
+
|
|
188
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_handler","plugin","CmsGraphQLSchemaPlugin","typeDefs","resolvers","Query","exportStructure","_","args","context","result","cms","export","structure","models","Response","JSON","stringify","ex","ErrorResponse","Mutation","validateImportStructure","importing","validate","data","importStructure","name","createExportGraphQL","ContextPlugin","MANAGE","plugins","register","exports"],"sources":["index.ts"],"sourcesContent":["import { CmsGraphQLSchemaPlugin } from \"~/plugins\";\nimport { ErrorResponse, Response } from \"@webiny/handler-graphql\";\nimport { ContextPlugin } from \"@webiny/handler\";\nimport { CmsContext } from \"~/types\";\n\nconst plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type CmsExportStructureResponse {\n data: String\n error: CmsError\n }\n\n input CmsImportStructureGroupInput {\n id: ID!\n name: String!\n slug: String\n description: String\n icon: String!\n }\n\n input CmsImportStructureModelInput {\n name: String!\n singularApiName: String!\n pluralApiName: String!\n modelId: String!\n group: String!\n icon: String\n description: String\n layout: [[ID!]!]!\n fields: [CmsContentModelFieldInput!]!\n titleFieldId: String!\n descriptionFieldId: String\n imageFieldId: String\n tags: [String!]\n }\n\n enum CmsImportGroupStructureAction {\n create\n update\n code\n none\n }\n\n enum CmsImportModelStructureAction {\n create\n update\n code\n none\n }\n\n input CmsImportStructureInput {\n groups: [CmsImportStructureGroupInput!]!\n models: [CmsImportStructureModelInput!]!\n }\n\n type CmsImportValidateResponseDataGroupResultItem {\n id: String\n name: String\n }\n\n type CmsImportValidateResponseDataGroupResult {\n group: CmsImportValidateResponseDataGroupResultItem!\n error: CmsError\n action: CmsImportGroupStructureAction\n }\n\n type CmsImportValidateResponseDataModelResultItem {\n modelId: String\n name: String\n group: String\n }\n\n type CmsImportValidateResponseDataModelResult {\n model: CmsImportValidateResponseDataModelResultItem!\n related: [String!]\n error: CmsError\n action: CmsImportModelStructureAction\n }\n\n type CmsImportValidateResponseData {\n groups: [CmsImportValidateResponseDataGroupResult!]!\n models: [CmsImportValidateResponseDataModelResult!]!\n message: String!\n }\n\n type CmsImportValidateResponse {\n data: CmsImportValidateResponseData\n error: CmsError\n }\n\n type CmsImportStructureResponseDataGroupResultItem {\n id: String!\n name: String!\n }\n type CmsImportStructureResponseDataGroupResult {\n group: CmsImportStructureResponseDataGroupResultItem!\n error: CmsError\n action: CmsImportGroupStructureAction\n imported: Boolean\n }\n\n type CmsImportStructureResponseDataResultItem {\n modelId: String!\n name: String!\n group: String!\n }\n\n type CmsImportStructureResponseDataModelResult {\n model: CmsImportStructureResponseDataResultItem!\n related: [String!]\n error: CmsError\n action: CmsImportModelStructureAction\n imported: Boolean\n }\n\n type CmsImportStructureResponseData {\n groups: [CmsImportStructureResponseDataGroupResult!]!\n models: [CmsImportStructureResponseDataModelResult!]!\n message: String\n }\n\n type CmsImportStructureResponse {\n data: CmsImportStructureResponseData\n error: CmsError\n }\n\n extend type Query {\n exportStructure(models: [String!]): CmsExportStructureResponse!\n }\n\n extend type Mutation {\n validateImportStructure(data: CmsImportStructureInput!): CmsImportValidateResponse!\n importStructure(data: CmsImportStructureInput!): CmsImportStructureResponse!\n }\n `,\n resolvers: {\n Query: {\n exportStructure: async (_, args, context) => {\n try {\n const result = await context.cms.export.structure({\n models: args.models\n });\n return new Response(JSON.stringify(result));\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n }\n },\n Mutation: {\n validateImportStructure: async (_, args, context) => {\n try {\n const result = await context.cms.importing.validate({\n data: args.data\n });\n return new Response(result);\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n },\n importStructure: async (_, args, context) => {\n try {\n const result = await context.cms.importing.structure({\n data: args.data\n });\n return new Response(result);\n } catch (ex) {\n return new ErrorResponse(ex);\n }\n }\n }\n }\n});\nplugin.name = \"headless-cms.graphql.export\";\n\nexport const createExportGraphQL = () => {\n return new ContextPlugin<CmsContext>(async context => {\n if (!context.cms.MANAGE) {\n return;\n }\n context.plugins.register(plugin);\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAGA,MAAMG,MAAM,GAAG,IAAIC,+BAAsB,CAAC;EACtCC,QAAQ,EAAE,aAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EACDC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,eAAe,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACzC,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,MAAM,CAACC,SAAS,CAAC;YAC9CC,MAAM,EAAEN,IAAI,CAACM;UACjB,CAAC,CAAC;UACF,OAAO,IAAIC,wBAAQ,CAACC,IAAI,CAACC,SAAS,CAACP,MAAM,CAAC,CAAC;QAC/C,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ;IACJ,CAAC;IACDE,QAAQ,EAAE;MACNC,uBAAuB,EAAE,MAAAA,CAAOd,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACjD,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACW,SAAS,CAACC,QAAQ,CAAC;YAChDC,IAAI,EAAEhB,IAAI,CAACgB;UACf,CAAC,CAAC;UACF,OAAO,IAAIT,wBAAQ,CAACL,MAAM,CAAC;QAC/B,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ,CAAC;MACDO,eAAe,EAAE,MAAAA,CAAOlB,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;QACzC,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACW,SAAS,CAACT,SAAS,CAAC;YACjDW,IAAI,EAAEhB,IAAI,CAACgB;UACf,CAAC,CAAC;UACF,OAAO,IAAIT,wBAAQ,CAACL,MAAM,CAAC;QAC/B,CAAC,CAAC,OAAOQ,EAAE,EAAE;UACT,OAAO,IAAIC,6BAAa,CAACD,EAAE,CAAC;QAChC;MACJ;IACJ;EACJ;AACJ,CAAC,CAAC;AACFjB,MAAM,CAACyB,IAAI,GAAG,6BAA6B;AAEpC,MAAMC,mBAAmB,GAAGA,CAAA,KAAM;EACrC,OAAO,IAAIC,sBAAa,CAAa,MAAMnB,OAAO,IAAI;IAClD,IAAI,CAACA,OAAO,CAACE,GAAG,CAACkB,MAAM,EAAE;MACrB;IACJ;IACApB,OAAO,CAACqB,OAAO,CAACC,QAAQ,CAAC9B,MAAM,CAAC;EACpC,CAAC,CAAC;AACN,CAAC;AAAC+B,OAAA,CAAAL,mBAAA,GAAAA,mBAAA"}
|
package/export/index.js
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _crud = require("./crud");
|
|
7
|
+
Object.keys(_crud).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _crud[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _crud[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _graphql = require("./graphql");
|
|
18
|
+
Object.keys(_graphql).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _graphql[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _graphql[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_crud","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_graphql"],"sources":["index.ts"],"sourcesContent":["export * from \"./crud\";\nexport * from \"./graphql\";\n"],"mappings":";;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,KAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,KAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,KAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,QAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,QAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,QAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,QAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
|