refresh data sources close #73

This commit is contained in:
Matt Walsh
2025-04-06 09:42:58 -05:00
parent 6f260a6ac7
commit fb93ade4d2
18 changed files with 21194 additions and 26727 deletions

6
.vscode/launch.json vendored
View File

@@ -18,7 +18,7 @@
},
{
"name": "Data:stations",
"program": "${workspaceFolder}/datagenerators/stations.js",
"program": "${workspaceFolder}/datagenerators/stations.mjs",
"request": "launch",
"skipFiles": [
"<node_internals>/**"
@@ -27,7 +27,7 @@
},
{
"name": "Data:regionalcities",
"program": "${workspaceFolder}/datagenerators/regionalcities.js",
"program": "${workspaceFolder}/datagenerators/regionalcities.mjs",
"request": "launch",
"skipFiles": [
"<node_internals>/**"
@@ -36,7 +36,7 @@
},
{
"name": "Data:travelcities",
"program": "${workspaceFolder}/datagenerators/travelcities.js",
"program": "${workspaceFolder}/datagenerators/travelcities.mjs",
"request": "launch",
"skipFiles": [
"<node_internals>/**"

View File

@@ -22,5 +22,8 @@
},
"eslint.validate": [
"javascript"
],
"cSpell.words": [
"Tucsan"
]
}

View File

@@ -19,4 +19,4 @@ const chunk = (data, chunkSize = 10) => {
return chunks;
};
module.exports = chunk;
export default chunk;

View File

@@ -1,8 +1,7 @@
// async https wrapper
import https from 'https';
const https = require('https');
module.exports = (url) => new Promise((resolve, reject) => {
const get = (url) => new Promise((resolve, reject) => {
const headers = {};
headers['user-agent'] = '(WeatherStar 4000+ data generator, ws4000@netbymatt.com)';
@@ -22,3 +21,5 @@ module.exports = (url) => new Promise((resolve, reject) => {
reject(e);
});
});
export default get;

View File

@@ -4,8 +4,8 @@
"lat": 33.749,
"lon": -84.388,
"point": {
"x": 50,
"y": 86,
"x": 51,
"y": 87,
"wfo": "FFC"
}
},
@@ -24,8 +24,8 @@
"lat": 41.9796,
"lon": -87.9045,
"point": {
"x": 65,
"y": 76,
"x": 66,
"y": 77,
"wfo": "LOT"
}
},
@@ -34,8 +34,8 @@
"lat": 41.4995,
"lon": -81.6954,
"point": {
"x": 82,
"y": 64,
"x": 83,
"y": 65,
"wfo": "CLE"
}
},
@@ -44,8 +44,8 @@
"lat": 32.8959,
"lon": -97.0372,
"point": {
"x": 79,
"y": 108,
"x": 80,
"y": 109,
"wfo": "FWD"
}
},
@@ -54,8 +54,8 @@
"lat": 39.7391,
"lon": -104.9847,
"point": {
"x": 62,
"y": 60,
"x": 63,
"y": 61,
"wfo": "BOU"
}
},
@@ -64,8 +64,8 @@
"lat": 42.3314,
"lon": -83.0457,
"point": {
"x": 65,
"y": 33,
"x": 66,
"y": 34,
"wfo": "DTX"
}
},
@@ -94,8 +94,8 @@
"lat": 39.7684,
"lon": -86.158,
"point": {
"x": 57,
"y": 68,
"x": 58,
"y": 69,
"wfo": "IND"
}
},
@@ -104,8 +104,8 @@
"lat": 34.0522,
"lon": -118.2437,
"point": {
"x": 154,
"y": 44,
"x": 155,
"y": 45,
"wfo": "LOX"
}
},
@@ -114,8 +114,8 @@
"lat": 25.7743,
"lon": -80.1937,
"point": {
"x": 109,
"y": 50,
"x": 110,
"y": 51,
"wfo": "MFL"
}
},
@@ -124,8 +124,8 @@
"lat": 44.98,
"lon": -93.2638,
"point": {
"x": 107,
"y": 71,
"x": 108,
"y": 72,
"wfo": "MPX"
}
},
@@ -134,8 +134,8 @@
"lat": 40.78,
"lon": -73.88,
"point": {
"x": 36,
"y": 38,
"x": 37,
"y": 39,
"wfo": "OKX"
}
},
@@ -144,8 +144,8 @@
"lat": 36.8468,
"lon": -76.2852,
"point": {
"x": 89,
"y": 51,
"x": 90,
"y": 52,
"wfo": "AKQ"
}
},
@@ -164,8 +164,8 @@
"lat": 39.9523,
"lon": -75.1638,
"point": {
"x": 49,
"y": 75,
"x": 50,
"y": 76,
"wfo": "PHI"
}
},
@@ -174,8 +174,8 @@
"lat": 40.4406,
"lon": -79.9959,
"point": {
"x": 77,
"y": 65,
"x": 78,
"y": 66,
"wfo": "PBZ"
}
},
@@ -184,8 +184,8 @@
"lat": 38.6273,
"lon": -90.1979,
"point": {
"x": 94,
"y": 73,
"x": 95,
"y": 74,
"wfo": "LSX"
}
},
@@ -204,8 +204,8 @@
"lat": 47.6062,
"lon": -122.3321,
"point": {
"x": 124,
"y": 67,
"x": 125,
"y": 68,
"wfo": "SEW"
}
},
@@ -214,8 +214,8 @@
"lat": 43.0481,
"lon": -76.1474,
"point": {
"x": 51,
"y": 98,
"x": 52,
"y": 99,
"wfo": "BGM"
}
},
@@ -224,8 +224,8 @@
"lat": 27.9756,
"lon": -82.5329,
"point": {
"x": 67,
"y": 97,
"x": 68,
"y": 98,
"wfo": "TBW"
}
},
@@ -244,8 +244,8 @@
"lat": 42.6526,
"lon": -73.7562,
"point": {
"x": 58,
"y": 58,
"x": 72,
"y": 63,
"wfo": "ALY"
}
},
@@ -254,8 +254,8 @@
"lat": 35.0845,
"lon": -106.6511,
"point": {
"x": 97,
"y": 118,
"x": 98,
"y": 121,
"wfo": "ABQ"
}
},
@@ -264,8 +264,8 @@
"lat": 35.222,
"lon": -101.8313,
"point": {
"x": 47,
"y": 25,
"x": 48,
"y": 26,
"wfo": "AMA"
}
},
@@ -284,8 +284,8 @@
"lat": 30.2671,
"lon": -97.7431,
"point": {
"x": 155,
"y": 90,
"x": 156,
"y": 91,
"wfo": "EWX"
}
},
@@ -294,8 +294,8 @@
"lat": 44.7502,
"lon": -117.6677,
"point": {
"x": 93,
"y": 145,
"x": 94,
"y": 146,
"wfo": "BOI"
}
},
@@ -314,7 +314,7 @@
"lat": 44.8012,
"lon": -68.7778,
"point": {
"x": 72,
"x": 66,
"y": 62,
"wfo": "CAR"
}
@@ -324,8 +324,8 @@
"lat": 33.5207,
"lon": -86.8025,
"point": {
"x": 58,
"y": 83,
"x": 59,
"y": 84,
"wfo": "BMX"
}
},
@@ -334,8 +334,8 @@
"lat": 46.8083,
"lon": -100.7837,
"point": {
"x": 109,
"y": 46,
"x": 110,
"y": 47,
"wfo": "BIS"
}
},
@@ -344,8 +344,8 @@
"lat": 43.6135,
"lon": -116.2034,
"point": {
"x": 132,
"y": 85,
"x": 133,
"y": 86,
"wfo": "BOI"
}
},
@@ -354,8 +354,8 @@
"lat": 42.8864,
"lon": -78.8784,
"point": {
"x": 35,
"y": 46,
"x": 36,
"y": 47,
"wfo": "BUF"
}
},
@@ -374,8 +374,8 @@
"lat": 32.7766,
"lon": -79.9309,
"point": {
"x": 86,
"y": 76,
"x": 87,
"y": 77,
"wfo": "CHS"
}
},
@@ -384,8 +384,8 @@
"lat": 38.3498,
"lon": -81.6326,
"point": {
"x": 62,
"y": 66,
"x": 63,
"y": 67,
"wfo": "RLX"
}
},
@@ -394,8 +394,8 @@
"lat": 35.2271,
"lon": -80.8431,
"point": {
"x": 118,
"y": 64,
"x": 119,
"y": 65,
"wfo": "GSP"
}
},
@@ -404,8 +404,8 @@
"lat": 41.14,
"lon": -104.8202,
"point": {
"x": 109,
"y": 13,
"x": 110,
"y": 14,
"wfo": "CYS"
}
},
@@ -414,8 +414,8 @@
"lat": 39.162,
"lon": -84.4569,
"point": {
"x": 36,
"y": 40,
"x": 37,
"y": 41,
"wfo": "ILN"
}
},
@@ -434,8 +434,8 @@
"lat": 39.9612,
"lon": -82.9988,
"point": {
"x": 84,
"y": 80,
"x": 85,
"y": 81,
"wfo": "ILN"
}
},
@@ -444,8 +444,8 @@
"lat": 41.6005,
"lon": -93.6091,
"point": {
"x": 73,
"y": 49,
"x": 74,
"y": 50,
"wfo": "DMX"
}
},
@@ -454,8 +454,8 @@
"lat": 42.5006,
"lon": -90.6646,
"point": {
"x": 62,
"y": 110,
"x": 63,
"y": 111,
"wfo": "DVN"
}
},
@@ -474,7 +474,7 @@
"lat": 44.9062,
"lon": -66.99,
"point": {
"x": 129,
"x": 123,
"y": 79,
"wfo": "CAR"
}
@@ -484,8 +484,8 @@
"lat": 32.792,
"lon": -115.563,
"point": {
"x": 26,
"y": 46,
"x": 27,
"y": 47,
"wfo": "PSR"
}
},
@@ -494,8 +494,8 @@
"lat": 31.7587,
"lon": -106.4869,
"point": {
"x": 99,
"y": 55,
"x": 100,
"y": 56,
"wfo": "EPZ"
}
},
@@ -504,8 +504,8 @@
"lat": 44.0521,
"lon": -123.0867,
"point": {
"x": 84,
"y": 38,
"x": 85,
"y": 39,
"wfo": "PQR"
}
},
@@ -514,8 +514,8 @@
"lat": 46.8772,
"lon": -96.7898,
"point": {
"x": 99,
"y": 56,
"x": 100,
"y": 57,
"wfo": "FGF"
}
},
@@ -524,8 +524,8 @@
"lat": 35.1981,
"lon": -111.6513,
"point": {
"x": 73,
"y": 88,
"x": 74,
"y": 89,
"wfo": "FGZ"
}
},
@@ -544,8 +544,8 @@
"lat": 39.0639,
"lon": -108.5506,
"point": {
"x": 94,
"y": 101,
"x": 95,
"y": 102,
"wfo": "GJT"
}
},
@@ -554,8 +554,8 @@
"lat": 42.9634,
"lon": -85.6681,
"point": {
"x": 40,
"y": 46,
"x": 41,
"y": 47,
"wfo": "GRR"
}
},
@@ -564,8 +564,8 @@
"lat": 48.55,
"lon": -109.6841,
"point": {
"x": 154,
"y": 187,
"x": 155,
"y": 188,
"wfo": "TFX"
}
},
@@ -574,8 +574,8 @@
"lat": 46.5927,
"lon": -112.0361,
"point": {
"x": 68,
"y": 103,
"x": 69,
"y": 104,
"wfo": "TFX"
}
},
@@ -584,8 +584,8 @@
"lat": 21.3069,
"lon": -157.8583,
"point": {
"x": 153,
"y": 144,
"x": 154,
"y": 145,
"wfo": "HFO"
}
},
@@ -594,8 +594,8 @@
"lat": 34.5037,
"lon": -93.0552,
"point": {
"x": 53,
"y": 60,
"x": 54,
"y": 61,
"wfo": "LZK"
}
},
@@ -604,8 +604,8 @@
"lat": 43.4666,
"lon": -112.0341,
"point": {
"x": 115,
"y": 72,
"x": 124,
"y": 73,
"wfo": "PIH"
}
},
@@ -614,8 +614,8 @@
"lat": 32.2988,
"lon": -90.1848,
"point": {
"x": 75,
"y": 62,
"x": 76,
"y": 63,
"wfo": "JAN"
}
},
@@ -624,8 +624,8 @@
"lat": 30.3322,
"lon": -81.6556,
"point": {
"x": 65,
"y": 64,
"x": 66,
"y": 65,
"wfo": "JAX"
}
},
@@ -644,8 +644,8 @@
"lat": 39.1142,
"lon": -94.6275,
"point": {
"x": 41,
"y": 50,
"x": 42,
"y": 51,
"wfo": "EAX"
}
},
@@ -654,8 +654,8 @@
"lat": 24.5557,
"lon": -81.7826,
"point": {
"x": 61,
"y": 47,
"x": 62,
"y": 48,
"wfo": "KEY"
}
},
@@ -684,8 +684,8 @@
"lat": 36.175,
"lon": -115.1372,
"point": {
"x": 122,
"y": 97,
"x": 123,
"y": 98,
"wfo": "VEF"
}
},
@@ -704,8 +704,8 @@
"lat": 40.8,
"lon": -96.667,
"point": {
"x": 56,
"y": 38,
"x": 57,
"y": 39,
"wfo": "OAX"
}
},
@@ -714,8 +714,8 @@
"lat": 33.767,
"lon": -118.1892,
"point": {
"x": 154,
"y": 31,
"x": 155,
"y": 32,
"wfo": "LOX"
}
},
@@ -724,8 +724,8 @@
"lat": 38.2542,
"lon": -85.7594,
"point": {
"x": 49,
"y": 77,
"x": 50,
"y": 78,
"wfo": "LMK"
}
},
@@ -734,8 +734,8 @@
"lat": 42.9956,
"lon": -71.4548,
"point": {
"x": 41,
"y": 20,
"x": 42,
"y": 21,
"wfo": "GYX"
}
},
@@ -744,8 +744,8 @@
"lat": 35.1495,
"lon": -90.049,
"point": {
"x": 41,
"y": 66,
"x": 42,
"y": 67,
"wfo": "MEG"
}
},
@@ -754,8 +754,8 @@
"lat": 43.0389,
"lon": -87.9065,
"point": {
"x": 87,
"y": 64,
"x": 88,
"y": 65,
"wfo": "MKX"
}
},
@@ -764,8 +764,8 @@
"lat": 30.6944,
"lon": -88.043,
"point": {
"x": 51,
"y": 66,
"x": 52,
"y": 67,
"wfo": "MOB"
}
},
@@ -774,8 +774,8 @@
"lat": 32.3668,
"lon": -86.3,
"point": {
"x": 80,
"y": 34,
"x": 81,
"y": 35,
"wfo": "BMX"
}
},
@@ -784,8 +784,8 @@
"lat": 44.2601,
"lon": -72.5754,
"point": {
"x": 110,
"y": 49,
"x": 111,
"y": 50,
"wfo": "BTV"
}
},
@@ -794,8 +794,8 @@
"lat": 36.1659,
"lon": -86.7844,
"point": {
"x": 49,
"y": 56,
"x": 50,
"y": 57,
"wfo": "OHX"
}
},
@@ -804,8 +804,8 @@
"lat": 40.7357,
"lon": -74.1724,
"point": {
"x": 26,
"y": 34,
"x": 27,
"y": 35,
"wfo": "OKX"
}
},
@@ -814,8 +814,8 @@
"lat": 41.3081,
"lon": -72.9282,
"point": {
"x": 65,
"y": 67,
"x": 66,
"y": 68,
"wfo": "OKX"
}
},
@@ -845,7 +845,7 @@
"lon": -97.5164,
"point": {
"x": 97,
"y": 93,
"y": 94,
"wfo": "OUN"
}
},
@@ -854,8 +854,8 @@
"lat": 41.2586,
"lon": -95.9378,
"point": {
"x": 82,
"y": 59,
"x": 83,
"y": 60,
"wfo": "OAX"
}
},
@@ -864,8 +864,8 @@
"lat": 33.4484,
"lon": -112.074,
"point": {
"x": 158,
"y": 57,
"x": 159,
"y": 58,
"wfo": "PSR"
}
},
@@ -874,8 +874,8 @@
"lat": 44.3683,
"lon": -100.351,
"point": {
"x": 54,
"y": 43,
"x": 55,
"y": 44,
"wfo": "ABR"
}
},
@@ -884,8 +884,8 @@
"lat": 43.6615,
"lon": -70.2553,
"point": {
"x": 75,
"y": 58,
"x": 76,
"y": 59,
"wfo": "GYX"
}
},
@@ -894,8 +894,8 @@
"lat": 45.5234,
"lon": -122.6762,
"point": {
"x": 112,
"y": 103,
"x": 113,
"y": 104,
"wfo": "PQR"
}
},
@@ -914,8 +914,8 @@
"lat": 35.7721,
"lon": -78.6386,
"point": {
"x": 74,
"y": 56,
"x": 75,
"y": 57,
"wfo": "RAH"
}
},
@@ -924,8 +924,8 @@
"lat": 39.4986,
"lon": -119.7681,
"point": {
"x": 45,
"y": 104,
"x": 46,
"y": 105,
"wfo": "REV"
}
},
@@ -934,8 +934,8 @@
"lat": 38.7725,
"lon": -112.0841,
"point": {
"x": 81,
"y": 86,
"x": 82,
"y": 87,
"wfo": "SLC"
}
},
@@ -944,8 +944,8 @@
"lat": 37.5538,
"lon": -77.4603,
"point": {
"x": 44,
"y": 76,
"x": 45,
"y": 77,
"wfo": "AKQ"
}
},
@@ -954,8 +954,8 @@
"lat": 37.271,
"lon": -79.9414,
"point": {
"x": 73,
"y": 68,
"x": 74,
"y": 69,
"wfo": "RNK"
}
},
@@ -964,8 +964,8 @@
"lat": 38.5816,
"lon": -121.4944,
"point": {
"x": 40,
"y": 67,
"x": 41,
"y": 68,
"wfo": "STO"
}
},
@@ -974,8 +974,8 @@
"lat": 40.7608,
"lon": -111.891,
"point": {
"x": 99,
"y": 174,
"x": 100,
"y": 175,
"wfo": "SLC"
}
},
@@ -984,8 +984,8 @@
"lat": 29.4241,
"lon": -98.4936,
"point": {
"x": 125,
"y": 53,
"x": 126,
"y": 54,
"wfo": "EWX"
}
},
@@ -994,8 +994,8 @@
"lat": 32.7153,
"lon": -117.1573,
"point": {
"x": 56,
"y": 13,
"x": 57,
"y": 14,
"wfo": "SGX"
}
},
@@ -1014,8 +1014,8 @@
"lat": 35.687,
"lon": -105.9378,
"point": {
"x": 125,
"y": 143,
"x": 126,
"y": 146,
"wfo": "ABQ"
}
},
@@ -1024,8 +1024,8 @@
"lat": 32.0835,
"lon": -81.0998,
"point": {
"x": 46,
"y": 40,
"x": 47,
"y": 41,
"wfo": "CHS"
}
},
@@ -1034,7 +1034,7 @@
"lat": 32.5251,
"lon": -93.7502,
"point": {
"x": 76,
"x": 74,
"y": 69,
"wfo": "SHV"
}
@@ -1074,8 +1074,8 @@
"lat": 39.8017,
"lon": -89.6437,
"point": {
"x": 47,
"y": 55,
"x": 48,
"y": 56,
"wfo": "ILX"
}
},
@@ -1094,8 +1094,8 @@
"lat": 37.2153,
"lon": -93.2982,
"point": {
"x": 66,
"y": 34,
"x": 67,
"y": 35,
"wfo": "SGF"
}
},
@@ -1104,8 +1104,8 @@
"lat": 41.6639,
"lon": -83.5552,
"point": {
"x": 18,
"y": 66,
"x": 19,
"y": 67,
"wfo": "CLE"
}
},
@@ -1114,8 +1114,8 @@
"lat": 36.154,
"lon": -95.9928,
"point": {
"x": 40,
"y": 104,
"x": 41,
"y": 105,
"wfo": "TSA"
}
},
@@ -1124,8 +1124,8 @@
"lat": 36.8529,
"lon": -75.978,
"point": {
"x": 100,
"y": 52,
"x": 101,
"y": 53,
"wfo": "AKQ"
}
},
@@ -1134,8 +1134,8 @@
"lat": 37.6922,
"lon": -97.3375,
"point": {
"x": 61,
"y": 33,
"x": 62,
"y": 34,
"wfo": "ICT"
}
},
@@ -1144,18 +1144,18 @@
"lat": 34.2257,
"lon": -77.9447,
"point": {
"x": 88,
"y": 67,
"x": 89,
"y": 68,
"wfo": "ILM"
}
},
{
"city": "Tuscan",
"city": "Tucsan",
"lat": 32.2216,
"lon": -110.9698,
"point": {
"x": 90,
"y": 48,
"x": 91,
"y": 49,
"wfo": "TWC"
}
}

File diff suppressed because it is too large Load Diff

View File

@@ -4,8 +4,8 @@
"Latitude": 33.749,
"Longitude": -84.388,
"point": {
"x": 50,
"y": 86,
"x": 51,
"y": 87,
"wfo": "FFC"
}
},
@@ -24,8 +24,8 @@
"Latitude": 41.9796,
"Longitude": -87.9045,
"point": {
"x": 65,
"y": 76,
"x": 66,
"y": 77,
"wfo": "LOT"
}
},
@@ -34,8 +34,8 @@
"Latitude": 41.4995,
"Longitude": -81.6954,
"point": {
"x": 82,
"y": 64,
"x": 83,
"y": 65,
"wfo": "CLE"
}
},
@@ -44,8 +44,8 @@
"Latitude": 32.8959,
"Longitude": -97.0372,
"point": {
"x": 79,
"y": 108,
"x": 80,
"y": 109,
"wfo": "FWD"
}
},
@@ -54,8 +54,8 @@
"Latitude": 39.7391,
"Longitude": -104.9847,
"point": {
"x": 62,
"y": 60,
"x": 63,
"y": 61,
"wfo": "BOU"
}
},
@@ -64,8 +64,8 @@
"Latitude": 42.3314,
"Longitude": -83.0457,
"point": {
"x": 65,
"y": 33,
"x": 66,
"y": 34,
"wfo": "DTX"
}
},
@@ -94,8 +94,8 @@
"Latitude": 39.7684,
"Longitude": -86.158,
"point": {
"x": 57,
"y": 68,
"x": 58,
"y": 69,
"wfo": "IND"
}
},
@@ -104,8 +104,8 @@
"Latitude": 34.0522,
"Longitude": -118.2437,
"point": {
"x": 154,
"y": 44,
"x": 155,
"y": 45,
"wfo": "LOX"
}
},
@@ -114,8 +114,8 @@
"Latitude": 25.7743,
"Longitude": -80.1937,
"point": {
"x": 109,
"y": 50,
"x": 110,
"y": 51,
"wfo": "MFL"
}
},
@@ -124,8 +124,8 @@
"Latitude": 44.98,
"Longitude": -93.2638,
"point": {
"x": 107,
"y": 71,
"x": 108,
"y": 72,
"wfo": "MPX"
}
},
@@ -134,8 +134,8 @@
"Latitude": 40.7142,
"Longitude": -74.0059,
"point": {
"x": 32,
"y": 34,
"x": 33,
"y": 35,
"wfo": "OKX"
}
},
@@ -144,8 +144,8 @@
"Latitude": 36.8468,
"Longitude": -76.2852,
"point": {
"x": 89,
"y": 51,
"x": 90,
"y": 52,
"wfo": "AKQ"
}
},
@@ -164,8 +164,8 @@
"Latitude": 39.9523,
"Longitude": -75.1638,
"point": {
"x": 49,
"y": 75,
"x": 50,
"y": 76,
"wfo": "PHI"
}
},
@@ -174,8 +174,8 @@
"Latitude": 40.4406,
"Longitude": -79.9959,
"point": {
"x": 77,
"y": 65,
"x": 78,
"y": 66,
"wfo": "PBZ"
}
},
@@ -184,8 +184,8 @@
"Latitude": 38.6273,
"Longitude": -90.1979,
"point": {
"x": 94,
"y": 73,
"x": 95,
"y": 74,
"wfo": "LSX"
}
},
@@ -204,8 +204,8 @@
"Latitude": 47.6062,
"Longitude": -122.3321,
"point": {
"x": 124,
"y": 67,
"x": 125,
"y": 68,
"wfo": "SEW"
}
},
@@ -214,8 +214,8 @@
"Latitude": 43.0481,
"Longitude": -76.1474,
"point": {
"x": 51,
"y": 98,
"x": 52,
"y": 99,
"wfo": "BGM"
}
},
@@ -224,8 +224,8 @@
"Latitude": 27.9475,
"Longitude": -82.4584,
"point": {
"x": 70,
"y": 96,
"x": 71,
"y": 97,
"wfo": "TBW"
}
},

View File

@@ -575,7 +575,7 @@
"lon": -77.9447
},
{
"city": "Tuscan",
"city": "Tucsan",
"lat": 32.2216,
"lon": -110.9698
}

View File

@@ -1,41 +0,0 @@
// look up points for each regional city
const fs = require('fs/promises');
const chunk = require('./chunk');
const https = require('./https');
(async () => {
// source data
const regionalCities = JSON.parse(await fs.readFile('./datagenerators/regionalcities-raw.json'));
const result = [];
const dataChunks = chunk(regionalCities, 5);
// for loop intentional for use of await
// this keeps the api from getting overwhelmed
for (let i = 0; i < dataChunks.length; i += 1) {
const cityChunk = dataChunks[i];
// eslint-disable-next-line no-await-in-loop
const chunkResult = await Promise.all(cityChunk.map(async (city) => {
try {
const data = await https(`https://api.weather.gov/points/${city.lat},${city.lon}`);
const point = JSON.parse(data);
return {
...city,
point: {
x: point.properties.gridX,
y: point.properties.gridY,
wfo: point.properties.gridId,
},
};
} catch (e) {
console.error(e);
return city;
}
}));
result.push(...chunkResult);
}
await fs.writeFile('./datagenerators/output/regionalcities.json', JSON.stringify(result, null, ' '));
})();

View File

@@ -0,0 +1,40 @@
// look up points for each regional city
import fs from 'fs/promises';
import chunk from './chunk.mjs';
import https from './https.mjs';
// source data
const regionalCities = JSON.parse(await fs.readFile('./datagenerators/regionalcities-raw.json'));
const result = [];
const dataChunks = chunk(regionalCities, 5);
// for loop intentional for use of await
// this keeps the api from getting overwhelmed
for (let i = 0; i < dataChunks.length; i += 1) {
const cityChunk = dataChunks[i];
// eslint-disable-next-line no-await-in-loop
const chunkResult = await Promise.all(cityChunk.map(async (city) => {
try {
const data = await https(`https://api.weather.gov/points/${city.lat},${city.lon}`);
const point = JSON.parse(data);
return {
...city,
point: {
x: point.properties.gridX,
y: point.properties.gridY,
wfo: point.properties.gridId,
},
};
} catch (e) {
console.error(e);
return city;
}
}));
result.push(...chunkResult);
}
await fs.writeFile('./datagenerators/output/regionalcities.json', JSON.stringify(result, null, ' '));

View File

@@ -1,4 +1,4 @@
module.exports = [
export default [
'AZ',
'AL',
'AK',

View File

@@ -1,11 +1,10 @@
// list all stations in a single file
// only find stations with 4 letter codes
const fs = require('fs');
const path = require('path');
const https = require('./https');
const states = require('./stations-states');
const chunk = require('./chunk');
import { writeFileSync } from 'fs';
import https from './https.mjs';
import states from './stations-states.mjs';
import chunk from './chunk.mjs';
// skip stations starting with these letters
const skipStations = ['U', 'C', 'H', 'W', 'Y', 'T', 'S', 'M', 'O', 'L', 'A', 'F', 'B', 'N', 'V', 'R', 'D', 'E', 'I', 'G', 'J'];
@@ -53,8 +52,7 @@ const start = async () => {
});
next = stations?.pagination?.next;
// write the output
// write the output
fs.writeFileSync(path.join(__dirname, 'output/stations.json'), JSON.stringify(output, null, 2));
writeFileSync('./datagenerators/output/stations.json', JSON.stringify(output, null, 2));
}
while (next && stations.features.length > 0);
console.log(`Complete: ${state}`);
@@ -68,6 +66,4 @@ const start = async () => {
};
// immediately invoked function allows access to async
(async () => {
await start();
})();
await start();

View File

@@ -1,41 +0,0 @@
// look up points for each travel city
const fs = require('fs/promises');
const chunk = require('./chunk');
const https = require('./https');
(async () => {
// source data
const travelCities = JSON.parse(await fs.readFile('./datagenerators/travelcities-raw.json'));
const result = [];
const dataChunks = chunk(travelCities, 5);
// for loop intentional for use of await
// this keeps the api from getting overwhelmed
for (let i = 0; i < dataChunks.length; i += 1) {
const cityChunk = dataChunks[i];
// eslint-disable-next-line no-await-in-loop
const chunkResult = await Promise.all(cityChunk.map(async (city) => {
try {
const data = await https(`https://api.weather.gov/points/${city.Latitude},${city.Longitude}`);
const point = JSON.parse(data);
return {
...city,
point: {
x: point.properties.gridX,
y: point.properties.gridY,
wfo: point.properties.gridId,
},
};
} catch (e) {
console.error(e);
return city;
}
}));
result.push(...chunkResult);
}
await fs.writeFile('./datagenerators/output/travelcities.json', JSON.stringify(result, null, ' '));
})();

View File

@@ -0,0 +1,39 @@
// look up points for each travel city
import { readFile, writeFile } from 'fs/promises';
import chunk from './chunk.mjs';
import https from './https.mjs';
// source data
const travelCities = JSON.parse(await readFile('./datagenerators/travelcities-raw.json'));
const result = [];
const dataChunks = chunk(travelCities, 5);
// for loop intentional for use of await
// this keeps the api from getting overwhelmed
for (let i = 0; i < dataChunks.length; i += 1) {
const cityChunk = dataChunks[i];
// eslint-disable-next-line no-await-in-loop
const chunkResult = await Promise.all(cityChunk.map(async (city) => {
try {
const data = await https(`https://api.weather.gov/points/${city.Latitude},${city.Longitude}`);
const point = JSON.parse(data);
return {
...city,
point: {
x: point.properties.gridX,
y: point.properties.gridY,
wfo: point.properties.gridId,
},
};
} catch (e) {
console.error(e);
return city;
}
}));
result.push(...chunkResult);
}
await writeFile('./datagenerators/output/travelcities.json', JSON.stringify(result, null, ' '));

142
package-lock.json generated
View File

@@ -258,25 +258,25 @@
}
},
"node_modules/@aws-sdk/client-cloudfront": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.777.0.tgz",
"integrity": "sha512-4zSVXDEi8IxrdmP/V/cyQXb50vgNMboUMQkH0y3iKS+jqFPngvYvTWv6sWCgTe+aL5SevmCQis7vjrfMw37KJQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-cloudfront/-/client-cloudfront-3.782.0.tgz",
"integrity": "sha512-92yI5h+9T8+hKw8oYWo9yMKCcDrQkiE8K6g9koDVQgv2E0qcfMZTu4Q9NYXGi+8se/y2W3kSaZmKwRsPnqkxIg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.775.0",
"@aws-sdk/credential-provider-node": "3.777.0",
"@aws-sdk/credential-provider-node": "3.782.0",
"@aws-sdk/middleware-host-header": "3.775.0",
"@aws-sdk/middleware-logger": "3.775.0",
"@aws-sdk/middleware-recursion-detection": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.782.0",
"@aws-sdk/region-config-resolver": "3.775.0",
"@aws-sdk/types": "3.775.0",
"@aws-sdk/util-endpoints": "3.775.0",
"@aws-sdk/util-endpoints": "3.782.0",
"@aws-sdk/util-user-agent-browser": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.782.0",
"@aws-sdk/xml-builder": "3.775.0",
"@smithy/config-resolver": "^4.1.0",
"@smithy/core": "^3.2.0",
@@ -312,9 +312,9 @@
}
},
"node_modules/@aws-sdk/client-s3": {
"version": "3.779.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.779.0.tgz",
"integrity": "sha512-Lagz+ersQaLNYkpOU9V12PYspT//lGvhPXlKU3OXDj3whDchdqUdtRKY8rmV+jli4KXe+udx/hj2yqrFRfKGvQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.782.0.tgz",
"integrity": "sha512-V6JR2JAGYQY7J8wk5un5n/ja2nfCUyyoRCF8Du8JL91NGI8i41Mdr/TzuOGwTgFl6RSXb/ge1K1jk30OH4MugQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -322,7 +322,7 @@
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
"@aws-sdk/core": "3.775.0",
"@aws-sdk/credential-provider-node": "3.777.0",
"@aws-sdk/credential-provider-node": "3.782.0",
"@aws-sdk/middleware-bucket-endpoint": "3.775.0",
"@aws-sdk/middleware-expect-continue": "3.775.0",
"@aws-sdk/middleware-flexible-checksums": "3.775.0",
@@ -332,13 +332,13 @@
"@aws-sdk/middleware-recursion-detection": "3.775.0",
"@aws-sdk/middleware-sdk-s3": "3.775.0",
"@aws-sdk/middleware-ssec": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.782.0",
"@aws-sdk/region-config-resolver": "3.775.0",
"@aws-sdk/signature-v4-multi-region": "3.775.0",
"@aws-sdk/types": "3.775.0",
"@aws-sdk/util-endpoints": "3.775.0",
"@aws-sdk/util-endpoints": "3.782.0",
"@aws-sdk/util-user-agent-browser": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.782.0",
"@aws-sdk/xml-builder": "3.775.0",
"@smithy/config-resolver": "^4.1.0",
"@smithy/core": "^3.2.0",
@@ -380,9 +380,9 @@
}
},
"node_modules/@aws-sdk/client-sso": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.777.0.tgz",
"integrity": "sha512-0+z6CiAYIQa7s6FJ+dpBYPi9zr9yY5jBg/4/FGcwYbmqWPXwL9Thdtr0FearYRZgKl7bhL3m3dILCCfWqr3teQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.782.0.tgz",
"integrity": "sha512-5GlJBejo8wqMpSSEKb45WE82YxI2k73YuebjLH/eWDNQeE6VI5Bh9lA1YQ7xNkLLH8hIsb0pSfKVuwh0VEzVrg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -392,12 +392,12 @@
"@aws-sdk/middleware-host-header": "3.775.0",
"@aws-sdk/middleware-logger": "3.775.0",
"@aws-sdk/middleware-recursion-detection": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.782.0",
"@aws-sdk/region-config-resolver": "3.775.0",
"@aws-sdk/types": "3.775.0",
"@aws-sdk/util-endpoints": "3.775.0",
"@aws-sdk/util-endpoints": "3.782.0",
"@aws-sdk/util-user-agent-browser": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.782.0",
"@smithy/config-resolver": "^4.1.0",
"@smithy/core": "^3.2.0",
"@smithy/fetch-http-handler": "^5.0.2",
@@ -492,9 +492,9 @@
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.777.0.tgz",
"integrity": "sha512-1X9mCuM9JSQPmQ+D2TODt4THy6aJWCNiURkmKmTIPRdno7EIKgAqrr/LLN++K5mBf54DZVKpqcJutXU2jwo01A==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.782.0.tgz",
"integrity": "sha512-wd4KdRy2YjLsE4Y7pz00470Iip06GlRHkG4dyLW7/hFMzEO2o7ixswCWp6J2VGZVAX64acknlv2Q0z02ebjmhw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -502,9 +502,9 @@
"@aws-sdk/credential-provider-env": "3.775.0",
"@aws-sdk/credential-provider-http": "3.775.0",
"@aws-sdk/credential-provider-process": "3.775.0",
"@aws-sdk/credential-provider-sso": "3.777.0",
"@aws-sdk/credential-provider-web-identity": "3.777.0",
"@aws-sdk/nested-clients": "3.777.0",
"@aws-sdk/credential-provider-sso": "3.782.0",
"@aws-sdk/credential-provider-web-identity": "3.782.0",
"@aws-sdk/nested-clients": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/credential-provider-imds": "^4.0.2",
"@smithy/property-provider": "^4.0.2",
@@ -517,18 +517,18 @@
}
},
"node_modules/@aws-sdk/credential-provider-node": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.777.0.tgz",
"integrity": "sha512-ZD66ywx1Q0KyUSuBXZIQzBe3Q7MzX8lNwsrCU43H3Fww+Y+HB3Ncws9grhSdNhKQNeGmZ+MgKybuZYaaeLwJEQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.782.0.tgz",
"integrity": "sha512-HZiAF+TCEyKjju9dgysjiPIWgt/+VerGaeEp18mvKLNfgKz1d+/82A2USEpNKTze7v3cMFASx3CvL8yYyF7mJw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/credential-provider-env": "3.775.0",
"@aws-sdk/credential-provider-http": "3.775.0",
"@aws-sdk/credential-provider-ini": "3.777.0",
"@aws-sdk/credential-provider-ini": "3.782.0",
"@aws-sdk/credential-provider-process": "3.775.0",
"@aws-sdk/credential-provider-sso": "3.777.0",
"@aws-sdk/credential-provider-web-identity": "3.777.0",
"@aws-sdk/credential-provider-sso": "3.782.0",
"@aws-sdk/credential-provider-web-identity": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/credential-provider-imds": "^4.0.2",
"@smithy/property-provider": "^4.0.2",
@@ -559,15 +559,15 @@
}
},
"node_modules/@aws-sdk/credential-provider-sso": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.777.0.tgz",
"integrity": "sha512-9mPz7vk9uE4PBVprfINv4tlTkyq1OonNevx2DiXC1LY4mCUCNN3RdBwAY0BTLzj0uyc3k5KxFFNbn3/8ZDQP7w==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.782.0.tgz",
"integrity": "sha512-1y1ucxTtTIGDSNSNxriQY8msinilhe9gGvQpUDYW9gboyC7WQJPDw66imy258V6osdtdi+xoHzVCbCz3WhosMQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/client-sso": "3.777.0",
"@aws-sdk/client-sso": "3.782.0",
"@aws-sdk/core": "3.775.0",
"@aws-sdk/token-providers": "3.777.0",
"@aws-sdk/token-providers": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/property-provider": "^4.0.2",
"@smithy/shared-ini-file-loader": "^4.0.2",
@@ -579,14 +579,14 @@
}
},
"node_modules/@aws-sdk/credential-provider-web-identity": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.777.0.tgz",
"integrity": "sha512-uGCqr47fnthkqwq5luNl2dksgcpHHjSXz2jUra7TXtFOpqvnhOW8qXjoa1ivlkq8qhqlaZwCzPdbcN0lXpmLzQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.782.0.tgz",
"integrity": "sha512-xCna0opVPaueEbJoclj5C6OpDNi0Gynj+4d7tnuXGgQhTHPyAz8ZyClkVqpi5qvHTgxROdUEDxWqEO5jqRHZHQ==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/core": "3.775.0",
"@aws-sdk/nested-clients": "3.777.0",
"@aws-sdk/nested-clients": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/property-provider": "^4.0.2",
"@smithy/types": "^4.2.0",
@@ -760,15 +760,15 @@
}
},
"node_modules/@aws-sdk/middleware-user-agent": {
"version": "3.775.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.775.0.tgz",
"integrity": "sha512-7Lffpr1ptOEDE1ZYH1T78pheEY1YmeXWBfFt/amZ6AGsKSLG+JPXvof3ltporTGR2bhH/eJPo7UHCglIuXfzYg==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.782.0.tgz",
"integrity": "sha512-i32H2R6IItX+bQ2p4+v2gGO2jA80jQoJO2m1xjU9rYWQW3+ErWy4I5YIuQHTBfb6hSdAHbaRfqPDgbv9J2rjEg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/core": "3.775.0",
"@aws-sdk/types": "3.775.0",
"@aws-sdk/util-endpoints": "3.775.0",
"@aws-sdk/util-endpoints": "3.782.0",
"@smithy/core": "^3.2.0",
"@smithy/protocol-http": "^5.1.0",
"@smithy/types": "^4.2.0",
@@ -779,9 +779,9 @@
}
},
"node_modules/@aws-sdk/nested-clients": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.777.0.tgz",
"integrity": "sha512-bmmVRsCjuYlStYPt06hr+f8iEyWg7+AklKCA8ZLDEJujXhXIowgUIqXmqpTkXwkVvDQ9tzU7hxaONjyaQCGybA==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.782.0.tgz",
"integrity": "sha512-QOYC8q7luzHFXrP0xYAqBctoPkynjfV0r9dqntFu4/IWMTyC1vlo1UTxFAjIPyclYw92XJyEkVCVg9v/nQnsUA==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -791,12 +791,12 @@
"@aws-sdk/middleware-host-header": "3.775.0",
"@aws-sdk/middleware-logger": "3.775.0",
"@aws-sdk/middleware-recursion-detection": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.782.0",
"@aws-sdk/region-config-resolver": "3.775.0",
"@aws-sdk/types": "3.775.0",
"@aws-sdk/util-endpoints": "3.775.0",
"@aws-sdk/util-endpoints": "3.782.0",
"@aws-sdk/util-user-agent-browser": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.775.0",
"@aws-sdk/util-user-agent-node": "3.782.0",
"@smithy/config-resolver": "^4.1.0",
"@smithy/core": "^3.2.0",
"@smithy/fetch-http-handler": "^5.0.2",
@@ -865,13 +865,13 @@
}
},
"node_modules/@aws-sdk/token-providers": {
"version": "3.777.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.777.0.tgz",
"integrity": "sha512-Yc2cDONsHOa4dTSGOev6Ng2QgTKQUEjaUnsyKd13pc/nLLz/WLqHiQ/o7PcnKERJxXGs1g1C6l3sNXiX+kbnFQ==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.782.0.tgz",
"integrity": "sha512-4tPuk/3+THPrzKaXW4jE2R67UyGwHLFizZ47pcjJWbhb78IIJAy94vbeqEQ+veS84KF5TXcU7g5jGTXC0D70Wg==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/nested-clients": "3.777.0",
"@aws-sdk/nested-clients": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/property-provider": "^4.0.2",
"@smithy/shared-ini-file-loader": "^4.0.2",
@@ -910,9 +910,9 @@
}
},
"node_modules/@aws-sdk/util-endpoints": {
"version": "3.775.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.775.0.tgz",
"integrity": "sha512-yjWmUgZC9tUxAo8Uaplqmq0eUh0zrbZJdwxGRKdYxfm4RG6fMw1tj52+KkatH7o+mNZvg1GDcVp/INktxonJLw==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.782.0.tgz",
"integrity": "sha512-/RJOAO7o7HI6lEa4ASbFFLHGU9iPK876BhsVfnl54MvApPVYWQ9sHO0anOUim2S5lQTwd/6ghuH3rFYSq/+rdw==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
@@ -952,13 +952,13 @@
}
},
"node_modules/@aws-sdk/util-user-agent-node": {
"version": "3.775.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.775.0.tgz",
"integrity": "sha512-N9yhTevbizTOMo3drH7Eoy6OkJ3iVPxhV7dwb6CMAObbLneS36CSfA6xQXupmHWcRvZPTz8rd1JGG3HzFOau+g==",
"version": "3.782.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.782.0.tgz",
"integrity": "sha512-dMFkUBgh2Bxuw8fYZQoH/u3H4afQ12VSkzEi//qFiDTwbKYq+u+RYjc8GLDM6JSK1BShMu5AVR7HD4ap1TYUnA==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/middleware-user-agent": "3.775.0",
"@aws-sdk/middleware-user-agent": "3.782.0",
"@aws-sdk/types": "3.775.0",
"@smithy/node-config-provider": "^4.0.2",
"@smithy/types": "^4.2.0",
@@ -3343,9 +3343,9 @@
}
},
"node_modules/caniuse-lite": {
"version": "1.0.30001709",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001709.tgz",
"integrity": "sha512-NgL3vUTnDrPCZ3zTahp4fsugQ4dc7EKTSzwQDPEel6DMoMnfH2jhry9n2Zm8onbSR+f/QtKHFOA+iAQu4kbtWA==",
"version": "1.0.30001712",
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001712.tgz",
"integrity": "sha512-MBqPpGYYdQ7/hfKiet9SCI+nmN5/hp4ZzveOJubl5DTAMa5oggjAuoi0Z4onBpKPFI2ePGnQuQIzF3VxDjDJig==",
"dev": true,
"funding": [
{
@@ -3871,9 +3871,9 @@
}
},
"node_modules/electron-to-chromium": {
"version": "1.5.130",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.130.tgz",
"integrity": "sha512-Ou2u7L9j2XLZbhqzyX0jWDj6gA8D3jIfVzt4rikLf3cGBa0VdReuFimBKS9tQJA4+XpeCxj1NoWlfBXzbMa9IA==",
"version": "1.5.132",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.132.tgz",
"integrity": "sha512-QgX9EBvWGmvSRa74zqfnG7+Eno0Ak0vftBll0Pt2/z5b3bEGYL6OUXLgKPtvx73dn3dvwrlyVkjPKRRlhLYTEg==",
"dev": true,
"license": "ISC",
"peer": true
@@ -8189,9 +8189,9 @@
"license": "MIT"
},
"node_modules/sass": {
"version": "1.86.2",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.86.2.tgz",
"integrity": "sha512-Rpfn0zAIDqvnSb2DihJTDFjbhqLHu91Wqac9rxontWk7R+2txcPjuujMqu1eeoezh5kAblVCS5EdFdyr0Jmu+w==",
"version": "1.86.3",
"resolved": "https://registry.npmjs.org/sass/-/sass-1.86.3.tgz",
"integrity": "sha512-iGtg8kus4GrsGLRDLRBRHY9dNVA78ZaS7xr01cWnS7PEMQyFtTqBiyCrfpTYTZXRWM94akzckYjh8oADfFNTzw==",
"dev": true,
"license": "MIT",
"dependencies": {

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,243 +1,243 @@
// eslint-disable-next-line no-unused-vars
const TravelCities = [
{
Name: 'Atlanta',
Latitude: 33.749,
Longitude: -84.388,
point: {
x: 50,
y: 86,
wfo: 'FFC',
},
"Name": "Atlanta",
"Latitude": 33.749,
"Longitude": -84.388,
"point": {
"x": 51,
"y": 87,
"wfo": "FFC"
}
},
{
Name: 'Boston',
Latitude: 42.3584,
Longitude: -71.0598,
point: {
x: 71,
y: 90,
wfo: 'BOX',
},
"Name": "Boston",
"Latitude": 42.3584,
"Longitude": -71.0598,
"point": {
"x": 71,
"y": 90,
"wfo": "BOX"
}
},
{
Name: 'Chicago',
Latitude: 41.9796,
Longitude: -87.9045,
point: {
x: 65,
y: 76,
wfo: 'LOT',
},
"Name": "Chicago",
"Latitude": 41.9796,
"Longitude": -87.9045,
"point": {
"x": 66,
"y": 77,
"wfo": "LOT"
}
},
{
Name: 'Cleveland',
Latitude: 41.4995,
Longitude: -81.6954,
point: {
x: 82,
y: 64,
wfo: 'CLE',
},
"Name": "Cleveland",
"Latitude": 41.4995,
"Longitude": -81.6954,
"point": {
"x": 83,
"y": 65,
"wfo": "CLE"
}
},
{
Name: 'Dallas',
Latitude: 32.8959,
Longitude: -97.0372,
point: {
x: 79,
y: 108,
wfo: 'FWD',
},
"Name": "Dallas",
"Latitude": 32.8959,
"Longitude": -97.0372,
"point": {
"x": 80,
"y": 109,
"wfo": "FWD"
}
},
{
Name: 'Denver',
Latitude: 39.7391,
Longitude: -104.9847,
point: {
x: 62,
y: 60,
wfo: 'BOU',
},
"Name": "Denver",
"Latitude": 39.7391,
"Longitude": -104.9847,
"point": {
"x": 63,
"y": 61,
"wfo": "BOU"
}
},
{
Name: 'Detroit',
Latitude: 42.3314,
Longitude: -83.0457,
point: {
x: 65,
y: 33,
wfo: 'DTX',
},
"Name": "Detroit",
"Latitude": 42.3314,
"Longitude": -83.0457,
"point": {
"x": 66,
"y": 34,
"wfo": "DTX"
}
},
{
Name: 'Hartford',
Latitude: 41.7637,
Longitude: -72.6851,
point: {
x: 21,
y: 54,
wfo: 'BOX',
},
"Name": "Hartford",
"Latitude": 41.7637,
"Longitude": -72.6851,
"point": {
"x": 21,
"y": 54,
"wfo": "BOX"
}
},
{
Name: 'Houston',
Latitude: 29.7633,
Longitude: -95.3633,
point: {
x: 65,
y: 97,
wfo: 'HGX',
},
"Name": "Houston",
"Latitude": 29.7633,
"Longitude": -95.3633,
"point": {
"x": 65,
"y": 97,
"wfo": "HGX"
}
},
{
Name: 'Indianapolis',
Latitude: 39.7684,
Longitude: -86.158,
point: {
x: 57,
y: 68,
wfo: 'IND',
},
"Name": "Indianapolis",
"Latitude": 39.7684,
"Longitude": -86.158,
"point": {
"x": 58,
"y": 69,
"wfo": "IND"
}
},
{
Name: 'Los Angeles',
Latitude: 34.0522,
Longitude: -118.2437,
point: {
x: 154,
y: 44,
wfo: 'LOX',
},
"Name": "Los Angeles",
"Latitude": 34.0522,
"Longitude": -118.2437,
"point": {
"x": 155,
"y": 45,
"wfo": "LOX"
}
},
{
Name: 'Miami',
Latitude: 25.7743,
Longitude: -80.1937,
point: {
x: 109,
y: 50,
wfo: 'MFL',
},
"Name": "Miami",
"Latitude": 25.7743,
"Longitude": -80.1937,
"point": {
"x": 110,
"y": 51,
"wfo": "MFL"
}
},
{
Name: 'Minneapolis',
Latitude: 44.98,
Longitude: -93.2638,
point: {
x: 107,
y: 71,
wfo: 'MPX',
},
"Name": "Minneapolis",
"Latitude": 44.98,
"Longitude": -93.2638,
"point": {
"x": 108,
"y": 72,
"wfo": "MPX"
}
},
{
Name: 'New York',
Latitude: 40.7142,
Longitude: -74.0059,
point: {
x: 32,
y: 34,
wfo: 'OKX',
},
"Name": "New York",
"Latitude": 40.7142,
"Longitude": -74.0059,
"point": {
"x": 33,
"y": 35,
"wfo": "OKX"
}
},
{
Name: 'Norfolk',
Latitude: 36.8468,
Longitude: -76.2852,
point: {
x: 89,
y: 51,
wfo: 'AKQ',
},
"Name": "Norfolk",
"Latitude": 36.8468,
"Longitude": -76.2852,
"point": {
"x": 90,
"y": 52,
"wfo": "AKQ"
}
},
{
Name: 'Orlando',
Latitude: 28.5383,
Longitude: -81.3792,
point: {
x: 26,
y: 68,
wfo: 'MLB',
},
"Name": "Orlando",
"Latitude": 28.5383,
"Longitude": -81.3792,
"point": {
"x": 26,
"y": 68,
"wfo": "MLB"
}
},
{
Name: 'Philadelphia',
Latitude: 39.9523,
Longitude: -75.1638,
point: {
x: 49,
y: 75,
wfo: 'PHI',
},
"Name": "Philadelphia",
"Latitude": 39.9523,
"Longitude": -75.1638,
"point": {
"x": 50,
"y": 76,
"wfo": "PHI"
}
},
{
Name: 'Pittsburgh',
Latitude: 40.4406,
Longitude: -79.9959,
point: {
x: 77,
y: 65,
wfo: 'PBZ',
},
"Name": "Pittsburgh",
"Latitude": 40.4406,
"Longitude": -79.9959,
"point": {
"x": 78,
"y": 66,
"wfo": "PBZ"
}
},
{
Name: 'St. Louis',
Latitude: 38.6273,
Longitude: -90.1979,
point: {
x: 94,
y: 73,
wfo: 'LSX',
},
"Name": "St. Louis",
"Latitude": 38.6273,
"Longitude": -90.1979,
"point": {
"x": 95,
"y": 74,
"wfo": "LSX"
}
},
{
Name: 'San Francisco',
Latitude: 37.7749,
Longitude: -122.4194,
point: {
x: 85,
y: 105,
wfo: 'MTR',
},
"Name": "San Francisco",
"Latitude": 37.7749,
"Longitude": -122.4194,
"point": {
"x": 85,
"y": 105,
"wfo": "MTR"
}
},
{
Name: 'Seattle',
Latitude: 47.6062,
Longitude: -122.3321,
point: {
x: 124,
y: 67,
wfo: 'SEW',
},
"Name": "Seattle",
"Latitude": 47.6062,
"Longitude": -122.3321,
"point": {
"x": 125,
"y": 68,
"wfo": "SEW"
}
},
{
Name: 'Syracuse',
Latitude: 43.0481,
Longitude: -76.1474,
point: {
x: 51,
y: 98,
wfo: 'BGM',
},
"Name": "Syracuse",
"Latitude": 43.0481,
"Longitude": -76.1474,
"point": {
"x": 52,
"y": 99,
"wfo": "BGM"
}
},
{
Name: 'Tampa',
Latitude: 27.9475,
Longitude: -82.4584,
point: {
x: 70,
y: 96,
wfo: 'TBW',
},
"Name": "Tampa",
"Latitude": 27.9475,
"Longitude": -82.4584,
"point": {
"x": 71,
"y": 97,
"wfo": "TBW"
}
},
{
Name: 'Washington DC',
Latitude: 38.8951,
Longitude: -77.0364,
point: {
x: 97,
y: 71,
wfo: 'LWX',
},
},
];
"Name": "Washington DC",
"Latitude": 38.8951,
"Longitude": -77.0364,
"point": {
"x": 97,
"y": 71,
"wfo": "LWX"
}
}
]