diff options
| author | secondl1ght <[email protected]> | 2022-08-01 22:04:05 -0600 |
|---|---|---|
| committer | secondl1ght <[email protected]> | 2022-08-01 22:04:05 -0600 |
| commit | c3fa85ea0287b2351e26f55064460e259dbc522d (patch) | |
| tree | 0f90bc79dbd65f3a03e232204d19b505bcf51c1c /src/lib | |
| parent | 0f7e123a1a7d5b8f893694e9aae651c4e7824d71 (diff) | |
| parent | 1601b32772a5bde59da60f333f110c0dfc52b019 (diff) | |
| download | coinos-ui-c3fa85ea0287b2351e26f55064460e259dbc522d.tar.gz coinos-ui-c3fa85ea0287b2351e26f55064460e259dbc522d.zip | |
Merge branch 'master' of github.com:coinos/coinos-ui-v2
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/utils.js | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/src/lib/utils.js b/src/lib/utils.js index 7831c519..b80a548b 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -9,7 +9,15 @@ const base = browser ? '' : import.meta.env.VITE_COINOS_URL; export const get = (url) => fetch(base + url, { headers: { accept: 'application/json' } - }).then((r) => r.json()); + }) + .then((r) => r.text()) + .then((body) => { + try { + return JSON.parse(body); + } catch (e) { + throw Error(body); + } + }); export const post = (url, body) => fetch(base + url, { @@ -21,3 +29,12 @@ export const post = (url, body) => export const copy = (text) => { navigator.clipboard.writeText(text); }; + +export function reverseFormat(val, locale) { + let parts = new Intl.NumberFormat(locale).formatToParts(1111.1); + let group = parts.find((part) => part.type === 'group').value; + let decimal = parts.find((part) => part.type === 'decimal').value; + let reversedVal = val.replace(new RegExp('\\' + group, 'g'), ''); + reversedVal = reversedVal.replace(new RegExp('\\' + decimal, 'g'), '.'); + return Number.isNaN(reversedVal) ? 0 : +reversedVal; +} |
