@gamepark/react-game 6.6.0 → 6.8.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.
Files changed (70) hide show
  1. package/dist/components/GameProvider/GameProvider.d.ts +6 -2
  2. package/dist/components/GameProvider/GameProvider.js +16 -4
  3. package/dist/components/GameProvider/GameProvider.js.map +1 -1
  4. package/dist/components/Header/MaterialHeader.d.ts +3 -2
  5. package/dist/components/Header/MaterialHeader.js +26 -2
  6. package/dist/components/Header/MaterialHeader.js.map +1 -1
  7. package/dist/components/LoadingScreen/LoadingScreen.js +6 -2
  8. package/dist/components/LoadingScreen/LoadingScreen.js.map +1 -1
  9. package/dist/components/PlayerPanel/PlayerPanel.js +9 -17
  10. package/dist/components/PlayerPanel/PlayerPanel.js.map +1 -1
  11. package/dist/components/PlayerTimer/PlayerTimer.d.ts +5 -1
  12. package/dist/components/PlayerTimer/PlayerTimer.js +10 -6
  13. package/dist/components/PlayerTimer/PlayerTimer.js.map +1 -1
  14. package/dist/components/dialogs/Dialog.d.ts +0 -1
  15. package/dist/components/dialogs/Dialog.js +3 -3
  16. package/dist/components/dialogs/Dialog.js.map +1 -1
  17. package/dist/components/dialogs/ResultDialog/ResultDialog.js +15 -17
  18. package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
  19. package/dist/components/dialogs/RulesDialog/RulesDialog.d.ts +0 -1
  20. package/dist/components/dialogs/RulesDialog/RulesDialog.js +3 -4
  21. package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
  22. package/dist/components/material/DraggableMaterial.js +9 -7
  23. package/dist/components/material/DraggableMaterial.js.map +1 -1
  24. package/dist/components/material/GameTable/GameTable.d.ts +0 -2
  25. package/dist/components/material/GameTable/GameTable.js +20 -29
  26. package/dist/components/material/GameTable/GameTable.js.map +1 -1
  27. package/dist/components/material/locations/LocationDescription.d.ts +4 -4
  28. package/dist/components/material/locations/LocationDescription.js +9 -8
  29. package/dist/components/material/locations/LocationDescription.js.map +1 -1
  30. package/dist/components/material/locations/LocationsMask.js +3 -2
  31. package/dist/components/material/locations/LocationsMask.js.map +1 -1
  32. package/dist/components/material/locations/SimpleDropArea.js +15 -12
  33. package/dist/components/material/locations/SimpleDropArea.js.map +1 -1
  34. package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js +1 -5
  35. package/dist/components/menus/EjectPlayer/EjectPlayerDialog.js.map +1 -1
  36. package/dist/components/menus/Menu/Menu.js +1 -5
  37. package/dist/components/menus/Menu/Menu.js.map +1 -1
  38. package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +7 -5
  39. package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -1
  40. package/dist/components/menus/menuCss.js +1 -2
  41. package/dist/components/menus/menuCss.js.map +1 -1
  42. package/dist/components/tutorial/MaterialTutorialDisplay.js +2 -3
  43. package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -1
  44. package/dist/css/GameTheme.d.ts +19 -0
  45. package/dist/css/GameTheme.js +19 -0
  46. package/dist/css/GameTheme.js.map +1 -0
  47. package/dist/css/index.d.ts +1 -0
  48. package/dist/css/index.js +1 -0
  49. package/dist/css/index.js.map +1 -1
  50. package/dist/hooks/index.d.ts +1 -1
  51. package/dist/hooks/index.js +1 -1
  52. package/dist/hooks/index.js.map +1 -1
  53. package/dist/hooks/usePlayerId.d.ts +1 -0
  54. package/dist/hooks/usePlayerId.js +5 -1
  55. package/dist/hooks/usePlayerId.js.map +1 -1
  56. package/dist/hooks/usePlayerName.js +7 -0
  57. package/dist/hooks/usePlayerName.js.map +1 -1
  58. package/dist/hooks/useResultText.d.ts +1 -0
  59. package/dist/hooks/useResultText.js +72 -0
  60. package/dist/hooks/useResultText.js.map +1 -0
  61. package/dist/locators/PileLocator.d.ts +1 -1
  62. package/dist/locators/PileLocator.js +1 -5
  63. package/dist/locators/PileLocator.js.map +1 -1
  64. package/dist/utilities/DeepPartial.d.ts +3 -0
  65. package/dist/utilities/DeepPartial.js +3 -0
  66. package/dist/utilities/DeepPartial.js.map +1 -0
  67. package/dist/utilities/index.d.ts +1 -0
  68. package/dist/utilities/index.js +1 -0
  69. package/dist/utilities/index.js.map +1 -1
  70. package/package.json +3 -3
@@ -38,7 +38,7 @@ var faForward_1 = require("@fortawesome/free-solid-svg-icons/faForward");
38
38
  var useTutorialStep_1 = require("../../hooks/useTutorialStep");
39
39
  var faPlay_1 = require("@fortawesome/free-solid-svg-icons/faPlay");
40
40
  var react_redux_1 = require("react-redux");
41
- var PlayTutorialMoves_1 = require("@gamepark/react-client/dist/Tutorial/PlayTutorialMoves");
41
+ var react_client_1 = require("@gamepark/react-client");
42
42
  var MaterialTutorialDisplay = function () {
43
43
  var t = (0, react_i18next_1.useTranslation)().t;
44
44
  var game = (0, hooks_1.useGame)();
@@ -47,14 +47,13 @@ var MaterialTutorialDisplay = function () {
47
47
  var popup = tutorialStep === null || tutorialStep === void 0 ? void 0 : tutorialStep.popup;
48
48
  var dispatch = (0, react_redux_1.useDispatch)();
49
49
  (0, react_1.useEffect)(function () {
50
- dispatch((0, PlayTutorialMoves_1.playTutorialMovesAction)(Infinity));
50
+ dispatch((0, react_client_1.playTutorialMovesAction)(Infinity));
51
51
  }, []);
52
52
  var nextStepMove = (0, minBy_1.default)(tutorialMoves, function (move) { return move.step; });
53
53
  var passMove = (0, maxBy_1.default)(tutorialMoves, function (move) { return move.step; });
54
54
  var _a = (0, hooks_1.useUndo)(), undo = _a[0], canUndo = _a[1];
55
55
  var canUndoLastMove = canUndo();
56
56
  return ((0, jsx_runtime_1.jsx)(dialogs_1.Dialog, __assign({ open: popup !== undefined && !(game === null || game === void 0 ? void 0 : game.tutorialPopupClosed), css: [
57
- dialogs_1.rulesDialogCss,
58
57
  tutorialDialogCss,
59
58
  (popup === null || popup === void 0 ? void 0 : popup.position) && (0, css_1.transformCss)("translate(".concat(popup.position.x, "em, ").concat(popup.position.y, "em)"))
60
59
  ], backdropCss: backdropCss }, { children: popup &&
@@ -1 +1 @@
1
- {"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { Interpolation } from '@emotion/react';
2
+ export interface GameTheme {
3
+ root: RootTheme;
4
+ dialog: DialogTheme;
5
+ buttons?: Interpolation<GameTheme>;
6
+ }
7
+ export interface RootTheme {
8
+ fontFamily: string;
9
+ background: BackgroundTheme;
10
+ }
11
+ export interface BackgroundTheme {
12
+ image: string;
13
+ overlay: string;
14
+ }
15
+ export interface DialogTheme {
16
+ backgroundColor: string;
17
+ color: string;
18
+ }
19
+ export declare const defaultTheme: GameTheme;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultTheme = void 0;
4
+ var menuCss_1 = require("../components/menus/menuCss");
5
+ (0, menuCss_1.addStylesheetUrl)('https://fonts.googleapis.com/css2?family=Mulish:ital,wght@0,300;0,400;0,500;0,700;1,300;1,400;1,500;1,700&display=swap');
6
+ exports.defaultTheme = {
7
+ root: {
8
+ fontFamily: 'Mulish',
9
+ background: {
10
+ image: process.env.PUBLIC_URL + '/cover-1920.jpg',
11
+ overlay: 'rgba(0, 0, 0, 0.8)'
12
+ }
13
+ },
14
+ dialog: {
15
+ backgroundColor: '#f0fbfc',
16
+ color: '#002448'
17
+ }
18
+ };
19
+ //# sourceMappingURL=GameTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GameTheme.js","sourceRoot":"","sources":["../../src/css/GameTheme.ts"],"names":[],"mappings":";;;AACA,uDAA8D;AAE9D,IAAA,0BAAgB,EAAC,wHAAwH,CAAC,CAAA;AAuB7H,QAAA,YAAY,GAAc;IACrC,IAAI,EAAE;QACJ,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE;YACV,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,iBAAiB;YACjD,OAAO,EAAE,oBAAoB;SAC9B;KACF;IACD,MAAM,EAAE;QACN,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,SAAS;KACjB;CACF,CAAA"}
@@ -3,6 +3,7 @@ export * from './buttonCss';
3
3
  export * from './componentSizeCss';
4
4
  export * from './cursorCss';
5
5
  export * from './fadeIn';
6
+ export * from './GameTheme';
6
7
  export * from './shadowEffect';
7
8
  export * from './shineEffect';
8
9
  export * from './transformCss';
package/dist/css/index.js CHANGED
@@ -19,6 +19,7 @@ __exportStar(require("./buttonCss"), exports);
19
19
  __exportStar(require("./componentSizeCss"), exports);
20
20
  __exportStar(require("./cursorCss"), exports);
21
21
  __exportStar(require("./fadeIn"), exports);
22
+ __exportStar(require("./GameTheme"), exports);
22
23
  __exportStar(require("./shadowEffect"), exports);
23
24
  __exportStar(require("./shineEffect"), exports);
24
25
  __exportStar(require("./transformCss"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/css/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA+B;AAC/B,8CAA2B;AAC3B,qDAAkC;AAClC,8CAA2B;AAC3B,2CAAwB;AACxB,iDAA8B;AAC9B,gDAA6B;AAC7B,iDAA8B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/css/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA+B;AAC/B,8CAA2B;AAC3B,qDAAkC;AAClC,8CAA2B;AAC3B,2CAAwB;AACxB,8CAA2B;AAC3B,iDAA8B;AAC9B,gDAA6B;AAC7B,iDAA8B"}
@@ -1,6 +1,5 @@
1
1
  export * from './useActions';
2
2
  export * from './useAnimations';
3
- export * from './useContrastTheme';
4
3
  export * from './useFailures';
5
4
  export * from './useFullscreen';
6
5
  export * from './useGame';
@@ -19,6 +18,7 @@ export * from './usePlayerId';
19
18
  export * from './usePlayerName';
20
19
  export * from './usePlayers';
21
20
  export * from './usePlayerTime';
21
+ export * from './useResultText';
22
22
  export * from './useRules';
23
23
  export * from './useRulesStep';
24
24
  export * from './useSound';
@@ -16,7 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./useActions"), exports);
18
18
  __exportStar(require("./useAnimations"), exports);
19
- __exportStar(require("./useContrastTheme"), exports);
20
19
  __exportStar(require("./useFailures"), exports);
21
20
  __exportStar(require("./useFullscreen"), exports);
22
21
  __exportStar(require("./useGame"), exports);
@@ -35,6 +34,7 @@ __exportStar(require("./usePlayerId"), exports);
35
34
  __exportStar(require("./usePlayerName"), exports);
36
35
  __exportStar(require("./usePlayers"), exports);
37
36
  __exportStar(require("./usePlayerTime"), exports);
37
+ __exportStar(require("./useResultText"), exports);
38
38
  __exportStar(require("./useRules"), exports);
39
39
  __exportStar(require("./useRulesStep"), exports);
40
40
  __exportStar(require("./useSound"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,kDAA+B;AAC/B,qDAAkC;AAClC,gDAA6B;AAC7B,kDAA+B;AAC/B,4CAAyB;AACzB,8CAA2B;AAC3B,mDAAgC;AAChC,+CAA4B;AAC5B,kDAA+B;AAC/B,0DAAuC;AACvC,uDAAoC;AACpC,2DAAwC;AACxC,2CAAwB;AACxB,uDAAoC;AACpC,2DAAwC;AACxC,4CAAyB;AACzB,gDAA6B;AAC7B,kDAA+B;AAC/B,+CAA4B;AAC5B,kDAA+B;AAC/B,6CAA0B;AAC1B,iDAA8B;AAC9B,6CAA0B;AAC1B,4CAAyB;AACzB,4CAAyB;AACzB,sDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA4B;AAC5B,kDAA+B;AAC/B,gDAA6B;AAC7B,kDAA+B;AAC/B,4CAAyB;AACzB,8CAA2B;AAC3B,mDAAgC;AAChC,+CAA4B;AAC5B,kDAA+B;AAC/B,0DAAuC;AACvC,uDAAoC;AACpC,2DAAwC;AACxC,2CAAwB;AACxB,uDAAoC;AACpC,2DAAwC;AACxC,4CAAyB;AACzB,gDAA6B;AAC7B,kDAA+B;AAC/B,+CAA4B;AAC5B,kDAA+B;AAC/B,kDAA+B;AAC/B,6CAA0B;AAC1B,iDAA8B;AAC9B,6CAA0B;AAC1B,4CAAyB;AACzB,4CAAyB;AACzB,sDAAmC"}
@@ -1 +1,2 @@
1
1
  export declare const usePlayerId: <PlayerId = any>() => PlayerId;
2
+ export declare const usePlayerIds: <PlayerId = any>() => PlayerId[];
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.usePlayerId = void 0;
3
+ exports.usePlayerIds = exports.usePlayerId = void 0;
4
4
  var react_redux_1 = require("react-redux");
5
5
  var usePlayerId = function () { return (0, react_redux_1.useSelector)(function (state) { return state.playerId; }); };
6
6
  exports.usePlayerId = usePlayerId;
7
+ var usePlayerIds = function () {
8
+ return (0, react_redux_1.useSelector)(function (state) { return state.players.map(function (p) { return p.id; }); }, react_redux_1.shallowEqual);
9
+ };
10
+ exports.usePlayerIds = usePlayerIds;
7
11
  //# sourceMappingURL=usePlayerId.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePlayerId.js","sourceRoot":"","sources":["../../src/hooks/usePlayerId.ts"],"names":[],"mappings":";;;AACA,2CAAyC;AAElC,IAAM,WAAW,GAAG,cAA4C,OAAA,IAAA,yBAAW,EAAC,UAAC,KAAwC,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAd,CAAc,CAAC,EAAzE,CAAyE,CAAA;AAAnI,QAAA,WAAW,eAAwH"}
1
+ {"version":3,"file":"usePlayerId.js","sourceRoot":"","sources":["../../src/hooks/usePlayerId.ts"],"names":[],"mappings":";;;AACA,2CAAuD;AAEhD,IAAM,WAAW,GAAG,cAA4C,OAAA,IAAA,yBAAW,EAAC,UAAC,KAAwC,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAd,CAAc,CAAC,EAAzE,CAAyE,CAAA;AAAnI,QAAA,WAAW,eAAwH;AAEzI,IAAM,YAAY,GAAG;IAC1B,OAAA,IAAA,yBAAW,EAAC,UAAC,KAAwC,IAAK,OAAA,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,EAAJ,CAAI,CAAC,EAA5B,CAA4B,EAAE,0BAAY,CAAC;AAArG,CAAqG,CAAA;AAD1F,QAAA,YAAY,gBAC8E"}
@@ -1,17 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.usePlayerName = void 0;
4
+ var react_client_1 = require("@gamepark/react-client");
4
5
  var react_redux_1 = require("react-redux");
5
6
  var react_1 = require("react");
6
7
  var components_1 = require("../components");
7
8
  var rules_api_1 = require("@gamepark/rules-api");
8
9
  var react_i18next_1 = require("react-i18next");
10
+ var usePlayerId_1 = require("./usePlayerId");
9
11
  function usePlayerName(playerId) {
12
+ var _a;
10
13
  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
14
  var optionsSpec = (0, react_1.useContext)(components_1.gameContext).optionsSpec;
15
+ var me = (0, react_client_1.useMe)();
16
+ var myId = (0, usePlayerId_1.usePlayerId)();
12
17
  var t = (0, react_i18next_1.useTranslation)().t;
13
18
  if (name)
14
19
  return name;
20
+ if (myId === playerId && ((_a = me === null || me === void 0 ? void 0 : me.user) === null || _a === void 0 ? void 0 : _a.name))
21
+ return me.user.name;
15
22
  if ((0, rules_api_1.isWithPlayerIdOptions)(optionsSpec))
16
23
  return optionsSpec.players.id.valueSpec(playerId).label(t);
17
24
  return t('Player {number}', { number: playerId });
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"usePlayerName.js","sourceRoot":"","sources":["../../src/hooks/usePlayerName.ts"],"names":[],"mappings":";;;AAAA,uDAA6D;AAC7D,2CAAyC;AACzC,+BAAkC;AAClC,4CAA2C;AAC3C,iDAA2D;AAC3D,+CAA8C;AAC9C,6CAA2C;AAE3C,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;IACvD,IAAM,EAAE,GAAG,IAAA,oBAAK,GAAE,CAAA;IAClB,IAAM,IAAI,GAAG,IAAA,yBAAW,GAAE,CAAA;IAClB,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IAC9B,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IACrB,IAAI,IAAI,KAAK,QAAQ,KAAI,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,IAAI,0CAAE,IAAI,CAAA;QAAE,OAAO,EAAE,CAAC,IAAI,CAAC,IAAI,CAAA;IAC5D,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;AAVD,sCAUC"}
@@ -0,0 +1 @@
1
+ export declare const useResultText: <PlayerId = any>() => string;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useResultText = void 0;
4
+ /** @jsxImportSource @emotion/react */
5
+ var rules_api_1 = require("@gamepark/rules-api");
6
+ var react_i18next_1 = require("react-i18next");
7
+ var index_1 = require("./index");
8
+ var react_1 = require("react");
9
+ var useResultText = function () {
10
+ var t = (0, react_i18next_1.useTranslation)().t;
11
+ var rules = (0, index_1.useRules)();
12
+ var player = (0, index_1.usePlayerId)();
13
+ var players = (0, index_1.usePlayerIds)();
14
+ var winners = (0, react_1.useMemo)(function () {
15
+ if (!rules || !(0, rules_api_1.isCompetitive)(rules))
16
+ return [];
17
+ var winners = [players[0]];
18
+ for (var i = 1; i < players.length; i++) {
19
+ var rank = (0, rules_api_1.rankPlayers)(rules, winners[0], players[i]);
20
+ if (rank === 0)
21
+ winners.push(players[i]);
22
+ else if (rank > 0)
23
+ winners = [players[i]];
24
+ }
25
+ return winners;
26
+ }, [rules, players]);
27
+ var winnerName = (0, index_1.usePlayerName)(winners[0]);
28
+ if (rules && (0, rules_api_1.isCompetitive)(rules)) {
29
+ if ((0, rules_api_1.isCompetitiveScore)(rules)) {
30
+ var score = rules.getScore(winners[0]);
31
+ if (winners.length === 1) {
32
+ if (winners[0] === player) {
33
+ return t('result.score.victory', { score: score });
34
+ }
35
+ else {
36
+ return t('result.score.winner', { player: winnerName, score: score });
37
+ }
38
+ }
39
+ else if (winners.length === players.length) {
40
+ return t('result.score.tie.all', { score: score });
41
+ }
42
+ else if (player !== undefined && winners.includes(player)) {
43
+ return t('result.score.tie.you', { score: score, tied: winners.length - 1 });
44
+ }
45
+ else {
46
+ return t('result.score.tie.other', { score: score, tied: winners.length });
47
+ }
48
+ }
49
+ else {
50
+ if (winners.length === 1) {
51
+ if (winners[0] === player) {
52
+ return t('result.comp.victory');
53
+ }
54
+ else {
55
+ return t('result.comp.winner', { player: winnerName });
56
+ }
57
+ }
58
+ else if (winners.length === players.length) {
59
+ return t('result.comp.tie.all');
60
+ }
61
+ else if (player !== undefined && winners.includes(player)) {
62
+ return t('result.comp.tie.you', { tied: winners.length - 1 });
63
+ }
64
+ else {
65
+ return t('result.comp.tie.other', { tied: winners.length });
66
+ }
67
+ }
68
+ }
69
+ return t('result.default');
70
+ };
71
+ exports.useResultText = useResultText;
72
+ //# sourceMappingURL=useResultText.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResultText.js","sourceRoot":"","sources":["../../src/hooks/useResultText.ts"],"names":[],"mappings":"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"}
@@ -12,5 +12,5 @@ export declare abstract class PileLocator<P extends number = number, M extends n
12
12
  getRadius(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
13
13
  maxAngle: number;
14
14
  getMaxAngle(_item: MaterialItem<P, L>, _context: ItemContext<P, M, L>): number;
15
- getPileId(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): number;
15
+ getPileId(item: MaterialItem<P, L>, context: ItemContext<P, M, L>): string;
16
16
  }
@@ -73,11 +73,7 @@ var PileLocator = /** @class */ (function (_super) {
73
73
  return this.maxAngle;
74
74
  };
75
75
  PileLocator.prototype.getPileId = function (item, context) {
76
- if (typeof item.location.id === 'number')
77
- return item.location.id;
78
- if (item.location.player !== undefined)
79
- return item.location.player;
80
- return context.type;
76
+ return [item.location.player, item.location.id, item.location.parent, context.type].filter(function (part) { return part !== undefined; }).join('_');
81
77
  };
82
78
  return PileLocator;
83
79
  }(ItemLocator_1.ItemLocator));
@@ -1 +1 @@
1
- {"version":3,"file":"PileLocator.js","sourceRoot":"","sources":["../../src/locators/PileLocator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PileLocator.js","sourceRoot":"","sources":["../../src/locators/PileLocator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export type DeepPartial<T> = T extends object ? {
2
+ [P in keyof T]?: DeepPartial<T[P]>;
3
+ } : T;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=DeepPartial.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DeepPartial.js","sourceRoot":"","sources":["../../src/utilities/DeepPartial.ts"],"names":[],"mappings":""}
@@ -1 +1,2 @@
1
1
  export * from './combineEventListeners';
2
+ export * from './DeepPartial';
@@ -15,4 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./combineEventListeners"), exports);
18
+ __exportStar(require("./DeepPartial"), exports);
18
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utilities/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,gDAA6B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamepark/react-game",
3
- "version": "6.6.0",
3
+ "version": "6.8.0",
4
4
  "description": "React components & tools to create a Board Game user interface for Game Park",
5
5
  "author": "Romain Fromi <romain@game-park.com> (https://game-park.com/)",
6
6
  "license": "ISC",
@@ -27,8 +27,8 @@
27
27
  "@fortawesome/free-solid-svg-icons": "^6.4.0",
28
28
  "@fortawesome/react-fontawesome": "^0.2.0",
29
29
  "@gamepark/avataaars": "^2.2.0",
30
- "@gamepark/react-client": "^6.6.0",
31
- "@gamepark/rules-api": "^6.6.0",
30
+ "@gamepark/react-client": "^6.8.0",
31
+ "@gamepark/rules-api": "^6.8.0",
32
32
  "dayjs": "^1.11.7",
33
33
  "emotion-normalize": "^11.0.1",
34
34
  "fscreen": "^1.2.0",