@edgeiq/edgeiq-api-js 1.1.9 → 1.2.1

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.
@@ -107,4 +107,37 @@ describe('Authentication', function () {
107
107
  }
108
108
  });
109
109
  }); });
110
+ it("Doesn't allow token expiration to be set longer than a week", function () { return __awaiter(void 0, void 0, void 0, function () {
111
+ var oneWeekOneSecond, error_3, err, error_4, err;
112
+ return __generator(this, function (_a) {
113
+ switch (_a.label) {
114
+ case 0:
115
+ oneWeekOneSecond = 604801000;
116
+ _a.label = 1;
117
+ case 1:
118
+ _a.trys.push([1, 3, , 4]);
119
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser, oneWeekOneSecond)];
120
+ case 2:
121
+ _a.sent();
122
+ return [3, 4];
123
+ case 3:
124
+ error_3 = _a.sent();
125
+ err = error_3;
126
+ expect(err.message).toBe(constants_1.ResponseErrorsMessages.invalidTokenExpiration);
127
+ return [3, 4];
128
+ case 4:
129
+ _a.trys.push([4, 6, , 7]);
130
+ return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.noUser, 0)];
131
+ case 5:
132
+ _a.sent();
133
+ return [3, 7];
134
+ case 6:
135
+ error_4 = _a.sent();
136
+ err = error_4;
137
+ expect(err.message).toBe(constants_1.ResponseErrorsMessages.invalidTokenExpiration);
138
+ return [3, 7];
139
+ case 7: return [2];
140
+ }
141
+ });
142
+ }); });
110
143
  });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,126 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var __1 = require("..");
40
+ var __2 = require("..");
41
+ var constants_1 = require("../constants");
42
+ var helpers_1 = require("../helpers");
43
+ var testConstants_1 = require("../testConstants");
44
+ describe('Devices', function () {
45
+ __1.EdgeIQAPI.init();
46
+ it('Logs user in', function () { return __awaiter(void 0, void 0, void 0, function () {
47
+ var result;
48
+ return __generator(this, function (_a) {
49
+ switch (_a.label) {
50
+ case 0: return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.pass)];
51
+ case 1:
52
+ result = _a.sent();
53
+ expect(result.session_token).not.toBeNull();
54
+ return [2];
55
+ }
56
+ });
57
+ }); });
58
+ var discoveredDevice;
59
+ var device;
60
+ it('Creates a discovered device', function () { return __awaiter(void 0, void 0, void 0, function () {
61
+ var result;
62
+ return __generator(this, function (_a) {
63
+ switch (_a.label) {
64
+ case 0: return [4, __1.DiscoveredDevices.create(testConstants_1.TestDiscoveredDevice)];
65
+ case 1:
66
+ result = _a.sent();
67
+ expect(result._id).not.toBeNull();
68
+ expect(result.unique_id).toBe(testConstants_1.TestDiscoveredDevice.unique_id);
69
+ discoveredDevice = result;
70
+ return [2];
71
+ }
72
+ });
73
+ }); });
74
+ it('Promotes a discovered device', function () { return __awaiter(void 0, void 0, void 0, function () {
75
+ var result;
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0:
79
+ if (!discoveredDevice._id) return [3, 2];
80
+ return [4, __1.DiscoveredDevices.promote(discoveredDevice, testConstants_1.TestDeviceTypeID)];
81
+ case 1:
82
+ result = _a.sent();
83
+ device = result;
84
+ expect(device.unique_id).toBe(discoveredDevice.unique_id);
85
+ _a.label = 2;
86
+ case 2: return [2];
87
+ }
88
+ });
89
+ }); });
90
+ it('List the devices created by promotion', function () { return __awaiter(void 0, void 0, void 0, function () {
91
+ var filters, result;
92
+ return __generator(this, function (_a) {
93
+ switch (_a.label) {
94
+ case 0:
95
+ filters = {
96
+ unique_id: {
97
+ operator: 'eq',
98
+ value: testConstants_1.TestDiscoveredDevice.unique_id,
99
+ },
100
+ };
101
+ return [4, __1.Devices.list(filters)];
102
+ case 1:
103
+ result = _a.sent();
104
+ expect(result.devices).toBeDefined();
105
+ expect(result.devices).toBeInstanceOf(Array);
106
+ expect(result.devices).toHaveLength(1);
107
+ expect(result.pagination.page).toBe(constants_1.DefaultPagination.page);
108
+ expect(result.pagination.total).toBe(1);
109
+ expect(result.pagination.itemsPerPage).toBe(constants_1.DefaultPagination.itemsPerPage);
110
+ return [2];
111
+ }
112
+ });
113
+ }); });
114
+ it('Delete the device promoted', function () { return __awaiter(void 0, void 0, void 0, function () {
115
+ var result;
116
+ return __generator(this, function (_a) {
117
+ switch (_a.label) {
118
+ case 0: return [4, __1.Devices.delete(device._id)];
119
+ case 1:
120
+ result = _a.sent();
121
+ expect(result).toBe((0, helpers_1.getReturnDeleteMessage)('device'));
122
+ return [2];
123
+ }
124
+ });
125
+ }); });
126
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var __1 = require("..");
40
+ var __2 = require("..");
41
+ var notifications_1 = require("../notifications");
42
+ var testConstants_1 = require("../testConstants");
43
+ describe('Device Types', function () {
44
+ __1.EdgeIQAPI.init();
45
+ it('Logs User', function () { return __awaiter(void 0, void 0, void 0, function () {
46
+ var result;
47
+ return __generator(this, function (_a) {
48
+ switch (_a.label) {
49
+ case 0: return [4, __2.Authentication.login(testConstants_1.TestAuth.username, testConstants_1.TestAuth.pass)];
50
+ case 1:
51
+ result = _a.sent();
52
+ expect(result.session_token).not.toBeNull();
53
+ return [2];
54
+ }
55
+ });
56
+ }); });
57
+ it('List the notifications', function () { return __awaiter(void 0, void 0, void 0, function () {
58
+ var filters, result;
59
+ return __generator(this, function (_a) {
60
+ switch (_a.label) {
61
+ case 0:
62
+ filters = {};
63
+ return [4, notifications_1.Notifications.list(filters)];
64
+ case 1:
65
+ result = _a.sent();
66
+ expect(result.resources).toBeDefined();
67
+ expect(result.resources).toBeInstanceOf(Array);
68
+ return [2];
69
+ }
70
+ });
71
+ }); });
72
+ });
@@ -1,6 +1,6 @@
1
1
  import { EIQLoginUser, User } from '../users/models';
2
2
  declare const Authentication: {
3
- login: (user: string, password: string) => Promise<EIQLoginUser>;
3
+ login: (user: string, password: string, expirationInMillis?: number) => Promise<EIQLoginUser>;
4
4
  me: () => Promise<User>;
5
5
  passwordResetRequest: (email: string, url: string, subject: string, greeting: string) => Promise<boolean>;
6
6
  passwordReset: (token: string, password: string, password_confirmation: string) => Promise<boolean>;
@@ -41,34 +41,45 @@ var __1 = require("..");
41
41
  var constants_1 = require("../constants");
42
42
  var helpers_1 = require("../helpers");
43
43
  var Authentication = {
44
- login: function (user, password) { return __awaiter(void 0, void 0, void 0, function () {
45
- var axios, data, result, error_1;
46
- var _a;
47
- return __generator(this, function (_b) {
48
- switch (_b.label) {
49
- case 0:
50
- _b.trys.push([0, 2, , 3]);
51
- __1.EdgeIQAPI.logAction("Logging with user: " + user);
52
- axios = __1.EdgeIQAPI.getAxios();
53
- data = JSON.stringify({
54
- email: user,
55
- password: password,
56
- });
57
- return [4, axios.post(constants_1.Endpoints.login, data)];
58
- case 1:
59
- result = _b.sent();
60
- __1.EdgeIQAPI.setSessionToken((_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.session_token);
61
- return [2, result === null || result === void 0 ? void 0 : result.data];
62
- case 2:
63
- error_1 = _b.sent();
64
- if ((0, helpers_1.isApiError)(error_1)) {
44
+ login: function (user, password, expirationInMillis) {
45
+ if (expirationInMillis === void 0) { expirationInMillis = 3600000; }
46
+ return __awaiter(void 0, void 0, void 0, function () {
47
+ var axios, TOKEN_EXPIRATION_MAX, now, expiration, data, result, error_1;
48
+ var _a;
49
+ return __generator(this, function (_b) {
50
+ switch (_b.label) {
51
+ case 0:
52
+ _b.trys.push([0, 2, , 3]);
53
+ __1.EdgeIQAPI.logAction("Logging with user: " + user);
54
+ axios = __1.EdgeIQAPI.getAxios();
55
+ TOKEN_EXPIRATION_MAX = 604800000;
56
+ if (expirationInMillis <= 0 ||
57
+ expirationInMillis > TOKEN_EXPIRATION_MAX) {
58
+ throw new Error(constants_1.ResponseErrorsMessages.invalidTokenExpiration);
59
+ }
60
+ now = new Date();
61
+ expiration = new Date(now.getTime() + expirationInMillis);
62
+ data = JSON.stringify({
63
+ email: user,
64
+ password: password,
65
+ token_expiry: expiration,
66
+ });
67
+ return [4, axios.post(constants_1.Endpoints.login, data)];
68
+ case 1:
69
+ result = _b.sent();
70
+ __1.EdgeIQAPI.setSessionToken((_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.session_token);
71
+ return [2, result === null || result === void 0 ? void 0 : result.data];
72
+ case 2:
73
+ error_1 = _b.sent();
74
+ if ((0, helpers_1.isApiError)(error_1)) {
75
+ throw error_1;
76
+ }
65
77
  throw error_1;
66
- }
67
- throw error_1;
68
- case 3: return [2];
69
- }
78
+ case 3: return [2];
79
+ }
80
+ });
70
81
  });
71
- }); },
82
+ },
72
83
  me: function () { return __awaiter(void 0, void 0, void 0, function () {
73
84
  var axios, result, error_2;
74
85
  return __generator(this, function (_a) {
@@ -41,6 +41,7 @@ export declare const ResponseErrorsMessages: {
41
41
  unEditableIntegration: (type: string) => string;
42
42
  integrationMissinValues: (type: string, values: string[]) => string;
43
43
  unexpected: string;
44
+ invalidTokenExpiration: string;
44
45
  };
45
46
  export declare const ErrorParts: {
46
47
  deviceExists: string;
@@ -52,6 +53,7 @@ export declare const getAttachMessage: (model: string, action: string, baseModel
52
53
  export declare const BaseEndpoints: {
53
54
  auth: string;
54
55
  bulkResponse: string;
56
+ notification: string;
55
57
  command: string;
56
58
  company: string;
57
59
  deviceConfig: string;
@@ -60,6 +62,7 @@ export declare const BaseEndpoints: {
60
62
  deviceType: string;
61
63
  device: string;
62
64
  deviceLocationObservation: string;
65
+ discoveredDevice: string;
63
66
  downstreamSystem: string;
64
67
  escrowDevice: string;
65
68
  file: string;
@@ -87,6 +90,7 @@ export declare const Endpoints: {
87
90
  passwordResetRequest: string;
88
91
  passwordReset: string;
89
92
  bulkResponse: string;
93
+ notification: string;
90
94
  command: string;
91
95
  company: string;
92
96
  deviceConfig: string;
@@ -96,6 +100,7 @@ export declare const Endpoints: {
96
100
  device: string;
97
101
  deviceLocationObservation: string;
98
102
  downstreamSystem: string;
103
+ discoveredDevice: string;
99
104
  escrowDevice: string;
100
105
  gatewayCommand: string;
101
106
  ingestor: string;
package/dist/constants.js CHANGED
@@ -54,6 +54,7 @@ exports.ResponseErrorsMessages = {
54
54
  return "The " + (values.length === 1 ? 'value' : 'values') + " " + values.join(', ') + " " + (values.length === 1 ? 'is' : 'are') + " required for integration of type: " + type;
55
55
  },
56
56
  unexpected: 'Unexpected error has ocurred',
57
+ invalidTokenExpiration: 'Invalid session token expiration. Session token expiration must be greater than 0 and less than one week.',
57
58
  };
58
59
  exports.ErrorParts = {
59
60
  deviceExists: 'A Device with unique id',
@@ -68,6 +69,7 @@ exports.getAttachMessage = getAttachMessage;
68
69
  exports.BaseEndpoints = {
69
70
  auth: 'user',
70
71
  bulkResponse: 'bulk_responses',
72
+ notification: 'notifications',
71
73
  command: 'commands',
72
74
  company: 'companies',
73
75
  deviceConfig: 'device_configs',
@@ -76,6 +78,7 @@ exports.BaseEndpoints = {
76
78
  deviceType: 'device_types',
77
79
  device: 'devices',
78
80
  deviceLocationObservation: 'device_location_observations',
81
+ discoveredDevice: 'discovered_devices',
79
82
  downstreamSystem: 'downstream_systems',
80
83
  escrowDevice: 'escrow_devices',
81
84
  file: 'files',
@@ -103,6 +106,7 @@ exports.Endpoints = {
103
106
  passwordResetRequest: exports.BaseEndpoints.auth + "/password_reset_request",
104
107
  passwordReset: exports.BaseEndpoints.auth + "/password_reset",
105
108
  bulkResponse: "" + exports.BaseEndpoints.bulkResponse,
109
+ notification: "" + exports.BaseEndpoints.notification,
106
110
  command: "" + exports.BaseEndpoints.command,
107
111
  company: "" + exports.BaseEndpoints.company,
108
112
  deviceConfig: "" + exports.BaseEndpoints.deviceConfig,
@@ -112,6 +116,7 @@ exports.Endpoints = {
112
116
  device: "" + exports.BaseEndpoints.device,
113
117
  deviceLocationObservation: "" + exports.BaseEndpoints.deviceLocationObservation,
114
118
  downstreamSystem: "" + exports.BaseEndpoints.downstreamSystem,
119
+ discoveredDevice: "" + exports.BaseEndpoints.discoveredDevice,
115
120
  escrowDevice: "" + exports.BaseEndpoints.escrowDevice,
116
121
  gatewayCommand: "" + exports.BaseEndpoints.gatewayCommand,
117
122
  ingestor: "" + exports.BaseEndpoints.ingestor,
@@ -0,0 +1,14 @@
1
+ import { BaseModelInterface } from '../core/ModelClass';
2
+ import { BulkActionResponse } from '../models';
3
+ import { Device } from '../devices/models';
4
+ import { DiscoveredDevicesFilters, DiscoveredDevice, DiscoveredDeviceInput, PaginatedDiscoveredDevices } from './models';
5
+ interface DiscoveredDevicesInterface extends BaseModelInterface<DiscoveredDevice, DiscoveredDeviceInput, DiscoveredDevicesFilters, PaginatedDiscoveredDevices> {
6
+ bulkPromote(uniqueIds: string[], deviceTypeId: string): Promise<BulkActionResponse>;
7
+ update(discoveredDevice: DiscoveredDevice): Promise<DiscoveredDevice>;
8
+ promote(discoveredDevice: DiscoveredDevice, deviceTypeId: string): Promise<Device>;
9
+ getOneByUniqueId(uniqueId: string): Promise<DiscoveredDevice>;
10
+ deleteMultiple(ids: string[]): Promise<BulkActionResponse>;
11
+ csvBulkPromote(file: File): Promise<BulkActionResponse>;
12
+ }
13
+ export declare const DiscoveredDevices: DiscoveredDevicesInterface;
14
+ export {};
@@ -0,0 +1,334 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ var __generator = (this && this.__generator) || function (thisArg, body) {
27
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
+ function verb(n) { return function (v) { return step([n, v]); }; }
30
+ function step(op) {
31
+ if (f) throw new TypeError("Generator is already executing.");
32
+ while (_) try {
33
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
+ if (y = 0, t) op = [op[0] & 2, t.value];
35
+ switch (op[0]) {
36
+ case 0: case 1: t = op; break;
37
+ case 4: _.label++; return { value: op[1], done: false };
38
+ case 5: _.label++; y = op[1]; op = [0]; continue;
39
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
+ default:
41
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
+ if (t[2]) _.ops.pop();
46
+ _.trys.pop(); continue;
47
+ }
48
+ op = body.call(thisArg, _);
49
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
+ }
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.DiscoveredDevices = void 0;
55
+ var __1 = require("..");
56
+ var constants_1 = require("../constants");
57
+ var ModelClass_1 = require("../core/ModelClass");
58
+ var filtersParser_1 = require("../filtersParser");
59
+ var helpers_1 = require("../helpers");
60
+ exports.DiscoveredDevices = (function (_super) {
61
+ __extends(class_1, _super);
62
+ function class_1() {
63
+ return _super !== null && _super.apply(this, arguments) || this;
64
+ }
65
+ class_1.create = function (discoveredDevice) {
66
+ return __awaiter(this, void 0, void 0, function () {
67
+ var axios, data, result, error_1;
68
+ return __generator(this, function (_a) {
69
+ switch (_a.label) {
70
+ case 0:
71
+ _a.trys.push([0, 2, , 3]);
72
+ this.logAction("Creating discoveredDevice with unique ID: " + discoveredDevice);
73
+ axios = __1.EdgeIQAPI.getAxios();
74
+ data = JSON.stringify(discoveredDevice);
75
+ return [4, axios.post(constants_1.Endpoints.discoveredDevice, data)];
76
+ case 1:
77
+ result = _a.sent();
78
+ return [2, result === null || result === void 0 ? void 0 : result.data];
79
+ case 2:
80
+ error_1 = _a.sent();
81
+ if ((0, helpers_1.isApiError)(error_1)) {
82
+ throw error_1;
83
+ }
84
+ throw error_1;
85
+ case 3: return [2];
86
+ }
87
+ });
88
+ });
89
+ };
90
+ class_1.update = function (discoveredDevice) {
91
+ return __awaiter(this, void 0, void 0, function () {
92
+ var axios, data, result, error_2;
93
+ return __generator(this, function (_a) {
94
+ switch (_a.label) {
95
+ case 0:
96
+ _a.trys.push([0, 2, , 3]);
97
+ this.logAction("Updating discovered device with unique ID: " + discoveredDevice.unique_id);
98
+ axios = __1.EdgeIQAPI.getAxios();
99
+ data = JSON.stringify(discoveredDevice);
100
+ return [4, axios.put(constants_1.Endpoints.discoveredDevice + "/" + discoveredDevice._id, data)];
101
+ case 1:
102
+ result = _a.sent();
103
+ return [2, result === null || result === void 0 ? void 0 : result.data];
104
+ case 2:
105
+ error_2 = _a.sent();
106
+ if ((0, helpers_1.isApiError)(error_2)) {
107
+ throw error_2;
108
+ }
109
+ throw error_2;
110
+ case 3: return [2];
111
+ }
112
+ });
113
+ });
114
+ };
115
+ class_1.promote = function (discoveredDevice, deviceTypeId) {
116
+ return __awaiter(this, void 0, void 0, function () {
117
+ var axios, data, result, error_3;
118
+ return __generator(this, function (_a) {
119
+ switch (_a.label) {
120
+ case 0:
121
+ _a.trys.push([0, 2, , 3]);
122
+ this.logAction("Promoting discovered device with unique ID: " + discoveredDevice.unique_id + ", to device of type id: " + deviceTypeId);
123
+ axios = __1.EdgeIQAPI.getAxios();
124
+ data = JSON.stringify({ device_type_id: deviceTypeId });
125
+ return [4, axios.post(constants_1.Endpoints.discoveredDevice + "/" + discoveredDevice._id + "/promote", data)];
126
+ case 1:
127
+ result = _a.sent();
128
+ return [2, result === null || result === void 0 ? void 0 : result.data];
129
+ case 2:
130
+ error_3 = _a.sent();
131
+ if ((0, helpers_1.isApiError)(error_3)) {
132
+ throw error_3;
133
+ }
134
+ throw error_3;
135
+ case 3: return [2];
136
+ }
137
+ });
138
+ });
139
+ };
140
+ class_1.list = function (filters, pagination) {
141
+ var _a, _b, _c, _d;
142
+ return __awaiter(this, void 0, void 0, function () {
143
+ var endpoint, axios, result, error_4;
144
+ return __generator(this, function (_e) {
145
+ switch (_e.label) {
146
+ case 0:
147
+ _e.trys.push([0, 2, , 3]);
148
+ this.logAction("Listing discovered devices with following filters: " + (filters !== null && filters !== void 0 ? filters : '{}') + ".\n And pagination " + (pagination !== null && pagination !== void 0 ? pagination : '{}'));
149
+ endpoint = constants_1.Endpoints.discoveredDevice;
150
+ axios = __1.EdgeIQAPI.getAxios();
151
+ return [4, axios.get(endpoint, {
152
+ params: (0, filtersParser_1.parseFilters)(filters, pagination),
153
+ })];
154
+ case 1:
155
+ result = _e.sent();
156
+ return [2, {
157
+ discoveredDevices: (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.resources,
158
+ pagination: {
159
+ page: (_b = result === null || result === void 0 ? void 0 : result.data) === null || _b === void 0 ? void 0 : _b.page,
160
+ itemsPerPage: (_c = result === null || result === void 0 ? void 0 : result.data) === null || _c === void 0 ? void 0 : _c.per_page,
161
+ total: (_d = result === null || result === void 0 ? void 0 : result.data) === null || _d === void 0 ? void 0 : _d.total,
162
+ },
163
+ }];
164
+ case 2:
165
+ error_4 = _e.sent();
166
+ if ((0, helpers_1.isApiError)(error_4)) {
167
+ throw error_4;
168
+ }
169
+ throw error_4;
170
+ case 3: return [2];
171
+ }
172
+ });
173
+ });
174
+ };
175
+ class_1.getOneById = function (id) {
176
+ return __awaiter(this, void 0, void 0, function () {
177
+ var axios, result, error_5;
178
+ return __generator(this, function (_a) {
179
+ switch (_a.label) {
180
+ case 0:
181
+ _a.trys.push([0, 2, , 3]);
182
+ this.logAction("Getting discovered device with id: " + id);
183
+ axios = __1.EdgeIQAPI.getAxios();
184
+ return [4, axios.get(constants_1.Endpoints.discoveredDevice + "/" + id)];
185
+ case 1:
186
+ result = _a.sent();
187
+ return [2, result === null || result === void 0 ? void 0 : result.data];
188
+ case 2:
189
+ error_5 = _a.sent();
190
+ if ((0, helpers_1.isApiError)(error_5)) {
191
+ throw error_5;
192
+ }
193
+ throw error_5;
194
+ case 3: return [2];
195
+ }
196
+ });
197
+ });
198
+ };
199
+ class_1.getOneByUniqueId = function (uniqueId) {
200
+ return __awaiter(this, void 0, void 0, function () {
201
+ var axios, result, error_6;
202
+ return __generator(this, function (_a) {
203
+ switch (_a.label) {
204
+ case 0:
205
+ _a.trys.push([0, 2, , 3]);
206
+ this.logAction("Getting discovered device with Unique Id: " + uniqueId);
207
+ axios = __1.EdgeIQAPI.getAxios();
208
+ return [4, axios.get(constants_1.Endpoints.discoveredDevice, {
209
+ params: {
210
+ unique_id: uniqueId,
211
+ },
212
+ })];
213
+ case 1:
214
+ result = _a.sent();
215
+ return [2, result === null || result === void 0 ? void 0 : result.data[0]];
216
+ case 2:
217
+ error_6 = _a.sent();
218
+ if ((0, helpers_1.isApiError)(error_6)) {
219
+ throw error_6;
220
+ }
221
+ throw error_6;
222
+ case 3: return [2];
223
+ }
224
+ });
225
+ });
226
+ };
227
+ class_1.delete = function (id) {
228
+ return __awaiter(this, void 0, void 0, function () {
229
+ var axios, error_7;
230
+ return __generator(this, function (_a) {
231
+ switch (_a.label) {
232
+ case 0:
233
+ _a.trys.push([0, 2, , 3]);
234
+ this.logAction("Deleting discovered device with id " + id);
235
+ axios = __1.EdgeIQAPI.getAxios();
236
+ return [4, axios.delete(constants_1.Endpoints.discoveredDevice + "/" + id)];
237
+ case 1:
238
+ _a.sent();
239
+ return [2, (0, helpers_1.getReturnDeleteMessage)('discoveredDevice')];
240
+ case 2:
241
+ error_7 = _a.sent();
242
+ if ((0, helpers_1.isApiError)(error_7)) {
243
+ throw error_7;
244
+ }
245
+ throw error_7;
246
+ case 3: return [2];
247
+ }
248
+ });
249
+ });
250
+ };
251
+ class_1.deleteMultiple = function (ids) {
252
+ return __awaiter(this, void 0, void 0, function () {
253
+ var axios, result, error_8;
254
+ return __generator(this, function (_a) {
255
+ switch (_a.label) {
256
+ case 0:
257
+ _a.trys.push([0, 2, , 3]);
258
+ this.logAction("Deleting discovered devices with id " + ids.join(', '));
259
+ axios = __1.EdgeIQAPI.getAxios();
260
+ return [4, axios.delete(constants_1.Endpoints.discoveredDevice + "/bulk", {
261
+ data: { ids: ids },
262
+ })];
263
+ case 1:
264
+ result = _a.sent();
265
+ return [2, result === null || result === void 0 ? void 0 : result.data];
266
+ case 2:
267
+ error_8 = _a.sent();
268
+ if ((0, helpers_1.isApiError)(error_8)) {
269
+ throw error_8;
270
+ }
271
+ throw error_8;
272
+ case 3: return [2];
273
+ }
274
+ });
275
+ });
276
+ };
277
+ class_1.bulkPromote = function (ids, deviceTypeId) {
278
+ return __awaiter(this, void 0, void 0, function () {
279
+ var axios, result, error_9;
280
+ return __generator(this, function (_a) {
281
+ switch (_a.label) {
282
+ case 0:
283
+ _a.trys.push([0, 2, , 3]);
284
+ this.logAction("Promoting discovered devices in bulk");
285
+ axios = __1.EdgeIQAPI.getAxios();
286
+ return [4, axios.post(constants_1.Endpoints.discoveredDevice + "/bulk_promote", {
287
+ data: { ids: ids, device_type_id: deviceTypeId },
288
+ })];
289
+ case 1:
290
+ result = _a.sent();
291
+ return [2, result === null || result === void 0 ? void 0 : result.data];
292
+ case 2:
293
+ error_9 = _a.sent();
294
+ if ((0, helpers_1.isApiError)(error_9)) {
295
+ throw error_9;
296
+ }
297
+ throw error_9;
298
+ case 3: return [2];
299
+ }
300
+ });
301
+ });
302
+ };
303
+ class_1.csvBulkPromote = function (file) {
304
+ return __awaiter(this, void 0, void 0, function () {
305
+ var axios, form, result, error_10;
306
+ return __generator(this, function (_a) {
307
+ switch (_a.label) {
308
+ case 0:
309
+ _a.trys.push([0, 2, , 3]);
310
+ this.logAction("Uploading CSV bulk promotion file");
311
+ axios = __1.EdgeIQAPI.getAxios();
312
+ form = new FormData();
313
+ form.append('csv_upload', file);
314
+ return [4, axios.post(constants_1.Endpoints.device + "/csv_bulk_upload_promote", form, {
315
+ headers: {
316
+ 'Content-Type': 'multipart/form-data',
317
+ },
318
+ })];
319
+ case 1:
320
+ result = _a.sent();
321
+ return [2, result === null || result === void 0 ? void 0 : result.data];
322
+ case 2:
323
+ error_10 = _a.sent();
324
+ if ((0, helpers_1.isApiError)(error_10)) {
325
+ throw error_10;
326
+ }
327
+ throw error_10;
328
+ case 3: return [2];
329
+ }
330
+ });
331
+ });
332
+ };
333
+ return class_1;
334
+ }(ModelClass_1.BaseModelClass));
@@ -0,0 +1,41 @@
1
+ import { Base, Filter, Filters, Pagination } from '../models';
2
+ export interface DiscoveredDeviceInput {
3
+ name: string;
4
+ unique_id: string;
5
+ company_id: string;
6
+ serial?: string;
7
+ location?: string;
8
+ manufacturer?: string;
9
+ model?: string;
10
+ heartbeat_period?: number;
11
+ tags?: string[];
12
+ metadata?: {
13
+ [key: string]: unknown;
14
+ };
15
+ }
16
+ export interface DiscoveredDevice extends DiscoveredDeviceInput, Base {
17
+ heartbeat_at?: string;
18
+ heartbeat_status?: string;
19
+ last_heartbeat_status?: string;
20
+ last_report_id?: string;
21
+ device_type_id: string;
22
+ }
23
+ export interface DiscoveredDevicesFilters extends Filters {
24
+ name?: Filter;
25
+ unique_id?: Filter;
26
+ serial?: Filter;
27
+ location?: Filter;
28
+ heartbeat_at?: Filter;
29
+ heartbeat_status?: Filter;
30
+ last_heartbeat_status?: Filter;
31
+ device_type_id?: Filter;
32
+ heartbeat_period?: Filter;
33
+ tags?: Filter;
34
+ metadata?: {
35
+ [key: string]: Filter;
36
+ };
37
+ }
38
+ export interface PaginatedDiscoveredDevices {
39
+ discoveredDevices: DiscoveredDevice[];
40
+ pagination: Pagination;
41
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/dist/helpers.js CHANGED
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.isApiError = exports.getReturnDeleteMessage = void 0;
4
4
  var getReturnDeleteMessage = function (model) {
5
- return "The " + model + " has been deleted correctly.";
5
+ return "The " + model + " has been deleted.";
6
6
  };
7
7
  exports.getReturnDeleteMessage = getReturnDeleteMessage;
8
8
  var isApiError = function (error) {
package/dist/index.d.ts CHANGED
@@ -9,11 +9,13 @@ export { Devices } from './devices';
9
9
  export { DeviceTemplates } from './deviceTemplates';
10
10
  export { DeviceTransferRequests } from './deviceTransferRequests';
11
11
  export { DeviceTypes } from './deviceTypes';
12
+ export { DiscoveredDevices } from './discoveredDevices';
12
13
  export { DownstreamSystems } from './downstreamSystems';
13
14
  export { EscrowDevices } from './escrowDevices';
14
15
  export { GatewayCommands } from './gatewayCommands';
15
16
  export { Ingestors } from './ingestors';
16
17
  export { Integrations } from './integrations';
18
+ export { Notifications } from './notifications';
17
19
  export { PollableAttributes } from './pollableAttributes';
18
20
  export { Regions } from './regions';
19
21
  export { Reports } from './reports';
@@ -33,6 +35,7 @@ export * from './companies/models';
33
35
  export * from './deviceConfigs/models';
34
36
  export * from './deviceLocationObservations/models';
35
37
  export * from './devices/models';
38
+ export * from './discoveredDevices/models';
36
39
  export * from './deviceTemplates/models';
37
40
  export * from './deviceTransferRequests/models';
38
41
  export * from './deviceTypes/models';
@@ -41,6 +44,7 @@ export * from './escrowDevices/models';
41
44
  export * from './gatewayCommands/models';
42
45
  export * from './ingestors/models';
43
46
  export * from './integrations/models';
47
+ export * from './notifications/models';
44
48
  export * from './pollableAttributes/models';
45
49
  export * from './reports/models';
46
50
  export * from './regions/models';
package/dist/index.js CHANGED
@@ -10,7 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.UserTypes = exports.Users = exports.Translators = exports.SystemCommandJobs = exports.SystemCommands = exports.Stats = exports.SoftwareUpdates = exports.Secrets = exports.Rules = exports.Reports = exports.Regions = exports.PollableAttributes = exports.Integrations = exports.Ingestors = exports.GatewayCommands = exports.EscrowDevices = exports.DownstreamSystems = exports.DeviceTypes = exports.DeviceTransferRequests = exports.DeviceTemplates = exports.Devices = exports.DeviceLocationObservations = exports.DeviceConfigs = exports.Companies = exports.Commands = exports.BulkResponses = exports.Authentication = exports.EdgeIQAPI = void 0;
13
+ exports.UserTypes = exports.Users = exports.Translators = exports.SystemCommandJobs = exports.SystemCommands = exports.Stats = exports.SoftwareUpdates = exports.Secrets = exports.Rules = exports.Reports = exports.Regions = exports.PollableAttributes = exports.Notifications = exports.Integrations = exports.Ingestors = exports.GatewayCommands = exports.EscrowDevices = exports.DownstreamSystems = exports.DiscoveredDevices = exports.DeviceTypes = exports.DeviceTransferRequests = exports.DeviceTemplates = exports.Devices = exports.DeviceLocationObservations = exports.DeviceConfigs = exports.Companies = exports.Commands = exports.BulkResponses = exports.Authentication = exports.EdgeIQAPI = void 0;
14
14
  var core_1 = require("./core");
15
15
  Object.defineProperty(exports, "EdgeIQAPI", { enumerable: true, get: function () { return core_1.EdgeIQAPI; } });
16
16
  var auth_1 = require("./auth");
@@ -33,6 +33,8 @@ var deviceTransferRequests_1 = require("./deviceTransferRequests");
33
33
  Object.defineProperty(exports, "DeviceTransferRequests", { enumerable: true, get: function () { return deviceTransferRequests_1.DeviceTransferRequests; } });
34
34
  var deviceTypes_1 = require("./deviceTypes");
35
35
  Object.defineProperty(exports, "DeviceTypes", { enumerable: true, get: function () { return deviceTypes_1.DeviceTypes; } });
36
+ var discoveredDevices_1 = require("./discoveredDevices");
37
+ Object.defineProperty(exports, "DiscoveredDevices", { enumerable: true, get: function () { return discoveredDevices_1.DiscoveredDevices; } });
36
38
  var downstreamSystems_1 = require("./downstreamSystems");
37
39
  Object.defineProperty(exports, "DownstreamSystems", { enumerable: true, get: function () { return downstreamSystems_1.DownstreamSystems; } });
38
40
  var escrowDevices_1 = require("./escrowDevices");
@@ -43,6 +45,8 @@ var ingestors_1 = require("./ingestors");
43
45
  Object.defineProperty(exports, "Ingestors", { enumerable: true, get: function () { return ingestors_1.Ingestors; } });
44
46
  var integrations_1 = require("./integrations");
45
47
  Object.defineProperty(exports, "Integrations", { enumerable: true, get: function () { return integrations_1.Integrations; } });
48
+ var notifications_1 = require("./notifications");
49
+ Object.defineProperty(exports, "Notifications", { enumerable: true, get: function () { return notifications_1.Notifications; } });
46
50
  var pollableAttributes_1 = require("./pollableAttributes");
47
51
  Object.defineProperty(exports, "PollableAttributes", { enumerable: true, get: function () { return pollableAttributes_1.PollableAttributes; } });
48
52
  var regions_1 = require("./regions");
@@ -74,6 +78,7 @@ __exportStar(require("./companies/models"), exports);
74
78
  __exportStar(require("./deviceConfigs/models"), exports);
75
79
  __exportStar(require("./deviceLocationObservations/models"), exports);
76
80
  __exportStar(require("./devices/models"), exports);
81
+ __exportStar(require("./discoveredDevices/models"), exports);
77
82
  __exportStar(require("./deviceTemplates/models"), exports);
78
83
  __exportStar(require("./deviceTransferRequests/models"), exports);
79
84
  __exportStar(require("./deviceTypes/models"), exports);
@@ -82,6 +87,7 @@ __exportStar(require("./escrowDevices/models"), exports);
82
87
  __exportStar(require("./gatewayCommands/models"), exports);
83
88
  __exportStar(require("./ingestors/models"), exports);
84
89
  __exportStar(require("./integrations/models"), exports);
90
+ __exportStar(require("./notifications/models"), exports);
85
91
  __exportStar(require("./pollableAttributes/models"), exports);
86
92
  __exportStar(require("./reports/models"), exports);
87
93
  __exportStar(require("./regions/models"), exports);
@@ -0,0 +1,8 @@
1
+ import { PaginationFilter } from '../models';
2
+ import { Notification, NotificationsFilters, PaginatedNotifications } from './models';
3
+ interface NotificationsInterface {
4
+ list(filters?: NotificationsFilters, pagination?: PaginationFilter): Promise<PaginatedNotifications>;
5
+ getOneById(id: string): Promise<Notification>;
6
+ }
7
+ export declare const Notifications: NotificationsInterface;
8
+ export {};
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
+ return new (P || (P = Promise))(function (resolve, reject) {
20
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
21
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
22
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
23
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
24
+ });
25
+ };
26
+ var __generator = (this && this.__generator) || function (thisArg, body) {
27
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
+ function verb(n) { return function (v) { return step([n, v]); }; }
30
+ function step(op) {
31
+ if (f) throw new TypeError("Generator is already executing.");
32
+ while (_) try {
33
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
34
+ if (y = 0, t) op = [op[0] & 2, t.value];
35
+ switch (op[0]) {
36
+ case 0: case 1: t = op; break;
37
+ case 4: _.label++; return { value: op[1], done: false };
38
+ case 5: _.label++; y = op[1]; op = [0]; continue;
39
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
40
+ default:
41
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
42
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
43
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
44
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
45
+ if (t[2]) _.ops.pop();
46
+ _.trys.pop(); continue;
47
+ }
48
+ op = body.call(thisArg, _);
49
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
50
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
51
+ }
52
+ };
53
+ Object.defineProperty(exports, "__esModule", { value: true });
54
+ exports.Notifications = void 0;
55
+ var __1 = require("..");
56
+ var constants_1 = require("../constants");
57
+ var ModelClass_1 = require("../core/ModelClass");
58
+ var filtersParser_1 = require("../filtersParser");
59
+ var helpers_1 = require("../helpers");
60
+ exports.Notifications = (function (_super) {
61
+ __extends(class_1, _super);
62
+ function class_1() {
63
+ return _super !== null && _super.apply(this, arguments) || this;
64
+ }
65
+ class_1.list = function (filters, pagination) {
66
+ var _a, _b, _c, _d;
67
+ return __awaiter(this, void 0, void 0, function () {
68
+ var axios, result, error_1;
69
+ return __generator(this, function (_e) {
70
+ switch (_e.label) {
71
+ case 0:
72
+ _e.trys.push([0, 2, , 3]);
73
+ this.logAction("Listing notification with following filters: " + (filters !== null && filters !== void 0 ? filters : '{}') + ".\n And pagination " + (pagination !== null && pagination !== void 0 ? pagination : '{}'));
74
+ axios = __1.EdgeIQAPI.getAxios();
75
+ return [4, axios.get(constants_1.Endpoints.notification, {
76
+ params: (0, filtersParser_1.parseFilters)(filters, pagination),
77
+ })];
78
+ case 1:
79
+ result = _e.sent();
80
+ return [2, {
81
+ resources: (_a = result === null || result === void 0 ? void 0 : result.data) === null || _a === void 0 ? void 0 : _a.resources,
82
+ pagination: {
83
+ page: (_b = result === null || result === void 0 ? void 0 : result.data) === null || _b === void 0 ? void 0 : _b.page,
84
+ itemsPerPage: (_c = result === null || result === void 0 ? void 0 : result.data) === null || _c === void 0 ? void 0 : _c.per_page,
85
+ total: (_d = result === null || result === void 0 ? void 0 : result.data) === null || _d === void 0 ? void 0 : _d.total,
86
+ },
87
+ }];
88
+ case 2:
89
+ error_1 = _e.sent();
90
+ if ((0, helpers_1.isApiError)(error_1)) {
91
+ throw error_1;
92
+ }
93
+ throw error_1;
94
+ case 3: return [2];
95
+ }
96
+ });
97
+ });
98
+ };
99
+ class_1.getOneById = function (id) {
100
+ return __awaiter(this, void 0, void 0, function () {
101
+ var axios, result, error_2;
102
+ return __generator(this, function (_a) {
103
+ switch (_a.label) {
104
+ case 0:
105
+ _a.trys.push([0, 2, , 3]);
106
+ this.logAction("Getting notification with id: " + id);
107
+ axios = __1.EdgeIQAPI.getAxios();
108
+ return [4, axios.get(constants_1.Endpoints.notification + "/" + id)];
109
+ case 1:
110
+ result = _a.sent();
111
+ return [2, result === null || result === void 0 ? void 0 : result.data];
112
+ case 2:
113
+ error_2 = _a.sent();
114
+ if ((0, helpers_1.isApiError)(error_2)) {
115
+ throw error_2;
116
+ }
117
+ throw error_2;
118
+ case 3: return [2];
119
+ }
120
+ });
121
+ });
122
+ };
123
+ return class_1;
124
+ }(ModelClass_1.BaseModelClass));
@@ -0,0 +1,19 @@
1
+ import { Base, Filter, Filters, Pagination } from '../models';
2
+ export interface NotificationInput {
3
+ message: string;
4
+ device_id: string;
5
+ rule_id: string;
6
+ device_config_id?: string;
7
+ }
8
+ export interface Notification extends NotificationInput, Base {
9
+ }
10
+ export interface NotificationsFilters extends Filters {
11
+ device_id?: Filter;
12
+ device_config_id?: Filter;
13
+ message?: Filter;
14
+ rule_id?: Filter;
15
+ }
16
+ export interface PaginatedNotifications {
17
+ resources: Notification[];
18
+ pagination: Pagination;
19
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,9 +1,11 @@
1
- import { IntegrationInput, Company, CompanyInput, Device, DeviceInput, DeviceType, DeviceTypeInput, User, UserInput, Integration, Ingestor, IngestorInput, PollableAttribute, PollableAttributeInput, Translator, TranslatorInput, Rule, RuleInput } from '.';
1
+ import { IntegrationInput, Company, CompanyInput, Device, DeviceInput, DiscoveredDeviceInput, DeviceType, DeviceTypeInput, User, UserInput, Integration, Ingestor, IngestorInput, PollableAttribute, PollableAttributeInput, Translator, TranslatorInput, Rule, RuleInput } from '.';
2
+ import { Notification } from './notifications/models';
2
3
  export declare const TestAuth: {
3
4
  noUser: string;
4
5
  username: string;
5
6
  pass: string;
6
7
  };
8
+ export declare const TestDeviceTypeID = "610aaa4abc72d700011b872d";
7
9
  export declare const TestDevice: DeviceInput;
8
10
  export declare const TestDevice2: DeviceInput;
9
11
  export declare const EmptyDevice: Device;
@@ -40,3 +42,5 @@ export declare const EmptyRule: Rule;
40
42
  export declare const TestRule: RuleInput;
41
43
  export declare const TestRule2: RuleInput;
42
44
  export declare const NewTestRuleDescription = "EIQSDK Rule Test updated";
45
+ export declare const TestDiscoveredDevice: DiscoveredDeviceInput;
46
+ export declare const EmptyNotificationType: Notification;
@@ -11,7 +11,7 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.NewTestRuleDescription = exports.TestRule2 = exports.TestRule = exports.EmptyRule = exports.NewTestTranslatorName = exports.TestTranslator2 = exports.TestTranslator = exports.EmptyTranslator = exports.NewTestPollableAttributeName = exports.TestPollableAttribute2 = exports.TestPollableAttribute = exports.EmptyPollableAttribute = exports.NewTestIngestorName = exports.TestIngestor2 = exports.TestIngestor = exports.EmptyIngestor = exports.NewIntegrationName = exports.TestIntegration2 = exports.TestIntegration = exports.EmptyIntegration = exports.NewTestDeviceTypeName = exports.TestDeviceType2 = exports.TestDeviceType = exports.EmptyDeviceType = exports.NewTestCompanyName = exports.TestCompany2 = exports.TestCompany = exports.EmptyCompany = exports.NewTestUserName = exports.EmptyUser = exports.TestUser2 = exports.TestUser = exports.NewTestDeviceName = exports.EmptyDevice = exports.TestDevice2 = exports.TestDevice = exports.TestAuth = void 0;
14
+ exports.EmptyNotificationType = exports.TestDiscoveredDevice = exports.NewTestRuleDescription = exports.TestRule2 = exports.TestRule = exports.EmptyRule = exports.NewTestTranslatorName = exports.TestTranslator2 = exports.TestTranslator = exports.EmptyTranslator = exports.NewTestPollableAttributeName = exports.TestPollableAttribute2 = exports.TestPollableAttribute = exports.EmptyPollableAttribute = exports.NewTestIngestorName = exports.TestIngestor2 = exports.TestIngestor = exports.EmptyIngestor = exports.NewIntegrationName = exports.TestIntegration2 = exports.TestIntegration = exports.EmptyIntegration = exports.NewTestDeviceTypeName = exports.TestDeviceType2 = exports.TestDeviceType = exports.EmptyDeviceType = exports.NewTestCompanyName = exports.TestCompany2 = exports.TestCompany = exports.EmptyCompany = exports.NewTestUserName = exports.EmptyUser = exports.TestUser2 = exports.TestUser = exports.NewTestDeviceName = exports.EmptyDevice = exports.TestDevice2 = exports.TestDevice = exports.TestDeviceTypeID = exports.TestAuth = void 0;
15
15
  var parentCompanyId = 'whiteprompt_ssi_dev';
16
16
  var baseModel = {
17
17
  _id: '',
@@ -26,8 +26,9 @@ exports.TestAuth = {
26
26
  username: 'akhil.asaad+sys_admin@whiteprompt.com',
27
27
  pass: 'PiraeBeatsVenus',
28
28
  };
29
+ exports.TestDeviceTypeID = '610aaa4abc72d700011b872d';
29
30
  exports.TestDevice = {
30
- device_type_id: '610aaa4abc72d700011b872d',
31
+ device_type_id: exports.TestDeviceTypeID,
31
32
  name: 'EdgeIQAPI Test Device',
32
33
  unique_id: 'akhil_api_js_test_device',
33
34
  company_id: parentCompanyId,
@@ -212,3 +213,9 @@ exports.TestRule = {
212
213
  };
213
214
  exports.TestRule2 = __assign(__assign({}, exports.TestRule), { description: 'EIQSDK Rule Test 2' });
214
215
  exports.NewTestRuleDescription = 'EIQSDK Rule Test updated';
216
+ exports.TestDiscoveredDevice = {
217
+ company_id: parentCompanyId,
218
+ name: 'Test Discovered Device',
219
+ unique_id: 'test_discovered_device',
220
+ };
221
+ exports.EmptyNotificationType = __assign(__assign({}, baseModel), { message: 'message', rule_id: 'rule_id', device_id: 'device_id' });
@@ -5,6 +5,8 @@ interface UsersInterface extends BaseModelInterface<User, UserInput, UsersFilter
5
5
  update(user: User): Promise<User>;
6
6
  getOneByEmail(email: string): Promise<User>;
7
7
  deleteMultiple(ids: string[]): Promise<BulkActionResponse>;
8
+ addCompanyId(companyId: string, userId: string): Promise<string>;
9
+ removeCompanyId(companyId: string, userId: string): Promise<string>;
8
10
  }
9
11
  export declare const Users: UsersInterface;
10
12
  export {};
@@ -248,5 +248,53 @@ exports.Users = (function (_super) {
248
248
  });
249
249
  });
250
250
  };
251
+ class_1.addCompanyId = function (companyId, userId) {
252
+ return __awaiter(this, void 0, void 0, function () {
253
+ var axios, error_8;
254
+ return __generator(this, function (_a) {
255
+ switch (_a.label) {
256
+ case 0:
257
+ _a.trys.push([0, 2, , 3]);
258
+ this.logAction("Adding company id " + companyId + " to user " + userId);
259
+ axios = __1.EdgeIQAPI.getAxios();
260
+ return [4, axios.put(constants_1.Endpoints.user + "/" + userId + "/company_ids/" + companyId)];
261
+ case 1:
262
+ _a.sent();
263
+ return [2, 'Success'];
264
+ case 2:
265
+ error_8 = _a.sent();
266
+ if ((0, helpers_1.isApiError)(error_8)) {
267
+ throw error_8;
268
+ }
269
+ throw error_8;
270
+ case 3: return [2];
271
+ }
272
+ });
273
+ });
274
+ };
275
+ class_1.removeCompanyId = function (companyId, userId) {
276
+ return __awaiter(this, void 0, void 0, function () {
277
+ var axios, error_9;
278
+ return __generator(this, function (_a) {
279
+ switch (_a.label) {
280
+ case 0:
281
+ _a.trys.push([0, 2, , 3]);
282
+ this.logAction("Removing company id " + companyId + " from user " + userId);
283
+ axios = __1.EdgeIQAPI.getAxios();
284
+ return [4, axios.delete(constants_1.Endpoints.user + "/" + userId + "/company_ids/" + companyId)];
285
+ case 1:
286
+ _a.sent();
287
+ return [2, 'Success'];
288
+ case 2:
289
+ error_9 = _a.sent();
290
+ if ((0, helpers_1.isApiError)(error_9)) {
291
+ throw error_9;
292
+ }
293
+ throw error_9;
294
+ case 3: return [2];
295
+ }
296
+ });
297
+ });
298
+ };
251
299
  return class_1;
252
300
  }(ModelClass_1.BaseModelClass));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edgeiq/edgeiq-api-js",
3
- "version": "1.1.9",
3
+ "version": "1.2.1",
4
4
  "author": "EdgeIQ",
5
5
  "license": "ISC",
6
6
  "description": "This project presents EdgeIQ API SDK.",