♻️ refactor(web): consolidate design-system primitives and responsive data views

This commit is contained in:
t0ng7u
2026-07-11 05:13:16 +08:00
parent 262ab93123
commit 0918bdb49a
451 changed files with 7295 additions and 7693 deletions
@@ -59,7 +59,7 @@ const ChannelSelectorModal = forwardRef(
) => {
const [searchText, setSearchText] = useState('');
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const isMobile = useIsMobile();
const [filteredData, setFilteredData] = useState([]);
@@ -58,7 +58,7 @@ const MultiKeyManageModal = ({ visible, onCancel, channel, onRefresh }) => {
// Pagination states
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [total, setTotal] = useState(0);
const [totalPages, setTotalPages] = useState(0);
@@ -99,7 +99,7 @@ const MultiKeyManageModal = ({ visible, onCancel, channel, onRefresh }) => {
setKeyStatusList(data.keys || []);
setTotal(data.total || 0);
setCurrentPage(data.page || 1);
setPageSize(data.page_size || 10);
setPageSize(data.page_size || 20);
setTotalPages(data.total_pages || 0);
// Update statistics (these are always the overall statistics)
@@ -84,7 +84,7 @@ const UserSubscriptionsModal = ({ visible, onCancel, user, t, onSuccess }) => {
const [subs, setSubs] = useState([]);
const [currentPage, setCurrentPage] = useState(1);
const pageSize = 10;
const pageSize = 20;
const planTitleMap = useMemo(() => {
const map = new Map();
@@ -61,7 +61,7 @@ const TopupHistoryModal = ({ visible, onCancel, t }) => {
const [topups, setTopups] = useState([]);
const [total, setTotal] = useState(0);
const [page, setPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [keyword, setKeyword] = useState('');
const isMobile = useIsMobile();
+1 -1
View File
@@ -196,4 +196,4 @@ export const MODEL_FETCHABLE_CHANNEL_TYPES = new Set([
1, 4, 14, 34, 17, 26, 27, 24, 47, 25, 20, 23, 31, 40, 42, 48, 43,
]);
export const MODEL_TABLE_PAGE_SIZE = 10;
export const MODEL_TABLE_PAGE_SIZE = 20;
+1 -1
View File
@@ -17,7 +17,7 @@ along with this program. If not, see <https://www.gnu.org/licenses/>.
For commercial licensing, please contact support@quantumnous.com
*/
export const ITEMS_PER_PAGE = 10; // this value must keep same as the one defined in backend!
export const ITEMS_PER_PAGE = 20; // this value must keep same as the one defined in backend!
export const DEFAULT_ENDPOINT = '/api/pricing';
+1 -1
View File
@@ -144,6 +144,6 @@ export const STORAGE_KEYS = {
export const DEFAULTS = {
PAGE_SIZE: 20,
CHART_HEIGHT: 96,
MODEL_TABLE_PAGE_SIZE: 10,
MODEL_TABLE_PAGE_SIZE: 20,
MAX_TREND_POINTS: 7,
};
@@ -32,7 +32,7 @@ export const useSubscriptionsData = () => {
// Pagination (client-side for now)
const [activePage, setActivePage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
// Drawer states
const [showEdit, setShowEdit] = useState(false);
+1 -1
View File
@@ -469,7 +469,7 @@ export default function SettingsChats(props) {
dataSource={filteredConfigs}
rowKey='id'
pagination={{
pageSize: 10,
pageSize: 20,
showSizeChanger: false,
showQuickJumper: true,
showTotal: (total, range) =>
@@ -59,7 +59,7 @@ const SettingsAPIInfo = ({ options, refresh }) => {
color: 'blue',
});
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
// 面板启用状态 state
@@ -67,7 +67,7 @@ const SettingsAnnouncements = ({ options, refresh }) => {
extra: '',
});
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
// 面板启用状态
+1 -1
View File
@@ -56,7 +56,7 @@ const SettingsFAQ = ({ options, refresh }) => {
answer: '',
});
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
// 面板启用状态
@@ -56,7 +56,7 @@ const SettingsUptimeKuma = ({ options, refresh }) => {
slug: '',
});
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
const [selectedRowKeys, setSelectedRowKeys] = useState([]);
const [panelEnabled, setPanelEnabled] = useState(true);
+1 -1
View File
@@ -122,7 +122,7 @@ export default function UpstreamRatioSync(props) {
// 分页相关状态
const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10);
const [pageSize, setPageSize] = useState(20);
// 搜索相关状态
const [searchKeyword, setSearchKeyword] = useState('');
@@ -23,7 +23,7 @@ import {
splitBillingExprAndRequestRules,
} from '../components/requestRuleExpr';
export const PAGE_SIZE = 10;
export const PAGE_SIZE = 20;
export const PRICE_SUFFIX = '$/1M tokens';
const EMPTY_CANDIDATE_MODEL_NAMES = [];