react-chessboard-ui 1.4.3 → 1.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -37,7 +37,9 @@ export declare const useChessBoardInteractive: (props: UseChessBoardInteractiveP
|
|
|
37
37
|
selectClickFrom: (cellPos: CellPos) => void;
|
|
38
38
|
selectHoverFrom: (cellPos: CellPos) => void;
|
|
39
39
|
setInitialState: import("react").Dispatch<import("react").SetStateAction<Cell[][]>>;
|
|
40
|
+
setBoardReversed: import("react").Dispatch<import("react").SetStateAction<boolean>>;
|
|
40
41
|
startRenderArrow: (pos: CellPos) => void;
|
|
42
|
+
cleanAllForFigure: () => void;
|
|
41
43
|
reverseChessBoard: () => void;
|
|
42
44
|
handleGrabbingCell: (cellPos: CellPos) => void;
|
|
43
45
|
moveFigureByChange: (change: ChangeMove) => void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { FigureColor, Cell } from './JSChessEngine';
|
|
2
2
|
/**
|
|
3
3
|
* Вовзвращет позицию клетки по состоянию fen
|
|
4
4
|
* @param positionFEN позиция из FEN вида e4
|
|
@@ -24,7 +24,7 @@ export declare const partFENtoState: (notation: string) => Cell[][];
|
|
|
24
24
|
* rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1
|
|
25
25
|
* @param notation Описание текущего состояния от Stockfish https://hxim.github.io/Stockfish-Evaluation-Guide/
|
|
26
26
|
*/
|
|
27
|
-
export declare const FENtoGameState: (FEN: string) => {
|
|
27
|
+
export declare const FENtoGameState: (FEN: string, reversed?: boolean) => {
|
|
28
28
|
boardState: Cell[][];
|
|
29
29
|
currentColor: FigureColor;
|
|
30
30
|
};
|
package/dist/index.js
CHANGED
|
@@ -1549,7 +1549,7 @@ var partFENtoState = function partFENtoState(notation) {
|
|
|
1549
1549
|
return row.length > 0;
|
|
1550
1550
|
});
|
|
1551
1551
|
};
|
|
1552
|
-
var FENtoGameState = function FENtoGameState(FEN) {
|
|
1552
|
+
var FENtoGameState = function FENtoGameState(FEN, reversed) {
|
|
1553
1553
|
var gameState = {
|
|
1554
1554
|
boardState: [],
|
|
1555
1555
|
currentColor: 'white'
|
|
@@ -1578,6 +1578,10 @@ var FENtoGameState = function FENtoGameState(FEN) {
|
|
|
1578
1578
|
beated: true
|
|
1579
1579
|
});
|
|
1580
1580
|
}
|
|
1581
|
+
if (reversed) return {
|
|
1582
|
+
boardState: JSChessEngine.reverseChessBoard(gameState.boardState),
|
|
1583
|
+
currentColor: gameState.currentColor
|
|
1584
|
+
};
|
|
1581
1585
|
return gameState;
|
|
1582
1586
|
};
|
|
1583
1587
|
var getBeatedCellFENfromState = function getBeatedCellFENfromState(state) {
|
|
@@ -2427,7 +2431,8 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
|
|
|
2427
2431
|
return {};
|
|
2428
2432
|
}
|
|
2429
2433
|
var colorFEN = currentColor === 'white' ? 'black' : 'white';
|
|
2430
|
-
var
|
|
2434
|
+
var reversedUpdatedCells = boardReversed ? JSChessEngine.reverseChessBoard(updatedCells) : updatedCells;
|
|
2435
|
+
var FEN = stateToFEN(reversedUpdatedCells, colorFEN);
|
|
2431
2436
|
var moveData = {
|
|
2432
2437
|
figure: figure,
|
|
2433
2438
|
from: from,
|
|
@@ -2482,7 +2487,8 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
|
|
|
2482
2487
|
return {};
|
|
2483
2488
|
}
|
|
2484
2489
|
var colorFEN = currentColor === 'white' ? 'black' : 'white';
|
|
2485
|
-
var
|
|
2490
|
+
var reversedUpdatedCells = boardReversed ? JSChessEngine.reverseChessBoard(updatedCells) : updatedCells;
|
|
2491
|
+
var FEN = stateToFEN(reversedUpdatedCells, colorFEN);
|
|
2486
2492
|
var moveData = {
|
|
2487
2493
|
figure: figure,
|
|
2488
2494
|
from: from,
|
|
@@ -2730,7 +2736,9 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
|
|
|
2730
2736
|
selectClickFrom: selectClickFrom,
|
|
2731
2737
|
selectHoverFrom: selectHoverFrom,
|
|
2732
2738
|
setInitialState: setInitialState,
|
|
2739
|
+
setBoardReversed: setBoardReversed,
|
|
2733
2740
|
startRenderArrow: startRenderArrow,
|
|
2741
|
+
cleanAllForFigure: cleanAllForFigure,
|
|
2734
2742
|
reverseChessBoard: reverseChessBoard,
|
|
2735
2743
|
handleGrabbingCell: handleGrabbingCell,
|
|
2736
2744
|
moveFigureByChange: moveFigureByChange,
|
|
@@ -2923,30 +2931,29 @@ var ChessBoard = function ChessBoard(props) {
|
|
|
2923
2931
|
setCurrentColor = _useChessBoardInterac.setCurrentColor,
|
|
2924
2932
|
selectHoverFrom = _useChessBoardInterac.selectHoverFrom,
|
|
2925
2933
|
setInitialState = _useChessBoardInterac.setInitialState,
|
|
2934
|
+
setBoardReversed = _useChessBoardInterac.setBoardReversed,
|
|
2926
2935
|
startRenderArrow = _useChessBoardInterac.startRenderArrow,
|
|
2927
|
-
|
|
2936
|
+
cleanAllForFigure = _useChessBoardInterac.cleanAllForFigure,
|
|
2928
2937
|
handleGrabbingCell = _useChessBoardInterac.handleGrabbingCell,
|
|
2929
2938
|
getHasCheckByCellPos = _useChessBoardInterac.getHasCheckByCellPos,
|
|
2930
2939
|
handleSelectFigurePicker = _useChessBoardInterac.handleSelectFigurePicker,
|
|
2931
2940
|
handleChangeFromExternal = _useChessBoardInterac.handleChangeFromExternal;
|
|
2932
|
-
var handleUpdateFEN = function handleUpdateFEN(FEN) {
|
|
2933
|
-
var _FENtoGameState = FENtoGameState(FEN),
|
|
2941
|
+
var handleUpdateFEN = function handleUpdateFEN(FEN, reversed) {
|
|
2942
|
+
var _FENtoGameState = FENtoGameState(FEN, reversed),
|
|
2934
2943
|
boardState = _FENtoGameState.boardState,
|
|
2935
2944
|
currentColor = _FENtoGameState.currentColor;
|
|
2945
|
+
cleanAllForFigure();
|
|
2936
2946
|
setInitialState(boardState);
|
|
2937
2947
|
setActualState(boardState);
|
|
2938
2948
|
setCurrentColor(currentColor);
|
|
2949
|
+
setBoardReversed(reversed);
|
|
2939
2950
|
};
|
|
2940
2951
|
React.useEffect(function () {
|
|
2941
2952
|
setPlayerColor(playerColor);
|
|
2942
2953
|
}, [playerColor]);
|
|
2943
2954
|
React.useEffect(function () {
|
|
2944
|
-
handleUpdateFEN(FEN);
|
|
2945
|
-
if (reversed) reverseChessBoard();
|
|
2955
|
+
handleUpdateFEN(FEN, reversed);
|
|
2946
2956
|
}, [FEN, reversed]);
|
|
2947
|
-
React.useEffect(function () {
|
|
2948
|
-
if (reversed) reverseChessBoard();
|
|
2949
|
-
}, [reversed]);
|
|
2950
2957
|
React.useEffect(function () {
|
|
2951
2958
|
if (!change) return;
|
|
2952
2959
|
var reversedChange = reversed ? JSChessEngine.reverseMove(change.move) : change.move;
|
|
@@ -2959,7 +2966,6 @@ var ChessBoard = function ChessBoard(props) {
|
|
|
2959
2966
|
}), React__default.createElement(ChessBoardFiguresLayout, {
|
|
2960
2967
|
initialState: initialState,
|
|
2961
2968
|
change: newMove,
|
|
2962
|
-
reversed: reversed,
|
|
2963
2969
|
boardConfig: boardConfig,
|
|
2964
2970
|
animated: animated
|
|
2965
2971
|
}), React__default.createElement(ChessBoardInteractiveLayout, {
|