From 0a9f549bda3bd06bce5c7c5d164cceb9263688e6 Mon Sep 17 00:00:00 2001 From: sevichecc <91365763+Sevichecc@users.noreply.github.com> Date: Sun, 16 Apr 2023 22:49:32 +0800 Subject: [PATCH] feat: add view my status command --- src/bookmark.tsx | 6 +++--- src/my-status.tsx | 4 ++-- src/utils/api.ts | 2 +- src/utils/types.ts | 6 ++++++ src/utils/util.ts | 11 +++++++---- 5 files changed, 19 insertions(+), 10 deletions(-) diff --git a/src/bookmark.tsx b/src/bookmark.tsx index d5d7c0d..8b1e4be 100644 --- a/src/bookmark.tsx +++ b/src/bookmark.tsx @@ -19,7 +19,7 @@ export default function BookmarkCommand() { await authorize(); showToast(Toast.Style.Animated, "Loading bookmarks..."); const newBookmarks = await apiServer.fetchBookmarks(); - setBookmarks((prevBookmarks) => [...prevBookmarks, ...newBookmarks]); + setBookmarks((prevBookmarks) => [...prevBookmarks, ...newBookmarks]); showToast(Toast.Style.Success, "Bookmarked has been loaded"); cache.set("latest_bookmarks", JSON.stringify(newBookmarks)); } catch (error) { @@ -36,9 +36,9 @@ export default function BookmarkCommand() { {bookmarks?.map((bookmark) => ( } + detail={} actions={ diff --git a/src/my-status.tsx b/src/my-status.tsx index 0bac8da..a879c40 100644 --- a/src/my-status.tsx +++ b/src/my-status.tsx @@ -36,9 +36,9 @@ export default function ViewStatusCommand() { {status?.map((statu) => ( } + detail={} actions={ diff --git a/src/utils/api.ts b/src/utils/api.ts index a14fde8..acf5d02 100644 --- a/src/utils/api.ts +++ b/src/utils/api.ts @@ -21,7 +21,7 @@ const CONFIG = { tokenUrl: "/oauth/token", appUrl: "/api/v1/apps", statusesUrl: "/api/v1/statuses", - accountsUrl: "/api/v1/accounts", + accountsUrl: "/api/v1/accounts/", verifyCredentialsUrl: "/api/v1/accounts/verify_credentials", mediaUrl: "/api/v1/media/", bookmarkUrl: "/api/v1/bookmarks", diff --git a/src/utils/types.ts b/src/utils/types.ts index eaf30ef..c594f6f 100644 --- a/src/utils/types.ts +++ b/src/utils/types.ts @@ -64,6 +64,12 @@ export interface StatusRequest { export interface Status { created_at: Date; media_attachments: UploadAttachResponse[]; + akkoma: { + source: { + content: string; + mediaType: "text/markdown" | "text/plain" | "text/bbcode" | "text/html" | "x.misskeymarkdown"; + }; + }; account: { acct: string; }; diff --git a/src/utils/util.ts b/src/utils/util.ts index f1cf01c..7ff44ef 100644 --- a/src/utils/util.ts +++ b/src/utils/util.ts @@ -21,14 +21,17 @@ export const dateTimeFormatter = (time: Date, type: "short" | "long") => { }).format(time); }; -export const statusParser = ({ content, media_attachments, account, created_at }: Status) => { +export const statusParser = ( + { content, media_attachments, account, created_at }: Status, + type: "idAndDate" | "date" +) => { const images = media_attachments.filter((attachment) => attachment.type === "image"); const parsedImages = images.reduce((link, image) => link + `![${image.description}](${image.remote_url})`, ""); const date = new Date(created_at); const parsedTime = dateTimeFormatter(date, "short"); - if (account) return ` _@${account.acct} (${parsedTime})_ ` + nhm.translate("
" + content) + parsedImages; - - return parsedTime + nhm.translate("
" + content) + parsedImages; + return type === "idAndDate" + ? ` _@${account.acct} (${parsedTime})_ ` + nhm.translate("
" + content) + parsedImages + : `_${parsedTime}_` + nhm.translate("
" + content) + parsedImages; };