@dangahagan/weather-mcp 1.33.5 → 1.33.7

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/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![npm version](https://badge.fury.io/js/@dangahagan%2Fweather-mcp.svg)](https://www.npmjs.com/package/@dangahagan/weather-mcp)
4
4
  [![MCP Registry](https://img.shields.io/badge/MCP-Registry-blue)](https://registry.modelcontextprotocol.io/v0/servers?search=io.github.dgahagan/weather-mcp)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
- [![Tests](https://img.shields.io/badge/tests-3%2C807%20passing-brightgreen)](./docs/testing/TEST_SUITE_README.md)
6
+ [![Tests](https://img.shields.io/badge/tests-3%2C826%20passing-brightgreen)](./docs/testing/TEST_SUITE_README.md)
7
7
  [![Node](https://img.shields.io/badge/node-%3E%3D18-339933?logo=node.js&logoColor=white)](https://nodejs.org)
8
8
 
9
9
  **Give your AI assistant real weather data — 17 tools, zero API keys, zero signup, zero cost.**
@@ -58,7 +58,7 @@ Choose this one if you want:
58
58
 
59
59
  - **Genuinely free** — every data source is a free public API. No trial that expires, no credit card, no rate-limited "free tier" bait.
60
60
  - **No API keys** — install to first forecast in under a minute. Nothing to configure, nothing to leak into a repo. ([Three optional keys](#optional-api-keys) add extras if you want them; the default configuration needs none.)
61
- - **Fully open source** — MIT licensed, readable TypeScript, 3,807 tests. Audit it, fork it, fix it.
61
+ - **Fully open source** — MIT licensed, readable TypeScript, 3,826 tests. Audit it, fork it, fix it.
62
62
  - **Privacy-respecting** — your queries go directly from your machine to public weather APIs. No middleman server, no telemetry.
63
63
  - **Breadth** — 17 tools covering weather, safety hazards (lightning, floods, wildfires), marine conditions, air quality, and historical data back to 1940. Most weather MCPs stop at forecasts.
64
64
 
@@ -390,7 +390,7 @@ Being honest about what free public data can and can't do:
390
390
  ```bash
391
391
  npm run build # Compile TypeScript
392
392
  npm run dev # Run in development mode
393
- npm test # Run all 3,807 tests
393
+ npm test # Run all 3,826 tests
394
394
  npm run test:coverage # Coverage report
395
395
  npm run audit # Dependency vulnerability scan
396
396
  ```
package/dist/index.js CHANGED
@@ -12,8 +12,9 @@ import { CacheConfig } from './config/cache.js';
12
12
  import { toolConfig } from './config/tools.js';
13
13
  import { logger, LogLevel } from './utils/logger.js';
14
14
  import { analytics } from './analytics/index.js';
15
- import { createWeatherServer, SERVER_VERSION, clearServiceCaches } from './server/weatherServer.js';
15
+ import { createWeatherServer, SERVER_VERSION } from './server/weatherServer.js';
16
16
  import { startLightningPrewarm } from './server/lightningPrewarm.js';
17
+ import { createShutdown, SHUTDOWN_DEADLINE_MS } from './server/shutdown.js';
17
18
  /**
18
19
  * Initialize the LocationStore for managing saved/favorite locations
19
20
  * Stores locations in ~/.weather-mcp/locations.json
@@ -27,30 +28,32 @@ let lightningPrewarm;
27
28
  */
28
29
  async function main() {
29
30
  const transport = new StdioServerTransport();
30
- // Set up graceful shutdown handlers
31
- const shutdown = async (signal) => {
32
- logger.info(`Received ${signal}, shutting down gracefully...`);
33
- try {
34
- // 1. Flush analytics first (fast)
35
- await analytics.shutdown();
36
- logger.info('Analytics flushed');
37
- // 2. Stop the lightning pre-warm refresh
38
- lightningPrewarm?.stop();
39
- // 3. Clean up resources
40
- clearServiceCaches();
41
- logger.info('Cache cleared');
42
- // 4. Close server connection
43
- await server.close();
44
- logger.info('Server closed');
45
- process.exit(0);
46
- }
47
- catch (error) {
48
- logger.error('Error during shutdown', error);
49
- process.exit(1);
50
- }
51
- };
52
- process.on('SIGTERM', () => shutdown('SIGTERM'));
53
- process.on('SIGINT', () => shutdown('SIGINT'));
31
+ // One bounded, run-once shutdown for every way the session can end (src/server/shutdown.ts).
32
+ // Each step reads its target at call time: `lightningPrewarm` is assigned after connect.
33
+ const shutdown = createShutdown({
34
+ deadlineMs: SHUTDOWN_DEADLINE_MS,
35
+ exit: (code) => process.exit(code),
36
+ steps: [
37
+ // No new pre-warm subscriptions during teardown.
38
+ { name: 'lightning-prewarm', run: () => lightningPrewarm?.stop() },
39
+ // Garnish: the deadline truncates a stalled flush.
40
+ { name: 'analytics', run: () => analytics.shutdown() },
41
+ // A no-op when no broker connection exists; never touches the lazy mqtt import.
42
+ { name: 'mqtt', run: () => blitzortungService.disconnect() },
43
+ // Fires server.onclose synchronously; the memo returns the in-flight run.
44
+ { name: 'server', run: () => server.close() }
45
+ ]
46
+ });
47
+ // Registered before connect so an early EOF cannot be missed. An 'end' listener does not
48
+ // switch stdin to flowing mode; the transport's 'data' listener does, at connect.
49
+ // Stdin EOF is the MCP stdio client's primary shutdown signal; 'close' covers a pipe
50
+ // destroyed without a clean EOF.
51
+ process.stdin.once('end', () => { void shutdown('stdin end'); });
52
+ process.stdin.once('close', () => { void shutdown('stdin close'); });
53
+ // The SDK closes the transport itself when the read buffer fails; the server is then deaf.
54
+ server.onclose = () => { void shutdown('transport closed'); };
55
+ process.on('SIGTERM', () => { void shutdown('SIGTERM'); });
56
+ process.on('SIGINT', () => { void shutdown('SIGINT'); });
54
57
  try {
55
58
  await server.connect(transport);
56
59
  logger.info('Weather MCP Server started', {
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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"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Shutdown coordinator: one bounded, run-once teardown for every way the stdio session can end.
3
+ *
4
+ * `src/index.ts` wires stdin `end`/`close`, `server.onclose`, `SIGTERM` and `SIGINT` to the one
5
+ * trigger this module returns. The contracts:
6
+ *
7
+ * - **Run once.** The first trigger starts the run; every later trigger — including one fired from
8
+ * inside a step, as `server.close()` fires `server.onclose` — returns the same promise.
9
+ * - **Every step runs, in order.** A step that throws is logged and does not skip the steps after it.
10
+ * - **Bounded.** One deadline covers the whole run. When it fires, the pending step is named in a
11
+ * warning and the process exits 1. The deadline timer is deliberately **ref'd**: a pending
12
+ * promise holds no handle, so with an unref'd deadline a step that hangs without I/O would let
13
+ * the loop drain and exit 0 before the deadline fired. It exists only during teardown and is
14
+ * cleared when the walk completes, so it holds the process for at most `deadlineMs`.
15
+ * - **Exit 0** when every step completed, **exit 1** when a step threw or the deadline fired.
16
+ * `exit` is called at most once.
17
+ * - **Stderr only.** Everything goes through `logger`. After stdin EOF the client may already have
18
+ * closed stdout, and stdout is the protocol transport besides.
19
+ */
20
+ /**
21
+ * The whole shutdown run's time budget.
22
+ *
23
+ * The binding constraint is the MCP SDK's own stdio client
24
+ * (`@modelcontextprotocol/sdk/dist/esm/client/stdio.js`, `close()`): it ends the server's stdin,
25
+ * waits 2000 ms, then sends `SIGTERM`. 1500 ms finishes inside that window with margin, and it is
26
+ * several times the transport's normal teardown. Deliberately a constant, not an env var — an env
27
+ * var is permanent and per-feature.
28
+ */
29
+ export declare const SHUTDOWN_DEADLINE_MS = 1500;
30
+ export interface ShutdownStep {
31
+ name: string;
32
+ run: () => Promise<void> | void;
33
+ }
34
+ export interface ShutdownScheduler {
35
+ setTimeout(fn: () => void, ms: number): ReturnType<typeof setTimeout>;
36
+ clearTimeout(handle: ReturnType<typeof setTimeout>): void;
37
+ }
38
+ export interface ShutdownDeps {
39
+ steps: ReadonlyArray<ShutdownStep>;
40
+ deadlineMs: number;
41
+ /** `process.exit` in production. */
42
+ exit: (code: number) => void;
43
+ scheduler?: ShutdownScheduler;
44
+ }
45
+ export declare function createShutdown(deps: ShutdownDeps): (reason: string) => Promise<void>;
46
+ //# sourceMappingURL=shutdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shutdown.d.ts","sourceRoot":"","sources":["../../src/server/shutdown.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,OAAO,CAAC;AAEzC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACjC;AAED,MAAM,WAAW,iBAAiB;IAChC,UAAU,CAAC,EAAE,EAAE,MAAM,IAAI,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IACtE,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,GAAG,IAAI,CAAC;CAC3D;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,oCAAoC;IACpC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,iBAAiB,CAAC;CAC/B;AAOD,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CA8DpF"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Shutdown coordinator: one bounded, run-once teardown for every way the stdio session can end.
3
+ *
4
+ * `src/index.ts` wires stdin `end`/`close`, `server.onclose`, `SIGTERM` and `SIGINT` to the one
5
+ * trigger this module returns. The contracts:
6
+ *
7
+ * - **Run once.** The first trigger starts the run; every later trigger — including one fired from
8
+ * inside a step, as `server.close()` fires `server.onclose` — returns the same promise.
9
+ * - **Every step runs, in order.** A step that throws is logged and does not skip the steps after it.
10
+ * - **Bounded.** One deadline covers the whole run. When it fires, the pending step is named in a
11
+ * warning and the process exits 1. The deadline timer is deliberately **ref'd**: a pending
12
+ * promise holds no handle, so with an unref'd deadline a step that hangs without I/O would let
13
+ * the loop drain and exit 0 before the deadline fired. It exists only during teardown and is
14
+ * cleared when the walk completes, so it holds the process for at most `deadlineMs`.
15
+ * - **Exit 0** when every step completed, **exit 1** when a step threw or the deadline fired.
16
+ * `exit` is called at most once.
17
+ * - **Stderr only.** Everything goes through `logger`. After stdin EOF the client may already have
18
+ * closed stdout, and stdout is the protocol transport besides.
19
+ */
20
+ import { logger } from '../utils/logger.js';
21
+ /**
22
+ * The whole shutdown run's time budget.
23
+ *
24
+ * The binding constraint is the MCP SDK's own stdio client
25
+ * (`@modelcontextprotocol/sdk/dist/esm/client/stdio.js`, `close()`): it ends the server's stdin,
26
+ * waits 2000 ms, then sends `SIGTERM`. 1500 ms finishes inside that window with margin, and it is
27
+ * several times the transport's normal teardown. Deliberately a constant, not an env var — an env
28
+ * var is permanent and per-feature.
29
+ */
30
+ export const SHUTDOWN_DEADLINE_MS = 1500;
31
+ const defaultScheduler = {
32
+ setTimeout: (fn, ms) => setTimeout(fn, ms),
33
+ clearTimeout: (handle) => clearTimeout(handle)
34
+ };
35
+ export function createShutdown(deps) {
36
+ const scheduler = deps.scheduler ?? defaultScheduler;
37
+ let running;
38
+ let exited = false;
39
+ const finish = (code) => {
40
+ if (exited) {
41
+ return;
42
+ }
43
+ exited = true;
44
+ deps.exit(code);
45
+ };
46
+ const run = async (reason) => {
47
+ logger.info('Shutting down', { reason });
48
+ let pending;
49
+ const deadline = scheduler.setTimeout(() => {
50
+ logger.warn('Shutdown deadline reached', { pendingStep: pending, deadlineMs: deps.deadlineMs });
51
+ finish(1);
52
+ }, deps.deadlineMs);
53
+ let failed = false;
54
+ for (const step of deps.steps) {
55
+ if (exited) {
56
+ return;
57
+ }
58
+ pending = step.name;
59
+ try {
60
+ await step.run();
61
+ }
62
+ catch (error) {
63
+ failed = true;
64
+ // Name and code only, never the message: the mqtt step's errors are mqtt's, and they
65
+ // carry the broker host and port (the rule at `blitzortung.ts`'s connect-error log).
66
+ const failure = error;
67
+ logger.error('Shutdown step failed', undefined, {
68
+ step: step.name,
69
+ name: failure?.name,
70
+ code: failure?.code
71
+ });
72
+ }
73
+ }
74
+ pending = undefined;
75
+ scheduler.clearTimeout(deadline);
76
+ if (exited) {
77
+ return;
78
+ }
79
+ logger.info('Shutdown complete', { failed });
80
+ finish(failed ? 1 : 0);
81
+ };
82
+ return (reason) => {
83
+ if (running) {
84
+ return running;
85
+ }
86
+ // Deferred launch: `running = run(reason)` would evaluate `run` — synchronously, up to its
87
+ // first `await` — before the assignment, so a first step that re-enters the trigger would see
88
+ // an empty memo and start a second run. The microtask publishes the memo first.
89
+ running = Promise.resolve().then(() => run(reason));
90
+ return running;
91
+ };
92
+ }
93
+ //# sourceMappingURL=shutdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shutdown.js","sourceRoot":"","sources":["../../src/server/shutdown.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"blitzortung.d.ts","sourceRoot":"","sources":["../../src/services/blitzortung.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAA8B,MAAM,uBAAuB,CAAC;AAwB1G,qFAAqF;AACrF,eAAO,MAAM,8BAA8B,QAAiB,CAAC;AAE7D,gCAAgC;AAChC,eAAO,MAAM,8BAA8B,QAAiB,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,QAAqC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;CACnF;AAwID,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA2B;IAazC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2E;IAGrG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuC;IACrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAGxC,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO,CAAC,mBAAmB,CAAkC;IAI7D,OAAO,CAAC,sBAAsB,CAAkC;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAO5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0D;IAOvF,OAAO,CAAC,wBAAwB,CAAK;IAErC,cAKC;IAED;;OAEG;YACW,eAAe;IAmG7B;;OAEG;IACH,OAAO,CAAC,aAAa;IAwFrB;;OAEG;YACW,mBAAmB;IA4IjC;;OAEG;YACW,wBAAwB;IAgDtC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAoDhC;;OAEG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAY,EACtB,iBAAiB,GAAE,MAAW,GAC7B,OAAO,CAAC,eAAe,EAAE,CAAC,CA0G5B;IAED;;;;;;;;;OASG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAY,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAmCf;IAED;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,oBAAoB,GAAG,IAAI,CAEtE;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAmBnF;IAED;;OAEG;IACH,OAAO,CAAC,aAAa;IAuCrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAO5B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAiBhC;CACF;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
1
+ {"version":3,"file":"blitzortung.d.ts","sourceRoot":"","sources":["../../src/services/blitzortung.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAA8B,MAAM,uBAAuB,CAAC;AAwB1G,qFAAqF;AACrF,eAAO,MAAM,8BAA8B,QAAiB,CAAC;AAE7D,gCAAgC;AAChC,eAAO,MAAM,8BAA8B,QAAiB,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,QAAqC,CAAC;AAE9E;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,kBAAkB,GAAG,sBAAsB,CAAC;CACnF;AAwID,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAA2B;IAazC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2E;IAGrG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuC;IACrE,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAqB;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAGxC,OAAO,CAAC,YAAY,CAA2C;IAC/D,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAGvC,OAAO,CAAC,mBAAmB,CAAkC;IAI7D,OAAO,CAAC,sBAAsB,CAAkC;IAChE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IACvC,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,WAAW,CAAS;IAO5B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA0D;IAOvF,OAAO,CAAC,wBAAwB,CAAK;IAErC,cAKC;IAED;;OAEG;YACW,eAAe;IAmG7B;;OAEG;IACH,OAAO,CAAC,aAAa;IAwFrB;;OAEG;YACW,mBAAmB;IA4IjC;;OAEG;YACW,wBAAwB;IAgDtC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAqDhC;;OAEG;IACG,mBAAmB,CACvB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAY,EACtB,iBAAiB,GAAE,MAAW,GAC7B,OAAO,CAAC,eAAe,EAAE,CAAC,CA0G5B;IAED;;;;;;;;;OASG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,MAAY,EACtB,OAAO,CAAC,EAAE,cAAc,GACvB,OAAO,CAAC,IAAI,CAAC,CAmCf;IAED;;;;;;;;;OASG;IACH,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,oBAAoB,GAAG,IAAI,CAEtE;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAmBnF;IAED;;OAEG;IACH,OAAO,CAAC,aAAa;IAuCrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAoBrB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAQ5B;;;OAGG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CA0BhC;CACF;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
@@ -530,6 +530,7 @@ export class BlitzortungService {
530
530
  * Periodically prune stale subscriptions (not accessed in last hour)
531
531
  */
532
532
  startSubscriptionPruning() {
533
+ // Housekeeping only — must not keep the process alive once nothing else is live.
533
534
  setInterval(async () => {
534
535
  if (!this.client || this.subscribedGeohashes.size === 0) {
535
536
  return;
@@ -571,7 +572,7 @@ export class BlitzortungService {
571
572
  remainingSubscriptions: this.subscribedGeohashes.size
572
573
  });
573
574
  }
574
- }, SUBSCRIPTION_PRUNE_INTERVAL_MS);
575
+ }, SUBSCRIPTION_PRUNE_INTERVAL_MS).unref();
575
576
  }
576
577
  /**
577
578
  * Get recent lightning strikes from buffer
@@ -802,9 +803,10 @@ export class BlitzortungService {
802
803
  */
803
804
  startCleanupInterval() {
804
805
  // Clean up every 5 minutes
806
+ // Housekeeping only — must not keep the process alive once nothing else is live.
805
807
  setInterval(() => {
806
808
  this.cleanupBuffer();
807
- }, 5 * 60 * 1000);
809
+ }, 5 * 60 * 1000).unref();
808
810
  }
809
811
  /**
810
812
  * Disconnect from MQTT broker
@@ -815,16 +817,26 @@ export class BlitzortungService {
815
817
  logger.info('Disconnecting from Blitzortung MQTT broker', {
816
818
  activeSubscriptions: this.subscribedGeohashes.size
817
819
  });
818
- await new Promise((resolve) => {
819
- this.client.end(false, {}, () => {
820
- this.isConnected = false;
821
- this.subscribedGeohashes.clear();
822
- this.geohashFirstSubscribed.clear();
823
- logger.info('Disconnected from Blitzortung MQTT broker');
824
- resolve();
820
+ try {
821
+ await new Promise((resolve, reject) => {
822
+ this.client.end(false, {}, (error) => {
823
+ this.isConnected = false;
824
+ this.subscribedGeohashes.clear();
825
+ this.geohashFirstSubscribed.clear();
826
+ if (error) {
827
+ // No log here: mqtt's errors can carry the broker host. The caller (the shutdown
828
+ // coordinator) logs the failure by name and code only.
829
+ reject(error);
830
+ return;
831
+ }
832
+ logger.info('Disconnected from Blitzortung MQTT broker');
833
+ resolve();
834
+ });
825
835
  });
826
- });
827
- this.client = null;
836
+ }
837
+ finally {
838
+ this.client = null;
839
+ }
828
840
  }
829
841
  }
830
842
  }
@@ -1 +1 @@
1
- {"version":3,"file":"blitzortung.js","sourceRoot":"","sources":["../../src/services/blitzortung.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAsBlF,qFAAqF;AACrF,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7D,gCAAgC;AAChC,MAAM,CAAC,MAAM,8BAA8B,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE7D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,8BAA8B,GAAG,CAAC,CAAC;AAW9E;;;;GAIG;AACH,IAAI,UAAyC,CAAC;AAE9C;;;;;;;;GAQG;AACH,IAAI,eAAgD,CAAC;AAErD;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,QAAQ;IACrB,6EAA6E;IAC7E,sEAAsE;IACtE,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,MAAM,IAAI,oBAAoB,EAAE,CAAC;IACnC,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;QAClC,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,uEAAuE;IACvE,wEAAwE;IACxE,4DAA4D;IAC5D,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CACnC,CAAC,MAAM,EAAE,EAAE;QACT,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC;QAC5B,eAAe,GAAG,SAAS,CAAC;QAC5B,OAAO,UAAU,CAAC;IACpB,CAAC,EACD,CAAC,KAAc,EAAE,EAAE;QACjB,eAAe,GAAG,SAAS,CAAC;QAE5B,IAAK,KAA2C,EAAE,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAClF,UAAU,GAAG,IAAI,CAAC;YAClB,uEAAuE;YACvE,6DAA6D;YAC7D,MAAM,CAAC,IAAI,CAAC,6EAA6E,EAAE;gBACzF,OAAO,EAAE,MAAM;gBACf,IAAI,EAAE,wBAAwB;gBAC9B,MAAM,EAAE,mCAAmC;aAC5C,CAAC,CAAC;YACH,MAAM,IAAI,oBAAoB,EAAE,CAAC;QACnC,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,uEAAuE;QACvE,6CAA6C;QAC7C,EAAE;QACF,0EAA0E;QAC1E,yEAAyE;QACzE,wEAAwE;QACxE,kEAAkE;QAClE,wEAAwE;QACxE,MAAM,OAAO,GAAG,KAA0C,CAAC;QAC3D,2EAA2E;QAC3E,gEAAgE;QAChE,uEAAuE;QACvE,MAAM,CAAC,KAAK,CAAC,2EAA2E,EAAE,SAAS,EAAE;YACnG,OAAO,EAAE,MAAM;YACf,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE,OAAO,EAAE,IAAI;YACnB,IAAI,EAAE,OAAO,EAAE,IAAI;SACpB,CAAC,CAAC;QACH,MAAM,IAAI,mBAAmB,EAAE,CAAC;IAClC,CAAC,CACF,CAAC;IAEF,OAAO,eAAe,CAAC;AACzB,CAAC;AAcD;;GAEG;AACH,SAAS,iBAAiB,CACxB,IAAY,EACZ,IAAY,EACZ,IAAY,EACZ,IAAY;IAEZ,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,uBAAuB;IACvC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAC7C,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;IAE7C,MAAM,CAAC,GACL,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IAEvB,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,MAAM,OAAO,kBAAkB;IACrB,MAAM,GAAsB,IAAI,CAAC;IACzC,mEAAmE;IACnE,wFAAwF;IACxF,kFAAkF;IAClF,wFAAwF;IACxF,mEAAmE;IACnE,EAAE;IACF,2BAA2B;IAC3B,6EAA6E;IAC7E,mDAAmD;IACnD,+CAA+C;IAC/C,EAAE;IACF,yFAAyF;IACxE,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,mCAAmC,CAAC;IACrG,6FAA6F;IAC7F,8EAA8E;IAC7D,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpD,WAAW,GAAG,iBAAiB,CAAC;IAChC,eAAe,GAAG,IAAI,CAAC,CAAC,YAAY;IACpC,cAAc,GAAG,KAAK,CAAC,CAAC,aAAa;IAEtD,kDAAkD;IAC1C,YAAY,GAAiC,IAAI,GAAG,EAAE,CAAC;IAC9C,cAAc,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,0BAA0B;IAC5D,aAAa,GAAG,KAAK,CAAC,CAAC,2CAA2C;IAEnF,4CAA4C;IACpC,mBAAmB,GAAwB,IAAI,GAAG,EAAE,CAAC,CAAC,mCAAmC;IACjG,kFAAkF;IAClF,oFAAoF;IACpF,sFAAsF;IAC9E,sBAAsB,GAAwB,IAAI,GAAG,EAAE,CAAC,CAAC,wCAAwC;IACxF,gBAAgB,GAAG,EAAE,CAAC,CAAC,6DAA6D;IAC7F,YAAY,GAAG,KAAK,CAAC;IACrB,WAAW,GAAG,KAAK,CAAC;IAE5B,wFAAwF;IACxF,6FAA6F;IAC7F,4FAA4F;IAC5F,0FAA0F;IAC1F,yFAAyF;IACxE,YAAY,GAAG,IAAI,OAAO,EAA2C,CAAC;IAEvF,2FAA2F;IAC3F,0FAA0F;IAC1F,4FAA4F;IAC5F,2FAA2F;IAC3F,+EAA+E;IACvE,wBAAwB,GAAG,CAAC,CAAC;IAErC;QACE,yBAAyB;QACzB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,sCAAsC;QACtC,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,IAAgB;QAC5C,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,uCAAuC;YACvC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;oBACrC,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;wBAC3C,aAAa,CAAC,aAAa,CAAC,CAAC;wBAC7B,OAAO,EAAE,CAAC;oBACZ,CAAC;gBACH,CAAC,EAAE,GAAG,CAAC,CAAC;YACV,CAAC,CAAC,CAAC;QACL,CAAC;QAED,mEAAmE;QACnE,2EAA2E;QAC3E,2EAA2E;QAC3E,oEAAoE;QACpE,EAAE;QACF,4EAA4E;QAC5E,4EAA4E;QAC5E,qEAAqE;QACrE,sEAAsE;QACtE,4DAA4D;QAC5D,EAAE;QACF,2EAA2E;QAC3E,kEAAkE;QAClE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAEzB,IAAI,CAAC;YACH,6CAA6C;YAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC;gBACrC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEpG,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,yDAAyD,EAAE;oBACrE,MAAM,EAAE,IAAI,CAAC,aAAa;oBAC1B,aAAa,EAAE,IAAI;oBACnB,cAAc,EAAE,4FAA4F;iBAC7G,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACnD,MAAM,EAAE,IAAI,CAAC,aAAa;gBAC1B,SAAS,EAAE,CAAC,WAAW;aACxB,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;gBACzC,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,cAAc,EAAE,IAAI,CAAC,cAAc;gBACnC,QAAQ,EAAE,eAAe,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;aACnE,CAAC,CAAC;YAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAChC,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;gBAC/C,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;gBAExB,IAAI,CAAC,MAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;oBAC9B,YAAY,CAAC,SAAS,CAAC,CAAC;oBACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;oBAC1B,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;oBACpD,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBACjC,YAAY,CAAC,SAAS,CAAC,CAAC;oBACxB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;oBAC1B,IAAI,CAAC,wBAAwB,EAAE,CAAC;oBAChC,0FAA0F;oBAC1F,yFAAyF;oBACzF,wFAAwF;oBACxF,mCAAmC;oBACnC,MAAM,OAAO,GAAG,KAA8B,CAAC;oBAC/C,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,SAAS,EAAE;wBAC/C,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;qBACnB,CAAC,CAAC;oBACH,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAO,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;oBAC5B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,IAAI,CAAC,wBAAwB,EAAE,CAAC;oBAChC,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,MAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,KAAa,EAAE,OAAe;QAClD,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtC,MAAM,IAAI,GAAwB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAEzD,2BAA2B;YAC3B,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE;oBACtD,KAAK;oBACL,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;oBAClB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG;oBAClB,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI;iBACrB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,6EAA6E;YAC7E,yEAAyE;YACzE,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,IAAI,CAAC,IAAI,GAAG,cAAc,EAAE,CAAC;gBAC/B,4EAA4E;gBAC5E,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC;YAChD,CAAC;YAED,wCAAwC;YACxC,MAAM,MAAM,GAAoB;gBAC9B,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC;gBAChC,QAAQ,EAAE,IAAI,CAAC,GAAG;gBAClB,SAAS,EAAE,IAAI,CAAC,GAAG;gBACnB,QAAQ,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;gBACvB,SAAS,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC;gBACxB,YAAY,EAAE,IAAI,CAAC,IAAI;gBACvB,QAAQ,EAAE,CAAC,CAAC,oCAAoC;aACjD,CAAC;YAEF,qBAAqB;YACrB,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;oBACnD,KAAK;oBACL,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,SAAS,EAAE,WAAW;iBACvB,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YAED,iEAAiE;YACjE,IAAI,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;gBACjD,MAAM,CAAC,IAAI,CAAC,8DAA8D,EAAE;oBAC1E,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;oBACnC,OAAO,EAAE,IAAI,CAAC,aAAa;oBAC3B,aAAa,EAAE,IAAI;iBACpB,CAAC,CAAC;gBAEH,4CAA4C;gBAC5C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC;gBAC7D,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;oBACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;wBACjB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACzC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAEnC,mEAAmE;YACnE,4FAA4F;YAC5F,MAAM,QAAQ,GAAG,2BAA2B,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAChF,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;gBAC/C,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;gBAClC,MAAM,EAAE;oBACN,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE;oBACpC,KAAK;iBACN;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE;gBACtD,KAAK,EAAG,KAAe,CAAC,OAAO;gBAC/B,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAC/B,QAAgB,EAChB,SAAiB,EACjB,QAAgB;IAChB,0FAA0F;IAC1F,wFAAwF;IACxF,yFAAyF;IACzF,yFAAyF;IACzF,KAA4C;IAC5C,2FAA2F;IAC3F,0FAA0F;IAC1F,gGAAgG;IAChG,OAAqC;QAErC,uEAAuE;QACvE,yEAAyE;QACzE,uEAAuE;QACvE,oEAAoE;QACpE,MAAM,IAAI,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC9B,yFAAyF;QACzF,2FAA2F;QAC3F,yFAAyF;QACzF,2CAA2C;QAC3C,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACtE,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,sBAAsB,CAAC;YAChD,OAAO;QACT,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACV,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,+BAA+B;QAC/B,MAAM,SAAS,GAAG,6BAA6B,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAE/E,yDAAyD;QACzD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,GAAS,EAAE;YAChC,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;gBAC3C,QAAQ,EAAE,QAAQ,CAAC,GAAG;gBACtB,SAAS,EAAE,QAAQ,CAAC,GAAG;gBACvB,QAAQ;gBACR,YAAY,EAAE,SAAS,CAAC,IAAI;gBAC5B,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;aACjC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,cAAc,EAAE,CAAC;QACnB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,qEAAqE;QACrE,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7F,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,GAAG,gBAAgB,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACpF,IAAI,OAAO,EAAE,CAAC;gBACZ,uFAAuF;gBACvF,uFAAuF;gBACvF,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,kBAAkB,CAAC;gBAC5C,OAAO;YACT,CAAC;YACD,MAAM,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAC/D,CAAC;QACD,IAAI,OAAO,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,cAAc,EAAE,CAAC;QACnB,CAAC;QAED,kDAAkD;QAClD,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,6FAA6F;QAC7F,4FAA4F;QAC5F,6FAA6F;QAC7F,8FAA8F;QAC9F,0FAA0F;QAC1F,6FAA6F;QAC7F,wFAAwF;QACxF,iBAAiB;QACjB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3C,0EAA0E;gBAC1E,mDAAmD;gBACnD,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAChD,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC;gBACrD,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1B,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;gBAC9C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvB,CAAC;YACD,sEAAsE;YACtE,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,KAAK,EAAE,CAAC;gBACV,KAAK,CAAC,OAAO,GAAG,WAAW,CAAC;YAC9B,CAAC;YACD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,IAAI,CAAC,MAAO,CAAC,SAAS,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC9C,IAAI,KAAK,EAAE,CAAC;wBACV,KAAK,MAAM,OAAO,IAAI,MAAM,EAAE,CAAC;4BAC7B,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;4BACzC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBAC9C,CAAC;wBACD,kFAAkF;wBAClF,qFAAqF;wBACrF,oFAAoF;wBACpF,qEAAqE;wBACrE,MAAM,OAAO,GAAG,KAA8B,CAAC;wBAC/C,MAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,SAAS,EAAE;4BACvD,MAAM,EAAE,aAAa;4BACrB,IAAI,EAAE,OAAO,CAAC,IAAI;4BAClB,IAAI,EAAE,OAAO,CAAC,IAAI;yBACnB,CAAC,CAAC;wBACH,MAAM,CAAC,KAAK,CAAC,CAAC;oBAChB,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;4BAC1C,KAAK,EAAE,aAAa,CAAC,MAAM;4BAC3B,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;yBAClD,CAAC,CAAC;wBACH,IAAI,OAAO,EAAE,CAAC;4BACZ,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,YAAY,CAAC;wBACxC,CAAC;wBACD,OAAO,EAAE,CAAC;oBACZ,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE;gBACxD,kBAAkB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;aAClD,CAAC,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,WAAW,CAAC;YACvC,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB,CAAC,WAAmB;QACxD,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,WAAW,IAAI,CAAC,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,qCAAqC;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;aAC1D,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE/B,uBAAuB;QACvB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE;YACvC,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAChD,OAAO,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,0CAA0C,EAAE;YACtD,KAAK,EAAE,OAAO,CAAC,MAAM;YACrB,WAAW;YACX,WAAW,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;YAC1C,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,aAAa,EAAE,IAAI;SACpB,CAAC,CAAC;QAEH,0BAA0B;QAC1B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAClC,IAAI,CAAC,MAAO,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBACzC,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;wBAC/C,KAAK,EAAE,KAAK,CAAC,OAAO;wBACpB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,4BAA4B;qBACxD,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO,EAAE,CAAC,CAAC,mCAAmC;YAChD,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,2BAA2B;QAC3B,KAAK,MAAM,CAAC,OAAO,CAAC,IAAI,OAAO,EAAE,CAAC;YAChC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE;YAChC,sBAAsB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;SACtD,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,wBAAwB;QAC9B,WAAW,CAAC,KAAK,IAAI,EAAE;YACrB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACxD,OAAO;YACT,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,cAAc,GAAG,8BAA8B,CAAC;YACtD,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC;gBACvE,IAAI,GAAG,GAAG,UAAU,GAAG,cAAc,EAAE,CAAC;oBACtC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;YACH,CAAC;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE;oBACjD,KAAK,EAAE,cAAc,CAAC,MAAM;oBAC5B,WAAW,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;iBAC3C,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;oBAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAChD,OAAO,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,CAAC;gBAChD,CAAC,CAAC,CAAC;gBAEH,gCAAgC;gBAChC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBAClC,IAAI,CAAC,MAAO,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;wBACzC,IAAI,KAAK,EAAE,CAAC;4BACV,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;gCACrD,KAAK,EAAE,KAAK,CAAC,OAAO;6BACrB,CAAC,CAAC;wBACL,CAAC;wBACD,OAAO,EAAE,CAAC;oBACZ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBAEH,uBAAuB;gBACvB,KAAK,MAAM,OAAO,IAAI,cAAc,EAAE,CAAC;oBACrC,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACzC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC9C,CAAC;gBAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;oBAC/B,sBAAsB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;iBACtD,CAAC,CAAC;YACL,CAAC;QACH,CAAC,EAAE,8BAA8B,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CACvB,QAAgB,EAChB,SAAiB,EACjB,QAAQ,GAAW,GAAG,EACtB,iBAAiB,GAAW,EAAE;QAE9B,0EAA0E;QAC1E,MAAM,KAAK,GAAyC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;QAE3E,IAAI,CAAC;YACH,yDAAyD;YACzD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAClE,MAAM,CAAC,IAAI,CAAC,+CAA+C,EAAE;gBAC3D,QAAQ,EAAE,QAAQ,CAAC,GAAG;gBACtB,SAAS,EAAE,QAAQ,CAAC,GAAG;gBACvB,QAAQ;gBACR,iBAAiB;aAClB,CAAC,CAAC;YAEH,4BAA4B;YAC5B,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YAErE,qFAAqF;YACrF,oFAAoF;YACpF,oFAAoF;YACpF,iFAAiF;YACjF,MAAM,qBAAqB,GAAG,IAAI,CAAC,wBAAwB,CAAC;YAE5D,8DAA8D;YAC9D,gEAAgE;YAChE,+DAA+D;YAC/D,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;YAEzD,6BAA6B;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAChC,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,iBAAiB,CAClB,CAAC;YAEF,oFAAoF;YACpF,oFAAoF;YACpF,wFAAwF;YACxF,sFAAsF;YACtF,IAAI,IAAI,CAAC,wBAAwB,KAAK,qBAAqB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC/E,MAAM,CAAC,IAAI,CAAC,kDAAkD,EAAE;oBAC9D,MAAM,EAAE,kBAAkB;iBAC3B,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACnD,YAAY,EAAE,OAAO,CAAC,MAAM;gBAC5B,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;aACnC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0EAA0E;YAC1E,wEAAwE;YACxE,qEAAqE;YACrE,uEAAuE;YACvE,yEAAyE;YACzE,0EAA0E;YAC1E,+BAA+B;YAC/B,IAAI,KAAK,YAAY,oBAAoB,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;gBAClF,MAAM,KAAK,CAAC;YACd,CAAC;YAED,yFAAyF;YACzF,uFAAuF;YACvF,qFAAqF;YACrF,uFAAuF;YACvF,oFAAoF;YACpF,MAAM,MAAM,GACT,KAAe,CAAC,OAAO,KAAK,yBAAyB;gBACpD,CAAC,CAAC,iBAAiB;gBACnB,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,WAAW;oBAC7B,CAAC,CAAC,kBAAkB;oBACpB,CAAC,CAAC,kBAAkB,CAAC;YAE3B,2FAA2F;YAC3F,2FAA2F;YAC3F,wFAAwF;YACxF,2CAA2C;YAC3C,MAAM,OAAO,GAAG,KAA8B,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,gCAAgC,EAAE,SAAS,EAAE;gBACxD,MAAM;gBACN,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;YAEH,2FAA2F;YAC3F,wFAAwF;YACxF,qFAAqF;YACrF,EAAE;YACF,6FAA6F;YAC7F,6FAA6F;YAC7F,0FAA0F;YAC1F,0FAA0F;YAC1F,2FAA2F;YAC3F,0FAA0F;YAC1F,4FAA4F;YAC5F,6FAA6F;YAC7F,8FAA8F;YAC9F,iBAAiB;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC;YACtF,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5D,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,eAAe,CACnB,QAAgB,EAChB,SAAiB,EACjB,QAAQ,GAAW,GAAG,EACtB,OAAwB;QAExB,MAAM,MAAM,GAAmB,OAAO,IAAI,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9F,MAAM,QAAQ,GAAG,2BAA2B,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAClE,IAAI,MAAM,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE;oBAC1D,QAAQ,EAAE,QAAQ,CAAC,GAAG;oBACtB,SAAS,EAAE,QAAQ,CAAC,GAAG;oBACvB,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,2CAA2C,EAAE;oBACxD,QAAQ,EAAE,QAAQ,CAAC,GAAG;oBACtB,SAAS,EAAE,QAAQ,CAAC,GAAG;oBACvB,QAAQ;oBACR,MAAM,EAAE,MAAM,CAAC,MAAM;iBACtB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uEAAuE;YACvE,0EAA0E;YAC1E,oEAAoE;YACpE,+DAA+D;YAC/D,IAAI,KAAK,YAAY,oBAAoB,IAAI,KAAK,YAAY,mBAAmB,EAAE,CAAC;gBAClF,OAAO;YACT,CAAC;YACD,uFAAuF;YACvF,qDAAqD;YACrD,MAAM,OAAO,GAAG,KAA8B,CAAC;YAC/C,MAAM,CAAC,IAAI,CAAC,sDAAsD,EAAE;gBAClE,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,cAAc,CAAC,OAA0B;QACvC,OAAO,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,QAAgB,EAAE,SAAiB,EAAE,QAAgB;QACpE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,SAAS,GAAG,6BAA6B,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC/E,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,MAAM,eAAe,GAAG,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACjE,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,IAAI,eAAe,GAAG,aAAa,EAAE,CAAC;gBACpC,aAAa,GAAG,eAAe,CAAC;YAClC,CAAC;QACH,CAAC;QAED,OAAO,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5D,CAAC;IAED;;OAEG;IACK,aAAa,CACnB,SAAiB,EACjB,SAAiB,EACjB,QAAgB,EAChB,iBAAyB;QAEzB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,GAAG,GAAG,iBAAiB,GAAG,EAAE,GAAG,IAAI,CAAC;QACvD,MAAM,OAAO,GAAsB,EAAE,CAAC;QAEtC,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;YAChD,oBAAoB;YACpB,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;gBAC5C,SAAS;YACX,CAAC;YAED,qBAAqB;YACrB,MAAM,QAAQ,GAAG,iBAAiB,CAChC,SAAS,EACT,SAAS,EACT,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,SAAS,CACjB,CAAC;YAEF,yBAAyB;YACzB,IAAI,QAAQ,IAAI,QAAQ,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC;oBACX,GAAG,MAAM;oBACT,QAAQ;iBACT,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC;QAE9D,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,GAAG,GAAG,IAAI,CAAC,cAAc,CAAC;QAC7C,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC;YACxD,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,UAAU,EAAE,CAAC;gBAC5C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC9B,YAAY,EAAE,CAAC;YACjB,CAAC;QACH,CAAC;QAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAC3D,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI;aAClC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB;QAC1B,2BAA2B;QAC3B,WAAW,CAAC,GAAG,EAAE;YACf,IAAI,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBACxD,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI;aACnD,CAAC,CAAC;YAEH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBAClC,IAAI,CAAC,MAAO,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE;oBAC/B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;oBACzB,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,CAAC;oBACjC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;oBACzD,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;CACF;AAED,qBAAqB;AACrB,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"blitzortung.js","sourceRoot":"","sources":["../../src/services/blitzortung.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/utils/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG;IACxB,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAA+B;IAEtD,YAAY,OAAO,GAAE,MAAa,EAAE,iBAAiB,GAAE,MAAsB,EAc5E;IAED;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAqB9B;IAED;;;;;OAKG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAgB9C;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ;IAiBhB;;OAEG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED;;;OAGG;IACH,OAAO,IAAI,IAAI,CAMd;IAED;;OAEG;IACH,QAAQ,IAAI,UAAU,CAQrB;IAED;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,GAAG,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAe1F;IAED;;OAEG;IACH,UAAU,IAAI,MAAM,CAInB;CACF"}
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/utils/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,KAAK,CAAC,CAAC,GAAG,GAAG;IACxB,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,KAAK,CAAa;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAA+B;IAEtD,YAAY,OAAO,GAAE,MAAa,EAAE,iBAAiB,GAAE,MAAsB,EAgB5E;IAED;;;;OAIG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAqB9B;IAED;;;;;OAKG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAgB9C;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ;IAiBhB;;OAEG;IACH,KAAK,IAAI,IAAI,CAGZ;IAED;;;OAGG;IACH,OAAO,IAAI,IAAI,CAMd;IAED;;OAEG;IACH,QAAQ,IAAI,UAAU,CAQrB;IAED;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;;;;OAKG;IACH,MAAM,CAAC,WAAW,CAAC,GAAG,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAAG,MAAM,CAe1F;IAED;;OAEG;IACH,UAAU,IAAI,MAAM,CAInB;CACF"}
@@ -25,6 +25,8 @@ export class Cache {
25
25
  this.cleanupInterval = setInterval(() => {
26
26
  this.cleanupExpired();
27
27
  }, cleanupIntervalMs);
28
+ // Housekeeping only — must not keep the process alive once nothing else is live.
29
+ this.cleanupInterval.unref();
28
30
  }
29
31
  /**
30
32
  * Get a value from the cache
@@ -1 +1 @@
1
- {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/utils/cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../src/utils/cache.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dangahagan/weather-mcp",
3
- "version": "1.33.5",
3
+ "version": "1.33.7",
4
4
  "description": "MCP server giving AI assistants 17 weather tools with zero API keys: global forecasts, current conditions, alerts, air quality, marine conditions, lightning detection, radar imagery, river levels, wildfire tracking, and historical weather back to 1940. Built entirely on free public APIs (NOAA, Open-Meteo, USGS, NIFC).",
5
5
  "mcpName": "io.github.dgahagan/weather-mcp",
6
6
  "main": "dist/index.js",