import { Component } from 'inferno'; import moment from 'moment'; import { getMomentLanguage, capitalizeFirstLetter } from '../utils'; import { i18n } from '../i18next'; interface MomentTimeProps { data: { published?: string; when_?: string; updated?: string; }; showAgo?: boolean; } export class MomentTime extends Component { constructor(props: any, context: any) { super(props, context); let lang = getMomentLanguage(); moment.locale(lang); } render() { if (this.props.data.updated) { return ( {moment.utc(this.props.data.updated).fromNow(!this.props.showAgo)} ); } else { let str = this.props.data.published || this.props.data.when_; return ( {moment.utc(str).fromNow(!this.props.showAgo)} ); } } format(input: string): string { return moment .utc(input) .local() .format('LLLL'); } }