@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,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.decodeDDBCursor = exports.encodeDDBCursor = exports.decodePagination = exports.PaginationDirection = void 0;
4
+ const tslib_1 = require("tslib");
5
+ const crypto_1 = tslib_1.__importDefault(require("crypto"));
4
6
  const errors_1 = require("./errors");
7
+ const SIV = "Q05yyCR+0tyWl6glrZhlNw==";
8
+ const ENCRYPTION_ALG = "aes-256-ctr";
5
9
  var PaginationDirection;
6
10
  (function (PaginationDirection) {
7
11
  PaginationDirection[PaginationDirection["FORWARD"] = 0] = "FORWARD";
@@ -36,33 +40,71 @@ function decodePagination(pagination) {
36
40
  };
37
41
  }
38
42
  exports.decodePagination = decodePagination;
39
- const encodeDDBCursor = ({ PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, }, index) => index === "GSI2"
40
- ? Buffer.from(JSON.stringify({ PK, SK, GSI2PK, GSI2SK })).toString("base64")
41
- : index === "GSI3"
42
- ? Buffer.from(JSON.stringify({ PK, SK, GSI3PK, GSI3SK })).toString("base64")
43
- : index === "GSI4"
44
- ? Buffer.from(JSON.stringify({ PK, SK, GSI4PK, GSI4SK })).toString("base64")
45
- : index === "GSI5"
46
- ? Buffer.from(JSON.stringify({ PK, SK, GSI5PK, GSI5SK })).toString("base64")
47
- : Buffer.from(JSON.stringify({ PK, SK })).toString("base64");
43
+ /**
44
+ * Utility function to encrypt a cursor with AES-256-CTR, but uses a
45
+ * synthetic initialization vector (SIV) to ensure that the same cursor
46
+ * produces the same encrypted value.
47
+ */
48
+ const encryptCursor = (key, cursor) => {
49
+ const cipher = crypto_1.default.createCipheriv(ENCRYPTION_ALG, key, Buffer.from(SIV, "base64"));
50
+ const encrypted = Buffer.concat([cipher.update(cursor), cipher.final()]);
51
+ return encrypted.toString("base64");
52
+ };
53
+ /**
54
+ * Utility function to decrypt a cursor with AES-256-CTR, but uses a
55
+ * synthetic initialization vector (SIV) to ensure that the same cursor
56
+ * produces the same encrypted value.
57
+ */
58
+ const decryptCursor = (key, encryptedCursor) => {
59
+ try {
60
+ const decipher = crypto_1.default.createDecipheriv(ENCRYPTION_ALG, key, Buffer.from(SIV, "base64"));
61
+ const decrypted = Buffer.concat([
62
+ decipher.update(Buffer.from(encryptedCursor, "base64")),
63
+ decipher.final(),
64
+ ]).toString();
65
+ return decrypted;
66
+ }
67
+ catch (error) {
68
+ return null;
69
+ }
70
+ };
71
+ const encodeDDBCursor = ({ PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, }, encryptionKey) => {
72
+ const cursor = Buffer.from(JSON.stringify({
73
+ PK,
74
+ SK,
75
+ GSI2PK,
76
+ GSI2SK,
77
+ GSI3PK,
78
+ GSI3SK,
79
+ GSI4PK,
80
+ GSI4SK,
81
+ GSI5PK,
82
+ GSI5SK,
83
+ })).toString("base64");
84
+ if (encryptionKey)
85
+ return encryptCursor(encryptionKey, cursor);
86
+ return cursor;
87
+ };
48
88
  exports.encodeDDBCursor = encodeDDBCursor;
49
- const decodeDDBCursor = (encoded) => {
89
+ const decodeDDBCursor = (encoded, index, encryptionKey) => {
50
90
  try {
51
- const { PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, } = JSON.parse(Buffer.from(encoded, "base64").toString());
91
+ const json = encryptionKey ? decryptCursor(encryptionKey, encoded) : encoded;
92
+ // const json = encoded
93
+ if (!json)
94
+ throw new Error("Couldn't decrypt cursor");
95
+ const { PK, SK, GSI2PK, GSI2SK, GSI3PK, GSI3SK, GSI4PK, GSI4SK, GSI5PK, GSI5SK, } = JSON.parse(Buffer.from(json, "base64").toString());
52
96
  if (typeof PK !== "string" || typeof SK !== "string")
53
97
  throw new Error();
54
- return {
55
- PK,
56
- SK,
57
- GSI2PK,
58
- GSI2SK,
59
- GSI3PK,
60
- GSI3SK,
61
- GSI4PK,
62
- GSI4SK,
63
- GSI5PK,
64
- GSI5SK,
65
- };
98
+ if (!index)
99
+ return { PK, SK };
100
+ if (index === "GSI2")
101
+ return { PK, SK, GSI2PK, GSI2SK };
102
+ if (index === "GSI3")
103
+ return { PK, SK, GSI3PK, GSI3SK };
104
+ if (index === "GSI4")
105
+ return { PK, SK, GSI4PK, GSI4SK };
106
+ if (index === "GSI5")
107
+ return { PK, SK, GSI5PK, GSI5SK };
66
108
  }
67
109
  catch (error) {
68
110
  throw new errors_1.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
  };
@@ -4,6 +4,7 @@ exports.getProvider = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const errors_1 = require("./errors");
6
6
  const function_1 = require("fp-ts/lib/function");
7
+ const pagination_1 = require("./pagination");
7
8
  const getProvider = (client) => {
8
9
  // operation func overloads with access to client
9
10
  function operation(operation, ...args) {
@@ -217,6 +218,9 @@ const getProvider = (client) => {
217
218
  GSI5SK: this.GSI5SK,
218
219
  };
219
220
  },
221
+ cursor() {
222
+ return pagination_1.encodeDDBCursor(this.keys(), client.cursorEncryptionKey);
223
+ },
220
224
  put(params) {
221
225
  return client.put(Object.assign({ _model: this._model, _operation: "put", item: this }, params));
222
226
  },
@@ -281,7 +285,7 @@ const getProvider = (client) => {
281
285
  },
282
286
  get(key, params) {
283
287
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
284
- return client.get(Object.assign({ _model: this, _operation: "get", key }, params));
288
+ return client.get(Object.assign({ _model: this, _operation: "get", key: { PK: key.PK, SK: key.SK } }, params));
285
289
  });
286
290
  },
287
291
  load(key, params) {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":";;;;AAiBA,qCAA6C;AAC7C,iDAA2C;AAgBpC,MAAM,WAAW,GAAG,CAAC,MAAc,EAAE,EAAE;IAC5C,iDAAiD;IAiEjD,SAAS,SAAS,CAKhB,SAOe,EACf,GAAG,IAAW;;QAEd,QAAQ,SAAS,EAAE;YACjB,KAAK,KAAK,CAAC,CAAC;gBACV,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;gBAC1B,uBACE,UAAU,EAAE,KAAK,EACjB,MAAM,EAAE,IAAI,EACZ,GAAG,IACA,MAAM,EACV;aACF;YACD,KAAK,KAAK,CAAC,CAAC;gBACV,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;gBAC3B,OAAO;oBACL,MAAM,kBACJ,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,IAAI,IACD,MAAM,CACV;oBACD,QAAQ,EAAE;wBACR,MAAM,EAAE,IAAI;wBACZ,UAAU,EAAE,QAAQ;wBACpB,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;qBAClC;iBACF,CAAA;aACF;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,GAAG,IAAI,CAAA;gBAE/B,MAAM,WAAW,GAAG,IAAI,IAAI,CAAC,MAAM,+CAC9B,IAAI,CAAC,MAAM,EAAE,GACb,oBAAoB,CAAC,UAAU,CAAC,KACnC,WAAW,EAAE,CAAC,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,CAAC,GAAG,CAAC,IACnC,CAAA;gBAEP,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,IAAI,IAAI,CAAC,EAAE,KAAK,WAAW,CAAC,EAAE,EAAE;oBAC5D,kBAAkB;oBAClB,uBACE,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,KAAK,EACjB,IAAI,EAAE,WAAW,IACd,CAAC,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;wBACtC,CAAC,CAAC;4BACE,mBAAmB,EAAE,gEAAgE;4BACrF,wBAAwB,EAAE,EAAE,aAAa,EAAE,aAAa,EAAE;4BAC1D,yBAAyB,EAAE;gCACzB,aAAa,EAAE,IAAI,CAAC,WAAW;6BAChC;yBACF;wBACH,CAAC,CAAC,EAAE,mBAAmB,EAAE,SAAS,EAAE,CAAC,EACxC;iBACF;qBAAM;oBACL,iCAAiC;oBACjC,OAAO;wBACL;4BACE,MAAM,EAAE;gCACN,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,UAAU,EAAE,KAAK;gCACjB,IAAI,EAAE,WAAW;gCACjB,mBAAmB,EAAE,0BAA0B;6BAChD;4BACD,QAAQ,EAAE;gCACR,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,UAAU,EAAE,QAAQ;gCACpB,GAAG,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE;6BAChD;yBACF;wBACD;4BACE,MAAM,EAAE;gCACN,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,UAAU,EAAE,QAAQ;gCACpB,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;6BAClC;4BACD,QAAQ,EAAE;gCACR,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,UAAU,EAAE,KAAK;gCACjB,IAAI;6BACL;yBACF;qBACF,CAAA;iBACF;aACF;YACD,KAAK,WAAW,CAAC,CAAC;gBAChB,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;gBACtC,uBACE,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,WAAW,EACvB,GAAG,EACH,UAAU,EAAE,oBAAoB,CAAC,UAAU,CAAC,IACzC,MAAM,EACV;aACF;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAA;gBAClB,OAAO;oBACL,MAAM,EAAE,IAAI;oBACZ,UAAU,EAAE,QAAQ;oBACpB,GAAG;iBACJ,CAAA;aACF;YACD,KAAK,YAAY,CAAC,CAAC;gBACjB,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;gBACnB,OAAO;oBACL;wBACE,MAAM,EAAE;4BACN,MAAM,EAAE,IAAI;4BACZ,UAAU,EAAE,QAAQ;4BACpB,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE;yBAClC;wBACD,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE;qBACpD;oBACD;wBACE,MAAM,EAAE;4BACN,MAAM,EAAE,IAAI;4BACZ,UAAU,EAAE,KAAK;4BACjB,QAAQ,EAAE,IAAI;4BACd,IAAI;yBACL;wBACD,QAAQ,EAAE;4BACR,MAAM,EAAE,IAAI;4BACZ,UAAU,EAAE,QAAQ;4BACpB,GAAG,EAAE;gCACH,EAAE,EAAE,cAAc,IAAI,CAAC,EAAE,EAAE;gCAC3B,EAAE,EAAE,cAAc,IAAI,CAAC,EAAE,EAAE;6BAC5B;yBACF;qBACF;iBACF,CAAA;aACF;YACD,KAAK,WAAW,CAAC,CAAC;gBAChB,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;gBAC1B,uBACE,UAAU,EAAE,WAAW,EACvB,GAAG,IACA,MAAM,EACV;aACF;YAED;gBACE,OAAO,iBAAM,CAAC,SAAS,CAAC,CAAA;SAC3B;IACH,CAAC;IAwDD,SAAS,iBAAiB,CAExB,EAA0E,EAC1E,GAAG,IAAW;QAEd,QAAQ,EAAE,EAAE;YACV,KAAK,KAAK,CAAC,CAAC;gBACV,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;gBACrB,OAAQ,SAAiB,CAAC,IAAI,CAC5B,IAAI,CAAC,MAAa,EAClB,KAAK,EACL,IAAI,EACJ,MAAM,CACA,CAAA;aACT;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,MAAM,CAAC,UAAU,CAAC,GAAG,IAAI,CAAA;gBACzB,OAAQ,SAAiB,CAAC,IAAI,CAC5B,IAAI,CAAC,MAAa,EAClB,QAAQ,EACR,IAAI,EACJ,oBAAoB,CAAC,UAAU,CAAC,CAC1B,CAAA;aACT;YACD,KAAK,WAAW,CAAC,CAAC;gBAChB,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;gBACjC,OAAQ,SAAiB,CAAC,IAAI,CAC5B,IAAI,CAAC,MAAa,EAClB,WAAW,EACX,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAC5B,oBAAoB,CAAC,UAAU,CAAC,EAChC,MAAM,CACA,CAAA;aACT;YACD,KAAK,QAAQ,CAAC,CAAC;gBACb,OAAQ,SAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAa,EAAE,QAAQ,EAAE;oBAC3D,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,EAAE,EAAE,IAAI,CAAC,EAAE;iBACZ,CAAQ,CAAA;aACV;YACD,KAAK,YAAY,CAAC,CAAC;gBACjB,OAAQ,SAAiB,CAAC,IAAI,CAC5B,IAAI,CAAC,MAAa,EAClB,YAAY,EACZ,IAAI,CACE,CAAA;aACT;YACD,KAAK,WAAW,CAAC,CAAC;gBAChB,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAA;gBACrB,OAAQ,SAAiB,CAAC,IAAI,CAC5B,IAAI,CAAC,MAAa,EAClB,WAAW,EACX,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,EAC5B,MAAM,CACA,CAAA;aACT;YAED;gBACE,OAAO,iBAAM,CAAC,EAAE,CAAC,CAAA;SACpB;IACH,CAAC;IAED,OAAO;QACL,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM;YAChB,SAAS;YACT,gBAAgB,CAEd,KAAc;;gBAEd,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEhC,IAAI;oBACF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;wBAC5B,WAAW,EAAE,MAAC,KAAa,CAAC,WAAW,mCAAI,CAAC;qBAC7C,CAAC,CAAA;iBACH;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,OAAO,CAAA;iBACf;YACH,CAAC;YACD,gBAAgB,CAGL,IAAO;gBAChB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,CAAA;gBAE7B,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE;oBACzC,WAAW,EACT,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;iBAC9D,CAAC,CAAA;YACJ,CAAC;YAED,GAAG,CAED,GAAQ,EACR,MAA+D;gBAE/D,OAAO,MAAM,CAAC,GAAG,iBACf,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,EACT,CAAA;YACJ,CAAC;YAED,IAAI,CAKF,GAAQ,EACR,MAEC;gBAED,OAAO,MAAM,CAAC,IAAI,iBAEd,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,GAEX,EAAE,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,CACvB,CAAA;YACH,CAAC;YAED,QAAQ,CAEN,IAAW,EACX,MAA+D;gBAE/D,OAAO,MAAM,CAAC,QAAQ,CACpB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAChB,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,EACT,CAAC,CACJ,CAAA;YACH,CAAC;YAED,QAAQ,CAEN,IAAqB,EACrB,MAAwB;gBAExB,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,CAAC;YAED,GAAG,CAED,IAAe,EACf,MAGC;gBAED,OAAO,MAAM,CAAC,GAAG,iBACf,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,IAAI,IACD,MAAM,EACT,CAAA;YACJ,CAAC;YAED,SAAS,CAEP,GAAQ,EACR,UAA+C,EAC/C,MAGC;gBAED,OAAO,MAAM,CAAC,SAAS,iBACrB,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,WAAW,EACvB,GAAG,EACH,UAAU,EAAE,oBAAoB,CAAC,UAAU,CAAC,IACzC,MAAM,EACT,CAAA;YACJ,CAAC;YAED,MAAM,CAAmD,GAAQ;gBAC/D,OAAO,MAAM,CAAC,MAAM,CAAI;oBACtB,MAAM,EAAE,IAAI;oBACZ,UAAU,EAAE,QAAQ;oBACpB,GAAG;iBACJ,CAAC,CAAA;YACJ,CAAC;YAED,UAAU,CAER,IAAe;gBAEf,OAAO,MAAM,CAAC,UAAU,CAAY,IAAI,CAAC,CAAA;YAC3C,CAAC;SACF;QACD,aAAa,EAAE;YACb,QAAQ,EAAE,MAAM;YAChB,IAAI;gBACF,OAAO;oBACL,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAA;YACH,CAAC;YACD,GAAG,CAED,MAGC;gBAED,OAAO,MAAM,CAAC,GAAG,iBACf,MAAM,EAAE,IAAI,CAAC,MAAM,EACnB,UAAU,EAAE,KAAK,EACjB,IAAI,EAAE,IAAI,IACP,MAAM,EACT,CAAA;YACJ,CAAC;YACK,MAAM,CAEV,UAA+C;;oBAE/C,MAAM,EAAE,GAAI,IAAI,CAAC,SAAsC,CACrD,QAAQ,EACR,oBAAoB,CAAC,UAAU,CAAC,CACjC,CAAA;oBAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;wBACtB,kBAAkB;wBAClB,IAAI;4BACF,OAAO,MAAM,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;yBAC5B;wBAAC,OAAO,KAAK,EAAE;4BACd,IAAI,KAAK,CAAC,IAAI,KAAK,iCAAiC;gCAClD,MAAM,IAAI,2BAAkB,CAC1B,iFAAiF,CAClF,CAAA;4BAEH,MAAM,KAAK,CAAA;yBACZ;qBACF;yBAAM;wBACL,eAAe;wBACf,IAAI;4BACF,MAAM,WAAW,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;4BAErC,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;4BAErB,OAAO,WAAW,CAAA;yBACnB;wBAAC,OAAO,KAAK,EAAE;4BACd,MAAM,KAAK,CAAA;yBACZ;qBACF;gBACH,CAAC;aAAA;YACD,WAAW,CAET,UAA+C;gBAE/C,MAAM,EAAE,GAAI,IAAI,CAAC,SAAsC,CACrD,QAAQ,EACR,oBAAoB,CAAC,UAAU,CAAC,CACjC,CAAA;gBAED,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAA;gBAEnE,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;YAC1B,CAAC;YACD,MAAM;gBACJ,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;gBAE9B,OAAO,MAAM,CAAC,MAAM,CAAC;oBACnB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,UAAU,EAAE,QAAQ;oBACpB,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE;iBAChB,CAAC,CAAA;YACJ,CAAC;YACD,UAAU;gBACR,OAAO,MAAM,CAAC,UAAU,CAAI,IAAI,CAAC,CAAA;YACnC,CAAC;YACD,SAAS,EAAE,iBAAiB;SAC7B;QAED,UAAU,EAAE;YACV,QAAQ,EAAE,MAAM;YAChB,gBAAgB,CAAmC,KAAc;;gBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEhC,IAAI;oBACF,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE;wBAC5B,WAAW,EAAE,MAAC,KAAa,CAAC,WAAW,mCAAI,CAAC;qBAC7C,CAAC,CAAA;iBACH;gBAAC,OAAO,KAAK,EAAE;oBACd,OAAO,OAAO,CAAA;iBACf;YACH,CAAC;YACK,GAAG,CAEP,GAAQ,EACR,MAA+D;;oBAE/D,OAAO,MAAM,CAAC,GAAG,iBACf,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,EACT,CAAA;gBACJ,CAAC;aAAA;YAED,IAAI,CAEF,GAAQ,EACR,MAEC;gBAED,OAAO,MAAM,CAAC,IAAI,iBAEd,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,GAEX,EAAE,IAAI,EAAE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE,CACvB,CAAA;YACH,CAAC;YAED,QAAQ,CAEN,IAAW,EACX,MAA+D;gBAE/D,OAAO,MAAM,CAAC,QAAQ,CACpB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,iBAChB,MAAM,EAAE,IAAI,EACZ,UAAU,EAAE,KAAK,EACjB,GAAG,IACA,MAAM,EACT,CAAC,CACJ,CAAA;YACH,CAAC;YAED,QAAQ,CAEN,IAAqB,EACrB,MAAwB;gBAExB,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;YAC5C,CAAC;SACF;KACF,CAAA;AACH,CAAC,CAAA;AA5nBY,QAAA,WAAW,eA4nBvB;AAID,SAAS,oBAAoB,CAAgC,GAAM;IACjE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,WAAW,CAAC,CACvE,CAAA;AACR,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/provider.ts"],"names":[],"mappings":"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"}