DateHelper.diff.js

Created Diff never expires
4 removals
38 lines
9 additions
43 lines
const moment = require('moment-timezone')
const dayjs = require('dayjs')
const timezone = require("dayjs/plugin/timezone.js")
const utc = require("dayjs/plugin/utc.js")

dayjs.extend(utc)
dayjs.extend(timezone)


const CommonEnums = {
const CommonEnums = {
DEFAULT_TIME_ZONE: 'Europe/Istanbul'
DEFAULT_TIME_ZONE: 'Europe/Istanbul'
};
};


module.exports = class DateHelper {
module.exports = class DateHelper {
/**
/**
* @param {string} timezone
* @param {string} timezone
* @return {number}
* @return {number}
*/
*/
static now (timezone = CommonEnums.DEFAULT_TIME_ZONE) {
static now (timezone = CommonEnums.DEFAULT_TIME_ZONE) {
return moment.tz(timezone).unix();
return dayjs().tz(timezone).unix();
}
}


/**
/**
* @param {number} timestamp
* @param {number} timestamp
* @param {string} format
* @param {string} format
* @param {string} timezone
* @param {string} timezone
* @return {string}
* @return {string}
*/
*/
static formatUnixTimestamp (
static formatUnixTimestamp (
timestamp,
timestamp,
format = 'DD/MM/YYYY',
format = 'DD/MM/YYYY',
timezone = CommonEnums.DEFAULT_TIME_ZONE
timezone = CommonEnums.DEFAULT_TIME_ZONE
) {
) {
return moment(timestamp * 1000).tz(timezone).format(format);
return dayjs(timestamp * 1000).tz(timezone).format(format);
}
}


/**
/**
* @param {string} format
* @param {string} format
* @param {string} timezone
* @param {string} timezone
* @return {string}
* @return {string}
*/
*/
static nowWithFormat (format = 'DD/MM/YYYY', timezone = CommonEnums.DEFAULT_TIME_ZONE) {
static nowWithFormat (format = 'DD/MM/YYYY', timezone = CommonEnums.DEFAULT_TIME_ZONE) {
return this.formatUnixTimestamp(this.now(), format, timezone || CommonEnums.DEFAULT_TIME_ZONE);
return this.formatUnixTimestamp(this.now(), format, timezone || CommonEnums.DEFAULT_TIME_ZONE);
}
}
};
};