@mostlyrightmd/core 1.1.3 → 1.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.
Files changed (49) hide show
  1. package/README.md +1 -1
  2. package/dist/discovery/index.cjs +471 -169
  3. package/dist/discovery/index.cjs.map +1 -1
  4. package/dist/discovery/index.d.cts +39 -11
  5. package/dist/discovery/index.d.ts +39 -11
  6. package/dist/discovery/index.mjs +471 -169
  7. package/dist/discovery/index.mjs.map +1 -1
  8. package/dist/index.cjs +618 -174
  9. package/dist/index.cjs.map +1 -1
  10. package/dist/index.d.cts +326 -29
  11. package/dist/index.d.ts +326 -29
  12. package/dist/index.global.js +610 -173
  13. package/dist/index.global.js.map +1 -1
  14. package/dist/index.mjs +610 -173
  15. package/dist/index.mjs.map +1 -1
  16. package/dist/internal/cache/index.browser.cjs +501 -163
  17. package/dist/internal/cache/index.browser.cjs.map +1 -1
  18. package/dist/internal/cache/index.browser.d.cts +8 -2
  19. package/dist/internal/cache/index.browser.d.ts +8 -2
  20. package/dist/internal/cache/index.browser.mjs +10 -5
  21. package/dist/internal/cache/index.browser.mjs.map +1 -1
  22. package/dist/internal/cache/index.cjs +503 -161
  23. package/dist/internal/cache/index.cjs.map +1 -1
  24. package/dist/internal/cache/index.d.cts +12 -6
  25. package/dist/internal/cache/index.d.ts +12 -6
  26. package/dist/internal/cache/index.mjs +12 -3
  27. package/dist/internal/cache/index.mjs.map +1 -1
  28. package/dist/internal/{chunk-PKJXHY27.mjs → chunk-QDQSYUFW.mjs} +494 -160
  29. package/dist/internal/chunk-QDQSYUFW.mjs.map +1 -0
  30. package/dist/internal/{keys-B7C8C88N.d.cts → versionedCacheStore-DyHDqFIC.d.cts} +23 -1
  31. package/dist/internal/{keys-B7C8C88N.d.ts → versionedCacheStore-DyHDqFIC.d.ts} +23 -1
  32. package/dist/preprocessing/index.cjs +150 -0
  33. package/dist/preprocessing/index.cjs.map +1 -0
  34. package/dist/preprocessing/index.d.cts +111 -0
  35. package/dist/preprocessing/index.d.ts +111 -0
  36. package/dist/preprocessing/index.mjs +121 -0
  37. package/dist/preprocessing/index.mjs.map +1 -0
  38. package/dist/temporal/index.cjs +56 -4
  39. package/dist/temporal/index.cjs.map +1 -1
  40. package/dist/temporal/index.d.cts +24 -1
  41. package/dist/temporal/index.d.ts +24 -1
  42. package/dist/temporal/index.mjs +55 -4
  43. package/dist/temporal/index.mjs.map +1 -1
  44. package/dist/validator.cjs +694 -109
  45. package/dist/validator.cjs.map +1 -1
  46. package/dist/validator.mjs +694 -109
  47. package/dist/validator.mjs.map +1 -1
  48. package/package.json +25 -2
  49. package/dist/internal/chunk-PKJXHY27.mjs.map +0 -1
@@ -20,9 +20,11 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/internal/cache/index.browser.ts
21
21
  var index_browser_exports = {};
22
22
  __export(index_browser_exports, {
23
+ CACHE_SCHEMA_VERSION: () => CACHE_SCHEMA_VERSION,
23
24
  INDEXEDDB_DB_NAME: () => DB_NAME,
24
25
  IndexedDBStore: () => IndexedDBStore,
25
26
  MemoryStore: () => MemoryStore,
27
+ VERSIONED_CACHE_SCHEMA_VERSION: () => CACHE_SCHEMA_VERSION,
26
28
  cacheKeyForClimate: () => cacheKeyForClimate,
27
29
  cacheKeyForObservations: () => cacheKeyForObservations,
28
30
  defaultCacheStore: () => defaultCacheStore,
@@ -32,7 +34,8 @@ __export(index_browser_exports, {
32
34
  isWritableYear: () => isWritableYear,
33
35
  lockKeyFor: () => lockKeyFor,
34
36
  shouldSkipCacheForCurrentLstMonth: () => shouldSkipCacheForCurrentLstMonth,
35
- shouldSkipCacheForCurrentLstYear: () => shouldSkipCacheForCurrentLstYear
37
+ shouldSkipCacheForCurrentLstYear: () => shouldSkipCacheForCurrentLstYear,
38
+ versionedCacheStore: () => versionedCacheStore
36
39
  });
37
40
  module.exports = __toCommonJS(index_browser_exports);
38
41
 
@@ -43,6 +46,7 @@ var import_idb = require("idb");
43
46
  function lockKeyFor(key) {
44
47
  return `mostlyright:cache:lock:${key}`;
45
48
  }
49
+ var CACHE_SCHEMA_VERSION = "v2-phase18-integer-f";
46
50
 
47
51
  // src/internal/cache/indexeddb.ts
48
52
  var DB_NAME = "mostlyright-cache-v1";
@@ -194,6 +198,72 @@ var MemoryStore = class {
194
198
  }
195
199
  };
196
200
 
201
+ // src/internal/cache/versionedCacheStore.ts
202
+ var VERSION_FIELD = "_cache_schema_version";
203
+ function isVersionedEntry(v) {
204
+ if (v === null || typeof v !== "object") return false;
205
+ if (!(VERSION_FIELD in v)) return false;
206
+ return typeof v[VERSION_FIELD] === "string";
207
+ }
208
+ function hasListKeys(s) {
209
+ return typeof s.listKeys === "function";
210
+ }
211
+ var VersionedCacheStore = class {
212
+ #inner;
213
+ #version;
214
+ constructor(inner, version) {
215
+ if (typeof version !== "string" || version.length === 0) {
216
+ throw new TypeError("versionedCacheStore: version must be a non-empty string");
217
+ }
218
+ this.#inner = inner;
219
+ this.#version = version;
220
+ }
221
+ /**
222
+ * Test/diagnostics seam: return the underlying store so tests can assert
223
+ * which concrete backend `defaultCacheStore()` selected. NOT a production
224
+ * API — production code MUST use the wrapped store so version
225
+ * invalidation fires on stale reads.
226
+ *
227
+ * @internal
228
+ */
229
+ __peekInner() {
230
+ return this.#inner;
231
+ }
232
+ async get(key) {
233
+ const raw = await this.#inner.get(key);
234
+ if (raw === null) return null;
235
+ if (!isVersionedEntry(raw)) {
236
+ return null;
237
+ }
238
+ if (raw._cache_schema_version !== this.#version) {
239
+ return null;
240
+ }
241
+ return raw.value;
242
+ }
243
+ async set(key, value, opts) {
244
+ const wrapped = {
245
+ value,
246
+ [VERSION_FIELD]: this.#version
247
+ };
248
+ await this.#inner.set(key, wrapped, opts);
249
+ }
250
+ async delete(key) {
251
+ await this.#inner.delete(key);
252
+ }
253
+ async withLock(key, fn) {
254
+ return this.#inner.withLock(key, fn);
255
+ }
256
+ async listKeys(prefix) {
257
+ if (hasListKeys(this.#inner)) {
258
+ return this.#inner.listKeys(prefix);
259
+ }
260
+ return Object.freeze([]);
261
+ }
262
+ };
263
+ function versionedCacheStore(inner, version) {
264
+ return new VersionedCacheStore(inner, version);
265
+ }
266
+
197
267
  // src/data/generated/stations.ts
198
268
  var STATIONS = [
199
269
  {
@@ -204,7 +274,10 @@ var STATIONS = [
204
274
  latitude: 52.3667,
205
275
  longitude: 13.5033,
206
276
  name: "Berlin Brandenburg",
207
- tz: "Europe/Berlin"
277
+ tz: "Europe/Berlin",
278
+ venues: [
279
+ "polymarket"
280
+ ]
208
281
  },
209
282
  {
210
283
  code: "EDDF",
@@ -214,7 +287,10 @@ var STATIONS = [
214
287
  latitude: 50.0379,
215
288
  longitude: 8.5622,
216
289
  name: "Frankfurt am Main",
217
- tz: "Europe/Berlin"
290
+ tz: "Europe/Berlin",
291
+ venues: [
292
+ "polymarket"
293
+ ]
218
294
  },
219
295
  {
220
296
  code: "EDDM",
@@ -224,7 +300,10 @@ var STATIONS = [
224
300
  latitude: 48.3538,
225
301
  longitude: 11.7861,
226
302
  name: "Munich Franz Josef Strauss",
227
- tz: "Europe/Berlin"
303
+ tz: "Europe/Berlin",
304
+ venues: [
305
+ "polymarket"
306
+ ]
228
307
  },
229
308
  {
230
309
  code: "EFHK",
@@ -234,7 +313,10 @@ var STATIONS = [
234
313
  latitude: 60.3172,
235
314
  longitude: 24.9633,
236
315
  name: "Helsinki-Vantaa",
237
- tz: "Europe/Helsinki"
316
+ tz: "Europe/Helsinki",
317
+ venues: [
318
+ "polymarket"
319
+ ]
238
320
  },
239
321
  {
240
322
  code: "EGKK",
@@ -244,7 +326,10 @@ var STATIONS = [
244
326
  latitude: 51.1481,
245
327
  longitude: -0.1903,
246
328
  name: "London Gatwick",
247
- tz: "Europe/London"
329
+ tz: "Europe/London",
330
+ venues: [
331
+ "polymarket"
332
+ ]
248
333
  },
249
334
  {
250
335
  code: "EGLL",
@@ -254,7 +339,10 @@ var STATIONS = [
254
339
  latitude: 51.4706,
255
340
  longitude: -0.4619,
256
341
  name: "London Heathrow",
257
- tz: "Europe/London"
342
+ tz: "Europe/London",
343
+ venues: [
344
+ "polymarket"
345
+ ]
258
346
  },
259
347
  {
260
348
  code: "EHAM",
@@ -264,7 +352,10 @@ var STATIONS = [
264
352
  latitude: 52.3086,
265
353
  longitude: 4.7639,
266
354
  name: "Amsterdam Schiphol",
267
- tz: "Europe/Amsterdam"
355
+ tz: "Europe/Amsterdam",
356
+ venues: [
357
+ "polymarket"
358
+ ]
268
359
  },
269
360
  {
270
361
  code: "EKCH",
@@ -274,7 +365,10 @@ var STATIONS = [
274
365
  latitude: 55.6181,
275
366
  longitude: 12.6561,
276
367
  name: "Copenhagen Kastrup",
277
- tz: "Europe/Copenhagen"
368
+ tz: "Europe/Copenhagen",
369
+ venues: [
370
+ "polymarket"
371
+ ]
278
372
  },
279
373
  {
280
374
  code: "EPWA",
@@ -284,7 +378,10 @@ var STATIONS = [
284
378
  latitude: 52.1657,
285
379
  longitude: 20.9671,
286
380
  name: "Warsaw Chopin",
287
- tz: "Europe/Warsaw"
381
+ tz: "Europe/Warsaw",
382
+ venues: [
383
+ "polymarket"
384
+ ]
288
385
  },
289
386
  {
290
387
  code: "ESSA",
@@ -294,7 +391,10 @@ var STATIONS = [
294
391
  latitude: 59.6519,
295
392
  longitude: 17.9186,
296
393
  name: "Stockholm Arlanda",
297
- tz: "Europe/Stockholm"
394
+ tz: "Europe/Stockholm",
395
+ venues: [
396
+ "polymarket"
397
+ ]
298
398
  },
299
399
  {
300
400
  code: "ATL",
@@ -304,7 +404,11 @@ var STATIONS = [
304
404
  latitude: 33.6407,
305
405
  longitude: -84.4277,
306
406
  name: "Hartsfield-Jackson Atlanta International",
307
- tz: "America/New_York"
407
+ tz: "America/New_York",
408
+ venues: [
409
+ "kalshi",
410
+ "polymarket"
411
+ ]
308
412
  },
309
413
  {
310
414
  code: "AUS",
@@ -314,7 +418,24 @@ var STATIONS = [
314
418
  latitude: 30.1975,
315
419
  longitude: -97.6664,
316
420
  name: "Austin-Bergstrom International",
317
- tz: "America/Chicago"
421
+ tz: "America/Chicago",
422
+ venues: [
423
+ "kalshi",
424
+ "polymarket"
425
+ ]
426
+ },
427
+ {
428
+ code: "BNA",
429
+ country: "US",
430
+ ghcnh_id: "USW00013897",
431
+ icao: "KBNA",
432
+ latitude: 36.1245,
433
+ longitude: -86.6782,
434
+ name: "Nashville International",
435
+ tz: "America/Chicago",
436
+ venues: [
437
+ "kalshi"
438
+ ]
318
439
  },
319
440
  {
320
441
  code: "BOS",
@@ -324,7 +445,24 @@ var STATIONS = [
324
445
  latitude: 42.3656,
325
446
  longitude: -71.0096,
326
447
  name: "Boston Logan International",
327
- tz: "America/New_York"
448
+ tz: "America/New_York",
449
+ venues: [
450
+ "kalshi",
451
+ "polymarket"
452
+ ]
453
+ },
454
+ {
455
+ code: "CVG",
456
+ country: "US",
457
+ ghcnh_id: "USW00093814",
458
+ icao: "KCVG",
459
+ latitude: 39.0488,
460
+ longitude: -84.6678,
461
+ name: "Cincinnati/Northern Kentucky International",
462
+ tz: "America/New_York",
463
+ venues: [
464
+ "kalshi"
465
+ ]
328
466
  },
329
467
  {
330
468
  code: "DCA",
@@ -334,7 +472,11 @@ var STATIONS = [
334
472
  latitude: 38.8512,
335
473
  longitude: -77.0402,
336
474
  name: "Washington Reagan National",
337
- tz: "America/New_York"
475
+ tz: "America/New_York",
476
+ venues: [
477
+ "kalshi",
478
+ "polymarket"
479
+ ]
338
480
  },
339
481
  {
340
482
  code: "DEN",
@@ -344,7 +486,11 @@ var STATIONS = [
344
486
  latitude: 39.8561,
345
487
  longitude: -104.6737,
346
488
  name: "Denver International",
347
- tz: "America/Denver"
489
+ tz: "America/Denver",
490
+ venues: [
491
+ "kalshi",
492
+ "polymarket"
493
+ ]
348
494
  },
349
495
  {
350
496
  code: "DFW",
@@ -354,7 +500,25 @@ var STATIONS = [
354
500
  latitude: 32.8998,
355
501
  longitude: -97.0403,
356
502
  name: "Dallas-Fort Worth International",
357
- tz: "America/Chicago"
503
+ tz: "America/Chicago",
504
+ venues: [
505
+ "kalshi",
506
+ "polymarket"
507
+ ]
508
+ },
509
+ {
510
+ code: "DTW",
511
+ country: "US",
512
+ ghcnh_id: "USW00094847",
513
+ icao: "KDTW",
514
+ latitude: 42.2124,
515
+ longitude: -83.3534,
516
+ name: "Detroit Metropolitan Wayne County",
517
+ tz: "America/New_York",
518
+ venues: [
519
+ "kalshi",
520
+ "polymarket"
521
+ ]
358
522
  },
359
523
  {
360
524
  code: "HOU",
@@ -364,7 +528,22 @@ var STATIONS = [
364
528
  latitude: 29.6454,
365
529
  longitude: -95.2789,
366
530
  name: "Houston Hobby",
367
- tz: "America/Chicago"
531
+ tz: "America/Chicago",
532
+ venues: []
533
+ },
534
+ {
535
+ code: "IAH",
536
+ country: "US",
537
+ ghcnh_id: "USW00012960",
538
+ icao: "KIAH",
539
+ latitude: 29.9844,
540
+ longitude: -95.3414,
541
+ name: "Houston George Bush Intercontinental",
542
+ tz: "America/Chicago",
543
+ venues: [
544
+ "kalshi",
545
+ "polymarket"
546
+ ]
368
547
  },
369
548
  {
370
549
  code: "LAS",
@@ -374,7 +553,10 @@ var STATIONS = [
374
553
  latitude: 36.084,
375
554
  longitude: -115.1537,
376
555
  name: "Harry Reid (McCarran) International",
377
- tz: "America/Los_Angeles"
556
+ tz: "America/Los_Angeles",
557
+ venues: [
558
+ "kalshi"
559
+ ]
378
560
  },
379
561
  {
380
562
  code: "LAX",
@@ -384,7 +566,11 @@ var STATIONS = [
384
566
  latitude: 33.9425,
385
567
  longitude: -118.4081,
386
568
  name: "Los Angeles International",
387
- tz: "America/Los_Angeles"
569
+ tz: "America/Los_Angeles",
570
+ venues: [
571
+ "kalshi",
572
+ "polymarket"
573
+ ]
388
574
  },
389
575
  {
390
576
  code: "MDW",
@@ -394,7 +580,10 @@ var STATIONS = [
394
580
  latitude: 41.7868,
395
581
  longitude: -87.7522,
396
582
  name: "Chicago Midway International",
397
- tz: "America/Chicago"
583
+ tz: "America/Chicago",
584
+ venues: [
585
+ "kalshi"
586
+ ]
398
587
  },
399
588
  {
400
589
  code: "MIA",
@@ -404,7 +593,11 @@ var STATIONS = [
404
593
  latitude: 25.7959,
405
594
  longitude: -80.287,
406
595
  name: "Miami International",
407
- tz: "America/New_York"
596
+ tz: "America/New_York",
597
+ venues: [
598
+ "kalshi",
599
+ "polymarket"
600
+ ]
408
601
  },
409
602
  {
410
603
  code: "MSP",
@@ -414,7 +607,11 @@ var STATIONS = [
414
607
  latitude: 44.8848,
415
608
  longitude: -93.2223,
416
609
  name: "Minneapolis-St Paul International",
417
- tz: "America/Chicago"
610
+ tz: "America/Chicago",
611
+ venues: [
612
+ "kalshi",
613
+ "polymarket"
614
+ ]
418
615
  },
419
616
  {
420
617
  code: "MSY",
@@ -424,7 +621,8 @@ var STATIONS = [
424
621
  latitude: 29.9934,
425
622
  longitude: -90.258,
426
623
  name: "New Orleans Louis Armstrong International",
427
- tz: "America/Chicago"
624
+ tz: "America/Chicago",
625
+ venues: []
428
626
  },
429
627
  {
430
628
  code: "NYC",
@@ -434,7 +632,10 @@ var STATIONS = [
434
632
  latitude: 40.7789,
435
633
  longitude: -73.9692,
436
634
  name: "Central Park, New York",
437
- tz: "America/New_York"
635
+ tz: "America/New_York",
636
+ venues: [
637
+ "kalshi"
638
+ ]
438
639
  },
439
640
  {
440
641
  code: "OKC",
@@ -444,7 +645,8 @@ var STATIONS = [
444
645
  latitude: 35.3931,
445
646
  longitude: -97.6007,
446
647
  name: "Oklahoma City Will Rogers World",
447
- tz: "America/Chicago"
648
+ tz: "America/Chicago",
649
+ venues: []
448
650
  },
449
651
  {
450
652
  code: "PHL",
@@ -454,7 +656,11 @@ var STATIONS = [
454
656
  latitude: 39.8721,
455
657
  longitude: -75.2411,
456
658
  name: "Philadelphia International",
457
- tz: "America/New_York"
659
+ tz: "America/New_York",
660
+ venues: [
661
+ "kalshi",
662
+ "polymarket"
663
+ ]
458
664
  },
459
665
  {
460
666
  code: "PHX",
@@ -464,7 +670,11 @@ var STATIONS = [
464
670
  latitude: 33.4373,
465
671
  longitude: -112.0078,
466
672
  name: "Phoenix Sky Harbor International",
467
- tz: "America/Phoenix"
673
+ tz: "America/Phoenix",
674
+ venues: [
675
+ "kalshi",
676
+ "polymarket"
677
+ ]
468
678
  },
469
679
  {
470
680
  code: "SAT",
@@ -474,7 +684,8 @@ var STATIONS = [
474
684
  latitude: 29.5337,
475
685
  longitude: -98.4698,
476
686
  name: "San Antonio International",
477
- tz: "America/Chicago"
687
+ tz: "America/Chicago",
688
+ venues: []
478
689
  },
479
690
  {
480
691
  code: "SEA",
@@ -484,7 +695,11 @@ var STATIONS = [
484
695
  latitude: 47.4502,
485
696
  longitude: -122.3088,
486
697
  name: "Seattle-Tacoma International",
487
- tz: "America/Los_Angeles"
698
+ tz: "America/Los_Angeles",
699
+ venues: [
700
+ "kalshi",
701
+ "polymarket"
702
+ ]
488
703
  },
489
704
  {
490
705
  code: "SFO",
@@ -494,7 +709,24 @@ var STATIONS = [
494
709
  latitude: 37.6213,
495
710
  longitude: -122.379,
496
711
  name: "San Francisco International",
497
- tz: "America/Los_Angeles"
712
+ tz: "America/Los_Angeles",
713
+ venues: [
714
+ "kalshi",
715
+ "polymarket"
716
+ ]
717
+ },
718
+ {
719
+ code: "SLC",
720
+ country: "US",
721
+ ghcnh_id: "USW00024127",
722
+ icao: "KSLC",
723
+ latitude: 40.7884,
724
+ longitude: -111.9778,
725
+ name: "Salt Lake City International",
726
+ tz: "America/Denver",
727
+ venues: [
728
+ "kalshi"
729
+ ]
498
730
  },
499
731
  {
500
732
  code: "LEBL",
@@ -504,7 +736,10 @@ var STATIONS = [
504
736
  latitude: 41.2974,
505
737
  longitude: 2.0833,
506
738
  name: "Barcelona El Prat",
507
- tz: "Europe/Madrid"
739
+ tz: "Europe/Madrid",
740
+ venues: [
741
+ "polymarket"
742
+ ]
508
743
  },
509
744
  {
510
745
  code: "LEMD",
@@ -514,7 +749,10 @@ var STATIONS = [
514
749
  latitude: 40.4719,
515
750
  longitude: -3.5626,
516
751
  name: "Madrid Barajas",
517
- tz: "Europe/Madrid"
752
+ tz: "Europe/Madrid",
753
+ venues: [
754
+ "polymarket"
755
+ ]
518
756
  },
519
757
  {
520
758
  code: "LFPB",
@@ -524,7 +762,10 @@ var STATIONS = [
524
762
  latitude: 48.9694,
525
763
  longitude: 2.4414,
526
764
  name: "Paris Le Bourget",
527
- tz: "Europe/Paris"
765
+ tz: "Europe/Paris",
766
+ venues: [
767
+ "polymarket"
768
+ ]
528
769
  },
529
770
  {
530
771
  code: "LFPG",
@@ -534,7 +775,10 @@ var STATIONS = [
534
775
  latitude: 49.0097,
535
776
  longitude: 2.5479,
536
777
  name: "Paris Charles de Gaulle",
537
- tz: "Europe/Paris"
778
+ tz: "Europe/Paris",
779
+ venues: [
780
+ "polymarket"
781
+ ]
538
782
  },
539
783
  {
540
784
  code: "LFPO",
@@ -544,7 +788,10 @@ var STATIONS = [
544
788
  latitude: 48.7233,
545
789
  longitude: 2.3794,
546
790
  name: "Paris Orly",
547
- tz: "Europe/Paris"
791
+ tz: "Europe/Paris",
792
+ venues: [
793
+ "polymarket"
794
+ ]
548
795
  },
549
796
  {
550
797
  code: "LIMC",
@@ -554,7 +801,10 @@ var STATIONS = [
554
801
  latitude: 45.6306,
555
802
  longitude: 8.7281,
556
803
  name: "Milan Malpensa",
557
- tz: "Europe/Rome"
804
+ tz: "Europe/Rome",
805
+ venues: [
806
+ "polymarket"
807
+ ]
558
808
  },
559
809
  {
560
810
  code: "LIRF",
@@ -564,7 +814,10 @@ var STATIONS = [
564
814
  latitude: 41.8003,
565
815
  longitude: 12.2389,
566
816
  name: "Rome Fiumicino",
567
- tz: "Europe/Rome"
817
+ tz: "Europe/Rome",
818
+ venues: [
819
+ "polymarket"
820
+ ]
568
821
  },
569
822
  {
570
823
  code: "LOWW",
@@ -574,7 +827,10 @@ var STATIONS = [
574
827
  latitude: 48.1103,
575
828
  longitude: 16.5697,
576
829
  name: "Vienna International",
577
- tz: "Europe/Vienna"
830
+ tz: "Europe/Vienna",
831
+ venues: [
832
+ "polymarket"
833
+ ]
578
834
  },
579
835
  {
580
836
  code: "LSZH",
@@ -584,7 +840,10 @@ var STATIONS = [
584
840
  latitude: 47.4647,
585
841
  longitude: 8.5492,
586
842
  name: "Zurich",
587
- tz: "Europe/Zurich"
843
+ tz: "Europe/Zurich",
844
+ venues: [
845
+ "polymarket"
846
+ ]
588
847
  },
589
848
  {
590
849
  code: "NZAA",
@@ -594,7 +853,10 @@ var STATIONS = [
594
853
  latitude: -37.0081,
595
854
  longitude: 174.7917,
596
855
  name: "Auckland",
597
- tz: "Pacific/Auckland"
856
+ tz: "Pacific/Auckland",
857
+ venues: [
858
+ "polymarket"
859
+ ]
598
860
  },
599
861
  {
600
862
  code: "NZWN",
@@ -604,7 +866,10 @@ var STATIONS = [
604
866
  latitude: -41.3272,
605
867
  longitude: 174.8053,
606
868
  name: "Wellington",
607
- tz: "Pacific/Auckland"
869
+ tz: "Pacific/Auckland",
870
+ venues: [
871
+ "polymarket"
872
+ ]
608
873
  },
609
874
  {
610
875
  code: "OERK",
@@ -614,7 +879,10 @@ var STATIONS = [
614
879
  latitude: 24.9576,
615
880
  longitude: 46.6988,
616
881
  name: "Riyadh King Khalid International",
617
- tz: "Asia/Riyadh"
882
+ tz: "Asia/Riyadh",
883
+ venues: [
884
+ "polymarket"
885
+ ]
618
886
  },
619
887
  {
620
888
  code: "OMDB",
@@ -624,7 +892,10 @@ var STATIONS = [
624
892
  latitude: 25.2532,
625
893
  longitude: 55.3657,
626
894
  name: "Dubai International",
627
- tz: "Asia/Dubai"
895
+ tz: "Asia/Dubai",
896
+ venues: [
897
+ "polymarket"
898
+ ]
628
899
  },
629
900
  {
630
901
  code: "OTHH",
@@ -634,7 +905,10 @@ var STATIONS = [
634
905
  latitude: 25.2731,
635
906
  longitude: 51.608,
636
907
  name: "Doha Hamad International",
637
- tz: "Asia/Qatar"
908
+ tz: "Asia/Qatar",
909
+ venues: [
910
+ "polymarket"
911
+ ]
638
912
  },
639
913
  {
640
914
  code: "RCTP",
@@ -644,7 +918,10 @@ var STATIONS = [
644
918
  latitude: 25.0777,
645
919
  longitude: 121.2328,
646
920
  name: "Taipei Taoyuan",
647
- tz: "Asia/Taipei"
921
+ tz: "Asia/Taipei",
922
+ venues: [
923
+ "polymarket"
924
+ ]
648
925
  },
649
926
  {
650
927
  code: "RJAA",
@@ -654,7 +931,10 @@ var STATIONS = [
654
931
  latitude: 35.7647,
655
932
  longitude: 140.3864,
656
933
  name: "Tokyo Narita",
657
- tz: "Asia/Tokyo"
934
+ tz: "Asia/Tokyo",
935
+ venues: [
936
+ "polymarket"
937
+ ]
658
938
  },
659
939
  {
660
940
  code: "RJTT",
@@ -664,7 +944,10 @@ var STATIONS = [
664
944
  latitude: 35.5522,
665
945
  longitude: 139.78,
666
946
  name: "Tokyo Haneda",
667
- tz: "Asia/Tokyo"
947
+ tz: "Asia/Tokyo",
948
+ venues: [
949
+ "polymarket"
950
+ ]
668
951
  },
669
952
  {
670
953
  code: "RKSI",
@@ -674,7 +957,10 @@ var STATIONS = [
674
957
  latitude: 37.4691,
675
958
  longitude: 126.4505,
676
959
  name: "Seoul Incheon",
677
- tz: "Asia/Seoul"
960
+ tz: "Asia/Seoul",
961
+ venues: [
962
+ "polymarket"
963
+ ]
678
964
  },
679
965
  {
680
966
  code: "SAEZ",
@@ -684,7 +970,10 @@ var STATIONS = [
684
970
  latitude: -34.8222,
685
971
  longitude: -58.5358,
686
972
  name: "Buenos Aires Ezeiza",
687
- tz: "America/Argentina/Buenos_Aires"
973
+ tz: "America/Argentina/Buenos_Aires",
974
+ venues: [
975
+ "polymarket"
976
+ ]
688
977
  },
689
978
  {
690
979
  code: "SBGR",
@@ -694,7 +983,10 @@ var STATIONS = [
694
983
  latitude: -23.4356,
695
984
  longitude: -46.4731,
696
985
  name: "S\xE3o Paulo Guarulhos",
697
- tz: "America/Sao_Paulo"
986
+ tz: "America/Sao_Paulo",
987
+ venues: [
988
+ "polymarket"
989
+ ]
698
990
  },
699
991
  {
700
992
  code: "UUEE",
@@ -704,7 +996,10 @@ var STATIONS = [
704
996
  latitude: 55.9728,
705
997
  longitude: 37.4147,
706
998
  name: "Moscow Sheremetyevo",
707
- tz: "Europe/Moscow"
999
+ tz: "Europe/Moscow",
1000
+ venues: [
1001
+ "polymarket"
1002
+ ]
708
1003
  },
709
1004
  {
710
1005
  code: "VABB",
@@ -714,7 +1009,10 @@ var STATIONS = [
714
1009
  latitude: 19.0887,
715
1010
  longitude: 72.8679,
716
1011
  name: "Mumbai Chhatrapati Shivaji",
717
- tz: "Asia/Kolkata"
1012
+ tz: "Asia/Kolkata",
1013
+ venues: [
1014
+ "polymarket"
1015
+ ]
718
1016
  },
719
1017
  {
720
1018
  code: "VHHH",
@@ -724,7 +1022,10 @@ var STATIONS = [
724
1022
  latitude: 22.308,
725
1023
  longitude: 113.9185,
726
1024
  name: "Hong Kong International",
727
- tz: "Asia/Hong_Kong"
1025
+ tz: "Asia/Hong_Kong",
1026
+ venues: [
1027
+ "polymarket"
1028
+ ]
728
1029
  },
729
1030
  {
730
1031
  code: "VIDP",
@@ -734,7 +1035,10 @@ var STATIONS = [
734
1035
  latitude: 28.5562,
735
1036
  longitude: 77.1,
736
1037
  name: "Delhi Indira Gandhi",
737
- tz: "Asia/Kolkata"
1038
+ tz: "Asia/Kolkata",
1039
+ venues: [
1040
+ "polymarket"
1041
+ ]
738
1042
  },
739
1043
  {
740
1044
  code: "VTBS",
@@ -744,7 +1048,10 @@ var STATIONS = [
744
1048
  latitude: 13.69,
745
1049
  longitude: 100.7501,
746
1050
  name: "Bangkok Suvarnabhumi",
747
- tz: "Asia/Bangkok"
1051
+ tz: "Asia/Bangkok",
1052
+ venues: [
1053
+ "polymarket"
1054
+ ]
748
1055
  },
749
1056
  {
750
1057
  code: "WSSS",
@@ -754,7 +1061,10 @@ var STATIONS = [
754
1061
  latitude: 1.3644,
755
1062
  longitude: 103.9915,
756
1063
  name: "Singapore Changi",
757
- tz: "Asia/Singapore"
1064
+ tz: "Asia/Singapore",
1065
+ venues: [
1066
+ "polymarket"
1067
+ ]
758
1068
  },
759
1069
  {
760
1070
  code: "YBBN",
@@ -764,7 +1074,10 @@ var STATIONS = [
764
1074
  latitude: -27.3842,
765
1075
  longitude: 153.1175,
766
1076
  name: "Brisbane",
767
- tz: "Australia/Brisbane"
1077
+ tz: "Australia/Brisbane",
1078
+ venues: [
1079
+ "polymarket"
1080
+ ]
768
1081
  },
769
1082
  {
770
1083
  code: "YMML",
@@ -774,7 +1087,10 @@ var STATIONS = [
774
1087
  latitude: -37.6733,
775
1088
  longitude: 144.8433,
776
1089
  name: "Melbourne Tullamarine",
777
- tz: "Australia/Melbourne"
1090
+ tz: "Australia/Melbourne",
1091
+ venues: [
1092
+ "polymarket"
1093
+ ]
778
1094
  },
779
1095
  {
780
1096
  code: "YSSY",
@@ -784,7 +1100,10 @@ var STATIONS = [
784
1100
  latitude: -33.9461,
785
1101
  longitude: 151.1772,
786
1102
  name: "Sydney Kingsford Smith",
787
- tz: "Australia/Sydney"
1103
+ tz: "Australia/Sydney",
1104
+ venues: [
1105
+ "polymarket"
1106
+ ]
788
1107
  },
789
1108
  {
790
1109
  code: "ZBAA",
@@ -794,7 +1113,10 @@ var STATIONS = [
794
1113
  latitude: 40.0801,
795
1114
  longitude: 116.5846,
796
1115
  name: "Beijing Capital",
797
- tz: "Asia/Shanghai"
1116
+ tz: "Asia/Shanghai",
1117
+ venues: [
1118
+ "polymarket"
1119
+ ]
798
1120
  },
799
1121
  {
800
1122
  code: "ZSPD",
@@ -804,16 +1126,22 @@ var STATIONS = [
804
1126
  latitude: 31.1443,
805
1127
  longitude: 121.8083,
806
1128
  name: "Shanghai Pudong",
807
- tz: "Asia/Shanghai"
1129
+ tz: "Asia/Shanghai",
1130
+ venues: [
1131
+ "polymarket"
1132
+ ]
808
1133
  }
809
1134
  ];
810
1135
  var STATION_BY_CODE = /* @__PURE__ */ new Map([
811
1136
  ["ATL", STATIONS[10]],
812
1137
  ["AUS", STATIONS[11]],
813
- ["BOS", STATIONS[12]],
814
- ["DCA", STATIONS[13]],
815
- ["DEN", STATIONS[14]],
816
- ["DFW", STATIONS[15]],
1138
+ ["BNA", STATIONS[12]],
1139
+ ["BOS", STATIONS[13]],
1140
+ ["CVG", STATIONS[14]],
1141
+ ["DCA", STATIONS[15]],
1142
+ ["DEN", STATIONS[16]],
1143
+ ["DFW", STATIONS[17]],
1144
+ ["DTW", STATIONS[18]],
817
1145
  ["EDDB", STATIONS[0]],
818
1146
  ["EDDF", STATIONS[1]],
819
1147
  ["EDDM", STATIONS[2]],
@@ -824,51 +1152,53 @@ var STATION_BY_CODE = /* @__PURE__ */ new Map([
824
1152
  ["EKCH", STATIONS[7]],
825
1153
  ["EPWA", STATIONS[8]],
826
1154
  ["ESSA", STATIONS[9]],
827
- ["HOU", STATIONS[16]],
828
- ["LAS", STATIONS[17]],
829
- ["LAX", STATIONS[18]],
830
- ["LEBL", STATIONS[30]],
831
- ["LEMD", STATIONS[31]],
832
- ["LFPB", STATIONS[32]],
833
- ["LFPG", STATIONS[33]],
834
- ["LFPO", STATIONS[34]],
835
- ["LIMC", STATIONS[35]],
836
- ["LIRF", STATIONS[36]],
837
- ["LOWW", STATIONS[37]],
838
- ["LSZH", STATIONS[38]],
839
- ["MDW", STATIONS[19]],
840
- ["MIA", STATIONS[20]],
841
- ["MSP", STATIONS[21]],
842
- ["MSY", STATIONS[22]],
843
- ["NYC", STATIONS[23]],
844
- ["NZAA", STATIONS[39]],
845
- ["NZWN", STATIONS[40]],
846
- ["OERK", STATIONS[41]],
847
- ["OKC", STATIONS[24]],
848
- ["OMDB", STATIONS[42]],
849
- ["OTHH", STATIONS[43]],
850
- ["PHL", STATIONS[25]],
851
- ["PHX", STATIONS[26]],
852
- ["RCTP", STATIONS[44]],
853
- ["RJAA", STATIONS[45]],
854
- ["RJTT", STATIONS[46]],
855
- ["RKSI", STATIONS[47]],
856
- ["SAEZ", STATIONS[48]],
857
- ["SAT", STATIONS[27]],
858
- ["SBGR", STATIONS[49]],
859
- ["SEA", STATIONS[28]],
860
- ["SFO", STATIONS[29]],
861
- ["UUEE", STATIONS[50]],
862
- ["VABB", STATIONS[51]],
863
- ["VHHH", STATIONS[52]],
864
- ["VIDP", STATIONS[53]],
865
- ["VTBS", STATIONS[54]],
866
- ["WSSS", STATIONS[55]],
867
- ["YBBN", STATIONS[56]],
868
- ["YMML", STATIONS[57]],
869
- ["YSSY", STATIONS[58]],
870
- ["ZBAA", STATIONS[59]],
871
- ["ZSPD", STATIONS[60]]
1155
+ ["HOU", STATIONS[19]],
1156
+ ["IAH", STATIONS[20]],
1157
+ ["LAS", STATIONS[21]],
1158
+ ["LAX", STATIONS[22]],
1159
+ ["LEBL", STATIONS[35]],
1160
+ ["LEMD", STATIONS[36]],
1161
+ ["LFPB", STATIONS[37]],
1162
+ ["LFPG", STATIONS[38]],
1163
+ ["LFPO", STATIONS[39]],
1164
+ ["LIMC", STATIONS[40]],
1165
+ ["LIRF", STATIONS[41]],
1166
+ ["LOWW", STATIONS[42]],
1167
+ ["LSZH", STATIONS[43]],
1168
+ ["MDW", STATIONS[23]],
1169
+ ["MIA", STATIONS[24]],
1170
+ ["MSP", STATIONS[25]],
1171
+ ["MSY", STATIONS[26]],
1172
+ ["NYC", STATIONS[27]],
1173
+ ["NZAA", STATIONS[44]],
1174
+ ["NZWN", STATIONS[45]],
1175
+ ["OERK", STATIONS[46]],
1176
+ ["OKC", STATIONS[28]],
1177
+ ["OMDB", STATIONS[47]],
1178
+ ["OTHH", STATIONS[48]],
1179
+ ["PHL", STATIONS[29]],
1180
+ ["PHX", STATIONS[30]],
1181
+ ["RCTP", STATIONS[49]],
1182
+ ["RJAA", STATIONS[50]],
1183
+ ["RJTT", STATIONS[51]],
1184
+ ["RKSI", STATIONS[52]],
1185
+ ["SAEZ", STATIONS[53]],
1186
+ ["SAT", STATIONS[31]],
1187
+ ["SBGR", STATIONS[54]],
1188
+ ["SEA", STATIONS[32]],
1189
+ ["SFO", STATIONS[33]],
1190
+ ["SLC", STATIONS[34]],
1191
+ ["UUEE", STATIONS[55]],
1192
+ ["VABB", STATIONS[56]],
1193
+ ["VHHH", STATIONS[57]],
1194
+ ["VIDP", STATIONS[58]],
1195
+ ["VTBS", STATIONS[59]],
1196
+ ["WSSS", STATIONS[60]],
1197
+ ["YBBN", STATIONS[61]],
1198
+ ["YMML", STATIONS[62]],
1199
+ ["YSSY", STATIONS[63]],
1200
+ ["ZBAA", STATIONS[64]],
1201
+ ["ZSPD", STATIONS[65]]
872
1202
  ]);
873
1203
  var STATION_BY_ICAO = /* @__PURE__ */ new Map([
874
1204
  ["EDDB", STATIONS[0]],
@@ -883,55 +1213,60 @@ var STATION_BY_ICAO = /* @__PURE__ */ new Map([
883
1213
  ["ESSA", STATIONS[9]],
884
1214
  ["KATL", STATIONS[10]],
885
1215
  ["KAUS", STATIONS[11]],
886
- ["KBOS", STATIONS[12]],
887
- ["KDCA", STATIONS[13]],
888
- ["KDEN", STATIONS[14]],
889
- ["KDFW", STATIONS[15]],
890
- ["KHOU", STATIONS[16]],
891
- ["KLAS", STATIONS[17]],
892
- ["KLAX", STATIONS[18]],
893
- ["KMDW", STATIONS[19]],
894
- ["KMIA", STATIONS[20]],
895
- ["KMSP", STATIONS[21]],
896
- ["KMSY", STATIONS[22]],
897
- ["KNYC", STATIONS[23]],
898
- ["KOKC", STATIONS[24]],
899
- ["KPHL", STATIONS[25]],
900
- ["KPHX", STATIONS[26]],
901
- ["KSAT", STATIONS[27]],
902
- ["KSEA", STATIONS[28]],
903
- ["KSFO", STATIONS[29]],
904
- ["LEBL", STATIONS[30]],
905
- ["LEMD", STATIONS[31]],
906
- ["LFPB", STATIONS[32]],
907
- ["LFPG", STATIONS[33]],
908
- ["LFPO", STATIONS[34]],
909
- ["LIMC", STATIONS[35]],
910
- ["LIRF", STATIONS[36]],
911
- ["LOWW", STATIONS[37]],
912
- ["LSZH", STATIONS[38]],
913
- ["NZAA", STATIONS[39]],
914
- ["NZWN", STATIONS[40]],
915
- ["OERK", STATIONS[41]],
916
- ["OMDB", STATIONS[42]],
917
- ["OTHH", STATIONS[43]],
918
- ["RCTP", STATIONS[44]],
919
- ["RJAA", STATIONS[45]],
920
- ["RJTT", STATIONS[46]],
921
- ["RKSI", STATIONS[47]],
922
- ["SAEZ", STATIONS[48]],
923
- ["SBGR", STATIONS[49]],
924
- ["UUEE", STATIONS[50]],
925
- ["VABB", STATIONS[51]],
926
- ["VHHH", STATIONS[52]],
927
- ["VIDP", STATIONS[53]],
928
- ["VTBS", STATIONS[54]],
929
- ["WSSS", STATIONS[55]],
930
- ["YBBN", STATIONS[56]],
931
- ["YMML", STATIONS[57]],
932
- ["YSSY", STATIONS[58]],
933
- ["ZBAA", STATIONS[59]],
934
- ["ZSPD", STATIONS[60]]
1216
+ ["KBNA", STATIONS[12]],
1217
+ ["KBOS", STATIONS[13]],
1218
+ ["KCVG", STATIONS[14]],
1219
+ ["KDCA", STATIONS[15]],
1220
+ ["KDEN", STATIONS[16]],
1221
+ ["KDFW", STATIONS[17]],
1222
+ ["KDTW", STATIONS[18]],
1223
+ ["KHOU", STATIONS[19]],
1224
+ ["KIAH", STATIONS[20]],
1225
+ ["KLAS", STATIONS[21]],
1226
+ ["KLAX", STATIONS[22]],
1227
+ ["KMDW", STATIONS[23]],
1228
+ ["KMIA", STATIONS[24]],
1229
+ ["KMSP", STATIONS[25]],
1230
+ ["KMSY", STATIONS[26]],
1231
+ ["KNYC", STATIONS[27]],
1232
+ ["KOKC", STATIONS[28]],
1233
+ ["KPHL", STATIONS[29]],
1234
+ ["KPHX", STATIONS[30]],
1235
+ ["KSAT", STATIONS[31]],
1236
+ ["KSEA", STATIONS[32]],
1237
+ ["KSFO", STATIONS[33]],
1238
+ ["KSLC", STATIONS[34]],
1239
+ ["LEBL", STATIONS[35]],
1240
+ ["LEMD", STATIONS[36]],
1241
+ ["LFPB", STATIONS[37]],
1242
+ ["LFPG", STATIONS[38]],
1243
+ ["LFPO", STATIONS[39]],
1244
+ ["LIMC", STATIONS[40]],
1245
+ ["LIRF", STATIONS[41]],
1246
+ ["LOWW", STATIONS[42]],
1247
+ ["LSZH", STATIONS[43]],
1248
+ ["NZAA", STATIONS[44]],
1249
+ ["NZWN", STATIONS[45]],
1250
+ ["OERK", STATIONS[46]],
1251
+ ["OMDB", STATIONS[47]],
1252
+ ["OTHH", STATIONS[48]],
1253
+ ["RCTP", STATIONS[49]],
1254
+ ["RJAA", STATIONS[50]],
1255
+ ["RJTT", STATIONS[51]],
1256
+ ["RKSI", STATIONS[52]],
1257
+ ["SAEZ", STATIONS[53]],
1258
+ ["SBGR", STATIONS[54]],
1259
+ ["UUEE", STATIONS[55]],
1260
+ ["VABB", STATIONS[56]],
1261
+ ["VHHH", STATIONS[57]],
1262
+ ["VIDP", STATIONS[58]],
1263
+ ["VTBS", STATIONS[59]],
1264
+ ["WSSS", STATIONS[60]],
1265
+ ["YBBN", STATIONS[61]],
1266
+ ["YMML", STATIONS[62]],
1267
+ ["YSSY", STATIONS[63]],
1268
+ ["ZBAA", STATIONS[64]],
1269
+ ["ZSPD", STATIONS[65]]
935
1270
  ]);
936
1271
 
937
1272
  // src/snapshot.ts
@@ -1162,14 +1497,16 @@ function cacheKeyForClimate(station, year) {
1162
1497
 
1163
1498
  // src/internal/cache/index.browser.ts
1164
1499
  async function defaultCacheStore() {
1165
- if (typeof indexedDB !== "undefined") return new IndexedDBStore();
1166
- return new MemoryStore();
1500
+ const inner = typeof indexedDB !== "undefined" ? new IndexedDBStore() : new MemoryStore();
1501
+ return versionedCacheStore(inner, CACHE_SCHEMA_VERSION);
1167
1502
  }
1168
1503
  // Annotate the CommonJS export names for ESM import in node:
1169
1504
  0 && (module.exports = {
1505
+ CACHE_SCHEMA_VERSION,
1170
1506
  INDEXEDDB_DB_NAME,
1171
1507
  IndexedDBStore,
1172
1508
  MemoryStore,
1509
+ VERSIONED_CACHE_SCHEMA_VERSION,
1173
1510
  cacheKeyForClimate,
1174
1511
  cacheKeyForObservations,
1175
1512
  defaultCacheStore,
@@ -1179,6 +1516,7 @@ async function defaultCacheStore() {
1179
1516
  isWritableYear,
1180
1517
  lockKeyFor,
1181
1518
  shouldSkipCacheForCurrentLstMonth,
1182
- shouldSkipCacheForCurrentLstYear
1519
+ shouldSkipCacheForCurrentLstYear,
1520
+ versionedCacheStore
1183
1521
  });
1184
1522
  //# sourceMappingURL=index.browser.cjs.map