-
Notifications
You must be signed in to change notification settings - Fork 1
/
helpers.js
47 lines (43 loc) · 1.1 KB
/
helpers.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
const dateformat = require('dateformat');
const Helpers = {};
/**
* Set default value
* @param opts {object} options
* @param defaultOpts {object} default options
* @returns {*}
*/
Helpers.defaults = (opts, defaultOpts) => {
for (let i in defaultOpts) {
if(defaultOpts.hasOwnProperty(i))
if (!opts.hasOwnProperty(i)) {
opts[i] = defaultOpts[i];
} else {
if (typeof opts[i] === 'object') {
Helpers.defaults(opts[i], defaultOpts[i]);
}
}
}
return opts;
};
/**
* Get locale date string
* @param part {string} can be all, date, time
* @returns {*}
*/
Helpers.getLocaleISODate = (part = 'all') => {
const now = new Date();
if(part === 'date')
return dateformat(now, 'yyyy-mm-dd');
else if(part === 'time')
return dateformat(now, 'HH:MM:ss');
else
return dateformat(now, 'yyyy-mm-dd HH:MM:ss');
};
/**
* Check if browser environment
* @returns {boolean}
*/
Helpers.isBrowser = () => {
return typeof window !== 'undefined';
};
module.exports = Helpers;