From 9b1061b81089beaebf3604edfbd792c998d79d08 Mon Sep 17 00:00:00 2001 From: DIYgod Date: Thu, 18 Sep 2025 21:21:47 +0800 Subject: [PATCH] feat: simplify all view --- .../AIEnhancedTimelineLayout.tsx | 2 +- .../modules/entry-column/Items/all-item.tsx | 104 ++++-------------- .../src/modules/entry-column/translation.tsx | 2 +- .../components/src/ui/datetime/index.tsx | 9 +- 4 files changed, 30 insertions(+), 87 deletions(-) diff --git a/apps/desktop/layer/renderer/src/modules/app-layout/ai-enhanced-timeline/AIEnhancedTimelineLayout.tsx b/apps/desktop/layer/renderer/src/modules/app-layout/ai-enhanced-timeline/AIEnhancedTimelineLayout.tsx index 80435eb3c..2ab04e8df 100644 --- a/apps/desktop/layer/renderer/src/modules/app-layout/ai-enhanced-timeline/AIEnhancedTimelineLayout.tsx +++ b/apps/desktop/layer/renderer/src/modules/app-layout/ai-enhanced-timeline/AIEnhancedTimelineLayout.tsx @@ -76,7 +76,7 @@ const AIEnhancedTimelineLayoutImpl = () => { ) const getHalfScreenWidth = useCallback( - () => clampWidth(typeof window !== "undefined" ? window.innerWidth * 0.4 : 800), + () => clampWidth(typeof window !== "undefined" ? window.innerWidth * 0.5 : 800), [clampWidth], ) diff --git a/apps/desktop/layer/renderer/src/modules/entry-column/Items/all-item.tsx b/apps/desktop/layer/renderer/src/modules/entry-column/Items/all-item.tsx index 5caa47db2..db112bc82 100644 --- a/apps/desktop/layer/renderer/src/modules/entry-column/Items/all-item.tsx +++ b/apps/desktop/layer/renderer/src/modules/entry-column/Items/all-item.tsx @@ -20,9 +20,7 @@ import { titleCase } from "title-case" import { AudioPlayer, useAudioPlayerAtomSelector } from "~/atoms/player" import { useGeneralSettingKey } from "~/atoms/settings/general" -import { useUISettingKey } from "~/atoms/settings/ui" import { RelativeTime } from "~/components/ui/datetime" -import { Media } from "~/components/ui/media/Media" import { FEED_COLLECTION_LIST } from "~/constants" import { useEntryIsRead } from "~/hooks/biz/useAsRead" import { useRouteParamsSelector } from "~/hooks/biz/useRouteParams" @@ -35,7 +33,6 @@ import { getPreferredTitle } from "~/store/feed/hooks" import { StarIcon } from "../star-icon" import { readableContentMaxWidth } from "../styles" import type { EntryItemStatelessProps, UniversalItemProps } from "../types" -import { MediaGallery } from "./media-gallery" const ViewTag = IN_ELECTRON ? "webview" : "iframe" @@ -52,7 +49,6 @@ const entrySelector = (state: EntryModel) => { }) const firstAudio = audios?.[0] const media = state.media || [] - const firstMedia = media?.[0] const photo = media.find((a) => a.type === "photo") const firstPhotoUrl = photo?.url const iconEntry: FeedIconEntry = { firstPhotoUrl, authorAvatar } @@ -63,7 +59,6 @@ const entrySelector = (state: EntryModel) => { description, feedId, firstAudio, - firstMedia, iconEntry, inboxId: inboxHandle, publishedAt, @@ -98,9 +93,6 @@ export function AllItem({ entryId, translation, currentFeedTitle }: UniversalIte const inbox = useInboxById(entry?.inboxId) - const thumbnailRatio = useUISettingKey("thumbnailRatio") - const rid = `list-item-${entryId}` - const bilingual = useGeneralSettingKey("translationMode") === "bilingual" const lineClamp = useMemo(() => { const envIsSafari = isSafari() @@ -136,70 +128,20 @@ export function AllItem({ entryId, translation, currentFeedTitle }: UniversalIte return (
{currentFeedTitle !== thisFeedTitle && ( -
- -
- - - -
-
+ )} -
- {entry.firstMedia && ( - - - - - - - -
- -
-
-
-
-
- )} +
{entry.firstAudio && } {entry.video && }
{entry?.title ? ( ) : ( {!!isInCollection && }
- {!simple && ( -
- -
- )} +
+ +
- {!!displayTime && } + {!!displayTime && }
) @@ -314,7 +252,7 @@ function AudioIcon({ entryId, src }: { entryId: string; src: string }) { } return ( -
+
- + diff --git a/apps/desktop/layer/renderer/src/modules/entry-column/translation.tsx b/apps/desktop/layer/renderer/src/modules/entry-column/translation.tsx index 57889a7af..4d63e9b64 100644 --- a/apps/desktop/layer/renderer/src/modules/entry-column/translation.tsx +++ b/apps/desktop/layer/renderer/src/modules/entry-column/translation.tsx @@ -51,7 +51,7 @@ export const EntryTranslation: Component<{ {nextTarget && inline && ( <> {nextTarget} - + )} {source} diff --git a/packages/internal/components/src/ui/datetime/index.tsx b/packages/internal/components/src/ui/datetime/index.tsx index 2a8478582..a01f56e6d 100644 --- a/packages/internal/components/src/ui/datetime/index.tsx +++ b/packages/internal/components/src/ui/datetime/index.tsx @@ -24,6 +24,7 @@ export const RelativeTime: FC<{ date: string | Date displayAbsoluteTimeAfterDay?: number dateFormatTemplate?: string + compact?: boolean }> = (props) => { const { displayAbsoluteTimeAfterDay = 29, dateFormatTemplate = formatTemplateString } = props const nextDateFormatTemplate = @@ -63,8 +64,12 @@ export const RelativeTime: FC<{ {/* https://github.com/radix-ui/primitives/issues/2248#issuecomment-2147056904 */} {relative} - {t("space")} - {t("words.ago")} + {!props.compact && ( + <> + {t("space")} + {t("words.ago")} + + )}