@webiny/api-page-builder-import-export 0.0.0-unstable.97a151f74d → 0.0.0-unstable.99666aeb00

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 (186) hide show
  1. package/client.d.ts +2 -2
  2. package/client.js +2 -6
  3. package/client.js.map +1 -1
  4. package/export/combine/blocksHandler.d.ts +6 -0
  5. package/export/combine/blocksHandler.js +99 -0
  6. package/export/combine/blocksHandler.js.map +1 -0
  7. package/export/combine/formsHandler.d.ts +6 -0
  8. package/export/combine/formsHandler.js +99 -0
  9. package/export/combine/formsHandler.js.map +1 -0
  10. package/{exportPages → export}/combine/index.d.ts +3 -2
  11. package/export/combine/index.js +42 -0
  12. package/export/combine/index.js.map +1 -0
  13. package/export/combine/pagesHandler.d.ts +6 -0
  14. package/export/combine/pagesHandler.js +99 -0
  15. package/export/combine/pagesHandler.js.map +1 -0
  16. package/export/combine/templatesHandler.d.ts +6 -0
  17. package/export/combine/templatesHandler.js +99 -0
  18. package/export/combine/templatesHandler.js.map +1 -0
  19. package/export/process/blocksHandler.d.ts +6 -0
  20. package/export/process/blocksHandler.js +162 -0
  21. package/export/process/blocksHandler.js.map +1 -0
  22. package/export/process/formsHandler.d.ts +6 -0
  23. package/export/process/formsHandler.js +187 -0
  24. package/export/process/formsHandler.js.map +1 -0
  25. package/{exportPages → export}/process/index.d.ts +4 -6
  26. package/export/process/index.js +39 -0
  27. package/export/process/index.js.map +1 -0
  28. package/export/process/pagesHandler.d.ts +6 -0
  29. package/export/process/pagesHandler.js +189 -0
  30. package/export/process/pagesHandler.js.map +1 -0
  31. package/export/process/templatesHandler.d.ts +6 -0
  32. package/export/process/templatesHandler.js +166 -0
  33. package/export/process/templatesHandler.js.map +1 -0
  34. package/{exportPages → export}/s3Stream.d.ts +5 -2
  35. package/{exportPages → export}/s3Stream.js +1 -20
  36. package/export/s3Stream.js.map +1 -0
  37. package/export/utils.d.ts +29 -0
  38. package/export/utils.js +194 -0
  39. package/export/utils.js.map +1 -0
  40. package/{exportPages → export}/zipper.d.ts +6 -5
  41. package/{exportPages → export}/zipper.js +38 -49
  42. package/export/zipper.js.map +1 -0
  43. package/graphql/crud/blocks.crud.d.ts +4 -0
  44. package/graphql/crud/blocks.crud.js +140 -0
  45. package/graphql/crud/blocks.crud.js.map +1 -0
  46. package/graphql/crud/forms.crud.d.ts +4 -0
  47. package/graphql/crud/forms.crud.js +134 -0
  48. package/graphql/crud/forms.crud.js.map +1 -0
  49. package/graphql/crud/importExportTasks.crud.d.ts +5 -0
  50. package/graphql/crud/{pageImportExportTasks.crud.js → importExportTasks.crud.js} +92 -136
  51. package/graphql/crud/importExportTasks.crud.js.map +1 -0
  52. package/graphql/crud/pages.crud.d.ts +2 -2
  53. package/graphql/crud/pages.crud.js +47 -57
  54. package/graphql/crud/pages.crud.js.map +1 -1
  55. package/graphql/crud/templates.crud.d.ts +4 -0
  56. package/graphql/crud/templates.crud.js +128 -0
  57. package/graphql/crud/templates.crud.js.map +1 -0
  58. package/graphql/crud.d.ts +2 -2
  59. package/graphql/crud.js +5 -7
  60. package/graphql/crud.js.map +1 -1
  61. package/graphql/graphql/blocks.gql.d.ts +4 -0
  62. package/graphql/graphql/blocks.gql.js +52 -0
  63. package/graphql/graphql/blocks.gql.js.map +1 -0
  64. package/graphql/graphql/forms.gql.d.ts +4 -0
  65. package/graphql/graphql/forms.gql.js +60 -0
  66. package/graphql/graphql/forms.gql.js.map +1 -0
  67. package/graphql/graphql/importExportTasks.gql.d.ts +4 -0
  68. package/graphql/graphql/{pageImportExportTasks.gql.js → importExportTasks.gql.js} +18 -23
  69. package/graphql/graphql/importExportTasks.gql.js.map +1 -0
  70. package/graphql/graphql/pages.gql.d.ts +2 -2
  71. package/graphql/graphql/pages.gql.js +4 -15
  72. package/graphql/graphql/pages.gql.js.map +1 -1
  73. package/graphql/graphql/templates.gql.d.ts +4 -0
  74. package/graphql/graphql/templates.gql.js +52 -0
  75. package/graphql/graphql/templates.gql.js.map +1 -0
  76. package/graphql/graphql/utils/resolve.d.ts +1 -1
  77. package/graphql/graphql/utils/resolve.js +0 -3
  78. package/graphql/graphql/utils/resolve.js.map +1 -1
  79. package/graphql/graphql.js +5 -6
  80. package/graphql/graphql.js.map +1 -1
  81. package/graphql/index.d.ts +2 -2
  82. package/graphql/index.js +0 -5
  83. package/graphql/index.js.map +1 -1
  84. package/graphql/types.d.ts +83 -23
  85. package/graphql/types.js.map +1 -1
  86. package/import/constants.d.ts +3 -0
  87. package/import/constants.js +14 -0
  88. package/import/constants.js.map +1 -0
  89. package/import/create/blocksHandler.d.ts +3 -0
  90. package/import/create/blocksHandler.js +101 -0
  91. package/import/create/blocksHandler.js.map +1 -0
  92. package/import/create/formsHandler.d.ts +3 -0
  93. package/import/create/formsHandler.js +103 -0
  94. package/import/create/formsHandler.js.map +1 -0
  95. package/{importPages → import}/create/index.d.ts +7 -5
  96. package/import/create/index.js +42 -0
  97. package/import/create/index.js.map +1 -0
  98. package/import/create/pagesHandler.d.ts +3 -0
  99. package/import/create/pagesHandler.js +103 -0
  100. package/import/create/pagesHandler.js.map +1 -0
  101. package/import/create/templatesHandler.d.ts +3 -0
  102. package/import/create/templatesHandler.js +99 -0
  103. package/import/create/templatesHandler.js.map +1 -0
  104. package/import/process/blocks/blocksHandler.d.ts +3 -0
  105. package/import/process/blocks/blocksHandler.js +169 -0
  106. package/import/process/blocks/blocksHandler.js.map +1 -0
  107. package/import/process/blocks/importBlock.d.ts +11 -0
  108. package/import/process/blocks/importBlock.js +92 -0
  109. package/import/process/blocks/importBlock.js.map +1 -0
  110. package/import/process/forms/formsHandler.d.ts +3 -0
  111. package/import/process/forms/formsHandler.js +176 -0
  112. package/import/process/forms/formsHandler.js.map +1 -0
  113. package/import/process/forms/importForm.d.ts +9 -0
  114. package/import/process/forms/importForm.js +43 -0
  115. package/import/process/forms/importForm.js.map +1 -0
  116. package/{importPages → import}/process/index.d.ts +5 -3
  117. package/import/process/index.js +39 -0
  118. package/import/process/index.js.map +1 -0
  119. package/import/process/pages/importPage.d.ts +11 -0
  120. package/import/process/pages/importPage.js +92 -0
  121. package/import/process/pages/importPage.js.map +1 -0
  122. package/import/process/pages/pagesHandler.d.ts +3 -0
  123. package/import/process/pages/pagesHandler.js +183 -0
  124. package/import/process/pages/pagesHandler.js.map +1 -0
  125. package/import/process/templates/importTemplate.d.ts +11 -0
  126. package/import/process/templates/importTemplate.js +66 -0
  127. package/import/process/templates/importTemplate.js.map +1 -0
  128. package/import/process/templates/templatesHandler.d.ts +3 -0
  129. package/import/process/templates/templatesHandler.js +170 -0
  130. package/import/process/templates/templatesHandler.js.map +1 -0
  131. package/import/utils/deleteS3Folder.d.ts +1 -0
  132. package/import/utils/deleteS3Folder.js +19 -0
  133. package/import/utils/deleteS3Folder.js.map +1 -0
  134. package/import/utils/extractAndUploadZipFileContents.d.ts +7 -0
  135. package/import/utils/extractAndUploadZipFileContents.js +122 -0
  136. package/import/utils/extractAndUploadZipFileContents.js.map +1 -0
  137. package/import/utils/extractZipAndUploadToS3.d.ts +2 -0
  138. package/import/utils/extractZipAndUploadToS3.js +98 -0
  139. package/import/utils/extractZipAndUploadToS3.js.map +1 -0
  140. package/import/utils/getFileNameWithoutExt.d.ts +1 -0
  141. package/import/utils/getFileNameWithoutExt.js +11 -0
  142. package/import/utils/getFileNameWithoutExt.js.map +1 -0
  143. package/import/utils/index.d.ts +9 -0
  144. package/import/utils/index.js +104 -0
  145. package/import/utils/index.js.map +1 -0
  146. package/import/utils/initialStats.d.ts +7 -0
  147. package/import/utils/initialStats.js +16 -0
  148. package/import/utils/initialStats.js.map +1 -0
  149. package/import/utils/prepareDataDirMap.d.ts +6 -0
  150. package/import/utils/prepareDataDirMap.js +29 -0
  151. package/import/utils/prepareDataDirMap.js.map +1 -0
  152. package/import/utils/updateFilesInData.d.ts +8 -0
  153. package/import/utils/updateFilesInData.js +48 -0
  154. package/import/utils/updateFilesInData.js.map +1 -0
  155. package/import/utils/uploadAssets.d.ts +10 -0
  156. package/import/utils/uploadAssets.js +49 -0
  157. package/import/utils/uploadAssets.js.map +1 -0
  158. package/import/utils/uploadFilesFromS3.d.ts +3 -0
  159. package/import/utils/uploadFilesFromS3.js +19 -0
  160. package/import/utils/uploadFilesFromS3.js.map +1 -0
  161. package/mockSecurity.js +0 -3
  162. package/mockSecurity.js.map +1 -1
  163. package/package.json +34 -37
  164. package/types.d.ts +83 -65
  165. package/types.js +17 -22
  166. package/types.js.map +1 -1
  167. package/exportPages/combine/index.js +0 -114
  168. package/exportPages/combine/index.js.map +0 -1
  169. package/exportPages/process/index.js +0 -208
  170. package/exportPages/process/index.js.map +0 -1
  171. package/exportPages/s3Stream.js.map +0 -1
  172. package/exportPages/utils.d.ts +0 -13
  173. package/exportPages/utils.js +0 -113
  174. package/exportPages/utils.js.map +0 -1
  175. package/exportPages/zipper.js.map +0 -1
  176. package/graphql/crud/pageImportExportTasks.crud.d.ts +0 -5
  177. package/graphql/crud/pageImportExportTasks.crud.js.map +0 -1
  178. package/graphql/graphql/pageImportExportTasks.gql.d.ts +0 -4
  179. package/graphql/graphql/pageImportExportTasks.gql.js.map +0 -1
  180. package/importPages/create/index.js +0 -118
  181. package/importPages/create/index.js.map +0 -1
  182. package/importPages/process/index.js +0 -185
  183. package/importPages/process/index.js.map +0 -1
  184. package/importPages/utils.d.ts +0 -50
  185. package/importPages/utils.js +0 -570
  186. package/importPages/utils.js.map +0 -1
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _api = require("@webiny/api");
10
+ var _types = require("../../types");
11
+ var _client = require("../../client");
12
+ var _utils = require("../../import/utils");
13
+ var _utils2 = require("../../export/utils");
14
+ var _utils3 = require("@webiny/utils");
15
+ var _FormsPermissions = require("@webiny/api-form-builder/plugins/crud/permissions/FormsPermissions");
16
+ const EXPORT_FORMS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER;
17
+ const IMPORT_FORMS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER;
18
+ var _default = new _api.ContextPlugin(context => {
19
+ const formsPermissions = new _FormsPermissions.FormsPermissions({
20
+ getPermissions: () => context.security.getPermissions("fb.form"),
21
+ getIdentity: context.security.getIdentity,
22
+ fullAccessPermissionName: "pb.*"
23
+ });
24
+ context.waitFor("formBuilder", () => {
25
+ const importExportCrud = {
26
+ async importForms({
27
+ zipFileUrl
28
+ }) {
29
+ await formsPermissions.ensure({
30
+ rwd: "w"
31
+ });
32
+
33
+ // Create a task for import form
34
+ const task = await context.pageBuilder.importExportTask.createTask({
35
+ status: _types.ImportExportTaskStatus.PENDING,
36
+ input: {
37
+ zipFileUrl
38
+ }
39
+ });
40
+ /**
41
+ * Import Forms
42
+ * ImportForms
43
+ * importForms
44
+ */
45
+ await (0, _client.invokeHandlerClient)({
46
+ context,
47
+ name: IMPORT_FORMS_CREATE_HANDLER,
48
+ payload: {
49
+ zipFileUrl,
50
+ task,
51
+ type: "form",
52
+ identity: context.security.getIdentity()
53
+ },
54
+ description: "Import Forms - create"
55
+ });
56
+ return {
57
+ task
58
+ };
59
+ },
60
+ async exportForms({
61
+ ids: initialFormIds,
62
+ revisionType
63
+ }) {
64
+ await formsPermissions.ensure({
65
+ rwd: "w"
66
+ });
67
+ let formIds = initialFormIds || [];
68
+ // If no ids are provided then it means we want to export all forms
69
+ if (!initialFormIds || Array.isArray(initialFormIds) && initialFormIds.length === 0) {
70
+ formIds = [];
71
+ const forms = await context.formBuilder.listForms();
72
+
73
+ // Save form ids
74
+ forms.forEach(form => formIds.push(form.id));
75
+ }
76
+ if (formIds.length === 0) {
77
+ throw new _error.default("Cannot export forms - no forms found for provided inputs.", "EMPTY_EXPORT_NO_FORMS_FOUND");
78
+ }
79
+
80
+ // Create the main task for form export.
81
+ const task = await context.pageBuilder.importExportTask.createTask({
82
+ status: _types.ImportExportTaskStatus.PENDING
83
+ });
84
+ const exportFormsDataKey = `${_utils2.EXPORT_FORMS_FOLDER_KEY}/${task.id}`;
85
+ // For each form create a sub task and invoke the process handler.
86
+ for (let i = 0; i < formIds.length; i++) {
87
+ const formId = formIds[i];
88
+ // Create sub task.
89
+ await context.pageBuilder.importExportTask.createSubTask(task.id, (0, _utils3.zeroPad)(i + 1, 5), {
90
+ status: _types.ImportExportTaskStatus.PENDING,
91
+ input: {
92
+ formId,
93
+ exportFormsDataKey,
94
+ revisionType
95
+ }
96
+ });
97
+ }
98
+ // Update main task status.
99
+ await context.pageBuilder.importExportTask.updateTask(task.id, {
100
+ status: _types.ImportExportTaskStatus.PROCESSING,
101
+ stats: (0, _utils.initialStats)(formIds.length),
102
+ input: {
103
+ exportFormsDataKey,
104
+ revisionType
105
+ }
106
+ });
107
+
108
+ /**
109
+ * Export Forms
110
+ * ExportForms
111
+ * exportForms
112
+ */
113
+ // Invoke handler.
114
+ await (0, _client.invokeHandlerClient)({
115
+ context,
116
+ name: EXPORT_FORMS_PROCESS_HANDLER,
117
+ payload: {
118
+ taskId: task.id,
119
+ subTaskIndex: 1,
120
+ type: "form",
121
+ identity: context.security.getIdentity()
122
+ },
123
+ description: "Export forms - process"
124
+ });
125
+ return {
126
+ task
127
+ };
128
+ }
129
+ };
130
+ // Modify context
131
+ context.formBuilder.forms = importExportCrud;
132
+ });
133
+ });
134
+ exports.default = _default;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["EXPORT_FORMS_PROCESS_HANDLER","process","env","EXPORT_PROCESS_HANDLER","IMPORT_FORMS_CREATE_HANDLER","IMPORT_CREATE_HANDLER","ContextPlugin","context","formsPermissions","FormsPermissions","getPermissions","security","getIdentity","fullAccessPermissionName","waitFor","importExportCrud","importForms","zipFileUrl","ensure","rwd","task","pageBuilder","importExportTask","createTask","status","ImportExportTaskStatus","PENDING","input","invokeHandlerClient","name","payload","type","identity","description","exportForms","ids","initialFormIds","revisionType","formIds","Array","isArray","length","forms","formBuilder","listForms","forEach","form","push","id","WebinyError","exportFormsDataKey","EXPORT_FORMS_FOLDER_KEY","i","formId","createSubTask","zeroPad","updateTask","PROCESSING","stats","initialStats","taskId","subTaskIndex"],"sources":["forms.crud.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport { ContextPlugin } from \"@webiny/api\";\nimport { ImportExportTaskStatus, FormsImportExportCrud, PbImportExportContext } from \"~/types\";\nimport { invokeHandlerClient } from \"~/client\";\nimport { Payload as CreateHandlerPayload } from \"~/import/create\";\nimport { initialStats } from \"~/import/utils\";\nimport { Payload as ExportFormsProcessHandlerPayload } from \"~/export/process\";\nimport { EXPORT_FORMS_FOLDER_KEY } from \"~/export/utils\";\nimport { zeroPad } from \"@webiny/utils\";\nimport { FormsPermissions } from \"@webiny/api-form-builder/plugins/crud/permissions/FormsPermissions\";\n\nconst EXPORT_FORMS_PROCESS_HANDLER = process.env.EXPORT_PROCESS_HANDLER as string;\nconst IMPORT_FORMS_CREATE_HANDLER = process.env.IMPORT_CREATE_HANDLER as string;\n\nexport default new ContextPlugin<PbImportExportContext>(context => {\n const formsPermissions = new FormsPermissions({\n getPermissions: () => context.security.getPermissions(\"fb.form\"),\n getIdentity: context.security.getIdentity,\n fullAccessPermissionName: \"pb.*\"\n });\n\n context.waitFor(\"formBuilder\", () => {\n const importExportCrud: FormsImportExportCrud = {\n async importForms({ zipFileUrl }) {\n await formsPermissions.ensure({ rwd: \"w\" });\n\n // Create a task for import form\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING,\n input: {\n zipFileUrl\n }\n });\n /**\n * Import Forms\n * ImportForms\n * importForms\n */\n await invokeHandlerClient<CreateHandlerPayload>({\n context,\n name: IMPORT_FORMS_CREATE_HANDLER,\n payload: {\n zipFileUrl,\n task,\n type: \"form\",\n identity: context.security.getIdentity()\n },\n description: \"Import Forms - create\"\n });\n\n return {\n task\n };\n },\n\n async exportForms({ ids: initialFormIds, revisionType }) {\n await formsPermissions.ensure({ rwd: \"w\" });\n let formIds: string[] = initialFormIds || [];\n // If no ids are provided then it means we want to export all forms\n if (\n !initialFormIds ||\n (Array.isArray(initialFormIds) && initialFormIds.length === 0)\n ) {\n formIds = [];\n\n const forms = await context.formBuilder.listForms();\n\n // Save form ids\n forms.forEach(form => formIds.push(form.id));\n }\n\n if (formIds.length === 0) {\n throw new WebinyError(\n \"Cannot export forms - no forms found for provided inputs.\",\n \"EMPTY_EXPORT_NO_FORMS_FOUND\"\n );\n }\n\n // Create the main task for form export.\n const task = await context.pageBuilder.importExportTask.createTask({\n status: ImportExportTaskStatus.PENDING\n });\n const exportFormsDataKey = `${EXPORT_FORMS_FOLDER_KEY}/${task.id}`;\n // For each form create a sub task and invoke the process handler.\n for (let i = 0; i < formIds.length; i++) {\n const formId = formIds[i];\n // Create sub task.\n await context.pageBuilder.importExportTask.createSubTask(\n task.id,\n zeroPad(i + 1, 5),\n {\n status: ImportExportTaskStatus.PENDING,\n input: {\n formId,\n exportFormsDataKey,\n revisionType\n }\n }\n );\n }\n // Update main task status.\n await context.pageBuilder.importExportTask.updateTask(task.id, {\n status: ImportExportTaskStatus.PROCESSING,\n stats: initialStats(formIds.length),\n input: {\n exportFormsDataKey,\n revisionType\n }\n });\n\n /**\n * Export Forms\n * ExportForms\n * exportForms\n */\n // Invoke handler.\n await invokeHandlerClient<ExportFormsProcessHandlerPayload>({\n context,\n name: EXPORT_FORMS_PROCESS_HANDLER,\n payload: {\n taskId: task.id,\n subTaskIndex: 1,\n type: \"form\",\n identity: context.security.getIdentity()\n },\n description: \"Export forms - process\"\n });\n\n return { task };\n }\n };\n // Modify context\n context.formBuilder.forms = importExportCrud;\n });\n});\n"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { ContextPlugin } from "@webiny/api";
2
+ import { ImportExportPluginsParams } from "../../types";
3
+ import { PbImportExportContext } from "../types";
4
+ declare const _default: ({ storageOperations }: ImportExportPluginsParams) => ContextPlugin<PbImportExportContext>;
5
+ export default _default;
@@ -1,39 +1,20 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
11
-
12
- var _mdbid = _interopRequireDefault(require("mdbid"));
13
-
9
+ var _utils = require("@webiny/utils");
14
10
  var _fields = require("@commodo/fields");
15
-
16
11
  var _commodoFieldsObject = require("commodo-fields-object");
17
-
18
12
  var _validation = require("@webiny/validation");
19
-
20
13
  var _api = require("@webiny/api");
21
-
22
- var _checkBasePermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkBasePermissions"));
23
-
24
- var _checkOwnPermissions = _interopRequireDefault(require("@webiny/api-page-builder/graphql/crud/utils/checkOwnPermissions"));
25
-
26
14
  var _handlerGraphql = require("@webiny/handler-graphql");
27
-
28
15
  var _types = require("../../types");
29
-
30
16
  var _error = _interopRequireDefault(require("@webiny/error"));
31
-
32
- /**
33
- * Package mdbid does not have types.
34
- */
35
- // @ts-ignore
36
-
17
+ var _PagesPermissions = require("@webiny/api-page-builder/graphql/crud/permissions/PagesPermissions");
37
18
  /**
38
19
  * Package @commodo/fields does not have types.
39
20
  */
@@ -43,7 +24,8 @@ var _error = _interopRequireDefault(require("@webiny/error"));
43
24
  * Package commodo-fields-object does not have types.
44
25
  */
45
26
  // @ts-ignore
46
- const validStatus = `${_types.PageImportExportTaskStatus.PENDING}:${_types.PageImportExportTaskStatus.PROCESSING}:${_types.PageImportExportTaskStatus.COMPLETED}:${_types.PageImportExportTaskStatus.FAILED}`;
27
+
28
+ const validStatus = `${_types.ImportExportTaskStatus.PENDING}:${_types.ImportExportTaskStatus.PROCESSING}:${_types.ImportExportTaskStatus.COMPLETED}:${_types.ImportExportTaskStatus.FAILED}`;
47
29
  const CreateDataModel = (0, _fields.withFields)({
48
30
  status: (0, _fields.string)({
49
31
  validation: _validation.validation.create(`required,in:${validStatus}`)
@@ -62,8 +44,6 @@ const UpdateDataModel = (0, _fields.withFields)({
62
44
  stats: (0, _commodoFieldsObject.object)(),
63
45
  error: (0, _commodoFieldsObject.object)()
64
46
  })();
65
- const PERMISSION_NAME = "pb.page";
66
-
67
47
  var _default = ({
68
48
  storageOperations
69
49
  }) => new _api.ContextPlugin(async context => {
@@ -71,26 +51,27 @@ var _default = ({
71
51
  * If pageBuilder is not defined on the context, do not continue, but log it.
72
52
  */
73
53
  if (!context.pageBuilder) {
74
- console.log("Missing pageBuilder on context. Skipping Page ImportExportTasks crud.");
54
+ console.log("Missing pageBuilder on context. Skipping ImportExportTasks crud.");
75
55
  return;
76
56
  }
77
-
57
+ const pagesPermissions = new _PagesPermissions.PagesPermissions({
58
+ getPermissions: () => context.security.getPermissions("pb.page"),
59
+ getIdentity: context.security.getIdentity,
60
+ fullAccessPermissionName: "pb.*"
61
+ });
78
62
  const getLocale = () => {
79
63
  const locale = context.i18n.getContentLocale();
80
-
81
64
  if (!locale) {
82
- throw new _error.default("Missing content locale in pageImportExportTasks.crud.ts", "LOCALE_ERROR");
65
+ throw new _error.default("Missing content locale in importExportTasks.crud.ts", "LOCALE_ERROR");
83
66
  }
84
-
85
67
  return locale;
86
- }; // Modify context
87
-
68
+ };
88
69
 
89
- context.pageBuilder.pageImportExportTask = {
70
+ // Modify context
71
+ context.pageBuilder.importExportTask = {
90
72
  storageOperations,
91
-
92
73
  async getTask(id) {
93
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
74
+ await pagesPermissions.ensure({
94
75
  rwd: "r"
95
76
  });
96
77
  const tenant = context.tenancy.getCurrentTenant();
@@ -102,27 +83,24 @@ var _default = ({
102
83
  id
103
84
  }
104
85
  };
105
- let pageImportExportTask = null;
106
-
86
+ let importExportTask = null;
107
87
  try {
108
- pageImportExportTask = await storageOperations.getTask(params);
109
-
110
- if (!pageImportExportTask) {
88
+ importExportTask = await storageOperations.getTask(params);
89
+ if (!importExportTask) {
111
90
  return null;
112
91
  }
113
92
  } catch (ex) {
114
- throw new _error.default(ex.message || "Could not get pageImportExportTask by id.", ex.code || "GET_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
93
+ throw new _error.default(ex.message || "Could not get importExportTask by id.", ex.code || "GET_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
115
94
  params
116
95
  }));
117
96
  }
118
-
119
- const identity = context.security.getIdentity();
120
- (0, _checkOwnPermissions.default)(identity, permission, pageImportExportTask);
121
- return pageImportExportTask;
97
+ await pagesPermissions.ensure({
98
+ owns: importExportTask.createdBy
99
+ });
100
+ return importExportTask;
122
101
  },
123
-
124
102
  async listTasks(params) {
125
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
103
+ await pagesPermissions.ensure({
126
104
  rwd: "r"
127
105
  });
128
106
  const tenant = context.tenancy.getCurrentTenant();
@@ -138,33 +116,32 @@ var _default = ({
138
116
  },
139
117
  sort: Array.isArray(sort) && sort.length > 0 ? sort : ["createdOn_ASC"],
140
118
  limit: limit
141
- }; // If user can only manage own records, let's add that to the listing.
119
+ };
142
120
 
143
- if (permission.own) {
121
+ // If user can only manage own records, let's add that to the listing.
122
+ if (await pagesPermissions.canAccessOnlyOwnRecords) {
144
123
  const identity = context.security.getIdentity();
145
124
  listParams.where.createdBy = identity.id;
146
125
  }
147
-
148
126
  try {
149
127
  const [items] = await storageOperations.listTasks(listParams);
150
128
  return items;
151
129
  } catch (ex) {
152
- throw new _error.default(ex.message || "Could not list all page elements.", ex.code || "LIST_PAGE_ELEMENTS_ERROR", {
130
+ throw new _error.default(ex.message || "Could not list all importExportTask.", ex.code || "LIST_ELEMENTS_ERROR", {
153
131
  params
154
132
  });
155
133
  }
156
134
  },
157
-
158
135
  async createTask(input) {
159
- await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
136
+ await pagesPermissions.ensure({
160
137
  rwd: "w"
161
138
  });
162
139
  const createDataModel = new CreateDataModel().populate(input);
163
140
  await createDataModel.validate();
164
- const id = (0, _mdbid.default)();
141
+ const id = (0, _utils.mdbid)();
165
142
  const identity = context.security.getIdentity();
166
143
  const data = await createDataModel.toJSON();
167
- const pageImportExportTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
144
+ const importExportTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
168
145
  tenant: context.tenancy.getCurrentTenant().id,
169
146
  locale: getLocale().code,
170
147
  id,
@@ -175,110 +152,99 @@ var _default = ({
175
152
  displayName: identity.displayName
176
153
  }
177
154
  });
178
-
179
155
  try {
180
156
  return await storageOperations.createTask({
181
157
  input: data,
182
- task: pageImportExportTask
158
+ task: importExportTask
183
159
  });
184
160
  } catch (ex) {
185
- throw new _error.default(ex.message || "Could not create pageImportExportTask.", ex.code || "CREATE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
186
- pageImportExportTask
161
+ throw new _error.default(ex.message || "Could not create importExportTask.", ex.code || "CREATE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
162
+ importExportTask
187
163
  }));
188
164
  }
189
165
  },
190
-
191
166
  async updateTask(id, input) {
192
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
167
+ await pagesPermissions.ensure({
193
168
  rwd: "w"
194
169
  });
195
- const original = await context.pageBuilder.pageImportExportTask.getTask(id);
196
-
170
+ const original = await context.pageBuilder.importExportTask.getTask(id);
197
171
  if (!original) {
198
- throw new _handlerGraphql.NotFoundError(`PageImportExportTask "${id}" not found.`);
172
+ throw new _handlerGraphql.NotFoundError(`ImportExportTask "${id}" not found.`);
199
173
  }
200
-
201
- const identity = context.security.getIdentity();
202
- (0, _checkOwnPermissions.default)(identity, permission, original);
174
+ await pagesPermissions.ensure({
175
+ owns: original.createdBy
176
+ });
203
177
  const updateDataModel = new UpdateDataModel().populate(input);
204
178
  await updateDataModel.validate();
205
179
  const data = await updateDataModel.toJSON({
206
180
  onlyDirty: true
207
181
  });
208
- const pageImportExportTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), data);
209
-
182
+ const importExportTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), data);
210
183
  try {
211
184
  return await storageOperations.updateTask({
212
185
  input: data,
213
186
  original,
214
- task: pageImportExportTask
187
+ task: importExportTask
215
188
  });
216
189
  } catch (ex) {
217
- throw new _error.default(ex.message || "Could not update pageImportExportTask.", ex.code || "UPDATE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
190
+ throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "UPDATE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
218
191
  original,
219
- pageImportExportTask
192
+ importExportTask
220
193
  }));
221
194
  }
222
195
  },
223
-
224
196
  async deleteTask(id) {
225
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
197
+ await pagesPermissions.ensure({
226
198
  rwd: "d"
227
199
  });
228
- const pageImportExportTask = await context.pageBuilder.pageImportExportTask.getTask(id);
229
-
230
- if (!pageImportExportTask) {
231
- throw new _handlerGraphql.NotFoundError(`PageImportExportTask "${id}" not found.`);
200
+ const importExportTask = await context.pageBuilder.importExportTask.getTask(id);
201
+ if (!importExportTask) {
202
+ throw new _handlerGraphql.NotFoundError(`ImportExportTask "${id}" not found.`);
232
203
  }
233
-
234
- const identity = context.security.getIdentity();
235
- (0, _checkOwnPermissions.default)(identity, permission, pageImportExportTask);
236
-
204
+ await pagesPermissions.ensure({
205
+ owns: importExportTask.createdBy
206
+ });
237
207
  try {
238
208
  return await storageOperations.deleteTask({
239
- task: pageImportExportTask
209
+ task: importExportTask
240
210
  });
241
211
  } catch (ex) {
242
- throw new _error.default(ex.message || "Could not delete pageImportExportTask.", ex.code || "DELETE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
243
- pageImportExportTask
212
+ throw new _error.default(ex.message || "Could not delete importExportTask.", ex.code || "DELETE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
213
+ importExportTask
244
214
  }));
245
215
  }
246
216
  },
247
-
248
217
  async updateStats(id, input) {
249
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
218
+ await pagesPermissions.ensure({
250
219
  rwd: "w"
251
220
  });
252
- const original = await context.pageBuilder.pageImportExportTask.getTask(id);
253
-
221
+ const original = await context.pageBuilder.importExportTask.getTask(id);
254
222
  if (!original) {
255
- throw new _handlerGraphql.NotFoundError(`PageImportExportTask "${id}" not found.`);
223
+ throw new _handlerGraphql.NotFoundError(`ImportExportTask "${id}" not found.`);
256
224
  }
257
-
258
- const identity = context.security.getIdentity();
259
- (0, _checkOwnPermissions.default)(identity, permission, original);
260
-
225
+ await pagesPermissions.ensure({
226
+ owns: original.createdBy
227
+ });
261
228
  try {
262
229
  return await storageOperations.updateTaskStats({
263
230
  input,
264
231
  original
265
232
  });
266
233
  } catch (ex) {
267
- throw new _error.default(ex.message || "Could not update pageImportExportTask.", ex.code || "UPDATE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
234
+ throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "UPDATE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
268
235
  original
269
236
  }));
270
237
  }
271
238
  },
272
-
273
239
  async createSubTask(parent, id, input) {
274
- await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
240
+ await pagesPermissions.ensure({
275
241
  rwd: "w"
276
242
  });
277
243
  const createDataModel = new CreateDataModel().populate(input);
278
244
  await createDataModel.validate();
279
245
  const identity = context.security.getIdentity();
280
246
  const data = await createDataModel.toJSON();
281
- const pageImportExportSubTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
247
+ const importExportSubTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, data), {}, {
282
248
  tenant: context.tenancy.getCurrentTenant().id,
283
249
  locale: getLocale().code,
284
250
  id: id,
@@ -290,55 +256,50 @@ var _default = ({
290
256
  displayName: identity.displayName
291
257
  }
292
258
  });
293
-
294
259
  try {
295
260
  return await storageOperations.createSubTask({
296
261
  input: data,
297
- subTask: pageImportExportSubTask
262
+ subTask: importExportSubTask
298
263
  });
299
264
  } catch (ex) {
300
- throw new _error.default(ex.message || "Could not create pageImportExportSubTask.", ex.code || "CREATE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
301
- pageImportExportSubTask
265
+ throw new _error.default(ex.message || "Could not create importExportSubTask.", ex.code || "CREATE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
266
+ importExportSubTask
302
267
  }));
303
268
  }
304
269
  },
305
-
306
270
  async updateSubTask(parent, subTaskId, input) {
307
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
271
+ await pagesPermissions.ensure({
308
272
  rwd: "w"
309
273
  });
310
- const original = await context.pageBuilder.pageImportExportTask.getSubTask(parent, subTaskId);
311
-
274
+ const original = await context.pageBuilder.importExportTask.getSubTask(parent, subTaskId);
312
275
  if (!original) {
313
- throw new _handlerGraphql.NotFoundError(`PageImportExportTask parent: "${parent}" and id: "${subTaskId}" not found.`);
276
+ throw new _handlerGraphql.NotFoundError(`ImportExportTask parent: "${parent}" and id: "${subTaskId}" not found.`);
314
277
  }
315
-
316
- const identity = context.security.getIdentity();
317
- (0, _checkOwnPermissions.default)(identity, permission, original);
278
+ await pagesPermissions.ensure({
279
+ owns: original.createdBy
280
+ });
318
281
  const updateDataModel = new UpdateDataModel().populate(input);
319
282
  await updateDataModel.validate();
320
283
  const data = await updateDataModel.toJSON({
321
284
  onlyDirty: true
322
- }); // TODO: Merge recursively
323
-
324
- const pageImportExportSubTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), data);
325
-
285
+ });
286
+ // TODO: Merge recursively
287
+ const importExportSubTask = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), data);
326
288
  try {
327
289
  return await storageOperations.updateSubTask({
328
290
  input: data,
329
291
  original,
330
- subTask: pageImportExportSubTask
292
+ subTask: importExportSubTask
331
293
  });
332
294
  } catch (ex) {
333
- throw new _error.default(ex.message || "Could not update pageImportExportSubTask.", ex.code || "UPDATE_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
334
- pageImportExportSubTask,
295
+ throw new _error.default(ex.message || "Could not update importExportSubTask.", ex.code || "UPDATE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
296
+ importExportSubTask,
335
297
  original
336
298
  }));
337
299
  }
338
300
  },
339
-
340
301
  async getSubTask(parent, subTaskId) {
341
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
302
+ await pagesPermissions.ensure({
342
303
  rwd: "r"
343
304
  });
344
305
  const tenant = context.tenancy.getCurrentTenant();
@@ -351,27 +312,24 @@ var _default = ({
351
312
  parent: parent
352
313
  }
353
314
  };
354
- let pageImportExportSubTask = null;
355
-
315
+ let importExportSubTask = null;
356
316
  try {
357
- pageImportExportSubTask = await storageOperations.getSubTask(params);
358
-
359
- if (!pageImportExportSubTask) {
317
+ importExportSubTask = await storageOperations.getSubTask(params);
318
+ if (!importExportSubTask) {
360
319
  return null;
361
320
  }
362
321
  } catch (ex) {
363
- throw new _error.default(ex.message || "Could not get pageImportExportSubTask by id.", ex.code || "GET_PAGE_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
322
+ throw new _error.default(ex.message || "Could not get importExportSubTask by id.", ex.code || "GET_IMPORT_EXPORT_TASK_ERROR", (0, _objectSpread2.default)((0, _objectSpread2.default)({}, ex.data || {}), {}, {
364
323
  params
365
324
  }));
366
325
  }
367
-
368
- const identity = context.security.getIdentity();
369
- (0, _checkOwnPermissions.default)(identity, permission, pageImportExportSubTask);
370
- return pageImportExportSubTask;
326
+ await pagesPermissions.ensure({
327
+ owns: importExportSubTask.createdBy
328
+ });
329
+ return importExportSubTask;
371
330
  },
372
-
373
331
  async listSubTasks(parent, status, limit) {
374
- const permission = await (0, _checkBasePermissions.default)(context, PERMISSION_NAME, {
332
+ await pagesPermissions.ensure({
375
333
  rwd: "r"
376
334
  });
377
335
  const tenant = context.tenancy.getCurrentTenant();
@@ -384,18 +342,18 @@ var _default = ({
384
342
  status
385
343
  },
386
344
  limit
387
- }; // If user can only manage own records, let's add that to the listing.
345
+ };
388
346
 
389
- if (permission.own) {
347
+ // If user can only manage own records, let's add that to the listing.
348
+ if (await pagesPermissions.canAccessOnlyOwnRecords()) {
390
349
  const identity = context.security.getIdentity();
391
350
  listParams.where.createdBy = identity.id;
392
351
  }
393
-
394
352
  try {
395
353
  const [items] = await storageOperations.listSubTasks(listParams);
396
354
  return items;
397
355
  } catch (ex) {
398
- throw new _error.default(ex.message || "Could not list all pageImportExportSubTask.", ex.code || "LIST_PAGE_IMPORT_EXPORT_TASK_ERROR", {
356
+ throw new _error.default(ex.message || "Could not list all importExportSubTask.", ex.code || "LIST_IMPORT_EXPORT_TASK_ERROR", {
399
357
  params: {
400
358
  parent,
401
359
  status,
@@ -404,8 +362,6 @@ var _default = ({
404
362
  });
405
363
  }
406
364
  }
407
-
408
365
  };
409
366
  });
410
-
411
367
  exports.default = _default;