@storm-stack/date-time
Version:
This package includes a DateTime class, various utility functions for working with dates and times, and a number of formatting options.
30 lines (29 loc) • 1.08 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.formatDate = void 0;
var _tempo = require("@formkit/tempo");
var _base = require("@storm-stack/types/utility-types/base");
var _constants = require("../constants.cjs");
var _stormDate = require("../storm-date.cjs");
var _stormDateTime = require("../storm-date-time.cjs");
const formatDate = (dateTime, options = {}) => {
let value = dateTime;
if (!dateTime && options.returnEmptyIfNotSet) {
return _base.EMPTY_STRING;
}
if ((!dateTime || _stormDate.StormDate.validate(dateTime) !== null) && options.returnEmptyIfInvalid) {
return _base.EMPTY_STRING;
}
if (!dateTime || _stormDate.StormDate.validate(dateTime) !== null) {
value = _stormDate.StormDate.current();
}
return (0, _tempo.format)({
date: value,
format: options.format || _constants.DEFAULT_DATE_FORMAT,
locale: options.locale,
tz: _stormDateTime.StormDateTime.isDateTime(value) ? value.timeZoneId : _stormDateTime.StormDateTime.getDefaultTimeZone()
});
};
exports.formatDate = formatDate;