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.
@@ -1546,7 +1546,7 @@ var partFENtoState = function partFENtoState(notation) {
1546
1546
  return row.length > 0;
1547
1547
  });
1548
1548
  };
1549
- var FENtoGameState = function FENtoGameState(FEN) {
1549
+ var FENtoGameState = function FENtoGameState(FEN, reversed) {
1550
1550
  var gameState = {
1551
1551
  boardState: [],
1552
1552
  currentColor: 'white'
@@ -1575,6 +1575,10 @@ var FENtoGameState = function FENtoGameState(FEN) {
1575
1575
  beated: true
1576
1576
  });
1577
1577
  }
1578
+ if (reversed) return {
1579
+ boardState: JSChessEngine.reverseChessBoard(gameState.boardState),
1580
+ currentColor: gameState.currentColor
1581
+ };
1578
1582
  return gameState;
1579
1583
  };
1580
1584
  var getBeatedCellFENfromState = function getBeatedCellFENfromState(state) {
@@ -2424,7 +2428,8 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
2424
2428
  return {};
2425
2429
  }
2426
2430
  var colorFEN = currentColor === 'white' ? 'black' : 'white';
2427
- var FEN = stateToFEN(updatedCells, colorFEN);
2431
+ var reversedUpdatedCells = boardReversed ? JSChessEngine.reverseChessBoard(updatedCells) : updatedCells;
2432
+ var FEN = stateToFEN(reversedUpdatedCells, colorFEN);
2428
2433
  var moveData = {
2429
2434
  figure: figure,
2430
2435
  from: from,
@@ -2479,7 +2484,8 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
2479
2484
  return {};
2480
2485
  }
2481
2486
  var colorFEN = currentColor === 'white' ? 'black' : 'white';
2482
- var FEN = stateToFEN(updatedCells, colorFEN);
2487
+ var reversedUpdatedCells = boardReversed ? JSChessEngine.reverseChessBoard(updatedCells) : updatedCells;
2488
+ var FEN = stateToFEN(reversedUpdatedCells, colorFEN);
2483
2489
  var moveData = {
2484
2490
  figure: figure,
2485
2491
  from: from,
@@ -2727,7 +2733,9 @@ var useChessBoardInteractive = function useChessBoardInteractive(props) {
2727
2733
  selectClickFrom: selectClickFrom,
2728
2734
  selectHoverFrom: selectHoverFrom,
2729
2735
  setInitialState: setInitialState,
2736
+ setBoardReversed: setBoardReversed,
2730
2737
  startRenderArrow: startRenderArrow,
2738
+ cleanAllForFigure: cleanAllForFigure,
2731
2739
  reverseChessBoard: reverseChessBoard,
2732
2740
  handleGrabbingCell: handleGrabbingCell,
2733
2741
  moveFigureByChange: moveFigureByChange,
@@ -2920,30 +2928,29 @@ var ChessBoard = function ChessBoard(props) {
2920
2928
  setCurrentColor = _useChessBoardInterac.setCurrentColor,
2921
2929
  selectHoverFrom = _useChessBoardInterac.selectHoverFrom,
2922
2930
  setInitialState = _useChessBoardInterac.setInitialState,
2931
+ setBoardReversed = _useChessBoardInterac.setBoardReversed,
2923
2932
  startRenderArrow = _useChessBoardInterac.startRenderArrow,
2924
- reverseChessBoard = _useChessBoardInterac.reverseChessBoard,
2933
+ cleanAllForFigure = _useChessBoardInterac.cleanAllForFigure,
2925
2934
  handleGrabbingCell = _useChessBoardInterac.handleGrabbingCell,
2926
2935
  getHasCheckByCellPos = _useChessBoardInterac.getHasCheckByCellPos,
2927
2936
  handleSelectFigurePicker = _useChessBoardInterac.handleSelectFigurePicker,
2928
2937
  handleChangeFromExternal = _useChessBoardInterac.handleChangeFromExternal;
2929
- var handleUpdateFEN = function handleUpdateFEN(FEN) {
2930
- var _FENtoGameState = FENtoGameState(FEN),
2938
+ var handleUpdateFEN = function handleUpdateFEN(FEN, reversed) {
2939
+ var _FENtoGameState = FENtoGameState(FEN, reversed),
2931
2940
  boardState = _FENtoGameState.boardState,
2932
2941
  currentColor = _FENtoGameState.currentColor;
2942
+ cleanAllForFigure();
2933
2943
  setInitialState(boardState);
2934
2944
  setActualState(boardState);
2935
2945
  setCurrentColor(currentColor);
2946
+ setBoardReversed(reversed);
2936
2947
  };
2937
2948
  useEffect(function () {
2938
2949
  setPlayerColor(playerColor);
2939
2950
  }, [playerColor]);
2940
2951
  useEffect(function () {
2941
- handleUpdateFEN(FEN);
2942
- if (reversed) reverseChessBoard();
2952
+ handleUpdateFEN(FEN, reversed);
2943
2953
  }, [FEN, reversed]);
2944
- useEffect(function () {
2945
- if (reversed) reverseChessBoard();
2946
- }, [reversed]);
2947
2954
  useEffect(function () {
2948
2955
  if (!change) return;
2949
2956
  var reversedChange = reversed ? JSChessEngine.reverseMove(change.move) : change.move;
@@ -2956,7 +2963,6 @@ var ChessBoard = function ChessBoard(props) {
2956
2963
  }), React.createElement(ChessBoardFiguresLayout, {
2957
2964
  initialState: initialState,
2958
2965
  change: newMove,
2959
- reversed: reversed,
2960
2966
  boardConfig: boardConfig,
2961
2967
  animated: animated
2962
2968
  }), React.createElement(ChessBoardInteractiveLayout, {