@or-sdk/bots 0.15.0 → 0.16.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.
package/dist/cjs/Bots.js CHANGED
@@ -53,14 +53,16 @@ var constants_1 = require("./constants");
53
53
  var tags_1 = require("@or-sdk/tags");
54
54
  var Bots = (function () {
55
55
  function Bots(params) {
56
- var token = params.token, discoveryUrl = params.discoveryUrl;
56
+ var token = params.token, discoveryUrl = params.discoveryUrl, accountId = params.accountId;
57
57
  this.dataHub = new data_hub_1.DataHub({
58
58
  token: token,
59
59
  discoveryUrl: discoveryUrl,
60
+ accountId: accountId,
60
61
  });
61
62
  this.tags = new tags_1.Tags({
62
63
  token: token,
63
64
  discoveryUrl: discoveryUrl,
65
+ accountId: accountId,
64
66
  });
65
67
  }
66
68
  Bots.prototype.init = function () {
@@ -82,19 +84,15 @@ var Bots = (function () {
82
84
  return __awaiter(this, void 0, void 0, function () {
83
85
  var variables, data;
84
86
  return __generator(this, function (_a) {
85
- variables = {
86
- entity: constants_1.ENTITY_NAME,
87
- params: {
87
+ variables = __assign({ entity: constants_1.ENTITY_NAME, params: {
88
88
  queryParams: {},
89
89
  includeDeleted: false,
90
90
  includeExisting: true,
91
91
  limit: 30,
92
- },
93
- sandbox: false,
94
- };
92
+ } }, this.dataHub.isCrossAccount ? { accountId: this.dataHub.currentAccountId } : { sandbox: false });
95
93
  data = {
96
- operationName: 'list',
97
- query: constants_1.QUERY_LIST,
94
+ operationName: this.dataHub.getOperationName('list'),
95
+ query: this.dataHub.isCrossAccount ? constants_1.QUERY_LIST_CROSSACCOUNT : constants_1.QUERY_LIST,
98
96
  variables: variables,
99
97
  };
100
98
  return [2, this.dataHub.getFullList('POST', '/graphql', data)];
@@ -107,7 +105,7 @@ var Bots = (function () {
107
105
  return __generator(this, function (_a) {
108
106
  switch (_a.label) {
109
107
  case 0:
110
- route = "/v2/".concat(this.dataHub.currentAccountId, "/bot/").concat(id);
108
+ route = "/v2/".concat(this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current', "/bot/").concat(id);
111
109
  params = {
112
110
  includeDeleted: false,
113
111
  includeExisting: true,
@@ -128,7 +126,7 @@ var Bots = (function () {
128
126
  return __generator(this, function (_a) {
129
127
  switch (_a.label) {
130
128
  case 0:
131
- route = "/v2/".concat(this.dataHub.currentAccountId, "/bot/").concat(source.id ? source.id : 'new');
129
+ route = "/v2/".concat(this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current', "/bot/").concat(source.id ? source.id : 'new');
132
130
  data = {
133
131
  bot: source,
134
132
  };
@@ -144,10 +142,13 @@ var Bots = (function () {
144
142
  };
145
143
  Bots.prototype.deleteBot = function (botId) {
146
144
  return __awaiter(this, void 0, void 0, function () {
147
- var variables, data, requestId;
145
+ var variables, operationName, data, result;
148
146
  return __generator(this, function (_a) {
149
147
  switch (_a.label) {
150
148
  case 0:
149
+ if (this.dataHub.isCrossAccount) {
150
+ throw Error('Cross-account deleting is not implemented.');
151
+ }
151
152
  variables = {
152
153
  entity: constants_1.ENTITY_NAME,
153
154
  data: {
@@ -155,8 +156,9 @@ var Bots = (function () {
155
156
  subscribe: true,
156
157
  },
157
158
  };
159
+ operationName = this.dataHub.getOperationName('deleteTemporarily');
158
160
  data = {
159
- operationName: 'deleteTemporarily',
161
+ operationName: operationName,
160
162
  query: constants_1.QUERY_DELETE,
161
163
  variables: variables,
162
164
  };
@@ -166,8 +168,8 @@ var Bots = (function () {
166
168
  data: data,
167
169
  })];
168
170
  case 1:
169
- requestId = (_a.sent()).data.deleteTemporarily.requestId;
170
- return [2, this.dataHub.subscribe(requestId)];
171
+ result = _a.sent();
172
+ return [2, this.dataHub.subscribe(result.data[operationName].requestId)];
171
173
  }
172
174
  });
173
175
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Bots.js","sourceRoot":"","sources":["../../src/Bots.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Bots.js","sourceRoot":"","sources":["../../src/Bots.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ENTITY_NAME = exports.QUERY_DELETE = exports.QUERY_LIST = void 0;
3
+ exports.ENTITY_NAME = exports.QUERY_DELETE = exports.QUERY_LIST_CROSSACCOUNT = exports.QUERY_LIST = void 0;
4
4
  exports.QUERY_LIST = "query list($entity: EntityType!, $params: ListInput!, $sandbox: Boolean) {\n list(entity: $entity, params: $params, sandbox: $sandbox) {\n records {\n ... on Bot {\n id\n data {\n label\n color\n description\n iconUrl\n password\n deploy {\n logsTTL\n }\n }\n tags\n dateModified\n }\n }\n last\n }\n}";
5
+ exports.QUERY_LIST_CROSSACCOUNT = "query listCrossAccount($entity: EntityType!, $params: ListInput!, $accountId: String!) {\n listCrossAccount(entity: $entity, params: $params, accountId: $accountId) {\n records {\n ... on Bot {\n id\n data {\n label\n color\n description\n iconUrl\n password\n deploy {\n logsTTL\n }\n }\n tags\n dateModified\n }\n }\n last\n }\n}";
5
6
  exports.QUERY_DELETE = "mutation deleteTemporarily($entity: EntityType!, $data: DeleteInput!) {\n deleteTemporarily(entity: $entity, data: $data) {\n ... on AsyncRequest {\n requestId\n }\n }\n}";
6
7
  exports.ENTITY_NAME = 'BOT';
7
8
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,ibAqBxB,CAAC;AAEU,QAAA,YAAY,GAAG,yLAM1B,CAAC;AAEU,QAAA,WAAW,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,UAAU,GAAG,ibAqBxB,CAAC;AAEU,QAAA,uBAAuB,GAAG,+cAqBrC,CAAC;AAEU,QAAA,YAAY,GAAG,yLAM1B,CAAC;AAEU,QAAA,WAAW,GAAG,KAAK,CAAC"}
package/dist/esm/Bots.js CHANGED
@@ -8,18 +8,20 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  });
9
9
  };
10
10
  import { DataHub } from '@or-sdk/data-hub';
11
- import { QUERY_LIST, QUERY_DELETE, ENTITY_NAME } from './constants';
11
+ import { QUERY_LIST, QUERY_DELETE, ENTITY_NAME, QUERY_LIST_CROSSACCOUNT, } from './constants';
12
12
  import { Tags, filterTagIds, addTagsIds, removeTagIds } from '@or-sdk/tags';
13
13
  export class Bots {
14
14
  constructor(params) {
15
- const { token, discoveryUrl } = params;
15
+ const { token, discoveryUrl, accountId } = params;
16
16
  this.dataHub = new DataHub({
17
17
  token,
18
18
  discoveryUrl,
19
+ accountId,
19
20
  });
20
21
  this.tags = new Tags({
21
22
  token,
22
23
  discoveryUrl,
24
+ accountId,
23
25
  });
24
26
  }
25
27
  init() {
@@ -32,19 +34,15 @@ export class Bots {
32
34
  }
33
35
  listBots() {
34
36
  return __awaiter(this, void 0, void 0, function* () {
35
- const variables = {
36
- entity: ENTITY_NAME,
37
- params: {
37
+ const variables = Object.assign({ entity: ENTITY_NAME, params: {
38
38
  queryParams: {},
39
39
  includeDeleted: false,
40
40
  includeExisting: true,
41
41
  limit: 30,
42
- },
43
- sandbox: false,
44
- };
42
+ } }, this.dataHub.isCrossAccount ? { accountId: this.dataHub.currentAccountId } : { sandbox: false });
45
43
  const data = {
46
- operationName: 'list',
47
- query: QUERY_LIST,
44
+ operationName: this.dataHub.getOperationName('list'),
45
+ query: this.dataHub.isCrossAccount ? QUERY_LIST_CROSSACCOUNT : QUERY_LIST,
48
46
  variables,
49
47
  };
50
48
  return this.dataHub.getFullList('POST', '/graphql', data);
@@ -52,7 +50,7 @@ export class Bots {
52
50
  }
53
51
  getBot(id) {
54
52
  return __awaiter(this, void 0, void 0, function* () {
55
- const route = `/v2/${this.dataHub.currentAccountId}/bot/${id}`;
53
+ const route = `/v2/${this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current'}/bot/${id}`;
56
54
  const params = {
57
55
  includeDeleted: false,
58
56
  includeExisting: true,
@@ -66,7 +64,7 @@ export class Bots {
66
64
  }
67
65
  saveBot(source) {
68
66
  return __awaiter(this, void 0, void 0, function* () {
69
- const route = `/v2/${this.dataHub.currentAccountId}/bot/${source.id ? source.id : 'new'}`;
67
+ const route = `/v2/${this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current'}/bot/${source.id ? source.id : 'new'}`;
70
68
  const data = {
71
69
  bot: source,
72
70
  };
@@ -79,6 +77,9 @@ export class Bots {
79
77
  }
80
78
  deleteBot(botId) {
81
79
  return __awaiter(this, void 0, void 0, function* () {
80
+ if (this.dataHub.isCrossAccount) {
81
+ throw Error('Cross-account deleting is not implemented.');
82
+ }
82
83
  const variables = {
83
84
  entity: ENTITY_NAME,
84
85
  data: {
@@ -86,17 +87,18 @@ export class Bots {
86
87
  subscribe: true,
87
88
  },
88
89
  };
90
+ const operationName = this.dataHub.getOperationName('deleteTemporarily');
89
91
  const data = {
90
- operationName: 'deleteTemporarily',
92
+ operationName,
91
93
  query: QUERY_DELETE,
92
94
  variables,
93
95
  };
94
- const { data: { deleteTemporarily: { requestId } } } = yield this.dataHub.makeRequest({
96
+ const result = yield this.dataHub.makeRequest({
95
97
  method: 'POST',
96
98
  route: '/graphql',
97
99
  data,
98
100
  });
99
- return this.dataHub.subscribe(requestId);
101
+ return this.dataHub.subscribe(result.data[operationName].requestId);
100
102
  });
101
103
  }
102
104
  addTags(source, tagNames) {
@@ -1 +1 @@
1
- {"version":3,"file":"Bots.js","sourceRoot":"","sources":["../../src/Bots.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Bots.js","sourceRoot":"","sources":["../../src/Bots.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,28 @@ export const QUERY_LIST = `query list($entity: EntityType!, $params: ListInput!,
20
20
  last
21
21
  }
22
22
  }`;
23
+ export const QUERY_LIST_CROSSACCOUNT = `query listCrossAccount($entity: EntityType!, $params: ListInput!, $accountId: String!) {
24
+ listCrossAccount(entity: $entity, params: $params, accountId: $accountId) {
25
+ records {
26
+ ... on Bot {
27
+ id
28
+ data {
29
+ label
30
+ color
31
+ description
32
+ iconUrl
33
+ password
34
+ deploy {
35
+ logsTTL
36
+ }
37
+ }
38
+ tags
39
+ dateModified
40
+ }
41
+ }
42
+ last
43
+ }
44
+ }`;
23
45
  export const QUERY_DELETE = `mutation deleteTemporarily($entity: EntityType!, $data: DeleteInput!) {
24
46
  deleteTemporarily(entity: $entity, data: $data) {
25
47
  ... on AsyncRequest {
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;EAqBxB,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;EAM1B,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;EAqBxB,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;;;;;;;;;;;;;;;;EAqBrC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;EAM1B,CAAC;AAEH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export declare const QUERY_LIST = "query list($entity: EntityType!, $params: ListInput!, $sandbox: Boolean) {\n list(entity: $entity, params: $params, sandbox: $sandbox) {\n records {\n ... on Bot {\n id\n data {\n label\n color\n description\n iconUrl\n password\n deploy {\n logsTTL\n }\n }\n tags\n dateModified\n }\n }\n last\n }\n}";
2
+ export declare const QUERY_LIST_CROSSACCOUNT = "query listCrossAccount($entity: EntityType!, $params: ListInput!, $accountId: String!) {\n listCrossAccount(entity: $entity, params: $params, accountId: $accountId) {\n records {\n ... on Bot {\n id\n data {\n label\n color\n description\n iconUrl\n password\n deploy {\n logsTTL\n }\n }\n tags\n dateModified\n }\n }\n last\n }\n}";
2
3
  export declare const QUERY_DELETE = "mutation deleteTemporarily($entity: EntityType!, $data: DeleteInput!) {\n deleteTemporarily(entity: $entity, data: $data) {\n ... on AsyncRequest {\n requestId\n }\n }\n}";
3
4
  export declare const ENTITY_NAME = "BOT";
@@ -2,6 +2,7 @@ import { Token } from '@or-sdk/base';
2
2
  export declare type BotsConfig = {
3
3
  token: Token;
4
4
  discoveryUrl: string;
5
+ accountId?: string;
5
6
  };
6
7
  export declare type Bot = {
7
8
  id?: string;
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.15.0",
2
+ "version": "0.16.0",
3
3
  "name": "@or-sdk/bots",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
@@ -23,9 +23,9 @@
23
23
  "access": "public"
24
24
  },
25
25
  "dependencies": {
26
- "@or-sdk/base": "^0.15.0",
27
- "@or-sdk/data-hub": "^0.15.0",
28
- "@or-sdk/tags": "^0.15.0"
26
+ "@or-sdk/base": "^0.16.0",
27
+ "@or-sdk/data-hub": "^0.16.0",
28
+ "@or-sdk/tags": "^0.16.0"
29
29
  },
30
- "gitHead": "1753eb9f7f2ef4a939d50851f7f54e1d3cfe36d7"
30
+ "gitHead": "f855bf3ee6b361c5831479cee5cde6f7702b6ced"
31
31
  }
package/src/Bots.ts CHANGED
@@ -1,7 +1,12 @@
1
1
  import { List } from '@or-sdk/base';
2
- import { DataHub, GraphqlResponse, GraphqlResponseCheckExecution } from '@or-sdk/data-hub';
2
+ import { DataHub, GraphqlResponse, GraphqlResponseCheckExecution, GraphqlResponseDelete } from '@or-sdk/data-hub';
3
3
  import { BotsConfig, Bot } from './types';
4
- import { QUERY_LIST, QUERY_DELETE, ENTITY_NAME } from './constants';
4
+ import {
5
+ QUERY_LIST,
6
+ QUERY_DELETE,
7
+ ENTITY_NAME,
8
+ QUERY_LIST_CROSSACCOUNT,
9
+ } from './constants';
5
10
  import { Tags, Taggable, filterTagIds, addTagsIds, removeTagIds } from '@or-sdk/tags';
6
11
 
7
12
  /**
@@ -19,19 +24,20 @@ export class Bots implements Taggable<Bot> {
19
24
  * ```typescript
20
25
  * import { Bots } from '@or-sdk/bots'
21
26
  * const bots = new Bots({token: 'my-account-token-string', discoveryUrl: 'http://example.bots/endpoint'});
22
- * await bots.init();
23
27
  * ```
24
28
  */
25
29
  constructor(params: BotsConfig) {
26
- const { token, discoveryUrl } = params;
30
+ const { token, discoveryUrl, accountId } = params;
27
31
 
28
32
  this.dataHub = new DataHub({
29
33
  token,
30
34
  discoveryUrl,
35
+ accountId,
31
36
  });
32
37
  this.tags = new Tags({
33
38
  token,
34
39
  discoveryUrl,
40
+ accountId,
35
41
  });
36
42
  }
37
43
 
@@ -57,12 +63,12 @@ export class Bots implements Taggable<Bot> {
57
63
  includeExisting: true,
58
64
  limit: 30,
59
65
  },
60
- sandbox: false,
66
+ ... this.dataHub.isCrossAccount ? { accountId: this.dataHub.currentAccountId } : { sandbox: false },
61
67
  };
62
68
 
63
69
  const data = {
64
- operationName: 'list',
65
- query: QUERY_LIST,
70
+ operationName: this.dataHub.getOperationName('list'),
71
+ query: this.dataHub.isCrossAccount ? QUERY_LIST_CROSSACCOUNT : QUERY_LIST,
66
72
  variables,
67
73
  };
68
74
 
@@ -76,7 +82,7 @@ export class Bots implements Taggable<Bot> {
76
82
  * ```
77
83
  */
78
84
  public async getBot(id: string): Promise<Bot> {
79
- const route = `/v2/${this.dataHub.currentAccountId}/bot/${id}`;
85
+ const route = `/v2/${this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current'}/bot/${id}`;
80
86
 
81
87
  const params = {
82
88
  includeDeleted: false,
@@ -99,7 +105,7 @@ export class Bots implements Taggable<Bot> {
99
105
  * ```
100
106
  */
101
107
  public async saveBot(source: Bot): Promise<Bot> {
102
- const route = `/v2/${this.dataHub.currentAccountId}/bot/${source.id ? source.id : 'new'}`;
108
+ const route = `/v2/${this.dataHub.currentAccountId ? this.dataHub.currentAccountId : 'current'}/bot/${source.id ? source.id : 'new'}`;
103
109
 
104
110
  const data = {
105
111
  bot: source,
@@ -119,6 +125,10 @@ export class Bots implements Taggable<Bot> {
119
125
  * ```
120
126
  */
121
127
  public async deleteBot(botId: string): Promise<GraphqlResponseCheckExecution> {
128
+ if (this.dataHub.isCrossAccount) {
129
+ throw Error('Cross-account deleting is not implemented.');
130
+ }
131
+
122
132
  const variables = {
123
133
  entity: ENTITY_NAME,
124
134
  data: {
@@ -127,19 +137,21 @@ export class Bots implements Taggable<Bot> {
127
137
  },
128
138
  };
129
139
 
140
+ const operationName = this.dataHub.getOperationName('deleteTemporarily');
141
+
130
142
  const data = {
131
- operationName: 'deleteTemporarily',
143
+ operationName,
132
144
  query: QUERY_DELETE,
133
145
  variables,
134
146
  };
135
147
 
136
- const { data: { deleteTemporarily: { requestId } } } = await this.dataHub.makeRequest<GraphqlResponse<'deleteTemporarily', void>>({
148
+ const result = await this.dataHub.makeRequest<GraphqlResponse<void>>({
137
149
  method: 'POST',
138
150
  route: '/graphql',
139
151
  data,
140
152
  });
141
153
 
142
- return this.dataHub.subscribe(requestId);
154
+ return this.dataHub.subscribe((result.data[operationName] as GraphqlResponseDelete).requestId);
143
155
  }
144
156
 
145
157
  /**
package/src/constants.ts CHANGED
@@ -21,6 +21,29 @@ export const QUERY_LIST = `query list($entity: EntityType!, $params: ListInput!,
21
21
  }
22
22
  }`;
23
23
 
24
+ export const QUERY_LIST_CROSSACCOUNT = `query listCrossAccount($entity: EntityType!, $params: ListInput!, $accountId: String!) {
25
+ listCrossAccount(entity: $entity, params: $params, accountId: $accountId) {
26
+ records {
27
+ ... on Bot {
28
+ id
29
+ data {
30
+ label
31
+ color
32
+ description
33
+ iconUrl
34
+ password
35
+ deploy {
36
+ logsTTL
37
+ }
38
+ }
39
+ tags
40
+ dateModified
41
+ }
42
+ }
43
+ last
44
+ }
45
+ }`;
46
+
24
47
  export const QUERY_DELETE = `mutation deleteTemporarily($entity: EntityType!, $data: DeleteInput!) {
25
48
  deleteTemporarily(entity: $entity, data: $data) {
26
49
  ... on AsyncRequest {
package/src/types.ts CHANGED
@@ -9,6 +9,10 @@ export type BotsConfig = {
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
  export type Bot = {