@webiny/api-headless-cms 0.0.0-mt-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/LICENSE +21 -0
- package/README.md +73 -0
- package/content/contextSetup.d.ts +4 -0
- package/content/contextSetup.js +65 -0
- package/content/graphQLHandlerFactory.d.ts +5 -0
- package/content/graphQLHandlerFactory.js +173 -0
- package/content/plugins/CmsGroupPlugin.d.ts +11 -0
- package/content/plugins/CmsGroupPlugin.js +24 -0
- package/content/plugins/CmsModelPlugin.d.ts +11 -0
- package/content/plugins/CmsModelPlugin.js +24 -0
- package/content/plugins/buildSchemaPlugins.d.ts +7 -0
- package/content/plugins/buildSchemaPlugins.js +29 -0
- package/content/plugins/crud/contentEntry/afterDelete.d.ts +7 -0
- package/content/plugins/crud/contentEntry/afterDelete.js +41 -0
- package/content/plugins/crud/contentEntry/beforeCreate.d.ts +7 -0
- package/content/plugins/crud/contentEntry/beforeCreate.js +28 -0
- package/content/plugins/crud/contentEntry/beforeUpdate.d.ts +7 -0
- package/content/plugins/crud/contentEntry/beforeUpdate.js +28 -0
- package/content/plugins/crud/contentEntry/entryDataValidation.d.ts +4 -0
- package/content/plugins/crud/contentEntry/entryDataValidation.js +188 -0
- package/content/plugins/crud/contentEntry/markLockedFields.d.ts +12 -0
- package/content/plugins/crud/contentEntry/markLockedFields.js +117 -0
- package/content/plugins/crud/contentEntry.crud.d.ts +17 -0
- package/content/plugins/crud/contentEntry.crud.js +931 -0
- package/content/plugins/crud/contentModel/afterCreate.d.ts +7 -0
- package/content/plugins/crud/contentModel/afterCreate.js +18 -0
- package/content/plugins/crud/contentModel/afterDelete.d.ts +7 -0
- package/content/plugins/crud/contentModel/afterDelete.js +18 -0
- package/content/plugins/crud/contentModel/afterUpdate.d.ts +7 -0
- package/content/plugins/crud/contentModel/afterUpdate.js +18 -0
- package/content/plugins/crud/contentModel/beforeCreate.d.ts +9 -0
- package/content/plugins/crud/contentModel/beforeCreate.js +146 -0
- package/content/plugins/crud/contentModel/beforeDelete.d.ts +9 -0
- package/content/plugins/crud/contentModel/beforeDelete.js +56 -0
- package/content/plugins/crud/contentModel/beforeUpdate.d.ts +9 -0
- package/content/plugins/crud/contentModel/beforeUpdate.js +128 -0
- package/content/plugins/crud/contentModel/contentModelManagerFactory.d.ts +2 -0
- package/content/plugins/crud/contentModel/contentModelManagerFactory.js +29 -0
- package/content/plugins/crud/contentModel/createFieldModels.d.ts +2 -0
- package/content/plugins/crud/contentModel/createFieldModels.js +22 -0
- package/content/plugins/crud/contentModel/idValidation.d.ts +2 -0
- package/content/plugins/crud/contentModel/idValidation.js +22 -0
- package/content/plugins/crud/contentModel/models.d.ts +3 -0
- package/content/plugins/crud/contentModel/models.js +141 -0
- package/content/plugins/crud/contentModel/validateLayout.d.ts +2 -0
- package/content/plugins/crud/contentModel/validateLayout.js +38 -0
- package/content/plugins/crud/contentModel.crud.d.ts +12 -0
- package/content/plugins/crud/contentModel.crud.js +425 -0
- package/content/plugins/crud/contentModelGroup/beforeCreate.d.ts +9 -0
- package/content/plugins/crud/contentModelGroup/beforeCreate.js +66 -0
- package/content/plugins/crud/contentModelGroup/beforeDelete.d.ts +9 -0
- package/content/plugins/crud/contentModelGroup/beforeDelete.js +48 -0
- package/content/plugins/crud/contentModelGroup/beforeUpdate.d.ts +8 -0
- package/content/plugins/crud/contentModelGroup/beforeUpdate.js +28 -0
- package/content/plugins/crud/contentModelGroup.crud.d.ts +12 -0
- package/content/plugins/crud/contentModelGroup.crud.js +351 -0
- package/content/plugins/crud/index.d.ts +6 -0
- package/content/plugins/crud/index.js +100 -0
- package/content/plugins/graphqlFields/boolean.d.ts +3 -0
- package/content/plugins/graphqlFields/boolean.js +69 -0
- package/content/plugins/graphqlFields/datetime.d.ts +3 -0
- package/content/plugins/graphqlFields/datetime.js +83 -0
- package/content/plugins/graphqlFields/file.d.ts +3 -0
- package/content/plugins/graphqlFields/file.js +49 -0
- package/content/plugins/graphqlFields/index.d.ts +2 -0
- package/content/plugins/graphqlFields/index.js +30 -0
- package/content/plugins/graphqlFields/longText.d.ts +3 -0
- package/content/plugins/graphqlFields/longText.js +62 -0
- package/content/plugins/graphqlFields/number.d.ts +3 -0
- package/content/plugins/graphqlFields/number.js +75 -0
- package/content/plugins/graphqlFields/object.d.ts +3 -0
- package/content/plugins/graphqlFields/object.js +180 -0
- package/content/plugins/graphqlFields/ref.d.ts +3 -0
- package/content/plugins/graphqlFields/ref.js +205 -0
- package/content/plugins/graphqlFields/richText.d.ts +3 -0
- package/content/plugins/graphqlFields/richText.js +55 -0
- package/content/plugins/graphqlFields/text.d.ts +3 -0
- package/content/plugins/graphqlFields/text.js +72 -0
- package/content/plugins/internalSecurity/InternalAuthenticationPlugin.d.ts +8 -0
- package/content/plugins/internalSecurity/InternalAuthenticationPlugin.js +54 -0
- package/content/plugins/internalSecurity/InternalAuthorizationPlugin.d.ts +7 -0
- package/content/plugins/internalSecurity/InternalAuthorizationPlugin.js +35 -0
- package/content/plugins/modelManager/DefaultCmsModelManager.d.ts +15 -0
- package/content/plugins/modelManager/DefaultCmsModelManager.js +62 -0
- package/content/plugins/modelManager/index.d.ts +3 -0
- package/content/plugins/modelManager/index.js +20 -0
- package/content/plugins/schema/baseSchema.d.ts +4 -0
- package/content/plugins/schema/baseSchema.js +98 -0
- package/content/plugins/schema/contentEntries.d.ts +4 -0
- package/content/plugins/schema/contentEntries.js +166 -0
- package/content/plugins/schema/contentModelGroups.d.ts +4 -0
- package/content/plugins/schema/contentModelGroups.js +153 -0
- package/content/plugins/schema/contentModels.d.ts +4 -0
- package/content/plugins/schema/contentModels.js +225 -0
- package/content/plugins/schema/createFieldResolvers.d.ts +19 -0
- package/content/plugins/schema/createFieldResolvers.js +92 -0
- package/content/plugins/schema/createManageResolvers.d.ts +11 -0
- package/content/plugins/schema/createManageResolvers.js +135 -0
- package/content/plugins/schema/createManageSDL.d.ts +9 -0
- package/content/plugins/schema/createManageSDL.js +153 -0
- package/content/plugins/schema/createPreviewResolvers.d.ts +10 -0
- package/content/plugins/schema/createPreviewResolvers.js +55 -0
- package/content/plugins/schema/createReadResolvers.d.ts +10 -0
- package/content/plugins/schema/createReadResolvers.js +55 -0
- package/content/plugins/schema/createReadSDL.d.ts +9 -0
- package/content/plugins/schema/createReadSDL.js +96 -0
- package/content/plugins/schema/resolvers/commonFieldResolvers.d.ts +6 -0
- package/content/plugins/schema/resolvers/commonFieldResolvers.js +14 -0
- package/content/plugins/schema/resolvers/manage/resolveCreate.d.ts +6 -0
- package/content/plugins/schema/resolvers/manage/resolveCreate.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveCreateFrom.d.ts +7 -0
- package/content/plugins/schema/resolvers/manage/resolveCreateFrom.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveDelete.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveDelete.js +30 -0
- package/content/plugins/schema/resolvers/manage/resolveGet.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveGet.js +21 -0
- package/content/plugins/schema/resolvers/manage/resolveGetByIds.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveGetByIds.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveGetRevisions.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveGetRevisions.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveList.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveList.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolvePublish.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolvePublish.js +21 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestChanges.d.ts +6 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestChanges.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestReview.d.ts +6 -0
- package/content/plugins/schema/resolvers/manage/resolveRequestReview.js +23 -0
- package/content/plugins/schema/resolvers/manage/resolveUnpublish.d.ts +2 -0
- package/content/plugins/schema/resolvers/manage/resolveUnpublish.js +21 -0
- package/content/plugins/schema/resolvers/manage/resolveUpdate.d.ts +7 -0
- package/content/plugins/schema/resolvers/manage/resolveUpdate.js +23 -0
- package/content/plugins/schema/resolvers/preview/resolveGet.d.ts +2 -0
- package/content/plugins/schema/resolvers/preview/resolveGet.js +38 -0
- package/content/plugins/schema/resolvers/preview/resolveList.d.ts +2 -0
- package/content/plugins/schema/resolvers/preview/resolveList.js +23 -0
- package/content/plugins/schema/resolvers/read/resolveGet.d.ts +2 -0
- package/content/plugins/schema/resolvers/read/resolveGet.js +38 -0
- package/content/plugins/schema/resolvers/read/resolveList.d.ts +2 -0
- package/content/plugins/schema/resolvers/read/resolveList.js +23 -0
- package/content/plugins/schema/schemaPlugins.d.ts +3 -0
- package/content/plugins/schema/schemaPlugins.js +92 -0
- package/content/plugins/storage/StorageTransformPlugin.d.ts +30 -0
- package/content/plugins/storage/StorageTransformPlugin.js +36 -0
- package/content/plugins/storage/default.d.ts +3 -0
- package/content/plugins/storage/default.js +28 -0
- package/content/plugins/storage/object.d.ts +3 -0
- package/content/plugins/storage/object.js +119 -0
- package/content/plugins/utils/createTypeName.d.ts +3 -0
- package/content/plugins/utils/createTypeName.js +28 -0
- package/content/plugins/utils/entryStorage.d.ts +17 -0
- package/content/plugins/utils/entryStorage.js +125 -0
- package/content/plugins/utils/getEntryTitle.d.ts +2 -0
- package/content/plugins/utils/getEntryTitle.js +42 -0
- package/content/plugins/utils/getSchemaFromFieldPlugins.d.ts +11 -0
- package/content/plugins/utils/getSchemaFromFieldPlugins.js +30 -0
- package/content/plugins/utils/pluralizedTypeName.d.ts +1 -0
- package/content/plugins/utils/pluralizedTypeName.js +26 -0
- package/content/plugins/utils/renderFields.d.ts +16 -0
- package/content/plugins/utils/renderFields.js +51 -0
- package/content/plugins/utils/renderGetFilterFields.d.ts +9 -0
- package/content/plugins/utils/renderGetFilterFields.js +41 -0
- package/content/plugins/utils/renderInputFields.d.ts +14 -0
- package/content/plugins/utils/renderInputFields.js +53 -0
- package/content/plugins/utils/renderListFilterFields.d.ts +10 -0
- package/content/plugins/utils/renderListFilterFields.js +39 -0
- package/content/plugins/utils/renderSortEnum.d.ts +9 -0
- package/content/plugins/utils/renderSortEnum.js +32 -0
- package/content/plugins/validators/dateGte.d.ts +3 -0
- package/content/plugins/validators/dateGte.js +37 -0
- package/content/plugins/validators/dateLte.d.ts +3 -0
- package/content/plugins/validators/dateLte.js +37 -0
- package/content/plugins/validators/gte.d.ts +3 -0
- package/content/plugins/validators/gte.js +32 -0
- package/content/plugins/validators/in.d.ts +3 -0
- package/content/plugins/validators/in.js +32 -0
- package/content/plugins/validators/index.d.ts +2 -0
- package/content/plugins/validators/index.js +36 -0
- package/content/plugins/validators/lte.d.ts +3 -0
- package/content/plugins/validators/lte.js +32 -0
- package/content/plugins/validators/maxLength.d.ts +3 -0
- package/content/plugins/validators/maxLength.js +32 -0
- package/content/plugins/validators/minLength.d.ts +3 -0
- package/content/plugins/validators/minLength.js +32 -0
- package/content/plugins/validators/pattern.d.ts +3 -0
- package/content/plugins/validators/pattern.js +47 -0
- package/content/plugins/validators/patternPlugins/email.d.ts +3 -0
- package/content/plugins/validators/patternPlugins/email.js +17 -0
- package/content/plugins/validators/patternPlugins/index.d.ts +2 -0
- package/content/plugins/validators/patternPlugins/index.js +19 -0
- package/content/plugins/validators/patternPlugins/lowerCase.d.ts +3 -0
- package/content/plugins/validators/patternPlugins/lowerCase.js +17 -0
- package/content/plugins/validators/patternPlugins/upperCase.d.ts +3 -0
- package/content/plugins/validators/patternPlugins/upperCase.js +17 -0
- package/content/plugins/validators/patternPlugins/url.d.ts +3 -0
- package/content/plugins/validators/patternPlugins/url.js +17 -0
- package/content/plugins/validators/required.d.ts +3 -0
- package/content/plugins/validators/required.js +25 -0
- package/content/plugins/validators/timeGte.d.ts +3 -0
- package/content/plugins/validators/timeGte.js +32 -0
- package/content/plugins/validators/timeLte.d.ts +3 -0
- package/content/plugins/validators/timeLte.js +32 -0
- package/index.d.ts +12 -0
- package/index.js +66 -0
- package/migrateCMSPermissions.d.ts +17 -0
- package/migrateCMSPermissions.js +193 -0
- package/package.json +80 -0
- package/plugins/context.d.ts +4 -0
- package/plugins/context.js +34 -0
- package/plugins/crud/index.d.ts +6 -0
- package/plugins/crud/index.js +100 -0
- package/plugins/crud/settings.crud.d.ts +10 -0
- package/plugins/crud/settings.crud.js +93 -0
- package/plugins/crud/system.crud.d.ts +10 -0
- package/plugins/crud/system.crud.js +182 -0
- package/plugins/graphql/system.d.ts +17 -0
- package/plugins/graphql/system.js +72 -0
- package/plugins/graphql.d.ts +2 -0
- package/plugins/graphql.js +79 -0
- package/plugins/upgrades/index.d.ts +2 -0
- package/plugins/upgrades/index.js +14 -0
- package/plugins/upgrades/v5.5.0/helpers.d.ts +6 -0
- package/plugins/upgrades/v5.5.0/helpers.js +10 -0
- package/plugins/upgrades/v5.5.0/index.d.ts +4 -0
- package/plugins/upgrades/v5.5.0/index.js +129 -0
- package/transformers.d.ts +2 -0
- package/transformers.js +25 -0
- package/types.d.ts +2149 -0
- package/types.js +366 -0
- package/utils.d.ts +25 -0
- package/utils.js +251 -0
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
9
|
+
|
|
10
|
+
var _GraphQLSchemaPlugin = require("@webiny/handler-graphql/plugins/GraphQLSchemaPlugin");
|
|
11
|
+
|
|
12
|
+
var _CmsModelPlugin = require("../CmsModelPlugin");
|
|
13
|
+
|
|
14
|
+
const plugin = context => {
|
|
15
|
+
const resolvers = {
|
|
16
|
+
Query: {
|
|
17
|
+
getContentModel: async (_, args, context) => {
|
|
18
|
+
try {
|
|
19
|
+
const model = await context.cms.getModel(args.modelId);
|
|
20
|
+
return new _handlerGraphql.Response(model);
|
|
21
|
+
} catch (e) {
|
|
22
|
+
return new _handlerGraphql.ErrorResponse(e);
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
listContentModels: async (_, __, context) => {
|
|
26
|
+
try {
|
|
27
|
+
const model = await context.cms.listModels();
|
|
28
|
+
return new _handlerGraphql.Response(model);
|
|
29
|
+
} catch (e) {
|
|
30
|
+
return new _handlerGraphql.ErrorResponse(e);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
CmsContentModel: {
|
|
35
|
+
plugin: async (model, _, context) => {
|
|
36
|
+
const modelPlugin = context.plugins.byType(_CmsModelPlugin.CmsModelPlugin.type).find(item => item.contentModel.modelId === model.modelId);
|
|
37
|
+
return Boolean(modelPlugin);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
let manageSchema = "";
|
|
42
|
+
|
|
43
|
+
if (context.cms.MANAGE) {
|
|
44
|
+
resolvers.Mutation = {
|
|
45
|
+
createContentModel: async (_, args, context) => {
|
|
46
|
+
try {
|
|
47
|
+
const model = await context.cms.createModel(args.data);
|
|
48
|
+
return new _handlerGraphql.Response(model);
|
|
49
|
+
} catch (e) {
|
|
50
|
+
return new _handlerGraphql.ErrorResponse(e);
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
updateContentModel: async (_, args, context) => {
|
|
54
|
+
const {
|
|
55
|
+
modelId,
|
|
56
|
+
data
|
|
57
|
+
} = args;
|
|
58
|
+
|
|
59
|
+
try {
|
|
60
|
+
const model = await context.cms.updateModel(modelId, data);
|
|
61
|
+
return new _handlerGraphql.Response(model);
|
|
62
|
+
} catch (e) {
|
|
63
|
+
return new _handlerGraphql.ErrorResponse(e);
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
deleteContentModel: async (_, args, context) => {
|
|
67
|
+
const {
|
|
68
|
+
modelId
|
|
69
|
+
} = args;
|
|
70
|
+
|
|
71
|
+
try {
|
|
72
|
+
await context.cms.deleteModel(modelId);
|
|
73
|
+
return new _handlerGraphql.Response(true);
|
|
74
|
+
} catch (e) {
|
|
75
|
+
return new _handlerGraphql.ErrorResponse(e);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
manageSchema =
|
|
80
|
+
/* GraphQL */
|
|
81
|
+
`
|
|
82
|
+
input CmsPredefinedValueInput {
|
|
83
|
+
label: String!
|
|
84
|
+
value: String!
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
input CmsPredefinedValuesInput {
|
|
88
|
+
enabled: Boolean
|
|
89
|
+
values: [CmsPredefinedValueInput]
|
|
90
|
+
}
|
|
91
|
+
input CmsFieldRendererInput {
|
|
92
|
+
name: String
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
input CmsFieldValidationInput {
|
|
96
|
+
name: String!
|
|
97
|
+
message: String
|
|
98
|
+
settings: JSON
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
input CmsContentModelFieldInput {
|
|
102
|
+
id: ID!
|
|
103
|
+
label: String!
|
|
104
|
+
helpText: String
|
|
105
|
+
placeholderText: String
|
|
106
|
+
fieldId: String!
|
|
107
|
+
type: String!
|
|
108
|
+
multipleValues: Boolean
|
|
109
|
+
predefinedValues: CmsPredefinedValuesInput
|
|
110
|
+
renderer: CmsFieldRendererInput
|
|
111
|
+
validation: [CmsFieldValidationInput]
|
|
112
|
+
listValidation: [CmsFieldValidationInput]
|
|
113
|
+
settings: JSON
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
input CmsContentModelCreateInput {
|
|
117
|
+
name: String!
|
|
118
|
+
modelId: String
|
|
119
|
+
group: RefInput!
|
|
120
|
+
description: String
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
input CmsContentModelUpdateInput {
|
|
124
|
+
name: String
|
|
125
|
+
group: RefInput
|
|
126
|
+
description: String
|
|
127
|
+
layout: [[ID!]!]!
|
|
128
|
+
fields: [CmsContentModelFieldInput!]!
|
|
129
|
+
titleFieldId: String
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
extend type Mutation {
|
|
133
|
+
createContentModel(data: CmsContentModelCreateInput!): CmsContentModelResponse
|
|
134
|
+
|
|
135
|
+
updateContentModel(
|
|
136
|
+
modelId: ID!
|
|
137
|
+
data: CmsContentModelUpdateInput!
|
|
138
|
+
): CmsContentModelResponse
|
|
139
|
+
|
|
140
|
+
deleteContentModel(modelId: ID!): CmsDeleteResponse
|
|
141
|
+
}
|
|
142
|
+
`;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
return new _GraphQLSchemaPlugin.GraphQLSchemaPlugin({
|
|
146
|
+
typeDefs:
|
|
147
|
+
/* GraphQL */
|
|
148
|
+
`
|
|
149
|
+
type CmsFieldValidation {
|
|
150
|
+
name: String!
|
|
151
|
+
message: String
|
|
152
|
+
settings: JSON
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
type CmsFieldRenderer {
|
|
156
|
+
name: String
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
type CmsPredefinedValue {
|
|
160
|
+
label: String
|
|
161
|
+
value: String
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
type CmsPredefinedValues {
|
|
165
|
+
enabled: Boolean
|
|
166
|
+
values: [CmsPredefinedValue]
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
type CmsContentModelField {
|
|
170
|
+
id: ID!
|
|
171
|
+
fieldId: String!
|
|
172
|
+
label: String!
|
|
173
|
+
helpText: String
|
|
174
|
+
placeholderText: String
|
|
175
|
+
type: String!
|
|
176
|
+
multipleValues: Boolean
|
|
177
|
+
predefinedValues: CmsPredefinedValues
|
|
178
|
+
renderer: CmsFieldRenderer
|
|
179
|
+
validation: [CmsFieldValidation!]
|
|
180
|
+
listValidation: [CmsFieldValidation!]
|
|
181
|
+
settings: JSON
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
type CmsContentModel {
|
|
185
|
+
name: String!
|
|
186
|
+
modelId: String!
|
|
187
|
+
description: String
|
|
188
|
+
group: CmsContentModelGroup!
|
|
189
|
+
createdOn: DateTime
|
|
190
|
+
savedOn: DateTime
|
|
191
|
+
createdBy: CmsCreatedBy
|
|
192
|
+
fields: [CmsContentModelField!]!
|
|
193
|
+
lockedFields: [JSON]
|
|
194
|
+
layout: [[String!]!]!
|
|
195
|
+
titleFieldId: String
|
|
196
|
+
|
|
197
|
+
# Returns true if the content model is registered via a plugin.
|
|
198
|
+
plugin: Boolean!
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
type CmsContentModelResponse {
|
|
202
|
+
data: CmsContentModel
|
|
203
|
+
error: CmsError
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
type CmsContentModelListResponse {
|
|
207
|
+
data: [CmsContentModel]
|
|
208
|
+
meta: CmsListMeta
|
|
209
|
+
error: CmsError
|
|
210
|
+
}
|
|
211
|
+
|
|
212
|
+
extend type Query {
|
|
213
|
+
getContentModel(modelId: ID!, where: JSON, sort: String): CmsContentModelResponse
|
|
214
|
+
|
|
215
|
+
listContentModels: CmsContentModelListResponse
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
${manageSchema}
|
|
219
|
+
`,
|
|
220
|
+
resolvers
|
|
221
|
+
});
|
|
222
|
+
};
|
|
223
|
+
|
|
224
|
+
var _default = plugin;
|
|
225
|
+
exports.default = _default;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CmsModelField } from "../../../types";
|
|
2
|
+
import { Resolvers } from "@webiny/handler-graphql/types";
|
|
3
|
+
interface CreateFieldResolvers {
|
|
4
|
+
graphQLType: string;
|
|
5
|
+
fields: CmsModelField[];
|
|
6
|
+
isRoot: boolean;
|
|
7
|
+
extraResolvers?: Resolvers<any>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* We use a factory to avoid passing the parameters for recursive invocations.
|
|
11
|
+
* This way they will always be in the function scope and we can only pass "fields".
|
|
12
|
+
*/
|
|
13
|
+
export declare function createFieldResolversFactory({ endpointType, models, model, fieldTypePlugins }: {
|
|
14
|
+
endpointType: any;
|
|
15
|
+
models: any;
|
|
16
|
+
model: any;
|
|
17
|
+
fieldTypePlugins: any;
|
|
18
|
+
}): (params: CreateFieldResolvers) => {};
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createFieldResolversFactory = createFieldResolversFactory;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _get = _interopRequireDefault(require("lodash/get"));
|
|
13
|
+
|
|
14
|
+
var _set = _interopRequireDefault(require("lodash/set"));
|
|
15
|
+
|
|
16
|
+
var _entryStorage = require("../utils/entryStorage");
|
|
17
|
+
|
|
18
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
19
|
+
|
|
20
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* We use a factory to avoid passing the parameters for recursive invocations.
|
|
24
|
+
* This way they will always be in the function scope and we can only pass "fields".
|
|
25
|
+
*/
|
|
26
|
+
function createFieldResolversFactory({
|
|
27
|
+
endpointType,
|
|
28
|
+
models,
|
|
29
|
+
model,
|
|
30
|
+
fieldTypePlugins
|
|
31
|
+
}) {
|
|
32
|
+
return function createFieldResolvers(params) {
|
|
33
|
+
const {
|
|
34
|
+
graphQLType,
|
|
35
|
+
fields,
|
|
36
|
+
isRoot = false,
|
|
37
|
+
extraResolvers = {}
|
|
38
|
+
} = params;
|
|
39
|
+
|
|
40
|
+
const fieldResolvers = _objectSpread({}, extraResolvers);
|
|
41
|
+
|
|
42
|
+
const typeResolvers = {};
|
|
43
|
+
|
|
44
|
+
for (const field of fields) {
|
|
45
|
+
if (!fieldTypePlugins[field.type]) {
|
|
46
|
+
continue;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
const createResolver = (0, _get.default)(fieldTypePlugins, `${field.type}.${endpointType}.createResolver`);
|
|
50
|
+
let resolver;
|
|
51
|
+
const fieldResolver = createResolver ? createResolver({
|
|
52
|
+
graphQLType,
|
|
53
|
+
models,
|
|
54
|
+
model,
|
|
55
|
+
field,
|
|
56
|
+
createFieldResolvers
|
|
57
|
+
}) : null;
|
|
58
|
+
|
|
59
|
+
if (typeof fieldResolver === "function") {
|
|
60
|
+
resolver = fieldResolver;
|
|
61
|
+
} else if (fieldResolver !== null) {
|
|
62
|
+
resolver = fieldResolver.resolver;
|
|
63
|
+
Object.assign(typeResolvers, fieldResolver.typeResolvers);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const {
|
|
67
|
+
fieldId
|
|
68
|
+
} = field;
|
|
69
|
+
|
|
70
|
+
fieldResolvers[fieldId] = async (parent, args, context, info) => {
|
|
71
|
+
// Get transformed value (eg. data decompression)
|
|
72
|
+
const transformedValue = await (0, _entryStorage.entryFieldFromStorageTransform)({
|
|
73
|
+
context,
|
|
74
|
+
model,
|
|
75
|
+
field,
|
|
76
|
+
value: isRoot ? parent.values[fieldId] : parent[fieldId]
|
|
77
|
+
});
|
|
78
|
+
(0, _set.default)(isRoot ? parent.values : parent, fieldId, transformedValue);
|
|
79
|
+
|
|
80
|
+
if (!resolver) {
|
|
81
|
+
return isRoot ? parent.values[fieldId] : parent[fieldId];
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
return await resolver(isRoot ? parent.values : parent, args, context, info);
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
return _objectSpread({
|
|
89
|
+
[graphQLType]: fieldResolvers
|
|
90
|
+
}, typeResolvers);
|
|
91
|
+
};
|
|
92
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CmsModel, CmsFieldTypePlugins, CmsContext } from "../../../types";
|
|
2
|
+
interface CreateManageResolvers {
|
|
3
|
+
(params: {
|
|
4
|
+
models: CmsModel[];
|
|
5
|
+
model: CmsModel;
|
|
6
|
+
context: CmsContext;
|
|
7
|
+
fieldTypePlugins: CmsFieldTypePlugins;
|
|
8
|
+
}): any;
|
|
9
|
+
}
|
|
10
|
+
export declare const createManageResolvers: CreateManageResolvers;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createManageResolvers = void 0;
|
|
9
|
+
|
|
10
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
+
|
|
12
|
+
var _commonFieldResolvers = require("./resolvers/commonFieldResolvers");
|
|
13
|
+
|
|
14
|
+
var _resolveGet = require("./resolvers/manage/resolveGet");
|
|
15
|
+
|
|
16
|
+
var _resolveList = require("./resolvers/manage/resolveList");
|
|
17
|
+
|
|
18
|
+
var _resolveGetRevisions = require("./resolvers/manage/resolveGetRevisions");
|
|
19
|
+
|
|
20
|
+
var _resolveGetByIds = require("./resolvers/manage/resolveGetByIds");
|
|
21
|
+
|
|
22
|
+
var _resolveCreate = require("./resolvers/manage/resolveCreate");
|
|
23
|
+
|
|
24
|
+
var _resolveUpdate = require("./resolvers/manage/resolveUpdate");
|
|
25
|
+
|
|
26
|
+
var _resolveRequestReview = require("./resolvers/manage/resolveRequestReview");
|
|
27
|
+
|
|
28
|
+
var _resolveRequestChanges = require("./resolvers/manage/resolveRequestChanges");
|
|
29
|
+
|
|
30
|
+
var _resolveDelete = require("./resolvers/manage/resolveDelete");
|
|
31
|
+
|
|
32
|
+
var _resolvePublish = require("./resolvers/manage/resolvePublish");
|
|
33
|
+
|
|
34
|
+
var _resolveUnpublish = require("./resolvers/manage/resolveUnpublish");
|
|
35
|
+
|
|
36
|
+
var _resolveCreateFrom = require("./resolvers/manage/resolveCreateFrom");
|
|
37
|
+
|
|
38
|
+
var _createFieldResolvers = require("./createFieldResolvers");
|
|
39
|
+
|
|
40
|
+
var _createTypeName = require("../utils/createTypeName");
|
|
41
|
+
|
|
42
|
+
var _pluralizedTypeName = require("../utils/pluralizedTypeName");
|
|
43
|
+
|
|
44
|
+
var _getEntryTitle = require("../utils/getEntryTitle");
|
|
45
|
+
|
|
46
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
47
|
+
|
|
48
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
49
|
+
|
|
50
|
+
const createManageResolvers = ({
|
|
51
|
+
models,
|
|
52
|
+
model,
|
|
53
|
+
fieldTypePlugins
|
|
54
|
+
}) => {
|
|
55
|
+
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
56
|
+
const mTypeName = (0, _createTypeName.createManageTypeName)(typeName);
|
|
57
|
+
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
58
|
+
endpointType: "manage",
|
|
59
|
+
models,
|
|
60
|
+
model,
|
|
61
|
+
fieldTypePlugins
|
|
62
|
+
});
|
|
63
|
+
return _objectSpread(_objectSpread({
|
|
64
|
+
Query: {
|
|
65
|
+
[`get${typeName}`]: (0, _resolveGet.resolveGet)({
|
|
66
|
+
model
|
|
67
|
+
}),
|
|
68
|
+
[`get${typeName}Revisions`]: (0, _resolveGetRevisions.resolveGetRevisions)({
|
|
69
|
+
model
|
|
70
|
+
}),
|
|
71
|
+
[`get${(0, _pluralizedTypeName.pluralizedTypeName)(typeName)}ByIds`]: (0, _resolveGetByIds.resolveGetByIds)({
|
|
72
|
+
model
|
|
73
|
+
}),
|
|
74
|
+
[`list${(0, _pluralizedTypeName.pluralizedTypeName)(typeName)}`]: (0, _resolveList.resolveList)({
|
|
75
|
+
model
|
|
76
|
+
})
|
|
77
|
+
},
|
|
78
|
+
Mutation: {
|
|
79
|
+
[`create${typeName}`]: (0, _resolveCreate.resolveCreate)({
|
|
80
|
+
model
|
|
81
|
+
}),
|
|
82
|
+
[`update${typeName}`]: (0, _resolveUpdate.resolveUpdate)({
|
|
83
|
+
model
|
|
84
|
+
}),
|
|
85
|
+
[`delete${typeName}`]: (0, _resolveDelete.resolveDelete)({
|
|
86
|
+
model
|
|
87
|
+
}),
|
|
88
|
+
[`publish${typeName}`]: (0, _resolvePublish.resolvePublish)({
|
|
89
|
+
model
|
|
90
|
+
}),
|
|
91
|
+
[`unpublish${typeName}`]: (0, _resolveUnpublish.resolveUnpublish)({
|
|
92
|
+
model
|
|
93
|
+
}),
|
|
94
|
+
[`create${typeName}From`]: (0, _resolveCreateFrom.resolveCreateFrom)({
|
|
95
|
+
model
|
|
96
|
+
}),
|
|
97
|
+
[`request${typeName}Review`]: (0, _resolveRequestReview.resolveRequestReview)({
|
|
98
|
+
model
|
|
99
|
+
}),
|
|
100
|
+
[`request${typeName}Changes`]: (0, _resolveRequestChanges.resolveRequestChanges)({
|
|
101
|
+
model
|
|
102
|
+
})
|
|
103
|
+
}
|
|
104
|
+
}, createFieldResolvers({
|
|
105
|
+
graphQLType: mTypeName,
|
|
106
|
+
fields: model.fields,
|
|
107
|
+
isRoot: true,
|
|
108
|
+
// These are extra fields we want to apply to field resolvers of "gqlType"
|
|
109
|
+
extraResolvers: _objectSpread(_objectSpread({}, (0, _commonFieldResolvers.commonFieldResolvers)()), {}, {
|
|
110
|
+
meta(entry) {
|
|
111
|
+
return entry;
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
})
|
|
115
|
+
})), {}, {
|
|
116
|
+
[`${mTypeName}Meta`]: {
|
|
117
|
+
title(entry) {
|
|
118
|
+
return (0, _getEntryTitle.getEntryTitle)(model, entry);
|
|
119
|
+
},
|
|
120
|
+
|
|
121
|
+
status(entry) {
|
|
122
|
+
return entry.status;
|
|
123
|
+
},
|
|
124
|
+
|
|
125
|
+
async revisions(entry, _, context) {
|
|
126
|
+
const entryId = entry.id.split("#")[0];
|
|
127
|
+
const revisions = await context.cms.getEntryRevisions(model, entryId);
|
|
128
|
+
return revisions.sort((a, b) => b.version - a.version);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
exports.createManageResolvers = createManageResolvers;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createManageSDL = void 0;
|
|
7
|
+
|
|
8
|
+
var _createTypeName = require("../utils/createTypeName");
|
|
9
|
+
|
|
10
|
+
var _renderListFilterFields = require("../utils/renderListFilterFields");
|
|
11
|
+
|
|
12
|
+
var _renderSortEnum = require("../utils/renderSortEnum");
|
|
13
|
+
|
|
14
|
+
var _renderGetFilterFields = require("../utils/renderGetFilterFields");
|
|
15
|
+
|
|
16
|
+
var _renderInputFields = require("../utils/renderInputFields");
|
|
17
|
+
|
|
18
|
+
var _renderFields = require("../utils/renderFields");
|
|
19
|
+
|
|
20
|
+
var _pluralizedTypeName = require("../utils/pluralizedTypeName");
|
|
21
|
+
|
|
22
|
+
const createManageSDL = ({
|
|
23
|
+
model,
|
|
24
|
+
fieldTypePlugins
|
|
25
|
+
}) => {
|
|
26
|
+
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
27
|
+
const mTypeName = (0, _createTypeName.createManageTypeName)(typeName);
|
|
28
|
+
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
29
|
+
model,
|
|
30
|
+
type: "manage",
|
|
31
|
+
fieldTypePlugins
|
|
32
|
+
});
|
|
33
|
+
const sortEnumRender = (0, _renderSortEnum.renderSortEnum)({
|
|
34
|
+
model,
|
|
35
|
+
fieldTypePlugins
|
|
36
|
+
});
|
|
37
|
+
const getFilterFieldsRender = (0, _renderGetFilterFields.renderGetFilterFields)({
|
|
38
|
+
model,
|
|
39
|
+
fieldTypePlugins
|
|
40
|
+
});
|
|
41
|
+
const inputFields = (0, _renderInputFields.renderInputFields)({
|
|
42
|
+
model,
|
|
43
|
+
fieldTypePlugins
|
|
44
|
+
});
|
|
45
|
+
const fields = (0, _renderFields.renderFields)({
|
|
46
|
+
model,
|
|
47
|
+
type: "manage",
|
|
48
|
+
fieldTypePlugins
|
|
49
|
+
});
|
|
50
|
+
return (
|
|
51
|
+
/* GraphQL */
|
|
52
|
+
`
|
|
53
|
+
"""${model.description}"""
|
|
54
|
+
${fields.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
55
|
+
|
|
56
|
+
type ${mTypeName} {
|
|
57
|
+
id: ID!
|
|
58
|
+
entryId: String!
|
|
59
|
+
createdOn: DateTime!
|
|
60
|
+
savedOn: DateTime!
|
|
61
|
+
createdBy: CmsCreatedBy!
|
|
62
|
+
ownedBy: CmsOwnedBy!
|
|
63
|
+
meta: ${mTypeName}Meta
|
|
64
|
+
${fields.map(f => f.fields).join("\n")}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
type ${mTypeName}Meta {
|
|
68
|
+
modelId: String
|
|
69
|
+
version: Int
|
|
70
|
+
locked: Boolean
|
|
71
|
+
publishedOn: DateTime
|
|
72
|
+
status: String
|
|
73
|
+
"""
|
|
74
|
+
CAUTION: this field is resolved by making an extra query to DB.
|
|
75
|
+
RECOMMENDATION: Use it only with "get" queries (avoid in "list")
|
|
76
|
+
"""
|
|
77
|
+
revisions: [${mTypeName}]
|
|
78
|
+
title: String
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
${inputFields.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
83
|
+
|
|
84
|
+
${inputFields && `input ${mTypeName}Input {
|
|
85
|
+
${inputFields.map(f => f.fields).join("\n")}
|
|
86
|
+
}`}
|
|
87
|
+
|
|
88
|
+
${getFilterFieldsRender && `input ${mTypeName}GetWhereInput {
|
|
89
|
+
${getFilterFieldsRender}
|
|
90
|
+
}`}
|
|
91
|
+
|
|
92
|
+
|
|
93
|
+
${listFilterFieldsRender && `input ${mTypeName}ListWhereInput {
|
|
94
|
+
${listFilterFieldsRender}
|
|
95
|
+
}`}
|
|
96
|
+
|
|
97
|
+
type ${mTypeName}Response {
|
|
98
|
+
data: ${mTypeName}
|
|
99
|
+
error: CmsError
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
type ${mTypeName}ArrayResponse {
|
|
103
|
+
data: [${mTypeName}]
|
|
104
|
+
error: CmsError
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
type ${mTypeName}ListResponse {
|
|
108
|
+
data: [${mTypeName}]
|
|
109
|
+
meta: CmsListMeta
|
|
110
|
+
error: CmsError
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
${sortEnumRender && `enum ${mTypeName}ListSorter {
|
|
114
|
+
${sortEnumRender}
|
|
115
|
+
}`}
|
|
116
|
+
|
|
117
|
+
extend type Query {
|
|
118
|
+
get${typeName}(revision: ID!): ${mTypeName}Response
|
|
119
|
+
|
|
120
|
+
get${typeName}Revisions(id: ID!): ${mTypeName}ArrayResponse
|
|
121
|
+
|
|
122
|
+
get${(0, _pluralizedTypeName.pluralizedTypeName)(typeName)}ByIds(revisions: [ID!]!): ${mTypeName}ArrayResponse
|
|
123
|
+
|
|
124
|
+
list${(0, _pluralizedTypeName.pluralizedTypeName)(typeName)}(
|
|
125
|
+
where: ${mTypeName}ListWhereInput
|
|
126
|
+
sort: [${mTypeName}ListSorter]
|
|
127
|
+
limit: Int
|
|
128
|
+
after: String
|
|
129
|
+
): ${mTypeName}ListResponse
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
extend type Mutation{
|
|
133
|
+
create${typeName}(data: ${mTypeName}Input!): ${mTypeName}Response
|
|
134
|
+
|
|
135
|
+
create${typeName}From(revision: ID!, data: ${mTypeName}Input): ${mTypeName}Response
|
|
136
|
+
|
|
137
|
+
update${typeName}(revision: ID!, data: ${mTypeName}Input!): ${mTypeName}Response
|
|
138
|
+
|
|
139
|
+
delete${typeName}(revision: ID!): CmsDeleteResponse
|
|
140
|
+
|
|
141
|
+
publish${typeName}(revision: ID!): ${mTypeName}Response
|
|
142
|
+
|
|
143
|
+
unpublish${typeName}(revision: ID!): ${mTypeName}Response
|
|
144
|
+
|
|
145
|
+
request${typeName}Review(revision: ID!): ${mTypeName}Response
|
|
146
|
+
|
|
147
|
+
request${typeName}Changes(revision: ID!): ${mTypeName}Response
|
|
148
|
+
}
|
|
149
|
+
`
|
|
150
|
+
);
|
|
151
|
+
};
|
|
152
|
+
|
|
153
|
+
exports.createManageSDL = createManageSDL;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CmsModel, CmsFieldTypePlugins, CmsContext } from "../../../types";
|
|
2
|
+
export interface CreateReadResolvers {
|
|
3
|
+
(params: {
|
|
4
|
+
models: CmsModel[];
|
|
5
|
+
model: CmsModel;
|
|
6
|
+
context: CmsContext;
|
|
7
|
+
fieldTypePlugins: CmsFieldTypePlugins;
|
|
8
|
+
}): any;
|
|
9
|
+
}
|
|
10
|
+
export declare const createPreviewResolvers: CreateReadResolvers;
|