diff --git a/apps/mobile/src/constants/views.tsx b/apps/mobile/src/constants/views.tsx index 1ae73488b..a518dc001 100644 --- a/apps/mobile/src/constants/views.tsx +++ b/apps/mobile/src/constants/views.tsx @@ -2,22 +2,26 @@ import type { ViewDefinition as ViewDefinitionBase } from "@follow/constants" import { FeedViewType, views as viewsBase } from "@follow/constants" import { AnnouncementCuteFiIcon } from "../icons/announcement_cute_fi" +import { BubbleCuteFiIcon } from "../icons/bubble_cute_fi" import { MicCuteFiIcon } from "../icons/mic_cute_fi" import { PaperCuteFiIcon } from "../icons/paper_cute_fi" import { PicCuteFiIcon } from "../icons/pic_cute_fi" -import { TwitterCuteFiIcon } from "../icons/twitter_cute_fi" +import { ThoughtCuteFiIcon } from "../icons/thought_cute_fi" import { VideoCuteFiIcon } from "../icons/video_cute_fi" interface ViewDefinitionExtended { icon: React.FC<{ color?: string; height?: number; width?: number }> } -// @ts-expect-error FIXME + const extendMap: Record = { + [FeedViewType.All]: { + icon: BubbleCuteFiIcon, + }, [FeedViewType.Articles]: { icon: PaperCuteFiIcon, }, [FeedViewType.SocialMedia]: { - icon: TwitterCuteFiIcon, + icon: ThoughtCuteFiIcon, }, [FeedViewType.Pictures]: { icon: PicCuteFiIcon, @@ -35,10 +39,12 @@ const extendMap: Record = { export interface ViewDefinition extends Omit, ViewDefinitionExtended {} -export const views: ViewDefinition[] = viewsBase.map((view) => { - const extendedView = extendMap[view.view] - return { - ...view, - ...extendedView, - } -}) +export const views: ViewDefinition[] = viewsBase + .filter((view) => view.view !== FeedViewType.All) + .map((view) => { + const extendedView = extendMap[view.view] + return { + ...view, + ...extendedView, + } + }) diff --git a/apps/mobile/src/icons/bubble_cute_fi.tsx b/apps/mobile/src/icons/bubble_cute_fi.tsx new file mode 100644 index 000000000..06316bc58 --- /dev/null +++ b/apps/mobile/src/icons/bubble_cute_fi.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface BubbleCuteFiIconProps { + width?: number + height?: number + color?: string +} + +export const BubbleCuteFiIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: BubbleCuteFiIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/danmaku_cute_fi.tsx b/apps/mobile/src/icons/danmaku_cute_fi.tsx new file mode 100644 index 000000000..e440e2c0a --- /dev/null +++ b/apps/mobile/src/icons/danmaku_cute_fi.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface DanmakuCuteFiIconProps { + width?: number + height?: number + color?: string +} + +export const DanmakuCuteFiIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: DanmakuCuteFiIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/mail_cute_re.tsx b/apps/mobile/src/icons/mail_cute_re.tsx new file mode 100644 index 000000000..210599ea1 --- /dev/null +++ b/apps/mobile/src/icons/mail_cute_re.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface MailCuteReIconProps { + width?: number + height?: number + color?: string +} + +export const MailCuteReIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: MailCuteReIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/music_2_cute_fi.tsx b/apps/mobile/src/icons/music_2_cute_fi.tsx new file mode 100644 index 000000000..54a3b50f0 --- /dev/null +++ b/apps/mobile/src/icons/music_2_cute_fi.tsx @@ -0,0 +1,25 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface Music2CuteFiIconProps { + width?: number + height?: number + color?: string +} + +export const Music2CuteFiIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: Music2CuteFiIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/plugin_2_cute_re.tsx b/apps/mobile/src/icons/plugin_2_cute_re.tsx new file mode 100644 index 000000000..b65e2f522 --- /dev/null +++ b/apps/mobile/src/icons/plugin_2_cute_re.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface Plugin2CuteReIconProps { + width?: number + height?: number + color?: string +} + +export const Plugin2CuteReIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: Plugin2CuteReIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/thought_cute_fi.tsx b/apps/mobile/src/icons/thought_cute_fi.tsx new file mode 100644 index 000000000..29690e2f7 --- /dev/null +++ b/apps/mobile/src/icons/thought_cute_fi.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface ThoughtCuteFiIconProps { + width?: number + height?: number + color?: string +} + +export const ThoughtCuteFiIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: ThoughtCuteFiIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/tool_cute_re.tsx b/apps/mobile/src/icons/tool_cute_re.tsx new file mode 100644 index 000000000..ec0af7ebe --- /dev/null +++ b/apps/mobile/src/icons/tool_cute_re.tsx @@ -0,0 +1,24 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface ToolCuteReIconProps { + width?: number + height?: number + color?: string +} + +export const ToolCuteReIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: ToolCuteReIconProps) => { + return ( + + + + ) +} diff --git a/apps/mobile/src/icons/video_cute_re.tsx b/apps/mobile/src/icons/video_cute_re.tsx new file mode 100644 index 000000000..89c6e0887 --- /dev/null +++ b/apps/mobile/src/icons/video_cute_re.tsx @@ -0,0 +1,29 @@ +import * as React from "react" +import Svg, { Path } from "react-native-svg" + +interface VideoCuteReIconProps { + width?: number + height?: number + color?: string +} + +export const VideoCuteReIcon = ({ + width = 24, + height = 24, + color = "#10161F", +}: VideoCuteReIconProps) => { + return ( + + + + + ) +}