@model-ts/dynamodb 1.0.0 → 1.2.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.
Files changed (38) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/__test__/client-with-cursor-encryption.test.d.ts +1 -0
  3. package/dist/cjs/__test__/client-with-cursor-encryption.test.js +1911 -0
  4. package/dist/cjs/__test__/client-with-cursor-encryption.test.js.map +1 -0
  5. package/dist/cjs/__test__/client.test.js +77 -56
  6. package/dist/cjs/__test__/client.test.js.map +1 -1
  7. package/dist/cjs/client.d.ts +14 -2
  8. package/dist/cjs/client.js +28 -9
  9. package/dist/cjs/client.js.map +1 -1
  10. package/dist/cjs/dynamodb-model.d.ts +4 -0
  11. package/dist/cjs/pagination.d.ts +48 -3
  12. package/dist/cjs/pagination.js +65 -23
  13. package/dist/cjs/pagination.js.map +1 -1
  14. package/dist/cjs/provider.d.ts +21 -20
  15. package/dist/cjs/provider.js +5 -1
  16. package/dist/cjs/provider.js.map +1 -1
  17. package/dist/esm/__test__/client-with-cursor-encryption.test.d.ts +1 -0
  18. package/dist/esm/__test__/client-with-cursor-encryption.test.js +1909 -0
  19. package/dist/esm/__test__/client-with-cursor-encryption.test.js.map +1 -0
  20. package/dist/esm/__test__/client.test.js +78 -57
  21. package/dist/esm/__test__/client.test.js.map +1 -1
  22. package/dist/esm/client.d.ts +14 -2
  23. package/dist/esm/client.js +28 -9
  24. package/dist/esm/client.js.map +1 -1
  25. package/dist/esm/dynamodb-model.d.ts +4 -0
  26. package/dist/esm/pagination.d.ts +48 -3
  27. package/dist/esm/pagination.js +64 -23
  28. package/dist/esm/pagination.js.map +1 -1
  29. package/dist/esm/provider.d.ts +21 -20
  30. package/dist/esm/provider.js +5 -1
  31. package/dist/esm/provider.js.map +1 -1
  32. package/package.json +2 -2
  33. package/src/__test__/client-with-cursor-encryption.test.ts +2445 -0
  34. package/src/__test__/client.test.ts +92 -57
  35. package/src/client.ts +54 -13
  36. package/src/dynamodb-model.ts +4 -0
  37. package/src/pagination.ts +76 -19
  38. package/src/provider.ts +5 -2
@@ -1,4 +1,7 @@
1
+ import crypto from "crypto";
1
2
  import { PaginationError } from "./errors";
3
+ const SIV = "Q05yyCR+0tyWl6glrZhlNw==";
4
+ const ENCRYPTION_ALG = "aes-256-ctr";
2
5
  export var PaginationDirection;
3
6
  (function (PaginationDirection) {
4
7
  PaginationDirection[PaginationDirection["FORWARD"] = 0] = "FORWARD";
@@ -32,32 +35,70 @@ export function decodePagination(pagination) {
32
35
  : PaginationDirection.FORWARD,
33
36
  };
34
37
  }
35
- export const encodeDDBCursor = ({ PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, }, index) => index === "GSI2"
36
- ? Buffer.from(JSON.stringify({ PK, SK, GSI2PK, GSI2SK })).toString("base64")
37
- : index === "GSI3"
38
- ? Buffer.from(JSON.stringify({ PK, SK, GSI3PK, GSI3SK })).toString("base64")
39
- : index === "GSI4"
40
- ? Buffer.from(JSON.stringify({ PK, SK, GSI4PK, GSI4SK })).toString("base64")
41
- : index === "GSI5"
42
- ? Buffer.from(JSON.stringify({ PK, SK, GSI5PK, GSI5SK })).toString("base64")
43
- : Buffer.from(JSON.stringify({ PK, SK })).toString("base64");
44
- export const decodeDDBCursor = (encoded) => {
38
+ /**
39
+ * Utility function to encrypt a cursor with AES-256-CTR, but uses a
40
+ * synthetic initialization vector (SIV) to ensure that the same cursor
41
+ * produces the same encrypted value.
42
+ */
43
+ const encryptCursor = (key, cursor) => {
44
+ const cipher = crypto.createCipheriv(ENCRYPTION_ALG, key, Buffer.from(SIV, "base64"));
45
+ const encrypted = Buffer.concat([cipher.update(cursor), cipher.final()]);
46
+ return encrypted.toString("base64");
47
+ };
48
+ /**
49
+ * Utility function to decrypt a cursor with AES-256-CTR, but uses a
50
+ * synthetic initialization vector (SIV) to ensure that the same cursor
51
+ * produces the same encrypted value.
52
+ */
53
+ const decryptCursor = (key, encryptedCursor) => {
54
+ try {
55
+ const decipher = crypto.createDecipheriv(ENCRYPTION_ALG, key, Buffer.from(SIV, "base64"));
56
+ const decrypted = Buffer.concat([
57
+ decipher.update(Buffer.from(encryptedCursor, "base64")),
58
+ decipher.final(),
59
+ ]).toString();
60
+ return decrypted;
61
+ }
62
+ catch (error) {
63
+ return null;
64
+ }
65
+ };
66
+ export const encodeDDBCursor = ({ PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, }, encryptionKey) => {
67
+ const cursor = Buffer.from(JSON.stringify({
68
+ PK,
69
+ SK,
70
+ GSI2PK,
71
+ GSI2SK,
72
+ GSI3PK,
73
+ GSI3SK,
74
+ GSI4PK,
75
+ GSI4SK,
76
+ GSI5PK,
77
+ GSI5SK,
78
+ })).toString("base64");
79
+ if (encryptionKey)
80
+ return encryptCursor(encryptionKey, cursor);
81
+ return cursor;
82
+ };
83
+ export const decodeDDBCursor = (encoded, index, encryptionKey) => {
45
84
  try {
46
- const { PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, } = JSON.parse(Buffer.from(encoded, "base64").toString());
85
+ const json = encryptionKey ? decryptCursor(encryptionKey, encoded) : encoded;
86
+ // const json = encoded
87
+ if (!json)
88
+ throw new Error("Couldn't decrypt cursor");
89
+ const { PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, } = JSON.parse(Buffer.from(json, "base64").toString());
47
90
  if (typeof PK !== "string" || typeof SK !== "string")
48
91
  throw new Error();
49
- return {
50
- PK,
51
- SK,
52
- GSI2PK,
53
- GSI2SK,
54
- GSI3PK,
55
- GSI3SK,
56
- GSI4PK,
57
- GSI4SK,
58
- GSI5PK,
59
- GSI5SK,
60
- };
92
+ if (!index)
93
+ return { PK, SK };
94
+ if (index === "GSI2")
95
+ return { PK, SK, GSI2PK, GSI2SK };
96
+ if (index === "GSI3")
97
+ return { PK, SK, GSI3PK, GSI3SK };
98
+ if (index === "GSI4")
99
+ return { PK, SK, GSI4PK, GSI4SK };
100
+ if (index === "GSI5")
101
+ return { PK, SK, GSI5PK, GSI5SK };
61
102
  }
62
103
  catch (error) {
63
104
  throw new PaginationError("Couldn't decode cursor");
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/pagination.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/pagination.ts"],"names":[],"mappings":"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"}
@@ -79,24 +79,25 @@ export declare const getProvider: (client: Client) => {
79
79
  GSI5PK: string | undefined;
80
80
  GSI5SK: string | undefined;
81
81
  };
82
- put<T_3 extends DynamoDBModelInstance>(this: T_3, params?: Omit<PutOperation<T_3, ModelOf<T_3>>, "_model" | "_operation" | "item"> | undefined): Promise<T_3>;
83
- update<T_4 extends DynamoDBModelInstance>(this: T_4, attributes: Partial<ModelOf<T_4>["_codec"]["_A"]>): Promise<T_4>;
84
- applyUpdate<T_5 extends DynamoDBModelInstance>(this: T_5, attributes: Partial<ModelOf<T_5>["_codec"]["_A"]>): [T_5, BulkOperation<T_5, ModelOf<T_5>> | BulkOperation<T_5, ModelOf<T_5>>[]];
85
- delete<T_6 extends DynamoDBModelInstance>(this: T_6): Promise<null>;
86
- softDelete<T_7 extends DynamoDBModelInstance>(this: T_7): Promise<T_7>;
82
+ cursor<T_3 extends DynamoDBModelInstance>(this: T_3): string;
83
+ put<T_4 extends DynamoDBModelInstance>(this: T_4, params?: Omit<PutOperation<T_4, ModelOf<T_4>>, "_model" | "_operation" | "item"> | undefined): Promise<T_4>;
84
+ update<T_5 extends DynamoDBModelInstance>(this: T_5, attributes: Partial<ModelOf<T_5>["_codec"]["_A"]>): Promise<T_5>;
85
+ applyUpdate<T_6 extends DynamoDBModelInstance>(this: T_6, attributes: Partial<ModelOf<T_6>["_codec"]["_A"]>): [T_6, BulkOperation<T_6, ModelOf<T_6>> | BulkOperation<T_6, ModelOf<T_6>>[]];
86
+ delete<T_7 extends DynamoDBModelInstance>(this: T_7): Promise<null>;
87
+ softDelete<T_8 extends DynamoDBModelInstance>(this: T_8): Promise<T_8>;
87
88
  operation: {
88
- <T_8 extends DynamoDBModelInstance>(this: T_8, operation: "put", params?: Omit<PutOperation<T_8, ModelOf<T_8>>, "_model" | "_operation" | "item"> | undefined): {
89
- action: PutOperation<T_8, ModelOf<T_8>>;
90
- rollback: DeleteOperation<ModelOf<T_8>>;
91
- };
92
- <T_9 extends DynamoDBModelInstance>(this: T_9, operation: "update", attributes: Partial<InstanceType<ModelOf<T_9>>>): PutOperation<T_9, ModelOf<T_9>> | [{
89
+ <T_9 extends DynamoDBModelInstance>(this: T_9, operation: "put", params?: Omit<PutOperation<T_9, ModelOf<T_9>>, "_model" | "_operation" | "item"> | undefined): {
93
90
  action: PutOperation<T_9, ModelOf<T_9>>;
94
91
  rollback: DeleteOperation<ModelOf<T_9>>;
92
+ };
93
+ <T_10 extends DynamoDBModelInstance>(this: T_10, operation: "update", attributes: Partial<InstanceType<ModelOf<T_10>>>): PutOperation<T_10, ModelOf<T_10>> | [{
94
+ action: PutOperation<T_10, ModelOf<T_10>>;
95
+ rollback: DeleteOperation<ModelOf<T_10>>;
95
96
  }, {
96
- action: DeleteOperation<ModelOf<T_9>>;
97
- rollback: PutOperation<T_9, ModelOf<T_9>>;
97
+ action: DeleteOperation<ModelOf<T_10>>;
98
+ rollback: PutOperation<T_10, ModelOf<T_10>>;
98
99
  }];
99
- <T_10 extends DynamoDBModelInstance>(this: T_10, operation: "updateRaw", attributes: Partial<InstanceType<ModelOf<T_10>>> & {
100
+ <T_11 extends DynamoDBModelInstance>(this: T_11, operation: "updateRaw", attributes: Partial<InstanceType<ModelOf<T_11>>> & {
100
101
  GSI2PK?: string | null | undefined;
101
102
  GSI2SK?: string | null | undefined;
102
103
  GSI3PK?: string | null | undefined;
@@ -105,14 +106,14 @@ export declare const getProvider: (client: Client) => {
105
106
  GSI4SK?: string | null | undefined;
106
107
  GSI5PK?: string | null | undefined;
107
108
  GSI5SK?: string | null | undefined;
108
- }, params?: Omit<UpdateRawOperation<ModelOf<T_10>>, "_model" | "_operation" | "key" | "attributes"> | undefined): UpdateRawOperation<ModelOf<T_10>>;
109
- <T_11 extends DynamoDBModelInstance>(this: T_11, operation: "delete"): DeleteOperation<ModelOf<T_11>>;
110
- <T_12 extends DynamoDBModelInstance>(this: T_12, operation: "softDelete"): [{
111
- action: PutOperation<T_12, ModelOf<T_12>>;
112
- rollback: DeleteOperation<ModelOf<T_12>>;
109
+ }, params?: Omit<UpdateRawOperation<ModelOf<T_11>>, "_model" | "_operation" | "key" | "attributes"> | undefined): UpdateRawOperation<ModelOf<T_11>>;
110
+ <T_12 extends DynamoDBModelInstance>(this: T_12, operation: "delete"): DeleteOperation<ModelOf<T_12>>;
111
+ <T_13 extends DynamoDBModelInstance>(this: T_13, operation: "softDelete"): [{
112
+ action: PutOperation<T_13, ModelOf<T_13>>;
113
+ rollback: DeleteOperation<ModelOf<T_13>>;
113
114
  }, {
114
- action: DeleteOperation<ModelOf<T_12>>;
115
- rollback: PutOperation<T_12, ModelOf<T_12>>;
115
+ action: DeleteOperation<ModelOf<T_13>>;
116
+ rollback: PutOperation<T_13, ModelOf<T_13>>;
116
117
  }];
117
118
  (operation: "condition", params: Omit<ConditionCheckOperation, "_operation" | "key">): ConditionCheckOperation;
118
119
  };
@@ -1,6 +1,7 @@
1
1
  import { __awaiter } from "tslib";
2
2
  import { RaceConditionError } from "./errors";
3
3
  import { absurd } from "fp-ts/lib/function";
4
+ import { encodeDDBCursor } from "./pagination";
4
5
  export const getProvider = (client) => {
5
6
  // operation func overloads with access to client
6
7
  function operation(operation, ...args) {
@@ -214,6 +215,9 @@ export const getProvider = (client) => {
214
215
  GSI5SK: this.GSI5SK,
215
216
  };
216
217
  },
218
+ cursor() {
219
+ return encodeDDBCursor(this.keys(), client.cursorEncryptionKey);
220
+ },
217
221
  put(params) {
218
222
  return client.put(Object.assign({ _model: this._model, _operation: "put", item: this }, params));
219
223
  },
@@ -278,7 +282,7 @@ export const getProvider = (client) => {
278
282
  },
279
283
  get(key, params) {
280
284
  return __awaiter(this, void 0, void 0, function* () {
281
- return client.get(Object.assign({ _model: this, _operation: "get", key }, params));
285
+ return client.get(Object.assign({ _model: this, _operation: "get", key: { PK: key.PK, SK: key.SK } }, params));
282
286
  });
283
287
  },
284
288
  load(key, params) {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@model-ts/dynamodb",
3
- "version": "1.0.0",
3
+ "version": "1.2.0",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "author": "Fabian Finke <finkef@icloud.com>",
@@ -14,7 +14,7 @@
14
14
  },
15
15
  "keywords": [],
16
16
  "peerDependencies": {
17
- "@model-ts/core": "^0.2.0",
17
+ "@model-ts/core": "^0.2.2",
18
18
  "aws-sdk": "^2.691.0",
19
19
  "fp-ts": "~2.6.5",
20
20
  "io-ts": "^2.2.4"