@webiny/api-headless-cms 0.0.0-unstable.c2780f51fe → 0.0.0-unstable.c7dec08bb0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/constants.d.ts +1 -0
- package/constants.js +8 -0
- package/constants.js.map +1 -0
- package/context.js +37 -5
- package/context.js.map +1 -1
- package/crud/contentEntry/referenceFieldsMapping.js +34 -5
- package/crud/contentEntry/referenceFieldsMapping.js.map +1 -1
- package/crud/contentEntry.crud.d.ts +8 -4
- package/crud/contentEntry.crud.js +329 -64
- package/crud/contentEntry.crud.js.map +1 -1
- package/crud/contentModel/validateModelFields.js +1 -1
- package/crud/contentModel/validateModelFields.js.map +1 -1
- package/crud/contentModel/validation.d.ts +76 -76
- package/crud/contentModel.crud.d.ts +2 -0
- package/crud/contentModel.crud.js +22 -12
- package/crud/contentModel.crud.js.map +1 -1
- package/crud/contentModelGroup/validation.d.ts +4 -4
- package/crud/contentModelGroup.crud.d.ts +2 -0
- package/crud/contentModelGroup.crud.js +42 -27
- package/crud/contentModelGroup.crud.js.map +1 -1
- package/crud/settings.crud.d.ts +2 -0
- package/crud/settings.crud.js +2 -6
- package/crud/settings.crud.js.map +1 -1
- package/graphql/getSchema.js +1 -1
- package/graphql/getSchema.js.map +1 -1
- package/graphql/index.d.ts +1 -1
- package/graphql/schema/baseSchema.js +31 -0
- package/graphql/schema/baseSchema.js.map +1 -1
- package/graphql/schema/contentEntries.js +6 -1
- package/graphql/schema/contentEntries.js.map +1 -1
- package/graphql/schema/createFieldResolvers.d.ts +1 -1
- package/graphql/schema/createFieldResolvers.js +6 -12
- package/graphql/schema/createFieldResolvers.js.map +1 -1
- package/graphql/schema/createFieldTypePluginRecords.d.ts +3 -0
- package/graphql/schema/createFieldTypePluginRecords.js +13 -0
- package/graphql/schema/createFieldTypePluginRecords.js.map +1 -0
- package/graphql/schema/createManageResolvers.d.ts +1 -1
- package/graphql/schema/createManageResolvers.js +14 -0
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.js +51 -28
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createReadSDL.js +23 -19
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDelete.d.ts +2 -1
- package/graphql/schema/resolvers/manage/resolveDelete.js +13 -3
- package/graphql/schema/resolvers/manage/resolveDelete.js.map +1 -1
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.d.ts +7 -0
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js +20 -0
- package/graphql/schema/resolvers/manage/resolveDeleteMultiple.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.d.ts +4 -0
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js +18 -0
- package/graphql/schema/resolvers/manage/resolveGetUniqueFieldValues.js.map +1 -0
- package/graphql/schema/resolvers/manage/resolveMove.d.ts +8 -0
- package/graphql/schema/resolvers/manage/resolveMove.js +30 -0
- package/graphql/schema/resolvers/manage/resolveMove.js.map +1 -0
- package/graphql/schema/schemaPlugins.js +2 -11
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/graphql/system.d.ts +2 -5
- package/graphql/system.js +1 -11
- package/graphql/system.js.map +1 -1
- package/graphqlFields/dynamicZone/dynamicZoneField.js +43 -28
- package/graphqlFields/dynamicZone/dynamicZoneField.js.map +1 -1
- package/graphqlFields/number.js +1 -0
- package/graphqlFields/number.js.map +1 -1
- package/graphqlFields/object.js +2 -2
- package/graphqlFields/object.js.map +1 -1
- package/graphqlFields/text.js +2 -0
- package/graphqlFields/text.js.map +1 -1
- package/index.d.ts +1 -1
- package/package.json +31 -35
- package/plugins/CmsModelPlugin.d.ts +3 -1
- package/plugins/CmsModelPlugin.js.map +1 -1
- package/types.d.ts +101 -17
- package/types.js +11 -0
- package/types.js.map +1 -1
- package/utils/converters/valueKeyStorageConverter.js +5 -2
- package/utils/converters/valueKeyStorageConverter.js.map +1 -1
- package/utils/createTypeFromFields.js +1 -1
- package/utils/createTypeFromFields.js.map +1 -1
- package/utils/getBaseFieldType.d.ts +1 -3
- package/utils/getBaseFieldType.js.map +1 -1
- package/utils/getEntryDescription.d.ts +1 -1
- package/utils/getEntryDescription.js.map +1 -1
- package/utils/getEntryImage.d.ts +1 -1
- package/utils/getEntryImage.js.map +1 -1
- package/utils/getEntryTitle.d.ts +1 -1
- package/utils/getEntryTitle.js.map +1 -1
- package/utils/permissions/EntriesPermissions.d.ts +4 -0
- package/utils/permissions/EntriesPermissions.js +9 -0
- package/utils/permissions/EntriesPermissions.js.map +1 -0
- package/utils/permissions/ModelGroupsPermissions.d.ts +11 -0
- package/utils/permissions/ModelGroupsPermissions.js +48 -0
- package/utils/permissions/ModelGroupsPermissions.js.map +1 -0
- package/utils/permissions/ModelsPermissions.d.ts +20 -0
- package/utils/permissions/ModelsPermissions.js +91 -0
- package/utils/permissions/ModelsPermissions.js.map +1 -0
- package/utils/permissions/SettingsPermissions.d.ts +4 -0
- package/utils/permissions/SettingsPermissions.js +9 -0
- package/utils/permissions/SettingsPermissions.js.map +1 -0
- package/utils/renderFields.d.ts +2 -1
- package/utils/renderFields.js +2 -1
- package/utils/renderFields.js.map +1 -1
- package/utils/renderGetFilterFields.d.ts +2 -2
- package/utils/renderGetFilterFields.js +7 -20
- package/utils/renderGetFilterFields.js.map +1 -1
- package/utils/renderInputFields.d.ts +2 -1
- package/utils/renderInputFields.js +14 -6
- package/utils/renderInputFields.js.map +1 -1
- package/utils/renderListFilterFields.d.ts +3 -1
- package/utils/renderListFilterFields.js +16 -21
- package/utils/renderListFilterFields.js.map +1 -1
- package/utils/renderSortEnum.d.ts +3 -2
- package/utils/renderSortEnum.js +5 -1
- package/utils/renderSortEnum.js.map +1 -1
- package/crud/contentModel/createFieldModels.d.ts +0 -2
- package/crud/contentModel/createFieldModels.js +0 -26
- package/crud/contentModel/createFieldModels.js.map +0 -1
- package/crud/contentModel/fieldIdValidation.d.ts +0 -1
- package/crud/contentModel/fieldIdValidation.js +0 -25
- package/crud/contentModel/fieldIdValidation.js.map +0 -1
- package/crud/contentModel/idValidation.d.ts +0 -1
- package/crud/contentModel/idValidation.js +0 -22
- package/crud/contentModel/idValidation.js.map +0 -1
- package/crud/contentModel/models.d.ts +0 -4
- package/crud/contentModel/models.js +0 -192
- package/crud/contentModel/models.js.map +0 -1
- package/crud/contentModel/systemFields.d.ts +0 -1
- package/crud/contentModel/systemFields.js +0 -8
- package/crud/contentModel/systemFields.js.map +0 -1
- package/upgrades/5.33.0/index.d.ts +0 -3
- package/upgrades/5.33.0/index.js +0 -182
- package/upgrades/5.33.0/index.js.map +0 -1
- package/upgrades/index.d.ts +0 -1
- package/upgrades/index.js +0 -12
- package/upgrades/index.js.map +0 -1
- package/utils/access.d.ts +0 -8
- package/utils/access.js +0 -76
- package/utils/access.js.map +0 -1
- package/utils/ownership.d.ts +0 -8
- package/utils/ownership.js +0 -33
- package/utils/ownership.js.map +0 -1
- package/utils/permissions.d.ts +0 -7
- package/utils/permissions.js +0 -91
- package/utils/permissions.js.map +0 -1
- package/utils/pluralizedTypeName.d.ts +0 -1
- package/utils/pluralizedTypeName.js +0 -26
- package/utils/pluralizedTypeName.js.map +0 -1
|
@@ -15,38 +15,46 @@ const createManageSDL = ({
|
|
|
15
15
|
fieldTypePlugins,
|
|
16
16
|
sorterPlugins
|
|
17
17
|
}) => {
|
|
18
|
+
const inputFields = (0, _renderInputFields.renderInputFields)({
|
|
19
|
+
models,
|
|
20
|
+
model,
|
|
21
|
+
fields: model.fields,
|
|
22
|
+
fieldTypePlugins
|
|
23
|
+
});
|
|
24
|
+
if (inputFields.length === 0) {
|
|
25
|
+
return "";
|
|
26
|
+
}
|
|
18
27
|
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
19
28
|
model,
|
|
29
|
+
fields: model.fields,
|
|
20
30
|
type: "manage",
|
|
21
31
|
fieldTypePlugins
|
|
22
32
|
});
|
|
23
33
|
const sortEnumRender = (0, _renderSortEnum.renderSortEnum)({
|
|
24
34
|
model,
|
|
35
|
+
fields: model.fields,
|
|
25
36
|
fieldTypePlugins,
|
|
26
37
|
sorterPlugins
|
|
27
38
|
});
|
|
28
39
|
const getFilterFieldsRender = (0, _renderGetFilterFields.renderGetFilterFields)({
|
|
29
|
-
model,
|
|
30
|
-
fieldTypePlugins
|
|
31
|
-
});
|
|
32
|
-
const inputFields = (0, _renderInputFields.renderInputFields)({
|
|
33
|
-
models,
|
|
34
|
-
model,
|
|
40
|
+
fields: model.fields,
|
|
35
41
|
fieldTypePlugins
|
|
36
42
|
});
|
|
37
43
|
const fields = (0, _renderFields.renderFields)({
|
|
38
44
|
models,
|
|
39
45
|
model,
|
|
46
|
+
fields: model.fields,
|
|
40
47
|
type: "manage",
|
|
41
48
|
fieldTypePlugins
|
|
42
49
|
});
|
|
43
|
-
if (inputFields.length === 0) {
|
|
44
|
-
return "";
|
|
45
|
-
}
|
|
46
50
|
const {
|
|
47
51
|
singularApiName: singularName,
|
|
48
52
|
pluralApiName: pluralName
|
|
49
53
|
} = model;
|
|
54
|
+
const inputGraphQLFields = inputFields.map(f => f.fields).join("\n");
|
|
55
|
+
/**
|
|
56
|
+
* TODO check for 5.38.0
|
|
57
|
+
*/
|
|
50
58
|
return (/* GraphQL */`
|
|
51
59
|
"""${model.description || singularName}"""
|
|
52
60
|
type ${singularName} {
|
|
@@ -59,6 +67,8 @@ const createManageSDL = ({
|
|
|
59
67
|
modifiedBy: CmsIdentity
|
|
60
68
|
meta: ${singularName}Meta
|
|
61
69
|
${fields.map(f => f.fields).join("\n")}
|
|
70
|
+
# Advanced Content Organization - make required in 5.38.0
|
|
71
|
+
wbyAco_location: WbyAcoLocation
|
|
62
72
|
}
|
|
63
73
|
|
|
64
74
|
type ${singularName}Meta {
|
|
@@ -81,30 +91,37 @@ const createManageSDL = ({
|
|
|
81
91
|
data: JSON
|
|
82
92
|
}
|
|
83
93
|
|
|
84
|
-
${fields.map(f => f.typeDefs).
|
|
94
|
+
${fields.map(f => f.typeDefs).join("\n")}
|
|
85
95
|
|
|
86
|
-
${inputFields.map(f => f.typeDefs).
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
96
|
+
${inputFields.map(f => f.typeDefs).join("\n")}
|
|
97
|
+
|
|
98
|
+
input ${singularName}Input {
|
|
99
|
+
id: ID
|
|
100
|
+
wbyAco_location: WbyAcoLocationInput
|
|
101
|
+
${inputGraphQLFields}
|
|
102
|
+
}
|
|
92
103
|
|
|
93
|
-
|
|
104
|
+
input ${singularName}GetWhereInput {
|
|
94
105
|
${getFilterFieldsRender}
|
|
95
|
-
}
|
|
106
|
+
}
|
|
96
107
|
|
|
108
|
+
input ${singularName}ListWhereInput {
|
|
109
|
+
wbyAco_location: WbyAcoLocationWhereInput
|
|
110
|
+
${listFilterFieldsRender}
|
|
111
|
+
AND: [${singularName}ListWhereInput!]
|
|
112
|
+
OR: [${singularName}ListWhereInput!]
|
|
113
|
+
}
|
|
97
114
|
|
|
98
|
-
${listFilterFieldsRender && `input ${singularName}ListWhereInput {
|
|
99
|
-
${listFilterFieldsRender}
|
|
100
|
-
AND: [${singularName}ListWhereInput!]
|
|
101
|
-
OR: [${singularName}ListWhereInput!]
|
|
102
|
-
}`}
|
|
103
115
|
|
|
104
116
|
type ${singularName}Response {
|
|
105
117
|
data: ${singularName}
|
|
106
118
|
error: CmsError
|
|
107
119
|
}
|
|
120
|
+
|
|
121
|
+
type ${singularName}MoveResponse {
|
|
122
|
+
data: Boolean
|
|
123
|
+
error: CmsError
|
|
124
|
+
}
|
|
108
125
|
|
|
109
126
|
type ${singularName}ArrayResponse {
|
|
110
127
|
data: [${singularName}]
|
|
@@ -117,9 +134,10 @@ const createManageSDL = ({
|
|
|
117
134
|
error: CmsError
|
|
118
135
|
}
|
|
119
136
|
|
|
120
|
-
|
|
137
|
+
|
|
138
|
+
enum ${singularName}ListSorter {
|
|
121
139
|
${sortEnumRender}
|
|
122
|
-
}
|
|
140
|
+
}
|
|
123
141
|
|
|
124
142
|
extend type Query {
|
|
125
143
|
get${singularName}(revision: ID, entryId: ID, status: CmsEntryStatusType): ${singularName}Response
|
|
@@ -133,17 +151,22 @@ const createManageSDL = ({
|
|
|
133
151
|
sort: [${singularName}ListSorter]
|
|
134
152
|
limit: Int
|
|
135
153
|
after: String
|
|
154
|
+
search: String
|
|
136
155
|
): ${singularName}ListResponse
|
|
137
156
|
}
|
|
138
157
|
|
|
139
158
|
extend type Mutation {
|
|
140
159
|
create${singularName}(data: ${singularName}Input!): ${singularName}Response
|
|
141
|
-
|
|
160
|
+
|
|
142
161
|
create${singularName}From(revision: ID!, data: ${singularName}Input): ${singularName}Response
|
|
143
162
|
|
|
144
163
|
update${singularName}(revision: ID!, data: ${singularName}Input!): ${singularName}Response
|
|
145
|
-
|
|
146
|
-
|
|
164
|
+
|
|
165
|
+
move${singularName}(revision: ID!, folderId: ID!): ${singularName}MoveResponse
|
|
166
|
+
|
|
167
|
+
delete${singularName}(revision: ID!, options: CmsDeleteEntryOptions): CmsDeleteResponse
|
|
168
|
+
|
|
169
|
+
deleteMultiple${pluralName}(entries: [ID!]!): CmsDeleteMultipleResponse!
|
|
147
170
|
|
|
148
171
|
publish${singularName}(revision: ID!): ${singularName}Response
|
|
149
172
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createManageSDL","models","model","fieldTypePlugins","sorterPlugins","
|
|
1
|
+
{"version":3,"names":["createManageSDL","models","model","fieldTypePlugins","sorterPlugins","inputFields","renderInputFields","fields","length","listFilterFieldsRender","renderListFilterFields","type","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","renderFields","singularApiName","singularName","pluralApiName","pluralName","inputGraphQLFields","map","f","join","description","typeDefs"],"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 inputFields = renderInputFields({\n models,\n model,\n fields: model.fields,\n fieldTypePlugins\n });\n if (inputFields.length === 0) {\n return \"\";\n }\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const fields = renderFields({\n models,\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n const inputGraphQLFields = inputFields.map(f => f.fields).join(\"\\n\");\n /**\n * TODO check for 5.38.0\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 # Advanced Content Organization - make required in 5.38.0\n wbyAco_location: WbyAcoLocation\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.map(f => f.typeDefs).join(\"\\n\")}\n\n ${inputFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}Input {\n id: ID\n wbyAco_location: WbyAcoLocationInput\n ${inputGraphQLFields}\n }\n\n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n\n input ${singularName}ListWhereInput {\n wbyAco_location: WbyAcoLocationWhereInput\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}MoveResponse {\n data: Boolean\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 enum ${singularName}ListSorter {\n ${sortEnumRender}\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 search: 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 move${singularName}(revision: ID!, folderId: ID!): ${singularName}MoveResponse\n\n delete${singularName}(revision: ID!, options: CmsDeleteEntryOptions): CmsDeleteResponse\n\n deleteMultiple${pluralName}(entries: [ID!]!): CmsDeleteMultipleResponse!\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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"}
|
|
@@ -15,29 +15,32 @@ const createReadSDL = ({
|
|
|
15
15
|
sorterPlugins
|
|
16
16
|
}) => {
|
|
17
17
|
const type = "read";
|
|
18
|
+
const fieldsRender = (0, _renderFields.renderFields)({
|
|
19
|
+
models,
|
|
20
|
+
model,
|
|
21
|
+
fields: model.fields,
|
|
22
|
+
type,
|
|
23
|
+
fieldTypePlugins
|
|
24
|
+
});
|
|
25
|
+
if (fieldsRender.length === 0) {
|
|
26
|
+
return "";
|
|
27
|
+
}
|
|
18
28
|
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
19
29
|
model,
|
|
30
|
+
fields: model.fields,
|
|
20
31
|
type,
|
|
21
32
|
fieldTypePlugins
|
|
22
33
|
});
|
|
23
34
|
const sortEnumRender = (0, _renderSortEnum.renderSortEnum)({
|
|
24
35
|
model,
|
|
36
|
+
fields: model.fields,
|
|
25
37
|
fieldTypePlugins,
|
|
26
38
|
sorterPlugins
|
|
27
39
|
});
|
|
28
40
|
const getFilterFieldsRender = (0, _renderGetFilterFields.renderGetFilterFields)({
|
|
29
|
-
model,
|
|
30
|
-
fieldTypePlugins
|
|
31
|
-
});
|
|
32
|
-
const fieldsRender = (0, _renderFields.renderFields)({
|
|
33
|
-
models,
|
|
34
|
-
model,
|
|
35
|
-
type,
|
|
41
|
+
fields: model.fields,
|
|
36
42
|
fieldTypePlugins
|
|
37
43
|
});
|
|
38
|
-
if (fieldsRender.length === 0) {
|
|
39
|
-
return "";
|
|
40
|
-
}
|
|
41
44
|
const hasModelIdField = model.fields.some(f => f.fieldId === "modelId");
|
|
42
45
|
const {
|
|
43
46
|
singularApiName: singularName,
|
|
@@ -58,21 +61,21 @@ const createReadSDL = ({
|
|
|
58
61
|
|
|
59
62
|
${fieldsRender.map(f => f.typeDefs).filter(Boolean).join("\n")}
|
|
60
63
|
|
|
61
|
-
|
|
64
|
+
input ${singularName}GetWhereInput {
|
|
62
65
|
${getFilterFieldsRender}
|
|
63
|
-
}
|
|
66
|
+
}
|
|
64
67
|
|
|
65
68
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
69
|
+
input ${singularName}ListWhereInput {
|
|
70
|
+
${listFilterFieldsRender}
|
|
71
|
+
AND: [${singularName}ListWhereInput!]
|
|
72
|
+
OR: [${singularName}ListWhereInput!]
|
|
73
|
+
}
|
|
71
74
|
|
|
72
75
|
|
|
73
|
-
|
|
76
|
+
enum ${singularName}ListSorter {
|
|
74
77
|
${sortEnumRender}
|
|
75
|
-
}
|
|
78
|
+
}
|
|
76
79
|
|
|
77
80
|
type ${singularName}Response {
|
|
78
81
|
data: ${singularName}
|
|
@@ -93,6 +96,7 @@ const createReadSDL = ({
|
|
|
93
96
|
sort: [${singularName}ListSorter]
|
|
94
97
|
limit: Int
|
|
95
98
|
after: String
|
|
99
|
+
search: String
|
|
96
100
|
): ${singularName}ListResponse
|
|
97
101
|
}
|
|
98
102
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","
|
|
1
|
+
{"version":3,"names":["createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","fieldsRender","renderFields","fields","length","listFilterFieldsRender","renderListFilterFields","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","hasModelIdField","some","f","fieldId","singularApiName","singularName","pluralApiName","pluralName","description","map","join","typeDefs","filter","Boolean"],"sources":["createReadSDL.ts"],"sourcesContent":["import { CmsModel, CmsFieldTypePlugins, ApiEndpoint } from \"~/types\";\nimport { renderListFilterFields } from \"~/utils/renderListFilterFields\";\nimport { renderSortEnum } from \"~/utils/renderSortEnum\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { renderGetFilterFields } from \"~/utils/renderGetFilterFields\";\nimport { CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\n\ninterface CreateReadSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\ninterface CreateReadSDL {\n (params: CreateReadSDLParams): string;\n}\n\nexport const createReadSDL: CreateReadSDL = ({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n}): string => {\n const type: ApiEndpoint = \"read\";\n\n const fieldsRender = renderFields({\n models,\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n\n if (fieldsRender.length === 0) {\n return \"\";\n }\n const listFilterFieldsRender = renderListFilterFields({\n model,\n fields: model.fields,\n type,\n fieldTypePlugins\n });\n const sortEnumRender = renderSortEnum({\n model,\n fields: model.fields,\n fieldTypePlugins,\n sorterPlugins\n });\n const getFilterFieldsRender = renderGetFilterFields({\n fields: model.fields,\n fieldTypePlugins\n });\n\n const hasModelIdField = model.fields.some(f => f.fieldId === \"modelId\");\n\n const { singularApiName: singularName, pluralApiName: pluralName } = model;\n\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n ${hasModelIdField ? \"\" : \"modelId: String!\"}\n createdOn: DateTime!\n savedOn: DateTime!\n createdBy: CmsIdentity!\n ownedBy: CmsIdentity!\n ${fieldsRender.map(f => f.fields).join(\"\\n\")}\n }\n \n ${fieldsRender\n .map(f => f.typeDefs)\n .filter(Boolean)\n .join(\"\\n\")}\n \n input ${singularName}GetWhereInput {\n ${getFilterFieldsRender}\n }\n \n \n input ${singularName}ListWhereInput {\n ${listFilterFieldsRender}\n AND: [${singularName}ListWhereInput!]\n OR: [${singularName}ListWhereInput!]\n }\n \n \n enum ${singularName}ListSorter {\n ${sortEnumRender}\n }\n \n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n type ${singularName}ListResponse {\n data: [${singularName}]\n meta: CmsListMeta\n error: CmsError\n }\n \n extend type Query {\n get${singularName}(where: ${singularName}GetWhereInput!): ${singularName}Response\n\n list${pluralName}(\n where: ${singularName}ListWhereInput\n sort: [${singularName}ListSorter]\n limit: Int\n after: String\n search: String\n ): ${singularName}ListResponse\n }\n `;\n};\n"],"mappings":";;;;;;AACA;AACA;AACA;AACA;AAaO,MAAMA,aAA4B,GAAG,CAAC;EACzCC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,MAAMC,IAAiB,GAAG,MAAM;EAEhC,MAAMC,YAAY,GAAG,IAAAC,0BAAY,EAAC;IAC9BN,MAAM;IACNC,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EAEF,IAAIG,YAAY,CAACG,MAAM,KAAK,CAAC,EAAE;IAC3B,OAAO,EAAE;EACb;EACA,MAAMC,sBAAsB,GAAG,IAAAC,8CAAsB,EAAC;IAClDT,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EACF,MAAMS,cAAc,GAAG,IAAAC,8BAAc,EAAC;IAClCX,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL,gBAAgB;IAChBC;EACJ,CAAC,CAAC;EACF,MAAMU,qBAAqB,GAAG,IAAAC,4CAAqB,EAAC;IAChDP,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL;EACJ,CAAC,CAAC;EAEF,MAAMa,eAAe,GAAGd,KAAK,CAACM,MAAM,CAACS,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAK,SAAS,CAAC;EAEvE,MAAM;IAAEC,eAAe,EAAEC,YAAY;IAAEC,aAAa,EAAEC;EAAW,CAAC,GAAGrB,KAAK;EAE1E,OAAQ;AACZ,aAAaA,KAAK,CAACsB,WAAW,IAAIH,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA,cAAcL,eAAe,GAAG,EAAE,GAAG,kBAAmB;AACxD;AACA;AACA;AACA;AACA,cAAcV,YAAY,CAACmB,GAAG,CAACP,CAAC,IAAIA,CAAC,CAACV,MAAM,CAAC,CAACkB,IAAI,CAAC,IAAI,CAAE;AACzD;AACA;AACA,UAAUpB,YAAY,CACTmB,GAAG,CAACP,CAAC,IAAIA,CAAC,CAACS,QAAQ,CAAC,CACpBC,MAAM,CAACC,OAAO,CAAC,CACfH,IAAI,CAAC,IAAI,CAAE;AACxB;AACA,gBAAgBL,YAAa;AAC7B,cAAcP,qBAAsB;AACpC;AACA;AACA;AACA,gBAAgBO,YAAa;AAC7B,cAAcX,sBAAuB;AACrC,oBAAoBW,YAAa;AACjC,mBAAmBA,YAAa;AAChC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,cAAcT,cAAe;AAC7B;AACA;AACA,eAAeS,YAAa;AAC5B,oBAAoBA,YAAa;AACjC;AACA;AACA;AACA,eAAeA,YAAa;AAC5B,qBAAqBA,YAAa;AAClC;AACA;AACA;AACA;AACA;AACA,iBAAiBA,YAAa,WAAUA,YAAa,oBAAmBA,YAAa;AACrF;AACA,kBAAkBE,UAAW;AAC7B,yBAAyBF,YAAa;AACtC,yBAAyBA,YAAa;AACtC;AACA;AACA;AACA,iBAAiBA,YAAa;AAC9B;AACA,KAAK;AACL,CAAC;AAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
|
|
1
|
+
import { CmsDeleteEntryOptions, CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
|
|
2
2
|
interface ResolveDeleteArgs {
|
|
3
3
|
revision: string;
|
|
4
|
+
options?: CmsDeleteEntryOptions;
|
|
4
5
|
}
|
|
5
6
|
declare type ResolveDelete = ResolverFactory<any, ResolveDeleteArgs>;
|
|
6
7
|
export declare const resolveDelete: ResolveDelete;
|
|
@@ -10,13 +10,23 @@ const resolveDelete = ({
|
|
|
10
10
|
model
|
|
11
11
|
}) => async (_, args, context) => {
|
|
12
12
|
try {
|
|
13
|
+
const {
|
|
14
|
+
revision,
|
|
15
|
+
options: deleteOptions
|
|
16
|
+
} = args || {};
|
|
13
17
|
const {
|
|
14
18
|
version
|
|
15
|
-
} = (0, _utils.parseIdentifier)(
|
|
19
|
+
} = (0, _utils.parseIdentifier)(revision);
|
|
16
20
|
if (version) {
|
|
17
|
-
await context.cms.deleteEntryRevision(model,
|
|
21
|
+
await context.cms.deleteEntryRevision(model, revision);
|
|
18
22
|
} else {
|
|
19
|
-
|
|
23
|
+
/**
|
|
24
|
+
* @see CmsDeleteEntryOptions
|
|
25
|
+
*/
|
|
26
|
+
const options = {
|
|
27
|
+
force: (deleteOptions === null || deleteOptions === void 0 ? void 0 : deleteOptions.force) === true
|
|
28
|
+
};
|
|
29
|
+
await context.cms.deleteEntry(model, revision, options);
|
|
20
30
|
}
|
|
21
31
|
return new _responses.Response(true);
|
|
22
32
|
} catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["resolveDelete","model","_","args","context","
|
|
1
|
+
{"version":3,"names":["resolveDelete","model","_","args","context","revision","options","deleteOptions","version","parseIdentifier","cms","deleteEntryRevision","force","deleteEntry","Response","e","ErrorResponse"],"sources":["resolveDelete.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { CmsDeleteEntryOptions, CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\ninterface ResolveDeleteArgs {\n revision: string;\n options?: CmsDeleteEntryOptions;\n}\ntype ResolveDelete = ResolverFactory<any, ResolveDeleteArgs>;\n\nexport const resolveDelete: ResolveDelete =\n ({ model }) =>\n async (_, args, context) => {\n try {\n const { revision, options: deleteOptions } = args || {};\n const { version } = parseIdentifier(revision);\n if (version) {\n await context.cms.deleteEntryRevision(model, revision);\n } else {\n /**\n * @see CmsDeleteEntryOptions\n */\n const options: CmsDeleteEntryOptions = {\n force: deleteOptions?.force === true\n };\n await context.cms.deleteEntry(model, revision, options);\n }\n\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA;AAEA;AAQO,MAAMA,aAA4B,GACrC,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAC,EAAEC,IAAI,EAAEC,OAAO,KAAK;EACxB,IAAI;IACA,MAAM;MAAEC,QAAQ;MAAEC,OAAO,EAAEC;IAAc,CAAC,GAAGJ,IAAI,IAAI,CAAC,CAAC;IACvD,MAAM;MAAEK;IAAQ,CAAC,GAAG,IAAAC,sBAAe,EAACJ,QAAQ,CAAC;IAC7C,IAAIG,OAAO,EAAE;MACT,MAAMJ,OAAO,CAACM,GAAG,CAACC,mBAAmB,CAACV,KAAK,EAAEI,QAAQ,CAAC;IAC1D,CAAC,MAAM;MACH;AAChB;AACA;MACgB,MAAMC,OAA8B,GAAG;QACnCM,KAAK,EAAE,CAAAL,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEK,KAAK,MAAK;MACpC,CAAC;MACD,MAAMR,OAAO,CAACM,GAAG,CAACG,WAAW,CAACZ,KAAK,EAAEI,QAAQ,EAAEC,OAAO,CAAC;IAC3D;IAEA,OAAO,IAAIQ,mBAAQ,CAAC,IAAI,CAAC;EAC7B,CAAC,CAAC,OAAOC,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
|
|
2
|
+
interface ResolveDeleteArgs {
|
|
3
|
+
revision: string;
|
|
4
|
+
}
|
|
5
|
+
declare type ResolveDelete = ResolverFactory<any, ResolveDeleteArgs>;
|
|
6
|
+
export declare const resolveDeleteMultiple: ResolveDelete;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveDeleteMultiple = void 0;
|
|
7
|
+
var _responses = require("@webiny/handler-graphql/responses");
|
|
8
|
+
const resolveDeleteMultiple = ({
|
|
9
|
+
model
|
|
10
|
+
}) => async (_, args, context) => {
|
|
11
|
+
try {
|
|
12
|
+
const response = await context.cms.deleteMultipleEntries(model, {
|
|
13
|
+
entries: (args === null || args === void 0 ? void 0 : args.entries) || []
|
|
14
|
+
});
|
|
15
|
+
return new _responses.ListResponse(response);
|
|
16
|
+
} catch (e) {
|
|
17
|
+
return new _responses.ErrorResponse(e);
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
exports.resolveDeleteMultiple = resolveDeleteMultiple;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveDeleteMultiple","model","_","args","context","response","cms","deleteMultipleEntries","entries","ListResponse","e","ErrorResponse"],"sources":["resolveDeleteMultiple.ts"],"sourcesContent":["import { ErrorResponse, ListResponse } from \"@webiny/handler-graphql/responses\";\nimport { CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\n\ninterface ResolveDeleteArgs {\n revision: string;\n}\n\ntype ResolveDelete = ResolverFactory<any, ResolveDeleteArgs>;\n\nexport const resolveDeleteMultiple: ResolveDelete =\n ({ model }) =>\n async (_, args: any, context) => {\n try {\n const response = await context.cms.deleteMultipleEntries(model, {\n entries: args?.entries || []\n });\n\n return new ListResponse(response);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA;AASO,MAAMA,qBAAoC,GAC7C,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;EAC7B,IAAI;IACA,MAAMC,QAAQ,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,qBAAqB,CAACN,KAAK,EAAE;MAC5DO,OAAO,EAAE,CAAAL,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEK,OAAO,KAAI;IAC9B,CAAC,CAAC;IAEF,OAAO,IAAIC,uBAAY,CAACJ,QAAQ,CAAC;EACrC,CAAC,CAAC,OAAOK,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { CmsEntryListParams, CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
|
|
2
|
+
declare type ResolveGetUniqueFieldValuesList = ResolverFactory<any, CmsEntryListParams>;
|
|
3
|
+
export declare const resolveGetUniqueFieldValues: ResolveGetUniqueFieldValuesList;
|
|
4
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveGetUniqueFieldValues = void 0;
|
|
7
|
+
var _responses = require("@webiny/handler-graphql/responses");
|
|
8
|
+
const resolveGetUniqueFieldValues = ({
|
|
9
|
+
model
|
|
10
|
+
}) => async (_, params, context) => {
|
|
11
|
+
try {
|
|
12
|
+
const response = await context.cms.getUniqueFieldValues(model, params);
|
|
13
|
+
return new _responses.Response(response);
|
|
14
|
+
} catch (e) {
|
|
15
|
+
return new _responses.ListErrorResponse(e);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
exports.resolveGetUniqueFieldValues = resolveGetUniqueFieldValues;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveGetUniqueFieldValues","model","_","params","context","response","cms","getUniqueFieldValues","Response","e","ListErrorResponse"],"sources":["resolveGetUniqueFieldValues.ts"],"sourcesContent":["import { ListErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { CmsEntryListParams, CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\n\ntype ResolveGetUniqueFieldValuesList = ResolverFactory<any, CmsEntryListParams>;\n\nexport const resolveGetUniqueFieldValues: ResolveGetUniqueFieldValuesList =\n ({ model }) =>\n async (_, params: any, context) => {\n try {\n const response = await context.cms.getUniqueFieldValues(model, params);\n\n return new Response(response);\n } catch (e) {\n return new ListErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA;AAKO,MAAMA,2BAA4D,GACrE,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAC,EAAEC,MAAW,EAAEC,OAAO,KAAK;EAC/B,IAAI;IACA,MAAMC,QAAQ,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,oBAAoB,CAACN,KAAK,EAAEE,MAAM,CAAC;IAEtE,OAAO,IAAIK,mBAAQ,CAACH,QAAQ,CAAC;EACjC,CAAC,CAAC,OAAOI,CAAC,EAAE;IACR,OAAO,IAAIC,4BAAiB,CAACD,CAAC,CAAC;EACnC;AACJ,CAAC;AAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CmsEntryResolverFactory as ResolverFactory } from "../../../../types";
|
|
2
|
+
interface ResolveMoveArgs {
|
|
3
|
+
revision: string;
|
|
4
|
+
folderId: string;
|
|
5
|
+
}
|
|
6
|
+
declare type ResolveMove = ResolverFactory<any, ResolveMoveArgs>;
|
|
7
|
+
export declare const resolveMove: ResolveMove;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveMove = void 0;
|
|
7
|
+
var _responses = require("@webiny/handler-graphql/responses");
|
|
8
|
+
const resolveMove = ({
|
|
9
|
+
model
|
|
10
|
+
}) => async (_, args, context) => {
|
|
11
|
+
const {
|
|
12
|
+
revision,
|
|
13
|
+
folderId
|
|
14
|
+
} = args;
|
|
15
|
+
try {
|
|
16
|
+
var _entry$location;
|
|
17
|
+
if (!folderId) {
|
|
18
|
+
throw new Error(`The input value "folderId" is required!`);
|
|
19
|
+
}
|
|
20
|
+
const entry = await context.cms.updateEntry(model, revision, {
|
|
21
|
+
wbyAco_location: {
|
|
22
|
+
folderId
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
return new _responses.Response(((_entry$location = entry.location) === null || _entry$location === void 0 ? void 0 : _entry$location.folderId) === folderId);
|
|
26
|
+
} catch (e) {
|
|
27
|
+
return new _responses.ErrorResponse(e);
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
exports.resolveMove = resolveMove;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["resolveMove","model","_","args","context","revision","folderId","Error","entry","cms","updateEntry","wbyAco_location","Response","location","e","ErrorResponse"],"sources":["resolveMove.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\n\ninterface ResolveMoveArgs {\n revision: string;\n folderId: string;\n}\n\ntype ResolveMove = ResolverFactory<any, ResolveMoveArgs>;\n\nexport const resolveMove: ResolveMove =\n ({ model }) =>\n async (_, args: any, context) => {\n const { revision, folderId } = args;\n try {\n if (!folderId) {\n throw new Error(`The input value \"folderId\" is required!`);\n }\n const entry = await context.cms.updateEntry(model, revision, {\n wbyAco_location: {\n folderId\n }\n });\n\n return new Response(entry.location?.folderId === folderId);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA;AAUO,MAAMA,WAAwB,GACjC,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;EAC7B,MAAM;IAAEC,QAAQ;IAAEC;EAAS,CAAC,GAAGH,IAAI;EACnC,IAAI;IAAA;IACA,IAAI,CAACG,QAAQ,EAAE;MACX,MAAM,IAAIC,KAAK,CAAE,yCAAwC,CAAC;IAC9D;IACA,MAAMC,KAAK,GAAG,MAAMJ,OAAO,CAACK,GAAG,CAACC,WAAW,CAACT,KAAK,EAAEI,QAAQ,EAAE;MACzDM,eAAe,EAAE;QACbL;MACJ;IACJ,CAAC,CAAC;IAEF,OAAO,IAAIM,mBAAQ,CAAC,oBAAAJ,KAAK,CAACK,QAAQ,oDAAd,gBAAgBP,QAAQ,MAAKA,QAAQ,CAAC;EAC9D,CAAC,CAAC,OAAOQ,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAAC"}
|
|
@@ -11,6 +11,7 @@ var _createReadResolvers = require("./createReadResolvers");
|
|
|
11
11
|
var _createPreviewResolvers = require("./createPreviewResolvers");
|
|
12
12
|
var _getSchemaFromFieldPlugins = require("../../utils/getSchemaFromFieldPlugins");
|
|
13
13
|
var _plugins = require("../../plugins");
|
|
14
|
+
var _createFieldTypePluginRecords = require("./createFieldTypePluginRecords");
|
|
14
15
|
const generateSchemaPlugins = async params => {
|
|
15
16
|
const {
|
|
16
17
|
context,
|
|
@@ -33,10 +34,7 @@ const generateSchemaPlugins = async params => {
|
|
|
33
34
|
}
|
|
34
35
|
|
|
35
36
|
// Structure plugins for faster access
|
|
36
|
-
const fieldTypePlugins =
|
|
37
|
-
acc[pl.fieldType] = pl;
|
|
38
|
-
return acc;
|
|
39
|
-
}, {});
|
|
37
|
+
const fieldTypePlugins = (0, _createFieldTypePluginRecords.createFieldTypePluginRecords)(plugins);
|
|
40
38
|
const sorterPlugins = plugins.byType(_plugins.CmsGraphQLSchemaSorterPlugin.type);
|
|
41
39
|
const schemaPlugins = (0, _getSchemaFromFieldPlugins.createGraphQLSchemaPluginFromFieldPlugins)({
|
|
42
40
|
models,
|
|
@@ -44,13 +42,6 @@ const generateSchemaPlugins = async params => {
|
|
|
44
42
|
type
|
|
45
43
|
});
|
|
46
44
|
models.filter(model => {
|
|
47
|
-
/**
|
|
48
|
-
* TODO @bruno Remove before 5.35.0
|
|
49
|
-
* Temporary check for the development.
|
|
50
|
-
*/
|
|
51
|
-
if (!model.singularApiName || !model.pluralApiName) {
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
45
|
return model.fields.length > 0;
|
|
55
46
|
}).forEach(model => {
|
|
56
47
|
switch (type) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","
|
|
1
|
+
{"version":3,"names":["generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","createFieldTypePluginRecords","sorterPlugins","byType","CmsGraphQLSchemaSorterPlugin","schemaPlugins","createGraphQLSchemaPluginFromFieldPlugins","filter","model","fields","length","forEach","plugin","CmsGraphQLSchemaPlugin","typeDefs","createManageSDL","resolvers","createManageResolvers","name","modelId","push","createReadSDL","READ","createReadResolvers","createPreviewResolvers","pl","schema"],"sources":["schemaPlugins.ts"],"sourcesContent":["import { CmsContext, CmsModel } from \"~/types\";\nimport { createManageSDL } from \"./createManageSDL\";\nimport { createReadSDL } from \"./createReadSDL\";\nimport { createManageResolvers } from \"./createManageResolvers\";\nimport { createReadResolvers } from \"./createReadResolvers\";\nimport { createPreviewResolvers } from \"./createPreviewResolvers\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"~/utils/getSchemaFromFieldPlugins\";\nimport { CmsGraphQLSchemaPlugin, CmsGraphQLSchemaSorterPlugin } from \"~/plugins\";\nimport { createFieldTypePluginRecords } from \"~/graphql/schema/createFieldTypePluginRecords\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<CmsGraphQLSchemaPlugin[]> => {\n const { context, models } = params;\n const { plugins, cms } = context;\n\n /**\n * If type does not exist, we are not generating schema plugins for models.\n * It should not come to this point, but we check it anyways.\n */\n const { type } = cms;\n if (!type) {\n return [];\n }\n\n // Structure plugins for faster access\n const fieldTypePlugins = createFieldTypePluginRecords(plugins);\n\n const sorterPlugins = plugins.byType<CmsGraphQLSchemaSorterPlugin>(\n CmsGraphQLSchemaSorterPlugin.type\n );\n\n const schemaPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n fieldTypePlugins,\n type\n });\n\n models\n .filter(model => {\n return model.fields.length > 0;\n })\n .forEach(model => {\n switch (type) {\n case \"manage\":\n {\n const plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: createManageSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: createManageResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.manage.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n\n break;\n case \"preview\":\n case \"read\":\n {\n const plugin = new CmsGraphQLSchemaPlugin({\n typeDefs: createReadSDL({\n models,\n model,\n fieldTypePlugins,\n sorterPlugins\n }),\n resolvers: cms.READ\n ? createReadResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n : createPreviewResolvers({\n models,\n model,\n fieldTypePlugins,\n context\n })\n });\n plugin.name = `headless-cms.graphql.schema.${type}.${model.modelId}`;\n schemaPlugins.push(plugin);\n }\n break;\n default:\n return;\n }\n });\n\n return schemaPlugins.filter(pl => !!pl.schema.typeDefs);\n};\n"],"mappings":";;;;;;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOO,MAAMA,qBAAqB,GAAG,MACjCC,MAAmC,IACC;EACpC,MAAM;IAAEC,OAAO;IAAEC;EAAO,CAAC,GAAGF,MAAM;EAClC,MAAM;IAAEG,OAAO;IAAEC;EAAI,CAAC,GAAGH,OAAO;;EAEhC;AACJ;AACA;AACA;EACI,MAAM;IAAEI;EAAK,CAAC,GAAGD,GAAG;EACpB,IAAI,CAACC,IAAI,EAAE;IACP,OAAO,EAAE;EACb;;EAEA;EACA,MAAMC,gBAAgB,GAAG,IAAAC,0DAA4B,EAACJ,OAAO,CAAC;EAE9D,MAAMK,aAAa,GAAGL,OAAO,CAACM,MAAM,CAChCC,qCAA4B,CAACL,IAAI,CACpC;EAED,MAAMM,aAAa,GAAG,IAAAC,oEAAyC,EAAC;IAC5DV,MAAM;IACNI,gBAAgB;IAChBD;EACJ,CAAC,CAAC;EAEFH,MAAM,CACDW,MAAM,CAACC,KAAK,IAAI;IACb,OAAOA,KAAK,CAACC,MAAM,CAACC,MAAM,GAAG,CAAC;EAClC,CAAC,CAAC,CACDC,OAAO,CAACH,KAAK,IAAI;IACd,QAAQT,IAAI;MACR,KAAK,QAAQ;QACT;UACI,MAAMa,MAAM,GAAG,IAAIC,+BAAsB,CAAC;YACtCC,QAAQ,EAAE,IAAAC,gCAAe,EAAC;cACtBnB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBE;YACJ,CAAC,CAAC;YACFc,SAAS,EAAE,IAAAC,4CAAqB,EAAC;cAC7BrB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC;UACL,CAAC,CAAC;UACFiB,MAAM,CAACM,IAAI,GAAI,sCAAqCV,KAAK,CAACW,OAAQ,EAAC;UACnEd,aAAa,CAACe,IAAI,CAACR,MAAM,CAAC;QAC9B;QAEA;MACJ,KAAK,SAAS;MACd,KAAK,MAAM;QACP;UACI,MAAMA,MAAM,GAAG,IAAIC,+BAAsB,CAAC;YACtCC,QAAQ,EAAE,IAAAO,4BAAa,EAAC;cACpBzB,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBE;YACJ,CAAC,CAAC;YACFc,SAAS,EAAElB,GAAG,CAACwB,IAAI,GACb,IAAAC,wCAAmB,EAAC;cAChB3B,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC,CAAC,GACF,IAAA6B,8CAAsB,EAAC;cACnB5B,MAAM;cACNY,KAAK;cACLR,gBAAgB;cAChBL;YACJ,CAAC;UACX,CAAC,CAAC;UACFiB,MAAM,CAACM,IAAI,GAAI,+BAA8BnB,IAAK,IAAGS,KAAK,CAACW,OAAQ,EAAC;UACpEd,aAAa,CAACe,IAAI,CAACR,MAAM,CAAC;QAC9B;QACA;MACJ;QACI;IAAO;EAEnB,CAAC,CAAC;EAEN,OAAOP,aAAa,CAACE,MAAM,CAACkB,EAAE,IAAI,CAAC,CAACA,EAAE,CAACC,MAAM,CAACZ,QAAQ,CAAC;AAC3D,CAAC;AAAC"}
|
package/graphql/system.d.ts
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
+
import { GraphQLSchemaPlugin } from "@webiny/handler-graphql";
|
|
1
2
|
import { CmsContext } from "../types";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* We only register system schema plugin if the endpoint is not manage/preview/read.
|
|
5
|
-
*/
|
|
6
|
-
export declare const createSystemSchemaPlugin: () => ContextPlugin<CmsContext>;
|
|
3
|
+
export declare const createSystemSchemaPlugin: () => GraphQLSchemaPlugin<CmsContext>;
|
package/graphql/system.js
CHANGED
|
@@ -5,7 +5,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createSystemSchemaPlugin = void 0;
|
|
7
7
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
8
|
-
var _api = require("@webiny/api");
|
|
9
8
|
const emptyResolver = () => ({});
|
|
10
9
|
const plugin = new _handlerGraphql.GraphQLSchemaPlugin({
|
|
11
10
|
typeDefs: /* GraphQL */`
|
|
@@ -72,16 +71,7 @@ const plugin = new _handlerGraphql.GraphQLSchemaPlugin({
|
|
|
72
71
|
}
|
|
73
72
|
});
|
|
74
73
|
plugin.name = "cms.graphql.schema.system";
|
|
75
|
-
/**
|
|
76
|
-
* We only register system schema plugin if the endpoint is not manage/preview/read.
|
|
77
|
-
*/
|
|
78
74
|
const createSystemSchemaPlugin = () => {
|
|
79
|
-
return
|
|
80
|
-
var _context$cms;
|
|
81
|
-
if ((_context$cms = context.cms) !== null && _context$cms !== void 0 && _context$cms.type) {
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
context.plugins.register(plugin);
|
|
85
|
-
});
|
|
75
|
+
return plugin;
|
|
86
76
|
};
|
|
87
77
|
exports.createSystemSchemaPlugin = createSystemSchemaPlugin;
|
package/graphql/system.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["emptyResolver","plugin","GraphQLSchemaPlugin","typeDefs","resolvers","Query","cms","Mutation","CmsQuery","version","_","__","context","getSystemVersion","e","ErrorResponse","CmsMutation","install","code","message","installSystem","Response","name","createSystemSchemaPlugin"
|
|
1
|
+
{"version":3,"names":["emptyResolver","plugin","GraphQLSchemaPlugin","typeDefs","resolvers","Query","cms","Mutation","CmsQuery","version","_","__","context","getSystemVersion","e","ErrorResponse","CmsMutation","install","code","message","installSystem","Response","name","createSystemSchemaPlugin"],"sources":["system.ts"],"sourcesContent":["import { ErrorResponse, GraphQLSchemaPlugin, Response } from \"@webiny/handler-graphql\";\nimport { CmsContext } from \"~/types\";\n\nconst emptyResolver = () => ({});\n\nconst plugin = new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n extend type Query {\n cms: CmsQuery\n }\n\n extend type Mutation {\n cms: CmsMutation\n }\n\n type CmsQuery {\n _empty: String\n }\n\n type CmsMutation {\n _empty: String\n }\n extend type CmsQuery {\n # Get installed version\n version: String\n }\n\n extend type CmsMutation {\n # Install CMS\n install: CmsBooleanResponse\n }\n `,\n resolvers: {\n Query: {\n cms: emptyResolver\n },\n Mutation: {\n cms: emptyResolver\n },\n CmsQuery: {\n version: async (_: any, __: any, context: CmsContext) => {\n try {\n return context.cms.getSystemVersion();\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n CmsMutation: {\n install: async (_: any, __: any, { cms }: CmsContext) => {\n try {\n const version = await cms.getSystemVersion();\n if (version) {\n return new ErrorResponse({\n code: \"CMS_INSTALLATION_ERROR\",\n message: \"CMS is already installed.\"\n });\n }\n\n await cms.installSystem();\n return new Response(true);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\nplugin.name = \"cms.graphql.schema.system\";\n\nexport const createSystemSchemaPlugin = () => {\n return plugin;\n};\n"],"mappings":";;;;;;AAAA;AAGA,MAAMA,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;AAEhC,MAAMC,MAAM,GAAG,IAAIC,mCAAmB,CAAC;EACnCC,QAAQ,EAAE,aAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EACDC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,GAAG,EAAEN;IACT,CAAC;IACDO,QAAQ,EAAE;MACND,GAAG,EAAEN;IACT,CAAC;IACDQ,QAAQ,EAAE;MACNC,OAAO,EAAE,OAAOC,CAAM,EAAEC,EAAO,EAAEC,OAAmB,KAAK;QACrD,IAAI;UACA,OAAOA,OAAO,CAACN,GAAG,CAACO,gBAAgB,EAAE;QACzC,CAAC,CAAC,OAAOC,CAAC,EAAE;UACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;QAC/B;MACJ;IACJ,CAAC;IACDE,WAAW,EAAE;MACTC,OAAO,EAAE,OAAOP,CAAM,EAAEC,EAAO,EAAE;QAAEL;MAAgB,CAAC,KAAK;QACrD,IAAI;UACA,MAAMG,OAAO,GAAG,MAAMH,GAAG,CAACO,gBAAgB,EAAE;UAC5C,IAAIJ,OAAO,EAAE;YACT,OAAO,IAAIM,6BAAa,CAAC;cACrBG,IAAI,EAAE,wBAAwB;cAC9BC,OAAO,EAAE;YACb,CAAC,CAAC;UACN;UAEA,MAAMb,GAAG,CAACc,aAAa,EAAE;UACzB,OAAO,IAAIC,wBAAQ,CAAC,IAAI,CAAC;QAC7B,CAAC,CAAC,OAAOP,CAAC,EAAE;UACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;QAC/B;MACJ;IACJ;EACJ;AACJ,CAAC,CAAC;AACFb,MAAM,CAACqB,IAAI,GAAG,2BAA2B;AAElC,MAAMC,wBAAwB,GAAG,MAAM;EAC1C,OAAOtB,MAAM;AACjB,CAAC;AAAC"}
|