mirror of
https://github.com/TheRealOwenRees/chess-scribe-website.git
synced 2026-07-23 01:46:57 +00:00
use shared IPosition interface for diagrams and current move state
This commit is contained in:
@@ -1,14 +1,10 @@
|
||||
import { type ChangeEvent, useReducer, useRef, useState } from "react";
|
||||
import type { IPosition } from "#/interfaces.ts";
|
||||
import { gameReducer, initialGameState } from "#/reducers/gameReducer.ts";
|
||||
import { downloadPDF } from "#/utils/pdfUtils.ts";
|
||||
import { buildPgnString, getHeaders } from "#/utils/pgnUtils.ts";
|
||||
import { downloadString } from "#/utils/stringUtils.ts";
|
||||
|
||||
interface IPosition {
|
||||
ply: number;
|
||||
fen: string;
|
||||
}
|
||||
|
||||
export const useChessGame = () => {
|
||||
const [gameState, gameDispatch] = useReducer(gameReducer, initialGameState);
|
||||
|
||||
@@ -21,7 +17,7 @@ export const useChessGame = () => {
|
||||
|
||||
const fileInputRef = useRef<HTMLInputElement | null>(null);
|
||||
|
||||
const handlePlyChange = ({ ply, fen }: { ply: number; fen: string }) => {
|
||||
const handlePlyChange = ({ ply, fen }: IPosition) => {
|
||||
setCurrentPosition({ ply, fen });
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user