nhb-toolbox 4.2.0 → 4.3.2
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/dist/cjs/date/Chronos.js +27 -1
- package/dist/cjs/number/constants.js +3 -6
- package/dist/cjs/number/convert.js +5 -1
- package/dist/dts/date/Chronos.d.ts +10 -0
- package/dist/dts/date/Chronos.d.ts.map +1 -1
- package/dist/dts/number/constants.d.ts +2 -2
- package/dist/dts/number/constants.d.ts.map +1 -1
- package/dist/dts/number/convert.d.ts +2 -1
- package/dist/dts/number/convert.d.ts.map +1 -1
- package/dist/esm/date/Chronos.js +27 -1
- package/dist/esm/number/constants.js +3 -6
- package/dist/esm/number/convert.js +5 -1
- package/package.json +2 -2
package/dist/cjs/date/Chronos.js
CHANGED
|
@@ -276,6 +276,10 @@ class Chronos {
|
|
|
276
276
|
get timestamp() {
|
|
277
277
|
return this.#date.getTime();
|
|
278
278
|
}
|
|
279
|
+
/** * Gets the last date (number) of the current month `(28, 29, 30 or 31)`. */
|
|
280
|
+
get lastDateOfMonth() {
|
|
281
|
+
return this.lastDayOfMonth().#date.getDate();
|
|
282
|
+
}
|
|
279
283
|
/** @instance Returns a debug-friendly string for `console.log` or `util.inspect`. */
|
|
280
284
|
inspect() {
|
|
281
285
|
return `[Chronos ${this.toLocalISOString()}]`;
|
|
@@ -694,6 +698,14 @@ class Chronos {
|
|
|
694
698
|
const jul = new Date(year, 6, 1).getTimezoneOffset();
|
|
695
699
|
return this.#date.getTimezoneOffset() < Math.max(jan, jul);
|
|
696
700
|
}
|
|
701
|
+
/** @instance Checks if current day is the first day of the current month. */
|
|
702
|
+
isFirstDayOfMonth() {
|
|
703
|
+
return this.isSame(this.firstDayOfMonth(), 'day');
|
|
704
|
+
}
|
|
705
|
+
/** @instance Checks if current day is the last day of the current month. */
|
|
706
|
+
isLastDayOfMonth() {
|
|
707
|
+
return this.isSame(this.lastDayOfMonth(), 'day');
|
|
708
|
+
}
|
|
697
709
|
/**
|
|
698
710
|
* @instance Returns full time difference from now (or a specified time) down to a given level.
|
|
699
711
|
*
|
|
@@ -938,6 +950,20 @@ class Chronos {
|
|
|
938
950
|
getRelativeMilliSecond(time) {
|
|
939
951
|
return this.#date.getTime() - this.#toNewDate(time).getTime();
|
|
940
952
|
}
|
|
953
|
+
/** @instance Returns a new Chronos instance set to the first day of the current month. */
|
|
954
|
+
firstDayOfMonth() {
|
|
955
|
+
const year = this.#date.getFullYear();
|
|
956
|
+
const month = this.#date.getMonth();
|
|
957
|
+
const lastDate = new Date(year, month, 1);
|
|
958
|
+
return new Chronos(lastDate).#withOrigin('firstDayOfMonth');
|
|
959
|
+
}
|
|
960
|
+
/** @instance Returns a new Chronos instance set to the last day of the current month. */
|
|
961
|
+
lastDayOfMonth() {
|
|
962
|
+
const year = this.#date.getFullYear();
|
|
963
|
+
const month = this.#date.getMonth() + 1;
|
|
964
|
+
const lastDate = new Date(year, month, 0);
|
|
965
|
+
return new Chronos(lastDate).#withOrigin('lastDayOfMonth');
|
|
966
|
+
}
|
|
941
967
|
/**
|
|
942
968
|
* @instance Compares the stored date with now, returning the difference in the specified unit.
|
|
943
969
|
*
|
|
@@ -1479,7 +1505,7 @@ class Chronos {
|
|
|
1479
1505
|
const daysOffset = (roundedWeek - 1) * 7;
|
|
1480
1506
|
startOfYear.setDate(startOfYear.getDate() + daysOffset);
|
|
1481
1507
|
startOfYear.setHours(0, 0, 0, 0);
|
|
1482
|
-
return new Chronos(startOfYear);
|
|
1508
|
+
return new Chronos(startOfYear).#withOrigin('round');
|
|
1483
1509
|
}
|
|
1484
1510
|
case 'month': {
|
|
1485
1511
|
const currentMonth = date.getMonth();
|
|
@@ -14,7 +14,7 @@ exports.ones = [
|
|
|
14
14
|
'nine',
|
|
15
15
|
];
|
|
16
16
|
exports.teens = [
|
|
17
|
-
'',
|
|
17
|
+
'ten',
|
|
18
18
|
'eleven',
|
|
19
19
|
'twelve',
|
|
20
20
|
'thirteen',
|
|
@@ -45,11 +45,8 @@ exports.thousands = [
|
|
|
45
45
|
'trillion',
|
|
46
46
|
'quadrillion',
|
|
47
47
|
'quintillion',
|
|
48
|
-
|
|
49
|
-
'
|
|
50
|
-
'octillion',
|
|
51
|
-
'nonillion',
|
|
52
|
-
'decillion',
|
|
48
|
+
// ! Needs to modify later, below supports up to 10 sextillion! It's a bug!
|
|
49
|
+
// 'sextillion',
|
|
53
50
|
];
|
|
54
51
|
/** List of ISO 4217 currency codes */
|
|
55
52
|
exports.CURRENCY_CODES = [
|
|
@@ -5,7 +5,8 @@ exports.numberToWords = numberToWords;
|
|
|
5
5
|
const constants_1 = require("./constants");
|
|
6
6
|
const helpers_1 = require("./helpers");
|
|
7
7
|
/**
|
|
8
|
-
* * Converts a number to words
|
|
8
|
+
* * Converts a number to words.
|
|
9
|
+
* @Warning ***Supports numeric values up to `10e19` or `10^20` (one hundred quintillion).***
|
|
9
10
|
* @param number - The number to convert into words.
|
|
10
11
|
* @returns The number converted in words.
|
|
11
12
|
*/
|
|
@@ -18,6 +19,9 @@ function numberToWords(num) {
|
|
|
18
19
|
let i = 0;
|
|
19
20
|
let result = '';
|
|
20
21
|
while (number > 0) {
|
|
22
|
+
if (i >= constants_1.thousands.length) {
|
|
23
|
+
return `Number exceeds supported range (max is 10e${constants_1.thousands.length * 3 - 2})`;
|
|
24
|
+
}
|
|
21
25
|
if (number % 1000 !== 0) {
|
|
22
26
|
const isLastGroup = i === 0 && number % 100 < 100;
|
|
23
27
|
const prefix = (0, helpers_1._convertLessThanThousand)(number % 1000, isLastGroup);
|
|
@@ -126,6 +126,8 @@ export declare class Chronos {
|
|
|
126
126
|
get unix(): number;
|
|
127
127
|
/** Gets the time value in milliseconds since midnight, January 1, 1970 UTC. */
|
|
128
128
|
get timestamp(): number;
|
|
129
|
+
/** * Gets the last date (number) of the current month `(28, 29, 30 or 31)`. */
|
|
130
|
+
get lastDateOfMonth(): 28 | 29 | 30 | 31;
|
|
129
131
|
/** @instance Returns a debug-friendly string for `console.log` or `util.inspect`. */
|
|
130
132
|
inspect(): string;
|
|
131
133
|
/** @instance Clones and returns a new Chronos instance with the same date. */
|
|
@@ -357,6 +359,10 @@ export declare class Chronos {
|
|
|
357
359
|
* @returns Whether the date is in DST.
|
|
358
360
|
*/
|
|
359
361
|
isDST(): boolean;
|
|
362
|
+
/** @instance Checks if current day is the first day of the current month. */
|
|
363
|
+
isFirstDayOfMonth(): boolean;
|
|
364
|
+
/** @instance Checks if current day is the last day of the current month. */
|
|
365
|
+
isLastDayOfMonth(): boolean;
|
|
360
366
|
/**
|
|
361
367
|
* @instance Returns full time difference from now (or a specified time) down to a given level.
|
|
362
368
|
*
|
|
@@ -453,6 +459,10 @@ export declare class Chronos {
|
|
|
453
459
|
* @returns The difference in number, negative is `Chronos` time is a past time else positive.
|
|
454
460
|
*/
|
|
455
461
|
getRelativeMilliSecond(time?: ChronosInput): number;
|
|
462
|
+
/** @instance Returns a new Chronos instance set to the first day of the current month. */
|
|
463
|
+
firstDayOfMonth(): Chronos;
|
|
464
|
+
/** @instance Returns a new Chronos instance set to the last day of the current month. */
|
|
465
|
+
lastDayOfMonth(): Chronos;
|
|
456
466
|
/**
|
|
457
467
|
* @instance Compares the stored date with now, returning the difference in the specified unit.
|
|
458
468
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Chronos.d.ts","sourceRoot":"","sources":["../../../src/date/Chronos.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Chronos.d.ts","sourceRoot":"","sources":["../../../src/date/Chronos.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export declare const ones: readonly ["", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"];
|
|
2
|
-
export declare const teens: readonly ["", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"];
|
|
2
|
+
export declare const teens: readonly ["ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen"];
|
|
3
3
|
export declare const tens: readonly ["", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety"];
|
|
4
|
-
export declare const thousands: readonly ["", "thousand", "million", "billion", "trillion", "quadrillion", "quintillion"
|
|
4
|
+
export declare const thousands: readonly ["", "thousand", "million", "billion", "trillion", "quadrillion", "quintillion"];
|
|
5
5
|
/** List of ISO 4217 currency codes */
|
|
6
6
|
export declare const CURRENCY_CODES: readonly ["AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BRL", "BSD", "BTN", "BWP", "BYN", "BZD", "CAD", "CDF", "CHF", "CLP", "CNY", "COP", "CRC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "FOK", "GBP", "GEL", "GGP", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "IMP", "INR", "IQD", "IRR", "ISK", "JEP", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KID", "KMF", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLE", "SOS", "SRD", "SSP", "STN", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TVD", "TWD", "TZS", "UAH", "UGX", "USD", "UYU", "UZS", "VES", "VND", "VUV", "WST", "XAF", "XCD", "XOF", "XPF", "YER", "ZAR", "ZMW", "ZWL"];
|
|
7
7
|
/** List of all supported BCP 47 locales */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/number/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,uFAWP,CAAC;AAEX,eAAO,MAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/number/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,uFAWP,CAAC;AAEX,eAAO,MAAM,KAAK,yHAWR,CAAC;AAEX,eAAO,MAAM,IAAI,oGAWP,CAAC;AAEX,eAAO,MAAM,SAAS,2FAUZ,CAAC;AAEX,sCAAsC;AACtC,eAAO,MAAM,cAAc,2mCAiKjB,CAAC;AAEX,2CAA2C;AAC3C,eAAO,MAAM,YAAY,mnCA8Hf,CAAC;AAEX,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiKnB,CAAC;AAEX,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,oOAgCvB,CAAC;AAEX,mDAAmD;AACnD,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDR,CAAC;AAEX,+CAA+C;AAC/C,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;CAuBrB,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { Numeric } from '../types';
|
|
2
2
|
/**
|
|
3
|
-
* * Converts a number to words
|
|
3
|
+
* * Converts a number to words.
|
|
4
|
+
* @Warning ***Supports numeric values up to `10e19` or `10^20` (one hundred quintillion).***
|
|
4
5
|
* @param number - The number to convert into words.
|
|
5
6
|
* @returns The number converted in words.
|
|
6
7
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../src/number/convert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAIxC
|
|
1
|
+
{"version":3,"file":"convert.d.ts","sourceRoot":"","sources":["../../../src/number/convert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAIxC;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAgClD;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,QAAS,OAAO,KAAG,MA8BrD,CAAC"}
|
package/dist/esm/date/Chronos.js
CHANGED
|
@@ -273,6 +273,10 @@ export class Chronos {
|
|
|
273
273
|
get timestamp() {
|
|
274
274
|
return this.#date.getTime();
|
|
275
275
|
}
|
|
276
|
+
/** * Gets the last date (number) of the current month `(28, 29, 30 or 31)`. */
|
|
277
|
+
get lastDateOfMonth() {
|
|
278
|
+
return this.lastDayOfMonth().#date.getDate();
|
|
279
|
+
}
|
|
276
280
|
/** @instance Returns a debug-friendly string for `console.log` or `util.inspect`. */
|
|
277
281
|
inspect() {
|
|
278
282
|
return `[Chronos ${this.toLocalISOString()}]`;
|
|
@@ -691,6 +695,14 @@ export class Chronos {
|
|
|
691
695
|
const jul = new Date(year, 6, 1).getTimezoneOffset();
|
|
692
696
|
return this.#date.getTimezoneOffset() < Math.max(jan, jul);
|
|
693
697
|
}
|
|
698
|
+
/** @instance Checks if current day is the first day of the current month. */
|
|
699
|
+
isFirstDayOfMonth() {
|
|
700
|
+
return this.isSame(this.firstDayOfMonth(), 'day');
|
|
701
|
+
}
|
|
702
|
+
/** @instance Checks if current day is the last day of the current month. */
|
|
703
|
+
isLastDayOfMonth() {
|
|
704
|
+
return this.isSame(this.lastDayOfMonth(), 'day');
|
|
705
|
+
}
|
|
694
706
|
/**
|
|
695
707
|
* @instance Returns full time difference from now (or a specified time) down to a given level.
|
|
696
708
|
*
|
|
@@ -935,6 +947,20 @@ export class Chronos {
|
|
|
935
947
|
getRelativeMilliSecond(time) {
|
|
936
948
|
return this.#date.getTime() - this.#toNewDate(time).getTime();
|
|
937
949
|
}
|
|
950
|
+
/** @instance Returns a new Chronos instance set to the first day of the current month. */
|
|
951
|
+
firstDayOfMonth() {
|
|
952
|
+
const year = this.#date.getFullYear();
|
|
953
|
+
const month = this.#date.getMonth();
|
|
954
|
+
const lastDate = new Date(year, month, 1);
|
|
955
|
+
return new Chronos(lastDate).#withOrigin('firstDayOfMonth');
|
|
956
|
+
}
|
|
957
|
+
/** @instance Returns a new Chronos instance set to the last day of the current month. */
|
|
958
|
+
lastDayOfMonth() {
|
|
959
|
+
const year = this.#date.getFullYear();
|
|
960
|
+
const month = this.#date.getMonth() + 1;
|
|
961
|
+
const lastDate = new Date(year, month, 0);
|
|
962
|
+
return new Chronos(lastDate).#withOrigin('lastDayOfMonth');
|
|
963
|
+
}
|
|
938
964
|
/**
|
|
939
965
|
* @instance Compares the stored date with now, returning the difference in the specified unit.
|
|
940
966
|
*
|
|
@@ -1476,7 +1502,7 @@ export class Chronos {
|
|
|
1476
1502
|
const daysOffset = (roundedWeek - 1) * 7;
|
|
1477
1503
|
startOfYear.setDate(startOfYear.getDate() + daysOffset);
|
|
1478
1504
|
startOfYear.setHours(0, 0, 0, 0);
|
|
1479
|
-
return new Chronos(startOfYear);
|
|
1505
|
+
return new Chronos(startOfYear).#withOrigin('round');
|
|
1480
1506
|
}
|
|
1481
1507
|
case 'month': {
|
|
1482
1508
|
const currentMonth = date.getMonth();
|
|
@@ -11,7 +11,7 @@ export const ones = [
|
|
|
11
11
|
'nine',
|
|
12
12
|
];
|
|
13
13
|
export const teens = [
|
|
14
|
-
'',
|
|
14
|
+
'ten',
|
|
15
15
|
'eleven',
|
|
16
16
|
'twelve',
|
|
17
17
|
'thirteen',
|
|
@@ -42,11 +42,8 @@ export const thousands = [
|
|
|
42
42
|
'trillion',
|
|
43
43
|
'quadrillion',
|
|
44
44
|
'quintillion',
|
|
45
|
-
|
|
46
|
-
'
|
|
47
|
-
'octillion',
|
|
48
|
-
'nonillion',
|
|
49
|
-
'decillion',
|
|
45
|
+
// ! Needs to modify later, below supports up to 10 sextillion! It's a bug!
|
|
46
|
+
// 'sextillion',
|
|
50
47
|
];
|
|
51
48
|
/** List of ISO 4217 currency codes */
|
|
52
49
|
export const CURRENCY_CODES = [
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { thousands } from './constants';
|
|
2
2
|
import { _convertLessThanThousand } from './helpers';
|
|
3
3
|
/**
|
|
4
|
-
* * Converts a number to words
|
|
4
|
+
* * Converts a number to words.
|
|
5
|
+
* @Warning ***Supports numeric values up to `10e19` or `10^20` (one hundred quintillion).***
|
|
5
6
|
* @param number - The number to convert into words.
|
|
6
7
|
* @returns The number converted in words.
|
|
7
8
|
*/
|
|
@@ -14,6 +15,9 @@ export function numberToWords(num) {
|
|
|
14
15
|
let i = 0;
|
|
15
16
|
let result = '';
|
|
16
17
|
while (number > 0) {
|
|
18
|
+
if (i >= thousands.length) {
|
|
19
|
+
return `Number exceeds supported range (max is 10e${thousands.length * 3 - 2})`;
|
|
20
|
+
}
|
|
17
21
|
if (number % 1000 !== 0) {
|
|
18
22
|
const isLastGroup = i === 0 && number % 100 < 100;
|
|
19
23
|
const prefix = _convertLessThanThousand(number % 1000, isLastGroup);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nhb-toolbox",
|
|
3
|
-
"version": "4.2
|
|
3
|
+
"version": "4.3.2",
|
|
4
4
|
"description": "A versatile collection of smart, efficient, and reusable utility functions and classes for everyday development needs.",
|
|
5
5
|
"main": "dist/cjs/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"name": "Nazmul Hassan",
|
|
53
53
|
"email": "nazmulnhb@gmail.com"
|
|
54
54
|
},
|
|
55
|
-
"license": "
|
|
55
|
+
"license": "Apache-2.0",
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@eslint/js": "^9.18.0",
|
|
58
58
|
"@types/jest": "^29.5.14",
|