@tmscloud/tbt-knex 0.0.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.
Files changed (58) hide show
  1. package/dist/KnexConnection.d.ts +17 -0
  2. package/dist/KnexConnection.js +81 -0
  3. package/dist/KnexConnection.js.map +1 -0
  4. package/dist/d.types.d.ts +16 -0
  5. package/dist/d.types.js +3 -0
  6. package/dist/d.types.js.map +1 -0
  7. package/dist/dao/driver-tracking/driver-tracking.dao.d.ts +42 -0
  8. package/dist/dao/driver-tracking/driver-tracking.dao.js +329 -0
  9. package/dist/dao/driver-tracking/driver-tracking.dao.js.map +1 -0
  10. package/dist/dao/gps-location/gps-location.dao.d.ts +76 -0
  11. package/dist/dao/gps-location/gps-location.dao.js +364 -0
  12. package/dist/dao/gps-location/gps-location.dao.js.map +1 -0
  13. package/dist/dao/role/role.dao.d.ts +38 -0
  14. package/dist/dao/role/role.dao.js +146 -0
  15. package/dist/dao/role/role.dao.js.map +1 -0
  16. package/dist/dao/route/route.dao.d.ts +38 -0
  17. package/dist/dao/route/route.dao.js +167 -0
  18. package/dist/dao/route/route.dao.js.map +1 -0
  19. package/dist/dao/route-assignment/route-assignment.dao.d.ts +58 -0
  20. package/dist/dao/route-assignment/route-assignment.dao.js +330 -0
  21. package/dist/dao/route-assignment/route-assignment.dao.js.map +1 -0
  22. package/dist/dao/sundays-package-version/sundays-package-version.dao.d.ts +11 -0
  23. package/dist/dao/sundays-package-version/sundays-package-version.dao.js +88 -0
  24. package/dist/dao/sundays-package-version/sundays-package-version.dao.js.map +1 -0
  25. package/dist/dao/trip/trip.dao.d.ts +102 -0
  26. package/dist/dao/trip/trip.dao.js +502 -0
  27. package/dist/dao/trip/trip.dao.js.map +1 -0
  28. package/dist/dao/user/user.dao.d.ts +74 -0
  29. package/dist/dao/user/user.dao.js +287 -0
  30. package/dist/dao/user/user.dao.js.map +1 -0
  31. package/dist/index.d.ts +19 -0
  32. package/dist/index.js +26 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/interfaces/driver-tracking/driver-tracking.interfaces.d.ts +102 -0
  35. package/dist/interfaces/driver-tracking/driver-tracking.interfaces.js +3 -0
  36. package/dist/interfaces/driver-tracking/driver-tracking.interfaces.js.map +1 -0
  37. package/dist/interfaces/gps-location/gps-location.interfaces.d.ts +30 -0
  38. package/dist/interfaces/gps-location/gps-location.interfaces.js +3 -0
  39. package/dist/interfaces/gps-location/gps-location.interfaces.js.map +1 -0
  40. package/dist/interfaces/role/role.interfaces.d.ts +8 -0
  41. package/dist/interfaces/role/role.interfaces.js +3 -0
  42. package/dist/interfaces/role/role.interfaces.js.map +1 -0
  43. package/dist/interfaces/route/route.interfaces.d.ts +23 -0
  44. package/dist/interfaces/route/route.interfaces.js +3 -0
  45. package/dist/interfaces/route/route.interfaces.js.map +1 -0
  46. package/dist/interfaces/route-assignment/route-assignment.interfaces.d.ts +18 -0
  47. package/dist/interfaces/route-assignment/route-assignment.interfaces.js +3 -0
  48. package/dist/interfaces/route-assignment/route-assignment.interfaces.js.map +1 -0
  49. package/dist/interfaces/sundays-package-version/sundays-package-version.interfaces.d.ts +6 -0
  50. package/dist/interfaces/sundays-package-version/sundays-package-version.interfaces.js +3 -0
  51. package/dist/interfaces/sundays-package-version/sundays-package-version.interfaces.js.map +1 -0
  52. package/dist/interfaces/trip/trip.interfaces.d.ts +46 -0
  53. package/dist/interfaces/trip/trip.interfaces.js +3 -0
  54. package/dist/interfaces/trip/trip.interfaces.js.map +1 -0
  55. package/dist/interfaces/user/user.interfaces.d.ts +25 -0
  56. package/dist/interfaces/user/user.interfaces.js +3 -0
  57. package/dist/interfaces/user/user.interfaces.js.map +1 -0
  58. package/package.json +52 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trip.dao.js","sourceRoot":"","sources":["../../../src/dao/trip/trip.dao.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ import { IUser, IUserSafe, IRefreshToken } from "../../interfaces/user/user.interfaces";
2
+ import { IBaseDAO, IDataPaginator } from "../../d.types";
3
+ export declare class UserDAO implements IBaseDAO<IUser> {
4
+ private _knex?;
5
+ private get knex();
6
+ /**
7
+ * Remove password_hash from user object
8
+ */
9
+ private sanitizeUser;
10
+ /**
11
+ * Parse role JSON from database
12
+ */
13
+ private parseUserJson;
14
+ /**
15
+ * Get all users with pagination and role information
16
+ */
17
+ getAll(page?: number, limit?: number): Promise<IDataPaginator<IUserSafe>>;
18
+ /**
19
+ * Get user by ID (includes password_hash for authentication)
20
+ */
21
+ getById(id: number): Promise<IUser | null>;
22
+ /**
23
+ * Get user by UUID (safe - no password)
24
+ */
25
+ getByUuid(uuid: string): Promise<IUserSafe | null>;
26
+ /**
27
+ * Get user by email (includes password_hash for authentication)
28
+ */
29
+ getByEmail(email: string): Promise<IUser | null>;
30
+ /**
31
+ * Get user by username (includes password_hash for authentication)
32
+ */
33
+ getByUsername(username: string): Promise<IUser | null>;
34
+ /**
35
+ * Create a new user
36
+ */
37
+ create(data: IUser): Promise<IUserSafe>;
38
+ /**
39
+ * Update a user by ID
40
+ */
41
+ update(id: number, data: Partial<IUser>): Promise<IUserSafe | null>;
42
+ /**
43
+ * Update last login timestamp
44
+ */
45
+ updateLastLogin(id: number): Promise<void>;
46
+ /**
47
+ * Delete a user by ID (soft delete)
48
+ */
49
+ delete(id: number): Promise<boolean>;
50
+ /**
51
+ * Hard delete a user by ID
52
+ */
53
+ hardDelete(id: number): Promise<boolean>;
54
+ /**
55
+ * Create a refresh token
56
+ */
57
+ createRefreshToken(data: IRefreshToken): Promise<IRefreshToken>;
58
+ /**
59
+ * Get refresh token by token string
60
+ */
61
+ getRefreshToken(token: string): Promise<IRefreshToken | null>;
62
+ /**
63
+ * Delete refresh token
64
+ */
65
+ deleteRefreshToken(token: string): Promise<boolean>;
66
+ /**
67
+ * Delete all refresh tokens for a user
68
+ */
69
+ deleteAllRefreshTokens(userId: number): Promise<boolean>;
70
+ /**
71
+ * Clean up expired refresh tokens
72
+ */
73
+ cleanupExpiredTokens(): Promise<number>;
74
+ }
@@ -0,0 +1,287 @@
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 __rest = (this && this.__rest) || function (s, e) {
12
+ var t = {};
13
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
14
+ t[p] = s[p];
15
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
16
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
17
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
18
+ t[p[i]] = s[p[i]];
19
+ }
20
+ return t;
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.UserDAO = void 0;
27
+ const KnexConnection_1 = __importDefault(require("../../KnexConnection"));
28
+ class UserDAO {
29
+ get knex() {
30
+ if (!this._knex) {
31
+ this._knex = KnexConnection_1.default.getConnection();
32
+ }
33
+ return this._knex;
34
+ }
35
+ /**
36
+ * Remove password_hash from user object
37
+ */
38
+ sanitizeUser(user) {
39
+ const { password_hash } = user, safeUser = __rest(user, ["password_hash"]);
40
+ return safeUser;
41
+ }
42
+ /**
43
+ * Parse role JSON from database
44
+ */
45
+ parseUserJson(user) {
46
+ var _a;
47
+ if (user.role && typeof user.role === "string") {
48
+ user.role = JSON.parse(user.role);
49
+ }
50
+ if (((_a = user.role) === null || _a === void 0 ? void 0 : _a.permissions) && typeof user.role.permissions === "string") {
51
+ user.role.permissions = JSON.parse(user.role.permissions);
52
+ }
53
+ return user;
54
+ }
55
+ /**
56
+ * Get all users with pagination and role information
57
+ */
58
+ getAll() {
59
+ return __awaiter(this, arguments, void 0, function* (page = 1, limit = 10) {
60
+ const offset = (page - 1) * limit;
61
+ // Get paginated data with role joined
62
+ const rawData = yield this.knex("users as u")
63
+ .leftJoin("roles as r", "u.role_id", "r.id")
64
+ .select("u.id", "u.uuid", "u.email", "u.username", "u.first_name", "u.last_name", "u.role_id", "u.is_active", "u.last_login_at", "u.created_at", "u.updated_at", this.knex.raw("to_jsonb(r.*) as role"))
65
+ .where("u.is_active", true)
66
+ .limit(limit)
67
+ .offset(offset)
68
+ .orderBy("u.created_at", "desc");
69
+ // Parse JSON fields
70
+ const data = rawData.map((user) => this.parseUserJson(user));
71
+ // Get total count
72
+ const totalCountResult = yield this.knex("users")
73
+ .where("is_active", true)
74
+ .count("* as count")
75
+ .first();
76
+ const totalCount = Number((totalCountResult === null || totalCountResult === void 0 ? void 0 : totalCountResult.count) || 0);
77
+ const count = data.length;
78
+ const totalPages = Math.ceil(totalCount / limit);
79
+ return {
80
+ success: true,
81
+ data,
82
+ page,
83
+ limit,
84
+ count,
85
+ totalCount,
86
+ totalPages,
87
+ };
88
+ });
89
+ }
90
+ /**
91
+ * Get user by ID (includes password_hash for authentication)
92
+ */
93
+ getById(id) {
94
+ return __awaiter(this, void 0, void 0, function* () {
95
+ const result = yield this.knex("users as u")
96
+ .leftJoin("roles as r", "u.role_id", "r.id")
97
+ .select("u.*", this.knex.raw("to_jsonb(r.*) as role"))
98
+ .where("u.id", id)
99
+ .first();
100
+ return result ? this.parseUserJson(result) : null;
101
+ });
102
+ }
103
+ /**
104
+ * Get user by UUID (safe - no password)
105
+ */
106
+ getByUuid(uuid) {
107
+ return __awaiter(this, void 0, void 0, function* () {
108
+ const result = yield this.knex("users as u")
109
+ .leftJoin("roles as r", "u.role_id", "r.id")
110
+ .select("u.id", "u.uuid", "u.email", "u.username", "u.first_name", "u.last_name", "u.role_id", "u.is_active", "u.last_login_at", "u.created_at", "u.updated_at", this.knex.raw("to_jsonb(r.*) as role"))
111
+ .where("u.uuid", uuid)
112
+ .first();
113
+ return result ? this.parseUserJson(result) : null;
114
+ });
115
+ }
116
+ /**
117
+ * Get user by email (includes password_hash for authentication)
118
+ */
119
+ getByEmail(email) {
120
+ return __awaiter(this, void 0, void 0, function* () {
121
+ const result = yield this.knex("users as u")
122
+ .leftJoin("roles as r", "u.role_id", "r.id")
123
+ .select("u.*", this.knex.raw("to_jsonb(r.*) as role"))
124
+ .where("u.email", email)
125
+ .first();
126
+ return result ? this.parseUserJson(result) : null;
127
+ });
128
+ }
129
+ /**
130
+ * Get user by username (includes password_hash for authentication)
131
+ */
132
+ getByUsername(username) {
133
+ return __awaiter(this, void 0, void 0, function* () {
134
+ const result = yield this.knex("users as u")
135
+ .leftJoin("roles as r", "u.role_id", "r.id")
136
+ .select("u.*", this.knex.raw("to_jsonb(r.*) as role"))
137
+ .where("u.username", username)
138
+ .first();
139
+ return result ? this.parseUserJson(result) : null;
140
+ });
141
+ }
142
+ /**
143
+ * Create a new user
144
+ */
145
+ create(data) {
146
+ return __awaiter(this, void 0, void 0, function* () {
147
+ const [result] = yield this.knex("users")
148
+ .insert({
149
+ email: data.email,
150
+ username: data.username,
151
+ password_hash: data.password_hash,
152
+ first_name: data.first_name,
153
+ last_name: data.last_name,
154
+ role_id: data.role_id,
155
+ is_active: data.is_active !== undefined ? data.is_active : true,
156
+ })
157
+ .returning("*");
158
+ return this.sanitizeUser(result);
159
+ });
160
+ }
161
+ /**
162
+ * Update a user by ID
163
+ */
164
+ update(id, data) {
165
+ return __awaiter(this, void 0, void 0, function* () {
166
+ const updateData = {};
167
+ if (data.email !== undefined)
168
+ updateData.email = data.email;
169
+ if (data.username !== undefined)
170
+ updateData.username = data.username;
171
+ if (data.password_hash !== undefined)
172
+ updateData.password_hash = data.password_hash;
173
+ if (data.first_name !== undefined)
174
+ updateData.first_name = data.first_name;
175
+ if (data.last_name !== undefined)
176
+ updateData.last_name = data.last_name;
177
+ if (data.role_id !== undefined)
178
+ updateData.role_id = data.role_id;
179
+ if (data.is_active !== undefined)
180
+ updateData.is_active = data.is_active;
181
+ if (data.last_login_at !== undefined)
182
+ updateData.last_login_at = data.last_login_at;
183
+ updateData.updated_at = new Date();
184
+ const [result] = yield this.knex("users")
185
+ .where("id", id)
186
+ .update(updateData)
187
+ .returning("*");
188
+ return result ? this.sanitizeUser(result) : null;
189
+ });
190
+ }
191
+ /**
192
+ * Update last login timestamp
193
+ */
194
+ updateLastLogin(id) {
195
+ return __awaiter(this, void 0, void 0, function* () {
196
+ yield this.knex("users").where("id", id).update({
197
+ last_login_at: new Date(),
198
+ updated_at: new Date(),
199
+ });
200
+ });
201
+ }
202
+ /**
203
+ * Delete a user by ID (soft delete)
204
+ */
205
+ delete(id) {
206
+ return __awaiter(this, void 0, void 0, function* () {
207
+ const result = yield this.knex("users").where("id", id).update({
208
+ is_active: false,
209
+ updated_at: new Date(),
210
+ });
211
+ return result > 0;
212
+ });
213
+ }
214
+ /**
215
+ * Hard delete a user by ID
216
+ */
217
+ hardDelete(id) {
218
+ return __awaiter(this, void 0, void 0, function* () {
219
+ const result = yield this.knex("users").where("id", id).delete();
220
+ return result > 0;
221
+ });
222
+ }
223
+ // ===== Refresh Token Methods =====
224
+ /**
225
+ * Create a refresh token
226
+ */
227
+ createRefreshToken(data) {
228
+ return __awaiter(this, void 0, void 0, function* () {
229
+ const [result] = yield this.knex("refresh_tokens")
230
+ .insert({
231
+ user_id: data.user_id,
232
+ token: data.token,
233
+ expires_at: data.expires_at,
234
+ })
235
+ .returning("*");
236
+ return result;
237
+ });
238
+ }
239
+ /**
240
+ * Get refresh token by token string
241
+ */
242
+ getRefreshToken(token) {
243
+ return __awaiter(this, void 0, void 0, function* () {
244
+ const result = yield this.knex("refresh_tokens")
245
+ .select("*")
246
+ .where("token", token)
247
+ .where("expires_at", ">", new Date())
248
+ .first();
249
+ return result || null;
250
+ });
251
+ }
252
+ /**
253
+ * Delete refresh token
254
+ */
255
+ deleteRefreshToken(token) {
256
+ return __awaiter(this, void 0, void 0, function* () {
257
+ const result = yield this.knex("refresh_tokens")
258
+ .where("token", token)
259
+ .delete();
260
+ return result > 0;
261
+ });
262
+ }
263
+ /**
264
+ * Delete all refresh tokens for a user
265
+ */
266
+ deleteAllRefreshTokens(userId) {
267
+ return __awaiter(this, void 0, void 0, function* () {
268
+ const result = yield this.knex("refresh_tokens")
269
+ .where("user_id", userId)
270
+ .delete();
271
+ return result > 0;
272
+ });
273
+ }
274
+ /**
275
+ * Clean up expired refresh tokens
276
+ */
277
+ cleanupExpiredTokens() {
278
+ return __awaiter(this, void 0, void 0, function* () {
279
+ const result = yield this.knex("refresh_tokens")
280
+ .where("expires_at", "<", new Date())
281
+ .delete();
282
+ return result;
283
+ });
284
+ }
285
+ }
286
+ exports.UserDAO = UserDAO;
287
+ //# sourceMappingURL=user.dao.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.dao.js","sourceRoot":"","sources":["../../../src/dao/user/user.dao.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ export { SundaysPackageVersionDAO } from "./dao/sundays-package-version/sundays-package-version.dao";
2
+ export { RouteDAO } from "./dao/route/route.dao";
3
+ export { RoleDAO } from "./dao/role/role.dao";
4
+ export { UserDAO } from "./dao/user/user.dao";
5
+ export { RouteAssignmentDAO } from "./dao/route-assignment/route-assignment.dao";
6
+ export { TripDAO } from "./dao/trip/trip.dao";
7
+ export { GPSLocationDAO } from "./dao/gps-location/gps-location.dao";
8
+ export { DriverTrackingDAO } from "./dao/driver-tracking/driver-tracking.dao";
9
+ export { IDataPaginator } from "./d.types";
10
+ export { ISundaysPackageVersion } from "./interfaces/sundays-package-version/sundays-package-version.interfaces";
11
+ export { IRoute, IRouteInstruction } from "./interfaces/route/route.interfaces";
12
+ export { IRole } from "./interfaces/role/role.interfaces";
13
+ export { IUser, IUserSafe, IRefreshToken, } from "./interfaces/user/user.interfaces";
14
+ export { IRouteAssignment } from "./interfaces/route-assignment/route-assignment.interfaces";
15
+ export { ITrip, ITripStop, ITripWithStops, } from "./interfaces/trip/trip.interfaces";
16
+ export { IGPSLocation, IGPSLocationWithDistance, ITripLocationSummary, } from "./interfaces/gps-location/gps-location.interfaces";
17
+ export { IDriverTracking, IDriverTrackingCreate, IDriverTrackingBatchCreate, ITrackingPoint, ITrackingMetadata, IActiveDriver, ITrackingSession, ITrackingFilters, } from "./interfaces/driver-tracking/driver-tracking.interfaces";
18
+ import KnexManager from "./KnexConnection";
19
+ export { KnexManager };
package/dist/index.js ADDED
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.KnexManager = exports.DriverTrackingDAO = exports.GPSLocationDAO = exports.TripDAO = exports.RouteAssignmentDAO = exports.UserDAO = exports.RoleDAO = exports.RouteDAO = exports.SundaysPackageVersionDAO = void 0;
7
+ // DAOs
8
+ var sundays_package_version_dao_1 = require("./dao/sundays-package-version/sundays-package-version.dao");
9
+ Object.defineProperty(exports, "SundaysPackageVersionDAO", { enumerable: true, get: function () { return sundays_package_version_dao_1.SundaysPackageVersionDAO; } });
10
+ var route_dao_1 = require("./dao/route/route.dao");
11
+ Object.defineProperty(exports, "RouteDAO", { enumerable: true, get: function () { return route_dao_1.RouteDAO; } });
12
+ var role_dao_1 = require("./dao/role/role.dao");
13
+ Object.defineProperty(exports, "RoleDAO", { enumerable: true, get: function () { return role_dao_1.RoleDAO; } });
14
+ var user_dao_1 = require("./dao/user/user.dao");
15
+ Object.defineProperty(exports, "UserDAO", { enumerable: true, get: function () { return user_dao_1.UserDAO; } });
16
+ var route_assignment_dao_1 = require("./dao/route-assignment/route-assignment.dao");
17
+ Object.defineProperty(exports, "RouteAssignmentDAO", { enumerable: true, get: function () { return route_assignment_dao_1.RouteAssignmentDAO; } });
18
+ var trip_dao_1 = require("./dao/trip/trip.dao");
19
+ Object.defineProperty(exports, "TripDAO", { enumerable: true, get: function () { return trip_dao_1.TripDAO; } });
20
+ var gps_location_dao_1 = require("./dao/gps-location/gps-location.dao");
21
+ Object.defineProperty(exports, "GPSLocationDAO", { enumerable: true, get: function () { return gps_location_dao_1.GPSLocationDAO; } });
22
+ var driver_tracking_dao_1 = require("./dao/driver-tracking/driver-tracking.dao");
23
+ Object.defineProperty(exports, "DriverTrackingDAO", { enumerable: true, get: function () { return driver_tracking_dao_1.DriverTrackingDAO; } });
24
+ const KnexConnection_1 = __importDefault(require("./KnexConnection"));
25
+ exports.KnexManager = KnexConnection_1.default;
26
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO;AACP,yGAAqG;AAA5F,uIAAA,wBAAwB,OAAA;AACjC,mDAAiD;AAAxC,qGAAA,QAAQ,OAAA;AACjB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,oFAAiF;AAAxE,0HAAA,kBAAkB,OAAA;AAC3B,gDAA8C;AAArC,mGAAA,OAAO,OAAA;AAChB,wEAAqE;AAA5D,kHAAA,cAAc,OAAA;AACvB,iFAA8E;AAArE,wHAAA,iBAAiB,OAAA;AAkC1B,sEAA2C;AAClC,sBADF,wBAAW,CACE"}
@@ -0,0 +1,102 @@
1
+ import { IUserSafe } from "../user/user.interfaces";
2
+ import { IRouteAssignment } from "../route-assignment/route-assignment.interfaces";
3
+ import { IRoute } from "../route/route.interfaces";
4
+ export interface IDriverTracking {
5
+ id?: number;
6
+ uuid?: string;
7
+ user_id: number;
8
+ assignment_id?: number | null;
9
+ route_id?: number | null;
10
+ session_id: string;
11
+ latitude: number;
12
+ longitude: number;
13
+ accuracy?: number | null;
14
+ altitude?: number | null;
15
+ speed?: number | null;
16
+ heading?: number | null;
17
+ recorded_at: Date | string;
18
+ is_navigating: boolean;
19
+ metadata?: ITrackingMetadata | null;
20
+ created_at?: Date | string;
21
+ updated_at?: Date | string;
22
+ user?: IUserSafe;
23
+ assignment?: IRouteAssignment;
24
+ route?: IRoute;
25
+ }
26
+ export interface ITrackingMetadata {
27
+ battery_level?: number;
28
+ battery_charging?: boolean;
29
+ network_type?: string;
30
+ app_version?: string;
31
+ device_model?: string;
32
+ os_version?: string;
33
+ }
34
+ export interface IDriverTrackingCreate {
35
+ user_id: number;
36
+ assignment_id?: number | null;
37
+ route_id?: number | null;
38
+ session_id: string;
39
+ latitude: number;
40
+ longitude: number;
41
+ accuracy?: number | null;
42
+ altitude?: number | null;
43
+ speed?: number | null;
44
+ heading?: number | null;
45
+ recorded_at: Date | string;
46
+ is_navigating?: boolean;
47
+ metadata?: ITrackingMetadata | null;
48
+ }
49
+ export interface IDriverTrackingBatchCreate {
50
+ session_id: string;
51
+ assignment_id?: number | null;
52
+ route_id?: number | null;
53
+ points: ITrackingPoint[];
54
+ }
55
+ export interface ITrackingPoint {
56
+ latitude: number;
57
+ longitude: number;
58
+ accuracy?: number | null;
59
+ altitude?: number | null;
60
+ speed?: number | null;
61
+ heading?: number | null;
62
+ recorded_at: Date | string;
63
+ metadata?: ITrackingMetadata | null;
64
+ }
65
+ export interface IActiveDriver {
66
+ user_id: number;
67
+ user?: IUserSafe;
68
+ session_id: string;
69
+ assignment_id?: number | null;
70
+ assignment?: IRouteAssignment;
71
+ current_location: {
72
+ latitude: number;
73
+ longitude: number;
74
+ heading?: number | null;
75
+ speed?: number | null;
76
+ recorded_at: Date | string;
77
+ };
78
+ is_navigating: boolean;
79
+ }
80
+ export interface ITrackingSession {
81
+ session_id: string;
82
+ user_id: number;
83
+ user?: IUserSafe;
84
+ assignment_id?: number | null;
85
+ assignment?: IRouteAssignment;
86
+ route_id?: number | null;
87
+ route?: IRoute;
88
+ started_at: Date | string;
89
+ ended_at?: Date | string;
90
+ total_points: number;
91
+ total_distance_km?: number;
92
+ duration_seconds?: number;
93
+ }
94
+ export interface ITrackingFilters {
95
+ user_id?: number;
96
+ assignment_id?: number;
97
+ route_id?: number;
98
+ session_id?: string;
99
+ from_date?: Date | string;
100
+ to_date?: Date | string;
101
+ is_navigating?: boolean;
102
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=driver-tracking.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"driver-tracking.interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/driver-tracking/driver-tracking.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import { IUser } from "../user/user.interfaces";
2
+ import { ITrip } from "../trip/trip.interfaces";
3
+ export interface IGPSLocation {
4
+ id?: number;
5
+ uuid?: string;
6
+ trip_id: number;
7
+ user_id: number;
8
+ latitude: number;
9
+ longitude: number;
10
+ accuracy?: number;
11
+ altitude?: number;
12
+ speed?: number;
13
+ heading?: number;
14
+ recorded_at: Date | string;
15
+ metadata?: any;
16
+ created_at?: Date | string;
17
+ updated_at?: Date | string;
18
+ user?: IUser;
19
+ trip?: ITrip;
20
+ }
21
+ export interface IGPSLocationWithDistance extends IGPSLocation {
22
+ distance_from_previous?: number;
23
+ }
24
+ export interface ITripLocationSummary {
25
+ trip_id: number;
26
+ current_location?: IGPSLocation;
27
+ last_updated?: Date | string;
28
+ total_distance?: number;
29
+ total_locations?: number;
30
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=gps-location.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gps-location.interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/gps-location/gps-location.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,8 @@
1
+ export interface IRole {
2
+ id?: number;
3
+ name: string;
4
+ description?: string;
5
+ permissions?: string[];
6
+ created_at?: Date;
7
+ updated_at?: Date;
8
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=role.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/role/role.interfaces.ts"],"names":[],"mappings":""}
@@ -0,0 +1,23 @@
1
+ export interface IRoute {
2
+ id?: number;
3
+ uuid?: string;
4
+ name: string;
5
+ description?: string;
6
+ geojson: any;
7
+ custom_instructions?: any[];
8
+ distance?: number;
9
+ estimated_duration?: number;
10
+ is_active?: boolean;
11
+ created_at?: Date;
12
+ updated_at?: Date;
13
+ }
14
+ export interface IRouteInstruction {
15
+ id: string;
16
+ stepIndex: number;
17
+ instruction: string;
18
+ distance: number;
19
+ duration: number;
20
+ maneuverType?: string;
21
+ maneuverModifier?: string;
22
+ geometry?: any;
23
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=route.interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"route.interfaces.js","sourceRoot":"","sources":["../../../src/interfaces/route/route.interfaces.ts"],"names":[],"mappings":""}