@spytecgps/nova-orm 0.0.117 → 0.0.119

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.
@@ -13,6 +13,7 @@ import { FirmwaresRepository } from './firmwares';
13
13
  import { NotificationRecipientsRepository } from './notificationRecipients';
14
14
  import { PositionRepository } from './positions';
15
15
  import { SecurityRepository } from './security';
16
+ import { TripRepository } from './trips';
16
17
  import { UserActivationsRepository } from './userActivations';
17
18
  import { UserAppFeedbackRepository } from './userAppFeedback';
18
19
  import { UserAppIncidentsRepository } from './userAppIncidents';
@@ -22,4 +23,4 @@ import { UserInvitationsRepository } from './userInvitations';
22
23
  import { UserRatingRequestsRepository } from './userRatingRequests';
23
24
  import { UserRegistrationAttemptsRepository } from './userRegistrationAttempts';
24
25
  import { UsersRepository } from './users';
25
- export { AcumaticaRepository, AlertRepository, AlertTypesRepository, AssetCategoriesRepository, BillingRepository, BlacklistRepository, BoundariesRepository, ClientsRepository, CountriesRepository, DeviceBehaviorsRepository, DevicesRepository, FirmwaresRepository, NotificationRecipientsRepository, PositionRepository, SecurityRepository, UserActivationsRepository, UserAppFeedbackRepository, UserAppIncidentsRepository, UserConfigurationsRepository, UserDataDeletionRequestsRepository, UserInvitationsRepository, UserRatingRequestsRepository, UserRegistrationAttemptsRepository, UsersRepository, };
26
+ export { AcumaticaRepository, AlertRepository, AlertTypesRepository, AssetCategoriesRepository, BillingRepository, BlacklistRepository, BoundariesRepository, ClientsRepository, CountriesRepository, DeviceBehaviorsRepository, DevicesRepository, FirmwaresRepository, NotificationRecipientsRepository, PositionRepository, SecurityRepository, TripRepository, UserActivationsRepository, UserAppFeedbackRepository, UserAppIncidentsRepository, UserConfigurationsRepository, UserDataDeletionRequestsRepository, UserInvitationsRepository, UserRatingRequestsRepository, UserRegistrationAttemptsRepository, UsersRepository, };
@@ -0,0 +1,5 @@
1
+ import { Trip } from '../../entities';
2
+ import { NovaDataSource } from '../../novaDataSource';
3
+ import { Logger } from '../../types/logger';
4
+ import { CreateTripParams } from '../../types/trip';
5
+ export declare const createTrip: (novaDataSource: NovaDataSource, params: CreateTripParams, logger: Logger) => Promise<Trip>;
@@ -0,0 +1,4 @@
1
+ import { Trip } from '../../entities';
2
+ import { NovaDataSource } from '../../novaDataSource';
3
+ import { Logger } from '../../types/logger';
4
+ export declare const getTripById: (novaDataSource: NovaDataSource, id: string, logger: Logger) => Promise<Trip>;
@@ -0,0 +1,23 @@
1
+ import { Trip } from '../../entities';
2
+ import { CreateTripParams, UpdateTripEndValuesParams } from '../../types/trip';
3
+ import { BaseRepository } from '../baseRepository';
4
+ export declare class TripRepository extends BaseRepository {
5
+ /**
6
+ * Create a trip
7
+ * @param {CreateTripParams} params containing information to create a trip
8
+ * @returns {Trip} the created trip
9
+ */
10
+ createTrip(params: CreateTripParams): Promise<Trip>;
11
+ /**
12
+ * Update the end's attributes in a trip
13
+ * @param {UpdateTripEndValuesParams} params containing information to update the trip
14
+ * @returns {boolean} true if the update was successfull, false otherwise
15
+ */
16
+ updateTripEndValues(params: UpdateTripEndValuesParams): Promise<boolean>;
17
+ /**
18
+ * Get a trip by id
19
+ * @param {CreateTripParams} id the trip's id
20
+ * @returns {Trip} the Trip associated to the passed id or null
21
+ */
22
+ getTripById(id: string): Promise<Trip>;
23
+ }
@@ -0,0 +1,4 @@
1
+ import { NovaDataSource } from '../../novaDataSource';
2
+ import { Logger } from '../../types/logger';
3
+ import { UpdateTripEndValuesParams } from '../../types/trip';
4
+ export declare const updateTripEndValues: (novaDataSource: NovaDataSource, params: UpdateTripEndValuesParams, logger: Logger) => Promise<boolean>;
@@ -45,3 +45,14 @@ export declare enum BlacklistType {
45
45
  Imei = 5,
46
46
  ClientId = 6
47
47
  }
48
+ export declare enum TripType {
49
+ Trip = 1,
50
+ Stop = 2
51
+ }
52
+ export declare enum TripCompletionStatus {
53
+ Current = 1,
54
+ Completed = 2,
55
+ Deleted = 3,
56
+ TempCurrent = 10,
57
+ TempCompleted = 20
58
+ }
@@ -13,6 +13,7 @@ import * as Logger from './logger';
13
13
  import * as NotificationRecipients from './notificationRecipients';
14
14
  import * as Positions from './position';
15
15
  import * as Security from './security';
16
+ import * as Trips from './trip';
16
17
  import * as Users from './user';
17
18
  import * as UserActivations from './userActivations';
18
19
  import * as UserAppFeedback from './userAppFeedback';
@@ -22,4 +23,4 @@ import * as UserDataDeletionRequests from './userDataDeletionRequests';
22
23
  import * as UserInvitations from './userInvitations';
23
24
  import * as UserRatingRequests from './userRatingRequests';
24
25
  import * as UserRegistrationAttempts from './userRegistrationAttempts';
25
- export { Acumatica, Alerts, AlertTypes, Billing, Blacklist, Boundaries, Clients, Countries, DeviceBehaviors, Devices, Firmwares, Logger, NotificationRecipients, Positions, Security, Users, UserActivations, UserAppFeedback, UserAppIncidents, UserConfigurations, UserDataDeletionRequests, UserInvitations, UserRatingRequests, UserRegistrationAttempts, };
26
+ export { Acumatica, Alerts, AlertTypes, Billing, Blacklist, Boundaries, Clients, Countries, DeviceBehaviors, Devices, Firmwares, Logger, NotificationRecipients, Positions, Security, Trips, Users, UserActivations, UserAppFeedback, UserAppIncidents, UserConfigurations, UserDataDeletionRequests, UserInvitations, UserRatingRequests, UserRegistrationAttempts, };
@@ -0,0 +1,39 @@
1
+ import { TripCompletionStatus, TripType } from './enums';
2
+ export declare const requiredCreateTripParamsAttributes: string[];
3
+ export interface CreateTripParams {
4
+ id: string;
5
+ deviceId: number;
6
+ imei: string;
7
+ startDate: Date;
8
+ endDate?: Date;
9
+ distance: number;
10
+ startLat: number;
11
+ startLon: number;
12
+ endLat?: number;
13
+ endLon?: number;
14
+ createdAt?: Date;
15
+ startAddress: string;
16
+ endAddress?: string;
17
+ positionStart: string;
18
+ positionEnd?: string;
19
+ tripCompletionStatusId: TripCompletionStatus;
20
+ clientId: number;
21
+ duration: number;
22
+ tripType: TripType;
23
+ startMessageId: string;
24
+ endMessageId?: string;
25
+ }
26
+ export declare const requiredUpdateTripEndValuesParamsAttributes: string[];
27
+ export interface UpdateTripEndValuesParams {
28
+ id: string;
29
+ endDate: Date;
30
+ endLat: number;
31
+ endLon: number;
32
+ endAddress: string;
33
+ positionEnd: string;
34
+ endMessageId: string;
35
+ distance: number;
36
+ duration: number;
37
+ tripType: TripType;
38
+ tripCompletionStatusId: TripCompletionStatus;
39
+ }
@@ -0,0 +1 @@
1
+ export declare const anyAttributeIsNull: <T>(params: T, attributes: string[]) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spytecgps/nova-orm",
3
- "version": "0.0.117",
3
+ "version": "0.0.119",
4
4
  "description": "ORM with PlanetScale",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",