kokopu-react 3.1.0 → 3.3.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/.eslintrc.yml +1 -1
- package/CHANGELOG.md +10 -0
- package/dist/lib/chessboard/BoardProperties.js.map +1 -1
- package/dist/lib/chessboard/Chessboard.css +13 -13
- package/dist/lib/chessboard/Chessboard.d.ts +27 -2
- package/dist/lib/chessboard/Chessboard.js +36 -17
- package/dist/lib/chessboard/Chessboard.js.map +1 -1
- package/dist/lib/chessboard/ChessboardImpl.js.map +1 -1
- package/dist/lib/chessboard/Draggable.js.map +1 -1
- package/dist/lib/chessboard/Motion.js.map +1 -1
- package/dist/lib/chessboard/colorsets.js.map +1 -1
- package/dist/lib/chessboard/piecesets.js.map +1 -1
- package/dist/lib/errorbox/ErrorBox.css +18 -18
- package/dist/lib/errorbox/ErrorBox.js.map +1 -1
- package/dist/lib/errorbox/parsing.js.map +1 -1
- package/dist/lib/exception.js.map +1 -1
- package/dist/lib/i18n.d.ts +1 -0
- package/dist/lib/i18n.js +1 -0
- package/dist/lib/i18n.js.map +1 -1
- package/dist/lib/icons/AnnotationSymbolShape.css +6 -6
- package/dist/lib/icons/AnnotationSymbolShape.js.map +1 -1
- package/dist/lib/icons/ArrowMarkerIcon.js.map +1 -1
- package/dist/lib/icons/ArrowTip.js.map +1 -1
- package/dist/lib/icons/ChessPieceIcon.js.map +1 -1
- package/dist/lib/icons/SquareMarkerIcon.js.map +1 -1
- package/dist/lib/icons/TextMarkerIcon.js.map +1 -1
- package/dist/lib/icons/arrow.css +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.js +1 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/movetext/Movetext.css +27 -27
- package/dist/lib/movetext/Movetext.js.map +1 -1
- package/dist/lib/movetext/MovetextImpl.js.map +1 -1
- package/dist/lib/movetext/fonts.css +7 -7
- package/dist/lib/movetext/htmlFilter.js.map +1 -1
- package/dist/lib/movetext/moveFormatter.js.map +1 -1
- package/dist/lib/navigationboard/NavigationBoard.d.ts +68 -1
- package/dist/lib/navigationboard/NavigationBoard.js +141 -13
- package/dist/lib/navigationboard/NavigationBoard.js.map +1 -1
- package/dist/lib/navigationboard/NavigationButton.d.ts +66 -0
- package/dist/lib/navigationboard/NavigationButton.js +67 -0
- package/dist/lib/navigationboard/NavigationButton.js.map +1 -0
- package/dist/lib/navigationboard/NavigationField.css +7 -7
- package/dist/lib/navigationboard/NavigationField.js.map +1 -1
- package/dist/lib/navigationboard/NavigationToolbar.css +16 -13
- package/dist/lib/navigationboard/NavigationToolbar.d.ts +10 -10
- package/dist/lib/navigationboard/NavigationToolbar.js +61 -79
- package/dist/lib/navigationboard/NavigationToolbar.js.map +1 -1
- package/dist/lib/navigationboard/iconPaths.d.ts +29 -0
- package/dist/lib/navigationboard/iconPaths.js +91 -0
- package/dist/lib/navigationboard/iconPaths.js.map +1 -0
- package/dist/lib/sanitization.js.map +1 -1
- package/dist/lib/types.js.map +1 -1
- package/dist/lib/util.js.map +1 -1
- package/doc_src/demo/PageChessboardBase.tsx +115 -115
- package/doc_src/demo/PageChessboardInteraction.tsx +303 -303
- package/doc_src/demo/PageChessboardMove.tsx +173 -173
- package/doc_src/demo/PageChessboardSmallScreens.tsx +94 -94
- package/doc_src/demo/PageMovetextBase.tsx +180 -180
- package/doc_src/demo/PageMovetextInteraction.tsx +123 -123
- package/doc_src/demo/PageNavigationBoardBase.tsx +144 -137
- package/doc_src/demo/PageNavigationBoardUncontrolledVsControlled.tsx +69 -69
- package/doc_src/demo/decs.d.ts +4 -4
- package/doc_src/demo/demo.css +12 -12
- package/doc_src/demo/util.ts +1 -1
- package/doc_src/examples/NavigationBoard.md +1 -1
- package/doc_src/theming/LogoRenderer.js +13 -13
- package/doc_src/theming/theming.css +5 -5
- package/package.json +95 -95
- package/scripts/doc.styleguide.config.js +131 -131
- package/scripts/doc.tsconfig.json +5 -5
- package/scripts/docker-compose.yml +1 -1
- package/scripts/test-graphic.tsconfig.json +5 -5
- package/scripts/test-graphic.webpack.config.js +57 -57
- package/scripts/test-headless.webpack.config.js +29 -29
- package/src/chessboard/BoardProperties.ts +68 -68
- package/src/chessboard/Chessboard.css +13 -13
- package/src/chessboard/Chessboard.tsx +436 -380
- package/src/chessboard/ChessboardImpl.tsx +557 -557
- package/src/chessboard/Draggable.tsx +185 -185
- package/src/chessboard/Motion.tsx +67 -67
- package/src/chessboard/colorsets.ts +66 -66
- package/src/chessboard/piecesets.ts +84 -84
- package/src/decs.d.ts +2 -2
- package/src/errorbox/ErrorBox.css +18 -18
- package/src/errorbox/ErrorBox.tsx +75 -75
- package/src/errorbox/parsing.tsx +95 -95
- package/src/exception.ts +17 -17
- package/src/i18n.ts +1 -0
- package/src/icons/AnnotationSymbolShape.css +6 -6
- package/src/icons/AnnotationSymbolShape.tsx +31 -31
- package/src/icons/ArrowMarkerIcon.tsx +34 -34
- package/src/icons/ArrowTip.tsx +14 -14
- package/src/icons/ChessPieceIcon.tsx +45 -45
- package/src/icons/SquareMarkerIcon.tsx +20 -20
- package/src/icons/TextMarkerIcon.tsx +29 -29
- package/src/icons/arrow.css +1 -1
- package/src/index.ts +3 -2
- package/src/movetext/Movetext.css +27 -27
- package/src/movetext/Movetext.tsx +158 -158
- package/src/movetext/MovetextImpl.tsx +345 -345
- package/src/movetext/fonts.css +7 -7
- package/src/movetext/htmlFilter.tsx +129 -129
- package/src/movetext/moveFormatter.tsx +37 -37
- package/src/navigationboard/NavigationBoard.tsx +386 -180
- package/src/navigationboard/NavigationButton.ts +114 -0
- package/src/navigationboard/NavigationField.css +7 -7
- package/src/navigationboard/NavigationField.tsx +90 -90
- package/src/navigationboard/NavigationToolbar.css +16 -13
- package/src/navigationboard/NavigationToolbar.tsx +98 -112
- package/src/navigationboard/iconPaths.ts +98 -0
- package/src/sanitization.ts +17 -17
- package/src/types.ts +116 -116
- package/src/util.ts +11 -11
- package/test/01_types.js +167 -167
- package/test/02_chessboard_util.js +191 -115
- package/test/03_error_box_graphic.js +16 -16
- package/test/04_icons_graphic.js +32 -32
- package/test/05_chessboard_graphic.js +60 -60
- package/test/06_chessboard_animation.js +36 -36
- package/test/07_chessboard_interaction.js +101 -101
- package/test/08_chessboard_play_moves.js +62 -62
- package/test/09_chessboard_small_screens.js +32 -32
- package/test/10_movetext_graphic.js +32 -32
- package/test/11_movetext_interaction.js +100 -100
- package/test/12_navigation_board_base.js +151 -0
- package/test/13_navigation_board_graphic.js +68 -0
- package/test/14_navigation_board_autoplay.js +100 -0
- package/test/common/graphic.js +106 -97
- package/test/graphic_references/12_navigation_board_base/controlled/default.png +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/forbidden_navigation_1.png → 12_navigation_board_base/controlled/forbidden_navigation_0.png} +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/invalid_node_id.png → 12_navigation_board_base/controlled/forbidden_navigation_1.png} +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/forbidden_navigation_0.png → 12_navigation_board_base/controlled/invalid_node_id.png} +0 -0
- package/test/graphic_references/12_navigation_board_base/controlled/no_callback_defined_0.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/controlled/no_callback_defined_1.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/controlled/overriding_initial_node_id.png +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/regular_navigation_1.png → 12_navigation_board_base/controlled/regular_navigation_0.png} +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/initial_state_at_specific_id.png → 12_navigation_board_base/controlled/regular_navigation_1.png} +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/regular_navigation_3.png → 12_navigation_board_base/controlled/regular_navigation_2.png} +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/regular_navigation_0.png → 12_navigation_board_base/controlled/regular_navigation_3.png} +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_beginning_2.png → 12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_0.png} +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_beginning_0.png → 12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_1.png} +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_beginning_1.png → 12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_2.png} +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/no_callback_defined_0.png → 12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_0.png} +0 -0
- package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_1.png +0 -0
- package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_2.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/initial_state_at_end.png +0 -0
- package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_at_specific_id.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/initial_state_default.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/initial_state_default_with_game_index.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/initial_state_on_null-move.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/navigation_with_keys_0.png +0 -0
- package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_1.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/navigation_with_keys_2.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/navigation_with_keys_3.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/navigation_with_keys_4.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_flipping_0.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_flipping_1.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_navigation_0.png +0 -0
- package/test/graphic_references/{12_navigation_board/controlled/default.png → 12_navigation_board_base/uncontrolled/regular_navigation_1.png} +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_navigation_2.png +0 -0
- package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_3.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_navigation_4.png +0 -0
- package/test/graphic_references/{12_navigation_board → 12_navigation_board_base}/uncontrolled/regular_navigation_5.png +0 -0
- package/test/graphic_references/13_navigation_board_graphic/additional_buttons/error_1.png +0 -0
- package/test/graphic_references/13_navigation_board_graphic/additional_buttons/error_2.png +0 -0
- package/test/graphic_references/13_navigation_board_graphic/additional_buttons/multiple_buttons.png +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/regular_navigation_3.png → 13_navigation_board_graphic/additional_buttons/single_button.png} +0 -0
- package/test/graphic_references/{12_navigation_board → 13_navigation_board_graphic}/theme/custom_1.png +0 -0
- package/test/graphic_references/{12_navigation_board → 13_navigation_board_graphic}/theme/custom_2.png +0 -0
- package/test/graphic_references/{12_navigation_board → 13_navigation_board_graphic}/theme/large.png +0 -0
- package/test/graphic_references/13_navigation_board_graphic/theme/small.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/after_1_move_acknowledging_is-playing_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/after_1_move_not_acknowledging_is-playing_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/after_2_moves_acknowledging_node_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/after_2_moves_not_acknowledging_node_changes.png +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_end_1.png → 14_navigation_board_autoplay/controlled/after_reaching_the_end.png} +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_end_2.png → 14_navigation_board_autoplay/controlled/already_at_the_end.png} +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_acknowledging_is-playing_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_acknowledging_node_changes.png +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/forbidden_navigation_at_end_0.png → 14_navigation_board_autoplay/controlled/initial_state_at_the_end.png} +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_close_to_end.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_not_acknowledging_is-playing_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_not_acknowledging_node_changes.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_2_moves_from_beginning_after_stop.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_2_moves_from_beginning_before_stop.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_reaching_the_end_after_stop.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_reaching_the_end_before_stop.png +0 -0
- package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/initial_state_close_to_end.png +0 -0
- package/test/graphic_references/{12_navigation_board/uncontrolled/navigation_with_keys_1.png → 14_navigation_board_autoplay/uncontrolled/initial_state_default.png} +0 -0
- package/test/graphic_test_app/03_error_box_graphic/base.tsx +14 -14
- package/test/graphic_test_app/03_error_box_graphic/localization.tsx +1 -1
- package/test/graphic_test_app/04_icons_graphic/chess_piece.tsx +7 -7
- package/test/graphic_test_app/04_icons_graphic/marker.tsx +15 -15
- package/test/graphic_test_app/05_chessboard_graphic/annotations.tsx +7 -7
- package/test/graphic_test_app/05_chessboard_graphic/base.tsx +6 -6
- package/test/graphic_test_app/05_chessboard_graphic/chess_variants.tsx +7 -7
- package/test/graphic_test_app/05_chessboard_graphic/flipped.tsx +5 -5
- package/test/graphic_test_app/05_chessboard_graphic/move.tsx +12 -12
- package/test/graphic_test_app/05_chessboard_graphic/theme.tsx +12 -12
- package/test/graphic_test_app/06_chessboard_animation/base_1.tsx +6 -6
- package/test/graphic_test_app/06_chessboard_animation/base_2.tsx +6 -6
- package/test/graphic_test_app/06_chessboard_animation/base_3.tsx +6 -6
- package/test/graphic_test_app/06_chessboard_animation/on_redraw.tsx +16 -16
- package/test/graphic_test_app/07_chessboard_interaction/click_squares.tsx +5 -5
- package/test/graphic_test_app/07_chessboard_interaction/edit_arrows.tsx +4 -4
- package/test/graphic_test_app/07_chessboard_interaction/error.tsx +2 -2
- package/test/graphic_test_app/07_chessboard_interaction/move_pieces.tsx +5 -5
- package/test/graphic_test_app/08_chessboard_play_moves/base.tsx +8 -8
- package/test/graphic_test_app/08_chessboard_play_moves/promotions.tsx +4 -4
- package/test/graphic_test_app/09_chessboard_small_screens/base.tsx +9 -9
- package/test/graphic_test_app/09_chessboard_small_screens/top_bottom_components.tsx +9 -9
- package/test/graphic_test_app/10_movetext_graphic/base.tsx +4 -4
- package/test/graphic_test_app/10_movetext_graphic/error.tsx +6 -6
- package/test/graphic_test_app/10_movetext_graphic/format_move.tsx +1 -1
- package/test/graphic_test_app/10_movetext_graphic/html.tsx +5 -5
- package/test/graphic_test_app/10_movetext_graphic/options.tsx +10 -10
- package/test/graphic_test_app/11_movetext_interaction/error.tsx +1 -1
- package/test/graphic_test_app/11_movetext_interaction/select_moves.tsx +11 -11
- package/test/graphic_test_app/{12_navigation_board → 12_navigation_board_base}/controlled.tsx +5 -5
- package/test/graphic_test_app/{12_navigation_board → 12_navigation_board_base}/uncontrolled.tsx +7 -7
- package/test/graphic_test_app/13_navigation_board_graphic/additional_buttons.tsx +49 -0
- package/test/graphic_test_app/{12_navigation_board → 13_navigation_board_graphic}/error.tsx +2 -2
- package/test/graphic_test_app/{12_navigation_board → 13_navigation_board_graphic}/theme.tsx +4 -4
- package/test/graphic_test_app/14_navigation_board_autoplay/controlled.tsx +73 -0
- package/test/graphic_test_app/14_navigation_board_autoplay/uncontrolled.tsx +34 -0
- package/test/graphic_test_app/common/decs.d.ts +2 -2
- package/test/graphic_test_app/common/test_app.css +15 -15
- package/test/graphic_test_app/common/test_app.tsx +48 -48
- package/tsconfig.json +13 -13
- package/test/12_navigation_board.js +0 -168
- package/test/graphic_references/12_navigation_board/controlled/regular_navigation_2.png +0 -0
- package/test/graphic_references/12_navigation_board/theme/small.png +0 -0
- package/test/graphic_references/12_navigation_board/uncontrolled/regular_navigation_1.png +0 -0
- /package/test/graphic_references/{12_navigation_board → 13_navigation_board_graphic}/error/pgn_parsing_error.png +0 -0
- /package/test/graphic_references/{12_navigation_board → 13_navigation_board_graphic}/error/wrong_game_type.png +0 -0
|
@@ -28,10 +28,10 @@ import { testApp } from '../common/test_app';
|
|
|
28
28
|
import { Chessboard } from '../../../dist/lib/index';
|
|
29
29
|
|
|
30
30
|
testApp([ /* eslint-disable react/jsx-key */
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
31
|
+
<Chessboard />,
|
|
32
|
+
<Chessboard position="empty" turnVisible={true} />,
|
|
33
|
+
<Chessboard position="something invalid" />,
|
|
34
|
+
<Chessboard position="r1bqkbnr/pppp1ppp/2n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R b KQkq - 3 3" turnVisible={false} />,
|
|
35
|
+
<Chessboard position={new Position('8/8/1r6/8/5k1K/8/8/8 b - - 0 1')} />,
|
|
36
|
+
<Chessboard position={ /* eslint-disable @typescript-eslint/no-explicit-any */ 42 as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
37
37
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -27,11 +27,11 @@ import { testApp } from '../common/test_app';
|
|
|
27
27
|
import { Chessboard } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
testApp([ /* eslint-disable react/jsx-key */
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
30
|
+
<Chessboard position="chess960:nqbrnkrb/pppppppp/8/8/8/8/PPPPPPPP/NQBRNKRB w KQkq - 0 1" />,
|
|
31
|
+
<Chessboard position="chess960:nqbrnkrb/pppppppp/8/8/8/8/PPPPPPPP/NQBRNKRB w KQkq - 0 1" move="O-O" />,
|
|
32
|
+
<Chessboard position="chess960" />,
|
|
33
|
+
<Chessboard position="horde" />,
|
|
34
|
+
<Chessboard position="start" />,
|
|
35
|
+
<Chessboard position="whatever" />,
|
|
36
|
+
<Chessboard position="whatever:rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1" />,
|
|
37
37
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,9 +28,9 @@ import { testApp } from '../common/test_app';
|
|
|
28
28
|
import { Chessboard } from '../../../dist/lib/index';
|
|
29
29
|
|
|
30
30
|
testApp([ /* eslint-disable react/jsx-key */
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
31
|
+
<Chessboard flipped={true} turnVisible={false} />,
|
|
32
|
+
<Chessboard flipped={true} position="empty" />,
|
|
33
|
+
<Chessboard flipped={true} position="something invalid" />,
|
|
34
|
+
<Chessboard flipped={true} position="r1bqkbnr/pppp1ppp/2n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R b KQkq - 3 3" />,
|
|
35
|
+
<Chessboard flipped={true} position={new Position('8/8/1r6/8/5k1K/8/8/8 b - - 0 1')} turnVisible={true} />,
|
|
36
36
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -31,16 +31,16 @@ const pos = new Position('r1bqkbnr/1ppp1ppp/p1n5/1B2p3/4P3/5N2/PPPP1PPP/RNBQK2R
|
|
|
31
31
|
const move = pos.notation('Bxc6');
|
|
32
32
|
|
|
33
33
|
testApp([ /* eslint-disable react/jsx-key */
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
34
|
+
<Chessboard move="e4" animated={false} />,
|
|
35
|
+
<Chessboard move="Nf3" moveArrowVisible={false} animated={false} />,
|
|
36
|
+
<Chessboard move="Nf4" animated={false} />,
|
|
37
|
+
<Chessboard position="rnbqkbnr/pppp1ppp/4p3/8/3PP3/8/PPP2PPP/RNBQKBNR b KQkq - 0 2" move="Bb4+" moveArrowVisible={true} flipped={true} animated={true} />,
|
|
38
|
+
<Chessboard position={pos} move={move} animated={true} moveArrowColor="g" />,
|
|
39
|
+
<Chessboard position="r3k2r/pppppppp/8/8/8/8/PPPPPPPP/R3K2R b KQkq - 0 1" move="O-O-O" animated={false} moveArrowColor="r" />,
|
|
40
|
+
<Chessboard position="rnbqkbnr/ppp1p1pp/8/3pPp2/8/8/PPPP1PPP/RNBQKBNR w KQkq f6 0 3" move="exf6" animated={false} moveArrowColor="y" />,
|
|
41
|
+
<Chessboard position="8/8/8/1K6/8/4k3/1p6/8 b - - 0 1" move="b1=R+" animated={false} moveArrowColor="b" />,
|
|
42
|
+
<Chessboard move={ /* eslint-disable @typescript-eslint/no-explicit-any */ 42 as any /* eslint-enable @typescript-eslint/no-explicit-any */ } animated={false} />,
|
|
43
|
+
<Chessboard move="e4" animated={false} moveArrowColor={ /* eslint-disable @typescript-eslint/no-explicit-any */ 'z' as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
44
|
+
<Chessboard move="--" animated={false} />,
|
|
45
|
+
<Chessboard position="rnbqkbnr/ppp1pppp/8/1B1p4/4P3/8/PPPP1PPP/RNBQK1NR b KQkq - 1 2" move="--" animated={false} />,
|
|
46
46
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -36,16 +36,16 @@ const sm = 'Ba8,Ba7,Gb8,Gb7,Rc8,Rc7,Yd8,Yd7';
|
|
|
36
36
|
const am = 'Ba1a3,Gb1b3,Rc1c3,Yd1d3';
|
|
37
37
|
|
|
38
38
|
testApp([ /* eslint-disable react/jsx-key */
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
39
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} animated={false} />,
|
|
40
|
+
<Chessboard position={pos2} move={mv2} squareMarkers={sm} arrowMarkers={am} squareSize={60} animated={false} />,
|
|
41
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} squareSize={29} coordinateVisible={false} flipped={true} animated={false} />,
|
|
42
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} squareSize={47} coordinateVisible={true} flipped={true} colorset="scid" animated={false} />,
|
|
43
|
+
<Chessboard position={pos2} move={mv2} squareMarkers={sm} arrowMarkers={am} coordinateVisible={false} colorset="marine" pieceset="eyes" animated={false} />,
|
|
44
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} coordinateVisible={false} pieceset="fantasy" animated={false} />,
|
|
45
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} colorset="emerald" pieceset="skulls" animated={false} />,
|
|
46
|
+
<Chessboard position={pos2} move={mv2} squareMarkers={sm} arrowMarkers={am} squareSize={91} flipped={true} colorset="gray" pieceset="spatial" animated={false} />,
|
|
47
|
+
<Chessboard position={pos1} move={mv1} squareMarkers={sm} arrowMarkers={am} squareSize={17} colorset="dusk" animated={false} />,
|
|
48
|
+
<Chessboard squareSize={ /* eslint-disable @typescript-eslint/no-explicit-any */ '24' as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
49
|
+
<Chessboard colorset="not-a-colorset" />,
|
|
50
|
+
<Chessboard pieceset="not-a-pieceset" />,
|
|
51
51
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -29,10 +29,10 @@ import { Chessboard } from '../../../dist/lib/index';
|
|
|
29
29
|
window['__kokopu_debug_freeze_motion'] = 0.09;
|
|
30
30
|
|
|
31
31
|
testApp([ /* eslint-disable react/jsx-key */
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
<Chessboard move="e4" animated={true} />,
|
|
33
|
+
<Chessboard move="Nf3" animated={true} moveArrowVisible={false} />,
|
|
34
|
+
<Chessboard position="r1bqkbnr/pppppppp/n7/8/4P3/8/PPPP1PPP/RNBQKBNR w KQkq - 1 2" move="Bxa6" animated={true} flipped turnVisible={false} />,
|
|
35
|
+
<Chessboard position="r3k2r/pppppppp/8/8/8/8/PPPPPPPP/R3K2R b KQkq - 0 1" move="O-O-O" animated={true} />,
|
|
36
|
+
<Chessboard position="rnbqkbnr/ppp1p1pp/8/3pPp2/8/8/PPPP1PPP/RNBQKBNR w KQkq f6 0 3" move="exf6" animated={true} />,
|
|
37
|
+
<Chessboard position="8/8/8/1K6/8/4k3/1p6/8 b - - 0 1" move="b1=R+" animated={true} turnVisible={false} />,
|
|
38
38
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -29,10 +29,10 @@ import { Chessboard } from '../../../dist/lib/index';
|
|
|
29
29
|
window['__kokopu_debug_freeze_motion'] = 0.7;
|
|
30
30
|
|
|
31
31
|
testApp([ /* eslint-disable react/jsx-key */
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
<Chessboard move="e4" animated={true} />,
|
|
33
|
+
<Chessboard move="Nf3" animated={true} moveArrowVisible={false} />,
|
|
34
|
+
<Chessboard position="r1bqkbnr/pppppppp/n7/8/4P3/8/PPPP1PPP/RNBQKBNR w KQkq - 1 2" move="Bxa6" animated={true} flipped turnVisible={false} />,
|
|
35
|
+
<Chessboard position="r3k2r/pppppppp/8/8/8/8/PPPPPPPP/R3K2R b KQkq - 0 1" move="O-O-O" animated={true} />,
|
|
36
|
+
<Chessboard position="rnbqkbnr/ppp1p1pp/8/3pPp2/8/8/PPPP1PPP/RNBQKBNR w KQkq f6 0 3" move="exf6" animated={true} />,
|
|
37
|
+
<Chessboard position="8/8/8/1K6/8/4k3/1p6/8 b - - 0 1" move="b1=R+" animated={true} turnVisible={false} />,
|
|
38
38
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -29,10 +29,10 @@ import { Chessboard } from '../../../dist/lib/index';
|
|
|
29
29
|
window['__kokopu_debug_freeze_motion'] = 0.91;
|
|
30
30
|
|
|
31
31
|
testApp([ /* eslint-disable react/jsx-key */
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
32
|
+
<Chessboard move="e4" animated={true} />,
|
|
33
|
+
<Chessboard move="Nf3" animated={true} moveArrowVisible={false} />,
|
|
34
|
+
<Chessboard position="r1bqkbnr/pppppppp/n7/8/4P3/8/PPPP1PPP/RNBQKBNR w KQkq - 1 2" move="Bxa6" animated={true} flipped turnVisible={false} />,
|
|
35
|
+
<Chessboard position="r3k2r/pppppppp/8/8/8/8/PPPPPPPP/R3K2R b KQkq - 0 1" move="O-O-O" animated={true} />,
|
|
36
|
+
<Chessboard position="rnbqkbnr/ppp1p1pp/8/3pPp2/8/8/PPPP1PPP/RNBQKBNR w KQkq f6 0 3" move="exf6" animated={true} />,
|
|
37
|
+
<Chessboard position="8/8/8/1K6/8/4k3/1p6/8 b - - 0 1" move="b1=R+" animated={true} turnVisible={false} />,
|
|
38
38
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,24 +28,24 @@ import { Chessboard } from '../../../dist/lib/index';
|
|
|
28
28
|
|
|
29
29
|
function TestComponent() {
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
31
|
+
const [ clicked, setClicked ] = React.useState(false);
|
|
32
|
+
const position = clicked ? 'rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq - 0 1' : 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1';
|
|
33
|
+
const move = clicked ? 'Nf6' : 'e4';
|
|
34
|
+
|
|
35
|
+
function onClick() {
|
|
36
|
+
window['__kokopu_debug_freeze_motion'] = 0.6;
|
|
37
|
+
setClicked(true);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
return (<>
|
|
41
|
+
<div>
|
|
42
|
+
<Chessboard position={position} move={move} animated={true} />
|
|
43
|
+
</div>
|
|
44
|
+
{clicked ? undefined : <button id="chessboard-action-button" onClick={onClick}>Click here</button>}
|
|
45
|
+
</>);
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
|
|
49
49
|
testApp([ /* eslint-disable react/jsx-key */
|
|
50
|
-
|
|
50
|
+
<TestComponent />,
|
|
51
51
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,12 +28,12 @@ import { testApp, setSandbox } from '../common/test_app';
|
|
|
28
28
|
import { Chessboard } from '../../../dist/lib/index';
|
|
29
29
|
|
|
30
30
|
function onSquareClicked(sq: Square) {
|
|
31
|
-
|
|
31
|
+
setSandbox(`square clicked: ${sq}`);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
testApp([ /* eslint-disable react/jsx-key */
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
<Chessboard squareSize={50} interactionMode="clickSquares" onSquareClicked={onSquareClicked} />,
|
|
36
|
+
<Chessboard squareSize={50} interactionMode="clickSquares" onSquareClicked={onSquareClicked} flipped coordinateVisible={false} />,
|
|
37
|
+
<Chessboard squareSize={50} interactionMode="clickSquares" onSquareClicked={onSquareClicked} position="empty"
|
|
38
|
+
squareMarkers="Ga8" arrowMarkers="Ra6d6" textMarkers="YAb4" />,
|
|
39
39
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,11 +28,11 @@ import { testApp, setSandbox } from '../common/test_app';
|
|
|
28
28
|
import { Chessboard } from '../../../dist/lib/index';
|
|
29
29
|
|
|
30
30
|
function onArrowEdited(from: Square, to: Square) {
|
|
31
|
-
|
|
31
|
+
setSandbox(`arrow edited: ${from} -> ${to}`);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
testApp([ /* eslint-disable react/jsx-key */
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
35
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="editArrows" onArrowEdited={onArrowEdited} editedArrowColor="g" />,
|
|
36
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="editArrows" onArrowEdited={onArrowEdited} editedArrowColor="r" flipped
|
|
37
|
+
squareMarkers="Gc5" arrowMarkers="Yh3f6" />,
|
|
38
38
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -27,6 +27,6 @@ import { testApp } from '../common/test_app';
|
|
|
27
27
|
import { Chessboard } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
testApp([ /* eslint-disable react/jsx-key */
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
<Chessboard interactionMode={ /* eslint-disable @typescript-eslint/no-explicit-any */ 'whatever' as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
31
|
+
<Chessboard interactionMode="editArrows" />,
|
|
32
32
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,12 +28,12 @@ import { testApp, setSandbox } from '../common/test_app';
|
|
|
28
28
|
import { Chessboard } from '../../../dist/lib/index';
|
|
29
29
|
|
|
30
30
|
function onPieceMoved(from: Square, to: Square) {
|
|
31
|
-
|
|
31
|
+
setSandbox(`piece moved: ${from} -> ${to}`);
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
testApp([ /* eslint-disable react/jsx-key */
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="movePieces" onPieceMoved={onPieceMoved} />,
|
|
36
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="movePieces" onPieceMoved={onPieceMoved} flipped
|
|
37
|
+
squareMarkers="Gc4" textMarkers="BAh3" arrowMarkers="Gc8a4" moveArrowColor="r" />,
|
|
38
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="movePieces" onPieceMoved={onPieceMoved} move="e4" animated={false} />,
|
|
39
39
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -27,15 +27,15 @@ import { testApp, setSandbox } from '../common/test_app';
|
|
|
27
27
|
import { Chessboard } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
function onMovePlayed(move: string) {
|
|
30
|
-
|
|
30
|
+
setSandbox(`move played: ${move}`);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
testApp([ /* eslint-disable react/jsx-key */
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
34
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed} />,
|
|
35
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed}
|
|
36
|
+
flipped position="rnbqk2r/ppp2ppp/3p1n2/2b1p3/4P3/2NP1N2/PPP2PPP/R1BQKB1R w KQkq - 0 1" move="Bg5" animated={false} moveArrowColor="g" />,
|
|
37
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed}
|
|
38
|
+
position="rnbq1bnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQ - 0 1" />,
|
|
39
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed}
|
|
40
|
+
position="chess960:1r3k1r/pppppppp/8/8/8/8/PPPPPPPP/1R3K1R w BHbh - 0 1" />,
|
|
41
41
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -27,11 +27,11 @@ import { testApp, setSandbox } from '../common/test_app';
|
|
|
27
27
|
import { Chessboard } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
function onMovePlayed(move: string) {
|
|
30
|
-
|
|
30
|
+
setSandbox(`promotion move played: ${move}`);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
testApp([ /* eslint-disable react/jsx-key */
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
34
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed} position="8/1P6/8/8/7k/8/5K2/8 w - - 0 1" />,
|
|
35
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed} position="8/8/8/8/7k/8/1p3K2/R7 b - - 0 1" />,
|
|
36
|
+
<Chessboard squareSize={50} coordinateVisible={false} interactionMode="playMoves" onMovePlayed={onMovePlayed} flipped position="antichess:8/1P6/8/8/7r/8/5K2/8 w - - 0 1" />,
|
|
37
37
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -28,16 +28,16 @@ import { Chessboard } from '../../../dist/lib/index';
|
|
|
28
28
|
|
|
29
29
|
// WARNING: avoid window width < 600 (the selenium-controlled window has some issues in this case).
|
|
30
30
|
const limits = [
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
31
|
+
{ width: 690, squareSize: 16 },
|
|
32
|
+
{ width: 700, turnVisible: false },
|
|
33
|
+
{ width: 710, squareSize: 24, coordinateVisible: false },
|
|
34
|
+
{ width: 720, squareSize: 44 },
|
|
35
|
+
{ width: 730, squareSize: 48, coordinateVisible: true },
|
|
36
|
+
{ width: 740, squareSize: 24, coordinateVisible: false },
|
|
37
|
+
{ width: 750, squareSize: 32 },
|
|
38
38
|
];
|
|
39
39
|
|
|
40
40
|
testApp([ /* eslint-disable react/jsx-key */
|
|
41
|
-
|
|
42
|
-
|
|
41
|
+
<Chessboard squareSize={50} smallScreenLimits={limits} />,
|
|
42
|
+
<Chessboard smallScreenLimits={ /* eslint-disable @typescript-eslint/no-explicit-any */ 42 as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
43
43
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -27,22 +27,22 @@ import { testApp } from '../common/test_app';
|
|
|
27
27
|
import { Chessboard, ChessboardProps } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
const limits1 = [
|
|
30
|
-
|
|
30
|
+
{ width: 750, squareSize: 24, coordinateVisible: false },
|
|
31
31
|
];
|
|
32
32
|
|
|
33
33
|
const limits2 = [
|
|
34
|
-
|
|
34
|
+
{ width: 750, squareSize: 27, turnVisible: false },
|
|
35
35
|
];
|
|
36
36
|
|
|
37
37
|
function AuxilliaryComponent({ squareSize, coordinateVisible, turnVisible}: Pick<ChessboardProps, 'squareSize' | 'coordinateVisible' | 'turnVisible'>) {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
38
|
+
return (<>
|
|
39
|
+
<div>{`Square size: ${squareSize}`}</div>
|
|
40
|
+
<div>{`Coordinates: ${coordinateVisible}`}</div>
|
|
41
|
+
<div>{`Turn: ${turnVisible}`}</div>
|
|
42
|
+
</>);
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
testApp([ /* eslint-disable react/jsx-key */
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
<Chessboard squareSize={30} smallScreenLimits={limits1} topComponent={AuxilliaryComponent} />,
|
|
47
|
+
<Chessboard squareSize={30} smallScreenLimits={limits2} bottomComponent={AuxilliaryComponent} />,
|
|
48
48
|
]); /* eslint-enable react/jsx-key */
|
|
@@ -36,8 +36,8 @@ game.result('1-0');
|
|
|
36
36
|
const database = pgnRead(pgn);
|
|
37
37
|
|
|
38
38
|
testApp([ /* eslint-disable react/jsx-key */
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
<Movetext game={game} />,
|
|
40
|
+
<Movetext game={database} />,
|
|
41
|
+
<Movetext game={pgn} gameIndex={1} />,
|
|
42
|
+
<Movetext game={database} gameIndex={3} />,
|
|
43
43
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
@@ -33,10 +33,10 @@ import dummyPgn from '../common/dummy.pgn';
|
|
|
33
33
|
const database = pgnRead(pgn);
|
|
34
34
|
|
|
35
35
|
testApp([ /* eslint-disable react/jsx-key */
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
36
|
+
<Movetext game={pgn} gameIndex={99} />,
|
|
37
|
+
<Movetext game={database} gameIndex={99} />,
|
|
38
|
+
<Movetext game={dummyPgn} />,
|
|
39
|
+
<Movetext game={pgnRead(dummyPgn)} gameIndex={1} />,
|
|
40
|
+
<Movetext game={ /* eslint-disable @typescript-eslint/no-explicit-any */ 42 as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
41
|
+
<Movetext game={pgn} gameIndex={-1} />,
|
|
42
42
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
@@ -27,5 +27,5 @@ import { testApp } from '../common/test_app';
|
|
|
27
27
|
import { formatMove } from '../../../dist/lib/index';
|
|
28
28
|
|
|
29
29
|
testApp([ /* eslint-disable react/jsx-key */
|
|
30
|
-
|
|
30
|
+
<div>{formatMove('figurines', 'Figurines: KQRBNP')}</div>,
|
|
31
31
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
@@ -29,14 +29,14 @@ import { Movetext } from '../../../dist/lib/index';
|
|
|
29
29
|
import pgn from '../common/games.pgn';
|
|
30
30
|
|
|
31
31
|
testApp([ /* eslint-disable react/jsx-key */
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
32
|
+
<Movetext game={pgn} gameIndex={4} />,
|
|
33
|
+
<Movetext game={pgn} gameIndex={5} />,
|
|
34
|
+
<Movetext game={pgn} gameIndex={6} />,
|
|
35
35
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
36
36
|
|
|
37
37
|
const customCSS = document.createElement('style');
|
|
38
38
|
customCSS.innerText = `
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
.myClass { font-weight: bold; color: green; }
|
|
40
|
+
#myId { font-weight: bold; color: red; }
|
|
41
41
|
`;
|
|
42
42
|
document.head.appendChild(customCSS);
|
|
@@ -32,14 +32,14 @@ import pgn from '../common/games.pgn';
|
|
|
32
32
|
i18n.PIECE_SYMBOLS = { K: 'R', Q: 'D', R: 'T', B: 'F', N: 'C', P: 'P' };
|
|
33
33
|
|
|
34
34
|
testApp([ /* eslint-disable react/jsx-key */
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
35
|
+
<Movetext game={pgn} pieceSymbols="localized" />,
|
|
36
|
+
<Movetext game={pgn} gameIndex={2} pieceSymbols={{ K: 'Ki_', Q: 'Qu_', R: 'Rk_', B: 'Bi_', N: 'Kn_', P: 'Pw_' }} />,
|
|
37
|
+
<Movetext game={pgn} gameIndex={3} pieceSymbols="figurines" headerVisible={false}
|
|
38
|
+
diagramOptions={{ flipped: true, coordinateVisible: false, squareSize: 32, colorset: 'scid', pieceset: 'eyes' }} />,
|
|
39
|
+
<Movetext game={pgn} gameIndex={3} diagramOptions={{ turnVisible: false, squareSize: 32 }} />,
|
|
40
|
+
<Movetext game={pgn} gameIndex={9} diagramVisible={false} />,
|
|
41
|
+
<Movetext game={pgn} gameIndex={3} diagramOptions={ /* eslint-disable @typescript-eslint/no-explicit-any */ null as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
42
|
+
<Movetext game={pgn} gameIndex={3}
|
|
43
|
+
diagramOptions={ /* eslint-disable @typescript-eslint/no-explicit-any */ { squareSize: '32' } as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
44
|
+
<Movetext game={pgn} pieceSymbols={ /* eslint-disable @typescript-eslint/no-explicit-any */ 'invalid' as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />
|
|
45
45
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
@@ -29,5 +29,5 @@ import { Movetext } from '../../../dist/lib/index';
|
|
|
29
29
|
import pgn from '../common/games.pgn';
|
|
30
30
|
|
|
31
31
|
testApp([ /* eslint-disable react/jsx-key */
|
|
32
|
-
|
|
32
|
+
<Movetext game={pgn} gameIndex={7} interactionMode={ /* eslint-disable @typescript-eslint/no-explicit-any */ 'whatever' as any /* eslint-enable @typescript-eslint/no-explicit-any */ } />,
|
|
33
33
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
|
@@ -29,18 +29,18 @@ import { Movetext } from '../../../dist/lib/index';
|
|
|
29
29
|
import pgn from '../common/games.pgn';
|
|
30
30
|
|
|
31
31
|
function onMoveSelected(nodeId: string | undefined, evtOrigin: string) {
|
|
32
|
-
|
|
32
|
+
setSandbox(`move selected: ${nodeId}\norigin: ${evtOrigin}`);
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
testApp([ /* eslint-disable react/jsx-key */
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
36
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} selection="4w" />,
|
|
37
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" />,
|
|
38
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} interactionMode="selectMove" />,
|
|
39
|
+
<Movetext game={pgn} gameIndex={8} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="1b-v0-3w-v0-3w" />,
|
|
40
|
+
<Movetext game={pgn} gameIndex={8} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="1b-v0-2b" />,
|
|
41
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="start" />,
|
|
42
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="1w" />,
|
|
43
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="6b" />,
|
|
44
|
+
<Movetext game={pgn} gameIndex={7} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="invalid-id" />,
|
|
45
|
+
<Movetext game={pgn} gameIndex={8} headerVisible={false} onMoveSelected={onMoveSelected} interactionMode="selectMove" selection="1b-v0-start" />,
|
|
46
46
|
], 'width-600'); /* eslint-enable react/jsx-key */
|
package/test/graphic_test_app/{12_navigation_board → 12_navigation_board_base}/controlled.tsx
RENAMED
|
@@ -29,15 +29,15 @@ import { NavigationBoard } from '../../../dist/lib/index';
|
|
|
29
29
|
import pgn from '../common/games.pgn';
|
|
30
30
|
|
|
31
31
|
function onNodeIdChanged(nodeId: string) {
|
|
32
|
-
|
|
32
|
+
setSandbox(`Node ID changed: ${nodeId}`);
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
function onFlippedChanged(flipped: boolean) {
|
|
36
|
-
|
|
36
|
+
setSandbox(`Flip state changed: ${flipped}`);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
39
|
testApp([ /* eslint-disable react/jsx-key */
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
40
|
+
<NavigationBoard game={pgn} gameIndex={1} nodeId="17w" onNodeIdChanged={onNodeIdChanged} />,
|
|
41
|
+
<NavigationBoard game={pgn} initialNodeId="3w" nodeId="end" onFlippedChanged={onFlippedChanged} />,
|
|
42
|
+
<NavigationBoard game={pgn} gameIndex={3} nodeId="whatever..." onNodeIdChanged={onNodeIdChanged} flipped={false} onFlippedChanged={onFlippedChanged} />,
|
|
43
43
|
]); /* eslint-enable react/jsx-key */
|
package/test/graphic_test_app/{12_navigation_board → 12_navigation_board_base}/uncontrolled.tsx
RENAMED
|
@@ -40,17 +40,17 @@ gameWithNullMove.mainVariation().play('e4').play('e5').play('Nf3').play('--').pl
|
|
|
40
40
|
const database = pgnRead(pgn);
|
|
41
41
|
|
|
42
42
|
function onNodeIdChanged(nodeId: string) { // Must NOT be invoked as the components are uncontrolled.
|
|
43
|
-
|
|
43
|
+
setSandbox(`Node ID changed: ${nodeId}`);
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
function onFlippedChanged(flipped: boolean) {
|
|
47
|
-
|
|
47
|
+
setSandbox(`Flip state changed: ${flipped}`);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
50
|
testApp([ /* eslint-disable react/jsx-key */
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
<NavigationBoard game={game} initialFlipped />,
|
|
52
|
+
<NavigationBoard game={pgn} initialNodeId="end" initialFlipped flipped={false} />,
|
|
53
|
+
<NavigationBoard game={pgn} gameIndex={1} initialNodeId="17w" onNodeIdChanged={onNodeIdChanged} />,
|
|
54
|
+
<NavigationBoard game={database} gameIndex={3} onNodeIdChanged={onNodeIdChanged} flipped onFlippedChanged={onFlippedChanged} />,
|
|
55
|
+
<NavigationBoard game={gameWithNullMove} initialNodeId="2b" />,
|
|
56
56
|
]); /* eslint-enable react/jsx-key */
|