@webiny/api-page-builder-import-export 0.0.0-unstable.990c3ab1b6 → 0.0.0-unstable.aad28a72ae
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/client.d.ts +2 -2
- package/client.js +6 -2
- package/client.js.map +1 -1
- package/export/combine/blocksHandler.d.ts +6 -0
- package/export/combine/blocksHandler.js +106 -0
- package/export/combine/blocksHandler.js.map +1 -0
- package/{exportPages → export}/combine/index.d.ts +3 -2
- package/export/combine/index.js +30 -0
- package/export/combine/index.js.map +1 -0
- package/export/combine/pagesHandler.d.ts +6 -0
- package/export/combine/pagesHandler.js +106 -0
- package/export/combine/pagesHandler.js.map +1 -0
- package/export/process/blocksHandler.d.ts +6 -0
- package/export/process/blocksHandler.js +176 -0
- package/export/process/blocksHandler.js.map +1 -0
- package/{exportPages → export}/process/index.d.ts +4 -6
- package/export/process/index.js +27 -0
- package/export/process/index.js.map +1 -0
- package/export/process/pagesHandler.d.ts +6 -0
- package/export/process/pagesHandler.js +204 -0
- package/export/process/pagesHandler.js.map +1 -0
- package/{exportPages → export}/s3Stream.d.ts +0 -0
- package/{exportPages → export}/s3Stream.js +20 -1
- package/{exportPages → export}/s3Stream.js.map +1 -1
- package/export/utils.d.ts +16 -0
- package/export/utils.js +135 -0
- package/export/utils.js.map +1 -0
- package/{exportPages → export}/zipper.d.ts +6 -5
- package/{exportPages → export}/zipper.js +49 -36
- package/export/zipper.js.map +1 -0
- package/graphql/crud/blocks.crud.d.ts +4 -0
- package/graphql/crud/blocks.crud.js +155 -0
- package/graphql/crud/blocks.crud.js.map +1 -0
- package/graphql/crud/importExportTasks.crud.d.ts +5 -0
- package/graphql/crud/{pageImportExportTasks.crud.js → importExportTasks.crud.js} +105 -57
- package/graphql/crud/importExportTasks.crud.js.map +1 -0
- package/graphql/crud/pages.crud.d.ts +2 -2
- package/graphql/crud/pages.crud.js +53 -33
- package/graphql/crud/pages.crud.js.map +1 -1
- package/graphql/crud.d.ts +2 -2
- package/graphql/crud.js +9 -2
- package/graphql/crud.js.map +1 -1
- package/graphql/graphql/blocks.gql.d.ts +4 -0
- package/graphql/graphql/blocks.gql.js +57 -0
- package/graphql/graphql/blocks.gql.js.map +1 -0
- package/graphql/graphql/importExportTasks.gql.d.ts +4 -0
- package/graphql/graphql/{pageImportExportTasks.gql.js → importExportTasks.gql.js} +23 -18
- package/graphql/graphql/importExportTasks.gql.js.map +1 -0
- package/graphql/graphql/pages.gql.d.ts +2 -2
- package/graphql/graphql/pages.gql.js +8 -9
- package/graphql/graphql/pages.gql.js.map +1 -1
- package/graphql/graphql/utils/resolve.js +3 -0
- package/graphql/graphql/utils/resolve.js.map +1 -1
- package/graphql/graphql.js +8 -2
- package/graphql/graphql.js.map +1 -1
- package/graphql/index.d.ts +2 -2
- package/graphql/index.js +5 -0
- package/graphql/index.js.map +1 -1
- package/graphql/types.d.ts +43 -23
- package/graphql/types.js.map +1 -1
- package/import/create/blocksHandler.d.ts +3 -0
- package/import/create/blocksHandler.js +110 -0
- package/import/create/blocksHandler.js.map +1 -0
- package/{importPages → import}/create/index.d.ts +5 -4
- package/import/create/index.js +30 -0
- package/import/create/index.js.map +1 -0
- package/import/create/pagesHandler.d.ts +3 -0
- package/import/create/pagesHandler.js +110 -0
- package/import/create/pagesHandler.js.map +1 -0
- package/import/process/blocksHandler.d.ts +3 -0
- package/import/process/blocksHandler.js +175 -0
- package/import/process/blocksHandler.js.map +1 -0
- package/{importPages → import}/process/index.d.ts +4 -3
- package/import/process/index.js +27 -0
- package/import/process/index.js.map +1 -0
- package/import/process/pagesHandler.d.ts +3 -0
- package/import/process/pagesHandler.js +180 -0
- package/import/process/pagesHandler.js.map +1 -0
- package/{importPages → import}/utils.d.ts +19 -20
- package/{importPages → import}/utils.js +229 -76
- package/import/utils.js.map +1 -0
- package/mockSecurity.js +2 -0
- package/mockSecurity.js.map +1 -1
- package/package.json +23 -23
- package/types.d.ts +62 -65
- package/types.js +22 -17
- package/types.js.map +1 -1
- package/exportPages/combine/index.js +0 -106
- package/exportPages/combine/index.js.map +0 -1
- package/exportPages/process/index.js +0 -192
- package/exportPages/process/index.js.map +0 -1
- package/exportPages/utils.d.ts +0 -13
- package/exportPages/utils.js +0 -100
- package/exportPages/utils.js.map +0 -1
- package/exportPages/zipper.js.map +0 -1
- package/graphql/crud/pageImportExportTasks.crud.d.ts +0 -5
- package/graphql/crud/pageImportExportTasks.crud.js.map +0 -1
- package/graphql/graphql/pageImportExportTasks.gql.d.ts +0 -4
- package/graphql/graphql/pageImportExportTasks.gql.js.map +0 -1
- package/importPages/create/index.js +0 -107
- package/importPages/create/index.js.map +0 -1
- package/importPages/process/index.js +0 -180
- package/importPages/process/index.js.map +0 -1
- package/importPages/utils.js.map +0 -1
@@ -1,22 +1,34 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
8
10
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
11
|
+
|
9
12
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
13
|
+
|
10
14
|
var _api = require("@webiny/api");
|
15
|
+
|
11
16
|
var _checkBasePermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions"));
|
17
|
+
|
12
18
|
var _types = require("../../types");
|
19
|
+
|
13
20
|
var _client = require("../../client");
|
14
|
-
|
15
|
-
var
|
21
|
+
|
22
|
+
var _utils = require("../../import/utils");
|
23
|
+
|
24
|
+
var _utils2 = require("../../export/utils");
|
25
|
+
|
16
26
|
var _utils3 = require("@webiny/utils");
|
27
|
+
|
17
28
|
const PERMISSION_NAME = "pb.page";
|
18
|
-
const EXPORT_PAGES_PROCESS_HANDLER = process.env.
|
19
|
-
const IMPORT_PAGES_CREATE_HANDLER = process.env.
|
29
|
+
const EXPORT_PAGES_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER;
|
30
|
+
const IMPORT_PAGES_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER;
|
31
|
+
|
20
32
|
var _default = new _api.ContextPlugin(context => {
|
21
33
|
const importExportCrud = {
|
22
34
|
async importPages({
|
@@ -25,17 +37,17 @@ var _default = new _api.ContextPlugin(context => {
|
|
25
37
|
}) {
|
26
38
|
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
27
39
|
rwd: "w"
|
28
|
-
});
|
40
|
+
}); // Bail out early if category not found
|
29
41
|
|
30
|
-
// Bail out early if category not found
|
31
42
|
const category = await context.pageBuilder.getCategory(categorySlug);
|
43
|
+
|
32
44
|
if (!category) {
|
33
45
|
throw new _handlerGraphql.NotFoundError(`Category with slug "${categorySlug}" not found.`);
|
34
|
-
}
|
46
|
+
} // Create a task for import page
|
35
47
|
|
36
|
-
|
37
|
-
const task = await context.pageBuilder.
|
38
|
-
status: _types.
|
48
|
+
|
49
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
50
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
39
51
|
input: {
|
40
52
|
category: categorySlug,
|
41
53
|
zipFileUrl
|
@@ -46,6 +58,7 @@ var _default = new _api.ContextPlugin(context => {
|
|
46
58
|
* ImportPages
|
47
59
|
* importPages
|
48
60
|
*/
|
61
|
+
|
49
62
|
await (0, _client.invokeHandlerClient)({
|
50
63
|
context,
|
51
64
|
name: IMPORT_PAGES_CREATE_HANDLER,
|
@@ -53,6 +66,7 @@ var _default = new _api.ContextPlugin(context => {
|
|
53
66
|
category: categorySlug,
|
54
67
|
zipFileUrl,
|
55
68
|
task,
|
69
|
+
type: "page",
|
56
70
|
identity: context.security.getIdentity()
|
57
71
|
},
|
58
72
|
description: "Import Pages - create"
|
@@ -61,6 +75,7 @@ var _default = new _api.ContextPlugin(context => {
|
|
61
75
|
task
|
62
76
|
};
|
63
77
|
},
|
78
|
+
|
64
79
|
async exportPages({
|
65
80
|
ids: initialPageIds,
|
66
81
|
revisionType,
|
@@ -71,8 +86,8 @@ var _default = new _api.ContextPlugin(context => {
|
|
71
86
|
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
72
87
|
rwd: "w"
|
73
88
|
});
|
74
|
-
let pageIds = initialPageIds || [];
|
75
|
-
|
89
|
+
let pageIds = initialPageIds || []; // If no ids are provided then it means we want to export all pages
|
90
|
+
|
76
91
|
if (!initialPageIds || Array.isArray(initialPageIds) && initialPageIds.length === 0) {
|
77
92
|
pageIds = [];
|
78
93
|
let pages = [];
|
@@ -80,63 +95,66 @@ var _default = new _api.ContextPlugin(context => {
|
|
80
95
|
hasMoreItems: true,
|
81
96
|
cursor: null,
|
82
97
|
totalCount: 0
|
83
|
-
};
|
84
|
-
|
98
|
+
}; // Paginate pages
|
99
|
+
|
85
100
|
while (meta.hasMoreItems) {
|
86
101
|
[pages, meta] = await context.pageBuilder.listLatestPages({
|
87
102
|
after: meta.cursor,
|
88
103
|
where: where,
|
89
104
|
sort: sort,
|
90
105
|
search: search
|
91
|
-
});
|
92
|
-
|
106
|
+
}); // Save page ids
|
107
|
+
|
93
108
|
pages.forEach(page => pageIds.push(page.id));
|
94
109
|
}
|
95
110
|
}
|
111
|
+
|
96
112
|
if (pageIds.length === 0) {
|
97
113
|
throw new _error.default("Cannot export pages - no pages found for provided inputs.", "EMPTY_EXPORT_NO_PAGES_FOUND");
|
98
|
-
}
|
114
|
+
} // Create the main task for page export.
|
115
|
+
|
99
116
|
|
100
|
-
|
101
|
-
|
102
|
-
status: _types.PageImportExportTaskStatus.PENDING
|
117
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
118
|
+
status: _types.ImportExportTaskStatus.PENDING
|
103
119
|
});
|
104
|
-
const exportPagesDataKey = `${_utils2.EXPORT_PAGES_FOLDER_KEY}/${task.id}`;
|
105
|
-
|
120
|
+
const exportPagesDataKey = `${_utils2.EXPORT_PAGES_FOLDER_KEY}/${task.id}`; // For each page create a sub task and invoke the process handler.
|
121
|
+
|
106
122
|
for (let i = 0; i < pageIds.length; i++) {
|
107
|
-
const pageId = pageIds[i];
|
108
|
-
|
109
|
-
await context.pageBuilder.
|
110
|
-
status: _types.
|
123
|
+
const pageId = pageIds[i]; // Create sub task.
|
124
|
+
|
125
|
+
await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils3.zeroPad)(i + 1, 5), {
|
126
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
111
127
|
input: {
|
112
128
|
pageId,
|
113
129
|
exportPagesDataKey,
|
114
130
|
revisionType
|
115
131
|
}
|
116
132
|
});
|
117
|
-
}
|
118
|
-
|
119
|
-
|
120
|
-
|
133
|
+
} // Update main task status.
|
134
|
+
|
135
|
+
|
136
|
+
await context.pageBuilder.importExportTask.updateTask(task.id, {
|
137
|
+
status: _types.ImportExportTaskStatus.PROCESSING,
|
121
138
|
stats: (0, _utils.initialStats)(pageIds.length),
|
122
139
|
input: {
|
123
140
|
exportPagesDataKey,
|
124
141
|
revisionType
|
125
142
|
}
|
126
143
|
});
|
127
|
-
|
128
144
|
/**
|
129
145
|
* Export Pages
|
130
146
|
* ExportPages
|
131
147
|
* exportPages
|
132
148
|
*/
|
133
149
|
// Invoke handler.
|
150
|
+
|
134
151
|
await (0, _client.invokeHandlerClient)({
|
135
152
|
context,
|
136
153
|
name: EXPORT_PAGES_PROCESS_HANDLER,
|
137
154
|
payload: {
|
138
155
|
taskId: task.id,
|
139
156
|
subTaskIndex: 1,
|
157
|
+
type: "page",
|
140
158
|
identity: context.security.getIdentity()
|
141
159
|
},
|
142
160
|
description: "Export pages - process"
|
@@ -145,8 +163,10 @@ var _default = new _api.ContextPlugin(context => {
|
|
145
163
|
task
|
146
164
|
};
|
147
165
|
}
|
148
|
-
|
149
|
-
// Modify context
|
166
|
+
|
167
|
+
}; // Modify context
|
168
|
+
|
150
169
|
context.pageBuilder.pages = importExportCrud;
|
151
170
|
});
|
171
|
+
|
152
172
|
exports.default = _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["PERMISSION_NAME","EXPORT_PAGES_PROCESS_HANDLER","process","env","IMPORT_PAGES_CREATE_HANDLER","ContextPlugin","context","importExportCrud","importPages","category","categorySlug","zipFileUrl","checkBasePermissions","rwd","pageBuilder","getCategory","NotFoundError","task","pageImportExportTask","createTask","status","PageImportExportTaskStatus","PENDING","input","invokeHandlerClient","name","payload","identity","security","getIdentity","description","exportPages","ids","initialPageIds","revisionType","where","sort","search","pageIds","Array","isArray","length","pages","meta","hasMoreItems","cursor","totalCount","listLatestPages","after","forEach","page","push","id","WebinyError","exportPagesDataKey","EXPORT_PAGES_FOLDER_KEY","i","pageId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["pages.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport checkBasePermissions from \"@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions\";\nimport {\n PageImportExportTaskStatus,\n PagesImportExportCrud,\n PbPageImportExportContext\n} from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport { Payload as CreateHandlerPayload } from \"~/importPages/create\";\nimport { initialStats } from \"~/importPages/utils\";\nimport { Payload as ExportPagesProcessHandlerPayload } from \"~/exportPages/process\";\nimport { EXPORT_PAGES_FOLDER_KEY } from \"~/exportPages/utils\";\nimport { MetaResponse } from \"@webiny/api-page-builder/types\";\nimport { zeroPad } from \"@webiny/utils\";\n\nconst PERMISSION_NAME = \"pb.page\";\nconst EXPORT_PAGES_PROCESS_HANDLER = process.env.EXPORT_PAGES_PROCESS_HANDLER as string;\nconst IMPORT_PAGES_CREATE_HANDLER = process.env.IMPORT_PAGES_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbPageImportExportContext>(context => {\n const importExportCrud: PagesImportExportCrud = {\n async importPages({ category: categorySlug, zipFileUrl }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n\n // Bail out early if category not found\n const category = await context.pageBuilder.getCategory(categorySlug);\n if (!category) {\n throw new NotFoundError(`Category with slug \"${categorySlug}\" not found.`);\n }\n\n // Create a task for import page\n const task = await context.pageBuilder.pageImportExportTask.createTask({\n status: PageImportExportTaskStatus.PENDING,\n input: {\n category: categorySlug,\n zipFileUrl\n }\n });\n /**\n * Import Pages\n * ImportPages\n * importPages\n */\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_PAGES_CREATE_HANDLER,\n payload: {\n category: categorySlug,\n zipFileUrl,\n task,\n identity: context.security.getIdentity()\n },\n description: \"Import Pages - create\"\n });\n\n return {\n task\n };\n },\n\n async exportPages({ ids: initialPageIds, revisionType, where, sort, search }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n let pageIds: string[] = initialPageIds || [];\n // If no ids are provided then it means we want to export all pages\n if (!initialPageIds || (Array.isArray(initialPageIds) && initialPageIds.length === 0)) {\n pageIds = [];\n let pages = [];\n let meta: MetaResponse = {\n hasMoreItems: true,\n cursor: null,\n totalCount: 0\n };\n // Paginate pages\n while (meta.hasMoreItems) {\n [pages, meta] = await context.pageBuilder.listLatestPages({\n after: meta.cursor,\n where: where,\n sort: sort,\n search: search\n });\n // Save page ids\n pages.forEach(page => pageIds.push(page.id));\n }\n }\n\n if (pageIds.length === 0) {\n throw new WebinyError(\n \"Cannot export pages - no pages found for provided inputs.\",\n \"EMPTY_EXPORT_NO_PAGES_FOUND\"\n );\n }\n\n // Create the main task for page export.\n const task = await context.pageBuilder.pageImportExportTask.createTask({\n status: PageImportExportTaskStatus.PENDING\n });\n const exportPagesDataKey = `${EXPORT_PAGES_FOLDER_KEY}/${task.id}`;\n // For each page create a sub task and invoke the process handler.\n for (let i = 0; i < pageIds.length; i++) {\n const pageId = pageIds[i];\n // Create sub task.\n await context.pageBuilder.pageImportExportTask.createSubTask(\n task.id,\n zeroPad(i + 1, 5),\n {\n status: PageImportExportTaskStatus.PENDING,\n input: {\n pageId,\n exportPagesDataKey,\n revisionType\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.pageImportExportTask.updateTask(task.id, {\n status: PageImportExportTaskStatus.PROCESSING,\n stats: initialStats(pageIds.length),\n input: {\n exportPagesDataKey,\n revisionType\n }\n });\n\n /**\n * Export Pages\n * ExportPages\n * exportPages\n */\n // Invoke handler.\n await invokeHandlerClient<ExportPagesProcessHandlerPayload>({\n context,\n name: EXPORT_PAGES_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n identity: context.security.getIdentity()\n },\n description: \"Export pages - process\"\n });\n\n return { task };\n }\n };\n // Modify context\n context.pageBuilder.pages = importExportCrud;\n});\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["PERMISSION_NAME","EXPORT_PAGES_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_PAGES_CREATE_HANDLER","IMPORT_CREATE_HANDLER","ContextPlugin","context","importExportCrud","importPages","category","categorySlug","zipFileUrl","checkBasePermissions","rwd","pageBuilder","getCategory","NotFoundError","task","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","invokeHandlerClient","name","payload","type","identity","security","getIdentity","description","exportPages","ids","initialPageIds","revisionType","where","sort","search","pageIds","Array","isArray","length","pages","meta","hasMoreItems","cursor","totalCount","listLatestPages","after","forEach","page","push","id","WebinyError","exportPagesDataKey","EXPORT_PAGES_FOLDER_KEY","i","pageId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["pages.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { NotFoundError } from \"@webiny/handler-graphql\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport checkBasePermissions from \"@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions\";\nimport { ImportExportTaskStatus, PagesImportExportCrud, PbImportExportContext } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport { Payload as ExportPagesProcessHandlerPayload } from \"~/export/process\";\nimport { EXPORT_PAGES_FOLDER_KEY } from \"~/export/utils\";\nimport { MetaResponse } from \"@webiny/api-page-builder/types\";\nimport { zeroPad } from \"@webiny/utils\";\n\nconst PERMISSION_NAME = \"pb.page\";\nconst EXPORT_PAGES_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_PAGES_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const importExportCrud: PagesImportExportCrud = {\n async importPages({ category: categorySlug, zipFileUrl }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n\n // Bail out early if category not found\n const category = await context.pageBuilder.getCategory(categorySlug);\n if (!category) {\n throw new NotFoundError(`Category with slug \"${categorySlug}\" not found.`);\n }\n\n // Create a task for import page\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n category: categorySlug,\n zipFileUrl\n }\n });\n /**\n * Import Pages\n * ImportPages\n * importPages\n */\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_PAGES_CREATE_HANDLER,\n payload: {\n category: categorySlug,\n zipFileUrl,\n task,\n type: \"page\",\n identity: context.security.getIdentity()\n },\n description: \"Import Pages - create\"\n });\n\n return {\n task\n };\n },\n\n async exportPages({ ids: initialPageIds, revisionType, where, sort, search }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n let pageIds: string[] = initialPageIds || [];\n // If no ids are provided then it means we want to export all pages\n if (!initialPageIds || (Array.isArray(initialPageIds) && initialPageIds.length === 0)) {\n pageIds = [];\n let pages = [];\n let meta: MetaResponse = {\n hasMoreItems: true,\n cursor: null,\n totalCount: 0\n };\n // Paginate pages\n while (meta.hasMoreItems) {\n [pages, meta] = await context.pageBuilder.listLatestPages({\n after: meta.cursor,\n where: where,\n sort: sort,\n search: search\n });\n // Save page ids\n pages.forEach(page => pageIds.push(page.id));\n }\n }\n\n if (pageIds.length === 0) {\n throw new WebinyError(\n \"Cannot export pages - no pages found for provided inputs.\",\n \"EMPTY_EXPORT_NO_PAGES_FOUND\"\n );\n }\n\n // Create the main task for page export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportPagesDataKey = `${EXPORT_PAGES_FOLDER_KEY}/${task.id}`;\n // For each page create a sub task and invoke the process handler.\n for (let i = 0; i < pageIds.length; i++) {\n const pageId = pageIds[i];\n // Create sub task.\n await context.pageBuilder.importExportTask.createSubTask(\n task.id,\n zeroPad(i + 1, 5),\n {\n status: ImportExportTaskStatus.PENDING,\n input: {\n pageId,\n exportPagesDataKey,\n revisionType\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.importExportTask.updateTask(task.id, {\n status: ImportExportTaskStatus.PROCESSING,\n stats: initialStats(pageIds.length),\n input: {\n exportPagesDataKey,\n revisionType\n }\n });\n\n /**\n * Export Pages\n * ExportPages\n * exportPages\n */\n // Invoke handler.\n await invokeHandlerClient<ExportPagesProcessHandlerPayload>({\n context,\n name: EXPORT_PAGES_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"page\",\n identity: context.security.getIdentity()\n },\n description: \"Export pages - process\"\n });\n\n return { task };\n }\n };\n // Modify context\n context.pageBuilder.pages = importExportCrud;\n});\n"],"mappings":"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"}
|
package/graphql/crud.d.ts
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
import {
|
2
|
-
declare const _default: (params:
|
1
|
+
import { ImportExportPluginsParams } from "./types";
|
2
|
+
declare const _default: (params: ImportExportPluginsParams) => import("@webiny/api").ContextPlugin<import("~/graphql/types").PbImportExportContext>[];
|
3
3
|
export default _default;
|
package/graphql/crud.js
CHANGED
@@ -1,11 +1,18 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
10
|
+
var _blocks = _interopRequireDefault(require("./crud/blocks.crud"));
|
11
|
+
|
8
12
|
var _pages = _interopRequireDefault(require("./crud/pages.crud"));
|
9
|
-
|
10
|
-
var
|
13
|
+
|
14
|
+
var _importExportTasks = _interopRequireDefault(require("./crud/importExportTasks.crud"));
|
15
|
+
|
16
|
+
var _default = params => [_blocks.default, _pages.default, (0, _importExportTasks.default)(params)];
|
17
|
+
|
11
18
|
exports.default = _default;
|
package/graphql/crud.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["params","pages","
|
1
|
+
{"version":3,"names":["params","blocks","pages","importExportTask"],"sources":["crud.ts"],"sourcesContent":["import blocks from \"./crud/blocks.crud\";\nimport pages from \"./crud/pages.crud\";\nimport importExportTask from \"./crud/importExportTasks.crud\";\nimport { ImportExportPluginsParams } from \"~/graphql/types\";\n\nexport default (params: ImportExportPluginsParams) => [\n blocks,\n pages,\n importExportTask(params as ImportExportPluginsParams)\n];\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;eAGgBA,MAAD,IAAuC,CAClDC,eADkD,EAElDC,cAFkD,EAGlD,IAAAC,0BAAA,EAAiBH,MAAjB,CAHkD,C"}
|
@@ -0,0 +1,57 @@
|
|
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.default = void 0;
|
9
|
+
|
10
|
+
var _resolve = _interopRequireDefault(require("./utils/resolve"));
|
11
|
+
|
12
|
+
const plugin = {
|
13
|
+
type: "graphql-schema",
|
14
|
+
schema: {
|
15
|
+
typeDefs:
|
16
|
+
/* GraphQL */
|
17
|
+
`
|
18
|
+
type PbExportBlockData {
|
19
|
+
task: PbImportExportTask
|
20
|
+
}
|
21
|
+
|
22
|
+
type PbExportBlockResponse {
|
23
|
+
data: PbExportBlockData
|
24
|
+
error: PbError
|
25
|
+
}
|
26
|
+
|
27
|
+
type PbImportBlockData {
|
28
|
+
task: PbImportExportTask
|
29
|
+
}
|
30
|
+
|
31
|
+
type PbImportBlockResponse {
|
32
|
+
data: PbImportBlockData
|
33
|
+
error: PbError
|
34
|
+
}
|
35
|
+
|
36
|
+
extend type PbMutation {
|
37
|
+
# Export blocks
|
38
|
+
exportBlocks(ids: [ID!], where: PbListPageBlocksWhereInput): PbExportBlockResponse
|
39
|
+
|
40
|
+
# Import blocks
|
41
|
+
importBlocks(category: String!, zipFileUrl: String): PbImportBlockResponse
|
42
|
+
}
|
43
|
+
`,
|
44
|
+
resolvers: {
|
45
|
+
PbMutation: {
|
46
|
+
exportBlocks: async (_, args, context) => {
|
47
|
+
return (0, _resolve.default)(() => context.pageBuilder.blocks.exportBlocks(args));
|
48
|
+
},
|
49
|
+
importBlocks: async (_, args, context) => {
|
50
|
+
return (0, _resolve.default)(() => context.pageBuilder.blocks.importBlocks(args));
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
};
|
56
|
+
var _default = plugin;
|
57
|
+
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["plugin","type","schema","typeDefs","resolvers","PbMutation","exportBlocks","_","args","context","resolve","pageBuilder","blocks","importBlocks"],"sources":["blocks.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\nimport { PbImportExportContext } from \"../types\";\nimport resolve from \"./utils/resolve\";\n\nconst plugin: GraphQLSchemaPlugin<PbImportExportContext> = {\n type: \"graphql-schema\",\n schema: {\n typeDefs: /* GraphQL */ `\n type PbExportBlockData {\n task: PbImportExportTask\n }\n\n type PbExportBlockResponse {\n data: PbExportBlockData\n error: PbError\n }\n\n type PbImportBlockData {\n task: PbImportExportTask\n }\n\n type PbImportBlockResponse {\n data: PbImportBlockData\n error: PbError\n }\n\n extend type PbMutation {\n # Export blocks\n exportBlocks(ids: [ID!], where: PbListPageBlocksWhereInput): PbExportBlockResponse\n\n # Import blocks\n importBlocks(category: String!, zipFileUrl: String): PbImportBlockResponse\n }\n `,\n resolvers: {\n PbMutation: {\n exportBlocks: async (_, args: any, context) => {\n return resolve(() => context.pageBuilder.blocks.exportBlocks(args));\n },\n\n importBlocks: async (_, args: any, context) => {\n return resolve(() => context.pageBuilder.blocks.importBlocks(args));\n }\n }\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;AAEA;;AAEA,MAAMA,MAAkD,GAAG;EACvDC,IAAI,EAAE,gBADiD;EAEvDC,MAAM,EAAE;IACJC,QAAQ;IAAE;IAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SA3BY;IA4BJC,SAAS,EAAE;MACPC,UAAU,EAAE;QACRC,YAAY,EAAE,OAAOC,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UAC3C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,WAAR,CAAoBC,MAApB,CAA2BN,YAA3B,CAAwCE,IAAxC,CAAd,CAAP;QACH,CAHO;QAKRK,YAAY,EAAE,OAAON,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UAC3C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,WAAR,CAAoBC,MAApB,CAA2BC,YAA3B,CAAwCL,IAAxC,CAAd,CAAP;QACH;MAPO;IADL;EA5BP;AAF+C,CAA3D;eA4CeR,M"}
|
@@ -1,23 +1,28 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
8
10
|
var _resolve = _interopRequireDefault(require("./utils/resolve"));
|
11
|
+
|
9
12
|
const plugin = {
|
10
13
|
type: "graphql-schema",
|
11
14
|
schema: {
|
12
|
-
typeDefs:
|
13
|
-
|
15
|
+
typeDefs:
|
16
|
+
/* GraphQL */
|
17
|
+
`
|
18
|
+
enum PbImportExportTaskStatus {
|
14
19
|
pending
|
15
20
|
processing
|
16
21
|
completed
|
17
22
|
failed
|
18
23
|
}
|
19
24
|
|
20
|
-
type
|
25
|
+
type PbImportExportTaskStats {
|
21
26
|
pending: Int
|
22
27
|
processing: Int
|
23
28
|
completed: Int
|
@@ -25,46 +30,46 @@ const plugin = {
|
|
25
30
|
total: Int
|
26
31
|
}
|
27
32
|
|
28
|
-
type
|
33
|
+
type PbImportExportTask {
|
29
34
|
id: ID
|
30
35
|
createdOn: DateTime
|
31
36
|
createdBy: PbCreatedBy
|
32
|
-
status:
|
37
|
+
status: PbImportExportTaskStatus
|
33
38
|
data: JSON
|
34
|
-
stats:
|
39
|
+
stats: PbImportExportTaskStats
|
35
40
|
error: JSON
|
36
41
|
}
|
37
42
|
|
38
43
|
# Response types
|
39
|
-
type
|
40
|
-
data:
|
44
|
+
type PbImportExportTaskResponse {
|
45
|
+
data: PbImportExportTask
|
41
46
|
error: PbError
|
42
47
|
}
|
43
48
|
|
44
|
-
type
|
45
|
-
data: [
|
49
|
+
type PbImportExportTaskListResponse {
|
50
|
+
data: [PbImportExportTask]
|
46
51
|
error: PbError
|
47
52
|
}
|
48
53
|
|
49
54
|
extend type PbQuery {
|
50
|
-
|
51
|
-
|
55
|
+
getImportExportTask(id: ID!): PbImportExportTaskResponse
|
56
|
+
listImportExportSubTask(
|
52
57
|
id: ID!
|
53
|
-
status:
|
58
|
+
status: PbImportExportTaskStatus
|
54
59
|
limit: Int
|
55
|
-
):
|
60
|
+
): PbImportExportTaskListResponse
|
56
61
|
}
|
57
62
|
`,
|
58
63
|
resolvers: {
|
59
64
|
PbQuery: {
|
60
|
-
|
65
|
+
getImportExportTask: async (_, args, context) => {
|
61
66
|
return (0, _resolve.default)(() => {
|
62
|
-
return context.pageBuilder.
|
67
|
+
return context.pageBuilder.importExportTask.getTask(args.id);
|
63
68
|
});
|
64
69
|
},
|
65
|
-
|
70
|
+
listImportExportSubTask: async (_, args, context) => {
|
66
71
|
return (0, _resolve.default)(() => {
|
67
|
-
return context.pageBuilder.
|
72
|
+
return context.pageBuilder.importExportTask.listSubTasks(args.id, args.status, args.limit);
|
68
73
|
});
|
69
74
|
}
|
70
75
|
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["plugin","type","schema","typeDefs","resolvers","PbQuery","getImportExportTask","_","args","context","resolve","pageBuilder","importExportTask","getTask","id","listImportExportSubTask","listSubTasks","status","limit"],"sources":["importExportTasks.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\nimport resolve from \"./utils/resolve\";\nimport { PbImportExportContext } from \"../types\";\n\nconst plugin: GraphQLSchemaPlugin<PbImportExportContext> = {\n type: \"graphql-schema\",\n schema: {\n typeDefs: /* GraphQL */ `\n enum PbImportExportTaskStatus {\n pending\n processing\n completed\n failed\n }\n\n type PbImportExportTaskStats {\n pending: Int\n processing: Int\n completed: Int\n failed: Int\n total: Int\n }\n\n type PbImportExportTask {\n id: ID\n createdOn: DateTime\n createdBy: PbCreatedBy\n status: PbImportExportTaskStatus\n data: JSON\n stats: PbImportExportTaskStats\n error: JSON\n }\n\n # Response types\n type PbImportExportTaskResponse {\n data: PbImportExportTask\n error: PbError\n }\n\n type PbImportExportTaskListResponse {\n data: [PbImportExportTask]\n error: PbError\n }\n\n extend type PbQuery {\n getImportExportTask(id: ID!): PbImportExportTaskResponse\n listImportExportSubTask(\n id: ID!\n status: PbImportExportTaskStatus\n limit: Int\n ): PbImportExportTaskListResponse\n }\n `,\n resolvers: {\n PbQuery: {\n getImportExportTask: async (_, args: any, context) => {\n return resolve(() => {\n return context.pageBuilder.importExportTask.getTask(args.id);\n });\n },\n listImportExportSubTask: async (_, args: any, context) => {\n return resolve(() => {\n return context.pageBuilder.importExportTask.listSubTasks(\n args.id,\n args.status,\n args.limit\n );\n });\n }\n }\n }\n }\n};\nexport default plugin;\n"],"mappings":";;;;;;;;;AACA;;AAGA,MAAMA,MAAkD,GAAG;EACvDC,IAAI,EAAE,gBADiD;EAEvDC,MAAM,EAAE;IACJC,QAAQ;IAAE;IAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SA9CY;IA+CJC,SAAS,EAAE;MACPC,OAAO,EAAE;QACLC,mBAAmB,EAAE,OAAOC,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UAClD,OAAO,IAAAC,gBAAA,EAAQ,MAAM;YACjB,OAAOD,OAAO,CAACE,WAAR,CAAoBC,gBAApB,CAAqCC,OAArC,CAA6CL,IAAI,CAACM,EAAlD,CAAP;UACH,CAFM,CAAP;QAGH,CALI;QAMLC,uBAAuB,EAAE,OAAOR,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UACtD,OAAO,IAAAC,gBAAA,EAAQ,MAAM;YACjB,OAAOD,OAAO,CAACE,WAAR,CAAoBC,gBAApB,CAAqCI,YAArC,CACHR,IAAI,CAACM,EADF,EAEHN,IAAI,CAACS,MAFF,EAGHT,IAAI,CAACU,KAHF,CAAP;UAKH,CANM,CAAP;QAOH;MAdI;IADF;EA/CP;AAF+C,CAA3D;eAqEelB,M"}
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import { GraphQLSchemaPlugin } from "@webiny/handler-graphql/types";
|
2
|
-
import {
|
3
|
-
declare const plugin: GraphQLSchemaPlugin<
|
2
|
+
import { PbImportExportContext } from "../types";
|
3
|
+
declare const plugin: GraphQLSchemaPlugin<PbImportExportContext>;
|
4
4
|
export default plugin;
|
@@ -1,17 +1,22 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
8
10
|
var _resolve = _interopRequireDefault(require("./utils/resolve"));
|
11
|
+
|
9
12
|
const plugin = {
|
10
13
|
type: "graphql-schema",
|
11
14
|
schema: {
|
12
|
-
typeDefs:
|
15
|
+
typeDefs:
|
16
|
+
/* GraphQL */
|
17
|
+
`
|
13
18
|
type PbExportPageData {
|
14
|
-
task:
|
19
|
+
task: PbImportExportTask
|
15
20
|
}
|
16
21
|
|
17
22
|
type PbExportPageResponse {
|
@@ -20,7 +25,7 @@ const plugin = {
|
|
20
25
|
}
|
21
26
|
|
22
27
|
type PbImportPageData {
|
23
|
-
task:
|
28
|
+
task: PbImportExportTask
|
24
29
|
}
|
25
30
|
|
26
31
|
type PbImportPageResponse {
|
@@ -50,15 +55,9 @@ const plugin = {
|
|
50
55
|
resolvers: {
|
51
56
|
PbMutation: {
|
52
57
|
exportPages: async (_, args, context) => {
|
53
|
-
/**
|
54
|
-
* We know that args is ExportPagesParams.
|
55
|
-
*/
|
56
58
|
return (0, _resolve.default)(() => context.pageBuilder.pages.exportPages(args));
|
57
59
|
},
|
58
60
|
importPages: async (_, args, context) => {
|
59
|
-
/**
|
60
|
-
* We know that args is ExportPagesParams.
|
61
|
-
*/
|
62
61
|
return (0, _resolve.default)(() => context.pageBuilder.pages.importPages(args));
|
63
62
|
}
|
64
63
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["plugin","type","schema","typeDefs","resolvers","PbMutation","exportPages","_","args","context","resolve","pageBuilder","pages","importPages"],"sources":["pages.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\nimport {
|
1
|
+
{"version":3,"names":["plugin","type","schema","typeDefs","resolvers","PbMutation","exportPages","_","args","context","resolve","pageBuilder","pages","importPages"],"sources":["pages.gql.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\nimport { PbImportExportContext } from \"../types\";\nimport resolve from \"./utils/resolve\";\n\nconst plugin: GraphQLSchemaPlugin<PbImportExportContext> = {\n type: \"graphql-schema\",\n schema: {\n typeDefs: /* GraphQL */ `\n type PbExportPageData {\n task: PbImportExportTask\n }\n\n type PbExportPageResponse {\n data: PbExportPageData\n error: PbError\n }\n\n type PbImportPageData {\n task: PbImportExportTask\n }\n\n type PbImportPageResponse {\n data: PbImportPageData\n error: PbError\n }\n\n enum PbExportPageRevisionType {\n published\n latest\n }\n\n extend type PbMutation {\n # Export pages\n exportPages(\n ids: [ID!]\n revisionType: PbExportPageRevisionType!\n where: PbListPagesWhereInput\n sort: [PbListPagesSort!]\n search: PbListPagesSearchInput\n ): PbExportPageResponse\n\n # Import pages\n importPages(category: String!, zipFileUrl: String): PbImportPageResponse\n }\n `,\n resolvers: {\n PbMutation: {\n exportPages: async (_, args: any, context) => {\n return resolve(() => context.pageBuilder.pages.exportPages(args));\n },\n\n importPages: async (_, args: any, context) => {\n return resolve(() => context.pageBuilder.pages.importPages(args));\n }\n }\n }\n }\n};\n\nexport default plugin;\n"],"mappings":";;;;;;;;;AAEA;;AAEA,MAAMA,MAAkD,GAAG;EACvDC,IAAI,EAAE,gBADiD;EAEvDC,MAAM,EAAE;IACJC,QAAQ;IAAE;IAAe;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAtCY;IAuCJC,SAAS,EAAE;MACPC,UAAU,EAAE;QACRC,WAAW,EAAE,OAAOC,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UAC1C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,WAAR,CAAoBC,KAApB,CAA0BN,WAA1B,CAAsCE,IAAtC,CAAd,CAAP;QACH,CAHO;QAKRK,WAAW,EAAE,OAAON,CAAP,EAAUC,IAAV,EAAqBC,OAArB,KAAiC;UAC1C,OAAO,IAAAC,gBAAA,EAAQ,MAAMD,OAAO,CAACE,WAAR,CAAoBC,KAApB,CAA0BC,WAA1B,CAAsCL,IAAtC,CAAd,CAAP;QACH;MAPO;IADL;EAvCP;AAF+C,CAA3D;eAuDeR,M"}
|
@@ -4,7 +4,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
5
5
|
});
|
6
6
|
exports.default = void 0;
|
7
|
+
|
7
8
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
9
|
+
|
8
10
|
var _default = async fn => {
|
9
11
|
try {
|
10
12
|
return new _handlerGraphql.Response(await fn());
|
@@ -12,4 +14,5 @@ var _default = async fn => {
|
|
12
14
|
return new _handlerGraphql.ErrorResponse(e);
|
13
15
|
}
|
14
16
|
};
|
17
|
+
|
15
18
|
exports.default = _default;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["fn","Response","e","ErrorResponse"],"sources":["resolve.ts"],"sourcesContent":["import { Response, ErrorResponse } from \"@webiny/handler-graphql\";\n\nexport default async (fn: () => Promise<any>) => {\n try {\n return new Response(await fn());\n } catch (e) {\n return new ErrorResponse(e);\n }\n};\n"],"mappings":"
|
1
|
+
{"version":3,"names":["fn","Response","e","ErrorResponse"],"sources":["resolve.ts"],"sourcesContent":["import { Response, ErrorResponse } from \"@webiny/handler-graphql\";\n\nexport default async (fn: () => Promise<any>) => {\n try {\n return new Response(await fn());\n } catch (e) {\n return new ErrorResponse(e);\n }\n};\n"],"mappings":";;;;;;;AAAA;;eAEe,MAAOA,EAAP,IAAkC;EAC7C,IAAI;IACA,OAAO,IAAIC,wBAAJ,CAAa,MAAMD,EAAE,EAArB,CAAP;EACH,CAFD,CAEE,OAAOE,CAAP,EAAU;IACR,OAAO,IAAIC,6BAAJ,CAAkBD,CAAlB,CAAP;EACH;AACJ,C"}
|
package/graphql/graphql.js
CHANGED
@@ -1,11 +1,17 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
10
|
+
var _blocks = _interopRequireDefault(require("./graphql/blocks.gql"));
|
11
|
+
|
8
12
|
var _pages = _interopRequireDefault(require("./graphql/pages.gql"));
|
9
|
-
|
10
|
-
var
|
13
|
+
|
14
|
+
var _importExportTasks = _interopRequireDefault(require("./graphql/importExportTasks.gql"));
|
15
|
+
|
16
|
+
var _default = [_blocks.default, _pages.default, _importExportTasks.default];
|
11
17
|
exports.default = _default;
|
package/graphql/graphql.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["pages","
|
1
|
+
{"version":3,"names":["blocks","pages","importExportTask"],"sources":["graphql.ts"],"sourcesContent":["import blocks from \"./graphql/blocks.gql\";\nimport pages from \"./graphql/pages.gql\";\nimport importExportTask from \"./graphql/importExportTasks.gql\";\nimport { GraphQLSchemaPlugin } from \"@webiny/handler-graphql/types\";\n\nexport default [blocks, pages, importExportTask] as GraphQLSchemaPlugin[];\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;eAGe,CAACA,eAAD,EAASC,cAAT,EAAgBC,0BAAhB,C"}
|
package/graphql/index.d.ts
CHANGED
@@ -1,3 +1,3 @@
|
|
1
|
-
import {
|
2
|
-
declare const _default: (params:
|
1
|
+
import { ImportExportPluginsParams } from "./types";
|
2
|
+
declare const _default: (params: ImportExportPluginsParams) => (import("@webiny/api").ContextPlugin<import("~/graphql/types").PbImportExportContext>[] | import("@webiny/handler-graphql/types").GraphQLSchemaPlugin<import("@webiny/api/types").Context>[])[];
|
3
3
|
export default _default;
|
package/graphql/index.js
CHANGED
@@ -1,11 +1,16 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
|
+
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
5
6
|
value: true
|
6
7
|
});
|
7
8
|
exports.default = void 0;
|
9
|
+
|
8
10
|
var _crud = _interopRequireDefault(require("./crud"));
|
11
|
+
|
9
12
|
var _graphql = _interopRequireDefault(require("./graphql"));
|
13
|
+
|
10
14
|
var _default = params => [(0, _crud.default)(params), _graphql.default];
|
15
|
+
|
11
16
|
exports.default = _default;
|
package/graphql/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["params","crud","graphql"],"sources":["index.ts"],"sourcesContent":["import crud from \"./crud\";\nimport graphql from \"./graphql\";\nimport {
|
1
|
+
{"version":3,"names":["params","crud","graphql"],"sources":["index.ts"],"sourcesContent":["import crud from \"./crud\";\nimport graphql from \"./graphql\";\nimport { ImportExportPluginsParams } from \"~/graphql/types\";\n\nexport default (params: ImportExportPluginsParams) => [crud(params), graphql];\n"],"mappings":";;;;;;;;;AAAA;;AACA;;eAGgBA,MAAD,IAAuC,CAAC,IAAAC,aAAA,EAAKD,MAAL,CAAD,EAAeE,gBAAf,C"}
|