From cecb50730271ecc5cadebab0085690b3b19725b4 Mon Sep 17 00:00:00 2001 From: Carl Schwan Date: Wed, 31 Aug 2022 22:15:37 +0200 Subject: Fix some issues and start cleaning up stuff Signed-off-by: Carl Schwan --- src/api.js | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/api.js (limited to 'src/api.js') diff --git a/src/api.js b/src/api.js new file mode 100644 index 000000000..b7a4e0df3 --- /dev/null +++ b/src/api.js @@ -0,0 +1,54 @@ +// SPDX-FileCopyrightText: 2022 Carl Schwan +// SPDX-Licence-Identifier: AGPL-3.0-or-later + +import axios from '@nextcloud/axios' +import { generateUrl } from '@nextcloud/router' + +export default { + folder: { + async create(name) { + const { data } = await axios.post(generateUrl('/apps/news/api/v2/folders'), { + name, + }) + return data.folders + }, + async update(folderId, name) { + await axios.patch(generateUrl('/apps/news/api/v2/folders/{folderId}', { + folderId, + name, + })) + }, + async delete(folderId) { + await axios.post(generateUrl('/apps/news/api/v2/folders/{folderId}', { + folderId, + })) + }, + async index() { + const { data } = await axios.post(generateUrl('/apps/news/api/v1-3/folders')) + return data.folders + }, + async read(folderId, newestItemId = 0) { + const { data } = await axios.post(generateUrl('/apps/news/api/v1-3/folders/{folderId}/read', { + folderId, + }, { + newestItemId, + })) + }, + }, + feed: { + async get() { + const { data } = await axios.get(generateUrl('/apps/news/feeds')) + return data.feeds + } + async add({ feedUrl, folderId }) { + let url = feedUrl.trim() + if (!url.startsWith('http')) { + url = 'https://' + url + } + const { data } = await axios.post(generateUrl('/apps/news/feeds'), { + folderId, + url, + }) + }, + }, +} -- cgit v1.2.3