Skip to content

Commit ba4c185

Browse files
authored
docs: update name jsdocs (#391)
1 parent 4fd3cb0 commit ba4c185

File tree

1 file changed

+79
-44
lines changed

1 file changed

+79
-44
lines changed

src/name.ts

Lines changed: 79 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import type { Faker } from '.';
22

3+
/**
4+
* Module to generate people's names and titles.
5+
*/
36
export class Name {
47
constructor(private readonly faker: Faker) {
58
// Bind `this` so namespaced is working correctly
@@ -12,11 +15,17 @@ export class Name {
1215
}
1316

1417
/**
15-
* firstName
18+
* Returns a random first name.
1619
*
17-
* @method faker.name.firstName
18-
* @param gender
19-
* @memberof faker.name
20+
* @example
21+
* faker.name.firstName() // 'Antwan'
22+
* faker.name.firstName("female") // 'Victoria'
23+
* faker.name.firstName(1) // 'Ashley'
24+
* faker.name.firstName("male") // 'Tom'
25+
* faker.name.firstName(0) // 'Ismael'
26+
*
27+
* @param gender The optional gender to use.
28+
* Can be either `'male'` (or `0`) or `'female'` (or `1`).
2029
*/
2130
firstName(gender?: string | number): string {
2231
if (
@@ -61,11 +70,17 @@ export class Name {
6170
}
6271

6372
/**
64-
* lastName
73+
* Returns a random last name.
74+
*
75+
* @example
76+
* faker.name.lastName() // 'Hauck'
77+
* faker.name.lastName("female") // 'Grady'
78+
* faker.name.lastName(1) // 'Kshlerin'
79+
* faker.name.lastName("male") // 'Barton'
80+
* faker.name.lastName(0) // 'Lockman'
6581
*
66-
* @method lastName
67-
* @param gender
68-
* @memberof faker.name
82+
* @param gender The optional gender to use.
83+
* Can be either `'male'` (or `0`) or `'female'` (or `1`).
6984
*/
7085
lastName(gender?: string | number): string {
7186
if (
@@ -94,11 +109,17 @@ export class Name {
94109
}
95110

96111
/**
97-
* middleName
112+
* Returns a random middle name.
113+
*
114+
* @example
115+
* faker.name.middleName() // 'Доброславівна'
116+
* faker.name.middleName("female") // 'Анастасівна'
117+
* faker.name.middleName(1) // 'Анатоліївна'
118+
* faker.name.middleName("male") // 'Вікторович'
119+
* faker.name.middleName(0) // 'Стефанович'
98120
*
99-
* @method middleName
100-
* @param gender
101-
* @memberof faker.name
121+
* @param gender The optional gender to use.
122+
* Can be either `'male'` (or `0`) or `'female'` (or `1`).
102123
*/
103124
middleName(gender?: string | number): string {
104125
if (
@@ -125,13 +146,19 @@ export class Name {
125146
}
126147

127148
/**
128-
* findName
149+
* Generates a random full name.
129150
*
130-
* @method findName
131-
* @param firstName
132-
* @param lastName
133-
* @param gender
134-
* @memberof faker.name
151+
* @example
152+
* faker.name.findName() // 'Allen Brown'
153+
* faker.name.findName('Joann') // 'Joann Osinski'
154+
* faker.name.findName('Marcella', '', 1) // 'Mrs. Marcella Huels'
155+
* faker.name.findName(undefined, 'Beer') // 'Mr. Alfonso Beer'
156+
* faker.name.findName(undefined, undefined, 0) // 'Fernando Schaefer'
157+
*
158+
* @param firstName The optional first name to use. If not specified a random one will be chosen.
159+
* @param lastName The optional last name to use. If not specified a random one will be chosen.
160+
* @param gender The optional gender to use.
161+
* Can be either `'male'` (or `0`) or `'female'` (or `1`).
135162
*/
136163
findName(
137164
firstName?: string,
@@ -171,10 +198,10 @@ export class Name {
171198
}
172199

173200
/**
174-
* jobTitle
201+
* Generates a random job title.
175202
*
176-
* @method jobTitle
177-
* @memberof faker.name
203+
* @example
204+
* faker.name.jobTitle() // 'Global Accounts Engineer'
178205
*/
179206
jobTitle(): string {
180207
return (
@@ -187,11 +214,13 @@ export class Name {
187214
}
188215

189216
/**
190-
* gender
217+
* Return a random gender.
218+
*
219+
* @example
220+
* faker.name.gender() // 'Trans*Man'
221+
* faker.name.gender(true) // 'Female'
191222
*
192-
* @method gender
193-
* @param binary
194-
* @memberof faker.name
223+
* @param binary Whether to return only binary gender names. Defaults to false.
195224
*/
196225
gender(binary?: boolean): string {
197226
if (binary) {
@@ -204,11 +233,17 @@ export class Name {
204233
}
205234

206235
/**
207-
* prefix
236+
* Returns a random name prefix.
237+
*
238+
* @example
239+
* faker.name.prefix() // 'Miss'
240+
* faker.name.prefix('female') // 'Ms.'
241+
* faker.name.prefix(1) // 'Dr.'
242+
* faker.name.prefix('male') // 'Mr.'
243+
* faker.name.prefix(0) // 'Mr.'
208244
*
209-
* @method prefix
210-
* @param gender
211-
* @memberof faker.name
245+
* @param gender The optional gender to use.
246+
* Can be either `'male'` (or `0`) or `'female'` (or `1`).
212247
*/
213248
prefix(gender?: string | number): string {
214249
if (
@@ -233,20 +268,20 @@ export class Name {
233268
}
234269

235270
/**
236-
* suffix
271+
* Returns a random name suffix.
237272
*
238-
* @method suffix
239-
* @memberof faker.name
273+
* @example
274+
* faker.name.suffix() // 'DDS'
240275
*/
241276
suffix(): string {
242277
return this.faker.random.arrayElement(this.faker.definitions.name.suffix);
243278
}
244279

245280
/**
246-
* title
281+
* Generates a random title.
247282
*
248-
* @method title
249-
* @memberof faker.name
283+
* @example
284+
* faker.name.title() // 'International Integration Manager'
250285
*/
251286
title(): string {
252287
const descriptor = this.faker.random.arrayElement(
@@ -263,10 +298,10 @@ export class Name {
263298
}
264299

265300
/**
266-
* jobDescriptor
301+
* Generates a random job descriptor.
267302
*
268-
* @method jobDescriptor
269-
* @memberof faker.name
303+
* @example
304+
* faker.name.jobDescriptor() // 'Customer'
270305
*/
271306
jobDescriptor(): string {
272307
return this.faker.random.arrayElement(
@@ -275,10 +310,10 @@ export class Name {
275310
}
276311

277312
/**
278-
* jobArea
313+
* Generates a random job area.
279314
*
280-
* @method jobArea
281-
* @memberof faker.name
315+
* @example
316+
* faker.name.jobArea() // 'Brand'
282317
*/
283318
jobArea(): string {
284319
return this.faker.random.arrayElement(
@@ -287,10 +322,10 @@ export class Name {
287322
}
288323

289324
/**
290-
* jobType
325+
* Generates a random job type.
291326
*
292-
* @method jobType
293-
* @memberof faker.name
327+
* @example
328+
* faker.name.jobType() // 'Assistant'
294329
*/
295330
jobType(): string {
296331
return this.faker.random.arrayElement(

0 commit comments

Comments
 (0)