Created
July 18, 2019 19:10
-
-
Save jirevwe/818b042311560d19715d714492b12f43 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import faker from 'faker'; | |
/** | |
* Faker polyfill method `middleName` | |
* | |
* @method middleName | |
* @param {mixed} gender | |
* @memberof faker.name | |
*/ | |
faker.name['middleName'] = function(gender) { | |
if ( | |
typeof faker['definitions'].name.male_middle_name !== 'undefined' && | |
typeof faker['definitions'].name.female_middle_name !== 'undefined' | |
) { | |
if (typeof gender !== 'number') { | |
gender = faker.random.number(1); | |
} | |
if (gender === 0) { | |
return faker.random.arrayElement( | |
faker['locales'][faker.locale].name.male_first_name | |
); | |
} else { | |
return faker.random.arrayElement( | |
faker['locales'][faker.locale].name.female_first_name | |
); | |
} | |
} | |
return faker.random.arrayElement(faker['definitions'].name.first_name); | |
}; | |
/** | |
* Faker polyfill method `fullName` | |
* | |
* @method fullName | |
* @param {string} firstName | |
* @param {string} lastName | |
* @param {mixed} gender | |
* @memberof faker.name | |
*/ | |
faker.name['fullName'] = function(firstName, middleName, lastName, gender) { | |
// in particular locales first and last names split by gender, | |
// thus we keep consistency by passing 0 as male and 1 as female | |
if (typeof gender !== 'number') { | |
gender = faker.random.number(1); | |
} | |
lastName = lastName || faker.name.lastName(gender); | |
firstName = firstName || faker.name.firstName(gender); | |
middleName = middleName || faker.name.firstName(gender); | |
return firstName + ' ' + middleName + ' ' + lastName; | |
}; | |
export default faker; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment