truckcord-client 1.0.13 → 1.0.16

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.
@@ -15,6 +15,5 @@ export interface DetectorEvent {
15
15
  }
16
16
  export declare function detectDamageSpike(data: SCSSDKTelemetry, state: DetectorState): DetectorEvent | null;
17
17
  export declare function detectLowFuel(data: SCSSDKTelemetry, state: DetectorState): DetectorEvent | null;
18
- export declare function detectSpeeding(data: SCSSDKTelemetry, _speedLimit: number | null): DetectorEvent | null;
19
18
  export {};
20
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/detectors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1D,UAAU,aAAa;IACrB,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9D,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAMnD;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAmCnG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAuB/F;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa,GAAG,IAAI,CAsBtG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/detectors/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1D,UAAU,aAAa;IACrB,eAAe,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC9D,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,mBAAmB,IAAI,aAAa,CAMnD;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,CAAC;IACpD,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IACjD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAmCnG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,aAAa,GAAG,aAAa,GAAG,IAAI,CAuB/F"}
@@ -20,7 +20,7 @@ export function detectDamageSpike(data, state) {
20
20
  return null;
21
21
  }
22
22
  logger.warn({ damageDiff, timeDiff }, 'Damage spike detected');
23
- state.lastDamageCheck = { time: 0, totalDamage: 0 };
23
+ state.lastDamageCheck = { time: now, totalDamage };
24
24
  const severity = damageDiff >= 20 ? 'critical' : damageDiff >= 10 ? 'high' : 'medium';
25
25
  return {
26
26
  type: 'accident',
@@ -58,24 +58,4 @@ export function detectLowFuel(data, state) {
58
58
  }
59
59
  return null;
60
60
  }
61
- export function detectSpeeding(data, _speedLimit) {
62
- if (!data.speedLimit || data.speedLimit <= 0)
63
- return null;
64
- const speedKmh = data.speed * 3.6;
65
- const limitKmh = data.speedLimit * 3.6;
66
- if (speedKmh > limitKmh * 1.2 && speedKmh > 30) {
67
- const overPercent = Math.round(((speedKmh - limitKmh) / limitKmh) * 100);
68
- const severity = overPercent > 50 ? 'high' : overPercent > 30 ? 'medium' : 'low';
69
- return {
70
- type: 'speeding',
71
- severity,
72
- details: {
73
- speedKmh: Math.round(speedKmh),
74
- limitKmh: Math.round(limitKmh),
75
- overPercent,
76
- },
77
- };
78
- }
79
- return null;
80
- }
81
61
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/detectors/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/detectors/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CA2SrE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuRrE"}
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { logger } from './logger.js';
2
2
  import { createTelemetry } from './telemetry/index.js';
3
3
  import { SpeedTracker } from './tracker/index.js';
4
- import { createDetectorState, detectDamageSpike, detectLowFuel, detectSpeeding } from './detectors/index.js';
4
+ import { createDetectorState, detectDamageSpike, detectLowFuel } from './detectors/index.js';
5
5
  import { WebSocketClient } from './ws/index.js';
6
6
  import { TELEMETRY_INTERVAL_MS } from './constants.js';
7
7
  import { calcTotalTruckDamage, calcFuelPercent } from './utils.js';
@@ -28,9 +28,7 @@ export async function startClient(config) {
28
28
  let isJobInProgress = false;
29
29
  let ets2Connected = false;
30
30
  let lastTelemetrySend = 0;
31
- let lastSpeedingAlert = 0;
32
31
  let lastBlockedLog = 0;
33
- let lastJobChangeMs = 0;
34
32
  let statusInterval = null;
35
33
  const tracker = new SpeedTracker();
36
34
  const detectorState = createDetectorState();
@@ -56,21 +54,32 @@ export async function startClient(config) {
56
54
  const h = hours % 24;
57
55
  return `Day ${days + 1} - ${String(h).padStart(2, '0')}:${String(mins).padStart(2, '0')}`;
58
56
  }
57
+ function getTruckInfo() {
58
+ const data = telemetry.getData();
59
+ return {
60
+ truck_brand: data?.truckBrand ?? '',
61
+ truck_name: data?.truckName ?? '',
62
+ };
63
+ }
59
64
  ws.connect();
60
65
  const telemetry = await createTelemetry();
61
66
  telemetry.on('connected', () => {
62
67
  ets2Connected = true;
68
+ detectorState.lastDamageCheck = null;
63
69
  });
64
70
  telemetry.on('disconnected', () => {
65
71
  ets2Connected = false;
66
72
  });
67
73
  telemetry.on('job-started', (event) => {
74
+ if (isJobInProgress)
75
+ return;
68
76
  logger.info('Job started');
69
77
  activeJobId = crypto.randomUUID?.() ?? `${Date.now()}-${Math.random().toString(36).slice(2)}`;
70
78
  isJobInProgress = true;
71
79
  tracker.reset();
72
80
  const startTimeReal = new Date().toISOString();
73
81
  const timeAbs = telemetry.data?.current?.timeAbs ?? 0;
82
+ const truck = getTruckInfo();
74
83
  send('job_started', {
75
84
  job_id: activeJobId,
76
85
  source_city: event.citySrc ?? '',
@@ -79,6 +88,8 @@ export async function startClient(config) {
79
88
  destination_company: event.compDst ?? '',
80
89
  cargo_name: event.cargo ?? '',
81
90
  cargo_mass: event.cargoMass ?? 0,
91
+ truck_brand: truck.truck_brand,
92
+ truck_name: truck.truck_name,
82
93
  start_time_real: startTimeReal,
83
94
  start_time_game: gameMinutesToISO(timeAbs),
84
95
  });
@@ -90,8 +101,12 @@ export async function startClient(config) {
90
101
  const endTimeReal = new Date().toISOString();
91
102
  const timeAbs = telemetry.data?.current?.timeAbs ?? 0;
92
103
  const data = telemetry.getData();
93
- const profit = Number(event.jobDeliveredRevenue ?? 0n);
104
+ const rawProfit = event.jobDeliveredRevenue ?? 0n;
105
+ const profit = rawProfit > BigInt(Number.MAX_SAFE_INTEGER)
106
+ ? (logger.warn({ profit: rawProfit }, 'Profit exceeds safe integer, truncating'), Number(rawProfit / 100n))
107
+ : Number(rawProfit);
94
108
  const cargoDamage = (event.jobDeliveredCargoDamage ?? 0) * 100;
109
+ const truck = getTruckInfo();
95
110
  send('job_completed', {
96
111
  job_id: activeJobId,
97
112
  profit,
@@ -107,32 +122,42 @@ export async function startClient(config) {
107
122
  }),
108
123
  cargo_damage: cargoDamage,
109
124
  fines_count: 0,
125
+ truck_brand: truck.truck_brand,
126
+ truck_name: truck.truck_name,
110
127
  end_time_real: endTimeReal,
111
128
  end_time_game: gameMinutesToISO(timeAbs),
112
129
  });
113
130
  activeJobId = null;
114
131
  isJobInProgress = false;
115
132
  });
116
- telemetry.on('job-cancelled', (_event) => {
133
+ telemetry.on('job-cancelled', (event) => {
117
134
  logger.info('Job cancelled');
118
135
  if (!activeJobId)
119
136
  return;
137
+ const truck = getTruckInfo();
120
138
  send('job_cancelled', {
121
139
  job_id: activeJobId,
122
- penalty: Number(0),
140
+ penalty: Number(event.jobCancelledPenalty ?? 0n),
141
+ truck_brand: truck.truck_brand,
142
+ truck_name: truck.truck_name,
123
143
  });
124
144
  activeJobId = null;
125
145
  isJobInProgress = false;
126
146
  });
127
147
  telemetry.on('fine', (event) => {
128
148
  logger.info({ event }, 'Fine received');
149
+ const rawFine = event.fineAmount ?? 0n;
150
+ const amountEuro = rawFine > BigInt(Number.MAX_SAFE_INTEGER) ? Number(rawFine / 100n) : Number(rawFine);
151
+ const truck = getTruckInfo();
129
152
  send('incident', {
130
153
  type: 'fine',
131
154
  severity: 'low',
132
155
  details: {
133
- offence: event.fineOffence ?? 'Unknown',
134
- amountEuro: Number(event.fineAmount ?? 0n) / 100,
156
+ offence: (event.fineOffence ?? 'Unknown').replace(/_/g, ' '),
157
+ amountEuro,
135
158
  },
159
+ truck_brand: truck.truck_brand,
160
+ truck_name: truck.truck_name,
136
161
  });
137
162
  });
138
163
  telemetryInterval = setInterval(() => {
@@ -154,6 +179,7 @@ export async function startClient(config) {
154
179
  lastTelemetrySend = now;
155
180
  send('telemetry', {
156
181
  speed: Math.round(speedKmh * 10) / 10,
182
+ speed_limit: data.speedLimit ? Math.round(data.speedLimit * 3.6) : 0,
157
183
  truck_damage: calcTotalTruckDamage({
158
184
  engine: data.wearEngine,
159
185
  transmission: data.wearTransmission,
@@ -166,63 +192,17 @@ export async function startClient(config) {
166
192
  total_distance: tracker.getTotalDistance(),
167
193
  odometer: data.truckOdometer,
168
194
  is_job_active: isJobInProgress,
195
+ truck_brand: data.truckBrand ?? '',
196
+ truck_name: data.truckName ?? '',
169
197
  });
170
198
  }
171
199
  const damageSpike = detectDamageSpike(data, detectorState);
172
200
  if (damageSpike) {
173
- send('incident', damageSpike);
201
+ send('incident', { ...damageSpike, truck_brand: data.truckBrand ?? '', truck_name: data.truckName ?? '' });
174
202
  }
175
203
  const lowFuel = detectLowFuel(data, detectorState);
176
204
  if (lowFuel) {
177
- send('incident', lowFuel);
178
- }
179
- if (now - lastSpeedingAlert >= 30000) {
180
- const speeding = detectSpeeding(data, null);
181
- if (speeding) {
182
- lastSpeedingAlert = now;
183
- send('incident', speeding);
184
- }
185
- }
186
- const hasJob = data.isCargoLoaded === true;
187
- if (hasJob && !isJobInProgress && now - lastJobChangeMs > 3000) {
188
- isJobInProgress = true;
189
- activeJobId = crypto.randomUUID?.() ?? `${Date.now()}-${Math.random().toString(36).slice(2)}`;
190
- tracker.reset();
191
- lastJobChangeMs = now;
192
- send('job_started', {
193
- job_id: activeJobId,
194
- source_city: data.citySrc ?? '',
195
- source_company: data.compSrc ?? '',
196
- destination_city: data.cityDst ?? '',
197
- destination_company: data.compDst ?? '',
198
- cargo_name: data.cargo ?? '',
199
- cargo_mass: data.cargoMass ?? 0,
200
- start_time_real: new Date().toISOString(),
201
- start_time_game: gameMinutesToISO(data.timeAbs ?? 0),
202
- });
203
- }
204
- else if (!hasJob && isJobInProgress && now - lastJobChangeMs > 3000) {
205
- lastJobChangeMs = now;
206
- send('job_completed', {
207
- job_id: activeJobId ?? '',
208
- profit: 0,
209
- max_speed: tracker.getMaxSpeed(),
210
- avg_speed: tracker.getAverageSpeed(),
211
- total_distance: tracker.getTotalDistance(),
212
- truck_damage: calcTotalTruckDamage({
213
- engine: data.wearEngine,
214
- transmission: data.wearTransmission,
215
- cabin: data.wearCabin,
216
- chassis: data.wearChassis,
217
- wheels: data.wearWheels,
218
- }),
219
- cargo_damage: data.cargoDamage * 100,
220
- fines_count: 0,
221
- end_time_real: new Date().toISOString(),
222
- end_time_game: gameMinutesToISO(data.timeAbs ?? 0),
223
- });
224
- isJobInProgress = false;
225
- activeJobId = null;
205
+ send('incident', { ...lowFuel, truck_brand: data.truckBrand ?? '', truck_name: data.truckName ?? '' });
226
206
  }
227
207
  }, TELEMETRY_INTERVAL_MS);
228
208
  statusInterval = setInterval(() => {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tracker/index.ts"],"names":[],"mappings":"AAEA,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,SAAS,CAAuB;IAExC,KAAK,IAAI,IAAI;IAQb,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAwBlD,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAMzB,gBAAgB,IAAI,MAAM;IAI1B,YAAY,IAAI,MAAM;CAIvB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tracker/index.ts"],"names":[],"mappings":"AAEA,qBAAa,YAAY;IACvB,OAAO,CAAC,YAAY,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,aAAa,CAAK;IAC1B,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,SAAS,CAAuB;IAExC,KAAK,IAAI,IAAI;IAQb,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IA4BlD,WAAW,IAAI,MAAM;IAIrB,eAAe,IAAI,MAAM;IAMzB,gBAAgB,IAAI,MAAM;IAI1B,YAAY,IAAI,MAAM;CAIvB"}
@@ -9,13 +9,17 @@ export class SpeedTracker {
9
9
  this.maxSpeed = 0;
10
10
  this.totalDistance = 0;
11
11
  this.lastDistance = 0;
12
- this.startTime = Date.now();
12
+ this.startTime = null;
13
13
  }
14
14
  update(speedKmh, odometerKm) {
15
15
  const now = Date.now();
16
16
  if (this.startTime === null) {
17
17
  this.startTime = now;
18
18
  this.lastDistance = odometerKm;
19
+ this.speedSamples.push({ time: now, speed: speedKmh });
20
+ if (speedKmh > this.maxSpeed) {
21
+ this.maxSpeed = speedKmh;
22
+ }
19
23
  return;
20
24
  }
21
25
  this.speedSamples.push({ time: now, speed: speedKmh });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tracker/index.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAY;IACf,YAAY,GAAkB,EAAE,CAAC;IACjC,QAAQ,GAAG,CAAC,CAAC;IACb,aAAa,GAAG,CAAC,CAAC;IAClB,YAAY,GAAG,CAAC,CAAC;IACjB,SAAS,GAAkB,IAAI,CAAC;IAExC,KAAK;QACH,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,QAAgB,EAAE,UAAkB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;YACrB,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEvD,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC;QAED,IAAI,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,aAAa,IAAI,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;YACrD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAC7C,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAChE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACpD,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;IACrC,CAAC;CACF"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tracker/index.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAY;IACf,YAAY,GAAkB,EAAE,CAAC;IACjC,QAAQ,GAAG,CAAC,CAAC;IACb,aAAa,GAAG,CAAC,CAAC;IAClB,YAAY,GAAG,CAAC,CAAC;IACjB,SAAS,GAAkB,IAAI,CAAC;IAExC,KAAK;QACH,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;QAClB,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,MAAM,CAAC,QAAgB,EAAE,UAAkB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;YACrB,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;YAC/B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACvD,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC3B,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEvD,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC7B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC3B,CAAC;QAED,IAAI,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YACnC,IAAI,CAAC,aAAa,IAAI,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC;YACrD,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;QACjC,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAC7C,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAChE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;IACpD,CAAC;IAED,YAAY;QACV,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;IACrC,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "truckcord-client",
3
- "version": "1.0.13",
3
+ "version": "1.0.16",
4
4
  "description": "ETS2/ATS telemetry client for TruckCord Discord integration",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",