@webiny/api-page-builder-import-export 0.0.0-mt-3 → 0.0.0-unstable.3386f66516
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 +8 -0
- package/client.js +47 -0
- package/client.js.map +1 -0
- package/export/combine/blocksHandler.d.ts +6 -0
- package/export/combine/blocksHandler.js +106 -0
- package/export/combine/blocksHandler.js.map +1 -0
- package/export/combine/index.d.ts +16 -0
- package/export/combine/index.js +43 -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/combine/templatesHandler.d.ts +6 -0
- package/export/combine/templatesHandler.js +106 -0
- package/export/combine/templatesHandler.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/export/process/index.d.ts +20 -0
- package/export/process/index.js +40 -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/export/process/templatesHandler.d.ts +6 -0
- package/export/process/templatesHandler.js +176 -0
- package/export/process/templatesHandler.js.map +1 -0
- package/{exportPages → export}/s3Stream.d.ts +2 -0
- package/{exportPages → export}/s3Stream.js +14 -7
- package/export/s3Stream.js.map +1 -0
- package/export/utils.d.ts +22 -0
- package/export/utils.js +173 -0
- package/export/utils.js.map +1 -0
- package/{exportPages → export}/zipper.d.ts +7 -5
- package/{exportPages → export}/zipper.js +11 -12
- 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} +82 -65
- package/graphql/crud/importExportTasks.crud.js.map +1 -0
- package/graphql/crud/pages.crud.d.ts +3 -3
- package/graphql/crud/pages.crud.js +46 -34
- package/graphql/crud/pages.crud.js.map +1 -0
- package/graphql/crud/templates.crud.d.ts +4 -0
- package/graphql/crud/templates.crud.js +140 -0
- package/graphql/crud/templates.crud.js.map +1 -0
- package/graphql/crud.d.ts +2 -2
- package/graphql/crud.js +7 -3
- package/graphql/crud.js.map +1 -0
- 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} +18 -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 +4 -8
- package/graphql/graphql/pages.gql.js.map +1 -0
- package/graphql/graphql/templates.gql.d.ts +4 -0
- package/graphql/graphql/templates.gql.js +57 -0
- package/graphql/graphql/templates.gql.js.map +1 -0
- package/graphql/graphql/utils/resolve.d.ts +1 -1
- package/graphql/graphql/utils/resolve.js.map +1 -0
- package/graphql/graphql.d.ts +1 -1
- package/graphql/graphql.js +7 -3
- package/graphql/graphql.js.map +1 -0
- package/graphql/index.d.ts +2 -2
- package/graphql/index.js +1 -1
- package/graphql/index.js.map +1 -0
- package/graphql/types.d.ts +63 -27
- package/graphql/types.js.map +1 -0
- package/import/create/blocksHandler.d.ts +3 -0
- package/import/create/blocksHandler.js +110 -0
- package/import/create/blocksHandler.js.map +1 -0
- package/import/create/index.d.ts +24 -0
- package/import/create/index.js +43 -0
- package/import/create/index.js.map +1 -0
- package/import/create/pagesHandler.d.ts +3 -0
- package/import/create/pagesHandler.js +112 -0
- package/import/create/pagesHandler.js.map +1 -0
- package/import/create/templatesHandler.d.ts +3 -0
- package/import/create/templatesHandler.js +108 -0
- package/import/create/templatesHandler.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/import/process/index.d.ts +20 -0
- package/import/process/index.js +40 -0
- package/import/process/index.js.map +1 -0
- package/import/process/pagesHandler.d.ts +3 -0
- package/import/process/pagesHandler.js +181 -0
- package/import/process/pagesHandler.js.map +1 -0
- package/import/process/templatesHandler.d.ts +3 -0
- package/import/process/templatesHandler.js +172 -0
- package/import/process/templatesHandler.js.map +1 -0
- package/import/utils.d.ts +56 -0
- package/{importPages → import}/utils.js +246 -89
- package/import/utils.js.map +1 -0
- package/mockSecurity.js.map +1 -0
- package/package.json +36 -34
- package/types.d.ts +70 -72
- package/types.js +17 -17
- package/types.js.map +1 -0
- package/exportPages/combine/index.d.ts +0 -19
- package/exportPages/combine/index.js +0 -88
- package/exportPages/process/index.d.ts +0 -26
- package/exportPages/process/index.js +0 -204
- package/exportPages/utils.d.ts +0 -13
- package/exportPages/utils.js +0 -113
- package/graphql/crud/pageImportExportTasks.crud.d.ts +0 -5
- package/graphql/graphql/pageImportExportTasks.gql.d.ts +0 -4
- package/importPages/client.d.ts +0 -7
- package/importPages/client.js +0 -40
- package/importPages/create/index.d.ts +0 -27
- package/importPages/create/index.js +0 -109
- package/importPages/process/index.d.ts +0 -25
- package/importPages/process/index.js +0 -183
- package/importPages/utils.d.ts +0 -43
@@ -1,74 +1,77 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
4
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
7
7
|
});
|
8
8
|
exports.default = void 0;
|
9
9
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
11
|
-
|
12
10
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
13
11
|
|
14
12
|
var _handlerGraphql = require("@webiny/handler-graphql");
|
15
13
|
|
16
|
-
var
|
14
|
+
var _api = require("@webiny/api");
|
17
15
|
|
18
16
|
var _checkBasePermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions"));
|
19
17
|
|
20
18
|
var _types = require("../../types");
|
21
19
|
|
22
|
-
var _client = require("../../
|
23
|
-
|
24
|
-
var _utils = require("../../importPages/utils");
|
20
|
+
var _client = require("../../client");
|
25
21
|
|
26
|
-
var
|
22
|
+
var _utils = require("../../import/utils");
|
27
23
|
|
28
|
-
|
24
|
+
var _utils2 = require("../../export/utils");
|
29
25
|
|
30
|
-
|
26
|
+
var _utils3 = require("@webiny/utils");
|
31
27
|
|
32
28
|
const PERMISSION_NAME = "pb.page";
|
33
|
-
const EXPORT_PAGES_PROCESS_HANDLER = process.env.
|
34
|
-
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;
|
35
31
|
|
36
|
-
var _default = new
|
32
|
+
var _default = new _api.ContextPlugin(context => {
|
37
33
|
const importExportCrud = {
|
38
34
|
async importPages({
|
39
35
|
category: categorySlug,
|
40
|
-
|
41
|
-
|
36
|
+
zipFileUrl,
|
37
|
+
meta
|
42
38
|
}) {
|
43
39
|
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
44
40
|
rwd: "w"
|
45
41
|
}); // Bail out early if category not found
|
46
42
|
|
47
|
-
const category = await context.pageBuilder.
|
43
|
+
const category = await context.pageBuilder.getCategory(categorySlug);
|
48
44
|
|
49
45
|
if (!category) {
|
50
46
|
throw new _handlerGraphql.NotFoundError(`Category with slug "${categorySlug}" not found.`);
|
51
47
|
} // Create a task for import page
|
52
48
|
|
53
49
|
|
54
|
-
const task = await context.pageBuilder.
|
55
|
-
status: _types.
|
50
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
51
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
56
52
|
input: {
|
57
53
|
category: categorySlug,
|
58
|
-
zipFileKey,
|
59
54
|
zipFileUrl
|
60
55
|
}
|
61
56
|
});
|
57
|
+
/**
|
58
|
+
* Import Pages
|
59
|
+
* ImportPages
|
60
|
+
* importPages
|
61
|
+
*/
|
62
|
+
|
62
63
|
await (0, _client.invokeHandlerClient)({
|
63
64
|
context,
|
64
65
|
name: IMPORT_PAGES_CREATE_HANDLER,
|
65
66
|
payload: {
|
66
67
|
category: categorySlug,
|
67
|
-
zipFileKey,
|
68
68
|
zipFileUrl,
|
69
69
|
task,
|
70
|
-
|
71
|
-
|
70
|
+
type: "page",
|
71
|
+
identity: context.security.getIdentity(),
|
72
|
+
meta
|
73
|
+
},
|
74
|
+
description: "Import Pages - create"
|
72
75
|
});
|
73
76
|
return {
|
74
77
|
task
|
@@ -85,18 +88,19 @@ var _default = new _ContextPlugin.ContextPlugin(context => {
|
|
85
88
|
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
86
89
|
rwd: "w"
|
87
90
|
});
|
88
|
-
let pageIds = initialPageIds; // If no ids are provided then it means we want to export all pages
|
91
|
+
let pageIds = initialPageIds || []; // If no ids are provided then it means we want to export all pages
|
89
92
|
|
90
93
|
if (!initialPageIds || Array.isArray(initialPageIds) && initialPageIds.length === 0) {
|
91
94
|
pageIds = [];
|
92
95
|
let pages = [];
|
93
96
|
let meta = {
|
94
97
|
hasMoreItems: true,
|
95
|
-
cursor: null
|
98
|
+
cursor: null,
|
99
|
+
totalCount: 0
|
96
100
|
}; // Paginate pages
|
97
101
|
|
98
102
|
while (meta.hasMoreItems) {
|
99
|
-
[pages, meta] = await context.pageBuilder.
|
103
|
+
[pages, meta] = await context.pageBuilder.listLatestPages({
|
100
104
|
after: meta.cursor,
|
101
105
|
where: where,
|
102
106
|
sort: sort,
|
@@ -112,16 +116,16 @@ var _default = new _ContextPlugin.ContextPlugin(context => {
|
|
112
116
|
} // Create the main task for page export.
|
113
117
|
|
114
118
|
|
115
|
-
const task = await context.pageBuilder.
|
116
|
-
status: _types.
|
119
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
120
|
+
status: _types.ImportExportTaskStatus.PENDING
|
117
121
|
});
|
118
122
|
const exportPagesDataKey = `${_utils2.EXPORT_PAGES_FOLDER_KEY}/${task.id}`; // For each page create a sub task and invoke the process handler.
|
119
123
|
|
120
124
|
for (let i = 0; i < pageIds.length; i++) {
|
121
125
|
const pageId = pageIds[i]; // Create sub task.
|
122
126
|
|
123
|
-
await context.pageBuilder.
|
124
|
-
status: _types.
|
127
|
+
await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils3.zeroPad)(i + 1, 5), {
|
128
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
125
129
|
input: {
|
126
130
|
pageId,
|
127
131
|
exportPagesDataKey,
|
@@ -131,14 +135,20 @@ var _default = new _ContextPlugin.ContextPlugin(context => {
|
|
131
135
|
} // Update main task status.
|
132
136
|
|
133
137
|
|
134
|
-
await context.pageBuilder.
|
135
|
-
status: _types.
|
138
|
+
await context.pageBuilder.importExportTask.updateTask(task.id, {
|
139
|
+
status: _types.ImportExportTaskStatus.PROCESSING,
|
136
140
|
stats: (0, _utils.initialStats)(pageIds.length),
|
137
141
|
input: {
|
138
142
|
exportPagesDataKey,
|
139
143
|
revisionType
|
140
144
|
}
|
141
|
-
});
|
145
|
+
});
|
146
|
+
/**
|
147
|
+
* Export Pages
|
148
|
+
* ExportPages
|
149
|
+
* exportPages
|
150
|
+
*/
|
151
|
+
// Invoke handler.
|
142
152
|
|
143
153
|
await (0, _client.invokeHandlerClient)({
|
144
154
|
context,
|
@@ -146,8 +156,10 @@ var _default = new _ContextPlugin.ContextPlugin(context => {
|
|
146
156
|
payload: {
|
147
157
|
taskId: task.id,
|
148
158
|
subTaskIndex: 1,
|
159
|
+
type: "page",
|
149
160
|
identity: context.security.getIdentity()
|
150
|
-
}
|
161
|
+
},
|
162
|
+
description: "Export pages - process"
|
151
163
|
});
|
152
164
|
return {
|
153
165
|
task
|
@@ -156,7 +168,7 @@ var _default = new _ContextPlugin.ContextPlugin(context => {
|
|
156
168
|
|
157
169
|
}; // Modify context
|
158
170
|
|
159
|
-
context.pageBuilder.pages =
|
171
|
+
context.pageBuilder.pages = importExportCrud;
|
160
172
|
});
|
161
173
|
|
162
174
|
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
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","meta","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","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, meta }) {\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 meta\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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"}
|
@@ -0,0 +1,140 @@
|
|
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 _error = _interopRequireDefault(require("@webiny/error"));
|
11
|
+
|
12
|
+
var _api = require("@webiny/api");
|
13
|
+
|
14
|
+
var _checkBasePermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions"));
|
15
|
+
|
16
|
+
var _types = require("../../types");
|
17
|
+
|
18
|
+
var _client = require("../../client");
|
19
|
+
|
20
|
+
var _utils = require("../../import/utils");
|
21
|
+
|
22
|
+
var _utils2 = require("../../export/utils");
|
23
|
+
|
24
|
+
var _utils3 = require("@webiny/utils");
|
25
|
+
|
26
|
+
const PERMISSION_NAME = "pb.template";
|
27
|
+
const EXPORT_TEMPLATES_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER;
|
28
|
+
const IMPORT_TEMPLATES_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER;
|
29
|
+
|
30
|
+
var _default = new _api.ContextPlugin(context => {
|
31
|
+
const importExportCrud = {
|
32
|
+
async importTemplates({
|
33
|
+
zipFileUrl
|
34
|
+
}) {
|
35
|
+
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
36
|
+
rwd: "w"
|
37
|
+
}); // Create a task for import template
|
38
|
+
|
39
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
40
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
41
|
+
input: {
|
42
|
+
zipFileUrl
|
43
|
+
}
|
44
|
+
});
|
45
|
+
/**
|
46
|
+
* Import Templates
|
47
|
+
* ImportTemplates
|
48
|
+
* importTemplates
|
49
|
+
*/
|
50
|
+
|
51
|
+
await (0, _client.invokeHandlerClient)({
|
52
|
+
context,
|
53
|
+
name: IMPORT_TEMPLATES_CREATE_HANDLER,
|
54
|
+
payload: {
|
55
|
+
zipFileUrl,
|
56
|
+
task,
|
57
|
+
type: "template",
|
58
|
+
identity: context.security.getIdentity()
|
59
|
+
},
|
60
|
+
description: "Import Templates - create"
|
61
|
+
});
|
62
|
+
return {
|
63
|
+
task
|
64
|
+
};
|
65
|
+
},
|
66
|
+
|
67
|
+
async exportTemplates({
|
68
|
+
ids: initialTemplateIds
|
69
|
+
}) {
|
70
|
+
await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
|
71
|
+
rwd: "w"
|
72
|
+
});
|
73
|
+
let templateIds = initialTemplateIds || []; // If no ids are provided then it means we want to export all templates
|
74
|
+
|
75
|
+
if (!initialTemplateIds || Array.isArray(initialTemplateIds) && initialTemplateIds.length === 0) {
|
76
|
+
templateIds = [];
|
77
|
+
const templates = await context.pageBuilder.listPageTemplates(); // Save template ids
|
78
|
+
|
79
|
+
templates.forEach(template => templateIds.push(template.id));
|
80
|
+
}
|
81
|
+
|
82
|
+
if (templateIds.length === 0) {
|
83
|
+
throw new _error.default("Cannot export templates - no templates found for provided inputs.", "EMPTY_EXPORT_NO_TEMPLATES_FOUND");
|
84
|
+
} // Create the main task for templates export.
|
85
|
+
|
86
|
+
|
87
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
88
|
+
status: _types.ImportExportTaskStatus.PENDING
|
89
|
+
});
|
90
|
+
const exportTemplatesDataKey = `${_utils2.EXPORT_TEMPLATES_FOLDER_KEY}/${task.id}`; // For each template create a sub task and invoke the process handler.
|
91
|
+
|
92
|
+
for (let i = 0; i < templateIds.length; i++) {
|
93
|
+
const templateId = templateIds[i]; // Create sub task.
|
94
|
+
|
95
|
+
await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils3.zeroPad)(i + 1, 5), {
|
96
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
97
|
+
input: {
|
98
|
+
templateId,
|
99
|
+
exportTemplatesDataKey
|
100
|
+
}
|
101
|
+
});
|
102
|
+
} // Update main task status.
|
103
|
+
|
104
|
+
|
105
|
+
await context.pageBuilder.importExportTask.updateTask(task.id, {
|
106
|
+
status: _types.ImportExportTaskStatus.PROCESSING,
|
107
|
+
stats: (0, _utils.initialStats)(templateIds.length),
|
108
|
+
input: {
|
109
|
+
exportTemplatesDataKey
|
110
|
+
}
|
111
|
+
});
|
112
|
+
/**
|
113
|
+
* Export Templates
|
114
|
+
* ExportTemplates
|
115
|
+
* exportTemplates
|
116
|
+
*/
|
117
|
+
// Invoke handler.
|
118
|
+
|
119
|
+
await (0, _client.invokeHandlerClient)({
|
120
|
+
context,
|
121
|
+
name: EXPORT_TEMPLATES_PROCESS_HANDLER,
|
122
|
+
payload: {
|
123
|
+
taskId: task.id,
|
124
|
+
subTaskIndex: 1,
|
125
|
+
type: "template",
|
126
|
+
identity: context.security.getIdentity()
|
127
|
+
},
|
128
|
+
description: "Export templates - process"
|
129
|
+
});
|
130
|
+
return {
|
131
|
+
task
|
132
|
+
};
|
133
|
+
}
|
134
|
+
|
135
|
+
}; // Modify context
|
136
|
+
|
137
|
+
context.pageBuilder.templates = importExportCrud;
|
138
|
+
});
|
139
|
+
|
140
|
+
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["PERMISSION_NAME","EXPORT_TEMPLATES_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_TEMPLATES_CREATE_HANDLER","IMPORT_CREATE_HANDLER","ContextPlugin","context","importExportCrud","importTemplates","zipFileUrl","checkBasePermissions","rwd","task","pageBuilder","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","invokeHandlerClient","name","payload","type","identity","security","getIdentity","description","exportTemplates","ids","initialTemplateIds","templateIds","Array","isArray","length","templates","listPageTemplates","forEach","template","push","id","WebinyError","exportTemplatesDataKey","EXPORT_TEMPLATES_FOLDER_KEY","i","templateId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["templates.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport checkBasePermissions from \"@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions\";\nimport { ImportExportTaskStatus, TemplatesImportExportCrud, PbImportExportContext } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport { Payload as ExportTemplatesProcessHandlerPayload } from \"~/export/process\";\nimport { EXPORT_TEMPLATES_FOLDER_KEY } from \"~/export/utils\";\nimport { zeroPad } from \"@webiny/utils\";\n\nconst PERMISSION_NAME = \"pb.template\";\nconst EXPORT_TEMPLATES_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_TEMPLATES_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const importExportCrud: TemplatesImportExportCrud = {\n async importTemplates({ zipFileUrl }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n\n // Create a task for import template\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n zipFileUrl\n }\n });\n /**\n * Import Templates\n * ImportTemplates\n * importTemplates\n */\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_TEMPLATES_CREATE_HANDLER,\n payload: {\n zipFileUrl,\n task,\n type: \"template\",\n identity: context.security.getIdentity()\n },\n description: \"Import Templates - create\"\n });\n\n return {\n task\n };\n },\n\n async exportTemplates({ ids: initialTemplateIds }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n let templateIds: string[] = initialTemplateIds || [];\n // If no ids are provided then it means we want to export all templates\n if (\n !initialTemplateIds ||\n (Array.isArray(initialTemplateIds) && initialTemplateIds.length === 0)\n ) {\n templateIds = [];\n const templates = await context.pageBuilder.listPageTemplates();\n // Save template ids\n templates.forEach(template => templateIds.push(template.id));\n }\n\n if (templateIds.length === 0) {\n throw new WebinyError(\n \"Cannot export templates - no templates found for provided inputs.\",\n \"EMPTY_EXPORT_NO_TEMPLATES_FOUND\"\n );\n }\n\n // Create the main task for templates export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportTemplatesDataKey = `${EXPORT_TEMPLATES_FOLDER_KEY}/${task.id}`;\n // For each template create a sub task and invoke the process handler.\n for (let i = 0; i < templateIds.length; i++) {\n const templateId = templateIds[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 templateId,\n exportTemplatesDataKey\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.importExportTask.updateTask(task.id, {\n status: ImportExportTaskStatus.PROCESSING,\n stats: initialStats(templateIds.length),\n input: {\n exportTemplatesDataKey\n }\n });\n\n /**\n * Export Templates\n * ExportTemplates\n * exportTemplates\n */\n // Invoke handler.\n await invokeHandlerClient<ExportTemplatesProcessHandlerPayload>({\n context,\n name: EXPORT_TEMPLATES_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"template\",\n identity: context.security.getIdentity()\n },\n description: \"Export templates - process\"\n });\n\n return { task };\n }\n };\n // Modify context\n context.pageBuilder.templates = importExportCrud;\n});\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AAEA;;AACA;;AAEA,MAAMA,eAAe,GAAG,aAAxB;AACA,MAAMC,gCAAgC,GAAGC,OAAO,CAACC,GAAR,CAAYC,sBAArD;AACA,MAAMC,+BAA+B,GAAGH,OAAO,CAACC,GAAR,CAAYG,qBAApD;;eAEe,IAAIC,kBAAJ,CAAyCC,OAAO,IAAI;EAC/D,MAAMC,gBAA2C,GAAG;IAChD,MAAMC,eAAN,CAAsB;MAAEC;IAAF,CAAtB,EAAsC;MAClC,MAAM,IAAAC,6BAAA,EAAqBJ,OAArB,EAA8BR,eAA9B,EAA+C;QACjDa,GAAG,EAAE;MAD4C,CAA/C,CAAN,CADkC,CAKlC;;MACA,MAAMC,IAAI,GAAG,MAAMN,OAAO,CAACO,WAAR,CAAoBC,gBAApB,CAAqCC,UAArC,CAAgD;QAC/DC,MAAM,EAAEC,6BAAA,CAAuBC,OADgC;QAE/DC,KAAK,EAAE;UACHV;QADG;MAFwD,CAAhD,CAAnB;MAMA;AACZ;AACA;AACA;AACA;;MACY,MAAM,IAAAW,2BAAA,EAA0C;QAC5Cd,OAD4C;QAE5Ce,IAAI,EAAElB,+BAFsC;QAG5CmB,OAAO,EAAE;UACLb,UADK;UAELG,IAFK;UAGLW,IAAI,EAAE,UAHD;UAILC,QAAQ,EAAElB,OAAO,CAACmB,QAAR,CAAiBC,WAAjB;QAJL,CAHmC;QAS5CC,WAAW,EAAE;MAT+B,CAA1C,CAAN;MAYA,OAAO;QACHf;MADG,CAAP;IAGH,CAjC+C;;IAmChD,MAAMgB,eAAN,CAAsB;MAAEC,GAAG,EAAEC;IAAP,CAAtB,EAAmD;MAC/C,MAAM,IAAApB,6BAAA,EAAqBJ,OAArB,EAA8BR,eAA9B,EAA+C;QACjDa,GAAG,EAAE;MAD4C,CAA/C,CAAN;MAGA,IAAIoB,WAAqB,GAAGD,kBAAkB,IAAI,EAAlD,CAJ+C,CAK/C;;MACA,IACI,CAACA,kBAAD,IACCE,KAAK,CAACC,OAAN,CAAcH,kBAAd,KAAqCA,kBAAkB,CAACI,MAAnB,KAA8B,CAFxE,EAGE;QACEH,WAAW,GAAG,EAAd;QACA,MAAMI,SAAS,GAAG,MAAM7B,OAAO,CAACO,WAAR,CAAoBuB,iBAApB,EAAxB,CAFF,CAGE;;QACAD,SAAS,CAACE,OAAV,CAAkBC,QAAQ,IAAIP,WAAW,CAACQ,IAAZ,CAAiBD,QAAQ,CAACE,EAA1B,CAA9B;MACH;;MAED,IAAIT,WAAW,CAACG,MAAZ,KAAuB,CAA3B,EAA8B;QAC1B,MAAM,IAAIO,cAAJ,CACF,mEADE,EAEF,iCAFE,CAAN;MAIH,CArB8C,CAuB/C;;;MACA,MAAM7B,IAAI,GAAG,MAAMN,OAAO,CAACO,WAAR,CAAoBC,gBAApB,CAAqCC,UAArC,CAAgD;QAC/DC,MAAM,EAAEC,6BAAA,CAAuBC;MADgC,CAAhD,CAAnB;MAGA,MAAMwB,sBAAsB,GAAI,GAAEC,mCAA4B,IAAG/B,IAAI,CAAC4B,EAAG,EAAzE,CA3B+C,CA4B/C;;MACA,KAAK,IAAII,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGb,WAAW,CAACG,MAAhC,EAAwCU,CAAC,EAAzC,EAA6C;QACzC,MAAMC,UAAU,GAAGd,WAAW,CAACa,CAAD,CAA9B,CADyC,CAEzC;;QACA,MAAMtC,OAAO,CAACO,WAAR,CAAoBC,gBAApB,CAAqCgC,aAArC,CACFlC,IAAI,CAAC4B,EADH,EAEF,IAAAO,eAAA,EAAQH,CAAC,GAAG,CAAZ,EAAe,CAAf,CAFE,EAGF;UACI5B,MAAM,EAAEC,6BAAA,CAAuBC,OADnC;UAEIC,KAAK,EAAE;YACH0B,UADG;YAEHH;UAFG;QAFX,CAHE,CAAN;MAWH,CA3C8C,CA4C/C;;;MACA,MAAMpC,OAAO,CAACO,WAAR,CAAoBC,gBAApB,CAAqCkC,UAArC,CAAgDpC,IAAI,CAAC4B,EAArD,EAAyD;QAC3DxB,MAAM,EAAEC,6BAAA,CAAuBgC,UAD4B;QAE3DC,KAAK,EAAE,IAAAC,mBAAA,EAAapB,WAAW,CAACG,MAAzB,CAFoD;QAG3Df,KAAK,EAAE;UACHuB;QADG;MAHoD,CAAzD,CAAN;MAQA;AACZ;AACA;AACA;AACA;MACY;;MACA,MAAM,IAAAtB,2BAAA,EAA0D;QAC5Dd,OAD4D;QAE5De,IAAI,EAAEtB,gCAFsD;QAG5DuB,OAAO,EAAE;UACL8B,MAAM,EAAExC,IAAI,CAAC4B,EADR;UAELa,YAAY,EAAE,CAFT;UAGL9B,IAAI,EAAE,UAHD;UAILC,QAAQ,EAAElB,OAAO,CAACmB,QAAR,CAAiBC,WAAjB;QAJL,CAHmD;QAS5DC,WAAW,EAAE;MAT+C,CAA1D,CAAN;MAYA,OAAO;QAAEf;MAAF,CAAP;IACH;;EA3G+C,CAApD,CAD+D,CA8G/D;;EACAN,OAAO,CAACO,WAAR,CAAoBsB,SAApB,GAAgC5B,gBAAhC;AACH,CAhHc,C"}
|
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,16 +1,20 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
4
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
7
7
|
});
|
8
8
|
exports.default = void 0;
|
9
9
|
|
10
|
+
var _blocks = _interopRequireDefault(require("./crud/blocks.crud"));
|
11
|
+
|
10
12
|
var _pages = _interopRequireDefault(require("./crud/pages.crud"));
|
11
13
|
|
12
|
-
var
|
14
|
+
var _templates = _interopRequireDefault(require("./crud/templates.crud"));
|
15
|
+
|
16
|
+
var _importExportTasks = _interopRequireDefault(require("./crud/importExportTasks.crud"));
|
13
17
|
|
14
|
-
var _default = params => [_pages.default, (0,
|
18
|
+
var _default = params => [_blocks.default, _pages.default, _templates.default, (0, _importExportTasks.default)(params)];
|
15
19
|
|
16
20
|
exports.default = _default;
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["params","blocks","pages","templates","importExportTask"],"sources":["crud.ts"],"sourcesContent":["import blocks from \"./crud/blocks.crud\";\nimport pages from \"./crud/pages.crud\";\nimport templates from \"./crud/templates.crud\";\nimport importExportTask from \"./crud/importExportTasks.crud\";\nimport { ImportExportPluginsParams } from \"~/graphql/types\";\n\nexport default (params: ImportExportPluginsParams) => [\n blocks,\n pages,\n templates,\n importExportTask(params as ImportExportPluginsParams)\n];\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;eAGgBA,MAAD,IAAuC,CAClDC,eADkD,EAElDC,cAFkD,EAGlDC,kBAHkD,EAIlD,IAAAC,0BAAA,EAAiBJ,MAAjB,CAJkD,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,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
4
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
@@ -15,14 +15,14 @@ const plugin = {
|
|
15
15
|
typeDefs:
|
16
16
|
/* GraphQL */
|
17
17
|
`
|
18
|
-
enum
|
18
|
+
enum PbImportExportTaskStatus {
|
19
19
|
pending
|
20
20
|
processing
|
21
21
|
completed
|
22
22
|
failed
|
23
23
|
}
|
24
24
|
|
25
|
-
type
|
25
|
+
type PbImportExportTaskStats {
|
26
26
|
pending: Int
|
27
27
|
processing: Int
|
28
28
|
completed: Int
|
@@ -30,46 +30,46 @@ const plugin = {
|
|
30
30
|
total: Int
|
31
31
|
}
|
32
32
|
|
33
|
-
type
|
33
|
+
type PbImportExportTask {
|
34
34
|
id: ID
|
35
35
|
createdOn: DateTime
|
36
36
|
createdBy: PbCreatedBy
|
37
|
-
status:
|
37
|
+
status: PbImportExportTaskStatus
|
38
38
|
data: JSON
|
39
|
-
stats:
|
39
|
+
stats: PbImportExportTaskStats
|
40
40
|
error: JSON
|
41
41
|
}
|
42
42
|
|
43
43
|
# Response types
|
44
|
-
type
|
45
|
-
data:
|
44
|
+
type PbImportExportTaskResponse {
|
45
|
+
data: PbImportExportTask
|
46
46
|
error: PbError
|
47
47
|
}
|
48
48
|
|
49
|
-
type
|
50
|
-
data: [
|
49
|
+
type PbImportExportTaskListResponse {
|
50
|
+
data: [PbImportExportTask]
|
51
51
|
error: PbError
|
52
52
|
}
|
53
53
|
|
54
54
|
extend type PbQuery {
|
55
|
-
|
56
|
-
|
55
|
+
getImportExportTask(id: ID!): PbImportExportTaskResponse
|
56
|
+
listImportExportSubTask(
|
57
57
|
id: ID!
|
58
|
-
status:
|
58
|
+
status: PbImportExportTaskStatus
|
59
59
|
limit: Int
|
60
|
-
):
|
60
|
+
): PbImportExportTaskListResponse
|
61
61
|
}
|
62
62
|
`,
|
63
63
|
resolvers: {
|
64
64
|
PbQuery: {
|
65
|
-
|
65
|
+
getImportExportTask: async (_, args, context) => {
|
66
66
|
return (0, _resolve.default)(() => {
|
67
|
-
return context.pageBuilder.
|
67
|
+
return context.pageBuilder.importExportTask.getTask(args.id);
|
68
68
|
});
|
69
69
|
},
|
70
|
-
|
70
|
+
listImportExportSubTask: async (_, args, context) => {
|
71
71
|
return (0, _resolve.default)(() => {
|
72
|
-
return context.pageBuilder.
|
72
|
+
return context.pageBuilder.importExportTask.listSubTasks(args.id, args.status, args.limit);
|
73
73
|
});
|
74
74
|
}
|
75
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,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
4
4
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
6
6
|
value: true
|
@@ -16,7 +16,7 @@ const plugin = {
|
|
16
16
|
/* GraphQL */
|
17
17
|
`
|
18
18
|
type PbExportPageData {
|
19
|
-
task:
|
19
|
+
task: PbImportExportTask
|
20
20
|
}
|
21
21
|
|
22
22
|
type PbExportPageResponse {
|
@@ -25,7 +25,7 @@ const plugin = {
|
|
25
25
|
}
|
26
26
|
|
27
27
|
type PbImportPageData {
|
28
|
-
task:
|
28
|
+
task: PbImportExportTask
|
29
29
|
}
|
30
30
|
|
31
31
|
type PbImportPageResponse {
|
@@ -49,11 +49,7 @@ const plugin = {
|
|
49
49
|
): PbExportPageResponse
|
50
50
|
|
51
51
|
# Import pages
|
52
|
-
importPages(
|
53
|
-
category: String!
|
54
|
-
zipFileKey: String
|
55
|
-
zipFileUrl: String
|
56
|
-
): PbImportPageResponse
|
52
|
+
importPages(category: String!, zipFileUrl: String, meta: JSON): PbImportPageResponse
|
57
53
|
}
|
58
54
|
`,
|
59
55
|
resolvers: {
|
@@ -0,0 +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 { 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, meta: JSON): 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"}
|