/*! Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. SPDX-License-Identifier: Apache-2.0 */ import { Tooltip, TooltipProps } from './Tooltip'; import { isString } from 'lodash'; import React from 'react'; import ReactTimeago, { ReactTimeagoProps } from 'react-timeago'; import moment from 'moment'; export interface RelativeDateProps { date?: ReactTimeagoProps['date']; formatter?: ReactTimeagoProps['formatter']; /** * @default true */ tooltip?: boolean | TooltipProps['content']; /** * @default undefined */ tooltipHeader?: TooltipProps['header']; } export const RelativeDate: React.FC = ({ date, formatter, tooltip, tooltipHeader }) => { if (date == null) return null; if (tooltip !== false) { if (tooltip == null || tooltip === true) { tooltip = {isString(date) ? date : new Date(date).toLocaleString()}; } return ( {tooltip} : tooltip}> ); } return ( ); };