From 7e181cbd3caac26fa265dbb26a14737fde1e2724 Mon Sep 17 00:00:00 2001 From: DevAndromeda <46562212+DevAndromeda@users.noreply.github.com> Date: Mon, 12 Sep 2022 17:28:55 +0545 Subject: [PATCH] use intl formatter if available --- package.json | 4 ++-- plugins/abbrev.js | 29 +++++++++++++++++------------ 2 files changed, 19 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 9deb62de..4ad71745 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "canvacord", - "version": "5.4.6", + "version": "5.4.7", "description": "Powerful image manipulation package for beginners.", "main": "index.js", "types": "typings/index.d.ts", @@ -53,7 +53,7 @@ }, "homepage": "https://canvacord.js.org", "dependencies": { - "@napi-rs/canvas": "^0.1.26", + "@napi-rs/canvas": "^0.1.29", "@skyra/gifenc": "^1.0.0", "chalk": "^5.0.1", "moment": "^2.29.4", diff --git a/plugins/abbrev.js b/plugins/abbrev.js index e7460983..4a7221c4 100644 --- a/plugins/abbrev.js +++ b/plugins/abbrev.js @@ -1,19 +1,24 @@ module.exports = num => { if (!num || isNaN(num)) return "0"; if (typeof num === "string") num = parseInt(num); - let decPlaces = Math.pow(10, 1); - var abbrev = ["K", "M", "B", "T"]; - for (var i = abbrev.length - 1; i >= 0; i--) { - var size = Math.pow(10, (i + 1) * 3); - if (size <= num) { - num = Math.round((num * decPlaces) / size) / decPlaces; - if (num == 1000 && i < abbrev.length - 1) { - num = 1; - i++; + + if (typeof Intl !== "undefined") { + return new Intl.NumberFormat("en", { notation: "compact" }).format(num); + } else { + let decPlaces = Math.pow(10, 1); + var abbrev = ["K", "M", "B", "T"]; + for (var i = abbrev.length - 1; i >= 0; i--) { + var size = Math.pow(10, (i + 1) * 3); + if (size <= num) { + num = Math.round((num * decPlaces) / size) / decPlaces; + if (num == 1000 && i < abbrev.length - 1) { + num = 1; + i++; + } + num += abbrev[i]; + break; } - num += abbrev[i]; - break; } + return `${num}`; } - return `${num}`; }; \ No newline at end of file