jpmorganchase / salt-ds

React UI components built with a focus on accessibility, customization and ease-of-use
https://www.saltdesignsystem.com
Apache License 2.0
128 stars 91 forks source link

Country Symbol #972

Closed joshwooding closed 1 year ago

joshwooding commented 1 year ago

https://github.com/jpmorganchase/salt-ds/issues/972#tasklist-block-21b4b30c-911a-48b2-81d6-c38be4284784

pseys commented 1 year ago

"AD": "Andorra" "AE": "United Arab Emirates" "AF": "Afghanistan" "AG": "Antigua and Barbuda" "AI": "Anguilla" "AL": "Albania" "AM": "Armenia" "AO": "Angola" "AQ": "Antarctica" "AR": "Argentina" "AS": "American Samoa" "AT": "Austria" "AU": "Australia" "AW": "Aruba" "AX": "Åland Islands" "AZ": "Azerbaijan" "BA": "Bosnia and Herzegovina" "BB": "Barbados" "BD": "Bangladesh" "BE": "Belgium" "BF": "Burkina Faso" "BG": "Bulgaria" "BH": "Bahrain" "BI": "Burundi" "BJ": "Benin" "BL": "Saint Barthélemy" "BM": "Bermuda" "BN": "Brunei Darussalam" "BO": "Bolivia (Plurinational State of)" "BQ": "Bonaire, Sint Eustatius and Saba" "BR": "Brazil" "BS": "Bahamas" "BT": "Bhutan" "BV": "Bouvet Island" "BW": "Botswana" "BY": "Belarus" "BZ": "Belize" "CA": "Canada" "CC": "Cocos (Keeling) Islands" "CD": "Congo (the Democratic Republic of the)" "CF": "Central African Republic" "CG": "Congo (the)" "CH": "Switzerland" "CI": "Côte d'Ivoire" "CK": "Cook Islands" "CL": "Chile" "CM": "Cameroon" "CN": "China" "CO": "Colombia" "CR": "Costa Rica" "CU": "Cuba" "CV": "Cabo Verde" "CW": "Curaçao" "CX": "Christmas Island" "CY": "Cyprus" "CZ": "Czechia" "DE": "Germany" "DJ": "Djibouti" "DK": "Denmark" "DM": "Dominica" "DO": "Dominican Republic" "DZ": "Algeria" "EC": "Ecuador" "EE": "Estonia" "EG": "Egypt" "EH": "Western Sahara" "ER": "Eritrea" "ES": "Spain" "ET": "Ethiopia" "EU": "European Union" "FI": "Finland" "FJ": "Fiji" "FK": "Falkland Islands (Malvinas)" "FM": "Micronesia (Federated States of)" "FO": "Faroe Islands" "FR": "France" "GA": "Gabon" "GB": "Great Britain" "GB-ENG": "England" "GB-NIR": "Northern Ireland" "GB-SCT": "Scotland" "GB-WLS": "Wales" "GD": "Grenada" "GE": "Georgia" "GF": "French Guiana" "GG": "Guernsey" "GH": "Ghana" "GI": "Gibraltar" "GL": "Greenland" "GM": "Gambia" "GN": "Guinea" "GP": "Guadeloupe" "GQ": "Equatorial Guinea" "GR": "Greece" "GS": "South Georgia and the South Sandwich Islands" "GT": "Guatemala" "GU": "Guam" "GW": "Guinea-Bissau" "GY": "Guyana" "HK": "Hong Kong" "HM": "Heard Island and McDonald Islands" "HN": "Honduras" "HR": "Croatia" "HT": "Haiti" "HU": "Hungary" "ID": "Indonesia" "IE": "Ireland" "IL": "Israel" "IM": "Isle of Man" "IN": "India" "IO": "British Indian Ocean Territory" "IQ": "Iraq" "IR": "Iran (Islamic Republic of)" "IS": "Iceland" "IT": "Italy" "JE": "Jersey" "JM": "Jamaica" "JO": "Jordan" "JP": "Japan" "KE": "Kenya" "KG": "Kyrgyzstan" "KH": "Cambodia" "KI": "Kiribati" "KM": "Comoros" "KN": "Saint Kitts and Nevis" "KP": "Korea (Democratic People's Republic of)" "KR": "Korea (Republic of)" "KW": "Kuwait" "KY": "Cayman Islands" "KZ": "Kazakhstan" "LA": "Lao People's Democratic Republic" "LB": "Lebanon" "LC": "Saint Lucia" "LI": "Liechtenstein" "LK": "Sri Lanka" "LR": "Liberia" "LS": "Lesotho" "LT": "Lithuania" "LU": "Luxembourg" "LV": "Latvia" "LY": "Libya" "MA": "Morocco" "MC": "Monaco" "MD": "Moldova (Republic of)" "ME": "Montenegro" "MF": "Saint Martin (French part)" "MG": "Madagascar" "MH": "Marshall Islands" "MK": "North Macedonia" "ML": "Mali" "MM": "Myanmar" "MN": "Mongolia" "MO": "Macao" "MP": "Northern Mariana Islands" "MQ": "Martinique" "MR": "Mauritania" "MS": "Montserrat" "MT": "Malta" "MU": "Mauritius" "MV": "Maldives" "MW": "Malawi" "MX": "Mexico" "MY": "Malaysia" "MZ": "Mozambique" "NA": "Namibia" "NC": "New Caledonia" "NE": "Niger" "NF": "Norfolk Island" "NG": "Nigeria" "NI": "Nicaragua" "NL": "Netherlands" "NO": "Norway" "NP": "Nepal" "NR": "Nauru" "NU": "Niue" "NZ": "New Zealand" "OM": "Oman" "PA": "Panama" "PE": "Peru" "PF": "French Polynesia" "PG": "Papua New Guinea" "PH": "Philippines" "PK": "Pakistan" "PL": "Poland" "PM": "Saint Pierre and Miquelon" "PN": "Pitcairn" "PR": "Puerto Rico" "PS": "Palestine (State of)" "PT": "Portugal" "PW": "Palau" "PY": "Paraguay" "QA": "Qatar" "RE": "Réunion" "RO": "Romania" "RS": "Serbia" "RU": "Russian Federation" "RW": "Rwanda" "SA": "Saudi Arabia" "SB": "Solomon Islands" "SC": "Seychelles" "SD": "Sudan" "SE": "Sweden" "SG": "Singapore" "SH": "Saint Helena, Ascension and Tristan da Cunha" "SI": "Slovenia" "SJ": "Svalbard and Jan Mayen" "SK": "Slovakia" "SL": "Sierra Leone" "SM": "San Marino" "SN": "Senegal" "SO": "Somalia" "SR": "Suriname" "SS": "South Sudan" "ST": "Sao Tome and Principe" "SV": "El Salvador" "SX": "Sint Maarten (Dutch part)" "SY": "Syrian Arab Republic" "SZ": "Eswatini" "TC": "Turks and Caicos Islands" "TD": "Chad" "TF": "French Southern Territories" "TG": "Togo" "TH": "Thailand" "TJ": "Tajikistan" "TK": "Tokelau" "TL": "Timor-Leste" "TM": "Turkmenistan" "TN": "Tunisia" "TO": "Tonga" "TR": "Turkey" "TT": "Trinidad and Tobago" "TV": "Tuvalu" "TW": "Taiwan (Province of China)" "TZ": "Tanzania (United Republic of)" "UA": "Ukraine" "UG": "Uganda" "UM": "United States Minor Outlying Islands" "UN": "United Nations" "US": "United States of America" "UY": "Uruguay" "UZ": "Uzbekistan" "VA": "Holy See" "VC": "Saint Vincent and the Grenadines" "VE": "Venezuela (Bolivarian Republic of)" "VG": "Virgin Islands (British)" "VI": "Virgin Islands (US)" "VN": "Viet Nam" "VU": "Vanuatu" "WF": "Wallis and Futuna" "WS": "Samoa" "XK": "Kosovo" "YE": "Yemen" "YT": "Mayotte" "ZA": "South Africa" "ZM": "Zambia" "ZW": "Zimbabwe"

Charlie-Beard commented 1 year ago

@pseys how'd you generate that list? I see non-countries like EU included and Hong Kong label doesn't have 'SAR' which I thought JPM used now

(I'm Charlie the product person for Spectrum Design System in JPMAM)

pseys commented 1 year ago

Hi @Charlie-Beard , thanks for showing an interest in this. The list originates from our legacy JPM UITK component. We're aiming for parity, hence the inclusion of one or two non-country flags – but we also see this benefiting our consumers as the flags aren't purely intended for country selection (although I appreciate I have just pushed for the component to change from Flag to Country Flag!).

We made some changes to the list based on a review of ISO standards for country naming and codes, and have also included Dominican Republic (somehow we missed it from the list in UITK) and a breakdown of the United Kingdom to allow for the inclusion of Welsh etc. flags.

Thanks for flagging (pun very much intended) the Hong Kong naming. When you mention 'JPM use' is that an official stance and do you have a source for it? We're keen to align our list with JPM standards but Josh and I couldn't find any internal resources that clearly defined Country naming conventions.

You might be interested to see the Flags I'm working on for this component (in Figma). We're creating circular stylised versions of each so that the dimensions are the same as our icon and Avatar components and are therefore interchangeable. For the first draft we're also trying to design them all using an extended JPM brand palette rather than our limited theme palette.

pseys commented 1 year ago

WIP https://www.figma.com/file/kFCmzvs3CiJc4ppZ8ve8cv/Country-Flags?node-id=1001%3A1560&t=fVqxL1XP4cqEXESJ-1

Charlie-Beard commented 1 year ago

Hi @pseys

apologies for the delay in getting back to you.

https://www.jpmorgan.com/HK/en/about-us - this references SAR in the top right ( I cannot paste a screenshot for some reason)

We purchased a premium icon pack for flags from FlatIcon for our flags but that wouldnt work for Salt as I believe you're removing your 3rd party deps.

I'll email you internally some details

pseys commented 1 year ago

Thanks for the further information @Charlie-Beard, the Excel was really helpful.

pseys commented 1 year ago

@joshwooding I've reviewed the flags we have against the work Charlie and the Spectrum team have done and also ISO3166 once more to ensure consistency. This has lead to a handful of changes to the following country names (its mostly adding 'the'):

United Arab Emirates (the) Cocos (Keeling) Islands (the) Bahamas (the) Central African Republic (the) Cook Islands (the) Dominican Republic (the) Falkland Islands (the) [Malvinas] Faroe Islands (the) Gambia (the) British Indian Ocean Territory (the) Comoros (the) Cayman Islands (the) Lao People's Democratic Republic (the) Moldova (the Republic of) Marshall Islands (the) Northern Mariana Islands (the) Niger (the) Netherlands (the) Philippines (the) Russian Federation (the) Sudan (the) Syrian Arab Republic (the) Turks and Caicos Islands (the) French Southern Territories (the) Türkiye Tanzania (the United Republic of) United States Minor Outlying Islands (the) United States of America (the) Holy See (the) Kosovo (the Republic of) *

parsakhan21 commented 1 year ago

2/14 - in progress, waiting for avatar to finish; 2/13 - in progress; have every flag as separate component etc 2/9 - time tom to chat avatar and flag 2/8 - in progress - changing it to country symbol from flag. Figma library complete, spec in progress, figma component is on hold (waiting for ben to respond); 2/7 0- figma library complete. FIGMA component - on hold until ben sorts out a few things - 26 Jan - working on figma library - will have this done by end of next week 1/18 - reviewed this morning; going to look at avatar as it will use most of the code from it; design perspective - pretty much done. Will need to work on FIGMA symbols and export as SVG as well as figma library.

pseys commented 1 year ago

As a team (Iconic) we're suggesting a change of name again, from Country Flag to Country Icon

2 Feb

joshwooding commented 1 year ago

Moving to blocked until Avatar is done

el-dav commented 1 year ago

April 5 - Tested LazyCountrySymbol which was working appropriately. Now Merged March 29 - basically done, final dev and design review needed. Issue with SVGs has been addressed. @rufcha to do final content review March 28 - couple of changes to svgs; checking content review to ensure all feedback is addresed March 27 - export country symbols once receive confirmation from design; a few more docu tweaks ; test of the lazy country symbol March 24 - changes implemented - is working; reviews required; content feedback being addressed (josh) March 23 - Josh addressing minor adjustments/testing ; rufaro sent over content feedback March 22 - addressing issue (David) pushing fix for this ; chat with josh re: lazy version of component and made progress - push PR out for this March 21 - fixed the issue Paul mentioned. Still waiting for design/content/dev feedback March 20 - exporting svgs - issues; paul will correct them (if designers have time, please help) March 17 - added tests, working on docs - ready for dev review and get docs/design reviews as well ; test out lazy country symbol - josh to help March 14 - working on country symbol script; documentation pending; potential extension of this work - smart component (nice to have) March 13 - working on implementation ; need to work on docs, working on naming of the diff country symbols (special characters etc) - sync up with paul March 10 - Moved to In Progress as dev has started; Updated name to 'Country Symbol' following discussion

joshwooding commented 1 year ago

Dev reviews needed for draft to have an overview. Testing needed for the smart component aspect

pseys commented 1 year ago
pseys commented 1 year ago