Commit Graph

72 Commits

Author SHA1 Message Date
DIYgod 7ece0b3fd0 fix: update getUrlIcon to use the new icon service URL 2026-01-18 15:33:24 +08:00
Claude 11a0bd7337 fix: correct IMAGE_PROXY_URL to use the proper endpoint 2026-01-17 12:46:08 +08:00
DIYgod c9b0e65182 Revert "fix(headers): set app origin for OPTIONS requests"
This reverts commit dbff42baca.
2025-12-24 16:22:31 +08:00
DIYgod dbff42baca fix(headers): set app origin for OPTIONS requests 2025-12-24 12:18:38 +08:00
Innei 0e441f6075 feat: add attribution tracking for analytics
- Introduced attribution tracking by capturing UTM parameters from the URL.
- Implemented functions to save and retrieve attribution data from local storage.
- Enhanced analytics initialization to include attribution data as user properties.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-25 01:37:28 +08:00
Stephen Zhou 2d0fa19e14 feat: read secure image setting from server 2025-11-20 17:09:15 +08:00
Stephen Zhou 11aa71a682 fix: allow image proxy for basic and anonymous user 2025-11-20 15:32:45 +08:00
Stephen Zhou f207cc328d feat: secure image proxy in plan 2025-11-19 21:54:29 +08:00
Stephen Zhou 3130eb0c2b fix: support youtube short link in transform 2025-11-18 16:15:04 +08:00
Innei 520ea60f2a fix(ai): detect resume tip after consume chat
- Introduced ChatBottomPanel component to manage chat input, shortcuts, and rate limit notices.
- Refactored ChatInterface to utilize ChatBottomPanel, enhancing the structure and readability of the chat layout.
- Created ChatMessageContainer to handle message display and scrolling behavior, improving user experience.
- Added ScrollToBottomButton for easier navigation in long chat histories.
- Consolidated message rendering logic into a new Messages component for better maintainability.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-07 16:59:40 +08:00
DIYgod 68fb09eb03 chore: update dependencies (#4667)
* chore: update dependencies

* Implement code changes to enhance functionality and improve performance
2025-11-06 21:09:46 +08:00
Konv Suu 13bc195ff1 feat: add language params to video url (#4610) 2025-10-26 09:21:33 +08:00
DIYgod f40170e9ac fix: electron dev 2025-10-22 15:10:08 +08:00
DIYgod 7507270b39 chore: update dependencies 2025-10-21 16:33:03 +08:00
Stephen Zhou 8c9784202c refactor: move checkLanguage to utils 2025-10-10 15:23:42 +08:00
Stephen Zhou 78816d5b4a chore: fix type 2025-09-26 16:34:17 +08:00
Innei a2eb94528d fix(ai): auto track scrolling
- Replaced manual checks for editable elements in global shortcuts with a utility function `detectIsEditableElement` for cleaner code and better maintainability.
- Updated `AIChatRoot` to use `LexicalRichEditorRef` for the input reference, enhancing type safety and consistency in the chat input handling.
- Integrated `AIPanelRefsContext` in `ChatInput` and `ChatInterfaceContent` to streamline access to the input reference across components.
- Removed the deprecated `animatedPlugin` file to clean up unused code.

These changes aim to enhance the overall structure and functionality of the AI chat interface, improving user experience and code maintainability.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-23 22:43:54 +08:00
Innei 866abbef20 feat(sentry): integrate Sentry for error tracking and monitoring
- Added Sentry for error reporting in the mobile application.
- Updated the app configuration to initialize Sentry with the necessary DSN and settings.
- Replaced Firebase Crashlytics with Sentry for error capturing in the ErrorBoundary component.
- Updated various workflows to include Sentry authentication token.
- Adjusted dependencies to use React Native version 0.79.6 and updated related packages.

This integration enhances the application's ability to track and manage errors effectively.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-22 23:12:11 +08:00
Stephen Zhou a4baa19abe chore: downgrade linkedom 2025-09-19 23:09:44 +08:00
Innei 792134d9ae chore: update dependencies across multiple packages for improved stability and performance
- Upgraded various dependencies in package.json files, including @electron-forge, @sentry/react, and @better-auth.
- Updated devDependencies and fixed version mismatches in internal components and utilities.
- Enhanced settings sync queue to spread object properties for better payload handling.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-19 22:02:30 +08:00
Innei d4b1333617 refactor: migrate to client sdk (#4480)
* init

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: migrate API calls to followClient for improved consistency

- Replaced instances of apiClient with followClient in various modules, including push notifications, analytics, achievements, and wallet management.
- Updated related functions to ensure compatibility with the new API structure.
- This refactor enhances code maintainability and aligns with the new client architecture.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: update API calls to followClient for consistency

- Replaced instances of apiClient with followClient across various modules, including metadata, entries, feeds, lists, and inbox management.
- Adjusted related functions to align with the new API structure, enhancing maintainability and consistency throughout the codebase.

These changes improve the overall architecture by standardizing API interactions.

Signed-off-by: Innei <tukon479@gmail.com>

* update

* chore: update dependencies and improve profile settings

- Bumped versions of `@better-auth/expo`, `better-auth`, and `@better-auth/stripe` to 1.3.9 for enhanced functionality.
- Updated `@follow-app/client-sdk` reference in internal shared package.
- Added new fields (`bio`, `website`, `socialLinks`) to the profile settings form and adjusted related types for better user data handling.
- Minor adjustments in user store to accommodate new social links data structure.

These changes improve the profile management experience and ensure compatibility with updated dependencies.

Signed-off-by: Innei <tukon479@gmail.com>

* ssr done

* fix type error for action

* chore: update @follow-app/client-sdk to version 0.3.58 and refactor related code

- Updated the version of `@follow-app/client-sdk` to 0.3.58 in `pnpm-lock.yaml` and `pnpm-workspace.yaml`.
- Refactored various components and modules to utilize the updated SDK, including changes in type imports and API calls.
- Removed deprecated `api-fetch` module and replaced it with `followClient` for API interactions.
- Enhanced type safety and consistency across the application by adjusting type definitions and ensuring proper data handling.

These updates improve the overall code quality and maintainability while ensuring compatibility with the latest SDK features.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: remove hono

Signed-off-by: Innei <tukon479@gmail.com>

* fix action type for mobile

* fix(mobile): exclude all view type

* fix(mobile): exclude all for views

* fix(mobile): html render not work

* feat(mobile): auto show source content support

* fix(mobile): show source content action

* feat: more stable switching timeline back to top

* refactor: simplify entry actions handling and improve context menu integration

- Removed the 'compact' parameter from several components to streamline the entry actions logic.
- Updated the CommandActionButton usage in ActionBar for better context menu interaction.
- Enhanced the ActionBar component to handle mouse position for context menu display.
- Cleaned up imports and adjusted related components to reflect the changes in props and structure.

These modifications aim to improve code clarity and maintainability while ensuring consistent functionality across entry actions.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: streamline ChatInput key handling logic

- Simplified the Enter key handling in the ChatInput component by removing unnecessary conditions.
- Ensured that the handleSend function is called directly when the Enter key is pressed, improving code clarity.

These changes enhance the readability and maintainability of the ChatInput component.

Signed-off-by: Innei <tukon479@gmail.com>

* fix: breadcrumb return back prev page logic

- Updated the logic in useNavigateEntry to ensure the final view is determined correctly based on the type of the view parameter.
- Refactored the EntryTitle component to simplify the rendering of recent readers, improving readability and maintainability.
- Adjusted the EntryHeaderBreadcrumb to pass the view parameter during navigation, enhancing functionality.

These changes aim to improve code clarity and ensure consistent behavior across navigation and entry display components.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: enhance navigation by integrating view parameter retrieval

- Updated EntryColumnShortcutHandler to utilize getRouteParams for retrieving the view parameter during navigation.
- Ensured that the view parameter is passed correctly when navigating to the next entry, improving the consistency of navigation behavior.

These changes aim to enhance the clarity and functionality of the entry column navigation logic.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: enhance modal styling and structure

- Updated modal component styles for improved visual consistency, including changes to border radius, padding, and text styles.
- Adjusted shadow properties in the Tailwind CSS configuration for better appearance in both light and dark themes.
- Refined layout and spacing within the modal to enhance user experience.

These changes aim to improve the overall aesthetics and usability of the modal component.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: enhance entry actions handling and toolbar integration

- Updated the HIDE_ACTIONS_IN_ENTRY_CONTEXT_MENU to explicitly define its type for better type safety.
- Introduced HIDE_ACTIONS_IN_ENTRY_TOOLBAR_ACTIONS to consolidate hidden actions for the toolbar.
- Refactored ActionBar to utilize useSortedEntryActions for improved action filtering and rendering.

These changes aim to streamline the entry actions logic and improve the maintainability of the ActionBar component.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: remove zen and wider mode

Signed-off-by: Innei <tukon479@gmail.com>

* feat: enhance subscription column functionality

- Introduced new components for managing subscription entries, including EntrySubscriptionItem and EntrySubscriptionList, to improve the display and interaction within the subscription column.
- Added hooks for handling entry visibility and data fetching, optimizing performance and user experience.
- Implemented a toolbar for toggling the visibility of the entry list, enhancing user control over the interface.
- Refactored sidebar atoms to support new subscription-related states and actions.

These changes aim to provide a more robust and user-friendly experience in managing subscriptions within the application.

Signed-off-by: Innei <tukon479@gmail.com>

* feat: integrate EntriesContext for improved subscription management

- Added EntriesProvider and context to manage subscription entries more effectively across components.
- Refactored EntrySubscriptionList and related components to utilize the new context for data fetching and state management.
- Introduced EntrySubscriptionSkeleton for better loading states in the subscription column.
- Removed the outdated useEntrySubscriptionData hook to streamline data handling.

These changes enhance the overall architecture and performance of the subscription column, providing a more cohesive user experience.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: fix lock

* fix: remove duplicated feed id, improve performance

* feat: back to feed first

* feat: replace MediaGallery with inline media rendering in SocialMediaLayout

* release(mobile): release v0.2.8

* chore(mobile): update build ID increment script and configuration

- Added a force flag to the build ID increment script to allow manual increments regardless of branch or staged changes.
- Updated iOS build version in Info.plist from 134 to 135.
- Removed unused changelog CLI configuration file.
- Modified bump.config.ts to disable tagging for mobile releases.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: adjust AI chat sidebar and error handling styles

- Added keyboard shortcut support for toggling AI chat in AISmartSidebar.
- Improved styling and transition effects in CollapsibleError for better user experience.
- Updated EntryReadHistory to conditionally render based on user visibility.
- Refactored SourceContentView to simplify rendering logic and improve performance.
- Enhanced Kbd component to support abbreviations for better accessibility.

These changes aim to improve the functionality and usability of the AI chat features and related components.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: implement comprehensive app layout architecture

- Introduced a new layout architecture for the Follow application, leveraging React Router v7's nested routing capabilities.
- Added multiple layout components including MainDestopLayout, TimelineEntryTwoColumnLayout, AIEnhancedTimelineLayout, and SubviewLayout to support various application modes.
- Enhanced the AI chat functionality with a dedicated AIChatLayout, allowing for dynamic panel styles based on user preferences.
- Implemented responsive design features and error handling mechanisms across layouts to improve user experience.
- Refactored existing components to utilize the new layout structure, ensuring a cohesive and maintainable codebase.

These changes establish a robust foundation for the application's UI, enhancing flexibility and user interaction.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: update bump configuration for PR creation

- Changed the base branch for the GitHub PR creation command from 'main' to 'mobile-main' to align with the new branching strategy.
- Removed the changelog generation script from package.json to streamline the build process.

These updates ensure proper versioning and integration with the new mobile branch structure.

Signed-off-by: Innei <tukon479@gmail.com>

* feat: implement entry context menu functionality

- Added a new hook, useEntryContextMenu, to manage context menu actions for entry items, including copy functionality.
- Integrated the context menu into EntrySubscriptionItem and EntryItemWrapper components, enhancing user interaction with entry items.
- Streamlined context menu handling by consolidating related logic into the new hook, improving code maintainability.

These changes provide a more intuitive context menu experience for users interacting with entries.

Signed-off-by: Innei <tukon479@gmail.com>

* feat: enhance media preview functionality with drag context

- Introduced a new context for managing drag state in the media preview component, allowing for improved user interaction during image dragging.
- Updated the image viewer to handle click events more effectively, considering drag state and timing to prevent unintended dismissals.
- Refactored the modal component to ensure the title is correctly rendered, enhancing accessibility.

These changes improve the overall user experience when interacting with media previews, making the interface more intuitive and responsive.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: update client SDK version and dependencies

- Bumped the version of '@follow-app/client-sdk' from 0.3.59 to 0.3.60 in both pnpm-lock.yaml and pnpm-workspace.yaml.
- Updated dependencies for '@folo-services/drizzle' from 0.1.26 to 0.1.27, and '@folo-services/shared' from 0.0.24 to 0.0.25, ensuring compatibility with the latest changes.
- Adjusted Vite configuration to use 'join' instead of 'resolve' for path handling, enhancing code clarity and consistency.
- Removed an unused import in VideoPlayer component to streamline the code.

These updates improve dependency management and maintain code quality across the project.

Signed-off-by: Innei <tukon479@gmail.com>

* fix: interceptor

* chore: update client SDK version to 0.3.64

- Bumped the version of '@follow-app/client-sdk' from 0.3.63 to 0.3.64 in pnpm-lock.yaml and pnpm-workspace.yaml.
- Adjusted component styles in the header for improved layout consistency.
- Refactored user ID handling in metadata fetching to enhance error handling and clarity.
- Updated API client fetch method to use the native fetch function for better compatibility.
- Added User-Agent header in SSR API headers for improved request handling.

These changes ensure the application is up-to-date with the latest SDK version and improve overall code quality and user experience.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: update client SDK path in pnpm configuration

- Changed the '@follow-app/client-sdk' entry in pnpm-lock.yaml and pnpm-workspace.yaml from version 0.3.64 to a local path for development purposes.
- Refactored the fetchEntryContentByStream method in store.ts to simplify its parameters and improve API call handling.

These updates facilitate local development and enhance code clarity in the entry synchronization service.

Signed-off-by: Innei <tukon479@gmail.com>

* chore: remove hono

Signed-off-by: Innei <tukon479@gmail.com>

* chore: update better-auth and expo dependencies to version 1.3.11

- Updated '@better-auth/expo' and 'better-auth' to version 1.3.11 in mobile and shared packages.
- Updated '@better-auth/stripe' to version 1.3.11 in shared package.
- Adjusted peer dependencies for better-auth to reflect the new version.

This update ensures compatibility with the latest features and fixes in the better-auth library.

Signed-off-by: Innei <tukon479@gmail.com>

* refactor: update auth module imports and clean up code

- Changed import path for AuthPlugins from '@follow-app/client-sdk' to '@follow-app/client-sdk/auth'.
- Removed commented-out socialLinks field from the baseAuthPlugins definition for clarity.
- Added a new line for better code readability.

These changes improve the organization and maintainability of the auth module.

Signed-off-by: Innei <tukon479@gmail.com>

* fix: restore socialLinks field in baseAuthPlugins definition

- Reintroduced the socialLinks field in the baseAuthPlugins configuration, allowing for JSON type input.
- This change enhances the flexibility of the authentication module by enabling social link integration.

Signed-off-by: Innei <tukon479@gmail.com>

* feat: enhance API client and entry list hooks

- Added a request interceptor to the FollowClient to append a timestamp to the URL for cache-busting.
- Simplified the fetch call in the entry list hooks by removing unnecessary parameters, improving code clarity.
- Added a new line in the entry sync services to enhance readability.

These changes improve the functionality and maintainability of the API client and entry list hooks.

Signed-off-by: Innei <tukon479@gmail.com>

* fix: add missing type error suppression for authClientContext

- Added a TypeScript error suppression comment for the authClientContext.provide call to prevent type-checking issues.
- This change ensures smoother integration of the authentication client in the application.

Signed-off-by: Innei <tukon479@gmail.com>

* fix lint

Signed-off-by: Innei <tukon479@gmail.com>

* lint

Signed-off-by: Innei <tukon479@gmail.com>

---------

Signed-off-by: Innei <tukon479@gmail.com>
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com>
Co-authored-by: DIYgod <i@diygod.me>
2025-09-17 00:12:54 +08:00
Whitewater 1e2835faed chore: update dependencies to latest versions (#4490)
* chore: update deps

* chore: update camelcase-keys to version 10.0.0

* chore: update electron-context-menu to version 4.1.1 and remove associated patch

* fix: ts lock

* fix: downgrade linkedom to version 0.18.11

Related to  https://github.com/WebReflection/linkedom/issues/249
2025-09-16 12:49:29 +00:00
Whitewater cde799da4e chore: update dependencies (#4488)
* chore: update deps

* chore: remove immer patch

* chore: revert @sentry/electron upgrade

* chore: update deps

* chore: dedupe
2025-09-16 19:19:52 +08:00
DIYgod 1870bd11e1 feat: implement getAvatarUrl utility for user avatars
- Added getAvatarUrl function to handle user avatar retrieval, including fallback logic for missing images.
- Updated EntryUser and UserProfileModalContent components to utilize the new getAvatarUrl function for improved avatar handling.

These changes enhance the user experience by ensuring consistent avatar display across the application.
2025-09-10 20:35:24 +08:00
Innei b07e2de01e fix: entry meta no title in breadcrumb and catch not found error
- Introduced a new higher-order component, withAppErrorBoundary, to wrap components with error boundary functionality.
- Created EntryNotFoundErrorFallback component to display a user-friendly message when an entry is not found.
- Updated error handling in EntryContent to utilize the new EntryNotFound error type.
- Added EntryContentFallback component to manage entry prefetching and loading states, enhancing user experience during data retrieval.

These changes improve error management and user feedback for entry-related issues.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-09 19:22:51 +08:00
Innei 79bf7a86e5 feat(ai): update ai-tools and optimize chat message components animation
- Bumped version of `@folo-services/ai-tools` from 0.2.31 to 0.2.33 in package.json and pnpm-lock.yaml.
- Refactored `AIDisplayFlowPart` to improve error handling and compatibility with older data structures.
- Enhanced `AIChatMessage` and `AIMessageParts` components to support new props for better message rendering.
- Updated animation styles for chat messages to improve user experience during interactions.

This update improves the overall functionality and visual appeal of the AI chat interface.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-02 00:09:42 +08:00
Innei b55753918d feat: optimize ai entry content layout and re-structure store files
Signed-off-by: Innei <tukon479@gmail.com>
2025-08-13 18:42:41 +08:00
Stephen Zhou 649f623e7d fix(desktop): prefetch entry detail for entry not exist 2025-08-13 15:15:55 +08:00
Innei ab537447e8 feat(ai): implement fixed and floating chat panel styles
- Introduced a new enum for AI chat panel styles, allowing users to toggle between fixed and floating layouts.
- Added state management for the floating panel dimensions and position, ensuring it remains anchored during window resizing.
- Updated various components to utilize the new panel style settings, enhancing the user experience with improved layout flexibility.
- Implemented UI elements for toggling between fixed and floating modes in the chat interface.

These changes collectively enhance the functionality and usability of the AI chat interface, providing users with more control over their layout preferences.

Signed-off-by: Innei <tukon479@gmail.com>
2025-08-12 01:27:57 +08:00
Innei dc8ce1f902 fix(ai): edit previous message parse in rich editor
- Integrated ScrollArea for better message editing experience in the EditableMessage component.
- Updated initial editor state handling to streamline the setup process.
- Added MentionPlugin to support mentions within the editor, enhancing user interaction.
- Refactored LexicalRichEditor to utilize EditorRefPlugin for improved editor reference management.

These changes improve the usability and functionality of the message editing interface in the AI chat application.

Signed-off-by: Innei <tukon479@gmail.com>
2025-08-06 00:00:38 +08:00
Whitewater 244aca2ad6 feat: implement audio seeking functionality (#4295)
* refactor: move timeStringToSeconds to utility function

* feat: add seekAudio functionality to bridge and implement timestamp handling in MarkdownLink

* feat: implement audio seeking functionality in EntryContentWebView

* feat: implement audio seeking functionality for iOS

* chore: clean code

* fix: audio seeking functionality for iOS
2025-08-01 23:43:30 +08:00
Innei cf47ef442f feat(ai): listen for user text selection add to ai block
- Added text selection capabilities to ShadowDOM, allowing for text selection events to be captured and handled.
- Introduced a new utility for managing text selection within ShadowDOM.
- Updated ArticleLayout to support text selection events and integrate with AI chat block actions.
- Refactored EntryContent components to improve error handling and streamline entry updates.
- Implemented a new AIEntryLayout for better integration of AI chat features within entry content.

Signed-off-by: Innei <tukon479@gmail.com>
2025-08-01 21:30:30 +08:00
DIYgod 341fd63bf5 fix(desktop): microsoft store build check
- Introduce MICROSOFT_STORE_BUILD constant to determine if the app is running from the Microsoft Store
- Update appUpdaterConfig to conditionally enable core updates based on the new constant
- Modify header creation logic to use MICROSOFT_STORE_BUILD for Windows platform detection

This change enhances the application's compatibility with Microsoft Store by ensuring proper update handling and header configuration.
2025-07-16 18:11:36 +08:00
DIYgod 093e47cb0a feat: add fetch cache no-store and header cache-control no-store 2025-07-11 18:19:08 +08:00
Innei dc6bf7cb09 chore: update dependencies across multiple packages
- Bump various dependencies in package.json files, including updates to eslint, prettier, vite, and react-related packages.
- Update devDependencies such as es-toolkit, nbump, and others to their latest versions.
- Ensure consistency in @types/node and other related packages across the project.

This update enhances compatibility and performance across the application.

Signed-off-by: Innei <tukon479@gmail.com>
2025-07-07 20:13:51 +08:00
Innei a5439d861b feat(download): enhance mobile download experience with platform detection and redirection
Signed-off-by: Innei <tukon479@gmail.com>
2025-07-07 19:57:01 +08:00
pseudoyu 4edb260e04 feat(render): support iframe tag (#4096)
* feat: add iframe renderer support

* feat: add iframe renderer support
2025-07-07 17:44:48 +08:00
Innei 47129d5d0d feat(settings): add accent color customization and update UI components
- Introduced accent color setting to allow users to customize the app's interface.
- Updated various components to utilize the new accent color, including buttons, sliders, and text elements.
- Added translations for accent color settings in English, Japanese, and Chinese.
- Refactored related styles in Tailwind CSS configuration to support the new accent color feature.

Signed-off-by: Innei <tukon479@gmail.com>
2025-07-04 23:21:09 +08:00
DIYgod d14c8f5c51 feat: new domain folo.is 2025-07-03 13:13:42 +08:00
DIYgod 35fb71cbbe feat: x-app-platform header 2025-07-01 20:31:44 +08:00
Innei 6d76d6b558 chore: update dependencies and improve type safety
- Updated various package dependencies across the project, including @sentry/react, @tanstack/react-query, and others to their latest versions for improved performance and security.
- Enhanced type safety in several components by refining type definitions, particularly in motion-related imports.
- Adjusted transition configurations to utilize new presets for smoother animations.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-20 23:32:42 +08:00
Innei 1d83313872 feat: add vite-plugin-route-builder for dynamic route generation
- Introduced a new plugin to generate React Router routes from a file system-based structure, enhancing routing capabilities similar to Next.js.
- Updated various configurations and components to integrate the new plugin, including automatic route generation during build time.
- Refactored existing router implementations to utilize generated routes, improving maintainability and performance.

Signed-off-by: Innei <i@innei.in>
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-20 01:41:53 +08:00
Innei 394d00f1a2 feat: support share actions and import from clipboard
- Added a new utility function `copyToClipboard` to handle clipboard operations with error handling.
- Refactored existing clipboard interactions across various components and hooks to utilize the new utility function.
- Introduced import/export functionality for action rules, allowing users to copy rules to clipboard and import from clipboard.
- Enhanced user feedback with toast notifications for clipboard actions.

This update improves code reusability and user experience when interacting with the clipboard.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-16 17:55:15 +08:00
Stephen Zhou 53957468c9 refactor(desktop): use summary from store package (#3944) 2025-06-16 16:14:58 +08:00
Stephen Zhou 784a95cff1 refactor(desktop): use database and store from shared package (#3897) 2025-06-11 11:36:25 +08:00
Innei 059ab9d996 refactor(desktop): update SharePanel and UrlBuilder for improved share URL handling
- Refactored SharePanel to retrieve the share URL directly from the entry data.
- Enhanced UrlBuilder with a new method for generating share URLs that includes view and subscription parameters.
- Updated the shareEntry method to utilize the new structure for better flexibility.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 18:43:45 +08:00
Innei a4ad4bf661 feat(desktop): enhance SharePanel with dedicated share URL generation
- Introduced a new method in UrlBuilder for generating share URLs for entries.
- Updated SharePanel to utilize the new share URL method for improved clarity and maintainability.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 17:35:16 +08:00
Innei 5a53e6f46e feat: replace number formatting with formatNumber utility across discover and feed components for improved readability
Signed-off-by: Innei <tukon479@gmail.com>
2025-06-06 14:15:07 +08:00
DIYgod 6a51c8f341 feat(mobile): optimize rsshub form screen 2025-06-05 18:40:12 +08:00
Innei 9dd5109bf8 fix: standardize control key naming across platforms, fixed #3860
- Updated the control key naming in the SpecialKeys object for Windows, macOS, and Linux to ensure consistency.
- Modified the transformShortcut function to replace "$mod" with "Control" instead of "Ctrl" for better clarity.
- Adjusted the key sorting order to reflect the updated naming convention.

Signed-off-by: Innei <tukon479@gmail.com>
2025-06-04 20:20:45 +08:00