Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Small fixes #142

Merged
merged 1 commit into from
May 10, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Automatically convert to native line endings
# Automatically convert to native line endings, in case people don't have core.autocrlf set
* text=auto

# Force Unix (LF) line endings
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2018-2023 Wael TELLAT
Copyright (c) 2018-2024 Wael TELLAT

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
10 changes: 8 additions & 2 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
// eslint.config.js
import js from '@eslint/js';
import stylisticJs from '@stylistic/eslint-plugin-js';
import ava from 'eslint-plugin-ava';
Expand Down Expand Up @@ -56,10 +55,17 @@ export default [
'@stylistic/js/quotes': ['error', 'single'],
// Enforce use of semicolon to end lines
'@stylistic/js/semi': 'error',
// TODO [+eslint-plugin-import] Re-enable plugin after ESLint v9 support has been worked out
//
// -- JSDOC RULES --
//
// Reports invalid alignment of JSDoc block lines
'jsdoc/check-line-alignment': 'error',
// Reports on JSDoc texts that serve only to restate their attached name.
'jsdoc/informative-docs': 'error',
//
// -- IMPORT RULES --
//
// TODO [+eslint-plugin-import] Re-enable plugin after ESLint v9 support has been worked out
// Report modules without exports, or exports without matching import in another module
/*'import/no-unused-modules': 'error',
// Report potentially ambiguous parse goal (script vs. module)
Expand Down
2 changes: 1 addition & 1 deletion lib/classes/abstract-language.js
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,8 @@ export default class AbstractLanguage {
/**
* Convert a number to cardinal form.
* @param {number|string|bigint} value Number to be convert.
* @throws {Error} Value must be a valid number.
* @returns {string} Value in written format.
* @throws {Error} Value must be a valid number.
*/
floatToCardinal(value) {
// Validate user input value and convert to string (excluding BigInt)
Expand Down
8 changes: 4 additions & 4 deletions lib/i18n/ar.js
Original file line number Diff line number Diff line change
Expand Up @@ -83,10 +83,10 @@ export class Arabic extends AbstractLanguage {

/**
* Processes the Arabic group number and returns the corresponding Arabic representation.
* @param {number} groupNumber - The number to process. From 1 to 999.
* @param {number} groupLevel - The level of the group.
* Example: 12345678 is processed in blocks: '678' (group 0), '345' (group 1), '12' (group 2)
* @param {number} groupNumber - The number to process. (Range: 1-999)
* @param {number} groupLevel - Group level to process. (See example)
* @returns {string} The Arabic representation of the group number.
* @example 12345678 is processed in blocks of 3: '678' (group 0), '345' (group 1), '12' (group 2).
*/
processArabicGroup(groupNumber, groupLevel) {
let tens = groupNumber % 100;
Expand Down Expand Up @@ -201,8 +201,8 @@ export class Arabic extends AbstractLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new Arabic(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/az.js
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,8 @@ export class N2WordsAZ extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsAZ(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/cz.js
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ export class N2WordsCZ extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsCZ(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/de.js
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,8 @@ export class N2WordsDE extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsDE(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/dk.js
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,8 @@ export class N2WordsDK extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsDK(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/en.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,8 @@ export class English extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new English(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/es.js
Original file line number Diff line number Diff line change
Expand Up @@ -102,8 +102,8 @@ export class N2WordsES extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsES(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/fa.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ export class N2WordsFA extends AbstractLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsFA(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/fr-BE.js
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,8 @@ export class N2WordsFRBE extends N2WordsFR {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsFRBE(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/fr.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,8 @@ export class N2WordsFR extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsFR(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/he.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,8 @@ export class N2WordsHE extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsHE(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/hr.js
Original file line number Diff line number Diff line change
Expand Up @@ -121,8 +121,8 @@ export class N2WordsHR extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsHR(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/hu.js
Original file line number Diff line number Diff line change
Expand Up @@ -127,8 +127,8 @@ export class N2WordsHU extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsHU(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/id.js
Original file line number Diff line number Diff line change
Expand Up @@ -148,8 +148,8 @@ export class N2WordsID extends AbstractLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsID(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/it.js
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ export class N2WordsIT extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsIT(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/ko.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ export class N2WordsKO extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsKO(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/lt.js
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,8 @@ export class N2WordsLT extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsLT(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/lv.js
Original file line number Diff line number Diff line change
Expand Up @@ -112,8 +112,8 @@ export class N2WordsLV extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsLV(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/nl.js
Original file line number Diff line number Diff line change
Expand Up @@ -117,8 +117,8 @@ export class N2WordsNL extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsNL(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/no.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,8 +69,8 @@ export class N2WordsNO extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsNO(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/pl.js
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,8 @@ export class N2WordsPL extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsPL(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/pt.js
Original file line number Diff line number Diff line change
Expand Up @@ -110,8 +110,8 @@ export class N2WordsPT extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsPT(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/ru.js
Original file line number Diff line number Diff line change
Expand Up @@ -190,8 +190,8 @@ export class N2WordsRU extends AbstractLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsRU(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/sr.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,8 @@ export class N2WordsSR extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsSR(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/tr.js
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@ export class N2WordsTR extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsTR(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/uk.js
Original file line number Diff line number Diff line change
Expand Up @@ -87,8 +87,8 @@ export class N2WordsUK extends N2WordsRU {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsUK(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/vi.js
Original file line number Diff line number Diff line change
Expand Up @@ -143,8 +143,8 @@ export class N2WordsID extends AbstractLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsID(options).floatToCardinal(value);
Expand Down
2 changes: 1 addition & 1 deletion lib/i18n/zh.js
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ export class N2WordsZH extends BaseLanguage {
* Converts a value to cardinal (written) form.
* @param {number|string|bigint} value Number to be convert.
* @param {object} [options] Options for class.
* @throws {Error} Value cannot be invalid.
* @returns {string} Value in cardinal (written) format.
* @throws {Error} Value cannot be invalid.
*/
export default function floatToCardinal (value, options = {}) {
return new N2WordsZH(options).floatToCardinal(value);
Expand Down
5 changes: 3 additions & 2 deletions test/web.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@ if (fs.existsSync('./dist/n2words.js')) {
}

/**
* Test browser
* @param {string} browser See `Browser`
* Use browser to confirm working state of project.
* @param {string} browser Browser object to use.
* @see `Browser`
*/
async function testBrowser(browser) {
test(browser, async t => {
Expand Down