@or-sdk/key-value-storage 0.15.0 → 0.18.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.
@@ -41,12 +41,16 @@ var sdk_api_1 = require("@or-sdk/sdk-api");
41
41
  var constants_1 = require("./constants");
42
42
  var KeyValueStorage = (function () {
43
43
  function KeyValueStorage(params) {
44
- var token = params.token, discoveryUrl = params.discoveryUrl;
44
+ var token = params.token, discoveryUrl = params.discoveryUrl, accountId = params.accountId;
45
45
  this.sdkApi = new sdk_api_1.SdkApi({
46
46
  token: token,
47
47
  discoveryUrl: discoveryUrl,
48
+ accountId: accountId,
48
49
  });
49
50
  }
51
+ KeyValueStorage.prototype.composeRoute = function (route) {
52
+ return this.sdkApi.isCrossAccount ? "accounts/".concat(this.sdkApi.currentAccountId, "/").concat(route) : route;
53
+ };
50
54
  KeyValueStorage.prototype.listKeys = function (tableName, prefix, withValues) {
51
55
  if (withValues === void 0) { withValues = false; }
52
56
  return __awaiter(this, void 0, void 0, function () {
@@ -55,7 +59,7 @@ var KeyValueStorage = (function () {
55
59
  switch (_a.label) {
56
60
  case 0: return [4, this.sdkApi.makeRequest({
57
61
  method: 'GET',
58
- route: "".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName),
62
+ route: this.composeRoute("".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName)),
59
63
  params: {
60
64
  prefix: prefix ? prefix : undefined,
61
65
  withValues: withValues,
@@ -73,7 +77,7 @@ var KeyValueStorage = (function () {
73
77
  return __generator(this, function (_a) {
74
78
  return [2, this.sdkApi.makeRequest({
75
79
  method: 'GET',
76
- route: "".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key),
80
+ route: this.composeRoute("".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key)),
77
81
  })];
78
82
  });
79
83
  });
@@ -83,7 +87,7 @@ var KeyValueStorage = (function () {
83
87
  return __generator(this, function (_a) {
84
88
  return [2, this.sdkApi.makeRequest({
85
89
  method: 'POST',
86
- route: "".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key),
90
+ route: this.composeRoute("".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key)),
87
91
  data: {
88
92
  expire: expire,
89
93
  value: value,
@@ -97,7 +101,7 @@ var KeyValueStorage = (function () {
97
101
  return __generator(this, function (_a) {
98
102
  return [2, this.sdkApi.makeRequest({
99
103
  method: 'DELETE',
100
- route: "".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key),
104
+ route: this.composeRoute("".concat(constants_1.STORAGE_ROUTE, "/").concat(tableName, "/").concat(key)),
101
105
  })];
102
106
  });
103
107
  });
@@ -1 +1 @@
1
- {"version":3,"file":"KeyValueStorage.js","sourceRoot":"","sources":["../../src/KeyValueStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyC;AAOzC,yCAA4C;AAS5C;IASE,yBAAY,MAA6B;QAC/B,IAAA,KAAK,GAAmB,MAAM,MAAzB,EAAE,YAAY,GAAK,MAAM,aAAX,CAAY;QAEvC,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;YACvB,KAAK,OAAA;YACL,YAAY,cAAA;SACb,CAAC,CAAC;IACL,CAAC;IAYY,kCAAQ,GAArB,UACE,SAAiB,EACjB,MAAe,EACf,UAAkB;QAAlB,2BAAA,EAAA,kBAAkB;;;;;4BAId,WAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;4BAChC,MAAM,EAAE,KAAK;4BACb,KAAK,EAAE,UAAG,yBAAa,cAAI,SAAS,CAAE;4BACtC,MAAM,EAAE;gCACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gCACnC,UAAU,YAAA;6BACX;yBACF,CAAC,EAAA;;wBARS,OAAO,GACd,CAAA,SAOF,CAAA,cARgB;wBAUlB,WAAO,OAAO,EAAC;;;;KAChB;IAWY,uCAAa,GAA1B,UACE,SAAiB,EACjB,GAAW;;;gBAEX,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,KAAK;wBACb,KAAK,EAAE,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE;qBAC9C,CAAC,EAAC;;;KACJ;IAaY,uCAAa,GAA1B,UACE,SAAiB,EACjB,GAAW,EACX,KAAuC,EACvC,MAAe;;;gBAEf,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,MAAM;wBACd,KAAK,EAAE,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE;wBAC7C,IAAI,EAAE;4BACJ,MAAM,QAAA;4BACN,KAAK,OAAA;yBACN;qBACF,CAAC,EAAC;;;KACJ;IAWY,mCAAS,GAAtB,UACE,SAAiB,EACjB,GAAW;;;gBAEX,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE;qBAC9C,CAAC,EAAC;;;KACJ;IACH,sBAAC;AAAD,CAAC,AA/GD,IA+GC;AA/GY,0CAAe"}
1
+ {"version":3,"file":"KeyValueStorage.js","sourceRoot":"","sources":["../../src/KeyValueStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAyC;AAOzC,yCAA4C;AAS5C;IASE,yBAAY,MAA6B;QAC/B,IAAA,KAAK,GAA8B,MAAM,MAApC,EAAE,YAAY,GAAgB,MAAM,aAAtB,EAAE,SAAS,GAAK,MAAM,UAAX,CAAY;QAElD,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;YACvB,KAAK,OAAA;YACL,YAAY,cAAA;YACZ,SAAS,WAAA;SACV,CAAC,CAAC;IACL,CAAC;IAED,sCAAY,GAAZ,UAAa,KAAa;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,mBAAY,IAAI,CAAC,MAAM,CAAC,gBAAgB,cAAI,KAAK,CAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAClG,CAAC;IAYY,kCAAQ,GAArB,UACE,SAAiB,EACjB,MAAe,EACf,UAAkB;QAAlB,2BAAA,EAAA,kBAAkB;;;;;4BAId,WAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;4BAChC,MAAM,EAAE,KAAK;4BACb,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAG,yBAAa,cAAI,SAAS,CAAE,CAAC;4BACzD,MAAM,EAAE;gCACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gCACnC,UAAU,YAAA;6BACX;yBACF,CAAC,EAAA;;wBARS,OAAO,GACd,CAAA,SAOF,CAAA,cARgB;wBAUlB,WAAO,OAAO,EAAC;;;;KAChB;IAWY,uCAAa,GAA1B,UACE,SAAiB,EACjB,GAAW;;;gBAEX,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,KAAK;wBACb,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE,CAAC;qBACjE,CAAC,EAAC;;;KACJ;IAaY,uCAAa,GAA1B,UACE,SAAiB,EACjB,GAAW,EACX,KAAuC,EACvC,MAAe;;;gBAEf,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,MAAM;wBACd,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE,CAAC;wBAChE,IAAI,EAAE;4BACJ,MAAM,QAAA;4BACN,KAAK,OAAA;yBACN;qBACF,CAAC,EAAC;;;KACJ;IAWY,mCAAS,GAAtB,UACE,SAAiB,EACjB,GAAW;;;gBAEX,WAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;wBAC7B,MAAM,EAAE,QAAQ;wBAChB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,UAAG,yBAAa,cAAI,SAAS,cAAI,GAAG,CAAE,CAAC;qBACjE,CAAC,EAAC;;;KACJ;IACH,sBAAC;AAAD,CAAC,AApHD,IAoHC;AApHY,0CAAe"}
@@ -11,17 +11,21 @@ import { SdkApi } from '@or-sdk/sdk-api';
11
11
  import { STORAGE_ROUTE } from './constants';
12
12
  export class KeyValueStorage {
13
13
  constructor(params) {
14
- const { token, discoveryUrl } = params;
14
+ const { token, discoveryUrl, accountId } = params;
15
15
  this.sdkApi = new SdkApi({
16
16
  token,
17
17
  discoveryUrl,
18
+ accountId,
18
19
  });
19
20
  }
21
+ composeRoute(route) {
22
+ return this.sdkApi.isCrossAccount ? `accounts/${this.sdkApi.currentAccountId}/${route}` : route;
23
+ }
20
24
  listKeys(tableName, prefix, withValues = false) {
21
25
  return __awaiter(this, void 0, void 0, function* () {
22
26
  const { value: { records }, } = yield this.sdkApi.makeRequest({
23
27
  method: 'GET',
24
- route: `${STORAGE_ROUTE}/${tableName}`,
28
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}`),
25
29
  params: {
26
30
  prefix: prefix ? prefix : undefined,
27
31
  withValues,
@@ -34,7 +38,7 @@ export class KeyValueStorage {
34
38
  return __awaiter(this, void 0, void 0, function* () {
35
39
  return this.sdkApi.makeRequest({
36
40
  method: 'GET',
37
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
41
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
38
42
  });
39
43
  });
40
44
  }
@@ -42,7 +46,7 @@ export class KeyValueStorage {
42
46
  return __awaiter(this, void 0, void 0, function* () {
43
47
  return this.sdkApi.makeRequest({
44
48
  method: 'POST',
45
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
49
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
46
50
  data: {
47
51
  expire,
48
52
  value,
@@ -54,7 +58,7 @@ export class KeyValueStorage {
54
58
  return __awaiter(this, void 0, void 0, function* () {
55
59
  return this.sdkApi.makeRequest({
56
60
  method: 'DELETE',
57
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
61
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
58
62
  });
59
63
  });
60
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"KeyValueStorage.js","sourceRoot":"","sources":["../../src/KeyValueStorage.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAOzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAS5C,MAAM,OAAO,eAAe;IAS1B,YAAY,MAA6B;QACvC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;QAEvC,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;YACvB,KAAK;YACL,YAAY;SACb,CAAC,CAAC;IACL,CAAC;IAYY,QAAQ,CACnB,SAAiB,EACjB,MAAe,EACf,UAAU,GAAG,KAAK;;YAElB,MAAM,EACJ,KAAK,EAAE,EAAE,OAAO,EAAE,GACnB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAChC,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,GAAG,aAAa,IAAI,SAAS,EAAE;gBACtC,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;oBACnC,UAAU;iBACX;aACF,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAWY,aAAa,CACxB,SAAiB,EACjB,GAAW;;YAEX,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;KAAA;IAaY,aAAa,CACxB,SAAiB,EACjB,GAAW,EACX,KAAuC,EACvC,MAAe;;YAEf,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE;gBAC7C,IAAI,EAAE;oBACJ,MAAM;oBACN,KAAK;iBACN;aACF,CAAC,CAAC;QACL,CAAC;KAAA;IAWY,SAAS,CACpB,SAAiB,EACjB,GAAW;;YAEX,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE;aAC9C,CAAC,CAAC;QACL,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"KeyValueStorage.js","sourceRoot":"","sources":["../../src/KeyValueStorage.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAOzC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAS5C,MAAM,OAAO,eAAe;IAS1B,YAAY,MAA6B;QACvC,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAElD,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CAAC;YACvB,KAAK;YACL,YAAY;YACZ,SAAS;SACV,CAAC,CAAC;IACL,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,OAAO,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IAClG,CAAC;IAYY,QAAQ,CACnB,SAAiB,EACjB,MAAe,EACf,UAAU,GAAG,KAAK;;YAElB,MAAM,EACJ,KAAK,EAAE,EAAE,OAAO,EAAE,GACnB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAChC,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,aAAa,IAAI,SAAS,EAAE,CAAC;gBACzD,MAAM,EAAE;oBACN,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;oBACnC,UAAU;iBACX;aACF,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAWY,aAAa,CACxB,SAAiB,EACjB,GAAW;;YAEX,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;aACjE,CAAC,CAAC;QACL,CAAC;KAAA;IAaY,aAAa,CACxB,SAAiB,EACjB,GAAW,EACX,KAAuC,EACvC,MAAe;;YAEf,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;gBAChE,IAAI,EAAE;oBACJ,MAAM;oBACN,KAAK;iBACN;aACF,CAAC,CAAC;QACL,CAAC;KAAA;IAWY,SAAS,CACpB,SAAiB,EACjB,GAAW;;YAEX,OAAO,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBAC7B,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,aAAa,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;aACjE,CAAC,CAAC;QACL,CAAC;KAAA;CACF"}
@@ -2,6 +2,7 @@ import { KeyValueStorageConfig, KeyValueStorageRecord, KeyValueStorageRecordWith
2
2
  export declare class KeyValueStorage {
3
3
  private readonly sdkApi;
4
4
  constructor(params: KeyValueStorageConfig);
5
+ composeRoute(route: string): string;
5
6
  listKeys(tableName: string, prefix?: string, withValues?: boolean): Promise<KeyValueStorageRecordWithLastModified[]>;
6
7
  getValueByKey(tableName: string, key: string): Promise<KeyValueStorageRecord>;
7
8
  setValueByKey(tableName: string, key: string, value: Record<string, unknown> | string, expire?: number): Promise<KeyValueStorageRecord>;
@@ -2,6 +2,7 @@ import { Token } from '@or-sdk/base';
2
2
  export declare type KeyValueStorageConfig = {
3
3
  token: Token;
4
4
  discoveryUrl: string;
5
+ accountId?: string;
5
6
  };
6
7
  export declare type KeyValueStorageRecord = {
7
8
  key: string;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.15.0",
2
+ "version": "0.18.0",
3
3
  "name": "@or-sdk/key-value-storage",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
@@ -23,8 +23,8 @@
23
23
  "access": "public"
24
24
  },
25
25
  "dependencies": {
26
- "@or-sdk/base": "^0.15.0",
27
- "@or-sdk/sdk-api": "^0.15.0"
26
+ "@or-sdk/base": "^0.18.0",
27
+ "@or-sdk/sdk-api": "^0.18.0"
28
28
  },
29
- "gitHead": "1753eb9f7f2ef4a939d50851f7f54e1d3cfe36d7"
29
+ "gitHead": "ad94e1383fbf7d40e63d762f1afb30c0530898f1"
30
30
  }
@@ -24,14 +24,19 @@ export class KeyValueStorage {
24
24
  * ```
25
25
  */
26
26
  constructor(params: KeyValueStorageConfig) {
27
- const { token, discoveryUrl } = params;
27
+ const { token, discoveryUrl, accountId } = params;
28
28
 
29
29
  this.sdkApi = new SdkApi({
30
30
  token,
31
31
  discoveryUrl,
32
+ accountId,
32
33
  });
33
34
  }
34
35
 
36
+ composeRoute(route: string): string {
37
+ return this.sdkApi.isCrossAccount ? `accounts/${this.sdkApi.currentAccountId}/${route}` : route;
38
+ }
39
+
35
40
  /**
36
41
  * List keys in a table starting with given substring
37
42
  *
@@ -51,7 +56,7 @@ export class KeyValueStorage {
51
56
  value: { records },
52
57
  } = await this.sdkApi.makeRequest({
53
58
  method: 'GET',
54
- route: `${STORAGE_ROUTE}/${tableName}`,
59
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}`),
55
60
  params: {
56
61
  prefix: prefix ? prefix : undefined,
57
62
  withValues,
@@ -76,7 +81,7 @@ export class KeyValueStorage {
76
81
  ): Promise<KeyValueStorageRecord> {
77
82
  return this.sdkApi.makeRequest({
78
83
  method: 'GET',
79
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
84
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
80
85
  });
81
86
  }
82
87
 
@@ -99,7 +104,7 @@ export class KeyValueStorage {
99
104
  ): Promise<KeyValueStorageRecord> {
100
105
  return this.sdkApi.makeRequest({
101
106
  method: 'POST',
102
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
107
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
103
108
  data: {
104
109
  expire,
105
110
  value,
@@ -122,7 +127,7 @@ export class KeyValueStorage {
122
127
  ): Promise<DeletedKeyValueStorageRecord> {
123
128
  return this.sdkApi.makeRequest({
124
129
  method: 'DELETE',
125
- route: `${STORAGE_ROUTE}/${tableName}/${key}`,
130
+ route: this.composeRoute(`${STORAGE_ROUTE}/${tableName}/${key}`),
126
131
  });
127
132
  }
128
133
  }
package/src/types.ts CHANGED
@@ -9,6 +9,10 @@ export type KeyValueStorageConfig = {
9
9
  * function which return token
10
10
  */
11
11
  discoveryUrl: string;
12
+ /**
13
+ * Account ID for cross-account requests (super admin only)
14
+ */
15
+ accountId?: string;
12
16
  };
13
17
 
14
18