adobe / spectrum-web-components

Spectrum Web Components
https://opensource.adobe.com/spectrum-web-components/
Apache License 2.0
1.21k stars 192 forks source link

fix(number-field): updated number field to respect all locales #4508

Closed blunteshwar closed 1 month ago

blunteshwar commented 1 month ago

Description

Number-field was not respecting other locales than 'en'.

Related issue(s)

Motivation and context

The function convertValueToNumber was not receiving correct input when locale was anything other than 'en'. In function stepBy earlier we were doing this.inputElement.value = value.toString(); which was not respecting locales. Thus to respect locales we are now formating the value like this this.inputElement.value = this.numberFormatter.format(value);

How has this been tested?

I wrote some tests in Number-field.test.ts Test here

Screenshots (if appropriate)

Types of changes

Checklist

Best practices

This repository uses conventional commit syntax for each commit message; note that the GitHub UI does not use this by default so be cautious when accepting suggested changes. Avoid the "Update branch" button on the pull request and opt instead for rebasing your branch against main.

github-actions[bot] commented 1 month ago

Branch preview

Visual regression test results When a visual regression test fails (or has previously failed while working on this branch), its results can be found in the following URLs: - [High Contrast Mode | Medium | LTR](https://284b76931320dd3e7e8ac7923c6a50b2--spectrum-web-components.netlify.app/review/) - [Spectrum | Lightest | Medium | LTR](https://30d118537732217b65e0b028fb7b3d46--spectrum-web-components.netlify.app/review/) - [Spectrum | Lightest | Medium | RTL](https://ed6b04897af90fa866604698a25c2211--spectrum-web-components.netlify.app/review/) - [Spectrum | Lightest | Large | LTR](https://6215523ac56b0d67457583b8eb52047f--spectrum-web-components.netlify.app/review/) - [Spectrum | Lightest | Large | RTL](https://5ced9a8682d7f07bc05cededd77ce3fd--spectrum-web-components.netlify.app/review/) - [Spectrum | Light | Medium | LTR](https://d5044b5f7a03b6e304aa4f042c86b2bc--spectrum-web-components.netlify.app/review/) - [Spectrum | Light | Medium | RTL](https://53c8c7b882ce1f045ca8f4c0043435cd--spectrum-web-components.netlify.app/review/) - [Spectrum | Light | Large | LTR](https://8c7fe17fca4b32380903ac2f9032c7e6--spectrum-web-components.netlify.app/review/) - [Spectrum | Light | Large | RTL](https://431924f025dd13aa825f6c127c7173ea--spectrum-web-components.netlify.app/review/) - [Spectrum | Dark | Medium | LTR](https://1326c39598f25ac838c92a23c171cfc6--spectrum-web-components.netlify.app/review/) - [Spectrum | Dark | Medium | RTL](https://619eebf52cb7060113f10e878b2a9512--spectrum-web-components.netlify.app/review/) - [Spectrum | Dark | Large | LTR](https://b1944cc7882835b13d53a0261913e752--spectrum-web-components.netlify.app/review/) - [Spectrum | Dark | Large | RTL](https://a9a24695ada63b7ac494e9a4d2273189--spectrum-web-components.netlify.app/review/) - [Spectrum | Darkest | Medium | LTR](https://6fde8d735537d012f065901b957c5611--spectrum-web-components.netlify.app/review/) - [Spectrum | Darkest | Medium | RTL](https://7bb6eaf8615175f4564ff408b3e95e96--spectrum-web-components.netlify.app/review/) - [Spectrum | Darkest | Large | LTR](https://de9296352e3689f8a91487adc900fa4d--spectrum-web-components.netlify.app/review/) - [Spectrum | Darkest | Large | RTL](https://7beda0fb2f63702ff7f322b58025bb97--spectrum-web-components.netlify.app/review/) - [Express | Lightest | Medium | LTR](https://fa6ddf3008180911a3be5e929227736b--spectrum-web-components.netlify.app/review/) - [Express | Lightest | Medium | RTL](https://ab0b5b4e89c518025d026e8070947df6--spectrum-web-components.netlify.app/review/) - [Express | Lightest | Large | LTR](https://2e1c24431a54b680eebedc646c00b210--spectrum-web-components.netlify.app/review/) - [Express | Lightest | Large | RTL](https://d21e1d0194a33610f094949df2526872--spectrum-web-components.netlify.app/review/) - [Express | Light | Medium | LTR](https://ee322398f5a11ff79a65a0916a9c2566--spectrum-web-components.netlify.app/review/) - [Express | Light | Medium | RTL](https://5f1ceb8bbd599c30d6998a0c23e8dc75--spectrum-web-components.netlify.app/review/) - [Express | Light | Large | LTR](https://f40a98c0aef6c0310f741db204b1d1c6--spectrum-web-components.netlify.app/review/) - [Express | Light | Large | RTL](https://34ba9c0e006b0c1ad977b1be915c93dd--spectrum-web-components.netlify.app/review/) - [Express | Dark | Medium | LTR](https://8bf6143bf336f95dc7108bf8bddbce17--spectrum-web-components.netlify.app/review/) - [Express | Dark | Medium | RTL](https://5c3b932c70123ef4c2a2351add1a47e4--spectrum-web-components.netlify.app/review/) - [Express | Dark | Large | LTR](https://1b1e0b74ab132cb272a31ba466bc9585--spectrum-web-components.netlify.app/review/) - [Express | Dark | Large | RTL](https://02518b9fc9ed01ccba34372c2edeaa6b--spectrum-web-components.netlify.app/review/) - [Express | Darkest | Medium | LTR](https://b92e15bce56996ed566cbf580a4c8546--spectrum-web-components.netlify.app/review/) - [Express | Darkest | Medium | RTL](https://8447d852d5132fc92252a63482792f8e--spectrum-web-components.netlify.app/review/) - [Express | Darkest | Large | LTR](https://347dfb5ad34862b66fc309f23fa4015d--spectrum-web-components.netlify.app/review/) - [Express | Darkest | Large | RTL](https://353815bebbe4354e748f720e5ec6d54b--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Light | Medium | LTR](https://6edf1c21dc2ef63a31a3b8ee6acb84bd--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Light | Medium | RTL](https://d3503bfee8bd52ddf9db4143cca10e91--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Light | Large | LTR](https://dd7939efc7fa65157629784727cd80fc--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Light | Large | RTL](https://1f65f1552d96489272c687cd127fd352--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Dark | Medium | LTR](https://d8834a8fdbd55e1516db73161b114955--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Dark | Medium | RTL](https://65fb72c00031c736b3d2ac71256aab02--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Dark | Large | LTR](https://3561038fb690c563960e51ade95d3efe--spectrum-web-components.netlify.app/review/) - [Spectrum-two | Dark | Large | RTL](https://9d8478d64a4a921a98c67a26860ef932--spectrum-web-components.netlify.app/review/)
github-actions[bot] commented 1 month ago

Lighthouse scores

Category Latest (report) Main (report) Branch (report)
Performance 0.99 0.99 0.99
Accessibility 1 1 1
Best Practices 1 1 1
SEO 1 0.92 0.92
PWA 1 1 1
What is this? [Lighthouse](https://github.com/GoogleChrome/lighthouse) scores comparing the documentation site built from the PR ("Branch") to that of the production documentation site ("Latest") and the build currently on main ("Main"). Higher scores are better, but *note that the SEO scores on Netlify URLs are artifically constrained to 0.92.*

Transfer Size

Category Latest Main Branch
Total 225.537 kB 210.607 kB 210.275 kB 🏆
Scripts 54.654 kB 48.292 kB 47.999 kB 🏆
Stylesheet 35.059 kB 30.403 kB 30.397 kB 🏆
Document 5.998 kB 5.271 kB 🏆 5.273 kB
Font 126.871 kB 126.641 kB 126.606 kB 🏆

Request Count

Category Latest Main Branch
Total 48 45 45
Scripts 37 37 37
Stylesheet 5 5 5
Document 1 1 1
Font 2 2 2
github-actions[bot] commented 1 month ago

Tachometer results

Chrome ## number-field [_permalink_](#user-content-number-field) ### basic-test | Version | Bytes | Avg Time | vs remote | vs branch | |---|---|---|---|---| | npm latest | 523 kB | 65.78ms - 67.92ms | - | faster ✔
9% - 12%
6.59ms - 9.29ms | | branch | 511 kB | 73.96ms - 75.61ms | slower ❌
10% - 14%
6.59ms - 9.29ms | - | ## slider [_permalink_](#user-content-slider) ### test-basic | Version | Bytes | Avg Time | vs remote | vs branch | |---|---|---|---|---| | npm latest | 480 kB | 74.70ms - 76.31ms | - | faster ✔
2% - 5%
1.23ms - 3.77ms | | branch | 467 kB | 77.02ms - 78.98ms | slower ❌
2% - 5%
1.23ms - 3.77ms | - |
Firefox ## number-field [_permalink_](#user-content-number-field) ### basic-test | Version | Bytes | Avg Time | vs remote | vs branch | |---|---|---|---|---| | npm latest | 523 kB | 149.05ms - 154.95ms | - | faster ✔
6% - 11%
9.54ms - 17.74ms | | branch | 511 kB | 162.80ms - 168.48ms | slower ❌
6% - 12%
9.54ms - 17.74ms | - | ## slider [_permalink_](#user-content-slider) ### test-basic | Version | Bytes | Avg Time | vs remote | vs branch | |---|---|---|---|---| | npm latest | 480 kB | 163.94ms - 170.50ms | - | faster ✔
2% - 8%
3.02ms - 14.22ms | | branch | 467 kB | 171.29ms - 180.39ms | slower ❌
2% - 9%
3.02ms - 14.22ms | - |