@microsoft/agents-hosting-storage-cosmos 1.4.0-beta.7.g541749904d → 1.4.2

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,13 +1,8 @@
1
1
  /**
2
- * Provides methods for escaping keys for Cosmos DB.
2
+ * Escapes a key for use in Cosmos DB.
3
+ * @param key The key to escape.
4
+ * @param keySuffix The suffix to append to the key.
5
+ * @param compatibilityMode Indicates whether compatibility mode is enabled.
6
+ * @returns The escaped key.
3
7
  */
4
- export declare namespace CosmosDbKeyEscape {
5
- /**
6
- * Escapes a key for use in Cosmos DB.
7
- * @param key The key to escape.
8
- * @param keySuffix The suffix to append to the key.
9
- * @param compatibilityMode Indicates whether compatibility mode is enabled.
10
- * @returns The escaped key.
11
- */
12
- function escapeKey(key: string, keySuffix?: string, compatibilityMode?: boolean): string;
13
- }
8
+ export declare function escapeKey(key: string, keySuffix?: string, compatibilityMode?: boolean): string;
@@ -1,55 +1,48 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CosmosDbKeyEscape = void 0;
3
+ exports.escapeKey = escapeKey;
4
4
  // Copyright (c) Microsoft Corporation. All rights reserved.
5
5
  // Licensed under the MIT License.
6
6
  const crypto_1 = require("crypto");
7
7
  const agents_activity_1 = require("@microsoft/agents-activity");
8
8
  const errorHelper_1 = require("./errorHelper");
9
+ const maxKeyLength = 255;
10
+ const illegalKeys = ['\\', '?', '/', '#', '\t', '\n', '\r', '*'];
11
+ const illegalKeyCharacterReplacementMap = illegalKeys.reduce((map, c) => {
12
+ map.set(c, `*${c.charCodeAt(0).toString(16)}`);
13
+ return map;
14
+ }, new Map());
9
15
  /**
10
- * Provides methods for escaping keys for Cosmos DB.
16
+ * Escapes a key for use in Cosmos DB.
17
+ * @param key The key to escape.
18
+ * @param keySuffix The suffix to append to the key.
19
+ * @param compatibilityMode Indicates whether compatibility mode is enabled.
20
+ * @returns The escaped key.
11
21
  */
12
- var CosmosDbKeyEscape;
13
- (function (CosmosDbKeyEscape) {
14
- const maxKeyLength = 255;
15
- const illegalKeys = ['\\', '?', '/', '#', '\t', '\n', '\r', '*'];
16
- const illegalKeyCharacterReplacementMap = illegalKeys.reduce((map, c) => {
17
- map.set(c, `*${c.charCodeAt(0).toString(16)}`);
18
- return map;
19
- }, new Map());
20
- /**
21
- * Escapes a key for use in Cosmos DB.
22
- * @param key The key to escape.
23
- * @param keySuffix The suffix to append to the key.
24
- * @param compatibilityMode Indicates whether compatibility mode is enabled.
25
- * @returns The escaped key.
26
- */
27
- function escapeKey(key, keySuffix, compatibilityMode) {
28
- if (!key) {
29
- throw agents_activity_1.ExceptionHelper.generateException(Error, errorHelper_1.Errors.MissingKeyParameter);
30
- }
31
- const keySplitted = key.split('');
32
- const firstIllegalCharIndex = keySplitted.findIndex((c) => illegalKeys.some((i) => i === c));
33
- if (firstIllegalCharIndex === -1) {
34
- return truncateKey(`${key}${keySuffix || ''}`, compatibilityMode);
35
- }
36
- const sanitizedKey = keySplitted.reduce((result, c) => result + (illegalKeyCharacterReplacementMap.has(c) ? illegalKeyCharacterReplacementMap.get(c) : c), '');
37
- return truncateKey(`${sanitizedKey}${keySuffix || ''}`, compatibilityMode);
22
+ function escapeKey(key, keySuffix, compatibilityMode) {
23
+ if (!key) {
24
+ throw agents_activity_1.ExceptionHelper.generateException(Error, errorHelper_1.Errors.MissingKeyParameter);
38
25
  }
39
- CosmosDbKeyEscape.escapeKey = escapeKey;
40
- function truncateKey(key, truncateKeysForCompatibility) {
41
- if (truncateKeysForCompatibility === false) {
42
- return key;
43
- }
44
- if (key.length > maxKeyLength) {
45
- key = hashKey(key);
46
- }
26
+ const keySplitted = key.split('');
27
+ const firstIllegalCharIndex = keySplitted.findIndex((c) => illegalKeys.some((i) => i === c));
28
+ if (firstIllegalCharIndex === -1) {
29
+ return truncateKey(`${key}${keySuffix || ''}`, compatibilityMode);
30
+ }
31
+ const sanitizedKey = keySplitted.reduce((result, c) => result + (illegalKeyCharacterReplacementMap.has(c) ? illegalKeyCharacterReplacementMap.get(c) : c), '');
32
+ return truncateKey(`${sanitizedKey}${keySuffix || ''}`, compatibilityMode);
33
+ }
34
+ function truncateKey(key, truncateKeysForCompatibility) {
35
+ if (truncateKeysForCompatibility === false) {
47
36
  return key;
48
37
  }
49
- function hashKey(key) {
50
- const hash = (0, crypto_1.createHash)('sha256');
51
- hash.update(key);
52
- return hash.digest('hex');
38
+ if (key.length > maxKeyLength) {
39
+ key = hashKey(key);
53
40
  }
54
- })(CosmosDbKeyEscape || (exports.CosmosDbKeyEscape = CosmosDbKeyEscape = {}));
41
+ return key;
42
+ }
43
+ function hashKey(key) {
44
+ const hash = (0, crypto_1.createHash)('sha256');
45
+ hash.update(key);
46
+ return hash.digest('hex');
47
+ }
55
48
  //# sourceMappingURL=cosmosDbKeyEscape.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cosmosDbKeyEscape.js","sourceRoot":"","sources":["../../src/cosmosDbKeyEscape.ts"],"names":[],"mappings":";;;AAAA,4DAA4D;AAC5D,kCAAkC;AAClC,mCAAmC;AACnC,gEAA4D;AAC5D,+CAAsC;AAEtC;;GAEG;AACH,IAAiB,iBAAiB,CA4DjC;AA5DD,WAAiB,iBAAiB;IAChC,MAAM,YAAY,GAAW,GAAG,CAAA;IAChC,MAAM,WAAW,GAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IACnF,MAAM,iCAAiC,GAAwB,WAAW,CAAC,MAAM,CAC/E,CAAC,GAAwB,EAAE,CAAS,EAAE,EAAE;QACtC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;QAC9C,OAAO,GAAG,CAAA;IACZ,CAAC,EACD,IAAI,GAAG,EAAE,CACV,CAAA;IAED;;;;;;OAMG;IACH,SAAgB,SAAS,CAAE,GAAW,EAAE,SAAkB,EAAE,iBAA2B;QACrF,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,iCAAe,CAAC,iBAAiB,CACrC,KAAK,EACL,oBAAM,CAAC,mBAAmB,CAC3B,CAAA;QACH,CAAC;QAED,MAAM,WAAW,GAAa,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC3C,MAAM,qBAAqB,GAAW,WAAW,CAAC,SAAS,CAAC,CAAC,CAAS,EAAW,EAAE,CACjF,WAAW,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CACzC,CAAA;QAED,IAAI,qBAAqB,KAAK,CAAC,CAAC,EAAE,CAAC;YACjC,OAAO,WAAW,CAAC,GAAG,GAAG,GAAG,SAAS,IAAI,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;QACnE,CAAC;QAED,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CACrC,CAAC,MAAc,EAAE,CAAS,EAAE,EAAE,CAC5B,MAAM,GAAG,CAAC,iCAAiC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EACrG,EAAE,CACH,CAAA;QAED,OAAO,WAAW,CAAC,GAAG,YAAY,GAAG,SAAS,IAAI,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;IAC5E,CAAC;IAxBe,2BAAS,YAwBxB,CAAA;IAED,SAAS,WAAW,CAAE,GAAW,EAAE,4BAAsC;QACvE,IAAI,4BAA4B,KAAK,KAAK,EAAE,CAAC;YAC3C,OAAO,GAAG,CAAA;QACZ,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;YAC9B,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC;QACD,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,SAAS,OAAO,CAAE,GAAW;QAC3B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAA;QACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3B,CAAC;AACH,CAAC,EA5DgB,iBAAiB,iCAAjB,iBAAiB,QA4DjC"}
1
+ {"version":3,"file":"cosmosDbKeyEscape.js","sourceRoot":"","sources":["../../src/cosmosDbKeyEscape.ts"],"names":[],"mappings":";;AAuBA,8BAwBC;AA/CD,4DAA4D;AAC5D,kCAAkC;AAClC,mCAAmC;AACnC,gEAA4D;AAC5D,+CAAsC;AAEtC,MAAM,YAAY,GAAW,GAAG,CAAA;AAChC,MAAM,WAAW,GAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;AACnF,MAAM,iCAAiC,GAAwB,WAAW,CAAC,MAAM,CAC/E,CAAC,GAAwB,EAAE,CAAS,EAAE,EAAE;IACtC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC9C,OAAO,GAAG,CAAA;AACZ,CAAC,EACD,IAAI,GAAG,EAAE,CACV,CAAA;AAED;;;;;;GAMG;AACH,SAAgB,SAAS,CAAE,GAAW,EAAE,SAAkB,EAAE,iBAA2B;IACrF,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,iCAAe,CAAC,iBAAiB,CACrC,KAAK,EACL,oBAAM,CAAC,mBAAmB,CAC3B,CAAA;IACH,CAAC;IAED,MAAM,WAAW,GAAa,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;IAC3C,MAAM,qBAAqB,GAAW,WAAW,CAAC,SAAS,CAAC,CAAC,CAAS,EAAW,EAAE,CACjF,WAAW,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CACzC,CAAA;IAED,IAAI,qBAAqB,KAAK,CAAC,CAAC,EAAE,CAAC;QACjC,OAAO,WAAW,CAAC,GAAG,GAAG,GAAG,SAAS,IAAI,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;IACnE,CAAC;IAED,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CACrC,CAAC,MAAc,EAAE,CAAS,EAAE,EAAE,CAC5B,MAAM,GAAG,CAAC,iCAAiC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EACrG,EAAE,CACH,CAAA;IAED,OAAO,WAAW,CAAC,GAAG,YAAY,GAAG,SAAS,IAAI,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAA;AAC5E,CAAC;AAED,SAAS,WAAW,CAAE,GAAW,EAAE,4BAAsC;IACvE,IAAI,4BAA4B,KAAK,KAAK,EAAE,CAAC;QAC3C,OAAO,GAAG,CAAA;IACZ,CAAC;IAED,IAAI,GAAG,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;QAC9B,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,OAAO,CAAE,GAAW;IAC3B,MAAM,IAAI,GAAG,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAA;IACjC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAChB,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AAC3B,CAAC"}
@@ -68,7 +68,7 @@ class CosmosDbPartitionedStorage {
68
68
  if (cosmosDbStorageOptions.compatibilityMode) {
69
69
  throw agents_activity_1.ExceptionHelper.generateException(ReferenceError, errorHelper_1.Errors.InvalidCompatibilityModeWithKeySuffix);
70
70
  }
71
- const suffixEscaped = cosmosDbKeyEscape_1.CosmosDbKeyEscape.escapeKey(cosmosDbStorageOptions.keySuffix);
71
+ const suffixEscaped = (0, cosmosDbKeyEscape_1.escapeKey)(cosmosDbStorageOptions.keySuffix);
72
72
  if (cosmosDbStorageOptions.keySuffix !== suffixEscaped) {
73
73
  throw agents_activity_1.ExceptionHelper.generateException(ReferenceError, errorHelper_1.Errors.InvalidKeySuffixCharacters, undefined, { keySuffix: cosmosDbStorageOptions.keySuffix });
74
74
  }
@@ -90,7 +90,7 @@ class CosmosDbPartitionedStorage {
90
90
  const storeItems = {};
91
91
  await Promise.all(keys.map(async (k) => {
92
92
  try {
93
- const escapedKey = cosmosDbKeyEscape_1.CosmosDbKeyEscape.escapeKey(k, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode);
93
+ const escapedKey = (0, cosmosDbKeyEscape_1.escapeKey)(k, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode);
94
94
  const readItemResponse = await this.container
95
95
  .item(escapedKey, this.getPartitionKey(escapedKey))
96
96
  .read();
@@ -128,7 +128,7 @@ class CosmosDbPartitionedStorage {
128
128
  await this.initialize();
129
129
  await Promise.all(Object.entries(changes).map(async ([key, { eTag, ...change }]) => {
130
130
  const document = new documentStoreItem_1.DocumentStoreItem({
131
- id: cosmosDbKeyEscape_1.CosmosDbKeyEscape.escapeKey(key, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode),
131
+ id: (0, cosmosDbKeyEscape_1.escapeKey)(key, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode),
132
132
  realId: key,
133
133
  document: change,
134
134
  });
@@ -151,7 +151,7 @@ class CosmosDbPartitionedStorage {
151
151
  async delete(keys) {
152
152
  await this.initialize();
153
153
  await Promise.all(keys.map(async (k) => {
154
- const escapedKey = cosmosDbKeyEscape_1.CosmosDbKeyEscape.escapeKey(k, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode);
154
+ const escapedKey = (0, cosmosDbKeyEscape_1.escapeKey)(k, this.cosmosDbStorageOptions.keySuffix, this.cosmosDbStorageOptions.compatibilityMode);
155
155
  try {
156
156
  await this.container.item(escapedKey, this.getPartitionKey(escapedKey)).delete();
157
157
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cosmosDbPartitionedStorage.js","sourceRoot":"","sources":["../../src/cosmosDbPartitionedStorage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cosmosDbPartitionedStorage.js","sourceRoot":"","sources":["../../src/cosmosDbPartitionedStorage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@microsoft/agents-hosting-storage-cosmos",
4
- "version": "1.4.0-beta.7.g541749904d",
4
+ "version": "1.4.2",
5
5
  "homepage": "https://github.com/microsoft/Agents-for-js",
6
6
  "repository": {
7
7
  "type": "git",
@@ -17,8 +17,8 @@
17
17
  "types": "dist/src/index.d.ts",
18
18
  "dependencies": {
19
19
  "@azure/cosmos": "^4.9.1",
20
- "@microsoft/agents-hosting": "1.4.0-beta.7.g541749904d",
21
- "@microsoft/agents-activity": "1.4.0-beta.7.g541749904d"
20
+ "@microsoft/agents-hosting": "1.4.2",
21
+ "@microsoft/agents-activity": "1.4.2"
22
22
  },
23
23
  "license": "MIT",
24
24
  "files": [
@@ -4,67 +4,62 @@ import { createHash } from 'crypto'
4
4
  import { ExceptionHelper } from '@microsoft/agents-activity'
5
5
  import { Errors } from './errorHelper'
6
6
 
7
+ const maxKeyLength: number = 255
8
+ const illegalKeys: readonly string[] = ['\\', '?', '/', '#', '\t', '\n', '\r', '*']
9
+ const illegalKeyCharacterReplacementMap: Map<string, string> = illegalKeys.reduce<Map<string, string>>(
10
+ (map: Map<string, string>, c: string) => {
11
+ map.set(c, `*${c.charCodeAt(0).toString(16)}`)
12
+ return map
13
+ },
14
+ new Map()
15
+ )
16
+
7
17
  /**
8
- * Provides methods for escaping keys for Cosmos DB.
18
+ * Escapes a key for use in Cosmos DB.
19
+ * @param key The key to escape.
20
+ * @param keySuffix The suffix to append to the key.
21
+ * @param compatibilityMode Indicates whether compatibility mode is enabled.
22
+ * @returns The escaped key.
9
23
  */
10
- export namespace CosmosDbKeyEscape {
11
- const maxKeyLength: number = 255
12
- const illegalKeys: readonly string[] = ['\\', '?', '/', '#', '\t', '\n', '\r', '*']
13
- const illegalKeyCharacterReplacementMap: Map<string, string> = illegalKeys.reduce<Map<string, string>>(
14
- (map: Map<string, string>, c: string) => {
15
- map.set(c, `*${c.charCodeAt(0).toString(16)}`)
16
- return map
17
- },
18
- new Map()
19
- )
20
-
21
- /**
22
- * Escapes a key for use in Cosmos DB.
23
- * @param key The key to escape.
24
- * @param keySuffix The suffix to append to the key.
25
- * @param compatibilityMode Indicates whether compatibility mode is enabled.
26
- * @returns The escaped key.
27
- */
28
- export function escapeKey (key: string, keySuffix?: string, compatibilityMode?: boolean): string {
29
- if (!key) {
30
- throw ExceptionHelper.generateException(
31
- Error,
32
- Errors.MissingKeyParameter
33
- )
34
- }
35
-
36
- const keySplitted: string[] = key.split('')
37
- const firstIllegalCharIndex: number = keySplitted.findIndex((c: string): boolean =>
38
- illegalKeys.some((i: string) => i === c)
24
+ export function escapeKey (key: string, keySuffix?: string, compatibilityMode?: boolean): string {
25
+ if (!key) {
26
+ throw ExceptionHelper.generateException(
27
+ Error,
28
+ Errors.MissingKeyParameter
39
29
  )
30
+ }
40
31
 
41
- if (firstIllegalCharIndex === -1) {
42
- return truncateKey(`${key}${keySuffix || ''}`, compatibilityMode)
43
- }
44
-
45
- const sanitizedKey = keySplitted.reduce(
46
- (result: string, c: string) =>
47
- result + (illegalKeyCharacterReplacementMap.has(c) ? illegalKeyCharacterReplacementMap.get(c)! : c),
48
- ''
49
- )
32
+ const keySplitted: string[] = key.split('')
33
+ const firstIllegalCharIndex: number = keySplitted.findIndex((c: string): boolean =>
34
+ illegalKeys.some((i: string) => i === c)
35
+ )
50
36
 
51
- return truncateKey(`${sanitizedKey}${keySuffix || ''}`, compatibilityMode)
37
+ if (firstIllegalCharIndex === -1) {
38
+ return truncateKey(`${key}${keySuffix || ''}`, compatibilityMode)
52
39
  }
53
40
 
54
- function truncateKey (key: string, truncateKeysForCompatibility?: boolean): string {
55
- if (truncateKeysForCompatibility === false) {
56
- return key
57
- }
41
+ const sanitizedKey = keySplitted.reduce(
42
+ (result: string, c: string) =>
43
+ result + (illegalKeyCharacterReplacementMap.has(c) ? illegalKeyCharacterReplacementMap.get(c)! : c),
44
+ ''
45
+ )
46
+
47
+ return truncateKey(`${sanitizedKey}${keySuffix || ''}`, compatibilityMode)
48
+ }
58
49
 
59
- if (key.length > maxKeyLength) {
60
- key = hashKey(key)
61
- }
50
+ function truncateKey (key: string, truncateKeysForCompatibility?: boolean): string {
51
+ if (truncateKeysForCompatibility === false) {
62
52
  return key
63
53
  }
64
54
 
65
- function hashKey (key: string): string {
66
- const hash = createHash('sha256')
67
- hash.update(key)
68
- return hash.digest('hex')
55
+ if (key.length > maxKeyLength) {
56
+ key = hashKey(key)
69
57
  }
58
+ return key
59
+ }
60
+
61
+ function hashKey (key: string): string {
62
+ const hash = createHash('sha256')
63
+ hash.update(key)
64
+ return hash.digest('hex')
70
65
  }
@@ -2,7 +2,7 @@
2
2
  // Licensed under the MIT License.
3
3
 
4
4
  import { Container, CosmosClient } from '@azure/cosmos'
5
- import { CosmosDbKeyEscape } from './cosmosDbKeyEscape'
5
+ import { escapeKey } from './cosmosDbKeyEscape'
6
6
  import { DocumentStoreItem } from './documentStoreItem'
7
7
  import { CosmosDbPartitionedStorageOptions } from './cosmosDbPartitionedStorageOptions'
8
8
  import { Storage, StoreItems } from '@microsoft/agents-hosting'
@@ -95,7 +95,7 @@ export class CosmosDbPartitionedStorage implements Storage {
95
95
  Errors.InvalidCompatibilityModeWithKeySuffix
96
96
  )
97
97
  }
98
- const suffixEscaped = CosmosDbKeyEscape.escapeKey(cosmosDbStorageOptions.keySuffix)
98
+ const suffixEscaped = escapeKey(cosmosDbStorageOptions.keySuffix)
99
99
  if (cosmosDbStorageOptions.keySuffix !== suffixEscaped) {
100
100
  throw ExceptionHelper.generateException(
101
101
  ReferenceError,
@@ -129,7 +129,7 @@ export class CosmosDbPartitionedStorage implements Storage {
129
129
  await Promise.all(
130
130
  keys.map(async (k: string): Promise<void> => {
131
131
  try {
132
- const escapedKey = CosmosDbKeyEscape.escapeKey(
132
+ const escapedKey = escapeKey(
133
133
  k,
134
134
  this.cosmosDbStorageOptions.keySuffix,
135
135
  this.cosmosDbStorageOptions.compatibilityMode
@@ -185,7 +185,7 @@ export class CosmosDbPartitionedStorage implements Storage {
185
185
  await Promise.all(
186
186
  Object.entries(changes).map(async ([key, { eTag, ...change }]): Promise<void> => {
187
187
  const document = new DocumentStoreItem({
188
- id: CosmosDbKeyEscape.escapeKey(
188
+ id: escapeKey(
189
189
  key,
190
190
  this.cosmosDbStorageOptions.keySuffix,
191
191
  this.cosmosDbStorageOptions.compatibilityMode
@@ -222,7 +222,7 @@ export class CosmosDbPartitionedStorage implements Storage {
222
222
 
223
223
  await Promise.all(
224
224
  keys.map(async (k: string): Promise<void> => {
225
- const escapedKey = CosmosDbKeyEscape.escapeKey(
225
+ const escapedKey = escapeKey(
226
226
  k,
227
227
  this.cosmosDbStorageOptions.keySuffix,
228
228
  this.cosmosDbStorageOptions.compatibilityMode