Skip to content

Commit 9df8c99

Browse files
committed
merged parseDate and date utils
1 parent 63305c5 commit 9df8c99

File tree

6 files changed

+23
-17
lines changed

6 files changed

+23
-17
lines changed

src/infrastructure/utils/date.ts

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,27 @@
11
import dayjs from 'dayjs';
22
import relativeTime from 'dayjs/plugin/relativeTime';
33
/**
4-
* Formats the date in a human-readable format
4+
* Returns time, that has been passed from updated at timestamp
55
* @param updatedAt - the date the note was last updated
66
* @returns the last updated time
77
*/
8-
export function formatShortDate(updatedAt: string): string {
8+
export function getTimeFromNow(updatedAt: string): string {
99
dayjs.extend(relativeTime);
1010
const formattedUpdatedAt = dayjs(updatedAt).fromNow();
1111

1212
return formattedUpdatedAt;
1313
}
14+
15+
/**
16+
* Converts timestamp to readable time format
17+
* @param date - date instance from timestamp
18+
* @returns - string with formatted date and time
19+
*/
20+
export function parseDate(date: Date): string {
21+
return new Intl.DateTimeFormat('en-GB', {
22+
month: 'short',
23+
day: 'numeric',
24+
hour: 'numeric',
25+
minute: 'numeric',
26+
}).format(date);
27+
}

src/infrastructure/utils/parseDate.ts

Lines changed: 0 additions & 8 deletions
This file was deleted.

src/presentation/components/note-list/NoteList.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
<script setup lang="ts">
4242
import useNoteList from '@/application/services/useNoteList';
4343
import type { Note } from '@/domain/entities/Note';
44-
import { formatShortDate } from '@/infrastructure/utils/date';
44+
import { getTimeFromNow } from '@/infrastructure/utils/date';
4545
import { getTitle } from '@/infrastructure/utils/note';
4646
import { useI18n } from 'vue-i18n';
4747
import { Card, CardSkeleton, Button } from 'codex-ui/vue';
@@ -66,7 +66,7 @@ function getSubtitle(note: Note): string | undefined {
6666
return;
6767
}
6868
69-
return `${t('home.updated')} ${formatShortDate(note.updatedAt)}`;
69+
return `${t('home.updated')} ${getTimeFromNow(note.updatedAt)}`;
7070
}
7171
7272
</script>

src/presentation/pages/History.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ import ThreeColsLayout from '../layouts/ThreeColsLayout.vue';
5555
import useNoteHistory from '@/application/services/useNoteHistory';
5656
import useHeader from '@/application/services/useHeader';
5757
import useNote from '@/application/services/useNote';
58-
import { parseDate } from '@/infrastructure/utils/parseDate';
58+
import { parseDate } from '@/infrastructure/utils/date';
5959
import { watch } from 'vue';
6060
import { useI18n } from 'vue-i18n';
6161
import type { NoteId } from '@/domain/entities/Note';

src/presentation/pages/Note.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<template #left>
77
{{
88
note && 'updatedAt' in note && note.updatedAt
9-
? t('note.lastEdit') + ' ' + formatShortDate(note.updatedAt)
9+
? t('note.lastEdit') + ' ' + getTimeFromNow(note.updatedAt)
1010
: t('note.lastEdit') + ' ' + 'a few seconds ago'
1111
}}
1212
</template>
@@ -47,7 +47,7 @@ import { useRouter } from 'vue-router';
4747
import { NoteContent } from '@/domain/entities/Note';
4848
import { useHead } from 'unhead';
4949
import { useI18n } from 'vue-i18n';
50-
import { formatShortDate } from '@/infrastructure/utils/date';
50+
import { getTimeFromNow } from '@/infrastructure/utils/date';
5151
import { makeElementScreenshot } from '@/infrastructure/utils/screenshot';
5252
import useNoteSettings from '@/application/services/useNoteSettings';
5353
import { useNoteEditor } from '@/application/services/useNoteEditor';

src/presentation/pages/NoteSettings.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
<Card
3737
v-if="parentNote"
3838
:title="parentNoteTitle"
39-
:subtitle="formatShortDate(parentNote.createdAt!)"
39+
:subtitle="getTimeFromNow(parentNote.createdAt!)"
4040
orientation="horizontal"
4141
>
4242
<Button
@@ -108,7 +108,7 @@ import Team from '@/presentation/components/team/Team.vue';
108108
import { Section, Row, Switch, Button, Heading, Fieldset, Input, Card } from 'codex-ui/vue';
109109
import ThreeColsLayout from '@/presentation/layouts/ThreeColsLayout.vue';
110110
import { getTitle } from '@/infrastructure/utils/note';
111-
import { formatShortDate } from '@/infrastructure/utils/date';
111+
import { getTimeFromNow } from '@/infrastructure/utils/date';
112112
import InviteLink from '@/presentation/components/noteSettings/InviteLink.vue';
113113
114114
const { t } = useI18n();

0 commit comments

Comments
 (0)