@spytecgps/nova-orm 1.0.109 → 1.0.110

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import { DeviceBehavior, UserDeviceBehaviorTask } from '../../entities';
2
- import { CreateDeviceBehaviorTaskParams, GetDeviceBehaviorsByIdsParams, GetDeviceBehaviorsParams, GetDeviceBehaviorTasksParams, GetLatestDeviceBehaviorTasksParams, GetLatestDeviceBehaviorTasksResult, GettDevicesLastBehaviorTaskParams, UpdateDeviceBehaviorTaskParams, UpsertDeviceBehaviorParams } from '../../types/deviceBehaviors';
2
+ import { CreateDeviceBehaviorTaskParams, GetDeviceBehaviorsByIdsParams, GetDeviceBehaviorsParams, GetDeviceBehaviorTasksParams, UpdateDeviceBehaviorTaskParams, UpsertDeviceBehaviorParams } from '../../types/deviceBehaviors';
3
3
  import { BaseRepository } from '../baseRepository';
4
4
  export declare class DeviceBehaviorsRepository extends BaseRepository {
5
5
  /**
@@ -35,19 +35,6 @@ export declare class DeviceBehaviorsRepository extends BaseRepository {
35
35
  * @returns The device behavior tasks list
36
36
  */
37
37
  getDeviceBehaviorTasks(params: GetDeviceBehaviorTasksParams): Promise<UserDeviceBehaviorTask[]>;
38
- /**
39
- * Get the devices last behavior task
40
- * @param {GettDevicesLastBehaviorTaskParams} params containing information to get device behavior tasks
41
- * Filters (One of taskId or imeiList is required):
42
- * - filters.imeiList: The imei list
43
- * - filters.status: The status, optional
44
- * - filters.deviceBehaviorIdList: The device behavior id list, optional
45
- * Paging options:
46
- * - pagingOptions.offset: The offset, optional. Default is 0
47
- * - pagingOptions.limit: The limit, optional. Default is 100
48
- * @returns The device behavior tasks list
49
- */
50
- getDevicesLastBehaviorTask(params: GettDevicesLastBehaviorTaskParams): Promise<UserDeviceBehaviorTask[]>;
51
38
  /**
52
39
  * Create device behavior task
53
40
  * @param {CreateDeviceBehaviorTaskParams} params containing information to create a device behavior task
@@ -74,15 +61,6 @@ export declare class DeviceBehaviorsRepository extends BaseRepository {
74
61
  * @returns Whether the device behavior task was updated
75
62
  */
76
63
  updateDeviceBehaviorTask(params: UpdateDeviceBehaviorTaskParams): Promise<boolean>;
77
- /**
78
- * Get latest device behavior tasks
79
- * @param {GetLatestDeviceBehaviorTasksParams} params containing information to get latest device behavior tasks
80
- * - params.filters.clientId: The client id
81
- * - params.filters.type: The device behavior type
82
- * - params.filters.status: The task status
83
- * @returns The latest device behavior tasks list
84
- */
85
- getLatestDeviceBehaviorTasks(params: GetLatestDeviceBehaviorTasksParams): Promise<GetLatestDeviceBehaviorTasksResult[]>;
86
64
  /**
87
65
  * Upsert device behavior
88
66
  * @param {UpsertDeviceBehaviorParams} params containing information to upsert a device behavior
@@ -4,8 +4,6 @@ import { createDeviceBehaviorTask } from './createDeviceBehaviorTask';
4
4
  import { getDeviceBehaviors } from './getDeviceBehaviors';
5
5
  import { getDeviceBehaviorsByIds } from './getDeviceBehaviorsByIds';
6
6
  import { getDeviceBehaviorTasks } from './getDeviceBehaviorTasks';
7
- import { getDevicesLastBehaviorTask } from './getDevicesLastBehaviorTask';
8
- import { getLatestDeviceBehaviorTasks } from './getLatestDeviceBehaviorTasks';
9
7
  import { updateDeviceBehaviorTask } from './updateDeviceBehaviorTask';
10
8
  import { upsertDeviceBehavior } from './upsertDeviceBehavior';
11
9
  export class DeviceBehaviorsRepository extends BaseRepository {
@@ -60,25 +58,6 @@ export class DeviceBehaviorsRepository extends BaseRepository {
60
58
  this.logger.trace(result, 'DeviceBehaviorsRepository::getDeviceBehaviorTasks result');
61
59
  return result;
62
60
  }
63
- /**
64
- * Get the devices last behavior task
65
- * @param {GettDevicesLastBehaviorTaskParams} params containing information to get device behavior tasks
66
- * Filters (One of taskId or imeiList is required):
67
- * - filters.imeiList: The imei list
68
- * - filters.status: The status, optional
69
- * - filters.deviceBehaviorIdList: The device behavior id list, optional
70
- * Paging options:
71
- * - pagingOptions.offset: The offset, optional. Default is 0
72
- * - pagingOptions.limit: The limit, optional. Default is 100
73
- * @returns The device behavior tasks list
74
- */
75
- async getDevicesLastBehaviorTask(params) {
76
- this.logger.trace(params, 'DeviceBehaviorsRepository::getDevicesLastBehaviorTask started with params');
77
- const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
78
- const result = await getDevicesLastBehaviorTask(novaDataSource, params, this.logger);
79
- this.logger.trace(result, 'DeviceBehaviorsRepository::getDevicesLastBehaviorTask result');
80
- return result;
81
- }
82
61
  /**
83
62
  * Create device behavior task
84
63
  * @param {CreateDeviceBehaviorTaskParams} params containing information to create a device behavior task
@@ -117,21 +96,6 @@ export class DeviceBehaviorsRepository extends BaseRepository {
117
96
  this.logger.trace({ result }, 'DeviceBehaviorsRepository::updateDeviceBehaviorTask result');
118
97
  return result;
119
98
  }
120
- /**
121
- * Get latest device behavior tasks
122
- * @param {GetLatestDeviceBehaviorTasksParams} params containing information to get latest device behavior tasks
123
- * - params.filters.clientId: The client id
124
- * - params.filters.type: The device behavior type
125
- * - params.filters.status: The task status
126
- * @returns The latest device behavior tasks list
127
- */
128
- async getLatestDeviceBehaviorTasks(params) {
129
- this.logger.trace(params, 'DeviceBehaviorsRepository::getLatestDeviceBehaviorTasks started with params');
130
- const novaDataSource = new NovaDataSource(this.novaDataSourceConfig, this.logger, this.replicaNovaDataSourceConfig);
131
- const result = await getLatestDeviceBehaviorTasks(novaDataSource, params, this.logger);
132
- this.logger.trace(result, 'DeviceBehaviorsRepository::getLatestDeviceBehaviorTasks result');
133
- return result;
134
- }
135
99
  /**
136
100
  * Upsert device behavior
137
101
  * @param {UpsertDeviceBehaviorParams} params containing information to upsert a device behavior
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/deviceBehaviors/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/repositories/deviceBehaviors/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spytecgps/nova-orm",
3
- "version": "1.0.109",
3
+ "version": "1.0.110",
4
4
  "description": "ORM with PlanetScale",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -1,5 +0,0 @@
1
- import { UserDeviceBehaviorTask } from '../../entities';
2
- import { NovaDataSource } from '../../novaDataSource';
3
- import { GettDevicesLastBehaviorTaskParams } from '../../types/deviceBehaviors';
4
- import { Logger } from '../../types/logger';
5
- export declare const getDevicesLastBehaviorTask: (novaDataSource: NovaDataSource, params: GettDevicesLastBehaviorTaskParams, logger: Logger) => Promise<UserDeviceBehaviorTask[]>;
@@ -1,48 +0,0 @@
1
- import { UserDeviceBehaviorTask } from '../../entities';
2
- export const getDevicesLastBehaviorTask = async (novaDataSource, params, logger) => {
3
- if (!params?.filters?.imeiList?.length) {
4
- logger.warn({ params }, 'DeviceBehaviorsRepository::getDevicesLastBehaviorTask - missing required parameters');
5
- return [];
6
- }
7
- // Force the query to run on master or slave
8
- const dbQueryRunner = novaDataSource.createQueryRunnerFromParams(params);
9
- return novaDataSource.safeQuery(async (dataSource, queryRunner) => {
10
- const deviceBehaviorsRepository = dataSource.getRepository(UserDeviceBehaviorTask);
11
- let queryBuilder = deviceBehaviorsRepository.createQueryBuilder('userDeviceBehaviorTask');
12
- if (queryRunner) {
13
- queryBuilder.setQueryRunner(queryRunner);
14
- }
15
- if (params.filters.imeiList?.length) {
16
- queryBuilder = queryBuilder.andWhere('userDeviceBehaviorTask.imei IN (:...imeiList)', {
17
- imeiList: params.filters.imeiList,
18
- });
19
- }
20
- if (params.filters.status) {
21
- queryBuilder = queryBuilder.andWhere('userDeviceBehaviorTask.status = :status', {
22
- status: params.filters.status,
23
- });
24
- }
25
- if (params.filters.deviceBehaviorIdList?.length) {
26
- queryBuilder = queryBuilder.andWhere('userDeviceBehaviorTask.deviceBehaviorId IN (:...deviceBehaviorIdList)', {
27
- deviceBehaviorIdList: params.filters.deviceBehaviorIdList,
28
- });
29
- }
30
- queryBuilder.andWhere(subQuery => {
31
- const subQueryAlias = subQuery
32
- .subQuery()
33
- .select('MAX(modifiedAt)')
34
- .from(UserDeviceBehaviorTask, 'subTask')
35
- .where('subTask.imei = userDeviceBehaviorTask.imei')
36
- .getQuery();
37
- return `userDeviceBehaviorTask.modifiedAt = (${subQueryAlias})`;
38
- });
39
- queryBuilder = queryBuilder.orderBy('userDeviceBehaviorTask.modifiedAt', 'DESC');
40
- if (params?.pagingOptions?.offset) {
41
- queryBuilder = queryBuilder.offset(params?.pagingOptions?.offset);
42
- }
43
- queryBuilder = queryBuilder.limit(params?.pagingOptions?.limit ?? 100);
44
- const result = await queryBuilder.getMany();
45
- return result;
46
- }, 'DeviceBehaviorsRepository::getDevicesLastBehaviorTask', dbQueryRunner);
47
- };
48
- //# sourceMappingURL=getDevicesLastBehaviorTask.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getDevicesLastBehaviorTask.js","sourceRoot":"","sources":["../../../src/repositories/deviceBehaviors/getDevicesLastBehaviorTask.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAKvD,MAAM,CAAC,MAAM,0BAA0B,GAAG,KAAK,EAC7C,cAA8B,EAC9B,MAAyC,EACzC,MAAc,EACqB,EAAE;IACrC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE;QACtC,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,qFAAqF,CACtF,CAAA;QACD,OAAO,EAAE,CAAA;KACV;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,cAAc,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAA;IAExE,OAAO,cAAc,CAAC,SAAS,CAC7B,KAAK,EACH,UAA0B,EAC1B,WAAyB,EACU,EAAE;QACrC,MAAM,yBAAyB,GAAG,UAAU,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAA;QAElF,IAAI,YAAY,GAAG,yBAAyB,CAAC,kBAAkB,CAAC,wBAAwB,CAAC,CAAA;QAEzF,IAAI,WAAW,EAAE;YACf,YAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAA;SACzC;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE;YACnC,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,+CAA+C,EAAE;gBACpF,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,QAAQ;aAClC,CAAC,CAAA;SACH;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE;YACzB,YAAY,GAAG,YAAY,CAAC,QAAQ,CAAC,yCAAyC,EAAE;gBAC9E,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,MAAM;aAC9B,CAAC,CAAA;SACH;QAED,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,EAAE;YAC/C,YAAY,GAAG,YAAY,CAAC,QAAQ,CAClC,uEAAuE,EACvE;gBACE,oBAAoB,EAAE,MAAM,CAAC,OAAO,CAAC,oBAAoB;aAC1D,CACF,CAAA;SACF;QAED,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAC/B,MAAM,aAAa,GAAG,QAAQ;iBAC3B,QAAQ,EAAE;iBACV,MAAM,CAAC,iBAAiB,CAAC;iBACzB,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC;iBACvC,KAAK,CAAC,4CAA4C,CAAC;iBACnD,QAAQ,EAAE,CAAA;YACb,OAAO,wCAAwC,aAAa,GAAG,CAAA;QACjE,CAAC,CAAC,CAAA;QAEF,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAA;QAEhF,IAAI,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE;YACjC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;SAClE;QAED,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,IAAI,GAAG,CAAC,CAAA;QAEtE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAA;QAE3C,OAAO,MAAM,CAAA;IACf,CAAC,EACD,uDAAuD,EACvD,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}
@@ -1,4 +0,0 @@
1
- import { NovaDataSource } from '../../novaDataSource';
2
- import { GetLatestDeviceBehaviorTasksParams, GetLatestDeviceBehaviorTasksResult } from '../../types/deviceBehaviors';
3
- import { Logger } from '../../types/logger';
4
- export declare const getLatestDeviceBehaviorTasks: (novaDataSource: NovaDataSource, params: GetLatestDeviceBehaviorTasksParams, logger: Logger) => Promise<GetLatestDeviceBehaviorTasksResult[]>;
@@ -1,49 +0,0 @@
1
- import { UserDeviceBehaviorTask } from '../../entities';
2
- import { binaryBufferToUuidString } from '../../utils/uuidHelpers';
3
- export const getLatestDeviceBehaviorTasks = async (novaDataSource, params, logger) => {
4
- if (!params?.filters?.clientId && !params?.filters?.type && !params?.filters?.status) {
5
- logger.warn({ params }, 'DeviceBehaviorsRepository::getLatestDeviceBehaviorTasks - missing required parameters');
6
- return [];
7
- }
8
- // Force the query to run on master or slave
9
- const dbQueryRunner = novaDataSource.createQueryRunnerFromParams(params);
10
- return novaDataSource.safeQuery(async (dataSource, queryRunner) => {
11
- const deviceBehaviorsRepository = dataSource.getRepository(UserDeviceBehaviorTask);
12
- const query = `SELECT sub.imei AS imei,
13
- sub.name AS name,
14
- sub.description AS description,
15
- sub.modifiedAt AS modifiedAt,
16
- sub.taskId AS taskId
17
- FROM (
18
- SELECT userDeviceBehaviorTask.imei AS imei,
19
- deviceBehavior.name as name,
20
- deviceBehavior.description as description,
21
- userDeviceBehaviorTask.modifiedAt AS modifiedAt,
22
- userDeviceBehaviorTask.id AS taskId,
23
- RANK() OVER (PARTITION BY userDeviceBehaviorTask.imei ORDER BY userDeviceBehaviorTask.modifiedAt DESC) AS rk
24
- FROM userDeviceBehaviorTask
25
- INNER JOIN deviceBehavior ON userDeviceBehaviorTask.deviceBehaviorId = deviceBehavior.id AND deviceBehavior.type = ?
26
- WHERE userDeviceBehaviorTask.clientId = ? AND userDeviceBehaviorTask.status = ?
27
- ) AS sub
28
- WHERE sub.rk = 1`;
29
- const result = queryRunner
30
- ? await queryRunner.query(query, [
31
- params.filters.type,
32
- params.filters.clientId,
33
- params.filters.status,
34
- ])
35
- : await deviceBehaviorsRepository.query(query, [
36
- params.filters.type,
37
- params.filters.clientId,
38
- params.filters.status,
39
- ]);
40
- return result.map(item => ({
41
- imei: item.imei,
42
- name: item.name,
43
- description: item.description,
44
- modifiedAt: item.modifiedAt,
45
- taskId: binaryBufferToUuidString(item.taskId),
46
- }));
47
- }, 'DeviceBehaviorsRepository::getLatestDeviceBehaviorTasks', dbQueryRunner);
48
- };
49
- //# sourceMappingURL=getLatestDeviceBehaviorTasks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getLatestDeviceBehaviorTasks.js","sourceRoot":"","sources":["../../../src/repositories/deviceBehaviors/getLatestDeviceBehaviorTasks.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAOvD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAElE,MAAM,CAAC,MAAM,4BAA4B,GAAG,KAAK,EAC/C,cAA8B,EAC9B,MAA0C,EAC1C,MAAc,EACiC,EAAE;IACjD,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE;QACpF,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,EACV,uFAAuF,CACxF,CAAA;QACD,OAAO,EAAE,CAAA;KACV;IAED,4CAA4C;IAC5C,MAAM,aAAa,GAAG,cAAc,CAAC,2BAA2B,CAAC,MAAM,CAAC,CAAA;IAExE,OAAO,cAAc,CAAC,SAAS,CAC7B,KAAK,EACH,UAA0B,EAC1B,WAAyB,EACsB,EAAE;QACjD,MAAM,yBAAyB,GAAG,UAAU,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAA;QAElF,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;qCAgBiB,CAAA;QAE/B,MAAM,MAAM,GAAG,WAAW;YACxB,CAAC,CAAC,MAAM,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC7B,MAAM,CAAC,OAAO,CAAC,IAAI;gBACnB,MAAM,CAAC,OAAO,CAAC,QAAQ;gBACvB,MAAM,CAAC,OAAO,CAAC,MAAM;aACtB,CAAC;YACJ,CAAC,CAAC,MAAM,yBAAyB,CAAC,KAAK,CAAC,KAAK,EAAE;gBAC3C,MAAM,CAAC,OAAO,CAAC,IAAI;gBACnB,MAAM,CAAC,OAAO,CAAC,QAAQ;gBACvB,MAAM,CAAC,OAAO,CAAC,MAAM;aACtB,CAAC,CAAA;QAEN,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,MAAM,EAAE,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC;SAC9C,CAAC,CAAC,CAAA;IACL,CAAC,EACD,yDAAyD,EACzD,aAAa,CACd,CAAA;AACH,CAAC,CAAA"}