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 @@
+
+
+ {{ timeAgo }}
+
+
+
+
+
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: [