@webiny/api-headless-cms 0.0.0-unstable.d65ec29d44 → 0.0.0-unstable.df6d94b531
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/crud/contentEntry/markLockedFields.d.ts +1 -1
- package/crud/contentEntry/markLockedFields.js +3 -0
- package/crud/contentEntry/markLockedFields.js.map +1 -1
- package/crud/contentEntry.crud.d.ts +2 -1
- package/crud/contentEntry.crud.js +29 -23
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/beforeCreate.js +4 -0
- package/crud/contentModel/beforeCreate.js.map +1 -1
- package/crud/contentModel/beforeUpdate.js +4 -0
- 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/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/systemFields.js.map +1 -1
- package/crud/contentModel/validateModel.d.ts +1 -0
- package/crud/contentModel/validateModel.js.map +1 -1
- package/crud/contentModel/validateModelFields.d.ts +2 -1
- package/crud/contentModel/validateModelFields.js +17 -55
- package/crud/contentModel/validateModelFields.js.map +1 -1
- package/crud/contentModel/validation.d.ts +92 -50
- package/crud/contentModel/validation.js +59 -11
- package/crud/contentModel/validation.js.map +1 -1
- package/crud/contentModel.crud.js +40 -18
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/system.crud.js +0 -60
- package/crud/system.crud.js.map +1 -1
- package/graphql/createExecutableSchema.d.ts +2 -3
- package/graphql/createExecutableSchema.js.map +1 -1
- package/graphql/graphQLHandlerFactory.js +13 -8
- package/graphql/graphQLHandlerFactory.js.map +1 -1
- package/graphql/schema/baseContentSchema.js +1 -7
- package/graphql/schema/baseContentSchema.js.map +1 -1
- package/graphql/schema/contentEntries.js +90 -53
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/contentModelGroups.js +1 -1
- package/graphql/schema/contentModelGroups.js.map +1 -1
- package/graphql/schema/contentModels.js +20 -1
- package/graphql/schema/contentModels.js.map +1 -1
- package/graphql/schema/createManageResolvers.d.ts +1 -1
- package/graphql/schema/createManageResolvers.js +33 -17
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.d.ts +1 -0
- package/graphql/schema/createManageSDL.js +55 -49
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.js +3 -7
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.js +4 -8
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.d.ts +1 -0
- package/graphql/schema/createReadSDL.js +24 -22
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/resolvers/commonFieldResolvers.d.ts +3 -2
- package/graphql/schema/resolvers/commonFieldResolvers.js +2 -1
- package/graphql/schema/resolvers/commonFieldResolvers.js.map +1 -1
- package/graphql/schema/schemaPlugins.js +12 -12
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/graphql/system.js +0 -16
- package/graphql/system.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.js +12 -4
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
- package/graphqlFields/object.js +21 -2
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/ref.js +42 -14
- package/graphqlFields/ref.js.map +1 -1
- package/index.d.ts +3 -1
- package/index.js +22 -3
- package/index.js.map +1 -1
- package/package.json +22 -23
- package/plugins/CmsModelPlugin.d.ts +11 -1
- package/plugins/CmsModelPlugin.js +13 -2
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/types.d.ts +75 -21
- package/types.js +1 -1
- package/types.js.map +1 -1
- package/upgrades/5.33.0/index.js +26 -3
- package/upgrades/5.33.0/index.js.map +1 -1
- package/upgrades/index.js +3 -0
- package/upgrades/index.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.d.ts +1 -1
- package/utils/converters/valueKeyStorageConverter.js +2 -1
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/createTypeFromFields.d.ts +1 -0
- package/utils/createTypeFromFields.js +7 -4
- package/utils/createTypeFromFields.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/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.map +1 -1
- package/utils/pluralizedTypeName.js +6 -0
- package/utils/pluralizedTypeName.js.map +1 -1
- package/utils/renderFields.d.ts +2 -1
- package/utils/renderFields.js +8 -1
- package/utils/renderFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +2 -1
- package/utils/renderInputFields.js +4 -0
- package/utils/renderInputFields.js.map +1 -1
|
@@ -19,9 +19,9 @@ var _resolveRepublish = require("./resolvers/manage/resolveRepublish");
|
|
|
19
19
|
var _resolveUnpublish = require("./resolvers/manage/resolveUnpublish");
|
|
20
20
|
var _resolveCreateFrom = require("./resolvers/manage/resolveCreateFrom");
|
|
21
21
|
var _createFieldResolvers = require("./createFieldResolvers");
|
|
22
|
-
var _createTypeName = require("../../utils/createTypeName");
|
|
23
|
-
var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
|
|
24
22
|
var _getEntryTitle = require("../../utils/getEntryTitle");
|
|
23
|
+
var _getEntryImage = require("../../utils/getEntryImage");
|
|
24
|
+
var _entryStorage = require("../../utils/entryStorage");
|
|
25
25
|
const createManageResolvers = ({
|
|
26
26
|
models,
|
|
27
27
|
model,
|
|
@@ -33,8 +33,6 @@ const createManageResolvers = ({
|
|
|
33
33
|
Mutation: {}
|
|
34
34
|
};
|
|
35
35
|
}
|
|
36
|
-
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
37
|
-
const mTypeName = (0, _createTypeName.createManageTypeName)(typeName);
|
|
38
36
|
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
39
37
|
endpointType: "manage",
|
|
40
38
|
models,
|
|
@@ -42,7 +40,7 @@ const createManageResolvers = ({
|
|
|
42
40
|
fieldTypePlugins
|
|
43
41
|
});
|
|
44
42
|
const fieldResolvers = createFieldResolvers({
|
|
45
|
-
graphQLType:
|
|
43
|
+
graphQLType: model.singularApiName,
|
|
46
44
|
fields: model.fields,
|
|
47
45
|
isRoot: true,
|
|
48
46
|
// These are extra fields we want to apply to field resolvers of "gqlType"
|
|
@@ -54,47 +52,65 @@ const createManageResolvers = ({
|
|
|
54
52
|
});
|
|
55
53
|
return (0, _objectSpread2.default)((0, _objectSpread2.default)({
|
|
56
54
|
Query: {
|
|
57
|
-
[`get${
|
|
55
|
+
[`get${model.singularApiName}`]: (0, _resolveGet.resolveGet)({
|
|
58
56
|
model
|
|
59
57
|
}),
|
|
60
|
-
[`get${
|
|
58
|
+
[`get${model.singularApiName}Revisions`]: (0, _resolveGetRevisions.resolveGetRevisions)({
|
|
61
59
|
model
|
|
62
60
|
}),
|
|
63
|
-
[`get${
|
|
61
|
+
[`get${model.pluralApiName}ByIds`]: (0, _resolveGetByIds.resolveGetByIds)({
|
|
64
62
|
model
|
|
65
63
|
}),
|
|
66
|
-
[`list${
|
|
64
|
+
[`list${model.pluralApiName}`]: (0, _resolveList.resolveList)({
|
|
67
65
|
model
|
|
68
66
|
})
|
|
69
67
|
},
|
|
70
68
|
Mutation: {
|
|
71
|
-
[`create${
|
|
69
|
+
[`create${model.singularApiName}`]: (0, _resolveCreate.resolveCreate)({
|
|
72
70
|
model
|
|
73
71
|
}),
|
|
74
|
-
[`update${
|
|
72
|
+
[`update${model.singularApiName}`]: (0, _resolveUpdate.resolveUpdate)({
|
|
75
73
|
model
|
|
76
74
|
}),
|
|
77
|
-
[`delete${
|
|
75
|
+
[`delete${model.singularApiName}`]: (0, _resolveDelete.resolveDelete)({
|
|
78
76
|
model
|
|
79
77
|
}),
|
|
80
|
-
[`publish${
|
|
78
|
+
[`publish${model.singularApiName}`]: (0, _resolvePublish.resolvePublish)({
|
|
81
79
|
model
|
|
82
80
|
}),
|
|
83
|
-
[`republish${
|
|
81
|
+
[`republish${model.singularApiName}`]: (0, _resolveRepublish.resolveRepublish)({
|
|
84
82
|
model
|
|
85
83
|
}),
|
|
86
|
-
[`unpublish${
|
|
84
|
+
[`unpublish${model.singularApiName}`]: (0, _resolveUnpublish.resolveUnpublish)({
|
|
87
85
|
model
|
|
88
86
|
}),
|
|
89
|
-
[`create${
|
|
87
|
+
[`create${model.singularApiName}From`]: (0, _resolveCreateFrom.resolveCreateFrom)({
|
|
90
88
|
model
|
|
91
89
|
})
|
|
92
90
|
}
|
|
93
91
|
}, fieldResolvers), {}, {
|
|
94
|
-
[`${
|
|
92
|
+
[`${model.singularApiName}Meta`]: {
|
|
95
93
|
title(entry) {
|
|
96
94
|
return (0, _getEntryTitle.getEntryTitle)(model, entry);
|
|
97
95
|
},
|
|
96
|
+
description: (entry, _, context) => {
|
|
97
|
+
if (!model.descriptionFieldId) {
|
|
98
|
+
return "";
|
|
99
|
+
}
|
|
100
|
+
const field = model.fields.find(f => f.fieldId === model.descriptionFieldId);
|
|
101
|
+
if (!field) {
|
|
102
|
+
return "";
|
|
103
|
+
}
|
|
104
|
+
return (0, _entryStorage.entryFieldFromStorageTransform)({
|
|
105
|
+
context,
|
|
106
|
+
model,
|
|
107
|
+
field,
|
|
108
|
+
value: entry.values[field.fieldId]
|
|
109
|
+
});
|
|
110
|
+
},
|
|
111
|
+
image: entry => {
|
|
112
|
+
return (0, _getEntryImage.getEntryImage)(model, entry);
|
|
113
|
+
},
|
|
98
114
|
status(entry) {
|
|
99
115
|
return entry.status;
|
|
100
116
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createManageResolvers","models","model","fieldTypePlugins","fields","length","Query","Mutation","
|
|
1
|
+
{"version":3,"names":["createManageResolvers","models","model","fieldTypePlugins","fields","length","Query","Mutation","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","isRoot","extraResolvers","commonFieldResolvers","meta","entry","resolveGet","resolveGetRevisions","pluralApiName","resolveGetByIds","resolveList","resolveCreate","resolveUpdate","resolveDelete","resolvePublish","resolveRepublish","resolveUnpublish","resolveCreateFrom","title","getEntryTitle","description","_","context","descriptionFieldId","field","find","f","fieldId","entryFieldFromStorageTransform","value","values","image","getEntryImage","status","data","revisions","cms","getEntryRevisions","entryId","sort","a","b","version"],"sources":["createManageResolvers.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsContext, CmsEntry, CmsModel } from \"~/types\";\nimport { commonFieldResolvers } from \"./resolvers/commonFieldResolvers\";\nimport { resolveGet } from \"./resolvers/manage/resolveGet\";\nimport { resolveList } from \"./resolvers/manage/resolveList\";\nimport { resolveGetRevisions } from \"./resolvers/manage/resolveGetRevisions\";\nimport { resolveGetByIds } from \"./resolvers/manage/resolveGetByIds\";\nimport { resolveCreate } from \"./resolvers/manage/resolveCreate\";\nimport { resolveUpdate } from \"./resolvers/manage/resolveUpdate\";\nimport { resolveDelete } from \"./resolvers/manage/resolveDelete\";\nimport { resolvePublish } from \"./resolvers/manage/resolvePublish\";\nimport { resolveRepublish } from \"./resolvers/manage/resolveRepublish\";\nimport { resolveUnpublish } from \"./resolvers/manage/resolveUnpublish\";\nimport { resolveCreateFrom } from \"./resolvers/manage/resolveCreateFrom\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\nimport { getEntryTitle } from \"~/utils/getEntryTitle\";\nimport { getEntryImage } from \"~/utils/getEntryImage\";\nimport { entryFieldFromStorageTransform } from \"~/utils/entryStorage\";\n\ninterface CreateManageResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\ninterface CreateManageResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateManageResolversParams): any;\n}\n\nexport const createManageResolvers: CreateManageResolvers = ({\n models,\n model,\n fieldTypePlugins\n}) => {\n if (model.fields.length === 0) {\n return {\n Query: {},\n Mutation: {}\n };\n }\n\n const createFieldResolvers = createFieldResolversFactory({\n endpointType: \"manage\",\n models,\n model,\n fieldTypePlugins\n });\n\n const fieldResolvers = createFieldResolvers({\n graphQLType: model.singularApiName,\n fields: model.fields,\n isRoot: true,\n // These are extra fields we want to apply to field resolvers of \"gqlType\"\n extraResolvers: {\n ...commonFieldResolvers(),\n meta(entry) {\n return entry;\n }\n }\n });\n\n return {\n Query: {\n [`get${model.singularApiName}`]: resolveGet({ model }),\n [`get${model.singularApiName}Revisions`]: resolveGetRevisions({ model }),\n [`get${model.pluralApiName}ByIds`]: resolveGetByIds({ model }),\n [`list${model.pluralApiName}`]: resolveList({ model })\n },\n Mutation: {\n [`create${model.singularApiName}`]: resolveCreate({ model }),\n [`update${model.singularApiName}`]: resolveUpdate({ model }),\n [`delete${model.singularApiName}`]: resolveDelete({ model }),\n [`publish${model.singularApiName}`]: resolvePublish({ model }),\n [`republish${model.singularApiName}`]: resolveRepublish({ model }),\n [`unpublish${model.singularApiName}`]: resolveUnpublish({ model }),\n [`create${model.singularApiName}From`]: resolveCreateFrom({ model })\n },\n ...fieldResolvers,\n [`${model.singularApiName}Meta`]: {\n title(entry: CmsEntry) {\n return getEntryTitle(model, entry);\n },\n description: (entry: CmsEntry, _: any, context: CmsContext) => {\n if (!model.descriptionFieldId) {\n return \"\";\n }\n const field = model.fields.find(f => f.fieldId === model.descriptionFieldId);\n if (!field) {\n return \"\";\n }\n\n return entryFieldFromStorageTransform({\n context,\n model,\n field,\n value: entry.values[field.fieldId]\n });\n },\n image: (entry: CmsEntry) => {\n return getEntryImage(model, entry);\n },\n status(entry: CmsEntry) {\n return entry.status;\n },\n data: (entry: CmsEntry) => {\n return entry.meta || {};\n },\n async revisions(entry: CmsEntry, _: any, context: CmsContext) {\n const revisions = await context.cms.getEntryRevisions(model, entry.entryId);\n return revisions.sort((a, b) => b.version - a.version);\n }\n }\n };\n};\n"],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CmsFieldTypePlugins, CmsModel } from "../../types";
|
|
2
2
|
import { CmsGraphQLSchemaSorterPlugin } from "../../plugins";
|
|
3
3
|
interface CreateManageSDLParams {
|
|
4
|
+
models: CmsModel[];
|
|
4
5
|
model: CmsModel;
|
|
5
6
|
fieldTypePlugins: CmsFieldTypePlugins;
|
|
6
7
|
sorterPlugins: CmsGraphQLSchemaSorterPlugin[];
|
|
@@ -4,20 +4,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createManageSDL = void 0;
|
|
7
|
-
var _createTypeName = require("../../utils/createTypeName");
|
|
8
7
|
var _renderListFilterFields = require("../../utils/renderListFilterFields");
|
|
9
8
|
var _renderSortEnum = require("../../utils/renderSortEnum");
|
|
10
9
|
var _renderGetFilterFields = require("../../utils/renderGetFilterFields");
|
|
11
10
|
var _renderInputFields = require("../../utils/renderInputFields");
|
|
12
11
|
var _renderFields = require("../../utils/renderFields");
|
|
13
|
-
var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
|
|
14
12
|
const createManageSDL = ({
|
|
13
|
+
models,
|
|
15
14
|
model,
|
|
16
15
|
fieldTypePlugins,
|
|
17
16
|
sorterPlugins
|
|
18
17
|
}) => {
|
|
19
|
-
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
20
|
-
const mTypeName = (0, _createTypeName.createManageTypeName)(typeName);
|
|
21
18
|
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
22
19
|
model,
|
|
23
20
|
type: "manage",
|
|
@@ -33,10 +30,12 @@ const createManageSDL = ({
|
|
|
33
30
|
fieldTypePlugins
|
|
34
31
|
});
|
|
35
32
|
const inputFields = (0, _renderInputFields.renderInputFields)({
|
|
33
|
+
models,
|
|
36
34
|
model,
|
|
37
35
|
fieldTypePlugins
|
|
38
36
|
});
|
|
39
37
|
const fields = (0, _renderFields.renderFields)({
|
|
38
|
+
models,
|
|
40
39
|
model,
|
|
41
40
|
type: "manage",
|
|
42
41
|
fieldTypePlugins
|
|
@@ -44,20 +43,25 @@ const createManageSDL = ({
|
|
|
44
43
|
if (inputFields.length === 0) {
|
|
45
44
|
return "";
|
|
46
45
|
}
|
|
46
|
+
const {
|
|
47
|
+
singularApiName: singularName,
|
|
48
|
+
pluralApiName: pluralName
|
|
49
|
+
} = model;
|
|
47
50
|
return (/* GraphQL */`
|
|
48
|
-
"""${model.description ||
|
|
49
|
-
type ${
|
|
51
|
+
"""${model.description || singularName}"""
|
|
52
|
+
type ${singularName} {
|
|
50
53
|
id: ID!
|
|
51
54
|
entryId: String!
|
|
52
55
|
createdOn: DateTime!
|
|
53
56
|
savedOn: DateTime!
|
|
54
|
-
createdBy:
|
|
55
|
-
ownedBy:
|
|
56
|
-
|
|
57
|
+
createdBy: CmsIdentity!
|
|
58
|
+
ownedBy: CmsIdentity!
|
|
59
|
+
modifiedBy: CmsIdentity
|
|
60
|
+
meta: ${singularName}Meta
|
|
57
61
|
${fields.map(f => f.fields).join("\n")}
|
|
58
62
|
}
|
|
59
63
|
|
|
60
|
-
type ${
|
|
64
|
+
type ${singularName}Meta {
|
|
61
65
|
modelId: String
|
|
62
66
|
version: Int
|
|
63
67
|
locked: Boolean
|
|
@@ -67,8 +71,10 @@ const createManageSDL = ({
|
|
|
67
71
|
CAUTION: this field is resolved by making an extra query to DB.
|
|
68
72
|
RECOMMENDATION: Use it only with "get" queries (avoid in "list")
|
|
69
73
|
"""
|
|
70
|
-
revisions: [${
|
|
74
|
+
revisions: [${singularName}!]
|
|
71
75
|
title: String
|
|
76
|
+
description: String
|
|
77
|
+
image: String
|
|
72
78
|
"""
|
|
73
79
|
Custom meta data stored in the root of the entry object.
|
|
74
80
|
"""
|
|
@@ -76,74 +82,74 @@ const createManageSDL = ({
|
|
|
76
82
|
}
|
|
77
83
|
|
|
78
84
|
${fields.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
79
|
-
|
|
85
|
+
|
|
80
86
|
${inputFields.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
81
87
|
|
|
82
|
-
${inputFields && `input ${
|
|
88
|
+
${inputFields && `input ${singularName}Input {
|
|
83
89
|
id: ID
|
|
84
90
|
${inputFields.map(f => f.fields).join("\n")}
|
|
85
91
|
}`}
|
|
86
92
|
|
|
87
|
-
${getFilterFieldsRender && `input ${
|
|
93
|
+
${getFilterFieldsRender && `input ${singularName}GetWhereInput {
|
|
88
94
|
${getFilterFieldsRender}
|
|
89
95
|
}`}
|
|
90
96
|
|
|
91
97
|
|
|
92
|
-
${listFilterFieldsRender && `input ${
|
|
98
|
+
${listFilterFieldsRender && `input ${singularName}ListWhereInput {
|
|
93
99
|
${listFilterFieldsRender}
|
|
94
|
-
AND: [${
|
|
95
|
-
OR: [${
|
|
100
|
+
AND: [${singularName}ListWhereInput!]
|
|
101
|
+
OR: [${singularName}ListWhereInput!]
|
|
96
102
|
}`}
|
|
97
103
|
|
|
98
|
-
type ${
|
|
99
|
-
data: ${
|
|
104
|
+
type ${singularName}Response {
|
|
105
|
+
data: ${singularName}
|
|
100
106
|
error: CmsError
|
|
101
107
|
}
|
|
102
|
-
|
|
103
|
-
type ${
|
|
104
|
-
data: [${
|
|
108
|
+
|
|
109
|
+
type ${singularName}ArrayResponse {
|
|
110
|
+
data: [${singularName}]
|
|
105
111
|
error: CmsError
|
|
106
112
|
}
|
|
107
113
|
|
|
108
|
-
type ${
|
|
109
|
-
data: [${
|
|
114
|
+
type ${singularName}ListResponse {
|
|
115
|
+
data: [${singularName}]
|
|
110
116
|
meta: CmsListMeta
|
|
111
117
|
error: CmsError
|
|
112
118
|
}
|
|
113
119
|
|
|
114
|
-
${sortEnumRender && `enum ${
|
|
120
|
+
${sortEnumRender && `enum ${singularName}ListSorter {
|
|
115
121
|
${sortEnumRender}
|
|
116
122
|
}`}
|
|
117
123
|
|
|
118
124
|
extend type Query {
|
|
119
|
-
get${
|
|
120
|
-
|
|
121
|
-
get${
|
|
122
|
-
|
|
123
|
-
get${
|
|
124
|
-
|
|
125
|
-
list${
|
|
126
|
-
where: ${
|
|
127
|
-
sort: [${
|
|
125
|
+
get${singularName}(revision: ID, entryId: ID, status: CmsEntryStatusType): ${singularName}Response
|
|
126
|
+
|
|
127
|
+
get${singularName}Revisions(id: ID!): ${singularName}ArrayResponse
|
|
128
|
+
|
|
129
|
+
get${pluralName}ByIds(revisions: [ID!]!): ${singularName}ArrayResponse
|
|
130
|
+
|
|
131
|
+
list${pluralName} (
|
|
132
|
+
where: ${singularName}ListWhereInput
|
|
133
|
+
sort: [${singularName}ListSorter]
|
|
128
134
|
limit: Int
|
|
129
135
|
after: String
|
|
130
|
-
): ${
|
|
136
|
+
): ${singularName}ListResponse
|
|
131
137
|
}
|
|
132
138
|
|
|
133
|
-
extend type Mutation{
|
|
134
|
-
create${
|
|
135
|
-
|
|
136
|
-
create${
|
|
137
|
-
|
|
138
|
-
update${
|
|
139
|
-
|
|
140
|
-
delete${
|
|
141
|
-
|
|
142
|
-
publish${
|
|
143
|
-
|
|
144
|
-
republish${
|
|
145
|
-
|
|
146
|
-
unpublish${
|
|
139
|
+
extend type Mutation {
|
|
140
|
+
create${singularName}(data: ${singularName}Input!): ${singularName}Response
|
|
141
|
+
|
|
142
|
+
create${singularName}From(revision: ID!, data: ${singularName}Input): ${singularName}Response
|
|
143
|
+
|
|
144
|
+
update${singularName}(revision: ID!, data: ${singularName}Input!): ${singularName}Response
|
|
145
|
+
|
|
146
|
+
delete${singularName}(revision: ID!): CmsDeleteResponse
|
|
147
|
+
|
|
148
|
+
publish${singularName}(revision: ID!): ${singularName}Response
|
|
149
|
+
|
|
150
|
+
republish${singularName}(revision: ID!): ${singularName}Response
|
|
151
|
+
|
|
152
|
+
unpublish${singularName}(revision: ID!): ${singularName}Response
|
|
147
153
|
}
|
|
148
154
|
`
|
|
149
155
|
);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createManageSDL","model","fieldTypePlugins","sorterPlugins","
|
|
1
|
+
{"version":3,"names":["createManageSDL","models","model","fieldTypePlugins","sorterPlugins","listFilterFieldsRender","renderListFilterFields","type","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","inputFields","renderInputFields","fields","renderFields","length","singularApiName","singularName","pluralApiName","pluralName","description","map","f","join","typeDefs","filter","Boolean"],"sources":["createManageSDL.ts"],"sourcesContent":["import { CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { renderInputFields } from \"~/utils/renderInputFields\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\n\ninterface CreateManageSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\n\ninterface CreateManageSDL {\n (params: CreateManageSDLParams): string;\n}\n\nexport const createManageSDL: CreateManageSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const listFilterFieldsRender = renderListFilterFields({\n model,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const sortEnumRender = renderSortEnum({ model, fieldTypePlugins, sorterPlugins });\n const getFilterFieldsRender = renderGetFilterFields({ model, fieldTypePlugins });\n const inputFields = renderInputFields({ models, model, fieldTypePlugins });\n const fields = renderFields({ models, model, type: \"manage\", fieldTypePlugins });\n\n if (inputFields.length === 0) {\n return \"\";\n }\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n return /* GraphQL */ `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: CmsIdentity!\n ownedBy: CmsIdentity!\n modifiedBy: CmsIdentity\n meta: ${singularName}Meta\n ${fields.map(f => f.fields).join(\"\\n\")}\n }\n\n type ${singularName}Meta {\n modelId: String\n version: Int\n locked: Boolean\n publishedOn: DateTime\n status: String\n \"\"\"\n CAUTION: this field is resolved by making an extra query to DB.\n RECOMMENDATION: Use it only with \"get\" queries (avoid in \"list\")\n \"\"\"\n revisions: [${singularName}!]\n title: String\n description: String\n image: String\n \"\"\"\n Custom meta data stored in the root of the entry object.\n \"\"\"\n data: JSON\n }\n\n ${fields\n .map(f => f.typeDefs)\n .filter(Boolean)\n .join(\"\\n\")}\n\n ${inputFields\n .map(f => f.typeDefs)\n .filter(Boolean)\n .join(\"\\n\")}\n\n ${\n inputFields &&\n `input ${singularName}Input {\n id: ID\n ${inputFields.map(f => f.fields).join(\"\\n\")}\n }`\n }\n\n ${\n getFilterFieldsRender &&\n `input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }`\n }\n\n\n ${\n listFilterFieldsRender &&\n `input ${singularName}ListWhereInput {\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }`\n }\n\n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n\n type ${singularName}ArrayResponse {\n data: [${singularName}]\n error: CmsError\n }\n\n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n\n ${\n sortEnumRender &&\n `enum ${singularName}ListSorter {\n ${sortEnumRender}\n }`\n }\n\n extend type Query {\n get${singularName}(revision: ID, entryId: ID, status: CmsEntryStatusType): ${singularName}Response\n \n get${singularName}Revisions(id: ID!): ${singularName}ArrayResponse\n \n get${pluralName}ByIds(revisions: [ID!]!): ${singularName}ArrayResponse\n \n list${pluralName} (\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n ): ${singularName}ListResponse\n }\n\n extend type Mutation {\n create${singularName}(data: ${singularName}Input!): ${singularName}Response\n \n create${singularName}From(revision: ID!, data: ${singularName}Input): ${singularName}Response\n \n update${singularName}(revision: ID!, data: ${singularName}Input!): ${singularName}Response\n \n delete${singularName}(revision: ID!): CmsDeleteResponse\n \n publish${singularName}(revision: ID!): ${singularName}Response\n \n republish${singularName}(revision: ID!): ${singularName}Response\n \n unpublish${singularName}(revision: ID!): ${singularName}Response\n }\n `;\n};\n"],"mappings":"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"}
|
|
@@ -9,8 +9,6 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
|
|
|
9
9
|
var _resolveGet = require("./resolvers/preview/resolveGet");
|
|
10
10
|
var _resolveList = require("./resolvers/preview/resolveList");
|
|
11
11
|
var _createFieldResolvers = require("./createFieldResolvers");
|
|
12
|
-
var _createTypeName = require("../../utils/createTypeName");
|
|
13
|
-
var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
|
|
14
12
|
const createPreviewResolvers = ({
|
|
15
13
|
models,
|
|
16
14
|
model,
|
|
@@ -21,8 +19,6 @@ const createPreviewResolvers = ({
|
|
|
21
19
|
Query: {}
|
|
22
20
|
};
|
|
23
21
|
}
|
|
24
|
-
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
25
|
-
const rTypeName = (0, _createTypeName.createReadTypeName)(typeName);
|
|
26
22
|
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
27
23
|
endpointType: "read",
|
|
28
24
|
models,
|
|
@@ -30,16 +26,16 @@ const createPreviewResolvers = ({
|
|
|
30
26
|
fieldTypePlugins
|
|
31
27
|
});
|
|
32
28
|
const fieldResolvers = createFieldResolvers({
|
|
33
|
-
graphQLType:
|
|
29
|
+
graphQLType: model.singularApiName,
|
|
34
30
|
fields: model.fields,
|
|
35
31
|
isRoot: true
|
|
36
32
|
});
|
|
37
33
|
return (0, _objectSpread2.default)({
|
|
38
34
|
Query: {
|
|
39
|
-
[`get${
|
|
35
|
+
[`get${model.singularApiName}`]: (0, _resolveGet.resolveGet)({
|
|
40
36
|
model
|
|
41
37
|
}),
|
|
42
|
-
[`list${
|
|
38
|
+
[`list${model.pluralApiName}`]: (0, _resolveList.resolveList)({
|
|
43
39
|
model
|
|
44
40
|
})
|
|
45
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createPreviewResolvers","models","model","fieldTypePlugins","fields","length","Query","
|
|
1
|
+
{"version":3,"names":["createPreviewResolvers","models","model","fieldTypePlugins","fields","length","Query","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","isRoot","resolveGet","pluralApiName","resolveList"],"sources":["createPreviewResolvers.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, CmsContext } from \"~/types\";\nimport { resolveGet } from \"./resolvers/preview/resolveGet\";\nimport { resolveList } from \"./resolvers/preview/resolveList\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\n\ninterface CreateReadResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\nexport interface CreateReadResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateReadResolversParams): any;\n}\n\nexport const createPreviewResolvers: CreateReadResolvers = ({\n models,\n model,\n fieldTypePlugins\n}) => {\n if (model.fields.length === 0) {\n return {\n Query: {}\n };\n }\n\n const createFieldResolvers = createFieldResolversFactory({\n endpointType: \"read\",\n models,\n model,\n fieldTypePlugins\n });\n\n const fieldResolvers = createFieldResolvers({\n graphQLType: model.singularApiName,\n fields: model.fields,\n isRoot: true\n });\n\n return {\n Query: {\n [`get${model.singularApiName}`]: resolveGet({ model }),\n [`list${model.pluralApiName}`]: resolveList({ model })\n },\n ...fieldResolvers\n };\n};\n"],"mappings":";;;;;;;;AACA;AACA;AACA;AAcO,MAAMA,sBAA2C,GAAG,CAAC;EACxDC,MAAM;EACNC,KAAK;EACLC;AACJ,CAAC,KAAK;EACF,IAAID,KAAK,CAACE,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE;IAC3B,OAAO;MACHC,KAAK,EAAE,CAAC;IACZ,CAAC;EACL;EAEA,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAE,MAAM;IACpBR,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMO,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAET,KAAK,CAACU,eAAe;IAClCR,MAAM,EAAEF,KAAK,CAACE,MAAM;IACpBS,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF;IACIP,KAAK,EAAE;MACH,CAAE,MAAKJ,KAAK,CAACU,eAAgB,EAAC,GAAG,IAAAE,sBAAU,EAAC;QAAEZ;MAAM,CAAC,CAAC;MACtD,CAAE,OAAMA,KAAK,CAACa,aAAc,EAAC,GAAG,IAAAC,wBAAW,EAAC;QAAEd;MAAM,CAAC;IACzD;EAAC,GACEQ,cAAc;AAEzB,CAAC;AAAC"}
|
|
@@ -9,8 +9,6 @@ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/obje
|
|
|
9
9
|
var _resolveGet = require("./resolvers/read/resolveGet");
|
|
10
10
|
var _resolveList = require("./resolvers/read/resolveList");
|
|
11
11
|
var _createFieldResolvers = require("./createFieldResolvers");
|
|
12
|
-
var _createTypeName = require("../../utils/createTypeName");
|
|
13
|
-
var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
|
|
14
12
|
const createReadResolvers = ({
|
|
15
13
|
models,
|
|
16
14
|
model,
|
|
@@ -21,8 +19,6 @@ const createReadResolvers = ({
|
|
|
21
19
|
Query: {}
|
|
22
20
|
};
|
|
23
21
|
}
|
|
24
|
-
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
25
|
-
const rTypeName = (0, _createTypeName.createReadTypeName)(typeName);
|
|
26
22
|
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
27
23
|
endpointType: "read",
|
|
28
24
|
models,
|
|
@@ -30,20 +26,20 @@ const createReadResolvers = ({
|
|
|
30
26
|
fieldTypePlugins
|
|
31
27
|
});
|
|
32
28
|
const fieldResolvers = createFieldResolvers({
|
|
33
|
-
graphQLType:
|
|
29
|
+
graphQLType: model.singularApiName,
|
|
34
30
|
fields: model.fields,
|
|
35
31
|
isRoot: true
|
|
36
32
|
});
|
|
37
33
|
return (0, _objectSpread2.default)({
|
|
38
34
|
Query: {
|
|
39
|
-
[`get${
|
|
35
|
+
[`get${model.singularApiName}`]: (0, _resolveGet.resolveGet)({
|
|
40
36
|
model
|
|
41
37
|
}),
|
|
42
|
-
[`list${
|
|
38
|
+
[`list${model.pluralApiName}`]: (0, _resolveList.resolveList)({
|
|
43
39
|
model
|
|
44
40
|
})
|
|
45
41
|
},
|
|
46
|
-
[
|
|
42
|
+
[model.singularApiName]: {
|
|
47
43
|
modelId: () => {
|
|
48
44
|
return model.modelId;
|
|
49
45
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createReadResolvers","models","model","fieldTypePlugins","fields","length","Query","
|
|
1
|
+
{"version":3,"names":["createReadResolvers","models","model","fieldTypePlugins","fields","length","Query","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","isRoot","resolveGet","pluralApiName","resolveList","modelId"],"sources":["createReadResolvers.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, CmsContext } from \"~/types\";\nimport { resolveGet } from \"./resolvers/read/resolveGet\";\nimport { resolveList } from \"./resolvers/read/resolveList\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\n\ninterface CreateReadResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n}\n\nexport interface CreateReadResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateReadResolversParams): any;\n}\n\nexport const createReadResolvers: CreateReadResolvers = ({ models, model, fieldTypePlugins }) => {\n if (model.fields.length === 0) {\n return {\n Query: {}\n };\n }\n\n const createFieldResolvers = createFieldResolversFactory({\n endpointType: \"read\",\n models,\n model,\n fieldTypePlugins\n });\n\n const fieldResolvers = createFieldResolvers({\n graphQLType: model.singularApiName,\n fields: model.fields,\n isRoot: true\n });\n\n return {\n Query: {\n [`get${model.singularApiName}`]: resolveGet({ model }),\n [`list${model.pluralApiName}`]: resolveList({ model })\n },\n [model.singularApiName]: {\n modelId: () => {\n return model.modelId;\n }\n },\n ...fieldResolvers\n };\n};\n"],"mappings":";;;;;;;;AACA;AACA;AACA;AAcO,MAAMA,mBAAwC,GAAG,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC;AAAiB,CAAC,KAAK;EAC7F,IAAID,KAAK,CAACE,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE;IAC3B,OAAO;MACHC,KAAK,EAAE,CAAC;IACZ,CAAC;EACL;EAEA,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAE,MAAM;IACpBR,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMO,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAET,KAAK,CAACU,eAAe;IAClCR,MAAM,EAAEF,KAAK,CAACE,MAAM;IACpBS,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF;IACIP,KAAK,EAAE;MACH,CAAE,MAAKJ,KAAK,CAACU,eAAgB,EAAC,GAAG,IAAAE,sBAAU,EAAC;QAAEZ;MAAM,CAAC,CAAC;MACtD,CAAE,OAAMA,KAAK,CAACa,aAAc,EAAC,GAAG,IAAAC,wBAAW,EAAC;QAAEd;MAAM,CAAC;IACzD,CAAC;IACD,CAACA,KAAK,CAACU,eAAe,GAAG;MACrBK,OAAO,EAAE,MAAM;QACX,OAAOf,KAAK,CAACe,OAAO;MACxB;IACJ;EAAC,GACEP,cAAc;AAEzB,CAAC;AAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CmsModel, CmsFieldTypePlugins } from "../../types";
|
|
2
2
|
import { CmsGraphQLSchemaSorterPlugin } from "../../plugins";
|
|
3
3
|
interface CreateReadSDLParams {
|
|
4
|
+
models: CmsModel[];
|
|
4
5
|
model: CmsModel;
|
|
5
6
|
fieldTypePlugins: CmsFieldTypePlugins;
|
|
6
7
|
sorterPlugins: CmsGraphQLSchemaSorterPlugin[];
|
|
@@ -4,19 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.createReadSDL = void 0;
|
|
7
|
-
var _createTypeName = require("../../utils/createTypeName");
|
|
8
7
|
var _renderListFilterFields = require("../../utils/renderListFilterFields");
|
|
9
8
|
var _renderSortEnum = require("../../utils/renderSortEnum");
|
|
10
9
|
var _renderFields = require("../../utils/renderFields");
|
|
11
10
|
var _renderGetFilterFields = require("../../utils/renderGetFilterFields");
|
|
12
|
-
var _pluralizedTypeName = require("../../utils/pluralizedTypeName");
|
|
13
11
|
const createReadSDL = ({
|
|
12
|
+
models,
|
|
14
13
|
model,
|
|
15
14
|
fieldTypePlugins,
|
|
16
15
|
sorterPlugins
|
|
17
16
|
}) => {
|
|
18
|
-
const typeName = (0, _createTypeName.createTypeName)(model.modelId);
|
|
19
|
-
const rTypeName = (0, _createTypeName.createReadTypeName)(typeName);
|
|
20
17
|
const type = "read";
|
|
21
18
|
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
22
19
|
model,
|
|
@@ -33,6 +30,7 @@ const createReadSDL = ({
|
|
|
33
30
|
fieldTypePlugins
|
|
34
31
|
});
|
|
35
32
|
const fieldsRender = (0, _renderFields.renderFields)({
|
|
33
|
+
models,
|
|
36
34
|
model,
|
|
37
35
|
type,
|
|
38
36
|
fieldTypePlugins
|
|
@@ -41,57 +39,61 @@ const createReadSDL = ({
|
|
|
41
39
|
return "";
|
|
42
40
|
}
|
|
43
41
|
const hasModelIdField = model.fields.some(f => f.fieldId === "modelId");
|
|
42
|
+
const {
|
|
43
|
+
singularApiName: singularName,
|
|
44
|
+
pluralApiName: pluralName
|
|
45
|
+
} = model;
|
|
44
46
|
return `
|
|
45
|
-
"""${model.description ||
|
|
46
|
-
type ${
|
|
47
|
+
"""${model.description || singularName}"""
|
|
48
|
+
type ${singularName} {
|
|
47
49
|
id: ID!
|
|
48
50
|
entryId: String!
|
|
49
51
|
${hasModelIdField ? "" : "modelId: String!"}
|
|
50
52
|
createdOn: DateTime!
|
|
51
53
|
savedOn: DateTime!
|
|
52
|
-
createdBy:
|
|
53
|
-
ownedBy:
|
|
54
|
+
createdBy: CmsIdentity!
|
|
55
|
+
ownedBy: CmsIdentity!
|
|
54
56
|
${fieldsRender.map(f => f.fields).join("\n")}
|
|
55
57
|
}
|
|
56
58
|
|
|
57
59
|
${fieldsRender.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
58
60
|
|
|
59
|
-
${getFilterFieldsRender && `input ${
|
|
61
|
+
${getFilterFieldsRender && `input ${singularName}GetWhereInput {
|
|
60
62
|
${getFilterFieldsRender}
|
|
61
63
|
}`}
|
|
62
64
|
|
|
63
65
|
|
|
64
|
-
${listFilterFieldsRender && `input ${
|
|
66
|
+
${listFilterFieldsRender && `input ${singularName}ListWhereInput {
|
|
65
67
|
${listFilterFieldsRender}
|
|
66
|
-
AND: [${
|
|
67
|
-
OR: [${
|
|
68
|
+
AND: [${singularName}ListWhereInput!]
|
|
69
|
+
OR: [${singularName}ListWhereInput!]
|
|
68
70
|
}`}
|
|
69
71
|
|
|
70
72
|
|
|
71
|
-
${sortEnumRender && `enum ${
|
|
73
|
+
${sortEnumRender && `enum ${singularName}ListSorter {
|
|
72
74
|
${sortEnumRender}
|
|
73
75
|
}`}
|
|
74
76
|
|
|
75
|
-
type ${
|
|
76
|
-
data: ${
|
|
77
|
+
type ${singularName}Response {
|
|
78
|
+
data: ${singularName}
|
|
77
79
|
error: CmsError
|
|
78
80
|
}
|
|
79
81
|
|
|
80
|
-
type ${
|
|
81
|
-
data: [${
|
|
82
|
+
type ${singularName}ListResponse {
|
|
83
|
+
data: [${singularName}]
|
|
82
84
|
meta: CmsListMeta
|
|
83
85
|
error: CmsError
|
|
84
86
|
}
|
|
85
87
|
|
|
86
88
|
extend type Query {
|
|
87
|
-
get${
|
|
89
|
+
get${singularName}(where: ${singularName}GetWhereInput!): ${singularName}Response
|
|
88
90
|
|
|
89
|
-
list${
|
|
90
|
-
where: ${
|
|
91
|
-
sort: [${
|
|
91
|
+
list${pluralName}(
|
|
92
|
+
where: ${singularName}ListWhereInput
|
|
93
|
+
sort: [${singularName}ListSorter]
|
|
92
94
|
limit: Int
|
|
93
95
|
after: String
|
|
94
|
-
): ${
|
|
96
|
+
): ${singularName}ListResponse
|
|
95
97
|
}
|
|
96
98
|
`;
|
|
97
99
|
};
|