react-native-chess-kit 0.4.1 → 0.5.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.
- package/lib/commonjs/board-coordinates.js +76 -9
- package/lib/commonjs/board-coordinates.js.map +1 -1
- package/lib/commonjs/board.js +57 -13
- package/lib/commonjs/board.js.map +1 -1
- package/lib/commonjs/constants.js +4 -1
- package/lib/commonjs/constants.js.map +1 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/static-board.js +44 -9
- package/lib/commonjs/static-board.js.map +1 -1
- package/lib/module/board-coordinates.js +77 -10
- package/lib/module/board-coordinates.js.map +1 -1
- package/lib/module/board.js +58 -14
- package/lib/module/board.js.map +1 -1
- package/lib/module/constants.js +3 -0
- package/lib/module/constants.js.map +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/static-board.js +45 -10
- package/lib/module/static-board.js.map +1 -1
- package/lib/typescript/board-coordinates.d.ts +10 -4
- package/lib/typescript/board-coordinates.d.ts.map +1 -1
- package/lib/typescript/board.d.ts.map +1 -1
- package/lib/typescript/constants.d.ts +2 -0
- package/lib/typescript/constants.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/static-board.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +29 -8
- package/lib/typescript/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/board-coordinates.tsx +103 -9
- package/src/board.tsx +69 -19
- package/src/constants.ts +3 -0
- package/src/index.ts +1 -0
- package/src/static-board.tsx +47 -10
- package/src/types.ts +30 -8
|
@@ -2,18 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import { View, Text } from 'react-native';
|
|
5
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
6
|
const FILES_WHITE = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'];
|
|
7
7
|
const FILES_BLACK = ['h', 'g', 'f', 'e', 'd', 'c', 'b', 'a'];
|
|
8
8
|
const RANKS_WHITE = ['8', '7', '6', '5', '4', '3', '2', '1'];
|
|
9
9
|
const RANKS_BLACK = ['1', '2', '3', '4', '5', '6', '7', '8'];
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
|
-
* File letters (a-h) and rank numbers (1-8) drawn on the board
|
|
12
|
+
* File letters (a-h) and rank numbers (1-8) drawn on or around the board.
|
|
13
13
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
14
|
+
* Two modes:
|
|
15
|
+
* - **inside** (default): absolute-positioned inside each edge square, colors
|
|
16
|
+
* alternate to contrast with the square behind them.
|
|
17
|
+
* - **outside**: rendered in a gutter area around the board. Rank numbers to
|
|
18
|
+
* the left, file letters along the bottom. Uses the dark square color.
|
|
17
19
|
*/
|
|
18
20
|
export const BoardCoordinates = /*#__PURE__*/React.memo(function BoardCoordinates({
|
|
19
21
|
boardSize,
|
|
@@ -21,14 +23,81 @@ export const BoardCoordinates = /*#__PURE__*/React.memo(function BoardCoordinate
|
|
|
21
23
|
lightColor,
|
|
22
24
|
darkColor,
|
|
23
25
|
withLetters,
|
|
24
|
-
withNumbers
|
|
26
|
+
withNumbers,
|
|
27
|
+
position = 'inside',
|
|
28
|
+
gutterWidth = 0
|
|
25
29
|
}) {
|
|
26
30
|
if (!withLetters && !withNumbers) return null;
|
|
27
31
|
const squareSize = boardSize / 8;
|
|
28
|
-
const fontSize = squareSize * 0.22;
|
|
29
|
-
const padding = squareSize * 0.06;
|
|
30
32
|
const files = orientation === 'white' ? FILES_WHITE : FILES_BLACK;
|
|
31
33
|
const ranks = orientation === 'white' ? RANKS_WHITE : RANKS_BLACK;
|
|
34
|
+
|
|
35
|
+
// ── Outside mode: labels in gutter area around the board ──
|
|
36
|
+
if (position === 'outside') {
|
|
37
|
+
const fontSize = gutterWidth * 0.65;
|
|
38
|
+
const textColor = darkColor;
|
|
39
|
+
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
40
|
+
children: [withNumbers && /*#__PURE__*/_jsx(View, {
|
|
41
|
+
style: {
|
|
42
|
+
position: 'absolute',
|
|
43
|
+
left: 0,
|
|
44
|
+
top: 0,
|
|
45
|
+
width: gutterWidth,
|
|
46
|
+
height: boardSize
|
|
47
|
+
},
|
|
48
|
+
pointerEvents: "none",
|
|
49
|
+
children: ranks.map((rank, row) => /*#__PURE__*/_jsx(View, {
|
|
50
|
+
style: {
|
|
51
|
+
position: 'absolute',
|
|
52
|
+
top: row * squareSize,
|
|
53
|
+
width: gutterWidth,
|
|
54
|
+
height: squareSize,
|
|
55
|
+
alignItems: 'center',
|
|
56
|
+
justifyContent: 'center'
|
|
57
|
+
},
|
|
58
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
59
|
+
style: {
|
|
60
|
+
fontSize,
|
|
61
|
+
fontWeight: '600',
|
|
62
|
+
color: textColor
|
|
63
|
+
},
|
|
64
|
+
children: rank
|
|
65
|
+
})
|
|
66
|
+
}, `r-${rank}`))
|
|
67
|
+
}), withLetters && /*#__PURE__*/_jsx(View, {
|
|
68
|
+
style: {
|
|
69
|
+
position: 'absolute',
|
|
70
|
+
left: withNumbers ? gutterWidth : 0,
|
|
71
|
+
bottom: 0,
|
|
72
|
+
width: boardSize,
|
|
73
|
+
height: gutterWidth
|
|
74
|
+
},
|
|
75
|
+
pointerEvents: "none",
|
|
76
|
+
children: files.map((file, col) => /*#__PURE__*/_jsx(View, {
|
|
77
|
+
style: {
|
|
78
|
+
position: 'absolute',
|
|
79
|
+
left: col * squareSize,
|
|
80
|
+
width: squareSize,
|
|
81
|
+
height: gutterWidth,
|
|
82
|
+
alignItems: 'center',
|
|
83
|
+
justifyContent: 'center'
|
|
84
|
+
},
|
|
85
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
86
|
+
style: {
|
|
87
|
+
fontSize,
|
|
88
|
+
fontWeight: '600',
|
|
89
|
+
color: textColor
|
|
90
|
+
},
|
|
91
|
+
children: file
|
|
92
|
+
})
|
|
93
|
+
}, `f-${file}`))
|
|
94
|
+
})]
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// ── Inside mode (default): absolute-positioned inside edge squares ──
|
|
99
|
+
const fontSize = squareSize * 0.22;
|
|
100
|
+
const padding = squareSize * 0.06;
|
|
32
101
|
return /*#__PURE__*/_jsxs(View, {
|
|
33
102
|
style: {
|
|
34
103
|
position: 'absolute',
|
|
@@ -37,7 +106,6 @@ export const BoardCoordinates = /*#__PURE__*/React.memo(function BoardCoordinate
|
|
|
37
106
|
},
|
|
38
107
|
pointerEvents: "none",
|
|
39
108
|
children: [withNumbers && ranks.map((rank, row) => {
|
|
40
|
-
// First column square: row 0 col 0 = light if (0+0)%2===0
|
|
41
109
|
const isLight = row % 2 === 0;
|
|
42
110
|
const textColor = isLight ? darkColor : lightColor;
|
|
43
111
|
return /*#__PURE__*/_jsx(Text, {
|
|
@@ -52,7 +120,6 @@ export const BoardCoordinates = /*#__PURE__*/React.memo(function BoardCoordinate
|
|
|
52
120
|
children: rank
|
|
53
121
|
}, `r-${rank}`);
|
|
54
122
|
}), withLetters && files.map((file, col) => {
|
|
55
|
-
// Last row (7), column col: light if (7+col)%2===0
|
|
56
123
|
const isLight = (7 + col) % 2 === 0;
|
|
57
124
|
const textColor = isLight ? darkColor : lightColor;
|
|
58
125
|
return /*#__PURE__*/_jsx(Text, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","View","Text","jsx","_jsx","jsxs","_jsxs","FILES_WHITE","FILES_BLACK","RANKS_WHITE","RANKS_BLACK","BoardCoordinates","memo","boardSize","orientation","lightColor","darkColor","withLetters","withNumbers","
|
|
1
|
+
{"version":3,"names":["React","View","Text","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","FILES_WHITE","FILES_BLACK","RANKS_WHITE","RANKS_BLACK","BoardCoordinates","memo","boardSize","orientation","lightColor","darkColor","withLetters","withNumbers","position","gutterWidth","squareSize","files","ranks","fontSize","textColor","children","style","left","top","width","height","pointerEvents","map","rank","row","alignItems","justifyContent","fontWeight","color","bottom","file","col","padding","isLight","right","textAlign"],"sourceRoot":"..\\..\\src","sources":["board-coordinates.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/board.js
CHANGED
|
@@ -4,7 +4,7 @@ import React, { forwardRef, useState, useCallback, useImperativeHandle, useEffec
|
|
|
4
4
|
import { View } from 'react-native';
|
|
5
5
|
import { GestureDetector } from 'react-native-gesture-handler';
|
|
6
6
|
import { useSharedValue, withTiming, FadeOut } from 'react-native-reanimated';
|
|
7
|
-
import { DEFAULT_BOARD_COLORS, DEFAULT_MOVE_DURATION, DEFAULT_LAST_MOVE_COLOR, DEFAULT_CHECK_COLOR, DEFAULT_SELECTED_COLOR, DEFAULT_PREMOVE_COLOR, DEFAULT_DRAG_TARGET_COLOR, CAPTURE_FADE_DURATION } from './constants';
|
|
7
|
+
import { DEFAULT_BOARD_COLORS, DEFAULT_MOVE_DURATION, DEFAULT_LAST_MOVE_COLOR, DEFAULT_CHECK_COLOR, DEFAULT_SELECTED_COLOR, DEFAULT_PREMOVE_COLOR, DEFAULT_DRAG_TARGET_COLOR, CAPTURE_FADE_DURATION, COORDINATE_GUTTER_SCALE } from './constants';
|
|
8
8
|
import { DefaultPieceSet } from './pieces';
|
|
9
9
|
import { useBoardPieces } from './use-board-pieces';
|
|
10
10
|
import { useBoardState } from './use-board-state';
|
|
@@ -92,8 +92,9 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
92
92
|
premovesEnabled = false,
|
|
93
93
|
// Appearance
|
|
94
94
|
colors,
|
|
95
|
-
|
|
96
|
-
|
|
95
|
+
coordinatePosition: coordinatePositionProp,
|
|
96
|
+
withLetters: withLettersProp,
|
|
97
|
+
withNumbers: withNumbersProp,
|
|
97
98
|
renderPiece,
|
|
98
99
|
pieceSet,
|
|
99
100
|
// Overlays
|
|
@@ -113,7 +114,7 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
113
114
|
moveDuration = DEFAULT_MOVE_DURATION,
|
|
114
115
|
animationConfig,
|
|
115
116
|
animateFlip = true,
|
|
116
|
-
pieceExitAnimation
|
|
117
|
+
pieceExitAnimation,
|
|
117
118
|
// Promotion
|
|
118
119
|
onPromotion,
|
|
119
120
|
// Callbacks
|
|
@@ -135,10 +136,22 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
135
136
|
} = e.nativeEvent.layout;
|
|
136
137
|
setMeasuredSize(Math.min(width, height));
|
|
137
138
|
}, []);
|
|
138
|
-
const
|
|
139
|
-
const squareSize = boardSize / 8;
|
|
139
|
+
const outerSize = boardSizeProp ?? measuredSize;
|
|
140
140
|
const boardColors = colors ?? DEFAULT_BOARD_COLORS;
|
|
141
141
|
|
|
142
|
+
// Resolve coordinate position: new prop takes precedence over legacy booleans
|
|
143
|
+
const coordinatePosition = coordinatePositionProp ?? (withLettersProp === false && withNumbersProp === false ? 'none' : 'inside');
|
|
144
|
+
const isOutside = coordinatePosition === 'outside';
|
|
145
|
+
const isCoordVisible = coordinatePosition !== 'none';
|
|
146
|
+
|
|
147
|
+
// When outside: reserve gutter space; inner board = outer minus gutters
|
|
148
|
+
const gutterWidth = isOutside ? Math.round(outerSize / 8 * COORDINATE_GUTTER_SCALE) : 0;
|
|
149
|
+
const boardSize = isOutside ? outerSize - gutterWidth : outerSize;
|
|
150
|
+
const squareSize = boardSize / 8;
|
|
151
|
+
|
|
152
|
+
// Resolve piece exit animation: null = disabled, undefined = default FadeOut
|
|
153
|
+
const resolvedPieceExitAnimation = pieceExitAnimation === null ? undefined : pieceExitAnimation ?? FadeOut.duration(CAPTURE_FADE_DURATION);
|
|
154
|
+
|
|
142
155
|
// --- Board flip animation ---
|
|
143
156
|
const flipRotation = useSharedValue(orientation === 'black' ? 180 : 0);
|
|
144
157
|
const prevOrientationRef = useRef(orientation);
|
|
@@ -456,7 +469,7 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
456
469
|
}));
|
|
457
470
|
|
|
458
471
|
// If no size yet (auto-sizing), render invisible container for measurement
|
|
459
|
-
if (
|
|
472
|
+
if (outerSize === 0) {
|
|
460
473
|
return /*#__PURE__*/_jsx(View, {
|
|
461
474
|
style: {
|
|
462
475
|
flex: 1,
|
|
@@ -465,27 +478,36 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
465
478
|
onLayout: handleLayout
|
|
466
479
|
});
|
|
467
480
|
}
|
|
468
|
-
|
|
481
|
+
|
|
482
|
+
// Inner board with all interactive layers
|
|
483
|
+
const boardContent = /*#__PURE__*/_jsx(GestureDetector, {
|
|
469
484
|
gesture: gesture,
|
|
470
485
|
children: /*#__PURE__*/_jsxs(View, {
|
|
471
|
-
style: {
|
|
486
|
+
style: isOutside ? {
|
|
487
|
+
width: boardSize,
|
|
488
|
+
height: boardSize,
|
|
489
|
+
position: 'absolute',
|
|
490
|
+
top: 0,
|
|
491
|
+
right: 0
|
|
492
|
+
} : {
|
|
472
493
|
width: boardSize,
|
|
473
494
|
height: boardSize
|
|
474
495
|
},
|
|
475
|
-
onLayout: boardSizeProp ?
|
|
496
|
+
onLayout: !isOutside && !boardSizeProp ? handleLayout : undefined,
|
|
476
497
|
accessibilityLabel: "Chess board",
|
|
477
498
|
accessibilityRole: "adjustable",
|
|
478
499
|
children: [/*#__PURE__*/_jsx(BoardBackground, {
|
|
479
500
|
boardSize: boardSize,
|
|
480
501
|
lightColor: boardColors.light,
|
|
481
502
|
darkColor: boardColors.dark
|
|
482
|
-
}), /*#__PURE__*/_jsx(BoardCoordinates, {
|
|
503
|
+
}), isCoordVisible && !isOutside && /*#__PURE__*/_jsx(BoardCoordinates, {
|
|
483
504
|
boardSize: boardSize,
|
|
484
505
|
orientation: orientation,
|
|
485
506
|
lightColor: boardColors.light,
|
|
486
507
|
darkColor: boardColors.dark,
|
|
487
|
-
withLetters:
|
|
488
|
-
withNumbers:
|
|
508
|
+
withLetters: true,
|
|
509
|
+
withNumbers: true,
|
|
510
|
+
position: "inside"
|
|
489
511
|
}), /*#__PURE__*/_jsx(BoardHighlights, {
|
|
490
512
|
boardSize: boardSize,
|
|
491
513
|
orientation: orientation,
|
|
@@ -521,7 +543,7 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
521
543
|
renderPiece: resolvedRenderer,
|
|
522
544
|
activeSquare: gestureState.activeSquare,
|
|
523
545
|
isDragging: gestureState.isDragging,
|
|
524
|
-
exitingAnimation:
|
|
546
|
+
exitingAnimation: resolvedPieceExitAnimation
|
|
525
547
|
}), (arrows && arrows.length > 0 || shapes && shapes.length > 0) && /*#__PURE__*/_jsx(BoardArrows, {
|
|
526
548
|
boardSize: boardSize,
|
|
527
549
|
orientation: orientation,
|
|
@@ -551,5 +573,27 @@ export const Board = /*#__PURE__*/forwardRef(function Board({
|
|
|
551
573
|
})]
|
|
552
574
|
})
|
|
553
575
|
});
|
|
576
|
+
|
|
577
|
+
// Outside coordinates: wrap board in outer container with gutter
|
|
578
|
+
if (isOutside) {
|
|
579
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
580
|
+
style: {
|
|
581
|
+
width: outerSize,
|
|
582
|
+
height: boardSize + gutterWidth
|
|
583
|
+
},
|
|
584
|
+
onLayout: boardSizeProp ? undefined : handleLayout,
|
|
585
|
+
children: [boardContent, /*#__PURE__*/_jsx(BoardCoordinates, {
|
|
586
|
+
boardSize: boardSize,
|
|
587
|
+
orientation: orientation,
|
|
588
|
+
lightColor: boardColors.light,
|
|
589
|
+
darkColor: boardColors.dark,
|
|
590
|
+
withLetters: true,
|
|
591
|
+
withNumbers: true,
|
|
592
|
+
position: "outside",
|
|
593
|
+
gutterWidth: gutterWidth
|
|
594
|
+
})]
|
|
595
|
+
});
|
|
596
|
+
}
|
|
597
|
+
return boardContent;
|
|
554
598
|
});
|
|
555
599
|
//# sourceMappingURL=board.js.map
|
package/lib/module/board.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","forwardRef","useState","useCallback","useImperativeHandle","useEffect","useMemo","useRef","View","GestureDetector","useSharedValue","withTiming","FadeOut","DEFAULT_BOARD_COLORS","DEFAULT_MOVE_DURATION","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","CAPTURE_FADE_DURATION","DefaultPieceSet","useBoardPieces","useBoardState","useBoardGesture","usePremove","BoardBackground","BoardCoordinates","BoardHighlights","DragTargetHighlight","BoardLegalDots","BoardPiecesLayer","BoardDragGhost","BoardArrows","BoardAnnotations","PromotionPicker","jsx","_jsx","jsxs","_jsxs","detectCheckSquare","fen","isInCheck","getTurn","turn","kingChar","placement","split","ranks","rankIdx","length","rank","fileIdx","char","parseInt","files","Board","orientation","boardSize","boardSizeProp","gestureEnabled","player","moveMethod","showLegalMoves","premovesEnabled","colors","withLetters","withNumbers","renderPiece","pieceSet","lastMove","highlights","arrows","shapes","annotations","showDragTarget","lastMoveColor","checkHighlightColor","selectedSquareColor","premoveColor","dragTargetColor","moveDuration","animationConfig","animateFlip","pieceExitAnimation","duration","onPromotion","onMove","onPieceClick","onSquareClick","onPieceDragBegin","onPieceDragEnd","onSquareLongPress","onPremove","onHaptic","ref","measuredSize","setMeasuredSize","handleLayout","e","width","height","nativeEvent","layout","Math","min","squareSize","boardColors","flipRotation","prevOrientationRef","current","value","internalFen","setInternalFen","boardState","loadFen","pieces","checkSquareState","selectedSquare","setSelectedSquare","legalMoves","setLegalMoves","imperativeHighlights","setImperativeHighlights","premove","setPremove","clearPremove","consumePremove","promotionState","setPromotionState","resolvedRenderer","set","code","size","renderer","style","isPromotionMove","from","to","piece","find","p","square","toRank","color","handlePieceSelected","getLegalMoves","handleSelectionCleared","handlePieceMoved","result","applyMove","applied","handlePromotionSelect","promo","toLowerCase","choice","handlePromotionCancel","handlePremoveSet","pm","premovePiece","consumed","promotion","richCallbacks","premoveCallbacks","onPremoveSet","gesture","gestureState","callbacks","onPieceSelected","onPieceMoved","onSelectionCleared","currentTurn","move","moveArg","Promise","resolve","setTimeout","highlight","prev","filtered","filter","h","clearHighlights","resetBoard","newFen","undo","prevFen","undoMove","clearPremoves","flex","aspectRatio","onLayout","children","undefined","accessibilityLabel","accessibilityRole","lightColor","light","darkColor","dark","checkSquare","checkColor","selectedColor","premoveSquares","dragTargetSquare","activeSquare","isDragging","exitingAnimation","dragX","dragY","dragPieceCode","pieceColor","onSelect","onCancel"],"sourceRoot":"..\\..\\src","sources":["board.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","forwardRef","useState","useCallback","useImperativeHandle","useEffect","useMemo","useRef","View","GestureDetector","useSharedValue","withTiming","FadeOut","DEFAULT_BOARD_COLORS","DEFAULT_MOVE_DURATION","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","CAPTURE_FADE_DURATION","COORDINATE_GUTTER_SCALE","DefaultPieceSet","useBoardPieces","useBoardState","useBoardGesture","usePremove","BoardBackground","BoardCoordinates","BoardHighlights","DragTargetHighlight","BoardLegalDots","BoardPiecesLayer","BoardDragGhost","BoardArrows","BoardAnnotations","PromotionPicker","jsx","_jsx","jsxs","_jsxs","detectCheckSquare","fen","isInCheck","getTurn","turn","kingChar","placement","split","ranks","rankIdx","length","rank","fileIdx","char","parseInt","files","Board","orientation","boardSize","boardSizeProp","gestureEnabled","player","moveMethod","showLegalMoves","premovesEnabled","colors","coordinatePosition","coordinatePositionProp","withLetters","withLettersProp","withNumbers","withNumbersProp","renderPiece","pieceSet","lastMove","highlights","arrows","shapes","annotations","showDragTarget","lastMoveColor","checkHighlightColor","selectedSquareColor","premoveColor","dragTargetColor","moveDuration","animationConfig","animateFlip","pieceExitAnimation","onPromotion","onMove","onPieceClick","onSquareClick","onPieceDragBegin","onPieceDragEnd","onSquareLongPress","onPremove","onHaptic","ref","measuredSize","setMeasuredSize","handleLayout","e","width","height","nativeEvent","layout","Math","min","outerSize","boardColors","isOutside","isCoordVisible","gutterWidth","round","squareSize","resolvedPieceExitAnimation","undefined","duration","flipRotation","prevOrientationRef","current","value","internalFen","setInternalFen","boardState","loadFen","pieces","checkSquareState","selectedSquare","setSelectedSquare","legalMoves","setLegalMoves","imperativeHighlights","setImperativeHighlights","premove","setPremove","clearPremove","consumePremove","promotionState","setPromotionState","resolvedRenderer","set","code","size","renderer","style","isPromotionMove","from","to","piece","find","p","square","toRank","color","handlePieceSelected","getLegalMoves","handleSelectionCleared","handlePieceMoved","result","applyMove","applied","handlePromotionSelect","promo","toLowerCase","choice","handlePromotionCancel","handlePremoveSet","pm","premovePiece","consumed","promotion","richCallbacks","premoveCallbacks","onPremoveSet","gesture","gestureState","callbacks","onPieceSelected","onPieceMoved","onSelectionCleared","currentTurn","move","moveArg","Promise","resolve","setTimeout","highlight","prev","filtered","filter","h","clearHighlights","resetBoard","newFen","undo","prevFen","undoMove","clearPremoves","flex","aspectRatio","onLayout","boardContent","children","position","top","right","accessibilityLabel","accessibilityRole","lightColor","light","darkColor","dark","checkSquare","checkColor","selectedColor","premoveSquares","dragTargetSquare","activeSquare","isDragging","exitingAnimation","dragX","dragY","dragPieceCode","pieceColor","onSelect","onCancel"],"sourceRoot":"..\\..\\src","sources":["board.tsx"],"mappings":"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","ignoreList":[]}
|
package/lib/module/constants.js
CHANGED
|
@@ -75,6 +75,9 @@ export const ANNOTATION_SCALE = 0.35;
|
|
|
75
75
|
/** Coordinate font size as fraction of square size */
|
|
76
76
|
export const COORDINATE_FONT_SCALE = 0.22;
|
|
77
77
|
|
|
78
|
+
/** Outside-coordinate gutter width as fraction of square size */
|
|
79
|
+
export const COORDINATE_GUTTER_SCALE = 0.45;
|
|
80
|
+
|
|
78
81
|
/** Drag ghost scale factor (1.1x larger than normal piece) */
|
|
79
82
|
export const DRAG_GHOST_SCALE = 1.1;
|
|
80
83
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_BOARD_COLORS","light","dark","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","DEFAULT_ARROW_COLOR","DEFAULT_SHAPE_COLOR","DEFAULT_ANNOTATION_BG","DEFAULT_ANNOTATION_TEXT","DEFAULT_MOVE_DURATION","CAPTURE_FADE_DURATION","DOT_SCALE","RING_SCALE","RING_BORDER_RATIO","ARROW_STROKE_WIDTH","ARROW_HEAD_SIZE","ARROW_SHORTEN_BY","ANNOTATION_SCALE","COORDINATE_FONT_SCALE","DRAG_GHOST_SCALE","PROMOTION_PIECE_PADDING","PIECE_CODES","SQUARE_INDICES","Array","from","length","_","i","FILES_WHITE","FILES_BLACK","RANKS_WHITE","RANKS_BLACK"],"sourceRoot":"..\\..\\src","sources":["constants.ts"],"mappings":";;AAEA;AACA;AACA;;AAEA;AACA,OAAO,MAAMA,oBAAiC,GAAG;EAC/CC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE;AACR,CAAC;;AAED;AACA,OAAO,MAAMC,uBAAuB,GAAG,wBAAwB;;AAE/D;AACA,OAAO,MAAMC,mBAAmB,GAAG,wBAAwB;;AAE3D;AACA,OAAO,MAAMC,sBAAsB,GAAG,wBAAwB;;AAE9D;AACA,OAAO,MAAMC,qBAAqB,GAAG,wBAAwB;;AAE7D;AACA,OAAO,MAAMC,yBAAyB,GAAG,oBAAoB;;AAE7D;AACA,OAAO,MAAMC,mBAAmB,GAAG,0BAA0B;;AAE7D;AACA,OAAO,MAAMC,mBAAmB,GAAG,wBAAwB;;AAE3D;AACA,OAAO,MAAMC,qBAAqB,GAAG,wBAAwB;;AAE7D;AACA,OAAO,MAAMC,uBAAuB,GAAG,SAAS;;AAEhD;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,qBAAqB,GAAG,GAAG;;AAExC;AACA,OAAO,MAAMC,qBAAqB,GAAG,GAAG;;AAExC;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,SAAS,GAAG,IAAI;;AAE7B;AACA,OAAO,MAAMC,UAAU,GAAG,IAAI;;AAE9B;AACA,OAAO,MAAMC,iBAAiB,GAAG,IAAI;;AAErC;AACA,OAAO,MAAMC,kBAAkB,GAAG,GAAG;;AAErC;AACA,OAAO,MAAMC,eAAe,GAAG,GAAG;;AAElC;AACA,OAAO,MAAMC,gBAAgB,GAAG,CAAC;;AAEjC;AACA,OAAO,MAAMC,gBAAgB,GAAG,IAAI;;AAEpC;AACA,OAAO,MAAMC,qBAAqB,GAAG,IAAI;;AAEzC;AACA,OAAO,MAAMC,gBAAgB,GAAG,GAAG;;AAEnC;AACA,OAAO,MAAMC,uBAAuB,GAAG,GAAG;;AAE1C;AACA;AACA;;AAEA,OAAO,MAAMC,WAAW,GAAG,CACzB,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAClC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAC1B;;AAEV;AACA,OAAO,MAAMC,cAAc,GAAGC,KAAK,CAACC,IAAI,CAAC;EAAEC,MAAM,EAAE;AAAG,CAAC,EAAE,CAACC,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC;;AAErE;AACA,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_BOARD_COLORS","light","dark","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","DEFAULT_ARROW_COLOR","DEFAULT_SHAPE_COLOR","DEFAULT_ANNOTATION_BG","DEFAULT_ANNOTATION_TEXT","DEFAULT_MOVE_DURATION","CAPTURE_FADE_DURATION","DOT_SCALE","RING_SCALE","RING_BORDER_RATIO","ARROW_STROKE_WIDTH","ARROW_HEAD_SIZE","ARROW_SHORTEN_BY","ANNOTATION_SCALE","COORDINATE_FONT_SCALE","COORDINATE_GUTTER_SCALE","DRAG_GHOST_SCALE","PROMOTION_PIECE_PADDING","PIECE_CODES","SQUARE_INDICES","Array","from","length","_","i","FILES_WHITE","FILES_BLACK","RANKS_WHITE","RANKS_BLACK"],"sourceRoot":"..\\..\\src","sources":["constants.ts"],"mappings":";;AAEA;AACA;AACA;;AAEA;AACA,OAAO,MAAMA,oBAAiC,GAAG;EAC/CC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE;AACR,CAAC;;AAED;AACA,OAAO,MAAMC,uBAAuB,GAAG,wBAAwB;;AAE/D;AACA,OAAO,MAAMC,mBAAmB,GAAG,wBAAwB;;AAE3D;AACA,OAAO,MAAMC,sBAAsB,GAAG,wBAAwB;;AAE9D;AACA,OAAO,MAAMC,qBAAqB,GAAG,wBAAwB;;AAE7D;AACA,OAAO,MAAMC,yBAAyB,GAAG,oBAAoB;;AAE7D;AACA,OAAO,MAAMC,mBAAmB,GAAG,0BAA0B;;AAE7D;AACA,OAAO,MAAMC,mBAAmB,GAAG,wBAAwB;;AAE3D;AACA,OAAO,MAAMC,qBAAqB,GAAG,wBAAwB;;AAE7D;AACA,OAAO,MAAMC,uBAAuB,GAAG,SAAS;;AAEhD;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,qBAAqB,GAAG,GAAG;;AAExC;AACA,OAAO,MAAMC,qBAAqB,GAAG,GAAG;;AAExC;AACA;AACA;;AAEA;AACA,OAAO,MAAMC,SAAS,GAAG,IAAI;;AAE7B;AACA,OAAO,MAAMC,UAAU,GAAG,IAAI;;AAE9B;AACA,OAAO,MAAMC,iBAAiB,GAAG,IAAI;;AAErC;AACA,OAAO,MAAMC,kBAAkB,GAAG,GAAG;;AAErC;AACA,OAAO,MAAMC,eAAe,GAAG,GAAG;;AAElC;AACA,OAAO,MAAMC,gBAAgB,GAAG,CAAC;;AAEjC;AACA,OAAO,MAAMC,gBAAgB,GAAG,IAAI;;AAEpC;AACA,OAAO,MAAMC,qBAAqB,GAAG,IAAI;;AAEzC;AACA,OAAO,MAAMC,uBAAuB,GAAG,IAAI;;AAE3C;AACA,OAAO,MAAMC,gBAAgB,GAAG,GAAG;;AAEnC;AACA,OAAO,MAAMC,uBAAuB,GAAG,GAAG;;AAE1C;AACA;AACA;;AAEA,OAAO,MAAMC,WAAW,GAAG,CACzB,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAClC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAC1B;;AAEV;AACA,OAAO,MAAMC,cAAc,GAAGC,KAAK,CAACC,IAAI,CAAC;EAAEC,MAAM,EAAE;AAAG,CAAC,EAAE,CAACC,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC;;AAErE;AACA,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU;AAC5E,OAAO,MAAMC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU","ignoreList":[]}
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Board","StaticBoard","SquareHighlight","Arrow","Annotation","PromotionPicker","DefaultPieceSet","BOARD_THEMES","BOARD_COLORS","DEFAULT_BOARD_COLORS","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","DEFAULT_ARROW_COLOR","DEFAULT_SHAPE_COLOR","DEFAULT_ANNOTATION_BG","DEFAULT_ANNOTATION_TEXT","DEFAULT_MOVE_DURATION","CAPTURE_FADE_DURATION","squareToXY","xyToSquare"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;AAAA;AACA;;AAEA;AACA;AACA;;AAEA,SAASA,KAAK,QAAQ,SAAS;AAC/B,SAASC,WAAW,QAAQ,gBAAgB;;AAE5C;AACA;AACA;;AAEA,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,KAAK,QAAQ,gBAAgB;AACtC,SAASC,UAAU,QAAQ,qBAAqB;AAChD,SAASC,eAAe,QAAQ,oBAAoB;;AAEpD;AACA;AACA;;AAEA,SAASC,eAAe,QAAQ,UAAU;;AAE1C;AACA;AACA;;AAEA,SAASC,YAAY,EAAEC,YAAY,QAAQ,UAAU;;AAErD;AACA;AACA;;AAEA,SACEC,oBAAoB,EACpBC,uBAAuB,EACvBC,mBAAmB,EACnBC,sBAAsB,EACtBC,qBAAqB,EACrBC,yBAAyB,EACzBC,mBAAmB,EACnBC,mBAAmB,EACnBC,qBAAqB,EACrBC,uBAAuB,EACvBC,qBAAqB,EACrBC,qBAAqB,QAChB,aAAa;;AAEpB;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["Board","StaticBoard","SquareHighlight","Arrow","Annotation","PromotionPicker","DefaultPieceSet","BOARD_THEMES","BOARD_COLORS","DEFAULT_BOARD_COLORS","DEFAULT_LAST_MOVE_COLOR","DEFAULT_CHECK_COLOR","DEFAULT_SELECTED_COLOR","DEFAULT_PREMOVE_COLOR","DEFAULT_DRAG_TARGET_COLOR","DEFAULT_ARROW_COLOR","DEFAULT_SHAPE_COLOR","DEFAULT_ANNOTATION_BG","DEFAULT_ANNOTATION_TEXT","DEFAULT_MOVE_DURATION","CAPTURE_FADE_DURATION","squareToXY","xyToSquare"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;AAAA;AACA;;AAEA;AACA;AACA;;AAEA,SAASA,KAAK,QAAQ,SAAS;AAC/B,SAASC,WAAW,QAAQ,gBAAgB;;AAE5C;AACA;AACA;;AAEA,SAASC,eAAe,QAAQ,oBAAoB;AACpD,SAASC,KAAK,QAAQ,gBAAgB;AACtC,SAASC,UAAU,QAAQ,qBAAqB;AAChD,SAASC,eAAe,QAAQ,oBAAoB;;AAEpD;AACA;AACA;;AAEA,SAASC,eAAe,QAAQ,UAAU;;AAE1C;AACA;AACA;;AAEA,SAASC,YAAY,EAAEC,YAAY,QAAQ,UAAU;;AAErD;AACA;AACA;;AAEA,SACEC,oBAAoB,EACpBC,uBAAuB,EACvBC,mBAAmB,EACnBC,sBAAsB,EACtBC,qBAAqB,EACrBC,yBAAyB,EACzBC,mBAAmB,EACnBC,mBAAmB,EACnBC,qBAAqB,EACrBC,uBAAuB,EACvBC,qBAAqB,EACrBC,qBAAqB,QAChB,aAAa;;AAEpB;AACA;AACA;;AA4CA;AACA;AACA;;AAEA,SAASC,UAAU,EAAEC,UAAU,QAAQ,oBAAoB","ignoreList":[]}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import React, { useState, useCallback, useMemo } from 'react';
|
|
4
4
|
import { View } from 'react-native';
|
|
5
|
-
import { DEFAULT_BOARD_COLORS, DEFAULT_LAST_MOVE_COLOR } from './constants';
|
|
5
|
+
import { DEFAULT_BOARD_COLORS, DEFAULT_LAST_MOVE_COLOR, COORDINATE_GUTTER_SCALE } from './constants';
|
|
6
6
|
import { DefaultPieceSet } from './pieces';
|
|
7
7
|
import { useBoardPieces, squareToXY } from './use-board-pieces';
|
|
8
8
|
import { BoardBackground } from './board-background';
|
|
@@ -25,7 +25,8 @@ export const StaticBoard = /*#__PURE__*/React.memo(function StaticBoard({
|
|
|
25
25
|
orientation = 'white',
|
|
26
26
|
boardSize: boardSizeProp,
|
|
27
27
|
colors,
|
|
28
|
-
|
|
28
|
+
coordinatePosition: coordinatePositionProp,
|
|
29
|
+
withCoordinates,
|
|
29
30
|
renderPiece,
|
|
30
31
|
pieceSet,
|
|
31
32
|
lastMove,
|
|
@@ -42,10 +43,17 @@ export const StaticBoard = /*#__PURE__*/React.memo(function StaticBoard({
|
|
|
42
43
|
} = e.nativeEvent.layout;
|
|
43
44
|
setMeasuredSize(Math.min(width, height));
|
|
44
45
|
}, []);
|
|
45
|
-
const
|
|
46
|
-
const squareSize = boardSize / 8;
|
|
46
|
+
const outerSize = boardSizeProp ?? measuredSize;
|
|
47
47
|
const boardColors = colors ?? DEFAULT_BOARD_COLORS;
|
|
48
48
|
|
|
49
|
+
// Resolve coordinate position: new prop > legacy boolean > 'none'
|
|
50
|
+
const coordinatePosition = coordinatePositionProp ?? (withCoordinates ? 'inside' : 'none');
|
|
51
|
+
const isOutside = coordinatePosition === 'outside';
|
|
52
|
+
const isCoordVisible = coordinatePosition !== 'none';
|
|
53
|
+
const gutterWidth = isOutside ? Math.round(outerSize / 8 * COORDINATE_GUTTER_SCALE) : 0;
|
|
54
|
+
const boardSize = isOutside ? outerSize - gutterWidth : outerSize;
|
|
55
|
+
const squareSize = boardSize / 8;
|
|
56
|
+
|
|
49
57
|
// --- Piece data from FEN ---
|
|
50
58
|
const pieces = useBoardPieces(fen);
|
|
51
59
|
|
|
@@ -67,7 +75,7 @@ export const StaticBoard = /*#__PURE__*/React.memo(function StaticBoard({
|
|
|
67
75
|
}, [renderPiece, pieceSet]);
|
|
68
76
|
|
|
69
77
|
// If no size yet (auto-sizing), render invisible container for measurement
|
|
70
|
-
if (
|
|
78
|
+
if (outerSize === 0) {
|
|
71
79
|
return /*#__PURE__*/_jsx(View, {
|
|
72
80
|
style: {
|
|
73
81
|
flex: 1,
|
|
@@ -76,25 +84,32 @@ export const StaticBoard = /*#__PURE__*/React.memo(function StaticBoard({
|
|
|
76
84
|
onLayout: handleLayout
|
|
77
85
|
});
|
|
78
86
|
}
|
|
79
|
-
|
|
80
|
-
style: {
|
|
87
|
+
const boardContent = /*#__PURE__*/_jsxs(View, {
|
|
88
|
+
style: isOutside ? {
|
|
89
|
+
width: boardSize,
|
|
90
|
+
height: boardSize,
|
|
91
|
+
position: 'absolute',
|
|
92
|
+
top: 0,
|
|
93
|
+
right: 0
|
|
94
|
+
} : {
|
|
81
95
|
width: boardSize,
|
|
82
96
|
height: boardSize
|
|
83
97
|
},
|
|
84
|
-
onLayout: boardSizeProp ?
|
|
98
|
+
onLayout: !isOutside && !boardSizeProp ? handleLayout : undefined,
|
|
85
99
|
accessibilityLabel: "Chess board",
|
|
86
100
|
accessibilityRole: "image",
|
|
87
101
|
children: [/*#__PURE__*/_jsx(BoardBackground, {
|
|
88
102
|
boardSize: boardSize,
|
|
89
103
|
lightColor: boardColors.light,
|
|
90
104
|
darkColor: boardColors.dark
|
|
91
|
-
}),
|
|
105
|
+
}), isCoordVisible && !isOutside && /*#__PURE__*/_jsx(BoardCoordinates, {
|
|
92
106
|
boardSize: boardSize,
|
|
93
107
|
orientation: orientation,
|
|
94
108
|
lightColor: boardColors.light,
|
|
95
109
|
darkColor: boardColors.dark,
|
|
96
110
|
withLetters: true,
|
|
97
|
-
withNumbers: true
|
|
111
|
+
withNumbers: true,
|
|
112
|
+
position: "inside"
|
|
98
113
|
}), /*#__PURE__*/_jsx(BoardHighlights, {
|
|
99
114
|
boardSize: boardSize,
|
|
100
115
|
orientation: orientation,
|
|
@@ -142,5 +157,25 @@ export const StaticBoard = /*#__PURE__*/React.memo(function StaticBoard({
|
|
|
142
157
|
annotations: annotations
|
|
143
158
|
})]
|
|
144
159
|
});
|
|
160
|
+
if (isOutside) {
|
|
161
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
162
|
+
style: {
|
|
163
|
+
width: outerSize,
|
|
164
|
+
height: boardSize + gutterWidth
|
|
165
|
+
},
|
|
166
|
+
onLayout: boardSizeProp ? undefined : handleLayout,
|
|
167
|
+
children: [boardContent, /*#__PURE__*/_jsx(BoardCoordinates, {
|
|
168
|
+
boardSize: boardSize,
|
|
169
|
+
orientation: orientation,
|
|
170
|
+
lightColor: boardColors.light,
|
|
171
|
+
darkColor: boardColors.dark,
|
|
172
|
+
withLetters: true,
|
|
173
|
+
withNumbers: true,
|
|
174
|
+
position: "outside",
|
|
175
|
+
gutterWidth: gutterWidth
|
|
176
|
+
})]
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
return boardContent;
|
|
145
180
|
});
|
|
146
181
|
//# sourceMappingURL=static-board.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useCallback","useMemo","View","DEFAULT_BOARD_COLORS","DEFAULT_LAST_MOVE_COLOR","DefaultPieceSet","useBoardPieces","squareToXY","BoardBackground","BoardCoordinates","BoardHighlights","BoardArrows","BoardAnnotations","jsx","_jsx","jsxs","_jsxs","StaticBoard","memo","fen","orientation","boardSize","boardSizeProp","colors","withCoordinates","renderPiece","pieceSet","lastMove","highlights","arrows","annotations","measuredSize","setMeasuredSize","handleLayout","e","width","height","nativeEvent","layout","Math","min","
|
|
1
|
+
{"version":3,"names":["React","useState","useCallback","useMemo","View","DEFAULT_BOARD_COLORS","DEFAULT_LAST_MOVE_COLOR","COORDINATE_GUTTER_SCALE","DefaultPieceSet","useBoardPieces","squareToXY","BoardBackground","BoardCoordinates","BoardHighlights","BoardArrows","BoardAnnotations","jsx","_jsx","jsxs","_jsxs","StaticBoard","memo","fen","orientation","boardSize","boardSizeProp","colors","coordinatePosition","coordinatePositionProp","withCoordinates","renderPiece","pieceSet","lastMove","highlights","arrows","annotations","measuredSize","setMeasuredSize","handleLayout","e","width","height","nativeEvent","layout","Math","min","outerSize","boardColors","isOutside","isCoordVisible","gutterWidth","round","squareSize","pieces","resolvedRenderer","set","code","size","renderer","style","flex","aspectRatio","onLayout","boardContent","position","top","right","undefined","accessibilityLabel","accessibilityRole","children","lightColor","light","darkColor","dark","withLetters","withNumbers","lastMoveColor","checkColor","selectedColor","premoveColor","pointerEvents","map","piece","x","y","square","transform","translateX","translateY","id","length"],"sourceRoot":"..\\..\\src","sources":["static-board.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -7,13 +7,19 @@ type BoardCoordinatesProps = {
|
|
|
7
7
|
darkColor: string;
|
|
8
8
|
withLetters: boolean;
|
|
9
9
|
withNumbers: boolean;
|
|
10
|
+
/** 'inside' overlays on edge squares, 'outside' renders in a gutter area. */
|
|
11
|
+
position?: 'inside' | 'outside';
|
|
12
|
+
/** Gutter width in pixels (only used when position='outside'). */
|
|
13
|
+
gutterWidth?: number;
|
|
10
14
|
};
|
|
11
15
|
/**
|
|
12
|
-
* File letters (a-h) and rank numbers (1-8) drawn on the board
|
|
16
|
+
* File letters (a-h) and rank numbers (1-8) drawn on or around the board.
|
|
13
17
|
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
18
|
+
* Two modes:
|
|
19
|
+
* - **inside** (default): absolute-positioned inside each edge square, colors
|
|
20
|
+
* alternate to contrast with the square behind them.
|
|
21
|
+
* - **outside**: rendered in a gutter area around the board. Rank numbers to
|
|
22
|
+
* the left, file letters along the bottom. Uses the dark square color.
|
|
17
23
|
*/
|
|
18
24
|
export declare const BoardCoordinates: React.NamedExoticComponent<BoardCoordinatesProps>;
|
|
19
25
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board-coordinates.d.ts","sourceRoot":"","sources":["../../src/board-coordinates.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"board-coordinates.d.ts","sourceRoot":"","sources":["../../src/board-coordinates.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,UAAU,EAAsB,MAAM,SAAS,CAAC;AAE9D,KAAK,qBAAqB,GAAG;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,UAAU,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAChC,kEAAkE;IAClE,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAOF;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,mDA+J3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/board.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAUf,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EAKX,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"board.d.ts","sourceRoot":"","sources":["../../src/board.tsx"],"names":[],"mappings":"AAAA,OAAO,KAQN,MAAM,OAAO,CAAC;AAUf,OAAO,KAAK,EACV,QAAQ,EACR,UAAU,EAKX,MAAM,SAAS,CAAC;AAsEjB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,KAAK,6EAujBhB,CAAC"}
|
|
@@ -39,6 +39,8 @@ export declare const ARROW_SHORTEN_BY = 4;
|
|
|
39
39
|
export declare const ANNOTATION_SCALE = 0.35;
|
|
40
40
|
/** Coordinate font size as fraction of square size */
|
|
41
41
|
export declare const COORDINATE_FONT_SCALE = 0.22;
|
|
42
|
+
/** Outside-coordinate gutter width as fraction of square size */
|
|
43
|
+
export declare const COORDINATE_GUTTER_SCALE = 0.45;
|
|
42
44
|
/** Drag ghost scale factor (1.1x larger than normal piece) */
|
|
43
45
|
export declare const DRAG_GHOST_SCALE = 1.1;
|
|
44
46
|
/** Promotion picker piece padding as fraction of square size */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAM3C,6CAA6C;AAC7C,eAAO,MAAM,oBAAoB,EAAE,WAGlC,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAEhE,sDAAsD;AACtD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAE5D,0CAA0C;AAC1C,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,sCAAsC;AACtC,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,0CAA0C;AAC1C,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D,0BAA0B;AAC1B,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAE9D,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAE5D,0CAA0C;AAC1C,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,oCAAoC;AACpC,eAAO,MAAM,uBAAuB,YAAY,CAAC;AAMjD,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,oDAAoD;AACpD,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAMzC,qDAAqD;AACrD,eAAO,MAAM,SAAS,OAAO,CAAC;AAE9B,8DAA8D;AAC9D,eAAO,MAAM,UAAU,OAAO,CAAC;AAE/B,gEAAgE;AAChE,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,+EAA+E;AAC/E,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,sBAAsB;AACtB,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,0DAA0D;AAC1D,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,uDAAuD;AACvD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,sDAAsD;AACtD,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C,eAAO,MAAM,WAAW,mFAGd,CAAC;AAEX,+CAA+C;AAC/C,eAAO,MAAM,cAAc,UAA0C,CAAC;AAEtE,4BAA4B;AAC5B,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAM3C,6CAA6C;AAC7C,eAAO,MAAM,oBAAoB,EAAE,WAGlC,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAEhE,sDAAsD;AACtD,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAE5D,0CAA0C;AAC1C,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAE/D,sCAAsC;AACtC,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,0CAA0C;AAC1C,eAAO,MAAM,yBAAyB,uBAAuB,CAAC;AAE9D,0BAA0B;AAC1B,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAE9D,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,2BAA2B,CAAC;AAE5D,0CAA0C;AAC1C,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,oCAAoC;AACpC,eAAO,MAAM,uBAAuB,YAAY,CAAC;AAMjD,4CAA4C;AAC5C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,oDAAoD;AACpD,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAMzC,qDAAqD;AACrD,eAAO,MAAM,SAAS,OAAO,CAAC;AAE9B,8DAA8D;AAC9D,eAAO,MAAM,UAAU,OAAO,CAAC;AAE/B,gEAAgE;AAChE,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,+EAA+E;AAC/E,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,sBAAsB;AACtB,eAAO,MAAM,eAAe,MAAM,CAAC;AAEnC,0DAA0D;AAC1D,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAElC,uDAAuD;AACvD,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,sDAAsD;AACtD,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAE1C,iEAAiE;AACjE,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB,MAAM,CAAC;AAEpC,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,MAAM,CAAC;AAM3C,eAAO,MAAM,WAAW,mFAGd,CAAC;AAEX,+CAA+C;AAC/C,eAAO,MAAM,cAAc,UAA0C,CAAC;AAEtE,4BAA4B;AAC5B,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC;AAC7E,eAAO,MAAM,WAAW,mDAAoD,CAAC"}
|