Browse Source

feat(ui): Improve timezone selector (#44333)

Evan Purkhiser 2 years ago
parent
commit
7b124e136b

+ 2 - 2
static/app/components/forms/types.tsx

@@ -5,7 +5,7 @@ import RangeSlider from 'sentry/components/forms/controls/rangeSlider';
 import {ChoiceMapperProps} from 'sentry/components/forms/fields/choiceMapperField';
 import {SelectAsyncFieldProps} from 'sentry/components/forms/fields/selectAsyncField';
 import FormModel from 'sentry/components/forms/model';
-import {AvatarProject, Project} from 'sentry/types';
+import {AvatarProject, Project, SelectValue} from 'sentry/types';
 
 export const FieldType = [
   'array',
@@ -118,7 +118,7 @@ type SelectControlType = {type: 'choice' | 'select'} & {
   filterOption?: ReturnType<typeof createFilter>;
   multiple?: boolean;
   noOptionsMessage?: () => string;
-  options?: Array<{label: React.ReactNode; value: any}>;
+  options?: SelectValue<any>[];
 };
 
 type TextareaType = {type: 'textarea'} & {

+ 2 - 2
static/app/data/forms/accountPreferences.tsx

@@ -1,6 +1,6 @@
 import {JsonFormObject} from 'sentry/components/forms/types';
 import languages from 'sentry/data/languages';
-import timezones from 'sentry/data/timezones';
+import {timezoneOptions} from 'sentry/data/timezones';
 import {t} from 'sentry/locale';
 
 // Export route to make these forms searchable by label/help
@@ -40,7 +40,7 @@ const formGroups: JsonFormObject[] = [
         name: 'timezone',
         type: 'select',
         label: t('Timezone'),
-        options: timezones.map(([value, label]) => ({value, label})),
+        options: timezoneOptions,
         getData: transformOptions,
       },
       {

+ 479 - 433
static/app/data/timezones.tsx

@@ -1,433 +1,479 @@
-export default [
-  ['Pacific/Midway', '(UTC-1100) Pacific/Midway'],
-  ['Pacific/Niue', '(UTC-1100) Pacific/Niue'],
-  ['Pacific/Pago_Pago', '(UTC-1100) Pacific/Pago_Pago'],
-  ['America/Adak', '(UTC-1000) America/Adak'],
-  ['Pacific/Honolulu', '(UTC-1000) Pacific/Honolulu'],
-  ['Pacific/Johnston', '(UTC-1000) Pacific/Johnston'],
-  ['Pacific/Rarotonga', '(UTC-1000) Pacific/Rarotonga'],
-  ['Pacific/Tahiti', '(UTC-1000) Pacific/Tahiti'],
-  ['US/Hawaii', '(UTC-1000) US/Hawaii'],
-  ['Pacific/Marquesas', '(UTC-0930) Pacific/Marquesas'],
-  ['America/Anchorage', '(UTC-0900) America/Anchorage'],
-  ['America/Juneau', '(UTC-0900) America/Juneau'],
-  ['America/Metlakatla', '(UTC-0900) America/Metlakatla'],
-  ['America/Nome', '(UTC-0900) America/Nome'],
-  ['America/Sitka', '(UTC-0900) America/Sitka'],
-  ['America/Yakutat', '(UTC-0900) America/Yakutat'],
-  ['Pacific/Gambier', '(UTC-0900) Pacific/Gambier'],
-  ['US/Alaska', '(UTC-0900) US/Alaska'],
-  ['America/Dawson', '(UTC-0800) America/Dawson'],
-  ['America/Los_Angeles', '(UTC-0800) America/Los_Angeles'],
-  ['America/Tijuana', '(UTC-0800) America/Tijuana'],
-  ['America/Vancouver', '(UTC-0800) America/Vancouver'],
-  ['America/Whitehorse', '(UTC-0800) America/Whitehorse'],
-  ['Canada/Pacific', '(UTC-0800) Canada/Pacific'],
-  ['Pacific/Pitcairn', '(UTC-0800) Pacific/Pitcairn'],
-  ['US/Pacific', '(UTC-0800) US/Pacific'],
-  ['America/Boise', '(UTC-0700) America/Boise'],
-  ['America/Cambridge_Bay', '(UTC-0700) America/Cambridge_Bay'],
-  ['America/Chihuahua', '(UTC-0700) America/Chihuahua'],
-  ['America/Creston', '(UTC-0700) America/Creston'],
-  ['America/Dawson_Creek', '(UTC-0700) America/Dawson_Creek'],
-  ['America/Denver', '(UTC-0700) America/Denver'],
-  ['America/Edmonton', '(UTC-0700) America/Edmonton'],
-  ['America/Fort_Nelson', '(UTC-0700) America/Fort_Nelson'],
-  ['America/Hermosillo', '(UTC-0700) America/Hermosillo'],
-  ['America/Inuvik', '(UTC-0700) America/Inuvik'],
-  ['America/Mazatlan', '(UTC-0700) America/Mazatlan'],
-  ['America/Ojinaga', '(UTC-0700) America/Ojinaga'],
-  ['America/Phoenix', '(UTC-0700) America/Phoenix'],
-  ['America/Yellowknife', '(UTC-0700) America/Yellowknife'],
-  ['Canada/Mountain', '(UTC-0700) Canada/Mountain'],
-  ['US/Arizona', '(UTC-0700) US/Arizona'],
-  ['US/Mountain', '(UTC-0700) US/Mountain'],
-  ['America/Bahia_Banderas', '(UTC-0600) America/Bahia_Banderas'],
-  ['America/Belize', '(UTC-0600) America/Belize'],
-  ['America/Chicago', '(UTC-0600) America/Chicago'],
-  ['America/Costa_Rica', '(UTC-0600) America/Costa_Rica'],
-  ['America/El_Salvador', '(UTC-0600) America/El_Salvador'],
-  ['America/Guatemala', '(UTC-0600) America/Guatemala'],
-  ['America/Indiana/Knox', '(UTC-0600) America/Indiana/Knox'],
-  ['America/Indiana/Tell_City', '(UTC-0600) America/Indiana/Tell_City'],
-  ['America/Managua', '(UTC-0600) America/Managua'],
-  ['America/Matamoros', '(UTC-0600) America/Matamoros'],
-  ['America/Menominee', '(UTC-0600) America/Menominee'],
-  ['America/Merida', '(UTC-0600) America/Merida'],
-  ['America/Mexico_City', '(UTC-0600) America/Mexico_City'],
-  ['America/Monterrey', '(UTC-0600) America/Monterrey'],
-  ['America/North_Dakota/Beulah', '(UTC-0600) America/North_Dakota/Beulah'],
-  ['America/North_Dakota/Center', '(UTC-0600) America/North_Dakota/Center'],
-  ['America/North_Dakota/New_Salem', '(UTC-0600) America/North_Dakota/New_Salem'],
-  ['America/Rainy_River', '(UTC-0600) America/Rainy_River'],
-  ['America/Rankin_Inlet', '(UTC-0600) America/Rankin_Inlet'],
-  ['America/Regina', '(UTC-0600) America/Regina'],
-  ['America/Resolute', '(UTC-0600) America/Resolute'],
-  ['America/Swift_Current', '(UTC-0600) America/Swift_Current'],
-  ['America/Tegucigalpa', '(UTC-0600) America/Tegucigalpa'],
-  ['America/Winnipeg', '(UTC-0600) America/Winnipeg'],
-  ['Canada/Central', '(UTC-0600) Canada/Central'],
-  ['Pacific/Galapagos', '(UTC-0600) Pacific/Galapagos'],
-  ['US/Central', '(UTC-0600) US/Central'],
-  ['America/Atikokan', '(UTC-0500) America/Atikokan'],
-  ['America/Bogota', '(UTC-0500) America/Bogota'],
-  ['America/Cancun', '(UTC-0500) America/Cancun'],
-  ['America/Cayman', '(UTC-0500) America/Cayman'],
-  ['America/Detroit', '(UTC-0500) America/Detroit'],
-  ['America/Eirunepe', '(UTC-0500) America/Eirunepe'],
-  ['America/Grand_Turk', '(UTC-0500) America/Grand_Turk'],
-  ['America/Guayaquil', '(UTC-0500) America/Guayaquil'],
-  ['America/Havana', '(UTC-0500) America/Havana'],
-  ['America/Indiana/Indianapolis', '(UTC-0500) America/Indiana/Indianapolis'],
-  ['America/Indiana/Marengo', '(UTC-0500) America/Indiana/Marengo'],
-  ['America/Indiana/Petersburg', '(UTC-0500) America/Indiana/Petersburg'],
-  ['America/Indiana/Vevay', '(UTC-0500) America/Indiana/Vevay'],
-  ['America/Indiana/Vincennes', '(UTC-0500) America/Indiana/Vincennes'],
-  ['America/Indiana/Winamac', '(UTC-0500) America/Indiana/Winamac'],
-  ['America/Iqaluit', '(UTC-0500) America/Iqaluit'],
-  ['America/Jamaica', '(UTC-0500) America/Jamaica'],
-  ['America/Kentucky/Louisville', '(UTC-0500) America/Kentucky/Louisville'],
-  ['America/Kentucky/Monticello', '(UTC-0500) America/Kentucky/Monticello'],
-  ['America/Lima', '(UTC-0500) America/Lima'],
-  ['America/Nassau', '(UTC-0500) America/Nassau'],
-  ['America/New_York', '(UTC-0500) America/New_York'],
-  ['America/Nipigon', '(UTC-0500) America/Nipigon'],
-  ['America/Panama', '(UTC-0500) America/Panama'],
-  ['America/Pangnirtung', '(UTC-0500) America/Pangnirtung'],
-  ['America/Port-au-Prince', '(UTC-0500) America/Port-au-Prince'],
-  ['America/Rio_Branco', '(UTC-0500) America/Rio_Branco'],
-  ['America/Thunder_Bay', '(UTC-0500) America/Thunder_Bay'],
-  ['America/Toronto', '(UTC-0500) America/Toronto'],
-  ['Canada/Eastern', '(UTC-0500) Canada/Eastern'],
-  ['Pacific/Easter', '(UTC-0500) Pacific/Easter'],
-  ['US/Eastern', '(UTC-0500) US/Eastern'],
-  ['America/Caracas', '(UTC-0400) America/Caracas'],
-  ['America/Anguilla', '(UTC-0400) America/Anguilla'],
-  ['America/Antigua', '(UTC-0400) America/Antigua'],
-  ['America/Aruba', '(UTC-0400) America/Aruba'],
-  ['America/Barbados', '(UTC-0400) America/Barbados'],
-  ['America/Blanc-Sablon', '(UTC-0400) America/Blanc-Sablon'],
-  ['America/Boa_Vista', '(UTC-0400) America/Boa_Vista'],
-  ['America/Curacao', '(UTC-0400) America/Curacao'],
-  ['America/Dominica', '(UTC-0400) America/Dominica'],
-  ['America/Glace_Bay', '(UTC-0400) America/Glace_Bay'],
-  ['America/Goose_Bay', '(UTC-0400) America/Goose_Bay'],
-  ['America/Grenada', '(UTC-0400) America/Grenada'],
-  ['America/Guadeloupe', '(UTC-0400) America/Guadeloupe'],
-  ['America/Guyana', '(UTC-0400) America/Guyana'],
-  ['America/Halifax', '(UTC-0400) America/Halifax'],
-  ['America/Kralendijk', '(UTC-0400) America/Kralendijk'],
-  ['America/La_Paz', '(UTC-0400) America/La_Paz'],
-  ['America/Lower_Princes', '(UTC-0400) America/Lower_Princes'],
-  ['America/Manaus', '(UTC-0400) America/Manaus'],
-  ['America/Marigot', '(UTC-0400) America/Marigot'],
-  ['America/Martinique', '(UTC-0400) America/Martinique'],
-  ['America/Moncton', '(UTC-0400) America/Moncton'],
-  ['America/Montserrat', '(UTC-0400) America/Montserrat'],
-  ['America/Port_of_Spain', '(UTC-0400) America/Port_of_Spain'],
-  ['America/Porto_Velho', '(UTC-0400) America/Porto_Velho'],
-  ['America/Puerto_Rico', '(UTC-0400) America/Puerto_Rico'],
-  ['America/Santo_Domingo', '(UTC-0400) America/Santo_Domingo'],
-  ['America/St_Barthelemy', '(UTC-0400) America/St_Barthelemy'],
-  ['America/St_Kitts', '(UTC-0400) America/St_Kitts'],
-  ['America/St_Lucia', '(UTC-0400) America/St_Lucia'],
-  ['America/St_Thomas', '(UTC-0400) America/St_Thomas'],
-  ['America/St_Vincent', '(UTC-0400) America/St_Vincent'],
-  ['America/Thule', '(UTC-0400) America/Thule'],
-  ['America/Tortola', '(UTC-0400) America/Tortola'],
-  ['Atlantic/Bermuda', '(UTC-0400) Atlantic/Bermuda'],
-  ['Canada/Atlantic', '(UTC-0400) Canada/Atlantic'],
-  ['America/St_Johns', '(UTC-0330) America/St_Johns'],
-  ['Canada/Newfoundland', '(UTC-0330) Canada/Newfoundland'],
-  ['America/Araguaina', '(UTC-0300) America/Araguaina'],
-  ['America/Argentina/Buenos_Aires', '(UTC-0300) America/Argentina/Buenos_Aires'],
-  ['America/Argentina/Catamarca', '(UTC-0300) America/Argentina/Catamarca'],
-  ['America/Argentina/Cordoba', '(UTC-0300) America/Argentina/Cordoba'],
-  ['America/Argentina/Jujuy', '(UTC-0300) America/Argentina/Jujuy'],
-  ['America/Argentina/La_Rioja', '(UTC-0300) America/Argentina/La_Rioja'],
-  ['America/Argentina/Mendoza', '(UTC-0300) America/Argentina/Mendoza'],
-  ['America/Argentina/Rio_Gallegos', '(UTC-0300) America/Argentina/Rio_Gallegos'],
-  ['America/Argentina/Salta', '(UTC-0300) America/Argentina/Salta'],
-  ['America/Argentina/San_Juan', '(UTC-0300) America/Argentina/San_Juan'],
-  ['America/Argentina/San_Luis', '(UTC-0300) America/Argentina/San_Luis'],
-  ['America/Argentina/Tucuman', '(UTC-0300) America/Argentina/Tucuman'],
-  ['America/Argentina/Ushuaia', '(UTC-0300) America/Argentina/Ushuaia'],
-  ['America/Asuncion', '(UTC-0300) America/Asuncion'],
-  ['America/Bahia', '(UTC-0300) America/Bahia'],
-  ['America/Belem', '(UTC-0300) America/Belem'],
-  ['America/Campo_Grande', '(UTC-0300) America/Campo_Grande'],
-  ['America/Cayenne', '(UTC-0300) America/Cayenne'],
-  ['America/Cuiaba', '(UTC-0300) America/Cuiaba'],
-  ['America/Fortaleza', '(UTC-0300) America/Fortaleza'],
-  ['America/Godthab', '(UTC-0300) America/Godthab'],
-  ['America/Maceio', '(UTC-0300) America/Maceio'],
-  ['America/Miquelon', '(UTC-0300) America/Miquelon'],
-  ['America/Montevideo', '(UTC-0300) America/Montevideo'],
-  ['America/Paramaribo', '(UTC-0300) America/Paramaribo'],
-  ['America/Recife', '(UTC-0300) America/Recife'],
-  ['America/Santarem', '(UTC-0300) America/Santarem'],
-  ['America/Santiago', '(UTC-0300) America/Santiago'],
-  ['America/Sao_Paulo', '(UTC-0300) America/Sao_Paulo'],
-  ['Antarctica/Palmer', '(UTC-0300) Antarctica/Palmer'],
-  ['Antarctica/Rothera', '(UTC-0300) Antarctica/Rothera'],
-  ['Atlantic/Stanley', '(UTC-0300) Atlantic/Stanley'],
-  ['America/Noronha', '(UTC-0200) America/Noronha'],
-  ['Atlantic/South_Georgia', '(UTC-0200) Atlantic/South_Georgia'],
-  ['America/Scoresbysund', '(UTC-0100) America/Scoresbysund'],
-  ['Atlantic/Azores', '(UTC-0100) Atlantic/Azores'],
-  ['Atlantic/Cape_Verde', '(UTC-0100) Atlantic/Cape_Verde'],
-  ['Africa/Abidjan', '(UTC+0000) Africa/Abidjan'],
-  ['Africa/Accra', '(UTC+0000) Africa/Accra'],
-  ['Africa/Bamako', '(UTC+0000) Africa/Bamako'],
-  ['Africa/Banjul', '(UTC+0000) Africa/Banjul'],
-  ['Africa/Bissau', '(UTC+0000) Africa/Bissau'],
-  ['Africa/Casablanca', '(UTC+0000) Africa/Casablanca'],
-  ['Africa/Conakry', '(UTC+0000) Africa/Conakry'],
-  ['Africa/Dakar', '(UTC+0000) Africa/Dakar'],
-  ['Africa/El_Aaiun', '(UTC+0000) Africa/El_Aaiun'],
-  ['Africa/Freetown', '(UTC+0000) Africa/Freetown'],
-  ['Africa/Lome', '(UTC+0000) Africa/Lome'],
-  ['Africa/Monrovia', '(UTC+0000) Africa/Monrovia'],
-  ['Africa/Nouakchott', '(UTC+0000) Africa/Nouakchott'],
-  ['Africa/Ouagadougou', '(UTC+0000) Africa/Ouagadougou'],
-  ['Africa/Sao_Tome', '(UTC+0000) Africa/Sao_Tome'],
-  ['America/Danmarkshavn', '(UTC+0000) America/Danmarkshavn'],
-  ['Antarctica/Troll', '(UTC+0000) Antarctica/Troll'],
-  ['Atlantic/Canary', '(UTC+0000) Atlantic/Canary'],
-  ['Atlantic/Faroe', '(UTC+0000) Atlantic/Faroe'],
-  ['Atlantic/Madeira', '(UTC+0000) Atlantic/Madeira'],
-  ['Atlantic/Reykjavik', '(UTC+0000) Atlantic/Reykjavik'],
-  ['Atlantic/St_Helena', '(UTC+0000) Atlantic/St_Helena'],
-  ['Europe/Dublin', '(UTC+0000) Europe/Dublin'],
-  ['Europe/Guernsey', '(UTC+0000) Europe/Guernsey'],
-  ['Europe/Isle_of_Man', '(UTC+0000) Europe/Isle_of_Man'],
-  ['Europe/Jersey', '(UTC+0000) Europe/Jersey'],
-  ['Europe/Lisbon', '(UTC+0000) Europe/Lisbon'],
-  ['Europe/London', '(UTC+0000) Europe/London'],
-  ['GMT', '(UTC+0000) GMT'],
-  ['UTC', '(UTC+0000) UTC'],
-  ['Africa/Algiers', '(UTC+0100) Africa/Algiers'],
-  ['Africa/Bangui', '(UTC+0100) Africa/Bangui'],
-  ['Africa/Brazzaville', '(UTC+0100) Africa/Brazzaville'],
-  ['Africa/Ceuta', '(UTC+0100) Africa/Ceuta'],
-  ['Africa/Douala', '(UTC+0100) Africa/Douala'],
-  ['Africa/Kinshasa', '(UTC+0100) Africa/Kinshasa'],
-  ['Africa/Lagos', '(UTC+0100) Africa/Lagos'],
-  ['Africa/Libreville', '(UTC+0100) Africa/Libreville'],
-  ['Africa/Luanda', '(UTC+0100) Africa/Luanda'],
-  ['Africa/Malabo', '(UTC+0100) Africa/Malabo'],
-  ['Africa/Ndjamena', '(UTC+0100) Africa/Ndjamena'],
-  ['Africa/Niamey', '(UTC+0100) Africa/Niamey'],
-  ['Africa/Porto-Novo', '(UTC+0100) Africa/Porto-Novo'],
-  ['Africa/Tunis', '(UTC+0100) Africa/Tunis'],
-  ['Arctic/Longyearbyen', '(UTC+0100) Arctic/Longyearbyen'],
-  ['Europe/Amsterdam', '(UTC+0100) Europe/Amsterdam'],
-  ['Europe/Andorra', '(UTC+0100) Europe/Andorra'],
-  ['Europe/Belgrade', '(UTC+0100) Europe/Belgrade'],
-  ['Europe/Berlin', '(UTC+0100) Europe/Berlin'],
-  ['Europe/Bratislava', '(UTC+0100) Europe/Bratislava'],
-  ['Europe/Brussels', '(UTC+0100) Europe/Brussels'],
-  ['Europe/Budapest', '(UTC+0100) Europe/Budapest'],
-  ['Europe/Busingen', '(UTC+0100) Europe/Busingen'],
-  ['Europe/Copenhagen', '(UTC+0100) Europe/Copenhagen'],
-  ['Europe/Gibraltar', '(UTC+0100) Europe/Gibraltar'],
-  ['Europe/Ljubljana', '(UTC+0100) Europe/Ljubljana'],
-  ['Europe/Luxembourg', '(UTC+0100) Europe/Luxembourg'],
-  ['Europe/Madrid', '(UTC+0100) Europe/Madrid'],
-  ['Europe/Malta', '(UTC+0100) Europe/Malta'],
-  ['Europe/Monaco', '(UTC+0100) Europe/Monaco'],
-  ['Europe/Oslo', '(UTC+0100) Europe/Oslo'],
-  ['Europe/Paris', '(UTC+0100) Europe/Paris'],
-  ['Europe/Podgorica', '(UTC+0100) Europe/Podgorica'],
-  ['Europe/Prague', '(UTC+0100) Europe/Prague'],
-  ['Europe/Rome', '(UTC+0100) Europe/Rome'],
-  ['Europe/San_Marino', '(UTC+0100) Europe/San_Marino'],
-  ['Europe/Sarajevo', '(UTC+0100) Europe/Sarajevo'],
-  ['Europe/Skopje', '(UTC+0100) Europe/Skopje'],
-  ['Europe/Stockholm', '(UTC+0100) Europe/Stockholm'],
-  ['Europe/Tirane', '(UTC+0100) Europe/Tirane'],
-  ['Europe/Vaduz', '(UTC+0100) Europe/Vaduz'],
-  ['Europe/Vatican', '(UTC+0100) Europe/Vatican'],
-  ['Europe/Vienna', '(UTC+0100) Europe/Vienna'],
-  ['Europe/Warsaw', '(UTC+0100) Europe/Warsaw'],
-  ['Europe/Zagreb', '(UTC+0100) Europe/Zagreb'],
-  ['Europe/Zurich', '(UTC+0100) Europe/Zurich'],
-  ['Africa/Blantyre', '(UTC+0200) Africa/Blantyre'],
-  ['Africa/Bujumbura', '(UTC+0200) Africa/Bujumbura'],
-  ['Africa/Cairo', '(UTC+0200) Africa/Cairo'],
-  ['Africa/Gaborone', '(UTC+0200) Africa/Gaborone'],
-  ['Africa/Harare', '(UTC+0200) Africa/Harare'],
-  ['Africa/Johannesburg', '(UTC+0200) Africa/Johannesburg'],
-  ['Africa/Juba', '(UTC+0200) Africa/Juba'],
-  ['Africa/Khartoum', '(UTC+0200) Africa/Khartoum'],
-  ['Africa/Kigali', '(UTC+0200) Africa/Kigali'],
-  ['Africa/Lubumbashi', '(UTC+0200) Africa/Lubumbashi'],
-  ['Africa/Lusaka', '(UTC+0200) Africa/Lusaka'],
-  ['Africa/Maputo', '(UTC+0200) Africa/Maputo'],
-  ['Africa/Maseru', '(UTC+0200) Africa/Maseru'],
-  ['Africa/Mbabane', '(UTC+0200) Africa/Mbabane'],
-  ['Africa/Tripoli', '(UTC+0200) Africa/Tripoli'],
-  ['Africa/Windhoek', '(UTC+0200) Africa/Windhoek'],
-  ['Asia/Amman', '(UTC+0200) Asia/Amman'],
-  ['Asia/Beirut', '(UTC+0200) Asia/Beirut'],
-  ['Asia/Damascus', '(UTC+0200) Asia/Damascus'],
-  ['Asia/Gaza', '(UTC+0200) Asia/Gaza'],
-  ['Asia/Hebron', '(UTC+0200) Asia/Hebron'],
-  ['Asia/Jerusalem', '(UTC+0200) Asia/Jerusalem'],
-  ['Asia/Nicosia', '(UTC+0200) Asia/Nicosia'],
-  ['Europe/Athens', '(UTC+0200) Europe/Athens'],
-  ['Europe/Bucharest', '(UTC+0200) Europe/Bucharest'],
-  ['Europe/Chisinau', '(UTC+0200) Europe/Chisinau'],
-  ['Europe/Helsinki', '(UTC+0200) Europe/Helsinki'],
-  ['Europe/Kaliningrad', '(UTC+0200) Europe/Kaliningrad'],
-  ['Europe/Mariehamn', '(UTC+0200) Europe/Mariehamn'],
-  ['Europe/Riga', '(UTC+0200) Europe/Riga'],
-  ['Europe/Sofia', '(UTC+0200) Europe/Sofia'],
-  ['Europe/Tallinn', '(UTC+0200) Europe/Tallinn'],
-  ['Europe/Uzhgorod', '(UTC+0200) Europe/Uzhgorod'],
-  ['Europe/Vilnius', '(UTC+0200) Europe/Vilnius'],
-  ['Europe/Zaporozhye', '(UTC+0200) Europe/Zaporozhye'],
-  ['Africa/Addis_Ababa', '(UTC+0300) Africa/Addis_Ababa'],
-  ['Africa/Asmara', '(UTC+0300) Africa/Asmara'],
-  ['Africa/Dar_es_Salaam', '(UTC+0300) Africa/Dar_es_Salaam'],
-  ['Africa/Djibouti', '(UTC+0300) Africa/Djibouti'],
-  ['Africa/Kampala', '(UTC+0300) Africa/Kampala'],
-  ['Africa/Mogadishu', '(UTC+0300) Africa/Mogadishu'],
-  ['Africa/Nairobi', '(UTC+0300) Africa/Nairobi'],
-  ['Antarctica/Syowa', '(UTC+0300) Antarctica/Syowa'],
-  ['Asia/Aden', '(UTC+0300) Asia/Aden'],
-  ['Asia/Baghdad', '(UTC+0300) Asia/Baghdad'],
-  ['Asia/Bahrain', '(UTC+0300) Asia/Bahrain'],
-  ['Asia/Kuwait', '(UTC+0300) Asia/Kuwait'],
-  ['Asia/Qatar', '(UTC+0300) Asia/Qatar'],
-  ['Asia/Riyadh', '(UTC+0300) Asia/Riyadh'],
-  ['Europe/Istanbul', '(UTC+0300) Europe/Istanbul'],
-  ['Europe/Kiev', '(UTC+0300) Europe/Kiev'],
-  ['Europe/Minsk', '(UTC+0300) Europe/Minsk'],
-  ['Europe/Moscow', '(UTC+0300) Europe/Moscow'],
-  ['Europe/Simferopol', '(UTC+0300) Europe/Simferopol'],
-  ['Indian/Antananarivo', '(UTC+0300) Indian/Antananarivo'],
-  ['Indian/Comoro', '(UTC+0300) Indian/Comoro'],
-  ['Indian/Mayotte', '(UTC+0300) Indian/Mayotte'],
-  ['Asia/Tehran', '(UTC+0330) Asia/Tehran'],
-  ['Asia/Baku', '(UTC+0400) Asia/Baku'],
-  ['Asia/Dubai', '(UTC+0400) Asia/Dubai'],
-  ['Asia/Muscat', '(UTC+0400) Asia/Muscat'],
-  ['Asia/Tbilisi', '(UTC+0400) Asia/Tbilisi'],
-  ['Asia/Yerevan', '(UTC+0400) Asia/Yerevan'],
-  ['Europe/Samara', '(UTC+0400) Europe/Samara'],
-  ['Europe/Volgograd', '(UTC+0400) Europe/Volgograd'],
-  ['Indian/Mahe', '(UTC+0400) Indian/Mahe'],
-  ['Indian/Mauritius', '(UTC+0400) Indian/Mauritius'],
-  ['Indian/Reunion', '(UTC+0400) Indian/Reunion'],
-  ['Asia/Kabul', '(UTC+0430) Asia/Kabul'],
-  ['Antarctica/Mawson', '(UTC+0500) Antarctica/Mawson'],
-  ['Asia/Aqtau', '(UTC+0500) Asia/Aqtau'],
-  ['Asia/Aqtobe', '(UTC+0500) Asia/Aqtobe'],
-  ['Asia/Ashgabat', '(UTC+0500) Asia/Ashgabat'],
-  ['Asia/Dushanbe', '(UTC+0500) Asia/Dushanbe'],
-  ['Asia/Karachi', '(UTC+0500) Asia/Karachi'],
-  ['Asia/Oral', '(UTC+0500) Asia/Oral'],
-  ['Asia/Samarkand', '(UTC+0500) Asia/Samarkand'],
-  ['Asia/Tashkent', '(UTC+0500) Asia/Tashkent'],
-  ['Asia/Yekaterinburg', '(UTC+0500) Asia/Yekaterinburg'],
-  ['Indian/Kerguelen', '(UTC+0500) Indian/Kerguelen'],
-  ['Indian/Maldives', '(UTC+0500) Indian/Maldives'],
-  ['Asia/Colombo', '(UTC+0530) Asia/Colombo'],
-  ['Asia/Kolkata', '(UTC+0530) Asia/Kolkata'],
-  ['Asia/Kathmandu', '(UTC+0545) Asia/Kathmandu'],
-  ['Antarctica/Vostok', '(UTC+0600) Antarctica/Vostok'],
-  ['Asia/Almaty', '(UTC+0600) Asia/Almaty'],
-  ['Asia/Bishkek', '(UTC+0600) Asia/Bishkek'],
-  ['Asia/Dhaka', '(UTC+0600) Asia/Dhaka'],
-  ['Asia/Novosibirsk', '(UTC+0600) Asia/Novosibirsk'],
-  ['Asia/Omsk', '(UTC+0600) Asia/Omsk'],
-  ['Asia/Qyzylorda', '(UTC+0600) Asia/Qyzylorda'],
-  ['Asia/Thimphu', '(UTC+0600) Asia/Thimphu'],
-  ['Asia/Urumqi', '(UTC+0600) Asia/Urumqi'],
-  ['Indian/Chagos', '(UTC+0600) Indian/Chagos'],
-  ['Asia/Rangoon', '(UTC+0630) Asia/Rangoon'],
-  ['Indian/Cocos', '(UTC+0630) Indian/Cocos'],
-  ['Antarctica/Davis', '(UTC+0700) Antarctica/Davis'],
-  ['Asia/Bangkok', '(UTC+0700) Asia/Bangkok'],
-  ['Asia/Ho_Chi_Minh', '(UTC+0700) Asia/Ho_Chi_Minh'],
-  ['Asia/Hovd', '(UTC+0700) Asia/Hovd'],
-  ['Asia/Jakarta', '(UTC+0700) Asia/Jakarta'],
-  ['Asia/Krasnoyarsk', '(UTC+0700) Asia/Krasnoyarsk'],
-  ['Asia/Novokuznetsk', '(UTC+0700) Asia/Novokuznetsk'],
-  ['Asia/Phnom_Penh', '(UTC+0700) Asia/Phnom_Penh'],
-  ['Asia/Pontianak', '(UTC+0700) Asia/Pontianak'],
-  ['Asia/Vientiane', '(UTC+0700) Asia/Vientiane'],
-  ['Indian/Christmas', '(UTC+0700) Indian/Christmas'],
-  ['Antarctica/Casey', '(UTC+0800) Antarctica/Casey'],
-  ['Asia/Brunei', '(UTC+0800) Asia/Brunei'],
-  ['Asia/Choibalsan', '(UTC+0800) Asia/Choibalsan'],
-  ['Asia/Hong_Kong', '(UTC+0800) Asia/Hong_Kong'],
-  ['Asia/Irkutsk', '(UTC+0800) Asia/Irkutsk'],
-  ['Asia/Kuala_Lumpur', '(UTC+0800) Asia/Kuala_Lumpur'],
-  ['Asia/Kuching', '(UTC+0800) Asia/Kuching'],
-  ['Asia/Macau', '(UTC+0800) Asia/Macau'],
-  ['Asia/Makassar', '(UTC+0800) Asia/Makassar'],
-  ['Asia/Manila', '(UTC+0800) Asia/Manila'],
-  ['Asia/Shanghai', '(UTC+0800) Asia/Shanghai'],
-  ['Asia/Singapore', '(UTC+0800) Asia/Singapore'],
-  ['Asia/Taipei', '(UTC+0800) Asia/Taipei'],
-  ['Asia/Ulaanbaatar', '(UTC+0800) Asia/Ulaanbaatar'],
-  ['Australia/Perth', '(UTC+0800) Australia/Perth'],
-  ['Australia/Eucla', '(UTC+0845) Australia/Eucla'],
-  ['Asia/Chita', '(UTC+0900) Asia/Chita'],
-  ['Asia/Dili', '(UTC+0900) Asia/Dili'],
-  ['Asia/Jayapura', '(UTC+0900) Asia/Jayapura'],
-  ['Asia/Khandyga', '(UTC+0900) Asia/Khandyga'],
-  ['Asia/Pyongyang', '(UTC+0900) Asia/Pyongyang'],
-  ['Asia/Seoul', '(UTC+0900) Asia/Seoul'],
-  ['Asia/Tokyo', '(UTC+0900) Asia/Tokyo'],
-  ['Asia/Yakutsk', '(UTC+0900) Asia/Yakutsk'],
-  ['Pacific/Palau', '(UTC+0900) Pacific/Palau'],
-  ['Australia/Darwin', '(UTC+0930) Australia/Darwin'],
-  ['Antarctica/DumontDUrville', '(UTC+1000) Antarctica/DumontDUrville'],
-  ['Asia/Magadan', '(UTC+1000) Asia/Magadan'],
-  ['Asia/Sakhalin', '(UTC+1000) Asia/Sakhalin'],
-  ['Asia/Ust-Nera', '(UTC+1000) Asia/Ust-Nera'],
-  ['Asia/Vladivostok', '(UTC+1000) Asia/Vladivostok'],
-  ['Australia/Brisbane', '(UTC+1000) Australia/Brisbane'],
-  ['Australia/Lindeman', '(UTC+1000) Australia/Lindeman'],
-  ['Pacific/Chuuk', '(UTC+1000) Pacific/Chuuk'],
-  ['Pacific/Guam', '(UTC+1000) Pacific/Guam'],
-  ['Pacific/Port_Moresby', '(UTC+1000) Pacific/Port_Moresby'],
-  ['Pacific/Saipan', '(UTC+1000) Pacific/Saipan'],
-  ['Australia/Adelaide', '(UTC+1030) Australia/Adelaide'],
-  ['Australia/Broken_Hill', '(UTC+1030) Australia/Broken_Hill'],
-  ['Antarctica/Macquarie', '(UTC+1100) Antarctica/Macquarie'],
-  ['Asia/Srednekolymsk', '(UTC+1100) Asia/Srednekolymsk'],
-  ['Australia/Currie', '(UTC+1100) Australia/Currie'],
-  ['Australia/Hobart', '(UTC+1100) Australia/Hobart'],
-  ['Australia/Lord_Howe', '(UTC+1100) Australia/Lord_Howe'],
-  ['Australia/Melbourne', '(UTC+1100) Australia/Melbourne'],
-  ['Australia/Sydney', '(UTC+1100) Australia/Sydney'],
-  ['Pacific/Bougainville', '(UTC+1100) Pacific/Bougainville'],
-  ['Pacific/Efate', '(UTC+1100) Pacific/Efate'],
-  ['Pacific/Guadalcanal', '(UTC+1100) Pacific/Guadalcanal'],
-  ['Pacific/Kosrae', '(UTC+1100) Pacific/Kosrae'],
-  ['Pacific/Norfolk', '(UTC+1100) Pacific/Norfolk'],
-  ['Pacific/Noumea', '(UTC+1100) Pacific/Noumea'],
-  ['Pacific/Pohnpei', '(UTC+1100) Pacific/Pohnpei'],
-  ['Asia/Anadyr', '(UTC+1200) Asia/Anadyr'],
-  ['Asia/Kamchatka', '(UTC+1200) Asia/Kamchatka'],
-  ['Pacific/Funafuti', '(UTC+1200) Pacific/Funafuti'],
-  ['Pacific/Kwajalein', '(UTC+1200) Pacific/Kwajalein'],
-  ['Pacific/Majuro', '(UTC+1200) Pacific/Majuro'],
-  ['Pacific/Nauru', '(UTC+1200) Pacific/Nauru'],
-  ['Pacific/Tarawa', '(UTC+1200) Pacific/Tarawa'],
-  ['Pacific/Wake', '(UTC+1200) Pacific/Wake'],
-  ['Pacific/Wallis', '(UTC+1200) Pacific/Wallis'],
-  ['Antarctica/McMurdo', '(UTC+1300) Antarctica/McMurdo'],
-  ['Pacific/Auckland', '(UTC+1300) Pacific/Auckland'],
-  ['Pacific/Enderbury', '(UTC+1300) Pacific/Enderbury'],
-  ['Pacific/Fakaofo', '(UTC+1300) Pacific/Fakaofo'],
-  ['Pacific/Fiji', '(UTC+1300) Pacific/Fiji'],
-  ['Pacific/Tongatapu', '(UTC+1300) Pacific/Tongatapu'],
-  ['Pacific/Chatham', '(UTC+1345) Pacific/Chatham'],
-  ['Pacific/Apia', '(UTC+1400) Pacific/Apia'],
-  ['Pacific/Kiritimati', '(UTC+1400) Pacific/Kiritimati'],
-] as const;
+import styled from '@emotion/styled';
+import groupBy from 'lodash/groupBy';
+
+import {SelectValue} from 'sentry/types';
+
+type TimezoneGroup =
+  | null
+  | 'Other'
+  | 'US/Canada'
+  | 'America'
+  | 'Europe'
+  | 'Asia'
+  | 'Indian'
+  | 'Africa'
+  | 'Pacific'
+  | 'Atlantic'
+  | 'Antarctica'
+  | 'Arctic';
+
+const timezones: [
+  group: TimezoneGroup,
+  offsetLabel: string,
+  value: string,
+  label: string
+][] = [
+  ['Other', '+0', 'UTC', 'UTC'],
+  ['Other', '+0', 'GMT', 'GMT'],
+
+  // Group US higher-ish since
+  ['US/Canada', '-5', 'US/Eastern', 'Eastern'],
+  ['US/Canada', '-6', 'US/Central', 'Central'],
+  ['US/Canada', '-7', 'US/Arizona', 'Arizona'],
+  ['US/Canada', '-7', 'US/Mountain', 'Mountain'],
+  ['US/Canada', '-8', 'US/Pacific', 'Pacific'],
+  ['US/Canada', '-9', 'US/Alaska', 'Alaska'],
+  ['US/Canada', '-10', 'US/Hawaii', 'Hawaii'],
+  ['US/Canada', '-3:30', 'Canada/Newfoundland', 'Newfoundland'],
+  ['US/Canada', '-4', 'Canada/Atlantic', 'Atlantic'],
+  ['US/Canada', '-5', 'Canada/Eastern', 'Canadian Eastern'],
+  ['US/Canada', '-6', 'Canada/Central', 'Canadian Central'],
+  ['US/Canada', '-7', 'Canada/Mountain', 'Canadian Mountain'],
+  ['US/Canada', '-8', 'Canada/Pacific', 'Canadian Pacific'],
+
+  ['America', '+0', 'America/Danmarkshavn', 'Danmarkshavn'],
+  ['America', '-1', 'America/Scoresbysund', 'Scoresbysund'],
+  ['America', '-2', 'America/Noronha', 'Noronha'],
+  ['America', '-3', 'America/Araguaina', 'Araguaina'],
+  ['America', '-3', 'America/Argentina/Buenos_Aires', 'Argentina / Buenos Aires'],
+  ['America', '-3', 'America/Argentina/Catamarca', 'Argentina / Catamarca'],
+  ['America', '-3', 'America/Argentina/Cordoba', 'Argentina / Cordoba'],
+  ['America', '-3', 'America/Argentina/Jujuy', 'Argentina / Jujuy'],
+  ['America', '-3', 'America/Argentina/La_Rioja', 'Argentina / La Rioja'],
+  ['America', '-3', 'America/Argentina/Mendoza', 'Argentina / Mendoza'],
+  ['America', '-3', 'America/Argentina/Rio_Gallegos', 'Argentina / Rio Gallegos'],
+  ['America', '-3', 'America/Argentina/Salta', 'Argentina / Salta'],
+  ['America', '-3', 'America/Argentina/San_Juan', 'Argentina / San Juan'],
+  ['America', '-3', 'America/Argentina/San_Luis', 'Argentina / San Luis'],
+  ['America', '-3', 'America/Argentina/Tucuman', 'Argentina / Tucuman'],
+  ['America', '-3', 'America/Argentina/Ushuaia', 'Argentina / Ushuaia'],
+  ['America', '-3', 'America/Asuncion', 'Asuncion'],
+  ['America', '-3', 'America/Bahia', 'Bahia'],
+  ['America', '-3', 'America/Belem', 'Belem'],
+  ['America', '-3', 'America/Campo_Grande', 'Campo Grande'],
+  ['America', '-3', 'America/Cayenne', 'Cayenne'],
+  ['America', '-3', 'America/Cuiaba', 'Cuiaba'],
+  ['America', '-3', 'America/Fortaleza', 'Fortaleza'],
+  ['America', '-3', 'America/Godthab', 'Godthab'],
+  ['America', '-3', 'America/Maceio', 'Maceio'],
+  ['America', '-3', 'America/Miquelon', 'Miquelon'],
+  ['America', '-3', 'America/Montevideo', 'Montevideo'],
+  ['America', '-3', 'America/Paramaribo', 'Paramaribo'],
+  ['America', '-3', 'America/Recife', 'Recife'],
+  ['America', '-3', 'America/Santarem', 'Santarem'],
+  ['America', '-3', 'America/Santiago', 'Santiago'],
+  ['America', '-3', 'America/Sao_Paulo', 'Sao Paulo'],
+  ['America', '-3:30', 'America/St_Johns', 'St Johns'],
+  ['America', '-4', 'America/Anguilla', 'Anguilla'],
+  ['America', '-4', 'America/Antigua', 'Antigua'],
+  ['America', '-4', 'America/Aruba', 'Aruba'],
+  ['America', '-4', 'America/Barbados', 'Barbados'],
+  ['America', '-4', 'America/Blanc-Sablon', 'Blanc-Sablon'],
+  ['America', '-4', 'America/Boa_Vista', 'Boa Vista'],
+  ['America', '-4', 'America/Caracas', 'Caracas'],
+  ['America', '-4', 'America/Curacao', 'Curacao'],
+  ['America', '-4', 'America/Dominica', 'Dominica'],
+  ['America', '-4', 'America/Glace_Bay', 'Glace Bay'],
+  ['America', '-4', 'America/Goose_Bay', 'Goose Bay'],
+  ['America', '-4', 'America/Grenada', 'Grenada'],
+  ['America', '-4', 'America/Guadeloupe', 'Guadeloupe'],
+  ['America', '-4', 'America/Guyana', 'Guyana'],
+  ['America', '-4', 'America/Halifax', 'Halifax'],
+  ['America', '-4', 'America/Kralendijk', 'Kralendijk'],
+  ['America', '-4', 'America/La_Paz', 'La Paz'],
+  ['America', '-4', 'America/Lower_Princes', 'Lower Princes'],
+  ['America', '-4', 'America/Manaus', 'Manaus'],
+  ['America', '-4', 'America/Marigot', 'Marigot'],
+  ['America', '-4', 'America/Martinique', 'Martinique'],
+  ['America', '-4', 'America/Moncton', 'Moncton'],
+  ['America', '-4', 'America/Montserrat', 'Montserrat'],
+  ['America', '-4', 'America/Port_of_Spain', 'Port of Spain'],
+  ['America', '-4', 'America/Porto_Velho', 'Porto Velho'],
+  ['America', '-4', 'America/Puerto_Rico', 'Puerto Rico'],
+  ['America', '-4', 'America/Santo_Domingo', 'Santo Domingo'],
+  ['America', '-4', 'America/St_Barthelemy', 'St Barthelemy'],
+  ['America', '-4', 'America/St_Kitts', 'St Kitts'],
+  ['America', '-4', 'America/St_Lucia', 'St Lucia'],
+  ['America', '-4', 'America/St_Thomas', 'St Thomas'],
+  ['America', '-4', 'America/St_Vincent', 'St Vincent'],
+  ['America', '-4', 'America/Thule', 'Thule'],
+  ['America', '-4', 'America/Tortola', 'Tortola'],
+  ['America', '-5', 'America/Atikokan', 'Atikokan'],
+  ['America', '-5', 'America/Bogota', 'Bogota'],
+  ['America', '-5', 'America/Cancun', 'Cancun'],
+  ['America', '-5', 'America/Cayman', 'Cayman'],
+  ['America', '-5', 'America/Detroit', 'Detroit'],
+  ['America', '-5', 'America/Eirunepe', 'Eirunepe'],
+  ['America', '-5', 'America/Grand_Turk', 'Grand Turk'],
+  ['America', '-5', 'America/Guayaquil', 'Guayaquil'],
+  ['America', '-5', 'America/Havana', 'Havana'],
+  ['America', '-5', 'America/Indiana/Indianapolis', 'Indiana / Indianapolis'],
+  ['America', '-5', 'America/Indiana/Marengo', 'Indiana / Marengo'],
+  ['America', '-5', 'America/Indiana/Petersburg', 'Indiana / Petersburg'],
+  ['America', '-5', 'America/Indiana/Vevay', 'Indiana / Vevay'],
+  ['America', '-5', 'America/Indiana/Vincennes', 'Indiana / Vincennes'],
+  ['America', '-5', 'America/Indiana/Winamac', 'Indiana / Winamac'],
+  ['America', '-5', 'America/Iqaluit', 'Iqaluit'],
+  ['America', '-5', 'America/Jamaica', 'Jamaica'],
+  ['America', '-5', 'America/Kentucky/Louisville', 'Kentucky / Louisville'],
+  ['America', '-5', 'America/Kentucky/Monticello', 'Kentucky / Monticello'],
+  ['America', '-5', 'America/Lima', 'Lima'],
+  ['America', '-5', 'America/Nassau', 'Nassau'],
+  ['America', '-5', 'America/New_York', 'New York'],
+  ['America', '-5', 'America/Nipigon', 'Nipigon'],
+  ['America', '-5', 'America/Panama', 'Panama'],
+  ['America', '-5', 'America/Pangnirtung', 'Pangnirtung'],
+  ['America', '-5', 'America/Port-au-Prince', 'Port-au-Prince'],
+  ['America', '-5', 'America/Rio_Branco', 'Rio Branco'],
+  ['America', '-5', 'America/Thunder_Bay', 'Thunder Bay'],
+  ['America', '-5', 'America/Toronto', 'Toronto'],
+  ['America', '-6', 'America/Bahia_Banderas', 'Bahia Banderas'],
+  ['America', '-6', 'America/Belize', 'Belize'],
+  ['America', '-6', 'America/Chicago', 'Chicago'],
+  ['America', '-6', 'America/Costa_Rica', 'Costa Rica'],
+  ['America', '-6', 'America/El_Salvador', 'El Salvador'],
+  ['America', '-6', 'America/Guatemala', 'Guatemala'],
+  ['America', '-6', 'America/Indiana/Knox', 'Indiana / Knox'],
+  ['America', '-6', 'America/Indiana/Tell_City', 'Indiana / Tell City'],
+  ['America', '-6', 'America/Managua', 'Managua'],
+  ['America', '-6', 'America/Matamoros', 'Matamoros'],
+  ['America', '-6', 'America/Menominee', 'Menominee'],
+  ['America', '-6', 'America/Merida', 'Merida'],
+  ['America', '-6', 'America/Mexico_City', 'Mexico City'],
+  ['America', '-6', 'America/Monterrey', 'Monterrey'],
+  ['America', '-6', 'America/North_Dakota/Beulah', 'North Dakota / Beulah'],
+  ['America', '-6', 'America/North_Dakota/Center', 'North Dakota / Center'],
+  ['America', '-6', 'America/North_Dakota/New_Salem', 'North Dakota / New Salem'],
+  ['America', '-6', 'America/Rainy_River', 'Rainy River'],
+  ['America', '-6', 'America/Rankin_Inlet', 'Rankin Inlet'],
+  ['America', '-6', 'America/Regina', 'Regina'],
+  ['America', '-6', 'America/Resolute', 'Resolute'],
+  ['America', '-6', 'America/Swift_Current', 'Swift Current'],
+  ['America', '-6', 'America/Tegucigalpa', 'Tegucigalpa'],
+  ['America', '-6', 'America/Winnipeg', 'Winnipeg'],
+  ['America', '-7', 'America/Boise', 'Boise'],
+  ['America', '-7', 'America/Cambridge_Bay', 'Cambridge Bay'],
+  ['America', '-7', 'America/Chihuahua', 'Chihuahua'],
+  ['America', '-7', 'America/Creston', 'Creston'],
+  ['America', '-7', 'America/Dawson_Creek', 'Dawson Creek'],
+  ['America', '-7', 'America/Denver', 'Denver'],
+  ['America', '-7', 'America/Edmonton', 'Edmonton'],
+  ['America', '-7', 'America/Fort_Nelson', 'Fort Nelson'],
+  ['America', '-7', 'America/Hermosillo', 'Hermosillo'],
+  ['America', '-7', 'America/Inuvik', 'Inuvik'],
+  ['America', '-7', 'America/Mazatlan', 'Mazatlan'],
+  ['America', '-7', 'America/Ojinaga', 'Ojinaga'],
+  ['America', '-7', 'America/Phoenix', 'Phoenix'],
+  ['America', '-7', 'America/Yellowknife', 'Yellowknife'],
+  ['America', '-8', 'America/Dawson', 'Dawson'],
+  ['America', '-8', 'America/Los_Angeles', 'Los Angeles'],
+  ['America', '-8', 'America/Tijuana', 'Tijuana'],
+  ['America', '-8', 'America/Vancouver', 'Vancouver'],
+  ['America', '-8', 'America/Whitehorse', 'Whitehorse'],
+  ['America', '-9', 'America/Anchorage', 'Anchorage'],
+  ['America', '-9', 'America/Juneau', 'Juneau'],
+  ['America', '-9', 'America/Metlakatla', 'Metlakatla'],
+  ['America', '-9', 'America/Nome', 'Nome'],
+  ['America', '-9', 'America/Sitka', 'Sitka'],
+  ['America', '-9', 'America/Yakutat', 'Yakutat'],
+  ['America', '-10', 'America/Adak', 'Adak'],
+
+  ['Europe', '+0', 'Europe/Dublin', 'Dublin'],
+  ['Europe', '+0', 'Europe/Guernsey', 'Guernsey'],
+  ['Europe', '+0', 'Europe/Isle_of_Man', 'Isle of Man'],
+  ['Europe', '+0', 'Europe/Jersey', 'Jersey'],
+  ['Europe', '+0', 'Europe/Lisbon', 'Lisbon'],
+  ['Europe', '+0', 'Europe/London', 'London'],
+  ['Europe', '+1', 'Europe/Amsterdam', 'Amsterdam'],
+  ['Europe', '+1', 'Europe/Andorra', 'Andorra'],
+  ['Europe', '+1', 'Europe/Belgrade', 'Belgrade'],
+  ['Europe', '+1', 'Europe/Berlin', 'Berlin'],
+  ['Europe', '+1', 'Europe/Bratislava', 'Bratislava'],
+  ['Europe', '+1', 'Europe/Brussels', 'Brussels'],
+  ['Europe', '+1', 'Europe/Budapest', 'Budapest'],
+  ['Europe', '+1', 'Europe/Busingen', 'Busingen'],
+  ['Europe', '+1', 'Europe/Copenhagen', 'Copenhagen'],
+  ['Europe', '+1', 'Europe/Gibraltar', 'Gibraltar'],
+  ['Europe', '+1', 'Europe/Ljubljana', 'Ljubljana'],
+  ['Europe', '+1', 'Europe/Luxembourg', 'Luxembourg'],
+  ['Europe', '+1', 'Europe/Madrid', 'Madrid'],
+  ['Europe', '+1', 'Europe/Malta', 'Malta'],
+  ['Europe', '+1', 'Europe/Monaco', 'Monaco'],
+  ['Europe', '+1', 'Europe/Oslo', 'Oslo'],
+  ['Europe', '+1', 'Europe/Paris', 'Paris'],
+  ['Europe', '+1', 'Europe/Podgorica', 'Podgorica'],
+  ['Europe', '+1', 'Europe/Prague', 'Prague'],
+  ['Europe', '+1', 'Europe/Rome', 'Rome'],
+  ['Europe', '+1', 'Europe/San_Marino', 'San Marino'],
+  ['Europe', '+1', 'Europe/Sarajevo', 'Sarajevo'],
+  ['Europe', '+1', 'Europe/Skopje', 'Skopje'],
+  ['Europe', '+1', 'Europe/Stockholm', 'Stockholm'],
+  ['Europe', '+1', 'Europe/Tirane', 'Tirane'],
+  ['Europe', '+1', 'Europe/Vaduz', 'Vaduz'],
+  ['Europe', '+1', 'Europe/Vatican', 'Vatican'],
+  ['Europe', '+1', 'Europe/Vienna', 'Vienna'],
+  ['Europe', '+1', 'Europe/Warsaw', 'Warsaw'],
+  ['Europe', '+1', 'Europe/Zagreb', 'Zagreb'],
+  ['Europe', '+1', 'Europe/Zurich', 'Zurich'],
+  ['Europe', '+2', 'Europe/Athens', 'Athens'],
+  ['Europe', '+2', 'Europe/Bucharest', 'Bucharest'],
+  ['Europe', '+2', 'Europe/Chisinau', 'Chisinau'],
+  ['Europe', '+2', 'Europe/Helsinki', 'Helsinki'],
+  ['Europe', '+2', 'Europe/Kaliningrad', 'Kaliningrad'],
+  ['Europe', '+2', 'Europe/Mariehamn', 'Mariehamn'],
+  ['Europe', '+2', 'Europe/Riga', 'Riga'],
+  ['Europe', '+2', 'Europe/Sofia', 'Sofia'],
+  ['Europe', '+2', 'Europe/Tallinn', 'Tallinn'],
+  ['Europe', '+2', 'Europe/Uzhgorod', 'Uzhgorod'],
+  ['Europe', '+2', 'Europe/Vilnius', 'Vilnius'],
+  ['Europe', '+2', 'Europe/Zaporozhye', 'Zaporozhye'],
+  ['Europe', '+3', 'Europe/Istanbul', 'Istanbul'],
+  ['Europe', '+3', 'Europe/Kiev', 'Kiev'],
+  ['Europe', '+3', 'Europe/Minsk', 'Minsk'],
+  ['Europe', '+3', 'Europe/Moscow', 'Moscow'],
+  ['Europe', '+3', 'Europe/Simferopol', 'Simferopol'],
+  ['Europe', '+4', 'Europe/Samara', 'Samara'],
+  ['Europe', '+4', 'Europe/Volgograd', 'Volgograd'],
+
+  ['Asia', '+2', 'Asia/Amman', 'Amman'],
+  ['Asia', '+2', 'Asia/Beirut', 'Beirut'],
+  ['Asia', '+2', 'Asia/Damascus', 'Damascus'],
+  ['Asia', '+2', 'Asia/Gaza', 'Gaza'],
+  ['Asia', '+2', 'Asia/Hebron', 'Hebron'],
+  ['Asia', '+2', 'Asia/Jerusalem', 'Jerusalem'],
+  ['Asia', '+2', 'Asia/Nicosia', 'Nicosia'],
+  ['Asia', '+3', 'Asia/Aden', 'Aden'],
+  ['Asia', '+3', 'Asia/Baghdad', 'Baghdad'],
+  ['Asia', '+3', 'Asia/Bahrain', 'Bahrain'],
+  ['Asia', '+3', 'Asia/Kuwait', 'Kuwait'],
+  ['Asia', '+3', 'Asia/Qatar', 'Qatar'],
+  ['Asia', '+3', 'Asia/Riyadh', 'Riyadh'],
+  ['Asia', '+3:30', 'Asia/Tehran', 'Tehran'],
+  ['Asia', '+4', 'Asia/Baku', 'Baku'],
+  ['Asia', '+4', 'Asia/Dubai', 'Dubai'],
+  ['Asia', '+4', 'Asia/Muscat', 'Muscat'],
+  ['Asia', '+4', 'Asia/Tbilisi', 'Tbilisi'],
+  ['Asia', '+4', 'Asia/Yerevan', 'Yerevan'],
+  ['Asia', '+4:30', 'Asia/Kabul', 'Kabul'],
+  ['Asia', '+5', 'Asia/Aqtau', 'Aqtau'],
+  ['Asia', '+5', 'Asia/Aqtobe', 'Aqtobe'],
+  ['Asia', '+5', 'Asia/Ashgabat', 'Ashgabat'],
+  ['Asia', '+5', 'Asia/Dushanbe', 'Dushanbe'],
+  ['Asia', '+5', 'Asia/Karachi', 'Karachi'],
+  ['Asia', '+5', 'Asia/Oral', 'Oral'],
+  ['Asia', '+5', 'Asia/Samarkand', 'Samarkand'],
+  ['Asia', '+5', 'Asia/Tashkent', 'Tashkent'],
+  ['Asia', '+5', 'Asia/Yekaterinburg', 'Yekaterinburg'],
+  ['Asia', '+5:30', 'Asia/Colombo', 'Colombo'],
+  ['Asia', '+5:30', 'Asia/Kolkata', 'Kolkata'],
+  ['Asia', '+5:45', 'Asia/Kathmandu', 'Kathmandu'],
+  ['Asia', '+6', 'Asia/Almaty', 'Almaty'],
+  ['Asia', '+6', 'Asia/Bishkek', 'Bishkek'],
+  ['Asia', '+6', 'Asia/Dhaka', 'Dhaka'],
+  ['Asia', '+6', 'Asia/Novosibirsk', 'Novosibirsk'],
+  ['Asia', '+6', 'Asia/Omsk', 'Omsk'],
+  ['Asia', '+6', 'Asia/Qyzylorda', 'Qyzylorda'],
+  ['Asia', '+6', 'Asia/Thimphu', 'Thimphu'],
+  ['Asia', '+6', 'Asia/Urumqi', 'Urumqi'],
+  ['Asia', '+6:30', 'Asia/Rangoon', 'Rangoon'],
+  ['Asia', '+7', 'Asia/Bangkok', 'Bangkok'],
+  ['Asia', '+7', 'Asia/Ho_Chi_Minh', 'Ho Chi Minh'],
+  ['Asia', '+7', 'Asia/Hovd', 'Hovd'],
+  ['Asia', '+7', 'Asia/Jakarta', 'Jakarta'],
+  ['Asia', '+7', 'Asia/Krasnoyarsk', 'Krasnoyarsk'],
+  ['Asia', '+7', 'Asia/Novokuznetsk', 'Novokuznetsk'],
+  ['Asia', '+7', 'Asia/Phnom_Penh', 'Phnom Penh'],
+  ['Asia', '+7', 'Asia/Pontianak', 'Pontianak'],
+  ['Asia', '+7', 'Asia/Vientiane', 'Vientiane'],
+  ['Asia', '+8', 'Asia/Brunei', 'Brunei'],
+  ['Asia', '+8', 'Asia/Choibalsan', 'Choibalsan'],
+  ['Asia', '+8', 'Asia/Hong_Kong', 'Hong Kong'],
+  ['Asia', '+8', 'Asia/Irkutsk', 'Irkutsk'],
+  ['Asia', '+8', 'Asia/Kuala_Lumpur', 'Kuala Lumpur'],
+  ['Asia', '+8', 'Asia/Kuching', 'Kuching'],
+  ['Asia', '+8', 'Asia/Macau', 'Macau'],
+  ['Asia', '+8', 'Asia/Makassar', 'Makassar'],
+  ['Asia', '+8', 'Asia/Manila', 'Manila'],
+  ['Asia', '+8', 'Asia/Shanghai', 'Shanghai'],
+  ['Asia', '+8', 'Asia/Singapore', 'Singapore'],
+  ['Asia', '+8', 'Asia/Taipei', 'Taipei'],
+  ['Asia', '+8', 'Asia/Ulaanbaatar', 'Ulaanbaatar'],
+  ['Asia', '+9', 'Asia/Chita', 'Chita'],
+  ['Asia', '+9', 'Asia/Dili', 'Dili'],
+  ['Asia', '+9', 'Asia/Jayapura', 'Jayapura'],
+  ['Asia', '+9', 'Asia/Khandyga', 'Khandyga'],
+  ['Asia', '+9', 'Asia/Pyongyang', 'Pyongyang'],
+  ['Asia', '+9', 'Asia/Seoul', 'Seoul'],
+  ['Asia', '+9', 'Asia/Tokyo', 'Tokyo'],
+  ['Asia', '+9', 'Asia/Yakutsk', 'Yakutsk'],
+  ['Asia', '+10', 'Asia/Magadan', 'Magadan'],
+  ['Asia', '+10', 'Asia/Sakhalin', 'Sakhalin'],
+  ['Asia', '+10', 'Asia/Ust-Nera', 'Ust-Nera'],
+  ['Asia', '+10', 'Asia/Vladivostok', 'Vladivostok'],
+  ['Asia', '+11', 'Asia/Srednekolymsk', 'Srednekolymsk'],
+  ['Asia', '+12', 'Asia/Anadyr', 'Anadyr'],
+  ['Asia', '+12', 'Asia/Kamchatka', 'Kamchatka'],
+
+  ['Indian', '+3', 'Indian/Antananarivo', 'Antananarivo'],
+  ['Indian', '+3', 'Indian/Comoro', 'Comoro'],
+  ['Indian', '+3', 'Indian/Mayotte', 'Mayotte'],
+  ['Indian', '+4', 'Indian/Mahe', 'Mahe'],
+  ['Indian', '+4', 'Indian/Mauritius', 'Mauritius'],
+  ['Indian', '+4', 'Indian/Reunion', 'Reunion'],
+  ['Indian', '+5', 'Indian/Kerguelen', 'Kerguelen'],
+  ['Indian', '+5', 'Indian/Maldives', 'Maldives'],
+  ['Indian', '+6', 'Indian/Chagos', 'Chagos'],
+  ['Indian', '+6:30', 'Indian/Cocos', 'Cocos'],
+  ['Indian', '+7', 'Indian/Christmas', 'Christmas'],
+
+  ['Africa', '+0', 'Africa/Abidjan', 'Abidjan'],
+  ['Africa', '+0', 'Africa/Accra', 'Accra'],
+  ['Africa', '+0', 'Africa/Bamako', 'Bamako'],
+  ['Africa', '+0', 'Africa/Banjul', 'Banjul'],
+  ['Africa', '+0', 'Africa/Bissau', 'Bissau'],
+  ['Africa', '+0', 'Africa/Casablanca', 'Casablanca'],
+  ['Africa', '+0', 'Africa/Conakry', 'Conakry'],
+  ['Africa', '+0', 'Africa/Dakar', 'Dakar'],
+  ['Africa', '+0', 'Africa/El_Aaiun', 'El Aaiun'],
+  ['Africa', '+0', 'Africa/Freetown', 'Freetown'],
+  ['Africa', '+0', 'Africa/Lome', 'Lome'],
+  ['Africa', '+0', 'Africa/Monrovia', 'Monrovia'],
+  ['Africa', '+0', 'Africa/Nouakchott', 'Nouakchott'],
+  ['Africa', '+0', 'Africa/Ouagadougou', 'Ouagadougou'],
+  ['Africa', '+0', 'Africa/Sao_Tome', 'Sao Tome'],
+  ['Africa', '+1', 'Africa/Algiers', 'Algiers'],
+  ['Africa', '+1', 'Africa/Bangui', 'Bangui'],
+  ['Africa', '+1', 'Africa/Brazzaville', 'Brazzaville'],
+  ['Africa', '+1', 'Africa/Ceuta', 'Ceuta'],
+  ['Africa', '+1', 'Africa/Douala', 'Douala'],
+  ['Africa', '+1', 'Africa/Kinshasa', 'Kinshasa'],
+  ['Africa', '+1', 'Africa/Lagos', 'Lagos'],
+  ['Africa', '+1', 'Africa/Libreville', 'Libreville'],
+  ['Africa', '+1', 'Africa/Luanda', 'Luanda'],
+  ['Africa', '+1', 'Africa/Malabo', 'Malabo'],
+  ['Africa', '+1', 'Africa/Ndjamena', 'Ndjamena'],
+  ['Africa', '+1', 'Africa/Niamey', 'Niamey'],
+  ['Africa', '+1', 'Africa/Porto-Novo', 'Porto-Novo'],
+  ['Africa', '+1', 'Africa/Tunis', 'Tunis'],
+  ['Africa', '+2', 'Africa/Blantyre', 'Blantyre'],
+  ['Africa', '+2', 'Africa/Bujumbura', 'Bujumbura'],
+  ['Africa', '+2', 'Africa/Cairo', 'Cairo'],
+  ['Africa', '+2', 'Africa/Gaborone', 'Gaborone'],
+  ['Africa', '+2', 'Africa/Harare', 'Harare'],
+  ['Africa', '+2', 'Africa/Johannesburg', 'Johannesburg'],
+  ['Africa', '+2', 'Africa/Juba', 'Juba'],
+  ['Africa', '+2', 'Africa/Khartoum', 'Khartoum'],
+  ['Africa', '+2', 'Africa/Kigali', 'Kigali'],
+  ['Africa', '+2', 'Africa/Lubumbashi', 'Lubumbashi'],
+  ['Africa', '+2', 'Africa/Lusaka', 'Lusaka'],
+  ['Africa', '+2', 'Africa/Maputo', 'Maputo'],
+  ['Africa', '+2', 'Africa/Maseru', 'Maseru'],
+  ['Africa', '+2', 'Africa/Mbabane', 'Mbabane'],
+  ['Africa', '+2', 'Africa/Tripoli', 'Tripoli'],
+  ['Africa', '+2', 'Africa/Windhoek', 'Windhoek'],
+  ['Africa', '+3', 'Africa/Addis_Ababa', 'Addis Ababa'],
+  ['Africa', '+3', 'Africa/Asmara', 'Asmara'],
+  ['Africa', '+3', 'Africa/Dar_es_Salaam', 'Dar es Salaam'],
+  ['Africa', '+3', 'Africa/Djibouti', 'Djibouti'],
+  ['Africa', '+3', 'Africa/Kampala', 'Kampala'],
+  ['Africa', '+3', 'Africa/Mogadishu', 'Mogadishu'],
+  ['Africa', '+3', 'Africa/Nairobi', 'Nairobi'],
+
+  ['Pacific', '+9', 'Pacific/Palau', 'Palau'],
+  ['Pacific', '+10', 'Pacific/Chuuk', 'Chuuk'],
+  ['Pacific', '+10', 'Pacific/Guam', 'Guam'],
+  ['Pacific', '+10', 'Pacific/Port_Moresby', 'Port Moresby'],
+  ['Pacific', '+10', 'Pacific/Saipan', 'Saipan'],
+  ['Pacific', '+11', 'Pacific/Bougainville', 'Bougainville'],
+  ['Pacific', '+11', 'Pacific/Efate', 'Efate'],
+  ['Pacific', '+11', 'Pacific/Guadalcanal', 'Guadalcanal'],
+  ['Pacific', '+11', 'Pacific/Kosrae', 'Kosrae'],
+  ['Pacific', '+11', 'Pacific/Norfolk', 'Norfolk'],
+  ['Pacific', '+11', 'Pacific/Noumea', 'Noumea'],
+  ['Pacific', '+11', 'Pacific/Pohnpei', 'Pohnpei'],
+  ['Pacific', '+12', 'Pacific/Funafuti', 'Funafuti'],
+  ['Pacific', '+12', 'Pacific/Kwajalein', 'Kwajalein'],
+  ['Pacific', '+12', 'Pacific/Majuro', 'Majuro'],
+  ['Pacific', '+12', 'Pacific/Nauru', 'Nauru'],
+  ['Pacific', '+12', 'Pacific/Tarawa', 'Tarawa'],
+  ['Pacific', '+12', 'Pacific/Wake', 'Wake'],
+  ['Pacific', '+12', 'Pacific/Wallis', 'Wallis'],
+  ['Pacific', '+13', 'Pacific/Auckland', 'Auckland'],
+  ['Pacific', '+13', 'Pacific/Enderbury', 'Enderbury'],
+  ['Pacific', '+13', 'Pacific/Fakaofo', 'Fakaofo'],
+  ['Pacific', '+13', 'Pacific/Fiji', 'Fiji'],
+  ['Pacific', '+13', 'Pacific/Tongatapu', 'Tongatapu'],
+  ['Pacific', '+13:45', 'Pacific/Chatham', 'Chatham'],
+  ['Pacific', '+14', 'Pacific/Apia', 'Apia'],
+  ['Pacific', '+14', 'Pacific/Kiritimati', 'Kiritimati'],
+  ['Pacific', '-5', 'Pacific/Easter', 'Easter'],
+  ['Pacific', '-6', 'Pacific/Galapagos', 'Galapagos'],
+  ['Pacific', '-8', 'Pacific/Pitcairn', 'Pitcairn'],
+  ['Pacific', '-9', 'Pacific/Gambier', 'Gambier'],
+  ['Pacific', '-9:30', 'Pacific/Marquesas', 'Marquesas'],
+  ['Pacific', '-10', 'Pacific/Honolulu', 'Honolulu'],
+  ['Pacific', '-10', 'Pacific/Johnston', 'Johnston'],
+  ['Pacific', '-10', 'Pacific/Rarotonga', 'Rarotonga'],
+  ['Pacific', '-10', 'Pacific/Tahiti', 'Tahiti'],
+  ['Pacific', '-11', 'Pacific/Midway', 'Midway'],
+  ['Pacific', '-11', 'Pacific/Niue', 'Niue'],
+  ['Pacific', '-11', 'Pacific/Pago_Pago', 'Pago Pago'],
+
+  ['Atlantic', '+0', 'Atlantic/Canary', 'Canary'],
+  ['Atlantic', '+0', 'Atlantic/Faroe', 'Faroe'],
+  ['Atlantic', '+0', 'Atlantic/Madeira', 'Madeira'],
+  ['Atlantic', '+0', 'Atlantic/Reykjavik', 'Reykjavik'],
+  ['Atlantic', '+0', 'Atlantic/St_Helena', 'St Helena'],
+  ['Atlantic', '-1', 'Atlantic/Azores', 'Azores'],
+  ['Atlantic', '-1', 'Atlantic/Cape_Verde', 'Cape Verde'],
+  ['Atlantic', '-2', 'Atlantic/South_Georgia', 'South Georgia'],
+  ['Atlantic', '-3', 'Atlantic/Stanley', 'Stanley'],
+  ['Atlantic', '-4', 'Atlantic/Bermuda', 'Bermuda'],
+
+  ['Antarctica', '+0', 'Antarctica/Troll', 'Troll'],
+  ['Antarctica', '+3', 'Antarctica/Syowa', 'Syowa'],
+  ['Antarctica', '+5', 'Antarctica/Mawson', 'Mawson'],
+  ['Antarctica', '+6', 'Antarctica/Vostok', 'Vostok'],
+  ['Antarctica', '+7', 'Antarctica/Davis', 'Davis'],
+  ['Antarctica', '+8', 'Antarctica/Casey', 'Casey'],
+  ['Antarctica', '+10', 'Antarctica/DumontDUrville', 'DumontDUrville'],
+  ['Antarctica', '+11', 'Antarctica/Macquarie', 'Macquarie'],
+  ['Antarctica', '+13', 'Antarctica/McMurdo', 'McMurdo'],
+  ['Antarctica', '-3', 'Antarctica/Palmer', 'Palmer'],
+  ['Antarctica', '-3', 'Antarctica/Rothera', 'Rothera'],
+  ['Arctic', '+1', 'Arctic/Longyearbyen', 'Longyearbyen'],
+];
+
+const OffsetLabel = styled('div')`
+  color: ${p => p.theme.subText};
+  font-weight: bold;
+  display: flex;
+  align-items: center;
+  font-size: ${p => p.theme.fontSizeSmall};
+  width: max-content;
+`;
+
+const groupedTimezones = Object.entries(groupBy(timezones, ([group]) => group));
+
+// @ts-expect-error Should be removed once these types improve for grouped options
+const timezoneOptions: SelectValue<string>[] = groupedTimezones.map(([group, zones]) => ({
+  label: group,
+  options: zones.map(([_, offsetLabel, value, label]) => ({
+    value,
+    trailingItems: <OffsetLabel>UTC {offsetLabel}</OffsetLabel>,
+    label,
+    textValue: `${group} ${label} ${offsetLabel}`,
+  })),
+}));
+
+export {timezones, timezoneOptions};

+ 2 - 2
static/app/views/monitors/monitorForm.tsx

@@ -13,7 +13,7 @@ import ExternalLink from 'sentry/components/links/externalLink';
 import {Panel, PanelAlert, PanelBody, PanelHeader} from 'sentry/components/panels';
 import TextCopyInput from 'sentry/components/textCopyInput';
 import TimeSince from 'sentry/components/timeSince';
-import timezones from 'sentry/data/timezones';
+import {timezoneOptions} from 'sentry/data/timezones';
 import {t, tct, tn} from 'sentry/locale';
 import {PageFilters, Project, SelectValue} from 'sentry/types';
 import commonTheme from 'sentry/utils/theme';
@@ -222,7 +222,7 @@ class MonitorForm extends Component<Props> {
                           name="config.timezone"
                           label={t('Timezone')}
                           defaultValue="UTC"
-                          options={timezones.map(([value, label]) => ({value, label}))}
+                          options={timezoneOptions}
                           help={tct(
                             "The timezone of your execution environment. Be sure to set this correctly, otherwise the schedule may be mismatched and check-ins will be marked as missed! Use [code:timedatectl] or similar to determine your machine's timezone.",
                             {code: <code />}