@webiny/api-page-builder-import-export 0.0.0-unstable.3386f66516 → 0.0.0-unstable.39223eb3c1
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 +1 -1
- package/client.js +12 -25
- package/client.js.map +1 -1
- package/export/combine/blocksHandler.d.ts +2 -2
- package/export/combine/blocksHandler.js +14 -19
- package/export/combine/blocksHandler.js.map +1 -1
- package/export/combine/formsHandler.d.ts +6 -0
- package/export/combine/{pagesHandler.js → formsHandler.js} +25 -30
- package/export/combine/formsHandler.js.map +1 -0
- package/export/combine/index.d.ts +2 -2
- package/export/combine/index.js +24 -23
- package/export/combine/index.js.map +1 -1
- package/export/combine/templatesHandler.d.ts +2 -2
- package/export/combine/templatesHandler.js +14 -19
- package/export/combine/templatesHandler.js.map +1 -1
- package/export/pages/ExportPagesCleanup.d.ts +5 -0
- package/export/pages/ExportPagesCleanup.js +82 -0
- package/export/pages/ExportPagesCleanup.js.map +1 -0
- package/export/pages/ExportPagesController.d.ts +5 -0
- package/export/pages/ExportPagesController.js +31 -0
- package/export/pages/ExportPagesController.js.map +1 -0
- package/export/pages/ExportPagesZipPages.d.ts +5 -0
- package/export/pages/ExportPagesZipPages.js +23 -0
- package/export/pages/ExportPagesZipPages.js.map +1 -0
- package/export/pages/controller/CombineZippedPages.d.ts +5 -0
- package/export/pages/controller/CombineZippedPages.js +75 -0
- package/export/pages/controller/CombineZippedPages.js.map +1 -0
- package/export/pages/controller/CreateZipPagesTasks.d.ts +8 -0
- package/export/pages/controller/CreateZipPagesTasks.js +103 -0
- package/export/pages/controller/CreateZipPagesTasks.js.map +1 -0
- package/export/pages/controller/ProcessZipPagesTasks.d.ts +6 -0
- package/export/pages/controller/ProcessZipPagesTasks.js +61 -0
- package/export/pages/controller/ProcessZipPagesTasks.js.map +1 -0
- package/export/pages/types.d.ts +53 -0
- package/export/pages/types.js +26 -0
- package/export/pages/types.js.map +1 -0
- package/export/pages/utils.d.ts +2 -0
- package/export/pages/utils.js +13 -0
- package/export/pages/utils.js.map +1 -0
- package/export/pages/zipPages/ZipPages.d.ts +5 -0
- package/export/pages/zipPages/ZipPages.js +100 -0
- package/export/pages/zipPages/ZipPages.js.map +1 -0
- package/export/pages/zipPages/ZipPagesDataManager.d.ts +14 -0
- package/export/pages/zipPages/ZipPagesDataManager.js +46 -0
- package/export/pages/zipPages/ZipPagesDataManager.js.map +1 -0
- package/export/pages/zipPages/getPageFactory.d.ts +4 -0
- package/export/pages/zipPages/getPageFactory.js +38 -0
- package/export/pages/zipPages/getPageFactory.js.map +1 -0
- package/export/process/blocksHandler.d.ts +2 -2
- package/export/process/blocksHandler.js +29 -36
- package/export/process/blocksHandler.js.map +1 -1
- package/export/process/exporters/BlockExporter.d.ts +12 -0
- package/export/process/exporters/BlockExporter.js +57 -0
- package/export/process/exporters/BlockExporter.js.map +1 -0
- package/export/process/exporters/FormExporter.d.ts +9 -0
- package/export/process/exporters/FormExporter.js +36 -0
- package/export/process/exporters/FormExporter.js.map +1 -0
- package/export/process/exporters/PageExporter.d.ts +18 -0
- package/export/process/exporters/PageExporter.js +59 -0
- package/export/process/exporters/PageExporter.js.map +1 -0
- package/export/process/exporters/PageTemplateExporter.d.ts +11 -0
- package/export/process/exporters/PageTemplateExporter.js +58 -0
- package/export/process/exporters/PageTemplateExporter.js.map +1 -0
- package/export/process/formsHandler.d.ts +6 -0
- package/export/process/{pagesHandler.js → formsHandler.js} +48 -63
- package/export/process/formsHandler.js.map +1 -0
- package/export/process/index.d.ts +2 -2
- package/export/process/index.js +24 -23
- package/export/process/index.js.map +1 -1
- package/export/process/templatesHandler.d.ts +2 -2
- package/export/process/templatesHandler.js +29 -37
- package/export/process/templatesHandler.js.map +1 -1
- package/export/s3Stream.d.ts +16 -11
- package/export/s3Stream.js +27 -42
- package/export/s3Stream.js.map +1 -1
- package/export/utils.d.ts +11 -9
- package/export/utils.js +54 -58
- package/export/utils.js.map +1 -1
- package/export/zipper.d.ts +7 -6
- package/export/zipper.js +46 -62
- package/export/zipper.js.map +1 -1
- package/graphql/crud/blocks.crud.d.ts +1 -1
- package/graphql/crud/blocks.crud.js +65 -62
- package/graphql/crud/blocks.crud.js.map +1 -1
- package/graphql/crud/forms.crud.d.ts +4 -0
- package/graphql/crud/forms.crud.js +162 -0
- package/graphql/crud/forms.crud.js.map +1 -0
- package/graphql/crud/importExportTasks.crud.d.ts +2 -2
- package/graphql/crud/importExportTasks.crud.js +150 -165
- package/graphql/crud/importExportTasks.crud.js.map +1 -1
- package/graphql/crud/pages.crud.d.ts +1 -1
- package/graphql/crud/pages.crud.js +241 -142
- package/graphql/crud/pages.crud.js.map +1 -1
- package/graphql/crud/templates.crud.d.ts +1 -1
- package/graphql/crud/templates.crud.js +63 -47
- package/graphql/crud/templates.crud.js.map +1 -1
- package/graphql/crud.d.ts +2 -2
- package/graphql/crud.js +4 -8
- package/graphql/crud.js.map +1 -1
- package/graphql/graphql/blocks.gql.d.ts +2 -2
- package/graphql/graphql/blocks.gql.js +8 -13
- package/graphql/graphql/blocks.gql.js.map +1 -1
- package/graphql/graphql/forms.gql.d.ts +4 -0
- package/graphql/graphql/forms.gql.js +60 -0
- package/graphql/graphql/forms.gql.js.map +1 -0
- package/graphql/graphql/importExportTasks.gql.d.ts +2 -2
- package/graphql/graphql/importExportTasks.gql.js +8 -13
- package/graphql/graphql/importExportTasks.gql.js.map +1 -1
- package/graphql/graphql/pages.gql.d.ts +2 -2
- package/graphql/graphql/pages.gql.js +104 -20
- package/graphql/graphql/pages.gql.js.map +1 -1
- package/graphql/graphql/templates.gql.d.ts +2 -2
- package/graphql/graphql/templates.gql.js +7 -12
- package/graphql/graphql/templates.gql.js.map +1 -1
- package/graphql/graphql/utils/resolve.d.ts +3 -3
- package/graphql/graphql/utils/resolve.js +15 -7
- package/graphql/graphql/utils/resolve.js.map +1 -1
- package/graphql/graphql.d.ts +1 -1
- package/graphql/graphql.js +3 -7
- package/graphql/graphql.js.map +1 -1
- package/graphql/index.d.ts +2 -2
- package/graphql/index.js +4 -6
- package/graphql/index.js.map +1 -1
- package/graphql/types.d.ts +194 -31
- package/graphql/types.js +3 -1
- package/graphql/types.js.map +1 -1
- package/import/constants.d.ts +3 -0
- package/import/constants.js +13 -0
- package/import/constants.js.map +1 -0
- package/import/create/blocksHandler.d.ts +2 -2
- package/import/create/blocksHandler.js +13 -22
- package/import/create/blocksHandler.js.map +1 -1
- package/import/create/formsHandler.d.ts +3 -0
- package/import/create/formsHandler.js +105 -0
- package/import/create/formsHandler.js.map +1 -0
- package/import/create/index.d.ts +2 -2
- package/import/create/index.js +24 -23
- package/import/create/index.js.map +1 -1
- package/import/create/pagesHandler.d.ts +2 -2
- package/import/create/pagesHandler.js +12 -19
- package/import/create/pagesHandler.js.map +1 -1
- package/import/create/templatesHandler.d.ts +2 -2
- package/import/create/templatesHandler.js +12 -19
- package/import/create/templatesHandler.js.map +1 -1
- package/import/pages/ImportPagesController.d.ts +5 -0
- package/import/pages/ImportPagesController.js +29 -0
- package/import/pages/ImportPagesController.js.map +1 -0
- package/import/pages/ImportPagesProcessPages.d.ts +6 -0
- package/import/pages/ImportPagesProcessPages.js +112 -0
- package/import/pages/ImportPagesProcessPages.js.map +1 -0
- package/import/pages/controller/ImportPagesProcessPagesChecker.d.ts +6 -0
- package/import/pages/controller/ImportPagesProcessPagesChecker.js +40 -0
- package/import/pages/controller/ImportPagesProcessPagesChecker.js.map +1 -0
- package/import/pages/controller/ImportPagesProcessZipFile.d.ts +5 -0
- package/import/pages/controller/ImportPagesProcessZipFile.js +71 -0
- package/import/pages/controller/ImportPagesProcessZipFile.js.map +1 -0
- package/import/pages/process/importPage.d.ts +10 -0
- package/import/pages/process/importPage.js +94 -0
- package/import/pages/process/importPage.js.map +1 -0
- package/import/pages/types.d.ts +48 -0
- package/import/pages/types.js +20 -0
- package/import/pages/types.js.map +1 -0
- package/import/process/blocks/ElementIdsProcessor.d.ts +5 -0
- package/import/process/blocks/ElementIdsProcessor.js +26 -0
- package/import/process/blocks/ElementIdsProcessor.js.map +1 -0
- package/import/process/{blocksHandler.d.ts → blocks/blocksHandler.d.ts} +2 -2
- package/import/process/{blocksHandler.js → blocks/blocksHandler.js} +32 -38
- package/import/process/blocks/blocksHandler.js.map +1 -0
- package/import/process/blocks/importBlock.d.ts +11 -0
- package/import/process/blocks/importBlock.js +101 -0
- package/import/process/blocks/importBlock.js.map +1 -0
- package/import/process/forms/formsHandler.d.ts +3 -0
- package/import/process/{pagesHandler.js → forms/formsHandler.js} +54 -57
- package/import/process/forms/formsHandler.js.map +1 -0
- package/import/process/forms/importForm.d.ts +9 -0
- package/import/process/forms/importForm.js +47 -0
- package/import/process/forms/importForm.js.map +1 -0
- package/import/process/index.d.ts +2 -2
- package/import/process/index.js +26 -25
- package/import/process/index.js.map +1 -1
- package/import/process/templates/importTemplate.d.ts +11 -0
- package/import/process/templates/importTemplate.js +70 -0
- package/import/process/templates/importTemplate.js.map +1 -0
- package/import/process/{templatesHandler.d.ts → templates/templatesHandler.d.ts} +2 -2
- package/import/process/{templatesHandler.js → templates/templatesHandler.js} +36 -34
- package/import/process/templates/templatesHandler.js.map +1 -0
- package/import/utils/deleteS3Folder.d.ts +1 -0
- package/import/utils/deleteS3Folder.js +21 -0
- package/import/utils/deleteS3Folder.js.map +1 -0
- package/import/utils/extractAndUploadZipFileContents.d.ts +7 -0
- package/import/utils/extractAndUploadZipFileContents.js +126 -0
- package/import/utils/extractAndUploadZipFileContents.js.map +1 -0
- package/import/utils/extractZipAndUploadToS3.d.ts +2 -0
- package/import/utils/extractZipAndUploadToS3.js +100 -0
- package/import/utils/extractZipAndUploadToS3.js.map +1 -0
- package/import/utils/getFileNameWithoutExt.d.ts +1 -0
- package/import/utils/getFileNameWithoutExt.js +13 -0
- package/import/utils/getFileNameWithoutExt.js.map +1 -0
- package/import/utils/index.d.ts +9 -0
- package/import/utils/index.js +106 -0
- package/import/utils/index.js.map +1 -0
- package/import/utils/initialStats.d.ts +7 -0
- package/import/utils/initialStats.js +18 -0
- package/import/utils/initialStats.js.map +1 -0
- package/import/utils/prepareDataDirMap.d.ts +6 -0
- package/import/utils/prepareDataDirMap.js +31 -0
- package/import/utils/prepareDataDirMap.js.map +1 -0
- package/import/utils/updateFilesInData.d.ts +8 -0
- package/import/utils/updateFilesInData.js +51 -0
- package/import/utils/updateFilesInData.js.map +1 -0
- package/import/utils/uploadAssets.d.ts +10 -0
- package/import/utils/uploadAssets.js +92 -0
- package/import/utils/uploadAssets.js.map +1 -0
- package/import/utils/uploadFilesFromS3.d.ts +3 -0
- package/import/utils/uploadFilesFromS3.js +21 -0
- package/import/utils/uploadFilesFromS3.js.map +1 -0
- package/mockSecurity.d.ts +1 -1
- package/mockSecurity.js +2 -3
- package/mockSecurity.js.map +1 -1
- package/package.json +36 -52
- package/tasks/common/ChildTasksCleanup.d.ts +12 -0
- package/tasks/common/ChildTasksCleanup.js +64 -0
- package/tasks/common/ChildTasksCleanup.js.map +1 -0
- package/tasks/index.d.ts +1 -0
- package/tasks/index.js +13 -0
- package/tasks/index.js.map +1 -0
- package/tasks/pages/exportPagesCleanupTask.d.ts +3 -0
- package/tasks/pages/exportPagesCleanupTask.js +36 -0
- package/tasks/pages/exportPagesCleanupTask.js.map +1 -0
- package/tasks/pages/exportPagesControllerTask.d.ts +3 -0
- package/tasks/pages/exportPagesControllerTask.js +83 -0
- package/tasks/pages/exportPagesControllerTask.js.map +1 -0
- package/tasks/pages/exportPagesZipPagesTask.d.ts +3 -0
- package/tasks/pages/exportPagesZipPagesTask.js +39 -0
- package/tasks/pages/exportPagesZipPagesTask.js.map +1 -0
- package/tasks/pages/importPagesControllerTask.d.ts +3 -0
- package/tasks/pages/importPagesControllerTask.js +39 -0
- package/tasks/pages/importPagesControllerTask.js.map +1 -0
- package/tasks/pages/importPagesProcessPageTask.d.ts +3 -0
- package/tasks/pages/importPagesProcessPageTask.js +39 -0
- package/tasks/pages/importPagesProcessPageTask.js.map +1 -0
- package/tasks/pages/index.d.ts +1 -0
- package/tasks/pages/index.js +17 -0
- package/tasks/pages/index.js.map +1 -0
- package/types.d.ts +23 -2
- package/types.js +60 -13
- package/types.js.map +1 -1
- package/utils/ZipFiles.d.ts +11 -0
- package/utils/ZipFiles.js +124 -0
- package/utils/ZipFiles.js.map +1 -0
- package/export/combine/pagesHandler.d.ts +0 -6
- package/export/combine/pagesHandler.js.map +0 -1
- package/export/process/pagesHandler.d.ts +0 -6
- package/export/process/pagesHandler.js.map +0 -1
- package/import/process/blocksHandler.js.map +0 -1
- package/import/process/pagesHandler.d.ts +0 -3
- package/import/process/pagesHandler.js.map +0 -1
- package/import/process/templatesHandler.js.map +0 -1
- package/import/utils.d.ts +0 -56
- package/import/utils.js +0 -696
- package/import/utils.js.map +0 -1
|
@@ -1,55 +1,52 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
11
|
-
|
|
12
|
-
var _handlerGraphql = require("@webiny/handler-graphql");
|
|
13
|
-
|
|
9
|
+
var _pubsub = require("@webiny/pubsub");
|
|
14
10
|
var _api = require("@webiny/api");
|
|
15
|
-
|
|
16
|
-
var _checkBasePermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions"));
|
|
17
|
-
|
|
18
11
|
var _types = require("../../types");
|
|
19
|
-
|
|
20
12
|
var _client = require("../../client");
|
|
21
|
-
|
|
22
13
|
var _utils = require("../../import/utils");
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var _utils3 = require("@webiny/utils");
|
|
27
|
-
|
|
28
|
-
const PERMISSION_NAME = "pb.block";
|
|
14
|
+
var _utils2 = require("@webiny/utils");
|
|
15
|
+
var _PageBlocksPermissions = require("@webiny/api-page-builder/graphql/crud/permissions/PageBlocksPermissions");
|
|
16
|
+
const EXPORT_BLOCKS_FOLDER_KEY = "WEBINY_PB_EXPORT_BLOCK";
|
|
29
17
|
const EXPORT_BLOCKS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER;
|
|
30
18
|
const IMPORT_BLOCKS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER;
|
|
31
|
-
|
|
32
|
-
|
|
19
|
+
var _default = exports.default = new _api.ContextPlugin(context => {
|
|
20
|
+
const pageBlocksPermissions = new _PageBlocksPermissions.PageBlocksPermissions({
|
|
21
|
+
getPermissions: () => context.security.getPermissions("pb.block"),
|
|
22
|
+
getIdentity: context.security.getIdentity,
|
|
23
|
+
fullAccessPermissionName: "pb.*"
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
// Export
|
|
27
|
+
const onBlocksBeforeExport = (0, _pubsub.createTopic)("PageBuilder.onBlocksBeforeExport");
|
|
28
|
+
const onBlocksAfterExport = (0, _pubsub.createTopic)("PageBuilder.onBlocksAfterExport");
|
|
29
|
+
|
|
30
|
+
// Import
|
|
31
|
+
const onBlocksBeforeImport = (0, _pubsub.createTopic)("PageBuilder.onBlocksBeforeImport");
|
|
32
|
+
const onBlocksAfterImport = (0, _pubsub.createTopic)("PageBuilder.onBlocksAfterImport");
|
|
33
33
|
const importExportCrud = {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
34
|
+
onBlocksBeforeExport,
|
|
35
|
+
onBlocksAfterExport,
|
|
36
|
+
onBlocksBeforeImport,
|
|
37
|
+
onBlocksAfterImport,
|
|
38
|
+
async importBlocks(params) {
|
|
39
|
+
const {
|
|
40
|
+
zipFileUrl
|
|
41
|
+
} = params;
|
|
42
|
+
await pageBlocksPermissions.ensure({
|
|
39
43
|
rwd: "w"
|
|
40
|
-
});
|
|
41
|
-
|
|
42
|
-
const category = await context.pageBuilder.getBlockCategory(categorySlug);
|
|
43
|
-
|
|
44
|
-
if (!category) {
|
|
45
|
-
throw new _handlerGraphql.NotFoundError(`Category with slug "${categorySlug}" not found.`);
|
|
46
|
-
} // Create a task for import block
|
|
47
|
-
|
|
44
|
+
});
|
|
48
45
|
|
|
46
|
+
// Create a task for import block
|
|
49
47
|
const task = await context.pageBuilder.importExportTask.createTask({
|
|
50
48
|
status: _types.ImportExportTaskStatus.PENDING,
|
|
51
49
|
input: {
|
|
52
|
-
category: categorySlug,
|
|
53
50
|
zipFileUrl
|
|
54
51
|
}
|
|
55
52
|
});
|
|
@@ -58,12 +55,13 @@ var _default = new _api.ContextPlugin(context => {
|
|
|
58
55
|
* ImportBlocks
|
|
59
56
|
* importBlocks
|
|
60
57
|
*/
|
|
61
|
-
|
|
58
|
+
await onBlocksBeforeImport.publish({
|
|
59
|
+
params
|
|
60
|
+
});
|
|
62
61
|
await (0, _client.invokeHandlerClient)({
|
|
63
62
|
context,
|
|
64
63
|
name: IMPORT_BLOCKS_CREATE_HANDLER,
|
|
65
64
|
payload: {
|
|
66
|
-
category: categorySlug,
|
|
67
65
|
zipFileUrl,
|
|
68
66
|
task,
|
|
69
67
|
type: "block",
|
|
@@ -71,52 +69,52 @@ var _default = new _api.ContextPlugin(context => {
|
|
|
71
69
|
},
|
|
72
70
|
description: "Import Blocks - create"
|
|
73
71
|
});
|
|
72
|
+
await onBlocksAfterImport.publish({
|
|
73
|
+
params
|
|
74
|
+
});
|
|
74
75
|
return {
|
|
75
76
|
task
|
|
76
77
|
};
|
|
77
78
|
},
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
await
|
|
79
|
+
async exportBlocks(params) {
|
|
80
|
+
const {
|
|
81
|
+
ids: initialBlockIds,
|
|
82
|
+
where
|
|
83
|
+
} = params;
|
|
84
|
+
await pageBlocksPermissions.ensure({
|
|
84
85
|
rwd: "w"
|
|
85
86
|
});
|
|
86
|
-
let blockIds = initialBlockIds || [];
|
|
87
|
-
|
|
87
|
+
let blockIds = initialBlockIds || [];
|
|
88
|
+
// If no ids are provided then it means we want to export all blocks
|
|
88
89
|
if (!initialBlockIds || Array.isArray(initialBlockIds) && initialBlockIds.length === 0) {
|
|
89
|
-
blockIds = [];
|
|
90
90
|
const blocks = await context.pageBuilder.listPageBlocks({
|
|
91
91
|
where
|
|
92
|
-
});
|
|
93
|
-
|
|
94
|
-
blocks.
|
|
92
|
+
});
|
|
93
|
+
// Save block ids
|
|
94
|
+
blockIds = blocks.map(block => block.id);
|
|
95
95
|
}
|
|
96
|
-
|
|
97
96
|
if (blockIds.length === 0) {
|
|
98
97
|
throw new _error.default("Cannot export blocks - no blocks found for provided inputs.", "EMPTY_EXPORT_NO_BLOCKS_FOUND");
|
|
99
|
-
}
|
|
100
|
-
|
|
98
|
+
}
|
|
101
99
|
|
|
100
|
+
// Create the main task for blocks export.
|
|
102
101
|
const task = await context.pageBuilder.importExportTask.createTask({
|
|
103
102
|
status: _types.ImportExportTaskStatus.PENDING
|
|
104
103
|
});
|
|
105
|
-
const exportBlocksDataKey = `${
|
|
106
|
-
|
|
104
|
+
const exportBlocksDataKey = `${EXPORT_BLOCKS_FOLDER_KEY}/${task.id}`;
|
|
105
|
+
// For each block create a sub task and invoke the process handler.
|
|
107
106
|
for (let i = 0; i < blockIds.length; i++) {
|
|
108
|
-
const blockId = blockIds[i];
|
|
109
|
-
|
|
110
|
-
await context.pageBuilder.importExportTask.createSubTask(task.id, (0,
|
|
107
|
+
const blockId = blockIds[i];
|
|
108
|
+
// Create sub task.
|
|
109
|
+
await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils2.zeroPad)(i + 1, 5), {
|
|
111
110
|
status: _types.ImportExportTaskStatus.PENDING,
|
|
112
111
|
input: {
|
|
113
112
|
blockId,
|
|
114
113
|
exportBlocksDataKey
|
|
115
114
|
}
|
|
116
115
|
});
|
|
117
|
-
}
|
|
118
|
-
|
|
119
|
-
|
|
116
|
+
}
|
|
117
|
+
// Update main task status.
|
|
120
118
|
await context.pageBuilder.importExportTask.updateTask(task.id, {
|
|
121
119
|
status: _types.ImportExportTaskStatus.PROCESSING,
|
|
122
120
|
stats: (0, _utils.initialStats)(blockIds.length),
|
|
@@ -124,13 +122,16 @@ var _default = new _api.ContextPlugin(context => {
|
|
|
124
122
|
exportBlocksDataKey
|
|
125
123
|
}
|
|
126
124
|
});
|
|
125
|
+
|
|
127
126
|
/**
|
|
128
127
|
* Export Blocks
|
|
129
128
|
* ExportBlocks
|
|
130
129
|
* exportBlocks
|
|
131
130
|
*/
|
|
131
|
+
await onBlocksBeforeExport.publish({
|
|
132
|
+
params
|
|
133
|
+
});
|
|
132
134
|
// Invoke handler.
|
|
133
|
-
|
|
134
135
|
await (0, _client.invokeHandlerClient)({
|
|
135
136
|
context,
|
|
136
137
|
name: EXPORT_BLOCKS_PROCESS_HANDLER,
|
|
@@ -142,14 +143,16 @@ var _default = new _api.ContextPlugin(context => {
|
|
|
142
143
|
},
|
|
143
144
|
description: "Export blocks - process"
|
|
144
145
|
});
|
|
146
|
+
await onBlocksAfterExport.publish({
|
|
147
|
+
params
|
|
148
|
+
});
|
|
145
149
|
return {
|
|
146
150
|
task
|
|
147
151
|
};
|
|
148
152
|
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
153
|
+
};
|
|
154
|
+
// Modify context
|
|
152
155
|
context.pageBuilder.blocks = importExportCrud;
|
|
153
156
|
});
|
|
154
157
|
|
|
155
|
-
|
|
158
|
+
//# sourceMappingURL=blocks.crud.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PERMISSION_NAME","EXPORT_BLOCKS_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_BLOCKS_CREATE_HANDLER","IMPORT_CREATE_HANDLER","ContextPlugin","context","importExportCrud","importBlocks","category","categorySlug","zipFileUrl","checkBasePermissions","rwd","pageBuilder","getBlockCategory","NotFoundError","task","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","invokeHandlerClient","name","payload","type","identity","security","getIdentity","description","exportBlocks","ids","initialBlockIds","where","blockIds","Array","isArray","length","blocks","listPageBlocks","forEach","block","push","id","WebinyError","exportBlocksDataKey","EXPORT_BLOCKS_FOLDER_KEY","i","blockId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["blocks.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, BlocksImportExportCrud, PbImportExportContext } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport { Payload as ExportBlocksProcessHandlerPayload } from \"~/export/process\";\nimport { EXPORT_BLOCKS_FOLDER_KEY } from \"~/export/utils\";\nimport { zeroPad } from \"@webiny/utils\";\n\nconst PERMISSION_NAME = \"pb.block\";\nconst EXPORT_BLOCKS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_BLOCKS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const importExportCrud: BlocksImportExportCrud = {\n async importBlocks({ 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.getBlockCategory(categorySlug);\n if (!category) {\n throw new NotFoundError(`Category with slug \"${categorySlug}\" not found.`);\n }\n\n // Create a task for import block\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n category: categorySlug,\n zipFileUrl\n }\n });\n /**\n * Import Blocks\n * ImportBlocks\n * importBlocks\n */\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_BLOCKS_CREATE_HANDLER,\n payload: {\n category: categorySlug,\n zipFileUrl,\n task,\n type: \"block\",\n identity: context.security.getIdentity()\n },\n description: \"Import Blocks - create\"\n });\n\n return {\n task\n };\n },\n\n async exportBlocks({ ids: initialBlockIds, where }) {\n await checkBasePermissions(context, PERMISSION_NAME, {\n rwd: \"w\"\n });\n let blockIds: string[] = initialBlockIds || [];\n // If no ids are provided then it means we want to export all blocks\n if (\n !initialBlockIds ||\n (Array.isArray(initialBlockIds) && initialBlockIds.length === 0)\n ) {\n blockIds = [];\n const blocks = await context.pageBuilder.listPageBlocks({ where });\n // Save block ids\n blocks.forEach(block => blockIds.push(block.id));\n }\n\n if (blockIds.length === 0) {\n throw new WebinyError(\n \"Cannot export blocks - no blocks found for provided inputs.\",\n \"EMPTY_EXPORT_NO_BLOCKS_FOUND\"\n );\n }\n\n // Create the main task for blocks export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportBlocksDataKey = `${EXPORT_BLOCKS_FOLDER_KEY}/${task.id}`;\n // For each block create a sub task and invoke the process handler.\n for (let i = 0; i < blockIds.length; i++) {\n const blockId = blockIds[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 blockId,\n exportBlocksDataKey\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.importExportTask.updateTask(task.id, {\n status: ImportExportTaskStatus.PROCESSING,\n stats: initialStats(blockIds.length),\n input: {\n exportBlocksDataKey\n }\n });\n\n /**\n * Export Blocks\n * ExportBlocks\n * exportBlocks\n */\n // Invoke handler.\n await invokeHandlerClient<ExportBlocksProcessHandlerPayload>({\n context,\n name: EXPORT_BLOCKS_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"block\",\n identity: context.security.getIdentity()\n },\n description: \"Export blocks - process\"\n });\n\n return { task };\n }\n };\n // Modify context\n context.pageBuilder.blocks = importExportCrud;\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_pubsub","_api","_types","_client","_utils","_utils2","_PageBlocksPermissions","EXPORT_BLOCKS_FOLDER_KEY","EXPORT_BLOCKS_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_BLOCKS_CREATE_HANDLER","IMPORT_CREATE_HANDLER","_default","exports","default","ContextPlugin","context","pageBlocksPermissions","PageBlocksPermissions","getPermissions","security","getIdentity","fullAccessPermissionName","onBlocksBeforeExport","createTopic","onBlocksAfterExport","onBlocksBeforeImport","onBlocksAfterImport","importExportCrud","importBlocks","params","zipFileUrl","ensure","rwd","task","pageBuilder","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","publish","invokeHandlerClient","name","payload","type","identity","description","exportBlocks","ids","initialBlockIds","where","blockIds","Array","isArray","length","blocks","listPageBlocks","map","block","id","WebinyError","exportBlocksDataKey","i","blockId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["blocks.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { createTopic } from \"@webiny/pubsub\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport type {\n BlocksImportExportCrud,\n PbImportExportContext,\n OnBlocksBeforeExportTopicParams,\n OnBlocksAfterExportTopicParams,\n OnBlocksBeforeImportTopicParams,\n OnBlocksAfterImportTopicParams\n} from \"~/types\";\nimport { ImportExportTaskStatus } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport type { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport type { Payload as ExportBlocksProcessHandlerPayload } from \"~/export/process\";\nimport { zeroPad } from \"@webiny/utils\";\nimport { PageBlocksPermissions } from \"@webiny/api-page-builder/graphql/crud/permissions/PageBlocksPermissions\";\n\nconst EXPORT_BLOCKS_FOLDER_KEY = \"WEBINY_PB_EXPORT_BLOCK\";\nconst EXPORT_BLOCKS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_BLOCKS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const pageBlocksPermissions = new PageBlocksPermissions({\n getPermissions: () => context.security.getPermissions(\"pb.block\"),\n getIdentity: context.security.getIdentity,\n fullAccessPermissionName: \"pb.*\"\n });\n\n // Export\n const onBlocksBeforeExport = createTopic<OnBlocksBeforeExportTopicParams>(\n \"PageBuilder.onBlocksBeforeExport\"\n );\n const onBlocksAfterExport = createTopic<OnBlocksAfterExportTopicParams>(\n \"PageBuilder.onBlocksAfterExport\"\n );\n\n // Import\n const onBlocksBeforeImport = createTopic<OnBlocksBeforeImportTopicParams>(\n \"PageBuilder.onBlocksBeforeImport\"\n );\n const onBlocksAfterImport = createTopic<OnBlocksAfterImportTopicParams>(\n \"PageBuilder.onBlocksAfterImport\"\n );\n\n const importExportCrud: BlocksImportExportCrud = {\n onBlocksBeforeExport,\n onBlocksAfterExport,\n onBlocksBeforeImport,\n onBlocksAfterImport,\n async importBlocks(params) {\n const { zipFileUrl } = params;\n await pageBlocksPermissions.ensure({ rwd: \"w\" });\n\n // Create a task for import block\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n zipFileUrl\n }\n });\n /**\n * Import Blocks\n * ImportBlocks\n * importBlocks\n */\n await onBlocksBeforeImport.publish({ params });\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_BLOCKS_CREATE_HANDLER,\n payload: {\n zipFileUrl,\n task,\n type: \"block\",\n identity: context.security.getIdentity()\n },\n description: \"Import Blocks - create\"\n });\n await onBlocksAfterImport.publish({ params });\n\n return {\n task\n };\n },\n\n async exportBlocks(params) {\n const { ids: initialBlockIds, where } = params;\n await pageBlocksPermissions.ensure({ rwd: \"w\" });\n\n let blockIds: string[] = initialBlockIds || [];\n // If no ids are provided then it means we want to export all blocks\n if (\n !initialBlockIds ||\n (Array.isArray(initialBlockIds) && initialBlockIds.length === 0)\n ) {\n const blocks = await context.pageBuilder.listPageBlocks({ where });\n // Save block ids\n blockIds = blocks.map(block => block.id);\n }\n\n if (blockIds.length === 0) {\n throw new WebinyError(\n \"Cannot export blocks - no blocks found for provided inputs.\",\n \"EMPTY_EXPORT_NO_BLOCKS_FOUND\"\n );\n }\n\n // Create the main task for blocks export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportBlocksDataKey = `${EXPORT_BLOCKS_FOLDER_KEY}/${task.id}`;\n // For each block create a sub task and invoke the process handler.\n for (let i = 0; i < blockIds.length; i++) {\n const blockId = blockIds[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 blockId,\n exportBlocksDataKey\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.importExportTask.updateTask(task.id, {\n status: ImportExportTaskStatus.PROCESSING,\n stats: initialStats(blockIds.length),\n input: {\n exportBlocksDataKey\n }\n });\n\n /**\n * Export Blocks\n * ExportBlocks\n * exportBlocks\n */\n await onBlocksBeforeExport.publish({ params });\n // Invoke handler.\n await invokeHandlerClient<ExportBlocksProcessHandlerPayload>({\n context,\n name: EXPORT_BLOCKS_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"block\",\n identity: context.security.getIdentity()\n },\n description: \"Export blocks - process\"\n });\n await onBlocksAfterExport.publish({ params });\n\n return { task };\n }\n };\n // Modify context\n context.pageBuilder.blocks = importExportCrud;\n});\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _error = _interopRequireDefault(require("@webiny/error"));
|
|
9
|
+
var _pubsub = require("@webiny/pubsub");
|
|
10
|
+
var _api = require("@webiny/api");
|
|
11
|
+
var _types = require("../../types");
|
|
12
|
+
var _client = require("../../client");
|
|
13
|
+
var _utils = require("../../import/utils");
|
|
14
|
+
var _utils2 = require("@webiny/utils");
|
|
15
|
+
var _FormsPermissions = require("@webiny/api-form-builder/plugins/crud/permissions/FormsPermissions");
|
|
16
|
+
const EXPORT_FORMS_FOLDER_KEY = "WEBINY_FB_EXPORT_FORM";
|
|
17
|
+
const EXPORT_FORMS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER;
|
|
18
|
+
const IMPORT_FORMS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER;
|
|
19
|
+
var _default = exports.default = new _api.ContextPlugin(context => {
|
|
20
|
+
const formsPermissions = new _FormsPermissions.FormsPermissions({
|
|
21
|
+
getPermissions: () => context.security.getPermissions("fb.form"),
|
|
22
|
+
getIdentity: context.security.getIdentity,
|
|
23
|
+
fullAccessPermissionName: "pb.*"
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
// Export
|
|
27
|
+
const onFormsBeforeExport = (0, _pubsub.createTopic)("PageBuilder.onFormsBeforeExport");
|
|
28
|
+
const onFormsAfterExport = (0, _pubsub.createTopic)("PageBuilder.onFormsAfterExport");
|
|
29
|
+
|
|
30
|
+
// Import
|
|
31
|
+
const onFormsBeforeImport = (0, _pubsub.createTopic)("PageBuilder.onFormsBeforeImport");
|
|
32
|
+
const onFormsAfterImport = (0, _pubsub.createTopic)("PageBuilder.onFormsAfterImport");
|
|
33
|
+
context.waitFor("formBuilder", () => {
|
|
34
|
+
const importExportCrud = {
|
|
35
|
+
onFormsBeforeExport,
|
|
36
|
+
onFormsAfterExport,
|
|
37
|
+
onFormsBeforeImport,
|
|
38
|
+
onFormsAfterImport,
|
|
39
|
+
async importForms(params) {
|
|
40
|
+
const {
|
|
41
|
+
zipFileUrl
|
|
42
|
+
} = params;
|
|
43
|
+
await formsPermissions.ensure({
|
|
44
|
+
rwd: "w"
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
// Create a task for import form
|
|
48
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
|
49
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
|
50
|
+
input: {
|
|
51
|
+
zipFileUrl
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
/**
|
|
55
|
+
* Import Forms
|
|
56
|
+
* ImportForms
|
|
57
|
+
* importForms
|
|
58
|
+
*/
|
|
59
|
+
await onFormsBeforeImport.publish({
|
|
60
|
+
params
|
|
61
|
+
});
|
|
62
|
+
await (0, _client.invokeHandlerClient)({
|
|
63
|
+
context,
|
|
64
|
+
name: IMPORT_FORMS_CREATE_HANDLER,
|
|
65
|
+
payload: {
|
|
66
|
+
zipFileUrl,
|
|
67
|
+
task,
|
|
68
|
+
type: "form",
|
|
69
|
+
identity: context.security.getIdentity()
|
|
70
|
+
},
|
|
71
|
+
description: "Import Forms - create"
|
|
72
|
+
});
|
|
73
|
+
await onFormsAfterImport.publish({
|
|
74
|
+
params
|
|
75
|
+
});
|
|
76
|
+
return {
|
|
77
|
+
task
|
|
78
|
+
};
|
|
79
|
+
},
|
|
80
|
+
async exportForms(params) {
|
|
81
|
+
const {
|
|
82
|
+
ids: initialFormIds,
|
|
83
|
+
revisionType
|
|
84
|
+
} = params;
|
|
85
|
+
await formsPermissions.ensure({
|
|
86
|
+
rwd: "w"
|
|
87
|
+
});
|
|
88
|
+
let formIds = initialFormIds || [];
|
|
89
|
+
// If no ids are provided then it means we want to export all forms
|
|
90
|
+
if (!initialFormIds || Array.isArray(initialFormIds) && initialFormIds.length === 0) {
|
|
91
|
+
formIds = [];
|
|
92
|
+
const forms = await context.formBuilder.listForms();
|
|
93
|
+
|
|
94
|
+
// Save form ids
|
|
95
|
+
forms.forEach(form => formIds.push(form.id));
|
|
96
|
+
}
|
|
97
|
+
if (formIds.length === 0) {
|
|
98
|
+
throw new _error.default("Cannot export forms - no forms found for provided inputs.", "EMPTY_EXPORT_NO_FORMS_FOUND");
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
// Create the main task for form export.
|
|
102
|
+
const task = await context.pageBuilder.importExportTask.createTask({
|
|
103
|
+
status: _types.ImportExportTaskStatus.PENDING
|
|
104
|
+
});
|
|
105
|
+
const exportFormsDataKey = `${EXPORT_FORMS_FOLDER_KEY}/${task.id}`;
|
|
106
|
+
// For each form create a sub task and invoke the process handler.
|
|
107
|
+
for (let i = 0; i < formIds.length; i++) {
|
|
108
|
+
const formId = formIds[i];
|
|
109
|
+
// Create sub task.
|
|
110
|
+
await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils2.zeroPad)(i + 1, 5), {
|
|
111
|
+
status: _types.ImportExportTaskStatus.PENDING,
|
|
112
|
+
input: {
|
|
113
|
+
formId,
|
|
114
|
+
exportFormsDataKey,
|
|
115
|
+
revisionType
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
// Update main task status.
|
|
120
|
+
await context.pageBuilder.importExportTask.updateTask(task.id, {
|
|
121
|
+
status: _types.ImportExportTaskStatus.PROCESSING,
|
|
122
|
+
stats: (0, _utils.initialStats)(formIds.length),
|
|
123
|
+
input: {
|
|
124
|
+
exportFormsDataKey,
|
|
125
|
+
revisionType
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Export Forms
|
|
131
|
+
* ExportForms
|
|
132
|
+
* exportForms
|
|
133
|
+
*/
|
|
134
|
+
await onFormsBeforeExport.publish({
|
|
135
|
+
params
|
|
136
|
+
});
|
|
137
|
+
// Invoke handler.
|
|
138
|
+
await (0, _client.invokeHandlerClient)({
|
|
139
|
+
context,
|
|
140
|
+
name: EXPORT_FORMS_PROCESS_HANDLER,
|
|
141
|
+
payload: {
|
|
142
|
+
taskId: task.id,
|
|
143
|
+
subTaskIndex: 1,
|
|
144
|
+
type: "form",
|
|
145
|
+
identity: context.security.getIdentity()
|
|
146
|
+
},
|
|
147
|
+
description: "Export forms - process"
|
|
148
|
+
});
|
|
149
|
+
await onFormsAfterExport.publish({
|
|
150
|
+
params
|
|
151
|
+
});
|
|
152
|
+
return {
|
|
153
|
+
task
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
// Modify context
|
|
158
|
+
context.formBuilder.forms = importExportCrud;
|
|
159
|
+
});
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
//# sourceMappingURL=forms.crud.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_error","_interopRequireDefault","require","_pubsub","_api","_types","_client","_utils","_utils2","_FormsPermissions","EXPORT_FORMS_FOLDER_KEY","EXPORT_FORMS_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_FORMS_CREATE_HANDLER","IMPORT_CREATE_HANDLER","_default","exports","default","ContextPlugin","context","formsPermissions","FormsPermissions","getPermissions","security","getIdentity","fullAccessPermissionName","onFormsBeforeExport","createTopic","onFormsAfterExport","onFormsBeforeImport","onFormsAfterImport","waitFor","importExportCrud","importForms","params","zipFileUrl","ensure","rwd","task","pageBuilder","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","publish","invokeHandlerClient","name","payload","type","identity","description","exportForms","ids","initialFormIds","revisionType","formIds","Array","isArray","length","forms","formBuilder","listForms","forEach","form","push","id","WebinyError","exportFormsDataKey","i","formId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["forms.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { createTopic } from \"@webiny/pubsub\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport type {\n FormsImportExportCrud,\n PbImportExportContext,\n OnFormsBeforeExportTopicParams,\n OnFormsAfterExportTopicParams,\n OnFormsBeforeImportTopicParams,\n OnFormsAfterImportTopicParams\n} from \"~/types\";\nimport { ImportExportTaskStatus } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport type { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport type { Payload as ExportFormsProcessHandlerPayload } from \"~/export/process\";\nimport { zeroPad } from \"@webiny/utils\";\nimport { FormsPermissions } from \"@webiny/api-form-builder/plugins/crud/permissions/FormsPermissions\";\n\nconst EXPORT_FORMS_FOLDER_KEY = \"WEBINY_FB_EXPORT_FORM\";\nconst EXPORT_FORMS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_FORMS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const formsPermissions = new FormsPermissions({\n getPermissions: () => context.security.getPermissions(\"fb.form\"),\n getIdentity: context.security.getIdentity,\n fullAccessPermissionName: \"pb.*\"\n });\n\n // Export\n const onFormsBeforeExport = createTopic<OnFormsBeforeExportTopicParams>(\n \"PageBuilder.onFormsBeforeExport\"\n );\n const onFormsAfterExport = createTopic<OnFormsAfterExportTopicParams>(\n \"PageBuilder.onFormsAfterExport\"\n );\n\n // Import\n const onFormsBeforeImport = createTopic<OnFormsBeforeImportTopicParams>(\n \"PageBuilder.onFormsBeforeImport\"\n );\n const onFormsAfterImport = createTopic<OnFormsAfterImportTopicParams>(\n \"PageBuilder.onFormsAfterImport\"\n );\n\n context.waitFor(\"formBuilder\", () => {\n const importExportCrud: FormsImportExportCrud = {\n onFormsBeforeExport,\n onFormsAfterExport,\n onFormsBeforeImport,\n onFormsAfterImport,\n async importForms(params) {\n const { zipFileUrl } = params;\n await formsPermissions.ensure({ rwd: \"w\" });\n\n // Create a task for import form\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n zipFileUrl\n }\n });\n /**\n * Import Forms\n * ImportForms\n * importForms\n */\n await onFormsBeforeImport.publish({ params });\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_FORMS_CREATE_HANDLER,\n payload: {\n zipFileUrl,\n task,\n type: \"form\",\n identity: context.security.getIdentity()\n },\n description: \"Import Forms - create\"\n });\n await onFormsAfterImport.publish({ params });\n\n return {\n task\n };\n },\n\n async exportForms(params) {\n const { ids: initialFormIds, revisionType } = params;\n await formsPermissions.ensure({ rwd: \"w\" });\n let formIds: string[] = initialFormIds || [];\n // If no ids are provided then it means we want to export all forms\n if (\n !initialFormIds ||\n (Array.isArray(initialFormIds) && initialFormIds.length === 0)\n ) {\n formIds = [];\n\n const forms = await context.formBuilder.listForms();\n\n // Save form ids\n forms.forEach(form => formIds.push(form.id));\n }\n\n if (formIds.length === 0) {\n throw new WebinyError(\n \"Cannot export forms - no forms found for provided inputs.\",\n \"EMPTY_EXPORT_NO_FORMS_FOUND\"\n );\n }\n\n // Create the main task for form export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportFormsDataKey = `${EXPORT_FORMS_FOLDER_KEY}/${task.id}`;\n // For each form create a sub task and invoke the process handler.\n for (let i = 0; i < formIds.length; i++) {\n const formId = formIds[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 formId,\n exportFormsDataKey,\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(formIds.length),\n input: {\n exportFormsDataKey,\n revisionType\n }\n });\n\n /**\n * Export Forms\n * ExportForms\n * exportForms\n */\n await onFormsBeforeExport.publish({ params });\n // Invoke handler.\n await invokeHandlerClient<ExportFormsProcessHandlerPayload>({\n context,\n name: EXPORT_FORMS_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"form\",\n identity: context.security.getIdentity()\n },\n description: \"Export forms - process\"\n });\n await onFormsAfterExport.publish({ params });\n\n return { task };\n }\n };\n // Modify context\n context.formBuilder.forms = importExportCrud;\n });\n});\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AACA,IAAAE,IAAA,GAAAF,OAAA;AASA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,MAAA,GAAAL,OAAA;AAEA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AAEA,MAAMQ,uBAAuB,GAAG,uBAAuB;AACvD,MAAMC,4BAA4B,GAAGC,OAAO,CAACC,GAAG,CAACC,sBAAgC;AACjF,MAAMC,2BAA2B,GAAGH,OAAO,CAACC,GAAG,CAACG,qBAA+B;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEjE,IAAIC,kBAAa,CAAwBC,OAAO,IAAI;EAC/D,MAAMC,gBAAgB,GAAG,IAAIC,kCAAgB,CAAC;IAC1CC,cAAc,EAAEA,CAAA,KAAMH,OAAO,CAACI,QAAQ,CAACD,cAAc,CAAC,SAAS,CAAC;IAChEE,WAAW,EAAEL,OAAO,CAACI,QAAQ,CAACC,WAAW;IACzCC,wBAAwB,EAAE;EAC9B,CAAC,CAAC;;EAEF;EACA,MAAMC,mBAAmB,GAAG,IAAAC,mBAAW,EACnC,iCACJ,CAAC;EACD,MAAMC,kBAAkB,GAAG,IAAAD,mBAAW,EAClC,gCACJ,CAAC;;EAED;EACA,MAAME,mBAAmB,GAAG,IAAAF,mBAAW,EACnC,iCACJ,CAAC;EACD,MAAMG,kBAAkB,GAAG,IAAAH,mBAAW,EAClC,gCACJ,CAAC;EAEDR,OAAO,CAACY,OAAO,CAAC,aAAa,EAAE,MAAM;IACjC,MAAMC,gBAAuC,GAAG;MAC5CN,mBAAmB;MACnBE,kBAAkB;MAClBC,mBAAmB;MACnBC,kBAAkB;MAClB,MAAMG,WAAWA,CAACC,MAAM,EAAE;QACtB,MAAM;UAAEC;QAAW,CAAC,GAAGD,MAAM;QAC7B,MAAMd,gBAAgB,CAACgB,MAAM,CAAC;UAAEC,GAAG,EAAE;QAAI,CAAC,CAAC;;QAE3C;QACA,MAAMC,IAAI,GAAG,MAAMnB,OAAO,CAACoB,WAAW,CAACC,gBAAgB,CAACC,UAAU,CAAC;UAC/DC,MAAM,EAAEC,6BAAsB,CAACC,OAAO;UACtCC,KAAK,EAAE;YACHV;UACJ;QACJ,CAAC,CAAC;QACF;AAChB;AACA;AACA;AACA;QACgB,MAAMN,mBAAmB,CAACiB,OAAO,CAAC;UAAEZ;QAAO,CAAC,CAAC;QAC7C,MAAM,IAAAa,2BAAmB,EAAuB;UAC5C5B,OAAO;UACP6B,IAAI,EAAEnC,2BAA2B;UACjCoC,OAAO,EAAE;YACLd,UAAU;YACVG,IAAI;YACJY,IAAI,EAAE,MAAM;YACZC,QAAQ,EAAEhC,OAAO,CAACI,QAAQ,CAACC,WAAW,CAAC;UAC3C,CAAC;UACD4B,WAAW,EAAE;QACjB,CAAC,CAAC;QACF,MAAMtB,kBAAkB,CAACgB,OAAO,CAAC;UAAEZ;QAAO,CAAC,CAAC;QAE5C,OAAO;UACHI;QACJ,CAAC;MACL,CAAC;MAED,MAAMe,WAAWA,CAACnB,MAAM,EAAE;QACtB,MAAM;UAAEoB,GAAG,EAAEC,cAAc;UAAEC;QAAa,CAAC,GAAGtB,MAAM;QACpD,MAAMd,gBAAgB,CAACgB,MAAM,CAAC;UAAEC,GAAG,EAAE;QAAI,CAAC,CAAC;QAC3C,IAAIoB,OAAiB,GAAGF,cAAc,IAAI,EAAE;QAC5C;QACA,IACI,CAACA,cAAc,IACdG,KAAK,CAACC,OAAO,CAACJ,cAAc,CAAC,IAAIA,cAAc,CAACK,MAAM,KAAK,CAAE,EAChE;UACEH,OAAO,GAAG,EAAE;UAEZ,MAAMI,KAAK,GAAG,MAAM1C,OAAO,CAAC2C,WAAW,CAACC,SAAS,CAAC,CAAC;;UAEnD;UACAF,KAAK,CAACG,OAAO,CAACC,IAAI,IAAIR,OAAO,CAACS,IAAI,CAACD,IAAI,CAACE,EAAE,CAAC,CAAC;QAChD;QAEA,IAAIV,OAAO,CAACG,MAAM,KAAK,CAAC,EAAE;UACtB,MAAM,IAAIQ,cAAW,CACjB,2DAA2D,EAC3D,6BACJ,CAAC;QACL;;QAEA;QACA,MAAM9B,IAAI,GAAG,MAAMnB,OAAO,CAACoB,WAAW,CAACC,gBAAgB,CAACC,UAAU,CAAC;UAC/DC,MAAM,EAAEC,6BAAsB,CAACC;QACnC,CAAC,CAAC;QACF,MAAMyB,kBAAkB,GAAG,GAAG7D,uBAAuB,IAAI8B,IAAI,CAAC6B,EAAE,EAAE;QAClE;QACA,KAAK,IAAIG,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGb,OAAO,CAACG,MAAM,EAAEU,CAAC,EAAE,EAAE;UACrC,MAAMC,MAAM,GAAGd,OAAO,CAACa,CAAC,CAAC;UACzB;UACA,MAAMnD,OAAO,CAACoB,WAAW,CAACC,gBAAgB,CAACgC,aAAa,CACpDlC,IAAI,CAAC6B,EAAE,EACP,IAAAM,eAAO,EAACH,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EACjB;YACI5B,MAAM,EAAEC,6BAAsB,CAACC,OAAO;YACtCC,KAAK,EAAE;cACH0B,MAAM;cACNF,kBAAkB;cAClBb;YACJ;UACJ,CACJ,CAAC;QACL;QACA;QACA,MAAMrC,OAAO,CAACoB,WAAW,CAACC,gBAAgB,CAACkC,UAAU,CAACpC,IAAI,CAAC6B,EAAE,EAAE;UAC3DzB,MAAM,EAAEC,6BAAsB,CAACgC,UAAU;UACzCC,KAAK,EAAE,IAAAC,mBAAY,EAACpB,OAAO,CAACG,MAAM,CAAC;UACnCf,KAAK,EAAE;YACHwB,kBAAkB;YAClBb;UACJ;QACJ,CAAC,CAAC;;QAEF;AAChB;AACA;AACA;AACA;QACgB,MAAM9B,mBAAmB,CAACoB,OAAO,CAAC;UAAEZ;QAAO,CAAC,CAAC;QAC7C;QACA,MAAM,IAAAa,2BAAmB,EAAmC;UACxD5B,OAAO;UACP6B,IAAI,EAAEvC,4BAA4B;UAClCwC,OAAO,EAAE;YACL6B,MAAM,EAAExC,IAAI,CAAC6B,EAAE;YACfY,YAAY,EAAE,CAAC;YACf7B,IAAI,EAAE,MAAM;YACZC,QAAQ,EAAEhC,OAAO,CAACI,QAAQ,CAACC,WAAW,CAAC;UAC3C,CAAC;UACD4B,WAAW,EAAE;QACjB,CAAC,CAAC;QACF,MAAMxB,kBAAkB,CAACkB,OAAO,CAAC;UAAEZ;QAAO,CAAC,CAAC;QAE5C,OAAO;UAAEI;QAAK,CAAC;MACnB;IACJ,CAAC;IACD;IACAnB,OAAO,CAAC2C,WAAW,CAACD,KAAK,GAAG7B,gBAAgB;EAChD,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ContextPlugin } from "@webiny/api";
|
|
2
|
-
import { ImportExportPluginsParams } from "../../types";
|
|
3
|
-
import { PbImportExportContext } from "../types";
|
|
2
|
+
import type { ImportExportPluginsParams } from "../../types";
|
|
3
|
+
import type { PbImportExportContext } from "../types";
|
|
4
4
|
declare const _default: ({ storageOperations }: ImportExportPluginsParams) => ContextPlugin<PbImportExportContext>;
|
|
5
5
|
export default _default;
|