- Add missing tsconfig strictness flags (noUncheckedIndexedAccess, exactOptionalPropertyTypes, noImplicitOverride, noPropertyAccessFromIndexSignature) and fix all resulting type errors - Replace ESLint/Prettier with oxlint 1.48.0 and oxfmt 0.33.0 - Pin all frontend and backend dependencies to exact versions - Pin GitHub Actions to SHA hashes with persist-credentials: false - Fix CI Python version mismatch (3.12 -> 3.14) and ruff target-version - Add vitest 4.0.18 with jsdom environment for frontend testing - Add ty 0.0.17 for Python type checking (non-blocking in CI) - Add actionlint and zizmor CI job for workflow linting and security audit - Add Dependabot config for npm, pip, and github-actions - Update CLAUDE.md and pre-commit hooks to reflect new tooling - Ignore Claude Code sandbox artifacts in gitignore Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
20 lines
722 B
TypeScript
20 lines
722 B
TypeScript
import { api } from './client'
|
|
import type { BossBattle, BossResult, CreateBossResultInput } from '../types/game'
|
|
|
|
export function getGameBosses(gameId: number, all?: boolean): Promise<BossBattle[]> {
|
|
const params = all ? '?all=true' : ''
|
|
return api.get(`/games/${gameId}/bosses${params}`)
|
|
}
|
|
|
|
export function getBossResults(runId: number): Promise<BossResult[]> {
|
|
return api.get(`/runs/${runId}/boss-results`)
|
|
}
|
|
|
|
export function createBossResult(runId: number, data: CreateBossResultInput): Promise<BossResult> {
|
|
return api.post(`/runs/${runId}/boss-results`, data)
|
|
}
|
|
|
|
export function deleteBossResult(runId: number, resultId: number): Promise<void> {
|
|
return api.del(`/runs/${runId}/boss-results/${resultId}`)
|
|
}
|