Skip to main content
Very Popular
Go to Latest
File
function dateLongFormatter(pattern, formatLong) { switch (pattern) { case 'P': return formatLong.date({ width: 'short' }) case 'PP': return formatLong.date({ width: 'medium' }) case 'PPP': return formatLong.date({ width: 'long' }) case 'PPPP': default: return formatLong.date({ width: 'full' }) }}
function timeLongFormatter(pattern, formatLong) { switch (pattern) { case 'p': return formatLong.time({ width: 'short' }) case 'pp': return formatLong.time({ width: 'medium' }) case 'ppp': return formatLong.time({ width: 'long' }) case 'pppp': default: return formatLong.time({ width: 'full' }) }}
function dateTimeLongFormatter(pattern, formatLong) { var matchResult = pattern.match(/(P+)(p+)?/) var datePattern = matchResult[1] var timePattern = matchResult[2]
if (!timePattern) { return dateLongFormatter(pattern, formatLong) }
var dateTimeFormat
switch (datePattern) { case 'P': dateTimeFormat = formatLong.dateTime({ width: 'short' }) break case 'PP': dateTimeFormat = formatLong.dateTime({ width: 'medium' }) break case 'PPP': dateTimeFormat = formatLong.dateTime({ width: 'long' }) break case 'PPPP': default: dateTimeFormat = formatLong.dateTime({ width: 'full' }) break }
return dateTimeFormat .replace('{{date}}', dateLongFormatter(datePattern, formatLong)) .replace('{{time}}', timeLongFormatter(timePattern, formatLong))}
var longFormatters = { p: timeLongFormatter, P: dateTimeLongFormatter}
export default longFormatters