@webiny/api-headless-cms 5.40.5-beta.0 → 5.40.6-beta.0
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 +2 -1
- package/constants.js.map +1 -1
- package/crud/contentModel/beforeDelete.js +31 -0
- package/crud/contentModel/beforeDelete.js.map +1 -1
- package/crud/contentModel.crud.js +8 -1
- package/crud/contentModel.crud.js.map +1 -1
- package/export/crud/sanitize.js +2 -1
- package/export/crud/sanitize.js.map +1 -1
- package/export/types.d.ts +1 -1
- package/export/types.js.map +1 -1
- package/graphql/schema/createManageResolvers.js +0 -6
- package/graphql/schema/createManageResolvers.js.map +1 -1
- package/graphql/schema/createManageSDL.js +0 -3
- package/graphql/schema/createManageSDL.js.map +1 -1
- package/graphql/schema/createPreviewResolvers.js +0 -5
- package/graphql/schema/createPreviewResolvers.js.map +1 -1
- package/graphql/schema/createReadResolvers.js +0 -5
- package/graphql/schema/createReadResolvers.js.map +1 -1
- package/graphql/schema/createReadSDL.js +1 -4
- package/graphql/schema/createReadSDL.js.map +1 -1
- package/graphql/schema/createSingularResolvers.d.ts +13 -0
- package/graphql/schema/createSingularResolvers.js +56 -0
- package/graphql/schema/createSingularResolvers.js.map +1 -0
- package/graphql/schema/createSingularSDL.d.ts +12 -0
- package/graphql/schema/createSingularSDL.js +91 -0
- package/graphql/schema/createSingularSDL.js.map +1 -0
- package/graphql/schema/resolvers/singular/resolveGet.d.ts +7 -0
- package/graphql/schema/resolvers/singular/resolveGet.js +21 -0
- package/graphql/schema/resolvers/singular/resolveGet.js.map +1 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.d.ts +8 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.js +21 -0
- package/graphql/schema/resolvers/singular/resolveUpdate.js.map +1 -0
- package/graphql/schema/schemaPlugins.js +24 -3
- package/graphql/schema/schemaPlugins.js.map +1 -1
- package/modelManager/DefaultCmsModelManager.d.ts +4 -4
- package/modelManager/DefaultCmsModelManager.js +13 -13
- package/modelManager/DefaultCmsModelManager.js.map +1 -1
- package/modelManager/SingletonModelManager.d.ts +12 -0
- package/modelManager/SingletonModelManager.js +48 -0
- package/modelManager/SingletonModelManager.js.map +1 -0
- package/modelManager/index.d.ts +1 -0
- package/modelManager/index.js +15 -0
- package/modelManager/index.js.map +1 -1
- package/package.json +20 -20
- package/types/types.d.ts +8 -2
- package/types/types.js.map +1 -1
|
@@ -12,11 +12,6 @@ const createPreviewResolvers = ({
|
|
|
12
12
|
model,
|
|
13
13
|
fieldTypePlugins
|
|
14
14
|
}) => {
|
|
15
|
-
if (model.fields.length === 0) {
|
|
16
|
-
return {
|
|
17
|
-
Query: {}
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
15
|
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
21
16
|
endpointType: "read",
|
|
22
17
|
models,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_resolveGet","require","_resolveList","_createFieldResolvers","createPreviewResolvers","models","model","fieldTypePlugins","
|
|
1
|
+
{"version":3,"names":["_resolveGet","require","_resolveList","_createFieldResolvers","createPreviewResolvers","models","model","fieldTypePlugins","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","fields","isRoot","Query","resolveGet","pluralApiName","resolveList","exports"],"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 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, fieldTypePlugins }),\n [`list${model.pluralApiName}`]: resolveList({ model, fieldTypePlugins })\n },\n ...fieldResolvers\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,qBAAA,GAAAF,OAAA;AAcO,MAAMG,sBAA2C,GAAGA,CAAC;EACxDC,MAAM;EACNC,KAAK;EACLC;AACJ,CAAC,KAAK;EACF,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAE,MAAM;IACpBL,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMI,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAEN,KAAK,CAACO,eAAe;IAClCC,MAAM,EAAER,KAAK,CAACQ,MAAM;IACpBC,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,OAAO;IACHC,KAAK,EAAE;MACH,CAAE,MAAKV,KAAK,CAACO,eAAgB,EAAC,GAAG,IAAAI,sBAAU,EAAC;QAAEX,KAAK;QAAEC;MAAiB,CAAC,CAAC;MACxE,CAAE,OAAMD,KAAK,CAACY,aAAc,EAAC,GAAG,IAAAC,wBAAW,EAAC;QAAEb,KAAK;QAAEC;MAAiB,CAAC;IAC3E,CAAC;IACD,GAAGI;EACP,CAAC;AACL,CAAC;AAACS,OAAA,CAAAhB,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -12,11 +12,6 @@ const createReadResolvers = ({
|
|
|
12
12
|
model,
|
|
13
13
|
fieldTypePlugins
|
|
14
14
|
}) => {
|
|
15
|
-
if (model.fields.length === 0) {
|
|
16
|
-
return {
|
|
17
|
-
Query: {}
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
15
|
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
21
16
|
endpointType: "read",
|
|
22
17
|
models,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_resolveGet","require","_resolveList","_createFieldResolvers","createReadResolvers","models","model","fieldTypePlugins","
|
|
1
|
+
{"version":3,"names":["_resolveGet","require","_resolveList","_createFieldResolvers","createReadResolvers","models","model","fieldTypePlugins","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","fields","isRoot","Query","resolveGet","pluralApiName","resolveList","modelId","exports"],"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 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, fieldTypePlugins }),\n [`list${model.pluralApiName}`]: resolveList({ model, fieldTypePlugins })\n },\n [model.singularApiName]: {\n modelId: () => {\n return model.modelId;\n }\n },\n ...fieldResolvers\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,qBAAA,GAAAF,OAAA;AAcO,MAAMG,mBAAwC,GAAGA,CAAC;EAAEC,MAAM;EAAEC,KAAK;EAAEC;AAAiB,CAAC,KAAK;EAC7F,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAE,MAAM;IACpBL,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMI,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAEN,KAAK,CAACO,eAAe;IAClCC,MAAM,EAAER,KAAK,CAACQ,MAAM;IACpBC,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,OAAO;IACHC,KAAK,EAAE;MACH,CAAE,MAAKV,KAAK,CAACO,eAAgB,EAAC,GAAG,IAAAI,sBAAU,EAAC;QAAEX,KAAK;QAAEC;MAAiB,CAAC,CAAC;MACxE,CAAE,OAAMD,KAAK,CAACY,aAAc,EAAC,GAAG,IAAAC,wBAAW,EAAC;QAAEb,KAAK;QAAEC;MAAiB,CAAC;IAC3E,CAAC;IACD,CAACD,KAAK,CAACO,eAAe,GAAG;MACrBO,OAAO,EAAEA,CAAA,KAAM;QACX,OAAOd,KAAK,CAACc,OAAO;MACxB;IACJ,CAAC;IACD,GAAGT;EACP,CAAC;AACL,CAAC;AAACU,OAAA,CAAAjB,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -23,9 +23,6 @@ const createReadSDL = ({
|
|
|
23
23
|
type,
|
|
24
24
|
fieldTypePlugins
|
|
25
25
|
});
|
|
26
|
-
if (fieldsRender.length === 0) {
|
|
27
|
-
return "";
|
|
28
|
-
}
|
|
29
26
|
const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
|
|
30
27
|
model,
|
|
31
28
|
fields: model.fields,
|
|
@@ -58,7 +55,7 @@ const createReadSDL = ({
|
|
|
58
55
|
entryId: String!
|
|
59
56
|
${hasModelIdField ? "" : "modelId: String!"}
|
|
60
57
|
|
|
61
|
-
${onByMetaGqlFields}
|
|
58
|
+
${onByMetaGqlFields}
|
|
62
59
|
|
|
63
60
|
publishedOn: DateTime @deprecated(reason: "Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.")
|
|
64
61
|
ownedBy: CmsIdentity @deprecated(reason: "Field was removed with the 5.39.0 release. Use 'createdBy' field.")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderFields","_renderGetFilterFields","_constants","createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","fieldsRender","renderFields","fields","
|
|
1
|
+
{"version":3,"names":["_renderListFilterFields","require","_renderSortEnum","_renderFields","_renderGetFilterFields","_constants","createReadSDL","models","model","fieldTypePlugins","sorterPlugins","type","fieldsRender","renderFields","fields","listFilterFieldsRender","renderListFilterFields","sortEnumRender","renderSortEnum","getFilterFieldsRender","renderGetFilterFields","hasModelIdField","some","f","fieldId","singularApiName","singularName","pluralApiName","pluralName","onByMetaGqlFields","ENTRY_META_FIELDS","map","field","fieldType","isDateTimeEntryMetaField","join","description","typeDefs","filter","Boolean","exports"],"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\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateReadSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n sorterPlugins: CmsGraphQLSchemaSorterPlugin[];\n}\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 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 const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n return `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n ${hasModelIdField ? \"\" : \"modelId: String!\"}\n \n ${onByMetaGqlFields}\n \n publishedOn: DateTime @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'firstPublishedOn' or 'lastPublishedOn' field.\")\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \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,IAAAA,uBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,sBAAA,GAAAH,OAAA;AAEA,IAAAI,UAAA,GAAAJ,OAAA;AAaO,MAAMK,aAA4B,GAAGA,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,MAAMM,sBAAsB,GAAG,IAAAC,8CAAsB,EAAC;IAClDR,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBH,IAAI;IACJF;EACJ,CAAC,CAAC;EACF,MAAMQ,cAAc,GAAG,IAAAC,8BAAc,EAAC;IAClCV,KAAK;IACLM,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL,gBAAgB;IAChBC;EACJ,CAAC,CAAC;EACF,MAAMS,qBAAqB,GAAG,IAAAC,4CAAqB,EAAC;IAChDN,MAAM,EAAEN,KAAK,CAACM,MAAM;IACpBL;EACJ,CAAC,CAAC;EAEF,MAAMY,eAAe,GAAGb,KAAK,CAACM,MAAM,CAACQ,IAAI,CAACC,CAAC,IAAIA,CAAC,CAACC,OAAO,KAAK,SAAS,CAAC;EAEvE,MAAM;IAAEC,eAAe,EAAEC,YAAY;IAAEC,aAAa,EAAEC;EAAW,CAAC,GAAGpB,KAAK;EAE1E,MAAMqB,iBAAiB,GAAGC,4BAAiB,CAACC,GAAG,CAACC,KAAK,IAAI;IACrD,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,aAAa;IAE9E,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;EAEb,OAAQ;AACZ,aAAa3B,KAAK,CAAC4B,WAAW,IAAIV,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA,cAAcL,eAAe,GAAG,EAAE,GAAG,kBAAmB;AACxD;AACA,cAAcQ,iBAAkB;AAChC;AACA;AACA;AACA;AACA,cAAcjB,YAAY,CAACmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACT,MAAM,CAAC,CAACqB,IAAI,CAAC,IAAI,CAAE;AACzD;AACA;AACA,UAAUvB,YAAY,CACTmB,GAAG,CAACR,CAAC,IAAIA,CAAC,CAACc,QAAQ,CAAC,CACpBC,MAAM,CAACC,OAAO,CAAC,CACfJ,IAAI,CAAC,IAAI,CAAE;AACxB;AACA,gBAAgBT,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;AAACc,OAAA,CAAAlC,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel } from "../../types";
|
|
2
|
+
interface CreateSingularResolversParams {
|
|
3
|
+
models: CmsModel[];
|
|
4
|
+
model: CmsModel;
|
|
5
|
+
context: CmsContext;
|
|
6
|
+
fieldTypePlugins: CmsFieldTypePlugins;
|
|
7
|
+
type: ApiEndpoint;
|
|
8
|
+
}
|
|
9
|
+
interface CreateSingularResolvers {
|
|
10
|
+
(params: CreateSingularResolversParams): any;
|
|
11
|
+
}
|
|
12
|
+
export declare const createSingularResolvers: CreateSingularResolvers;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createSingularResolvers = void 0;
|
|
7
|
+
var _resolveGet = require("./resolvers/singular/resolveGet");
|
|
8
|
+
var _resolveUpdate = require("./resolvers/singular/resolveUpdate");
|
|
9
|
+
var _normalizeGraphQlInput = require("./resolvers/manage/normalizeGraphQlInput");
|
|
10
|
+
var _createFieldResolvers = require("./createFieldResolvers");
|
|
11
|
+
const createSingularResolvers = ({
|
|
12
|
+
models,
|
|
13
|
+
model,
|
|
14
|
+
fieldTypePlugins,
|
|
15
|
+
type
|
|
16
|
+
}) => {
|
|
17
|
+
if (model.fields.length === 0) {
|
|
18
|
+
return {
|
|
19
|
+
Query: {},
|
|
20
|
+
Mutation: {}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
const createFieldResolvers = (0, _createFieldResolvers.createFieldResolversFactory)({
|
|
24
|
+
endpointType: "manage",
|
|
25
|
+
models,
|
|
26
|
+
model,
|
|
27
|
+
fieldTypePlugins
|
|
28
|
+
});
|
|
29
|
+
const fieldResolvers = createFieldResolvers({
|
|
30
|
+
graphQLType: model.singularApiName,
|
|
31
|
+
fields: model.fields,
|
|
32
|
+
isRoot: true
|
|
33
|
+
});
|
|
34
|
+
const resolverFactoryParams = {
|
|
35
|
+
model,
|
|
36
|
+
fieldTypePlugins
|
|
37
|
+
};
|
|
38
|
+
const result = {
|
|
39
|
+
Query: {
|
|
40
|
+
[`get${model.singularApiName}`]: (0, _resolveGet.resolveGet)(resolverFactoryParams)
|
|
41
|
+
},
|
|
42
|
+
...fieldResolvers
|
|
43
|
+
};
|
|
44
|
+
if (type !== "manage") {
|
|
45
|
+
return result;
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
...result,
|
|
49
|
+
Mutation: {
|
|
50
|
+
[`update${model.singularApiName}`]: (0, _normalizeGraphQlInput.normalizeGraphQlInput)(_resolveUpdate.resolveUpdate)(resolverFactoryParams)
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
exports.createSingularResolvers = createSingularResolvers;
|
|
55
|
+
|
|
56
|
+
//# sourceMappingURL=createSingularResolvers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_resolveGet","require","_resolveUpdate","_normalizeGraphQlInput","_createFieldResolvers","createSingularResolvers","models","model","fieldTypePlugins","type","fields","length","Query","Mutation","createFieldResolvers","createFieldResolversFactory","endpointType","fieldResolvers","graphQLType","singularApiName","isRoot","resolverFactoryParams","result","resolveGet","normalizeGraphQlInput","resolveUpdate","exports"],"sources":["createSingularResolvers.ts"],"sourcesContent":["import { ApiEndpoint, CmsContext, CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { resolveGet } from \"./resolvers/singular/resolveGet\";\nimport { resolveUpdate } from \"./resolvers/singular/resolveUpdate\";\nimport { normalizeGraphQlInput } from \"./resolvers/manage/normalizeGraphQlInput\";\nimport { createFieldResolversFactory } from \"./createFieldResolvers\";\n\ninterface CreateSingularResolversParams {\n models: CmsModel[];\n model: CmsModel;\n context: CmsContext;\n fieldTypePlugins: CmsFieldTypePlugins;\n type: ApiEndpoint;\n}\n\ninterface CreateSingularResolvers {\n // TODO @ts-refactor determine correct type.\n (params: CreateSingularResolversParams): any;\n}\n\nexport const createSingularResolvers: CreateSingularResolvers = ({\n models,\n model,\n fieldTypePlugins,\n type\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 });\n\n const resolverFactoryParams = { model, fieldTypePlugins };\n\n const result = {\n Query: {\n [`get${model.singularApiName}`]: resolveGet(resolverFactoryParams)\n },\n ...fieldResolvers\n };\n if (type !== \"manage\") {\n return result;\n }\n return {\n ...result,\n Mutation: {\n [`update${model.singularApiName}`]:\n normalizeGraphQlInput(resolveUpdate)(resolverFactoryParams)\n }\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,qBAAA,GAAAH,OAAA;AAeO,MAAMI,uBAAgD,GAAGA,CAAC;EAC7DC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAK;EACF,IAAIF,KAAK,CAACG,MAAM,CAACC,MAAM,KAAK,CAAC,EAAE;IAC3B,OAAO;MACHC,KAAK,EAAE,CAAC,CAAC;MACTC,QAAQ,EAAE,CAAC;IACf,CAAC;EACL;EAEA,MAAMC,oBAAoB,GAAG,IAAAC,iDAA2B,EAAC;IACrDC,YAAY,EAAE,QAAQ;IACtBV,MAAM;IACNC,KAAK;IACLC;EACJ,CAAC,CAAC;EAEF,MAAMS,cAAc,GAAGH,oBAAoB,CAAC;IACxCI,WAAW,EAAEX,KAAK,CAACY,eAAe;IAClCT,MAAM,EAAEH,KAAK,CAACG,MAAM;IACpBU,MAAM,EAAE;EACZ,CAAC,CAAC;EAEF,MAAMC,qBAAqB,GAAG;IAAEd,KAAK;IAAEC;EAAiB,CAAC;EAEzD,MAAMc,MAAM,GAAG;IACXV,KAAK,EAAE;MACH,CAAE,MAAKL,KAAK,CAACY,eAAgB,EAAC,GAAG,IAAAI,sBAAU,EAACF,qBAAqB;IACrE,CAAC;IACD,GAAGJ;EACP,CAAC;EACD,IAAIR,IAAI,KAAK,QAAQ,EAAE;IACnB,OAAOa,MAAM;EACjB;EACA,OAAO;IACH,GAAGA,MAAM;IACTT,QAAQ,EAAE;MACN,CAAE,SAAQN,KAAK,CAACY,eAAgB,EAAC,GAC7B,IAAAK,4CAAqB,EAACC,4BAAa,CAAC,CAACJ,qBAAqB;IAClE;EACJ,CAAC;AACL,CAAC;AAACK,OAAA,CAAArB,uBAAA,GAAAA,uBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { ApiEndpoint, CmsFieldTypePlugins, CmsModel } from "../../types";
|
|
2
|
+
interface CreateSingularSDLParams {
|
|
3
|
+
models: CmsModel[];
|
|
4
|
+
model: CmsModel;
|
|
5
|
+
fieldTypePlugins: CmsFieldTypePlugins;
|
|
6
|
+
type: ApiEndpoint;
|
|
7
|
+
}
|
|
8
|
+
interface CreateSingularSDL {
|
|
9
|
+
(params: CreateSingularSDLParams): string;
|
|
10
|
+
}
|
|
11
|
+
export declare const createSingularSDL: CreateSingularSDL;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.createSingularSDL = void 0;
|
|
7
|
+
var _renderInputFields = require("../../utils/renderInputFields");
|
|
8
|
+
var _renderFields = require("../../utils/renderFields");
|
|
9
|
+
var _constants = require("../../constants");
|
|
10
|
+
const createSingularSDL = ({
|
|
11
|
+
models,
|
|
12
|
+
model,
|
|
13
|
+
fieldTypePlugins,
|
|
14
|
+
type
|
|
15
|
+
}) => {
|
|
16
|
+
const inputFields = (0, _renderInputFields.renderInputFields)({
|
|
17
|
+
models,
|
|
18
|
+
model,
|
|
19
|
+
fields: model.fields,
|
|
20
|
+
fieldTypePlugins
|
|
21
|
+
});
|
|
22
|
+
if (inputFields.length === 0) {
|
|
23
|
+
return "";
|
|
24
|
+
}
|
|
25
|
+
const fields = (0, _renderFields.renderFields)({
|
|
26
|
+
models,
|
|
27
|
+
model,
|
|
28
|
+
fields: model.fields,
|
|
29
|
+
type: "manage",
|
|
30
|
+
fieldTypePlugins
|
|
31
|
+
});
|
|
32
|
+
const {
|
|
33
|
+
singularApiName: singularName
|
|
34
|
+
} = model;
|
|
35
|
+
const inputGqlFields = inputFields.map(f => f.fields).join("\n");
|
|
36
|
+
const onByMetaInputGqlFields = _constants.ENTRY_META_FIELDS.map(field => {
|
|
37
|
+
const fieldType = (0, _constants.isDateTimeEntryMetaField)(field) ? "DateTime" : "CmsIdentityInput";
|
|
38
|
+
return `${field}: ${fieldType}`;
|
|
39
|
+
}).join("\n");
|
|
40
|
+
const onByMetaGqlFields = _constants.ENTRY_META_FIELDS.map(field => {
|
|
41
|
+
const fieldType = (0, _constants.isDateTimeEntryMetaField)(field) ? "DateTime" : "CmsIdentity";
|
|
42
|
+
return `${field}: ${fieldType}`;
|
|
43
|
+
}).join("\n");
|
|
44
|
+
|
|
45
|
+
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
46
|
+
const read = `
|
|
47
|
+
"""${model.description || singularName}"""
|
|
48
|
+
type ${singularName} {
|
|
49
|
+
id: ID!
|
|
50
|
+
entryId: String!
|
|
51
|
+
|
|
52
|
+
${onByMetaGqlFields}
|
|
53
|
+
|
|
54
|
+
ownedBy: CmsIdentity @deprecated(reason: "Field was removed with the 5.39.0 release. Use 'createdBy' field.")
|
|
55
|
+
|
|
56
|
+
${fields.map(f => f.fields).join("\n")}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
${fields.map(f => f.typeDefs).join("\n")}
|
|
60
|
+
|
|
61
|
+
type ${singularName}Response {
|
|
62
|
+
data: ${singularName}
|
|
63
|
+
error: CmsError
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
extend type Query {
|
|
67
|
+
get${singularName}: ${singularName}Response
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
`;
|
|
71
|
+
if (type !== "manage") {
|
|
72
|
+
return read;
|
|
73
|
+
}
|
|
74
|
+
return `
|
|
75
|
+
${read}
|
|
76
|
+
|
|
77
|
+
${inputFields.map(f => f.typeDefs).join("\n")}
|
|
78
|
+
|
|
79
|
+
input ${singularName}Input {
|
|
80
|
+
${onByMetaInputGqlFields}
|
|
81
|
+
${inputGqlFields}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
extend type Mutation {
|
|
85
|
+
update${singularName}(data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response
|
|
86
|
+
}
|
|
87
|
+
`;
|
|
88
|
+
};
|
|
89
|
+
exports.createSingularSDL = createSingularSDL;
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=createSingularSDL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_renderInputFields","require","_renderFields","_constants","createSingularSDL","models","model","fieldTypePlugins","type","inputFields","renderInputFields","fields","length","renderFields","singularApiName","singularName","inputGqlFields","map","f","join","onByMetaInputGqlFields","ENTRY_META_FIELDS","field","fieldType","isDateTimeEntryMetaField","onByMetaGqlFields","read","description","typeDefs","exports"],"sources":["createSingularSDL.ts"],"sourcesContent":["import { ApiEndpoint, CmsFieldTypePlugins, CmsModel } from \"~/types\";\nimport { renderInputFields } from \"~/utils/renderInputFields\";\nimport { renderFields } from \"~/utils/renderFields\";\nimport { ENTRY_META_FIELDS, isDateTimeEntryMetaField } from \"~/constants\";\n\ninterface CreateSingularSDLParams {\n models: CmsModel[];\n model: CmsModel;\n fieldTypePlugins: CmsFieldTypePlugins;\n type: ApiEndpoint;\n}\n\ninterface CreateSingularSDL {\n (params: CreateSingularSDLParams): string;\n}\n\nexport const createSingularSDL: CreateSingularSDL = ({\n models,\n model,\n fieldTypePlugins,\n type\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\n const fields = renderFields({\n models,\n model,\n fields: model.fields,\n type: \"manage\",\n fieldTypePlugins\n });\n\n const { singularApiName: singularName } = model;\n\n const inputGqlFields = inputFields.map(f => f.fields).join(\"\\n\");\n\n const onByMetaInputGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentityInput\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n const onByMetaGqlFields = ENTRY_META_FIELDS.map(field => {\n const fieldType = isDateTimeEntryMetaField(field) ? \"DateTime\" : \"CmsIdentity\";\n\n return `${field}: ${fieldType}`;\n }).join(\"\\n\");\n\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n const read = `\n \"\"\"${model.description || singularName}\"\"\"\n type ${singularName} {\n id: ID!\n entryId: String!\n \n ${onByMetaGqlFields}\n\n ownedBy: CmsIdentity @deprecated(reason: \"Field was removed with the 5.39.0 release. Use 'createdBy' field.\")\n \n ${fields.map(f => f.fields).join(\"\\n\")}\n }\n\n ${fields.map(f => f.typeDefs).join(\"\\n\")}\n\n type ${singularName}Response {\n data: ${singularName}\n error: CmsError\n }\n \n extend type Query {\n get${singularName}: ${singularName}Response\n }\n\n `;\n if (type !== \"manage\") {\n return read;\n }\n return `\n ${read}\n \n ${inputFields.map(f => f.typeDefs).join(\"\\n\")}\n \n input ${singularName}Input {\n ${onByMetaInputGqlFields}\n ${inputGqlFields}\n }\n \n extend type Mutation {\n update${singularName}(data: ${singularName}Input!, options: UpdateCmsEntryOptionsInput): ${singularName}Response\n }\n `;\n};\n"],"mappings":";;;;;;AACA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAaO,MAAMG,iBAAoC,GAAGA,CAAC;EACjDC,MAAM;EACNC,KAAK;EACLC,gBAAgB;EAChBC;AACJ,CAAC,KAAa;EACV,MAAMC,WAAW,GAAG,IAAAC,oCAAiB,EAAC;IAClCL,MAAM;IACNC,KAAK;IACLK,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBJ;EACJ,CAAC,CAAC;EACF,IAAIE,WAAW,CAACG,MAAM,KAAK,CAAC,EAAE;IAC1B,OAAO,EAAE;EACb;EAEA,MAAMD,MAAM,GAAG,IAAAE,0BAAY,EAAC;IACxBR,MAAM;IACNC,KAAK;IACLK,MAAM,EAAEL,KAAK,CAACK,MAAM;IACpBH,IAAI,EAAE,QAAQ;IACdD;EACJ,CAAC,CAAC;EAEF,MAAM;IAAEO,eAAe,EAAEC;EAAa,CAAC,GAAGT,KAAK;EAE/C,MAAMU,cAAc,GAAGP,WAAW,CAACQ,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACP,MAAM,CAAC,CAACQ,IAAI,CAAC,IAAI,CAAC;EAEhE,MAAMC,sBAAsB,GAAGC,4BAAiB,CAACJ,GAAG,CAACK,KAAK,IAAI;IAC1D,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,kBAAkB;IAEnF,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACJ,IAAI,CAAC,IAAI,CAAC;EAEb,MAAMM,iBAAiB,GAAGJ,4BAAiB,CAACJ,GAAG,CAACK,KAAK,IAAI;IACrD,MAAMC,SAAS,GAAG,IAAAC,mCAAwB,EAACF,KAAK,CAAC,GAAG,UAAU,GAAG,aAAa;IAE9E,OAAQ,GAAEA,KAAM,KAAIC,SAAU,EAAC;EACnC,CAAC,CAAC,CAACJ,IAAI,CAAC,IAAI,CAAC;;EAEb;EACA,MAAMO,IAAI,GAAI;AAClB,aAAapB,KAAK,CAACqB,WAAW,IAAIZ,YAAa;AAC/C,eAAeA,YAAa;AAC5B;AACA;AACA;AACA,cAAcU,iBAAkB;AAChC;AACA;AACA;AACA,cAAcd,MAAM,CAACM,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACP,MAAM,CAAC,CAACQ,IAAI,CAAC,IAAI,CAAE;AACnD;AACA;AACA,UAAUR,MAAM,CAACM,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACU,QAAQ,CAAC,CAACT,IAAI,CAAC,IAAI,CAAE;AACjD;AACA,eAAeJ,YAAa;AAC5B,oBAAoBA,YAAa;AACjC;AACA;AACA;AACA;AACA,iBAAiBA,YAAa,KAAIA,YAAa;AAC/C;AACA;AACA,KAAK;EACD,IAAIP,IAAI,KAAK,QAAQ,EAAE;IACnB,OAAOkB,IAAI;EACf;EACA,OAAQ;AACZ,UAAUA,IAAK;AACf;AACA,UAAUjB,WAAW,CAACQ,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACU,QAAQ,CAAC,CAACT,IAAI,CAAC,IAAI,CAAE;AACtD;AACA,gBAAgBJ,YAAa;AAC7B,cAAcK,sBAAuB;AACrC,cAAcJ,cAAe;AAC7B;AACA;AACA;AACA,oBAAoBD,YAAa,UAASA,YAAa,iDAAgDA,YAAa;AACpH;AACA,KAAK;AACL,CAAC;AAACc,OAAA,CAAAzB,iBAAA,GAAAA,iBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveGet = void 0;
|
|
7
|
+
var _responses = require("@webiny/handler-graphql/responses");
|
|
8
|
+
const resolveGet = ({
|
|
9
|
+
model
|
|
10
|
+
}) => async (_, __, context) => {
|
|
11
|
+
try {
|
|
12
|
+
const manager = await context.cms.getSingletonEntryManager(model);
|
|
13
|
+
const entry = await manager.get();
|
|
14
|
+
return new _responses.Response(entry);
|
|
15
|
+
} catch (e) {
|
|
16
|
+
return new _responses.ErrorResponse(e);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
exports.resolveGet = resolveGet;
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=resolveGet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_responses","require","resolveGet","model","_","__","context","manager","cms","getSingletonEntryManager","entry","get","Response","e","ErrorResponse","exports"],"sources":["resolveGet.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { CmsEntryResolverFactory as ResolverFactory } from \"~/types\";\n\ninterface ResolveGetArgs {\n revision: string;\n}\n\ntype ResolveGet = ResolverFactory<any, ResolveGetArgs>;\n\nexport const resolveGet: ResolveGet =\n ({ model }) =>\n async (_: unknown, __: unknown, context) => {\n try {\n const manager = await context.cms.getSingletonEntryManager(model);\n const entry = await manager.get();\n\n return new Response(entry);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AASO,MAAMC,UAAsB,GAC/BA,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAU,EAAEC,EAAW,EAAEC,OAAO,KAAK;EACxC,IAAI;IACA,MAAMC,OAAO,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,wBAAwB,CAACN,KAAK,CAAC;IACjE,MAAMO,KAAK,GAAG,MAAMH,OAAO,CAACI,GAAG,CAAC,CAAC;IAEjC,OAAO,IAAIC,mBAAQ,CAACF,KAAK,CAAC;EAC9B,CAAC,CAAC,OAAOG,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAACE,OAAA,CAAAb,UAAA,GAAAA,UAAA","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { CmsEntryResolverFactory as ResolverFactory, UpdateCmsEntryInput, UpdateCmsEntryOptionsInput } from "../../../../types";
|
|
2
|
+
interface ResolveUpdateArgs {
|
|
3
|
+
data: UpdateCmsEntryInput;
|
|
4
|
+
options?: UpdateCmsEntryOptionsInput;
|
|
5
|
+
}
|
|
6
|
+
declare type ResolveUpdate = ResolverFactory<any, ResolveUpdateArgs>;
|
|
7
|
+
export declare const resolveUpdate: ResolveUpdate;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.resolveUpdate = void 0;
|
|
7
|
+
var _responses = require("@webiny/handler-graphql/responses");
|
|
8
|
+
const resolveUpdate = ({
|
|
9
|
+
model
|
|
10
|
+
}) => async (_, args, context) => {
|
|
11
|
+
try {
|
|
12
|
+
const manager = await context.cms.getSingletonEntryManager(model.modelId);
|
|
13
|
+
const entry = await manager.update(args.data, args.options);
|
|
14
|
+
return new _responses.Response(entry);
|
|
15
|
+
} catch (e) {
|
|
16
|
+
return new _responses.ErrorResponse(e);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
exports.resolveUpdate = resolveUpdate;
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=resolveUpdate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_responses","require","resolveUpdate","model","_","args","context","manager","cms","getSingletonEntryManager","modelId","entry","update","data","options","Response","e","ErrorResponse","exports"],"sources":["resolveUpdate.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport {\n CmsEntryResolverFactory as ResolverFactory,\n UpdateCmsEntryInput,\n UpdateCmsEntryOptionsInput\n} from \"~/types\";\n\ninterface ResolveUpdateArgs {\n data: UpdateCmsEntryInput;\n options?: UpdateCmsEntryOptionsInput;\n}\n\ntype ResolveUpdate = ResolverFactory<any, ResolveUpdateArgs>;\n\nexport const resolveUpdate: ResolveUpdate =\n ({ model }) =>\n async (_: unknown, args, context) => {\n try {\n const manager = await context.cms.getSingletonEntryManager(model.modelId);\n const entry = await manager.update(args.data, args.options);\n\n return new Response(entry);\n } catch (e) {\n return new ErrorResponse(e);\n }\n };\n"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAcO,MAAMC,aAA4B,GACrCA,CAAC;EAAEC;AAAM,CAAC,KACV,OAAOC,CAAU,EAAEC,IAAI,EAAEC,OAAO,KAAK;EACjC,IAAI;IACA,MAAMC,OAAO,GAAG,MAAMD,OAAO,CAACE,GAAG,CAACC,wBAAwB,CAACN,KAAK,CAACO,OAAO,CAAC;IACzE,MAAMC,KAAK,GAAG,MAAMJ,OAAO,CAACK,MAAM,CAACP,IAAI,CAACQ,IAAI,EAAER,IAAI,CAACS,OAAO,CAAC;IAE3D,OAAO,IAAIC,mBAAQ,CAACJ,KAAK,CAAC;EAC9B,CAAC,CAAC,OAAOK,CAAC,EAAE;IACR,OAAO,IAAIC,wBAAa,CAACD,CAAC,CAAC;EAC/B;AACJ,CAAC;AAACE,OAAA,CAAAhB,aAAA,GAAAA,aAAA","ignoreList":[]}
|
|
@@ -12,6 +12,9 @@ var _createPreviewResolvers = require("./createPreviewResolvers");
|
|
|
12
12
|
var _getSchemaFromFieldPlugins = require("../../utils/getSchemaFromFieldPlugins");
|
|
13
13
|
var _plugins = require("../../plugins");
|
|
14
14
|
var _createFieldTypePluginRecords = require("./createFieldTypePluginRecords");
|
|
15
|
+
var _constants = require("../../constants");
|
|
16
|
+
var _createSingularSDL = require("./createSingularSDL");
|
|
17
|
+
var _createSingularResolvers = require("./createSingularResolvers");
|
|
15
18
|
const generateSchemaPlugins = async params => {
|
|
16
19
|
const {
|
|
17
20
|
context,
|
|
@@ -41,9 +44,27 @@ const generateSchemaPlugins = async params => {
|
|
|
41
44
|
fieldTypePlugins,
|
|
42
45
|
type
|
|
43
46
|
});
|
|
44
|
-
models.
|
|
45
|
-
|
|
46
|
-
|
|
47
|
+
models.forEach(model => {
|
|
48
|
+
if (model.tags?.includes(_constants.CMS_MODEL_SINGLETON_TAG)) {
|
|
49
|
+
const plugin = (0, _plugins.createCmsGraphQLSchemaPlugin)({
|
|
50
|
+
typeDefs: (0, _createSingularSDL.createSingularSDL)({
|
|
51
|
+
models,
|
|
52
|
+
model,
|
|
53
|
+
fieldTypePlugins,
|
|
54
|
+
type
|
|
55
|
+
}),
|
|
56
|
+
resolvers: (0, _createSingularResolvers.createSingularResolvers)({
|
|
57
|
+
context,
|
|
58
|
+
models,
|
|
59
|
+
model,
|
|
60
|
+
fieldTypePlugins,
|
|
61
|
+
type
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;
|
|
65
|
+
schemaPlugins.push(plugin);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
47
68
|
switch (type) {
|
|
48
69
|
case "manage":
|
|
49
70
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_createManageSDL","require","_createReadSDL","_createManageResolvers","_createReadResolvers","_createPreviewResolvers","_getSchemaFromFieldPlugins","_plugins","_createFieldTypePluginRecords","generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","createFieldTypePluginRecords","sorterPlugins","byType","CmsGraphQLSchemaSorterPlugin","schemaPlugins","createGraphQLSchemaPluginFromFieldPlugins","
|
|
1
|
+
{"version":3,"names":["_createManageSDL","require","_createReadSDL","_createManageResolvers","_createReadResolvers","_createPreviewResolvers","_getSchemaFromFieldPlugins","_plugins","_createFieldTypePluginRecords","_constants","_createSingularSDL","_createSingularResolvers","generateSchemaPlugins","params","context","models","plugins","cms","type","fieldTypePlugins","createFieldTypePluginRecords","sorterPlugins","byType","CmsGraphQLSchemaSorterPlugin","schemaPlugins","createGraphQLSchemaPluginFromFieldPlugins","forEach","model","tags","includes","CMS_MODEL_SINGLETON_TAG","plugin","createCmsGraphQLSchemaPlugin","typeDefs","createSingularSDL","resolvers","createSingularResolvers","name","modelId","push","createManageSDL","createManageResolvers","createReadSDL","READ","createReadResolvers","createPreviewResolvers","filter","pl","schema","exports"],"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 {\n CmsGraphQLSchemaSorterPlugin,\n createCmsGraphQLSchemaPlugin,\n ICmsGraphQLSchemaPlugin\n} from \"~/plugins\";\nimport { createFieldTypePluginRecords } from \"./createFieldTypePluginRecords\";\nimport { CMS_MODEL_SINGLETON_TAG } from \"~/constants\";\nimport { createSingularSDL } from \"./createSingularSDL\";\nimport { createSingularResolvers } from \"./createSingularResolvers\";\n\ninterface GenerateSchemaPluginsParams {\n context: CmsContext;\n models: CmsModel[];\n}\n\nexport const generateSchemaPlugins = async (\n params: GenerateSchemaPluginsParams\n): Promise<ICmsGraphQLSchemaPlugin[]> => {\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.forEach(model => {\n if (model.tags?.includes(CMS_MODEL_SINGLETON_TAG)) {\n const plugin = createCmsGraphQLSchemaPlugin({\n typeDefs: createSingularSDL({\n models,\n model,\n fieldTypePlugins,\n type\n }),\n resolvers: createSingularResolvers({\n context,\n models,\n model,\n fieldTypePlugins,\n type\n })\n });\n plugin.name = `headless-cms.graphql.schema.singular.${model.modelId}`;\n schemaPlugins.push(plugin);\n return;\n }\n switch (type) {\n case \"manage\":\n {\n const plugin = createCmsGraphQLSchemaPlugin({\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 = createCmsGraphQLSchemaPlugin({\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":"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","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { CmsModelManager, CmsModel, CmsContext, CmsEntryListParams, CreateCmsEntryInput, UpdateCmsEntryInput } from "../types";
|
|
1
|
+
import { CmsModelManager, CmsModel, CmsContext, CmsEntryListParams, CreateCmsEntryInput, UpdateCmsEntryInput, UpdateCmsEntryOptionsInput, CreateCmsEntryOptionsInput } from "../types";
|
|
2
2
|
export declare class DefaultCmsModelManager implements CmsModelManager {
|
|
3
3
|
private readonly _context;
|
|
4
|
-
|
|
4
|
+
readonly model: CmsModel;
|
|
5
5
|
constructor(context: CmsContext, model: CmsModel);
|
|
6
|
-
create(data: CreateCmsEntryInput): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>>;
|
|
6
|
+
create(data: CreateCmsEntryInput, options?: CreateCmsEntryOptionsInput): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>>;
|
|
7
7
|
delete(id: string): Promise<void>;
|
|
8
8
|
get(id: string): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>>;
|
|
9
9
|
listPublished(params: CmsEntryListParams): Promise<[import("../types").CmsEntry<import("../types").CmsEntryValues>[], import("../types").CmsEntryMeta]>;
|
|
@@ -11,5 +11,5 @@ export declare class DefaultCmsModelManager implements CmsModelManager {
|
|
|
11
11
|
listDeleted(params: CmsEntryListParams): Promise<[import("../types").CmsEntry<import("../types").CmsEntryValues>[], import("../types").CmsEntryMeta]>;
|
|
12
12
|
getPublishedByIds(ids: string[]): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>[]>;
|
|
13
13
|
getLatestByIds(ids: string[]): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>[]>;
|
|
14
|
-
update(id: string, data: UpdateCmsEntryInput): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>>;
|
|
14
|
+
update(id: string, data: UpdateCmsEntryInput, options?: UpdateCmsEntryOptionsInput): Promise<import("../types").CmsEntry<import("../types").CmsEntryValues>>;
|
|
15
15
|
}
|
|
@@ -8,40 +8,40 @@ var _utils = require("@webiny/utils");
|
|
|
8
8
|
class DefaultCmsModelManager {
|
|
9
9
|
constructor(context, model) {
|
|
10
10
|
this._context = context;
|
|
11
|
-
this.
|
|
11
|
+
this.model = model;
|
|
12
12
|
}
|
|
13
|
-
async create(data) {
|
|
14
|
-
return this._context.cms.createEntry(this.
|
|
13
|
+
async create(data, options) {
|
|
14
|
+
return this._context.cms.createEntry(this.model, data, options);
|
|
15
15
|
}
|
|
16
16
|
async delete(id) {
|
|
17
17
|
const {
|
|
18
18
|
version
|
|
19
19
|
} = (0, _utils.parseIdentifier)(id);
|
|
20
20
|
if (version) {
|
|
21
|
-
return this._context.cms.deleteEntryRevision(this.
|
|
21
|
+
return this._context.cms.deleteEntryRevision(this.model, id);
|
|
22
22
|
}
|
|
23
|
-
return this._context.cms.deleteEntry(this.
|
|
23
|
+
return this._context.cms.deleteEntry(this.model, id);
|
|
24
24
|
}
|
|
25
25
|
async get(id) {
|
|
26
|
-
return this._context.cms.getEntryById(this.
|
|
26
|
+
return this._context.cms.getEntryById(this.model, id);
|
|
27
27
|
}
|
|
28
28
|
async listPublished(params) {
|
|
29
|
-
return this._context.cms.listPublishedEntries(this.
|
|
29
|
+
return this._context.cms.listPublishedEntries(this.model, params);
|
|
30
30
|
}
|
|
31
31
|
async listLatest(params) {
|
|
32
|
-
return this._context.cms.listLatestEntries(this.
|
|
32
|
+
return this._context.cms.listLatestEntries(this.model, params);
|
|
33
33
|
}
|
|
34
34
|
async listDeleted(params) {
|
|
35
|
-
return this._context.cms.listDeletedEntries(this.
|
|
35
|
+
return this._context.cms.listDeletedEntries(this.model, params);
|
|
36
36
|
}
|
|
37
37
|
async getPublishedByIds(ids) {
|
|
38
|
-
return this._context.cms.getPublishedEntriesByIds(this.
|
|
38
|
+
return this._context.cms.getPublishedEntriesByIds(this.model, ids);
|
|
39
39
|
}
|
|
40
40
|
async getLatestByIds(ids) {
|
|
41
|
-
return this._context.cms.getLatestEntriesByIds(this.
|
|
41
|
+
return this._context.cms.getLatestEntriesByIds(this.model, ids);
|
|
42
42
|
}
|
|
43
|
-
async update(id, data) {
|
|
44
|
-
return this._context.cms.updateEntry(this.
|
|
43
|
+
async update(id, data, options) {
|
|
44
|
+
return this._context.cms.updateEntry(this.model, id, data, options);
|
|
45
45
|
}
|
|
46
46
|
}
|
|
47
47
|
exports.DefaultCmsModelManager = DefaultCmsModelManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_utils","require","DefaultCmsModelManager","constructor","context","model","_context","
|
|
1
|
+
{"version":3,"names":["_utils","require","DefaultCmsModelManager","constructor","context","model","_context","create","data","options","cms","createEntry","delete","id","version","parseIdentifier","deleteEntryRevision","deleteEntry","get","getEntryById","listPublished","params","listPublishedEntries","listLatest","listLatestEntries","listDeleted","listDeletedEntries","getPublishedByIds","ids","getPublishedEntriesByIds","getLatestByIds","getLatestEntriesByIds","update","updateEntry","exports"],"sources":["DefaultCmsModelManager.ts"],"sourcesContent":["import {\n CmsModelManager,\n CmsModel,\n CmsContext,\n CmsEntryListParams,\n CreateCmsEntryInput,\n UpdateCmsEntryInput,\n UpdateCmsEntryOptionsInput,\n CreateCmsEntryOptionsInput\n} from \"~/types\";\nimport { parseIdentifier } from \"@webiny/utils\";\n\nexport class DefaultCmsModelManager implements CmsModelManager {\n private readonly _context: CmsContext;\n public readonly model: CmsModel;\n\n public constructor(context: CmsContext, model: CmsModel) {\n this._context = context;\n this.model = model;\n }\n\n public async create(data: CreateCmsEntryInput, options?: CreateCmsEntryOptionsInput) {\n return this._context.cms.createEntry(this.model, data, options);\n }\n\n public async delete(id: string) {\n const { version } = parseIdentifier(id);\n if (version) {\n return this._context.cms.deleteEntryRevision(this.model, id);\n }\n\n return this._context.cms.deleteEntry(this.model, id);\n }\n\n public async get(id: string) {\n return this._context.cms.getEntryById(this.model, id);\n }\n\n public async listPublished(params: CmsEntryListParams) {\n return this._context.cms.listPublishedEntries(this.model, params);\n }\n\n public async listLatest(params: CmsEntryListParams) {\n return this._context.cms.listLatestEntries(this.model, params);\n }\n\n public async listDeleted(params: CmsEntryListParams) {\n return this._context.cms.listDeletedEntries(this.model, params);\n }\n\n public async getPublishedByIds(ids: string[]) {\n return this._context.cms.getPublishedEntriesByIds(this.model, ids);\n }\n\n public async getLatestByIds(ids: string[]) {\n return this._context.cms.getLatestEntriesByIds(this.model, ids);\n }\n\n public async update(\n id: string,\n data: UpdateCmsEntryInput,\n options?: UpdateCmsEntryOptionsInput\n ) {\n return this._context.cms.updateEntry(this.model, id, data, options);\n }\n}\n"],"mappings":";;;;;;AAUA,IAAAA,MAAA,GAAAC,OAAA;AAEO,MAAMC,sBAAsB,CAA4B;EAIpDC,WAAWA,CAACC,OAAmB,EAAEC,KAAe,EAAE;IACrD,IAAI,CAACC,QAAQ,GAAGF,OAAO;IACvB,IAAI,CAACC,KAAK,GAAGA,KAAK;EACtB;EAEA,MAAaE,MAAMA,CAACC,IAAyB,EAAEC,OAAoC,EAAE;IACjF,OAAO,IAAI,CAACH,QAAQ,CAACI,GAAG,CAACC,WAAW,CAAC,IAAI,CAACN,KAAK,EAAEG,IAAI,EAAEC,OAAO,CAAC;EACnE;EAEA,MAAaG,MAAMA,CAACC,EAAU,EAAE;IAC5B,MAAM;MAAEC;IAAQ,CAAC,GAAG,IAAAC,sBAAe,EAACF,EAAE,CAAC;IACvC,IAAIC,OAAO,EAAE;MACT,OAAO,IAAI,CAACR,QAAQ,CAACI,GAAG,CAACM,mBAAmB,CAAC,IAAI,CAACX,KAAK,EAAEQ,EAAE,CAAC;IAChE;IAEA,OAAO,IAAI,CAACP,QAAQ,CAACI,GAAG,CAACO,WAAW,CAAC,IAAI,CAACZ,KAAK,EAAEQ,EAAE,CAAC;EACxD;EAEA,MAAaK,GAAGA,CAACL,EAAU,EAAE;IACzB,OAAO,IAAI,CAACP,QAAQ,CAACI,GAAG,CAACS,YAAY,CAAC,IAAI,CAACd,KAAK,EAAEQ,EAAE,CAAC;EACzD;EAEA,MAAaO,aAAaA,CAACC,MAA0B,EAAE;IACnD,OAAO,IAAI,CAACf,QAAQ,CAACI,GAAG,CAACY,oBAAoB,CAAC,IAAI,CAACjB,KAAK,EAAEgB,MAAM,CAAC;EACrE;EAEA,MAAaE,UAAUA,CAACF,MAA0B,EAAE;IAChD,OAAO,IAAI,CAACf,QAAQ,CAACI,GAAG,CAACc,iBAAiB,CAAC,IAAI,CAACnB,KAAK,EAAEgB,MAAM,CAAC;EAClE;EAEA,MAAaI,WAAWA,CAACJ,MAA0B,EAAE;IACjD,OAAO,IAAI,CAACf,QAAQ,CAACI,GAAG,CAACgB,kBAAkB,CAAC,IAAI,CAACrB,KAAK,EAAEgB,MAAM,CAAC;EACnE;EAEA,MAAaM,iBAAiBA,CAACC,GAAa,EAAE;IAC1C,OAAO,IAAI,CAACtB,QAAQ,CAACI,GAAG,CAACmB,wBAAwB,CAAC,IAAI,CAACxB,KAAK,EAAEuB,GAAG,CAAC;EACtE;EAEA,MAAaE,cAAcA,CAACF,GAAa,EAAE;IACvC,OAAO,IAAI,CAACtB,QAAQ,CAACI,GAAG,CAACqB,qBAAqB,CAAC,IAAI,CAAC1B,KAAK,EAAEuB,GAAG,CAAC;EACnE;EAEA,MAAaI,MAAMA,CACfnB,EAAU,EACVL,IAAyB,EACzBC,OAAoC,EACtC;IACE,OAAO,IAAI,CAACH,QAAQ,CAACI,GAAG,CAACuB,WAAW,CAAC,IAAI,CAAC5B,KAAK,EAAEQ,EAAE,EAAEL,IAAI,EAAEC,OAAO,CAAC;EACvE;AACJ;AAACyB,OAAA,CAAAhC,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CmsEntry, CmsEntryValues, CmsModelManager, UpdateCmsEntryInput, UpdateCmsEntryOptionsInput } from "../types";
|
|
2
|
+
export interface ISingletonModelManager<T extends CmsEntryValues = CmsEntryValues> {
|
|
3
|
+
update(data: UpdateCmsEntryInput, options?: UpdateCmsEntryOptionsInput): Promise<CmsEntry<T>>;
|
|
4
|
+
get(): Promise<CmsEntry<T>>;
|
|
5
|
+
}
|
|
6
|
+
export declare class SingletonModelManager<T extends CmsEntryValues> implements ISingletonModelManager<T> {
|
|
7
|
+
private readonly manager;
|
|
8
|
+
private constructor();
|
|
9
|
+
update(data: UpdateCmsEntryInput, options?: UpdateCmsEntryOptionsInput): Promise<CmsEntry<T>>;
|
|
10
|
+
get(): Promise<CmsEntry<T>>;
|
|
11
|
+
static create<T extends CmsEntryValues>(manager: CmsModelManager<T>): ISingletonModelManager<T>;
|
|
12
|
+
}
|