tabletcommand-location 2.4.1 → 2.4.3

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 (65) hide show
  1. package/.claude/worktrees/sc-36275/.buildkite/pipeline.yml +5 -0
  2. package/.claude/worktrees/sc-36275/README.md +3 -0
  3. package/.claude/worktrees/sc-36275/build/audience.js +38 -0
  4. package/.claude/worktrees/sc-36275/build/audience.js.map +1 -0
  5. package/.claude/worktrees/sc-36275/build/index.js +95 -0
  6. package/.claude/worktrees/sc-36275/build/index.js.map +1 -0
  7. package/.claude/worktrees/sc-36275/build/location.js +278 -0
  8. package/.claude/worktrees/sc-36275/build/location.js.map +1 -0
  9. package/.claude/worktrees/sc-36275/build/query.js +378 -0
  10. package/.claude/worktrees/sc-36275/build/query.js.map +1 -0
  11. package/.claude/worktrees/sc-36275/build/store.js +182 -0
  12. package/.claude/worktrees/sc-36275/build/store.js.map +1 -0
  13. package/.claude/worktrees/sc-36275/build/test/location.js +522 -0
  14. package/.claude/worktrees/sc-36275/build/test/location.js.map +1 -0
  15. package/.claude/worktrees/sc-36275/build/test/mock.js +165 -0
  16. package/.claude/worktrees/sc-36275/build/test/mock.js.map +1 -0
  17. package/.claude/worktrees/sc-36275/build/test/query.js +174 -0
  18. package/.claude/worktrees/sc-36275/build/test/query.js.map +1 -0
  19. package/.claude/worktrees/sc-36275/build/types.js +8 -0
  20. package/.claude/worktrees/sc-36275/build/types.js.map +1 -0
  21. package/.claude/worktrees/sc-36275/cspell.json +64 -0
  22. package/.claude/worktrees/sc-36275/definitions/audience.d.ts +18 -0
  23. package/.claude/worktrees/sc-36275/definitions/audience.d.ts.map +1 -0
  24. package/.claude/worktrees/sc-36275/definitions/index.d.ts +11 -0
  25. package/.claude/worktrees/sc-36275/definitions/index.d.ts.map +1 -0
  26. package/.claude/worktrees/sc-36275/definitions/location.d.ts +32 -0
  27. package/.claude/worktrees/sc-36275/definitions/location.d.ts.map +1 -0
  28. package/.claude/worktrees/sc-36275/definitions/query.d.ts +36 -0
  29. package/.claude/worktrees/sc-36275/definitions/query.d.ts.map +1 -0
  30. package/.claude/worktrees/sc-36275/definitions/store.d.ts +64 -0
  31. package/.claude/worktrees/sc-36275/definitions/store.d.ts.map +1 -0
  32. package/.claude/worktrees/sc-36275/definitions/test/location.d.ts +2 -0
  33. package/.claude/worktrees/sc-36275/definitions/test/location.d.ts.map +1 -0
  34. package/.claude/worktrees/sc-36275/definitions/test/mock.d.ts +346 -0
  35. package/.claude/worktrees/sc-36275/definitions/test/mock.d.ts.map +1 -0
  36. package/.claude/worktrees/sc-36275/definitions/test/query.d.ts +2 -0
  37. package/.claude/worktrees/sc-36275/definitions/test/query.d.ts.map +1 -0
  38. package/.claude/worktrees/sc-36275/definitions/types.d.ts +53 -0
  39. package/.claude/worktrees/sc-36275/definitions/types.d.ts.map +1 -0
  40. package/.claude/worktrees/sc-36275/eslint.config.mjs +95 -0
  41. package/.claude/worktrees/sc-36275/gulpfile.js +23 -0
  42. package/.claude/worktrees/sc-36275/package-lock.json +9404 -0
  43. package/.claude/worktrees/sc-36275/package.json +54 -0
  44. package/.claude/worktrees/sc-36275/src/audience.ts +54 -0
  45. package/.claude/worktrees/sc-36275/src/index.ts +81 -0
  46. package/.claude/worktrees/sc-36275/src/location.ts +315 -0
  47. package/.claude/worktrees/sc-36275/src/query.ts +497 -0
  48. package/.claude/worktrees/sc-36275/src/store.ts +204 -0
  49. package/.claude/worktrees/sc-36275/src/test/location.ts +485 -0
  50. package/.claude/worktrees/sc-36275/src/test/mock.ts +186 -0
  51. package/.claude/worktrees/sc-36275/src/test/query.ts +209 -0
  52. package/.claude/worktrees/sc-36275/src/tsconfig.json +30 -0
  53. package/.claude/worktrees/sc-36275/src/types.ts +74 -0
  54. package/.claude/worktrees/sc-36275/test.sh +32 -0
  55. package/build/query.js +6 -1
  56. package/build/query.js.map +1 -1
  57. package/build/test/query.js +2 -2
  58. package/build/test/query.js.map +1 -1
  59. package/cspell.json +1 -0
  60. package/definitions/query.d.ts.map +1 -1
  61. package/definitions/test/mock.d.ts +5 -0
  62. package/definitions/test/mock.d.ts.map +1 -1
  63. package/package.json +7 -7
  64. package/src/query.ts +6 -1
  65. package/src/test/query.ts +2 -2
@@ -0,0 +1,346 @@
1
+ import * as mongoose from "mongoose";
2
+ import { BackendModels, Agency, Department } from "tabletcommand-backend-models";
3
+ export default function (modelsModule: typeof import("tabletcommand-backend-models")): {
4
+ department: Partial<Department>;
5
+ agency: Partial<Agency>;
6
+ clearTestData: (mods: BackendModels) => Promise<void>;
7
+ prepareTestData: (mods: BackendModels) => Promise<void>;
8
+ before: () => Promise<{
9
+ ADSB: import("mongoose").Model<import("tabletcommand-backend-models").ADSB, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ADSB, {}, {}> & import("tabletcommand-backend-models").ADSB & Required<{
10
+ _id: import("mongoose").Types.ObjectId;
11
+ }> & {
12
+ __v: number;
13
+ }, any>;
14
+ ActionLog: import("mongoose").Model<import("tabletcommand-backend-models").ActionLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ActionLog, {}, {}> & import("tabletcommand-backend-models").ActionLog & Required<{
15
+ _id: import("mongoose").Types.ObjectId;
16
+ }> & {
17
+ __v: number;
18
+ }, any>;
19
+ Agency: import("mongoose").Model<import("tabletcommand-backend-models/definitions/models/agency").Agency, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models/definitions/models/agency").Agency, {}, {}> & import("tabletcommand-backend-models/definitions/models/agency").Agency & Required<{
20
+ _id: import("mongoose").Types.ObjectId;
21
+ }> & {
22
+ __v: number;
23
+ }, any>;
24
+ ArcGISGroup: import("mongoose").Model<import("tabletcommand-backend-models").ArcGISGroup, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ArcGISGroup, {}, {}> & import("tabletcommand-backend-models").ArcGISGroup & {
25
+ _id: import("mongoose").Types.ObjectId;
26
+ } & {
27
+ __v: number;
28
+ }, any>;
29
+ Assignment: import("mongoose").Model<import("tabletcommand-backend-models").Assignment, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Assignment, {}, {}> & import("tabletcommand-backend-models").Assignment & Required<{
30
+ _id: import("mongoose").Types.ObjectId;
31
+ }> & {
32
+ __v: number;
33
+ }, any>;
34
+ Battalion: import("mongoose").Model<import("tabletcommand-backend-models").Battalion, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Battalion, {}, {}> & import("tabletcommand-backend-models").Battalion & Required<{
35
+ _id: import("mongoose").Types.ObjectId;
36
+ }> & {
37
+ __v: number;
38
+ }, any>;
39
+ BeaconLog: import("mongoose").Model<import("tabletcommand-backend-models").BeaconLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").BeaconLog, {}, {}> & import("tabletcommand-backend-models").BeaconLog & Required<{
40
+ _id: import("mongoose").Types.ObjectId;
41
+ }> & {
42
+ __v: number;
43
+ }, any>;
44
+ CADIncident: import("mongoose").Model<import("tabletcommand-backend-models").CADIncident, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADIncident, {}, {}> & import("tabletcommand-backend-models").CADIncident & Required<{
45
+ _id: import("mongoose").Types.ObjectId;
46
+ }> & {
47
+ __v: number;
48
+ }, any>;
49
+ CADIncidentBlock: import("mongoose").Model<import("tabletcommand-backend-models").CADIncidentBlock, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADIncidentBlock, {}, {}> & import("tabletcommand-backend-models").CADIncidentBlock & Required<{
50
+ _id: import("mongoose").Types.ObjectId;
51
+ }> & {
52
+ __v: number;
53
+ }, any>;
54
+ CADIncidentStream: import("mongoose").Model<import("tabletcommand-backend-models").CADIncidentStream, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADIncidentStream, {}, {}> & import("tabletcommand-backend-models").CADIncidentStream & Required<{
55
+ _id: import("mongoose").Types.ObjectId;
56
+ }> & {
57
+ __v: number;
58
+ }, any>;
59
+ CADInterfaceMetaData: import("mongoose").Model<import("tabletcommand-backend-models").CADInterfaceMetaData, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADInterfaceMetaData, {}, {}> & import("tabletcommand-backend-models").CADInterfaceMetaData & Required<{
60
+ _id: import("mongoose").Types.ObjectId;
61
+ }> & {
62
+ __v: number;
63
+ }, any>;
64
+ CADSimulation: import("mongoose").Model<import("tabletcommand-backend-models").CADSimulation, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADSimulation, {}, {}> & import("tabletcommand-backend-models").CADSimulation & Required<{
65
+ _id: import("mongoose").Types.ObjectId;
66
+ }> & {
67
+ __v: number;
68
+ }, any>;
69
+ CADStatus: import("mongoose").Model<import("tabletcommand-backend-models").CADStatus, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADStatus, {}, {}> & import("tabletcommand-backend-models").CADStatus & {
70
+ _id: import("mongoose").Types.ObjectId;
71
+ } & {
72
+ __v: number;
73
+ }, any>;
74
+ CADStatusMap: import("mongoose").Model<import("tabletcommand-backend-models").CADStatusMap, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADStatusMap, {}, {}> & import("tabletcommand-backend-models").CADStatusMap & Required<{
75
+ _id: import("mongoose").Types.ObjectId;
76
+ }> & {
77
+ __v: number;
78
+ }, any>;
79
+ CADVehicle: import("mongoose").Model<import("tabletcommand-backend-models").CADVehicle, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADVehicle, {}, {}> & import("tabletcommand-backend-models").CADVehicle & Required<{
80
+ _id: import("mongoose").Types.ObjectId;
81
+ }> & {
82
+ __v: number;
83
+ }, any>;
84
+ CADVehicleStatus: import("mongoose").Model<import("tabletcommand-backend-models").CADVehicleStatus, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADVehicleStatus, {}, {}> & import("tabletcommand-backend-models").CADVehicleStatus & {
85
+ _id: import("mongoose").Types.ObjectId;
86
+ } & {
87
+ __v: number;
88
+ }, any>;
89
+ CADVehicleStatusHistory: import("mongoose").Model<import("tabletcommand-backend-models").CADVehicleStatusHistory, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CADVehicleStatusHistory, {}, {}> & import("tabletcommand-backend-models").CADVehicleStatusHistory & {
90
+ _id: import("mongoose").Types.ObjectId;
91
+ } & {
92
+ __v: number;
93
+ }, any>;
94
+ ChartDeviceStats: import("mongoose").Model<import("tabletcommand-backend-models").ChartDeviceStats, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ChartDeviceStats, {}, {}> & import("tabletcommand-backend-models").ChartDeviceStats & Required<{
95
+ _id: import("mongoose").Types.ObjectId;
96
+ }> & {
97
+ __v: number;
98
+ }, any>;
99
+ ChartIncident: import("mongoose").Model<import("tabletcommand-backend-models").ChartIncident, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ChartIncident, {}, {}> & import("tabletcommand-backend-models").ChartIncident & Required<{
100
+ _id: import("mongoose").Types.ObjectId;
101
+ }> & {
102
+ __v: number;
103
+ }, any>;
104
+ ChartManagedIncident: import("mongoose").Model<import("tabletcommand-backend-models").ChartManagedIncident, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ChartManagedIncident, {}, {}> & import("tabletcommand-backend-models").ChartManagedIncident & Required<{
105
+ _id: import("mongoose").Types.ObjectId;
106
+ }> & {
107
+ __v: number;
108
+ }, any>;
109
+ ChartUser: import("mongoose").Model<import("tabletcommand-backend-models").ChartUser, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ChartUser, {}, {}> & import("tabletcommand-backend-models").ChartUser & Required<{
110
+ _id: import("mongoose").Types.ObjectId;
111
+ }> & {
112
+ __v: number;
113
+ }, any>;
114
+ Checklist: import("mongoose").Model<import("tabletcommand-backend-models").Checklist, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Checklist, {}, {}> & import("tabletcommand-backend-models").Checklist & Required<{
115
+ _id: import("mongoose").Types.ObjectId;
116
+ }> & {
117
+ __v: number;
118
+ }, any>;
119
+ ChecklistItem: import("mongoose").Model<import("tabletcommand-backend-models").ChecklistItem, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ChecklistItem, {}, {}> & import("tabletcommand-backend-models").ChecklistItem & Required<{
120
+ _id: import("mongoose").Types.ObjectId;
121
+ }> & {
122
+ __v: number;
123
+ }, any>;
124
+ CSVImport: import("mongoose").Model<import("tabletcommand-backend-models").CSVImport, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").CSVImport, {}, {}> & import("tabletcommand-backend-models").CSVImport & Required<{
125
+ _id: import("mongoose").Types.ObjectId;
126
+ }> & {
127
+ __v: number;
128
+ }, any>;
129
+ AudioStreamAuthentication: import("mongoose").Model<import("tabletcommand-backend-models").AudioStreamAuthentication, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").AudioStreamAuthentication, {}, {}> & import("tabletcommand-backend-models").AudioStreamAuthentication & Required<{
130
+ _id: import("mongoose").Types.ObjectId;
131
+ }> & {
132
+ __v: number;
133
+ }, any>;
134
+ Department: import("mongoose").Model<import("tabletcommand-backend-models/definitions/models/department").Department, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models/definitions/models/department").Department, {}, {}> & import("tabletcommand-backend-models/definitions/models/department").Department & Required<{
135
+ _id: import("mongoose").Types.ObjectId;
136
+ }> & {
137
+ __v: number;
138
+ }, any>;
139
+ DeviceMapping: import("mongoose").Model<import("tabletcommand-backend-models").DeviceMapping, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").DeviceMapping, {}, {}> & import("tabletcommand-backend-models").DeviceMapping & Required<{
140
+ _id: import("mongoose").Types.ObjectId;
141
+ }> & {
142
+ __v: number;
143
+ }, any>;
144
+ DroneConnection: import("mongoose").Model<import("tabletcommand-backend-models").DroneConnection, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").DroneConnection, {}, {}> & import("tabletcommand-backend-models").DroneConnection & Required<{
145
+ _id: import("mongoose").Types.ObjectId;
146
+ }> & {
147
+ __v: number;
148
+ }, any>;
149
+ Esri: import("mongoose").Model<import("tabletcommand-backend-models").Esri, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Esri, {}, {}> & import("tabletcommand-backend-models").Esri & Required<{
150
+ _id: import("mongoose").Types.ObjectId;
151
+ }> & {
152
+ __v: number;
153
+ }, any>;
154
+ GSTMapping: import("mongoose").Model<import("tabletcommand-backend-models").GSTMapping, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").GSTMapping, {}, {}> & import("tabletcommand-backend-models").GSTMapping & Required<{
155
+ _id: import("mongoose").Types.ObjectId;
156
+ }> & {
157
+ __v: number;
158
+ }, any>;
159
+ GlobalSettings: import("mongoose").Model<import("tabletcommand-backend-models").GlobalSettings, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").GlobalSettings, {}, {}> & import("tabletcommand-backend-models").GlobalSettings & Required<{
160
+ _id: import("mongoose").Types.ObjectId;
161
+ }> & {
162
+ __v: number;
163
+ }, any>;
164
+ IncidentEvent: import("mongoose").Model<import("tabletcommand-backend-models").IncidentEvent, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentEvent, {}, {}> & import("tabletcommand-backend-models").IncidentEvent & Required<{
165
+ _id: import("mongoose").Types.ObjectId;
166
+ }> & {
167
+ __v: number;
168
+ }, any>;
169
+ IncidentFilter: import("mongoose").Model<import("tabletcommand-backend-models").IncidentFilter, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentFilter, {}, {}> & import("tabletcommand-backend-models").IncidentFilter & Required<{
170
+ _id: import("mongoose").Types.ObjectId;
171
+ }> & {
172
+ __v: number;
173
+ }, any>;
174
+ IncidentFilterGlobal: import("mongoose").Model<import("tabletcommand-backend-models").IncidentFilterGlobal, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentFilterGlobal, {}, {}> & import("tabletcommand-backend-models").IncidentFilterGlobal & Required<{
175
+ _id: import("mongoose").Types.ObjectId;
176
+ }> & {
177
+ __v: number;
178
+ }, any>;
179
+ IncidentNotified: import("mongoose").Model<import("tabletcommand-backend-models").IncidentNotified, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentNotified, {}, {}> & import("tabletcommand-backend-models").IncidentNotified & Required<{
180
+ _id: import("mongoose").Types.ObjectId;
181
+ }> & {
182
+ __v: number;
183
+ }, any>;
184
+ IncidentShareCode: import("mongoose").Model<import("tabletcommand-backend-models").IncidentShareCode, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentShareCode, {}, {}> & import("tabletcommand-backend-models").IncidentShareCode & Required<{
185
+ _id: import("mongoose").Types.ObjectId;
186
+ }> & {
187
+ __v: number;
188
+ }, any>;
189
+ IncidentTakeover: import("mongoose").Model<import("tabletcommand-backend-models").IncidentTakeover, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").IncidentTakeover, {}, {}> & import("tabletcommand-backend-models").IncidentTakeover & Required<{
190
+ _id: import("mongoose").Types.ObjectId;
191
+ }> & {
192
+ __v: number;
193
+ }, any>;
194
+ JobLog: import("mongoose").Model<import("tabletcommand-backend-models").JobLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").JobLog, {}, {}> & import("tabletcommand-backend-models").JobLog & Required<{
195
+ _id: import("mongoose").Types.ObjectId;
196
+ }> & {
197
+ __v: number;
198
+ }, any>;
199
+ KindTypeCatalog: import("mongoose").Model<import("tabletcommand-backend-models").KindTypeCatalog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").KindTypeCatalog, {}, {}> & import("tabletcommand-backend-models").KindTypeCatalog & Required<{
200
+ _id: import("mongoose").Types.ObjectId;
201
+ }> & {
202
+ __v: number;
203
+ }, any>;
204
+ Location: import("mongoose").Model<import("tabletcommand-backend-models").Location, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Location, {}, {}> & import("tabletcommand-backend-models").Location & Required<{
205
+ _id: import("mongoose").Types.ObjectId;
206
+ }> & {
207
+ __v: number;
208
+ }, any>;
209
+ MailLog: import("mongoose").Model<import("tabletcommand-backend-models").MailLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").MailLog, {}, {}> & import("tabletcommand-backend-models").MailLog & Required<{
210
+ _id: import("mongoose").Types.ObjectId;
211
+ }> & {
212
+ __v: number;
213
+ }, any>;
214
+ ManagedIncident: import("mongoose").Model<import("tabletcommand-backend-models").ManagedIncident, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ManagedIncident, {}, {}> & import("tabletcommand-backend-models").ManagedIncident & Required<{
215
+ _id: import("mongoose").Types.ObjectId;
216
+ }> & {
217
+ __v: number;
218
+ }, any>;
219
+ Mark43IncidentRetry: import("mongoose").Model<import("tabletcommand-backend-models").Mark43IncidentRetry, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Mark43IncidentRetry, {}, {}> & import("tabletcommand-backend-models").Mark43IncidentRetry & {
220
+ _id: import("mongoose").Types.ObjectId;
221
+ } & {
222
+ __v: number;
223
+ }, any>;
224
+ Message: import("mongoose").Model<import("tabletcommand-backend-models").Message, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Message, {}, {}> & import("tabletcommand-backend-models").Message & Required<{
225
+ _id: import("mongoose").Types.ObjectId;
226
+ }> & {
227
+ __v: number;
228
+ }, any>;
229
+ Monitor: import("mongoose").Model<import("tabletcommand-backend-models").Monitor, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Monitor, {}, {}> & import("tabletcommand-backend-models").Monitor & Required<{
230
+ _id: import("mongoose").Types.ObjectId;
231
+ }> & {
232
+ __v: number;
233
+ }, any>;
234
+ PersonnelImport: import("mongoose").Model<import("tabletcommand-backend-models").PersonnelImport, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").PersonnelImport, {}, {}> & import("tabletcommand-backend-models").PersonnelImport & Required<{
235
+ _id: import("mongoose").Types.ObjectId;
236
+ }> & {
237
+ __v: number;
238
+ }, any>;
239
+ PersonnelKnown: import("mongoose").Model<import("tabletcommand-backend-models").PersonnelKnown, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").PersonnelKnown, {}, {}> & import("tabletcommand-backend-models").PersonnelKnown & Required<{
240
+ _id: import("mongoose").Types.ObjectId;
241
+ }> & {
242
+ __v: number;
243
+ }, any>;
244
+ Partner: import("mongoose").Model<import("tabletcommand-backend-models").Partner, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Partner, {}, {}> & import("tabletcommand-backend-models").Partner & Required<{
245
+ _id: import("mongoose").Types.ObjectId;
246
+ }> & {
247
+ __v: number;
248
+ }, any>;
249
+ PersonnelRoster: import("mongoose").Model<import("tabletcommand-backend-models").PersonnelRoster, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").PersonnelRoster, {}, {}> & import("tabletcommand-backend-models").PersonnelRoster & Required<{
250
+ _id: import("mongoose").Types.ObjectId;
251
+ }> & {
252
+ __v: number;
253
+ }, any>;
254
+ RateLimit: import("mongoose").Model<import("tabletcommand-backend-models").RateLimit, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").RateLimit, {}, {}> & import("tabletcommand-backend-models").RateLimit & Required<{
255
+ _id: import("mongoose").Types.ObjectId;
256
+ }> & {
257
+ __v: number;
258
+ }, any>;
259
+ ReleaseNote: import("mongoose").Model<import("tabletcommand-backend-models").ReleaseNote, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ReleaseNote, {}, {}> & import("tabletcommand-backend-models").ReleaseNote & Required<{
260
+ _id: import("mongoose").Types.ObjectId;
261
+ }> & {
262
+ __v: number;
263
+ }, any>;
264
+ RemoteLog: import("mongoose").Model<import("tabletcommand-backend-models").RemoteLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").RemoteLog, {}, {}> & import("tabletcommand-backend-models").RemoteLog & Required<{
265
+ _id: import("mongoose").Types.ObjectId;
266
+ }> & {
267
+ __v: number;
268
+ }, any>;
269
+ RemoteLogStream: import("mongoose").Model<import("tabletcommand-backend-models").RemoteLogStream, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").RemoteLogStream, {}, {}> & import("tabletcommand-backend-models").RemoteLogStream & Required<{
270
+ _id: import("mongoose").Types.ObjectId;
271
+ }> & {
272
+ __v: number;
273
+ }, any>;
274
+ Session: import("mongoose").Model<import("tabletcommand-backend-models").Session, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Session, {}, {}> & import("tabletcommand-backend-models").Session & Required<{
275
+ _id: string;
276
+ }> & {
277
+ __v: number;
278
+ }, any>;
279
+ SAML: import("mongoose").Model<import("tabletcommand-backend-models").SAML, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").SAML, {}, {}> & import("tabletcommand-backend-models").SAML & Required<{
280
+ _id: import("mongoose").Types.ObjectId;
281
+ }> & {
282
+ __v: number;
283
+ }, any>;
284
+ SMSLog: import("mongoose").Model<import("tabletcommand-backend-models").SMSLog, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").SMSLog, {}, {}> & import("tabletcommand-backend-models").SMSLog & Required<{
285
+ _id: import("mongoose").Types.ObjectId;
286
+ }> & {
287
+ __v: number;
288
+ }, any>;
289
+ SMTPUnhandled: import("mongoose").Model<import("tabletcommand-backend-models").SMTPUnhandled, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").SMTPUnhandled, {}, {}> & import("tabletcommand-backend-models").SMTPUnhandled & Required<{
290
+ _id: import("mongoose").Types.ObjectId;
291
+ }> & {
292
+ __v: number;
293
+ }, any>;
294
+ StatusBeacon: import("mongoose").Model<import("tabletcommand-backend-models").StatusBeacon, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").StatusBeacon, {}, {}> & import("tabletcommand-backend-models").StatusBeacon & Required<{
295
+ _id: import("mongoose").Types.ObjectId;
296
+ }> & {
297
+ __v: number;
298
+ }, any>;
299
+ StatusBeaconTransition: import("mongoose").Model<import("tabletcommand-backend-models").StatusBeaconTransition, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").StatusBeaconTransition, {}, {}> & import("tabletcommand-backend-models").StatusBeaconTransition & Required<{
300
+ _id: import("mongoose").Types.ObjectId;
301
+ }> & {
302
+ __v: number;
303
+ }, any>;
304
+ Template: import("mongoose").Model<import("tabletcommand-backend-models").Template, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").Template, {}, {}> & import("tabletcommand-backend-models").Template & Required<{
305
+ _id: import("mongoose").Types.ObjectId;
306
+ }> & {
307
+ __v: number;
308
+ }, any>;
309
+ TrackerResponder: import("mongoose").Model<import("tabletcommand-backend-models").TrackerResponder, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").TrackerResponder, {}, {}> & import("tabletcommand-backend-models").TrackerResponder & Required<{
310
+ _id: import("mongoose").Types.ObjectId;
311
+ }> & {
312
+ __v: number;
313
+ }, any>;
314
+ User: import("mongoose").Model<import("tabletcommand-backend-models").User, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").User, {}, {}> & import("tabletcommand-backend-models").User & Required<{
315
+ _id: import("mongoose").Types.ObjectId;
316
+ }> & {
317
+ __v: number;
318
+ }, any>;
319
+ UserDevice: import("mongoose").Model<import("tabletcommand-backend-models").UserDevice, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").UserDevice, {}, {}> & import("tabletcommand-backend-models").UserDevice & Required<{
320
+ _id: import("mongoose").Types.ObjectId;
321
+ }> & {
322
+ __v: number;
323
+ }, any>;
324
+ UserRegistration: import("mongoose").Model<import("tabletcommand-backend-models").UserRegistration, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").UserRegistration, {}, {}> & import("tabletcommand-backend-models").UserRegistration & {
325
+ _id: import("mongoose").Types.ObjectId;
326
+ } & {
327
+ __v: number;
328
+ }, any>;
329
+ ValidationReport: import("mongoose").Model<import("tabletcommand-backend-models").ValidationReport, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").ValidationReport, {}, {}> & import("tabletcommand-backend-models").ValidationReport & Required<{
330
+ _id: import("mongoose").Types.ObjectId;
331
+ }> & {
332
+ __v: number;
333
+ }, any>;
334
+ WatchDutyEvent: import("mongoose").Model<import("tabletcommand-backend-models").WatchDutyEvent, {}, {}, {}, import("mongoose").Document<unknown, {}, import("tabletcommand-backend-models").WatchDutyEvent, {}, {}> & import("tabletcommand-backend-models").WatchDutyEvent & Required<{
335
+ _id: import("mongoose").Types.ObjectId;
336
+ }> & {
337
+ __v: number;
338
+ }, any>;
339
+ }>;
340
+ beforeEach: () => Promise<void>;
341
+ after: () => Promise<void>;
342
+ afterEach: () => Promise<void>;
343
+ getModels: () => BackendModels;
344
+ getConnection: () => typeof mongoose;
345
+ };
346
+ //# sourceMappingURL=mock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../../src/test/mock.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,UAAU,CAAC;AACrC,OAAO,EACL,aAAa,EAEb,MAAM,EACN,UAAU,EAEX,MAAM,8BAA8B,CAAC;AAEtC,MAAM,CAAC,OAAO,WAAU,YAAY,EAAE,cAAc,8BAA8B,CAAC;;;0BA6F9C,aAAa;4BASX,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAsD5B,aAAa;yBAIT,OAAO,QAAQ;EAgB1C"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/test/query.ts"],"names":[],"mappings":""}
@@ -0,0 +1,53 @@
1
+ import { Location, LocationKindType, LocationSource, LocationVisibility } from "tabletcommand-backend-models";
2
+ export { LocationKindType, LocationSource, LocationVisibility, };
3
+ export interface LocationPayload {
4
+ altitude?: number;
5
+ avlTime: string;
6
+ kindType: LocationKindType;
7
+ kind?: string;
8
+ type?: string;
9
+ locationType?: LocationKindType;
10
+ kindColor?: {
11
+ background: string;
12
+ text: string;
13
+ };
14
+ latitude: number;
15
+ longitude: number;
16
+ radioName: string;
17
+ source: LocationSource;
18
+ speed?: number;
19
+ heading?: number;
20
+ vehicleId: string;
21
+ visibility: LocationVisibility[];
22
+ personnelUUID?: string;
23
+ transponderUUID?: string;
24
+ userId?: string;
25
+ session?: string;
26
+ username?: string;
27
+ }
28
+ export interface Vehicle {
29
+ departmentId: string;
30
+ modifiedDate: number;
31
+ modified: Date;
32
+ radioName: string;
33
+ vehicleId: string;
34
+ }
35
+ export type DecodedLocation = {
36
+ cadAVL: Partial<Location>;
37
+ isValid: boolean;
38
+ };
39
+ export interface LocationDelta {
40
+ active?: boolean;
41
+ agencyCode?: string;
42
+ agencyName?: string;
43
+ device_type?: string;
44
+ opAreaCode?: string;
45
+ opAreaName?: string;
46
+ shared?: boolean;
47
+ state?: string;
48
+ username?: string;
49
+ }
50
+ export type LocationObject = {
51
+ [P in keyof Location]: Location[P];
52
+ };
53
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,kBAAkB,EACnB,MAAM,8BAA8B,CAAC;AAEtC,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,kBAAkB,GACnB,CAAC;AAEF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,kBAAkB,EAAE,CAAC;IAIjC,aAAa,CAAC,EAAE,MAAM,CAAC;IAIvB,eAAe,CAAC,EAAE,MAAM,CAAC;IAKzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,OAAO;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,IAAI,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAA;CACjB,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,cAAc,GAAG;KAC1B,CAAC,IAAI,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC;CACnC,CAAC"}
@@ -0,0 +1,95 @@
1
+ import { defineConfig } from "eslint/config";
2
+ import promise from "eslint-plugin-promise";
3
+ import security from "eslint-plugin-security";
4
+ import globals from "globals";
5
+ import tsParser from "@typescript-eslint/parser";
6
+ import path from "node:path";
7
+ import { fileURLToPath } from "node:url";
8
+ import js from "@eslint/js";
9
+ import { FlatCompat } from "@eslint/eslintrc";
10
+ import neostandard, { plugins } from "neostandard";
11
+
12
+ const __filename = fileURLToPath(import.meta.url);
13
+ const __dirname = path.dirname(__filename);
14
+ const compat = new FlatCompat({
15
+ baseDirectory: __dirname,
16
+ recommendedConfig: js.configs.recommended,
17
+ allConfig: js.configs.all
18
+ });
19
+
20
+ export default defineConfig([
21
+ ...neostandard({
22
+ env: [
23
+ "node",
24
+ ],
25
+ ts: true,
26
+ }),
27
+ plugins.n.configs["flat/recommended"],
28
+ {
29
+ extends: compat.extends(
30
+ "eslint:recommended",
31
+ "plugin:security/recommended-legacy",
32
+ ),
33
+
34
+ plugins: {
35
+ promise,
36
+ security,
37
+ },
38
+
39
+ languageOptions: {
40
+ globals: {
41
+ ...globals.node,
42
+ },
43
+
44
+ parser: tsParser,
45
+ ecmaVersion: 2019,
46
+ sourceType: "commonjs",
47
+
48
+ parserOptions: {
49
+ project: "./src/tsconfig.json",
50
+ },
51
+ },
52
+
53
+ settings: {
54
+ node: {
55
+ version: ">=24.15.0",
56
+ }
57
+ },
58
+
59
+ rules: {
60
+ quotes: [2, "double"],
61
+ semi: [2, "always"],
62
+ "@typescript-eslint/await-thenable": [1],
63
+ "@typescript-eslint/no-floating-promises": [1],
64
+ "@typescript-eslint/no-for-in-array": [1],
65
+
66
+ "space-before-function-paren": [0],
67
+ "@typescript-eslint/explicit-module-boundary-types": 0,
68
+ "@typescript-eslint/no-empty-interface": 0,
69
+ "@typescript-eslint/require-await": 0,
70
+ "@typescript-eslint/restrict-template-expressions": 0,
71
+
72
+ "@typescript-eslint/no-misused-promises": ["warn", {
73
+ checksVoidReturn: false,
74
+ }],
75
+ //
76
+ "@stylistic/quotes": [2, "double"],
77
+ "@stylistic/space-before-function-paren": [0],
78
+ "@stylistic/semi": [2, "always"],
79
+ "import-x/first": [0],
80
+ "camelcase": [0],
81
+ "n/no-process-exit": [0],
82
+ "n/no-unpublished-import": ["error", {
83
+ "allowModules": ["chai"]
84
+ }],
85
+ // this is a workaround for import of .ts files
86
+ "n/no-missing-import": [0],
87
+ },
88
+ },
89
+ {
90
+ files: ["src/test/**"],
91
+ rules: {
92
+ "@typescript-eslint/no-floating-promises": [0],
93
+ },
94
+ }
95
+ ]);
@@ -0,0 +1,23 @@
1
+ const gulp = require("gulp");
2
+ const exec = require("gulp-execa");
3
+ const { deleteAsync } = require("del");
4
+
5
+ gulp.task("clean", function() {
6
+ return deleteAsync(["build/**", "definitions/**"], {
7
+ force: true
8
+ });
9
+ });
10
+
11
+ gulp.task("ts", exec.task("tsc -p src"));
12
+
13
+ gulp.task("type-coverage", exec.task("type-coverage --detail"));
14
+
15
+ gulp.task("cspell", exec.task("cspell --no-progress"));
16
+
17
+ gulp.task("lint", exec.task("eslint src"));
18
+
19
+ gulp.task("test", exec.task("tsx --test --test-concurrency=1 --test-reporter=spec src/test/*.ts"));
20
+
21
+ gulp.task("build", gulp.series("clean", "ts"));
22
+
23
+ gulp.task("default", gulp.series("cspell", "type-coverage", "lint", "build", "test"));