- Added a new service for synchronizing state with replicants in `replicant-state-service.ts`.
- Refactored commentary store to utilize the new synchronization service.
- Created a new graphics settings store that syncs with replicants.
- Introduced a packs store for managing installed packs and their states.
- Updated players and scoreboard stores to use the new synchronization service.
- Created shared services for managing replicated state in graphics components.
- Refactored existing components to use the new shared services for replicant state.
- Added normalization and default values for commentary, graphics settings, players, and scoreboard.
- Improved type safety and organization in shared domain files for better maintainability.
- Moved NodeCG context management to a dedicated context module.
- Introduced message handling utilities for better message listening and sending.
- Updated startgg integration to use new message handling methods.
- Removed deprecated replicant utilities and replaced them with a new structure.
- Refactored replicant imports in graphics components to align with new structure.
- Added new pack-related types and schemas for better type safety.
- Cleaned up unused files and consolidated pack configuration into a single module.
- Updated TypeScript configurations to reflect new directory structure.
- Updated character images for Tekken 8, including Jin, Jun, Kazuya, and others.
- Introduced a new pack configuration system to manage character packs from a Gitea instance.
- Added types for pack management, including PackCharacter, PackManifest, and PackRegistry.
- Implemented functions to register and unregister installed packs, allowing dynamic character loading.
- Enhanced the character image retrieval system to support both bundled and installed packs.
- Implemented `useCharacterGame` composable to manage game selection and character state for both players.
- Added `useCountryFilter` composable for filtering country options based on locale.
- Created `usePlayerSide` composable to encapsulate state and handlers for player management on each side of the scoreboard.
- Introduced filtering and input synchronization for player names and countries.
- Enhanced player ID generation to avoid collisions and support custom player entries.
Install pnpm before enabling setup-node pnpm caching so GitHub Actions can resolve the pnpm executable during checks.
Co-authored-by: Cursor <cursoragent@cursor.com>
Update Node and TypeScript toolchain references, CI node version, lockfile resolution, and include current workspace/runtime files for consistency.
Co-authored-by: Cursor <cursoragent@cursor.com>
Standardize local and CI workflows on pnpm 11.0.8, replace npm commands in docs/config, and swap lockfiles for reproducible installs.
Co-authored-by: Cursor <cursoragent@cursor.com>