diff --git a/apps/readest-app/src/app/reader/components/sidebar/BookMenu.tsx b/apps/readest-app/src/app/reader/components/sidebar/BookMenu.tsx index 9a2c6f3b..b26de7b2 100644 --- a/apps/readest-app/src/app/reader/components/sidebar/BookMenu.tsx +++ b/apps/readest-app/src/app/reader/components/sidebar/BookMenu.tsx @@ -3,8 +3,10 @@ import Image from 'next/image'; import MenuItem from '@/components/MenuItem'; import { setAboutDialogVisible } from '@/components/AboutWindow'; -import useBooksManager from '../../hooks/useBooksManager'; import { useLibraryStore } from '@/store/libraryStore'; +import { isWebAppPlatform } from '@/services/environment'; +import { DOWNLOAD_READEST_URL } from '@/services/constants'; +import useBooksManager from '../../hooks/useBooksManager'; interface BookMenuProps { setIsDropdownOpen?: (isOpen: boolean) => void; @@ -25,6 +27,12 @@ const BookMenu: React.FC = ({ setIsDropdownOpen }) => { setAboutDialogVisible(true); setIsDropdownOpen?.(false); }; + const downloadReadest = () => { + window.open(DOWNLOAD_READEST_URL, '_blank'); + setIsDropdownOpen?.(false); + }; + + const isWebApp = isWebAppPlatform(); return (
= ({ setIsDropdownOpen }) => {
+ {isWebApp && }
); diff --git a/apps/readest-app/src/services/constants.ts b/apps/readest-app/src/services/constants.ts index 0f95748d..1d84ffca 100644 --- a/apps/readest-app/src/services/constants.ts +++ b/apps/readest-app/src/services/constants.ts @@ -80,3 +80,5 @@ export const MONOSPACE_FONTS = ['Fira Code', 'Lucida Console', 'Consolas', 'Cour export const ONE_COLUMN_MAX_INLINE_SIZE = 9999; export const BOOK_IDS_SEPARATOR = '+'; + +export const DOWNLOAD_READEST_URL = 'https://readest.com?utm_source=readest_web';