diff --git a/src/components/timeline.jsx b/src/components/timeline.jsx
index 2addc741..e71c569e 100644
--- a/src/components/timeline.jsx
+++ b/src/components/timeline.jsx
@@ -461,6 +461,7 @@ function TimelineItem({
view,
}) {
const { id: statusID, reblog, items, type, _pinned } = status;
+ if (_pinned) useItemID = false;
const actualStatusID = reblog?.id || statusID;
const url = instance
? `/${instance}/s/${actualStatusID}`
@@ -496,11 +497,12 @@ function TimelineItem({
{items.map((item) => {
- const { id: statusID, reblog } = item;
+ const { id: statusID, reblog, _pinned } = item;
const actualStatusID = reblog?.id || statusID;
const url = instance
? `/${instance}/s/${actualStatusID}`
: `/s/${actualStatusID}`;
+ if (_pinned) useItemID = false;
return (
diff --git a/src/pages/account-statuses.jsx b/src/pages/account-statuses.jsx
index f7c61465..bd6c296a 100644
--- a/src/pages/account-statuses.jsx
+++ b/src/pages/account-statuses.jsx
@@ -152,16 +152,19 @@ function AccountStatuses() {
const results = [];
if (firstLoad) {
- const { value: pinnedStatuses } = await masto.v1.accounts
+ const { value } = await masto.v1.accounts
.$select(id)
.statuses.list({
pinned: true,
})
.next();
- if (pinnedStatuses?.length && !tagged && !media) {
- pinnedStatuses.forEach((status) => {
+ if (value?.length && !tagged && !media) {
+ const pinnedStatuses = value.map((status) => {
saveStatus(status, instance);
- status._pinned = true;
+ return {
+ ...status,
+ _pinned: true,
+ };
});
if (pinnedStatuses.length >= 3) {
const pinnedStatusesIds = pinnedStatuses.map((status) => status.id);