skynono
d58029c637
fix(model-pricing): 修复可视化模型定价列表项无法删除 ( #5628 )
...
删除时已从草稿中移除模型,但列表为 saved∪draft 并集且优先取 saved,
导致行不消失(isDraftDeleted 计算后未被使用),表现为无法删除。改为过滤
掉已暂存删除的行;并在删除当前正在编辑的行时关闭编辑器,避免从残留面板
保存又把模型写回。
2026-06-20 22:08:29 +08:00
skynono
0c6c1b373a
fix(wallet): 修复计费历史弹窗分页与列表重叠 ( #5627 )
...
base-ui 的 ScrollArea 仅靠 max-height 无法约束高度:其 Viewport 用
height:100%,当 Root 只有 max-height 而无确定高度时会回退为 auto,
内容撑满并溢出到 Root 之外,盖住下方分页。改用原生 max-h + overflow-y-auto
的 div,列表正确内部滚动,分页作为同级元素干净地排在下方。
2026-06-20 21:35:47 +08:00
skynono
7409174456
fix(log): 修复新前端日志按登录类型(type=7)筛选失效 ( #5620 )
...
路由 search 校验枚举 logTypeValues 漏了 '7'(登录),
选「登录」时 type=['7'] 校验失败被 .catch([]) 兜底成空数组,
最终请求丢掉 type 参数。补上 '7' 与 LOG_TYPE_ENUM.LOGIN 对齐。
2026-06-20 20:46:19 +08:00
Quaternijkon and CaIon
a68041f7d6
feat(dashboard): add traffic flow sankey chart ( #5465 )
...
* feat(dashboard): add traffic flow sankey chart
Add dashboard flow APIs and a Sankey-based flow view with user, optional API key, model, and channel layers.\n\nReuse the dashboard VChart palette, add precise link/node tooltips and interactions, and cover filtering, layer ordering, color stability, and error states with tests.
* feat: build flow chart from quota data
---------
Co-authored-by: CaIon <i@caion.me >
2026-06-20 18:57:47 +08:00
CaIon
f9e508bdae
perf(channels): optimize card view layout and reduce re-renders
...
- Show 3-column card grid from xl breakpoint instead of 2xl
- Cap inline priority/weight width to avoid huge values stretching cards
- Collapse right-column grid to content-sized columns, removing wasted space
- Memoize channel columns, context value, upstream-update result, and ChannelCard
to avoid rebuilding/re-rendering all cards on unrelated state changes
2026-06-20 16:06:06 +08:00
CaIon
cb841850b7
fix: update channel icon
2026-06-20 14:06:53 +08:00
CaIon
91ab664c53
feat: add routing reliability management
2026-06-20 13:55:50 +08:00
skynono
dfcb74b52d
fix: stop repeated allow_wallet_overflow column migration on restart ( #5616 )
2026-06-20 12:41:20 +08:00
skynono
fae39cd90d
fix: stop repeated allow_balance_pay column migration on restart ( #5361 )
2026-06-20 12:41:02 +08:00
CaIon
2c2d92116f
refactor: simplify model list
2026-06-20 12:16:42 +08:00
CaIon
0229dc2057
refactor: refine toolbar controls and model drawer
2026-06-19 20:17:45 +08:00
CaIon
9100e15e4e
feat: add channel sensitive info toggle
2026-06-19 20:09:18 +08:00
CaIon
4206d7fd58
feat(data-table): enhance mobile card view handling and improve layout logic
2026-06-19 19:58:20 +08:00
CaIon
50b8f2a272
refactor: update styling and improve code readability across multiple components
2026-06-19 19:29:00 +08:00
CaIon
a0de4b560e
refactor(channels): restructure channel card into left/right columns
...
Group #id/name and balance on the left and priority/weight plus
response/last-tested on the right. Simplify field labels by dropping
the CJK-unfriendly uppercase/letter-spacing, left-align the right
column, and shorten the "Last Tested" zh label.
2026-06-19 18:30:13 +08:00
CaIon
0467d54014
chore: update frontend branding copy
2026-06-19 18:14:40 +08:00
CaIon
29c3dcb927
feat(table): support card layout
2026-06-19 17:43:13 +08:00
CaIon
68585568d6
feat(data-table): add reusable card/table view toggle
...
Add an opt-in card view to the shared data-table stack (DataTablePage),
toggled via a segmented control in the toolbar with per-table localStorage
persistence. Cards render generically from column meta by default, with an
optional renderCard slot. Defaults to table-only so existing pages are
unchanged.
Wire it into the channels page with a bespoke ChannelCard that reuses every
column's cell renderer, preserving all table information and interactions
(selection, inline priority/weight, balance refresh, status, actions, tag
expand).
2026-06-19 17:43:11 +08:00
Seefs
3fcd741c6e
refactor: codex usage ui ( #5595 )
...
* refactor: codex usage ui
* feat: show Codex reset credit details
* feat: add Codex usage reset flow
2026-06-19 16:07:32 +08:00
CaIon
6bd69f3edf
feat(ui): enhance endpoint selection and date picker
2026-06-19 15:10:50 +08:00
QuentinHsu
5b4839fa37
chore(web): add default frontend oxc tooling ( #5585 )
...
- add oxlint and oxfmt configuration for web/default quality checks
- replace ESLint and Prettier scripts with protected-header Oxc formatting
- update frontend workspace dependencies for oxlint and oxfmt
2026-06-19 14:58:53 +08:00
CaIon
0c806db996
refactor(theme): update color classes
2026-06-19 14:53:44 +08:00
CaIon
490395b2f8
feat(performance): enhanced metrics display
2026-06-19 14:27:16 +08:00
CaIon
6ad5dbb641
fix(main): prevent refetching on window focus to optimize performance
2026-06-19 12:45:20 +08:00
CaIon
f7dae5cbe6
fix(drawing): update timestamp formatting to include milliseconds
2026-06-18 21:38:55 +08:00
CaIon
f4575fe664
feat(format): add locales support to number formatting
2026-06-18 21:30:05 +08:00
CaIon
cfc9bbcdbf
feat(logs): improve layout
2026-06-18 21:29:55 +08:00
CaIon
55b00fcf09
feat(advanced-custom): remove fallback option and enhance path matching for advanced custom routes
2026-06-18 20:29:24 +08:00
Seefs
3f2c0aeda7
feat: advanced custom channel ( #5590 )
2026-06-18 18:00:27 +08:00
CaIon
21d4d18dfc
feat(rankings): remove 'all' period option from rankings and related components
2026-06-18 17:56:45 +08:00
CaIon
50784c10ee
feat(api): change subscription product options and catalog endpoints to use GET method
2026-06-18 17:15:05 +08:00
CaIon
b8f5ba4a31
feat(overview): update setup guide expansion logic
2026-06-18 16:59:12 +08:00
CaIon
fd557064d3
feat(subscription): add descriptions for plan purchase amounts in multiple languages
2026-06-18 16:53:57 +08:00
CaIon
f6c260437c
feat(subscription): add support for wallet overflow and downgrade group functionality in subscription plans
2026-06-18 16:44:12 +08:00
CaIon
4e8b5e9b13
feat(data-table): add column visibility storage functionality for API keys, channels, and usage logs
2026-06-18 16:03:06 +08:00
CaIon
1aa77e6698
fix(ui): enforce HTTPS for backend-provided image URLs and improve URL validation
2026-06-18 14:56:44 +08:00
CaIon
06f9dec95b
feat(recharge): enhance payment method buttons with minimum top-up information
2026-06-18 14:40:06 +08:00
Seefs
97eadbefa6
fix(oauth): clear bindings when hard deleting users ( #5582 )
2026-06-18 12:16:23 +08:00
CaIon
1414569b63
feat(stat): enhance log stat cards with compact number formatting and improved layout
2026-06-18 12:13:53 +08:00
CaIon
df013946d7
feat(performance): add compact formatting for latency and throughput metrics
2026-06-18 12:03:11 +08:00
CaIon
208d86e96e
feat(performance): add recent success rates to model summary and enhance metrics retrieval
2026-06-18 12:00:03 +08:00
CaIon
a37ce3d6b5
fix: clarify channel test results
2026-06-18 11:59:17 +08:00
CaIon
a95655a245
feat(performance): implement success rate grading and enhance UI representation
2026-06-17 22:28:36 +08:00
CaIon
3cc2b1bea4
feat(channel-test-dialog): add functionality to delete failed models and copy selected models
2026-06-17 21:31:20 +08:00
CaIon
122a730a77
feat(layout): improve settings form layout and enhance textarea overflow handling
2026-06-17 21:16:50 +08:00
同語
e5250d6403
fix(data-table): prevent component cell clipping ( #5536 )
...
Merge pull request #5536 from QuantumNous/fix/data-table-component-cells
2026-06-17 21:15:04 +08:00
CaIon
21636fc1b5
feat(performance): enhance uptime calculations and chart data handling
2026-06-17 21:10:54 +08:00
同語
26b6b36497
feat: persist table page size across navigation/sessions ( #5377 )
...
Merge pull request #5403 from feitianbubu/feat/persist-table-page-size
2026-06-17 21:10:33 +08:00
CaIon
2154fce094
feat(payment): enhance payment method configuration with icons and improve UI interactions
2026-06-17 20:47:24 +08:00
yyhhyyyyyy
a2f3ac02e4
fix: complete channel model batch testing ( #5532 )
2026-06-17 20:04:58 +08:00