aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatt Mayer <[email protected]>2023-01-01 00:49:19 +0700
committerGitHub <[email protected]>2022-12-31 17:49:19 +0000
commit2a2e054a16a45bc5cd56bdd923b7f5140eb12699 (patch)
tree0b839ea78065c808c4816c404d07e2b2cc8a53c8 /src
parent351f8f0ee1e5bcefc4188b3124e7a9eeec774192 (diff)
downloadfaker-2a2e054a16a45bc5cd56bdd923b7f5140eb12699.tar.xz
faker-2a2e054a16a45bc5cd56bdd923b7f5140eb12699.zip
feat(person): add short bio (#1696)
Diffstat (limited to 'src')
-rw-r--r--src/definitions/person.ts2
-rw-r--r--src/locales/en/person/bio_part.ts43
-rw-r--r--src/locales/en/person/bio_patterns.ts10
-rw-r--r--src/locales/en/person/bio_supporter.ts9
-rw-r--r--src/locales/en/person/index.ts6
-rw-r--r--src/modules/person/index.ts14
6 files changed, 84 insertions, 0 deletions
diff --git a/src/definitions/person.ts b/src/definitions/person.ts
index 488ff4fe..773d4fb8 100644
--- a/src/definitions/person.ts
+++ b/src/definitions/person.ts
@@ -30,6 +30,8 @@ export type PersonDefinitions = LocaleEntry<{
*/
name: string[];
+ bio_patterns?: string[];
+
title: PersonTitleDefinitions;
western_zodiac_sign: string[];
diff --git a/src/locales/en/person/bio_part.ts b/src/locales/en/person/bio_part.ts
new file mode 100644
index 00000000..0e6830f8
--- /dev/null
+++ b/src/locales/en/person/bio_part.ts
@@ -0,0 +1,43 @@
+export default [
+ 'activist',
+ 'artist',
+ 'author',
+ 'blogger',
+ 'business owner',
+ 'coach',
+ 'creator',
+ 'designer',
+ 'developer',
+ 'dreamer',
+ 'educator',
+ 'engineer',
+ 'entrepreneur',
+ 'environmentalist',
+ 'film lover',
+ 'filmmaker',
+ 'foodie',
+ 'founder',
+ 'friend',
+ 'gamer',
+ 'geek',
+ 'grad',
+ 'inventor',
+ 'leader',
+ 'model',
+ 'musician',
+ 'nerd',
+ 'parent',
+ 'patriot',
+ 'person',
+ 'philosopher',
+ 'photographer',
+ 'public speaker',
+ 'scientist',
+ 'singer',
+ 'streamer',
+ 'student',
+ 'teacher',
+ 'traveler',
+ 'veteran',
+ 'writer',
+];
diff --git a/src/locales/en/person/bio_patterns.ts b/src/locales/en/person/bio_patterns.ts
new file mode 100644
index 00000000..80caf4ed
--- /dev/null
+++ b/src/locales/en/person/bio_patterns.ts
@@ -0,0 +1,10 @@
+export default [
+ '{{person.bio_part}}',
+ '{{person.bio_part}}, {{person.bio_part}}',
+ '{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}}',
+ '{{person.bio_part}}, {{person.bio_part}}, {{person.bio_part}} {{internet.emoji}}',
+ '{{word.noun}} {{person.bio_supporter}}',
+ '{{word.noun}} {{person.bio_supporter}} {{internet.emoji}}',
+ '{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}}',
+ '{{word.noun}} {{person.bio_supporter}}, {{person.bio_part}} {{internet.emoji}}',
+];
diff --git a/src/locales/en/person/bio_supporter.ts b/src/locales/en/person/bio_supporter.ts
new file mode 100644
index 00000000..26de8b02
--- /dev/null
+++ b/src/locales/en/person/bio_supporter.ts
@@ -0,0 +1,9 @@
+export default [
+ 'advocate',
+ 'devotee',
+ 'enthusiast',
+ 'fan',
+ 'junkie',
+ 'lover',
+ 'supporter',
+];
diff --git a/src/locales/en/person/index.ts b/src/locales/en/person/index.ts
index 68824ff3..0f1b5889 100644
--- a/src/locales/en/person/index.ts
+++ b/src/locales/en/person/index.ts
@@ -3,6 +3,9 @@
* Run 'pnpm run generate:locales' to update.
*/
import type { PersonDefinitions } from '../../..';
+import bio_part from './bio_part';
+import bio_patterns from './bio_patterns';
+import bio_supporter from './bio_supporter';
import female_first_name from './female_first_name';
import female_middle_name from './female_middle_name';
import first_name from './first_name';
@@ -19,6 +22,9 @@ import title from './title';
import western_zodiac_sign from './western_zodiac_sign';
const person: PersonDefinitions = {
+ bio_part,
+ bio_patterns,
+ bio_supporter,
female_first_name,
female_middle_name,
first_name,
diff --git a/src/modules/person/index.ts b/src/modules/person/index.ts
index 2e443c3e..59202fb0 100644
--- a/src/modules/person/index.ts
+++ b/src/modules/person/index.ts
@@ -241,6 +241,20 @@ export class PersonModule {
}
/**
+ * Returns a random short biography
+ *
+ * @example
+ * faker.person.bio() // 'oatmeal advocate, veteran 🐠'
+ *
+ * @since 8.0.0
+ */
+ bio(): string {
+ const { bio_patterns } = this.faker.definitions.person;
+
+ return this.faker.helpers.fake(bio_patterns);
+ }
+
+ /**
* Returns a random person prefix.
*
* @param sex The optional sex to use. Can be either `'female'` or `'male'`.