@@ -9,14 +9,65 @@ const TYPING_SPEED = 300;
99const DELETE_SPEED = 50 ;
1010const PAUSE_BEFORE_DELETE = 2000 ;
1111const PAUSE_AFTER_DELETE = 500 ;
12- const MAX_GEOGRAPHY_NAMES = 25 ;
1312const MAX_DUAL_AXIS_LABELS = 50 ;
1413const INITIAL_ZOOM_DELAY = 100 ;
1514const CHART_REDRAW_DELAY = 100 ;
1615const CHART_RESIZE_DELAY = 10 ;
1716const TYPING_ANIMATION_DELAY = 500 ;
1817const BLUR_DELAY = 100 ;
1918const CHART_UPDATE_THROTTLE = 16 ; // ~60fps for smooth interactions
19+ window . geographyNames = [
20+ "Cochise County, AZ" ,
21+ "Toledo, OH Metro Area" ,
22+ "Oregon" ,
23+ "HHS Region 1" ,
24+ "United States" ,
25+ "Garland County, AR" ,
26+ "Dallas-Fort Worth-Arlington, TX Metro Area" ,
27+ "Vermont" ,
28+ "HHS Region 2" ,
29+ "United States" ,
30+ "Yukon-Koyukuk County, AK" ,
31+ "Lansing-East Lansing, MI Metro Area" ,
32+ "Tennessee" ,
33+ "HHS Region 3" ,
34+ "United States" ,
35+ "Cleburne County, AR" ,
36+ "New York-Newark-Jersey City, NY-NJ-PA Metro Area" ,
37+ "Wyoming" ,
38+ "HHS Region 4" ,
39+ "United States" ,
40+ "Santa Cruz County, AZ" ,
41+ "Iowa City, IA Metro Area" ,
42+ "California" ,
43+ "HHS Region 5" ,
44+ "United States" ,
45+ "Hot Spring County, AR" ,
46+ "Gainesville, GA Metro Area" ,
47+ "New York" ,
48+ "HHS Region 6" ,
49+ "United States" ,
50+ "Mohave County, AZ" ,
51+ "Battle Creek, MI Metro Area" ,
52+ "Florida" ,
53+ "HHS Region 7" ,
54+ "United States" ,
55+ "Jackson County, AR" ,
56+ "Sacramento--Roseville--Arden-Arcade, CA Metro Area" ,
57+ "Texas" ,
58+ "HHS Region 8" ,
59+ "United States" ,
60+ "La Paz County, AZ" ,
61+ "Atlantic City-Hammonton, NJ Metro Area" ,
62+ "Minnesota" ,
63+ "HHS Region 9" ,
64+ "United States" ,
65+ "Wrangell County, AK" ,
66+ "Portland-South Portland, ME Metro Area" ,
67+ "Hawaii" ,
68+ "HHS Region 10" ,
69+ "United States"
70+ ] ;
2071
2172// Utility functions
2273const ChartUtils = {
@@ -1051,33 +1102,6 @@ async function loadAvailableGeographies(pathogen = '') {
10511102 const data = await response . json ( ) ;
10521103 geographySelect . innerHTML = '<option value=""></option>' ;
10531104
1054- window . geographyNames = [ ] ;
1055- if ( data . available_geos && Array . isArray ( data . available_geos ) ) {
1056- data . available_geos . forEach ( group => {
1057- if ( group . children && Array . isArray ( group . children ) ) {
1058- const optgroup = document . createElement ( 'optgroup' ) ;
1059- optgroup . label = group . text ;
1060-
1061- group . children . forEach ( child => {
1062- const option = document . createElement ( 'option' ) ;
1063- option . value = child . id ;
1064- option . textContent = child . text ;
1065- optgroup . appendChild ( option ) ;
1066- } ) ;
1067-
1068- geographySelect . appendChild ( optgroup ) ;
1069-
1070- // Build geography names array for typing animation
1071- group . children . slice ( 0 , parseInt ( MAX_GEOGRAPHY_NAMES / data . available_geos . length ) ) . forEach ( child => {
1072- window . geographyNames . push ( child . text ) ;
1073- } ) ;
1074- }
1075- } ) ;
1076- }
1077-
1078- if ( window . geographyNames . length > MAX_GEOGRAPHY_NAMES ) {
1079- window . geographyNames = window . geographyNames . slice ( 0 , MAX_GEOGRAPHY_NAMES ) ;
1080- }
10811105
10821106 setTimeout ( ( ) => {
10831107 initGeographyTypingAnimation ( ) ;
0 commit comments