@dangahagan/weather-mcp 1.35.11 → 1.35.13

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.
@@ -2,8 +2,9 @@
2
2
  * Handler for get_wildfire_info tool.
3
3
  *
4
4
  * Routed by country (see docs/plans/global-wildfire-plan.md D1/D2):
5
- * US → NIFC/WFIGS named incidents (the original path, byte-identical
6
- * output), elsewhere → NASA FIRMS satellite fire detections (VIIRS, near
5
+ * US → NIFC/WFIGS named incidents, each measured to its mapped perimeter
6
+ * (the reported point of origin only when no usable perimeter is
7
+ * published), elsewhere → NASA FIRMS satellite fire detections (VIIRS, near
7
8
  * real-time, global). An explicit `source` forces the branch; there is
8
9
  * deliberately no cross-fallback — managed incidents (names, acreage,
9
10
  * containment) and satellite heat detections are different claims, and
@@ -21,6 +22,7 @@ import { resolveCountryCode, resolveLocationAsync, prependLocationLine } from '.
21
22
  import { validateDetail } from '../utils/validation.js';
22
23
  import { guessTimezoneFromCoords, formatObservationAge } from '../utils/timezone.js';
23
24
  import { calculateDistance, kmToMiles } from '../utils/distance.js';
25
+ import { distanceToPerimeterKm } from '../utils/firePerimeter.js';
24
26
  import { displayValue } from '../utils/displayBanding.js';
25
27
  import { isInUS } from '../utils/geography.js';
26
28
  import { logger } from '../utils/logger.js';
@@ -101,6 +103,81 @@ function formatDistanceFigure(km) {
101
103
  const shownKm = displayValue(km, 1);
102
104
  return `${shownKm.toFixed(1)} km (${kmToMiles(shownKm).toFixed(2)} mi)`;
103
105
  }
106
+ /**
107
+ * Parse NIFC's reported point of origin, or `null` when either coordinate is
108
+ * unusable.
109
+ *
110
+ * Usable means finite, in coordinate range, and **non-zero**. No incident in
111
+ * NIFC's covered set (US, PR, VI, GU) can sit on the equator or the prime
112
+ * meridian, so a `0` is a second "not recorded" encoding beside `null`
113
+ * (GOTCHAS G56), not a coordinate. Treating it as one would measure the fire
114
+ * thousands of km away and drop it at the radius filter; treating it as absent
115
+ * keeps the fire listed as unlocated, the cautious direction.
116
+ */
117
+ function parseOrigin(rawLat, rawLon) {
118
+ if (typeof rawLat !== 'number' || typeof rawLon !== 'number')
119
+ return null;
120
+ if (!Number.isFinite(rawLat) || !Number.isFinite(rawLon))
121
+ return null;
122
+ if (rawLat === 0 || rawLon === 0)
123
+ return null;
124
+ if (rawLat < -90 || rawLat > 90 || rawLon < -180 || rawLon > 180)
125
+ return null;
126
+ return { latitude: rawLat, longitude: rawLon };
127
+ }
128
+ /**
129
+ * The first acreage field that is a finite number greater than zero, or `null`
130
+ * meaning "NIFC published no size". Zero is absent here, unlike containment: a
131
+ * mapped perimeter of zero area is not a reading, it is a second "not
132
+ * recorded" encoding (GOTCHAS G56). The old `|| 0` printed `0 acres`.
133
+ */
134
+ function parseAcres(candidates) {
135
+ for (const raw of candidates) {
136
+ if (typeof raw === 'number' && Number.isFinite(raw) && raw > 0)
137
+ return raw;
138
+ }
139
+ return null;
140
+ }
141
+ /**
142
+ * NIFC's discovery timestamp (epoch ms) as a `Date`, or `null` meaning "NIFC
143
+ * published no discovery date". Epoch `0` is absent, not 1 January 1970: no
144
+ * current incident was discovered then. A finite value outside the `Date`
145
+ * range (e.g. `Number.MAX_VALUE`) is absent too. The old fallback was
146
+ * `new Date()`, which printed today's date and `Days Active: 0`.
147
+ */
148
+ function parseDiscoveryDate(raw) {
149
+ if (typeof raw !== 'number' || !Number.isFinite(raw) || raw <= 0)
150
+ return null;
151
+ const date = new Date(raw);
152
+ return Number.isNaN(date.getTime()) ? null : date;
153
+ }
154
+ /** The line beneath `**Distance:**` naming what the distance was measured to. */
155
+ function formatDistanceBasisLine(fire) {
156
+ switch (fire.distanceBasis) {
157
+ case 'perimeter':
158
+ return fire.distance === 0
159
+ ? `**Measured to:** the mapped fire perimeter — this location is inside it\n`
160
+ : `**Measured to:** nearest edge of the mapped fire perimeter\n`;
161
+ case 'origin':
162
+ return `**Measured to:** reported point of origin (NIFC published no usable perimeter)\n`;
163
+ case 'unlocated':
164
+ return `**Measured to:** not available — NIFC published neither a perimeter nor a point of origin\n`;
165
+ }
166
+ }
167
+ /**
168
+ * The Safety Assessment line for wildfires with no published location. They
169
+ * select no tier, because a tier is a claim about a distance, so the section
170
+ * must say they exist and that it is not an all-clear.
171
+ */
172
+ function formatUnlocatedWildfireLine(names) {
173
+ const n = names.length;
174
+ const shown = names.slice(0, 5).join(', ');
175
+ const more = n > 5 ? ` and ${n - 5} more` : '';
176
+ const one = n === 1;
177
+ return `⚠️ ${n} wildfire${one ? '' : 's'} in this search area ${one ? 'has' : 'have'} no published location (${shown}${more}). ` +
178
+ `${one ? 'Its' : 'Their'} distance is unknown and is not reflected in any tier above. ` +
179
+ `Do not read this section as an all-clear.\n`;
180
+ }
104
181
  export async function handleGetWildfireInfo(args, nifcService, locationStore, geocodingService, firmsService, nominatimService) {
105
182
  // Resolve location from coordinates, a saved location name, or a geocoded city name
106
183
  const resolved = await resolveLocationAsync(args, locationStore, geocodingService);
@@ -189,11 +266,12 @@ export async function handleGetWildfireInfo(args, nifcService, locationStore, ge
189
266
  return result;
190
267
  }
191
268
  /**
192
- * The original US path: NIFC/WFIGS named incidents with acreage,
193
- * containment, and the containment-aware safety assessment. Byte-identical
194
- * to the pre-global behavior (locked by tests/unit/wildfire-handler.test.ts
195
- * passing unedited). `failed` is true only when the catch replaced the fire
196
- * list with the error block.
269
+ * The US path: NIFC/WFIGS named incidents with acreage, containment, and the
270
+ * containment-aware safety assessment. Each fire is measured to its mapped
271
+ * perimeter (zero inside it), else to its reported point of origin, else it is
272
+ * listed as unlocated with no distance; the line beneath `**Distance:**` names
273
+ * which. `failed` is true only when the catch replaced the fire list with the
274
+ * error block.
197
275
  */
198
276
  async function formatNIFCWildfire(nifcService, latitude, longitude, radius, detail,
199
277
  /**
@@ -221,7 +299,82 @@ outsideCoverage = false) {
221
299
  // Query NIFC for fire perimeters
222
300
  const response = await nifcService.queryFirePerimeters(west, south, east, north);
223
301
  const features = response.features || [];
224
- if (features.length === 0 && outsideCoverage) {
302
+ // Measure and filter first, then branch on the filtered list (D3): a
303
+ // response whose every feature lies beyond the radius is the no-fires
304
+ // case (or the coverage disclosure), never a "Found 0 active fire" count.
305
+ const firesWithDistance = [];
306
+ for (const feature of features) {
307
+ const attrs = feature.attributes;
308
+ // Basis order: mapped perimeter → reported point of origin → unlocated.
309
+ // A fire is an area; the origin is a coordinate entered once and is
310
+ // sometimes far from the fire, so it is only the fallback. `null` is
311
+ // a refusal to measure, never a number (GOTCHAS G68).
312
+ const origin = parseOrigin(attrs.attr_InitialLatitude, attrs.attr_InitialLongitude);
313
+ const perimeterKm = distanceToPerimeterKm(latitude, longitude, feature.geometry?.rings);
314
+ let fireDistance;
315
+ let distanceBasis;
316
+ if (perimeterKm !== null) {
317
+ fireDistance = perimeterKm;
318
+ distanceBasis = 'perimeter';
319
+ }
320
+ else if (origin !== null) {
321
+ fireDistance = calculateDistance(latitude, longitude, origin.latitude, origin.longitude);
322
+ distanceBasis = 'origin';
323
+ }
324
+ else {
325
+ fireDistance = null;
326
+ distanceBasis = 'unlocated';
327
+ }
328
+ // Keep a located fire within the radius, and every unlocated fire:
329
+ // an unknown distance is not evidence that the fire is far away.
330
+ if (fireDistance === null || fireDistance <= radius) {
331
+ if (fireDistance === null) {
332
+ logger.warn('NIFC published no usable location for an incident', {
333
+ incident: attrs.poly_IncidentName
334
+ });
335
+ }
336
+ // Parsed before the literal so the warn can be guarded on the result.
337
+ // Warn only when the value is present but unusable — a plain
338
+ // null/undefined is the normal wire shape for a quarter of live rows,
339
+ // and warning on it would emit ~50 lines per request on a healthy
340
+ // feed. This is a data-quality event, not a security one, so no
341
+ // securityEvent flag (unlike the FIRMS row cap below).
342
+ const containment = parseContainment(attrs.attr_PercentContained);
343
+ if (attrs.attr_PercentContained != null && containment === null) {
344
+ logger.warn('NIFC published an unusable containment value', {
345
+ incident: attrs.poly_IncidentName,
346
+ value: attrs.attr_PercentContained
347
+ });
348
+ }
349
+ const fireInfo = {
350
+ name: attrs.poly_IncidentName || 'Unknown Fire',
351
+ distance: fireDistance,
352
+ distanceBasis,
353
+ acres: parseAcres([attrs.poly_GISAcres, attrs.attr_FinalAcres, attrs.attr_CalculatedAcres]),
354
+ containment,
355
+ discoveryDate: parseDiscoveryDate(attrs.attr_FireDiscoveryDateTime),
356
+ latitude: origin?.latitude,
357
+ longitude: origin?.longitude,
358
+ state: attrs.attr_POOState,
359
+ county: attrs.attr_POOCounty,
360
+ city: attrs.attr_POOCity,
361
+ type: attrs.attr_IncidentTypeCategory === 'WF' ? 'Wildfire' :
362
+ attrs.attr_IncidentTypeCategory === 'RX' ? 'Prescribed Fire' : 'Unknown',
363
+ status: attrs.poly_FeatureStatus || 'Active'
364
+ };
365
+ firesWithDistance.push({ fire: fireInfo, distance: fireDistance });
366
+ }
367
+ }
368
+ // Sort by distance (nearest first), unlocated fires last. The sort is
369
+ // stable, so unlocated fires keep the upstream order among themselves.
370
+ firesWithDistance.sort((a, b) => {
371
+ if (a.distance === null)
372
+ return b.distance === null ? 0 : 1;
373
+ if (b.distance === null)
374
+ return -1;
375
+ return a.distance - b.distance;
376
+ });
377
+ if (firesWithDistance.length === 0 && outsideCoverage) {
225
378
  // Forced `source: "nifc"` outside NIFC coverage. An empty result here
226
379
  // means "this authority does not track fires at this location", which
227
380
  // is emphatically not an all-clear — so no ✅ and no "currently clear"
@@ -234,7 +387,7 @@ outsideCoverage = false) {
234
387
  output += `Use \`source: "firms"\` (or omit \`source\`) for NASA FIRMS satellite fire `;
235
388
  output += `detections, which are global.\n`;
236
389
  }
237
- else if (features.length === 0) {
390
+ else if (firesWithDistance.length === 0) {
238
391
  output += `✅ **No active wildfires found within ${radius} km**\n\n`;
239
392
  if (response.exceededTransferLimit) {
240
393
  output += `*Results may be incomplete — the fire data service truncated the response.*\n\n`;
@@ -243,57 +396,6 @@ outsideCoverage = false) {
243
396
  output += `**Note:** This data includes active wildfires and prescribed burns tracked by the National Interagency Fire Center. Small fires or very recent ignitions may not yet be included.\n`;
244
397
  }
245
398
  else {
246
- // Process and filter fires by actual distance
247
- const firesWithDistance = [];
248
- for (const feature of features) {
249
- const attrs = feature.attributes;
250
- // Calculate distance from center point to fire origin
251
- let fireDistance = radius; // default if no coordinates
252
- if (attrs.attr_InitialLatitude && attrs.attr_InitialLongitude) {
253
- fireDistance = calculateDistance(latitude, longitude, attrs.attr_InitialLatitude, attrs.attr_InitialLongitude);
254
- }
255
- else if (feature.geometry?.rings?.[0]?.[0]) {
256
- // Use first point of fire perimeter if no origin coordinates
257
- const [fireLon, fireLat] = feature.geometry.rings[0][0];
258
- fireDistance = calculateDistance(latitude, longitude, fireLat, fireLon);
259
- }
260
- // Only include fires within radius
261
- if (fireDistance <= radius) {
262
- // Parsed before the literal so the warn can be guarded on the result.
263
- // Warn only when the value is present but unusable — a plain
264
- // null/undefined is the normal wire shape for a quarter of live rows,
265
- // and warning on it would emit ~50 lines per request on a healthy
266
- // feed. This is a data-quality event, not a security one, so no
267
- // securityEvent flag (unlike the FIRMS row cap below).
268
- const containment = parseContainment(attrs.attr_PercentContained);
269
- if (attrs.attr_PercentContained != null && containment === null) {
270
- logger.warn('NIFC published an unusable containment value', {
271
- incident: attrs.poly_IncidentName,
272
- value: attrs.attr_PercentContained
273
- });
274
- }
275
- const fireInfo = {
276
- name: attrs.poly_IncidentName || 'Unknown Fire',
277
- distance: fireDistance,
278
- acres: attrs.poly_GISAcres || attrs.attr_FinalAcres || attrs.attr_CalculatedAcres || 0,
279
- containment,
280
- discoveryDate: attrs.attr_FireDiscoveryDateTime
281
- ? new Date(attrs.attr_FireDiscoveryDateTime)
282
- : new Date(),
283
- latitude: attrs.attr_InitialLatitude,
284
- longitude: attrs.attr_InitialLongitude,
285
- state: attrs.attr_POOState,
286
- county: attrs.attr_POOCounty,
287
- city: attrs.attr_POOCity,
288
- type: attrs.attr_IncidentTypeCategory === 'WF' ? 'Wildfire' :
289
- attrs.attr_IncidentTypeCategory === 'RX' ? 'Prescribed Fire' : 'Unknown',
290
- status: attrs.poly_FeatureStatus || 'Active'
291
- };
292
- firesWithDistance.push({ fire: fireInfo, distance: fireDistance });
293
- }
294
- }
295
- // Sort by distance (nearest first)
296
- firesWithDistance.sort((a, b) => a.distance - b.distance);
297
399
  const fireCount = firesWithDistance.length;
298
400
  const wildfireCount = firesWithDistance.filter(f => f.fire.type === 'Wildfire').length;
299
401
  const prescribedCount = firesWithDistance.filter(f => f.fire.type === 'Prescribed Fire').length;
@@ -313,8 +415,8 @@ outsideCoverage = false) {
313
415
  // remainder note stays accurate at every level, including full.
314
416
  const maxFiresToShow = detail === 'full' ? 25 : 5;
315
417
  const firesToShow = firesWithDistance.slice(0, maxFiresToShow);
316
- for (const { fire, distance } of firesToShow) {
317
- output += formatFireDetails(fire, distance, timezone);
418
+ for (const { fire } of firesToShow) {
419
+ output += formatFireDetails(fire, timezone);
318
420
  }
319
421
  if (firesWithDistance.length > maxFiresToShow) {
320
422
  const remaining = firesWithDistance.length - maxFiresToShow;
@@ -343,7 +445,12 @@ outsideCoverage = false) {
343
445
  // old `|| 0` made it: an unknown containment is not evidence of
344
446
  // containment. displayValue does not accept null, so the case is
345
447
  // spelled out rather than coerced.
346
- const nearestWildfire = wildfires.find(f => f.fire.containment === null || displayValue(f.fire.containment, 0) < 100);
448
+ const isDisplayedUncontained = (f) => f.fire.containment === null || displayValue(f.fire.containment, 0) < 100;
449
+ // Only a located fire can select a tier: a tier is a claim about a
450
+ // distance, and an unlocated fire has none (GOTCHAS G68).
451
+ const nearestWildfire = wildfires.find((f) => f.distance !== null && isDisplayedUncontained(f));
452
+ const unlocatedWildfires = wildfires.filter(f => f.distance === null);
453
+ const unlocatedUncontained = unlocatedWildfires.some(isDisplayedUncontained);
347
454
  if (wildfires.length > 0) {
348
455
  output += `\n## Safety Assessment\n\n`;
349
456
  if (nearestWildfire) {
@@ -360,8 +467,11 @@ outsideCoverage = false) {
360
467
  // them, do not assume symmetry. And because the sentence printed
361
468
  // beneath says "within 5 km", which includes 5.0.
362
469
  const dist = displayValue(nearestWildfire.distance, 1);
470
+ // Located fires sort first, so whenever a located nearestWildfire
471
+ // exists, wildfires[0] is located too; the null check narrows the
472
+ // type and is never the deciding term.
363
473
  const nearestOverall = wildfires[0];
364
- if (nearestOverall !== nearestWildfire) {
474
+ if (nearestOverall !== nearestWildfire && nearestOverall.distance !== null) {
365
475
  output += `ℹ️ Nearest fire (${nearestOverall.fire.name}, ${nearestOverall.distance.toFixed(1)} km) is 100% contained and excluded from the danger assessment.\n\n`;
366
476
  }
367
477
  if (dist <= 5) {
@@ -387,7 +497,7 @@ outsideCoverage = false) {
387
497
  output += `- Air quality may be affected by smoke\n`;
388
498
  }
389
499
  }
390
- else {
500
+ else if (!unlocatedUncontained) {
391
501
  // Wildfires are present but every one is 100% contained. Still
392
502
  // surface the section — omitting it would hide that fires exist
393
503
  // nearby — pinned at the lowest (AWARENESS) tier.
@@ -396,6 +506,14 @@ outsideCoverage = false) {
396
506
  output += `- Stay informed about fire progression\n`;
397
507
  output += `- Air quality may be affected by smoke\n`;
398
508
  }
509
+ // Otherwise an unlocated wildfire is not displayed-contained: no
510
+ // tier and no all-contained line. The line below names it.
511
+ if (unlocatedWildfires.length > 0) {
512
+ const blockAbove = nearestWildfire !== undefined || !unlocatedUncontained;
513
+ if (blockAbove)
514
+ output += `\n`;
515
+ output += formatUnlocatedWildfireLine(unlocatedWildfires.map(f => f.fire.name));
516
+ }
399
517
  output += `\n`;
400
518
  }
401
519
  }
@@ -658,13 +776,16 @@ function formatClusterDetails(cluster, ordinal) {
658
776
  /**
659
777
  * Format detailed information for a single wildfire
660
778
  */
661
- function formatFireDetails(fire, distance, timezone) {
779
+ function formatFireDetails(fire, timezone) {
662
780
  let output = `## ${fire.name}\n\n`;
663
781
  // Fire type emoji
664
782
  const typeEmoji = fire.type === 'Wildfire' ? '🔥' :
665
783
  fire.type === 'Prescribed Fire' ? '🟦' : '⚪';
666
784
  output += `**Type:** ${typeEmoji} ${fire.type}\n`;
667
- output += `**Distance:** ${formatDistanceFigure(distance)}\n`;
785
+ output += fire.distance === null
786
+ ? `**Distance:** not reported\n`
787
+ : `**Distance:** ${formatDistanceFigure(fire.distance)}\n`;
788
+ output += formatDistanceBasisLine(fire);
668
789
  if (fire.state) {
669
790
  let location = fire.state;
670
791
  if (fire.county)
@@ -673,22 +794,34 @@ function formatFireDetails(fire, distance, timezone) {
673
794
  location += ` near ${fire.city}`;
674
795
  output += `**Location:** ${location}\n`;
675
796
  }
676
- if (fire.latitude && fire.longitude) {
677
- output += `**Coordinates:** ${fire.latitude.toFixed(4)}, ${fire.longitude.toFixed(4)}\n`;
797
+ // Set only when parseOrigin found both coordinates usable. Labelled as the
798
+ // reported origin because, once distance is measured to the perimeter, an
799
+ // unlabelled coordinate far from the printed distance reads as a contradiction.
800
+ if (fire.latitude !== undefined && fire.longitude !== undefined) {
801
+ output += `**Point of Origin (reported):** ${fire.latitude.toFixed(4)}, ${fire.longitude.toFixed(4)}\n`;
678
802
  }
679
803
  output += `\n`;
680
804
  // Fire statistics
681
805
  output += `### Status\n`;
682
- output += `**Size:** ${fire.acres.toFixed(0)} acres (${(fire.acres * 0.404686).toFixed(0)} hectares)\n`;
806
+ output += fire.acres === null
807
+ ? `**Size:** not reported\n`
808
+ : `**Size:** ${fire.acres.toFixed(0)} acres (${(fire.acres * 0.404686).toFixed(0)} hectares)\n`;
683
809
  // The bar is the completed tenths of the printed figure: a full bar means
684
810
  // the printed figure is `100%`, an empty bar means it is below `10%`, and
685
811
  // each cell is a completed ten percent. A fire NIFC published no usable
686
812
  // containment for reads `not reported`, with no bar at all.
687
813
  output += formatContainmentLine(fire.containment);
688
- const now = new Date();
689
- const daysActive = Math.floor((now.getTime() - fire.discoveryDate.getTime()) / (1000 * 60 * 60 * 24));
690
- output += `**Discovery Date:** ${fire.discoveryDate.toLocaleDateString('en-US', { timeZone: timezone })}\n`;
691
- output += `**Days Active:** ${daysActive}\n`;
814
+ // A day count derived from a date nobody published has no honest value, so
815
+ // Days Active is omitted, not zeroed, when the date is absent.
816
+ if (fire.discoveryDate === null) {
817
+ output += `**Discovery Date:** not reported\n`;
818
+ }
819
+ else {
820
+ const now = new Date();
821
+ const daysActive = Math.floor((now.getTime() - fire.discoveryDate.getTime()) / (1000 * 60 * 60 * 24));
822
+ output += `**Discovery Date:** ${fire.discoveryDate.toLocaleDateString('en-US', { timeZone: timezone })}\n`;
823
+ output += `**Days Active:** ${daysActive}\n`;
824
+ }
692
825
  output += `\n---\n\n`;
693
826
  return output;
694
827
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wildfireHandler.js","sourceRoot":"","sources":["../../src/handlers/wildfireHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wildfireHandler.js","sourceRoot":"","sources":["../../src/handlers/wildfireHandler.ts"],"names":[],"mappings":"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"}
@@ -126,17 +126,11 @@ export declare class NOAAService {
126
126
  * @returns Time series of stage and flow data
127
127
  */
128
128
  getNWPSStageFlow(lid: string): Promise<NWPSStageFlowResponse>;
129
- /**
130
- * Get all NWPS gauges (warning: large response, should be filtered)
131
- * Note: This endpoint returns all gauges across the US. Consider using
132
- * geographic filtering or querying by specific gauge IDs instead.
133
- * @returns Array of all river gauges
134
- * @deprecated Use getNWPSGaugesInBoundingBox instead to avoid downloading entire catalog
135
- */
136
- getAllNWPSGauges(): Promise<NWPSGauge[]>;
137
129
  /**
138
130
  * Get NWPS river gauges within a bounding box
139
- * More efficient than getAllNWPSGauges() for location-specific queries
131
+ * The list carries each gauge's live observed and forecast status, so it is
132
+ * cached on the status clock. A failure propagates with the error handleError
133
+ * mapped; there is no fallback (the whole-catalogue pull was removed, RF-27).
140
134
  * @param west Western longitude boundary
141
135
  * @param south Southern latitude boundary
142
136
  * @param east Eastern longitude boundary
@@ -1 +1 @@
1
- {"version":3,"file":"noaa.d.ts","sourceRoot":"","sources":["../../src/services/noaa.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"noaa.d.ts","sourceRoot":"","sources":["../../src/services/noaa.ts"],"names":[],"mappings":"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"}