@tmlmobilidade/external 20260626.1034.45 → 20260627.41.35

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,7 +1,6 @@
1
1
  /* * */
2
2
  import https from 'node:https';
3
3
  import { mlAuthClient } from './auth.js';
4
- import { DESTINATION_MAP } from './types.js';
5
4
  /* * */
6
5
  const BASE_URL = process.env.ML_API_URL;
7
6
  const ALERTS_URL = process.env.ML_ALERTS_URL;
@@ -125,57 +124,56 @@ export const MlClient = Object.freeze({
125
124
  */
126
125
  tripUpdates: async () => {
127
126
  const now = Date.now();
128
- const lines = ['Amarela', 'Azul', 'Verde', 'Vermelha'];
127
+ // const lines = ['Amarela', 'Azul', 'Verde', 'Vermelha'];
129
128
  const entities = [];
130
- for (const line of lines) {
131
- const data = await fetcher(endpoints.tempoEsperaLinha(line));
132
- const trainStops = new Map();
133
- for (const [index, item] of data.resposta.entries()) {
134
- const trains = [
135
- { comboio: item.comboio, tempo: item.tempoChegada1 },
136
- { comboio: item.comboio2, tempo: item.tempoChegada2 },
137
- { comboio: item.comboio3, tempo: item.tempoChegada3 },
138
- ];
139
- for (const train of trains) {
140
- if (!train.comboio || train.tempo === '--')
141
- continue;
142
- const arrivalSeconds = Number.parseInt(train.tempo, 10);
143
- if (!trainStops.has(train.comboio)) {
144
- trainStops.set(train.comboio, { destination: item.destino, stops: [] });
145
- }
146
- trainStops.get(train.comboio).stops.push({
147
- arrival_seconds: arrivalSeconds,
148
- stop_id: item.stop_id,
149
- stop_sequence: index,
150
- });
151
- }
152
- }
153
- entities.push(...Array.from(trainStops.entries()).map(([key, value]) => {
154
- const sortedStops = value.stops.sort((a, b) => a.stop_sequence - b.stop_sequence);
155
- return {
156
- id: `${line}_${key}_${DESTINATION_MAP[value.destination].code}`,
157
- trip_update: {
158
- stop_time_update: sortedStops.map(stop => ({
159
- arrival: {
160
- time: now + stop.arrival_seconds * 1000,
161
- },
162
- stop_id: stop.stop_id,
163
- stop_sequence: stop.stop_sequence,
164
- })),
165
- timestamp: now,
166
- trip: {
167
- line_id: line,
168
- line_short_name: `${line}_${DESTINATION_MAP[value.destination].code}`,
169
- trip_headsign: DESTINATION_MAP[value.destination].name,
170
- trip_id: `${line}_${key}_${value.destination}`,
171
- },
172
- vehicle: {
173
- id: key,
174
- },
175
- },
176
- };
177
- }));
178
- }
129
+ // for (const line of lines) {
130
+ // // const data = await fetcher<BaseResponse<TempoEsperaRawItem[]>>(endpoints.tempoEsperaLinha(line));
131
+ // // const trainStops = new Map<string, { destination: string, stops: Array<{ arrival_seconds: number, stop_id: string, stop_sequence: number }> }>();
132
+ // // for (const [index, item] of data.resposta.entries()) {
133
+ // // const trains = [
134
+ // // { comboio: item.comboio, tempo: item.tempoChegada1 },
135
+ // // { comboio: item.comboio2, tempo: item.tempoChegada2 },
136
+ // // { comboio: item.comboio3, tempo: item.tempoChegada3 },
137
+ // // ];
138
+ // // for (const train of trains) {
139
+ // // if (!train.comboio || train.tempo === '--') continue;
140
+ // // const arrivalSeconds = Number.parseInt(train.tempo, 10);
141
+ // // if (!trainStops.has(train.comboio)) {
142
+ // // trainStops.set(train.comboio, { destination: item.destino, stops: [] });
143
+ // // }
144
+ // // // trainStops.get(train.comboio)!.stops.push({
145
+ // // // arrival_seconds: arrivalSeconds,
146
+ // // // stop_id: item.stop_id,
147
+ // // // stop_sequence: index,
148
+ // // // });
149
+ // // }
150
+ // // }
151
+ // // entities.push(...Array.from(trainStops.entries()).map(([key, value]) => {
152
+ // // const sortedStops = value.stops.sort((a, b) => a.stop_sequence - b.stop_sequence);
153
+ // // return {
154
+ // // id: `${line}_${key}_${DESTINATION_MAP[value.destination].code}`,
155
+ // // trip_update: {
156
+ // // stop_time_update: sortedStops.map(stop => ({
157
+ // // arrival: {
158
+ // // time: now + stop.arrival_seconds * 1000,
159
+ // // },
160
+ // // stop_id: stop.stop_id,
161
+ // // stop_sequence: stop.stop_sequence,
162
+ // // })),
163
+ // // timestamp: now,
164
+ // // trip: {
165
+ // // line_id: line,
166
+ // // line_short_name: `${line}_${DESTINATION_MAP[value.destination].code}`,
167
+ // // trip_headsign: DESTINATION_MAP[value.destination].name,
168
+ // // trip_id: `${line}_${key}_${value.destination}`,
169
+ // // },
170
+ // // vehicle: {
171
+ // // id: key,
172
+ // // },
173
+ // // },
174
+ // // };
175
+ // // }));
176
+ // }
179
177
  return {
180
178
  entity: entities,
181
179
  header: {
package/dist/index.d.ts CHANGED
@@ -16,23 +16,23 @@
16
16
  */
17
17
  export declare const externalClients: Readonly<{
18
18
  ccfl: Readonly<{
19
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
19
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
20
20
  schedule: () => Promise<Buffer>;
21
21
  }>;
22
22
  cp: Readonly<{
23
23
  schedule: () => Promise<Buffer>;
24
- tripUpdates: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
25
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
24
+ tripUpdates: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
25
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
26
26
  }>;
27
27
  crtmAisa: Readonly<{
28
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
29
- tripUpdates: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
28
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
29
+ tripUpdates: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
30
30
  schedule: () => Promise<Buffer>;
31
31
  }>;
32
32
  crtmLaVeloz: Readonly<{
33
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
34
- tripUpdates: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
35
- serviceAlerts: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
33
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
34
+ tripUpdates: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
35
+ serviceAlerts: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
36
36
  }>;
37
37
  fertagus: Readonly<{
38
38
  trains: () => Promise<import("./clients/fertagus/types.js").TrainsResponse>;
@@ -46,16 +46,16 @@ export declare const externalClients: Readonly<{
46
46
  tempoEsperaEstacao: (estacao: string) => Promise<import("./clients/ml/types.js").BaseResponse<import("./clients/ml/types.js").TempoEsperaRawItem[]>>;
47
47
  tempoEsperaLinha: (linha: string) => Promise<import("./clients/ml/types.js").BaseResponse<import("./clients/ml/types.js").TempoEsperaRawItem[]>>;
48
48
  tempoEsperaTodasEstacoes: () => Promise<import("./clients/ml/types.js").BaseResponse<import("./clients/ml/types.js").TempoEsperaRawItem[]>>;
49
- tripUpdates: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
49
+ tripUpdates: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
50
50
  }>;
51
51
  mobi: Readonly<{
52
- tripUpdates: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
53
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
52
+ tripUpdates: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
53
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
54
54
  }>;
55
55
  tcb: Readonly<{
56
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
56
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
57
57
  }>;
58
58
  ttsl: Readonly<{
59
- vehiclePositions: () => Promise<import("@tmlmobilidade/types").GtfsRtFeedMessage>;
59
+ vehiclePositions: () => Promise<import("@tmlmobilidade/go-types-gtfs-rt").GtfsRtFeedMessage>;
60
60
  }>;
61
61
  }>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tmlmobilidade/external",
3
- "version": "20260626.1034.45",
3
+ "version": "20260627.41.35",
4
4
  "author": {
5
5
  "email": "iso@tmlmobilidade.pt",
6
6
  "name": "TML-ISO"
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "devDependencies": {
46
46
  "@tmlmobilidade/tsconfig": "*",
47
- "@types/node": "26.0.0",
47
+ "@types/node": "26.0.1",
48
48
  "resolve-tspaths": "0.8.23",
49
49
  "tsc-watch": "7.2.0",
50
50
  "typescript": "6.0.3"