@webiny/api-apw 5.44.1 → 5.44.3
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/package.json +24 -24
- package/plugins/graphql/changeRequest.gql.js +18 -4
- package/plugins/graphql/changeRequest.gql.js.map +1 -1
- package/plugins/graphql/comment.gql.js +18 -4
- package/plugins/graphql/comment.gql.js.map +1 -1
- package/plugins/graphql/contentReview.gql.js +38 -9
- package/plugins/graphql/contentReview.gql.js.map +1 -1
- package/plugins/graphql/reviewer.gql.js +6 -1
- package/plugins/graphql/reviewer.gql.js.map +1 -1
- package/plugins/graphql/workflow.gql.js +18 -4
- package/plugins/graphql/workflow.gql.js.map +1 -1
- package/utils/ensureAuthentication.d.ts +2 -0
- package/utils/ensureAuthentication.js +16 -0
- package/utils/ensureAuthentication.js.map +1 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-apw",
|
|
3
|
-
"version": "5.44.
|
|
3
|
+
"version": "5.44.3",
|
|
4
4
|
"keywords": [
|
|
5
5
|
"apw:base"
|
|
6
6
|
],
|
|
@@ -14,33 +14,33 @@
|
|
|
14
14
|
"author": "Webiny Ltd",
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@webiny/api": "5.44.
|
|
18
|
-
"@webiny/api-admin-settings": "5.44.
|
|
19
|
-
"@webiny/api-headless-cms": "5.44.
|
|
20
|
-
"@webiny/api-i18n": "5.44.
|
|
21
|
-
"@webiny/api-mailer": "5.44.
|
|
22
|
-
"@webiny/api-page-builder": "5.44.
|
|
23
|
-
"@webiny/api-security": "5.44.
|
|
24
|
-
"@webiny/api-tenancy": "5.44.
|
|
25
|
-
"@webiny/api-wcp": "5.44.
|
|
26
|
-
"@webiny/aws-sdk": "5.44.
|
|
27
|
-
"@webiny/db-dynamodb": "5.44.
|
|
28
|
-
"@webiny/error": "5.44.
|
|
29
|
-
"@webiny/handler": "5.44.
|
|
30
|
-
"@webiny/handler-client": "5.44.
|
|
31
|
-
"@webiny/handler-db": "5.44.
|
|
32
|
-
"@webiny/handler-graphql": "5.44.
|
|
33
|
-
"@webiny/plugins": "5.44.
|
|
34
|
-
"@webiny/pubsub": "5.44.
|
|
35
|
-
"@webiny/utils": "5.44.
|
|
17
|
+
"@webiny/api": "5.44.3",
|
|
18
|
+
"@webiny/api-admin-settings": "5.44.3",
|
|
19
|
+
"@webiny/api-headless-cms": "5.44.3",
|
|
20
|
+
"@webiny/api-i18n": "5.44.3",
|
|
21
|
+
"@webiny/api-mailer": "5.44.3",
|
|
22
|
+
"@webiny/api-page-builder": "5.44.3",
|
|
23
|
+
"@webiny/api-security": "5.44.3",
|
|
24
|
+
"@webiny/api-tenancy": "5.44.3",
|
|
25
|
+
"@webiny/api-wcp": "5.44.3",
|
|
26
|
+
"@webiny/aws-sdk": "5.44.3",
|
|
27
|
+
"@webiny/db-dynamodb": "5.44.3",
|
|
28
|
+
"@webiny/error": "5.44.3",
|
|
29
|
+
"@webiny/handler": "5.44.3",
|
|
30
|
+
"@webiny/handler-client": "5.44.3",
|
|
31
|
+
"@webiny/handler-db": "5.44.3",
|
|
32
|
+
"@webiny/handler-graphql": "5.44.3",
|
|
33
|
+
"@webiny/plugins": "5.44.3",
|
|
34
|
+
"@webiny/pubsub": "5.44.3",
|
|
35
|
+
"@webiny/utils": "5.44.3",
|
|
36
36
|
"dayjs": "1.11.13",
|
|
37
37
|
"lodash": "4.17.21",
|
|
38
38
|
"zod": "3.23.8"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
|
-
"@webiny/handler-aws": "5.44.
|
|
42
|
-
"@webiny/project-utils": "5.44.
|
|
43
|
-
"@webiny/wcp": "5.44.
|
|
41
|
+
"@webiny/handler-aws": "5.44.3",
|
|
42
|
+
"@webiny/project-utils": "5.44.3",
|
|
43
|
+
"@webiny/wcp": "5.44.3",
|
|
44
44
|
"graphql": "15.9.0",
|
|
45
45
|
"jest": "29.7.0",
|
|
46
46
|
"prettier": "2.8.8",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"build": "node ../cli/bin.js run build",
|
|
56
56
|
"watch": "node ../cli/bin.js run watch"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "9d029bf48609fa7c53e61656c69a276842bfcffa"
|
|
59
59
|
}
|
|
@@ -8,6 +8,7 @@ exports.default = void 0;
|
|
|
8
8
|
var _plugins = require("@webiny/handler-graphql/plugins");
|
|
9
9
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
10
10
|
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
|
11
|
+
var _ensureAuthentication = require("../../utils/ensureAuthentication");
|
|
11
12
|
var _utils = require("./utils");
|
|
12
13
|
const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
13
14
|
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
@@ -119,10 +120,14 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
119
120
|
resolvers: {
|
|
120
121
|
ApwQuery: {
|
|
121
122
|
getChangeRequest: async (_, args, context) => {
|
|
122
|
-
return (0, _resolve.default)(() =>
|
|
123
|
+
return (0, _resolve.default)(() => {
|
|
124
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
125
|
+
return context.apw.changeRequest.get(args.id);
|
|
126
|
+
});
|
|
123
127
|
},
|
|
124
128
|
listChangeRequests: async (_, args, context) => {
|
|
125
129
|
try {
|
|
130
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
126
131
|
/**
|
|
127
132
|
* We know that args is ApwChangeRequestListParams.
|
|
128
133
|
*/
|
|
@@ -135,13 +140,22 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
135
140
|
},
|
|
136
141
|
ApwMutation: {
|
|
137
142
|
createChangeRequest: async (_, args, context) => {
|
|
138
|
-
return (0, _resolve.default)(() =>
|
|
143
|
+
return (0, _resolve.default)(() => {
|
|
144
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
145
|
+
return context.apw.changeRequest.create(args.data);
|
|
146
|
+
});
|
|
139
147
|
},
|
|
140
148
|
updateChangeRequest: async (_, args, context) => {
|
|
141
|
-
return (0, _resolve.default)(() =>
|
|
149
|
+
return (0, _resolve.default)(() => {
|
|
150
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
151
|
+
return context.apw.changeRequest.update(args.id, args.data);
|
|
152
|
+
});
|
|
142
153
|
},
|
|
143
154
|
deleteChangeRequest: async (_, args, context) => {
|
|
144
|
-
return (0, _resolve.default)(() =>
|
|
155
|
+
return (0, _resolve.default)(() => {
|
|
156
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
157
|
+
return context.apw.changeRequest.delete(args.id);
|
|
158
|
+
});
|
|
145
159
|
}
|
|
146
160
|
}
|
|
147
161
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getChangeRequest","_","args","context","resolve","apw","changeRequest","get","id","listChangeRequests","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createChangeRequest","create","data","updateChangeRequest","update","deleteChangeRequest","delete","_default","exports","default"],"sources":["changeRequest.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwChangeRequestListParams, ApwContext } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwChangeRequestListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ChangeRequest specific fields\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n type ApwListChangeRequestsResponse {\n data: [ApwChangeRequestListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwChangeRequest {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ChangeRequest specific fields\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n type ApwChangeRequestResponse {\n data: ApwChangeRequest\n error: ApwError\n }\n\n type ApwDeleteChangeRequestResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListChangeRequestSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n \n publishedOn_ASC\n publishedOn_DESC\n \n title_ASC\n title_DESC\n }\n\n input ApwCreateChangeRequestInput {\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n input ApwUpdateChangeRequestInput {\n title: String\n body: JSON\n resolved: Boolean\n media: JSON\n }\n\n input ApwListChangeRequestWhereInput {\n id: ID\n step: String\n }\n\n input ApwListChangeRequestSearchInput {\n query: String\n }\n\n extend type ApwQuery {\n getChangeRequest(id: ID!): ApwChangeRequestResponse\n\n listChangeRequests(\n where: ApwListChangeRequestWhereInput\n limit: Int\n after: String\n sort: [ApwListChangeRequestSort!]\n search: ApwListChangeRequestSearchInput\n ): ApwListChangeRequestsResponse\n }\n\n extend type ApwMutation {\n createChangeRequest(data: ApwCreateChangeRequestInput!): ApwChangeRequestResponse\n\n updateChangeRequest(\n id: ID!\n data: ApwUpdateChangeRequestInput!\n ): ApwChangeRequestResponse\n\n deleteChangeRequest(id: ID!): ApwDeleteChangeRequestResponse\n }\n `,\n resolvers: {\n ApwQuery: {\n getChangeRequest: async (_, args: any, context) => {\n return resolve(() => context.apw.changeRequest.get(args.id));\n },\n listChangeRequests: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ApwChangeRequestListParams.\n */\n const [entries, meta] = await context.apw.changeRequest.list(\n args as unknown as ApwChangeRequestListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createChangeRequest: async (_, args: any, context) => {\n return resolve(() => context.apw.changeRequest.create(args.data));\n },\n updateChangeRequest: async (_, args: any, context) => {\n return resolve(() => context.apw.changeRequest.update(args.id, args.data));\n },\n deleteChangeRequest: async (_, args: any, context) => {\n return resolve(() => context.apw.changeRequest.delete(args.id));\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_ensureAuthentication","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getChangeRequest","_","args","context","resolve","ensureAuthentication","apw","changeRequest","get","id","listChangeRequests","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createChangeRequest","create","data","updateChangeRequest","update","deleteChangeRequest","delete","_default","exports","default"],"sources":["changeRequest.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwChangeRequestListParams, ApwContext } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwChangeRequestListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ChangeRequest specific fields\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n type ApwListChangeRequestsResponse {\n data: [ApwChangeRequestListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwChangeRequest {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ChangeRequest specific fields\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n type ApwChangeRequestResponse {\n data: ApwChangeRequest\n error: ApwError\n }\n\n type ApwDeleteChangeRequestResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListChangeRequestSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n \n publishedOn_ASC\n publishedOn_DESC\n \n title_ASC\n title_DESC\n }\n\n input ApwCreateChangeRequestInput {\n step: String!\n title: String!\n body: JSON!\n resolved: Boolean\n media: JSON\n }\n\n input ApwUpdateChangeRequestInput {\n title: String\n body: JSON\n resolved: Boolean\n media: JSON\n }\n\n input ApwListChangeRequestWhereInput {\n id: ID\n step: String\n }\n\n input ApwListChangeRequestSearchInput {\n query: String\n }\n\n extend type ApwQuery {\n getChangeRequest(id: ID!): ApwChangeRequestResponse\n\n listChangeRequests(\n where: ApwListChangeRequestWhereInput\n limit: Int\n after: String\n sort: [ApwListChangeRequestSort!]\n search: ApwListChangeRequestSearchInput\n ): ApwListChangeRequestsResponse\n }\n\n extend type ApwMutation {\n createChangeRequest(data: ApwCreateChangeRequestInput!): ApwChangeRequestResponse\n\n updateChangeRequest(\n id: ID!\n data: ApwUpdateChangeRequestInput!\n ): ApwChangeRequestResponse\n\n deleteChangeRequest(id: ID!): ApwDeleteChangeRequestResponse\n }\n `,\n resolvers: {\n ApwQuery: {\n getChangeRequest: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.changeRequest.get(args.id);\n });\n },\n listChangeRequests: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n /**\n * We know that args is ApwChangeRequestListParams.\n */\n const [entries, meta] = await context.apw.changeRequest.list(\n args as unknown as ApwChangeRequestListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createChangeRequest: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.changeRequest.create(args.data);\n });\n },\n updateChangeRequest: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.changeRequest.update(args.id, args.data);\n });\n },\n deleteChangeRequest: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.changeRequest.delete(args.id);\n });\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA,MAAMM,cAAc,GAAG,IAAIC,4BAAmB,CAAa;EACvD;EACAC,QAAQ,EAAE;AACd;AACA;AACA;AACA;AACA,cAAcC,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcA,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcC,4BAAqB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,QAAQ,EAAE;MACNC,gBAAgB,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC/C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,aAAa,CAACC,GAAG,CAACN,IAAI,CAACO,EAAE,CAAC;QACjD,CAAC,CAAC;MACN,CAAC;MACDC,kBAAkB,EAAE,MAAAA,CAAOT,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QACjD,IAAI;UACA,IAAAE,0CAAoB,EAACF,OAAO,CAAC;UAC7B;AACpB;AACA;UACoB,MAAM,CAACQ,OAAO,EAAEC,IAAI,CAAC,GAAG,MAAMT,OAAO,CAACG,GAAG,CAACC,aAAa,CAACM,IAAI,CACxDX,IACJ,CAAC;UACD,OAAO,IAAIY,4BAAY,CAACH,OAAO,EAAEC,IAAI,CAAC;QAC1C,CAAC,CAAC,OAAOG,CAAC,EAAE;UACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;QAC/B;MACJ;IACJ,CAAC;IACDE,WAAW,EAAE;MACTC,mBAAmB,EAAE,MAAAA,CAAOjB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAClD,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,aAAa,CAACY,MAAM,CAACjB,IAAI,CAACkB,IAAI,CAAC;QACtD,CAAC,CAAC;MACN,CAAC;MACDC,mBAAmB,EAAE,MAAAA,CAAOpB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAClD,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,aAAa,CAACe,MAAM,CAACpB,IAAI,CAACO,EAAE,EAAEP,IAAI,CAACkB,IAAI,CAAC;QAC/D,CAAC,CAAC;MACN,CAAC;MACDG,mBAAmB,EAAE,MAAAA,CAAOtB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAClD,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,aAAa,CAACiB,MAAM,CAACtB,IAAI,CAACO,EAAE,CAAC;QACpD,CAAC,CAAC;MACN;IACJ;EACJ;AACJ,CAAC,CAAC;AAAC,IAAAgB,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEYlC,cAAc","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ exports.default = void 0;
|
|
|
8
8
|
var _plugins = require("@webiny/handler-graphql/plugins");
|
|
9
9
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
10
10
|
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
|
11
|
+
var _ensureAuthentication = require("../../utils/ensureAuthentication");
|
|
11
12
|
var _utils = require("./utils");
|
|
12
13
|
const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
13
14
|
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
@@ -126,10 +127,14 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
126
127
|
resolvers: {
|
|
127
128
|
ApwQuery: {
|
|
128
129
|
getComment: async (_, args, context) => {
|
|
129
|
-
return (0, _resolve.default)(() =>
|
|
130
|
+
return (0, _resolve.default)(() => {
|
|
131
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
132
|
+
return context.apw.comment.get(args.id);
|
|
133
|
+
});
|
|
130
134
|
},
|
|
131
135
|
listComments: async (_, args, context) => {
|
|
132
136
|
try {
|
|
137
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
133
138
|
/**
|
|
134
139
|
* We know that args is ApwCommentListParams.
|
|
135
140
|
*/
|
|
@@ -142,13 +147,22 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
142
147
|
},
|
|
143
148
|
ApwMutation: {
|
|
144
149
|
createComment: async (_, args, context) => {
|
|
145
|
-
return (0, _resolve.default)(() =>
|
|
150
|
+
return (0, _resolve.default)(() => {
|
|
151
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
152
|
+
return context.apw.comment.create(args.data);
|
|
153
|
+
});
|
|
146
154
|
},
|
|
147
155
|
updateComment: async (_, args, context) => {
|
|
148
|
-
return (0, _resolve.default)(() =>
|
|
156
|
+
return (0, _resolve.default)(() => {
|
|
157
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
158
|
+
return context.apw.comment.update(args.id, args.data);
|
|
159
|
+
});
|
|
149
160
|
},
|
|
150
161
|
deleteComment: async (_, args, context) => {
|
|
151
|
-
return (0, _resolve.default)(() =>
|
|
162
|
+
return (0, _resolve.default)(() => {
|
|
163
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
164
|
+
return context.apw.comment.delete(args.id);
|
|
165
|
+
});
|
|
152
166
|
}
|
|
153
167
|
}
|
|
154
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","metaFieldsBaseNames","dateTimeWhereFields","map","name","join","identityWhereFields","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getComment","_","args","context","resolve","apw","comment","get","id","listComments","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createComment","create","data","updateComment","update","deleteComment","delete","_default","exports","default"],"sources":["comment.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwCommentListParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: () => {\n const metaFieldsBaseNames = [\"created\", \"modified\", \"saved\"];\n\n const dateTimeWhereFields = metaFieldsBaseNames\n .map(name => {\n return `\n ${name}On: DateTime\n ${name}On_gt: DateTime\n ${name}On_gte: DateTime\n ${name}On_lt: DateTime\n ${name}On_lte: DateTime\n ${name}On_between: [DateTime!]\n ${name}On_not_between: [DateTime!]\n `;\n })\n .join(\"\\n\");\n\n const identityWhereFields = metaFieldsBaseNames\n .map(name => {\n return `\n ${name}By: ID\n ${name}By_not: ID\n ${name}By_in: [ID!]\n ${name}By_not_in: [ID!]\n `;\n })\n .join(\"\\n\");\n\n return [\n `\n type ApwCommentListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Comment specific fields\n body: JSON\n changeRequest: ID\n # TODO: Remove ApwRefField\n media: JSON\n }\n\n type ApwListCommentsResponse {\n data: [ApwCommentListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwComment {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Comment specific fields\n body: JSON\n changeRequest: ID\n media: JSON\n }\n\n type ApwCommentResponse {\n data: ApwComment\n error: ApwError\n }\n\n type ApwDeleteCommentResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListCommentsSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n }\n\n input ApwCreateCommentInput {\n body: JSON!\n changeRequest: ID!\n media: JSON\n }\n\n input ApwUpdateCommentInput {\n body: JSON!\n }\n\n input ApwListCommentsWhereInput {\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n \n ${dateTimeWhereFields}\n ${identityWhereFields}\n \n changeRequest: ApwRefFieldWhereInput\n }\n\n extend type ApwQuery {\n getComment(id: ID!): ApwCommentResponse\n\n listComments(\n where: ApwListCommentsWhereInput\n limit: Int\n after: String\n sort: [ApwListCommentsSort!]\n ): ApwListCommentsResponse\n }\n\n extend type ApwMutation {\n createComment(data: ApwCreateCommentInput!): ApwCommentResponse\n\n updateComment(id: ID!, data: ApwUpdateCommentInput!): ApwCommentResponse\n\n deleteComment(id: ID!): ApwDeleteCommentResponse\n }\n `\n ];\n },\n resolvers: {\n ApwQuery: {\n getComment: async (_, args: any, context) => {\n return resolve(() => context.apw.comment.get(args.id));\n },\n listComments: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ApwCommentListParams.\n */\n const [entries, meta] = await context.apw.comment.list(\n args as unknown as ApwCommentListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createComment: async (_, args: any, context) => {\n return resolve(() => context.apw.comment.create(args.data));\n },\n updateComment: async (_, args: any, context) => {\n return resolve(() => context.apw.comment.update(args.id, args.data));\n },\n deleteComment: async (_, args: any, context) => {\n return resolve(() => context.apw.comment.delete(args.id));\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_ensureAuthentication","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","metaFieldsBaseNames","dateTimeWhereFields","map","name","join","identityWhereFields","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getComment","_","args","context","resolve","ensureAuthentication","apw","comment","get","id","listComments","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createComment","create","data","updateComment","update","deleteComment","delete","_default","exports","default"],"sources":["comment.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwCommentListParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: () => {\n const metaFieldsBaseNames = [\"created\", \"modified\", \"saved\"];\n\n const dateTimeWhereFields = metaFieldsBaseNames\n .map(name => {\n return `\n ${name}On: DateTime\n ${name}On_gt: DateTime\n ${name}On_gte: DateTime\n ${name}On_lt: DateTime\n ${name}On_lte: DateTime\n ${name}On_between: [DateTime!]\n ${name}On_not_between: [DateTime!]\n `;\n })\n .join(\"\\n\");\n\n const identityWhereFields = metaFieldsBaseNames\n .map(name => {\n return `\n ${name}By: ID\n ${name}By_not: ID\n ${name}By_in: [ID!]\n ${name}By_not_in: [ID!]\n `;\n })\n .join(\"\\n\");\n\n return [\n `\n type ApwCommentListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Comment specific fields\n body: JSON\n changeRequest: ID\n # TODO: Remove ApwRefField\n media: JSON\n }\n\n type ApwListCommentsResponse {\n data: [ApwCommentListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwComment {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Comment specific fields\n body: JSON\n changeRequest: ID\n media: JSON\n }\n\n type ApwCommentResponse {\n data: ApwComment\n error: ApwError\n }\n\n type ApwDeleteCommentResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListCommentsSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n }\n\n input ApwCreateCommentInput {\n body: JSON!\n changeRequest: ID!\n media: JSON\n }\n\n input ApwUpdateCommentInput {\n body: JSON!\n }\n\n input ApwListCommentsWhereInput {\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n \n ${dateTimeWhereFields}\n ${identityWhereFields}\n \n changeRequest: ApwRefFieldWhereInput\n }\n\n extend type ApwQuery {\n getComment(id: ID!): ApwCommentResponse\n\n listComments(\n where: ApwListCommentsWhereInput\n limit: Int\n after: String\n sort: [ApwListCommentsSort!]\n ): ApwListCommentsResponse\n }\n\n extend type ApwMutation {\n createComment(data: ApwCreateCommentInput!): ApwCommentResponse\n\n updateComment(id: ID!, data: ApwUpdateCommentInput!): ApwCommentResponse\n\n deleteComment(id: ID!): ApwDeleteCommentResponse\n }\n `\n ];\n },\n resolvers: {\n ApwQuery: {\n getComment: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.comment.get(args.id);\n });\n },\n listComments: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n /**\n * We know that args is ApwCommentListParams.\n */\n const [entries, meta] = await context.apw.comment.list(\n args as unknown as ApwCommentListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createComment: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.comment.create(args.data);\n });\n },\n updateComment: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.comment.update(args.id, args.data);\n });\n },\n deleteComment: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.comment.delete(args.id);\n });\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,6 +9,7 @@ var _plugins = require("@webiny/handler-graphql/plugins");
|
|
|
9
9
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
10
10
|
var _types = require("../../types");
|
|
11
11
|
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
|
12
|
+
var _ensureAuthentication = require("../../utils/ensureAuthentication");
|
|
12
13
|
var _utils = require("./utils");
|
|
13
14
|
const contentReviewSchema = new _plugins.GraphQLSchemaPlugin({
|
|
14
15
|
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
@@ -325,10 +326,14 @@ const contentReviewSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
325
326
|
},
|
|
326
327
|
ApwQuery: {
|
|
327
328
|
getContentReview: async (_, args, context) => {
|
|
328
|
-
return (0, _resolve.default)(() =>
|
|
329
|
+
return (0, _resolve.default)(() => {
|
|
330
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
331
|
+
return context.apw.contentReview.get(args.id);
|
|
332
|
+
});
|
|
329
333
|
},
|
|
330
334
|
listContentReviews: async (_, args, context) => {
|
|
331
335
|
try {
|
|
336
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
332
337
|
/**
|
|
333
338
|
* We know that args is ApwContentReviewListParams.
|
|
334
339
|
*/
|
|
@@ -339,30 +344,54 @@ const contentReviewSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
339
344
|
}
|
|
340
345
|
},
|
|
341
346
|
isReviewRequired: async (_, args, context) => {
|
|
342
|
-
return (0, _resolve.default)(() =>
|
|
347
|
+
return (0, _resolve.default)(() => {
|
|
348
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
349
|
+
return context.apw.contentReview.isReviewRequired(args.data);
|
|
350
|
+
});
|
|
343
351
|
}
|
|
344
352
|
},
|
|
345
353
|
ApwMutation: {
|
|
346
354
|
createContentReview: async (_, args, context) => {
|
|
347
|
-
return (0, _resolve.default)(() =>
|
|
355
|
+
return (0, _resolve.default)(() => {
|
|
356
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
357
|
+
return context.apw.contentReview.create(args.data);
|
|
358
|
+
});
|
|
348
359
|
},
|
|
349
360
|
deleteContentReview: async (_, args, context) => {
|
|
350
|
-
return (0, _resolve.default)(() =>
|
|
361
|
+
return (0, _resolve.default)(() => {
|
|
362
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
363
|
+
return context.apw.contentReview.delete(args.id);
|
|
364
|
+
});
|
|
351
365
|
},
|
|
352
366
|
provideSignOff: async (_, args, context) => {
|
|
353
|
-
return (0, _resolve.default)(() =>
|
|
367
|
+
return (0, _resolve.default)(() => {
|
|
368
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
369
|
+
return context.apw.contentReview.provideSignOff(args.id, args.step);
|
|
370
|
+
});
|
|
354
371
|
},
|
|
355
372
|
retractSignOff: async (_, args, context) => {
|
|
356
|
-
return (0, _resolve.default)(() =>
|
|
373
|
+
return (0, _resolve.default)(() => {
|
|
374
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
375
|
+
return context.apw.contentReview.retractSignOff(args.id, args.step);
|
|
376
|
+
});
|
|
357
377
|
},
|
|
358
378
|
publishContent: async (_, args, context) => {
|
|
359
|
-
return (0, _resolve.default)(() =>
|
|
379
|
+
return (0, _resolve.default)(() => {
|
|
380
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
381
|
+
return context.apw.contentReview.publishContent(args.id, args.datetime);
|
|
382
|
+
});
|
|
360
383
|
},
|
|
361
384
|
unpublishContent: async (_, args, context) => {
|
|
362
|
-
return (0, _resolve.default)(() =>
|
|
385
|
+
return (0, _resolve.default)(() => {
|
|
386
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
387
|
+
return context.apw.contentReview.unpublishContent(args.id, args.datetime);
|
|
388
|
+
});
|
|
363
389
|
},
|
|
364
390
|
deleteScheduledAction: async (_, args, context) => {
|
|
365
|
-
return (0, _resolve.default)(() =>
|
|
391
|
+
return (0, _resolve.default)(() => {
|
|
392
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
393
|
+
return context.apw.contentReview.deleteScheduledAction(args.id);
|
|
394
|
+
});
|
|
366
395
|
}
|
|
367
396
|
}
|
|
368
397
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_types","_resolve","_interopRequireDefault","_utils","contentReviewSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwContentReviewContent","version","parent","_","context","getContent","apw","getContentGetter","type","content","id","settings","publishedOn","lastPublishedOn","publishedBy","reviewer","list","where","identityId","scheduledBy","ApwContentReviewListItem","activeStep","steps","find","step","status","ApwContentReviewStepStatus","ACTIVE","totalComments","reduce","count","isNaN","reviewers","reviewerIds","includes","push","ApwQuery","getContentReview","args","resolve","contentReview","get","listContentReviews","entries","meta","ListResponse","e","ErrorResponse","isReviewRequired","data","ApwMutation","createContentReview","create","deleteContentReview","delete","provideSignOff","retractSignOff","publishContent","datetime","unpublishContent","deleteScheduledAction","_default","exports","default"],"sources":["contentReview.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport {\n ApwContentReviewStep,\n ApwContentReviewStepStatus,\n ApwContext,\n ApwContentReviewListParams,\n ApwContentReviewContent\n} from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst contentReviewSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwContentReviewListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ContentReview specific fields\n title: String\n steps: [ApwContentReviewStep]\n content: ApwContentReviewContent\n reviewStatus: ApwContentReviewStatus\n activeStep: ApwContentReviewStep\n totalComments: Int\n latestCommentId: String\n reviewers: [ID!]!\n }\n\n type ApwListContentReviewsResponse {\n data: [ApwContentReviewListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwContentReviewReviewer {\n id: ID\n displayName: String\n }\n\n type ApwContentReviewComment {\n body: JSON\n author: String\n }\n\n type ApwContentReviewChangeRequested {\n title: String\n body: JSON\n media: JSON\n step: String\n resolved: Boolean\n comments: [ApwContentReviewComment]\n }\n\n enum ApwContentReviewStepStatus {\n done\n active\n inactive\n }\n\n enum ApwContentReviewStatus {\n underReview\n readyToBePublished\n published\n requiresMyAttention\n }\n\n type ApwContentReviewStep {\n status: ApwContentReviewStepStatus\n id: String\n title: String\n pendingChangeRequests: Int\n signOffProvidedOn: DateTime\n signOffProvidedBy: ApwIdentity\n }\n\n type ApwContentReview {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ContentReview specific fields\n title: String\n steps: [ApwContentReviewStep]\n content: ApwContentReviewContent\n workflow: ID\n reviewStatus: ApwContentReviewStatus\n }\n\n type ApwContentReviewResponse {\n data: ApwContentReview\n error: ApwError\n }\n\n type ApwDeleteContentReviewResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListContentReviewsSort {\n id_ASC\n id_DESC\n\n ${dateTimeFieldsSorters}\n \n title_ASC\n title_DESC\n }\n\n input ApwContentReviewReviewerInput {\n id: ID\n }\n\n input ApwContentReviewScopeInput {\n type: String\n options: JSON\n }\n\n input ApwContentReviewCommentInput {\n body: JSON\n author: String\n }\n\n input ApwContentReviewChangeRequestedInput {\n title: String\n body: JSON\n media: JSON\n step: String\n resolved: Boolean\n comments: [ApwContentReviewCommentInput]\n }\n\n enum ApwContentReviewContentTypes {\n page\n cms_entry\n }\n\n type ApwContentReviewContentSettings {\n modelId: String\n }\n\n input ApwContentReviewContentSettingsInput {\n modelId: String\n }\n\n type ApwContentReviewContent {\n id: ID!\n type: ApwContentReviewContentTypes!\n version: Int!\n settings: ApwContentReviewContentSettings\n publishedOn: String\n publishedBy: ApwIdentity\n scheduledOn: DateTime\n scheduledBy: ApwIdentity\n }\n\n input ApwContentReviewContentInput {\n id: ID!\n type: ApwContentReviewContentTypes!\n settings: ApwContentReviewContentSettingsInput\n }\n\n input ApwCreateContentReviewInput {\n content: ApwContentReviewContentInput!\n }\n\n input ApwListContentReviewsWhereInput {\n id: ID\n reviewStatus: ApwContentReviewStatus\n title: String\n title_contains: String\n }\n\n type ApwProvideSignOffResponse {\n data: Boolean\n error: ApwError\n }\n\n type ApwIsReviewRequiredData {\n isReviewRequired: Boolean\n contentReviewId: ID\n }\n\n type ApwIsReviewRequiredResponse {\n data: ApwIsReviewRequiredData\n error: ApwError\n }\n\n type ApwPublishContentResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwContentActions {\n publish\n unpublish\n }\n\n type ApwScheduleActionResponse {\n data: Boolean\n error: ApwError\n }\n\n input ApwScheduleActionInput {\n action: ApwContentActions!\n datetime: String!\n type: ApwContentReviewContentTypes!\n entryId: ID!\n }\n\n extend type ApwQuery {\n getContentReview(id: ID!): ApwContentReviewResponse\n\n listContentReviews(\n where: ApwListContentReviewsWhereInput\n limit: Int\n after: String\n sort: [ApwListContentReviewsSort!]\n ): ApwListContentReviewsResponse\n\n isReviewRequired(data: ApwContentReviewContentInput!): ApwIsReviewRequiredResponse\n }\n\n extend type ApwMutation {\n createContentReview(data: ApwCreateContentReviewInput!): ApwContentReviewResponse\n\n deleteContentReview(id: ID!): ApwDeleteContentReviewResponse\n\n provideSignOff(id: ID!, step: String!): ApwProvideSignOffResponse\n\n retractSignOff(id: ID!, step: String!): ApwProvideSignOffResponse\n\n publishContent(id: ID!, datetime: String): ApwPublishContentResponse\n\n unpublishContent(id: ID!, datetime: String): ApwPublishContentResponse\n\n scheduleAction(data: ApwScheduleActionInput!): ApwScheduleActionResponse\n\n deleteScheduledAction(id: ID!): ApwScheduleActionResponse\n }\n `,\n resolvers: {\n ApwContentReviewContent: {\n version: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const getContent = context.apw.getContentGetter(parent.type);\n const content = await getContent(parent.id, parent.settings);\n if (!content) {\n return null;\n }\n return content.version;\n },\n publishedOn: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const getContent = context.apw.getContentGetter(parent.type);\n const content = await getContent(parent.id, parent.settings);\n if (!content) {\n return null;\n }\n\n // In case a page was returned, let's read the `publishedOn` field.\n if (\"publishedOn\" in content) {\n return content.publishedOn;\n }\n\n // In case a CMS entry was returned, let's read the entry-level `lastPublishedOn` field.\n return content.lastPublishedOn;\n },\n publishedBy: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const id = parent.publishedBy;\n if (id) {\n const [[reviewer]] = await context.apw.reviewer.list({\n where: { identityId: id }\n });\n return reviewer;\n }\n return null;\n },\n scheduledBy: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const id = parent.scheduledBy;\n if (id) {\n const [[reviewer]] = await context.apw.reviewer.list({\n where: { identityId: id }\n });\n return reviewer;\n }\n return null;\n }\n },\n ApwContentReviewListItem: {\n activeStep: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n return steps.find(step => step.status === ApwContentReviewStepStatus.ACTIVE);\n },\n totalComments: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n return steps.reduce((count, step) => {\n /**\n * Aggregate totalComments from each step.\n */\n if (!isNaN(step.totalComments)) {\n count += step.totalComments;\n }\n\n return count;\n }, 0);\n },\n reviewers: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n const reviewerIds: string[] = [];\n\n for (const step of steps) {\n for (const reviewer of step.reviewers) {\n if (!reviewerIds.includes(reviewer.id)) {\n reviewerIds.push(reviewer.id);\n }\n }\n }\n return reviewerIds;\n }\n },\n ApwQuery: {\n getContentReview: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.get(args.id));\n },\n listContentReviews: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ApwContentReviewListParams.\n */\n const [entries, meta] = await context.apw.contentReview.list(\n args as unknown as ApwContentReviewListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n isReviewRequired: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.isReviewRequired(args.data));\n }\n },\n ApwMutation: {\n createContentReview: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.create(args.data));\n },\n deleteContentReview: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.delete(args.id));\n },\n provideSignOff: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.provideSignOff(args.id, args.step));\n },\n retractSignOff: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.retractSignOff(args.id, args.step));\n },\n publishContent: async (_, args: any, context) => {\n return resolve(() =>\n context.apw.contentReview.publishContent(args.id, args.datetime)\n );\n },\n unpublishContent: async (_, args: any, context) => {\n return resolve(() =>\n context.apw.contentReview.unpublishContent(args.id, args.datetime)\n );\n },\n deleteScheduledAction: async (_, args: any, context) => {\n return resolve(() => context.apw.contentReview.deleteScheduledAction(args.id));\n }\n }\n }\n});\n\nexport default contentReviewSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAOA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA,MAAMM,mBAAmB,GAAG,IAAIC,4BAAmB,CAAa;EAC5D;EACAC,QAAQ,EAAE;AACd;AACA;AACA;AACA;AACA,cAAcC,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcA,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcC,4BAAqB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAC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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_types","_resolve","_interopRequireDefault","_ensureAuthentication","_utils","contentReviewSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwContentReviewContent","version","parent","_","context","getContent","apw","getContentGetter","type","content","id","settings","publishedOn","lastPublishedOn","publishedBy","reviewer","list","where","identityId","scheduledBy","ApwContentReviewListItem","activeStep","steps","find","step","status","ApwContentReviewStepStatus","ACTIVE","totalComments","reduce","count","isNaN","reviewers","reviewerIds","includes","push","ApwQuery","getContentReview","args","resolve","ensureAuthentication","contentReview","get","listContentReviews","entries","meta","ListResponse","e","ErrorResponse","isReviewRequired","data","ApwMutation","createContentReview","create","deleteContentReview","delete","provideSignOff","retractSignOff","publishContent","datetime","unpublishContent","deleteScheduledAction","_default","exports","default"],"sources":["contentReview.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport {\n ApwContentReviewStep,\n ApwContentReviewStepStatus,\n ApwContext,\n ApwContentReviewListParams,\n ApwContentReviewContent\n} from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst contentReviewSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwContentReviewListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ContentReview specific fields\n title: String\n steps: [ApwContentReviewStep]\n content: ApwContentReviewContent\n reviewStatus: ApwContentReviewStatus\n activeStep: ApwContentReviewStep\n totalComments: Int\n latestCommentId: String\n reviewers: [ID!]!\n }\n\n type ApwListContentReviewsResponse {\n data: [ApwContentReviewListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwContentReviewReviewer {\n id: ID\n displayName: String\n }\n\n type ApwContentReviewComment {\n body: JSON\n author: String\n }\n\n type ApwContentReviewChangeRequested {\n title: String\n body: JSON\n media: JSON\n step: String\n resolved: Boolean\n comments: [ApwContentReviewComment]\n }\n\n enum ApwContentReviewStepStatus {\n done\n active\n inactive\n }\n\n enum ApwContentReviewStatus {\n underReview\n readyToBePublished\n published\n requiresMyAttention\n }\n\n type ApwContentReviewStep {\n status: ApwContentReviewStepStatus\n id: String\n title: String\n pendingChangeRequests: Int\n signOffProvidedOn: DateTime\n signOffProvidedBy: ApwIdentity\n }\n\n type ApwContentReview {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # ContentReview specific fields\n title: String\n steps: [ApwContentReviewStep]\n content: ApwContentReviewContent\n workflow: ID\n reviewStatus: ApwContentReviewStatus\n }\n\n type ApwContentReviewResponse {\n data: ApwContentReview\n error: ApwError\n }\n\n type ApwDeleteContentReviewResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListContentReviewsSort {\n id_ASC\n id_DESC\n\n ${dateTimeFieldsSorters}\n \n title_ASC\n title_DESC\n }\n\n input ApwContentReviewReviewerInput {\n id: ID\n }\n\n input ApwContentReviewScopeInput {\n type: String\n options: JSON\n }\n\n input ApwContentReviewCommentInput {\n body: JSON\n author: String\n }\n\n input ApwContentReviewChangeRequestedInput {\n title: String\n body: JSON\n media: JSON\n step: String\n resolved: Boolean\n comments: [ApwContentReviewCommentInput]\n }\n\n enum ApwContentReviewContentTypes {\n page\n cms_entry\n }\n\n type ApwContentReviewContentSettings {\n modelId: String\n }\n\n input ApwContentReviewContentSettingsInput {\n modelId: String\n }\n\n type ApwContentReviewContent {\n id: ID!\n type: ApwContentReviewContentTypes!\n version: Int!\n settings: ApwContentReviewContentSettings\n publishedOn: String\n publishedBy: ApwIdentity\n scheduledOn: DateTime\n scheduledBy: ApwIdentity\n }\n\n input ApwContentReviewContentInput {\n id: ID!\n type: ApwContentReviewContentTypes!\n settings: ApwContentReviewContentSettingsInput\n }\n\n input ApwCreateContentReviewInput {\n content: ApwContentReviewContentInput!\n }\n\n input ApwListContentReviewsWhereInput {\n id: ID\n reviewStatus: ApwContentReviewStatus\n title: String\n title_contains: String\n }\n\n type ApwProvideSignOffResponse {\n data: Boolean\n error: ApwError\n }\n\n type ApwIsReviewRequiredData {\n isReviewRequired: Boolean\n contentReviewId: ID\n }\n\n type ApwIsReviewRequiredResponse {\n data: ApwIsReviewRequiredData\n error: ApwError\n }\n\n type ApwPublishContentResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwContentActions {\n publish\n unpublish\n }\n\n type ApwScheduleActionResponse {\n data: Boolean\n error: ApwError\n }\n\n input ApwScheduleActionInput {\n action: ApwContentActions!\n datetime: String!\n type: ApwContentReviewContentTypes!\n entryId: ID!\n }\n\n extend type ApwQuery {\n getContentReview(id: ID!): ApwContentReviewResponse\n\n listContentReviews(\n where: ApwListContentReviewsWhereInput\n limit: Int\n after: String\n sort: [ApwListContentReviewsSort!]\n ): ApwListContentReviewsResponse\n\n isReviewRequired(data: ApwContentReviewContentInput!): ApwIsReviewRequiredResponse\n }\n\n extend type ApwMutation {\n createContentReview(data: ApwCreateContentReviewInput!): ApwContentReviewResponse\n\n deleteContentReview(id: ID!): ApwDeleteContentReviewResponse\n\n provideSignOff(id: ID!, step: String!): ApwProvideSignOffResponse\n\n retractSignOff(id: ID!, step: String!): ApwProvideSignOffResponse\n\n publishContent(id: ID!, datetime: String): ApwPublishContentResponse\n\n unpublishContent(id: ID!, datetime: String): ApwPublishContentResponse\n\n scheduleAction(data: ApwScheduleActionInput!): ApwScheduleActionResponse\n\n deleteScheduledAction(id: ID!): ApwScheduleActionResponse\n }\n `,\n resolvers: {\n ApwContentReviewContent: {\n version: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const getContent = context.apw.getContentGetter(parent.type);\n const content = await getContent(parent.id, parent.settings);\n if (!content) {\n return null;\n }\n return content.version;\n },\n publishedOn: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const getContent = context.apw.getContentGetter(parent.type);\n const content = await getContent(parent.id, parent.settings);\n if (!content) {\n return null;\n }\n\n // In case a page was returned, let's read the `publishedOn` field.\n if (\"publishedOn\" in content) {\n return content.publishedOn;\n }\n\n // In case a CMS entry was returned, let's read the entry-level `lastPublishedOn` field.\n return content.lastPublishedOn;\n },\n publishedBy: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const id = parent.publishedBy;\n if (id) {\n const [[reviewer]] = await context.apw.reviewer.list({\n where: { identityId: id }\n });\n return reviewer;\n }\n return null;\n },\n scheduledBy: async (parent: ApwContentReviewContent, _, context: ApwContext) => {\n const id = parent.scheduledBy;\n if (id) {\n const [[reviewer]] = await context.apw.reviewer.list({\n where: { identityId: id }\n });\n return reviewer;\n }\n return null;\n }\n },\n ApwContentReviewListItem: {\n activeStep: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n return steps.find(step => step.status === ApwContentReviewStepStatus.ACTIVE);\n },\n totalComments: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n return steps.reduce((count, step) => {\n /**\n * Aggregate totalComments from each step.\n */\n if (!isNaN(step.totalComments)) {\n count += step.totalComments;\n }\n\n return count;\n }, 0);\n },\n reviewers: async parent => {\n const steps: ApwContentReviewStep[] = parent.steps;\n const reviewerIds: string[] = [];\n\n for (const step of steps) {\n for (const reviewer of step.reviewers) {\n if (!reviewerIds.includes(reviewer.id)) {\n reviewerIds.push(reviewer.id);\n }\n }\n }\n return reviewerIds;\n }\n },\n ApwQuery: {\n getContentReview: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.get(args.id);\n });\n },\n listContentReviews: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n /**\n * We know that args is ApwContentReviewListParams.\n */\n const [entries, meta] = await context.apw.contentReview.list(\n args as unknown as ApwContentReviewListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n isReviewRequired: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.isReviewRequired(args.data);\n });\n }\n },\n ApwMutation: {\n createContentReview: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.create(args.data);\n });\n },\n deleteContentReview: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.delete(args.id);\n });\n },\n provideSignOff: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.provideSignOff(args.id, args.step);\n });\n },\n retractSignOff: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.retractSignOff(args.id, args.step);\n });\n },\n publishContent: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.publishContent(args.id, args.datetime);\n });\n },\n unpublishContent: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.unpublishContent(args.id, args.datetime);\n });\n },\n deleteScheduledAction: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.contentReview.deleteScheduledAction(args.id);\n });\n }\n }\n }\n});\n\nexport default contentReviewSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAOA,IAAAG,QAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,qBAAA,GAAAL,OAAA;AACA,IAAAM,MAAA,GAAAN,OAAA;AAEA,MAAMO,mBAAmB,GAAG,IAAIC,4BAAmB,CAAa;EAC5D;EACAC,QAAQ,EAAE;AACd;AACA;AACA;AACA;AACA,cAAcC,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcA,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcC,4BAAqB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ exports.default = void 0;
|
|
|
8
8
|
var _plugins = require("@webiny/handler-graphql/plugins");
|
|
9
9
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
10
10
|
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
|
11
|
+
var _ensureAuthentication = require("../../utils/ensureAuthentication");
|
|
11
12
|
var _utils = require("./utils");
|
|
12
13
|
const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
13
14
|
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
@@ -90,10 +91,14 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
90
91
|
resolvers: {
|
|
91
92
|
ApwQuery: {
|
|
92
93
|
getReviewer: async (_, args, context) => {
|
|
93
|
-
return (0, _resolve.default)(() =>
|
|
94
|
+
return (0, _resolve.default)(() => {
|
|
95
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
96
|
+
return context.apw.reviewer.get(args.id);
|
|
97
|
+
});
|
|
94
98
|
},
|
|
95
99
|
listReviewers: async (_, args, context) => {
|
|
96
100
|
try {
|
|
101
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
97
102
|
/**
|
|
98
103
|
* We know that args is ApwReviewerListParams.
|
|
99
104
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getReviewer","_","args","context","resolve","apw","reviewer","get","id","listReviewers","entries","meta","list","ListResponse","e","ErrorResponse","_default","exports","default"],"sources":["reviewer.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwReviewerListParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwReviewerListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Reviewer specific fields\n identityId: ID\n displayName: String\n type: String\n email: String\n }\n\n type ApwListReviewersResponse {\n data: [ApwReviewerListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwReviewer {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Reviewer specific fields\n identityId: ID\n displayName: String\n type: String\n email: String\n }\n\n type ApwReviewerResponse {\n data: ApwReviewer\n error: ApwError\n }\n\n type ApwDeleteReviewerResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListReviewersSort {\n id_ASC\n id_DESC\n\n ${dateTimeFieldsSorters}\n \n publishedOn_ASC\n publishedOn_DESC\n title_ASC\n title_DESC\n }\n\n input ApwListReviewersWhereInput {\n identityId: ID\n }\n\n input ApwListReviewersSearchInput {\n # By specifying \"query\", the search will be performed against workflow' \"title\" field.\n query: String\n }\n\n extend type ApwQuery {\n getReviewer(id: ID!): ApwReviewerResponse\n\n listReviewers(\n where: ApwListReviewersWhereInput\n limit: Int\n after: String\n sort: [ApwListReviewersSort!]\n search: ApwListReviewersSearchInput\n ): ApwListReviewersResponse\n }\n `,\n resolvers: {\n ApwQuery: {\n getReviewer: async (_, args: any, context) => {\n return resolve(() => context.apw.reviewer.get(args.id));\n },\n listReviewers: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ApwReviewerListParams.\n */\n const [entries, meta] = await context.apw.reviewer.list(\n args as unknown as ApwReviewerListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_ensureAuthentication","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwQuery","getReviewer","_","args","context","resolve","ensureAuthentication","apw","reviewer","get","id","listReviewers","entries","meta","list","ListResponse","e","ErrorResponse","_default","exports","default"],"sources":["reviewer.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwReviewerListParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwReviewerListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Reviewer specific fields\n identityId: ID\n displayName: String\n type: String\n email: String\n }\n\n type ApwListReviewersResponse {\n data: [ApwReviewerListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwReviewer {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Reviewer specific fields\n identityId: ID\n displayName: String\n type: String\n email: String\n }\n\n type ApwReviewerResponse {\n data: ApwReviewer\n error: ApwError\n }\n\n type ApwDeleteReviewerResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwListReviewersSort {\n id_ASC\n id_DESC\n\n ${dateTimeFieldsSorters}\n \n publishedOn_ASC\n publishedOn_DESC\n title_ASC\n title_DESC\n }\n\n input ApwListReviewersWhereInput {\n identityId: ID\n }\n\n input ApwListReviewersSearchInput {\n # By specifying \"query\", the search will be performed against workflow' \"title\" field.\n query: String\n }\n\n extend type ApwQuery {\n getReviewer(id: ID!): ApwReviewerResponse\n\n listReviewers(\n where: ApwListReviewersWhereInput\n limit: Int\n after: String\n sort: [ApwListReviewersSort!]\n search: ApwListReviewersSearchInput\n ): ApwListReviewersResponse\n }\n `,\n resolvers: {\n ApwQuery: {\n getReviewer: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.reviewer.get(args.id);\n });\n },\n listReviewers: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n /**\n * We know that args is ApwReviewerListParams.\n */\n const [entries, meta] = await context.apw.reviewer.list(\n args as unknown as ApwReviewerListParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA,MAAMM,cAAc,GAAG,IAAIC,4BAAmB,CAAa;EACvD;EACAC,QAAQ,EAAE;AACd;AACA;AACA;AACA;AACA,cAAcC,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcA,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcC,4BAAqB;AACnC;AACA;AACA;AACA;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,QAAQ,EAAE;MACNC,WAAW,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC1C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACC,GAAG,CAACN,IAAI,CAACO,EAAE,CAAC;QAC5C,CAAC,CAAC;MACN,CAAC;MACDC,aAAa,EAAE,MAAAA,CAAOT,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC5C,IAAI;UACA,IAAAE,0CAAoB,EAACF,OAAO,CAAC;UAC7B;AACpB;AACA;UACoB,MAAM,CAACQ,OAAO,EAAEC,IAAI,CAAC,GAAG,MAAMT,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACM,IAAI,CACnDX,IACJ,CAAC;UACD,OAAO,IAAIY,4BAAY,CAACH,OAAO,EAAEC,IAAI,CAAC;QAC1C,CAAC,CAAC,OAAOG,CAAC,EAAE;UACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;QAC/B;MACJ;IACJ;EACJ;AACJ,CAAC,CAAC;AAAC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEY1B,cAAc","ignoreList":[]}
|
|
@@ -8,6 +8,7 @@ exports.default = void 0;
|
|
|
8
8
|
var _plugins = require("@webiny/handler-graphql/plugins");
|
|
9
9
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
10
10
|
var _resolve = _interopRequireDefault(require("../../utils/resolve"));
|
|
11
|
+
var _ensureAuthentication = require("../../utils/ensureAuthentication");
|
|
11
12
|
var _utils = require("./utils");
|
|
12
13
|
const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
13
14
|
// Had to remove /* GraphQL */ because prettier would not format the code correctly.
|
|
@@ -168,10 +169,14 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
168
169
|
},
|
|
169
170
|
ApwQuery: {
|
|
170
171
|
getWorkflow: async (_, args, context) => {
|
|
171
|
-
return (0, _resolve.default)(() =>
|
|
172
|
+
return (0, _resolve.default)(() => {
|
|
173
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
174
|
+
return context.apw.workflow.get(args.id);
|
|
175
|
+
});
|
|
172
176
|
},
|
|
173
177
|
listWorkflows: async (_, args, context) => {
|
|
174
178
|
try {
|
|
179
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
175
180
|
/**
|
|
176
181
|
* We know that args is ListWorkflowsParams.
|
|
177
182
|
*/
|
|
@@ -184,13 +189,22 @@ const workflowSchema = new _plugins.GraphQLSchemaPlugin({
|
|
|
184
189
|
},
|
|
185
190
|
ApwMutation: {
|
|
186
191
|
createWorkflow: async (_, args, context) => {
|
|
187
|
-
return (0, _resolve.default)(() =>
|
|
192
|
+
return (0, _resolve.default)(() => {
|
|
193
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
194
|
+
return context.apw.workflow.create(args.data);
|
|
195
|
+
});
|
|
188
196
|
},
|
|
189
197
|
updateWorkflow: async (_, args, context) => {
|
|
190
|
-
return (0, _resolve.default)(() =>
|
|
198
|
+
return (0, _resolve.default)(() => {
|
|
199
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
200
|
+
return context.apw.workflow.update(args.id, args.data);
|
|
201
|
+
});
|
|
191
202
|
},
|
|
192
203
|
deleteWorkflow: async (_, args, context) => {
|
|
193
|
-
return (0, _resolve.default)(() =>
|
|
204
|
+
return (0, _resolve.default)(() => {
|
|
205
|
+
(0, _ensureAuthentication.ensureAuthentication)(context);
|
|
206
|
+
return context.apw.workflow.delete(args.id);
|
|
207
|
+
});
|
|
194
208
|
}
|
|
195
209
|
}
|
|
196
210
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwWorkflowStep","reviewers","parent","map","id","ApwQuery","getWorkflow","_","args","context","resolve","apw","workflow","get","listWorkflows","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createWorkflow","create","data","updateWorkflow","update","deleteWorkflow","delete","_default","exports","default"],"sources":["workflow.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwReviewer, ListWorkflowsParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwWorkflowListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwListWorkflowsResponse {\n data: [ApwWorkflowListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwWorkflowStep {\n title: String!\n id: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n type ApwWorkflowScope {\n type: String\n data: JSON\n }\n\n type ApwWorkflow {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwWorkflowResponse {\n data: ApwWorkflow\n error: ApwError\n }\n\n type ApwDeleteWorkflowResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwWorkflowApplication {\n pageBuilder\n cms\n formBuilder\n }\n\n enum ApwWorkflowStepTypes {\n mandatoryBlocking\n mandatoryNonBlocking\n notMandatory\n }\n\n enum ApwListWorkflowsSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n publishedOn_ASC\n publishedOn_DESC\n \n title_ASC\n title_DESC\n }\n\n input ApwWorkflowReviewerInput {\n id: ID\n }\n\n input ApwCreateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]!\n }\n\n input ApwUpdateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n input ApwWorkflowScopeInput {\n type: String!\n data: JSON\n }\n\n input ApwCreateWorkflowInput {\n title: String!\n steps: [ApwCreateWorkflowStepInput!]!\n scope: ApwWorkflowScopeInput!\n app: ApwWorkflowApplication!\n }\n\n input ApwUpdateWorkflowInput {\n title: String\n steps: [ApwUpdateWorkflowStepInput!]\n scope: ApwWorkflowScopeInput\n }\n\n input ApwListWorkflowsWhereInput {\n app: ApwWorkflowApplication\n }\n\n input ApwListWorkflowsSearchInput {\n # By specifying \"query\", the search will be performed against workflow' \"title\" field.\n query: String\n }\n\n type ApwQuery {\n getWorkflow(id: ID!): ApwWorkflowResponse\n\n listWorkflows(\n where: ApwListWorkflowsWhereInput\n limit: Int\n after: String\n sort: [ApwListWorkflowsSort!]\n search: ApwListWorkflowsSearchInput\n ): ApwListWorkflowsResponse\n }\n\n type ApwMutation {\n createWorkflow(data: ApwCreateWorkflowInput!): ApwWorkflowResponse\n\n # Update workflow by given ID.\n updateWorkflow(id: ID!, data: ApwUpdateWorkflowInput!): ApwWorkflowResponse\n\n # Delete workflow\n deleteWorkflow(id: ID!): ApwDeleteWorkflowResponse\n }\n `,\n resolvers: {\n ApwWorkflowStep: {\n reviewers: parent => {\n const reviewers: ApwReviewer[] = parent.reviewers;\n return reviewers.map(({ id }) => id);\n }\n },\n ApwQuery: {\n getWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.get(args.id));\n },\n listWorkflows: async (_, args: any, context) => {\n try {\n /**\n * We know that args is ListWorkflowsParams.\n */\n const [entries, meta] = await context.apw.workflow.list(\n args as unknown as ListWorkflowsParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.create(args.data));\n },\n updateWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.update(args.id, args.data));\n },\n deleteWorkflow: async (_, args: any, context) => {\n return resolve(() => context.apw.workflow.delete(args.id));\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,
|
|
1
|
+
{"version":3,"names":["_plugins","require","_handlerGraphql","_resolve","_interopRequireDefault","_ensureAuthentication","_utils","workflowSchema","GraphQLSchemaPlugin","typeDefs","onByFields","dateTimeFieldsSorters","resolvers","ApwWorkflowStep","reviewers","parent","map","id","ApwQuery","getWorkflow","_","args","context","resolve","ensureAuthentication","apw","workflow","get","listWorkflows","entries","meta","list","ListResponse","e","ErrorResponse","ApwMutation","createWorkflow","create","data","updateWorkflow","update","deleteWorkflow","delete","_default","exports","default"],"sources":["workflow.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ErrorResponse, ListResponse } from \"@webiny/handler-graphql\";\nimport { ApwContext, ApwReviewer, ListWorkflowsParams } from \"~/types\";\nimport resolve from \"~/utils/resolve\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication\";\nimport { onByFields, dateTimeFieldsSorters } from \"./utils\";\n\nconst workflowSchema = new GraphQLSchemaPlugin<ApwContext>({\n // Had to remove /* GraphQL */ because prettier would not format the code correctly.\n typeDefs: `\n type ApwWorkflowListItem {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwListWorkflowsResponse {\n data: [ApwWorkflowListItem]\n error: ApwError\n meta: ApwMeta\n }\n\n type ApwWorkflowStep {\n title: String!\n id: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n type ApwWorkflowScope {\n type: String\n data: JSON\n }\n\n type ApwWorkflow {\n # System generated fields\n id: ID\n \n ${onByFields}\n \n # Workflow specific fields\n app: ApwWorkflowApplication\n title: String\n steps: [ApwWorkflowStep]\n scope: ApwWorkflowScope\n }\n\n type ApwWorkflowResponse {\n data: ApwWorkflow\n error: ApwError\n }\n\n type ApwDeleteWorkflowResponse {\n data: Boolean\n error: ApwError\n }\n\n enum ApwWorkflowApplication {\n pageBuilder\n cms\n formBuilder\n }\n\n enum ApwWorkflowStepTypes {\n mandatoryBlocking\n mandatoryNonBlocking\n notMandatory\n }\n\n enum ApwListWorkflowsSort {\n id_ASC\n id_DESC\n \n ${dateTimeFieldsSorters}\n publishedOn_ASC\n publishedOn_DESC\n \n title_ASC\n title_DESC\n }\n\n input ApwWorkflowReviewerInput {\n id: ID\n }\n\n input ApwCreateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]!\n }\n\n input ApwUpdateWorkflowStepInput {\n id: String!\n title: String!\n type: ApwWorkflowStepTypes!\n reviewers: [ID!]\n }\n\n input ApwWorkflowScopeInput {\n type: String!\n data: JSON\n }\n\n input ApwCreateWorkflowInput {\n title: String!\n steps: [ApwCreateWorkflowStepInput!]!\n scope: ApwWorkflowScopeInput!\n app: ApwWorkflowApplication!\n }\n\n input ApwUpdateWorkflowInput {\n title: String\n steps: [ApwUpdateWorkflowStepInput!]\n scope: ApwWorkflowScopeInput\n }\n\n input ApwListWorkflowsWhereInput {\n app: ApwWorkflowApplication\n }\n\n input ApwListWorkflowsSearchInput {\n # By specifying \"query\", the search will be performed against workflow' \"title\" field.\n query: String\n }\n\n type ApwQuery {\n getWorkflow(id: ID!): ApwWorkflowResponse\n\n listWorkflows(\n where: ApwListWorkflowsWhereInput\n limit: Int\n after: String\n sort: [ApwListWorkflowsSort!]\n search: ApwListWorkflowsSearchInput\n ): ApwListWorkflowsResponse\n }\n\n type ApwMutation {\n createWorkflow(data: ApwCreateWorkflowInput!): ApwWorkflowResponse\n\n # Update workflow by given ID.\n updateWorkflow(id: ID!, data: ApwUpdateWorkflowInput!): ApwWorkflowResponse\n\n # Delete workflow\n deleteWorkflow(id: ID!): ApwDeleteWorkflowResponse\n }\n `,\n resolvers: {\n ApwWorkflowStep: {\n reviewers: parent => {\n const reviewers: ApwReviewer[] = parent.reviewers;\n return reviewers.map(({ id }) => id);\n }\n },\n ApwQuery: {\n getWorkflow: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.workflow.get(args.id);\n });\n },\n listWorkflows: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n /**\n * We know that args is ListWorkflowsParams.\n */\n const [entries, meta] = await context.apw.workflow.list(\n args as unknown as ListWorkflowsParams\n );\n return new ListResponse(entries, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n }\n },\n ApwMutation: {\n createWorkflow: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.workflow.create(args.data);\n });\n },\n updateWorkflow: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.workflow.update(args.id, args.data);\n });\n },\n deleteWorkflow: async (_, args: any, context) => {\n return resolve(() => {\n ensureAuthentication(context);\n return context.apw.workflow.delete(args.id);\n });\n }\n }\n }\n});\n\nexport default workflowSchema;\n"],"mappings":";;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,qBAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA,MAAMM,cAAc,GAAG,IAAIC,4BAAmB,CAAa;EACvD;EACAC,QAAQ,EAAE;AACd;AACA;AACA;AACA;AACA,cAAcC,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcA,iBAAU;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAcC,4BAAqB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;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,eAAe,EAAE;MACbC,SAAS,EAAEC,MAAM,IAAI;QACjB,MAAMD,SAAwB,GAAGC,MAAM,CAACD,SAAS;QACjD,OAAOA,SAAS,CAACE,GAAG,CAAC,CAAC;UAAEC;QAAG,CAAC,KAAKA,EAAE,CAAC;MACxC;IACJ,CAAC;IACDC,QAAQ,EAAE;MACNC,WAAW,EAAE,MAAAA,CAAOC,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC1C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACC,GAAG,CAACN,IAAI,CAACJ,EAAE,CAAC;QAC5C,CAAC,CAAC;MACN,CAAC;MACDW,aAAa,EAAE,MAAAA,CAAOR,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC5C,IAAI;UACA,IAAAE,0CAAoB,EAACF,OAAO,CAAC;UAC7B;AACpB;AACA;UACoB,MAAM,CAACO,OAAO,EAAEC,IAAI,CAAC,GAAG,MAAMR,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACK,IAAI,CACnDV,IACJ,CAAC;UACD,OAAO,IAAIW,4BAAY,CAACH,OAAO,EAAEC,IAAI,CAAC;QAC1C,CAAC,CAAC,OAAOG,CAAC,EAAE;UACR,OAAO,IAAIC,6BAAa,CAACD,CAAC,CAAC;QAC/B;MACJ;IACJ,CAAC;IACDE,WAAW,EAAE;MACTC,cAAc,EAAE,MAAAA,CAAOhB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC7C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACW,MAAM,CAAChB,IAAI,CAACiB,IAAI,CAAC;QACjD,CAAC,CAAC;MACN,CAAC;MACDC,cAAc,EAAE,MAAAA,CAAOnB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC7C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACc,MAAM,CAACnB,IAAI,CAACJ,EAAE,EAAEI,IAAI,CAACiB,IAAI,CAAC;QAC1D,CAAC,CAAC;MACN,CAAC;MACDG,cAAc,EAAE,MAAAA,CAAOrB,CAAC,EAAEC,IAAS,EAAEC,OAAO,KAAK;QAC7C,OAAO,IAAAC,gBAAO,EAAC,MAAM;UACjB,IAAAC,0CAAoB,EAACF,OAAO,CAAC;UAC7B,OAAOA,OAAO,CAACG,GAAG,CAACC,QAAQ,CAACgB,MAAM,CAACrB,IAAI,CAACJ,EAAE,CAAC;QAC/C,CAAC,CAAC;MACN;IACJ;EACJ;AACJ,CAAC,CAAC;AAAC,IAAA0B,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEYtC,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ensureAuthentication = void 0;
|
|
7
|
+
var _apiSecurity = require("@webiny/api-security");
|
|
8
|
+
const ensureAuthentication = context => {
|
|
9
|
+
const identity = context.security.getIdentity();
|
|
10
|
+
if (!identity) {
|
|
11
|
+
throw new _apiSecurity.NotAuthorizedError();
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
exports.ensureAuthentication = ensureAuthentication;
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=ensureAuthentication.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_apiSecurity","require","ensureAuthentication","context","identity","security","getIdentity","NotAuthorizedError","exports"],"sources":["ensureAuthentication.ts"],"sourcesContent":["import { NotAuthorizedError } from \"@webiny/api-security\";\nimport { ApwContext } from \"~/types\";\n\nexport const ensureAuthentication = (context: ApwContext) => {\n const identity = context.security.getIdentity();\n if (!identity) {\n throw new NotAuthorizedError();\n }\n};\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAGO,MAAMC,oBAAoB,GAAIC,OAAmB,IAAK;EACzD,MAAMC,QAAQ,GAAGD,OAAO,CAACE,QAAQ,CAACC,WAAW,CAAC,CAAC;EAC/C,IAAI,CAACF,QAAQ,EAAE;IACX,MAAM,IAAIG,+BAAkB,CAAC,CAAC;EAClC;AACJ,CAAC;AAACC,OAAA,CAAAN,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|