Skip to content

Commit 36b1080

Browse files
committed
feat: migrate time
1 parent 75bebff commit 36b1080

2 files changed

Lines changed: 28 additions & 0 deletions

File tree

src/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { Datatype } from './datatype';
22
import { Mersenne } from './mersenne';
33
import { Random } from './random';
4+
import { Time } from './time';
45

56
export interface FakerOptions {
67
locales?: string[];
@@ -17,6 +18,7 @@ export class Faker {
1718

1819
readonly mersenne: Mersenne = new Mersenne();
1920
random = new Random(this);
21+
time: Time = new Time();
2022
datatype: Datatype = new Datatype(this);
2123

2224
constructor(opts: FakerOptions = {}) {

src/time.ts

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
export class Time {
2+
/**
3+
* recent
4+
*
5+
* @method faker.time.recent
6+
* @param outputType 'abbr' || 'wide' || 'unix' (default choice)
7+
*/
8+
recent(outputType: 'abbr' | 'wide' | 'unix' = 'unix'): string | number {
9+
let date: string | number | Date = new Date();
10+
11+
switch (outputType) {
12+
case 'abbr':
13+
date = date.toLocaleTimeString();
14+
break;
15+
case 'wide':
16+
date = date.toTimeString();
17+
break;
18+
case 'unix':
19+
// TODO @Shinigami92 2022-01-10: add default case
20+
date = date.getTime();
21+
break;
22+
}
23+
24+
return date;
25+
}
26+
}

0 commit comments

Comments
 (0)