blob: 9f58d1bdae34364f5cb001fa03d5e476bf9d8709 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
/**
* SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
import axios from '@nextcloud/axios'
import { generateOcsUrl } from '@nextcloud/router'
interface Reminder {
dueDate: null | Date
}
export const getReminder = async (fileId: number): Promise<Reminder> => {
const url = generateOcsUrl('/apps/files_reminders/api/v1/{fileId}', { fileId })
const response = await axios.get(url)
const dueDate = response.data.ocs.data.dueDate ? new Date(response.data.ocs.data.dueDate) : null
return {
dueDate,
}
}
export const setReminder = async (fileId: number, dueDate: Date): Promise<[]> => {
const url = generateOcsUrl('/apps/files_reminders/api/v1/{fileId}', { fileId })
const response = await axios.put(url, {
dueDate: dueDate.toISOString(), // timezone of string is always UTC
})
return response.data.ocs.data
}
export const clearReminder = async (fileId: number): Promise<[]> => {
const url = generateOcsUrl('/apps/files_reminders/api/v1/{fileId}', { fileId })
const response = await axios.delete(url)
return response.data.ocs.data
}
|