@webiny/api-page-builder-import-export 0.0.0-unstable.990c3ab1b6 → 0.0.0-unstable.aad28a72ae

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