@sequencemedia/number-parser 0.1.193 → 0.1.195
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.mjs +15 -10
- package/package.json +3 -3
package/index.mjs
CHANGED
@@ -33,12 +33,6 @@ export default class NumberParser {
|
|
33
33
|
const chars = new RegExp(`[${CHARS.join('')}]`, 'g')
|
34
34
|
const charNumberMap = new Map(CHARS.map((d, n) => [d, n]))
|
35
35
|
|
36
|
-
function getNumberFor (char) {
|
37
|
-
return (
|
38
|
-
charNumberMap.get(char)
|
39
|
-
)
|
40
|
-
}
|
41
|
-
|
42
36
|
function fromString (string) {
|
43
37
|
return (
|
44
38
|
string.trim()
|
@@ -48,6 +42,12 @@ export default class NumberParser {
|
|
48
42
|
)
|
49
43
|
}
|
50
44
|
|
45
|
+
function getNumberFor (char) {
|
46
|
+
return (
|
47
|
+
charNumberMap.get(char)
|
48
|
+
)
|
49
|
+
}
|
50
|
+
|
51
51
|
function toNumber (string) {
|
52
52
|
return (
|
53
53
|
string
|
@@ -62,16 +62,21 @@ export default class NumberParser {
|
|
62
62
|
* @param {any} value
|
63
63
|
* @returns {number} A number or NaN
|
64
64
|
*/
|
65
|
-
function parse (value) {
|
66
|
-
return
|
65
|
+
this.parse = function parse (value) {
|
66
|
+
return (
|
67
|
+
toNumber(
|
68
|
+
fromString(
|
69
|
+
String(value)
|
70
|
+
)
|
71
|
+
)
|
72
|
+
)
|
67
73
|
}
|
68
|
-
|
69
|
-
this.parse = parse
|
70
74
|
}
|
71
75
|
}
|
72
76
|
|
73
77
|
export function parse (value, locale) {
|
74
78
|
const numberParser = new NumberParser(locale)
|
79
|
+
|
75
80
|
return (
|
76
81
|
numberParser.parse(value)
|
77
82
|
)
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@sequencemedia/number-parser",
|
3
|
-
"version": "0.1.
|
3
|
+
"version": "0.1.195",
|
4
4
|
"description": "Implements https://observablehq.com/@mbostock/localized-number-parsing",
|
5
5
|
"main": "./index.mjs",
|
6
6
|
"type": "module",
|
@@ -20,9 +20,9 @@
|
|
20
20
|
"prepare": "husky"
|
21
21
|
},
|
22
22
|
"devDependencies": {
|
23
|
-
"@babel/core": "^7.26.
|
23
|
+
"@babel/core": "^7.26.10",
|
24
24
|
"@babel/preset-env": "^7.26.9",
|
25
|
-
"@sequencemedia/eslint-config-standard": "^0.2.
|
25
|
+
"@sequencemedia/eslint-config-standard": "^0.2.43",
|
26
26
|
"core-js": "^3.41.0",
|
27
27
|
"eslint": "^9.22.0",
|
28
28
|
"globals": "^16.0.0",
|