@@ -65,7 +65,9 @@ export class InternetModule extends ModuleBase {
65
65
*
66
66
* @example
67
67
* faker.internet.email() // 'Kassandra4@hotmail.com'
68
- * faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne63@yahoo.com'
68
+ * faker.internet.email({ firstName: 'Jeanne'}) // 'Jeanne63@yahoo.com'
69
+ * faker.internet.email({ firstName: 'Jeanne'}) // 'Jeanne_Smith63@yahoo.com'
70
+ * faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne.Doe63@yahoo.com'
69
71
* faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe', provider: 'example.fakerjs.dev' }) // 'Jeanne_Doe88@example.fakerjs.dev'
70
72
* faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe', provider: 'example.fakerjs.dev', allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.fakerjs.dev'
71
73
*
@@ -107,7 +109,9 @@ export class InternetModule extends ModuleBase {
107
109
*
108
110
* @example
109
111
* faker.internet.email() // 'Kassandra4@hotmail.com'
110
- * faker.internet.email('Jeanne', 'Doe') // 'Jeanne63@yahoo.com'
112
+ * faker.internet.email('Jeanne') // 'Jeanne63@yahoo.com'
113
+ * faker.internet.email('Jeanne') // 'Jeanne.Smith63@yahoo.com'
114
+ * faker.internet.email('Jeanne', 'Doe') // 'Jeanne_Doe63@yahoo.com'
111
115
* faker.internet.email('Jeanne', 'Doe', 'example.fakerjs.dev') // 'Jeanne_Doe88@example.fakerjs.dev'
112
116
* faker.internet.email('Jeanne', 'Doe', 'example.fakerjs.dev', { allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.fakerjs.dev'
113
117
*
@@ -145,7 +149,9 @@ export class InternetModule extends ModuleBase {
145
149
*
146
150
* @example
147
151
* faker.internet.email() // 'Kassandra4@hotmail.com'
148
- * faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne63@yahoo.com'
152
+ * faker.internet.email({ firstName: 'Jeanne' }) // 'Jeanne63@yahoo.com'
153
+ * faker.internet.email({ firstName: 'Jeanne' }) // 'Jeanne.Smith63@yahoo.com'
154
+ * faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne_Doe63@yahoo.com'
149
155
* faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe', provider: 'example.fakerjs.dev' }) // 'Jeanne_Doe88@example.fakerjs.dev'
150
156
* faker.internet.email({ firstName: 'Jeanne', lastName: 'Doe', provider: 'example.fakerjs.dev', allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.fakerjs.dev'
151
157
*
@@ -248,8 +254,8 @@ export class InternetModule extends ModuleBase {
248
254
}
249
255
250
256
const {
251
- firstName = this . faker . person . firstName ( ) ,
252
- lastName = legacyLastName ?? this . faker . person . lastName ( ) ,
257
+ firstName,
258
+ lastName = legacyLastName ,
253
259
provider = legacyProvider ??
254
260
this . faker . helpers . arrayElement (
255
261
this . faker . definitions . internet . free_email
@@ -295,7 +301,9 @@ export class InternetModule extends ModuleBase {
295
301
*
296
302
* @example
297
303
* faker.internet.exampleEmail() // 'Helmer.Graham23@example.com'
298
- * faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne96@example.net'
304
+ * faker.internet.exampleEmail({ firstName: 'Jeanne' }) // 'Jeanne96@example.net'
305
+ * faker.internet.exampleEmail({ firstName: 'Jeanne' }) // 'Jeanne.Smith96@example.net'
306
+ * faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne_Doe96@example.net'
299
307
* faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe', allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.com'
300
308
*
301
309
* @since 3.1.0
@@ -331,7 +339,9 @@ export class InternetModule extends ModuleBase {
331
339
*
332
340
* @example
333
341
* faker.internet.exampleEmail() // 'Helmer.Graham23@example.com'
334
- * faker.internet.exampleEmail('Jeanne', 'Doe') // 'Jeanne96@example.net'
342
+ * faker.internet.exampleEmail('Jeanne') // 'Jeanne96@example.net'
343
+ * faker.internet.exampleEmail('Jeanne') // 'Jeanne.Smith96@example.net'
344
+ * faker.internet.exampleEmail('Jeanne', 'Doe') // 'Jeanne_Doe96@example.net'
335
345
* faker.internet.exampleEmail('Jeanne', 'Doe', { allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.com'
336
346
*
337
347
* @since 3.1.0
@@ -365,7 +375,9 @@ export class InternetModule extends ModuleBase {
365
375
*
366
376
* @example
367
377
* faker.internet.exampleEmail() // 'Helmer.Graham23@example.com'
368
- * faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne96@example.net'
378
+ * faker.internet.exampleEmail({ firstName: 'Jeanne' }) // 'Jeanne96@example.net'
379
+ * faker.internet.exampleEmail({ firstName: 'Jeanne' }) // 'Jeanne.Smith96@example.net'
380
+ * faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe' }) // 'Jeanne_Doe96@example.net'
369
381
* faker.internet.exampleEmail({ firstName: 'Jeanne', lastName: 'Doe', allowSpecialCharacters: true }) // 'Jeanne%Doe88@example.com'
370
382
*
371
383
* @since 3.1.0
@@ -454,8 +466,8 @@ export class InternetModule extends ModuleBase {
454
466
}
455
467
456
468
const {
457
- firstName = this . faker . person . firstName ( ) ,
458
- lastName = legacyLastName ?? this . faker . person . lastName ( ) ,
469
+ firstName,
470
+ lastName = legacyLastName ,
459
471
allowSpecialCharacters = legacyOptions ?. allowSpecialCharacters ?? false ,
460
472
} = options ;
461
473
@@ -485,7 +497,9 @@ export class InternetModule extends ModuleBase {
485
497
*
486
498
* @example
487
499
* faker.internet.userName() // 'Nettie_Zboncak40'
488
- * faker.internet.userName({ firstName: 'Jeanne', lastName: 'Doe'}) // 'Jeanne98' - note surname is not used
500
+ * faker.internet.userName({ firstName: 'Jeanne' }) // 'Jeanne98'
501
+ * faker.internet.userName({ firstName: 'Jeanne' }) // 'Jeanne.Smith98'
502
+ * faker.internet.userName({ firstName: 'Jeanne', lastName: 'Doe'}) // 'Jeanne_Doe98'
489
503
* faker.internet.userName({ firstName: 'John', lastName: 'Doe' }) // 'John.Doe'
490
504
* faker.internet.userName({ firstName: 'Hélene', lastName: 'Müller' }) // 'Helene_Muller11'
491
505
* faker.internet.userName({ firstName: 'Фёдор', lastName: 'Достоевский' }) // 'Fedor.Dostoevskii50'
@@ -520,7 +534,9 @@ export class InternetModule extends ModuleBase {
520
534
*
521
535
* @example
522
536
* faker.internet.userName() // 'Nettie_Zboncak40'
523
- * faker.internet.userName('Jeanne', 'Doe') // 'Jeanne98' - note surname is not used
537
+ * faker.internet.userName('Jeanne') // 'Jeanne98'
538
+ * faker.internet.userName('Jeanne') // 'Jeanne.Smith98'
539
+ * faker.internet.userName('Jeanne', 'Doe') // 'Jeanne_Doe98'
524
540
* faker.internet.userName('John', 'Doe') // 'John.Doe'
525
541
* faker.internet.userName('Hélene', 'Müller') // 'Helene_Muller11'
526
542
* faker.internet.userName('Фёдор', 'Достоевский') // 'Fedor.Dostoevskii50'
@@ -546,7 +562,9 @@ export class InternetModule extends ModuleBase {
546
562
*
547
563
* @example
548
564
* faker.internet.userName() // 'Nettie_Zboncak40'
549
- * faker.internet.userName({ firstName: 'Jeanne', lastName: 'Doe'}) // 'Jeanne98' - note surname is not used
565
+ * faker.internet.userName({ firstName: 'Jeanne'}) // 'Jeanne98'
566
+ * faker.internet.userName({ firstName: 'Jeanne'}) // 'Jeanne.Smith98'
567
+ * faker.internet.userName({ firstName: 'Jeanne', lastName: 'Doe'}) // 'Jeanne_Doe98'
550
568
* faker.internet.userName({ firstName: 'John', lastName: 'Doe' }) // 'John.Doe'
551
569
* faker.internet.userName({ firstName: 'Hélene', lastName: 'Müller' }) // 'Helene_Muller11'
552
570
* faker.internet.userName({ firstName: 'Фёдор', lastName: 'Достоевский' }) // 'Fedor.Dostoevskii50'
@@ -608,23 +626,24 @@ export class InternetModule extends ModuleBase {
608
626
const {
609
627
firstName = this . faker . person . firstName ( ) ,
610
628
lastName = legacyLastName ?? this . faker . person . lastName ( ) ,
629
+ lastName : hasLastName = legacyLastName ,
611
630
} = options ;
612
631
613
632
let result : string ;
614
- switch ( this . faker . number . int ( 2 ) ) {
633
+ const strategy = this . faker . number . int ( hasLastName ? 1 : 2 ) ;
634
+ const separator = this . faker . helpers . arrayElement ( [ '.' , '_' ] ) ;
635
+ switch ( strategy ) {
615
636
case 0 :
616
- result = `${ firstName } ${ this . faker . number . int ( 99 ) } ` ;
637
+ result = `${ firstName } ${ separator } ${ lastName } ${ this . faker . number . int (
638
+ 99
639
+ ) } `;
617
640
break ;
618
641
case 1 :
619
- result =
620
- firstName + this . faker . helpers . arrayElement ( [ '.' , '_' ] ) + lastName ;
642
+ result = `${ firstName } ${ separator } ${ lastName } ` ;
621
643
break ;
622
644
case 2 :
623
645
default :
624
- result = `${ firstName } ${ this . faker . helpers . arrayElement ( [
625
- '.' ,
626
- '_' ,
627
- ] ) } ${ lastName } ${ this . faker . number . int ( 99 ) } `;
646
+ result = `${ firstName } ${ this . faker . number . int ( 99 ) } ` ;
628
647
break ;
629
648
}
630
649
0 commit comments