feat: remove date-fns formatISO (#2899)
Co-authored-by: Dominik Pschenitschni <mail@celement.de> Reviewed-on: https://kolaente.dev/vikunja/frontend/pulls/2899 Co-authored-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de> Co-committed-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
This commit is contained in:
parent
c97ed67f50
commit
1f25386f54
@ -1,5 +1,5 @@
|
|||||||
import {createDateFromString} from '@/helpers/time/createDateFromString'
|
import {createDateFromString} from '@/helpers/time/createDateFromString'
|
||||||
import {format, formatDistanceToNow, formatISO as formatISOfns} from 'date-fns'
|
import {format, formatDistanceToNow} from 'date-fns'
|
||||||
|
|
||||||
// FIXME: support all locales and load dynamically
|
// FIXME: support all locales and load dynamically
|
||||||
import {enGB, de, fr, ru} from 'date-fns/locale'
|
import {enGB, de, fr, ru} from 'date-fns/locale'
|
||||||
@ -50,7 +50,7 @@ export const formatDateSince = (date) => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function formatISO(date) {
|
export function formatISO(date) {
|
||||||
return date ? formatISOfns(date) : ''
|
return date ? new Date(date).toISOString() : ''
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1,5 +1,3 @@
|
|||||||
import {formatISO} from 'date-fns'
|
|
||||||
|
|
||||||
import AbstractService from './abstractService'
|
import AbstractService from './abstractService'
|
||||||
import AttachmentModel from '../models/attachment'
|
import AttachmentModel from '../models/attachment'
|
||||||
|
|
||||||
@ -19,7 +17,7 @@ export default class AttachmentService extends AbstractService<IAttachment> {
|
|||||||
processModel(model: IAttachment) {
|
processModel(model: IAttachment) {
|
||||||
return {
|
return {
|
||||||
...model,
|
...model,
|
||||||
created: formatISO(new Date(model.created)),
|
created: new Date(model.created).toISOString(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import AbstractService from './abstractService'
|
import AbstractService from './abstractService'
|
||||||
import LabelModel from '@/models/label'
|
import LabelModel from '@/models/label'
|
||||||
import type {ILabel} from '@/modelTypes/ILabel'
|
import type {ILabel} from '@/modelTypes/ILabel'
|
||||||
import {formatISO} from 'date-fns'
|
|
||||||
import {colorFromHex} from '@/helpers/color/colorFromHex'
|
import {colorFromHex} from '@/helpers/color/colorFromHex'
|
||||||
|
|
||||||
export default class LabelService extends AbstractService<ILabel> {
|
export default class LabelService extends AbstractService<ILabel> {
|
||||||
@ -16,8 +15,8 @@ export default class LabelService extends AbstractService<ILabel> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
processModel(label) {
|
processModel(label) {
|
||||||
label.created = formatISO(new Date(label.created))
|
label.created = new Date(label.created).toISOString()
|
||||||
label.updated = formatISO(new Date(label.updated))
|
label.updated = new Date(label.updated).toISOString()
|
||||||
label.hexColor = colorFromHex(label.hexColor)
|
label.hexColor = colorFromHex(label.hexColor)
|
||||||
return label
|
return label
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,4 @@
|
|||||||
import AbstractService from '@/services/abstractService'
|
import AbstractService from '@/services/abstractService'
|
||||||
import {formatISO} from 'date-fns'
|
|
||||||
import NotificationModel from '@/models/notification'
|
import NotificationModel from '@/models/notification'
|
||||||
import type {INotification} from '@/modelTypes/INotification'
|
import type {INotification} from '@/modelTypes/INotification'
|
||||||
|
|
||||||
@ -16,8 +15,8 @@ export default class NotificationService extends AbstractService<INotification>
|
|||||||
}
|
}
|
||||||
|
|
||||||
beforeUpdate(model) {
|
beforeUpdate(model) {
|
||||||
model.created = formatISO(new Date(model.created))
|
model.created = new Date(model.created).toISOString()
|
||||||
model.readAt = formatISO(new Date(model.readAt))
|
model.readAt = new Date(model.readAt).toISOString()
|
||||||
return model
|
return model
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -4,13 +4,12 @@ import type {ITask} from '@/modelTypes/ITask'
|
|||||||
import AttachmentService from './attachment'
|
import AttachmentService from './attachment'
|
||||||
import LabelService from './label'
|
import LabelService from './label'
|
||||||
|
|
||||||
import {formatISO} from 'date-fns'
|
|
||||||
import {colorFromHex} from '@/helpers/color/colorFromHex'
|
import {colorFromHex} from '@/helpers/color/colorFromHex'
|
||||||
import {SECONDS_A_DAY, SECONDS_A_HOUR, SECONDS_A_WEEK, SECONDS_A_MONTH, SECONDS_A_YEAR} from '@/constants/date'
|
import {SECONDS_A_DAY, SECONDS_A_HOUR, SECONDS_A_WEEK, SECONDS_A_MONTH, SECONDS_A_YEAR} from '@/constants/date'
|
||||||
|
|
||||||
const parseDate = date => {
|
const parseDate = date => {
|
||||||
if (date) {
|
if (date) {
|
||||||
return formatISO(new Date(date))
|
return new Date(date).toISOString()
|
||||||
}
|
}
|
||||||
|
|
||||||
return null
|
return null
|
||||||
@ -52,8 +51,8 @@ export default class TaskService extends AbstractService<ITask> {
|
|||||||
model.startDate = parseDate(model.startDate)
|
model.startDate = parseDate(model.startDate)
|
||||||
model.endDate = parseDate(model.endDate)
|
model.endDate = parseDate(model.endDate)
|
||||||
model.doneAt = parseDate(model.doneAt)
|
model.doneAt = parseDate(model.doneAt)
|
||||||
model.created = formatISO(new Date(model.created))
|
model.created = new Date(model.created).toISOString()
|
||||||
model.updated = formatISO(new Date(model.updated))
|
model.updated = new Date(model.updated).toISOString()
|
||||||
|
|
||||||
// remove all nulls, these would create empty reminders
|
// remove all nulls, these would create empty reminders
|
||||||
for (const index in model.reminderDates) {
|
for (const index in model.reminderDates) {
|
||||||
@ -65,7 +64,7 @@ export default class TaskService extends AbstractService<ITask> {
|
|||||||
// Make normal timestamps from js dates
|
// Make normal timestamps from js dates
|
||||||
if (model.reminderDates.length > 0) {
|
if (model.reminderDates.length > 0) {
|
||||||
model.reminderDates = model.reminderDates.map(r => {
|
model.reminderDates = model.reminderDates.map(r => {
|
||||||
return formatISO(new Date(r))
|
return new Date(r).toISOString()
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
import {computed, ref} from 'vue'
|
import {computed, ref} from 'vue'
|
||||||
import {acceptHMRUpdate, defineStore} from 'pinia'
|
import {acceptHMRUpdate, defineStore} from 'pinia'
|
||||||
import router from '@/router'
|
import router from '@/router'
|
||||||
import {formatISO} from 'date-fns'
|
|
||||||
|
|
||||||
import TaskService from '@/services/task'
|
import TaskService from '@/services/task'
|
||||||
import TaskAssigneeService from '@/services/taskAssignee'
|
import TaskAssigneeService from '@/services/taskAssignee'
|
||||||
@ -392,7 +391,7 @@ export const useTaskStore = defineStore('task', () => {
|
|||||||
const assignees = await findAssignees(parsedTask.assignees)
|
const assignees = await findAssignees(parsedTask.assignees)
|
||||||
|
|
||||||
// I don't know why, but it all goes up in flames when I just pass in the date normally.
|
// I don't know why, but it all goes up in flames when I just pass in the date normally.
|
||||||
const dueDate = parsedTask.date !== null ? formatISO(parsedTask.date) : null
|
const dueDate = parsedTask.date !== null ? new Date(parsedTask.date).toISOString() : null
|
||||||
|
|
||||||
const task = new TaskModel({
|
const task = new TaskModel({
|
||||||
title: parsedTask.text,
|
title: parsedTask.text,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user