Skip to content

Instantly share code, notes, and snippets.

@jirevwe
Created July 18, 2019 19:10
Show Gist options
  • Save jirevwe/818b042311560d19715d714492b12f43 to your computer and use it in GitHub Desktop.
Save jirevwe/818b042311560d19715d714492b12f43 to your computer and use it in GitHub Desktop.
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