@cyanheads/wsdot-mcp-server 0.3.0 → 0.4.0
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.
- package/AGENTS.md +1 -1
- package/CLAUDE.md +1 -1
- package/README.md +15 -11
- package/changelog/0.4.x/0.4.0.md +26 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-routes.tool.d.ts +9 -2
- package/dist/mcp-server/tools/definitions/get-ferry-routes.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-routes.tool.js +40 -5
- package/dist/mcp-server/tools/definitions/get-ferry-routes.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-schedule.tool.d.ts +10 -3
- package/dist/mcp-server/tools/definitions/get-ferry-schedule.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-schedule.tool.js +89 -19
- package/dist/mcp-server/tools/definitions/get-ferry-schedule.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-terminals.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-ferry-terminals.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-ferry-terminals.tool.js +12 -5
- package/dist/mcp-server/tools/definitions/get-ferry-terminals.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-mountain-passes.tool.d.ts +2 -2
- package/dist/mcp-server/tools/definitions/get-mountain-passes.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-mountain-passes.tool.js +9 -4
- package/dist/mcp-server/tools/definitions/get-mountain-passes.tool.js.map +1 -1
- package/dist/services/ferry/ferry-service.d.ts +20 -0
- package/dist/services/ferry/ferry-service.d.ts.map +1 -1
- package/dist/services/ferry/ferry-service.js +186 -49
- package/dist/services/ferry/ferry-service.js.map +1 -1
- package/dist/services/ferry/types.d.ts +52 -4
- package/dist/services/ferry/types.d.ts.map +1 -1
- package/dist/services/text-field.d.ts +31 -0
- package/dist/services/text-field.d.ts.map +1 -0
- package/dist/services/text-field.js +41 -0
- package/dist/services/text-field.js.map +1 -0
- package/dist/services/traffic/traffic-service.d.ts.map +1 -1
- package/dist/services/traffic/traffic-service.js +66 -86
- package/dist/services/traffic/traffic-service.js.map +1 -1
- package/dist/services/traffic/types.d.ts +3 -3
- package/dist/services/traffic/types.d.ts.map +1 -1
- package/dist/services/wcf-date.d.ts +6 -4
- package/dist/services/wcf-date.d.ts.map +1 -1
- package/dist/services/wcf-date.js +8 -4
- package/dist/services/wcf-date.js.map +1 -1
- package/package.json +1 -1
- package/server.json +3 -3
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
* @fileoverview Domain types for the WSF (Washington State Ferries) API.
|
|
3
3
|
* @module services/ferry/types
|
|
4
4
|
*/
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* Raw ferry terminal from `Terminals/rest/terminallocations`. The address, directions, and map-link
|
|
7
|
+
* fields that endpoint also sends are not read.
|
|
8
|
+
*/
|
|
6
9
|
export interface RawFerryTerminal {
|
|
7
10
|
Latitude?: number | null;
|
|
8
11
|
Longitude?: number | null;
|
|
@@ -10,13 +13,13 @@ export interface RawFerryTerminal {
|
|
|
10
13
|
TerminalID?: number | null;
|
|
11
14
|
TerminalName?: string | null;
|
|
12
15
|
}
|
|
13
|
-
/** Normalized ferry terminal. */
|
|
16
|
+
/** Normalized ferry terminal. Identity is optional too — never fabricated when absent. */
|
|
14
17
|
export interface FerryTerminal {
|
|
15
18
|
latitude?: number;
|
|
16
19
|
longitude?: number;
|
|
17
20
|
terminalAbbrev?: string;
|
|
18
|
-
terminalId
|
|
19
|
-
terminalName
|
|
21
|
+
terminalId?: number;
|
|
22
|
+
terminalName?: string;
|
|
20
23
|
}
|
|
21
24
|
/** Raw ferry route from upstream API. */
|
|
22
25
|
export interface RawFerryRoute {
|
|
@@ -29,6 +32,28 @@ export interface FerryRoute {
|
|
|
29
32
|
description?: string;
|
|
30
33
|
routeAbbrev?: string;
|
|
31
34
|
routeId?: number;
|
|
35
|
+
/**
|
|
36
|
+
* Directed terminal pairs the route serves on the trip date — `[]` when it serves none. Absent
|
|
37
|
+
* only when upstream omitted the route's ID, which the lookup is keyed by.
|
|
38
|
+
*/
|
|
39
|
+
terminalPairs?: TerminalPair[];
|
|
40
|
+
}
|
|
41
|
+
/** Raw pair from `Schedule/rest/terminalsandmatesbyroute/{TripDate}/{RouteID}`. */
|
|
42
|
+
export interface RawTerminalPair {
|
|
43
|
+
ArrivingDescription?: string | null;
|
|
44
|
+
ArrivingTerminalID?: number | null;
|
|
45
|
+
DepartingDescription?: string | null;
|
|
46
|
+
DepartingTerminalID?: number | null;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* A directed departing → arriving terminal pair with service on a trip date. Both IDs are required:
|
|
50
|
+
* a pair is listed so it can be passed to the schedule tool, and one missing an ID cannot be.
|
|
51
|
+
*/
|
|
52
|
+
export interface TerminalPair {
|
|
53
|
+
arrivingTerminalId: number;
|
|
54
|
+
arrivingTerminalName?: string;
|
|
55
|
+
departingTerminalId: number;
|
|
56
|
+
departingTerminalName?: string;
|
|
32
57
|
}
|
|
33
58
|
/**
|
|
34
59
|
* Raw sailing in a schedule response. Neither schedule endpoint carries a cancellation flag —
|
|
@@ -37,19 +62,31 @@ export interface FerryRoute {
|
|
|
37
62
|
* terminal sailing-space feed's `IsCancelled`.
|
|
38
63
|
*/
|
|
39
64
|
export interface RawSailing {
|
|
65
|
+
/** Positions in the combo's `Annotations` of the notes that apply to this sailing. */
|
|
66
|
+
AnnotationIndexes?: number[] | null;
|
|
40
67
|
/** Actual API field name (was ArrivalTime in older API). */
|
|
41
68
|
ArrivingTime?: string | null;
|
|
42
69
|
/** Actual API field name (was DepartureTime in older API). */
|
|
43
70
|
DepartingTime?: string | null;
|
|
71
|
+
/**
|
|
72
|
+
* Undocumented loading-rule code. Observed: 3 on nearly every sailing, 1 only on sailings whose
|
|
73
|
+
* annotation restricts vehicles. Carried as the number WSF sends — no meaning is asserted.
|
|
74
|
+
*/
|
|
75
|
+
LoadingRule?: number | null;
|
|
76
|
+
VesselHandicapAccessible?: boolean | null;
|
|
44
77
|
VesselID?: number | null;
|
|
45
78
|
VesselName?: string | null;
|
|
46
79
|
}
|
|
47
80
|
/** Terminal combo entry within a schedule response. */
|
|
48
81
|
export interface RawTerminalCombo {
|
|
82
|
+
/** Notes sailings reference by position. Authored as HTML (`<a href>`, `<i>`). */
|
|
83
|
+
Annotations?: string[] | null;
|
|
49
84
|
ArrivingTerminalID?: number | null;
|
|
50
85
|
ArrivingTerminalName?: string | null;
|
|
51
86
|
DepartingTerminalID?: number | null;
|
|
52
87
|
DepartingTerminalName?: string | null;
|
|
88
|
+
/** A note covering the whole pair, authored as HTML; `""` on almost every pair. */
|
|
89
|
+
SailingNotes?: string | null;
|
|
53
90
|
Times?: RawSailing[] | null;
|
|
54
91
|
}
|
|
55
92
|
/** Raw ferry schedule response — times are nested under TerminalCombos[0].Times. */
|
|
@@ -60,14 +97,25 @@ export interface RawFerrySchedule {
|
|
|
60
97
|
}
|
|
61
98
|
/** Normalized sailing. */
|
|
62
99
|
export interface Sailing {
|
|
100
|
+
/** Positions in the schedule's `annotations`; each one resolves to an entry. */
|
|
101
|
+
annotationIndexes?: number[];
|
|
63
102
|
arrivalTime?: string;
|
|
64
103
|
departureTime?: string;
|
|
104
|
+
loadingRule?: number;
|
|
105
|
+
vesselHandicapAccessible?: boolean;
|
|
106
|
+
vesselId?: number;
|
|
65
107
|
vesselName?: string;
|
|
66
108
|
}
|
|
67
109
|
/** Normalized ferry schedule. */
|
|
68
110
|
export interface FerrySchedule {
|
|
111
|
+
/** The pair's notes as plain text, blank ones removed; sailings point at them by position. */
|
|
112
|
+
annotations?: string[];
|
|
69
113
|
arrivingTerminalName?: string;
|
|
70
114
|
departingTerminalName?: string;
|
|
115
|
+
/** Whether only today's remaining sailings were requested upstream — false for any other date. */
|
|
116
|
+
remainingOnly: boolean;
|
|
117
|
+
/** The pair-wide note as plain text. */
|
|
118
|
+
sailingNotes?: string;
|
|
71
119
|
sailings: Sailing[];
|
|
72
120
|
tripDate: string;
|
|
73
121
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/ferry/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/ferry/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview The one rule every optional upstream string follows at the service boundary: a
|
|
3
|
+
* blank or whitespace-only value is absent, a populated one is kept with its ends trimmed. WSDOT and
|
|
4
|
+
* WSF ship `""` where they have nothing to say (a pass's `WeatherCondition`, most alerts'
|
|
5
|
+
* `ExtendedDescription`) and pad some names (`"Coupeville "`). Normalizing here keeps
|
|
6
|
+
* `structuredContent` and `format()` — which gates on truthiness — carrying the same fields, and
|
|
7
|
+
* matches how the tools treat a blank optional filter input.
|
|
8
|
+
* @module services/text-field
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* The upstream string with its ends trimmed, or `undefined` when it is absent, empty, or only
|
|
12
|
+
* whitespace (JS `trim()` covers tabs, line breaks, and NBSP). Internal whitespace is kept.
|
|
13
|
+
*/
|
|
14
|
+
export declare function nonBlank(value: string | null | undefined): string | undefined;
|
|
15
|
+
/**
|
|
16
|
+
* Spread-ready string field: `{ [key]: trimmed }`, or `{}` when the value is blank, so the field
|
|
17
|
+
* is omitted from the normalized object.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* return { ...textField('weatherCondition', p.WeatherCondition) };
|
|
21
|
+
*/
|
|
22
|
+
export declare function textField<K extends string>(key: K, raw: string | null | undefined): Record<K, string> | Record<string, never>;
|
|
23
|
+
/**
|
|
24
|
+
* {@link nonBlank} for a value authored in a rich-text editor: the markup is rendered to plain text
|
|
25
|
+
* first, so a value that held only markup or entity whitespace (`<p></p>`, ` `) is absent
|
|
26
|
+
* along with a blank one. For list elements; a single field uses {@link htmlTextField}.
|
|
27
|
+
*/
|
|
28
|
+
export declare function nonBlankHtml(value: string | null | undefined): string | undefined;
|
|
29
|
+
/** {@link textField} for a field authored in a rich-text editor — see {@link nonBlankHtml}. */
|
|
30
|
+
export declare function htmlTextField<K extends string>(key: K, raw: string | null | undefined): Record<K, string> | Record<string, never>;
|
|
31
|
+
//# sourceMappingURL=text-field.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-field.d.ts","sourceRoot":"","sources":["../../src/services/text-field.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAE7E;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EACxC,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAG3C;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAEjF;AAED,+FAA+F;AAC/F,wBAAgB,aAAa,CAAC,CAAC,SAAS,MAAM,EAC5C,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAE3C"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview The one rule every optional upstream string follows at the service boundary: a
|
|
3
|
+
* blank or whitespace-only value is absent, a populated one is kept with its ends trimmed. WSDOT and
|
|
4
|
+
* WSF ship `""` where they have nothing to say (a pass's `WeatherCondition`, most alerts'
|
|
5
|
+
* `ExtendedDescription`) and pad some names (`"Coupeville "`). Normalizing here keeps
|
|
6
|
+
* `structuredContent` and `format()` — which gates on truthiness — carrying the same fields, and
|
|
7
|
+
* matches how the tools treat a blank optional filter input.
|
|
8
|
+
* @module services/text-field
|
|
9
|
+
*/
|
|
10
|
+
import { htmlToText } from './html-text.js';
|
|
11
|
+
/**
|
|
12
|
+
* The upstream string with its ends trimmed, or `undefined` when it is absent, empty, or only
|
|
13
|
+
* whitespace (JS `trim()` covers tabs, line breaks, and NBSP). Internal whitespace is kept.
|
|
14
|
+
*/
|
|
15
|
+
export function nonBlank(value) {
|
|
16
|
+
return value?.trim() || undefined;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Spread-ready string field: `{ [key]: trimmed }`, or `{}` when the value is blank, so the field
|
|
20
|
+
* is omitted from the normalized object.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* return { ...textField('weatherCondition', p.WeatherCondition) };
|
|
24
|
+
*/
|
|
25
|
+
export function textField(key, raw) {
|
|
26
|
+
const text = nonBlank(raw);
|
|
27
|
+
return text == null ? {} : { [key]: text };
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* {@link nonBlank} for a value authored in a rich-text editor: the markup is rendered to plain text
|
|
31
|
+
* first, so a value that held only markup or entity whitespace (`<p></p>`, ` `) is absent
|
|
32
|
+
* along with a blank one. For list elements; a single field uses {@link htmlTextField}.
|
|
33
|
+
*/
|
|
34
|
+
export function nonBlankHtml(value) {
|
|
35
|
+
return nonBlank(value == null ? value : htmlToText(value));
|
|
36
|
+
}
|
|
37
|
+
/** {@link textField} for a field authored in a rich-text editor — see {@link nonBlankHtml}. */
|
|
38
|
+
export function htmlTextField(key, raw) {
|
|
39
|
+
return textField(key, nonBlankHtml(raw));
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=text-field.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-field.js","sourceRoot":"","sources":["../../src/services/text-field.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAgC;IACvD,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CACvB,GAAM,EACN,GAA8B;IAE9B,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC3B,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAE,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAwB,CAAC;AACpE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAgC;IAC3D,OAAO,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,aAAa,CAC3B,GAAM,EACN,GAA8B;IAE9B,OAAO,SAAS,CAAC,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traffic-service.d.ts","sourceRoot":"","sources":["../../../src/services/traffic/traffic-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAOrE,OAAO,KAAK,EACV,cAAc,EACd,MAAM,EACN,YAAY,EACZ,YAAY,
|
|
1
|
+
{"version":3,"file":"traffic-service.d.ts","sourceRoot":"","sources":["../../../src/services/traffic/traffic-service.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAOrE,OAAO,KAAK,EACV,cAAc,EACd,MAAM,EACN,YAAY,EACZ,YAAY,EAUZ,QAAQ,EAER,UAAU,EACX,MAAM,YAAY,CAAC;AAMpB,+EAA+E;AAC/E,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,iFAAiF;AACjF,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,iBAAiB;IAC5B,YAAY,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAI;IAE5D,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,SAAS;IAoBX,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CA4B7D;IAEK,YAAY,CAAC,MAAM,EAAE,iBAAiB,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAyCnF;IAEK,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CA6BxD;IAEK,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAsBpD;IAEK,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CA4BhE;IAEK,aAAa,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CA4B/E;CACF;AAqGD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI,CAEtF;AAED,wBAAgB,oBAAoB,IAAI,iBAAiB,CAKxD"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { withRetry } from '@cyanheads/mcp-ts-core/utils';
|
|
7
7
|
import { getServerConfig } from '../../config/server-config.js';
|
|
8
|
-
import {
|
|
8
|
+
import { htmlTextField, textField } from '../text-field.js';
|
|
9
9
|
import { wcfDateField } from '../wcf-date.js';
|
|
10
10
|
import { assertUpstreamJson, fetchUpstream, redactUrl } from '../wsdot-http.js';
|
|
11
11
|
import { routeMatches } from './route-match.js';
|
|
@@ -36,46 +36,28 @@ export class TrafficApiService {
|
|
|
36
36
|
async getMountainPasses(ctx) {
|
|
37
37
|
ctx.log.info('Fetching mountain pass conditions');
|
|
38
38
|
const passes = await this.fetchJson('MountainPassConditions/MountainPassConditionsREST.svc/GetMountainPassConditionsAsJson', ctx);
|
|
39
|
-
return passes.map((p) =>
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
}
|
|
62
|
-
: {}),
|
|
63
|
-
...(p.RestrictionTwo?.RestrictionText || p.RestrictionTwo?.TravelDirection
|
|
64
|
-
? {
|
|
65
|
-
restrictionTwo: {
|
|
66
|
-
...(p.RestrictionTwo.RestrictionText != null && {
|
|
67
|
-
text: p.RestrictionTwo.RestrictionText,
|
|
68
|
-
}),
|
|
69
|
-
...(p.RestrictionTwo.TravelDirection != null && {
|
|
70
|
-
travelDirection: p.RestrictionTwo.TravelDirection,
|
|
71
|
-
}),
|
|
72
|
-
},
|
|
73
|
-
}
|
|
74
|
-
: {}),
|
|
75
|
-
...wcfDateField('dateUpdated', p.DateUpdated),
|
|
76
|
-
...(p.Latitude != null && { latitude: p.Latitude }),
|
|
77
|
-
...(p.Longitude != null && { longitude: p.Longitude }),
|
|
78
|
-
}));
|
|
39
|
+
return passes.map((p) => {
|
|
40
|
+
const restrictionOne = normalizeRestriction(p.RestrictionOne);
|
|
41
|
+
const restrictionTwo = normalizeRestriction(p.RestrictionTwo);
|
|
42
|
+
return {
|
|
43
|
+
...(p.MountainPassId != null && { mountainPassId: p.MountainPassId }),
|
|
44
|
+
...textField('mountainPassName', p.MountainPassName),
|
|
45
|
+
...(p.ElevationInFeet != null && { elevation: p.ElevationInFeet }),
|
|
46
|
+
...(p.TemperatureInFahrenheit != null && {
|
|
47
|
+
temperatureInFahrenheit: p.TemperatureInFahrenheit,
|
|
48
|
+
}),
|
|
49
|
+
...textField('weatherCondition', p.WeatherCondition),
|
|
50
|
+
...textField('roadCondition', p.RoadCondition),
|
|
51
|
+
...(typeof p.TravelAdvisoryActive === 'boolean' && {
|
|
52
|
+
travelAdvisoryActive: p.TravelAdvisoryActive,
|
|
53
|
+
}),
|
|
54
|
+
...(restrictionOne && { restrictionOne }),
|
|
55
|
+
...(restrictionTwo && { restrictionTwo }),
|
|
56
|
+
...wcfDateField('dateUpdated', p.DateUpdated),
|
|
57
|
+
...(p.Latitude != null && { latitude: p.Latitude }),
|
|
58
|
+
...(p.Longitude != null && { longitude: p.Longitude }),
|
|
59
|
+
};
|
|
60
|
+
});
|
|
79
61
|
}
|
|
80
62
|
async searchAlerts(params, ctx) {
|
|
81
63
|
const result = await this.fetchJson('HighwayAlerts/HighwayAlertsREST.svc/GetAlertsAsJson', ctx);
|
|
@@ -115,23 +97,23 @@ export class TrafficApiService {
|
|
|
115
97
|
const times = await this.fetchJson('TravelTimes/TravelTimesREST.svc/GetTravelTimesAsJson', ctx);
|
|
116
98
|
return times.map((t) => ({
|
|
117
99
|
...(t.TravelTimeID != null && { travelTimeId: t.TravelTimeID }),
|
|
118
|
-
...(
|
|
119
|
-
...(
|
|
100
|
+
...textField('name', t.Name),
|
|
101
|
+
...textField('description', t.Description),
|
|
120
102
|
...(isMeasuredDuration(t.CurrentTime, t.Distance) && { currentTimeInMinutes: t.CurrentTime }),
|
|
121
103
|
...(isMeasuredDuration(t.AverageTime, t.Distance) && { averageTimeInMinutes: t.AverageTime }),
|
|
122
104
|
...wcfDateField('timeUpdated', t.TimeUpdated),
|
|
123
105
|
...(t.Distance != null && { distanceInMiles: t.Distance }),
|
|
124
106
|
...(t.StartPoint != null && {
|
|
125
107
|
startPoint: {
|
|
126
|
-
...(
|
|
127
|
-
...(
|
|
108
|
+
...textField('roadName', t.StartPoint.RoadName),
|
|
109
|
+
...textField('direction', t.StartPoint.Direction),
|
|
128
110
|
...(t.StartPoint.MilePost != null && { milePost: t.StartPoint.MilePost }),
|
|
129
111
|
},
|
|
130
112
|
}),
|
|
131
113
|
...(t.EndPoint != null && {
|
|
132
114
|
endPoint: {
|
|
133
|
-
...(
|
|
134
|
-
...(
|
|
115
|
+
...textField('roadName', t.EndPoint.RoadName),
|
|
116
|
+
...textField('direction', t.EndPoint.Direction),
|
|
135
117
|
...(t.EndPoint.MilePost != null && { milePost: t.EndPoint.MilePost }),
|
|
136
118
|
},
|
|
137
119
|
}),
|
|
@@ -141,15 +123,15 @@ export class TrafficApiService {
|
|
|
141
123
|
ctx.log.info('Fetching toll rates');
|
|
142
124
|
const rates = await this.fetchJson('TollRates/TollRatesREST.svc/GetTollRatesAsJson', ctx);
|
|
143
125
|
return rates.map((r) => ({
|
|
144
|
-
...(
|
|
145
|
-
...(
|
|
146
|
-
...(
|
|
126
|
+
...textField('tripName', r.TripName),
|
|
127
|
+
...textField('stateRoute', r.StateRoute),
|
|
128
|
+
...textField('travelDirection', r.TravelDirection),
|
|
147
129
|
...(r.StartMilepost != null && { startMilepost: r.StartMilepost }),
|
|
148
130
|
...(r.EndMilepost != null && { endMilepost: r.EndMilepost }),
|
|
149
131
|
...(r.CurrentToll != null && { tollRateInDollars: r.CurrentToll / 100 }),
|
|
150
|
-
...(
|
|
151
|
-
...(
|
|
152
|
-
...(
|
|
132
|
+
...textField('message', r.CurrentMessage),
|
|
133
|
+
...textField('startLocationName', r.StartLocationName),
|
|
134
|
+
...textField('endLocationName', r.EndLocationName),
|
|
153
135
|
...(r.StartLatitude != null && { startLatitude: r.StartLatitude }),
|
|
154
136
|
...(r.StartLongitude != null && { startLongitude: r.StartLongitude }),
|
|
155
137
|
...(r.EndLatitude != null && { endLatitude: r.EndLatitude }),
|
|
@@ -161,21 +143,15 @@ export class TrafficApiService {
|
|
|
161
143
|
ctx.log.info('Fetching border crossings');
|
|
162
144
|
const crossings = await this.fetchJson('BorderCrossings/BorderCrossingsREST.svc/GetBorderCrossingsAsJson', ctx);
|
|
163
145
|
return crossings.map((c) => ({
|
|
164
|
-
...(
|
|
146
|
+
...textField('crossingName', c.CrossingName),
|
|
165
147
|
// WSDOT emits -1 when a crossing has no current reading — drop it rather than surface a bogus wait.
|
|
166
148
|
...(c.WaitTime != null && c.WaitTime >= 0 && { waitTimeInMinutes: c.WaitTime }),
|
|
167
149
|
...wcfDateField('updateTime', c.Time),
|
|
168
150
|
...(c.BorderCrossingLocation != null && {
|
|
169
151
|
location: {
|
|
170
|
-
...(c.BorderCrossingLocation.Description
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
...(c.BorderCrossingLocation.RoadName != null && {
|
|
174
|
-
roadName: c.BorderCrossingLocation.RoadName,
|
|
175
|
-
}),
|
|
176
|
-
...(c.BorderCrossingLocation.Direction != null && {
|
|
177
|
-
direction: c.BorderCrossingLocation.Direction,
|
|
178
|
-
}),
|
|
152
|
+
...textField('description', c.BorderCrossingLocation.Description),
|
|
153
|
+
...textField('roadName', c.BorderCrossingLocation.RoadName),
|
|
154
|
+
...textField('direction', c.BorderCrossingLocation.Direction),
|
|
179
155
|
...(c.BorderCrossingLocation.MilePost != null && {
|
|
180
156
|
milePost: c.BorderCrossingLocation.MilePost,
|
|
181
157
|
}),
|
|
@@ -236,37 +212,41 @@ function isMeasuredDuration(minutes, distanceInMiles) {
|
|
|
236
212
|
function normalizeRoadwayLocation(loc) {
|
|
237
213
|
const unpopulated = loc.MilePost === 0 && loc.Latitude === 0 && loc.Longitude === 0;
|
|
238
214
|
return {
|
|
239
|
-
...(
|
|
240
|
-
...(
|
|
215
|
+
...textField('roadName', loc.RoadName),
|
|
216
|
+
...textField('direction', loc.Direction),
|
|
241
217
|
...(!unpopulated && loc.MilePost != null && { milePost: loc.MilePost }),
|
|
242
218
|
...(!unpopulated && loc.Latitude != null && { latitude: loc.Latitude }),
|
|
243
219
|
...(!unpopulated && loc.Longitude != null && { longitude: loc.Longitude }),
|
|
244
220
|
};
|
|
245
221
|
}
|
|
222
|
+
/**
|
|
223
|
+
* A pass restriction, or `undefined` when neither its text nor its direction carries a value —
|
|
224
|
+
* the gate reads the normalized strings, so a whitespace-only pair leaves no empty object behind.
|
|
225
|
+
*/
|
|
226
|
+
function normalizeRestriction(raw) {
|
|
227
|
+
const restriction = {
|
|
228
|
+
...textField('text', raw?.RestrictionText),
|
|
229
|
+
...textField('travelDirection', raw?.TravelDirection),
|
|
230
|
+
};
|
|
231
|
+
return Object.keys(restriction).length > 0 ? restriction : undefined;
|
|
232
|
+
}
|
|
246
233
|
/**
|
|
247
234
|
* WSDOT authors alert descriptions in a rich-text editor and ships the markup through — a
|
|
248
235
|
* "read the advisory" link arrives as a raw `<a href=…>` anchor. Both descriptions are rendered
|
|
249
236
|
* to plain text here, before either response path reads them, so `structuredContent` and the
|
|
250
237
|
* `format()` markdown carry the same normalized string. A description that held nothing but
|
|
251
|
-
* markup
|
|
238
|
+
* markup or whitespace is dropped rather than surfaced as a blank field.
|
|
252
239
|
*/
|
|
253
|
-
function alertDescription(raw) {
|
|
254
|
-
if (raw == null)
|
|
255
|
-
return;
|
|
256
|
-
return htmlToText(raw) || undefined;
|
|
257
|
-
}
|
|
258
240
|
function normalizeAlert(a) {
|
|
259
|
-
const headline = alertDescription(a.HeadlineDescription);
|
|
260
|
-
const extended = alertDescription(a.ExtendedDescription);
|
|
261
241
|
return {
|
|
262
242
|
...(a.AlertID != null && { alertId: a.AlertID }),
|
|
263
|
-
...(
|
|
264
|
-
...(
|
|
265
|
-
...(
|
|
266
|
-
...(
|
|
267
|
-
...(
|
|
268
|
-
...(
|
|
269
|
-
...(
|
|
243
|
+
...htmlTextField('headlineDescription', a.HeadlineDescription),
|
|
244
|
+
...htmlTextField('extendedDescription', a.ExtendedDescription),
|
|
245
|
+
...textField('eventCategory', a.EventCategory),
|
|
246
|
+
...textField('eventStatus', a.EventStatus),
|
|
247
|
+
...textField('priority', a.Priority),
|
|
248
|
+
...textField('region', a.Region),
|
|
249
|
+
...textField('county', a.County),
|
|
270
250
|
...(a.StartRoadwayLocation != null && {
|
|
271
251
|
startRoadwayLocation: normalizeRoadwayLocation(a.StartRoadwayLocation),
|
|
272
252
|
}),
|
|
@@ -282,15 +262,15 @@ function normalizeCamera(c) {
|
|
|
282
262
|
const loc = c.CameraLocation;
|
|
283
263
|
return {
|
|
284
264
|
...(c.CameraID != null && { cameraId: c.CameraID }),
|
|
285
|
-
...(
|
|
286
|
-
...(
|
|
287
|
-
...(
|
|
265
|
+
...textField('title', c.Title),
|
|
266
|
+
...textField('description', c.Description),
|
|
267
|
+
...textField('imageUrl', c.ImageURL),
|
|
288
268
|
...(c.ImageWidth != null && { imageWidth: c.ImageWidth }),
|
|
289
269
|
...(c.ImageHeight != null && { imageHeight: c.ImageHeight }),
|
|
290
|
-
...(
|
|
291
|
-
...(
|
|
270
|
+
...textField('roadName', loc?.RoadName),
|
|
271
|
+
...textField('direction', loc?.Direction),
|
|
292
272
|
...(loc?.MilePost != null && { milePost: loc.MilePost }),
|
|
293
|
-
...(
|
|
273
|
+
...textField('region', c.Region),
|
|
294
274
|
...(loc?.Latitude != null && { latitude: loc.Latitude }),
|
|
295
275
|
...(loc?.Longitude != null && { longitude: loc.Longitude }),
|
|
296
276
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traffic-service.js","sourceRoot":"","sources":["../../../src/services/traffic/traffic-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"traffic-service.js","sourceRoot":"","sources":["../../../src/services/traffic/traffic-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,14 +28,14 @@ export interface TravelRestriction {
|
|
|
28
28
|
text?: string;
|
|
29
29
|
travelDirection?: string;
|
|
30
30
|
}
|
|
31
|
-
/** Normalized mountain pass condition. */
|
|
31
|
+
/** Normalized mountain pass condition. Identity is optional too — never fabricated when absent. */
|
|
32
32
|
export interface MountainPass {
|
|
33
33
|
dateUpdated?: string;
|
|
34
34
|
elevation?: number;
|
|
35
35
|
latitude?: number;
|
|
36
36
|
longitude?: number;
|
|
37
|
-
mountainPassId
|
|
38
|
-
mountainPassName
|
|
37
|
+
mountainPassId?: number;
|
|
38
|
+
mountainPassName?: string;
|
|
39
39
|
restrictionOne?: TravelRestriction;
|
|
40
40
|
restrictionTwo?: TravelRestriction;
|
|
41
41
|
roadCondition?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/traffic/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,4EAA4E;AAC5E,MAAM,WAAW,oBAAoB;IACnC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,qDAAqD;AACrD,MAAM,WAAW,eAAe;IAC9B,iFAAiF;IACjF,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,cAAc,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7C,cAAc,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7C,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,oBAAoB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACtC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED,kEAAkE;AAClE,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/traffic/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,16 +7,18 @@
|
|
|
7
7
|
/**
|
|
8
8
|
* Decode a WCF JSON date string (`/Date(ms±offset)/`) to an ISO 8601 UTC string.
|
|
9
9
|
*
|
|
10
|
-
* - `null` / `undefined
|
|
11
|
-
*
|
|
10
|
+
* - `null` / `undefined`, or a blank or whitespace-only string → `undefined` (the {@link nonBlank}
|
|
11
|
+
* rule every upstream string follows); a populated value is trimmed before decoding.
|
|
12
|
+
* - A value that doesn't match the WCF pattern is returned as-is (already ISO, or unknown shape).
|
|
12
13
|
* - `.NET DateTime.MinValue` (year 0001, e.g. `/Date(-62135568000000-0800)/`) is WSDOT's
|
|
13
14
|
* "no timestamp" sentinel and decodes to `undefined`, so callers omit the field rather than
|
|
14
15
|
* surfacing a year-0001 date.
|
|
15
16
|
*/
|
|
16
|
-
export declare function decodeWcfDate(
|
|
17
|
+
export declare function decodeWcfDate(raw: string | null | undefined): string | undefined;
|
|
17
18
|
/**
|
|
18
19
|
* Spread-ready ISO date field. Decodes a WCF date and returns `{ [key]: iso }`, or `{}` when the
|
|
19
|
-
* value is absent or the MinValue sentinel — so the field is omitted from the normalized
|
|
20
|
+
* value is absent, blank, or the MinValue sentinel — so the field is omitted from the normalized
|
|
21
|
+
* object.
|
|
20
22
|
*
|
|
21
23
|
* @example
|
|
22
24
|
* return { ...wcfDateField('dateUpdated', p.DateUpdated) };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wcf-date.d.ts","sourceRoot":"","sources":["../../src/services/wcf-date.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"wcf-date.d.ts","sourceRoot":"","sources":["../../src/services/wcf-date.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQhF;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAC3C,GAAG,EAAE,CAAC,EACN,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC7B,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAG3C"}
|