@webiny/api-aco 0.0.0-unstable.496cf268ac → 0.0.0-unstable.606fc9c866

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.
Files changed (72) hide show
  1. package/README.md +6 -6
  2. package/createAcoFields.js +2 -2
  3. package/createAcoFields.js.map +1 -1
  4. package/createAcoModels.js +0 -2
  5. package/createAcoModels.js.map +1 -1
  6. package/folder/folder.gql.js +1 -0
  7. package/folder/folder.gql.js.map +1 -1
  8. package/folder/folder.model.d.ts +2 -4
  9. package/folder/folder.model.js +2 -6
  10. package/folder/folder.model.js.map +1 -1
  11. package/folder/folder.so.js +4 -4
  12. package/folder/folder.so.js.map +1 -1
  13. package/index.d.ts +3 -1
  14. package/index.js +17 -3
  15. package/index.js.map +1 -1
  16. package/package.json +22 -22
  17. package/record/record.crud.js +3 -0
  18. package/record/record.crud.js.map +1 -1
  19. package/record/record.gql.js +55 -1
  20. package/record/record.gql.js.map +1 -1
  21. package/record/record.model.d.ts +2 -4
  22. package/record/record.model.js +10 -11
  23. package/record/record.model.js.map +1 -1
  24. package/record/record.so.js +53 -20
  25. package/record/record.so.js.map +1 -1
  26. package/record/record.types.d.ts +21 -4
  27. package/record/record.types.js.map +1 -1
  28. package/types.d.ts +6 -0
  29. package/types.js +27 -0
  30. package/types.js.map +1 -1
  31. package/utils/acoRecordId.d.ts +6 -0
  32. package/utils/acoRecordId.js +33 -0
  33. package/utils/acoRecordId.js.map +1 -0
  34. package/utils/createModelField.d.ts +0 -1
  35. package/utils/createModelField.js +2 -4
  36. package/utils/createModelField.js.map +1 -1
  37. package/utils/createOperationsWrapper.js +8 -8
  38. package/utils/createOperationsWrapper.js.map +1 -1
  39. package/utils/getFieldValues.d.ts +4 -1
  40. package/utils/getFieldValues.js +7 -10
  41. package/utils/getFieldValues.js.map +1 -1
  42. package/utils/modelFactory.d.ts +3 -5
  43. package/utils/modelFactory.js +4 -2
  44. package/utils/modelFactory.js.map +1 -1
  45. package/utils/resolve.d.ts +1 -1
  46. package/context/folders.d.ts +0 -2
  47. package/context/folders.js +0 -261
  48. package/context/folders.js.map +0 -1
  49. package/context/index.d.ts +0 -2
  50. package/context/index.js +0 -22
  51. package/context/index.js.map +0 -1
  52. package/context/links.d.ts +0 -2
  53. package/context/links.js +0 -270
  54. package/context/links.js.map +0 -1
  55. package/graphql/base.gql.d.ts +0 -3
  56. package/graphql/base.gql.js +0 -63
  57. package/graphql/base.gql.js.map +0 -1
  58. package/graphql/folders.gql.d.ts +0 -3
  59. package/graphql/folders.gql.js +0 -126
  60. package/graphql/folders.gql.js.map +0 -1
  61. package/graphql/index.d.ts +0 -1
  62. package/graphql/index.js +0 -15
  63. package/graphql/index.js.map +0 -1
  64. package/graphql/links.gql.d.ts +0 -3
  65. package/graphql/links.gql.js +0 -123
  66. package/graphql/links.gql.js.map +0 -1
  67. package/subscriptions/afterFolderDelete.d.ts +0 -3
  68. package/subscriptions/afterFolderDelete.js +0 -62
  69. package/subscriptions/afterFolderDelete.js.map +0 -1
  70. package/subscriptions/index.d.ts +0 -3
  71. package/subscriptions/index.js +0 -14
  72. package/subscriptions/index.js.map +0 -1
@@ -1,63 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.baseSchema = void 0;
7
-
8
- var _plugins = require("@webiny/handler-graphql/plugins");
9
-
10
- const emptyResolver = () => ({});
11
-
12
- const baseSchema = new _plugins.GraphQLSchemaPlugin({
13
- typeDefs:
14
- /* GraphQL */
15
- `
16
- type FoldersQuery {
17
- _empty: String
18
- }
19
-
20
- type FoldersMutation {
21
- _empty: String
22
- }
23
-
24
- extend type Query {
25
- folders: FoldersQuery
26
- }
27
-
28
- extend type Mutation {
29
- folders: FoldersMutation
30
- }
31
-
32
- type FolderCreatedBy {
33
- id: ID
34
- displayName: String
35
- }
36
-
37
- type FolderError {
38
- code: String
39
- message: String
40
- data: JSON
41
- }
42
-
43
- type FolderBooleanResponse {
44
- data: Boolean
45
- error: FolderError
46
- }
47
-
48
- type ListMeta {
49
- cursor: String
50
- totalCount: Int
51
- hasMoreItems: Boolean
52
- }
53
- `,
54
- resolvers: {
55
- Query: {
56
- folders: emptyResolver
57
- },
58
- Mutation: {
59
- folders: emptyResolver
60
- }
61
- }
62
- });
63
- exports.baseSchema = baseSchema;
@@ -1 +0,0 @@
1
- {"version":3,"names":["emptyResolver","baseSchema","GraphQLSchemaPlugin","typeDefs","resolvers","Query","folders","Mutation"],"sources":["base.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins\";\nimport { ACOContext } from \"~/types\";\n\nconst emptyResolver = () => ({});\n\nexport const baseSchema = new GraphQLSchemaPlugin<ACOContext>({\n typeDefs: /* GraphQL */ `\n type FoldersQuery {\n _empty: String\n }\n\n type FoldersMutation {\n _empty: String\n }\n\n extend type Query {\n folders: FoldersQuery\n }\n\n extend type Mutation {\n folders: FoldersMutation\n }\n\n type FolderCreatedBy {\n id: ID\n displayName: String\n }\n\n type FolderError {\n code: String\n message: String\n data: JSON\n }\n\n type FolderBooleanResponse {\n data: Boolean\n error: FolderError\n }\n\n type ListMeta {\n cursor: String\n totalCount: Int\n hasMoreItems: Boolean\n }\n `,\n resolvers: {\n Query: {\n folders: emptyResolver\n },\n Mutation: {\n folders: emptyResolver\n }\n }\n});\n"],"mappings":";;;;;;;AAAA;;AAGA,MAAMA,aAAa,GAAG,OAAO,EAAP,CAAtB;;AAEO,MAAMC,UAAU,GAAG,IAAIC,4BAAJ,CAAoC;EAC1DC,QAAQ;EAAE;EAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAvC8D;EAwC1DC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,OAAO,EAAEN;IADN,CADA;IAIPO,QAAQ,EAAE;MACND,OAAO,EAAEN;IADH;EAJH;AAxC+C,CAApC,CAAnB"}
@@ -1,3 +0,0 @@
1
- import { GraphQLSchemaPlugin } from "@webiny/handler-graphql/plugins/GraphQLSchemaPlugin";
2
- import { ACOContext } from "../types";
3
- export declare const foldersSchema: GraphQLSchemaPlugin<ACOContext>;
@@ -1,126 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.foldersSchema = void 0;
7
-
8
- var _responses = require("@webiny/handler-graphql/responses");
9
-
10
- var _GraphQLSchemaPlugin = require("@webiny/handler-graphql/plugins/GraphQLSchemaPlugin");
11
-
12
- const foldersSchema = new _GraphQLSchemaPlugin.GraphQLSchemaPlugin({
13
- typeDefs:
14
- /* GraphQL */
15
- `
16
- type Folder {
17
- id: ID!
18
- name: String!
19
- slug: String!
20
- type: String!
21
- parentId: ID
22
- createdOn: DateTime
23
- createdBy: FolderCreatedBy
24
- }
25
-
26
- input FolderCreateInput {
27
- name: String!
28
- slug: String!
29
- type: String!
30
- parentId: ID
31
- }
32
-
33
- input FolderUpdateInput {
34
- name: String
35
- slug: String
36
- parentId: ID
37
- }
38
-
39
- input FoldersListWhereInput {
40
- type: String!
41
- }
42
-
43
- type FolderResponse {
44
- data: Folder
45
- error: FolderError
46
- }
47
-
48
- type FoldersListResponse {
49
- data: [Folder]
50
- error: FolderError
51
- }
52
-
53
- extend type FoldersQuery {
54
- getFolder(id: ID!): FolderResponse
55
- listFolders(where: FoldersListWhereInput!): FoldersListResponse
56
- }
57
-
58
- extend type FoldersMutation {
59
- createFolder(data: FolderCreateInput!): FolderResponse
60
- updateFolder(id: ID!, data: FolderUpdateInput!): FolderResponse
61
- deleteFolder(id: ID!): FolderBooleanResponse
62
- }
63
- `,
64
- resolvers: {
65
- FoldersQuery: {
66
- getFolder: async (_, {
67
- id
68
- }, context) => {
69
- try {
70
- const folder = await context.folders.getFolder({
71
- id
72
- });
73
- return new _responses.Response(folder);
74
- } catch (error) {
75
- return new _responses.ErrorResponse(error);
76
- }
77
- },
78
- listFolders: async (_, {
79
- where
80
- }, context) => {
81
- try {
82
- const folders = await context.folders.listFolders({
83
- where
84
- });
85
- return new _responses.Response(folders);
86
- } catch (error) {
87
- return new _responses.ErrorResponse(error);
88
- }
89
- }
90
- },
91
- FoldersMutation: {
92
- createFolder: async (_, {
93
- data
94
- }, context) => {
95
- try {
96
- const folder = await context.folders.createFolder(data);
97
- return new _responses.Response(folder);
98
- } catch (error) {
99
- return new _responses.ErrorResponse(error);
100
- }
101
- },
102
- updateFolder: async (_, {
103
- id,
104
- data
105
- }, context) => {
106
- try {
107
- const folder = await context.folders.updateFolder(id, data);
108
- return new _responses.Response(folder);
109
- } catch (error) {
110
- return new _responses.ErrorResponse(error);
111
- }
112
- },
113
- deleteFolder: async (_, {
114
- id
115
- }, context) => {
116
- try {
117
- await context.folders.deleteFolder(id);
118
- return new _responses.Response(true);
119
- } catch (error) {
120
- return new _responses.ErrorResponse(error);
121
- }
122
- }
123
- }
124
- }
125
- });
126
- exports.foldersSchema = foldersSchema;
@@ -1 +0,0 @@
1
- {"version":3,"names":["foldersSchema","GraphQLSchemaPlugin","typeDefs","resolvers","FoldersQuery","getFolder","_","id","context","folder","folders","Response","error","ErrorResponse","listFolders","where","FoldersMutation","createFolder","data","updateFolder","deleteFolder"],"sources":["folders.gql.ts"],"sourcesContent":["import { ErrorResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin\";\nimport { ACOContext } from \"~/types\";\n\nexport const foldersSchema = new GraphQLSchemaPlugin<ACOContext>({\n typeDefs: /* GraphQL */ `\n type Folder {\n id: ID!\n name: String!\n slug: String!\n type: String!\n parentId: ID\n createdOn: DateTime\n createdBy: FolderCreatedBy\n }\n\n input FolderCreateInput {\n name: String!\n slug: String!\n type: String!\n parentId: ID\n }\n\n input FolderUpdateInput {\n name: String\n slug: String\n parentId: ID\n }\n\n input FoldersListWhereInput {\n type: String!\n }\n\n type FolderResponse {\n data: Folder\n error: FolderError\n }\n\n type FoldersListResponse {\n data: [Folder]\n error: FolderError\n }\n\n extend type FoldersQuery {\n getFolder(id: ID!): FolderResponse\n listFolders(where: FoldersListWhereInput!): FoldersListResponse\n }\n\n extend type FoldersMutation {\n createFolder(data: FolderCreateInput!): FolderResponse\n updateFolder(id: ID!, data: FolderUpdateInput!): FolderResponse\n deleteFolder(id: ID!): FolderBooleanResponse\n }\n `,\n resolvers: {\n FoldersQuery: {\n getFolder: async (_, { id }, context) => {\n try {\n const folder = await context.folders.getFolder({ id });\n return new Response(folder);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n listFolders: async (_, { where }, context) => {\n try {\n const folders = await context.folders.listFolders({ where });\n return new Response(folders);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n },\n\n FoldersMutation: {\n createFolder: async (_, { data }, context) => {\n try {\n const folder = await context.folders.createFolder(data);\n return new Response(folder);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n updateFolder: async (_, { id, data }, context) => {\n try {\n const folder = await context.folders.updateFolder(id, data);\n return new Response(folder);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n deleteFolder: async (_, { id }, context) => {\n try {\n await context.folders.deleteFolder(id);\n return new Response(true);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n }\n }\n});\n"],"mappings":";;;;;;;AAAA;;AACA;;AAGO,MAAMA,aAAa,GAAG,IAAIC,wCAAJ,CAAoC;EAC7DC,QAAQ;EAAE;EAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAjDiE;EAkD7DC,SAAS,EAAE;IACPC,YAAY,EAAE;MACVC,SAAS,EAAE,OAAOC,CAAP,EAAU;QAAEC;MAAF,CAAV,EAAkBC,OAAlB,KAA8B;QACrC,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBL,SAAhB,CAA0B;YAAEE;UAAF,CAA1B,CAArB;UACA,OAAO,IAAII,mBAAJ,CAAaF,MAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CARS;MASVE,WAAW,EAAE,OAAOR,CAAP,EAAU;QAAES;MAAF,CAAV,EAAqBP,OAArB,KAAiC;QAC1C,IAAI;UACA,MAAME,OAAO,GAAG,MAAMF,OAAO,CAACE,OAAR,CAAgBI,WAAhB,CAA4B;YAAEC;UAAF,CAA5B,CAAtB;UACA,OAAO,IAAIJ,mBAAJ,CAAaD,OAAb,CAAP;QACH,CAHD,CAGE,OAAOE,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ;IAhBS,CADP;IAoBPI,eAAe,EAAE;MACbC,YAAY,EAAE,OAAOX,CAAP,EAAU;QAAEY;MAAF,CAAV,EAAoBV,OAApB,KAAgC;QAC1C,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBO,YAAhB,CAA6BC,IAA7B,CAArB;UACA,OAAO,IAAIP,mBAAJ,CAAaF,MAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CARY;MASbO,YAAY,EAAE,OAAOb,CAAP,EAAU;QAAEC,EAAF;QAAMW;MAAN,CAAV,EAAwBV,OAAxB,KAAoC;QAC9C,IAAI;UACA,MAAMC,MAAM,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBS,YAAhB,CAA6BZ,EAA7B,EAAiCW,IAAjC,CAArB;UACA,OAAO,IAAIP,mBAAJ,CAAaF,MAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CAhBY;MAiBbQ,YAAY,EAAE,OAAOd,CAAP,EAAU;QAAEC;MAAF,CAAV,EAAkBC,OAAlB,KAA8B;QACxC,IAAI;UACA,MAAMA,OAAO,CAACE,OAAR,CAAgBU,YAAhB,CAA6Bb,EAA7B,CAAN;UACA,OAAO,IAAII,mBAAJ,CAAa,IAAb,CAAP;QACH,CAHD,CAGE,OAAOC,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ;IAxBY;EApBV;AAlDkD,CAApC,CAAtB"}
@@ -1 +0,0 @@
1
- export declare const graphqlPlugins: import("@webiny/handler-graphql").GraphQLSchemaPlugin<import("../types").ACOContext>[];
package/graphql/index.js DELETED
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.graphqlPlugins = void 0;
7
-
8
- var _base = require("./base.gql");
9
-
10
- var _links = require("./links.gql");
11
-
12
- var _folders = require("./folders.gql");
13
-
14
- const graphqlPlugins = [_base.baseSchema, _links.linksSchema, _folders.foldersSchema];
15
- exports.graphqlPlugins = graphqlPlugins;
@@ -1 +0,0 @@
1
- {"version":3,"names":["graphqlPlugins","baseSchema","linksSchema","foldersSchema"],"sources":["index.ts"],"sourcesContent":["import { baseSchema } from \"./base.gql\";\nimport { linksSchema } from \"./links.gql\";\nimport { foldersSchema } from \"./folders.gql\";\n\nexport const graphqlPlugins = [baseSchema, linksSchema, foldersSchema];\n"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AAEO,MAAMA,cAAc,GAAG,CAACC,gBAAD,EAAaC,kBAAb,EAA0BC,sBAA1B,CAAvB"}
@@ -1,3 +0,0 @@
1
- import { GraphQLSchemaPlugin } from "@webiny/handler-graphql/plugins/GraphQLSchemaPlugin";
2
- import { ACOContext } from "../types";
3
- export declare const linksSchema: GraphQLSchemaPlugin<ACOContext>;
@@ -1,123 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.linksSchema = void 0;
7
-
8
- var _responses = require("@webiny/handler-graphql/responses");
9
-
10
- var _GraphQLSchemaPlugin = require("@webiny/handler-graphql/plugins/GraphQLSchemaPlugin");
11
-
12
- const linksSchema = new _GraphQLSchemaPlugin.GraphQLSchemaPlugin({
13
- typeDefs:
14
- /* GraphQL */
15
- `
16
- type Link {
17
- id: ID!
18
- linkId: ID!
19
- folderId: ID!
20
- createdOn: DateTime
21
- createdBy: FolderCreatedBy
22
- }
23
-
24
- input LinkCreateInput {
25
- id: ID!
26
- folderId: ID!
27
- }
28
-
29
- input LinkUpdateInput {
30
- folderId: ID!
31
- }
32
-
33
- input LinksListWhereInput {
34
- folderId: ID!
35
- }
36
-
37
- type LinkResponse {
38
- data: Link
39
- error: FolderError
40
- }
41
-
42
- type LinksListResponse {
43
- data: [Link]
44
- meta: ListMeta
45
- error: FolderError
46
- }
47
-
48
- extend type FoldersQuery {
49
- getLink(id: ID!): LinkResponse
50
- listLinks(where: LinksListWhereInput!, limit: Int, after: String): LinksListResponse
51
- }
52
-
53
- extend type FoldersMutation {
54
- createLink(data: LinkCreateInput!): LinkResponse
55
- updateLink(id: ID!, data: LinkUpdateInput!): LinkResponse
56
- deleteLink(id: ID!): FolderBooleanResponse
57
- }
58
- `,
59
- resolvers: {
60
- FoldersQuery: {
61
- getLink: async (_, {
62
- id
63
- }, context) => {
64
- try {
65
- const link = await context.folders.getLink(id);
66
- return new _responses.Response(link);
67
- } catch (error) {
68
- return new _responses.ErrorResponse(error);
69
- }
70
- },
71
- listLinks: async (_, {
72
- where,
73
- limit,
74
- after
75
- }, context) => {
76
- try {
77
- const [data, meta] = await context.folders.listLinks({
78
- where,
79
- limit,
80
- after
81
- });
82
- return new _responses.ListResponse(data, meta);
83
- } catch (error) {
84
- return new _responses.ErrorResponse(error);
85
- }
86
- }
87
- },
88
- FoldersMutation: {
89
- createLink: async (_, {
90
- data
91
- }, context) => {
92
- try {
93
- const link = await context.folders.createLink(data);
94
- return new _responses.Response(link);
95
- } catch (error) {
96
- return new _responses.ErrorResponse(error);
97
- }
98
- },
99
- updateLink: async (_, {
100
- id,
101
- data
102
- }, context) => {
103
- try {
104
- const link = await context.folders.updateLink(id, data);
105
- return new _responses.Response(link);
106
- } catch (error) {
107
- return new _responses.ErrorResponse(error);
108
- }
109
- },
110
- deleteLink: async (_, {
111
- id
112
- }, context) => {
113
- try {
114
- await context.folders.deleteLink(id);
115
- return new _responses.Response(true);
116
- } catch (error) {
117
- return new _responses.ErrorResponse(error);
118
- }
119
- }
120
- }
121
- }
122
- });
123
- exports.linksSchema = linksSchema;
@@ -1 +0,0 @@
1
- {"version":3,"names":["linksSchema","GraphQLSchemaPlugin","typeDefs","resolvers","FoldersQuery","getLink","_","id","context","link","folders","Response","error","ErrorResponse","listLinks","where","limit","after","data","meta","ListResponse","FoldersMutation","createLink","updateLink","deleteLink"],"sources":["links.gql.ts"],"sourcesContent":["import { ErrorResponse, ListResponse, Response } from \"@webiny/handler-graphql/responses\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/plugins/GraphQLSchemaPlugin\";\nimport { ACOContext } from \"~/types\";\n\nexport const linksSchema = new GraphQLSchemaPlugin<ACOContext>({\n typeDefs: /* GraphQL */ `\n type Link {\n id: ID!\n linkId: ID!\n folderId: ID!\n createdOn: DateTime\n createdBy: FolderCreatedBy\n }\n\n input LinkCreateInput {\n id: ID!\n folderId: ID!\n }\n\n input LinkUpdateInput {\n folderId: ID!\n }\n\n input LinksListWhereInput {\n folderId: ID!\n }\n\n type LinkResponse {\n data: Link\n error: FolderError\n }\n\n type LinksListResponse {\n data: [Link]\n meta: ListMeta\n error: FolderError\n }\n\n extend type FoldersQuery {\n getLink(id: ID!): LinkResponse\n listLinks(where: LinksListWhereInput!, limit: Int, after: String): LinksListResponse\n }\n\n extend type FoldersMutation {\n createLink(data: LinkCreateInput!): LinkResponse\n updateLink(id: ID!, data: LinkUpdateInput!): LinkResponse\n deleteLink(id: ID!): FolderBooleanResponse\n }\n `,\n resolvers: {\n FoldersQuery: {\n getLink: async (_, { id }, context) => {\n try {\n const link = await context.folders.getLink(id);\n return new Response(link);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n listLinks: async (_, { where, limit, after }, context) => {\n try {\n const [data, meta] = await context.folders.listLinks({ where, limit, after });\n return new ListResponse(data, meta);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n },\n\n FoldersMutation: {\n createLink: async (_, { data }, context) => {\n try {\n const link = await context.folders.createLink(data);\n return new Response(link);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n updateLink: async (_, { id, data }, context) => {\n try {\n const link = await context.folders.updateLink(id, data);\n return new Response(link);\n } catch (error) {\n return new ErrorResponse(error);\n }\n },\n deleteLink: async (_, { id }, context) => {\n try {\n await context.folders.deleteLink(id);\n return new Response(true);\n } catch (error) {\n return new ErrorResponse(error);\n }\n }\n }\n }\n});\n"],"mappings":";;;;;;;AAAA;;AACA;;AAGO,MAAMA,WAAW,GAAG,IAAIC,wCAAJ,CAAoC;EAC3DC,QAAQ;EAAE;EAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KA5C+D;EA6C3DC,SAAS,EAAE;IACPC,YAAY,EAAE;MACVC,OAAO,EAAE,OAAOC,CAAP,EAAU;QAAEC;MAAF,CAAV,EAAkBC,OAAlB,KAA8B;QACnC,IAAI;UACA,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBL,OAAhB,CAAwBE,EAAxB,CAAnB;UACA,OAAO,IAAII,mBAAJ,CAAaF,IAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CARS;MASVE,SAAS,EAAE,OAAOR,CAAP,EAAU;QAAES,KAAF;QAASC,KAAT;QAAgBC;MAAhB,CAAV,EAAmCT,OAAnC,KAA+C;QACtD,IAAI;UACA,MAAM,CAACU,IAAD,EAAOC,IAAP,IAAe,MAAMX,OAAO,CAACE,OAAR,CAAgBI,SAAhB,CAA0B;YAAEC,KAAF;YAASC,KAAT;YAAgBC;UAAhB,CAA1B,CAA3B;UACA,OAAO,IAAIG,uBAAJ,CAAiBF,IAAjB,EAAuBC,IAAvB,CAAP;QACH,CAHD,CAGE,OAAOP,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ;IAhBS,CADP;IAoBPS,eAAe,EAAE;MACbC,UAAU,EAAE,OAAOhB,CAAP,EAAU;QAAEY;MAAF,CAAV,EAAoBV,OAApB,KAAgC;QACxC,IAAI;UACA,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBY,UAAhB,CAA2BJ,IAA3B,CAAnB;UACA,OAAO,IAAIP,mBAAJ,CAAaF,IAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CARY;MASbW,UAAU,EAAE,OAAOjB,CAAP,EAAU;QAAEC,EAAF;QAAMW;MAAN,CAAV,EAAwBV,OAAxB,KAAoC;QAC5C,IAAI;UACA,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,OAAR,CAAgBa,UAAhB,CAA2BhB,EAA3B,EAA+BW,IAA/B,CAAnB;UACA,OAAO,IAAIP,mBAAJ,CAAaF,IAAb,CAAP;QACH,CAHD,CAGE,OAAOG,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ,CAhBY;MAiBbY,UAAU,EAAE,OAAOlB,CAAP,EAAU;QAAEC;MAAF,CAAV,EAAkBC,OAAlB,KAA8B;QACtC,IAAI;UACA,MAAMA,OAAO,CAACE,OAAR,CAAgBc,UAAhB,CAA2BjB,EAA3B,CAAN;UACA,OAAO,IAAII,mBAAJ,CAAa,IAAb,CAAP;QACH,CAHD,CAGE,OAAOC,KAAP,EAAc;UACZ,OAAO,IAAIC,wBAAJ,CAAkBD,KAAlB,CAAP;QACH;MACJ;IAxBY;EApBV;AA7CgD,CAApC,CAApB"}
@@ -1,3 +0,0 @@
1
- import { ContextPlugin } from "@webiny/api";
2
- import { ACOContext } from "../types";
3
- export declare const afterFolderDelete: () => ContextPlugin<ACOContext>;
@@ -1,62 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.afterFolderDelete = void 0;
9
-
10
- var _api = require("@webiny/api");
11
-
12
- var _error = _interopRequireDefault(require("@webiny/error"));
13
-
14
- const filterFolderTreeIds = (folders, folderId) => {
15
- function findChildrenIds(acc, curr, index, arr) {
16
- if (curr.parentId && acc.some(el => el === (curr === null || curr === void 0 ? void 0 : curr.parentId))) {
17
- acc.push(curr.id);
18
- arr.splice(index, 1);
19
- return arr.reduce(findChildrenIds, acc);
20
- }
21
-
22
- return acc;
23
- }
24
-
25
- const result = folders.reduce(findChildrenIds, [folderId]);
26
- return [...new Set([...result])];
27
- };
28
-
29
- const afterFolderDelete = () => {
30
- return new _api.ContextPlugin(async ({
31
- folders: foldersContext
32
- }) => {
33
- try {
34
- // After a folder has been deleted, delete all related links.
35
- foldersContext.onFolderAfterDelete.subscribe(async ({
36
- folder
37
- }) => {
38
- const {
39
- id,
40
- type
41
- } = folder; // Fetching all folders by `type`
42
-
43
- const folders = await foldersContext.listFolders({
44
- where: {
45
- type
46
- }
47
- }); // Filter folders tree under the given folder `id`
48
-
49
- const folderTreeIds = filterFolderTreeIds(folders, id); // Delete all links related to a list of folders ids
50
-
51
- await foldersContext.deleteLinks(folderTreeIds);
52
- });
53
- } catch (error) {
54
- throw _error.default.from(error, {
55
- message: "Error while deleting folder-related links.",
56
- code: "AFTER_FORM_DELETE"
57
- });
58
- }
59
- });
60
- };
61
-
62
- exports.afterFolderDelete = afterFolderDelete;
@@ -1 +0,0 @@
1
- {"version":3,"names":["filterFolderTreeIds","folders","folderId","findChildrenIds","acc","curr","index","arr","parentId","some","el","push","id","splice","reduce","result","Set","afterFolderDelete","ContextPlugin","foldersContext","onFolderAfterDelete","subscribe","folder","type","listFolders","where","folderTreeIds","deleteLinks","error","WebinyError","from","message","code"],"sources":["afterFolderDelete.ts"],"sourcesContent":["import { ContextPlugin } from \"@webiny/api\";\nimport WebinyError from \"@webiny/error\";\nimport { Folder, ACOContext } from \"~/types\";\n\nconst filterFolderTreeIds = (folders: Folder[], folderId: string): string[] => {\n function findChildrenIds(acc: string[], curr: Folder, index: number, arr: Folder[]): string[] {\n if (curr.parentId && acc.some(el => el === curr?.parentId)) {\n acc.push(curr.id);\n arr.splice(index, 1);\n return arr.reduce(findChildrenIds, acc);\n }\n\n return acc;\n }\n\n const result = folders.reduce(findChildrenIds, [folderId]);\n\n return [...new Set([...result])];\n};\n\nexport const afterFolderDelete = () => {\n return new ContextPlugin<ACOContext>(async ({ folders: foldersContext }) => {\n try {\n // After a folder has been deleted, delete all related links.\n foldersContext.onFolderAfterDelete.subscribe(async ({ folder }) => {\n const { id, type } = folder;\n\n // Fetching all folders by `type`\n const folders = await foldersContext.listFolders({\n where: { type }\n });\n\n // Filter folders tree under the given folder `id`\n const folderTreeIds = filterFolderTreeIds(folders, id);\n\n // Delete all links related to a list of folders ids\n await foldersContext.deleteLinks(folderTreeIds);\n });\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while deleting folder-related links.\",\n code: \"AFTER_FORM_DELETE\"\n });\n }\n });\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AAGA,MAAMA,mBAAmB,GAAG,CAACC,OAAD,EAAoBC,QAApB,KAAmD;EAC3E,SAASC,eAAT,CAAyBC,GAAzB,EAAwCC,IAAxC,EAAsDC,KAAtD,EAAqEC,GAArE,EAA8F;IAC1F,IAAIF,IAAI,CAACG,QAAL,IAAiBJ,GAAG,CAACK,IAAJ,CAASC,EAAE,IAAIA,EAAE,MAAKL,IAAL,aAAKA,IAAL,uBAAKA,IAAI,CAAEG,QAAX,CAAjB,CAArB,EAA4D;MACxDJ,GAAG,CAACO,IAAJ,CAASN,IAAI,CAACO,EAAd;MACAL,GAAG,CAACM,MAAJ,CAAWP,KAAX,EAAkB,CAAlB;MACA,OAAOC,GAAG,CAACO,MAAJ,CAAWX,eAAX,EAA4BC,GAA5B,CAAP;IACH;;IAED,OAAOA,GAAP;EACH;;EAED,MAAMW,MAAM,GAAGd,OAAO,CAACa,MAAR,CAAeX,eAAf,EAAgC,CAACD,QAAD,CAAhC,CAAf;EAEA,OAAO,CAAC,GAAG,IAAIc,GAAJ,CAAQ,CAAC,GAAGD,MAAJ,CAAR,CAAJ,CAAP;AACH,CAdD;;AAgBO,MAAME,iBAAiB,GAAG,MAAM;EACnC,OAAO,IAAIC,kBAAJ,CAA8B,OAAO;IAAEjB,OAAO,EAAEkB;EAAX,CAAP,KAAuC;IACxE,IAAI;MACA;MACAA,cAAc,CAACC,mBAAf,CAAmCC,SAAnC,CAA6C,OAAO;QAAEC;MAAF,CAAP,KAAsB;QAC/D,MAAM;UAAEV,EAAF;UAAMW;QAAN,IAAeD,MAArB,CAD+D,CAG/D;;QACA,MAAMrB,OAAO,GAAG,MAAMkB,cAAc,CAACK,WAAf,CAA2B;UAC7CC,KAAK,EAAE;YAAEF;UAAF;QADsC,CAA3B,CAAtB,CAJ+D,CAQ/D;;QACA,MAAMG,aAAa,GAAG1B,mBAAmB,CAACC,OAAD,EAAUW,EAAV,CAAzC,CAT+D,CAW/D;;QACA,MAAMO,cAAc,CAACQ,WAAf,CAA2BD,aAA3B,CAAN;MACH,CAbD;IAcH,CAhBD,CAgBE,OAAOE,KAAP,EAAc;MACZ,MAAMC,cAAA,CAAYC,IAAZ,CAAiBF,KAAjB,EAAwB;QAC1BG,OAAO,EAAE,4CADiB;QAE1BC,IAAI,EAAE;MAFoB,CAAxB,CAAN;IAIH;EACJ,CAvBM,CAAP;AAwBH,CAzBM"}
@@ -1,3 +0,0 @@
1
- import { ContextPlugin } from "@webiny/api";
2
- import { ACOContext } from "../types";
3
- export declare const subscriptions: () => ContextPlugin<ACOContext>[];
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.subscriptions = void 0;
7
-
8
- var _afterFolderDelete = require("./afterFolderDelete");
9
-
10
- const subscriptions = () => {
11
- return [(0, _afterFolderDelete.afterFolderDelete)()];
12
- };
13
-
14
- exports.subscriptions = subscriptions;
@@ -1 +0,0 @@
1
- {"version":3,"names":["subscriptions","afterFolderDelete"],"sources":["index.ts"],"sourcesContent":["import { ContextPlugin } from \"@webiny/api\";\nimport { afterFolderDelete } from \"./afterFolderDelete\";\nimport { ACOContext } from \"~/types\";\n\nexport const subscriptions = (): ContextPlugin<ACOContext>[] => {\n return [afterFolderDelete()];\n};\n"],"mappings":";;;;;;;AACA;;AAGO,MAAMA,aAAa,GAAG,MAAmC;EAC5D,OAAO,CAAC,IAAAC,oCAAA,GAAD,CAAP;AACH,CAFM"}