@gamepark/react-game 6.24.1 → 6.24.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 (289) hide show
  1. package/dist/components/Avatar/Avatar.d.ts +4 -6
  2. package/dist/components/Avatar/Avatar.js +5 -4
  3. package/dist/components/Avatar/Avatar.js.map +1 -1
  4. package/dist/components/Avatar/ChatSpeechBubble.js +3 -2
  5. package/dist/components/Avatar/ChatSpeechBubble.js.map +1 -1
  6. package/dist/components/Avatar/SpeechBubble.d.ts +1 -0
  7. package/dist/components/Avatar/SpeechBubble.js +2 -1
  8. package/dist/components/Avatar/SpeechBubble.js.map +1 -1
  9. package/dist/components/GamePoints/GamePointIcon.js +1 -0
  10. package/dist/components/GamePoints/GamePointIcon.js.map +1 -1
  11. package/dist/components/GamePoints/GamePoints.js +1 -0
  12. package/dist/components/GamePoints/GamePoints.js.map +1 -1
  13. package/dist/components/GameProvider/GameContext.js +2 -1
  14. package/dist/components/GameProvider/GameContext.js.map +1 -1
  15. package/dist/components/GameProvider/GameProvider.js +3 -0
  16. package/dist/components/GameProvider/GameProvider.js.map +1 -1
  17. package/dist/components/Header/Header.d.ts +1 -0
  18. package/dist/components/Header/Header.js +3 -2
  19. package/dist/components/Header/Header.js.map +1 -1
  20. package/dist/components/Header/MaterialHeader.js +1 -0
  21. package/dist/components/Header/MaterialHeader.js.map +1 -1
  22. package/dist/components/ImagesLoader/ImagesLoader.js +1 -0
  23. package/dist/components/ImagesLoader/ImagesLoader.js.map +1 -1
  24. package/dist/components/JournalTabs/Chat/Chat.d.ts +1 -0
  25. package/dist/components/JournalTabs/Chat/ChatMessage.js +1 -0
  26. package/dist/components/JournalTabs/Chat/ChatMessage.js.map +1 -1
  27. package/dist/components/JournalTabs/Chat/ChatMessageAuthor.js +1 -0
  28. package/dist/components/JournalTabs/Chat/ChatMessageAuthor.js.map +1 -1
  29. package/dist/components/JournalTabs/Chat/ChatTextInput.js +1 -0
  30. package/dist/components/JournalTabs/Chat/ChatTextInput.js.map +1 -1
  31. package/dist/components/JournalTabs/Chat/CommonChat.js +1 -0
  32. package/dist/components/JournalTabs/Chat/CommonChat.js.map +1 -1
  33. package/dist/components/JournalTabs/Chat/SignInToChat.js +1 -0
  34. package/dist/components/JournalTabs/Chat/SignInToChat.js.map +1 -1
  35. package/dist/components/JournalTabs/History/GameOverHistory.js +1 -0
  36. package/dist/components/JournalTabs/History/GameOverHistory.js.map +1 -1
  37. package/dist/components/JournalTabs/History/History.js +2 -0
  38. package/dist/components/JournalTabs/History/History.js.map +1 -1
  39. package/dist/components/JournalTabs/History/HistoryEntry.js +1 -0
  40. package/dist/components/JournalTabs/History/HistoryEntry.js.map +1 -1
  41. package/dist/components/JournalTabs/History/StartGameHistory.js +1 -0
  42. package/dist/components/JournalTabs/History/StartGameHistory.js.map +1 -1
  43. package/dist/components/JournalTabs/JournalTabs.d.ts +1 -0
  44. package/dist/components/JournalTabs/JournalTabs.js +5 -1
  45. package/dist/components/JournalTabs/JournalTabs.js.map +1 -1
  46. package/dist/components/Letterbox/Letterbox.js +1 -0
  47. package/dist/components/Letterbox/Letterbox.js.map +1 -1
  48. package/dist/components/LoadingScreen/LoadingScreen.js +1 -0
  49. package/dist/components/LoadingScreen/LoadingScreen.js.map +1 -1
  50. package/dist/components/Picture/Picture.d.ts +1 -0
  51. package/dist/components/Picture/Picture.js +1 -0
  52. package/dist/components/Picture/Picture.js.map +1 -1
  53. package/dist/components/PlayerPanel/Counters.d.ts +14 -0
  54. package/dist/components/PlayerPanel/Counters.js +45 -0
  55. package/dist/components/PlayerPanel/Counters.js.map +1 -0
  56. package/dist/components/PlayerPanel/PlayerPanel.js +1 -0
  57. package/dist/components/PlayerPanel/PlayerPanel.js.map +1 -1
  58. package/dist/components/PlayerPanel/StyledPlayerPanel.d.ts +5 -2
  59. package/dist/components/PlayerPanel/StyledPlayerPanel.js +48 -15
  60. package/dist/components/PlayerPanel/StyledPlayerPanel.js.map +1 -1
  61. package/dist/components/PlayerPanel/index.d.ts +1 -0
  62. package/dist/components/PlayerPanel/index.js +1 -0
  63. package/dist/components/PlayerPanel/index.js.map +1 -1
  64. package/dist/components/PlayerTimer/PlayerTimer.d.ts +1 -0
  65. package/dist/components/PlayerTimer/PlayerTimer.js +1 -0
  66. package/dist/components/PlayerTimer/PlayerTimer.js.map +1 -1
  67. package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +1 -0
  68. package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -1
  69. package/dist/components/buttons/ThemeButton/ThemeButton.d.ts +1 -0
  70. package/dist/components/buttons/UndoMovesButton/UndoMovesButton.d.ts +1 -0
  71. package/dist/components/dialogs/Dialog.d.ts +1 -0
  72. package/dist/components/dialogs/Dialog.js +3 -0
  73. package/dist/components/dialogs/Dialog.js.map +1 -1
  74. package/dist/components/dialogs/FailuresDialog.js +1 -0
  75. package/dist/components/dialogs/FailuresDialog.js.map +1 -1
  76. package/dist/components/dialogs/ResultDialog/RematchDisplay.js +1 -0
  77. package/dist/components/dialogs/ResultDialog/RematchDisplay.js.map +1 -1
  78. package/dist/components/dialogs/ResultDialog/RematchSection.js +1 -0
  79. package/dist/components/dialogs/ResultDialog/RematchSection.js.map +1 -1
  80. package/dist/components/dialogs/ResultDialog/ResultDialog.js +1 -0
  81. package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
  82. package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js +1 -0
  83. package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js.map +1 -1
  84. package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js +1 -0
  85. package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js.map +1 -1
  86. package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +1 -0
  87. package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -1
  88. package/dist/components/dialogs/RulesDialog/RulesDialog.js +1 -0
  89. package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
  90. package/dist/components/dialogs/RulesDialog/RulesHelpDialogContent.js +1 -0
  91. package/dist/components/dialogs/RulesDialog/RulesHelpDialogContent.js.map +1 -1
  92. package/dist/components/material/ComponentDescription.d.ts +32 -0
  93. package/dist/components/material/ComponentDescription.js +15 -1
  94. package/dist/components/material/ComponentDescription.js.map +1 -1
  95. package/dist/components/material/Dices/CubicDiceDescription.d.ts +4 -4
  96. package/dist/components/material/Dices/CubicDiceDescription.js +6 -7
  97. package/dist/components/material/Dices/CubicDiceDescription.js.map +1 -1
  98. package/dist/components/material/DraggableMaterial.js +4 -0
  99. package/dist/components/material/DraggableMaterial.js.map +1 -1
  100. package/dist/components/material/FlatMaterial/BoardDescription.js +1 -1
  101. package/dist/components/material/FlatMaterial/CardDescription.js +3 -3
  102. package/dist/components/material/FlatMaterial/CardDescription.js.map +1 -1
  103. package/dist/components/material/FlatMaterial/FlatMaterial.d.ts +1 -0
  104. package/dist/components/material/FlatMaterial/FlatMaterial.js +2 -1
  105. package/dist/components/material/FlatMaterial/FlatMaterial.js.map +1 -1
  106. package/dist/components/material/FlatMaterial/MoneyDescription.d.ts +7 -0
  107. package/dist/components/material/FlatMaterial/MoneyDescription.js +39 -0
  108. package/dist/components/material/FlatMaterial/MoneyDescription.js.map +1 -0
  109. package/dist/components/material/FlatMaterial/TokenDescription.js +2 -2
  110. package/dist/components/material/FlatMaterial/index.d.ts +1 -0
  111. package/dist/components/material/FlatMaterial/index.js +1 -0
  112. package/dist/components/material/FlatMaterial/index.js.map +1 -1
  113. package/dist/components/material/GameTable/DynamicItemsDisplay.js +2 -1
  114. package/dist/components/material/GameTable/DynamicItemsDisplay.js.map +1 -1
  115. package/dist/components/material/GameTable/GameMaterialDisplay.js +1 -0
  116. package/dist/components/material/GameTable/GameMaterialDisplay.js.map +1 -1
  117. package/dist/components/material/GameTable/GameTable.d.ts +1 -0
  118. package/dist/components/material/GameTable/GameTable.js +1 -0
  119. package/dist/components/material/GameTable/GameTable.js.map +1 -1
  120. package/dist/components/material/GameTable/GameTableNavigation.js +1 -0
  121. package/dist/components/material/GameTable/GameTableNavigation.js.map +1 -1
  122. package/dist/components/material/GameTable/ItemDisplay.js +4 -3
  123. package/dist/components/material/GameTable/ItemDisplay.js.map +1 -1
  124. package/dist/components/material/GameTable/StaticItemsDisplay.d.ts +1 -0
  125. package/dist/components/material/GameTable/StaticLocationsDisplay.d.ts +1 -0
  126. package/dist/components/material/GameTable/focus/FocusProvider.js +1 -0
  127. package/dist/components/material/GameTable/focus/FocusProvider.js.map +1 -1
  128. package/dist/components/material/GameTable/focus/LocationsWithFocus.d.ts +3 -2
  129. package/dist/components/material/GameTable/focus/LocationsWithFocus.js +10 -3
  130. package/dist/components/material/GameTable/focus/LocationsWithFocus.js.map +1 -1
  131. package/dist/components/material/MaterialComponent.js +1 -0
  132. package/dist/components/material/MaterialComponent.js.map +1 -1
  133. package/dist/components/material/MaterialDescription.d.ts +119 -0
  134. package/dist/components/material/MaterialDescription.js +107 -1
  135. package/dist/components/material/MaterialDescription.js.map +1 -1
  136. package/dist/components/material/MobileMaterialDescription.d.ts +1 -0
  137. package/dist/components/material/MobileMaterialDescription.js +2 -1
  138. package/dist/components/material/MobileMaterialDescription.js.map +1 -1
  139. package/dist/components/material/Writing/WritingDescription.js +2 -1
  140. package/dist/components/material/Writing/WritingDescription.js.map +1 -1
  141. package/dist/components/material/animations/CreateItemAnimations.js +6 -4
  142. package/dist/components/material/animations/CreateItemAnimations.js.map +1 -1
  143. package/dist/components/material/animations/DeleteItemAnimations.js +12 -8
  144. package/dist/components/material/animations/DeleteItemAnimations.js.map +1 -1
  145. package/dist/components/material/animations/ItemAnimations.d.ts +2 -1
  146. package/dist/components/material/animations/ItemAnimations.js +10 -1
  147. package/dist/components/material/animations/ItemAnimations.js.map +1 -1
  148. package/dist/components/material/animations/MaterialAnimations.js +1 -1
  149. package/dist/components/material/animations/MaterialGameAnimations.js +2 -2
  150. package/dist/components/material/animations/MoveItemAnimations.d.ts +1 -2
  151. package/dist/components/material/animations/MoveItemAnimations.js +15 -24
  152. package/dist/components/material/animations/MoveItemAnimations.js.map +1 -1
  153. package/dist/components/material/animations/MoveItemAtOnceAnimations.d.ts +1 -2
  154. package/dist/components/material/animations/MoveItemAtOnceAnimations.js +10 -20
  155. package/dist/components/material/animations/MoveItemAtOnceAnimations.js.map +1 -1
  156. package/dist/components/material/animations/RollItemAnimations.d.ts +1 -2
  157. package/dist/components/material/animations/RollItemAnimations.js +5 -11
  158. package/dist/components/material/animations/RollItemAnimations.js.map +1 -1
  159. package/dist/components/material/animations/ShuffleAnimations.js +1 -1
  160. package/dist/components/material/animations/adjustRotation.d.ts +1 -1
  161. package/dist/components/material/animations/adjustRotation.js +60 -19
  162. package/dist/components/material/animations/adjustRotation.js.map +1 -1
  163. package/dist/components/material/animations/isMovedOrDeletedItem.util.d.ts +1 -1
  164. package/dist/components/material/animations/isMovedOrDeletedItem.util.js +1 -4
  165. package/dist/components/material/animations/isMovedOrDeletedItem.util.js.map +1 -1
  166. package/dist/components/material/animations/rotations.utils.d.ts +2 -0
  167. package/dist/components/material/animations/rotations.utils.js +110 -0
  168. package/dist/components/material/animations/rotations.utils.js.map +1 -0
  169. package/dist/components/material/locations/DropAreaDescription.d.ts +1 -1
  170. package/dist/components/material/locations/DropAreaDescription.js +9 -2
  171. package/dist/components/material/locations/DropAreaDescription.js.map +1 -1
  172. package/dist/components/material/locations/LocationComponent.js +2 -1
  173. package/dist/components/material/locations/LocationComponent.js.map +1 -1
  174. package/dist/components/material/locations/LocationDescription.d.ts +7 -0
  175. package/dist/components/material/locations/LocationDescription.js +8 -1
  176. package/dist/components/material/locations/LocationDescription.js.map +1 -1
  177. package/dist/components/material/locations/LocationDisplay.js +1 -0
  178. package/dist/components/material/locations/LocationDisplay.js.map +1 -1
  179. package/dist/components/material/locations/LocationsMask.d.ts +2 -1
  180. package/dist/components/material/locations/LocationsMask.js +2 -2
  181. package/dist/components/material/locations/LocationsMask.js.map +1 -1
  182. package/dist/components/material/locations/SimpleDropArea.js +1 -0
  183. package/dist/components/material/locations/SimpleDropArea.js.map +1 -1
  184. package/dist/components/menus/EjectPlayer/EjectPlayerButton.js +1 -0
  185. package/dist/components/menus/EjectPlayer/EjectPlayerButton.js.map +1 -1
  186. package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js +1 -0
  187. package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js.map +1 -1
  188. package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js +1 -0
  189. package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js.map +1 -1
  190. package/dist/components/menus/Fullscreen/FullscreenButton.js +1 -0
  191. package/dist/components/menus/Fullscreen/FullscreenButton.js.map +1 -1
  192. package/dist/components/menus/Fullscreen/FullscreenDialog.js +1 -0
  193. package/dist/components/menus/Fullscreen/FullscreenDialog.js.map +1 -1
  194. package/dist/components/menus/Fullscreen/FullscreenPopButton.js +1 -0
  195. package/dist/components/menus/Fullscreen/FullscreenPopButton.js.map +1 -1
  196. package/dist/components/menus/GiveUpButton/GiveUpButton.js +1 -0
  197. package/dist/components/menus/GiveUpButton/GiveUpButton.js.map +1 -1
  198. package/dist/components/menus/Menu/Menu.js +1 -0
  199. package/dist/components/menus/Menu/Menu.js.map +1 -1
  200. package/dist/components/menus/Menu/MenuPopButton.js +1 -0
  201. package/dist/components/menus/Menu/MenuPopButton.js.map +1 -1
  202. package/dist/components/menus/Menu/NavButton.d.ts +1 -0
  203. package/dist/components/menus/PlayerQuit/TrackPlayersQuit.js +1 -0
  204. package/dist/components/menus/PlayerQuit/TrackPlayersQuit.js.map +1 -1
  205. package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js +1 -0
  206. package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js.map +1 -1
  207. package/dist/components/menus/Result/ResultButton.js +1 -0
  208. package/dist/components/menus/Result/ResultButton.js.map +1 -1
  209. package/dist/components/menus/Result/ResultPopButton.js +1 -0
  210. package/dist/components/menus/Result/ResultPopButton.js.map +1 -1
  211. package/dist/components/menus/SoundButton/SoundButton.js +1 -0
  212. package/dist/components/menus/SoundButton/SoundButton.js.map +1 -1
  213. package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +1 -0
  214. package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -1
  215. package/dist/components/menus/UndoButton/UndoButton.js +1 -0
  216. package/dist/components/menus/UndoButton/UndoButton.js.map +1 -1
  217. package/dist/components/menus/UndoButton/UndoPopButton.js +1 -0
  218. package/dist/components/menus/UndoButton/UndoPopButton.js.map +1 -1
  219. package/dist/components/tutorial/MaterialTutorial.js +1 -1
  220. package/dist/components/tutorial/MaterialTutorialDisplay.js +1 -0
  221. package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -1
  222. package/dist/components/tutorial/TutorialRulesWrapper.js +1 -0
  223. package/dist/components/tutorial/TutorialRulesWrapper.js.map +1 -1
  224. package/dist/hooks/useFullscreen.js +1 -0
  225. package/dist/hooks/useFullscreen.js.map +1 -1
  226. package/dist/hooks/useOpponentWithMaxTime.d.ts +3 -0
  227. package/dist/hooks/useOpponentWithMaxTime.js +3 -0
  228. package/dist/hooks/useOpponentWithMaxTime.js.map +1 -1
  229. package/dist/hooks/usePlayerTime.js +1 -1
  230. package/dist/hooks/usePlayerTime.js.map +1 -1
  231. package/dist/hooks/usePlayers.js +14 -1
  232. package/dist/hooks/usePlayers.js.map +1 -1
  233. package/dist/hooks/useResultText.js +1 -0
  234. package/dist/hooks/useResultText.js.map +1 -1
  235. package/dist/hooks/useSound.js +1 -0
  236. package/dist/hooks/useSound.js.map +1 -1
  237. package/dist/hooks/useWebP.js +2 -2
  238. package/dist/hooks/useWebP.js.map +1 -1
  239. package/dist/hooks/useZoomToElements.d.ts +3 -0
  240. package/dist/hooks/useZoomToElements.js +3 -0
  241. package/dist/hooks/useZoomToElements.js.map +1 -1
  242. package/dist/locators/DeckLocator.d.ts +3 -0
  243. package/dist/locators/DeckLocator.js +4 -1
  244. package/dist/locators/DeckLocator.js.map +1 -1
  245. package/dist/locators/FlexLocator.d.ts +39 -0
  246. package/dist/locators/FlexLocator.js +31 -1
  247. package/dist/locators/FlexLocator.js.map +1 -1
  248. package/dist/locators/HandLocator.d.ts +72 -0
  249. package/dist/locators/HandLocator.js +73 -1
  250. package/dist/locators/HandLocator.js.map +1 -1
  251. package/dist/locators/LineLocator.d.ts +8 -8
  252. package/dist/locators/LineLocator.js +30 -22
  253. package/dist/locators/LineLocator.js.map +1 -1
  254. package/dist/locators/ListLocator.d.ts +36 -0
  255. package/dist/locators/ListLocator.js +28 -1
  256. package/dist/locators/ListLocator.js.map +1 -1
  257. package/dist/locators/Locator.d.ts +199 -1
  258. package/dist/locators/Locator.js +192 -3
  259. package/dist/locators/Locator.js.map +1 -1
  260. package/dist/locators/PileLocator.d.ts +31 -2
  261. package/dist/locators/PileLocator.js +50 -19
  262. package/dist/locators/PileLocator.js.map +1 -1
  263. package/dist/utilities/DeepPartial.d.ts +3 -0
  264. package/dist/utilities/combineEventListeners.d.ts +6 -0
  265. package/dist/utilities/combineEventListeners.js +6 -0
  266. package/dist/utilities/combineEventListeners.js.map +1 -1
  267. package/dist/utilities/findIfUnique.util.d.ts +6 -0
  268. package/dist/utilities/findIfUnique.util.js +6 -0
  269. package/dist/utilities/findIfUnique.util.js.map +1 -1
  270. package/dist/utilities/translation.util.d.ts +5 -0
  271. package/dist/utilities/translation.util.js +5 -0
  272. package/dist/utilities/translation.util.js.map +1 -1
  273. package/dist/utilities/zoom-pan-pinch/animations.constants.js +20 -0
  274. package/dist/utilities/zoom-pan-pinch/animations.constants.js.map +1 -1
  275. package/dist/utilities/zoom-pan-pinch/animations.util.js +7 -0
  276. package/dist/utilities/zoom-pan-pinch/animations.util.js.map +1 -1
  277. package/dist/utilities/zoom-pan-pinch/bounds.util.d.ts +10 -0
  278. package/dist/utilities/zoom-pan-pinch/bounds.util.js +8 -0
  279. package/dist/utilities/zoom-pan-pinch/bounds.util.js.map +1 -1
  280. package/dist/utilities/zoom-pan-pinch/calculation.util.d.ts +12 -0
  281. package/dist/utilities/zoom-pan-pinch/calculation.util.js +12 -0
  282. package/dist/utilities/zoom-pan-pinch/calculation.util.js.map +1 -1
  283. package/dist/utilities/zoom-pan-pinch/index.d.ts +4 -0
  284. package/dist/utilities/zoom-pan-pinch/index.js +4 -0
  285. package/dist/utilities/zoom-pan-pinch/index.js.map +1 -1
  286. package/dist/utilities/zoom-pan-pinch/zoom.util.d.ts +3 -0
  287. package/dist/utilities/zoom-pan-pinch/zoom.util.js +3 -0
  288. package/dist/utilities/zoom-pan-pinch/zoom.util.js.map +1 -1
  289. package/package.json +3 -3
@@ -17,27 +17,57 @@ var __extends = (this && this.__extends) || (function () {
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.FlexLocator = void 0;
19
19
  var ListLocator_1 = require("./ListLocator");
20
- var FlexLocator = (function (_super) {
20
+ /**
21
+ * This Locator places a list of items as a grid, with break points for the lines. Inspired by the CSS flexbox.
22
+ */
23
+ var FlexLocator = /** @class */ (function (_super) {
21
24
  __extends(FlexLocator, _super);
22
25
  function FlexLocator(clone) {
23
26
  var _this = _super.call(this) || this;
27
+ /**
28
+ * The number of items per line.
29
+ */
24
30
  _this.lineSize = 2;
25
31
  Object.assign(_this, clone);
26
32
  return _this;
27
33
  }
34
+ /**
35
+ * Function to override to provide a {@link lineSize} that depends on the context
36
+ * @param _location Location to position
37
+ * @param _context Context of the game
38
+ * @returns The number of items per line.
39
+ */
28
40
  FlexLocator.prototype.getLineSize = function (_location, _context) {
29
41
  return this.lineSize;
30
42
  };
31
43
  FlexLocator.prototype.getMaxCount = function (location, context) {
32
44
  return this.getLineSize(location, context);
33
45
  };
46
+ /**
47
+ * Function to override to provide a {@link getLineGap} that depends on the context
48
+ * @param _location Location to position
49
+ * @param _context Context of the game
50
+ * @returns The default gap between 2 consecutive lines
51
+ */
34
52
  FlexLocator.prototype.getLineGap = function (_location, _context) {
35
53
  var _a;
36
54
  return (_a = this.lineGap) !== null && _a !== void 0 ? _a : {};
37
55
  };
56
+ /**
57
+ * Function to override to provide a {@link maxLines} that depends on the context
58
+ * @param _location Location to position
59
+ * @param _context Context of the game
60
+ * @returns The maximum number of lines displayed before the gap between the lines is reduced to fill in the same space.
61
+ */
38
62
  FlexLocator.prototype.getMaxLines = function (_location, _context) {
39
63
  return this.maxLines;
40
64
  };
65
+ /**
66
+ * Function to override to provide a {@link maxLineGap} that depends on the context. Uses getMaxLines by default.
67
+ * @param location Location to position
68
+ * @param context Context of the game
69
+ * @returns The maximum gap between the first and the last line.
70
+ */
41
71
  FlexLocator.prototype.getMaxLineGap = function (location, context) {
42
72
  if (this.maxLineGap)
43
73
  return this.maxLineGap;
@@ -1 +1 @@
1
- {"version":3,"file":"FlexLocator.js","sourceRoot":"","sources":["../../src/locators/FlexLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FlexLocator.js","sourceRoot":"","sources":["../../src/locators/FlexLocator.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,96 @@
1
1
  import { Coordinates, Location, MaterialItem } from '@gamepark/rules-api';
2
2
  import { LocationDescription } from '../components';
3
3
  import { ItemContext, Locator, MaterialContext } from './Locator';
4
+ /**
5
+ * This Locator places items fan-shaped to mimic the ways we hold cards in our hands.
6
+ */
4
7
  export declare class HandLocator<P extends number = number, M extends number = number, L extends number = number> extends Locator<P, M, L> {
5
8
  constructor(clone?: Partial<HandLocator>);
9
+ /**
10
+ * Items are place around the circle of an arc. This is the radius of the arc. Override {@link getRadius} to provide a dynamic radius.
11
+ */
6
12
  radius: number;
13
+ /**
14
+ * Provide the radius of the circle. Defaults to {@link radius} property.
15
+ * @param _location Location to position
16
+ * @param _context Context of the game
17
+ * @returns the radius of the circle in cm
18
+ */
7
19
  getRadius(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number;
20
+ /**
21
+ * The default angle of the hand items. For instance, 180 will display the hand oriented towards the bottom of the screen.
22
+ */
8
23
  baseAngle: number;
24
+ /**
25
+ * Function to override to provide a {@link baseAngle} that depends on the context
26
+ * @param _location Location to position
27
+ * @param _context Context of the game
28
+ * @returns the default angle of the items
29
+ */
9
30
  getBaseAngle(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number;
31
+ /**
32
+ * The maximum angle that is allowed between the first and the last items displayed.
33
+ */
10
34
  maxAngle: number;
35
+ /**
36
+ * Function to override to provide a {@link maxAngle} that depends on the context
37
+ * @param _location Location to position
38
+ * @param _context Context of the game
39
+ * @returns the maximum angle between the first and the last items
40
+ */
11
41
  getMaxAngle(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number;
42
+ /**
43
+ * The maximum angle between two consecutive items in the hand
44
+ */
12
45
  gapMaxAngle: number;
46
+ /**
47
+ * Function to override to provide a {@link gapMaxAngle} that depends on the context
48
+ * @param _location Location to position
49
+ * @param _context Context of the game
50
+ * @returns The maximum angle between two consecutive items in the hand
51
+ */
13
52
  getGapMaxAngle(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number;
53
+ /**
54
+ * The direction of the items displayed, for the first to the last index. Default is true.
55
+ */
14
56
  clockwise: boolean;
57
+ /**
58
+ * Function to override to provide a {@link clockwise} info that depends on the context
59
+ * @param _location Location to position
60
+ * @param _context Context of the game
61
+ * @returns true if items should be displayed clockwise around the arc of circle. Default is true.
62
+ */
15
63
  isClockwise(_location: Location<P, L>, _context: MaterialContext<P, M, L>): boolean;
64
+ /**
65
+ * The Z-axis position difference between 2 consecutive items in the hand. Default is 0.05cm.
66
+ */
16
67
  deltaZ: number;
68
+ /**
69
+ * Function to override to provide a {@link deltaZ} that depends on the context
70
+ * @param _location Location to position
71
+ * @param _context Context of the game
72
+ * @returns The Z-axis position difference between 2 consecutive items in the hand. Default is 0.05cm.
73
+ */
17
74
  getDeltaZ(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number;
75
+ /**
76
+ * See {@link Locator.getLocationCoordinates}.
77
+ * @param location Location to position
78
+ * @param context Context of the game
79
+ * @param index Index of the item (or location) to place
80
+ */
18
81
  getLocationCoordinates(location: Location<P, L>, context: MaterialContext<P, M, L>, index?: number | undefined): Coordinates;
19
82
  getItemCoordinates(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Coordinates;
83
+ /**
84
+ * See {@link Locator.getRotateZ}.
85
+ * @param location Location to position
86
+ * @param context Context of the game
87
+ * @param index Index of the item (or location) to place
88
+ */
20
89
  getRotateZ(location: Location<P, L>, context: MaterialContext<P, M, L>, index?: number | undefined): number;
21
90
  getItemRotateZ(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
22
91
  protected generateLocationDescriptionFromDraggedItem(_location: Location<P, L>, context: ItemContext<P, M, L>): LocationDescription<P, M, L>;
92
+ /**
93
+ * See {@link Locator.getHoverTransform}. By default, display the item on top of others, straight, and twice as big.
94
+ */
23
95
  getHoverTransform(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string[];
24
96
  }
@@ -18,37 +18,100 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.HandLocator = void 0;
19
19
  var components_1 = require("../components");
20
20
  var Locator_1 = require("./Locator");
21
- var HandLocator = (function (_super) {
21
+ /**
22
+ * This Locator places items fan-shaped to mimic the ways we hold cards in our hands.
23
+ */
24
+ var HandLocator = /** @class */ (function (_super) {
22
25
  __extends(HandLocator, _super);
23
26
  function HandLocator(clone) {
24
27
  var _this = _super.call(this) || this;
28
+ /**
29
+ * Items are place around the circle of an arc. This is the radius of the arc. Override {@link getRadius} to provide a dynamic radius.
30
+ */
25
31
  _this.radius = 100;
32
+ /**
33
+ * The default angle of the hand items. For instance, 180 will display the hand oriented towards the bottom of the screen.
34
+ */
26
35
  _this.baseAngle = 0;
36
+ /**
37
+ * The maximum angle that is allowed between the first and the last items displayed.
38
+ */
27
39
  _this.maxAngle = 15;
40
+ /**
41
+ * The maximum angle between two consecutive items in the hand
42
+ */
28
43
  _this.gapMaxAngle = 3;
44
+ /**
45
+ * The direction of the items displayed, for the first to the last index. Default is true.
46
+ */
29
47
  _this.clockwise = true;
48
+ /**
49
+ * The Z-axis position difference between 2 consecutive items in the hand. Default is 0.05cm.
50
+ */
30
51
  _this.deltaZ = 0.05;
31
52
  Object.assign(_this, clone);
32
53
  return _this;
33
54
  }
55
+ /**
56
+ * Provide the radius of the circle. Defaults to {@link radius} property.
57
+ * @param _location Location to position
58
+ * @param _context Context of the game
59
+ * @returns the radius of the circle in cm
60
+ */
34
61
  HandLocator.prototype.getRadius = function (_location, _context) {
35
62
  return this.radius;
36
63
  };
64
+ /**
65
+ * Function to override to provide a {@link baseAngle} that depends on the context
66
+ * @param _location Location to position
67
+ * @param _context Context of the game
68
+ * @returns the default angle of the items
69
+ */
37
70
  HandLocator.prototype.getBaseAngle = function (_location, _context) {
38
71
  return this.baseAngle;
39
72
  };
73
+ /**
74
+ * Function to override to provide a {@link maxAngle} that depends on the context
75
+ * @param _location Location to position
76
+ * @param _context Context of the game
77
+ * @returns the maximum angle between the first and the last items
78
+ */
40
79
  HandLocator.prototype.getMaxAngle = function (_location, _context) {
41
80
  return this.maxAngle;
42
81
  };
82
+ /**
83
+ * Function to override to provide a {@link gapMaxAngle} that depends on the context
84
+ * @param _location Location to position
85
+ * @param _context Context of the game
86
+ * @returns The maximum angle between two consecutive items in the hand
87
+ */
43
88
  HandLocator.prototype.getGapMaxAngle = function (_location, _context) {
44
89
  return this.gapMaxAngle;
45
90
  };
91
+ /**
92
+ * Function to override to provide a {@link clockwise} info that depends on the context
93
+ * @param _location Location to position
94
+ * @param _context Context of the game
95
+ * @returns true if items should be displayed clockwise around the arc of circle. Default is true.
96
+ */
46
97
  HandLocator.prototype.isClockwise = function (_location, _context) {
47
98
  return this.clockwise;
48
99
  };
100
+ /**
101
+ * Function to override to provide a {@link deltaZ} that depends on the context
102
+ * @param _location Location to position
103
+ * @param _context Context of the game
104
+ * @returns The Z-axis position difference between 2 consecutive items in the hand. Default is 0.05cm.
105
+ */
49
106
  HandLocator.prototype.getDeltaZ = function (_location, _context) {
50
107
  return this.deltaZ;
51
108
  };
109
+ /**
110
+ * See {@link Locator.getLocationCoordinates}.
111
+ * @param location Location to position
112
+ * @param context Context of the game
113
+ * @param index Index of the item (or location) to place
114
+ */
52
115
  HandLocator.prototype.getLocationCoordinates = function (location, context, index) {
53
116
  if (index === void 0) { index = this.getLocationIndex(location, context); }
54
117
  var _a = this.getCoordinates(location, context), _b = _a.x, x = _b === void 0 ? 0 : _b, _c = _a.y, y = _c === void 0 ? 0 : _c, _d = _a.z, z = _d === void 0 ? 0 : _d;
@@ -67,6 +130,12 @@ var HandLocator = (function (_super) {
67
130
  HandLocator.prototype.getItemCoordinates = function (item, context) {
68
131
  return this.getLocationCoordinates(item.location, context, this.getItemIndex(item, context));
69
132
  };
133
+ /**
134
+ * See {@link Locator.getRotateZ}.
135
+ * @param location Location to position
136
+ * @param context Context of the game
137
+ * @param index Index of the item (or location) to place
138
+ */
70
139
  HandLocator.prototype.getRotateZ = function (location, context, index) {
71
140
  if (index === void 0) { index = this.getLocationIndex(location, context); }
72
141
  var baseAngle = this.getBaseAngle(location, context);
@@ -96,6 +165,9 @@ var HandLocator = (function (_super) {
96
165
  borderRadius: borderRadius
97
166
  });
98
167
  };
168
+ /**
169
+ * See {@link Locator.getHoverTransform}. By default, display the item on top of others, straight, and twice as big.
170
+ */
99
171
  HandLocator.prototype.getHoverTransform = function (item, context) {
100
172
  return ['translateZ(10em)', "rotateZ(".concat(-this.getItemRotateZ(item, context)).concat(this.rotationUnit, ")"), 'scale(2)'];
101
173
  };
@@ -1 +1 @@
1
- {"version":3,"file":"HandLocator.js","sourceRoot":"","sources":["../../src/locators/HandLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HandLocator.js","sourceRoot":"","sources":["../../src/locators/HandLocator.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import { Coordinates, Location, MaterialItem } from '@gamepark/rules-api';
2
- import { ItemContext, Locator, MaterialContext } from './Locator';
3
- export declare abstract class LineLocator<P extends number = number, M extends number = number, L extends number = number> extends Locator<P, M, L> {
4
- getOriginCoordinates(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<Coordinates>;
5
- getLocationCoordinates(location: Location<P, L>, context: MaterialContext<P, M, L>, index?: number): Coordinates;
6
- getItemCoordinates(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Coordinates;
1
+ import { Coordinates, MaterialItem } from '@gamepark/rules-api';
2
+ import { ItemContext, ItemLocator } from './ItemLocator';
3
+ export declare abstract class LineLocator<P extends number = number, M extends number = number, L extends number = number> extends ItemLocator<P, M, L> {
4
+ getPosition(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Coordinates;
7
5
  getDeltaValue(delta: number | undefined, max: number | undefined, count: number): number;
6
+ coordinates: Coordinates;
7
+ getCoordinates(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): Coordinates;
8
8
  delta?: Partial<Coordinates>;
9
- getDelta(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<Coordinates>;
9
+ getDelta(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): Partial<Coordinates>;
10
10
  deltaMax?: Partial<Coordinates>;
11
- getDeltaMax(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<Coordinates>;
11
+ getDeltaMax(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): Partial<Coordinates>;
12
12
  }
@@ -14,38 +14,43 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
17
28
  Object.defineProperty(exports, "__esModule", { value: true });
18
29
  exports.LineLocator = void 0;
19
- var Locator_1 = require("./Locator");
30
+ var ItemLocator_1 = require("./ItemLocator");
20
31
  var LineLocator = (function (_super) {
21
32
  __extends(LineLocator, _super);
22
33
  function LineLocator() {
23
- return _super !== null && _super.apply(this, arguments) || this;
34
+ var _this = _super !== null && _super.apply(this, arguments) || this;
35
+ _this.coordinates = { x: 0, y: 0, z: 0 };
36
+ return _this;
24
37
  }
25
- LineLocator.prototype.getOriginCoordinates = function (_location, _context) {
26
- return this.coordinates;
27
- };
28
- LineLocator.prototype.getLocationCoordinates = function (location, context, index) {
38
+ LineLocator.prototype.getPosition = function (item, context) {
29
39
  var _a, _b, _c, _d, _e;
30
- if (index === void 0) { index = (_a = this.getLocationIndex(location, context)) !== null && _a !== void 0 ? _a : 0; }
31
- var _f = this.getOriginCoordinates(location, context), _g = _f.x, x = _g === void 0 ? 0 : _g, _h = _f.y, y = _h === void 0 ? 0 : _h, _j = _f.z, z = _j === void 0 ? 0 : _j;
32
- var delta = this.getDelta(location, context);
40
+ var coordinates = this.getCoordinates(item, context);
41
+ var index = this.getItemIndex(item, context);
42
+ var delta = this.getDelta(item, context);
33
43
  if (this.getDeltaMax) {
34
- var count = this.countItems(location, context);
44
+ var count = this.countItems(item.location, context);
35
45
  if (count > 1) {
36
- var deltaMax = this.getDeltaMax(location, context);
46
+ var deltaMax = this.getDeltaMax(item, context);
47
+ delta = __assign(__assign({}, delta), { z: delta.z === undefined ? (_b = (_a = context.material[context.type]) === null || _a === void 0 ? void 0 : _a.thickness) !== null && _b !== void 0 ? _b : 0.05 : delta.z });
37
48
  delta.x = this.getDeltaValue(delta.x, deltaMax.x, count);
38
49
  delta.y = this.getDeltaValue(delta.y, deltaMax.y, count);
39
- delta.z = this.getDeltaValue((_b = delta.z) !== null && _b !== void 0 ? _b : 0.05, deltaMax.z, count);
50
+ delta.z = this.getDeltaValue(delta.z, deltaMax.z, count);
40
51
  }
41
52
  }
42
- return { x: x + index * ((_c = delta.x) !== null && _c !== void 0 ? _c : 0), y: y + index * ((_d = delta.y) !== null && _d !== void 0 ? _d : 0), z: z + index * ((_e = delta.z) !== null && _e !== void 0 ? _e : 0) };
43
- };
44
- LineLocator.prototype.getItemCoordinates = function (item, context) {
45
- var _a, _b;
46
- var _c = this.getLocationCoordinates(item.location, context, this.getItemIndex(item, context)), x = _c.x, y = _c.y, z = _c.z;
47
- var thickness = (_b = (_a = context.material[context.type]) === null || _a === void 0 ? void 0 : _a.thickness) !== null && _b !== void 0 ? _b : 0;
48
- return { x: x, y: y, z: z + thickness };
53
+ return { x: coordinates.x + index * ((_c = delta.x) !== null && _c !== void 0 ? _c : 0), y: coordinates.y + index * ((_d = delta.y) !== null && _d !== void 0 ? _d : 0), z: coordinates.z + index * ((_e = delta.z) !== null && _e !== void 0 ? _e : 0) };
49
54
  };
50
55
  LineLocator.prototype.getDeltaValue = function (delta, max, count) {
51
56
  if (delta === void 0) { delta = 0; }
@@ -55,15 +60,18 @@ var LineLocator = (function (_super) {
55
60
  return Math.max(delta, max / (count - 1));
56
61
  return delta;
57
62
  };
58
- LineLocator.prototype.getDelta = function (_location, _context) {
63
+ LineLocator.prototype.getCoordinates = function (_item, _context) {
64
+ return this.coordinates;
65
+ };
66
+ LineLocator.prototype.getDelta = function (_item, _context) {
59
67
  var _a;
60
68
  return (_a = this.delta) !== null && _a !== void 0 ? _a : {};
61
69
  };
62
- LineLocator.prototype.getDeltaMax = function (_location, _context) {
70
+ LineLocator.prototype.getDeltaMax = function (_item, _context) {
63
71
  var _a;
64
72
  return (_a = this.deltaMax) !== null && _a !== void 0 ? _a : {};
65
73
  };
66
74
  return LineLocator;
67
- }(Locator_1.Locator));
75
+ }(ItemLocator_1.ItemLocator));
68
76
  exports.LineLocator = LineLocator;
69
77
  //# sourceMappingURL=LineLocator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineLocator.js","sourceRoot":"","sources":["../../src/locators/LineLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LineLocator.js","sourceRoot":"","sources":["../../src/locators/LineLocator.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,50 @@
1
1
  import { Coordinates, Location, MaterialItem, XYCoordinates } from '@gamepark/rules-api';
2
2
  import { LocationDescription } from '../components';
3
3
  import { ItemContext, Locator, MaterialContext } from './Locator';
4
+ /**
5
+ * This Locator places items at regular intervals.
6
+ */
4
7
  export declare class ListLocator<P extends number = number, M extends number = number, L extends number = number> extends Locator<P, M, L> {
5
8
  constructor(clone?: Partial<ListLocator>);
9
+ /**
10
+ * The default gap between 2 consecutive items
11
+ */
6
12
  gap?: Partial<Coordinates>;
13
+ /**
14
+ * Function to override to provide a {@link gap} that depends on the context
15
+ * @param _location Location to position
16
+ * @param _context Context of the game
17
+ * @returns The default gap between 2 consecutive items
18
+ */
7
19
  getGap(_location: Location<P, L>, _context: MaterialContext<P, M, L>): Partial<Coordinates>;
20
+ /**
21
+ * The maximum number of items that can be displayed in the list before the gap between items is reduced to fill in the same space.
22
+ */
8
23
  maxCount?: number;
24
+ /**
25
+ * Function to override to provide a {@link maxCount that depends on the context
26
+ * @param _location Location to position
27
+ * @param _context Context of the game
28
+ * @returns The maximum number of items that can be displayed in the list before the gap between items is reduced to fill in the same space.
29
+ */
9
30
  getMaxCount(_location: Location<P, L>, _context: MaterialContext<P, M, L>): number | undefined;
31
+ /**
32
+ * The maximum gap between the first and the last items. See {@link maxCount} to get a maxGap based on a max number of items.
33
+ */
10
34
  maxGap?: Partial<Coordinates>;
35
+ /**
36
+ * Function to override to provide a {@link maxGap} that depends on the context
37
+ * @param location Location to position
38
+ * @param context Context of the game
39
+ * @returns The maximum gap between the first and the last items
40
+ */
11
41
  getMaxGap(location: Location<P, L>, context: MaterialContext<P, M, L>): Partial<Coordinates>;
42
+ /**
43
+ * The number of items displayed in the list
44
+ * @param location Location area of the items
45
+ * @param context Context of the game
46
+ * @returns number of items in the location area
47
+ */
12
48
  countListItems(location: Location<P, L>, context: MaterialContext<P, M, L>): number;
13
49
  protected getAreaCoordinates(location: Location<P, L>, context: MaterialContext<P, M, L>): Partial<Coordinates>;
14
50
  protected getCurrentMaxGap(location: Location<P, L>, context: MaterialContext<P, M, L>): XYCoordinates;
@@ -18,20 +18,41 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.ListLocator = void 0;
19
19
  var components_1 = require("../components");
20
20
  var Locator_1 = require("./Locator");
21
- var ListLocator = (function (_super) {
21
+ /**
22
+ * This Locator places items at regular intervals.
23
+ */
24
+ var ListLocator = /** @class */ (function (_super) {
22
25
  __extends(ListLocator, _super);
23
26
  function ListLocator(clone) {
24
27
  var _this = _super.call(this) || this;
25
28
  Object.assign(_this, clone);
26
29
  return _this;
27
30
  }
31
+ /**
32
+ * Function to override to provide a {@link gap} that depends on the context
33
+ * @param _location Location to position
34
+ * @param _context Context of the game
35
+ * @returns The default gap between 2 consecutive items
36
+ */
28
37
  ListLocator.prototype.getGap = function (_location, _context) {
29
38
  var _a;
30
39
  return (_a = this.gap) !== null && _a !== void 0 ? _a : {};
31
40
  };
41
+ /**
42
+ * Function to override to provide a {@link maxCount that depends on the context
43
+ * @param _location Location to position
44
+ * @param _context Context of the game
45
+ * @returns The maximum number of items that can be displayed in the list before the gap between items is reduced to fill in the same space.
46
+ */
32
47
  ListLocator.prototype.getMaxCount = function (_location, _context) {
33
48
  return this.maxCount;
34
49
  };
50
+ /**
51
+ * Function to override to provide a {@link maxGap} that depends on the context
52
+ * @param location Location to position
53
+ * @param context Context of the game
54
+ * @returns The maximum gap between the first and the last items
55
+ */
35
56
  ListLocator.prototype.getMaxGap = function (location, context) {
36
57
  if (this.maxGap)
37
58
  return this.maxGap;
@@ -45,6 +66,12 @@ var ListLocator = (function (_super) {
45
66
  z: z ? z * (maxCount - 1) : z
46
67
  };
47
68
  };
69
+ /**
70
+ * The number of items displayed in the list
71
+ * @param location Location area of the items
72
+ * @param context Context of the game
73
+ * @returns number of items in the location area
74
+ */
48
75
  ListLocator.prototype.countListItems = function (location, context) {
49
76
  var _a;
50
77
  return Math.min((_a = this.limit) !== null && _a !== void 0 ? _a : Infinity, this.countItems(location, context));
@@ -1 +1 @@
1
- {"version":3,"file":"ListLocator.js","sourceRoot":"","sources":["../../src/locators/ListLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ListLocator.js","sourceRoot":"","sources":["../../src/locators/ListLocator.ts"],"names":[],"mappings":"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"}