kokopu-react 3.3.1 → 3.3.3

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.
Files changed (427) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/lib/chessboard/BoardProperties.d.ts +1 -1
  3. package/dist/lib/chessboard/BoardProperties.js +1 -1
  4. package/dist/lib/chessboard/Chessboard.css +1 -1
  5. package/dist/lib/chessboard/Chessboard.d.ts +3 -3
  6. package/dist/lib/chessboard/Chessboard.js +1 -1
  7. package/dist/lib/chessboard/ChessboardImpl.d.ts +1 -1
  8. package/dist/lib/chessboard/ChessboardImpl.js +1 -1
  9. package/dist/lib/chessboard/Draggable.d.ts +1 -1
  10. package/dist/lib/chessboard/Draggable.js +1 -1
  11. package/dist/lib/chessboard/Draggable.js.map +1 -1
  12. package/dist/lib/chessboard/Motion.d.ts +1 -1
  13. package/dist/lib/chessboard/Motion.js +1 -1
  14. package/dist/lib/chessboard/colorsets.d.ts +1 -1
  15. package/dist/lib/chessboard/colorsets.js +1 -1
  16. package/dist/lib/chessboard/piecesets.d.ts +1 -1
  17. package/dist/lib/chessboard/piecesets.js +1 -1
  18. package/dist/lib/errorbox/ErrorBox.css +1 -1
  19. package/dist/lib/errorbox/ErrorBox.d.ts +1 -1
  20. package/dist/lib/errorbox/ErrorBox.js +1 -1
  21. package/dist/lib/errorbox/parsing.d.ts +5 -4
  22. package/dist/lib/errorbox/parsing.js +1 -1
  23. package/dist/lib/exception.d.ts +1 -1
  24. package/dist/lib/exception.js +1 -1
  25. package/dist/lib/i18n.d.ts +1 -1
  26. package/dist/lib/i18n.js +1 -1
  27. package/dist/lib/icons/AnnotationSymbolShape.css +1 -1
  28. package/dist/lib/icons/AnnotationSymbolShape.d.ts +1 -1
  29. package/dist/lib/icons/AnnotationSymbolShape.js +1 -1
  30. package/dist/lib/icons/ArrowMarkerIcon.d.ts +1 -1
  31. package/dist/lib/icons/ArrowMarkerIcon.js +1 -1
  32. package/dist/lib/icons/ArrowTip.d.ts +1 -1
  33. package/dist/lib/icons/ArrowTip.js +1 -1
  34. package/dist/lib/icons/ChessPieceIcon.d.ts +1 -1
  35. package/dist/lib/icons/ChessPieceIcon.js +1 -1
  36. package/dist/lib/icons/SquareMarkerIcon.d.ts +1 -1
  37. package/dist/lib/icons/SquareMarkerIcon.js +1 -1
  38. package/dist/lib/icons/TextMarkerIcon.d.ts +1 -1
  39. package/dist/lib/icons/TextMarkerIcon.js +1 -1
  40. package/dist/lib/icons/arrow.css +1 -1
  41. package/dist/lib/index.d.ts +1 -1
  42. package/dist/lib/index.js +1 -1
  43. package/dist/lib/movetext/Movetext.css +1 -1
  44. package/dist/lib/movetext/Movetext.d.ts +1 -1
  45. package/dist/lib/movetext/Movetext.js +1 -1
  46. package/dist/lib/movetext/Movetext.js.map +1 -1
  47. package/dist/lib/movetext/MovetextImpl.d.ts +1 -1
  48. package/dist/lib/movetext/MovetextImpl.js +1 -1
  49. package/dist/lib/movetext/MovetextImpl.js.map +1 -1
  50. package/dist/lib/movetext/fonts.css +1 -1
  51. package/dist/lib/movetext/htmlFilter.d.ts +1 -1
  52. package/dist/lib/movetext/htmlFilter.js +1 -1
  53. package/dist/lib/movetext/moveFormatter.d.ts +1 -1
  54. package/dist/lib/movetext/moveFormatter.js +1 -1
  55. package/dist/lib/navigationboard/NavigationBoard.d.ts +1 -1
  56. package/dist/lib/navigationboard/NavigationBoard.js +1 -1
  57. package/dist/lib/navigationboard/NavigationBoard.js.map +1 -1
  58. package/dist/lib/navigationboard/NavigationButton.d.ts +1 -1
  59. package/dist/lib/navigationboard/NavigationButton.js +1 -1
  60. package/dist/lib/navigationboard/NavigationField.css +1 -1
  61. package/dist/lib/navigationboard/NavigationField.d.ts +1 -1
  62. package/dist/lib/navigationboard/NavigationField.js +1 -1
  63. package/dist/lib/navigationboard/NavigationField.js.map +1 -1
  64. package/dist/lib/navigationboard/NavigationToolbar.css +1 -1
  65. package/dist/lib/navigationboard/NavigationToolbar.d.ts +1 -1
  66. package/dist/lib/navigationboard/NavigationToolbar.js +1 -1
  67. package/dist/lib/navigationboard/iconPaths.d.ts +1 -1
  68. package/dist/lib/navigationboard/iconPaths.js +1 -1
  69. package/dist/lib/sanitization.d.ts +1 -1
  70. package/dist/lib/sanitization.js +1 -1
  71. package/dist/lib/types.d.ts +1 -1
  72. package/dist/lib/types.js +1 -1
  73. package/dist/lib/util.d.ts +1 -1
  74. package/dist/lib/util.js +1 -1
  75. package/doc_src/demo/NavigationBoardWithMoveText.txt +19 -0
  76. package/doc_src/demo/PageChessboardBase.tsx +1 -1
  77. package/doc_src/demo/PageChessboardInteraction.tsx +1 -1
  78. package/doc_src/demo/PageChessboardMove.tsx +1 -1
  79. package/doc_src/demo/PageChessboardSmallScreens.tsx +1 -1
  80. package/doc_src/demo/PageMovetextBase.tsx +1 -1
  81. package/doc_src/demo/PageMovetextInteraction.tsx +7 -9
  82. package/doc_src/demo/PageNavigationBoardBase.tsx +2 -2
  83. package/doc_src/demo/PageNavigationBoardUncontrolledVsControlled.tsx +3 -3
  84. package/doc_src/demo/PageSynchroNavigationBoardMovetext.tsx +115 -0
  85. package/doc_src/demo/decs.d.ts +6 -1
  86. package/doc_src/demo/demo.css +1 -1
  87. package/doc_src/demo/util.ts +1 -1
  88. package/doc_src/theming/LogoRenderer.js +1 -1
  89. package/doc_src/theming/theming.css +1 -1
  90. package/package.json +29 -29
  91. package/scripts/doc.styleguide.config.js +3 -2
  92. package/scripts/docker-compose.yml +1 -1
  93. package/scripts/test-graphic.webpack.config.js +1 -1
  94. package/scripts/test-headless.webpack.config.js +1 -1
  95. package/src/chessboard/BoardProperties.ts +1 -1
  96. package/src/chessboard/Chessboard.css +1 -1
  97. package/src/chessboard/Chessboard.tsx +3 -3
  98. package/src/chessboard/ChessboardImpl.tsx +1 -1
  99. package/src/chessboard/Draggable.tsx +2 -2
  100. package/src/chessboard/Motion.tsx +1 -1
  101. package/src/chessboard/colorsets.ts +1 -1
  102. package/src/chessboard/piecesets.ts +1 -1
  103. package/src/decs.d.ts +1 -1
  104. package/src/errorbox/ErrorBox.css +1 -1
  105. package/src/errorbox/ErrorBox.tsx +1 -1
  106. package/src/errorbox/parsing.tsx +4 -4
  107. package/src/exception.ts +1 -1
  108. package/src/i18n.ts +1 -1
  109. package/src/icons/AnnotationSymbolShape.css +1 -1
  110. package/src/icons/AnnotationSymbolShape.tsx +1 -1
  111. package/src/icons/ArrowMarkerIcon.tsx +1 -1
  112. package/src/icons/ArrowTip.tsx +1 -1
  113. package/src/icons/ChessPieceIcon.tsx +1 -1
  114. package/src/icons/SquareMarkerIcon.tsx +1 -1
  115. package/src/icons/TextMarkerIcon.tsx +1 -1
  116. package/src/icons/arrow.css +1 -1
  117. package/src/index.ts +1 -1
  118. package/src/movetext/Movetext.css +1 -1
  119. package/src/movetext/Movetext.tsx +2 -2
  120. package/src/movetext/MovetextImpl.tsx +2 -2
  121. package/src/movetext/fonts.css +1 -1
  122. package/src/movetext/htmlFilter.tsx +1 -1
  123. package/src/movetext/moveFormatter.tsx +1 -1
  124. package/src/navigationboard/NavigationBoard.tsx +2 -2
  125. package/src/navigationboard/NavigationButton.ts +1 -1
  126. package/src/navigationboard/NavigationField.css +1 -1
  127. package/src/navigationboard/NavigationField.tsx +2 -2
  128. package/src/navigationboard/NavigationToolbar.css +1 -1
  129. package/src/navigationboard/NavigationToolbar.tsx +1 -1
  130. package/src/navigationboard/iconPaths.ts +1 -1
  131. package/src/sanitization.ts +1 -1
  132. package/src/types.ts +1 -1
  133. package/src/util.ts +1 -1
  134. package/test/01_types.js +1 -1
  135. package/test/02_chessboard_util.js +1 -1
  136. package/test/03_error_box_graphic.js +1 -1
  137. package/test/04_icons_graphic.js +1 -1
  138. package/test/05_chessboard_graphic.js +1 -1
  139. package/test/06_chessboard_animation.js +1 -1
  140. package/test/07_chessboard_interaction.js +1 -1
  141. package/test/08_chessboard_play_moves.js +1 -1
  142. package/test/09_chessboard_small_screens.js +1 -1
  143. package/test/10_movetext_graphic.js +1 -1
  144. package/test/11_movetext_interaction.js +1 -1
  145. package/test/12_navigation_board_base.js +1 -1
  146. package/test/13_navigation_board_graphic.js +1 -1
  147. package/test/14_navigation_board_autoplay.js +1 -1
  148. package/test/common/graphic.js +13 -3
  149. package/test/graphic_references/03_error_box_graphic/base/cut_beginning_of_text.png +0 -0
  150. package/test/graphic_references/03_error_box_graphic/base/cut_end_of_text.png +0 -0
  151. package/test/graphic_references/03_error_box_graphic/base/cut_on_line_breaks.png +0 -0
  152. package/test/graphic_references/03_error_box_graphic/base/error_index_not_integer.png +0 -0
  153. package/test/graphic_references/03_error_box_graphic/base/full.png +0 -0
  154. package/test/graphic_references/03_error_box_graphic/base/minimal.png +0 -0
  155. package/test/graphic_references/03_error_box_graphic/base/missing_error_index.png +0 -0
  156. package/test/graphic_references/03_error_box_graphic/base/missing_error_text.png +0 -0
  157. package/test/graphic_references/03_error_box_graphic/base/negative_error_index.png +0 -0
  158. package/test/graphic_references/03_error_box_graphic/base/single_character_text.png +0 -0
  159. package/test/graphic_references/03_error_box_graphic/base/too_large_error_index.png +0 -0
  160. package/test/graphic_references/03_error_box_graphic/localization/default.png +0 -0
  161. package/test/graphic_references/04_icons_graphic/chess_piece/customized_pieceset.png +0 -0
  162. package/test/graphic_references/04_icons_graphic/chess_piece/invalid_multiple_pieces.png +0 -0
  163. package/test/graphic_references/04_icons_graphic/chess_piece/invalid_pieceset.png +0 -0
  164. package/test/graphic_references/04_icons_graphic/chess_piece/invalid_single_piece.png +0 -0
  165. package/test/graphic_references/04_icons_graphic/chess_piece/invalid_size.png +0 -0
  166. package/test/graphic_references/04_icons_graphic/chess_piece/multiple_pieces.png +0 -0
  167. package/test/graphic_references/04_icons_graphic/chess_piece/single_piece.png +0 -0
  168. package/test/graphic_references/04_icons_graphic/marker/colorized_arrow.png +0 -0
  169. package/test/graphic_references/04_icons_graphic/marker/colorized_square.png +0 -0
  170. package/test/graphic_references/04_icons_graphic/marker/colorized_symbol.png +0 -0
  171. package/test/graphic_references/04_icons_graphic/marker/colorized_text.png +0 -0
  172. package/test/graphic_references/04_icons_graphic/marker/default_arrow.png +0 -0
  173. package/test/graphic_references/04_icons_graphic/marker/default_square.png +0 -0
  174. package/test/graphic_references/04_icons_graphic/marker/default_text.png +0 -0
  175. package/test/graphic_references/04_icons_graphic/marker/invalid_arrow_size.png +0 -0
  176. package/test/graphic_references/04_icons_graphic/marker/invalid_square_size.png +0 -0
  177. package/test/graphic_references/04_icons_graphic/marker/invalid_symbol.png +0 -0
  178. package/test/graphic_references/04_icons_graphic/marker/invalid_text_size.png +0 -0
  179. package/test/graphic_references/04_icons_graphic/marker/wrapped_arrow.png +0 -0
  180. package/test/graphic_references/04_icons_graphic/marker/wrapped_square.png +0 -0
  181. package/test/graphic_references/04_icons_graphic/marker/wrapped_symbol.png +0 -0
  182. package/test/graphic_references/04_icons_graphic/marker/wrapped_text.png +0 -0
  183. package/test/graphic_references/05_chessboard_graphic/annotations/overlap.png +0 -0
  184. package/test/graphic_references/05_chessboard_graphic/annotations/overlap_and_flip.png +0 -0
  185. package/test/graphic_references/05_chessboard_graphic/annotations/with_coordinates.png +0 -0
  186. package/test/graphic_references/05_chessboard_graphic/annotations/with_coordinates_and_flip.png +0 -0
  187. package/test/graphic_references/05_chessboard_graphic/annotations/without_coordinates.png +0 -0
  188. package/test/graphic_references/05_chessboard_graphic/annotations/without_coordinates_and_flip.png +0 -0
  189. package/test/graphic_references/05_chessboard_graphic/base/default.png +0 -0
  190. package/test/graphic_references/05_chessboard_graphic/base/empty.png +0 -0
  191. package/test/graphic_references/05_chessboard_graphic/base/from_fen.png +0 -0
  192. package/test/graphic_references/05_chessboard_graphic/base/from_kokopu_object.png +0 -0
  193. package/test/graphic_references/05_chessboard_graphic/base/parsing_error.png +0 -0
  194. package/test/graphic_references/05_chessboard_graphic/base/wrong_position_type.png +0 -0
  195. package/test/graphic_references/05_chessboard_graphic/chess_variants/chess960.png +0 -0
  196. package/test/graphic_references/05_chessboard_graphic/chess_variants/chess960_with_move.png +0 -0
  197. package/test/graphic_references/05_chessboard_graphic/chess_variants/invalid_variant.png +0 -0
  198. package/test/graphic_references/05_chessboard_graphic/chess_variants/invalid_variant_with_fen.png +0 -0
  199. package/test/graphic_references/05_chessboard_graphic/chess_variants/special_code.png +0 -0
  200. package/test/graphic_references/05_chessboard_graphic/chess_variants/variant_with_std_initial_position.png +0 -0
  201. package/test/graphic_references/05_chessboard_graphic/chess_variants/variant_without_std_initial_position.png +0 -0
  202. package/test/graphic_references/05_chessboard_graphic/flipped/default.png +0 -0
  203. package/test/graphic_references/05_chessboard_graphic/flipped/empty.png +0 -0
  204. package/test/graphic_references/05_chessboard_graphic/flipped/from_fen.png +0 -0
  205. package/test/graphic_references/05_chessboard_graphic/flipped/from_kokopu_object.png +0 -0
  206. package/test/graphic_references/05_chessboard_graphic/flipped/parsing_error.png +0 -0
  207. package/test/graphic_references/05_chessboard_graphic/move/capture.png +0 -0
  208. package/test/graphic_references/05_chessboard_graphic/move/castling_move.png +0 -0
  209. package/test/graphic_references/05_chessboard_graphic/move/default.png +0 -0
  210. package/test/graphic_references/05_chessboard_graphic/move/en-passant.png +0 -0
  211. package/test/graphic_references/05_chessboard_graphic/move/illegal_null-move.png +0 -0
  212. package/test/graphic_references/05_chessboard_graphic/move/no_move_arrow.png +0 -0
  213. package/test/graphic_references/05_chessboard_graphic/move/null-move.png +0 -0
  214. package/test/graphic_references/05_chessboard_graphic/move/parsing_error.png +0 -0
  215. package/test/graphic_references/05_chessboard_graphic/move/promotion.png +0 -0
  216. package/test/graphic_references/05_chessboard_graphic/move/with_forced_move_arrow_and_flip.png +0 -0
  217. package/test/graphic_references/05_chessboard_graphic/move/wrong_move_arrow_color_type.png +0 -0
  218. package/test/graphic_references/05_chessboard_graphic/move/wrong_move_type.png +0 -0
  219. package/test/graphic_references/05_chessboard_graphic/theme/custom_1.png +0 -0
  220. package/test/graphic_references/05_chessboard_graphic/theme/custom_2.png +0 -0
  221. package/test/graphic_references/05_chessboard_graphic/theme/custom_3.png +0 -0
  222. package/test/graphic_references/05_chessboard_graphic/theme/custom_4.png +0 -0
  223. package/test/graphic_references/05_chessboard_graphic/theme/custom_5.png +0 -0
  224. package/test/graphic_references/05_chessboard_graphic/theme/custom_6.png +0 -0
  225. package/test/graphic_references/05_chessboard_graphic/theme/default.png +0 -0
  226. package/test/graphic_references/05_chessboard_graphic/theme/large.png +0 -0
  227. package/test/graphic_references/05_chessboard_graphic/theme/small.png +0 -0
  228. package/test/graphic_references/05_chessboard_graphic/theme/wrong_colorset.png +0 -0
  229. package/test/graphic_references/05_chessboard_graphic/theme/wrong_pieceset.png +0 -0
  230. package/test/graphic_references/05_chessboard_graphic/theme/wrong_square_size_type.png +0 -0
  231. package/test/graphic_references/06_chessboard_animation/base_1/capture.png +0 -0
  232. package/test/graphic_references/06_chessboard_animation/base_1/castling_move.png +0 -0
  233. package/test/graphic_references/06_chessboard_animation/base_1/en-passant.png +0 -0
  234. package/test/graphic_references/06_chessboard_animation/base_1/move_1.png +0 -0
  235. package/test/graphic_references/06_chessboard_animation/base_1/move_2.png +0 -0
  236. package/test/graphic_references/06_chessboard_animation/base_1/promotion.png +0 -0
  237. package/test/graphic_references/06_chessboard_animation/base_2/capture.png +0 -0
  238. package/test/graphic_references/06_chessboard_animation/base_2/castling_move.png +0 -0
  239. package/test/graphic_references/06_chessboard_animation/base_2/en-passant.png +0 -0
  240. package/test/graphic_references/06_chessboard_animation/base_2/move_1.png +0 -0
  241. package/test/graphic_references/06_chessboard_animation/base_2/move_2.png +0 -0
  242. package/test/graphic_references/06_chessboard_animation/base_2/promotion.png +0 -0
  243. package/test/graphic_references/06_chessboard_animation/base_3/capture.png +0 -0
  244. package/test/graphic_references/06_chessboard_animation/base_3/castling_move.png +0 -0
  245. package/test/graphic_references/06_chessboard_animation/base_3/en-passant.png +0 -0
  246. package/test/graphic_references/06_chessboard_animation/base_3/move_1.png +0 -0
  247. package/test/graphic_references/06_chessboard_animation/base_3/move_2.png +0 -0
  248. package/test/graphic_references/06_chessboard_animation/base_3/promotion.png +0 -0
  249. package/test/graphic_references/06_chessboard_animation/on_redraw/final_state.png +0 -0
  250. package/test/graphic_references/06_chessboard_animation/on_redraw/initial_state.png +0 -0
  251. package/test/graphic_references/07_chessboard_interaction/edit_arrows/base_1.png +0 -0
  252. package/test/graphic_references/07_chessboard_interaction/edit_arrows/base_2.png +0 -0
  253. package/test/graphic_references/07_chessboard_interaction/edit_arrows/from_==_to.png +0 -0
  254. package/test/graphic_references/07_chessboard_interaction/edit_arrows/out_of_board.png +0 -0
  255. package/test/graphic_references/07_chessboard_interaction/edit_arrows/over_arrow_marker.png +0 -0
  256. package/test/graphic_references/07_chessboard_interaction/edit_arrows/over_square_marker.png +0 -0
  257. package/test/graphic_references/07_chessboard_interaction/error/edit_color_not_set.png +0 -0
  258. package/test/graphic_references/07_chessboard_interaction/error/wrong_interaction_mode.png +0 -0
  259. package/test/graphic_references/07_chessboard_interaction/move_pieces/after_move.png +0 -0
  260. package/test/graphic_references/07_chessboard_interaction/move_pieces/from_==_to.png +0 -0
  261. package/test/graphic_references/07_chessboard_interaction/move_pieces/move_empty_square.png +0 -0
  262. package/test/graphic_references/07_chessboard_interaction/move_pieces/out_of_board.png +0 -0
  263. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_arrow_marker.png +0 -0
  264. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_empty.png +0 -0
  265. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_non-empty_1.png +0 -0
  266. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_non-empty_2.png +0 -0
  267. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_square_marker.png +0 -0
  268. package/test/graphic_references/07_chessboard_interaction/move_pieces/over_text_marker.png +0 -0
  269. package/test/graphic_references/08_chessboard_play_moves/base/castling_move.png +0 -0
  270. package/test/graphic_references/08_chessboard_play_moves/base/chess960_ambiguous_king_move.png +0 -0
  271. package/test/graphic_references/08_chessboard_play_moves/base/chess960_castling_move_1.png +0 -0
  272. package/test/graphic_references/08_chessboard_play_moves/base/chess960_castling_move_2.png +0 -0
  273. package/test/graphic_references/08_chessboard_play_moves/base/chess960_non-kxr_castling.png +0 -0
  274. package/test/graphic_references/08_chessboard_play_moves/base/from_==_to.png +0 -0
  275. package/test/graphic_references/08_chessboard_play_moves/base/illegal_move.png +0 -0
  276. package/test/graphic_references/08_chessboard_play_moves/base/illegal_position.png +0 -0
  277. package/test/graphic_references/08_chessboard_play_moves/base/out_of_board.png +0 -0
  278. package/test/graphic_references/08_chessboard_play_moves/base/regular_move_1.png +0 -0
  279. package/test/graphic_references/08_chessboard_play_moves/base/regular_move_2.png +0 -0
  280. package/test/graphic_references/08_chessboard_play_moves/base/wrong_color_moved.png +0 -0
  281. package/test/graphic_references/08_chessboard_play_moves/promotions/antichess_promotion.png +0 -0
  282. package/test/graphic_references/08_chessboard_play_moves/promotions/cancel_promotion.png +0 -0
  283. package/test/graphic_references/08_chessboard_play_moves/promotions/regular_promotion_1.png +0 -0
  284. package/test/graphic_references/08_chessboard_play_moves/promotions/regular_promotion_2.png +0 -0
  285. package/test/graphic_references/09_chessboard_small_screens/base/default.png +0 -0
  286. package/test/graphic_references/09_chessboard_small_screens/base/invalid_limits.png +0 -0
  287. package/test/graphic_references/09_chessboard_small_screens/base/width_690.png +0 -0
  288. package/test/graphic_references/09_chessboard_small_screens/base/width_700.png +0 -0
  289. package/test/graphic_references/09_chessboard_small_screens/base/width_710.png +0 -0
  290. package/test/graphic_references/09_chessboard_small_screens/base/width_720.png +0 -0
  291. package/test/graphic_references/09_chessboard_small_screens/base/width_730.png +0 -0
  292. package/test/graphic_references/09_chessboard_small_screens/base/width_740.png +0 -0
  293. package/test/graphic_references/09_chessboard_small_screens/base/width_750.png +0 -0
  294. package/test/graphic_references/09_chessboard_small_screens/top_bottom_components/default_bottom_component.png +0 -0
  295. package/test/graphic_references/09_chessboard_small_screens/top_bottom_components/default_top_component.png +0 -0
  296. package/test/graphic_references/09_chessboard_small_screens/top_bottom_components/reduced_bottom_component.png +0 -0
  297. package/test/graphic_references/09_chessboard_small_screens/top_bottom_components/reduced_top_component.png +0 -0
  298. package/test/graphic_references/10_movetext_graphic/base/game_1.png +0 -0
  299. package/test/graphic_references/10_movetext_graphic/base/game_2.png +0 -0
  300. package/test/graphic_references/10_movetext_graphic/base/game_3.png +0 -0
  301. package/test/graphic_references/10_movetext_graphic/base/game_4.png +0 -0
  302. package/test/graphic_references/10_movetext_graphic/error/pgn_parsing_error_1.png +0 -0
  303. package/test/graphic_references/10_movetext_graphic/error/pgn_parsing_error_2.png +0 -0
  304. package/test/graphic_references/10_movetext_graphic/error/wrong_game_index_1.png +0 -0
  305. package/test/graphic_references/10_movetext_graphic/error/wrong_game_index_2.png +0 -0
  306. package/test/graphic_references/10_movetext_graphic/error/wrong_game_index_type.png +0 -0
  307. package/test/graphic_references/10_movetext_graphic/error/wrong_game_type.png +0 -0
  308. package/test/graphic_references/10_movetext_graphic/format_move/format_text.png +0 -0
  309. package/test/graphic_references/10_movetext_graphic/html/filtered_tags_and_attributes.png +0 -0
  310. package/test/graphic_references/10_movetext_graphic/html/html_in_comments.png +0 -0
  311. package/test/graphic_references/10_movetext_graphic/html/html_in_headers.png +0 -0
  312. package/test/graphic_references/10_movetext_graphic/options/custom_piece_symbols.png +0 -0
  313. package/test/graphic_references/10_movetext_graphic/options/figurine_piece_symbols_and_diagram_options.png +0 -0
  314. package/test/graphic_references/10_movetext_graphic/options/hidden_diagrams.png +0 -0
  315. package/test/graphic_references/10_movetext_graphic/options/localized_piece_symbols.png +0 -0
  316. package/test/graphic_references/10_movetext_graphic/options/other_diagram_options.png +0 -0
  317. package/test/graphic_references/10_movetext_graphic/options/wrong_diagram_options_1.png +0 -0
  318. package/test/graphic_references/10_movetext_graphic/options/wrong_diagram_options_2.png +0 -0
  319. package/test/graphic_references/10_movetext_graphic/options/wrong_piece_symbol_value.png +0 -0
  320. package/test/graphic_references/11_movetext_interaction/error/wrong_interaction_mode.png +0 -0
  321. package/test/graphic_references/11_movetext_interaction/select_moves/click_on_disabled.png +0 -0
  322. package/test/graphic_references/11_movetext_interaction/select_moves/click_on_unselected.png +0 -0
  323. package/test/graphic_references/11_movetext_interaction/select_moves/click_on_unselected_without_callback.png +0 -0
  324. package/test/graphic_references/11_movetext_interaction/select_moves/click_on_with_variations.png +0 -0
  325. package/test/graphic_references/12_navigation_board_base/controlled/default.png +0 -0
  326. package/test/graphic_references/12_navigation_board_base/controlled/forbidden_navigation_0.png +0 -0
  327. package/test/graphic_references/12_navigation_board_base/controlled/forbidden_navigation_1.png +0 -0
  328. package/test/graphic_references/12_navigation_board_base/controlled/invalid_node_id.png +0 -0
  329. package/test/graphic_references/12_navigation_board_base/controlled/no_callback_defined_0.png +0 -0
  330. package/test/graphic_references/12_navigation_board_base/controlled/no_callback_defined_1.png +0 -0
  331. package/test/graphic_references/12_navigation_board_base/controlled/overriding_initial_node_id.png +0 -0
  332. package/test/graphic_references/12_navigation_board_base/controlled/regular_navigation_0.png +0 -0
  333. package/test/graphic_references/12_navigation_board_base/controlled/regular_navigation_1.png +0 -0
  334. package/test/graphic_references/12_navigation_board_base/controlled/regular_navigation_2.png +0 -0
  335. package/test/graphic_references/12_navigation_board_base/controlled/regular_navigation_3.png +0 -0
  336. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_0.png +0 -0
  337. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_1.png +0 -0
  338. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_beginning_2.png +0 -0
  339. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_0.png +0 -0
  340. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_1.png +0 -0
  341. package/test/graphic_references/12_navigation_board_base/uncontrolled/forbidden_navigation_at_end_2.png +0 -0
  342. package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_at_end.png +0 -0
  343. package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_at_specific_id.png +0 -0
  344. package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_default.png +0 -0
  345. package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_default_with_game_index.png +0 -0
  346. package/test/graphic_references/12_navigation_board_base/uncontrolled/initial_state_on_null-move.png +0 -0
  347. package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_0.png +0 -0
  348. package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_1.png +0 -0
  349. package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_2.png +0 -0
  350. package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_3.png +0 -0
  351. package/test/graphic_references/12_navigation_board_base/uncontrolled/navigation_with_keys_4.png +0 -0
  352. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_flipping_0.png +0 -0
  353. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_flipping_1.png +0 -0
  354. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_0.png +0 -0
  355. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_1.png +0 -0
  356. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_2.png +0 -0
  357. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_3.png +0 -0
  358. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_4.png +0 -0
  359. package/test/graphic_references/12_navigation_board_base/uncontrolled/regular_navigation_5.png +0 -0
  360. package/test/graphic_references/13_navigation_board_graphic/additional_buttons/error_1.png +0 -0
  361. package/test/graphic_references/13_navigation_board_graphic/additional_buttons/error_2.png +0 -0
  362. package/test/graphic_references/13_navigation_board_graphic/additional_buttons/multiple_buttons.png +0 -0
  363. package/test/graphic_references/13_navigation_board_graphic/additional_buttons/single_button.png +0 -0
  364. package/test/graphic_references/13_navigation_board_graphic/error/pgn_parsing_error.png +0 -0
  365. package/test/graphic_references/13_navigation_board_graphic/error/wrong_game_type.png +0 -0
  366. package/test/graphic_references/13_navigation_board_graphic/theme/custom_1.png +0 -0
  367. package/test/graphic_references/13_navigation_board_graphic/theme/custom_2.png +0 -0
  368. package/test/graphic_references/13_navigation_board_graphic/theme/large.png +0 -0
  369. package/test/graphic_references/13_navigation_board_graphic/theme/small.png +0 -0
  370. package/test/graphic_references/14_navigation_board_autoplay/controlled/after_1_move_acknowledging_is-playing_changes.png +0 -0
  371. package/test/graphic_references/14_navigation_board_autoplay/controlled/after_1_move_not_acknowledging_is-playing_changes.png +0 -0
  372. package/test/graphic_references/14_navigation_board_autoplay/controlled/after_2_moves_acknowledging_node_changes.png +0 -0
  373. package/test/graphic_references/14_navigation_board_autoplay/controlled/after_2_moves_not_acknowledging_node_changes.png +0 -0
  374. package/test/graphic_references/14_navigation_board_autoplay/controlled/after_reaching_the_end.png +0 -0
  375. package/test/graphic_references/14_navigation_board_autoplay/controlled/already_at_the_end.png +0 -0
  376. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_acknowledging_is-playing_changes.png +0 -0
  377. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_acknowledging_node_changes.png +0 -0
  378. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_at_the_end.png +0 -0
  379. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_close_to_end.png +0 -0
  380. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_not_acknowledging_is-playing_changes.png +0 -0
  381. package/test/graphic_references/14_navigation_board_autoplay/controlled/initial_state_not_acknowledging_node_changes.png +0 -0
  382. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_2_moves_from_beginning_after_stop.png +0 -0
  383. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_2_moves_from_beginning_before_stop.png +0 -0
  384. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_reaching_the_end_after_stop.png +0 -0
  385. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/after_reaching_the_end_before_stop.png +0 -0
  386. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/initial_state_close_to_end.png +0 -0
  387. package/test/graphic_references/14_navigation_board_autoplay/uncontrolled/initial_state_default.png +0 -0
  388. package/test/graphic_test_app/03_error_box_graphic/base.tsx +1 -1
  389. package/test/graphic_test_app/03_error_box_graphic/localization.tsx +1 -1
  390. package/test/graphic_test_app/04_icons_graphic/chess_piece.tsx +1 -1
  391. package/test/graphic_test_app/04_icons_graphic/marker.tsx +1 -1
  392. package/test/graphic_test_app/05_chessboard_graphic/annotations.tsx +1 -1
  393. package/test/graphic_test_app/05_chessboard_graphic/base.tsx +1 -1
  394. package/test/graphic_test_app/05_chessboard_graphic/chess_variants.tsx +1 -1
  395. package/test/graphic_test_app/05_chessboard_graphic/flipped.tsx +1 -1
  396. package/test/graphic_test_app/05_chessboard_graphic/move.tsx +1 -1
  397. package/test/graphic_test_app/05_chessboard_graphic/theme.tsx +1 -1
  398. package/test/graphic_test_app/06_chessboard_animation/base_1.tsx +1 -1
  399. package/test/graphic_test_app/06_chessboard_animation/base_2.tsx +1 -1
  400. package/test/graphic_test_app/06_chessboard_animation/base_3.tsx +1 -1
  401. package/test/graphic_test_app/06_chessboard_animation/on_redraw.tsx +1 -1
  402. package/test/graphic_test_app/07_chessboard_interaction/click_squares.tsx +1 -1
  403. package/test/graphic_test_app/07_chessboard_interaction/edit_arrows.tsx +1 -1
  404. package/test/graphic_test_app/07_chessboard_interaction/error.tsx +1 -1
  405. package/test/graphic_test_app/07_chessboard_interaction/move_pieces.tsx +1 -1
  406. package/test/graphic_test_app/08_chessboard_play_moves/base.tsx +1 -1
  407. package/test/graphic_test_app/08_chessboard_play_moves/promotions.tsx +1 -1
  408. package/test/graphic_test_app/09_chessboard_small_screens/base.tsx +1 -1
  409. package/test/graphic_test_app/09_chessboard_small_screens/top_bottom_components.tsx +1 -1
  410. package/test/graphic_test_app/10_movetext_graphic/base.tsx +1 -1
  411. package/test/graphic_test_app/10_movetext_graphic/error.tsx +1 -1
  412. package/test/graphic_test_app/10_movetext_graphic/format_move.tsx +1 -1
  413. package/test/graphic_test_app/10_movetext_graphic/html.tsx +1 -1
  414. package/test/graphic_test_app/10_movetext_graphic/options.tsx +1 -1
  415. package/test/graphic_test_app/11_movetext_interaction/error.tsx +1 -1
  416. package/test/graphic_test_app/11_movetext_interaction/select_moves.tsx +1 -1
  417. package/test/graphic_test_app/12_navigation_board_base/controlled.tsx +1 -1
  418. package/test/graphic_test_app/12_navigation_board_base/uncontrolled.tsx +1 -1
  419. package/test/graphic_test_app/13_navigation_board_graphic/additional_buttons.tsx +1 -1
  420. package/test/graphic_test_app/13_navigation_board_graphic/error.tsx +1 -1
  421. package/test/graphic_test_app/13_navigation_board_graphic/theme.tsx +1 -1
  422. package/test/graphic_test_app/14_navigation_board_autoplay/controlled.tsx +1 -1
  423. package/test/graphic_test_app/14_navigation_board_autoplay/uncontrolled.tsx +1 -1
  424. package/test/graphic_test_app/common/decs.d.ts +1 -1
  425. package/test/graphic_test_app/common/test_app.css +1 -1
  426. package/test/graphic_test_app/common/test_app.tsx +1 -1
  427. /package/doc_src/demo/{game-3.pgn → game-short.pgn} +0 -0
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -127,7 +127,7 @@ export class Movetext extends React.Component<MovetextProps> {
127
127
  headerVisible: true,
128
128
  };
129
129
 
130
- private implRef: React.RefObject<MovetextImpl> = React.createRef();
130
+ private implRef = React.createRef<MovetextImpl>();
131
131
 
132
132
  render() {
133
133
 
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -62,7 +62,7 @@ interface MovetextImplProps {
62
62
  */
63
63
  export class MovetextImpl extends React.Component<MovetextImplProps> {
64
64
 
65
- private navigationFieldRef: React.RefObject<NavigationField> = React.createRef();
65
+ private navigationFieldRef = React.createRef<NavigationField>();
66
66
 
67
67
  render() {
68
68
  return (
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -186,7 +186,7 @@ export class NavigationBoard extends React.Component<NavigationBoardProps, Navig
186
186
  additionalButtons: [],
187
187
  };
188
188
 
189
- private navigationFieldRef: React.RefObject<NavigationField> = React.createRef();
189
+ private navigationFieldRef = React.createRef<NavigationField>();
190
190
  private timeoutId?: number;
191
191
 
192
192
  constructor(props: NavigationBoardProps) {
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -43,7 +43,7 @@ interface NavigationFieldProps {
43
43
  */
44
44
  export class NavigationField extends React.Component<NavigationFieldProps> {
45
45
 
46
- private focusFieldRef: React.RefObject<HTMLAnchorElement> = React.createRef();
46
+ private focusFieldRef = React.createRef<HTMLAnchorElement>();
47
47
 
48
48
  render() {
49
49
  return (
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
package/src/types.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
package/src/util.ts CHANGED
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
package/test/01_types.js CHANGED
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -3,7 +3,7 @@
3
3
  * *
4
4
  * Kokopu-React - A React-based library of chess-related components. *
5
5
  * <https://www.npmjs.com/package/kokopu-react> *
6
- * Copyright (C) 2021-2024 Yoann Le Montagner <yo35 -at- melix.net> *
6
+ * Copyright (C) 2021-2025 Yoann Le Montagner <yo35 -at- melix.net> *
7
7
  * *
8
8
  * Kokopu-React is free software: you can redistribute it and/or *
9
9
  * modify it under the terms of the GNU Lesser General Public License *
@@ -42,6 +42,7 @@ const UNREACHABLE_TEST_CLIENT_MESSAGE =
42
42
 
43
43
  const ANIMATION_DELAY = 200;
44
44
  const AUTOPLAY_DELAY = 1000;
45
+ const WINDOW_WIDTH_CHANGE_DELAY = 50;
45
46
 
46
47
 
47
48
  /**
@@ -144,11 +145,19 @@ async function fetchTestCase(browserContext, testCaseName) {
144
145
  }
145
146
 
146
147
 
148
+ /**
149
+ * Wait for a given delay (to be specified in ms).
150
+ */
151
+ async function waitForDelay(delay) {
152
+ await new Promise(resolve => setTimeout(resolve, delay));
153
+ }
154
+
155
+
147
156
  /**
148
157
  * Wait until the end of the chessboard animations.
149
158
  */
150
159
  const waitForAnimation = exports.waitForAnimation = async function () {
151
- await new Promise(resolve => setTimeout(resolve, ANIMATION_DELAY));
160
+ await waitForDelay(ANIMATION_DELAY);
152
161
  };
153
162
 
154
163
 
@@ -156,7 +165,7 @@ const waitForAnimation = exports.waitForAnimation = async function () {
156
165
  * Wait until the given number of moves have been auto-played.
157
166
  */
158
167
  exports.waitForAutoplay = async function (nbMoves) {
159
- await new Promise(resolve => setTimeout(resolve, (nbMoves + 0.5) * AUTOPLAY_DELAY));
168
+ await waitForDelay((nbMoves + 0.5) * AUTOPLAY_DELAY);
160
169
  };
161
170
 
162
171
 
@@ -221,6 +230,7 @@ exports.setSandbox = async function (browserContext, value) {
221
230
  exports.setWindowWidth = async function (browserContext, width) {
222
231
  const { height } = await await browserContext.driver.manage().window().getRect();
223
232
  await browserContext.driver.manage().window().setRect({ width: width, height: height });
233
+ await waitForDelay(WINDOW_WIDTH_CHANGE_DELAY); // Empirical delay: without it, selenium may not take the width change into account.
224
234
  };
225
235
 
226
236