@webiny/api-headless-cms 0.0.0-unstable.97a151f74d → 0.0.0-unstable.9e825fd5fb
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 +60 -23
- 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 +15 -28
- package/crud/contentEntry/markLockedFields.js.map +1 -1
- package/crud/contentEntry/referenceFieldsMapping.js +5 -61
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry/searchableFields.js +1 -12
- package/crud/contentEntry/searchableFields.js.map +1 -1
- package/crud/contentEntry.crud.d.ts +4 -1
- package/crud/contentEntry.crud.js +964 -916
- 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 +43 -109
- 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 +33 -10
- 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 +0 -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/validate/endingAllowed.d.ts +6 -0
- package/crud/contentModel/validate/endingAllowed.js +26 -0
- package/crud/contentModel/validate/endingAllowed.js.map +1 -0
- package/crud/contentModel/validate/isModelEndingAllowed.d.ts +6 -0
- package/crud/contentModel/validate/isModelEndingAllowed.js +24 -0
- package/crud/contentModel/validate/isModelEndingAllowed.js.map +1 -0
- package/crud/contentModel/validate/modelId.d.ts +11 -0
- package/crud/contentModel/validate/modelId.js +36 -0
- package/crud/contentModel/validate/modelId.js.map +1 -0
- package/crud/contentModel/validate/pluralApiName.d.ts +7 -0
- package/crud/contentModel/validate/pluralApiName.js +24 -0
- package/crud/contentModel/validate/pluralApiName.js.map +1 -0
- package/crud/contentModel/validate/singularApiName.d.ts +7 -0
- package/crud/contentModel/validate/singularApiName.js +24 -0
- package/crud/contentModel/validate/singularApiName.js.map +1 -0
- 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 +119 -144
- 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 +364 -375
- 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 +194 -208
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/crud/settings.crud.d.ts +1 -1
- package/crud/settings.crud.js +5 -22
- 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 +6 -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 +134 -110
- 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 +16 -29
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.d.ts +6 -2
- package/graphql/schema/contentModels.js +46 -27
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createFieldResolvers.js +13 -24
- 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 +61 -65
- 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 +30 -34
- 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.js +37 -30
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js +2 -18
- package/graphqlFields/dynamicZone/dynamicZoneStorage.js.map +1 -1
- package/graphqlFields/dynamicZone/index.js +0 -2
- package/graphqlFields/dynamicZone/index.js.map +1 -1
- 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.js +0 -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 +0 -12
- package/graphqlFields/number.js.map +1 -1
- package/graphqlFields/object.js +46 -50
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/ref.js +64 -66
- 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 +5 -3
- package/index.js +23 -29
- 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 +26 -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 +19 -3
- package/plugins/CmsModelPlugin.js +30 -40
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/plugins/CmsParametersPlugin.js +0 -7
- package/plugins/CmsParametersPlugin.js.map +1 -1
- 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 +0 -19
- package/storage/object.js.map +1 -1
- package/types.d.ts +234 -43
- package/types.js +53 -64
- 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 +9 -33
- package/utils/converters/ConverterCollection.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.d.ts +2 -2
- package/utils/converters/valueKeyStorageConverter.js +8 -27
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/createTypeFromFields.d.ts +1 -0
- package/utils/createTypeFromFields.js +11 -19
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/createTypeName.js +0 -9
- package/utils/createTypeName.js.map +1 -1
- package/utils/entryStorage.js +17 -34
- package/utils/entryStorage.js.map +1 -1
- package/utils/filterAsync.js +0 -5
- package/utils/filterAsync.js.map +1 -1
- package/utils/getBaseFieldType.js +0 -2
- package/utils/getBaseFieldType.js.map +1 -1
- 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/incrementEntryIdVersion.d.ts +5 -0
- package/utils/incrementEntryIdVersion.js +29 -0
- package/utils/incrementEntryIdVersion.js.map +1 -0
- 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/renderFields.d.ts +2 -1
- package/utils/renderFields.js +8 -10
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.js +0 -13
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +2 -1
- package/utils/renderInputFields.js +4 -9
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.js +1 -10
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +7 -4
- package/utils/renderSortEnum.js +19 -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.js +0 -4
- package/validators/dynamicZone.js.map +1 -1
- 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 +0 -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/storage/object.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["processValue","params","fields","sourceValue","getStoragePlugin","plugins","model","operation","pReduce","values","field","baseType","getBaseFieldType","plugin","Error","value","fieldId","createObjectStorageTransform","StorageTransformPlugin","name","fieldType","toStorage","settings","multipleValues","pMap","fromStorage"],"sources":["object.ts"],"sourcesContent":["import pReduce from \"p-reduce\";\nimport pMap from \"p-map\";\nimport { CmsModel, CmsModelField } from \"~/types\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { StorageTransformPlugin } from \"~/plugins/StorageTransformPlugin\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface ProcessValueParams {\n fields: CmsModelField[];\n sourceValue: Record<string, any>;\n getStoragePlugin: (fieldType: string) => StorageTransformPlugin;\n plugins: PluginsContainer;\n model: CmsModel;\n operation: \"toStorage\" | \"fromStorage\";\n}\ninterface ProcessValue {\n (params: ProcessValueParams): Promise<Record<string, any>>;\n}\n\nconst processValue: ProcessValue = async params => {\n const { fields, sourceValue, getStoragePlugin, plugins, model, operation } = params;\n return await pReduce(\n fields,\n async (values, field) => {\n const baseType = getBaseFieldType(field);\n const plugin = getStoragePlugin(baseType);\n if (!plugin) {\n throw new Error(`Missing storage plugin for field type \"${baseType}\".`);\n }\n const value = await plugin[operation]({\n plugins,\n model,\n field,\n value: sourceValue[field.fieldId],\n getStoragePlugin\n });\n return { ...values, [field.fieldId]: value };\n },\n {}\n );\n};\n\nexport const createObjectStorageTransform = (): StorageTransformPlugin => {\n return new StorageTransformPlugin({\n name: \"headless-cms.storage-transform.object.default\",\n fieldType: \"object\",\n toStorage: async ({ field, value, getStoragePlugin, model, plugins }) => {\n if (!value) {\n return null;\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n if (field.multipleValues) {\n return await pMap(value as Record<string, any>[], value =>\n processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"toStorage\",\n fields\n })\n );\n }\n\n return await processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"toStorage\",\n fields\n });\n },\n fromStorage: async ({ field, value, getStoragePlugin, plugins, model }) => {\n if (!value) {\n return null;\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n if (field.multipleValues) {\n return pMap(value as Record<string, any>[], value =>\n processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"fromStorage\",\n fields\n })\n );\n }\n\n return processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"fromStorage\",\n fields\n });\n }\n });\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"names":["processValue","params","fields","sourceValue","getStoragePlugin","plugins","model","operation","pReduce","values","field","baseType","getBaseFieldType","plugin","Error","value","fieldId","createObjectStorageTransform","StorageTransformPlugin","name","fieldType","toStorage","settings","multipleValues","pMap","fromStorage"],"sources":["object.ts"],"sourcesContent":["import pReduce from \"p-reduce\";\nimport pMap from \"p-map\";\nimport { CmsModel, CmsModelField } from \"~/types\";\nimport { PluginsContainer } from \"@webiny/plugins\";\nimport { StorageTransformPlugin } from \"~/plugins/StorageTransformPlugin\";\nimport { getBaseFieldType } from \"~/utils/getBaseFieldType\";\n\ninterface ProcessValueParams {\n fields: CmsModelField[];\n sourceValue: Record<string, any>;\n getStoragePlugin: (fieldType: string) => StorageTransformPlugin;\n plugins: PluginsContainer;\n model: CmsModel;\n operation: \"toStorage\" | \"fromStorage\";\n}\ninterface ProcessValue {\n (params: ProcessValueParams): Promise<Record<string, any>>;\n}\n\nconst processValue: ProcessValue = async params => {\n const { fields, sourceValue, getStoragePlugin, plugins, model, operation } = params;\n return await pReduce(\n fields,\n async (values, field) => {\n const baseType = getBaseFieldType(field);\n const plugin = getStoragePlugin(baseType);\n if (!plugin) {\n throw new Error(`Missing storage plugin for field type \"${baseType}\".`);\n }\n const value = await plugin[operation]({\n plugins,\n model,\n field,\n value: sourceValue[field.fieldId],\n getStoragePlugin\n });\n return { ...values, [field.fieldId]: value };\n },\n {}\n );\n};\n\nexport const createObjectStorageTransform = (): StorageTransformPlugin => {\n return new StorageTransformPlugin({\n name: \"headless-cms.storage-transform.object.default\",\n fieldType: \"object\",\n toStorage: async ({ field, value, getStoragePlugin, model, plugins }) => {\n if (!value) {\n return null;\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n if (field.multipleValues) {\n return await pMap(value as Record<string, any>[], value =>\n processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"toStorage\",\n fields\n })\n );\n }\n\n return await processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"toStorage\",\n fields\n });\n },\n fromStorage: async ({ field, value, getStoragePlugin, plugins, model }) => {\n if (!value) {\n return null;\n }\n\n const fields = (field.settings?.fields || []) as CmsModelField[];\n\n if (field.multipleValues) {\n return pMap(value as Record<string, any>[], value =>\n processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"fromStorage\",\n fields\n })\n );\n }\n\n return processValue({\n sourceValue: value,\n getStoragePlugin,\n model,\n plugins,\n operation: \"fromStorage\",\n fields\n });\n }\n });\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AAGA;AACA;AAcA,MAAMA,YAA0B,GAAG,MAAMC,MAAM,IAAI;EAC/C,MAAM;IAAEC,MAAM;IAAEC,WAAW;IAAEC,gBAAgB;IAAEC,OAAO;IAAEC,KAAK;IAAEC;EAAU,CAAC,GAAGN,MAAM;EACnF,OAAO,MAAM,IAAAO,gBAAO,EAChBN,MAAM,EACN,OAAOO,MAAM,EAAEC,KAAK,KAAK;IACrB,MAAMC,QAAQ,GAAG,IAAAC,kCAAgB,EAACF,KAAK,CAAC;IACxC,MAAMG,MAAM,GAAGT,gBAAgB,CAACO,QAAQ,CAAC;IACzC,IAAI,CAACE,MAAM,EAAE;MACT,MAAM,IAAIC,KAAK,CAAE,0CAAyCH,QAAS,IAAG,CAAC;IAC3E;IACA,MAAMI,KAAK,GAAG,MAAMF,MAAM,CAACN,SAAS,CAAC,CAAC;MAClCF,OAAO;MACPC,KAAK;MACLI,KAAK;MACLK,KAAK,EAAEZ,WAAW,CAACO,KAAK,CAACM,OAAO,CAAC;MACjCZ;IACJ,CAAC,CAAC;IACF,mEAAYK,MAAM;MAAE,CAACC,KAAK,CAACM,OAAO,GAAGD;IAAK;EAC9C,CAAC,EACD,CAAC,CAAC,CACL;AACL,CAAC;AAEM,MAAME,4BAA4B,GAAG,MAA8B;EACtE,OAAO,IAAIC,8CAAsB,CAAC;IAC9BC,IAAI,EAAE,+CAA+C;IACrDC,SAAS,EAAE,QAAQ;IACnBC,SAAS,EAAE,OAAO;MAAEX,KAAK;MAAEK,KAAK;MAAEX,gBAAgB;MAAEE,KAAK;MAAED;IAAQ,CAAC,KAAK;MAAA;MACrE,IAAI,CAACU,KAAK,EAAE;QACR,OAAO,IAAI;MACf;MAEA,MAAMb,MAAM,GAAI,oBAAAQ,KAAK,CAACY,QAAQ,oDAAd,gBAAgBpB,MAAM,KAAI,EAAsB;MAEhE,IAAIQ,KAAK,CAACa,cAAc,EAAE;QACtB,OAAO,MAAM,IAAAC,aAAI,EAACT,KAAK,EAA2BA,KAAK,IACnDf,YAAY,CAAC;UACTG,WAAW,EAAEY,KAAK;UAClBX,gBAAgB;UAChBE,KAAK;UACLD,OAAO;UACPE,SAAS,EAAE,WAAW;UACtBL;QACJ,CAAC,CAAC,CACL;MACL;MAEA,OAAO,MAAMF,YAAY,CAAC;QACtBG,WAAW,EAAEY,KAAK;QAClBX,gBAAgB;QAChBE,KAAK;QACLD,OAAO;QACPE,SAAS,EAAE,WAAW;QACtBL;MACJ,CAAC,CAAC;IACN,CAAC;IACDuB,WAAW,EAAE,OAAO;MAAEf,KAAK;MAAEK,KAAK;MAAEX,gBAAgB;MAAEC,OAAO;MAAEC;IAAM,CAAC,KAAK;MAAA;MACvE,IAAI,CAACS,KAAK,EAAE;QACR,OAAO,IAAI;MACf;MAEA,MAAMb,MAAM,GAAI,qBAAAQ,KAAK,CAACY,QAAQ,qDAAd,iBAAgBpB,MAAM,KAAI,EAAsB;MAEhE,IAAIQ,KAAK,CAACa,cAAc,EAAE;QACtB,OAAO,IAAAC,aAAI,EAACT,KAAK,EAA2BA,KAAK,IAC7Cf,YAAY,CAAC;UACTG,WAAW,EAAEY,KAAK;UAClBX,gBAAgB;UAChBE,KAAK;UACLD,OAAO;UACPE,SAAS,EAAE,aAAa;UACxBL;QACJ,CAAC,CAAC,CACL;MACL;MAEA,OAAOF,YAAY,CAAC;QAChBG,WAAW,EAAEY,KAAK;QAClBX,gBAAgB;QAChBE,KAAK;QACLD,OAAO;QACPE,SAAS,EAAE,aAAa;QACxBL;MACJ,CAAC,CAAC;IACN;EACJ,CAAC,CAAC;AACN,CAAC;AAAC"}
|
package/types.d.ts
CHANGED
|
@@ -5,7 +5,6 @@ import { GraphQLFieldResolver, GraphQLSchemaDefinition, Resolvers } from "@webin
|
|
|
5
5
|
import { SecurityPermission } from "@webiny/api-security/types";
|
|
6
6
|
import { DbContext } from "@webiny/handler-db/types";
|
|
7
7
|
import { FileManagerContext } from "@webiny/api-file-manager/types";
|
|
8
|
-
import { UpgradePlugin } from "@webiny/api-upgrade/types";
|
|
9
8
|
import { Topic } from "@webiny/pubsub/types";
|
|
10
9
|
import { CmsModelConverterCallable } from "./utils/converters/ConverterCollection";
|
|
11
10
|
export declare type ApiEndpoint = "manage" | "preview" | "read";
|
|
@@ -98,6 +97,10 @@ export interface CmsModelFieldSettings {
|
|
|
98
97
|
* Object field has child fields.
|
|
99
98
|
*/
|
|
100
99
|
fields?: CmsModelField[];
|
|
100
|
+
/**
|
|
101
|
+
* Is the file field images only one?
|
|
102
|
+
*/
|
|
103
|
+
imagesOnly?: boolean;
|
|
101
104
|
/**
|
|
102
105
|
* Object field has child fields - so it needs to have a layout.
|
|
103
106
|
*/
|
|
@@ -135,18 +138,16 @@ export interface CmsModelField {
|
|
|
135
138
|
* A type of the field.
|
|
136
139
|
* We are defining our built-in fields, so people know which are available by the default.
|
|
137
140
|
*/
|
|
138
|
-
type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | string;
|
|
141
|
+
type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | "dynamicZone" | string;
|
|
139
142
|
/**
|
|
140
143
|
* A unique storage ID for storing actual values.
|
|
141
|
-
* Must in form of a-zA-Z0-9@a-zA-Z0-9
|
|
144
|
+
* Must in form of a-zA-Z0-9@a-zA-Z0-9
|
|
142
145
|
*
|
|
143
146
|
* This is an auto-generated value: uses `id` and `type`
|
|
144
147
|
*
|
|
145
148
|
* This is used as path for the entry value.
|
|
146
|
-
*
|
|
147
|
-
* @internal
|
|
148
149
|
*/
|
|
149
|
-
storageId: string;
|
|
150
|
+
storageId: `${string}@${string}` | string;
|
|
150
151
|
/**
|
|
151
152
|
* Field identifier for the model field that will be available to the outside world.
|
|
152
153
|
* `storageId` is used as path (or column) to store the data.
|
|
@@ -233,6 +234,9 @@ export interface CmsModelDynamicZoneField extends CmsModelField {
|
|
|
233
234
|
export interface CmsModelFieldWithParent extends CmsModelField {
|
|
234
235
|
parent?: CmsModelFieldWithParent | null;
|
|
235
236
|
}
|
|
237
|
+
export interface CmsModelDynamicZoneFieldWithParent extends CmsModelDynamicZoneField {
|
|
238
|
+
parent?: CmsModelDynamicZoneFieldWithParent | null;
|
|
239
|
+
}
|
|
236
240
|
/**
|
|
237
241
|
* A definition for dateTime field to show possible type of the field in settings.
|
|
238
242
|
*/
|
|
@@ -360,7 +364,21 @@ export interface LockedField {
|
|
|
360
364
|
[key: string]: any;
|
|
361
365
|
}
|
|
362
366
|
/**
|
|
363
|
-
*
|
|
367
|
+
* @category Database model
|
|
368
|
+
* @category CmsModel
|
|
369
|
+
*/
|
|
370
|
+
export interface CmsModelGroup {
|
|
371
|
+
/**
|
|
372
|
+
* Generated ID of the group
|
|
373
|
+
*/
|
|
374
|
+
id: string;
|
|
375
|
+
/**
|
|
376
|
+
* Name of the group
|
|
377
|
+
*/
|
|
378
|
+
name: string;
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Base CMS Model. Should not be exported and used outside of this package.
|
|
364
382
|
*
|
|
365
383
|
* @category Database model
|
|
366
384
|
* @category CmsModel
|
|
@@ -374,6 +392,24 @@ export interface CmsModel {
|
|
|
374
392
|
* Unique ID for the content model. Created from name if not defined by user.
|
|
375
393
|
*/
|
|
376
394
|
modelId: string;
|
|
395
|
+
/**
|
|
396
|
+
* Name of the content model in singular form to be used in the API.
|
|
397
|
+
* example:
|
|
398
|
+
* - Article
|
|
399
|
+
* - Fruit
|
|
400
|
+
* - Vegetable
|
|
401
|
+
* - Car
|
|
402
|
+
*/
|
|
403
|
+
singularApiName: string;
|
|
404
|
+
/**
|
|
405
|
+
* Name of the content model in plural form to be used in the API.
|
|
406
|
+
* example:
|
|
407
|
+
* - Articles
|
|
408
|
+
* - Fruits
|
|
409
|
+
* - Vegetables
|
|
410
|
+
* - Cars
|
|
411
|
+
*/
|
|
412
|
+
pluralApiName: string;
|
|
377
413
|
/**
|
|
378
414
|
* Model tenant.
|
|
379
415
|
*/
|
|
@@ -385,20 +421,15 @@ export interface CmsModel {
|
|
|
385
421
|
/**
|
|
386
422
|
* Cms Group reference object.
|
|
387
423
|
*/
|
|
388
|
-
group:
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
/**
|
|
394
|
-
* Name of the group
|
|
395
|
-
*/
|
|
396
|
-
name: string;
|
|
397
|
-
};
|
|
424
|
+
group: CmsModelGroup;
|
|
425
|
+
/**
|
|
426
|
+
* Icon for the content model.
|
|
427
|
+
*/
|
|
428
|
+
icon?: string | null;
|
|
398
429
|
/**
|
|
399
430
|
* Description for the content model.
|
|
400
431
|
*/
|
|
401
|
-
description: string;
|
|
432
|
+
description: string | null;
|
|
402
433
|
/**
|
|
403
434
|
* Date created
|
|
404
435
|
*/
|
|
@@ -410,7 +441,7 @@ export interface CmsModel {
|
|
|
410
441
|
/**
|
|
411
442
|
* CreatedBy object wrapper. Contains id, name and type of the user.
|
|
412
443
|
*/
|
|
413
|
-
createdBy?:
|
|
444
|
+
createdBy?: CmsIdentity;
|
|
414
445
|
/**
|
|
415
446
|
* List of fields defining entry values.
|
|
416
447
|
*/
|
|
@@ -439,6 +470,16 @@ export interface CmsModel {
|
|
|
439
470
|
* It is picked as first available text field. Or user can select own field.
|
|
440
471
|
*/
|
|
441
472
|
titleFieldId: string;
|
|
473
|
+
/**
|
|
474
|
+
* The field which is displayed as the description one.
|
|
475
|
+
* Only way this is null or undefined is that there are no long-text fields to be set as description.
|
|
476
|
+
*/
|
|
477
|
+
descriptionFieldId?: string | null;
|
|
478
|
+
/**
|
|
479
|
+
* The field which is displayed as the image.
|
|
480
|
+
* Only way this is null or undefined is that there are no file fields, with images only set, to be set as image.
|
|
481
|
+
*/
|
|
482
|
+
imageFieldId?: string | null;
|
|
442
483
|
/**
|
|
443
484
|
* The version of Webiny which this record was stored with.
|
|
444
485
|
*/
|
|
@@ -479,6 +520,21 @@ export interface CmsModelFieldToGraphQLCreateResolver<TField = CmsModelField> {
|
|
|
479
520
|
typeResolvers: Resolvers<CmsContext>;
|
|
480
521
|
} | false;
|
|
481
522
|
}
|
|
523
|
+
export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams<TField extends CmsModelField = CmsModelField> {
|
|
524
|
+
fields: TField[];
|
|
525
|
+
originalFields: TField[];
|
|
526
|
+
}
|
|
527
|
+
export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidate {
|
|
528
|
+
(params: CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams): void;
|
|
529
|
+
}
|
|
530
|
+
export interface CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField extends CmsModelField = CmsModelField> {
|
|
531
|
+
field: TField;
|
|
532
|
+
originalField?: TField;
|
|
533
|
+
validate: CmsModelFieldToGraphQLPluginValidateChildFieldsValidate;
|
|
534
|
+
}
|
|
535
|
+
export interface CmsModelFieldToGraphQLPluginValidateChildFields<TField extends CmsModelField = CmsModelField> {
|
|
536
|
+
(params: CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField>): void;
|
|
537
|
+
}
|
|
482
538
|
/**
|
|
483
539
|
* @category Plugin
|
|
484
540
|
* @category ModelField
|
|
@@ -596,6 +652,7 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
|
|
|
596
652
|
* ```
|
|
597
653
|
*/
|
|
598
654
|
createTypeField(params: {
|
|
655
|
+
models: CmsModel[];
|
|
599
656
|
model: CmsModel;
|
|
600
657
|
field: TField;
|
|
601
658
|
fieldTypePlugins: CmsFieldTypePlugins;
|
|
@@ -696,6 +753,7 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
|
|
|
696
753
|
* ```
|
|
697
754
|
*/
|
|
698
755
|
createTypeField: (params: {
|
|
756
|
+
models: CmsModel[];
|
|
699
757
|
model: CmsModel;
|
|
700
758
|
field: TField;
|
|
701
759
|
fieldTypePlugins: CmsFieldTypePlugins;
|
|
@@ -716,6 +774,7 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
|
|
|
716
774
|
* ```
|
|
717
775
|
*/
|
|
718
776
|
createInputField: (params: {
|
|
777
|
+
models: CmsModel[];
|
|
719
778
|
model: CmsModel;
|
|
720
779
|
field: TField;
|
|
721
780
|
fieldTypePlugins: CmsFieldTypePlugins;
|
|
@@ -736,6 +795,11 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
|
|
|
736
795
|
*/
|
|
737
796
|
createResolver?: CmsModelFieldToGraphQLCreateResolver<TField>;
|
|
738
797
|
};
|
|
798
|
+
/**
|
|
799
|
+
*
|
|
800
|
+
* @param field
|
|
801
|
+
*/
|
|
802
|
+
validateChildFields?: CmsModelFieldToGraphQLPluginValidateChildFields<TField>;
|
|
739
803
|
}
|
|
740
804
|
/**
|
|
741
805
|
* Check for content model locked field.
|
|
@@ -778,7 +842,7 @@ export interface CmsFieldTypePlugins {
|
|
|
778
842
|
*
|
|
779
843
|
* @category General
|
|
780
844
|
*/
|
|
781
|
-
export interface
|
|
845
|
+
export interface CmsIdentity {
|
|
782
846
|
/**
|
|
783
847
|
* ID if the user.
|
|
784
848
|
*/
|
|
@@ -828,7 +892,7 @@ export interface CmsSettingsContext {
|
|
|
828
892
|
/**
|
|
829
893
|
* Get the datetime when content model last changed.
|
|
830
894
|
*/
|
|
831
|
-
getModelLastChange: () => Promise<Date>;
|
|
895
|
+
getModelLastChange: () => Promise<Date | null>;
|
|
832
896
|
}
|
|
833
897
|
export interface OnSystemBeforeInstallTopicParams {
|
|
834
898
|
tenant: string;
|
|
@@ -846,9 +910,7 @@ export interface OnSystemInstallErrorTopicParams {
|
|
|
846
910
|
export declare type CmsSystemContext = {
|
|
847
911
|
getSystemVersion: () => Promise<string | null>;
|
|
848
912
|
setSystemVersion: (version: string) => Promise<void>;
|
|
849
|
-
getReadAPIKey(): Promise<string | null>;
|
|
850
913
|
installSystem: () => Promise<void>;
|
|
851
|
-
upgradeSystem: (version: string) => Promise<boolean>;
|
|
852
914
|
/**
|
|
853
915
|
* Lifecycle events - deprecated
|
|
854
916
|
*/
|
|
@@ -929,7 +991,7 @@ export interface CmsGroup {
|
|
|
929
991
|
/**
|
|
930
992
|
* CreatedBy reference object.
|
|
931
993
|
*/
|
|
932
|
-
createdBy?:
|
|
994
|
+
createdBy?: CmsIdentity;
|
|
933
995
|
/**
|
|
934
996
|
* Date group was created on.
|
|
935
997
|
*/
|
|
@@ -976,6 +1038,15 @@ export interface OnGroupBeforeCreateTopicParams {
|
|
|
976
1038
|
export interface OnGroupAfterCreateTopicParams {
|
|
977
1039
|
group: CmsGroup;
|
|
978
1040
|
}
|
|
1041
|
+
/**
|
|
1042
|
+
* @category CmsGroup
|
|
1043
|
+
* @category Topic
|
|
1044
|
+
*/
|
|
1045
|
+
export interface OnGroupCreateErrorTopicParams {
|
|
1046
|
+
input: CmsGroupCreateInput;
|
|
1047
|
+
group: CmsGroup;
|
|
1048
|
+
error: Error;
|
|
1049
|
+
}
|
|
979
1050
|
/**
|
|
980
1051
|
* @category CmsGroup
|
|
981
1052
|
* @category Topic
|
|
@@ -992,6 +1063,16 @@ export interface OnGroupAfterUpdateTopicParams {
|
|
|
992
1063
|
original: CmsGroup;
|
|
993
1064
|
group: CmsGroup;
|
|
994
1065
|
}
|
|
1066
|
+
/**
|
|
1067
|
+
* @category CmsGroup
|
|
1068
|
+
* @category Topic
|
|
1069
|
+
*/
|
|
1070
|
+
export interface OnGroupUpdateErrorTopicParams {
|
|
1071
|
+
input: CmsGroupUpdateInput;
|
|
1072
|
+
original: CmsGroup;
|
|
1073
|
+
group: CmsGroup;
|
|
1074
|
+
error: Error;
|
|
1075
|
+
}
|
|
995
1076
|
/**
|
|
996
1077
|
* @category CmsGroup
|
|
997
1078
|
* @category Topic
|
|
@@ -1006,6 +1087,14 @@ export interface OnGroupBeforeDeleteTopicParams {
|
|
|
1006
1087
|
export interface OnGroupAfterDeleteTopicParams {
|
|
1007
1088
|
group: CmsGroup;
|
|
1008
1089
|
}
|
|
1090
|
+
/**
|
|
1091
|
+
* @category CmsGroup
|
|
1092
|
+
* @category Topic
|
|
1093
|
+
*/
|
|
1094
|
+
export interface OnGroupDeleteErrorTopicParams {
|
|
1095
|
+
group: CmsGroup;
|
|
1096
|
+
error: Error;
|
|
1097
|
+
}
|
|
1009
1098
|
/**
|
|
1010
1099
|
* Cms Group in context.
|
|
1011
1100
|
*
|
|
@@ -1069,10 +1158,13 @@ export interface CmsGroupContext {
|
|
|
1069
1158
|
*/
|
|
1070
1159
|
onGroupBeforeCreate: Topic<OnGroupBeforeCreateTopicParams>;
|
|
1071
1160
|
onGroupAfterCreate: Topic<OnGroupAfterCreateTopicParams>;
|
|
1161
|
+
onGroupCreateError: Topic<OnGroupCreateErrorTopicParams>;
|
|
1072
1162
|
onGroupBeforeUpdate: Topic<OnGroupBeforeUpdateTopicParams>;
|
|
1073
1163
|
onGroupAfterUpdate: Topic<OnGroupAfterUpdateTopicParams>;
|
|
1164
|
+
onGroupUpdateError: Topic<OnGroupUpdateErrorTopicParams>;
|
|
1074
1165
|
onGroupBeforeDelete: Topic<OnGroupBeforeDeleteTopicParams>;
|
|
1075
1166
|
onGroupAfterDelete: Topic<OnGroupAfterDeleteTopicParams>;
|
|
1167
|
+
onGroupDeleteError: Topic<OnGroupDeleteErrorTopicParams>;
|
|
1076
1168
|
}
|
|
1077
1169
|
/**
|
|
1078
1170
|
* Definition for content model field validator.
|
|
@@ -1101,6 +1193,14 @@ export interface CmsModelCreateInput {
|
|
|
1101
1193
|
* Name of the content model.
|
|
1102
1194
|
*/
|
|
1103
1195
|
name: string;
|
|
1196
|
+
/**
|
|
1197
|
+
* Singular name of the content model to be used in the API.
|
|
1198
|
+
*/
|
|
1199
|
+
singularApiName: string;
|
|
1200
|
+
/**
|
|
1201
|
+
* Plural name of the content model to be used in the API.
|
|
1202
|
+
*/
|
|
1203
|
+
pluralApiName: string;
|
|
1104
1204
|
/**
|
|
1105
1205
|
* Unique ID of the content model. Created from name if not sent by the user. Cannot be changed.
|
|
1106
1206
|
*/
|
|
@@ -1108,7 +1208,7 @@ export interface CmsModelCreateInput {
|
|
|
1108
1208
|
/**
|
|
1109
1209
|
* Description of the content model.
|
|
1110
1210
|
*/
|
|
1111
|
-
description?: string;
|
|
1211
|
+
description?: string | null;
|
|
1112
1212
|
/**
|
|
1113
1213
|
* Group where to put the content model in.
|
|
1114
1214
|
*/
|
|
@@ -1133,10 +1233,11 @@ export interface CmsModelCreateInput {
|
|
|
1133
1233
|
*/
|
|
1134
1234
|
tags?: string[];
|
|
1135
1235
|
/**
|
|
1136
|
-
*
|
|
1137
|
-
* It is picked as first available text field. Or user can select own field.
|
|
1236
|
+
* Fields fieldId which are picked to represent the CMS entry.
|
|
1138
1237
|
*/
|
|
1139
|
-
titleFieldId?: string;
|
|
1238
|
+
titleFieldId?: string | null;
|
|
1239
|
+
descriptionFieldId?: string | null;
|
|
1240
|
+
imageFieldId?: string | null;
|
|
1140
1241
|
}
|
|
1141
1242
|
/**
|
|
1142
1243
|
* A GraphQL `params.data` parameter received when creating content model from existing model.
|
|
@@ -1180,11 +1281,11 @@ export interface CmsModelFieldInput {
|
|
|
1180
1281
|
/**
|
|
1181
1282
|
* Text to display below the field to help user what to write in the field.
|
|
1182
1283
|
*/
|
|
1183
|
-
helpText?: string;
|
|
1284
|
+
helpText?: string | null;
|
|
1184
1285
|
/**
|
|
1185
1286
|
* Text to display in the field.
|
|
1186
1287
|
*/
|
|
1187
|
-
placeholderText?: string;
|
|
1288
|
+
placeholderText?: string | null;
|
|
1188
1289
|
/**
|
|
1189
1290
|
* Fields can be tagged to give them contextual meaning.
|
|
1190
1291
|
*/
|
|
@@ -1208,7 +1309,7 @@ export interface CmsModelFieldInput {
|
|
|
1208
1309
|
/**
|
|
1209
1310
|
* @see CmsModelField.listValidation
|
|
1210
1311
|
*/
|
|
1211
|
-
listValidation
|
|
1312
|
+
listValidation?: CmsModelFieldValidation[];
|
|
1212
1313
|
/**
|
|
1213
1314
|
* User defined settings.
|
|
1214
1315
|
*/
|
|
@@ -1225,6 +1326,14 @@ export interface CmsModelUpdateInput {
|
|
|
1225
1326
|
* A new content model name.
|
|
1226
1327
|
*/
|
|
1227
1328
|
name?: string;
|
|
1329
|
+
/**
|
|
1330
|
+
* A new singular name of the content model to be used in the API.
|
|
1331
|
+
*/
|
|
1332
|
+
singularApiName?: string;
|
|
1333
|
+
/**
|
|
1334
|
+
* A new plural name of the content model to be used in the API.
|
|
1335
|
+
*/
|
|
1336
|
+
pluralApiName?: string;
|
|
1228
1337
|
/**
|
|
1229
1338
|
* A group we want to move the model to.
|
|
1230
1339
|
*/
|
|
@@ -1232,7 +1341,7 @@ export interface CmsModelUpdateInput {
|
|
|
1232
1341
|
/**
|
|
1233
1342
|
* A new description of the content model.
|
|
1234
1343
|
*/
|
|
1235
|
-
description?: string;
|
|
1344
|
+
description?: string | null;
|
|
1236
1345
|
/**
|
|
1237
1346
|
* A list of content model fields to define the entry values.
|
|
1238
1347
|
*/
|
|
@@ -1249,10 +1358,11 @@ export interface CmsModelUpdateInput {
|
|
|
1249
1358
|
*/
|
|
1250
1359
|
layout: string[][];
|
|
1251
1360
|
/**
|
|
1252
|
-
*
|
|
1253
|
-
* It is picked as first available text field. Or user can select own field.
|
|
1361
|
+
* Fields fieldId which are picked to represent the CMS entry.
|
|
1254
1362
|
*/
|
|
1255
|
-
titleFieldId?: string;
|
|
1363
|
+
titleFieldId?: string | null;
|
|
1364
|
+
descriptionFieldId?: string | null;
|
|
1365
|
+
imageFieldId?: string | null;
|
|
1256
1366
|
}
|
|
1257
1367
|
/**
|
|
1258
1368
|
* A plugin to load a CmsModelManager.
|
|
@@ -1316,11 +1426,15 @@ export interface CmsEntry<T = CmsEntryValues> {
|
|
|
1316
1426
|
/**
|
|
1317
1427
|
* CreatedBy object reference.
|
|
1318
1428
|
*/
|
|
1319
|
-
createdBy:
|
|
1429
|
+
createdBy: CmsIdentity;
|
|
1320
1430
|
/**
|
|
1321
1431
|
* OwnedBy object reference. Can be different from CreatedBy.
|
|
1322
1432
|
*/
|
|
1323
|
-
ownedBy:
|
|
1433
|
+
ownedBy: CmsIdentity;
|
|
1434
|
+
/**
|
|
1435
|
+
* ModifiedBy object reference. Last person who modified the entry.
|
|
1436
|
+
*/
|
|
1437
|
+
modifiedBy?: CmsIdentity | null;
|
|
1324
1438
|
/**
|
|
1325
1439
|
* A string of Date.toISOString() type.
|
|
1326
1440
|
* Populated on creation.
|
|
@@ -1423,6 +1537,9 @@ export interface CmsModelManager {
|
|
|
1423
1537
|
*/
|
|
1424
1538
|
delete: (id: string) => Promise<void>;
|
|
1425
1539
|
}
|
|
1540
|
+
/**
|
|
1541
|
+
* Create
|
|
1542
|
+
*/
|
|
1426
1543
|
export interface OnModelBeforeCreateTopicParams {
|
|
1427
1544
|
input: CmsModelCreateInput;
|
|
1428
1545
|
model: CmsModel;
|
|
@@ -1431,6 +1548,14 @@ export interface OnModelAfterCreateTopicParams {
|
|
|
1431
1548
|
input: CmsModelCreateInput;
|
|
1432
1549
|
model: CmsModel;
|
|
1433
1550
|
}
|
|
1551
|
+
export interface OnModelCreateErrorTopicParams {
|
|
1552
|
+
input: CmsModelCreateInput;
|
|
1553
|
+
model: CmsModel;
|
|
1554
|
+
error: Error;
|
|
1555
|
+
}
|
|
1556
|
+
/**
|
|
1557
|
+
* Create From / Clone
|
|
1558
|
+
*/
|
|
1434
1559
|
export interface OnModelBeforeCreateFromTopicParams {
|
|
1435
1560
|
input: CmsModelCreateInput;
|
|
1436
1561
|
original: CmsModel;
|
|
@@ -1441,6 +1566,15 @@ export interface OnModelAfterCreateFromTopicParams {
|
|
|
1441
1566
|
original: CmsModel;
|
|
1442
1567
|
model: CmsModel;
|
|
1443
1568
|
}
|
|
1569
|
+
export interface OnModelCreateFromErrorParams {
|
|
1570
|
+
input: CmsModelCreateInput;
|
|
1571
|
+
original: CmsModel;
|
|
1572
|
+
model: CmsModel;
|
|
1573
|
+
error: Error;
|
|
1574
|
+
}
|
|
1575
|
+
/**
|
|
1576
|
+
* Update
|
|
1577
|
+
*/
|
|
1444
1578
|
export interface OnModelBeforeUpdateTopicParams {
|
|
1445
1579
|
input: CmsModelUpdateInput;
|
|
1446
1580
|
original: CmsModel;
|
|
@@ -1451,15 +1585,35 @@ export interface OnModelAfterUpdateTopicParams {
|
|
|
1451
1585
|
original: CmsModel;
|
|
1452
1586
|
model: CmsModel;
|
|
1453
1587
|
}
|
|
1588
|
+
export interface OnModelUpdateErrorTopicParams {
|
|
1589
|
+
input: CmsModelUpdateInput;
|
|
1590
|
+
original: CmsModel;
|
|
1591
|
+
model: CmsModel;
|
|
1592
|
+
error: Error;
|
|
1593
|
+
}
|
|
1594
|
+
/**
|
|
1595
|
+
* Delete
|
|
1596
|
+
*/
|
|
1454
1597
|
export interface OnModelBeforeDeleteTopicParams {
|
|
1455
1598
|
model: CmsModel;
|
|
1456
1599
|
}
|
|
1457
1600
|
export interface OnModelAfterDeleteTopicParams {
|
|
1458
1601
|
model: CmsModel;
|
|
1459
1602
|
}
|
|
1603
|
+
export interface OnModelDeleteErrorTopicParams {
|
|
1604
|
+
model: CmsModel;
|
|
1605
|
+
error: Error;
|
|
1606
|
+
}
|
|
1607
|
+
/**
|
|
1608
|
+
* Initialize
|
|
1609
|
+
*/
|
|
1460
1610
|
export interface OnModelInitializeParams {
|
|
1461
1611
|
model: CmsModel;
|
|
1612
|
+
data: Record<string, any>;
|
|
1462
1613
|
}
|
|
1614
|
+
/**
|
|
1615
|
+
*
|
|
1616
|
+
*/
|
|
1463
1617
|
export interface CmsModelUpdateDirectParams {
|
|
1464
1618
|
model: CmsModel;
|
|
1465
1619
|
original: CmsModel;
|
|
@@ -1506,7 +1660,7 @@ export interface CmsModelContext {
|
|
|
1506
1660
|
*
|
|
1507
1661
|
* Primary idea behind this is creating the index, for the code models, in the ES.
|
|
1508
1662
|
*/
|
|
1509
|
-
initializeModel: (modelId: string) => Promise<boolean>;
|
|
1663
|
+
initializeModel: (modelId: string, data: Record<string, any>) => Promise<boolean>;
|
|
1510
1664
|
/**
|
|
1511
1665
|
* Get an instance of CmsModelManager for given content modelId.
|
|
1512
1666
|
*
|
|
@@ -1567,12 +1721,16 @@ export interface CmsModelContext {
|
|
|
1567
1721
|
*/
|
|
1568
1722
|
onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;
|
|
1569
1723
|
onModelAfterCreate: Topic<OnModelAfterCreateTopicParams>;
|
|
1724
|
+
onModelCreateError: Topic<OnModelCreateErrorTopicParams>;
|
|
1570
1725
|
onModelBeforeCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
|
|
1571
1726
|
onModelAfterCreateFrom: Topic<OnModelAfterCreateFromTopicParams>;
|
|
1727
|
+
onModelCreateFromError: Topic<OnModelCreateFromErrorParams>;
|
|
1572
1728
|
onModelBeforeUpdate: Topic<OnModelBeforeUpdateTopicParams>;
|
|
1573
1729
|
onModelAfterUpdate: Topic<OnModelAfterUpdateTopicParams>;
|
|
1730
|
+
onModelUpdateError: Topic<OnModelUpdateErrorTopicParams>;
|
|
1574
1731
|
onModelBeforeDelete: Topic<OnModelBeforeDeleteTopicParams>;
|
|
1575
1732
|
onModelAfterDelete: Topic<OnModelAfterDeleteTopicParams>;
|
|
1733
|
+
onModelDeleteError: Topic<OnModelDeleteErrorTopicParams>;
|
|
1576
1734
|
onModelInitialize: Topic<OnModelInitializeParams>;
|
|
1577
1735
|
}
|
|
1578
1736
|
/**
|
|
@@ -1716,6 +1874,9 @@ export interface CmsEntryMeta {
|
|
|
1716
1874
|
*/
|
|
1717
1875
|
totalCount: number;
|
|
1718
1876
|
}
|
|
1877
|
+
/**
|
|
1878
|
+
* Create
|
|
1879
|
+
*/
|
|
1719
1880
|
export interface OnEntryBeforeCreateTopicParams {
|
|
1720
1881
|
input: CreateCmsEntryInput;
|
|
1721
1882
|
entry: CmsEntry;
|
|
@@ -1733,6 +1894,9 @@ export interface OnEntryCreateErrorTopicParams {
|
|
|
1733
1894
|
entry: CmsEntry;
|
|
1734
1895
|
model: CmsModel;
|
|
1735
1896
|
}
|
|
1897
|
+
/**
|
|
1898
|
+
* Revision Create
|
|
1899
|
+
*/
|
|
1736
1900
|
export interface OnEntryRevisionBeforeCreateTopicParams {
|
|
1737
1901
|
input: CreateFromCmsEntryInput;
|
|
1738
1902
|
entry: CmsEntry;
|
|
@@ -1749,9 +1913,13 @@ export interface OnEntryRevisionAfterCreateTopicParams {
|
|
|
1749
1913
|
export interface OnEntryCreateRevisionErrorTopicParams {
|
|
1750
1914
|
error: Error;
|
|
1751
1915
|
input: CreateFromCmsEntryInput;
|
|
1916
|
+
original: CmsEntry;
|
|
1752
1917
|
entry: CmsEntry;
|
|
1753
1918
|
model: CmsModel;
|
|
1754
1919
|
}
|
|
1920
|
+
/**
|
|
1921
|
+
* Update
|
|
1922
|
+
*/
|
|
1755
1923
|
export interface OnEntryBeforeUpdateTopicParams {
|
|
1756
1924
|
input: UpdateCmsEntryInput;
|
|
1757
1925
|
original: CmsEntry;
|
|
@@ -1771,6 +1939,9 @@ export interface OnEntryUpdateErrorTopicParams {
|
|
|
1771
1939
|
entry: CmsEntry;
|
|
1772
1940
|
model: CmsModel;
|
|
1773
1941
|
}
|
|
1942
|
+
/**
|
|
1943
|
+
* Publish
|
|
1944
|
+
*/
|
|
1774
1945
|
export interface OnEntryBeforePublishTopicParams {
|
|
1775
1946
|
entry: CmsEntry;
|
|
1776
1947
|
model: StorageOperationsCmsModel;
|
|
@@ -1785,6 +1956,26 @@ export interface OnEntryPublishErrorTopicParams {
|
|
|
1785
1956
|
entry: CmsEntry;
|
|
1786
1957
|
model: StorageOperationsCmsModel;
|
|
1787
1958
|
}
|
|
1959
|
+
/**
|
|
1960
|
+
* Republish
|
|
1961
|
+
*/
|
|
1962
|
+
export interface OnEntryBeforeRepublishTopicParams {
|
|
1963
|
+
entry: CmsEntry;
|
|
1964
|
+
model: StorageOperationsCmsModel;
|
|
1965
|
+
}
|
|
1966
|
+
export interface OnEntryAfterRepublishTopicParams {
|
|
1967
|
+
entry: CmsEntry;
|
|
1968
|
+
model: StorageOperationsCmsModel;
|
|
1969
|
+
storageEntry: CmsEntry;
|
|
1970
|
+
}
|
|
1971
|
+
export interface OnEntryRepublishErrorTopicParams {
|
|
1972
|
+
error: Error;
|
|
1973
|
+
entry: CmsEntry;
|
|
1974
|
+
model: StorageOperationsCmsModel;
|
|
1975
|
+
}
|
|
1976
|
+
/**
|
|
1977
|
+
* Unpublish
|
|
1978
|
+
*/
|
|
1788
1979
|
export interface OnEntryBeforeUnpublishTopicParams {
|
|
1789
1980
|
entry: CmsEntry;
|
|
1790
1981
|
model: StorageOperationsCmsModel;
|
|
@@ -1838,6 +2029,7 @@ export interface EntryBeforeListTopicParams {
|
|
|
1838
2029
|
* @category CmsEntry
|
|
1839
2030
|
*/
|
|
1840
2031
|
export interface CreateCmsEntryInput {
|
|
2032
|
+
id?: string;
|
|
1841
2033
|
[key: string]: any;
|
|
1842
2034
|
}
|
|
1843
2035
|
/**
|
|
@@ -2018,6 +2210,9 @@ export interface CmsEntryContext {
|
|
|
2018
2210
|
onEntryBeforePublish: Topic<OnEntryBeforePublishTopicParams>;
|
|
2019
2211
|
onEntryAfterPublish: Topic<OnEntryAfterPublishTopicParams>;
|
|
2020
2212
|
onEntryPublishError: Topic<OnEntryPublishErrorTopicParams>;
|
|
2213
|
+
onEntryBeforeRepublish: Topic<OnEntryBeforeRepublishTopicParams>;
|
|
2214
|
+
onEntryAfterRepublish: Topic<OnEntryAfterRepublishTopicParams>;
|
|
2215
|
+
onEntryRepublishError: Topic<OnEntryRepublishErrorTopicParams>;
|
|
2021
2216
|
onEntryBeforeUnpublish: Topic<OnEntryBeforeUnpublishTopicParams>;
|
|
2022
2217
|
onEntryAfterUnpublish: Topic<OnEntryAfterUnpublishTopicParams>;
|
|
2023
2218
|
onEntryUnpublishError: Topic<OnEntryUnpublishErrorTopicParams>;
|
|
@@ -2222,7 +2417,7 @@ export interface CmsEntryStorageOperationsListParams {
|
|
|
2222
2417
|
sort?: CmsEntryListSort;
|
|
2223
2418
|
search?: string;
|
|
2224
2419
|
fields?: string[];
|
|
2225
|
-
limit
|
|
2420
|
+
limit: number;
|
|
2226
2421
|
after?: string | null;
|
|
2227
2422
|
}
|
|
2228
2423
|
export interface CmsEntryStorageOperationsCreateParams<T extends CmsStorageEntry = CmsStorageEntry> {
|
|
@@ -2494,9 +2689,5 @@ export interface HeadlessCmsStorageOperations<C = CmsContext> {
|
|
|
2494
2689
|
*/
|
|
2495
2690
|
beforeInit?: (context: C) => Promise<void>;
|
|
2496
2691
|
init?: (context: C) => Promise<void>;
|
|
2497
|
-
/**
|
|
2498
|
-
* An upgrade to run if necessary.
|
|
2499
|
-
*/
|
|
2500
|
-
upgrade?: UpgradePlugin | null;
|
|
2501
2692
|
}
|
|
2502
2693
|
export {};
|