@webiny/api-page-builder-import-export-so-ddb 5.33.5 → 5.34.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/definitions/{pageImportExportTaskEntity.d.ts → importExportTaskEntity.d.ts} +1 -1
- package/definitions/importExportTaskEntity.js +75 -0
- package/definitions/importExportTaskEntity.js.map +1 -0
- package/index.js +22 -26
- package/index.js.map +1 -1
- package/package.json +16 -16
- package/types.d.ts +2 -2
- package/types.js.map +1 -1
- package/definitions/pageImportExportTaskEntity.js +0 -79
- package/definitions/pageImportExportTaskEntity.js.map +0 -1
|
@@ -5,5 +5,5 @@ interface Params {
|
|
|
5
5
|
table: Table;
|
|
6
6
|
attributes?: Attributes;
|
|
7
7
|
}
|
|
8
|
-
export declare const
|
|
8
|
+
export declare const createImportExportTaskEntity: ({ entityName, table, attributes }: Params) => Entity<{}>;
|
|
9
9
|
export {};
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.createImportExportTaskEntity = void 0;
|
|
9
|
+
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
|
+
|
|
12
|
+
var _dynamodbToolbox = require("dynamodb-toolbox");
|
|
13
|
+
|
|
14
|
+
const createImportExportTaskEntity = ({
|
|
15
|
+
entityName,
|
|
16
|
+
table,
|
|
17
|
+
attributes
|
|
18
|
+
}) => {
|
|
19
|
+
return new _dynamodbToolbox.Entity({
|
|
20
|
+
name: entityName,
|
|
21
|
+
table,
|
|
22
|
+
attributes: (0, _objectSpread2.default)({
|
|
23
|
+
PK: {
|
|
24
|
+
partitionKey: true
|
|
25
|
+
},
|
|
26
|
+
SK: {
|
|
27
|
+
sortKey: true
|
|
28
|
+
},
|
|
29
|
+
GSI1_PK: {
|
|
30
|
+
type: "string"
|
|
31
|
+
},
|
|
32
|
+
GSI1_SK: {
|
|
33
|
+
type: "string"
|
|
34
|
+
},
|
|
35
|
+
TYPE: {
|
|
36
|
+
type: "string"
|
|
37
|
+
},
|
|
38
|
+
id: {
|
|
39
|
+
type: "string"
|
|
40
|
+
},
|
|
41
|
+
parent: {
|
|
42
|
+
type: "string"
|
|
43
|
+
},
|
|
44
|
+
status: {
|
|
45
|
+
type: "string"
|
|
46
|
+
},
|
|
47
|
+
data: {
|
|
48
|
+
type: "map"
|
|
49
|
+
},
|
|
50
|
+
input: {
|
|
51
|
+
type: "map"
|
|
52
|
+
},
|
|
53
|
+
stats: {
|
|
54
|
+
type: "map"
|
|
55
|
+
},
|
|
56
|
+
error: {
|
|
57
|
+
type: "map"
|
|
58
|
+
},
|
|
59
|
+
createdOn: {
|
|
60
|
+
type: "string"
|
|
61
|
+
},
|
|
62
|
+
createdBy: {
|
|
63
|
+
type: "map"
|
|
64
|
+
},
|
|
65
|
+
tenant: {
|
|
66
|
+
type: "string"
|
|
67
|
+
},
|
|
68
|
+
locale: {
|
|
69
|
+
type: "string"
|
|
70
|
+
}
|
|
71
|
+
}, attributes)
|
|
72
|
+
});
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
exports.createImportExportTaskEntity = createImportExportTaskEntity;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createImportExportTaskEntity","entityName","table","attributes","Entity","name","PK","partitionKey","SK","sortKey","GSI1_PK","type","GSI1_SK","TYPE","id","parent","status","data","input","stats","error","createdOn","createdBy","tenant","locale"],"sources":["importExportTaskEntity.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface Params {\n entityName: string;\n table: Table;\n attributes?: Attributes;\n}\n\nexport const createImportExportTaskEntity = ({ entityName, table, attributes }: Params) => {\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n TYPE: {\n type: \"string\"\n },\n id: {\n type: \"string\"\n },\n parent: {\n type: \"string\"\n },\n status: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n input: {\n type: \"map\"\n },\n stats: {\n type: \"map\"\n },\n error: {\n type: \"map\"\n },\n createdOn: {\n type: \"string\"\n },\n createdBy: {\n type: \"map\"\n },\n tenant: {\n type: \"string\"\n },\n locale: {\n type: \"string\"\n },\n ...attributes\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;AASO,MAAMA,4BAA4B,GAAG,CAAC;EAAEC,UAAF;EAAcC,KAAd;EAAqBC;AAArB,CAAD,KAA+C;EACvF,OAAO,IAAIC,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdC,KAFc;IAGdC,UAAU;MACNG,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,OAAO,EAAE;QACLC,IAAI,EAAE;MADD,CAPH;MAUNC,OAAO,EAAE;QACLD,IAAI,EAAE;MADD,CAVH;MAaNE,IAAI,EAAE;QACFF,IAAI,EAAE;MADJ,CAbA;MAgBNG,EAAE,EAAE;QACAH,IAAI,EAAE;MADN,CAhBE;MAmBNI,MAAM,EAAE;QACJJ,IAAI,EAAE;MADF,CAnBF;MAsBNK,MAAM,EAAE;QACJL,IAAI,EAAE;MADF,CAtBF;MAyBNM,IAAI,EAAE;QACFN,IAAI,EAAE;MADJ,CAzBA;MA4BNO,KAAK,EAAE;QACHP,IAAI,EAAE;MADH,CA5BD;MA+BNQ,KAAK,EAAE;QACHR,IAAI,EAAE;MADH,CA/BD;MAkCNS,KAAK,EAAE;QACHT,IAAI,EAAE;MADH,CAlCD;MAqCNU,SAAS,EAAE;QACPV,IAAI,EAAE;MADC,CArCL;MAwCNW,SAAS,EAAE;QACPX,IAAI,EAAE;MADC,CAxCL;MA2CNY,MAAM,EAAE;QACJZ,IAAI,EAAE;MADF,CA3CF;MA8CNa,MAAM,EAAE;QACJb,IAAI,EAAE;MADF;IA9CF,GAiDHR,UAjDG;EAHI,CAAX,CAAP;AAuDH,CAxDM"}
|
package/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
4
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", {
|
|
6
6
|
value: true
|
|
7
7
|
});
|
|
8
8
|
exports.createStorageOperations = void 0;
|
|
9
9
|
|
|
10
|
-
var
|
|
10
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
11
11
|
|
|
12
12
|
var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
|
|
13
13
|
|
|
@@ -19,11 +19,7 @@ var _listResponse = require("@webiny/db-dynamodb/utils/listResponse");
|
|
|
19
19
|
|
|
20
20
|
var _table = require("./definitions/table");
|
|
21
21
|
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
25
|
-
|
|
26
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
22
|
+
var _importExportTaskEntity = require("./definitions/importExportTaskEntity");
|
|
27
23
|
|
|
28
24
|
const PARENT_TASK_GSI1_PK = "PB#IE_TASKS";
|
|
29
25
|
|
|
@@ -52,7 +48,7 @@ const createGsiSortKey = (status, id) => {
|
|
|
52
48
|
};
|
|
53
49
|
|
|
54
50
|
const createType = () => {
|
|
55
|
-
return "pb.
|
|
51
|
+
return "pb.importExportTask";
|
|
56
52
|
};
|
|
57
53
|
|
|
58
54
|
const createStorageOperations = params => {
|
|
@@ -65,8 +61,8 @@ const createStorageOperations = params => {
|
|
|
65
61
|
table: tableName,
|
|
66
62
|
documentClient
|
|
67
63
|
});
|
|
68
|
-
const entity = (0,
|
|
69
|
-
entityName: "
|
|
64
|
+
const entity = (0, _importExportTaskEntity.createImportExportTaskEntity)({
|
|
65
|
+
entityName: "ImportExportTask",
|
|
70
66
|
table,
|
|
71
67
|
attributes
|
|
72
68
|
});
|
|
@@ -97,7 +93,7 @@ const createStorageOperations = params => {
|
|
|
97
93
|
|
|
98
94
|
return (0, _cleanup.cleanupItem)(entity, result.Item);
|
|
99
95
|
} catch (ex) {
|
|
100
|
-
throw new _error.default(ex.message || "Could not load
|
|
96
|
+
throw new _error.default(ex.message || "Could not load element by given parameters.", ex.code || "IMPORT_EXPORT_TASK_GET_ERROR", {
|
|
101
97
|
where
|
|
102
98
|
});
|
|
103
99
|
}
|
|
@@ -121,7 +117,7 @@ const createStorageOperations = params => {
|
|
|
121
117
|
try {
|
|
122
118
|
results = await (0, _query.queryAll)(queryAllParams);
|
|
123
119
|
} catch (ex) {
|
|
124
|
-
throw new _error.default(ex.message || "Could not list
|
|
120
|
+
throw new _error.default(ex.message || "Could not list import export tasks by given parameters.", ex.code || "IMPORT_EXPORT_TASKS_LIST_ERROR", {
|
|
125
121
|
partitionKey: queryAllParams.partitionKey,
|
|
126
122
|
options: queryAllParams.options
|
|
127
123
|
});
|
|
@@ -153,14 +149,14 @@ const createStorageOperations = params => {
|
|
|
153
149
|
};
|
|
154
150
|
|
|
155
151
|
try {
|
|
156
|
-
await entity.put(
|
|
152
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, task), {}, {
|
|
157
153
|
TYPE: createType()
|
|
158
154
|
}, keys));
|
|
159
155
|
return task;
|
|
160
156
|
} catch (ex) {
|
|
161
|
-
throw new _error.default(ex.message || "Could not create
|
|
157
|
+
throw new _error.default(ex.message || "Could not create importExportTask.", ex.code || "IMPORT_EXPORT_TASK_CREATE_ERROR", {
|
|
162
158
|
keys,
|
|
163
|
-
|
|
159
|
+
importExportTask: task
|
|
164
160
|
});
|
|
165
161
|
}
|
|
166
162
|
},
|
|
@@ -182,12 +178,12 @@ const createStorageOperations = params => {
|
|
|
182
178
|
};
|
|
183
179
|
|
|
184
180
|
try {
|
|
185
|
-
await entity.put(
|
|
181
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, task), {}, {
|
|
186
182
|
TYPE: createType()
|
|
187
183
|
}, keys));
|
|
188
184
|
return task;
|
|
189
185
|
} catch (ex) {
|
|
190
|
-
throw new _error.default(ex.message || "Could not update
|
|
186
|
+
throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "IMPORT_EXPORT_TASK_UPDATE_ERROR", {
|
|
191
187
|
keys,
|
|
192
188
|
original,
|
|
193
189
|
task: task
|
|
@@ -212,7 +208,7 @@ const createStorageOperations = params => {
|
|
|
212
208
|
await entity.delete(keys);
|
|
213
209
|
return task;
|
|
214
210
|
} catch (ex) {
|
|
215
|
-
throw new _error.default(ex.message || "Could not delete
|
|
211
|
+
throw new _error.default(ex.message || "Could not delete importExportTask.", ex.code || "IMPORT_EXPORT_TASK_DELETE_ERROR", {
|
|
216
212
|
keys,
|
|
217
213
|
task: task
|
|
218
214
|
});
|
|
@@ -239,7 +235,7 @@ const createStorageOperations = params => {
|
|
|
239
235
|
};
|
|
240
236
|
|
|
241
237
|
try {
|
|
242
|
-
await entity.update(
|
|
238
|
+
await entity.update((0, _objectSpread2.default)((0, _objectSpread2.default)({
|
|
243
239
|
TYPE: createType()
|
|
244
240
|
}, keys), {}, {
|
|
245
241
|
stats: {
|
|
@@ -255,7 +251,7 @@ const createStorageOperations = params => {
|
|
|
255
251
|
}));
|
|
256
252
|
return original;
|
|
257
253
|
} catch (ex) {
|
|
258
|
-
throw new _error.default(ex.message || "Could not update
|
|
254
|
+
throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "IMPORT_EXPORT_TASK_UPDATE_ERROR", {
|
|
259
255
|
keys,
|
|
260
256
|
original
|
|
261
257
|
});
|
|
@@ -279,12 +275,12 @@ const createStorageOperations = params => {
|
|
|
279
275
|
};
|
|
280
276
|
|
|
281
277
|
try {
|
|
282
|
-
await entity.put(
|
|
278
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, subTask), {}, {
|
|
283
279
|
TYPE: createType()
|
|
284
280
|
}, keys));
|
|
285
281
|
return subTask;
|
|
286
282
|
} catch (ex) {
|
|
287
|
-
throw new _error.default(ex.message || "Could not create
|
|
283
|
+
throw new _error.default(ex.message || "Could not create importExportSubTask.", ex.code || "CREATE_IMPORT_EXPORT_SUB_TASK_ERROR", {
|
|
288
284
|
keys,
|
|
289
285
|
subTask: subTask
|
|
290
286
|
});
|
|
@@ -309,12 +305,12 @@ const createStorageOperations = params => {
|
|
|
309
305
|
};
|
|
310
306
|
|
|
311
307
|
try {
|
|
312
|
-
await entity.put(
|
|
308
|
+
await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, subTask), {}, {
|
|
313
309
|
TYPE: createType()
|
|
314
310
|
}, keys));
|
|
315
311
|
return subTask;
|
|
316
312
|
} catch (ex) {
|
|
317
|
-
throw new _error.default(ex.message || "Could not update
|
|
313
|
+
throw new _error.default(ex.message || "Could not update importExportSubTask.", ex.code || "UPDATE_IMPORT_EXPORT_SUB_TASK_ERROR", {
|
|
318
314
|
keys,
|
|
319
315
|
original,
|
|
320
316
|
subTask: subTask
|
|
@@ -344,7 +340,7 @@ const createStorageOperations = params => {
|
|
|
344
340
|
|
|
345
341
|
return (0, _cleanup.cleanupItem)(entity, result.Item);
|
|
346
342
|
} catch (ex) {
|
|
347
|
-
throw new _error.default(ex.message || "Could not load
|
|
343
|
+
throw new _error.default(ex.message || "Could not load import export subTask by given parameters.", ex.code || "IMPORT_EXPORT_TASK_GET_ERROR", {
|
|
348
344
|
where
|
|
349
345
|
});
|
|
350
346
|
}
|
|
@@ -379,7 +375,7 @@ const createStorageOperations = params => {
|
|
|
379
375
|
try {
|
|
380
376
|
results = await (0, _query.queryAll)(queryAllParams);
|
|
381
377
|
} catch (ex) {
|
|
382
|
-
throw new _error.default(ex.message || "Could not list
|
|
378
|
+
throw new _error.default(ex.message || "Could not list import export tasks by given parameters.", ex.code || "LIST_IMPORT_EXPORT_SUB_TASKS_ERROR", {
|
|
383
379
|
partitionKey: queryAllParams.partitionKey,
|
|
384
380
|
options: queryAllParams.options
|
|
385
381
|
});
|
package/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["PARENT_TASK_GSI1_PK","createPartitionKey","tenant","locale","id","createSortKey","input","createGsiPartitionKey","createGsiSortKey","status","createType","createStorageOperations","params","table","tableName","documentClient","attributes","createTable","entity","createPageImportExportTaskEntity","entityName","getTable","getEntity","getTask","where","keys","PK","SK","result","get","Item","cleanupItem","ex","WebinyError","message","code","listTasks","limit","queryAllParams","partitionKey","options","beginsWith","index","undefined","results","queryAll","items","map","item","createListResponse","totalCount","length","after","createTask","task","GSI1_PK","GSI1_SK","createdOn","put","TYPE","pageImportExportTask","updateTask","original","deleteTask","delete","updateTaskStats","prevStatus","nextStatus","update","stats","$set","$add","createSubTask","subTask","pkParams","parent","updateSubTask","getSubTask","listSubTasks"],"sources":["index.ts"],"sourcesContent":["import {\n PageImportExportTask,\n PageImportExportTaskStatus,\n PageImportExportTaskStorageOperationsCreateParams,\n PageImportExportTaskStorageOperationsCreateSubTaskParams,\n PageImportExportTaskStorageOperationsDeleteParams,\n PageImportExportTaskStorageOperationsGetParams,\n PageImportExportTaskStorageOperationsGetSubTaskParams,\n PageImportExportTaskStorageOperationsListParams,\n PageImportExportTaskStorageOperationsListResponse,\n PageImportExportTaskStorageOperationsListSubTaskParams,\n PageImportExportTaskStorageOperationsListSubTaskResponse,\n PageImportExportTaskStorageOperationsUpdateParams,\n PageImportExportTaskStorageOperationsUpdateSubTaskParams,\n PageImportExportTaskStorageOperationsUpdateTaskStatsParams\n} from \"@webiny/api-page-builder-import-export/types\";\nimport { cleanupItem } from \"@webiny/db-dynamodb/utils/cleanup\";\nimport WebinyError from \"@webiny/error\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { createListResponse } from \"@webiny/db-dynamodb/utils/listResponse\";\nimport { createTable } from \"~/definitions/table\";\nimport { createPageImportExportTaskEntity } from \"~/definitions/pageImportExportTaskEntity\";\nimport { CreateStorageOperations } from \"./types\";\n\ninterface PartitionKeyOptions {\n tenant: string;\n locale: string;\n id?: string;\n}\n\nconst PARENT_TASK_GSI1_PK = \"PB#IE_TASKS\";\n\nconst createPartitionKey = ({ tenant, locale, id }: PartitionKeyOptions): string => {\n return `T#${tenant}#L#${locale}#PB#IE_TASK#${id}`;\n};\n\nconst createSortKey = (input: string): string => {\n return `SUB#${input}`;\n};\n\nconst createGsiPartitionKey = ({ tenant, locale, id }: PartitionKeyOptions): string => {\n return `T#${tenant}#L#${locale}#PB#IE_TASK#${id}`;\n};\n\nconst createGsiSortKey = (status: PageImportExportTaskStatus, id: string): string => {\n return `S#${status}#${id}`;\n};\n\nconst createType = (): string => {\n return \"pb.pageImportExportTask\";\n};\n\nexport const createStorageOperations: CreateStorageOperations = params => {\n const { table: tableName, documentClient, attributes = {} } = params;\n\n const table = createTable({ table: tableName, documentClient });\n\n const entity = createPageImportExportTaskEntity({\n entityName: \"PageImportExportTask\",\n table,\n attributes\n });\n\n return {\n getTable() {\n return table;\n },\n getEntity() {\n return entity;\n },\n async getTask(\n params: PageImportExportTaskStorageOperationsGetParams\n ): Promise<PageImportExportTask | null> {\n const { where } = params;\n\n const keys = {\n PK: createPartitionKey(where),\n SK: \"A\"\n };\n\n try {\n const result = await entity.get(keys);\n if (!result || !result.Item) {\n return null;\n }\n return cleanupItem(entity, result.Item);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load page element by given parameters.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_GET_ERROR\",\n {\n where\n }\n );\n }\n },\n\n async listTasks(\n params: PageImportExportTaskStorageOperationsListParams\n ): Promise<PageImportExportTaskStorageOperationsListResponse> {\n const { limit = 100 } = params;\n\n const queryAllParams: QueryAllParams = {\n entity: entity,\n partitionKey: PARENT_TASK_GSI1_PK,\n options: {\n beginsWith: \"\",\n index: \"GSI1\",\n limit: limit || undefined\n }\n };\n\n let results: PageImportExportTask[] = [];\n\n try {\n results = await queryAll<PageImportExportTask>(queryAllParams);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list page import export tasks by given parameters.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASKS_LIST_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n\n const items = results.map(item =>\n cleanupItem<PageImportExportTask>(entity, item)\n ) as PageImportExportTask[];\n\n // TODO: Implement sort and filter\n\n return createListResponse({\n items: items,\n limit,\n totalCount: items.length,\n after: null\n });\n },\n\n async createTask(\n params: PageImportExportTaskStorageOperationsCreateParams\n ): Promise<PageImportExportTask> {\n const { task } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: task.createdOn\n };\n\n try {\n await entity.put({\n ...task,\n TYPE: createType(),\n ...keys\n });\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create pageImportExportTask.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_CREATE_ERROR\",\n {\n keys,\n pageImportExportTask: task\n }\n );\n }\n },\n\n async updateTask(\n params: PageImportExportTaskStorageOperationsUpdateParams\n ): Promise<PageImportExportTask> {\n const { task, original } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: task.createdOn\n };\n\n try {\n await entity.put({\n ...task,\n TYPE: createType(),\n ...keys\n });\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update pageImportExportTask.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_UPDATE_ERROR\",\n {\n keys,\n original,\n task: task\n }\n );\n }\n },\n\n async deleteTask(\n params: PageImportExportTaskStorageOperationsDeleteParams\n ): Promise<PageImportExportTask> {\n const { task } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\"\n };\n\n try {\n await entity.delete(keys);\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete pageImportExportTask.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_DELETE_ERROR\",\n {\n keys,\n task: task\n }\n );\n }\n },\n\n async updateTaskStats(\n params: PageImportExportTaskStorageOperationsUpdateTaskStatsParams\n ): Promise<PageImportExportTask> {\n const {\n original,\n input: { prevStatus, nextStatus }\n } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: original.tenant,\n locale: original.locale,\n id: original.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: original.createdOn\n };\n\n try {\n await entity.update({\n TYPE: createType(),\n ...keys,\n stats: {\n $set: {\n [prevStatus]: { $add: -1 },\n [nextStatus]: { $add: 1 }\n }\n }\n });\n return original;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update pageImportExportTask.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_UPDATE_ERROR\",\n {\n keys,\n original\n }\n );\n }\n },\n\n async createSubTask(\n params: PageImportExportTaskStorageOperationsCreateSubTaskParams\n ): Promise<PageImportExportTask> {\n const { subTask } = params;\n const pkParams = {\n tenant: subTask.tenant,\n locale: subTask.locale,\n id: subTask.parent\n };\n const keys = {\n PK: createPartitionKey(pkParams),\n SK: createSortKey(subTask.id),\n GSI1_PK: createGsiPartitionKey(pkParams),\n GSI1_SK: createGsiSortKey(subTask.status, subTask.id)\n };\n\n try {\n await entity.put({\n ...subTask,\n TYPE: createType(),\n ...keys\n });\n return subTask;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create pageImportExportSubTask.\",\n ex.code || \"CREATE_PAGE_IMPORT_EXPORT_SUB_TASK_ERROR\",\n {\n keys,\n subTask: subTask\n }\n );\n }\n },\n\n async updateSubTask(\n params: PageImportExportTaskStorageOperationsUpdateSubTaskParams\n ): Promise<PageImportExportTask> {\n const { subTask, original } = params;\n const pkParams = {\n tenant: subTask.tenant,\n locale: subTask.locale,\n id: subTask.parent\n };\n const keys = {\n PK: createPartitionKey(pkParams),\n SK: createSortKey(subTask.id),\n GSI1_PK: createGsiPartitionKey(pkParams),\n GSI1_SK: createGsiSortKey(subTask.status, subTask.id)\n };\n\n try {\n await entity.put({\n ...subTask,\n TYPE: createType(),\n ...keys\n });\n return subTask;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update pageImportExportSubTask.\",\n ex.code || \"UPDATE_PAGE_IMPORT_EXPORT_SUB_TASK_ERROR\",\n {\n keys,\n original,\n subTask: subTask\n }\n );\n }\n },\n\n async getSubTask(\n params: PageImportExportTaskStorageOperationsGetSubTaskParams\n ): Promise<PageImportExportTask | null> {\n const { where } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: where.tenant,\n locale: where.locale,\n id: where.parent\n }),\n SK: createSortKey(where.id)\n };\n try {\n const result = await entity.get(keys);\n if (!result || !result.Item) {\n return null;\n }\n return cleanupItem(entity, result.Item);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load page import export subTask by given parameters.\",\n ex.code || \"PAGE_IMPORT_EXPORT_TASK_GET_ERROR\",\n {\n where\n }\n );\n }\n },\n\n async listSubTasks(\n params: PageImportExportTaskStorageOperationsListSubTaskParams\n ): Promise<PageImportExportTaskStorageOperationsListSubTaskResponse> {\n const { where, limit = 100 } = params;\n\n const { tenant, locale, parent, status } = where;\n const queryAllParams: QueryAllParams = {\n entity: entity,\n partitionKey: createGsiPartitionKey({\n tenant,\n locale,\n id: parent\n }),\n options: {\n beginsWith: `S#${status}`,\n limit: limit || undefined,\n index: \"GSI1\"\n }\n };\n\n let results: PageImportExportTask[] = [];\n\n try {\n results = await queryAll<PageImportExportTask>(queryAllParams);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list page import export tasks by given parameters.\",\n ex.code || \"LIST_PAGE_IMPORT_EXPORT_SUB_TASKS_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n\n const items = results.map(item =>\n cleanupItem<PageImportExportTask>(entity, item)\n ) as PageImportExportTask[];\n\n return createListResponse({\n items: items,\n limit,\n totalCount: items.length,\n after: null\n });\n }\n };\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["PARENT_TASK_GSI1_PK","createPartitionKey","tenant","locale","id","createSortKey","input","createGsiPartitionKey","createGsiSortKey","status","createType","createStorageOperations","params","table","tableName","documentClient","attributes","createTable","entity","createImportExportTaskEntity","entityName","getTable","getEntity","getTask","where","keys","PK","SK","result","get","Item","cleanupItem","ex","WebinyError","message","code","listTasks","limit","queryAllParams","partitionKey","options","beginsWith","index","undefined","results","queryAll","items","map","item","createListResponse","totalCount","length","after","createTask","task","GSI1_PK","GSI1_SK","createdOn","put","TYPE","importExportTask","updateTask","original","deleteTask","delete","updateTaskStats","prevStatus","nextStatus","update","stats","$set","$add","createSubTask","subTask","pkParams","parent","updateSubTask","getSubTask","listSubTasks"],"sources":["index.ts"],"sourcesContent":["import {\n ImportExportTask,\n ImportExportTaskStatus,\n ImportExportTaskStorageOperationsCreateParams,\n ImportExportTaskStorageOperationsCreateSubTaskParams,\n ImportExportTaskStorageOperationsDeleteParams,\n ImportExportTaskStorageOperationsGetParams,\n ImportExportTaskStorageOperationsGetSubTaskParams,\n ImportExportTaskStorageOperationsListParams,\n ImportExportTaskStorageOperationsListResponse,\n ImportExportTaskStorageOperationsListSubTaskParams,\n ImportExportTaskStorageOperationsListSubTaskResponse,\n ImportExportTaskStorageOperationsUpdateParams,\n ImportExportTaskStorageOperationsUpdateSubTaskParams,\n ImportExportTaskStorageOperationsUpdateTaskStatsParams\n} from \"@webiny/api-page-builder-import-export/types\";\nimport { cleanupItem } from \"@webiny/db-dynamodb/utils/cleanup\";\nimport WebinyError from \"@webiny/error\";\nimport { queryAll, QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { createListResponse } from \"@webiny/db-dynamodb/utils/listResponse\";\nimport { createTable } from \"~/definitions/table\";\nimport { createImportExportTaskEntity } from \"~/definitions/importExportTaskEntity\";\nimport { CreateStorageOperations } from \"./types\";\n\ninterface PartitionKeyOptions {\n tenant: string;\n locale: string;\n id?: string;\n}\n\nconst PARENT_TASK_GSI1_PK = \"PB#IE_TASKS\";\n\nconst createPartitionKey = ({ tenant, locale, id }: PartitionKeyOptions): string => {\n return `T#${tenant}#L#${locale}#PB#IE_TASK#${id}`;\n};\n\nconst createSortKey = (input: string): string => {\n return `SUB#${input}`;\n};\n\nconst createGsiPartitionKey = ({ tenant, locale, id }: PartitionKeyOptions): string => {\n return `T#${tenant}#L#${locale}#PB#IE_TASK#${id}`;\n};\n\nconst createGsiSortKey = (status: ImportExportTaskStatus, id: string): string => {\n return `S#${status}#${id}`;\n};\n\nconst createType = (): string => {\n return \"pb.importExportTask\";\n};\n\nexport const createStorageOperations: CreateStorageOperations = params => {\n const { table: tableName, documentClient, attributes = {} } = params;\n\n const table = createTable({ table: tableName, documentClient });\n\n const entity = createImportExportTaskEntity({\n entityName: \"ImportExportTask\",\n table,\n attributes\n });\n\n return {\n getTable() {\n return table;\n },\n getEntity() {\n return entity;\n },\n async getTask(\n params: ImportExportTaskStorageOperationsGetParams\n ): Promise<ImportExportTask | null> {\n const { where } = params;\n\n const keys = {\n PK: createPartitionKey(where),\n SK: \"A\"\n };\n\n try {\n const result = await entity.get(keys);\n if (!result || !result.Item) {\n return null;\n }\n return cleanupItem(entity, result.Item);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load element by given parameters.\",\n ex.code || \"IMPORT_EXPORT_TASK_GET_ERROR\",\n {\n where\n }\n );\n }\n },\n\n async listTasks(\n params: ImportExportTaskStorageOperationsListParams\n ): Promise<ImportExportTaskStorageOperationsListResponse> {\n const { limit = 100 } = params;\n\n const queryAllParams: QueryAllParams = {\n entity: entity,\n partitionKey: PARENT_TASK_GSI1_PK,\n options: {\n beginsWith: \"\",\n index: \"GSI1\",\n limit: limit || undefined\n }\n };\n\n let results: ImportExportTask[] = [];\n\n try {\n results = await queryAll<ImportExportTask>(queryAllParams);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list import export tasks by given parameters.\",\n ex.code || \"IMPORT_EXPORT_TASKS_LIST_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n\n const items = results.map(item =>\n cleanupItem<ImportExportTask>(entity, item)\n ) as ImportExportTask[];\n\n // TODO: Implement sort and filter\n\n return createListResponse({\n items: items,\n limit,\n totalCount: items.length,\n after: null\n });\n },\n\n async createTask(\n params: ImportExportTaskStorageOperationsCreateParams\n ): Promise<ImportExportTask> {\n const { task } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: task.createdOn\n };\n\n try {\n await entity.put({\n ...task,\n TYPE: createType(),\n ...keys\n });\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create importExportTask.\",\n ex.code || \"IMPORT_EXPORT_TASK_CREATE_ERROR\",\n {\n keys,\n importExportTask: task\n }\n );\n }\n },\n\n async updateTask(\n params: ImportExportTaskStorageOperationsUpdateParams\n ): Promise<ImportExportTask> {\n const { task, original } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: task.createdOn\n };\n\n try {\n await entity.put({\n ...task,\n TYPE: createType(),\n ...keys\n });\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update importExportTask.\",\n ex.code || \"IMPORT_EXPORT_TASK_UPDATE_ERROR\",\n {\n keys,\n original,\n task: task\n }\n );\n }\n },\n\n async deleteTask(\n params: ImportExportTaskStorageOperationsDeleteParams\n ): Promise<ImportExportTask> {\n const { task } = params;\n const keys = {\n PK: createPartitionKey({\n tenant: task.tenant,\n locale: task.locale,\n id: task.id\n }),\n SK: \"A\"\n };\n\n try {\n await entity.delete(keys);\n return task;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not delete importExportTask.\",\n ex.code || \"IMPORT_EXPORT_TASK_DELETE_ERROR\",\n {\n keys,\n task: task\n }\n );\n }\n },\n\n async updateTaskStats(\n params: ImportExportTaskStorageOperationsUpdateTaskStatsParams\n ): Promise<ImportExportTask> {\n const {\n original,\n input: { prevStatus, nextStatus }\n } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: original.tenant,\n locale: original.locale,\n id: original.id\n }),\n SK: \"A\",\n GSI1_PK: PARENT_TASK_GSI1_PK,\n GSI1_SK: original.createdOn\n };\n\n try {\n await entity.update({\n TYPE: createType(),\n ...keys,\n stats: {\n $set: {\n [prevStatus]: { $add: -1 },\n [nextStatus]: { $add: 1 }\n }\n }\n });\n return original;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update importExportTask.\",\n ex.code || \"IMPORT_EXPORT_TASK_UPDATE_ERROR\",\n {\n keys,\n original\n }\n );\n }\n },\n\n async createSubTask(\n params: ImportExportTaskStorageOperationsCreateSubTaskParams\n ): Promise<ImportExportTask> {\n const { subTask } = params;\n const pkParams = {\n tenant: subTask.tenant,\n locale: subTask.locale,\n id: subTask.parent\n };\n const keys = {\n PK: createPartitionKey(pkParams),\n SK: createSortKey(subTask.id),\n GSI1_PK: createGsiPartitionKey(pkParams),\n GSI1_SK: createGsiSortKey(subTask.status, subTask.id)\n };\n\n try {\n await entity.put({\n ...subTask,\n TYPE: createType(),\n ...keys\n });\n return subTask;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not create importExportSubTask.\",\n ex.code || \"CREATE_IMPORT_EXPORT_SUB_TASK_ERROR\",\n {\n keys,\n subTask: subTask\n }\n );\n }\n },\n\n async updateSubTask(\n params: ImportExportTaskStorageOperationsUpdateSubTaskParams\n ): Promise<ImportExportTask> {\n const { subTask, original } = params;\n const pkParams = {\n tenant: subTask.tenant,\n locale: subTask.locale,\n id: subTask.parent\n };\n const keys = {\n PK: createPartitionKey(pkParams),\n SK: createSortKey(subTask.id),\n GSI1_PK: createGsiPartitionKey(pkParams),\n GSI1_SK: createGsiSortKey(subTask.status, subTask.id)\n };\n\n try {\n await entity.put({\n ...subTask,\n TYPE: createType(),\n ...keys\n });\n return subTask;\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not update importExportSubTask.\",\n ex.code || \"UPDATE_IMPORT_EXPORT_SUB_TASK_ERROR\",\n {\n keys,\n original,\n subTask: subTask\n }\n );\n }\n },\n\n async getSubTask(\n params: ImportExportTaskStorageOperationsGetSubTaskParams\n ): Promise<ImportExportTask | null> {\n const { where } = params;\n\n const keys = {\n PK: createPartitionKey({\n tenant: where.tenant,\n locale: where.locale,\n id: where.parent\n }),\n SK: createSortKey(where.id)\n };\n try {\n const result = await entity.get(keys);\n if (!result || !result.Item) {\n return null;\n }\n return cleanupItem(entity, result.Item);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not load import export subTask by given parameters.\",\n ex.code || \"IMPORT_EXPORT_TASK_GET_ERROR\",\n {\n where\n }\n );\n }\n },\n\n async listSubTasks(\n params: ImportExportTaskStorageOperationsListSubTaskParams\n ): Promise<ImportExportTaskStorageOperationsListSubTaskResponse> {\n const { where, limit = 100 } = params;\n\n const { tenant, locale, parent, status } = where;\n const queryAllParams: QueryAllParams = {\n entity: entity,\n partitionKey: createGsiPartitionKey({\n tenant,\n locale,\n id: parent\n }),\n options: {\n beginsWith: `S#${status}`,\n limit: limit || undefined,\n index: \"GSI1\"\n }\n };\n\n let results: ImportExportTask[] = [];\n\n try {\n results = await queryAll<ImportExportTask>(queryAllParams);\n } catch (ex) {\n throw new WebinyError(\n ex.message || \"Could not list import export tasks by given parameters.\",\n ex.code || \"LIST_IMPORT_EXPORT_SUB_TASKS_ERROR\",\n {\n partitionKey: queryAllParams.partitionKey,\n options: queryAllParams.options\n }\n );\n }\n\n const items = results.map(item =>\n cleanupItem<ImportExportTask>(entity, item)\n ) as ImportExportTask[];\n\n return createListResponse({\n items: items,\n limit,\n totalCount: items.length,\n after: null\n });\n }\n };\n};\n"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-page-builder-import-export-so-ddb",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.34.0-beta.0",
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"@webiny/api-page-builder-import-export",
|
|
@@ -17,23 +17,23 @@
|
|
|
17
17
|
"description": "The DynamoDB storage operations for import export feature in the Webiny Page Builder API.",
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@babel/runtime": "7.
|
|
21
|
-
"@webiny/api-page-builder-import-export": "5.
|
|
22
|
-
"@webiny/db-dynamodb": "5.
|
|
23
|
-
"@webiny/error": "5.
|
|
20
|
+
"@babel/runtime": "7.19.0",
|
|
21
|
+
"@webiny/api-page-builder-import-export": "5.34.0-beta.0",
|
|
22
|
+
"@webiny/db-dynamodb": "5.34.0-beta.0",
|
|
23
|
+
"@webiny/error": "5.34.0-beta.0",
|
|
24
24
|
"dynamodb-toolbox": "0.3.5"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
|
-
"@babel/cli": "^7.
|
|
28
|
-
"@babel/core": "^7.
|
|
29
|
-
"@babel/preset-env": "^7.
|
|
30
|
-
"@babel/preset-typescript": "^7.
|
|
31
|
-
"@webiny/api-security": "^5.
|
|
32
|
-
"@webiny/api-tenancy": "^5.
|
|
33
|
-
"@webiny/cli": "^5.
|
|
34
|
-
"@webiny/handler-aws": "^5.
|
|
35
|
-
"@webiny/handler-graphql": "^5.
|
|
36
|
-
"@webiny/project-utils": "^5.
|
|
27
|
+
"@babel/cli": "^7.19.3",
|
|
28
|
+
"@babel/core": "^7.19.3",
|
|
29
|
+
"@babel/preset-env": "^7.19.4",
|
|
30
|
+
"@babel/preset-typescript": "^7.18.6",
|
|
31
|
+
"@webiny/api-security": "^5.34.0-beta.0",
|
|
32
|
+
"@webiny/api-tenancy": "^5.34.0-beta.0",
|
|
33
|
+
"@webiny/cli": "^5.34.0-beta.0",
|
|
34
|
+
"@webiny/handler-aws": "^5.34.0-beta.0",
|
|
35
|
+
"@webiny/handler-graphql": "^5.34.0-beta.0",
|
|
36
|
+
"@webiny/project-utils": "^5.34.0-beta.0",
|
|
37
37
|
"jest": "^28.1.0",
|
|
38
38
|
"jest-dynalite": "^3.2.0",
|
|
39
39
|
"jest-environment-node": "^27.0.6",
|
|
@@ -49,5 +49,5 @@
|
|
|
49
49
|
"build": "yarn webiny run build",
|
|
50
50
|
"watch": "yarn webiny run watch"
|
|
51
51
|
},
|
|
52
|
-
"gitHead": "
|
|
52
|
+
"gitHead": "9648454619a1bfb35040eb00f27a64ed75194e61"
|
|
53
53
|
}
|
package/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DynamoDBTypes } from "dynamodb-toolbox/dist/classes/Table";
|
|
2
2
|
import { EntityAttributeConfig, EntityCompositeAttributes } from "dynamodb-toolbox/dist/classes/Entity";
|
|
3
3
|
import { DocumentClient } from "aws-sdk/clients/dynamodb";
|
|
4
|
-
import {
|
|
4
|
+
import { ImportExportTaskStorageOperations } from "@webiny/api-page-builder-import-export/types";
|
|
5
5
|
export declare type AttributeDefinition = DynamoDBTypes | EntityAttributeConfig | EntityCompositeAttributes;
|
|
6
6
|
export declare type Attributes = Record<string, AttributeDefinition>;
|
|
7
7
|
export interface CreateStorageOperations {
|
|
@@ -9,5 +9,5 @@ export interface CreateStorageOperations {
|
|
|
9
9
|
documentClient: DocumentClient;
|
|
10
10
|
table?: string;
|
|
11
11
|
attributes?: Attributes;
|
|
12
|
-
}):
|
|
12
|
+
}): ImportExportTaskStorageOperations;
|
|
13
13
|
}
|
package/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { DynamoDBTypes } from \"dynamodb-toolbox/dist/classes/Table\";\nimport {\n EntityAttributeConfig,\n EntityCompositeAttributes\n} from \"dynamodb-toolbox/dist/classes/Entity\";\nimport { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport {
|
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import { DynamoDBTypes } from \"dynamodb-toolbox/dist/classes/Table\";\nimport {\n EntityAttributeConfig,\n EntityCompositeAttributes\n} from \"dynamodb-toolbox/dist/classes/Entity\";\nimport { DocumentClient } from \"aws-sdk/clients/dynamodb\";\nimport { ImportExportTaskStorageOperations } from \"@webiny/api-page-builder-import-export/types\";\n\nexport type AttributeDefinition = DynamoDBTypes | EntityAttributeConfig | EntityCompositeAttributes;\n\nexport type Attributes = Record<string, AttributeDefinition>;\n\nexport interface CreateStorageOperations {\n (params: {\n documentClient: DocumentClient;\n table?: string;\n attributes?: Attributes;\n }): ImportExportTaskStorageOperations;\n}\n"],"mappings":""}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.createPageImportExportTaskEntity = void 0;
|
|
9
|
-
|
|
10
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
11
|
-
|
|
12
|
-
var _dynamodbToolbox = require("dynamodb-toolbox");
|
|
13
|
-
|
|
14
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
15
|
-
|
|
16
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
17
|
-
|
|
18
|
-
const createPageImportExportTaskEntity = ({
|
|
19
|
-
entityName,
|
|
20
|
-
table,
|
|
21
|
-
attributes
|
|
22
|
-
}) => {
|
|
23
|
-
return new _dynamodbToolbox.Entity({
|
|
24
|
-
name: entityName,
|
|
25
|
-
table,
|
|
26
|
-
attributes: _objectSpread({
|
|
27
|
-
PK: {
|
|
28
|
-
partitionKey: true
|
|
29
|
-
},
|
|
30
|
-
SK: {
|
|
31
|
-
sortKey: true
|
|
32
|
-
},
|
|
33
|
-
GSI1_PK: {
|
|
34
|
-
type: "string"
|
|
35
|
-
},
|
|
36
|
-
GSI1_SK: {
|
|
37
|
-
type: "string"
|
|
38
|
-
},
|
|
39
|
-
TYPE: {
|
|
40
|
-
type: "string"
|
|
41
|
-
},
|
|
42
|
-
id: {
|
|
43
|
-
type: "string"
|
|
44
|
-
},
|
|
45
|
-
parent: {
|
|
46
|
-
type: "string"
|
|
47
|
-
},
|
|
48
|
-
status: {
|
|
49
|
-
type: "string"
|
|
50
|
-
},
|
|
51
|
-
data: {
|
|
52
|
-
type: "map"
|
|
53
|
-
},
|
|
54
|
-
input: {
|
|
55
|
-
type: "map"
|
|
56
|
-
},
|
|
57
|
-
stats: {
|
|
58
|
-
type: "map"
|
|
59
|
-
},
|
|
60
|
-
error: {
|
|
61
|
-
type: "map"
|
|
62
|
-
},
|
|
63
|
-
createdOn: {
|
|
64
|
-
type: "string"
|
|
65
|
-
},
|
|
66
|
-
createdBy: {
|
|
67
|
-
type: "map"
|
|
68
|
-
},
|
|
69
|
-
tenant: {
|
|
70
|
-
type: "string"
|
|
71
|
-
},
|
|
72
|
-
locale: {
|
|
73
|
-
type: "string"
|
|
74
|
-
}
|
|
75
|
-
}, attributes)
|
|
76
|
-
});
|
|
77
|
-
};
|
|
78
|
-
|
|
79
|
-
exports.createPageImportExportTaskEntity = createPageImportExportTaskEntity;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["createPageImportExportTaskEntity","entityName","table","attributes","Entity","name","PK","partitionKey","SK","sortKey","GSI1_PK","type","GSI1_SK","TYPE","id","parent","status","data","input","stats","error","createdOn","createdBy","tenant","locale"],"sources":["pageImportExportTaskEntity.ts"],"sourcesContent":["import { Entity, Table } from \"dynamodb-toolbox\";\nimport { Attributes } from \"~/types\";\n\ninterface Params {\n entityName: string;\n table: Table;\n attributes?: Attributes;\n}\n\nexport const createPageImportExportTaskEntity = ({ entityName, table, attributes }: Params) => {\n return new Entity({\n name: entityName,\n table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n GSI1_PK: {\n type: \"string\"\n },\n GSI1_SK: {\n type: \"string\"\n },\n TYPE: {\n type: \"string\"\n },\n id: {\n type: \"string\"\n },\n parent: {\n type: \"string\"\n },\n status: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n },\n input: {\n type: \"map\"\n },\n stats: {\n type: \"map\"\n },\n error: {\n type: \"map\"\n },\n createdOn: {\n type: \"string\"\n },\n createdBy: {\n type: \"map\"\n },\n tenant: {\n type: \"string\"\n },\n locale: {\n type: \"string\"\n },\n ...attributes\n }\n });\n};\n"],"mappings":";;;;;;;;;;;AAAA;;;;;;AASO,MAAMA,gCAAgC,GAAG,CAAC;EAAEC,UAAF;EAAcC,KAAd;EAAqBC;AAArB,CAAD,KAA+C;EAC3F,OAAO,IAAIC,uBAAJ,CAAW;IACdC,IAAI,EAAEJ,UADQ;IAEdC,KAFc;IAGdC,UAAU;MACNG,EAAE,EAAE;QACAC,YAAY,EAAE;MADd,CADE;MAINC,EAAE,EAAE;QACAC,OAAO,EAAE;MADT,CAJE;MAONC,OAAO,EAAE;QACLC,IAAI,EAAE;MADD,CAPH;MAUNC,OAAO,EAAE;QACLD,IAAI,EAAE;MADD,CAVH;MAaNE,IAAI,EAAE;QACFF,IAAI,EAAE;MADJ,CAbA;MAgBNG,EAAE,EAAE;QACAH,IAAI,EAAE;MADN,CAhBE;MAmBNI,MAAM,EAAE;QACJJ,IAAI,EAAE;MADF,CAnBF;MAsBNK,MAAM,EAAE;QACJL,IAAI,EAAE;MADF,CAtBF;MAyBNM,IAAI,EAAE;QACFN,IAAI,EAAE;MADJ,CAzBA;MA4BNO,KAAK,EAAE;QACHP,IAAI,EAAE;MADH,CA5BD;MA+BNQ,KAAK,EAAE;QACHR,IAAI,EAAE;MADH,CA/BD;MAkCNS,KAAK,EAAE;QACHT,IAAI,EAAE;MADH,CAlCD;MAqCNU,SAAS,EAAE;QACPV,IAAI,EAAE;MADC,CArCL;MAwCNW,SAAS,EAAE;QACPX,IAAI,EAAE;MADC,CAxCL;MA2CNY,MAAM,EAAE;QACJZ,IAAI,EAAE;MADF,CA3CF;MA8CNa,MAAM,EAAE;QACJb,IAAI,EAAE;MADF;IA9CF,GAiDHR,UAjDG;EAHI,CAAX,CAAP;AAuDH,CAxDM"}
|