Commit Graph

183 Commits

Author SHA1 Message Date
DIYgod 2034702df6 fix(styles): avoid DaisyUI border token collision 2026-07-25 20:17:55 +08:00
DIYgod 1158281f59
chore(deps): update frontend dependencies (#5038)
* chore(deps): update frontend dependencies

* fix(ci): format OTA verification commands
2026-07-10 22:36:12 +08:00
DIYgod df8b8d0670 fix(actions): stabilize rule editor state 2026-05-29 14:00:19 +08:00
DIYgod 59fe06bd20 fix(ci): harden isolated workspace dependency resolution 2026-04-14 16:35:39 +08:00
DIYgod 79efa4ebb2 fix(desktop): improve pdf export layout and branding 2026-04-07 13:22:04 +08:00
DIYgod 3f31f505f8 fix: restore frontend ci for better-auth upgrade 2026-03-16 21:35:14 +08:00
DIYgod aea75fe57b fix(desktop): improve self-test coverage and ui polish 2026-03-13 10:20:01 +08:00
DIYgod 93e4a3b48f
feat: add cross-platform e2e coverage (#4901)
* feat: add cross-platform e2e coverage

* fix: stabilize desktop e2e navigation

* fix: harden desktop e2e read flow

* fix: harden desktop e2e auth and follow flows

* fix: stabilize desktop e2e discover entry flows

* fix: run android e2e in a single shell

* fix: speed up mobile e2e builds in ci

* fix: build android e2e app from mobile workspace

* fix: invoke android gradle build from repo root

* fix: use absolute path for android ci build

* fix: restore android eas build in ci

* fix: target iOS simulator by udid in ci

* fix: align desktop e2e with discover card flow

* fix: reorder web e2e after relogin

* fix: navigate web e2e via real hash url

* fix: close stale settings modal before reopening

* fix: track android maestro flows

* fix: wait for settings router in web e2e

* fix: wait for web settings sync propagation

* fix: stabilize desktop e2e settings flows

* fix: harden desktop e2e regressions

* fix: stabilize desktop e2e selectors

* fix: read desktop entry state from locators

* fix: relax desktop e2e entry assertions

* fix: avoid waiting on missing desktop feed ids
2026-03-10 11:32:00 +08:00
DIYgod 0859f56ad4
chore: update workspace dependencies and lockfile (#4838)
* chore: update workspace dependencies

- bump dependencies across desktop, mobile, ssr, and internal packages

- refresh pnpm lockfile

- apply type compatibility fixes required by upgraded packages

* fix(ssr): prevent tsdown CI warning from failing build

- set inlineOnly to false in tsdown config

* style: format files for CI prettier check

- apply prettier formatting to files reported by format:check

* fix(mobile): downgrade reanimated for rn 0.79 ios build
2026-02-13 16:04:13 +08:00
Innei f178f486f8
feat: implement mobile layout for AIEnhancedTimeline
- Added MobileTimelineLayout component to handle mobile-specific rendering.
- Integrated useMobile hook for responsive behavior in AIEnhancedTimelineLayout.
- Updated layout logic to conditionally render components based on mobile view.
- Enhanced dropdown and context menu styles for better visual feedback.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-24 16:41:25 +08:00
Innei ad8575d737
feat: narrowed responsive layout handling, closed #4370
- Added a renderValue function to the LanguageSelector for improved display of selected language names.
- Updated layout component to support responsive behavior based on viewport width.
- Refactored setting sync to utilize useMobile hook for better mobile detection.
- Enhanced withResponsiveComponent to accept a breakpoint function for more flexible responsive layouts.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-24 16:02:17 +08:00
Stephen Zhou 2d0fa19e14
feat: read secure image setting from server 2025-11-20 17:09:15 +08:00
Innei 44a0a40572
fix: update innerGlow styles for dropdown-menu, context-menu, and tooltip components
Signed-off-by: Innei <tukon479@gmail.com>
2025-11-19 16:03:48 +08:00
Innei 92f3bf7ff4
refactor: enhance UI components with improved styling and layout
- Introduced gradient backgrounds and box shadows for dropdown menus and context menus for a more modern appearance.
- Updated modal styles to include backdrop blur and inner glow effects for better visual depth.
- Adjusted component layouts for consistency and improved user experience across modals and context menus.
- Refined keyboard component styles for better interaction feedback.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-18 17:16:54 +08:00
Innei 7c06ca6d84
feat: implement BYOK (Bring Your Own Key) feature for AI providers (#4727)
* feat: implement BYOK (Bring Your Own Key) feature for AI providers

- Added BYOK section in AI settings to manage custom API keys.
- Introduced components for adding, editing, and deleting BYOK providers.
- Updated translations for BYOK-related UI elements.
- Modified existing components to support new BYOK functionality.

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

* feat: enhance BYOK provider support and update UI elements

- Added support for the "OpenRouter" BYOK provider in relevant components.
- Updated translations for security-related UI elements to reflect new descriptions.
- Adjusted styling in settings components for improved visual consistency.

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

* feat: refine BYOK provider management and enhance UI

- Introduced a new constants file for BYOK provider options.
- Updated the ByokProviderModalContent to filter available providers based on configured ones.
- Enhanced the ByokSection to manage provider addition and editing more effectively.
- Adjusted table styling in the PlanComparisonTable for improved readability.
- Added new translation keys for "AI Bring Your Own Key" in multiple languages.

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

---------

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-18 15:52:54 +08:00
Innei 16c005aa57
style: enhance code highlighter and login button appearance
- Updated CSS for the code highlighter to improve layout and add custom scrollbar styles.
- Refined the Shiki component with a subtle glow effect and improved header layout.
- Adjusted the LoginButton icon size and color for better visibility.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-14 21:31:41 +08:00
Innei 3adf4feec9
feat(auth): implement login requirement for various actions
- Introduced `requiresLogin` property for menu items and actions across multiple components to enforce user authentication.
- Added `useRequireLogin` hook to manage login checks and modal presentation.
- Updated context menus, action buttons, and settings to utilize the new login guard functionality.
- Enhanced user experience by prompting login where necessary, ensuring actions are only accessible to authenticated users.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-14 15:11:14 +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
lawvs 9b9ee76bcc fix: handle undefined initialValue and check for empty JSON root 2025-11-06 15:32:15 +08:00
Innei 2ac5aed4e1
fix(ui): sonner styles
Updated the global shortcuts registration to ensure proper detection of editable elements by checking if the target is an instance of HTMLElement. This change enhances the accuracy of shortcut handling in editable contexts.

style(toast): remove unused toast styles

Deleted redundant CSS styles related to sonner toast notifications to streamline the stylesheet and improve maintainability.

style(toast): enhance toast styles with z-index and pointer events

Added z-index and pointer-events styles to the toast component for better layering and interaction handling.

Signed-off-by: Innei <tukon479@gmail.com>
2025-11-04 22:55:49 +08:00
Innei 19d92cf57e
fix: some element styling
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-27 20:41:56 +08:00
Konv Suu 85df73f99f
fix: toast close button was clipped and its focus style (#4609)
* fix: toast close button was clipped and its focus style

* lint
2025-10-26 09:22:04 +08:00
Innei 4fb9321b3f
chore: lint
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-25 22:43:26 +08:00
Cyandev 876d51d1cd
refactor: progressive blur effect (#4607)
* refactor: progressive blur effect

* Update packages/internal/components/src/ui/progressive-blur/index.tsx

---------

Co-authored-by: Innei <tukon479@gmail.com>
2025-10-25 22:42:45 +08:00
Innei b53db73211
feat: implement glassmorphic depth design system for UI components
- Introduced a comprehensive glassmorphic design system to enhance visual hierarchy in UI elements such as modals, toasts, and floating panels.
- Added detailed design principles, color usage guidelines, and component structure examples to AGENTS.md.
- Updated AISmartSidebar component to utilize layered glass effects and smooth animations.
- Enhanced CSS styles for glassmorphic elements, ensuring performance optimizations and accessibility considerations.

These changes aim to elevate the user experience through refined aesthetics and improved interaction dynamics.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-23 21:55:13 +08:00
Innei 015f4ea10a
fix(editor): is input empty state
- Modified the isEmpty method in both ChatInput and LexicalRichEditor components to check if the editor's content is empty by verifying if the trimmed text content is an empty string.
- Added an accessories prop to LexicalRichEditor for improved flexibility in rendering additional UI elements.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-22 21:51:06 +08:00
Innei 8ab91cd157
feat(ai): redesign command pill style
- Updated Shortcut components to include icon rendering and a command prefix for better user experience.
- Modified shortcut trigger patterns to use '/' instead of '#' for consistency across the application.
- Added new icon selection feature in ShortcutModalContent for improved customization.
- Updated localization files to include new icon-related strings.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-21 21:40:56 +08:00
DIYgod 7507270b39
chore: update dependencies 2025-10-21 16:33:03 +08:00
Innei b9fe2903fa
fix(TextAreaWrapper): import React to resolve JSX issues
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-21 01:29:27 +08:00
Innei 414ab5232f
feat: lexical editor more functional
Added AutoLinkPlugin and TabIndentationPlugin to the LexicalRichEditor for improved user experience. Introduced ExitCodeBoundaryPlugin to manage caret behavior when exiting code contexts and TripleBacktickTogglePlugin for toggling code blocks. Updated node imports and types to support these new features, enhancing the editor's capabilities.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-20 20:48:59 +08:00
Innei 1b89ea0af0
refactor(ai-chat): simplify isEmpty state checks in ChatInput and LexicalRichEditor
Updated the ChatInput and LexicalRichEditor components to streamline the logic for determining if the editor is empty. The isEmpty state now directly utilizes the $getRoot().isEmpty() method, enhancing code clarity and maintainability. Removed unnecessary text content checks in favor of a more efficient approach.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-20 19:58:48 +08:00
Innei 97d77c4868
feat(ai-chat): enhance ChatInput and EditableMessage components with height adjustments
Updated the ChatInput and EditableMessage components to set a fixed height for the LexicalRichEditor, improving the layout consistency. Additionally, refactored the AITaskModal to manage prompt state outside of react-hook-form, allowing for better control over the prompt length and submission handling.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-20 19:49:06 +08:00
Stephen Zhou 86980e71f6
feat: update date mention and mention information (#4578) 2025-10-20 17:34:39 +08:00
Innei ef0af46e6f
fix: update text autospace classes in ListItem, EntryTitle, and ArticleLayout components
- Replaced `[text-autospace:auto]` with `autospace-normal` class in ListItem, EntryTitle, and ArticleLayout components to standardize text spacing.
- Added a new utility class `autospace-normal` in tailwind.css to ensure consistent text rendering across the application.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-19 23:44:44 +08:00
Innei 0602e74500
refactor: replace AIShortcutButton import path and enhance gradient handling
- Updated the import path for the AIShortcutButton component to the new location.
- Introduced a more flexible gradient handling function that adapts based on the dark/light mode.
- Removed the old AIShortcutButton component file as it is no longer needed.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-18 19:39:46 +08:00
Stephen Zhou 9a8bfffb38
feat: rich editor support for prompt and task (#4574) 2025-10-17 21:56:07 +08:00
Innei 2a55f9276a
chore(ui): add size prop for switch
- Updated the prompt input field with additional padding for better usability.
- Added size prop to the Switch component, allowing for small and medium sizes.
- Adjusted styles for the Switch component to accommodate the new size options, ensuring consistent appearance across different sizes.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-17 21:04:04 +08:00
lawvs 8c96029432 fix(ai): update default button background color for improved visibility 2025-10-17 15:14:03 +08:00
DIYgod ab257747be
feat(ai): update default button styles for improved visibility 2025-10-17 14:25:11 +08:00
Innei 99ed348352
feat(ai): talk about ai timeline summary
Signed-off-by: Innei <tukon479@gmail.com>
2025-10-10 22:46:34 +08:00
RieN 7z ba236f6bb9
feat: add image-only view setting and related UI updates (#4524)
* feat: add image-only view setting and related UI updates

- Introduced a new setting for image-only view mode.
- Updated components to conditionally render based on the new setting.
- Added translations for the new feature in multiple languages.

* fix: changelog
2025-10-07 01:20:13 +08:00
Innei 984887117b
fix(layout): unify top header height
- Renamed CSS class from `h-entry-header` to `h-top-header` for clarity and consistency.
- Introduced `h-top-header-with-border-b` for enhanced layout in `EntryListHeader`.
- Updated `RelativeTime` component to accept a `postfix` prop, allowing for more flexible date formatting.
- Adjusted instances of `RelativeTime` to utilize the new `postfix` prop for improved display.

Signed-off-by: Innei <tukon479@gmail.com>
2025-10-01 00:01:19 +08:00
Innei f1f9bc8c65
feat: add hover preview cards for entries and feeds
- Introduced EntryPreviewCard and FeedPreviewCard components for enhanced hover previews.
- Implemented prefetching of entry details and feed information on hover.
- Updated AnimatedMarkdown to utilize the new hover preview components for better user interaction.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-29 20:47:20 +08:00
Innei b3464a9b07
fix(ai-chat): enhance AIChainOfThought and ToolInvocationComponent with animations
- Integrated `AnimatePresence` and `m` from `motion/react` into the `AIChainOfThought` component to improve the display of reasoning titles with smooth transitions.
- Updated the `ToolInvocationComponent` to accept a `variant` prop, allowing for tighter spacing when necessary.
- Refined the `ShinyText` component's styles for better visual effects and consistency across components.

These changes aim to enhance the user experience by providing smoother animations and improved layout flexibility in the AI chat interface.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-25 17:42:44 +08:00
Innei 413fb986ff
refactor(ai-chat): enhance ShinyText component and integrate into AIChainOfThought and WelcomeScreen
- Updated the `ShinyText` component to support children and customizable shimmer width, improving flexibility in usage.
- Refactored styles for the `ShinyText` component to enhance the shine animation effect.
- Integrated the `ShinyText` component into the `AIChainOfThought` and `WelcomeScreen` components, ensuring consistent visual styling across the AI chat interface.

These changes aim to improve the visual appeal and maintainability of the components within the AI chat module.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-25 14:30:45 +08:00
Innei 97e2972ad7
feat(ai-chat): add custom date range picker to context menu
- Introduced a new `CustomRangePicker` component within the `ContextMenuContent` to allow users to select custom date ranges.
- Enhanced the `DateTimePicker` to support range selection mode, enabling users to pick start and end dates.
- Integrated relative date options into the context menu, improving the flexibility of date mentions in the AI chat interface.
- Updated localization to ensure new date range options are translatable.

These changes aim to enhance user experience by providing more options for date selection in the AI chat context menu.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-25 00:51:31 +08:00
Innei c840fa62ca
feat(ai): add shiny text on ai reasoning
- Integrated `ShinyText` into `AIChainOfThought` for improved visual feedback during reasoning.
- Updated `AIMessageParts` to conditionally render reasoning parts only if text is present, enhancing logic clarity.
- Introduced `useDeferredValue` for low-priority rendering of display parts, optimizing performance.

These changes aim to improve the user experience by providing clearer visual cues and more efficient rendering in the AI chat interface.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-23 21:15:26 +08:00
Innei 304755aba3
fix: refactor AIChainOfThought for improved collapse functionality
- Introduced a new `AIInnerReasoningPart` component to encapsulate the rendering logic for individual reasoning parts, enhancing modularity.
- Updated `AIChainOfThought` to utilize the new component and manage collapse state more effectively using a ref.
- Simplified the extraction of headings from reasoning text, improving readability and maintainability of the code.

These changes aim to enhance the user experience by providing clearer feedback during AI reasoning processes and improving the overall structure of the components.

Signed-off-by: Innei <tukon479@gmail.com>
2025-09-23 20:46:45 +08:00
Innei a9d5cbd519
feat(ios): support liquid glass tabbar
Signed-off-by: Innei <tukon479@gmail.com>
2025-09-22 22:07:59 +08:00
Innei 49ef017af5
fix(ssr): jsx transformer error
Signed-off-by: Innei <tukon479@gmail.com>
2025-09-20 15:15:58 +08:00