@webiny/api-headless-cms 0.0.0-unstable.97a151f74d → 0.0.0-unstable.aad28a72ae

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/crud/contentEntry.crud.js +56 -7
  2. package/crud/contentEntry.crud.js.map +1 -1
  3. package/crud/contentModel/validateModelFields.js +26 -22
  4. package/crud/contentModel/validateModelFields.js.map +1 -1
  5. package/crud/contentModel.crud.js +162 -139
  6. package/crud/contentModel.crud.js.map +1 -1
  7. package/crud/contentModelGroup.crud.js +33 -3
  8. package/crud/contentModelGroup.crud.js.map +1 -1
  9. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.d.ts +11 -0
  10. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js +239 -0
  11. package/fieldConverters/CmsModelDynamicZoneFieldConverterPlugin.js.map +1 -0
  12. package/fieldConverters/index.d.ts +2 -1
  13. package/fieldConverters/index.js +3 -1
  14. package/fieldConverters/index.js.map +1 -1
  15. package/graphql/schema/contentModels.js +5 -3
  16. package/graphql/schema/contentModels.js.map +1 -1
  17. package/graphqlFields/dynamicZone/dynamicZoneField.js +26 -1
  18. package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
  19. package/graphqlFields/object.js +26 -13
  20. package/graphqlFields/object.js.map +1 -1
  21. package/index.d.ts +1 -1
  22. package/package.json +23 -23
  23. package/plugins/CmsModelFieldConverterPlugin.d.ts +2 -2
  24. package/plugins/CmsModelFieldConverterPlugin.js.map +1 -1
  25. package/types.d.ts +100 -2
  26. package/types.js +39 -0
  27. package/types.js.map +1 -1
  28. package/utils/entryStorage.js +7 -8
  29. package/utils/entryStorage.js.map +1 -1
  30. package/graphql/schema/resolvers/manage/resolveRequestChanges.d.ts +0 -7
  31. package/graphql/schema/resolvers/manage/resolveRequestChanges.js +0 -21
  32. package/graphql/schema/resolvers/manage/resolveRequestChanges.js.map +0 -1
  33. package/graphql/schema/resolvers/manage/resolveRequestReview.d.ts +0 -7
  34. package/graphql/schema/resolvers/manage/resolveRequestReview.js +0 -21
  35. package/graphql/schema/resolvers/manage/resolveRequestReview.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["createChildTypeDefs","params","field","plugins","model","endpointType","fields","settings","typeName","createTypeName","parents","filters","map","child","createListFilters","type","concat","fieldId","filter","Boolean","join","modelId","id","lodashUpperFirst","createObjectField","name","fieldType","isSortable","isSearchable","read","createTypeField","fieldTypePlugins","result","createTypeFromFields","typeOfType","typeNamePrefix","typeDefs","childTypeDefs","multipleValues","createResolver","createFieldResolvers","graphQLType","length","upperFirst","typeResolvers","resolver","manage","createInputField","attachRequiredFieldValue"],"sources":["object.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { attachRequiredFieldValue } from \"./helpers\";\nimport lodashUpperFirst from \"lodash/upperFirst\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\n\ninterface AttachTypeDefinitionsParams {\n model: CmsModel;\n field: CmsModelField;\n plugins: CmsFieldTypePlugins;\n endpointType: \"manage\" | \"read\";\n}\nconst createChildTypeDefs = (params: AttachTypeDefinitionsParams): string => {\n const { field, plugins, model, endpointType } = params;\n const fields = field.settings?.fields || [];\n\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n const filters = fields\n .map(child => {\n const createListFilters = plugins[child.type][endpointType].createListFilters;\n if (!createListFilters) {\n return null;\n }\n\n const filters = createListFilters({\n model,\n field: {\n ...child,\n settings: {\n ...child.settings,\n parents: (child.settings?.parents || []).concat([field.fieldId])\n }\n },\n plugins\n });\n if (!filters) {\n return null;\n }\n return filters;\n })\n .filter(Boolean)\n .join(\"\\n\");\n return `input ${typeName}WhereInput {\n ${filters}\n }`;\n};\n\ninterface CreateTypeNameParams {\n model: CmsModel;\n parents?: string[];\n field: CmsModelField;\n}\nconst createTypeName = (params: CreateTypeNameParams): string => {\n const { model, parents = [], field } = params;\n return [model.modelId]\n .concat(parents)\n .concat([field.fieldId])\n .filter(Boolean)\n .map(id => {\n return lodashUpperFirst(id);\n })\n .join(\"_\");\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n model: CmsModel;\n}\nconst createListFilters = ({ field, model }: CreateListFiltersParams) => {\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n return `${field.fieldId}: ${typeName}WhereInput`;\n};\n\nexport const createObjectField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-object\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"object\",\n isSortable: false,\n isSearchable: false,\n read: {\n createTypeField({ field, model, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n model,\n type: \"read\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"read\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createResolver({ field, createFieldResolvers, graphQLType }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n },\n manage: {\n createTypeField({ model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"manage\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createInputField({ model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"input\",\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n return {\n fields: attachRequiredFieldValue(\n `${field.fieldId}: ${field.multipleValues ? `[${fieldType}!]` : fieldType}`,\n field\n ),\n typeDefs\n };\n },\n createResolver({ graphQLType, field, createFieldResolvers }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n }\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["createChildTypeDefs","params","field","plugins","model","endpointType","fields","settings","typeName","createTypeName","parents","filters","map","child","createListFilters","type","concat","fieldId","filter","Boolean","join","modelId","id","lodashUpperFirst","createObjectField","name","fieldType","isSortable","isSearchable","validateChildFields","originalField","validate","originalFields","read","createTypeField","fieldTypePlugins","result","createTypeFromFields","typeOfType","typeNamePrefix","typeDefs","childTypeDefs","multipleValues","createResolver","createFieldResolvers","graphQLType","length","upperFirst","typeResolvers","resolver","manage","createInputField","attachRequiredFieldValue"],"sources":["object.ts"],"sourcesContent":["import upperFirst from \"lodash/upperFirst\";\nimport {\n CmsFieldTypePlugins,\n CmsModel,\n CmsModelField,\n CmsModelFieldToGraphQLPlugin\n} from \"~/types\";\nimport { attachRequiredFieldValue } from \"./helpers\";\nimport lodashUpperFirst from \"lodash/upperFirst\";\nimport { createTypeFromFields } from \"~/utils/createTypeFromFields\";\n\ninterface AttachTypeDefinitionsParams {\n model: CmsModel;\n field: CmsModelField;\n plugins: CmsFieldTypePlugins;\n endpointType: \"manage\" | \"read\";\n}\nconst createChildTypeDefs = (params: AttachTypeDefinitionsParams): string => {\n const { field, plugins, model, endpointType } = params;\n const fields = field.settings?.fields || [];\n\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n const filters = fields\n .map(child => {\n const createListFilters = plugins[child.type][endpointType].createListFilters;\n if (!createListFilters) {\n return null;\n }\n\n const filters = createListFilters({\n model,\n field: {\n ...child,\n settings: {\n ...child.settings,\n parents: (child.settings?.parents || []).concat([field.fieldId])\n }\n },\n plugins\n });\n if (!filters) {\n return null;\n }\n return filters;\n })\n .filter(Boolean)\n .join(\"\\n\");\n return `input ${typeName}WhereInput {\n ${filters}\n }`;\n};\n\ninterface CreateTypeNameParams {\n model: CmsModel;\n parents?: string[];\n field: CmsModelField;\n}\nconst createTypeName = (params: CreateTypeNameParams): string => {\n const { model, parents = [], field } = params;\n return [model.modelId]\n .concat(parents)\n .concat([field.fieldId])\n .filter(Boolean)\n .map(id => {\n return lodashUpperFirst(id);\n })\n .join(\"_\");\n};\n\ninterface CreateListFiltersParams {\n field: CmsModelField;\n model: CmsModel;\n}\nconst createListFilters = ({ field, model }: CreateListFiltersParams) => {\n const typeName = createTypeName({\n model,\n field,\n parents: field.settings?.parents\n });\n\n return `${field.fieldId}: ${typeName}WhereInput`;\n};\n\nexport const createObjectField = (): CmsModelFieldToGraphQLPlugin => {\n return {\n name: \"cms-model-field-to-graphql-object\",\n type: \"cms-model-field-to-graphql\",\n fieldType: \"object\",\n isSortable: false,\n isSearchable: false,\n validateChildFields: params => {\n const { field, originalField, validate } = params;\n\n validate({\n fields: field.settings?.fields || [],\n originalFields: originalField?.settings?.fields || []\n });\n },\n read: {\n createTypeField({ field, model, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n model,\n type: \"read\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"read\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createResolver({ field, createFieldResolvers, graphQLType }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n },\n manage: {\n createTypeField({ model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"type\",\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n const childTypeDefs = createChildTypeDefs({\n model,\n field,\n plugins: fieldTypePlugins,\n endpointType: \"manage\"\n });\n\n return {\n fields: `${field.fieldId}: ${\n field.multipleValues ? `[${fieldType}!]` : fieldType\n }`,\n typeDefs: `${typeDefs}${childTypeDefs}`\n };\n },\n createInputField({ model, field, fieldTypePlugins }) {\n const result = createTypeFromFields({\n typeOfType: \"input\",\n model,\n type: \"manage\",\n typeNamePrefix: createTypeName({\n model,\n field,\n parents: field.settings?.parents\n }),\n fields: field.settings?.fields || [],\n fieldTypePlugins\n });\n if (!result) {\n return null;\n }\n const { fieldType, typeDefs } = result;\n\n return {\n fields: attachRequiredFieldValue(\n `${field.fieldId}: ${field.multipleValues ? `[${fieldType}!]` : fieldType}`,\n field\n ),\n typeDefs\n };\n },\n createResolver({ graphQLType, field, createFieldResolvers }) {\n if (!field.settings?.fields || field.settings.fields.length === 0) {\n return false;\n }\n const fieldType = `${graphQLType}_${upperFirst(field.fieldId)}`;\n const typeResolvers = createFieldResolvers({\n graphQLType: fieldType,\n fields: field.settings.fields\n });\n return {\n resolver: null,\n typeResolvers: typeResolvers || {}\n };\n },\n createListFilters\n }\n };\n};\n"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import { entryFieldFromStorageTransform, entryFromStorageTransform, entryToStora
4
4
  export declare type CreateHeadlessCmsGraphQLParams = CreateGraphQLParams;
5
5
  export declare const createHeadlessCmsGraphQL: (params?: CreateHeadlessCmsGraphQLParams) => (import("./plugins").CmsParametersPlugin | (import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("@webiny/handler-graphql/types").GraphQLSchemaPlugin<import("./types").CmsContext> | import("@webiny/plugins/types").PluginCollection)[])[];
6
6
  export declare type ContentContextParams = CrudParams;
7
- export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("./types").ModelManagerPlugin | import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelField> | import("@webiny/api-upgrade").UpgradePlugin<import("./types").CmsContext>[] | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelDynamicZoneField> | import("./types").CmsModelFieldToGraphQLPlugin<any>[] | (import("./types").CmsModelFieldValidatorPlugin | import("./types").CmsModelFieldPatternValidatorPlugin[])[] | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin").CmsModelDefaultFieldConverterPlugin)[])[];
7
+ export declare const createHeadlessCmsContext: (params: ContentContextParams) => (import("./types").ModelManagerPlugin | import("@webiny/api").ContextPlugin<import("./types").CmsContext> | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelField> | import("@webiny/api-upgrade").UpgradePlugin<import("./types").CmsContext>[] | import("./plugins").StorageTransformPlugin<any, any, import("./types").CmsModelDynamicZoneField> | import("./types").CmsModelFieldToGraphQLPlugin<any>[] | (import("./types").CmsModelFieldValidatorPlugin | import("./types").CmsModelFieldPatternValidatorPlugin[])[] | (import("./fieldConverters/CmsModelObjectFieldConverterPlugin").CmsModelObjectFieldConverterPlugin | import("./fieldConverters/CmsModelDefaultFieldConverterPlugin").CmsModelDefaultFieldConverterPlugin | import("./fieldConverters/CmsModelDynamicZoneFieldConverterPlugin").CmsModelDynamicZoneFieldConverterPlugin)[])[];
8
8
  export * from "./graphqlFields";
9
9
  export * from "./plugins";
10
10
  export { entryToStorageTransform, entryFieldFromStorageTransform, entryFromStorageTransform };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@webiny/api-headless-cms",
3
- "version": "0.0.0-unstable.97a151f74d",
3
+ "version": "0.0.0-unstable.aad28a72ae",
4
4
  "main": "index.js",
5
5
  "keywords": [
6
6
  "cms:base"
@@ -21,22 +21,22 @@
21
21
  "@babel/runtime": "7.19.0",
22
22
  "@commodo/fields": "1.1.2-beta.20",
23
23
  "@graphql-tools/schema": "7.1.5",
24
- "@webiny/api": "0.0.0-unstable.97a151f74d",
25
- "@webiny/api-file-manager": "0.0.0-unstable.97a151f74d",
26
- "@webiny/api-i18n": "0.0.0-unstable.97a151f74d",
27
- "@webiny/api-i18n-ddb": "0.0.0-unstable.97a151f74d",
28
- "@webiny/api-security": "0.0.0-unstable.97a151f74d",
29
- "@webiny/api-tenancy": "0.0.0-unstable.97a151f74d",
30
- "@webiny/api-upgrade": "0.0.0-unstable.97a151f74d",
31
- "@webiny/error": "0.0.0-unstable.97a151f74d",
32
- "@webiny/handler": "0.0.0-unstable.97a151f74d",
33
- "@webiny/handler-aws": "0.0.0-unstable.97a151f74d",
34
- "@webiny/handler-db": "0.0.0-unstable.97a151f74d",
35
- "@webiny/handler-graphql": "0.0.0-unstable.97a151f74d",
36
- "@webiny/plugins": "0.0.0-unstable.97a151f74d",
37
- "@webiny/pubsub": "0.0.0-unstable.97a151f74d",
38
- "@webiny/utils": "0.0.0-unstable.97a151f74d",
39
- "@webiny/validation": "0.0.0-unstable.97a151f74d",
24
+ "@webiny/api": "0.0.0-unstable.aad28a72ae",
25
+ "@webiny/api-file-manager": "0.0.0-unstable.aad28a72ae",
26
+ "@webiny/api-i18n": "0.0.0-unstable.aad28a72ae",
27
+ "@webiny/api-i18n-ddb": "0.0.0-unstable.aad28a72ae",
28
+ "@webiny/api-security": "0.0.0-unstable.aad28a72ae",
29
+ "@webiny/api-tenancy": "0.0.0-unstable.aad28a72ae",
30
+ "@webiny/api-upgrade": "0.0.0-unstable.aad28a72ae",
31
+ "@webiny/error": "0.0.0-unstable.aad28a72ae",
32
+ "@webiny/handler": "0.0.0-unstable.aad28a72ae",
33
+ "@webiny/handler-aws": "0.0.0-unstable.aad28a72ae",
34
+ "@webiny/handler-db": "0.0.0-unstable.aad28a72ae",
35
+ "@webiny/handler-graphql": "0.0.0-unstable.aad28a72ae",
36
+ "@webiny/plugins": "0.0.0-unstable.aad28a72ae",
37
+ "@webiny/pubsub": "0.0.0-unstable.aad28a72ae",
38
+ "@webiny/utils": "0.0.0-unstable.aad28a72ae",
39
+ "@webiny/validation": "0.0.0-unstable.aad28a72ae",
40
40
  "code-frame": "5.0.0",
41
41
  "commodo-fields-object": "1.0.6",
42
42
  "dataloader": "2.1.0",
@@ -53,11 +53,11 @@
53
53
  "@babel/cli": "^7.19.3",
54
54
  "@babel/core": "^7.19.3",
55
55
  "@babel/preset-env": "^7.19.4",
56
- "@webiny/api-security-so-ddb": "^0.0.0-unstable.97a151f74d",
57
- "@webiny/api-tenancy-so-ddb": "^0.0.0-unstable.97a151f74d",
58
- "@webiny/api-wcp": "^0.0.0-unstable.97a151f74d",
59
- "@webiny/cli": "^0.0.0-unstable.97a151f74d",
60
- "@webiny/project-utils": "^0.0.0-unstable.97a151f74d",
56
+ "@webiny/api-security-so-ddb": "^0.0.0-unstable.aad28a72ae",
57
+ "@webiny/api-tenancy-so-ddb": "^0.0.0-unstable.aad28a72ae",
58
+ "@webiny/api-wcp": "^0.0.0-unstable.aad28a72ae",
59
+ "@webiny/cli": "^0.0.0-unstable.aad28a72ae",
60
+ "@webiny/project-utils": "^0.0.0-unstable.aad28a72ae",
61
61
  "apollo-graphql": "^0.9.5",
62
62
  "get-yarn-workspaces": "^1.0.2",
63
63
  "graphql": "^15.7.2",
@@ -77,5 +77,5 @@
77
77
  "build": "yarn webiny run build",
78
78
  "watch": "yarn webiny run watch"
79
79
  },
80
- "gitHead": "97a151f74d8c5679323989fcc8cc7036be0f150e"
80
+ "gitHead": "aad28a72ae72f19b80a3196d2b4439399acc67ad"
81
81
  }
@@ -1,8 +1,8 @@
1
1
  import { Plugin } from "@webiny/plugins";
2
2
  import { CmsEntryValues, CmsModelFieldWithParent } from "../types";
3
3
  import { ConverterCollection } from "../utils/converters/ConverterCollection";
4
- export interface ConvertParams {
5
- field: CmsModelFieldWithParent;
4
+ export interface ConvertParams<F = CmsModelFieldWithParent> {
5
+ field: F;
6
6
  value: any;
7
7
  converterCollection: ConverterCollection;
8
8
  }
@@ -1 +1 @@
1
- {"version":3,"names":["CmsModelFieldConverterPlugin","Plugin"],"sources":["CmsModelFieldConverterPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport { CmsEntryValues, CmsModelFieldWithParent } from \"~/types\";\nimport { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\n\nexport interface ConvertParams {\n field: CmsModelFieldWithParent;\n value: any;\n converterCollection: ConverterCollection;\n}\n\nexport abstract class CmsModelFieldConverterPlugin extends Plugin {\n public static override type = \"cms.field.converter\";\n\n public abstract getFieldType(): string;\n\n public abstract convertToStorage(params: ConvertParams): CmsEntryValues;\n public abstract convertFromStorage(params: ConvertParams): CmsEntryValues;\n}\n"],"mappings":";;;;;;;;;;;AAAA;;AAUO,MAAeA,4BAAf,SAAoDC,eAApD,CAA2D;;;8BAA5CD,4B,UACY,qB"}
1
+ {"version":3,"names":["CmsModelFieldConverterPlugin","Plugin"],"sources":["CmsModelFieldConverterPlugin.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport { CmsEntryValues, CmsModelFieldWithParent } from \"~/types\";\nimport { ConverterCollection } from \"~/utils/converters/ConverterCollection\";\n\nexport interface ConvertParams<F = CmsModelFieldWithParent> {\n field: F;\n value: any;\n converterCollection: ConverterCollection;\n}\n\nexport abstract class CmsModelFieldConverterPlugin extends Plugin {\n public static override type = \"cms.field.converter\";\n\n public abstract getFieldType(): string;\n\n public abstract convertToStorage(params: ConvertParams): CmsEntryValues;\n public abstract convertFromStorage(params: ConvertParams): CmsEntryValues;\n}\n"],"mappings":";;;;;;;;;;;AAAA;;AAUO,MAAeA,4BAAf,SAAoDC,eAApD,CAA2D;;;8BAA5CD,4B,UACY,qB"}
package/types.d.ts CHANGED
@@ -135,7 +135,7 @@ export interface CmsModelField {
135
135
  * A type of the field.
136
136
  * We are defining our built-in fields, so people know which are available by the default.
137
137
  */
138
- type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | string;
138
+ type: "boolean" | "datetime" | "file" | "long-text" | "number" | "object" | "ref" | "rich-text" | "text" | "dynamicZone" | string;
139
139
  /**
140
140
  * A unique storage ID for storing actual values.
141
141
  * Must in form of a-zA-Z0-9@a-zA-Z0-9@a-zA-Z0-9.
@@ -233,6 +233,9 @@ export interface CmsModelDynamicZoneField extends CmsModelField {
233
233
  export interface CmsModelFieldWithParent extends CmsModelField {
234
234
  parent?: CmsModelFieldWithParent | null;
235
235
  }
236
+ export interface CmsModelDynamicZoneFieldWithParent extends CmsModelDynamicZoneField {
237
+ parent?: CmsModelDynamicZoneFieldWithParent | null;
238
+ }
236
239
  /**
237
240
  * A definition for dateTime field to show possible type of the field in settings.
238
241
  */
@@ -479,6 +482,21 @@ export interface CmsModelFieldToGraphQLCreateResolver<TField = CmsModelField> {
479
482
  typeResolvers: Resolvers<CmsContext>;
480
483
  } | false;
481
484
  }
485
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams<TField extends CmsModelField = CmsModelField> {
486
+ fields: TField[];
487
+ originalFields: TField[];
488
+ }
489
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsValidate {
490
+ (params: CmsModelFieldToGraphQLPluginValidateChildFieldsValidateParams): void;
491
+ }
492
+ export interface CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField extends CmsModelField = CmsModelField> {
493
+ field: TField;
494
+ originalField?: TField;
495
+ validate: CmsModelFieldToGraphQLPluginValidateChildFieldsValidate;
496
+ }
497
+ export interface CmsModelFieldToGraphQLPluginValidateChildFields<TField extends CmsModelField = CmsModelField> {
498
+ (params: CmsModelFieldToGraphQLPluginValidateChildFieldsParams<TField>): void;
499
+ }
482
500
  /**
483
501
  * @category Plugin
484
502
  * @category ModelField
@@ -736,6 +754,11 @@ export interface CmsModelFieldToGraphQLPlugin<TField extends CmsModelField = Cms
736
754
  */
737
755
  createResolver?: CmsModelFieldToGraphQLCreateResolver<TField>;
738
756
  };
757
+ /**
758
+ *
759
+ * @param field
760
+ */
761
+ validateChildFields?: CmsModelFieldToGraphQLPluginValidateChildFields<TField>;
739
762
  }
740
763
  /**
741
764
  * Check for content model locked field.
@@ -976,6 +999,15 @@ export interface OnGroupBeforeCreateTopicParams {
976
999
  export interface OnGroupAfterCreateTopicParams {
977
1000
  group: CmsGroup;
978
1001
  }
1002
+ /**
1003
+ * @category CmsGroup
1004
+ * @category Topic
1005
+ */
1006
+ export interface OnGroupCreateErrorTopicParams {
1007
+ input: CmsGroupCreateInput;
1008
+ group: CmsGroup;
1009
+ error: Error;
1010
+ }
979
1011
  /**
980
1012
  * @category CmsGroup
981
1013
  * @category Topic
@@ -992,6 +1024,16 @@ export interface OnGroupAfterUpdateTopicParams {
992
1024
  original: CmsGroup;
993
1025
  group: CmsGroup;
994
1026
  }
1027
+ /**
1028
+ * @category CmsGroup
1029
+ * @category Topic
1030
+ */
1031
+ export interface OnGroupUpdateErrorTopicParams {
1032
+ input: CmsGroupUpdateInput;
1033
+ original: CmsGroup;
1034
+ group: CmsGroup;
1035
+ error: Error;
1036
+ }
995
1037
  /**
996
1038
  * @category CmsGroup
997
1039
  * @category Topic
@@ -1006,6 +1048,14 @@ export interface OnGroupBeforeDeleteTopicParams {
1006
1048
  export interface OnGroupAfterDeleteTopicParams {
1007
1049
  group: CmsGroup;
1008
1050
  }
1051
+ /**
1052
+ * @category CmsGroup
1053
+ * @category Topic
1054
+ */
1055
+ export interface OnGroupDeleteErrorTopicParams {
1056
+ group: CmsGroup;
1057
+ error: Error;
1058
+ }
1009
1059
  /**
1010
1060
  * Cms Group in context.
1011
1061
  *
@@ -1069,10 +1119,13 @@ export interface CmsGroupContext {
1069
1119
  */
1070
1120
  onGroupBeforeCreate: Topic<OnGroupBeforeCreateTopicParams>;
1071
1121
  onGroupAfterCreate: Topic<OnGroupAfterCreateTopicParams>;
1122
+ onGroupCreateError: Topic<OnGroupCreateErrorTopicParams>;
1072
1123
  onGroupBeforeUpdate: Topic<OnGroupBeforeUpdateTopicParams>;
1073
1124
  onGroupAfterUpdate: Topic<OnGroupAfterUpdateTopicParams>;
1125
+ onGroupUpdateError: Topic<OnGroupUpdateErrorTopicParams>;
1074
1126
  onGroupBeforeDelete: Topic<OnGroupBeforeDeleteTopicParams>;
1075
1127
  onGroupAfterDelete: Topic<OnGroupAfterDeleteTopicParams>;
1128
+ onGroupDeleteError: Topic<OnGroupDeleteErrorTopicParams>;
1076
1129
  }
1077
1130
  /**
1078
1131
  * Definition for content model field validator.
@@ -1423,6 +1476,9 @@ export interface CmsModelManager {
1423
1476
  */
1424
1477
  delete: (id: string) => Promise<void>;
1425
1478
  }
1479
+ /**
1480
+ * Create
1481
+ */
1426
1482
  export interface OnModelBeforeCreateTopicParams {
1427
1483
  input: CmsModelCreateInput;
1428
1484
  model: CmsModel;
@@ -1431,6 +1487,14 @@ export interface OnModelAfterCreateTopicParams {
1431
1487
  input: CmsModelCreateInput;
1432
1488
  model: CmsModel;
1433
1489
  }
1490
+ export interface OnModelCreateErrorTopicParams {
1491
+ input: CmsModelCreateInput;
1492
+ model: CmsModel;
1493
+ error: Error;
1494
+ }
1495
+ /**
1496
+ * Create From / Clone
1497
+ */
1434
1498
  export interface OnModelBeforeCreateFromTopicParams {
1435
1499
  input: CmsModelCreateInput;
1436
1500
  original: CmsModel;
@@ -1441,6 +1505,15 @@ export interface OnModelAfterCreateFromTopicParams {
1441
1505
  original: CmsModel;
1442
1506
  model: CmsModel;
1443
1507
  }
1508
+ export interface OnModelCreateFromErrorParams {
1509
+ input: CmsModelCreateInput;
1510
+ original: CmsModel;
1511
+ model: CmsModel;
1512
+ error: Error;
1513
+ }
1514
+ /**
1515
+ * Update
1516
+ */
1444
1517
  export interface OnModelBeforeUpdateTopicParams {
1445
1518
  input: CmsModelUpdateInput;
1446
1519
  original: CmsModel;
@@ -1451,15 +1524,35 @@ export interface OnModelAfterUpdateTopicParams {
1451
1524
  original: CmsModel;
1452
1525
  model: CmsModel;
1453
1526
  }
1527
+ export interface OnModelUpdateErrorTopicParams {
1528
+ input: CmsModelUpdateInput;
1529
+ original: CmsModel;
1530
+ model: CmsModel;
1531
+ error: Error;
1532
+ }
1533
+ /**
1534
+ * Delete
1535
+ */
1454
1536
  export interface OnModelBeforeDeleteTopicParams {
1455
1537
  model: CmsModel;
1456
1538
  }
1457
1539
  export interface OnModelAfterDeleteTopicParams {
1458
1540
  model: CmsModel;
1459
1541
  }
1542
+ export interface OnModelDeleteErrorTopicParams {
1543
+ model: CmsModel;
1544
+ error: Error;
1545
+ }
1546
+ /**
1547
+ * Initialize
1548
+ */
1460
1549
  export interface OnModelInitializeParams {
1461
1550
  model: CmsModel;
1551
+ data: Record<string, any>;
1462
1552
  }
1553
+ /**
1554
+ *
1555
+ */
1463
1556
  export interface CmsModelUpdateDirectParams {
1464
1557
  model: CmsModel;
1465
1558
  original: CmsModel;
@@ -1506,7 +1599,7 @@ export interface CmsModelContext {
1506
1599
  *
1507
1600
  * Primary idea behind this is creating the index, for the code models, in the ES.
1508
1601
  */
1509
- initializeModel: (modelId: string) => Promise<boolean>;
1602
+ initializeModel: (modelId: string, data: Record<string, any>) => Promise<boolean>;
1510
1603
  /**
1511
1604
  * Get an instance of CmsModelManager for given content modelId.
1512
1605
  *
@@ -1567,12 +1660,16 @@ export interface CmsModelContext {
1567
1660
  */
1568
1661
  onModelBeforeCreate: Topic<OnModelBeforeCreateTopicParams>;
1569
1662
  onModelAfterCreate: Topic<OnModelAfterCreateTopicParams>;
1663
+ onModelCreateError: Topic<OnModelCreateErrorTopicParams>;
1570
1664
  onModelBeforeCreateFrom: Topic<OnModelBeforeCreateFromTopicParams>;
1571
1665
  onModelAfterCreateFrom: Topic<OnModelAfterCreateFromTopicParams>;
1666
+ onModelCreateFromError: Topic<OnModelCreateFromErrorParams>;
1572
1667
  onModelBeforeUpdate: Topic<OnModelBeforeUpdateTopicParams>;
1573
1668
  onModelAfterUpdate: Topic<OnModelAfterUpdateTopicParams>;
1669
+ onModelUpdateError: Topic<OnModelUpdateErrorTopicParams>;
1574
1670
  onModelBeforeDelete: Topic<OnModelBeforeDeleteTopicParams>;
1575
1671
  onModelAfterDelete: Topic<OnModelAfterDeleteTopicParams>;
1672
+ onModelDeleteError: Topic<OnModelDeleteErrorTopicParams>;
1576
1673
  onModelInitialize: Topic<OnModelInitializeParams>;
1577
1674
  }
1578
1675
  /**
@@ -1749,6 +1846,7 @@ export interface OnEntryRevisionAfterCreateTopicParams {
1749
1846
  export interface OnEntryCreateRevisionErrorTopicParams {
1750
1847
  error: Error;
1751
1848
  input: CreateFromCmsEntryInput;
1849
+ original: CmsEntry;
1752
1850
  entry: CmsEntry;
1753
1851
  model: CmsModel;
1754
1852
  }
package/types.js CHANGED
@@ -191,6 +191,21 @@ exports.CONTENT_ENTRY_STATUS = void 0;
191
191
  * @category Topic
192
192
  */
193
193
 
194
+ /**
195
+ * @category CmsGroup
196
+ * @category Topic
197
+ */
198
+
199
+ /**
200
+ * @category CmsGroup
201
+ * @category Topic
202
+ */
203
+
204
+ /**
205
+ * @category CmsGroup
206
+ * @category Topic
207
+ */
208
+
194
209
  /**
195
210
  * Cms Group in context.
196
211
  *
@@ -271,6 +286,30 @@ exports.CONTENT_ENTRY_STATUS = void 0;
271
286
  * @category CmsModel
272
287
  */
273
288
 
289
+ /**
290
+ * Create
291
+ */
292
+
293
+ /**
294
+ * Create From / Clone
295
+ */
296
+
297
+ /**
298
+ * Update
299
+ */
300
+
301
+ /**
302
+ * Delete
303
+ */
304
+
305
+ /**
306
+ * Initialize
307
+ */
308
+
309
+ /**
310
+ *
311
+ */
312
+
274
313
  /**
275
314
  * Cms Model in the context.
276
315
  *