@webiny/api-page-builder-import-export 0.0.0-unstable.3386f66516 → 0.0.0-unstable.3bc8100a7f

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 (261) hide show
  1. package/client.d.ts +1 -1
  2. package/client.js +12 -25
  3. package/client.js.map +1 -1
  4. package/export/combine/blocksHandler.d.ts +2 -2
  5. package/export/combine/blocksHandler.js +14 -19
  6. package/export/combine/blocksHandler.js.map +1 -1
  7. package/export/combine/formsHandler.d.ts +6 -0
  8. package/export/combine/{pagesHandler.js → formsHandler.js} +25 -30
  9. package/export/combine/formsHandler.js.map +1 -0
  10. package/export/combine/index.d.ts +2 -2
  11. package/export/combine/index.js +24 -23
  12. package/export/combine/index.js.map +1 -1
  13. package/export/combine/templatesHandler.d.ts +2 -2
  14. package/export/combine/templatesHandler.js +14 -19
  15. package/export/combine/templatesHandler.js.map +1 -1
  16. package/export/pages/ExportPagesCleanup.d.ts +5 -0
  17. package/export/pages/ExportPagesCleanup.js +82 -0
  18. package/export/pages/ExportPagesCleanup.js.map +1 -0
  19. package/export/pages/ExportPagesController.d.ts +5 -0
  20. package/export/pages/ExportPagesController.js +31 -0
  21. package/export/pages/ExportPagesController.js.map +1 -0
  22. package/export/pages/ExportPagesZipPages.d.ts +5 -0
  23. package/export/pages/ExportPagesZipPages.js +23 -0
  24. package/export/pages/ExportPagesZipPages.js.map +1 -0
  25. package/export/pages/controller/CombineZippedPages.d.ts +5 -0
  26. package/export/pages/controller/CombineZippedPages.js +75 -0
  27. package/export/pages/controller/CombineZippedPages.js.map +1 -0
  28. package/export/pages/controller/CreateZipPagesTasks.d.ts +8 -0
  29. package/export/pages/controller/CreateZipPagesTasks.js +103 -0
  30. package/export/pages/controller/CreateZipPagesTasks.js.map +1 -0
  31. package/export/pages/controller/ProcessZipPagesTasks.d.ts +6 -0
  32. package/export/pages/controller/ProcessZipPagesTasks.js +61 -0
  33. package/export/pages/controller/ProcessZipPagesTasks.js.map +1 -0
  34. package/export/pages/types.d.ts +53 -0
  35. package/export/pages/types.js +26 -0
  36. package/export/pages/types.js.map +1 -0
  37. package/export/pages/utils.d.ts +2 -0
  38. package/export/pages/utils.js +13 -0
  39. package/export/pages/utils.js.map +1 -0
  40. package/export/pages/zipPages/ZipPages.d.ts +5 -0
  41. package/export/pages/zipPages/ZipPages.js +100 -0
  42. package/export/pages/zipPages/ZipPages.js.map +1 -0
  43. package/export/pages/zipPages/ZipPagesDataManager.d.ts +14 -0
  44. package/export/pages/zipPages/ZipPagesDataManager.js +46 -0
  45. package/export/pages/zipPages/ZipPagesDataManager.js.map +1 -0
  46. package/export/pages/zipPages/getPageFactory.d.ts +4 -0
  47. package/export/pages/zipPages/getPageFactory.js +38 -0
  48. package/export/pages/zipPages/getPageFactory.js.map +1 -0
  49. package/export/process/blocksHandler.d.ts +2 -2
  50. package/export/process/blocksHandler.js +29 -36
  51. package/export/process/blocksHandler.js.map +1 -1
  52. package/export/process/exporters/BlockExporter.d.ts +12 -0
  53. package/export/process/exporters/BlockExporter.js +57 -0
  54. package/export/process/exporters/BlockExporter.js.map +1 -0
  55. package/export/process/exporters/FormExporter.d.ts +9 -0
  56. package/export/process/exporters/FormExporter.js +36 -0
  57. package/export/process/exporters/FormExporter.js.map +1 -0
  58. package/export/process/exporters/PageExporter.d.ts +18 -0
  59. package/export/process/exporters/PageExporter.js +59 -0
  60. package/export/process/exporters/PageExporter.js.map +1 -0
  61. package/export/process/exporters/PageTemplateExporter.d.ts +11 -0
  62. package/export/process/exporters/PageTemplateExporter.js +58 -0
  63. package/export/process/exporters/PageTemplateExporter.js.map +1 -0
  64. package/export/process/formsHandler.d.ts +6 -0
  65. package/export/process/{pagesHandler.js → formsHandler.js} +48 -63
  66. package/export/process/formsHandler.js.map +1 -0
  67. package/export/process/index.d.ts +2 -2
  68. package/export/process/index.js +24 -23
  69. package/export/process/index.js.map +1 -1
  70. package/export/process/templatesHandler.d.ts +2 -2
  71. package/export/process/templatesHandler.js +29 -37
  72. package/export/process/templatesHandler.js.map +1 -1
  73. package/export/s3Stream.d.ts +16 -11
  74. package/export/s3Stream.js +27 -42
  75. package/export/s3Stream.js.map +1 -1
  76. package/export/utils.d.ts +11 -9
  77. package/export/utils.js +54 -58
  78. package/export/utils.js.map +1 -1
  79. package/export/zipper.d.ts +7 -6
  80. package/export/zipper.js +46 -62
  81. package/export/zipper.js.map +1 -1
  82. package/graphql/crud/blocks.crud.d.ts +1 -1
  83. package/graphql/crud/blocks.crud.js +65 -62
  84. package/graphql/crud/blocks.crud.js.map +1 -1
  85. package/graphql/crud/forms.crud.d.ts +4 -0
  86. package/graphql/crud/forms.crud.js +162 -0
  87. package/graphql/crud/forms.crud.js.map +1 -0
  88. package/graphql/crud/importExportTasks.crud.d.ts +2 -2
  89. package/graphql/crud/importExportTasks.crud.js +150 -165
  90. package/graphql/crud/importExportTasks.crud.js.map +1 -1
  91. package/graphql/crud/pages.crud.d.ts +1 -1
  92. package/graphql/crud/pages.crud.js +241 -142
  93. package/graphql/crud/pages.crud.js.map +1 -1
  94. package/graphql/crud/templates.crud.d.ts +1 -1
  95. package/graphql/crud/templates.crud.js +63 -47
  96. package/graphql/crud/templates.crud.js.map +1 -1
  97. package/graphql/crud.d.ts +2 -2
  98. package/graphql/crud.js +4 -8
  99. package/graphql/crud.js.map +1 -1
  100. package/graphql/graphql/blocks.gql.d.ts +2 -2
  101. package/graphql/graphql/blocks.gql.js +8 -13
  102. package/graphql/graphql/blocks.gql.js.map +1 -1
  103. package/graphql/graphql/forms.gql.d.ts +4 -0
  104. package/graphql/graphql/forms.gql.js +60 -0
  105. package/graphql/graphql/forms.gql.js.map +1 -0
  106. package/graphql/graphql/importExportTasks.gql.d.ts +2 -2
  107. package/graphql/graphql/importExportTasks.gql.js +8 -13
  108. package/graphql/graphql/importExportTasks.gql.js.map +1 -1
  109. package/graphql/graphql/pages.gql.d.ts +2 -2
  110. package/graphql/graphql/pages.gql.js +104 -20
  111. package/graphql/graphql/pages.gql.js.map +1 -1
  112. package/graphql/graphql/templates.gql.d.ts +2 -2
  113. package/graphql/graphql/templates.gql.js +7 -12
  114. package/graphql/graphql/templates.gql.js.map +1 -1
  115. package/graphql/graphql/utils/resolve.d.ts +3 -3
  116. package/graphql/graphql/utils/resolve.js +15 -7
  117. package/graphql/graphql/utils/resolve.js.map +1 -1
  118. package/graphql/graphql.d.ts +1 -1
  119. package/graphql/graphql.js +3 -7
  120. package/graphql/graphql.js.map +1 -1
  121. package/graphql/index.d.ts +2 -2
  122. package/graphql/index.js +4 -6
  123. package/graphql/index.js.map +1 -1
  124. package/graphql/types.d.ts +194 -31
  125. package/graphql/types.js +3 -1
  126. package/graphql/types.js.map +1 -1
  127. package/import/constants.d.ts +3 -0
  128. package/import/constants.js +13 -0
  129. package/import/constants.js.map +1 -0
  130. package/import/create/blocksHandler.d.ts +2 -2
  131. package/import/create/blocksHandler.js +13 -22
  132. package/import/create/blocksHandler.js.map +1 -1
  133. package/import/create/formsHandler.d.ts +3 -0
  134. package/import/create/formsHandler.js +105 -0
  135. package/import/create/formsHandler.js.map +1 -0
  136. package/import/create/index.d.ts +2 -2
  137. package/import/create/index.js +24 -23
  138. package/import/create/index.js.map +1 -1
  139. package/import/create/pagesHandler.d.ts +2 -2
  140. package/import/create/pagesHandler.js +12 -19
  141. package/import/create/pagesHandler.js.map +1 -1
  142. package/import/create/templatesHandler.d.ts +2 -2
  143. package/import/create/templatesHandler.js +12 -19
  144. package/import/create/templatesHandler.js.map +1 -1
  145. package/import/pages/ImportPagesController.d.ts +5 -0
  146. package/import/pages/ImportPagesController.js +29 -0
  147. package/import/pages/ImportPagesController.js.map +1 -0
  148. package/import/pages/ImportPagesProcessPages.d.ts +6 -0
  149. package/import/pages/ImportPagesProcessPages.js +112 -0
  150. package/import/pages/ImportPagesProcessPages.js.map +1 -0
  151. package/import/pages/controller/ImportPagesProcessPagesChecker.d.ts +6 -0
  152. package/import/pages/controller/ImportPagesProcessPagesChecker.js +40 -0
  153. package/import/pages/controller/ImportPagesProcessPagesChecker.js.map +1 -0
  154. package/import/pages/controller/ImportPagesProcessZipFile.d.ts +5 -0
  155. package/import/pages/controller/ImportPagesProcessZipFile.js +71 -0
  156. package/import/pages/controller/ImportPagesProcessZipFile.js.map +1 -0
  157. package/import/pages/process/importPage.d.ts +10 -0
  158. package/import/pages/process/importPage.js +94 -0
  159. package/import/pages/process/importPage.js.map +1 -0
  160. package/import/pages/types.d.ts +48 -0
  161. package/import/pages/types.js +20 -0
  162. package/import/pages/types.js.map +1 -0
  163. package/import/process/blocks/ElementIdsProcessor.d.ts +5 -0
  164. package/import/process/blocks/ElementIdsProcessor.js +26 -0
  165. package/import/process/blocks/ElementIdsProcessor.js.map +1 -0
  166. package/import/process/{blocksHandler.d.ts → blocks/blocksHandler.d.ts} +2 -2
  167. package/import/process/{blocksHandler.js → blocks/blocksHandler.js} +32 -38
  168. package/import/process/blocks/blocksHandler.js.map +1 -0
  169. package/import/process/blocks/importBlock.d.ts +11 -0
  170. package/import/process/blocks/importBlock.js +101 -0
  171. package/import/process/blocks/importBlock.js.map +1 -0
  172. package/import/process/forms/formsHandler.d.ts +3 -0
  173. package/import/process/{pagesHandler.js → forms/formsHandler.js} +54 -57
  174. package/import/process/forms/formsHandler.js.map +1 -0
  175. package/import/process/forms/importForm.d.ts +9 -0
  176. package/import/process/forms/importForm.js +47 -0
  177. package/import/process/forms/importForm.js.map +1 -0
  178. package/import/process/index.d.ts +2 -2
  179. package/import/process/index.js +26 -25
  180. package/import/process/index.js.map +1 -1
  181. package/import/process/templates/importTemplate.d.ts +11 -0
  182. package/import/process/templates/importTemplate.js +70 -0
  183. package/import/process/templates/importTemplate.js.map +1 -0
  184. package/import/process/{templatesHandler.d.ts → templates/templatesHandler.d.ts} +2 -2
  185. package/import/process/{templatesHandler.js → templates/templatesHandler.js} +36 -34
  186. package/import/process/templates/templatesHandler.js.map +1 -0
  187. package/import/utils/deleteS3Folder.d.ts +1 -0
  188. package/import/utils/deleteS3Folder.js +21 -0
  189. package/import/utils/deleteS3Folder.js.map +1 -0
  190. package/import/utils/extractAndUploadZipFileContents.d.ts +7 -0
  191. package/import/utils/extractAndUploadZipFileContents.js +126 -0
  192. package/import/utils/extractAndUploadZipFileContents.js.map +1 -0
  193. package/import/utils/extractZipAndUploadToS3.d.ts +2 -0
  194. package/import/utils/extractZipAndUploadToS3.js +100 -0
  195. package/import/utils/extractZipAndUploadToS3.js.map +1 -0
  196. package/import/utils/getFileNameWithoutExt.d.ts +1 -0
  197. package/import/utils/getFileNameWithoutExt.js +13 -0
  198. package/import/utils/getFileNameWithoutExt.js.map +1 -0
  199. package/import/utils/index.d.ts +9 -0
  200. package/import/utils/index.js +106 -0
  201. package/import/utils/index.js.map +1 -0
  202. package/import/utils/initialStats.d.ts +7 -0
  203. package/import/utils/initialStats.js +18 -0
  204. package/import/utils/initialStats.js.map +1 -0
  205. package/import/utils/prepareDataDirMap.d.ts +6 -0
  206. package/import/utils/prepareDataDirMap.js +31 -0
  207. package/import/utils/prepareDataDirMap.js.map +1 -0
  208. package/import/utils/updateFilesInData.d.ts +8 -0
  209. package/import/utils/updateFilesInData.js +51 -0
  210. package/import/utils/updateFilesInData.js.map +1 -0
  211. package/import/utils/uploadAssets.d.ts +10 -0
  212. package/import/utils/uploadAssets.js +92 -0
  213. package/import/utils/uploadAssets.js.map +1 -0
  214. package/import/utils/uploadFilesFromS3.d.ts +3 -0
  215. package/import/utils/uploadFilesFromS3.js +21 -0
  216. package/import/utils/uploadFilesFromS3.js.map +1 -0
  217. package/mockSecurity.d.ts +1 -1
  218. package/mockSecurity.js +2 -3
  219. package/mockSecurity.js.map +1 -1
  220. package/package.json +36 -52
  221. package/tasks/common/ChildTasksCleanup.d.ts +12 -0
  222. package/tasks/common/ChildTasksCleanup.js +64 -0
  223. package/tasks/common/ChildTasksCleanup.js.map +1 -0
  224. package/tasks/index.d.ts +1 -0
  225. package/tasks/index.js +13 -0
  226. package/tasks/index.js.map +1 -0
  227. package/tasks/pages/exportPagesCleanupTask.d.ts +3 -0
  228. package/tasks/pages/exportPagesCleanupTask.js +36 -0
  229. package/tasks/pages/exportPagesCleanupTask.js.map +1 -0
  230. package/tasks/pages/exportPagesControllerTask.d.ts +3 -0
  231. package/tasks/pages/exportPagesControllerTask.js +83 -0
  232. package/tasks/pages/exportPagesControllerTask.js.map +1 -0
  233. package/tasks/pages/exportPagesZipPagesTask.d.ts +3 -0
  234. package/tasks/pages/exportPagesZipPagesTask.js +39 -0
  235. package/tasks/pages/exportPagesZipPagesTask.js.map +1 -0
  236. package/tasks/pages/importPagesControllerTask.d.ts +3 -0
  237. package/tasks/pages/importPagesControllerTask.js +39 -0
  238. package/tasks/pages/importPagesControllerTask.js.map +1 -0
  239. package/tasks/pages/importPagesProcessPageTask.d.ts +3 -0
  240. package/tasks/pages/importPagesProcessPageTask.js +39 -0
  241. package/tasks/pages/importPagesProcessPageTask.js.map +1 -0
  242. package/tasks/pages/index.d.ts +1 -0
  243. package/tasks/pages/index.js +17 -0
  244. package/tasks/pages/index.js.map +1 -0
  245. package/types.d.ts +23 -2
  246. package/types.js +60 -13
  247. package/types.js.map +1 -1
  248. package/utils/ZipFiles.d.ts +11 -0
  249. package/utils/ZipFiles.js +124 -0
  250. package/utils/ZipFiles.js.map +1 -0
  251. package/export/combine/pagesHandler.d.ts +0 -6
  252. package/export/combine/pagesHandler.js.map +0 -1
  253. package/export/process/pagesHandler.d.ts +0 -6
  254. package/export/process/pagesHandler.js.map +0 -1
  255. package/import/process/blocksHandler.js.map +0 -1
  256. package/import/process/pagesHandler.d.ts +0 -3
  257. package/import/process/pagesHandler.js.map +0 -1
  258. package/import/process/templatesHandler.js.map +0 -1
  259. package/import/utils.d.ts +0 -56
  260. package/import/utils.js +0 -696
  261. package/import/utils.js.map +0 -1
package/client.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { PbImportExportContext } from "./graphql/types";
1
+ import type { PbImportExportContext } from "./graphql/types";
2
2
  export interface InvokeHandlerClientParams<TParams> {
3
3
  context: PbImportExportContext;
4
4
  name: string;
package/client.js CHANGED
@@ -1,47 +1,34 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
3
  Object.defineProperty(exports, "__esModule", {
6
4
  value: true
7
5
  });
8
6
  exports.invokeHandlerClient = invokeHandlerClient;
9
-
10
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
7
  async function invokeHandlerClient({
13
8
  context,
14
9
  name,
15
10
  payload,
16
11
  description
17
12
  }) {
18
- /*
19
- * Prepare "invocationArgs", we're hacking our wat here.
20
- * They are necessary to setup the "context.pageBuilder" object among other things in IMPORT_PAGE_FUNCTION
21
- */
22
13
  const {
23
14
  request
24
15
  } = context;
25
16
  const tenantId = context.tenancy.getCurrentTenant().id;
26
- const headers = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, request.headers), {}, {
27
- ["x-tenant"]: request.headers["x-tenant"] || tenantId
28
- });
29
- delete headers["content-length"];
30
- const invocationArgs = {
31
- httpMethod: request.method,
32
- body: request.body,
33
- headers,
34
-
35
- /**
36
- * Required until type augmentation works correctly.
37
- */
38
- cookies: request.cookies
39
- }; // Invoke handler
40
17
 
18
+ // Invoke handler
41
19
  await context.handlerClient.invoke({
42
20
  name: name,
43
- payload: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, payload), invocationArgs),
21
+ payload: {
22
+ ...payload,
23
+ httpMethod: request.method,
24
+ headers: {
25
+ ["x-i18n-locale"]: request.headers["x-i18n-locale"],
26
+ ["x-tenant"]: request.headers["x-tenant"] || tenantId
27
+ }
28
+ },
44
29
  await: false,
45
30
  description
46
31
  });
47
- }
32
+ }
33
+
34
+ //# sourceMappingURL=client.js.map
package/client.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["invokeHandlerClient","context","name","payload","description","request","tenantId","tenancy","getCurrentTenant","id","headers","invocationArgs","httpMethod","method","body","cookies","handlerClient","invoke","await"],"sources":["client.ts"],"sourcesContent":["import { PbImportExportContext } from \"~/graphql/types\";\n\nexport interface InvokeHandlerClientParams<TParams> {\n context: PbImportExportContext;\n name: string;\n payload: TParams;\n description: string;\n}\n\nexport async function invokeHandlerClient<TParams>({\n context,\n name,\n payload,\n description\n}: InvokeHandlerClientParams<TParams>) {\n /*\n * Prepare \"invocationArgs\", we're hacking our wat here.\n * They are necessary to setup the \"context.pageBuilder\" object among other things in IMPORT_PAGE_FUNCTION\n */\n const { request } = context;\n\n const tenantId = context.tenancy.getCurrentTenant().id;\n\n const headers = {\n ...request.headers,\n [\"x-tenant\"]: request.headers[\"x-tenant\"] || tenantId\n };\n delete headers[\"content-length\"];\n const invocationArgs = {\n httpMethod: request.method,\n body: request.body,\n headers,\n /**\n * Required until type augmentation works correctly.\n */\n cookies: (request as any).cookies\n };\n // Invoke handler\n await context.handlerClient.invoke<TParams & any>({\n name: name,\n payload: {\n ...payload,\n ...invocationArgs\n },\n await: false,\n description\n });\n}\n"],"mappings":";;;;;;;;;;;AASO,eAAeA,mBAAf,CAA4C;EAC/CC,OAD+C;EAE/CC,IAF+C;EAG/CC,OAH+C;EAI/CC;AAJ+C,CAA5C,EAKgC;EACnC;AACJ;AACA;AACA;EACI,MAAM;IAAEC;EAAF,IAAcJ,OAApB;EAEA,MAAMK,QAAQ,GAAGL,OAAO,CAACM,OAAR,CAAgBC,gBAAhB,GAAmCC,EAApD;EAEA,MAAMC,OAAO,+DACNL,OAAO,CAACK,OADF;IAET,CAAC,UAAD,GAAcL,OAAO,CAACK,OAAR,CAAgB,UAAhB,KAA+BJ;EAFpC,EAAb;EAIA,OAAOI,OAAO,CAAC,gBAAD,CAAd;EACA,MAAMC,cAAc,GAAG;IACnBC,UAAU,EAAEP,OAAO,CAACQ,MADD;IAEnBC,IAAI,EAAET,OAAO,CAACS,IAFK;IAGnBJ,OAHmB;;IAInB;AACR;AACA;IACQK,OAAO,EAAGV,OAAD,CAAiBU;EAPP,CAAvB,CAdmC,CAuBnC;;EACA,MAAMd,OAAO,CAACe,aAAR,CAAsBC,MAAtB,CAA4C;IAC9Cf,IAAI,EAAEA,IADwC;IAE9CC,OAAO,8DACAA,OADA,GAEAQ,cAFA,CAFuC;IAM9CO,KAAK,EAAE,KANuC;IAO9Cd;EAP8C,CAA5C,CAAN;AASH"}
1
+ {"version":3,"names":["invokeHandlerClient","context","name","payload","description","request","tenantId","tenancy","getCurrentTenant","id","handlerClient","invoke","httpMethod","method","headers","await"],"sources":["client.ts"],"sourcesContent":["import type { PbImportExportContext } from \"~/graphql/types\";\n\nexport interface InvokeHandlerClientParams<TParams> {\n context: PbImportExportContext;\n name: string;\n payload: TParams;\n description: string;\n}\n\nexport async function invokeHandlerClient<TParams>({\n context,\n name,\n payload,\n description\n}: InvokeHandlerClientParams<TParams>) {\n const { request } = context;\n const tenantId = context.tenancy.getCurrentTenant().id;\n\n // Invoke handler\n await context.handlerClient.invoke<TParams & any>({\n name: name,\n payload: {\n ...payload,\n httpMethod: request.method,\n headers: {\n [\"x-i18n-locale\"]: request.headers[\"x-i18n-locale\"],\n [\"x-tenant\"]: request.headers[\"x-tenant\"] || tenantId\n }\n },\n await: false,\n description\n });\n}\n"],"mappings":";;;;;;AASO,eAAeA,mBAAmBA,CAAU;EAC/CC,OAAO;EACPC,IAAI;EACJC,OAAO;EACPC;AACgC,CAAC,EAAE;EACnC,MAAM;IAAEC;EAAQ,CAAC,GAAGJ,OAAO;EAC3B,MAAMK,QAAQ,GAAGL,OAAO,CAACM,OAAO,CAACC,gBAAgB,CAAC,CAAC,CAACC,EAAE;;EAEtD;EACA,MAAMR,OAAO,CAACS,aAAa,CAACC,MAAM,CAAgB;IAC9CT,IAAI,EAAEA,IAAI;IACVC,OAAO,EAAE;MACL,GAAGA,OAAO;MACVS,UAAU,EAAEP,OAAO,CAACQ,MAAM;MAC1BC,OAAO,EAAE;QACL,CAAC,eAAe,GAAGT,OAAO,CAACS,OAAO,CAAC,eAAe,CAAC;QACnD,CAAC,UAAU,GAAGT,OAAO,CAACS,OAAO,CAAC,UAAU,CAAC,IAAIR;MACjD;IACJ,CAAC;IACDS,KAAK,EAAE,KAAK;IACZX;EACJ,CAAC,CAAC;AACN","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { PbImportExportContext } from "../../types";
2
- import { Payload, Response } from ".";
1
+ import type { PbImportExportContext } from "../../types";
2
+ import type { Payload, Response } from "./";
3
3
  /**
4
4
  * Handles the export blocks combine workflow.
5
5
  */
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.blocksHandler = void 0;
7
-
8
7
  var _types = require("../../types");
9
-
10
8
  var _s3Stream = require("../s3Stream");
11
-
12
9
  var _zipper = require("../zipper");
13
-
14
10
  var _mockSecurity = require("../../mockSecurity");
15
-
16
11
  /**
17
12
  * Handles the export blocks combine workflow.
18
13
  */
@@ -27,10 +22,8 @@ const blocksHandler = async (payload, context) => {
27
22
  identity
28
23
  } = payload;
29
24
  (0, _mockSecurity.mockSecurity)(identity, context);
30
-
31
25
  try {
32
26
  const task = await pageBuilder.importExportTask.getTask(taskId);
33
-
34
27
  if (!task) {
35
28
  return {
36
29
  data: null,
@@ -39,13 +32,12 @@ const blocksHandler = async (payload, context) => {
39
32
  }
40
33
  };
41
34
  }
42
-
43
35
  const {
44
36
  exportBlocksDataKey
45
- } = task.input; // Get all files (zip) from given key
37
+ } = task.input;
46
38
 
39
+ // Get all files (zip) from given key
47
40
  const listObjectResponse = await _s3Stream.s3Stream.listObject(exportBlocksDataKey);
48
-
49
41
  if (!listObjectResponse.Contents) {
50
42
  return {
51
43
  data: null,
@@ -54,33 +46,36 @@ const blocksHandler = async (payload, context) => {
54
46
  }
55
47
  };
56
48
  }
49
+ const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportBlocksDataKey).map(file => file.Key).filter(Boolean);
57
50
 
58
- const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportBlocksDataKey).map(file => file.Key).filter(Boolean); // Prepare zip of all zips
59
-
60
- const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_BLOCK_EXPORT.zip"); // Upload
51
+ // Prepare zip of all zips
52
+ const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_BLOCK_EXPORT.zip");
61
53
 
54
+ // Upload
62
55
  const blockExportUpload = await zipOfZip.process();
63
- log(`Done uploading... File is located at ${blockExportUpload.Location} `); // Update task status and save export blocks data key
56
+ log(`Done uploading... File is located at ${blockExportUpload.Location} `);
64
57
 
58
+ // Update task status and save export blocks data key
65
59
  await pageBuilder.importExportTask.updateTask(taskId, {
66
60
  status: _types.ImportExportTaskStatus.COMPLETED,
67
61
  data: {
68
62
  message: `Finish uploading block export.`,
69
63
  key: blockExportUpload.Key,
70
- url: _s3Stream.s3Stream.getPresignedUrl(blockExportUpload.Key)
64
+ url: await _s3Stream.s3Stream.getPresignedUrl(blockExportUpload.Key)
71
65
  }
72
- }); // Remove individual zip files from storage
66
+ });
73
67
 
68
+ // Remove individual zip files from storage
74
69
  const deleteFilePromises = zipFileKeys.map(key => _s3Stream.s3Stream.deleteObject(key));
75
70
  await Promise.all(deleteFilePromises);
76
71
  log(`Successfully deleted ${deleteFilePromises.length} zip files.`);
77
72
  } catch (e) {
78
73
  log("[EXPORT_BLOCKS_COMBINE] Error => ", e.message);
74
+
79
75
  /**
80
76
  * In case of error, we'll update the task status to "failed",
81
77
  * so that, client can show notify the user appropriately.
82
78
  */
83
-
84
79
  await pageBuilder.importExportTask.updateTask(taskId, {
85
80
  status: _types.ImportExportTaskStatus.FAILED,
86
81
  error: {
@@ -96,11 +91,11 @@ const blocksHandler = async (payload, context) => {
96
91
  }
97
92
  };
98
93
  }
99
-
100
94
  return {
101
95
  data: "",
102
96
  error: null
103
97
  };
104
98
  };
99
+ exports.blocksHandler = blocksHandler;
105
100
 
106
- exports.blocksHandler = blocksHandler;
101
+ //# sourceMappingURL=blocksHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["blocksHandler","payload","context","log","console","pageBuilder","taskId","identity","mockSecurity","task","importExportTask","getTask","data","error","message","exportBlocksDataKey","input","listObjectResponse","s3Stream","listObject","Contents","zipFileKeys","filter","file","Key","map","Boolean","zipOfZip","ZipOfZip","blockExportUpload","process","Location","updateTask","status","ImportExportTaskStatus","COMPLETED","key","url","getPresignedUrl","deleteFilePromises","deleteObject","Promise","all","length","e","FAILED","name","code"],"sources":["blocksHandler.ts"],"sourcesContent":["import { ImportExportTaskStatus, PbImportExportContext } from \"~/types\";\nimport { s3Stream } from \"../s3Stream\";\nimport { ZipOfZip } from \"../zipper\";\nimport { mockSecurity } from \"~/mockSecurity\";\nimport { Payload, Response } from \"~/export/combine\";\n\n/**\n * Handles the export blocks combine workflow.\n */\nexport const blocksHandler = async (\n payload: Payload,\n context: PbImportExportContext\n): Promise<Response> => {\n const log = console.log;\n\n log(\"RUNNING Export Blocks Combine Handler\");\n const { pageBuilder } = context;\n const { taskId, identity } = payload;\n\n mockSecurity(identity, context);\n\n try {\n const task = await pageBuilder.importExportTask.getTask(taskId);\n if (!task) {\n return {\n data: null,\n error: {\n message: `There is no task with ID \"${taskId}\".`\n }\n };\n }\n\n const { exportBlocksDataKey } = task.input;\n\n // Get all files (zip) from given key\n const listObjectResponse = await s3Stream.listObject(exportBlocksDataKey);\n if (!listObjectResponse.Contents) {\n return {\n data: null,\n error: {\n message: \"There is no Contents defined on S3 Stream while combining blocks.\"\n }\n };\n }\n\n const zipFileKeys = listObjectResponse.Contents.filter(\n file => file.Key !== exportBlocksDataKey\n )\n .map(file => file.Key)\n .filter(Boolean) as string[];\n\n // Prepare zip of all zips\n const zipOfZip = new ZipOfZip(zipFileKeys, \"WEBINY_BLOCK_EXPORT.zip\");\n\n // Upload\n const blockExportUpload = await zipOfZip.process();\n log(`Done uploading... File is located at ${blockExportUpload.Location} `);\n\n // Update task status and save export blocks data key\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.COMPLETED,\n data: {\n message: `Finish uploading block export.`,\n key: blockExportUpload.Key,\n url: s3Stream.getPresignedUrl(blockExportUpload.Key)\n }\n });\n\n // Remove individual zip files from storage\n const deleteFilePromises = zipFileKeys.map(key => s3Stream.deleteObject(key));\n await Promise.all(deleteFilePromises);\n log(`Successfully deleted ${deleteFilePromises.length} zip files.`);\n } catch (e) {\n log(\"[EXPORT_BLOCKS_COMBINE] Error => \", e.message);\n\n /**\n * In case of error, we'll update the task status to \"failed\",\n * so that, client can show notify the user appropriately.\n */\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.FAILED,\n error: {\n name: e.name,\n message: e.message,\n code: \"EXPORT_FAILED\"\n }\n });\n\n return {\n data: null,\n error: {\n message: e.message\n }\n };\n }\n return {\n data: \"\",\n error: null\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_types","require","_s3Stream","_zipper","_mockSecurity","blocksHandler","payload","context","log","console","pageBuilder","taskId","identity","mockSecurity","task","importExportTask","getTask","data","error","message","exportBlocksDataKey","input","listObjectResponse","s3Stream","listObject","Contents","zipFileKeys","filter","file","Key","map","Boolean","zipOfZip","ZipOfZip","blockExportUpload","process","Location","updateTask","status","ImportExportTaskStatus","COMPLETED","key","url","getPresignedUrl","deleteFilePromises","deleteObject","Promise","all","length","e","FAILED","name","code","exports"],"sources":["blocksHandler.ts"],"sourcesContent":["import type { PbImportExportContext } from \"~/types\";\nimport { ImportExportTaskStatus } from \"~/types\";\nimport { s3Stream } from \"../s3Stream\";\nimport { ZipOfZip } from \"../zipper\";\nimport { mockSecurity } from \"~/mockSecurity\";\nimport type { Payload, Response } from \"~/export/combine\";\n\n/**\n * Handles the export blocks combine workflow.\n */\nexport const blocksHandler = async (\n payload: Payload,\n context: PbImportExportContext\n): Promise<Response> => {\n const log = console.log;\n\n log(\"RUNNING Export Blocks Combine Handler\");\n const { pageBuilder } = context;\n const { taskId, identity } = payload;\n\n mockSecurity(identity, context);\n\n try {\n const task = await pageBuilder.importExportTask.getTask(taskId);\n if (!task) {\n return {\n data: null,\n error: {\n message: `There is no task with ID \"${taskId}\".`\n }\n };\n }\n\n const { exportBlocksDataKey } = task.input;\n\n // Get all files (zip) from given key\n const listObjectResponse = await s3Stream.listObject(exportBlocksDataKey);\n if (!listObjectResponse.Contents) {\n return {\n data: null,\n error: {\n message: \"There is no Contents defined on S3 Stream while combining blocks.\"\n }\n };\n }\n\n const zipFileKeys = listObjectResponse.Contents.filter(\n file => file.Key !== exportBlocksDataKey\n )\n .map(file => file.Key)\n .filter(Boolean) as string[];\n\n // Prepare zip of all zips\n const zipOfZip = new ZipOfZip(zipFileKeys, \"WEBINY_BLOCK_EXPORT.zip\");\n\n // Upload\n const blockExportUpload = await zipOfZip.process();\n log(`Done uploading... File is located at ${blockExportUpload.Location} `);\n\n // Update task status and save export blocks data key\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.COMPLETED,\n data: {\n message: `Finish uploading block export.`,\n key: blockExportUpload.Key,\n url: await s3Stream.getPresignedUrl(blockExportUpload.Key)\n }\n });\n\n // Remove individual zip files from storage\n const deleteFilePromises = zipFileKeys.map(key => s3Stream.deleteObject(key));\n await Promise.all(deleteFilePromises);\n log(`Successfully deleted ${deleteFilePromises.length} zip files.`);\n } catch (e) {\n log(\"[EXPORT_BLOCKS_COMBINE] Error => \", e.message);\n\n /**\n * In case of error, we'll update the task status to \"failed\",\n * so that, client can show notify the user appropriately.\n */\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.FAILED,\n error: {\n name: e.name,\n message: e.message,\n code: \"EXPORT_FAILED\"\n }\n });\n\n return {\n data: null,\n error: {\n message: e.message\n }\n };\n }\n return {\n data: \"\",\n error: null\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ import type { PbImportExportContext } from "../../types";
2
+ import type { Payload, Response } from "./";
3
+ /**
4
+ * Handles the export forms combine workflow.
5
+ */
6
+ export declare const formsHandler: (payload: Payload, context: PbImportExportContext) => Promise<Response>;
@@ -3,22 +3,17 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.pagesHandler = void 0;
7
-
6
+ exports.formsHandler = void 0;
8
7
  var _types = require("../../types");
9
-
10
8
  var _s3Stream = require("../s3Stream");
11
-
12
9
  var _zipper = require("../zipper");
13
-
14
10
  var _mockSecurity = require("../../mockSecurity");
15
-
16
11
  /**
17
- * Handles the export pages combine workflow.
12
+ * Handles the export forms combine workflow.
18
13
  */
19
- const pagesHandler = async (payload, context) => {
14
+ const formsHandler = async (payload, context) => {
20
15
  const log = console.log;
21
- log("RUNNING Export Pages Combine Handler");
16
+ log("RUNNING Export Forms Combine Handler");
22
17
  const {
23
18
  pageBuilder
24
19
  } = context;
@@ -27,10 +22,8 @@ const pagesHandler = async (payload, context) => {
27
22
  identity
28
23
  } = payload;
29
24
  (0, _mockSecurity.mockSecurity)(identity, context);
30
-
31
25
  try {
32
26
  const task = await pageBuilder.importExportTask.getTask(taskId);
33
-
34
27
  if (!task) {
35
28
  return {
36
29
  data: null,
@@ -39,48 +32,50 @@ const pagesHandler = async (payload, context) => {
39
32
  }
40
33
  };
41
34
  }
42
-
43
35
  const {
44
- exportPagesDataKey
45
- } = task.input; // Get all files (zip) from given key
46
-
47
- const listObjectResponse = await _s3Stream.s3Stream.listObject(exportPagesDataKey);
36
+ exportFormsDataKey
37
+ } = task.input;
48
38
 
39
+ // Get all files (zip) from given key
40
+ const listObjectResponse = await _s3Stream.s3Stream.listObject(exportFormsDataKey);
49
41
  if (!listObjectResponse.Contents) {
50
42
  return {
51
43
  data: null,
52
44
  error: {
53
- message: "There is no Contents defined on S3 Stream while combining pages."
45
+ message: "There is no Contents defined on S3 Stream while combining forms."
54
46
  }
55
47
  };
56
48
  }
49
+ const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportFormsDataKey).map(file => file.Key).filter(Boolean);
57
50
 
58
- const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportPagesDataKey).map(file => file.Key).filter(Boolean); // Prepare zip of all zips
51
+ // Prepare zip of all zips
52
+ const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_FORM_EXPORT.zip");
59
53
 
60
- const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_PAGE_EXPORT.zip"); // Upload
61
-
62
- const pageExportUpload = await zipOfZip.process();
63
- log(`Done uploading... File is located at ${pageExportUpload.Location} `); // Update task status and save export page data key
54
+ // Upload
55
+ const formExportUpload = await zipOfZip.process();
56
+ log(`Done uploading... File is located at ${formExportUpload.Location} `);
64
57
 
58
+ // Update task status and save export form data key
65
59
  await pageBuilder.importExportTask.updateTask(taskId, {
66
60
  status: _types.ImportExportTaskStatus.COMPLETED,
67
61
  data: {
68
- message: `Finish uploading page export.`,
69
- key: pageExportUpload.Key,
70
- url: _s3Stream.s3Stream.getPresignedUrl(pageExportUpload.Key)
62
+ message: `Finish uploading form export.`,
63
+ key: formExportUpload.Key,
64
+ url: await _s3Stream.s3Stream.getPresignedUrl(formExportUpload.Key)
71
65
  }
72
- }); // Remove individual zip files from storage
66
+ });
73
67
 
68
+ // Remove individual zip files from storage
74
69
  const deleteFilePromises = zipFileKeys.map(key => _s3Stream.s3Stream.deleteObject(key));
75
70
  await Promise.all(deleteFilePromises);
76
71
  log(`Successfully deleted ${deleteFilePromises.length} zip files.`);
77
72
  } catch (e) {
78
- log("[EXPORT_PAGES_COMBINE] Error => ", e.message);
73
+ log("[EXPORT_FORMS_COMBINE] Error => ", e.message);
74
+
79
75
  /**
80
76
  * In case of error, we'll update the task status to "failed",
81
77
  * so that, client can show notify the user appropriately.
82
78
  */
83
-
84
79
  await pageBuilder.importExportTask.updateTask(taskId, {
85
80
  status: _types.ImportExportTaskStatus.FAILED,
86
81
  error: {
@@ -96,11 +91,11 @@ const pagesHandler = async (payload, context) => {
96
91
  }
97
92
  };
98
93
  }
99
-
100
94
  return {
101
95
  data: "",
102
96
  error: null
103
97
  };
104
98
  };
99
+ exports.formsHandler = formsHandler;
105
100
 
106
- exports.pagesHandler = pagesHandler;
101
+ //# sourceMappingURL=formsHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_types","require","_s3Stream","_zipper","_mockSecurity","formsHandler","payload","context","log","console","pageBuilder","taskId","identity","mockSecurity","task","importExportTask","getTask","data","error","message","exportFormsDataKey","input","listObjectResponse","s3Stream","listObject","Contents","zipFileKeys","filter","file","Key","map","Boolean","zipOfZip","ZipOfZip","formExportUpload","process","Location","updateTask","status","ImportExportTaskStatus","COMPLETED","key","url","getPresignedUrl","deleteFilePromises","deleteObject","Promise","all","length","e","FAILED","name","code","exports"],"sources":["formsHandler.ts"],"sourcesContent":["import type { PbImportExportContext } from \"~/types\";\nimport { ImportExportTaskStatus } from \"~/types\";\nimport { s3Stream } from \"../s3Stream\";\nimport { ZipOfZip } from \"../zipper\";\nimport { mockSecurity } from \"~/mockSecurity\";\nimport type { Payload, Response } from \"~/export/combine\";\n\n/**\n * Handles the export forms combine workflow.\n */\nexport const formsHandler = async (\n payload: Payload,\n context: PbImportExportContext\n): Promise<Response> => {\n const log = console.log;\n\n log(\"RUNNING Export Forms Combine Handler\");\n const { pageBuilder } = context;\n const { taskId, identity } = payload;\n\n mockSecurity(identity, context);\n\n try {\n const task = await pageBuilder.importExportTask.getTask(taskId);\n if (!task) {\n return {\n data: null,\n error: {\n message: `There is no task with ID \"${taskId}\".`\n }\n };\n }\n\n const { exportFormsDataKey } = task.input;\n\n // Get all files (zip) from given key\n const listObjectResponse = await s3Stream.listObject(exportFormsDataKey);\n if (!listObjectResponse.Contents) {\n return {\n data: null,\n error: {\n message: \"There is no Contents defined on S3 Stream while combining forms.\"\n }\n };\n }\n\n const zipFileKeys = listObjectResponse.Contents.filter(\n file => file.Key !== exportFormsDataKey\n )\n .map(file => file.Key)\n .filter(Boolean) as string[];\n\n // Prepare zip of all zips\n const zipOfZip = new ZipOfZip(zipFileKeys, \"WEBINY_FORM_EXPORT.zip\");\n\n // Upload\n const formExportUpload = await zipOfZip.process();\n log(`Done uploading... File is located at ${formExportUpload.Location} `);\n\n // Update task status and save export form data key\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.COMPLETED,\n data: {\n message: `Finish uploading form export.`,\n key: formExportUpload.Key,\n url: await s3Stream.getPresignedUrl(formExportUpload.Key)\n }\n });\n\n // Remove individual zip files from storage\n const deleteFilePromises = zipFileKeys.map(key => s3Stream.deleteObject(key));\n await Promise.all(deleteFilePromises);\n log(`Successfully deleted ${deleteFilePromises.length} zip files.`);\n } catch (e) {\n log(\"[EXPORT_FORMS_COMBINE] Error => \", e.message);\n\n /**\n * In case of error, we'll update the task status to \"failed\",\n * so that, client can show notify the user appropriately.\n */\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.FAILED,\n error: {\n name: e.name,\n message: e.message,\n code: \"EXPORT_FAILED\"\n }\n });\n\n return {\n data: null,\n error: {\n message: e.message\n }\n };\n }\n return {\n data: \"\",\n error: null\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { PbImportExportContext } from "../../types";
2
- import { SecurityIdentity } from "@webiny/api-security/types";
1
+ import type { PbImportExportContext } from "../../types";
2
+ import type { SecurityIdentity } from "@webiny/api-security/types";
3
3
  export interface Payload {
4
4
  taskId: string;
5
5
  type: string;
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
-
8
7
  var _handlerAws = require("@webiny/handler-aws");
9
-
10
8
  var _blocksHandler = require("./blocksHandler");
11
-
12
- var _pagesHandler = require("./pagesHandler");
13
-
9
+ var _formsHandler = require("./formsHandler");
14
10
  var _templatesHandler = require("./templatesHandler");
15
-
16
11
  /**
17
12
  * Handles the export pages combine workflow.
18
13
  */
@@ -21,23 +16,29 @@ var _default = () => {
21
16
  payload,
22
17
  context
23
18
  }) => {
24
- switch (payload.type) {
25
- case "block":
26
- {
27
- return await (0, _blocksHandler.blocksHandler)(payload, context);
28
- }
29
-
30
- case "template":
31
- {
32
- return await (0, _templatesHandler.templatesHandler)(payload, context);
33
- }
34
-
35
- default:
36
- {
37
- return await (0, _pagesHandler.pagesHandler)(payload, context);
38
- }
39
- }
19
+ return context.security.withoutAuthorization(() => {
20
+ switch (payload.type) {
21
+ case "block":
22
+ {
23
+ return (0, _blocksHandler.blocksHandler)(payload, context);
24
+ }
25
+ case "form":
26
+ {
27
+ return (0, _formsHandler.formsHandler)(payload, context);
28
+ }
29
+ case "template":
30
+ {
31
+ return (0, _templatesHandler.templatesHandler)(payload, context);
32
+ }
33
+ default:
34
+ {
35
+ console.log("Export PB combine", JSON.stringify(payload));
36
+ throw new Error("Invalid type provided: pb combine.");
37
+ }
38
+ }
39
+ });
40
40
  });
41
41
  };
42
+ exports.default = _default;
42
43
 
43
- exports.default = _default;
44
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createRawEventHandler","payload","context","type","blocksHandler","templatesHandler","pagesHandler"],"sources":["index.ts"],"sourcesContent":["import { PbImportExportContext } from \"~/types\";\nimport { SecurityIdentity } from \"@webiny/api-security/types\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\nimport { blocksHandler } from \"~/export/combine/blocksHandler\";\nimport { pagesHandler } from \"~/export/combine/pagesHandler\";\nimport { templatesHandler } from \"~/export/combine/templatesHandler\";\n\nexport interface Payload {\n taskId: string;\n type: string;\n identity: SecurityIdentity;\n}\n\nexport interface Response {\n data: string | null;\n error: Partial<Error> | null;\n}\n\n/**\n * Handles the export pages combine workflow.\n */\nexport default () => {\n return createRawEventHandler<Payload, PbImportExportContext, Response>(\n async ({ payload, context }) => {\n switch (payload.type) {\n case \"block\": {\n return await blocksHandler(payload, context);\n }\n case \"template\": {\n return await templatesHandler(payload, context);\n }\n default: {\n return await pagesHandler(payload, context);\n }\n }\n }\n );\n};\n"],"mappings":";;;;;;;AAEA;;AACA;;AACA;;AACA;;AAaA;AACA;AACA;eACe,MAAM;EACjB,OAAO,IAAAA,iCAAA,EACH,OAAO;IAAEC,OAAF;IAAWC;EAAX,CAAP,KAAgC;IAC5B,QAAQD,OAAO,CAACE,IAAhB;MACI,KAAK,OAAL;QAAc;UACV,OAAO,MAAM,IAAAC,4BAAA,EAAcH,OAAd,EAAuBC,OAAvB,CAAb;QACH;;MACD,KAAK,UAAL;QAAiB;UACb,OAAO,MAAM,IAAAG,kCAAA,EAAiBJ,OAAjB,EAA0BC,OAA1B,CAAb;QACH;;MACD;QAAS;UACL,OAAO,MAAM,IAAAI,0BAAA,EAAaL,OAAb,EAAsBC,OAAtB,CAAb;QACH;IATL;EAWH,CAbE,CAAP;AAeH,C"}
1
+ {"version":3,"names":["_handlerAws","require","_blocksHandler","_formsHandler","_templatesHandler","_default","createRawEventHandler","payload","context","security","withoutAuthorization","type","blocksHandler","formsHandler","templatesHandler","console","log","JSON","stringify","Error","exports","default"],"sources":["index.ts"],"sourcesContent":["import type { PbImportExportContext } from \"~/types\";\nimport type { SecurityIdentity } from \"@webiny/api-security/types\";\nimport { createRawEventHandler } from \"@webiny/handler-aws\";\nimport { blocksHandler } from \"~/export/combine/blocksHandler\";\nimport { formsHandler } from \"~/export/combine/formsHandler\";\nimport { templatesHandler } from \"~/export/combine/templatesHandler\";\n\nexport interface Payload {\n taskId: string;\n type: string;\n identity: SecurityIdentity;\n}\n\nexport interface Response {\n data: string | null;\n error: Partial<Error> | null;\n}\n\n/**\n * Handles the export pages combine workflow.\n */\nexport default () => {\n return createRawEventHandler<Payload, PbImportExportContext, Response>(\n async ({ payload, context }) => {\n return context.security.withoutAuthorization(() => {\n switch (payload.type) {\n case \"block\": {\n return blocksHandler(payload, context);\n }\n case \"form\": {\n return formsHandler(payload, context);\n }\n case \"template\": {\n return templatesHandler(payload, context);\n }\n default: {\n console.log(\"Export PB combine\", JSON.stringify(payload));\n throw new Error(\"Invalid type provided: pb combine.\");\n }\n }\n });\n }\n );\n};\n"],"mappings":";;;;;;AAEA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,iBAAA,GAAAH,OAAA;AAaA;AACA;AACA;AAFA,IAAAI,QAAA,GAGeA,CAAA,KAAM;EACjB,OAAO,IAAAC,iCAAqB,EACxB,OAAO;IAAEC,OAAO;IAAEC;EAAQ,CAAC,KAAK;IAC5B,OAAOA,OAAO,CAACC,QAAQ,CAACC,oBAAoB,CAAC,MAAM;MAC/C,QAAQH,OAAO,CAACI,IAAI;QAChB,KAAK,OAAO;UAAE;YACV,OAAO,IAAAC,4BAAa,EAACL,OAAO,EAAEC,OAAO,CAAC;UAC1C;QACA,KAAK,MAAM;UAAE;YACT,OAAO,IAAAK,0BAAY,EAACN,OAAO,EAAEC,OAAO,CAAC;UACzC;QACA,KAAK,UAAU;UAAE;YACb,OAAO,IAAAM,kCAAgB,EAACP,OAAO,EAAEC,OAAO,CAAC;UAC7C;QACA;UAAS;YACLO,OAAO,CAACC,GAAG,CAAC,mBAAmB,EAAEC,IAAI,CAACC,SAAS,CAACX,OAAO,CAAC,CAAC;YACzD,MAAM,IAAIY,KAAK,CAAC,oCAAoC,CAAC;UACzD;MACJ;IACJ,CAAC,CAAC;EACN,CACJ,CAAC;AACL,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAhB,QAAA","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { PbImportExportContext } from "../../types";
2
- import { Payload, Response } from ".";
1
+ import type { PbImportExportContext } from "../../types";
2
+ import type { Payload, Response } from "./";
3
3
  /**
4
4
  * Handles the export templates combine workflow.
5
5
  */
@@ -4,15 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.templatesHandler = void 0;
7
-
8
7
  var _types = require("../../types");
9
-
10
8
  var _s3Stream = require("../s3Stream");
11
-
12
9
  var _zipper = require("../zipper");
13
-
14
10
  var _mockSecurity = require("../../mockSecurity");
15
-
16
11
  /**
17
12
  * Handles the export templates combine workflow.
18
13
  */
@@ -27,10 +22,8 @@ const templatesHandler = async (payload, context) => {
27
22
  identity
28
23
  } = payload;
29
24
  (0, _mockSecurity.mockSecurity)(identity, context);
30
-
31
25
  try {
32
26
  const task = await pageBuilder.importExportTask.getTask(taskId);
33
-
34
27
  if (!task) {
35
28
  return {
36
29
  data: null,
@@ -39,13 +32,12 @@ const templatesHandler = async (payload, context) => {
39
32
  }
40
33
  };
41
34
  }
42
-
43
35
  const {
44
36
  exportTemplatesDataKey
45
- } = task.input; // Get all files (zip) from given key
37
+ } = task.input;
46
38
 
39
+ // Get all files (zip) from given key
47
40
  const listObjectResponse = await _s3Stream.s3Stream.listObject(exportTemplatesDataKey);
48
-
49
41
  if (!listObjectResponse.Contents) {
50
42
  return {
51
43
  data: null,
@@ -54,33 +46,36 @@ const templatesHandler = async (payload, context) => {
54
46
  }
55
47
  };
56
48
  }
49
+ const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportTemplatesDataKey).map(file => file.Key).filter(Boolean);
57
50
 
58
- const zipFileKeys = listObjectResponse.Contents.filter(file => file.Key !== exportTemplatesDataKey).map(file => file.Key).filter(Boolean); // Prepare zip of all zips
59
-
60
- const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_TEMPLATE_EXPORT.zip"); // Upload
51
+ // Prepare zip of all zips
52
+ const zipOfZip = new _zipper.ZipOfZip(zipFileKeys, "WEBINY_TEMPLATE_EXPORT.zip");
61
53
 
54
+ // Upload
62
55
  const templateExportUpload = await zipOfZip.process();
63
- log(`Done uploading... File is located at ${templateExportUpload.Location} `); // Update task status and save export templates data key
56
+ log(`Done uploading... File is located at ${templateExportUpload.Location} `);
64
57
 
58
+ // Update task status and save export templates data key
65
59
  await pageBuilder.importExportTask.updateTask(taskId, {
66
60
  status: _types.ImportExportTaskStatus.COMPLETED,
67
61
  data: {
68
62
  message: `Finish uploading template export.`,
69
63
  key: templateExportUpload.Key,
70
- url: _s3Stream.s3Stream.getPresignedUrl(templateExportUpload.Key)
64
+ url: await _s3Stream.s3Stream.getPresignedUrl(templateExportUpload.Key)
71
65
  }
72
- }); // Remove individual zip files from storage
66
+ });
73
67
 
68
+ // Remove individual zip files from storage
74
69
  const deleteFilePromises = zipFileKeys.map(key => _s3Stream.s3Stream.deleteObject(key));
75
70
  await Promise.all(deleteFilePromises);
76
71
  log(`Successfully deleted ${deleteFilePromises.length} zip files.`);
77
72
  } catch (e) {
78
73
  log("[EXPORT_TEMPLATES_COMBINE] Error => ", e.message);
74
+
79
75
  /**
80
76
  * In case of error, we'll update the task status to "failed",
81
77
  * so that, client can show notify the user appropriately.
82
78
  */
83
-
84
79
  await pageBuilder.importExportTask.updateTask(taskId, {
85
80
  status: _types.ImportExportTaskStatus.FAILED,
86
81
  error: {
@@ -96,11 +91,11 @@ const templatesHandler = async (payload, context) => {
96
91
  }
97
92
  };
98
93
  }
99
-
100
94
  return {
101
95
  data: "",
102
96
  error: null
103
97
  };
104
98
  };
99
+ exports.templatesHandler = templatesHandler;
105
100
 
106
- exports.templatesHandler = templatesHandler;
101
+ //# sourceMappingURL=templatesHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["templatesHandler","payload","context","log","console","pageBuilder","taskId","identity","mockSecurity","task","importExportTask","getTask","data","error","message","exportTemplatesDataKey","input","listObjectResponse","s3Stream","listObject","Contents","zipFileKeys","filter","file","Key","map","Boolean","zipOfZip","ZipOfZip","templateExportUpload","process","Location","updateTask","status","ImportExportTaskStatus","COMPLETED","key","url","getPresignedUrl","deleteFilePromises","deleteObject","Promise","all","length","e","FAILED","name","code"],"sources":["templatesHandler.ts"],"sourcesContent":["import { ImportExportTaskStatus, PbImportExportContext } from \"~/types\";\nimport { s3Stream } from \"../s3Stream\";\nimport { ZipOfZip } from \"../zipper\";\nimport { mockSecurity } from \"~/mockSecurity\";\nimport { Payload, Response } from \"~/export/combine\";\n\n/**\n * Handles the export templates combine workflow.\n */\nexport const templatesHandler = async (\n payload: Payload,\n context: PbImportExportContext\n): Promise<Response> => {\n const log = console.log;\n\n log(\"RUNNING Export Templates Combine Handler\");\n const { pageBuilder } = context;\n const { taskId, identity } = payload;\n\n mockSecurity(identity, context);\n\n try {\n const task = await pageBuilder.importExportTask.getTask(taskId);\n if (!task) {\n return {\n data: null,\n error: {\n message: `There is no task with ID \"${taskId}\".`\n }\n };\n }\n\n const { exportTemplatesDataKey } = task.input;\n\n // Get all files (zip) from given key\n const listObjectResponse = await s3Stream.listObject(exportTemplatesDataKey);\n if (!listObjectResponse.Contents) {\n return {\n data: null,\n error: {\n message: \"There is no Contents defined on S3 Stream while combining templates.\"\n }\n };\n }\n\n const zipFileKeys = listObjectResponse.Contents.filter(\n file => file.Key !== exportTemplatesDataKey\n )\n .map(file => file.Key)\n .filter(Boolean) as string[];\n\n // Prepare zip of all zips\n const zipOfZip = new ZipOfZip(zipFileKeys, \"WEBINY_TEMPLATE_EXPORT.zip\");\n\n // Upload\n const templateExportUpload = await zipOfZip.process();\n log(`Done uploading... File is located at ${templateExportUpload.Location} `);\n\n // Update task status and save export templates data key\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.COMPLETED,\n data: {\n message: `Finish uploading template export.`,\n key: templateExportUpload.Key,\n url: s3Stream.getPresignedUrl(templateExportUpload.Key)\n }\n });\n\n // Remove individual zip files from storage\n const deleteFilePromises = zipFileKeys.map(key => s3Stream.deleteObject(key));\n await Promise.all(deleteFilePromises);\n log(`Successfully deleted ${deleteFilePromises.length} zip files.`);\n } catch (e) {\n log(\"[EXPORT_TEMPLATES_COMBINE] Error => \", e.message);\n\n /**\n * In case of error, we'll update the task status to \"failed\",\n * so that, client can show notify the user appropriately.\n */\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.FAILED,\n error: {\n name: e.name,\n message: e.message,\n code: \"EXPORT_FAILED\"\n }\n });\n\n return {\n data: null,\n error: {\n message: e.message\n }\n };\n }\n return {\n data: \"\",\n error: null\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_types","require","_s3Stream","_zipper","_mockSecurity","templatesHandler","payload","context","log","console","pageBuilder","taskId","identity","mockSecurity","task","importExportTask","getTask","data","error","message","exportTemplatesDataKey","input","listObjectResponse","s3Stream","listObject","Contents","zipFileKeys","filter","file","Key","map","Boolean","zipOfZip","ZipOfZip","templateExportUpload","process","Location","updateTask","status","ImportExportTaskStatus","COMPLETED","key","url","getPresignedUrl","deleteFilePromises","deleteObject","Promise","all","length","e","FAILED","name","code","exports"],"sources":["templatesHandler.ts"],"sourcesContent":["import type { PbImportExportContext } from \"~/types\";\nimport { ImportExportTaskStatus } from \"~/types\";\nimport { s3Stream } from \"../s3Stream\";\nimport { ZipOfZip } from \"../zipper\";\nimport { mockSecurity } from \"~/mockSecurity\";\nimport type { Payload, Response } from \"~/export/combine\";\n\n/**\n * Handles the export templates combine workflow.\n */\nexport const templatesHandler = async (\n payload: Payload,\n context: PbImportExportContext\n): Promise<Response> => {\n const log = console.log;\n\n log(\"RUNNING Export Templates Combine Handler\");\n const { pageBuilder } = context;\n const { taskId, identity } = payload;\n\n mockSecurity(identity, context);\n\n try {\n const task = await pageBuilder.importExportTask.getTask(taskId);\n if (!task) {\n return {\n data: null,\n error: {\n message: `There is no task with ID \"${taskId}\".`\n }\n };\n }\n\n const { exportTemplatesDataKey } = task.input;\n\n // Get all files (zip) from given key\n const listObjectResponse = await s3Stream.listObject(exportTemplatesDataKey);\n if (!listObjectResponse.Contents) {\n return {\n data: null,\n error: {\n message: \"There is no Contents defined on S3 Stream while combining templates.\"\n }\n };\n }\n\n const zipFileKeys = listObjectResponse.Contents.filter(\n file => file.Key !== exportTemplatesDataKey\n )\n .map(file => file.Key)\n .filter(Boolean) as string[];\n\n // Prepare zip of all zips\n const zipOfZip = new ZipOfZip(zipFileKeys, \"WEBINY_TEMPLATE_EXPORT.zip\");\n\n // Upload\n const templateExportUpload = await zipOfZip.process();\n log(`Done uploading... File is located at ${templateExportUpload.Location} `);\n\n // Update task status and save export templates data key\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.COMPLETED,\n data: {\n message: `Finish uploading template export.`,\n key: templateExportUpload.Key,\n url: await s3Stream.getPresignedUrl(templateExportUpload.Key)\n }\n });\n\n // Remove individual zip files from storage\n const deleteFilePromises = zipFileKeys.map(key => s3Stream.deleteObject(key));\n await Promise.all(deleteFilePromises);\n log(`Successfully deleted ${deleteFilePromises.length} zip files.`);\n } catch (e) {\n log(\"[EXPORT_TEMPLATES_COMBINE] Error => \", e.message);\n\n /**\n * In case of error, we'll update the task status to \"failed\",\n * so that, client can show notify the user appropriately.\n */\n await pageBuilder.importExportTask.updateTask(taskId, {\n status: ImportExportTaskStatus.FAILED,\n error: {\n name: e.name,\n message: e.message,\n code: \"EXPORT_FAILED\"\n }\n });\n\n return {\n data: null,\n error: {\n message: e.message\n }\n };\n }\n return {\n data: \"\",\n error: null\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ import type { IExportPagesCleanupTaskParams } from "./types";
2
+ import type { ITaskResponseResult } from "@webiny/tasks";
3
+ export declare class ExportPagesCleanup {
4
+ execute(params: IExportPagesCleanupTaskParams): Promise<ITaskResponseResult>;
5
+ }