@gamepark/react-game 6.7.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.
- package/dist/components/Header/MaterialHeader.d.ts +3 -2
- package/dist/components/Header/MaterialHeader.js +26 -2
- package/dist/components/Header/MaterialHeader.js.map +1 -1
- package/dist/components/dialogs/ResultDialog/ResultDialog.js +4 -9
- package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
- package/dist/components/material/locations/LocationsMask.js +3 -2
- package/dist/components/material/locations/LocationsMask.js.map +1 -1
- package/dist/components/tutorial/MaterialTutorialDisplay.js +2 -2
- package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -1
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.js +1 -0
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/usePlayerId.d.ts +1 -0
- package/dist/hooks/usePlayerId.js +5 -1
- package/dist/hooks/usePlayerId.js.map +1 -1
- package/dist/hooks/useResultText.d.ts +1 -0
- package/dist/hooks/useResultText.js +72 -0
- package/dist/hooks/useResultText.js.map +1 -0
- package/dist/locators/PileLocator.d.ts +1 -1
- package/dist/locators/PileLocator.js +1 -5
- package/dist/locators/PileLocator.js.map +1 -1
- package/package.json +3 -3
|
@@ -4,6 +4,7 @@ import { ComponentType } from 'react';
|
|
|
4
4
|
export type MaterialHeaderProps<RulesStep extends number = number> = {
|
|
5
5
|
loading?: boolean;
|
|
6
6
|
rulesStepsHeaders: Record<RulesStep, ComponentType>;
|
|
7
|
-
GameOver
|
|
7
|
+
GameOver?: ComponentType;
|
|
8
|
+
GameOverRule?: ComponentType;
|
|
8
9
|
} & HeaderProps;
|
|
9
|
-
export declare const MaterialHeader: <RulesStep extends number = number>({ loading, rulesStepsHeaders, GameOver, ...props }: MaterialHeaderProps<RulesStep>) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare const MaterialHeader: <RulesStep extends number = number>({ loading, rulesStepsHeaders, GameOver, GameOverRule, ...props }: MaterialHeaderProps<RulesStep>) => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
2
6
|
var __assign = (this && this.__assign) || function () {
|
|
3
7
|
__assign = Object.assign || function(t) {
|
|
4
8
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -21,6 +25,9 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
21
25
|
}
|
|
22
26
|
return t;
|
|
23
27
|
};
|
|
28
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
29
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
30
|
+
};
|
|
24
31
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
32
|
exports.MaterialHeader = void 0;
|
|
26
33
|
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
@@ -28,14 +35,31 @@ var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
|
28
35
|
var Header_1 = require("./Header");
|
|
29
36
|
var react_i18next_1 = require("react-i18next");
|
|
30
37
|
var hooks_1 = require("../../hooks");
|
|
38
|
+
var react_1 = require("react");
|
|
39
|
+
var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
|
|
40
|
+
var faCircleQuestion_1 = require("@fortawesome/free-regular-svg-icons/faCircleQuestion");
|
|
41
|
+
var css_1 = require("../../css");
|
|
42
|
+
var dialogs_1 = require("../dialogs");
|
|
43
|
+
var react_custom_scrollbars_2_1 = __importDefault(require("react-custom-scrollbars-2"));
|
|
44
|
+
var react_2 = require("@emotion/react");
|
|
31
45
|
var MaterialHeader = function (_a) {
|
|
32
|
-
var loading = _a.loading, rulesStepsHeaders = _a.rulesStepsHeaders, GameOver = _a.GameOver, props = __rest(_a, ["loading", "rulesStepsHeaders", "GameOver"]);
|
|
46
|
+
var loading = _a.loading, rulesStepsHeaders = _a.rulesStepsHeaders, GameOver = _a.GameOver, GameOverRule = _a.GameOverRule, props = __rest(_a, ["loading", "rulesStepsHeaders", "GameOver", "GameOverRule"]);
|
|
33
47
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
34
48
|
var game = (0, hooks_1.useGame)();
|
|
35
49
|
var RulesStepsHeader = (game === null || game === void 0 ? void 0 : game.rule) ? rulesStepsHeaders[game.rule.id] : undefined;
|
|
36
50
|
return ((0, jsx_runtime_1.jsx)(Header_1.Header, __assign({}, props, { children: loading ? t('Game loading...')
|
|
37
51
|
: RulesStepsHeader ? (0, jsx_runtime_1.jsx)(RulesStepsHeader, {})
|
|
38
|
-
: (0, jsx_runtime_1.jsx)(GameOver, {}) })));
|
|
52
|
+
: GameOver ? (0, jsx_runtime_1.jsx)(GameOver, {}) : (0, jsx_runtime_1.jsx)(GameOverHeader, { GameOverRule: GameOverRule }) })));
|
|
39
53
|
};
|
|
40
54
|
exports.MaterialHeader = MaterialHeader;
|
|
55
|
+
var GameOverHeader = function (_a) {
|
|
56
|
+
var GameOverRule = _a.GameOverRule;
|
|
57
|
+
var resultText = (0, hooks_1.useResultText)();
|
|
58
|
+
var _b = (0, react_1.useState)(false), dialogOpen = _b[0], setDialogOpen = _b[1];
|
|
59
|
+
if (!GameOverRule)
|
|
60
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: resultText });
|
|
61
|
+
return (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)("span", { children: [resultText, "\u00A0", (0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: faCircleQuestion_1.faCircleQuestion, onClick: function () { return setDialogOpen(true); }, css: css_1.pointerCursorCss })] }), (0, jsx_runtime_1.jsx)(dialogs_1.RulesDialog, __assign({ open: dialogOpen, close: function () { return setDialogOpen(false); } }, { children: (0, jsx_runtime_1.jsx)(react_custom_scrollbars_2_1.default, __assign({ autoHeight: true, css: scrollableContainer }, { children: (0, jsx_runtime_1.jsx)(GameOverRule, {}) })) }))] });
|
|
62
|
+
};
|
|
63
|
+
var scrollableContainer = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"], ["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"])));
|
|
64
|
+
var templateObject_1;
|
|
41
65
|
//# sourceMappingURL=MaterialHeader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialHeader.js","sourceRoot":"","sources":["../../../src/components/Header/MaterialHeader.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MaterialHeader.js","sourceRoot":"","sources":["../../../src/components/Header/MaterialHeader.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,mCAA8C;AAC9C,+CAA8C;AAC9C,qCAAoD;AACpD,+BAA+C;AAE/C,oEAAgE;AAChE,yFAAuF;AACvF,iCAA4C;AAC5C,sCAAwC;AACxC,wFAAkD;AAClD,wCAAoC;AAS7B,IAAM,cAAc,GAAG,UAC5B,EAAgG;IAA9F,IAAA,OAAO,aAAA,EAAE,iBAAiB,uBAAA,EAAE,QAAQ,cAAA,EAAE,YAAY,kBAAA,EAAK,KAAK,cAA9D,4DAAgE,CAAF;IAEtD,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IAC9B,IAAM,IAAI,GAAG,IAAA,eAAO,GAAgB,CAAA;IACpC,IAAM,gBAAgB,GAAG,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,EAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACjF,OAAO,CACL,uBAAC,eAAM,eAAK,KAAK,cAEb,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC;YAC5B,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,uBAAC,gBAAgB,KAAE;gBACtC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,uBAAC,QAAQ,KAAE,CAAC,CAAC,CAAC,uBAAC,cAAc,IAAC,YAAY,EAAE,YAAY,GAAG,IAEvE,CACV,CAAA;AACH,CAAC,CAAA;AAfY,QAAA,cAAc,kBAe1B;AAED,IAAM,cAAc,GAAG,UAAC,EAAkD;QAAhD,YAAY,kBAAA;IACpC,IAAM,UAAU,GAAG,IAAA,qBAAa,GAAE,CAAA;IAC5B,IAAA,KAA8B,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA5C,UAAU,QAAA,EAAE,aAAa,QAAmB,CAAA;IAEnD,IAAI,CAAC,YAAY;QAAE,OAAO,2DAAG,UAAU,GAAI,CAAA;IAC3C,OAAO,6DACL,6CAAO,UAAU,YAAO,uBAAC,mCAAe,IAAC,IAAI,EAAE,mCAAgB,EAAE,OAAO,EAAE,cAAM,OAAA,aAAa,CAAC,IAAI,CAAC,EAAnB,CAAmB,EAAE,GAAG,EAAE,sBAAgB,GAAG,IAAO,EACpI,uBAAC,qBAAW,aAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,cAAM,OAAA,aAAa,CAAC,KAAK,CAAC,EAApB,CAAoB,gBAC9D,uBAAC,mCAAU,aAAC,UAAU,QAAC,GAAG,EAAE,mBAAmB,gBAC7C,uBAAC,YAAY,KAAE,IACJ,IACD,IACb,CAAA;AACL,CAAC,CAAA;AAED,IAAM,mBAAmB,OAAG,WAAG,gZAAA,4UAe9B,IAAA,CAAA"}
|
|
@@ -63,7 +63,6 @@ var gameId = query.get('game');
|
|
|
63
63
|
var ResultDialog = function (_a) {
|
|
64
64
|
var openDialog = _a.openDialog, close = _a.close, props = __rest(_a, ["openDialog", "close"]);
|
|
65
65
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
66
|
-
var playerId = (0, hooks_1.usePlayerId)();
|
|
67
66
|
var players = __spreadArray([], (0, hooks_1.usePlayers)(), true);
|
|
68
67
|
var context = (0, react_2.useContext)(GameProvider_1.gameContext);
|
|
69
68
|
var rules = (0, hooks_1.useRules)();
|
|
@@ -71,18 +70,14 @@ var ResultDialog = function (_a) {
|
|
|
71
70
|
var tournament = (0, react_redux_1.useSelector)(function (state) { return state.tournament; });
|
|
72
71
|
var ranks = players.map(function (_) { return 1; });
|
|
73
72
|
if ((0, rules_api_1.isCompetitive)(rules) && players.length > 1) {
|
|
74
|
-
players.sort(function (playerA, playerB) { return
|
|
73
|
+
players.sort(function (playerA, playerB) { return (0, rules_api_1.rankPlayers)(rules, playerA.id, playerB.id); });
|
|
75
74
|
for (var i = 1; i < players.length; i++) {
|
|
76
|
-
ranks[i] =
|
|
75
|
+
ranks[i] = (0, rules_api_1.rankPlayers)(rules, players[i - 1].id, players[i].id) === 0 ? ranks[i - 1] : i + 1;
|
|
77
76
|
}
|
|
78
77
|
}
|
|
79
78
|
var rows = gameMode === react_client_1.GameMode.TOURNAMENT ? 3 : gameMode === react_client_1.GameMode.COMPETITIVE ? 2 : 1;
|
|
80
|
-
var
|
|
81
|
-
return ((0, jsx_runtime_1.jsxs)(Dialog_1.Dialog, __assign({ onBackdropClick: close, css: style }, props, { children: [(0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: faXmark_1.faXmark, css: closeIcon, onClick: close }), (0,
|
|
82
|
-
rules.rankPlayers(players[0].id, players[1].id) === 0 ? (0, jsx_runtime_1.jsx)("h2", { children: t('result.equality') }) :
|
|
83
|
-
players[0].id === playerId ? (0, jsx_runtime_1.jsx)("h2", { children: t('result.victory') }) :
|
|
84
|
-
(0, jsx_runtime_1.jsx)("h2", { children: t('result.victory.other', { player: winnerName }) }) :
|
|
85
|
-
(0, jsx_runtime_1.jsx)("h2", { children: t('result.over') }), gameMode === react_client_1.GameMode.TOURNAMENT && tournament &&
|
|
79
|
+
var resultText = (0, hooks_1.useResultText)();
|
|
80
|
+
return ((0, jsx_runtime_1.jsxs)(Dialog_1.Dialog, __assign({ onBackdropClick: close, css: style }, props, { children: [(0, jsx_runtime_1.jsx)(react_fontawesome_1.FontAwesomeIcon, { icon: faXmark_1.faXmark, css: closeIcon, onClick: close }), (0, jsx_runtime_1.jsx)("h2", { children: resultText }), gameMode === react_client_1.GameMode.TOURNAMENT && tournament &&
|
|
86
81
|
(0, jsx_runtime_1.jsx)(NavButton_1.NavButton, __assign({ css: autoMargin, url: "".concat(react_client_1.PLATFORM_URI, "/").concat(locale, "/board-games/").concat(context.game, "/tournaments/").concat(tournament.number) }, { children: t('result.tournament.link') })), gameMode === react_client_1.GameMode.COMPETITIVE &&
|
|
87
82
|
(0, jsx_runtime_1.jsx)(NavButton_1.NavButton, __assign({ css: autoMargin, url: "".concat(react_client_1.PLATFORM_URI, "/").concat(locale, "/board-games/").concat(context.game, "/play?mode=matchmaking") }, { children: t('Play again') })), (0, jsx_runtime_1.jsxs)("div", __assign({ css: [gridCss, rows > 1 ? multiRows(players.length, rows) : singleRow(players.length)] }, { children: [rows > 1 && (0, jsx_runtime_1.jsx)("div", {}), gameMode === react_client_1.GameMode.TOURNAMENT && (0, jsx_runtime_1.jsx)("div", __assign({ css: borderTop }, { children: t('Tournament') })), (gameMode === react_client_1.GameMode.TOURNAMENT || gameMode === react_client_1.GameMode.COMPETITIVE) && (0, jsx_runtime_1.jsx)("div", __assign({ css: borderTop }, { children: t('Ranking') })), players.map(function (player, index) {
|
|
88
83
|
return (0, jsx_runtime_1.jsx)(PlayerDisplay, { player: player, gameMode: gameMode, rank: (0, rules_api_1.isCompetitive)(rules) && ranks[index] <= 3 ? ranks[index] : undefined, border: rows > 1 }, index);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/ResultDialog/ResultDialog.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,wCAAoC;AACpC,uEAAqE;AACrE,qEAAmE;AACnE,oEAAgE;AAChE,uDAAsF;AACtF,
|
|
1
|
+
{"version":3,"file":"ResultDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/ResultDialog/ResultDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -28,13 +28,14 @@ var LocationsMask = function (_a) {
|
|
|
28
28
|
};
|
|
29
29
|
exports.LocationsMask = LocationsMask;
|
|
30
30
|
var LocationRect = function (_a) {
|
|
31
|
+
var _b;
|
|
31
32
|
var location = _a.location;
|
|
32
33
|
var locator = (0, hooks_1.useItemLocator)(location.type);
|
|
33
34
|
var description = locator.locationDescription;
|
|
34
35
|
var context = (0, hooks_1.useMaterialContext)();
|
|
35
36
|
var position = locator.getPositionOnParent(location, context);
|
|
36
|
-
var
|
|
37
|
-
var radius = description.getBorderRadius(location, context);
|
|
37
|
+
var _c = description.getSize(location, context), width = _c.width, height = _c.height;
|
|
38
|
+
var radius = (_b = description.getBorderRadius(location, context)) !== null && _b !== void 0 ? _b : 0;
|
|
38
39
|
var coordinates = description.getCoordinates(location, context);
|
|
39
40
|
var transforms = ['translate(-50%, -50%)'];
|
|
40
41
|
if (coordinates) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocationsMask.js","sourceRoot":"","sources":["../../../../src/components/material/locations/LocationsMask.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,wCAAmE;AACnE,6DAAsC;AACtC,+BAA+B;AAMxB,IAAM,aAAa,GAAG,UAAC,EAAiC;QAA/B,SAAS,eAAA;IACvC,IAAM,EAAE,GAAG,IAAA,eAAO,EAAC,cAAM,OAAA,IAAA,kBAAQ,EAAC,MAAM,CAAC,EAAhB,CAAgB,EAAE,EAAE,CAAC,CAAA;IAC9C,IAAI,CAAC,SAAS,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO,CACL,0CAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,iBAC7B,2CACE,2CAAM,EAAE,EAAE,EAAE,iBACV,iCAAM,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,GAAE,EAC9C,SAAS,CAAC,GAAG,CAAC,UAAA,QAAQ,IAAI,OAAA,uBAAC,YAAY,IAAgC,QAAQ,EAAE,QAAQ,IAA5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAuB,EAAlE,CAAkE,CAAC,KACzF,GACF,EACP,iCAAM,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,EAAE,MAAG,GAAG,KAClF,CACP,CAAA;AACH,CAAC,CAAA;AAdY,QAAA,aAAa,iBAczB;AAMD,IAAM,YAAY,GAAG,UAAC,EAA+B
|
|
1
|
+
{"version":3,"file":"LocationsMask.js","sourceRoot":"","sources":["../../../../src/components/material/locations/LocationsMask.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AACA,wCAAmE;AACnE,6DAAsC;AACtC,+BAA+B;AAMxB,IAAM,aAAa,GAAG,UAAC,EAAiC;QAA/B,SAAS,eAAA;IACvC,IAAM,EAAE,GAAG,IAAA,eAAO,EAAC,cAAM,OAAA,IAAA,kBAAQ,EAAC,MAAM,CAAC,EAAhB,CAAgB,EAAE,EAAE,CAAC,CAAA;IAC9C,IAAI,CAAC,SAAS,CAAC,MAAM;QAAE,OAAO,IAAI,CAAA;IAClC,OAAO,CACL,0CAAK,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,iBAC7B,2CACE,2CAAM,EAAE,EAAE,EAAE,iBACV,iCAAM,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,GAAE,EAC9C,SAAS,CAAC,GAAG,CAAC,UAAA,QAAQ,IAAI,OAAA,uBAAC,YAAY,IAAgC,QAAQ,EAAE,QAAQ,IAA5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAuB,EAAlE,CAAkE,CAAC,KACzF,GACF,EACP,iCAAM,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAE,GAAG,EAAE,IAAI,EAAE,eAAQ,EAAE,MAAG,GAAG,KAClF,CACP,CAAA;AACH,CAAC,CAAA;AAdY,QAAA,aAAa,iBAczB;AAMD,IAAM,YAAY,GAAG,UAAC,EAA+B;;QAA7B,QAAQ,cAAA;IAC9B,IAAM,OAAO,GAAG,IAAA,sBAAc,EAAC,QAAQ,CAAC,IAAI,CAAE,CAAA;IAC9C,IAAM,WAAW,GAAG,OAAO,CAAC,mBAAoB,CAAA;IAChD,IAAM,OAAO,GAAG,IAAA,0BAAkB,GAAE,CAAA;IACpC,IAAM,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACzD,IAAA,KAAoB,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAxD,KAAK,WAAA,EAAE,MAAM,YAA2C,CAAA;IAChE,IAAM,MAAM,GAAG,MAAA,WAAW,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,mCAAI,CAAC,CAAA;IAClE,IAAM,WAAW,GAAG,WAAW,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACjE,IAAM,UAAU,GAAa,CAAC,uBAAuB,CAAC,CAAA;IACtD,IAAI,WAAW,EAAE;QACf,UAAU,CAAC,IAAI,CAAC,sBAAe,WAAW,CAAC,CAAC,iBAAO,WAAW,CAAC,CAAC,iBAAO,WAAW,CAAC,CAAC,QAAK,CAAC,CAAA;KAC3F;IACD,IAAI,WAAW,CAAC,WAAW,EAAE;QAC3B,UAAU,CAAC,IAAI,CAAC,iBAAU,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAG,WAAW,CAAC,YAAY,MAAG,CAAC,CAAA;KACpG;IACD,OAAO,CACL,iCAAM,IAAI,EAAC,OAAO,EAAC,CAAC,EAAE,UAAG,QAAQ,CAAC,CAAC,MAAG,EAAE,CAAC,EAAE,UAAG,QAAQ,CAAC,CAAC,MAAG,EAAE,KAAK,EAAE,UAAG,KAAK,OAAI,EAAE,MAAM,EAAE,UAAG,MAAM,OAAI,EAAE,EAAE,EAAE,UAAG,MAAM,OAAI,EAAE,EAAE,EAAE,UAAG,MAAM,OAAI,EACvI,KAAK,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,CACzG,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -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
|
|
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,7 +47,7 @@ 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,
|
|
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; });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,sCAAmC;AACnC,qCAA6D;AAC7D,iDAAmI;AACnI,+BAAiC;AACjC,+CAA8C;AAC9C,wCAAmD;AACnD,sCAAwD;AACxD,oEAAgE;AAChE,iFAA+E;AAC/E,iCAAmD;AACnD,uDAAgC;AAChC,uDAAgC;AAChC,2EAAyE;AACzE,yEAAuE;AACvE,+DAA6D;AAC7D,mEAAiE;AACjE,2CAAyC;AACzC,
|
|
1
|
+
{"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":"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"}
|
package/dist/hooks/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export * from './usePlayerId';
|
|
|
18
18
|
export * from './usePlayerName';
|
|
19
19
|
export * from './usePlayers';
|
|
20
20
|
export * from './usePlayerTime';
|
|
21
|
+
export * from './useResultText';
|
|
21
22
|
export * from './useRules';
|
|
22
23
|
export * from './useRulesStep';
|
|
23
24
|
export * from './useSound';
|
package/dist/hooks/index.js
CHANGED
|
@@ -34,6 +34,7 @@ __exportStar(require("./usePlayerId"), exports);
|
|
|
34
34
|
__exportStar(require("./usePlayerName"), exports);
|
|
35
35
|
__exportStar(require("./usePlayers"), exports);
|
|
36
36
|
__exportStar(require("./usePlayerTime"), exports);
|
|
37
|
+
__exportStar(require("./useResultText"), exports);
|
|
37
38
|
__exportStar(require("./useRules"), exports);
|
|
38
39
|
__exportStar(require("./useRulesStep"), exports);
|
|
39
40
|
__exportStar(require("./useSound"), exports);
|
package/dist/hooks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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,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,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,
|
|
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"}
|
|
@@ -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>):
|
|
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
|
-
|
|
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":";;;;;;;;;;;;;;;;;;AAAA,6CAAwD;AAGxD;IAA2H,+BAAoB;IAA/I;QAAA,
|
|
1
|
+
{"version":3,"file":"PileLocator.js","sourceRoot":"","sources":["../../src/locators/PileLocator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gamepark/react-game",
|
|
3
|
-
"version": "6.
|
|
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.
|
|
31
|
-
"@gamepark/rules-api": "^6.
|
|
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",
|