dt-common-device 4.0.7 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/dist/alerts/Alert.service.d.ts +1 -1
  2. package/dist/audit/AuditUtils.d.ts +26 -2
  3. package/dist/audit/AuditUtils.js +255 -32
  4. package/dist/audit/IAuditProperties.d.ts +32 -0
  5. package/dist/audit/IAuditProperties.js +13 -0
  6. package/dist/audit/PushAudit.d.ts +5 -0
  7. package/dist/audit/PushAudit.js +16 -0
  8. package/dist/audit/index.d.ts +2 -0
  9. package/dist/audit/index.js +18 -0
  10. package/dist/config/config.d.ts +10 -3
  11. package/dist/config/config.js +120 -47
  12. package/dist/config/config.types.d.ts +1 -8
  13. package/dist/config/constants.d.ts +49 -0
  14. package/dist/config/constants.js +64 -0
  15. package/dist/db/db.d.ts +2 -0
  16. package/dist/db/db.js +23 -1
  17. package/dist/entities/accessGroup/AccessGroup.repository.d.ts +5 -0
  18. package/dist/entities/accessGroup/AccessGroup.repository.js +72 -0
  19. package/dist/entities/accessGroup/AccessGroup.service.d.ts +5 -0
  20. package/dist/{device/local/repository/Connection.repository.js → entities/accessGroup/AccessGroup.service.js} +50 -37
  21. package/dist/entities/accessGroup/IAccessGroup.d.ts +14 -0
  22. package/dist/entities/accessGroup/index.d.ts +2 -0
  23. package/dist/entities/accessGroup/index.js +18 -0
  24. package/dist/{admin → entities/admin}/Admin.repository.js +4 -4
  25. package/dist/{connection → entities/connection}/Connection.repository.js +1 -1
  26. package/dist/{device → entities/device}/local/repository/Device.repository.d.ts +1 -0
  27. package/dist/{device → entities/device}/local/repository/Device.repository.js +20 -3
  28. package/dist/{device → entities/device}/local/repository/Hub.repository.js +3 -3
  29. package/dist/{device → entities/device}/local/repository/Schedule.repository.js +2 -2
  30. package/dist/{device → entities/device}/local/services/Device.service.d.ts +10 -9
  31. package/dist/{device → entities/device}/local/services/Device.service.js +10 -4
  32. package/dist/entities/guest/Guest.repository.d.ts +6 -0
  33. package/dist/entities/guest/Guest.repository.js +74 -0
  34. package/dist/entities/guest/Guest.service.d.ts +6 -0
  35. package/dist/entities/guest/Guest.service.js +104 -0
  36. package/dist/entities/guest/IGuest.d.ts +12 -0
  37. package/dist/entities/guest/index.d.ts +2 -0
  38. package/dist/entities/guest/index.js +18 -0
  39. package/dist/{property → entities/property}/Property.repository.js +1 -1
  40. package/dist/entities/schedules/ISchedule.d.ts +14 -0
  41. package/dist/entities/schedules/Schedule.repository.d.ts +6 -0
  42. package/dist/entities/schedules/Schedule.repository.js +74 -0
  43. package/dist/entities/schedules/Schedule.service.d.ts +6 -0
  44. package/dist/entities/schedules/Schedule.service.js +104 -0
  45. package/dist/entities/schedules/index.d.ts +2 -0
  46. package/dist/entities/schedules/index.js +18 -0
  47. package/dist/{user → entities/user}/User.repository.js +2 -2
  48. package/dist/{user → entities/user}/User.service.js +3 -0
  49. package/dist/entities/zone/IZone.d.ts +10 -0
  50. package/dist/entities/zone/Zone.repository.d.ts +6 -0
  51. package/dist/{device/local/repository/Property.repository.js → entities/zone/Zone.repository.js} +14 -32
  52. package/dist/entities/zone/Zone.service.d.ts +6 -0
  53. package/dist/entities/zone/Zone.service.js +104 -0
  54. package/dist/entities/zone/index.d.ts +2 -0
  55. package/dist/entities/zone/index.js +18 -0
  56. package/dist/events/BaseEventHandler.d.ts +3 -3
  57. package/dist/events/BaseEventHandler.js +1 -1
  58. package/dist/events/DeviceEventHandler.d.ts +1 -1
  59. package/dist/events/DeviceEventHandler.js +4 -3
  60. package/dist/events/EventHandler.d.ts +10 -9
  61. package/dist/events/EventHandler.js +50 -9
  62. package/dist/events/InternalEventSubscription.js +1 -1
  63. package/dist/index.d.ts +9 -8
  64. package/dist/index.js +10 -8
  65. package/dist/issues/Issue.service.d.ts +1 -1
  66. package/dist/microservice/MicroServiceFactory.d.ts +1 -1
  67. package/dist/microservice/MicroServiceFactory.js +1 -1
  68. package/dist/utils/http.utils.d.ts +1 -2
  69. package/dist/utils/http.utils.js +5 -27
  70. package/package.json +1 -1
  71. package/dist/audit/AuditProperties.d.ts +0 -16
  72. package/dist/device/cloud/entities/CloudConnection.d.ts +0 -6
  73. package/dist/device/cloud/entities/CloudConnection.js +0 -6
  74. package/dist/device/cloud/interfaces/ICloudConnection.d.ts +0 -5
  75. package/dist/device/cloud/interfaces/IConnectionService.d.ts +0 -7
  76. package/dist/device/cloud/interfaces/IDeviceService.d.ts +0 -8
  77. package/dist/device/cloud/interfaces/IHubService.d.ts +0 -5
  78. package/dist/device/cloud/interfaces/IHubService.js +0 -2
  79. package/dist/device/cloud/services/CloudDevice.service.d.ts +0 -5
  80. package/dist/device/cloud/services/CloudDevice.service.js +0 -9
  81. package/dist/device/cloud/services/Connection.service.d.ts +0 -8
  82. package/dist/device/cloud/services/Connection.service.js +0 -6
  83. package/dist/device/cloud/services/index.d.ts +0 -2
  84. package/dist/device/cloud/services/index.js +0 -18
  85. package/dist/device/cloud/types.d.ts +0 -52
  86. package/dist/device/cloud/types.js +0 -15
  87. package/dist/device/local/entities/AlertBuilder.d.ts +0 -87
  88. package/dist/device/local/entities/AlertBuilder.example.d.ts +0 -11
  89. package/dist/device/local/entities/AlertBuilder.example.js +0 -117
  90. package/dist/device/local/entities/AlertBuilder.js +0 -179
  91. package/dist/device/local/entities/IssueBuilder.d.ts +0 -109
  92. package/dist/device/local/entities/IssueBuilder.example.d.ts +0 -16
  93. package/dist/device/local/entities/IssueBuilder.example.js +0 -196
  94. package/dist/device/local/entities/IssueBuilder.js +0 -237
  95. package/dist/device/local/entities/index.d.ts +0 -2
  96. package/dist/device/local/entities/index.js +0 -7
  97. package/dist/device/local/events/EventHandler.d.ts +0 -11
  98. package/dist/device/local/events/EventHandler.js +0 -86
  99. package/dist/device/local/events/Events.d.ts +0 -75
  100. package/dist/device/local/events/Events.js +0 -78
  101. package/dist/device/local/events/index.d.ts +0 -2
  102. package/dist/device/local/events/index.js +0 -7
  103. package/dist/device/local/handler/EventHandler.d.ts +0 -7
  104. package/dist/device/local/handler/EventHandler.js +0 -44
  105. package/dist/device/local/interfaces/IConnection.d.ts +0 -26
  106. package/dist/device/local/interfaces/IConnection.js +0 -14
  107. package/dist/device/local/interfaces/IHub.d.ts +0 -46
  108. package/dist/device/local/interfaces/IHub.js +0 -2
  109. package/dist/device/local/models/Alert.model.d.ts +0 -28
  110. package/dist/device/local/models/Alert.model.js +0 -222
  111. package/dist/device/local/models/Issue.model.d.ts +0 -28
  112. package/dist/device/local/models/Issue.model.js +0 -260
  113. package/dist/device/local/repository/Alert.repository.d.ts +0 -106
  114. package/dist/device/local/repository/Alert.repository.js +0 -374
  115. package/dist/device/local/repository/Connection.repository.d.ts +0 -8
  116. package/dist/device/local/repository/Issue.repository.d.ts +0 -113
  117. package/dist/device/local/repository/Issue.repository.js +0 -401
  118. package/dist/device/local/repository/Property.repository.d.ts +0 -8
  119. package/dist/device/local/services/Alert.service.d.ts +0 -137
  120. package/dist/device/local/services/Alert.service.js +0 -475
  121. package/dist/device/local/services/AlertService.example.d.ts +0 -55
  122. package/dist/device/local/services/AlertService.example.js +0 -148
  123. package/dist/device/local/services/Connection.service.d.ts +0 -8
  124. package/dist/device/local/services/Connection.service.js +0 -32
  125. package/dist/device/local/services/Issue.service.d.ts +0 -168
  126. package/dist/device/local/services/Issue.service.js +0 -642
  127. package/dist/device/local/services/IssueService.example.d.ts +0 -68
  128. package/dist/device/local/services/IssueService.example.js +0 -177
  129. package/dist/device/local/services/Property.service.d.ts +0 -8
  130. package/dist/device/local/services/Property.service.js +0 -36
  131. package/dist/property/IProperty.d.ts +0 -29
  132. package/dist/property/IProperty.js +0 -2
  133. package/dist/queue/interfaces/IHttpRequestJob.d.ts +0 -9
  134. package/dist/queue/interfaces/IHttpRequestJob.js +0 -2
  135. package/dist/types/alert.types.d.ts +0 -57
  136. package/dist/types/alert.types.js +0 -22
  137. package/dist/types/config.types.d.ts +0 -19
  138. package/dist/types/config.types.js +0 -2
  139. package/dist/types/index.d.ts +0 -3
  140. package/dist/types/index.js +0 -19
  141. package/dist/types/issue.types.d.ts +0 -90
  142. package/dist/types/issue.types.js +0 -40
  143. package/dist/utils/http-utils.d.ts +0 -13
  144. package/dist/utils/http-utils.js +0 -117
  145. /package/dist/{audit/AuditProperties.js → entities/accessGroup/IAccessGroup.js} +0 -0
  146. /package/dist/{admin → entities/admin}/Admin.repository.d.ts +0 -0
  147. /package/dist/{admin → entities/admin}/Admin.service.d.ts +0 -0
  148. /package/dist/{admin → entities/admin}/Admin.service.js +0 -0
  149. /package/dist/{admin → entities/admin}/index.d.ts +0 -0
  150. /package/dist/{admin → entities/admin}/index.js +0 -0
  151. /package/dist/{connection → entities/connection}/Connection.repository.d.ts +0 -0
  152. /package/dist/{connection → entities/connection}/Connection.service.d.ts +0 -0
  153. /package/dist/{connection → entities/connection}/Connection.service.js +0 -0
  154. /package/dist/{connection → entities/connection}/IConnection.d.ts +0 -0
  155. /package/dist/{connection → entities/connection}/IConnection.js +0 -0
  156. /package/dist/{connection → entities/connection}/index.d.ts +0 -0
  157. /package/dist/{connection → entities/connection}/index.js +0 -0
  158. /package/dist/{device → entities/device}/cloud/entities/CloudDevice.d.ts +0 -0
  159. /package/dist/{device → entities/device}/cloud/entities/CloudDevice.js +0 -0
  160. /package/dist/{device → entities/device}/cloud/entities/CloudDeviceService.d.ts +0 -0
  161. /package/dist/{device → entities/device}/cloud/entities/CloudDeviceService.js +0 -0
  162. /package/dist/{device → entities/device}/cloud/entities/DeviceFactory.d.ts +0 -0
  163. /package/dist/{device → entities/device}/cloud/entities/DeviceFactory.js +0 -0
  164. /package/dist/{device → entities/device}/cloud/entities/index.d.ts +0 -0
  165. /package/dist/{device → entities/device}/cloud/entities/index.js +0 -0
  166. /package/dist/{device → entities/device}/cloud/interfaces/ICloudDevice.d.ts +0 -0
  167. /package/dist/{device → entities/device}/cloud/interfaces/ICloudDevice.js +0 -0
  168. /package/dist/{device → entities/device}/cloud/interfaces/ICloudDeviceService.d.ts +0 -0
  169. /package/dist/{device → entities/device}/cloud/interfaces/ICloudDeviceService.js +0 -0
  170. /package/dist/{device → entities/device}/cloud/interfaces/IDeviceFactory.d.ts +0 -0
  171. /package/dist/{device → entities/device}/cloud/interfaces/IDeviceFactory.js +0 -0
  172. /package/dist/{device → entities/device}/cloud/interfaces/IRawDataTransformer.d.ts +0 -0
  173. /package/dist/{device → entities/device}/cloud/interfaces/IRawDataTransformer.js +0 -0
  174. /package/dist/{device → entities/device}/cloud/interfaces/IRawDevice.d.ts +0 -0
  175. /package/dist/{device → entities/device}/cloud/interfaces/IRawDevice.js +0 -0
  176. /package/dist/{device → entities/device}/cloud/interfaces/index.d.ts +0 -0
  177. /package/dist/{device → entities/device}/cloud/interfaces/index.js +0 -0
  178. /package/dist/{device → entities/device}/local/interfaces/IDevice.d.ts +0 -0
  179. /package/dist/{device → entities/device}/local/interfaces/IDevice.js +0 -0
  180. /package/dist/{device → entities/device}/local/interfaces/IDtDevice.d.ts +0 -0
  181. /package/dist/{device → entities/device}/local/interfaces/IDtDevice.js +0 -0
  182. /package/dist/{device → entities/device}/local/interfaces/ISchedule.d.ts +0 -0
  183. /package/dist/{device → entities/device}/local/interfaces/ISchedule.js +0 -0
  184. /package/dist/{device → entities/device}/local/interfaces/index.d.ts +0 -0
  185. /package/dist/{device → entities/device}/local/interfaces/index.js +0 -0
  186. /package/dist/{device → entities/device}/local/repository/Hub.repository.d.ts +0 -0
  187. /package/dist/{device → entities/device}/local/repository/Schedule.repository.d.ts +0 -0
  188. /package/dist/{device → entities/device}/local/services/Hub.service.d.ts +0 -0
  189. /package/dist/{device → entities/device}/local/services/Hub.service.js +0 -0
  190. /package/dist/{device → entities/device}/local/services/Schedule.service.d.ts +0 -0
  191. /package/dist/{device → entities/device}/local/services/Schedule.service.js +0 -0
  192. /package/dist/{device → entities/device}/local/services/index.d.ts +0 -0
  193. /package/dist/{device → entities/device}/local/services/index.js +0 -0
  194. /package/dist/{device/cloud/interfaces/ICloudConnection.js → entities/guest/IGuest.js} +0 -0
  195. /package/dist/{pms → entities/pms}/IPms.d.ts +0 -0
  196. /package/dist/{pms → entities/pms}/IPms.js +0 -0
  197. /package/dist/{pms → entities/pms}/index.d.ts +0 -0
  198. /package/dist/{pms → entities/pms}/index.js +0 -0
  199. /package/dist/{device/local/interfaces → entities/property}/IProperty.d.ts +0 -0
  200. /package/dist/{device/local/interfaces → entities/property}/IProperty.js +0 -0
  201. /package/dist/{property → entities/property}/Property.repository.d.ts +0 -0
  202. /package/dist/{property → entities/property}/Property.service.d.ts +0 -0
  203. /package/dist/{property → entities/property}/Property.service.js +0 -0
  204. /package/dist/{property → entities/property}/index.d.ts +0 -0
  205. /package/dist/{property → entities/property}/index.js +0 -0
  206. /package/dist/{device/cloud/interfaces/IConnectionService.js → entities/schedules/ISchedule.js} +0 -0
  207. /package/dist/{user → entities/user}/IUser.d.ts +0 -0
  208. /package/dist/{user → entities/user}/IUser.js +0 -0
  209. /package/dist/{user → entities/user}/User.repository.d.ts +0 -0
  210. /package/dist/{user → entities/user}/User.service.d.ts +0 -0
  211. /package/dist/{device/cloud/interfaces/IDeviceService.js → entities/zone/IZone.js} +0 -0
package/dist/index.d.ts CHANGED
@@ -1,17 +1,18 @@
1
1
  export * from "./microservice";
2
2
  export * from "./constants";
3
- export { CloudDevice, CloudDeviceService, DeviceFactory, } from "./device/cloud/entities";
4
- export { LocalDeviceService, LocalHubService, LocalScheduleService, } from "./device/local/services";
5
- export * from "./device/local/interfaces";
6
- export * from "./device/cloud/interfaces";
7
- export * from "./admin";
8
- export * from "./connection";
9
- export * from "./property";
3
+ export { CloudDevice, CloudDeviceService, DeviceFactory, } from "./entities/device/cloud/entities";
4
+ export { LocalDeviceService, LocalHubService, LocalScheduleService, } from "./entities/device/local/services";
5
+ export * from "./entities/device/local/interfaces";
6
+ export * from "./entities/device/cloud/interfaces";
7
+ export * from "./entities/admin";
8
+ export * from "./entities/connection";
9
+ export * from "./entities/property";
10
10
  export * from "./events";
11
11
  export * from "./events/interfaces";
12
12
  export * from "./alerts";
13
13
  export * from "./issues";
14
14
  export * from "./utils";
15
15
  export * from "./queue";
16
- export * from "./pms";
16
+ export * from "./entities/pms";
17
+ export * from "./audit";
17
18
  export { initialize, getConfig, shutdown } from "./config/config";
package/dist/index.js CHANGED
@@ -21,22 +21,22 @@ __exportStar(require("./microservice"), exports);
21
21
  // CONSTANTS EXPORTS
22
22
  __exportStar(require("./constants"), exports);
23
23
  // DEVICE EXPORTS
24
- var entities_1 = require("./device/cloud/entities");
24
+ var entities_1 = require("./entities/device/cloud/entities");
25
25
  Object.defineProperty(exports, "CloudDevice", { enumerable: true, get: function () { return entities_1.CloudDevice; } });
26
26
  Object.defineProperty(exports, "CloudDeviceService", { enumerable: true, get: function () { return entities_1.CloudDeviceService; } });
27
27
  Object.defineProperty(exports, "DeviceFactory", { enumerable: true, get: function () { return entities_1.DeviceFactory; } });
28
- var services_1 = require("./device/local/services");
28
+ var services_1 = require("./entities/device/local/services");
29
29
  Object.defineProperty(exports, "LocalDeviceService", { enumerable: true, get: function () { return services_1.LocalDeviceService; } });
30
30
  Object.defineProperty(exports, "LocalHubService", { enumerable: true, get: function () { return services_1.LocalHubService; } });
31
31
  Object.defineProperty(exports, "LocalScheduleService", { enumerable: true, get: function () { return services_1.LocalScheduleService; } });
32
- __exportStar(require("./device/local/interfaces"), exports);
33
- __exportStar(require("./device/cloud/interfaces"), exports);
32
+ __exportStar(require("./entities/device/local/interfaces"), exports);
33
+ __exportStar(require("./entities/device/cloud/interfaces"), exports);
34
34
  // ADMIN EXPORTS
35
- __exportStar(require("./admin"), exports);
35
+ __exportStar(require("./entities/admin"), exports);
36
36
  // CONNECTION EXPORTS
37
- __exportStar(require("./connection"), exports);
37
+ __exportStar(require("./entities/connection"), exports);
38
38
  // PROPERTY EXPORTS
39
- __exportStar(require("./property"), exports);
39
+ __exportStar(require("./entities/property"), exports);
40
40
  // EVENTS EXPORTS
41
41
  __exportStar(require("./events"), exports);
42
42
  __exportStar(require("./events/interfaces"), exports);
@@ -49,7 +49,9 @@ __exportStar(require("./utils"), exports);
49
49
  // QUEUE EXPORTS
50
50
  __exportStar(require("./queue"), exports);
51
51
  // PMS EXPORTS
52
- __exportStar(require("./pms"), exports);
52
+ __exportStar(require("./entities/pms"), exports);
53
+ // AUDIT EXPORTS
54
+ __exportStar(require("./audit"), exports);
53
55
  // CONFIG EXPORTS
54
56
  var config_1 = require("./config/config");
55
57
  Object.defineProperty(exports, "initialize", { enumerable: true, get: function () { return config_1.initialize; } });
@@ -3,7 +3,7 @@ import { IIssueDocument } from "./Issue.model";
3
3
  import { CreateIssueData, UpdateIssueData, AddCommentData, IssueStatus, IssuePriority, IssuesCategory, EntityType } from "./issue.types";
4
4
  import { IssueBuilder } from "./IssueBuilder";
5
5
  import { Source } from "../constants/Service";
6
- import { IDevice } from "../device/local/interfaces";
6
+ import { IDevice } from "../entities/device/local/interfaces";
7
7
  export declare class IssueService {
8
8
  private readonly issueRepository;
9
9
  constructor(issueRepository: IssueRepository);
@@ -1,5 +1,5 @@
1
1
  import { SERVICE_NAME } from "../constants";
2
- import { DeviceType } from "../device/cloud/interfaces";
2
+ import { DeviceType } from "../entities/device/cloud/interfaces";
3
3
  export declare class MicroServiceFactory {
4
4
  private readonly deviceType;
5
5
  private static instances;
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MicroServiceFactory = void 0;
4
4
  const constants_1 = require("../constants");
5
- const interfaces_1 = require("../device/cloud/interfaces");
5
+ const interfaces_1 = require("../entities/device/cloud/interfaces");
6
6
  class MicroServiceFactory {
7
7
  constructor(deviceType) {
8
8
  this.deviceType = deviceType;
@@ -7,8 +7,7 @@ export declare function validateServiceUrl(url: string): boolean;
7
7
  */
8
8
  export declare function createAxiosInstance(baseURL?: string): import("axios").AxiosInstance;
9
9
  export declare function getDeviceServiceAxiosInstance(): any;
10
- export declare function getAccessServiceAxiosInstance(): any;
11
- export declare function getCloudServiceAxiosInstance(): any;
10
+ export declare function getAdminServiceAxiosInstance(): any;
12
11
  /**
13
12
  * Retry function for failed HTTP requests
14
13
  */
@@ -6,8 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.validateServiceUrl = validateServiceUrl;
7
7
  exports.createAxiosInstance = createAxiosInstance;
8
8
  exports.getDeviceServiceAxiosInstance = getDeviceServiceAxiosInstance;
9
- exports.getAccessServiceAxiosInstance = getAccessServiceAxiosInstance;
10
- exports.getCloudServiceAxiosInstance = getCloudServiceAxiosInstance;
9
+ exports.getAdminServiceAxiosInstance = getAdminServiceAxiosInstance;
11
10
  exports.retryRequest = retryRequest;
12
11
  const config_1 = require("../config/config");
13
12
  const axios_1 = __importDefault(require("axios"));
@@ -36,6 +35,7 @@ function createAxiosInstance(baseURL) {
36
35
  headers: {
37
36
  "Content-Type": "application/json",
38
37
  "User-Agent": "dt-common-device/1.3.0",
38
+ "x-api-key": (0, config_1.getDTApiKey)(),
39
39
  },
40
40
  });
41
41
  // Add request interceptor for logging
@@ -83,39 +83,17 @@ function createAxiosInstance(baseURL) {
83
83
  let deviceServiceAxiosInstance = null;
84
84
  function getDeviceServiceAxiosInstance() {
85
85
  if (!deviceServiceAxiosInstance) {
86
- const { DEVICE_SERVICE } = (0, config_1.getConfig)();
87
- if (!DEVICE_SERVICE) {
88
- throw new Error("DEVICE_SERVICE is not configured. Call initialize() first with DEVICE_SERVICE.");
89
- }
90
- deviceServiceAxiosInstance = createAxiosInstance(DEVICE_SERVICE);
86
+ deviceServiceAxiosInstance = createAxiosInstance((0, config_1.getDeviceServiceUrl)());
91
87
  }
92
88
  return deviceServiceAxiosInstance;
93
89
  }
94
- /**
95
- * Centralized axios instance for access service
96
- */
97
- let accessServiceAxiosInstance = null;
98
- function getAccessServiceAxiosInstance() {
99
- if (!accessServiceAxiosInstance) {
100
- const { ACCESS_SERVICE } = (0, config_1.getConfig)();
101
- if (!ACCESS_SERVICE) {
102
- throw new Error("ACCESS_SERVICE is not configured. Call initialize() first with ACCESS_SERVICE.");
103
- }
104
- accessServiceAxiosInstance = createAxiosInstance(ACCESS_SERVICE);
105
- }
106
- return accessServiceAxiosInstance;
107
- }
108
90
  /**
109
91
  * Centralized axios instance for cloud service (smart-cloud)
110
92
  */
111
93
  let cloudServiceAxiosInstance = null;
112
- function getCloudServiceAxiosInstance() {
113
- const { ADMIN_SERVICE } = (0, config_1.getConfig)();
94
+ function getAdminServiceAxiosInstance() {
114
95
  if (!cloudServiceAxiosInstance) {
115
- if (!ADMIN_SERVICE) {
116
- throw new Error("ADMIN_SERVICE is not configured. Call initialize() first with ADMIN_SERVICE.");
117
- }
118
- cloudServiceAxiosInstance = createAxiosInstance(ADMIN_SERVICE);
96
+ cloudServiceAxiosInstance = createAxiosInstance((0, config_1.getAdminServiceUrl)());
119
97
  }
120
98
  return cloudServiceAxiosInstance;
121
99
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dt-common-device",
3
- "version": "4.0.7",
3
+ "version": "5.0.0",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "files": [
@@ -1,16 +0,0 @@
1
- export interface AuditProperties {
2
- resource: string;
3
- propertyId: string;
4
- propertyName?: string;
5
- userId?: string;
6
- userName?: string;
7
- deviceId?: string;
8
- deviceName?: string;
9
- zoneId?: string;
10
- zoneName?: string;
11
- accessGroupId?: string;
12
- accessGroupName?: string;
13
- scheduleId?: string;
14
- scheduleName?: string;
15
- [key: string]: any;
16
- }
@@ -1,6 +0,0 @@
1
- import { ICloudConnection } from "../interfaces";
2
- import { IDeviceAccountResponse, IConnection } from "../types";
3
- export declare abstract class CloudConnection implements ICloudConnection {
4
- abstract createConnection(data: IConnection, userId: string): Promise<IConnection>;
5
- abstract getDeviceAccount(connection: IConnection): Promise<IDeviceAccountResponse>;
6
- }
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CloudConnection = void 0;
4
- class CloudConnection {
5
- }
6
- exports.CloudConnection = CloudConnection;
@@ -1,5 +0,0 @@
1
- import { IConnection, IDeviceAccountResponse } from "../types";
2
- export interface ICloudConnection {
3
- createConnection(data: IConnection, userId: string): Promise<IConnection>;
4
- getDeviceAccount(connection: IConnection): Promise<IDeviceAccountResponse>;
5
- }
@@ -1,7 +0,0 @@
1
- import { IConnection, IConnectionConnectParams, IDeviceAccountResponse } from "../types";
2
- export interface IConnectionService {
3
- createConnection(data: IConnection, userId: string): Promise<any>;
4
- getDeviceAccount(connection: IConnection): Promise<IDeviceAccountResponse>;
5
- getDevices(connection: IConnection): Promise<any>;
6
- connect(connection: IConnection, connectionConnect: IConnectionConnectParams): Promise<any>;
7
- }
@@ -1,8 +0,0 @@
1
- import { IConnection } from "../types";
2
- export interface IDeviceService {
3
- getDevices(connection: IConnection): Promise<Record<string, any>[]>;
4
- getDevice(connectionId: string, deviceId: string): Promise<Record<string, any>>;
5
- getBattery(deviceId: string): Promise<number | string>;
6
- getState(deviceId: string): Promise<string>;
7
- getStatus(connectionId: string, deviceId: string): Promise<string>;
8
- }
@@ -1,5 +0,0 @@
1
- export interface IHubService {
2
- getHubs(connectionId: string): Promise<any[] | null>;
3
- getHub(connectionId: string, hubId: string): Promise<Record<string, any>>;
4
- getStatus(connectionId: string, hubId: string): Promise<string>;
5
- }
@@ -1,2 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,5 +0,0 @@
1
- import { ICloudDeviceService } from "../interfaces/ICloudDeviceService";
2
- import { IConnection } from "../types";
3
- export declare class CloudDeviceService implements ICloudDeviceService {
4
- getConnection(deviceId: string): Promise<IConnection>;
5
- }
@@ -1,9 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CloudDeviceService = void 0;
4
- class CloudDeviceService {
5
- async getConnection(deviceId) {
6
- throw new Error("Method not implemented.");
7
- }
8
- }
9
- exports.CloudDeviceService = CloudDeviceService;
@@ -1,8 +0,0 @@
1
- import { IConnectionService } from "../interfaces";
2
- import { IDeviceAccountResponse, IConnectionConnectParams, IConnection } from "../types";
3
- export declare abstract class ConnectionService implements IConnectionService {
4
- abstract createConnection(data: IConnection, userId: string): Promise<any>;
5
- abstract getDeviceAccount(connection: IConnection): Promise<IDeviceAccountResponse>;
6
- abstract getDevices(connection: IConnection): Promise<any>;
7
- abstract connect(connection: IConnection, connectionConnect: IConnectionConnectParams): Promise<any>;
8
- }
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ConnectionService = void 0;
4
- class ConnectionService {
5
- }
6
- exports.ConnectionService = ConnectionService;
@@ -1,2 +0,0 @@
1
- export * from "./CloudDevice.service";
2
- export * from "./Connection.service";
@@ -1,18 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./CloudDevice.service"), exports);
18
- __exportStar(require("./Connection.service"), exports);
@@ -1,52 +0,0 @@
1
- /**
2
- * Represents a connection to a device provider.
3
- * WARNING: Do not log or expose sensitive fields (accessToken, clientSecret).
4
- */
5
- export interface IConnection {
6
- id?: string;
7
- createdAt?: Date;
8
- updatedAt?: Date;
9
- isDeleted?: boolean;
10
- connectionName: string;
11
- connectionRefId: string;
12
- propertyId: string;
13
- connectionProvider: ConnectionProvider;
14
- accessToken?: string;
15
- refreshToken?: string;
16
- clientId?: string;
17
- clientSecret: string;
18
- isActive?: boolean;
19
- metaData?: any;
20
- }
21
- export interface IConnectionPagination {
22
- page: number;
23
- limit: number;
24
- }
25
- /**
26
- * Device account response from provider.
27
- * WARNING: Do not log or expose connection_access_token.
28
- */
29
- export interface IDeviceAccountResponse {
30
- id: string;
31
- connection_name: string;
32
- connection_access_token: string;
33
- connection_provider: string;
34
- totalDevices: number;
35
- connection_ref_id: string;
36
- isActive: boolean;
37
- }
38
- export interface IConnectionConnectParams {
39
- code?: string;
40
- propertyId?: string;
41
- [key: string]: unknown;
42
- }
43
- export declare enum ConnectionProvider {
44
- Smartthings = "Smartthings",
45
- SaltoKS = "SaltoKS",
46
- TTLock = "TTLock",
47
- Tuya = "Tuya",
48
- Schlage = "Schlage",
49
- YaleWifi = "YaleWifi",
50
- Sensibo = "Sensibo",
51
- Devicethread = "Devicethread"
52
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- // Device Cloud Type Interfaces for DeviceThread Common Library
3
- Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.ConnectionProvider = void 0;
5
- var ConnectionProvider;
6
- (function (ConnectionProvider) {
7
- ConnectionProvider["Smartthings"] = "Smartthings";
8
- ConnectionProvider["SaltoKS"] = "SaltoKS";
9
- ConnectionProvider["TTLock"] = "TTLock";
10
- ConnectionProvider["Tuya"] = "Tuya";
11
- ConnectionProvider["Schlage"] = "Schlage";
12
- ConnectionProvider["YaleWifi"] = "YaleWifi";
13
- ConnectionProvider["Sensibo"] = "Sensibo";
14
- ConnectionProvider["Devicethread"] = "Devicethread";
15
- })(ConnectionProvider || (exports.ConnectionProvider = ConnectionProvider = {}));
@@ -1,87 +0,0 @@
1
- import { CreateAlertData, AlertCategory, AlertSeverity, EntityType } from "../../../types/alert.types";
2
- /**
3
- * AlertBuilder - A builder pattern implementation for constructing CreateAlertData objects
4
- *
5
- * This builder provides a fluent interface for creating alert data with proper validation
6
- * and default values. It follows the Builder pattern which is a standard design pattern
7
- * in TypeScript for constructing complex objects.
8
- *
9
- * Usage example:
10
- * const alertData = new AlertBuilder()
11
- * .setCategory(AlertCategory.OPERATIONS)
12
- * .setPropertyId("prop123")
13
- * .setTitle("Device Offline")
14
- * .setDescription("Device has been offline for more than 5 minutes")
15
- * .setEntityId("device456")
16
- * .setEntityType(EntityType.DEVICE)
17
- * .setSeverity(AlertSeverity.HIGH)
18
- * .setCreatedBy("user789")
19
- * .build();
20
- */
21
- export declare class AlertBuilder {
22
- private data;
23
- /**
24
- * Sets the alert category
25
- */
26
- setCategory(category: AlertCategory): AlertBuilder;
27
- /**
28
- * Sets the property ID
29
- */
30
- setPropertyId(propertyId: string): AlertBuilder;
31
- /**
32
- * Sets the alert title
33
- */
34
- setTitle(title: string): AlertBuilder;
35
- /**
36
- * Sets the alert description
37
- */
38
- setDescription(description: string): AlertBuilder;
39
- /**
40
- * Sets the entity ID (optional)
41
- */
42
- setEntityId(entityId?: string): AlertBuilder;
43
- /**
44
- * Sets the entity type
45
- */
46
- setEntityType(entityType: EntityType): AlertBuilder;
47
- /**
48
- * Sets the alert severity (optional, defaults to MEDIUM)
49
- */
50
- setSeverity(severity?: AlertSeverity): AlertBuilder;
51
- /**
52
- * Sets the user who created the alert (optional)
53
- */
54
- setCreatedBy(createdBy?: string): AlertBuilder;
55
- /**
56
- * Sets the snooze until date (optional)
57
- */
58
- setSnoozeUntil(snoozeUntil?: Date): AlertBuilder;
59
- /**
60
- * Validates that all required fields are present
61
- */
62
- private validate;
63
- /**
64
- * Builds and returns the CreateAlertData object
65
- * @throws Error if required fields are missing
66
- */
67
- build(): CreateAlertData;
68
- /**
69
- * Resets the builder to its initial state
70
- */
71
- reset(): AlertBuilder;
72
- /**
73
- * Creates a new builder instance with predefined values for common alert types
74
- */
75
- static createReadinessAlert(): AlertBuilder;
76
- static createOperationsAlert(): AlertBuilder;
77
- static createSecurityAlert(): AlertBuilder;
78
- static createEnergyAlert(): AlertBuilder;
79
- /**
80
- * Creates a device-specific alert builder
81
- */
82
- static createDeviceAlert(deviceId: string, propertyId: string): AlertBuilder;
83
- /**
84
- * Creates a hub-specific alert builder
85
- */
86
- static createHubAlert(hubId: string, propertyId: string): AlertBuilder;
87
- }
@@ -1,11 +0,0 @@
1
- /**
2
- * Example usage of AlertBuilder
3
- * This file demonstrates various ways to use the AlertBuilder pattern
4
- */
5
- export declare function createBasicAlert(): import("../../../types/alert.types").CreateAlertData;
6
- export declare function createDeviceAlert(): import("../../../types/alert.types").CreateAlertData;
7
- export declare function createSecurityAlert(): import("../../../types/alert.types").CreateAlertData;
8
- export declare function createEnergyAlert(): import("../../../types/alert.types").CreateAlertData;
9
- export declare function createHubAlert(): import("../../../types/alert.types").CreateAlertData;
10
- export declare function createSnoozedAlert(): import("../../../types/alert.types").CreateAlertData;
11
- export declare function createMultipleAlerts(): import("../../../types/alert.types").CreateAlertData[];
@@ -1,117 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createBasicAlert = createBasicAlert;
4
- exports.createDeviceAlert = createDeviceAlert;
5
- exports.createSecurityAlert = createSecurityAlert;
6
- exports.createEnergyAlert = createEnergyAlert;
7
- exports.createHubAlert = createHubAlert;
8
- exports.createSnoozedAlert = createSnoozedAlert;
9
- exports.createMultipleAlerts = createMultipleAlerts;
10
- const AlertBuilder_1 = require("./AlertBuilder");
11
- const alert_types_1 = require("../../../types/alert.types");
12
- /**
13
- * Example usage of AlertBuilder
14
- * This file demonstrates various ways to use the AlertBuilder pattern
15
- */
16
- // Example 1: Basic alert creation
17
- function createBasicAlert() {
18
- const alertData = new AlertBuilder_1.AlertBuilder()
19
- .setCategory(alert_types_1.AlertCategory.OPERATIONS)
20
- .setPropertyId("prop123")
21
- .setTitle("Device Offline")
22
- .setDescription("Device has been offline for more than 5 minutes")
23
- .setEntityId("device456")
24
- .setEntityType(alert_types_1.EntityType.DEVICE)
25
- .setSeverity(alert_types_1.AlertSeverity.HIGH)
26
- .setCreatedBy("user789")
27
- .build();
28
- return alertData;
29
- }
30
- // Example 2: Using static factory methods
31
- function createDeviceAlert() {
32
- const alertData = AlertBuilder_1.AlertBuilder.createDeviceAlert("device123", "prop456")
33
- .setCategory(alert_types_1.AlertCategory.READINESS)
34
- .setTitle("Device Maintenance Required")
35
- .setDescription("Device firmware update is available")
36
- .setSeverity(alert_types_1.AlertSeverity.MEDIUM)
37
- .setCreatedBy("system")
38
- .build();
39
- return alertData;
40
- }
41
- // Example 3: Using predefined alert types
42
- function createSecurityAlert() {
43
- const alertData = AlertBuilder_1.AlertBuilder.createSecurityAlert()
44
- .setPropertyId("prop789")
45
- .setTitle("Unauthorized Access Attempt")
46
- .setDescription("Multiple failed login attempts detected")
47
- .setEntityId("user123")
48
- .setEntityType(alert_types_1.EntityType.USER)
49
- .setCreatedBy("security-system")
50
- .build();
51
- return alertData;
52
- }
53
- // Example 4: Creating energy alert
54
- function createEnergyAlert() {
55
- const alertData = AlertBuilder_1.AlertBuilder.createEnergyAlert()
56
- .setPropertyId("prop101")
57
- .setTitle("High Energy Consumption")
58
- .setDescription("Energy usage is 20% above normal levels")
59
- .setEntityId("zone456")
60
- .setEntityType(alert_types_1.EntityType.COLLECTION)
61
- .setCreatedBy("energy-monitor")
62
- .build();
63
- return alertData;
64
- }
65
- // Example 5: Creating hub alert
66
- function createHubAlert() {
67
- const alertData = AlertBuilder_1.AlertBuilder.createHubAlert("hub789", "prop202")
68
- .setCategory(alert_types_1.AlertCategory.OPERATIONS)
69
- .setTitle("Hub Connection Lost")
70
- .setDescription("Hub has lost connection to the network")
71
- .setSeverity(alert_types_1.AlertSeverity.CRITICAL)
72
- .setCreatedBy("network-monitor")
73
- .build();
74
- return alertData;
75
- }
76
- // Example 6: Alert with snooze
77
- function createSnoozedAlert() {
78
- const snoozeUntil = new Date();
79
- snoozeUntil.setHours(snoozeUntil.getHours() + 2); // Snooze for 2 hours
80
- const alertData = new AlertBuilder_1.AlertBuilder()
81
- .setCategory(alert_types_1.AlertCategory.OTHER)
82
- .setPropertyId("prop303")
83
- .setTitle("Scheduled Maintenance")
84
- .setDescription("System maintenance scheduled for tonight")
85
- .setEntityType(alert_types_1.EntityType.PROPERTY)
86
- .setSeverity(alert_types_1.AlertSeverity.INFO)
87
- .setCreatedBy("admin")
88
- .setSnoozeUntil(snoozeUntil)
89
- .build();
90
- return alertData;
91
- }
92
- // Example 7: Reusing builder instance
93
- function createMultipleAlerts() {
94
- const builder = new AlertBuilder_1.AlertBuilder()
95
- .setPropertyId("prop404")
96
- .setCreatedBy("system");
97
- const alert1 = builder
98
- .setCategory(alert_types_1.AlertCategory.OPERATIONS)
99
- .setTitle("Device Temperature High")
100
- .setDescription("Device temperature exceeds normal operating range")
101
- .setEntityId("device789")
102
- .setEntityType(alert_types_1.EntityType.DEVICE)
103
- .setSeverity(alert_types_1.AlertSeverity.HIGH)
104
- .build();
105
- const alert2 = builder
106
- .reset()
107
- .setPropertyId("prop404")
108
- .setCategory(alert_types_1.AlertCategory.ENERGY)
109
- .setTitle("Low Battery Warning")
110
- .setDescription("Device battery level is below 20%")
111
- .setEntityId("device789")
112
- .setEntityType(alert_types_1.EntityType.DEVICE)
113
- .setSeverity(alert_types_1.AlertSeverity.MEDIUM)
114
- .setCreatedBy("system")
115
- .build();
116
- return [alert1, alert2];
117
- }