@webiny/api-page-builder-import-export-so-ddb 0.0.0-unstable.2af142b57e → 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.
@@ -1,9 +1,116 @@
1
- import { Entity, Table } from "dynamodb-toolbox";
2
- import { Attributes } from "../types";
1
+ import type { Table } from "@webiny/db-dynamodb/toolbox";
2
+ import { Entity } from "@webiny/db-dynamodb/toolbox";
3
+ import type { Attributes } from "../types";
3
4
  interface Params {
4
5
  entityName: string;
5
- table: Table;
6
+ table: Table<string, string, string>;
6
7
  attributes?: Attributes;
7
8
  }
8
- export declare const createImportExportTaskEntity: ({ entityName, table, attributes }: Params) => Entity<{}>;
9
+ export declare const createImportExportTaskEntity: ({ entityName, table, attributes }: Params) => Entity<string, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, import("dynamodb-toolbox/dist/cjs/classes/Entity").Overlay, Table<string, string, string>, boolean, boolean, boolean, string, string, string, boolean, {
10
+ PK: {
11
+ partitionKey: true;
12
+ };
13
+ SK: {
14
+ sortKey: true;
15
+ };
16
+ GSI1_PK: {
17
+ type: "string";
18
+ };
19
+ GSI1_SK: {
20
+ type: "string";
21
+ };
22
+ TYPE: {
23
+ type: "string";
24
+ };
25
+ id: {
26
+ type: "string";
27
+ };
28
+ parent: {
29
+ type: "string";
30
+ };
31
+ status: {
32
+ type: "string";
33
+ };
34
+ data: {
35
+ type: "map";
36
+ };
37
+ input: {
38
+ type: "map";
39
+ };
40
+ stats: {
41
+ type: "map";
42
+ };
43
+ error: {
44
+ type: "map";
45
+ };
46
+ createdOn: {
47
+ type: "string";
48
+ };
49
+ createdBy: {
50
+ type: "map";
51
+ };
52
+ tenant: {
53
+ type: "string";
54
+ };
55
+ locale: {
56
+ type: "string";
57
+ };
58
+ }, {
59
+ PK: {
60
+ partitionKey: true;
61
+ };
62
+ SK: {
63
+ sortKey: true;
64
+ };
65
+ GSI1_PK: {
66
+ type: "string";
67
+ };
68
+ GSI1_SK: {
69
+ type: "string";
70
+ };
71
+ TYPE: {
72
+ type: "string";
73
+ };
74
+ id: {
75
+ type: "string";
76
+ };
77
+ parent: {
78
+ type: "string";
79
+ };
80
+ status: {
81
+ type: "string";
82
+ };
83
+ data: {
84
+ type: "map";
85
+ };
86
+ input: {
87
+ type: "map";
88
+ };
89
+ stats: {
90
+ type: "map";
91
+ };
92
+ error: {
93
+ type: "map";
94
+ };
95
+ createdOn: {
96
+ type: "string";
97
+ };
98
+ createdBy: {
99
+ type: "map";
100
+ };
101
+ tenant: {
102
+ type: "string";
103
+ };
104
+ locale: {
105
+ type: "string";
106
+ };
107
+ }, import("dynamodb-toolbox/dist/cjs/classes/Entity").ParsedAttributes<import("ts-toolbelt/out/Any/Key").Key>, any, {
108
+ [x: string]: any;
109
+ [x: number]: any;
110
+ [x: symbol]: any;
111
+ }, {
112
+ [x: string]: any;
113
+ [x: number]: any;
114
+ [x: symbol]: any;
115
+ }>;
9
116
  export {};
@@ -1,21 +1,19 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.createImportExportTaskEntity = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _dynamodbToolbox = require("dynamodb-toolbox");
7
+ var _toolbox = require("@webiny/db-dynamodb/toolbox");
10
8
  const createImportExportTaskEntity = ({
11
9
  entityName,
12
10
  table,
13
11
  attributes
14
12
  }) => {
15
- return new _dynamodbToolbox.Entity({
13
+ return new _toolbox.Entity({
16
14
  name: entityName,
17
15
  table,
18
- attributes: (0, _objectSpread2.default)({
16
+ attributes: {
19
17
  PK: {
20
18
  partitionKey: true
21
19
  },
@@ -63,8 +61,11 @@ const createImportExportTaskEntity = ({
63
61
  },
64
62
  locale: {
65
63
  type: "string"
66
- }
67
- }, attributes)
64
+ },
65
+ ...attributes
66
+ }
68
67
  });
69
68
  };
70
- exports.createImportExportTaskEntity = createImportExportTaskEntity;
69
+ exports.createImportExportTaskEntity = createImportExportTaskEntity;
70
+
71
+ //# sourceMappingURL=importExportTaskEntity.js.map
@@ -1 +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,UAAU;EAAEC,KAAK;EAAEC;AAAmB,CAAC,KAAK;EACvF,OAAO,IAAIC,uBAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBC,KAAK;IACLC,UAAU;MACNG,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,OAAO,EAAE;QACLC,IAAI,EAAE;MACV,CAAC;MACDC,OAAO,EAAE;QACLD,IAAI,EAAE;MACV,CAAC;MACDE,IAAI,EAAE;QACFF,IAAI,EAAE;MACV,CAAC;MACDG,EAAE,EAAE;QACAH,IAAI,EAAE;MACV,CAAC;MACDI,MAAM,EAAE;QACJJ,IAAI,EAAE;MACV,CAAC;MACDK,MAAM,EAAE;QACJL,IAAI,EAAE;MACV,CAAC;MACDM,IAAI,EAAE;QACFN,IAAI,EAAE;MACV,CAAC;MACDO,KAAK,EAAE;QACHP,IAAI,EAAE;MACV,CAAC;MACDQ,KAAK,EAAE;QACHR,IAAI,EAAE;MACV,CAAC;MACDS,KAAK,EAAE;QACHT,IAAI,EAAE;MACV,CAAC;MACDU,SAAS,EAAE;QACPV,IAAI,EAAE;MACV,CAAC;MACDW,SAAS,EAAE;QACPX,IAAI,EAAE;MACV,CAAC;MACDY,MAAM,EAAE;QACJZ,IAAI,EAAE;MACV,CAAC;MACDa,MAAM,EAAE;QACJb,IAAI,EAAE;MACV;IAAC,GACER,UAAU;EAErB,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["_toolbox","require","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","exports"],"sources":["importExportTaskEntity.ts"],"sourcesContent":["import type { Table } from \"@webiny/db-dynamodb/toolbox\";\nimport { Entity } from \"@webiny/db-dynamodb/toolbox\";\nimport type { Attributes } from \"~/types\";\n\ninterface Params {\n entityName: string;\n table: Table<string, string, string>;\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":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AASO,MAAMC,4BAA4B,GAAGA,CAAC;EAAEC,UAAU;EAAEC,KAAK;EAAEC;AAAmB,CAAC,KAAK;EACvF,OAAO,IAAIC,eAAM,CAAC;IACdC,IAAI,EAAEJ,UAAU;IAChBC,KAAK;IACLC,UAAU,EAAE;MACRG,EAAE,EAAE;QACAC,YAAY,EAAE;MAClB,CAAC;MACDC,EAAE,EAAE;QACAC,OAAO,EAAE;MACb,CAAC;MACDC,OAAO,EAAE;QACLC,IAAI,EAAE;MACV,CAAC;MACDC,OAAO,EAAE;QACLD,IAAI,EAAE;MACV,CAAC;MACDE,IAAI,EAAE;QACFF,IAAI,EAAE;MACV,CAAC;MACDG,EAAE,EAAE;QACAH,IAAI,EAAE;MACV,CAAC;MACDI,MAAM,EAAE;QACJJ,IAAI,EAAE;MACV,CAAC;MACDK,MAAM,EAAE;QACJL,IAAI,EAAE;MACV,CAAC;MACDM,IAAI,EAAE;QACFN,IAAI,EAAE;MACV,CAAC;MACDO,KAAK,EAAE;QACHP,IAAI,EAAE;MACV,CAAC;MACDQ,KAAK,EAAE;QACHR,IAAI,EAAE;MACV,CAAC;MACDS,KAAK,EAAE;QACHT,IAAI,EAAE;MACV,CAAC;MACDU,SAAS,EAAE;QACPV,IAAI,EAAE;MACV,CAAC;MACDW,SAAS,EAAE;QACPX,IAAI,EAAE;MACV,CAAC;MACDY,MAAM,EAAE;QACJZ,IAAI,EAAE;MACV,CAAC;MACDa,MAAM,EAAE;QACJb,IAAI,EAAE;MACV,CAAC;MACD,GAAGR;IACP;EACJ,CAAC,CAAC;AACN,CAAC;AAACsB,OAAA,CAAAzB,4BAAA,GAAAA,4BAAA","ignoreList":[]}
@@ -1,8 +1,8 @@
1
- import { Table } from "dynamodb-toolbox";
2
- import { DocumentClient } from "aws-sdk/clients/dynamodb";
1
+ import { Table } from "@webiny/db-dynamodb/toolbox";
2
+ import type { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb";
3
3
  interface CreateTableParams {
4
4
  table?: string;
5
- documentClient: DocumentClient;
5
+ documentClient: DynamoDBDocument;
6
6
  }
7
- export declare const createTable: ({ table, documentClient }: CreateTableParams) => Table;
7
+ export declare const createTable: ({ table, documentClient }: CreateTableParams) => Table<string, "PK", "SK">;
8
8
  export {};
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.createTable = void 0;
7
- var _dynamodbToolbox = require("dynamodb-toolbox");
7
+ var _toolbox = require("@webiny/db-dynamodb/toolbox");
8
8
  const createTable = ({
9
9
  table,
10
10
  documentClient
11
11
  }) => {
12
- return new _dynamodbToolbox.Table({
12
+ return new _toolbox.Table({
13
13
  name: table || process.env.DB_TABLE_PAGE_BUILDER || process.env.DB_TABLE,
14
14
  partitionKey: "PK",
15
15
  sortKey: "SK",
@@ -19,7 +19,11 @@ const createTable = ({
19
19
  partitionKey: "GSI1_PK",
20
20
  sortKey: "GSI1_SK"
21
21
  }
22
- }
22
+ },
23
+ autoExecute: true,
24
+ autoParse: true
23
25
  });
24
26
  };
25
- exports.createTable = createTable;
27
+ exports.createTable = createTable;
28
+
29
+ //# sourceMappingURL=table.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createTable","table","documentClient","Table","name","process","env","DB_TABLE_PAGE_BUILDER","DB_TABLE","partitionKey","sortKey","DocumentClient","indexes","GSI1"],"sources":["table.ts"],"sourcesContent":["import { Table } from \"dynamodb-toolbox\";\nimport { DocumentClient } from \"aws-sdk/clients/dynamodb\";\n\ninterface CreateTableParams {\n table?: string;\n documentClient: DocumentClient;\n}\n\nexport const createTable = ({ table, documentClient }: CreateTableParams) => {\n return new Table({\n name: table || process.env.DB_TABLE_PAGE_BUILDER || (process.env.DB_TABLE as string),\n partitionKey: \"PK\",\n sortKey: \"SK\",\n DocumentClient: documentClient,\n indexes: {\n GSI1: {\n partitionKey: \"GSI1_PK\",\n sortKey: \"GSI1_SK\"\n }\n }\n });\n};\n"],"mappings":";;;;;;AAAA;AAQO,MAAMA,WAAW,GAAG,CAAC;EAAEC,KAAK;EAAEC;AAAkC,CAAC,KAAK;EACzE,OAAO,IAAIC,sBAAK,CAAC;IACbC,IAAI,EAAEH,KAAK,IAAII,OAAO,CAACC,GAAG,CAACC,qBAAqB,IAAKF,OAAO,CAACC,GAAG,CAACE,QAAmB;IACpFC,YAAY,EAAE,IAAI;IAClBC,OAAO,EAAE,IAAI;IACbC,cAAc,EAAET,cAAc;IAC9BU,OAAO,EAAE;MACLC,IAAI,EAAE;QACFJ,YAAY,EAAE,SAAS;QACvBC,OAAO,EAAE;MACb;IACJ;EACJ,CAAC,CAAC;AACN,CAAC;AAAC"}
1
+ {"version":3,"names":["_toolbox","require","createTable","table","documentClient","Table","name","process","env","DB_TABLE_PAGE_BUILDER","DB_TABLE","partitionKey","sortKey","DocumentClient","indexes","GSI1","autoExecute","autoParse","exports"],"sources":["table.ts"],"sourcesContent":["import { Table } from \"@webiny/db-dynamodb/toolbox\";\nimport type { DynamoDBDocument } from \"@webiny/aws-sdk/client-dynamodb\";\n\ninterface CreateTableParams {\n table?: string;\n documentClient: DynamoDBDocument;\n}\n\nexport const createTable = ({ table, documentClient }: CreateTableParams) => {\n return new Table({\n name: table || process.env.DB_TABLE_PAGE_BUILDER || (process.env.DB_TABLE as string),\n partitionKey: \"PK\",\n sortKey: \"SK\",\n DocumentClient: documentClient,\n indexes: {\n GSI1: {\n partitionKey: \"GSI1_PK\",\n sortKey: \"GSI1_SK\"\n }\n },\n autoExecute: true,\n autoParse: true\n });\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAQO,MAAMC,WAAW,GAAGA,CAAC;EAAEC,KAAK;EAAEC;AAAkC,CAAC,KAAK;EACzE,OAAO,IAAIC,cAAK,CAAC;IACbC,IAAI,EAAEH,KAAK,IAAII,OAAO,CAACC,GAAG,CAACC,qBAAqB,IAAKF,OAAO,CAACC,GAAG,CAACE,QAAmB;IACpFC,YAAY,EAAE,IAAI;IAClBC,OAAO,EAAE,IAAI;IACbC,cAAc,EAAET,cAAc;IAC9BU,OAAO,EAAE;MACLC,IAAI,EAAE;QACFJ,YAAY,EAAE,SAAS;QACvBC,OAAO,EAAE;MACb;IACJ,CAAC;IACDI,WAAW,EAAE,IAAI;IACjBC,SAAS,EAAE;EACf,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAhB,WAAA,GAAAA,WAAA","ignoreList":[]}
package/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- import { CreateStorageOperations } from "./types";
1
+ import type { CreateStorageOperations } from "./types";
2
2
  export declare const createStorageOperations: CreateStorageOperations;
package/index.js CHANGED
@@ -5,13 +5,12 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createStorageOperations = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
- var _cleanup = require("@webiny/db-dynamodb/utils/cleanup");
10
8
  var _error = _interopRequireDefault(require("@webiny/error"));
11
9
  var _query = require("@webiny/db-dynamodb/utils/query");
12
10
  var _listResponse = require("@webiny/db-dynamodb/utils/listResponse");
13
11
  var _table = require("./definitions/table");
14
12
  var _importExportTaskEntity = require("./definitions/importExportTaskEntity");
13
+ var _dbDynamodb = require("@webiny/db-dynamodb");
15
14
  const PARENT_TASK_GSI1_PK = "PB#IE_TASKS";
16
15
  const createPartitionKey = ({
17
16
  tenant,
@@ -67,11 +66,10 @@ const createStorageOperations = params => {
67
66
  SK: "A"
68
67
  };
69
68
  try {
70
- const result = await entity.get(keys);
71
- if (!result || !result.Item) {
72
- return null;
73
- }
74
- return (0, _cleanup.cleanupItem)(entity, result.Item);
69
+ return await (0, _dbDynamodb.getClean)({
70
+ entity,
71
+ keys
72
+ });
75
73
  } catch (ex) {
76
74
  throw new _error.default(ex.message || "Could not load element by given parameters.", ex.code || "IMPORT_EXPORT_TASK_GET_ERROR", {
77
75
  where
@@ -86,28 +84,26 @@ const createStorageOperations = params => {
86
84
  entity: entity,
87
85
  partitionKey: PARENT_TASK_GSI1_PK,
88
86
  options: {
89
- beginsWith: "",
90
87
  index: "GSI1",
91
88
  limit: limit || undefined
92
89
  }
93
90
  };
94
91
  let results = [];
95
92
  try {
96
- results = await (0, _query.queryAll)(queryAllParams);
93
+ results = await (0, _query.queryAllClean)(queryAllParams);
97
94
  } catch (ex) {
98
95
  throw new _error.default(ex.message || "Could not list import export tasks by given parameters.", ex.code || "IMPORT_EXPORT_TASKS_LIST_ERROR", {
99
96
  partitionKey: queryAllParams.partitionKey,
100
97
  options: queryAllParams.options
101
98
  });
102
99
  }
103
- const items = results.map(item => (0, _cleanup.cleanupItem)(entity, item));
104
100
 
105
101
  // TODO: Implement sort and filter
106
102
 
107
103
  return (0, _listResponse.createListResponse)({
108
- items: items,
104
+ items: results,
109
105
  limit,
110
- totalCount: items.length,
106
+ totalCount: results.length,
111
107
  after: null
112
108
  });
113
109
  },
@@ -126,9 +122,14 @@ const createStorageOperations = params => {
126
122
  GSI1_SK: task.createdOn
127
123
  };
128
124
  try {
129
- await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, task), {}, {
130
- TYPE: createType()
131
- }, keys));
125
+ await (0, _dbDynamodb.put)({
126
+ entity,
127
+ item: {
128
+ ...task,
129
+ TYPE: createType(),
130
+ ...keys
131
+ }
132
+ });
132
133
  return task;
133
134
  } catch (ex) {
134
135
  throw new _error.default(ex.message || "Could not create importExportTask.", ex.code || "IMPORT_EXPORT_TASK_CREATE_ERROR", {
@@ -153,9 +154,14 @@ const createStorageOperations = params => {
153
154
  GSI1_SK: task.createdOn
154
155
  };
155
156
  try {
156
- await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, task), {}, {
157
- TYPE: createType()
158
- }, keys));
157
+ await (0, _dbDynamodb.put)({
158
+ entity,
159
+ item: {
160
+ ...task,
161
+ TYPE: createType(),
162
+ ...keys
163
+ }
164
+ });
159
165
  return task;
160
166
  } catch (ex) {
161
167
  throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "IMPORT_EXPORT_TASK_UPDATE_ERROR", {
@@ -178,7 +184,10 @@ const createStorageOperations = params => {
178
184
  SK: "A"
179
185
  };
180
186
  try {
181
- await entity.delete(keys);
187
+ await (0, _dbDynamodb.deleteItem)({
188
+ entity,
189
+ keys
190
+ });
182
191
  return task;
183
192
  } catch (ex) {
184
193
  throw new _error.default(ex.message || "Could not delete importExportTask.", ex.code || "IMPORT_EXPORT_TASK_DELETE_ERROR", {
@@ -206,20 +215,23 @@ const createStorageOperations = params => {
206
215
  GSI1_SK: original.createdOn
207
216
  };
208
217
  try {
209
- await entity.update((0, _objectSpread2.default)((0, _objectSpread2.default)({
210
- TYPE: createType()
211
- }, keys), {}, {
212
- stats: {
213
- $set: {
214
- [prevStatus]: {
215
- $add: -1
216
- },
217
- [nextStatus]: {
218
- $add: 1
218
+ await (0, _dbDynamodb.update)({
219
+ entity,
220
+ item: {
221
+ TYPE: createType(),
222
+ ...keys,
223
+ stats: {
224
+ $set: {
225
+ [prevStatus]: {
226
+ $add: -1
227
+ },
228
+ [nextStatus]: {
229
+ $add: 1
230
+ }
219
231
  }
220
232
  }
221
233
  }
222
- }));
234
+ });
223
235
  return original;
224
236
  } catch (ex) {
225
237
  throw new _error.default(ex.message || "Could not update importExportTask.", ex.code || "IMPORT_EXPORT_TASK_UPDATE_ERROR", {
@@ -244,9 +256,14 @@ const createStorageOperations = params => {
244
256
  GSI1_SK: createGsiSortKey(subTask.status, subTask.id)
245
257
  };
246
258
  try {
247
- await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, subTask), {}, {
248
- TYPE: createType()
249
- }, keys));
259
+ await (0, _dbDynamodb.put)({
260
+ entity,
261
+ item: {
262
+ ...subTask,
263
+ TYPE: createType(),
264
+ ...keys
265
+ }
266
+ });
250
267
  return subTask;
251
268
  } catch (ex) {
252
269
  throw new _error.default(ex.message || "Could not create importExportSubTask.", ex.code || "CREATE_IMPORT_EXPORT_SUB_TASK_ERROR", {
@@ -272,9 +289,14 @@ const createStorageOperations = params => {
272
289
  GSI1_SK: createGsiSortKey(subTask.status, subTask.id)
273
290
  };
274
291
  try {
275
- await entity.put((0, _objectSpread2.default)((0, _objectSpread2.default)({}, subTask), {}, {
276
- TYPE: createType()
277
- }, keys));
292
+ await (0, _dbDynamodb.put)({
293
+ entity,
294
+ item: {
295
+ ...subTask,
296
+ TYPE: createType(),
297
+ ...keys
298
+ }
299
+ });
278
300
  return subTask;
279
301
  } catch (ex) {
280
302
  throw new _error.default(ex.message || "Could not update importExportSubTask.", ex.code || "UPDATE_IMPORT_EXPORT_SUB_TASK_ERROR", {
@@ -297,11 +319,10 @@ const createStorageOperations = params => {
297
319
  SK: createSortKey(where.id)
298
320
  };
299
321
  try {
300
- const result = await entity.get(keys);
301
- if (!result || !result.Item) {
302
- return null;
303
- }
304
- return (0, _cleanup.cleanupItem)(entity, result.Item);
322
+ return await (0, _dbDynamodb.getClean)({
323
+ entity,
324
+ keys
325
+ });
305
326
  } catch (ex) {
306
327
  throw new _error.default(ex.message || "Could not load import export subTask by given parameters.", ex.code || "IMPORT_EXPORT_TASK_GET_ERROR", {
307
328
  where
@@ -334,21 +355,22 @@ const createStorageOperations = params => {
334
355
  };
335
356
  let results = [];
336
357
  try {
337
- results = await (0, _query.queryAll)(queryAllParams);
358
+ results = await (0, _query.queryAllClean)(queryAllParams);
338
359
  } catch (ex) {
339
360
  throw new _error.default(ex.message || "Could not list import export tasks by given parameters.", ex.code || "LIST_IMPORT_EXPORT_SUB_TASKS_ERROR", {
340
361
  partitionKey: queryAllParams.partitionKey,
341
362
  options: queryAllParams.options
342
363
  });
343
364
  }
344
- const items = results.map(item => (0, _cleanup.cleanupItem)(entity, item));
345
365
  return (0, _listResponse.createListResponse)({
346
- items: items,
366
+ items: results,
347
367
  limit,
348
- totalCount: items.length,
368
+ totalCount: results.length,
349
369
  after: null
350
370
  });
351
371
  }
352
372
  };
353
373
  };
354
- exports.createStorageOperations = createStorageOperations;
374
+ exports.createStorageOperations = createStorageOperations;
375
+
376
+ //# sourceMappingURL=index.js.map
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","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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"}
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_query","_listResponse","_table","_importExportTaskEntity","_dbDynamodb","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","getClean","ex","WebinyError","message","code","listTasks","limit","queryAllParams","partitionKey","options","index","undefined","results","queryAllClean","createListResponse","items","totalCount","length","after","createTask","task","GSI1_PK","GSI1_SK","createdOn","put","item","TYPE","importExportTask","updateTask","original","deleteTask","deleteItem","updateTaskStats","prevStatus","nextStatus","update","stats","$set","$add","createSubTask","subTask","pkParams","parent","updateSubTask","getSubTask","listSubTasks","beginsWith","exports"],"sources":["index.ts"],"sourcesContent":["import type {\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 WebinyError from \"@webiny/error\";\nimport type { QueryAllParams } from \"@webiny/db-dynamodb/utils/query\";\nimport { queryAllClean } 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 type { CreateStorageOperations } from \"./types\";\nimport { deleteItem, getClean, put, update } from \"@webiny/db-dynamodb\";\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(params: ImportExportTaskStorageOperationsGetParams) {\n const { where } = params;\n\n const keys = {\n PK: createPartitionKey(where),\n SK: \"A\"\n };\n\n try {\n return await getClean<ImportExportTask>({\n entity,\n keys\n });\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 index: \"GSI1\",\n limit: limit || undefined\n }\n };\n\n let results: ImportExportTask[] = [];\n\n try {\n results = await queryAllClean<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 // TODO: Implement sort and filter\n\n return createListResponse({\n items: results,\n limit,\n totalCount: results.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 put({\n entity,\n item: {\n ...task,\n TYPE: createType(),\n ...keys\n }\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 put({\n entity,\n item: {\n ...task,\n TYPE: createType(),\n ...keys\n }\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 deleteItem({\n entity,\n keys\n });\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 update({\n entity,\n item: {\n TYPE: createType(),\n ...keys,\n stats: {\n $set: {\n [prevStatus]: { $add: -1 },\n [nextStatus]: { $add: 1 }\n }\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 put({\n entity,\n item: {\n ...subTask,\n TYPE: createType(),\n ...keys\n }\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 put({\n entity,\n item: {\n ...subTask,\n TYPE: createType(),\n ...keys\n }\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(params: ImportExportTaskStorageOperationsGetSubTaskParams) {\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 return await getClean<ImportExportTask>({\n entity,\n keys\n });\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 queryAllClean<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 return createListResponse({\n items: results,\n limit,\n totalCount: results.length,\n after: null\n });\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@webiny/api-page-builder-import-export-so-ddb",
3
- "version": "0.0.0-unstable.2af142b57e",
3
+ "version": "0.0.0-unstable.3bc8100a7f",
4
4
  "main": "index.js",
5
5
  "keywords": [
6
6
  "@webiny/api-page-builder-import-export",
7
7
  "storage-operations",
8
8
  "dynamodb",
9
+ "ddb",
9
10
  "pbie:ddb"
10
11
  ],
11
12
  "repository": {
@@ -17,37 +18,29 @@
17
18
  "description": "The DynamoDB storage operations for import export feature in the Webiny Page Builder API.",
18
19
  "license": "MIT",
19
20
  "dependencies": {
20
- "@babel/runtime": "7.20.13",
21
- "@webiny/api-page-builder-import-export": "0.0.0-unstable.2af142b57e",
22
- "@webiny/db-dynamodb": "0.0.0-unstable.2af142b57e",
23
- "@webiny/error": "0.0.0-unstable.2af142b57e",
24
- "dynamodb-toolbox": "0.3.5"
21
+ "@webiny/api-page-builder-import-export": "0.0.0-unstable.3bc8100a7f",
22
+ "@webiny/aws-sdk": "0.0.0-unstable.3bc8100a7f",
23
+ "@webiny/db-dynamodb": "0.0.0-unstable.3bc8100a7f",
24
+ "@webiny/error": "0.0.0-unstable.3bc8100a7f"
25
25
  },
26
26
  "devDependencies": {
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": "^0.0.0-unstable.2af142b57e",
32
- "@webiny/api-tenancy": "^0.0.0-unstable.2af142b57e",
33
- "@webiny/cli": "^0.0.0-unstable.2af142b57e",
34
- "@webiny/handler-aws": "^0.0.0-unstable.2af142b57e",
35
- "@webiny/handler-graphql": "^0.0.0-unstable.2af142b57e",
36
- "@webiny/project-utils": "^0.0.0-unstable.2af142b57e",
37
- "jest": "^28.1.0",
38
- "jest-dynalite": "^3.2.0",
39
- "jest-environment-node": "^27.0.6",
40
- "rimraf": "^3.0.2",
41
- "ttypescript": "^1.5.12",
42
- "typescript": "4.7.4"
27
+ "@webiny/api-security": "0.0.0-unstable.3bc8100a7f",
28
+ "@webiny/api-tenancy": "0.0.0-unstable.3bc8100a7f",
29
+ "@webiny/handler-aws": "0.0.0-unstable.3bc8100a7f",
30
+ "@webiny/handler-graphql": "0.0.0-unstable.3bc8100a7f",
31
+ "@webiny/project-utils": "0.0.0-unstable.3bc8100a7f",
32
+ "jest": "29.7.0",
33
+ "jest-dynalite": "3.6.1",
34
+ "rimraf": "6.0.1",
35
+ "typescript": "5.3.3"
43
36
  },
44
37
  "publishConfig": {
45
38
  "access": "public",
46
39
  "directory": "dist"
47
40
  },
48
41
  "scripts": {
49
- "build": "yarn webiny run build",
50
- "watch": "yarn webiny run watch"
42
+ "build": "node ../cli/bin.js run build",
43
+ "watch": "node ../cli/bin.js run watch"
51
44
  },
52
- "gitHead": "2af142b57e7cdc433f5098b3b6d43ae6caa5d54e"
45
+ "gitHead": "3bc8100a7f1fb3a8d6a3454a2765f8ef377c279e"
53
46
  }
package/types.d.ts CHANGED
@@ -1,12 +1,10 @@
1
- import { DynamoDBTypes } from "dynamodb-toolbox/dist/classes/Table";
2
- import { EntityAttributeConfig, EntityCompositeAttributes } from "dynamodb-toolbox/dist/classes/Entity";
3
- import { DocumentClient } from "aws-sdk/clients/dynamodb";
4
- import { ImportExportTaskStorageOperations } from "@webiny/api-page-builder-import-export/types";
5
- export declare type AttributeDefinition = DynamoDBTypes | EntityAttributeConfig | EntityCompositeAttributes;
6
- export declare type Attributes = Record<string, AttributeDefinition>;
1
+ import type { AttributeDefinition } from "@webiny/db-dynamodb/toolbox";
2
+ import type { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb";
3
+ import type { ImportExportTaskStorageOperations } from "@webiny/api-page-builder-import-export/types";
4
+ export type Attributes = Record<string, AttributeDefinition>;
7
5
  export interface CreateStorageOperations {
8
6
  (params: {
9
- documentClient: DocumentClient;
7
+ documentClient: DynamoDBDocument;
10
8
  table?: string;
11
9
  attributes?: Attributes;
12
10
  }): ImportExportTaskStorageOperations;
package/types.js CHANGED
@@ -2,4 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
- });
5
+ });
6
+
7
+ //# sourceMappingURL=types.js.map
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 { 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
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { AttributeDefinition } from \"@webiny/db-dynamodb/toolbox\";\nimport type { DynamoDBDocument } from \"@webiny/aws-sdk/client-dynamodb\";\nimport type { ImportExportTaskStorageOperations } from \"@webiny/api-page-builder-import-export/types\";\n\nexport type Attributes = Record<string, AttributeDefinition>;\n\nexport interface CreateStorageOperations {\n (params: {\n documentClient: DynamoDBDocument;\n table?: string;\n attributes?: Attributes;\n }): ImportExportTaskStorageOperations;\n}\n"],"mappings":"","ignoreList":[]}