@gamepark/react-game 6.0.0-alpha.0 → 6.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Avatar/Avatar.js +7 -5
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/GameProvider/GameContext.d.ts +1 -0
- package/dist/components/GameProvider/GameContext.js.map +1 -1
- package/dist/components/GameProvider/GameProvider.d.ts +1 -1
- package/dist/components/GameProvider/GameProvider.js +13 -4
- package/dist/components/GameProvider/GameProvider.js.map +1 -1
- package/dist/components/ImagesLoader/ImagesLoader.d.ts +2 -3
- package/dist/components/ImagesLoader/ImagesLoader.js.map +1 -1
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +25 -10
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -1
- package/dist/components/dialogs/ResultDialog/ResultDialog.js +22 -17
- package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.d.ts +4 -9
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js +7 -7
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js +5 -17
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.d.ts +3 -6
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +8 -8
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.d.ts +1 -0
- package/dist/components/dialogs/RulesDialog/RulesDialog.js +3 -3
- package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
- package/dist/components/index.d.ts +2 -0
- package/dist/components/index.js +2 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/material/DraggableMaterial.d.ts +14 -11
- package/dist/components/material/DraggableMaterial.js +102 -48
- package/dist/components/material/DraggableMaterial.js.map +1 -1
- package/dist/components/material/FlatMaterial/BoardDescription.d.ts +3 -0
- package/dist/components/material/FlatMaterial/BoardDescription.js +28 -0
- package/dist/components/material/FlatMaterial/BoardDescription.js.map +1 -0
- package/dist/components/material/FlatMaterial/CardDescription.d.ts +6 -0
- package/dist/components/material/FlatMaterial/CardDescription.js +32 -0
- package/dist/components/material/FlatMaterial/CardDescription.js.map +1 -0
- package/dist/components/material/FlatMaterial/FlatMaterial.d.ts +35 -0
- package/dist/components/material/FlatMaterial/FlatMaterial.js +128 -0
- package/dist/components/material/FlatMaterial/FlatMaterial.js.map +1 -0
- package/dist/components/material/FlatMaterial/TokenDescription.d.ts +10 -0
- package/dist/components/material/FlatMaterial/TokenDescription.js +44 -0
- package/dist/components/material/FlatMaterial/TokenDescription.js.map +1 -0
- package/dist/components/material/FlatMaterial/index.d.ts +4 -0
- package/dist/components/material/{Card → FlatMaterial}/index.js +4 -1
- package/dist/components/material/FlatMaterial/index.js.map +1 -0
- package/dist/components/material/GameTable/GameMaterialDisplay.js +64 -45
- package/dist/components/material/GameTable/GameMaterialDisplay.js.map +1 -1
- package/dist/components/material/GameTable/GameTable.d.ts +2 -2
- package/dist/components/material/GameTable/GameTable.js +64 -16
- package/dist/components/material/GameTable/GameTable.js.map +1 -1
- package/dist/components/material/GameTable/GameTableContent.js +22 -7
- package/dist/components/material/GameTable/GameTableContent.js.map +1 -1
- package/dist/components/material/ImageLoader/MaterialImageLoader.d.ts +5 -0
- package/dist/components/material/ImageLoader/MaterialImageLoader.js +33 -0
- package/dist/components/material/ImageLoader/MaterialImageLoader.js.map +1 -0
- package/dist/components/material/ImageLoader/index.d.ts +1 -0
- package/dist/components/material/{Token → ImageLoader}/index.js +1 -1
- package/dist/components/material/ImageLoader/index.js.map +1 -0
- package/dist/components/material/MaterialAnimations.d.ts +11 -14
- package/dist/components/material/MaterialAnimations.js +129 -82
- package/dist/components/material/MaterialAnimations.js.map +1 -1
- package/dist/components/material/MaterialComponent.d.ts +5 -10
- package/dist/components/material/MaterialComponent.js +8 -53
- package/dist/components/material/MaterialComponent.js.map +1 -1
- package/dist/components/material/MaterialDescription.d.ts +31 -18
- package/dist/components/material/MaterialDescription.js +36 -0
- package/dist/components/material/MaterialDescription.js.map +1 -1
- package/dist/components/material/animations/CreateItemAnimations.d.ts +14 -0
- package/dist/components/material/animations/CreateItemAnimations.js +72 -0
- package/dist/components/material/animations/CreateItemAnimations.js.map +1 -0
- package/dist/components/material/animations/DeleteItemAnimations.d.ts +14 -0
- package/dist/components/material/animations/DeleteItemAnimations.js +80 -0
- package/dist/components/material/animations/DeleteItemAnimations.js.map +1 -0
- package/dist/components/material/animations/ItemAnimations.d.ts +7 -0
- package/dist/components/material/animations/ItemAnimations.js +31 -0
- package/dist/components/material/animations/ItemAnimations.js.map +1 -0
- package/dist/components/material/animations/MaterialAnimations.d.ts +19 -0
- package/dist/components/material/animations/MaterialAnimations.js +51 -0
- package/dist/components/material/animations/MaterialAnimations.js.map +1 -0
- package/dist/components/material/animations/MaterialGameAnimations.d.ts +11 -0
- package/dist/components/material/animations/MaterialGameAnimations.js +42 -0
- package/dist/components/material/animations/MaterialGameAnimations.js.map +1 -0
- package/dist/components/material/animations/MoveItemAnimations.d.ts +16 -0
- package/dist/components/material/animations/MoveItemAnimations.js +105 -0
- package/dist/components/material/animations/MoveItemAnimations.js.map +1 -0
- package/dist/components/material/animations/ShuffleAnimations.d.ts +8 -0
- package/dist/components/material/animations/ShuffleAnimations.js +34 -0
- package/dist/components/material/animations/ShuffleAnimations.js.map +1 -0
- package/dist/components/material/animations/adjustRotation.d.ts +1 -0
- package/dist/components/material/animations/adjustRotation.js +37 -0
- package/dist/components/material/animations/adjustRotation.js.map +1 -0
- package/dist/components/material/animations/getFirstStockItemTransforms.util.d.ts +2 -0
- package/dist/components/material/animations/getFirstStockItemTransforms.util.js +32 -0
- package/dist/components/material/animations/getFirstStockItemTransforms.util.js.map +1 -0
- package/dist/components/material/animations/index.d.ts +9 -0
- package/dist/components/material/animations/index.js +29 -0
- package/dist/components/material/animations/index.js.map +1 -0
- package/dist/components/material/animations/isMovedOrDeletedItem.util.d.ts +3 -0
- package/dist/components/material/animations/isMovedOrDeletedItem.util.js +28 -0
- package/dist/components/material/animations/isMovedOrDeletedItem.util.js.map +1 -0
- package/dist/components/material/animations/itemMovementCss.util.d.ts +2 -0
- package/dist/components/material/animations/itemMovementCss.util.js +13 -0
- package/dist/components/material/animations/itemMovementCss.util.js.map +1 -0
- package/dist/components/material/animations/transformItem.util.d.ts +2 -0
- package/dist/components/material/animations/transformItem.util.js +11 -0
- package/dist/components/material/animations/transformItem.util.js.map +1 -0
- package/dist/components/material/index.d.ts +4 -7
- package/dist/components/material/index.js +4 -7
- package/dist/components/material/index.js.map +1 -1
- package/dist/components/material/locations/LocationDescription.d.ts +28 -0
- package/dist/components/material/locations/LocationDescription.js +54 -0
- package/dist/components/material/locations/LocationDescription.js.map +1 -0
- package/dist/components/material/locations/LocationsMask.d.ts +5 -0
- package/dist/components/material/locations/LocationsMask.js +48 -0
- package/dist/components/material/locations/LocationsMask.js.map +1 -0
- package/dist/components/material/locations/SimpleDropArea.d.ts +13 -0
- package/dist/components/material/{DropAreas → locations}/SimpleDropArea.js +44 -30
- package/dist/components/material/locations/SimpleDropArea.js.map +1 -0
- package/dist/components/material/locations/index.d.ts +3 -0
- package/dist/components/material/{Board → locations}/index.js +3 -1
- package/dist/components/material/locations/index.js.map +1 -0
- package/dist/components/material/utils/getItemFromContext.d.ts +3 -0
- package/dist/components/material/utils/getItemFromContext.js +10 -0
- package/dist/components/material/utils/getItemFromContext.js.map +1 -0
- package/dist/components/material/utils/index.d.ts +0 -3
- package/dist/components/material/utils/index.js +0 -3
- package/dist/components/material/utils/index.js.map +1 -1
- package/dist/components/material/utils/isDroppedItem.d.ts +2 -0
- package/dist/components/material/utils/isDroppedItem.js +15 -0
- package/dist/components/material/utils/isDroppedItem.js.map +1 -0
- package/dist/components/material/utils/isPlacedOnItem.d.ts +3 -0
- package/dist/components/material/utils/isPlacedOnItem.js +15 -0
- package/dist/components/material/utils/isPlacedOnItem.js.map +1 -0
- package/dist/components/material/utils/useIsAnimatingPlayerAction.d.ts +1 -0
- package/dist/components/material/utils/useIsAnimatingPlayerAction.js +10 -0
- package/dist/components/material/utils/useIsAnimatingPlayerAction.js.map +1 -0
- package/dist/components/menus/Menu/Menu.js +3 -3
- package/dist/components/menus/Menu/Menu.js.map +1 -1
- package/dist/components/menus/Result/ResultPopButton.js +1 -1
- package/dist/components/menus/Result/ResultPopButton.js.map +1 -1
- package/dist/components/tutorial/MaterialTutorial.d.ts +47 -0
- package/dist/components/tutorial/MaterialTutorial.js +95 -0
- package/dist/components/tutorial/MaterialTutorial.js.map +1 -0
- package/dist/components/tutorial/MaterialTutorialDisplay.d.ts +1 -0
- package/dist/components/tutorial/MaterialTutorialDisplay.js +73 -0
- package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -0
- package/dist/components/tutorial/TutorialRulesWrapper.d.ts +3 -0
- package/dist/components/tutorial/TutorialRulesWrapper.js +60 -0
- package/dist/components/tutorial/TutorialRulesWrapper.js.map +1 -0
- package/dist/components/tutorial/index.d.ts +1 -0
- package/dist/components/{material/DropAreas → tutorial}/index.js +1 -1
- package/dist/components/tutorial/index.js.map +1 -0
- package/dist/css/componentSizeCss.d.ts +1 -5
- package/dist/css/componentSizeCss.js +1 -1
- package/dist/css/componentSizeCss.js.map +1 -1
- package/dist/css/fadeIn.d.ts +1 -0
- package/dist/css/fadeIn.js +13 -0
- package/dist/css/fadeIn.js.map +1 -0
- package/dist/css/index.d.ts +2 -0
- package/dist/css/index.js +2 -0
- package/dist/css/index.js.map +1 -1
- package/dist/css/shadowEffect.d.ts +1 -0
- package/dist/css/shadowEffect.js +11 -0
- package/dist/css/shadowEffect.js.map +1 -0
- package/dist/css/transformCss.d.ts +1 -0
- package/dist/css/transformCss.js +3 -2
- package/dist/css/transformCss.js.map +1 -1
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/useItemLocator.js +2 -3
- package/dist/hooks/useItemLocator.js.map +1 -1
- package/dist/hooks/useLegalMoves.js +11 -6
- package/dist/hooks/useLegalMoves.js.map +1 -1
- package/dist/hooks/useLocators.d.ts +1 -0
- package/dist/hooks/useLocators.js +8 -0
- package/dist/hooks/useLocators.js.map +1 -0
- package/dist/hooks/useMaterialContext.d.ts +2 -0
- package/dist/hooks/useMaterialContext.js +18 -0
- package/dist/hooks/useMaterialContext.js.map +1 -0
- package/dist/hooks/useMaterials.d.ts +2 -0
- package/dist/hooks/useMaterials.js +10 -0
- package/dist/hooks/useMaterials.js.map +1 -0
- package/dist/hooks/usePlayerName.js +12 -1
- package/dist/hooks/usePlayerName.js.map +1 -1
- package/dist/hooks/usePlayers.js +1 -1
- package/dist/hooks/usePlayers.js.map +1 -1
- package/dist/hooks/useRulesStep.d.ts +2 -0
- package/dist/hooks/useRulesStep.js +10 -0
- package/dist/hooks/useRulesStep.js.map +1 -0
- package/dist/hooks/useTutorialStep.d.ts +2 -0
- package/dist/hooks/useTutorialStep.js +15 -0
- package/dist/hooks/useTutorialStep.js.map +1 -0
- package/dist/hooks/useZoomToElements.d.ts +5 -0
- package/dist/hooks/useZoomToElements.js +65 -0
- package/dist/hooks/useZoomToElements.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/locators/DeckLocator.d.ts +4 -4
- package/dist/locators/DeckLocator.js +3 -2
- package/dist/locators/DeckLocator.js.map +1 -1
- package/dist/locators/HandLocator.d.ts +11 -11
- package/dist/locators/HandLocator.js.map +1 -1
- package/dist/locators/ItemLocator.d.ts +31 -41
- package/dist/locators/ItemLocator.js +33 -90
- package/dist/locators/ItemLocator.js.map +1 -1
- package/dist/locators/LineLocator.d.ts +7 -5
- package/dist/locators/LineLocator.js +10 -1
- package/dist/locators/LineLocator.js.map +1 -1
- package/dist/locators/PileLocator.d.ts +8 -6
- package/dist/locators/PileLocator.js +13 -1
- package/dist/locators/PileLocator.js.map +1 -1
- package/dist/utilities/animations.constants.d.ts +16 -0
- package/dist/utilities/animations.constants.js +82 -0
- package/dist/utilities/animations.constants.js.map +1 -0
- package/dist/utilities/animations.util.d.ts +4 -0
- package/dist/utilities/animations.util.js +78 -0
- package/dist/utilities/animations.util.js.map +1 -0
- package/dist/utilities/bounds.util.d.ts +18 -0
- package/dist/utilities/bounds.util.js +85 -0
- package/dist/utilities/bounds.util.js.map +1 -0
- package/dist/utilities/calculation.util.d.ts +14 -0
- package/dist/utilities/calculation.util.js +24 -0
- package/dist/utilities/calculation.util.js.map +1 -0
- package/dist/utilities/zoom.util.d.ts +4 -0
- package/dist/utilities/zoom.util.js +17 -0
- package/dist/utilities/zoom.util.js.map +1 -0
- package/package.json +7 -5
- package/dist/components/material/Board/Board.d.ts +0 -17
- package/dist/components/material/Board/Board.js +0 -34
- package/dist/components/material/Board/Board.js.map +0 -1
- package/dist/components/material/Board/index.d.ts +0 -1
- package/dist/components/material/Board/index.js.map +0 -1
- package/dist/components/material/Card/Card.d.ts +0 -23
- package/dist/components/material/Card/Card.js +0 -49
- package/dist/components/material/Card/Card.js.map +0 -1
- package/dist/components/material/Card/index.d.ts +0 -1
- package/dist/components/material/Card/index.js.map +0 -1
- package/dist/components/material/DropAreas/SimpleDropArea.d.ts +0 -12
- package/dist/components/material/DropAreas/SimpleDropArea.js.map +0 -1
- package/dist/components/material/DropAreas/index.d.ts +0 -1
- package/dist/components/material/DropAreas/index.js.map +0 -1
- package/dist/components/material/Items.d.ts +0 -4
- package/dist/components/material/Items.js +0 -3
- package/dist/components/material/Items.js.map +0 -1
- package/dist/components/material/Token/Token.d.ts +0 -18
- package/dist/components/material/Token/Token.js +0 -34
- package/dist/components/material/Token/Token.js.map +0 -1
- package/dist/components/material/Token/index.d.ts +0 -1
- package/dist/components/material/Token/index.js.map +0 -1
- package/dist/components/material/utils/IsMoveThisItem.d.ts +0 -2
- package/dist/components/material/utils/IsMoveThisItem.js +0 -12
- package/dist/components/material/utils/IsMoveThisItem.js.map +0 -1
- package/dist/components/material/utils/IsMoveThisItemToLocation.d.ts +0 -3
- package/dist/components/material/utils/IsMoveThisItemToLocation.js +0 -11
- package/dist/components/material/utils/IsMoveThisItemToLocation.js.map +0 -1
- package/dist/components/material/utils/IsMoveToLocation.d.ts +0 -2
- package/dist/components/material/utils/IsMoveToLocation.js +0 -13
- package/dist/components/material/utils/IsMoveToLocation.js.map +0 -1
- package/dist/components/material/utils/IsMoveToStock.d.ts +0 -4
- package/dist/components/material/utils/IsMoveToStock.js +0 -18
- package/dist/components/material/utils/IsMoveToStock.js.map +0 -1
- package/dist/hooks/useStocks.d.ts +0 -2
- package/dist/hooks/useStocks.js +0 -12
- package/dist/hooks/useStocks.js.map +0 -1
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useItemLocator = void 0;
|
|
4
|
-
var
|
|
5
|
-
var react_1 = require("react");
|
|
4
|
+
var useLocators_1 = require("./useLocators");
|
|
6
5
|
function useItemLocator(type) {
|
|
7
6
|
var _a;
|
|
8
|
-
return (_a = (0,
|
|
7
|
+
return (_a = (0, useLocators_1.useLocators)()) === null || _a === void 0 ? void 0 : _a[type];
|
|
9
8
|
}
|
|
10
9
|
exports.useItemLocator = useItemLocator;
|
|
11
10
|
//# sourceMappingURL=useItemLocator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useItemLocator.js","sourceRoot":"","sources":["../../src/hooks/useItemLocator.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"useItemLocator.js","sourceRoot":"","sources":["../../src/hooks/useItemLocator.ts"],"names":[],"mappings":";;;AACA,6CAA2C;AAE3C,SAAgB,cAAc,CAC5B,IAAO;;IAEP,OAAO,MAAA,IAAA,yBAAW,GAAE,0CAAG,IAAI,CAAqC,CAAA;AAClE,CAAC;AAJD,wCAIC"}
|
|
@@ -1,18 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useLegalMove = exports.useLegalMoves = void 0;
|
|
4
|
-
var useRules_1 = require("./useRules");
|
|
5
4
|
var react_1 = require("react");
|
|
5
|
+
var useRules_1 = require("./useRules");
|
|
6
6
|
var usePlayerId_1 = require("./usePlayerId");
|
|
7
|
+
var cache = {
|
|
8
|
+
game: undefined,
|
|
9
|
+
moves: []
|
|
10
|
+
};
|
|
7
11
|
function useLegalMoves(predicate) {
|
|
8
12
|
var rules = (0, useRules_1.useRules)();
|
|
9
13
|
var playerId = (0, usePlayerId_1.usePlayerId)();
|
|
14
|
+
if (rules && playerId !== undefined && cache.game !== rules.game) {
|
|
15
|
+
cache.game = rules.game;
|
|
16
|
+
cache.moves = rules.getLegalMoves(playerId);
|
|
17
|
+
}
|
|
10
18
|
return (0, react_1.useMemo)(function () {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
var legalMoves = rules.getLegalMoves(playerId);
|
|
14
|
-
return predicate ? legalMoves.filter(predicate) : legalMoves;
|
|
15
|
-
}, [rules, playerId]);
|
|
19
|
+
return predicate ? cache.moves.filter(predicate) : cache.moves;
|
|
20
|
+
}, [cache.moves, predicate]);
|
|
16
21
|
}
|
|
17
22
|
exports.useLegalMoves = useLegalMoves;
|
|
18
23
|
function useLegalMove(predicate) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLegalMoves.js","sourceRoot":"","sources":["../../src/hooks/useLegalMoves.ts"],"names":[],"mappings":";;;AAAA
|
|
1
|
+
{"version":3,"file":"useLegalMoves.js","sourceRoot":"","sources":["../../src/hooks/useLegalMoves.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAC/B,uCAAqC;AACrC,6CAA2C;AAO3C,IAAM,KAAK,GAAU;IACnB,IAAI,EAAE,SAAS;IACf,KAAK,EAAE,EAAE;CACV,CAAA;AAED,SAAgB,aAAa,CAAa,SAAmC;IAC3E,IAAM,KAAK,GAAG,IAAA,mBAAQ,GAAE,CAAA;IACxB,IAAM,QAAQ,GAAG,IAAA,yBAAW,GAAE,CAAA;IAC9B,IAAI,KAAK,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE;QAChE,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACvB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;KAC5C;IACD,OAAO,IAAA,eAAO,EAAC;QACX,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAA;IAChE,CAAC,EACD,CAAC,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAA;AAC7B,CAAC;AAXD,sCAWC;AAED,SAAgB,YAAY,CAAa,SAAmC;IAC1E,IAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IACtC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAChD,CAAC;AAHD,oCAGC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const useLocators: () => Record<number, import("..").ItemLocator<number, number, number>>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useLocators = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
var components_1 = require("../components");
|
|
6
|
+
var useLocators = function () { return (0, react_1.useContext)(components_1.gameContext).locators; };
|
|
7
|
+
exports.useLocators = useLocators;
|
|
8
|
+
//# sourceMappingURL=useLocators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useLocators.js","sourceRoot":"","sources":["../../src/hooks/useLocators.tsx"],"names":[],"mappings":";;;AAAA,+BAAkC;AAClC,4CAA2C;AAEpC,IAAM,WAAW,GAAG,cAAM,OAAA,IAAA,kBAAU,EAAC,wBAAW,CAAC,CAAC,QAAQ,EAAhC,CAAgC,CAAA;AAApD,QAAA,WAAW,eAAyC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useMaterialContext = void 0;
|
|
4
|
+
var useGame_1 = require("./useGame");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var components_1 = require("../components");
|
|
7
|
+
var usePlayerId_1 = require("./usePlayerId");
|
|
8
|
+
function useMaterialContext() {
|
|
9
|
+
var game = (0, useGame_1.useGame)();
|
|
10
|
+
var player = (0, usePlayerId_1.usePlayerId)();
|
|
11
|
+
var context = (0, react_1.useContext)(components_1.gameContext);
|
|
12
|
+
var Rules = context.Rules;
|
|
13
|
+
var material = context.material;
|
|
14
|
+
var locators = context.locators;
|
|
15
|
+
return (0, react_1.useMemo)(function () { return ({ Rules: Rules, game: game, player: player, material: material, locators: locators }); }, [Rules, game, player, material, locators]);
|
|
16
|
+
}
|
|
17
|
+
exports.useMaterialContext = useMaterialContext;
|
|
18
|
+
//# sourceMappingURL=useMaterialContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMaterialContext.js","sourceRoot":"","sources":["../../src/hooks/useMaterialContext.ts"],"names":[],"mappings":";;;AACA,qCAAmC;AAEnC,+BAA2C;AAC3C,4CAAgE;AAChE,6CAA2C;AAE3C,SAAgB,kBAAkB;IAChC,IAAM,IAAI,GAAG,IAAA,iBAAO,GAA0B,CAAA;IAC9C,IAAM,MAAM,GAAG,IAAA,yBAAW,GAAK,CAAA;IAC/B,IAAM,OAAO,GAAG,IAAA,kBAAU,EAAC,wBAAW,CAAC,CAAA;IACvC,IAAM,KAAK,GAAG,OAAO,CAAC,KAAsC,CAAA;IAC5D,IAAM,QAAQ,GAAG,OAAO,CAAC,QAAmD,CAAA;IAC5E,IAAM,QAAQ,GAAG,OAAO,CAAC,QAA2C,CAAA;IACpE,OAAO,IAAA,eAAO,EAAC,cAAM,OAAA,CAAC,EAAE,KAAK,OAAA,EAAE,IAAI,MAAA,EAAE,MAAM,QAAA,EAAE,QAAQ,UAAA,EAAE,QAAQ,UAAA,EAAE,CAAC,EAA7C,CAA6C,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAA;AAChH,CAAC;AARD,gDAQC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useMaterials = void 0;
|
|
4
|
+
var components_1 = require("../components");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
function useMaterials() {
|
|
7
|
+
return (0, react_1.useContext)(components_1.gameContext).material;
|
|
8
|
+
}
|
|
9
|
+
exports.useMaterials = useMaterials;
|
|
10
|
+
//# sourceMappingURL=useMaterials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMaterials.js","sourceRoot":"","sources":["../../src/hooks/useMaterials.ts"],"names":[],"mappings":";;;AAAA,4CAAgE;AAChE,+BAAkC;AAElC,SAAgB,YAAY;IAC1B,OAAO,IAAA,kBAAU,EAAC,wBAAW,CAAC,CAAC,QAA+D,CAAA;AAChG,CAAC;AAFD,oCAEC"}
|
|
@@ -2,8 +2,19 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.usePlayerName = void 0;
|
|
4
4
|
var react_redux_1 = require("react-redux");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var components_1 = require("../components");
|
|
7
|
+
var rules_api_1 = require("@gamepark/rules-api");
|
|
8
|
+
var react_i18next_1 = require("react-i18next");
|
|
5
9
|
function usePlayerName(playerId) {
|
|
6
|
-
|
|
10
|
+
var name = (0, react_redux_1.useSelector)(function (state) { var _a, _b; return (_b = (_a = state.players.find(function (player) { var _a; return (_a = player.id === playerId) !== null && _a !== void 0 ? _a : state.playerId; })) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : ''; });
|
|
11
|
+
var optionsSpec = (0, react_1.useContext)(components_1.gameContext).optionsSpec;
|
|
12
|
+
var t = (0, react_i18next_1.useTranslation)().t;
|
|
13
|
+
if (name)
|
|
14
|
+
return name;
|
|
15
|
+
if ((0, rules_api_1.isWithPlayerIdOptions)(optionsSpec))
|
|
16
|
+
return optionsSpec.players.id.valueSpec(playerId).label(t);
|
|
17
|
+
return t('Player {number}', { number: playerId });
|
|
7
18
|
}
|
|
8
19
|
exports.usePlayerName = usePlayerName;
|
|
9
20
|
//# sourceMappingURL=usePlayerName.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePlayerName.js","sourceRoot":"","sources":["../../src/hooks/usePlayerName.ts"],"names":[],"mappings":";;;AACA,2CAAyC;
|
|
1
|
+
{"version":3,"file":"usePlayerName.js","sourceRoot":"","sources":["../../src/hooks/usePlayerName.ts"],"names":[],"mappings":";;;AACA,2CAAyC;AACzC,+BAAkC;AAClC,4CAA2C;AAC3C,iDAA2D;AAC3D,+CAA8C;AAE9C,SAAgB,aAAa,CAAiB,QAAkB;IAC9D,IAAM,IAAI,GAAG,IAAA,yBAAW,EAAC,UAAC,KAAoB,gBAAK,OAAA,MAAA,MAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAA,MAAM,YAAI,OAAA,MAAA,MAAM,CAAC,EAAE,KAAK,QAAQ,mCAAI,KAAK,CAAC,QAAQ,CAAA,EAAA,CAAC,0CAAE,IAAI,mCAAI,EAAE,CAAA,EAAA,CAAC,CAAA;IACtI,IAAM,WAAW,GAAG,IAAA,kBAAU,EAAC,wBAAW,CAAC,CAAC,WAAW,CAAA;IAC/C,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IAC9B,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IACrB,IAAI,IAAA,iCAAqB,EAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAClG,OAAO,CAAC,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAA;AACnD,CAAC;AAPD,sCAOC"}
|
package/dist/hooks/usePlayers.js
CHANGED
|
@@ -15,7 +15,7 @@ var usePlayers = function (options) {
|
|
|
15
15
|
var rawPlayers = (0, react_redux_1.useSelector)(function (state) { return state.players; });
|
|
16
16
|
var players = (0, react_1.useMemo)(function () {
|
|
17
17
|
var index = rawPlayers.findIndex(function (player) { return player.id === playerId; });
|
|
18
|
-
if (index < 1)
|
|
18
|
+
if (!(options === null || options === void 0 ? void 0 : options.sortFromMe) || index < 1)
|
|
19
19
|
return rawPlayers;
|
|
20
20
|
return rawPlayers.slice(index).concat(rawPlayers.slice(0, index));
|
|
21
21
|
}, [playerId, rawPlayers]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePlayers.js","sourceRoot":"","sources":["../../src/hooks/usePlayers.ts"],"names":[],"mappings":";;;;;;AACA,gDAA2B;AAC3B,2CAAyC;AACzC,mCAAiC;AACjC,6CAA2C;AAC3C,+BAA+B;AAOxB,IAAM,UAAU,GAAG,UAAiB,OAAiB;IAC1D,IAAM,GAAG,GAAG,IAAA,eAAM,EAAC,EAAE,OAAO,EAAE,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,cAAc,CAAA,EAAE,CAAC,CAAA;IACzD,IAAM,QAAQ,GAAG,IAAA,yBAAW,GAAY,CAAA;IACxC,IAAM,UAAU,GAAG,IAAA,yBAAW,EAAC,UAAC,KAAwC,IAAK,OAAA,KAAK,CAAC,OAAO,EAAb,CAAa,CAAC,CAAA;IAC3F,IAAM,OAAO,GAAG,IAAA,eAAO,EAAC;QACtB,IAAM,KAAK,GAAG,UAAU,CAAC,SAAS,CAAC,UAAA,MAAM,IAAI,OAAA,MAAM,CAAC,EAAE,KAAK,QAAQ,EAAtB,CAAsB,CAAC,CAAA;QACpE,IAAI,KAAK,GAAG,CAAC;YAAE,OAAO,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"usePlayers.js","sourceRoot":"","sources":["../../src/hooks/usePlayers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useRulesStep = void 0;
|
|
4
|
+
var useRules_1 = require("./useRules");
|
|
5
|
+
function useRulesStep() {
|
|
6
|
+
var rules = (0, useRules_1.useRules)();
|
|
7
|
+
return rules === null || rules === void 0 ? void 0 : rules.rulesStep;
|
|
8
|
+
}
|
|
9
|
+
exports.useRulesStep = useRulesStep;
|
|
10
|
+
//# sourceMappingURL=useRulesStep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRulesStep.js","sourceRoot":"","sources":["../../src/hooks/useRulesStep.ts"],"names":[],"mappings":";;;AACA,uCAAqC;AAErC,SAAgB,YAAY;IAC1B,IAAM,KAAK,GAAG,IAAA,mBAAQ,GAAiB,CAAA;IACvC,OAAO,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,SAA0B,CAAA;AAC1C,CAAC;AAHD,oCAGC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useTutorialStep = void 0;
|
|
4
|
+
var components_1 = require("../components");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var useGame_1 = require("./useGame");
|
|
7
|
+
function useTutorialStep() {
|
|
8
|
+
var game = (0, useGame_1.useGame)();
|
|
9
|
+
var tutorial = (0, react_1.useContext)(components_1.gameContext).tutorial;
|
|
10
|
+
if (!game || game.tutorialStep === undefined || !(0, components_1.isMaterialTutorial)(tutorial))
|
|
11
|
+
return;
|
|
12
|
+
return tutorial.steps[game.tutorialStep];
|
|
13
|
+
}
|
|
14
|
+
exports.useTutorialStep = useTutorialStep;
|
|
15
|
+
//# sourceMappingURL=useTutorialStep.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTutorialStep.js","sourceRoot":"","sources":["../../src/hooks/useTutorialStep.ts"],"names":[],"mappings":";;;AAAA,4CAA6E;AAC7E,+BAAkC;AAClC,qCAAmC;AAGnC,SAAgB,eAAe;IAC7B,IAAM,IAAI,GAAG,IAAA,iBAAO,GAAgB,CAAA;IACpC,IAAM,QAAQ,GAAG,IAAA,kBAAU,EAAC,wBAAW,CAAC,CAAC,QAAQ,CAAA;IACjD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,IAAA,+BAAkB,EAAU,QAAQ,CAAC;QAAE,OAAM;IAC9F,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;AAC1C,CAAC;AALD,0CAKC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { animations } from '../utilities/animations.constants';
|
|
2
|
+
/**
|
|
3
|
+
* react-zoom-pan-pinch only has "zoomToElement". This code is the equivalent to zoom to display multiple elements at once.
|
|
4
|
+
*/
|
|
5
|
+
export declare function useZoomToElements(): (elements: HTMLElement[], scale?: number, animationTime?: number, animationType?: keyof typeof animations) => void;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useZoomToElements = void 0;
|
|
4
|
+
var react_zoom_pan_pinch_1 = require("react-zoom-pan-pinch");
|
|
5
|
+
var bounds_util_1 = require("../utilities/bounds.util");
|
|
6
|
+
var zoom_util_1 = require("../utilities/zoom.util");
|
|
7
|
+
var animations_util_1 = require("../utilities/animations.util");
|
|
8
|
+
/**
|
|
9
|
+
* react-zoom-pan-pinch only has "zoomToElement". This code is the equivalent to zoom to display multiple elements at once.
|
|
10
|
+
*/
|
|
11
|
+
function useZoomToElements() {
|
|
12
|
+
var libraryContext = (0, react_zoom_pan_pinch_1.useTransformContext)();
|
|
13
|
+
return zoomToElements(libraryContext);
|
|
14
|
+
}
|
|
15
|
+
exports.useZoomToElements = useZoomToElements;
|
|
16
|
+
var zoomToElements = function (contextInstance) { return function (nodes, scale, animationTime, animationType) {
|
|
17
|
+
if (animationTime === void 0) { animationTime = 600; }
|
|
18
|
+
if (animationType === void 0) { animationType = 'easeOut'; }
|
|
19
|
+
(0, animations_util_1.handleCancelAnimation)(contextInstance);
|
|
20
|
+
var wrapperComponent = contextInstance.wrapperComponent;
|
|
21
|
+
var targets = nodes.map(function (node) {
|
|
22
|
+
return typeof node === 'string' ? document.getElementById(node) : node;
|
|
23
|
+
});
|
|
24
|
+
if (wrapperComponent && targets.length && targets.every(function (target) { return wrapperComponent.contains(target); })) {
|
|
25
|
+
var targetState = calculateZoomToNodes(contextInstance, targets, scale);
|
|
26
|
+
(0, animations_util_1.animate)(contextInstance, targetState, animationTime, animationType);
|
|
27
|
+
}
|
|
28
|
+
}; };
|
|
29
|
+
function calculateZoomToNodes(contextInstance, nodes, customZoom) {
|
|
30
|
+
var wrapperComponent = contextInstance.wrapperComponent, contentComponent = contextInstance.contentComponent, transformState = contextInstance.transformState;
|
|
31
|
+
var _a = contextInstance.setup, limitToBounds = _a.limitToBounds, minScale = _a.minScale, maxScale = _a.maxScale;
|
|
32
|
+
if (!wrapperComponent || !contentComponent)
|
|
33
|
+
return transformState;
|
|
34
|
+
var wrapperRect = wrapperComponent.getBoundingClientRect();
|
|
35
|
+
var nodesRect = nodes.map(function (node) { return node.getBoundingClientRect(); });
|
|
36
|
+
var nodesWidth = Math.max.apply(Math, nodesRect.map(function (rect) { return rect.x + rect.width; })) - Math.min.apply(Math, nodesRect.map(function (rect) { return rect.x; }));
|
|
37
|
+
var nodesHeight = Math.max.apply(Math, nodesRect.map(function (rect) { return rect.y + rect.height; })) - Math.min.apply(Math, nodesRect.map(function (rect) { return rect.y; }));
|
|
38
|
+
var nodesOffset = nodes.map(function (node) { return getOffset(node, wrapperComponent, contentComponent, transformState); });
|
|
39
|
+
var nodeLeft = Math.min.apply(Math, nodesOffset.map(function (offset) { return offset.x; }));
|
|
40
|
+
var nodeTop = Math.min.apply(Math, nodesOffset.map(function (offset) { return offset.y; }));
|
|
41
|
+
var nodeWidth = nodesWidth / transformState.scale;
|
|
42
|
+
var nodeHeight = nodesHeight / transformState.scale;
|
|
43
|
+
var scaleX = wrapperComponent.offsetWidth / nodeWidth;
|
|
44
|
+
var scaleY = wrapperComponent.offsetHeight / nodeHeight;
|
|
45
|
+
var newScale = (0, zoom_util_1.checkZoomBounds)(customZoom || Math.min(scaleX, scaleY), minScale, maxScale, 0, false);
|
|
46
|
+
var offsetX = (wrapperRect.width - nodeWidth * newScale) / 2;
|
|
47
|
+
var offsetY = (wrapperRect.height - nodeHeight * newScale) / 2;
|
|
48
|
+
var newPositionX = (wrapperRect.left - nodeLeft) * newScale + offsetX;
|
|
49
|
+
var newPositionY = (wrapperRect.top - nodeTop) * newScale + offsetY;
|
|
50
|
+
var bounds = (0, bounds_util_1.calculateBounds)(contextInstance, newScale);
|
|
51
|
+
var _b = (0, bounds_util_1.getMouseBoundedPosition)(newPositionX, newPositionY, bounds, limitToBounds, 0, 0, wrapperComponent), x = _b.x, y = _b.y;
|
|
52
|
+
return { positionX: x, positionY: y, scale: newScale };
|
|
53
|
+
}
|
|
54
|
+
function getOffset(element, wrapper, content, state) {
|
|
55
|
+
var offset = element.getBoundingClientRect();
|
|
56
|
+
var wrapperOffset = wrapper.getBoundingClientRect();
|
|
57
|
+
var contentOffset = content.getBoundingClientRect();
|
|
58
|
+
var xOff = wrapperOffset.x * state.scale;
|
|
59
|
+
var yOff = wrapperOffset.y * state.scale;
|
|
60
|
+
return {
|
|
61
|
+
x: (offset.x - contentOffset.x + xOff) / state.scale,
|
|
62
|
+
y: (offset.y - contentOffset.y + yOff) / state.scale
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=useZoomToElements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useZoomToElements.js","sourceRoot":"","sources":["../../src/hooks/useZoomToElements.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Coordinates, MaterialItem } from '@gamepark/rules-api';
|
|
2
2
|
import { LineLocator } from './LineLocator';
|
|
3
|
-
import {
|
|
3
|
+
import { ItemContext } from './ItemLocator';
|
|
4
4
|
export declare abstract class DeckLocator<P extends number = number, M extends number = number, L extends number = number> extends LineLocator<P, M, L> {
|
|
5
5
|
limit: number;
|
|
6
|
-
hide(item: MaterialItem<P, L>, context:
|
|
7
|
-
getItemIndex(item: MaterialItem<P, L>, context:
|
|
8
|
-
getDelta(_item: MaterialItem<P, L>,
|
|
6
|
+
hide(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): boolean;
|
|
7
|
+
getItemIndex(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
|
|
8
|
+
getDelta(_item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Partial<Coordinates>;
|
|
9
9
|
}
|
|
@@ -40,8 +40,9 @@ var DeckLocator = /** @class */ (function (_super) {
|
|
|
40
40
|
return index;
|
|
41
41
|
return Math.max(0, index - count + this.limit);
|
|
42
42
|
};
|
|
43
|
-
DeckLocator.prototype.getDelta = function (_item,
|
|
44
|
-
|
|
43
|
+
DeckLocator.prototype.getDelta = function (_item, context) {
|
|
44
|
+
var _a;
|
|
45
|
+
return (_a = this.delta) !== null && _a !== void 0 ? _a : { z: context.material[context.type].thickness };
|
|
45
46
|
};
|
|
46
47
|
return DeckLocator;
|
|
47
48
|
}(LineLocator_1.LineLocator));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeckLocator.js","sourceRoot":"","sources":["../../src/locators/DeckLocator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,6CAA2C;AAG3C;IAA2H,+BAAoB;IAA/I;QAAA,qEAqBC;QApBC,WAAK,GAAG,EAAE,CAAA;;IAoBZ,CAAC;IAlBC,0BAAI,GAAJ,UAAK,IAAwB,EAAE,
|
|
1
|
+
{"version":3,"file":"DeckLocator.js","sourceRoot":"","sources":["../../src/locators/DeckLocator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,6CAA2C;AAG3C;IAA2H,+BAAoB;IAA/I;QAAA,qEAqBC;QApBC,WAAK,GAAG,EAAE,CAAA;;IAoBZ,CAAC;IAlBC,0BAAI,GAAJ,UAAK,IAAwB,EAAE,OAA6B;QAC1D,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QAC7B,IAAM,KAAK,GAAG,iBAAM,YAAY,YAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC/C,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACrD,OAAO,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;IACnC,CAAC;IAED,kCAAY,GAAZ,UAAa,IAAwB,EAAE,OAA6B;QAClE,IAAM,KAAK,GAAG,iBAAM,YAAY,YAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QAC7B,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;QACrD,IAAI,KAAK,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACrC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;IAChD,CAAC;IAED,8BAAQ,GAAR,UAAS,KAAyB,EAAE,OAA6B;;QAC/D,OAAO,MAAA,IAAI,CAAC,KAAK,mCAAI,EAAE,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAA;IACtE,CAAC;IACH,kBAAC;AAAD,CAAC,AArBD,CAA2H,yBAAW,GAqBrI;AArBqB,kCAAW"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { ItemLocator,
|
|
1
|
+
import { ItemLocator, ItemContext } from './ItemLocator';
|
|
2
2
|
import { Coordinates, Location, MaterialItem } from '@gamepark/rules-api';
|
|
3
3
|
export declare abstract class HandLocator<P extends number = number, M extends number = number, L extends number = number> extends ItemLocator<P, M, L> {
|
|
4
|
-
getPosition(item: MaterialItem<P, L>, context:
|
|
5
|
-
getRotation(item: MaterialItem<P, L>, context:
|
|
6
|
-
abstract getCoordinates(location: Location<P, L>, context:
|
|
7
|
-
getItemIndex(item: MaterialItem<P, L>, _context:
|
|
8
|
-
getRadius(_item: MaterialItem<P, L>, _context:
|
|
9
|
-
getBaseAngle(_item: MaterialItem<P, L>, _context:
|
|
10
|
-
getMaxAngle(_item: MaterialItem<P, L>, _context:
|
|
11
|
-
getGapMaxAngle(_item: MaterialItem<P, L>, _context:
|
|
12
|
-
isClockwise(_item: MaterialItem<P, L>, _context:
|
|
13
|
-
getDeltaZ(_item: MaterialItem<P, L>, _context:
|
|
4
|
+
getPosition(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Coordinates;
|
|
5
|
+
getRotation(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
|
|
6
|
+
abstract getCoordinates(location: Location<P, L>, context: ItemContext<P, M, L>): Coordinates;
|
|
7
|
+
getItemIndex(item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
8
|
+
getRadius(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
9
|
+
getBaseAngle(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
10
|
+
getMaxAngle(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
11
|
+
getGapMaxAngle(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
12
|
+
isClockwise(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): boolean;
|
|
13
|
+
getDeltaZ(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HandLocator.js","sourceRoot":"","sources":["../../src/locators/HandLocator.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"HandLocator.js","sourceRoot":"","sources":["../../src/locators/HandLocator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
/** @jsxImportSource @emotion/react */
|
|
2
|
-
import { Coordinates, DisplayedItem,
|
|
3
|
-
import {
|
|
4
|
-
import { ReactNode } from 'react';
|
|
5
|
-
import { Interpolation, Theme } from '@emotion/react';
|
|
6
|
-
import { Animation } from '@gamepark/react-client';
|
|
2
|
+
import { Coordinates, DisplayedItem, Location, Material, MaterialGame, MaterialItem, MaterialRulesCreator, XYCoordinates } from '@gamepark/rules-api';
|
|
3
|
+
import { LocationDescription, MaterialDescription } from '../components';
|
|
7
4
|
export declare abstract class ItemLocator<P extends number = number, M extends number = number, L extends number = number> {
|
|
8
5
|
parentItemType?: M;
|
|
9
6
|
rotationUnit: string;
|
|
10
7
|
limit?: number;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
protected
|
|
15
|
-
|
|
8
|
+
locationDescription?: LocationDescription;
|
|
9
|
+
hide(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): boolean;
|
|
10
|
+
transformItem(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string[];
|
|
11
|
+
protected transformItemLocation(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string[];
|
|
12
|
+
protected transformOwnItemLocation(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string[];
|
|
13
|
+
getTranslate3d(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string;
|
|
16
14
|
getParentItemId(_location: Location<P, L>): number | undefined;
|
|
15
|
+
position: XYCoordinates;
|
|
17
16
|
/**
|
|
18
17
|
* Place the center of the item on the screen
|
|
19
18
|
*
|
|
@@ -21,47 +20,38 @@ export declare abstract class ItemLocator<P extends number = number, M extends n
|
|
|
21
20
|
* @param context Placement context (type of item, and index if item has a quantity to display)
|
|
22
21
|
* @return The delta coordinates in em of the center of the item from the center of their parent (or the screen)
|
|
23
22
|
*/
|
|
24
|
-
getPosition(item: MaterialItem<P, L>, context:
|
|
23
|
+
getPosition(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): Coordinates;
|
|
24
|
+
positionOnParent: XYCoordinates;
|
|
25
25
|
/**
|
|
26
26
|
* Place the center of the item in the plan of their parent item. This is ignored if "parentItemType" is undefined.
|
|
27
27
|
* Examples: {x: 0, y: 0} places the center of the item in the top-left corner of the parent item
|
|
28
28
|
* {x: 50, y: 50} centers the item in the parent item.
|
|
29
29
|
*
|
|
30
|
-
* @param
|
|
30
|
+
* @param _location Location of the item or area inside the parent item
|
|
31
|
+
* @param _context THe material game context
|
|
31
32
|
* @return {x, y} with "x" as a percentage from the parent's width, "y" a percentage of the height
|
|
32
33
|
*/
|
|
33
|
-
getPositionOnParent
|
|
34
|
-
getRotations(item: MaterialItem<P, L>, context:
|
|
35
|
-
getRotation?(item: MaterialItem<P, L>, context:
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
getItemIndex(item: MaterialItem<P, L>, context:
|
|
34
|
+
getPositionOnParent(_location: Location<P, L>, _context: MaterialContext<P, M, L>): XYCoordinates;
|
|
35
|
+
getRotations(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string[];
|
|
36
|
+
getRotation?(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
|
|
37
|
+
hidden: boolean;
|
|
38
|
+
isHidden(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): boolean;
|
|
39
|
+
protected transformParentItemLocation(location: Location<P, L>, context: ItemContext<P, M, L>): string[];
|
|
40
|
+
getItemIndex(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
|
|
40
41
|
isSameLocation(location1: Location<P, L>, location2: Location<P, L>): boolean;
|
|
41
|
-
countItems(location: Location<P, L>,
|
|
42
|
+
countItems(location: Location<P, L>, { game, type }: ItemContext<P, M, L>): number;
|
|
42
43
|
getMaterial(game: MaterialGame<P, M, L>, type: M): Material<P, M, L>;
|
|
43
|
-
|
|
44
|
-
createLocations(legalMoves: MaterialMove<P, M, L>[], rules: MaterialRules<P, M, L>, context: BaseContext<P, M, L>): ReactNode;
|
|
45
|
-
getParentItemLocations?<ParentItemId extends number | undefined>(_parent: ParentItemId): Location<P, L>[];
|
|
46
|
-
getLocations?(): Location<P, L>[];
|
|
47
|
-
createLocation(location: Location<P, L>, rules: MaterialRules<P, M, L>, legalMoves: MaterialMove<P, M, L>[], hasParent?: boolean): ReactNode;
|
|
48
|
-
getLocationCss(_location: Location<P, L>, _rules: MaterialRules<P, M, L>, _legalMoves: MaterialMove<P, M, L>[]): Interpolation<Theme>;
|
|
49
|
-
getLocationRules?(props: LocationRulesProps<P, M, L>): ReactNode;
|
|
50
|
-
getRelativePlayerIndex({ game: { players }, player: me }: PlaceItemContext<P, M, L>, player: P): number;
|
|
51
|
-
isItemToAnimate({ type, index, displayIndex }: DisplayedItem<M>, animation: Animation<ItemMove<P, M, L>>, { rules: { game } }: ItemAnimationContext<P, M, L>): boolean;
|
|
44
|
+
getRelativePlayerIndex({ game: { players }, player: me }: MaterialContext<P, M, L>, player: P): number;
|
|
52
45
|
}
|
|
53
|
-
export type
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
46
|
+
export type MaterialContext<P extends number = number, M extends number = number, L extends number = number> = {
|
|
47
|
+
Rules: MaterialRulesCreator<P, M, L>;
|
|
48
|
+
game: MaterialGame<P, M, L>;
|
|
49
|
+
material: Record<M, MaterialDescription<P, M, L>>;
|
|
50
|
+
locators: Record<L, ItemLocator<P, M, L>>;
|
|
51
|
+
player?: P;
|
|
58
52
|
};
|
|
59
|
-
export type
|
|
60
|
-
|
|
61
|
-
index: number;
|
|
62
|
-
} & BaseContext<Player, MaterialType, LocationType>;
|
|
63
|
-
export type LocationRulesProps<P extends number = number, M extends number = number, L extends number = number> = {
|
|
53
|
+
export type ItemContext<P extends number = number, M extends number = number, L extends number = number> = MaterialContext<P, M, L> & DisplayedItem<M>;
|
|
54
|
+
export type LocationRulesProps<P extends number = number, L extends number = number> = {
|
|
64
55
|
location: Location<P, L>;
|
|
65
|
-
|
|
66
|
-
close: () => void;
|
|
56
|
+
closeDialog: () => void;
|
|
67
57
|
};
|