From 8f873a34a24b5f768ab4e3691b255e9e58554ca1 Mon Sep 17 00:00:00 2001 From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com> Date: Mon, 5 Sep 2022 16:07:58 +0530 Subject: [PATCH] feat: Adds the ability to update conversation timeframe automatically (#5253) * feat: Adds the ability to update conversation timeframe automatically * Update app/javascript/dashboard/components/ui/TimeAgo.vue Co-authored-by: Muhsin Keloth Co-authored-by: Muhsin Keloth --- .../dashboard/components/ui/TimeAgo.vue | 88 +++++++++++++++++++ .../components/ui/stories/TimeAgo.stories.js | 30 +++++++ .../widgets/conversation/ConversationCard.vue | 4 +- 3 files changed, 121 insertions(+), 1 deletion(-) create mode 100644 app/javascript/dashboard/components/ui/TimeAgo.vue create mode 100644 app/javascript/dashboard/components/ui/stories/TimeAgo.stories.js diff --git a/app/javascript/dashboard/components/ui/TimeAgo.vue b/app/javascript/dashboard/components/ui/TimeAgo.vue new file mode 100644 index 000000000..c262a8aa0 --- /dev/null +++ b/app/javascript/dashboard/components/ui/TimeAgo.vue @@ -0,0 +1,88 @@ + + + + diff --git a/app/javascript/dashboard/components/ui/stories/TimeAgo.stories.js b/app/javascript/dashboard/components/ui/stories/TimeAgo.stories.js new file mode 100644 index 000000000..606b2d1d4 --- /dev/null +++ b/app/javascript/dashboard/components/ui/stories/TimeAgo.stories.js @@ -0,0 +1,30 @@ +import TimeAgo from 'dashboard/components/ui/TimeAgo'; + +export default { + title: 'Components/TimeAgo', + component: TimeAgo, + argTypes: { + isAutoRefreshEnabled: { + control: { + type: 'boolean', + }, + }, + timestamp: { + control: { + type: 'text, date, number', + }, + }, + }, +}; + +const Template = (args, { argTypes }) => ({ + props: Object.keys(argTypes), + components: { TimeAgo }, + template: '', +}); + +export const TimeAgoView = Template.bind({}); +TimeAgoView.args = { + timestamp: 1549843200, + isAutoRefreshEnabled: false, +}; diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue index 78e8c1988..61ee5e198 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ConversationCard.vue @@ -87,7 +87,7 @@

- {{ dynamicTime(chat.timestamp) }} + {{ unreadCount > 9 ? '9+' : unreadCount }}
@@ -123,6 +123,7 @@ import InboxName from '../InboxName'; import inboxMixin from 'shared/mixins/inboxMixin'; import ConversationContextMenu from './contextMenu/Index.vue'; import alertMixin from 'shared/mixins/alertMixin'; +import timeAgo from 'dashboard/components/ui/TimeAgo'; const ATTACHMENT_ICONS = { image: 'image', @@ -138,6 +139,7 @@ export default { InboxName, Thumbnail, ConversationContextMenu, + timeAgo, }, mixins: [