my-kaiqiuwang/package.json
kyuuseiryuu d323e1d925 feat(game-selector): implement pagination and caching for event list
- Add 'ics' dependency to package.json and update lockfile.
- Introduce pagination support in `ClubEventList` component (Ant Design Pagination + Spin loading state).
- Refactor `GameSelector` to fetch paginated data (`page` query parameter) and manage page state.
- Update `KaiqiuService` to:
  - Add Redis caching for event lists (1 hour TTL) and individual match details (10 hours TTL).
  - Implement `listClubEvents` method with pagination support (fetching HTML, parsing titles/urls/status, extracting total count).
  - Update `getEventInfo` to utilize cached data.
- Update server routes (`index.tsx`, `routes.tsx`) to handle query parameters and pass paginated responses to the frontend.
- Fix logic in `GroupingPrediction` to set group length when players <= 12.

This change improves performance by reducing initial load times through pagination and caching, preventing UI freezing with large event lists.
2026-03-13 11:34:23 +09:00

37 lines
1002 B
JSON

{
"name": "my-kaiqiuwang",
"version": "0.1.0",
"private": true,
"type": "module",
"scripts": {
"dev": "bun --hot src/index.tsx",
"build": "bun build ./src/index.html --outdir=dist --sourcemap --target=browser --minify --define:process.env.NODE_ENV='\"production\"' --env='BUN_PUBLIC_*'",
"start": "NODE_ENV=production bun src/index.tsx"
},
"dependencies": {
"@ant-design/icons": "^6.1.0",
"@logto/react": "^4.0.13",
"@prisma/adapter-mariadb": "^7.4.2",
"@prisma/client": "^7.4.2",
"ahooks": "^3.9.6",
"antd": "^6.3.2",
"cheerio": "^1.2.0",
"dayjs": "^1.11.19",
"ics": "^3.8.1",
"lodash": "^4.17.23",
"mariadb": "^3.5.2",
"react": "^19",
"react-dom": "^19",
"react-router": "^7.13.0",
"styled-components": "^6.3.8",
"zustand": "^5.0.10"
},
"devDependencies": {
"@types/bun": "latest",
"@types/lodash": "^4.17.23",
"@types/react": "^19",
"@types/react-dom": "^19",
"prisma": "^7.4.2"
}
}