Skip to content

Commit 6c5b970

Browse files
authored
chore: use recommended restrict-plus-operands (#369)
1 parent d4125e2 commit 6c5b970

17 files changed

+114
-185
lines changed

.eslintrc.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ module.exports = defineConfig({
4141
'@typescript-eslint/no-unsafe-call': 'off',
4242
'@typescript-eslint/no-unsafe-member-access': 'off',
4343
'@typescript-eslint/no-unsafe-return': 'warn',
44-
'@typescript-eslint/restrict-plus-operands': 'warn',
4544
'@typescript-eslint/restrict-template-expressions': [
4645
'error',
4746
{

scripts/apidoc.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ async function build(): Promise<void> {
232232
.map((tag) => tag.text.trimEnd()) || [];
233233

234234
if (examples.length !== 0) {
235-
console.log('Example-Length: ' + examples);
235+
console.log('Example-Length:', examples);
236236
content += examples.join('\n') + '\n';
237237
}
238238

src/commerce.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export class Commerce {
6464
symbol: string = ''
6565
): string {
6666
if (min < 0 || max < 0) {
67-
return symbol + 0.0;
67+
return `${symbol}${0.0}`;
6868
}
6969

7070
const randValue = this.faker.datatype.number({ max: max, min: min });

src/finance.ts

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ export class Finance {
6464
sum += Number(routingNumber[i + 2]) || 0;
6565
}
6666

67-
return routingNumber + (Math.ceil(sum / 10) * 10 - sum);
67+
return `${routingNumber}${Math.ceil(sum / 10) * 10 - sum}`;
6868
}
6969

7070
/**
@@ -293,7 +293,12 @@ export class Finance {
293293
* @method faker.finance.iban
294294
*/
295295
iban(formatted: boolean = false, countryCode: string): string {
296-
let ibanFormat;
296+
let ibanFormat: {
297+
bban: Array<{ type: string; count: number }>;
298+
country: string;
299+
total?: number;
300+
format?: string;
301+
};
297302
if (countryCode) {
298303
const findFormat = (currentFormat) =>
299304
currentFormat.country === countryCode;
@@ -341,12 +346,12 @@ export class Finance {
341346
let checksum: string | number =
342347
98 -
343348
this.ibanLib.mod97(
344-
this.ibanLib.toDigitString(s + ibanFormat.country + '00')
349+
this.ibanLib.toDigitString(`${s}${ibanFormat.country}00`)
345350
);
346351
if (checksum < 10) {
347-
checksum = '0' + checksum;
352+
checksum = `0${checksum}`;
348353
}
349-
const iban = ibanFormat.country + checksum + s;
354+
const iban = `${ibanFormat.country}${checksum}${s}`;
350355
return formatted ? iban.match(/.{1,4}/g).join(' ') : iban;
351356
}
352357

src/image.ts

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -87,13 +87,13 @@ export class Image {
8787
if (typeof https !== 'undefined' && https === true) {
8888
protocol = 'https://';
8989
}
90-
let url = protocol + 'placeimg.com/' + width + '/' + height;
90+
let url = `${protocol}placeimg.com/${width}/${height}`;
9191
if (typeof category !== 'undefined') {
9292
url += '/' + category;
9393
}
9494

9595
if (randomize) {
96-
url += '?' + this.faker.datatype.number();
96+
url += `?${this.faker.datatype.number()}`;
9797
}
9898

9999
return url;
@@ -264,22 +264,11 @@ export class Image {
264264
* @param color
265265
*/
266266
dataUri(width?: number, height?: number, color: string = 'grey'): string {
267-
const svgString =
268-
'<svg xmlns="http://www.w3.org/2000/svg" version="1.1" baseProfile="full" width="' +
269-
width +
270-
'" height="' +
271-
height +
272-
'"><rect width="100%" height="100%" fill="' +
273-
color +
274-
'"/><text x="' +
275-
width / 2 +
276-
'" y="' +
277-
height / 2 +
278-
'" font-size="20" alignment-baseline="middle" text-anchor="middle" fill="white">' +
279-
width +
280-
'x' +
281-
height +
282-
'</text></svg>';
267+
const svgString = `<svg xmlns="http://www.w3.org/2000/svg" version="1.1" baseProfile="full" width="${width}" height="${height}"><rect width="100%" height="100%" fill="${color}"/><text x="${
268+
width / 2
269+
}" y="${
270+
height / 2
271+
}" font-size="20" alignment-baseline="middle" text-anchor="middle" fill="white">${width}x${height}</text></svg>`;
283272
const rawPrefix = 'data:image/svg+xml;charset=UTF-8,';
284273
return rawPrefix + encodeURIComponent(svgString);
285274
}

src/image_providers/lorempicsum.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -108,18 +108,18 @@ export class LoremPicsum {
108108
url += '/seed/' + seed;
109109
}
110110

111-
url += '/' + width + '/' + height;
111+
url += `/${width}/${height}`;
112112

113113
if (grayscale && blur) {
114-
return url + '?grayscale' + '&blur=' + blur;
114+
return `${url}?grayscale&blur=${blur}`;
115115
}
116116

117117
if (grayscale) {
118118
return url + '?grayscale';
119119
}
120120

121121
if (blur) {
122-
return url + '?blur=' + blur;
122+
return `${url}?blur=${blur}`;
123123
}
124124

125125
return url;

src/image_providers/lorempixel.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,13 +61,13 @@ export class Lorempixel {
6161
width ||= 640;
6262
height ||= 480;
6363

64-
let url = 'https://lorempixel.com/' + width + '/' + height;
64+
let url = `https://lorempixel.com/${width}/${height}`;
6565
if (typeof category !== 'undefined') {
6666
url += '/' + category;
6767
}
6868

6969
if (randomize) {
70-
url += '?' + this.faker.datatype.number();
70+
url += `?${this.faker.datatype.number()}`;
7171
}
7272

7373
return url;

src/image_providers/unsplash.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export class Unsplash {
5858
url += '/category/' + category;
5959
}
6060

61-
url += '/' + width + 'x' + height;
61+
url += `/${width}x${height}`;
6262

6363
if (typeof keyword !== 'undefined') {
6464
const keywordFormat = new RegExp(

src/internet.ts

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -185,11 +185,9 @@ export class Internet {
185185
* @method faker.internet.avatar
186186
*/
187187
avatar(): string {
188-
return (
189-
'https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/' +
190-
this.faker.datatype.number(1249) +
191-
'.jpg'
192-
);
188+
return `https://cloudflare-ipfs.com/ipfs/Qmd3W5DuhgHirLHGVixi6V76LhCkZUz6pnFt5AJBiyvHye/avatar/${this.faker.datatype.number(
189+
1249
190+
)}.jpg`;
193191
}
194192

195193
/**
@@ -240,18 +238,17 @@ export class Internet {
240238
lastName ||= this.faker.name.lastName();
241239
switch (this.faker.datatype.number(2)) {
242240
case 0:
243-
result = firstName + this.faker.datatype.number(99);
241+
result = `${firstName}${this.faker.datatype.number(99)}`;
244242
break;
245243
case 1:
246244
result =
247245
firstName + this.faker.random.arrayElement(['.', '_']) + lastName;
248246
break;
249247
case 2:
250-
result =
251-
firstName +
252-
this.faker.random.arrayElement(['.', '_']) +
253-
lastName +
254-
this.faker.datatype.number(99);
248+
result = `${firstName}${this.faker.random.arrayElement([
249+
'.',
250+
'_',
251+
])}${lastName}${this.faker.datatype.number(99)}`;
255252
break;
256253
}
257254
result = result.toString().replace(/'/g, '');

src/lorem.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ export class Lorem {
149149
'lorem.lines',
150150
];
151151
const randomLoremMethod = this.faker.random.arrayElement(loremMethods);
152-
return this.faker.fake('{{' + randomLoremMethod + '}}');
152+
return this.faker.fake(`{{${randomLoremMethod}}}`);
153153
}
154154

155155
/**

src/vehicle.ts

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -76,16 +76,15 @@ export class Vehicle {
7676
*/
7777
vin(): string {
7878
const bannedChars = ['o', 'i', 'q'];
79-
return (
80-
this.faker.random.alphaNumeric(10, { bannedChars: bannedChars }) +
81-
this.faker.random.alpha({
82-
count: 1,
83-
upcase: true,
84-
bannedChars: bannedChars,
85-
}) +
86-
this.faker.random.alphaNumeric(1, { bannedChars: bannedChars }) +
87-
this.faker.datatype.number({ min: 10000, max: 100000 })
88-
) // return five digit #
79+
return `${this.faker.random.alphaNumeric(10, {
80+
bannedChars,
81+
})}${this.faker.random.alpha({
82+
count: 1,
83+
upcase: true,
84+
bannedChars,
85+
})}${this.faker.random.alphaNumeric(1, {
86+
bannedChars,
87+
})}${this.faker.datatype.number({ min: 10000, max: 100000 })}` // return five digit #
8988
.toUpperCase();
9089
}
9190

@@ -106,12 +105,16 @@ export class Vehicle {
106105
* faker.vehicle.vrm() // 'MF56UPA'
107106
*/
108107
vrm(): string {
109-
return (
110-
this.faker.random.alpha({ count: 2, upcase: true }) +
111-
this.faker.datatype.number({ min: 0, max: 9 }) +
112-
this.faker.datatype.number({ min: 0, max: 9 }) +
113-
this.faker.random.alpha({ count: 3, upcase: true })
114-
).toUpperCase();
108+
return `${this.faker.random.alpha({
109+
count: 2,
110+
upcase: true,
111+
})}${this.faker.datatype.number({
112+
min: 0,
113+
max: 9,
114+
})}${this.faker.datatype.number({
115+
min: 0,
116+
max: 9,
117+
})}${this.faker.random.alpha({ count: 3, upcase: true })}`.toUpperCase();
115118
}
116119

117120
/**

src/vendor/mersenne.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ function MersenneTwister19937(): void {
193193

194194
/* generates a random number on [0,0xffffffff]-interval */
195195
//c//unsigned long genrand_int32(void)
196-
this.genrand_int32 = function () {
196+
this.genrand_int32 = function (): number {
197197
//c//unsigned long y;
198198
//c//static unsigned long mag01[2]={0x0UL, MATRIX_A};
199199
let y: number;
@@ -271,7 +271,8 @@ function MersenneTwister19937(): void {
271271
//c//double genrand_real3(void)
272272
this.genrand_real3 = function (): number {
273273
//c//return ((genrand_int32()) + 0.5)*(1.0/4294967296.0);
274-
return (this.genrand_int32() + 0.5) * (1.0 / 4294967296.0);
274+
// TODO @Shinigami92 2022-01-30: Rewrite this file to a class
275+
return ((this.genrand_int32() as number) + 0.5) * (1.0 / 4294967296.0);
275276
/* divided by 2^32 */
276277
};
277278

src/vendor/unique.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ export function exec<Method extends (args: Args) => string, Args extends any[]>(
8787
if (now - startTime >= opts.maxTime) {
8888
return errorMessage(
8989
now,
90-
'Exceeded maxTime:' + opts.maxTime,
90+
`Exceeded maxTime: ${opts.maxTime}`,
9191
// @ts-expect-error: we know that opts.startTime is defined
9292
opts
9393
);
@@ -96,7 +96,7 @@ export function exec<Method extends (args: Args) => string, Args extends any[]>(
9696
if (opts.currentIterations >= opts.maxRetries) {
9797
return errorMessage(
9898
now,
99-
'Exceeded maxRetries:' + opts.maxRetries,
99+
`Exceeded maxRetries: ${opts.maxRetries}`,
100100
// @ts-expect-error: we know that opts.startTime is defined
101101
opts
102102
);

0 commit comments

Comments
 (0)