Tunglies
b8fbabae04
fix: frontend memory leaks — Monaco dispose, TQ cache eviction, useEffect cleanup
...
- Dispose Monaco editor instances on dialog close to prevent cycle leak
- Replace gcTime: Infinity with finite TTLs and evict orphaned subscription queryKeys
- Add missing useEffect cleanup for timers, move setTimeout out of useMemo
2026-04-05 23:10:45 +08:00
Tunglies
a73fafaf9f
refactor: migrate SWR to TanStack Query v5 ( #6713 )
...
Replace swr with @tanstack/react-query v5 across all hooks, providers,
and components. Introduce singleton QueryClient, WS subscription pattern
via useQuery+useEffect, and enforce component-layer cache access contract.
2026-04-03 08:15:51 +00:00
Tunglies
c3aba3fc79
fix(profile): refresh profile data after timer auto-update completes
...
The profile-update-completed event handler was missing a mutate('getProfiles')
call, causing the "X time ago" display to show stale timestamps after
backend timer auto-updates.
2026-03-28 02:37:59 +08:00
Slinetrac
c672a6fef3
refactor: lint ( #6511 )
...
* refactor: lint
* chore: remove eslint-plugin/config-prettier
2026-03-15 07:40:11 +00:00
Slinetrac
837508c02c
feat(monaco): reintroduce meta-json-schema ( #6509 )
...
* refactor(editor): make EditorViewer controlled and unify document state handling
* fix(monaco-yaml): add patchCreateWebWorker
* feat(monaco): reintroduce meta-json-schema
* fix(editor): reset document state on target change
2026-03-15 06:04:59 +00:00
Slinetrac
bae65a523a
chore: rename files to kebab-case and update imports
2025-12-09 13:52:42 +08:00
Slinetrac
45d4f0e89c
chore: remove meta-json-schema #5656 #5478
2025-11-29 15:10:41 +08:00
Sline
caca8b2bc4
refactor: debugLog for frontend ( #5587 )
2025-11-25 10:01:04 +08:00
Slinetrac
f315a98afd
fix: monaco editor line count limit
2025-11-17 07:41:37 +08:00
Sline
c8aa72186e
chore: i18n ( #5276 )
...
* chore: notice i18n
* feat: add script to clean up unused i18n keys
* chore: cleanup i18n keys
* refactor(i18n/proxies): migrate proxies UI to structured locale keys
* chore: i18n for rule module
* chore: i18n for profile module
* chore: i18n for connections module
* chore: i18n for settings module
* chore: i18n for verge settings
* chore: i18n for theme settings
* chore: i18n for theme
* chore(i18n): components.home.*
* chore(i18n): remove unused i18n keys
* chore(i18n): components.profile.*
* chore(i18n): components.connection
* chore(i18n): pages.logs.*
* chore(i18n): pages.*.provider
* chore(i18n): components.settings.externalCors.*
* chore(i18n): components.settings.clash.*
* chore(i18n): components.settings.liteMode.*
* chore(i18n): components.settings.backup.*
* chore(i18n): components.settings.clash.port.*
* chore(i18n): components.settings.misc.*
* chore(i18n): components.settings.update.*
* chore(i18n): components.settings.sysproxy.*
* chore(i18n): components.settings.sysproxy.*
* chore(i18n): pages.profiles.notices/components.providers.notices
* refactor(notice): unify showNotice usage
* refactor(notice): add typed showNotice shortcuts, centralize defaults, and simplify subscriptions
* refactor: unify showNotice usage
* refactor(notice): unify showNotice API
* refactor(notice): unify showNotice usage
* chore(i18n): components.test.*
* chore(i18n): components.settings.dns.*
* chore(i18n): components.home.clashInfo.*
* chore(i18n): components.home.systemInfo.*
* chore(i18n): components.home.ipInfo/traffic.*
* chore(i18n): navigation.*
* refactor(i18n): remove pages.* namespace and migrate route texts under module-level page keys
* chore(i18n): common.*
* chore(i18n): common.*
* fix: change error handling in patch_profiles_config to return false when a switch is in progress
* fix: improve error handling in patch_profiles_config to prevent requests during profile switching
* fix: change error handling in patch_profiles_config to return false when a switch is in progress
fix: ensure CURRENT_SWITCHING_PROFILE is reset after config updates in perform_config_update and patch_profiles_config
* chore(i18n): restructure root-level locale keys into namespaces
* chore(i18n): add missing i18n keys
* docs: i18n guide
* chore: adjust i18n
* refactor(i18n): align UI actions and status labels with common keys
* refactor(i18n): unify two-name locale namespaces
* refactor(i18n/components): unify locale keys and update component references
* chore(i18n): add shared and entities namespaces to all locale files
* refactor(i18n): consolidate shared and entity namespaces across features
* chore(deps): update npm dependencies to ^7.3.5 (#5310 )
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* refactor(i18n): migrate shared editor modes and consolidate entities namespaces
* tmp
* refactor(i18n): flatten locales and move theme/validation strings
* docs: CONTRIBUTING_i18n.md
* refactor(i18n): restructure feedback and profile namespaces for better organization
* refactor(i18n): unify settings locale structure and update references
* refactor(i18n): reorganize locale keys for home, proxies, rules, connections, logs, unlock, and tests
* refactor(i18n/feedback/layout): unify shared toasts & normalize layout namespace
* refactor(i18n): centralize common UI strings in shared
* refactor(i18n): flatten headers and unify locale schema
* refactor(i18n): consolidate duplicate per-feature translations into shared namespace
* refactor(i18n): split locales into per-namespace files
* style: lint
* refactor(i18n): unify unlock UI translations under tests namespace
* feat(i18n): add type-checked translation keys
* style: eslint import order
* feat(i18n): replace ad-hoc loader with rust-i18n backend bundles
* chore(prebuild): remove locale-copy step
* fix(i18n, notice): propagate runtime params and update cleanup script path
* fix(i18n,notice): make locale formatting idempotent and guard early notice translations
* fix(i18n): resolve locale aliases and match OS codes correctly
* fix(unlock): use i18next-compatible double-brace interpolation in failure notice
* fix(i18n): route unlock error notices through translation keys
* fix(i18n): i18n types
* feat(i18n): localize upgrade notice for Clash core viewer
* fix(notice): ensure runtime overrides apply to prefix translations
* chore(i18n): replace literal notices with translation keys
* chore(i18n): types
* chore(i18n): regen typings before formatting to keep keys in sync
* chore(i18n): simply labels
* chore(i18n): adjust translation
* chore: remove eslint-plugin-i18next
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend (#5341 )
* chore(i18n): translate settings.json (missed in previous pass) (#5343 )
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend
* chore(i18n): add/refine Korean translations across frontend scopes and Rust backend
* fix(i18n-tauri): quote placeholder-leading value in ko.yml to prevent rust_i18n parse panic
* chore(i18n): translate settings.json (forgot to include previously)
---------
Co-authored-by: rozan <34974262+thelojan@users.noreply.github.com>
2025-11-08 19:40:38 +08:00
Slinetrac
9dc50da167
fix: profile auto refresh #5274
2025-11-01 19:24:54 +08:00
Slinetrac
98725bbecf
fix: TS errors
2025-10-18 16:11:42 +08:00
Slinetrac
4f2633a62b
refactor: profile components
2025-10-14 23:45:12 +08:00
Slinetrac
537a3000b6
chore: rm success notice
2025-10-13 19:04:40 +08:00
Sline
72aa56007c
feat(ui): implement profiles batch select and i18n ( #4972 )
...
* feat(ui): implement profiles batch select and i18n
* refactor: adjust button position and icon
* style: lint fmt
2025-10-08 12:02:55 +08:00
Tunglies
e414b49879
Refactor imports across multiple components for consistency and clarity
...
- Reorganized import statements in various components to ensure consistent ordering and grouping.
- Removed unnecessary imports and added missing ones where applicable.
- Improved readability and maintainability of the codebase by standardizing import styles.
2025-09-19 00:01:04 +08:00
Tunglies
627119bb22
Refactor imports and improve code organization across multiple components and hooks
...
- Consolidated and reordered imports in various files for better readability and maintainability.
- Removed unused imports and ensured consistent import styles.
- Enhanced the structure of components by grouping related imports together.
- Updated the layout and organization of hooks to streamline functionality.
- Improved the overall code quality by following best practices in import management.
2025-09-18 23:34:38 +08:00
Tunglies
475a09bb54
feat: comprehensive oxlint cleanup - remove unused code
...
🧹 Cleanup Summary:
- Fixed 83 oxlint warnings across 50+ files
- Removed unused imports, variables, and functions
- Maintained all functional code and error handling
- Improved bundle size and code maintainability
📝 Key Changes:
- Cleaned unused React hooks (useState, useEffect, useClashInfo)
- Removed unused Material-UI imports (useTheme, styled components)
- Deleted unused interfaces and type definitions
- Fixed spread operator usage and boolean casting
- Simplified catch parameters where appropriate
🎯 Files Modified:
- React components: home.tsx, settings, profiles, etc.
- Custom hooks: use-*.ts files
- Utility functions and type definitions
- Configuration files
✅ Result: 0 oxlint warnings (from 83 warnings)
🔧 All functionality preserved
📦 Reduced bundle size through dead code elimination
2025-08-22 18:48:56 +08:00
Tunglies
bea6a2c8f7
chore: update Prettier configuration and dependencies; refactor code formatting for consistency ( #3926 )
2025-06-28 18:37:53 +08:00
wonfen
1a6454ee79
perf: optimize profile switching logic with interrupt support to prevent freeze
2025-06-21 10:04:12 +08:00
Tunglies
09969d95de
feat: add rustfmt configuration and CI workflow for code formatting
...
refactor: streamline formatting workflow by removing unused taplo steps and clarifying directory change
refactor: remove unnecessary directory change step in formatting workflow
2025-06-06 22:13:11 +08:00
Tunglies
929abb3c04
feat: add "Update via proxy" translation to English and Chinese locales
2025-06-01 19:40:50 +08:00
wonfen
8296675574
refactor: notification system
2025-05-04 22:17:08 +08:00
wonfen
d6a79316a6
feat: toggle next auto-update time on subscription card click and show update result feedback
2025-04-25 17:17:34 +08:00
wonfen
8d62c0d521
feat: auto-fallback to Clash proxy on scheduled subscription updates; refactor fallback logic and add request timeout
2025-04-24 22:51:45 +08:00
wonfen
98be9621a6
feat: retry subscription fetch using Clash proxy on failure
2025-04-03 14:55:28 +08:00
wonfen
1f99cee78b
feat: home page
2025-03-14 13:31:34 +08:00
huzibaca
6cc81fe6b8
chore: update
2024-09-02 19:33:17 +08:00
MystiPanda
d9d9ca67cd
chore: unified icon style
2024-07-13 19:01:16 +08:00
Akioe Yu
2cd1fa6601
fix: dnd box z-index ( #1353 )
...
* fix: dnd box z-index
* fix: dnd boxes
2024-07-08 10:49:57 +08:00
MystiPanda
a865465514
feat: get network interface
2024-07-07 18:13:10 +08:00
dongchengjie
9278e74e9e
fix: usage percent style
2024-07-07 18:08:02 +08:00
MystiPanda
f6ed5dc126
fix: groups config type error
...
feat(unfinished): add proxy editor
2024-07-05 00:38:50 +08:00
MystiPanda
bcd8eb2a09
feat: support visual edit for proxy group
2024-07-04 14:13:19 +08:00
MystiPanda
94f0ff1ed1
feat: support get merged rule-set name
2024-07-03 22:13:24 +08:00
MystiPanda
f74f06e403
fix: edit groups error
2024-07-03 10:58:57 +08:00
MystiPanda
6f4c59a15c
fix: compatibility
2024-07-03 08:15:13 +08:00
dongchengjie
24f4ab7597
fix: sub usage percent fails to display when number is too small #1290
2024-07-03 02:59:32 +08:00
MystiPanda
ad94f0a292
Release 1.7.0
2024-07-03 00:32:14 +08:00
dongchengjie
bf158b3bf0
refactor: editor-viewer using react-monaco-editor
2024-07-02 21:02:29 +08:00
dongchengjie
13618e6a0a
chore: bump schema to 1.18.5-alpha7
2024-07-02 19:38:44 +08:00
MystiPanda
e343b1790e
chore: update locale
2024-07-01 23:30:14 +08:00
MystiPanda
497804434d
feat: rules editor
2024-06-30 17:17:04 +08:00
MystiPanda
d2d6ee806d
chore: locale
2024-06-30 13:03:36 +08:00
MystiPanda
2e106265f9
feat(unfinished): rules editor
2024-06-30 12:46:31 +08:00
MystiPanda
4d424e70bc
feat: support seq editor
2024-06-30 00:22:05 +08:00
MystiPanda
3efef52398
refactor: Associate Profile with Merge/Script.
2024-06-29 23:07:44 +08:00
dongchengjie
80d3c9e96f
feat: reactive after save when profile content changes
2024-06-29 09:21:50 +08:00
dongchengjie
46dc40149e
chore: missing locale
2024-06-09 11:16:13 +08:00
Sukka
2725322fd5
refactor: replace recoil ( #1137 )
2024-06-07 12:27:37 +08:00