diff options
| author | Adam Soltys <[email protected]> | 2022-08-01 20:50:16 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2022-08-01 20:50:16 -0700 |
| commit | 5428fdf82a4260fa4f5e0bcdb722d6716740d8bf (patch) | |
| tree | 38647682801cd7c7dd5653340cc04ad8b5d4f6f9 /src/lib/utils.js | |
| parent | e65a8cfbf13a1ddf1a9aa7bde5438fc2f4b70b51 (diff) | |
| download | coinos-ui-5428fdf82a4260fa4f5e0bcdb722d6716740d8bf.tar.gz coinos-ui-5428fdf82a4260fa4f5e0bcdb722d6716740d8bf.zip | |
update invoice when tip changes
Diffstat (limited to 'src/lib/utils.js')
| -rw-r--r-- | src/lib/utils.js | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/src/lib/utils.js b/src/lib/utils.js index 38f2a010..b80a548b 100644 --- a/src/lib/utils.js +++ b/src/lib/utils.js @@ -9,13 +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.text()).then((body) => { - try { - return JSON.parse(body); - } catch(e) { - throw Error(body); - } - }) + }) + .then((r) => r.text()) + .then((body) => { + try { + return JSON.parse(body); + } catch (e) { + throw Error(body); + } + }); export const post = (url, body) => fetch(base + url, { @@ -27,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; +} |
