react-chessboard-ui 2.1.0 → 2.2.0
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.
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { PieceColor, GameResult, MoveData, SquarePos } from "../JSChessEngine";
|
|
2
2
|
import { FC } from "react";
|
|
3
|
-
import { ChangeMove, ChessBoardConfig } from "./models";
|
|
3
|
+
import { ArrowCoords, ChangeMove, ChessBoardConfig } from "./models";
|
|
4
4
|
declare type ChessBoardProps = {
|
|
5
5
|
FEN: string;
|
|
6
6
|
onChange: (moveData: MoveData) => void;
|
|
@@ -11,6 +11,7 @@ declare type ChessBoardProps = {
|
|
|
11
11
|
playerColor?: PieceColor;
|
|
12
12
|
viewOnly?: boolean;
|
|
13
13
|
moveHighlight?: [SquarePos, SquarePos];
|
|
14
|
+
moveArrows?: ArrowCoords[];
|
|
14
15
|
};
|
|
15
16
|
export declare const ChessBoard: FC<ChessBoardProps>;
|
|
16
17
|
export {};
|
package/dist/index.js
CHANGED
|
@@ -2938,7 +2938,9 @@ var ArrowLayout = function ArrowLayout(props) {
|
|
|
2938
2938
|
var startArrowCoord = props.startArrowCoord,
|
|
2939
2939
|
arrowsCoords = props.arrowsCoords,
|
|
2940
2940
|
grabbingPos = props.grabbingPos,
|
|
2941
|
-
boardConfig = props.boardConfig
|
|
2941
|
+
boardConfig = props.boardConfig,
|
|
2942
|
+
_props$externalArrows = props.externalArrowsCoords,
|
|
2943
|
+
externalArrowsCoords = _props$externalArrows === void 0 ? [] : _props$externalArrows;
|
|
2942
2944
|
return React__default.createElement("div", {
|
|
2943
2945
|
className: styles.arrowsLayer
|
|
2944
2946
|
}, startArrowCoord[0] > -1 && grabbingPos[0] > -1 && React__default.createElement(Arrow, {
|
|
@@ -2951,6 +2953,12 @@ var ArrowLayout = function ArrowLayout(props) {
|
|
|
2951
2953
|
}, coords, {
|
|
2952
2954
|
color: boardConfig.arrowColor
|
|
2953
2955
|
}));
|
|
2956
|
+
}), externalArrowsCoords.map(function (coords, i) {
|
|
2957
|
+
return React__default.createElement(Arrow, Object.assign({
|
|
2958
|
+
key: "extArrow_" + i
|
|
2959
|
+
}, coords, {
|
|
2960
|
+
color: boardConfig.arrowColor
|
|
2961
|
+
}));
|
|
2954
2962
|
}));
|
|
2955
2963
|
};
|
|
2956
2964
|
|
|
@@ -2989,7 +2997,9 @@ var ChessBoard = function ChessBoard(props) {
|
|
|
2989
2997
|
config = props.config,
|
|
2990
2998
|
playerColor = props.playerColor,
|
|
2991
2999
|
viewOnly = props.viewOnly,
|
|
2992
|
-
moveHighlight = props.moveHighlight
|
|
3000
|
+
moveHighlight = props.moveHighlight,
|
|
3001
|
+
_props$moveArrows = props.moveArrows,
|
|
3002
|
+
moveArrows = _props$moveArrows === void 0 ? [] : _props$moveArrows;
|
|
2993
3003
|
var _useChessBoardInterac = useChessBoardInteractive({
|
|
2994
3004
|
onChange: onChange,
|
|
2995
3005
|
onEndGame: onEndGame,
|
|
@@ -3054,6 +3064,12 @@ var ChessBoard = function ChessBoard(props) {
|
|
|
3054
3064
|
var reversedChange = reversed ? JSChessEngine.reverseMove(change.move) : change.move;
|
|
3055
3065
|
handleChangeFromExternal(reversedChange, change.withTransition);
|
|
3056
3066
|
}, [change]);
|
|
3067
|
+
var externalArrows = moveArrows.map(function (arrow) {
|
|
3068
|
+
return {
|
|
3069
|
+
start: correctGrabbingPosForArrow(arrow.start, boardConfig),
|
|
3070
|
+
end: correctGrabbingPosForArrow(arrow.end, boardConfig)
|
|
3071
|
+
};
|
|
3072
|
+
});
|
|
3057
3073
|
return React__default.createElement("div", {
|
|
3058
3074
|
className: styles.chessBoard
|
|
3059
3075
|
}, React__default.createElement(ChessBoardCellsLayout, {
|
|
@@ -3075,6 +3091,7 @@ var ChessBoard = function ChessBoard(props) {
|
|
|
3075
3091
|
onHasCheck: getHasCheckByCellPos
|
|
3076
3092
|
}), React__default.createElement(ArrowLayout, {
|
|
3077
3093
|
arrowsCoords: arrowsCoords,
|
|
3094
|
+
externalArrowsCoords: externalArrows,
|
|
3078
3095
|
startArrowCoord: startArrowCoord,
|
|
3079
3096
|
grabbingPos: correctGrabbingPosForArrow(grabbingCell, boardConfig),
|
|
3080
3097
|
boardConfig: boardConfig
|