@gamepark/react-game 7.7.11 → 7.7.12
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/Header.js +45 -4
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/Log/LiveLogButton.js +3 -1
- package/dist/components/Log/LiveLogButton.js.map +1 -1
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +2 -3
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -1
- package/dist/components/buttons/ThemeButton/ThemeButton.js +4 -1
- package/dist/components/buttons/ThemeButton/ThemeButton.js.map +1 -1
- package/dist/components/dialogs/Dialog.js +35 -2
- package/dist/components/dialogs/Dialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.js +2 -3
- package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
- package/dist/components/material/GameTable/DevTools/BotTool.js +23 -2
- package/dist/components/material/GameTable/DevTools/BotTool.js.map +1 -1
- package/dist/components/menus/BugReport/BugReportButton.js +3 -1
- package/dist/components/menus/BugReport/BugReportButton.js.map +1 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js +3 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerButton.js.map +1 -1
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js +3 -2
- package/dist/components/menus/EjectPlayer/EjectPlayerPopButton.js.map +1 -1
- package/dist/components/menus/Menu/LogoIcon.js +1 -1
- package/dist/components/menus/Menu/LogoIcon.js.map +1 -1
- package/dist/components/menus/Menu/Menu.js +2 -1
- package/dist/components/menus/Menu/Menu.js.map +1 -1
- package/dist/components/menus/Menu/NavButton.js +3 -1
- package/dist/components/menus/Menu/NavButton.js.map +1 -1
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js +3 -1
- package/dist/components/menus/RestartTutorialButton/RestartTutorialButton.js.map +1 -1
- package/dist/components/menus/Result/ResultButton.js +3 -1
- package/dist/components/menus/Result/ResultButton.js.map +1 -1
- package/dist/components/menus/SoundButton/SoundButton.js +3 -1
- package/dist/components/menus/SoundButton/SoundButton.js.map +1 -1
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.d.ts +1 -1
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +5 -0
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -1
- package/dist/components/menus/UndoButton/UndoButton.js +3 -1
- package/dist/components/menus/UndoButton/UndoButton.js.map +1 -1
- package/dist/components/tutorial/MaterialTutorialDisplay.js +5 -5
- package/dist/components/tutorial/MaterialTutorialDisplay.js.map +1 -1
- package/dist/css/GameTheme.d.ts +8 -0
- package/dist/css/GameTheme.js +4 -0
- package/dist/css/GameTheme.js.map +1 -1
- package/dist/hooks/useFlatHistory.js +4 -1
- package/dist/hooks/useFlatHistory.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,9 +1,24 @@
|
|
|
1
1
|
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
2
|
import { css, ThemeProvider, useTheme } from '@emotion/react';
|
|
3
|
-
import { buttonCss } from '../../css';
|
|
4
3
|
export const Header = ({ buttonsCss, children, ...props }) => {
|
|
5
4
|
const theme = useTheme();
|
|
6
|
-
|
|
5
|
+
// Layered button styling for the header bar. Always start with the
|
|
6
|
+
// built-in structural base (padding, bold) AND the default header
|
|
7
|
+
// colours, then stack the game's overrides so they only need to
|
|
8
|
+
// express the delta they care about.
|
|
9
|
+
// 1. headerButtonBaseCss — structural rules (padding, font-weight)
|
|
10
|
+
// 2. defaultHeaderColorsCss — default white-on-dark look. Wins for
|
|
11
|
+
// games without any custom theme.buttons.
|
|
12
|
+
// 3. theme.buttons — game-wide button recipe override.
|
|
13
|
+
// 4. theme.header.buttons — header-specific override.
|
|
14
|
+
// 5. buttonsCss prop — caller-level override.
|
|
15
|
+
const resolvedButtonsCss = [
|
|
16
|
+
headerButtonBaseCss,
|
|
17
|
+
defaultHeaderColorsCss,
|
|
18
|
+
theme.buttons,
|
|
19
|
+
theme.header?.buttons,
|
|
20
|
+
buttonsCss
|
|
21
|
+
];
|
|
7
22
|
return (_jsx(ThemeProvider, { theme: t => ({ ...t, buttons: resolvedButtonsCss }), children: _jsx("div", { css: [headerStyle, theme.header?.bar], ...props, children: _jsx("h1", { css: titleStyle, children: children }) }) }));
|
|
8
23
|
};
|
|
9
24
|
const headerStyle = css `
|
|
@@ -30,9 +45,35 @@ const titleStyle = css `
|
|
|
30
45
|
top: 0.1em;
|
|
31
46
|
}
|
|
32
47
|
`;
|
|
33
|
-
|
|
34
|
-
|
|
48
|
+
// Structural base — applied to every header button regardless of the
|
|
49
|
+
// active theme. Games override visuals via theme.buttons /
|
|
50
|
+
// theme.header.buttons but always inherit the structural rules
|
|
51
|
+
// (padding, border, border-radius, cursor, focus, disabled, font
|
|
52
|
+
// weight) from here so they don't have to redeclare them.
|
|
53
|
+
const headerButtonBaseCss = css `
|
|
54
|
+
cursor: pointer;
|
|
35
55
|
padding: 0 0.5em;
|
|
56
|
+
border-radius: 2em;
|
|
57
|
+
border: 0.05em solid currentColor;
|
|
58
|
+
background: transparent;
|
|
36
59
|
font-weight: bold;
|
|
60
|
+
|
|
61
|
+
&:focus { outline: none; }
|
|
62
|
+
|
|
63
|
+
&:disabled {
|
|
64
|
+
color: #555555;
|
|
65
|
+
border-color: #555555;
|
|
66
|
+
cursor: auto;
|
|
67
|
+
opacity: 0.5;
|
|
68
|
+
}
|
|
69
|
+
`;
|
|
70
|
+
// Default colours — only takes effect when the game has not provided
|
|
71
|
+
// a theme.buttons override. Preserves the original white-on-dark look
|
|
72
|
+
// of the header bar.
|
|
73
|
+
const defaultHeaderColorsCss = css `
|
|
74
|
+
color: #ffffff;
|
|
75
|
+
|
|
76
|
+
&:focus, &:hover { background: #555555; }
|
|
77
|
+
&:active { background: #888888; }
|
|
37
78
|
`;
|
|
38
79
|
//# sourceMappingURL=Header.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAwB,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"Header.js","sourceRoot":"","sources":["../../../src/components/Header/Header.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAwB,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAOnF,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE;IACxE,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,mEAAmE;IACnE,kEAAkE;IAClE,gEAAgE;IAChE,qCAAqC;IACrC,sEAAsE;IACtE,qEAAqE;IACrE,wEAAwE;IACxE,gEAAgE;IAChE,wDAAwD;IACxD,qDAAqD;IACrD,MAAM,kBAAkB,GAAG;QACzB,mBAAmB;QACnB,sBAAsB;QACtB,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,MAAM,EAAE,OAAO;QACrB,UAAU;KACX,CAAA;IACD,OAAO,CACL,KAAC,aAAa,IAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,YAChE,cAAK,GAAG,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,KAAM,KAAK,YACnD,aAAI,GAAG,EAAE,UAAU,YAAG,QAAQ,GAAM,GAChC,GACQ,CACjB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;CAUtB,CAAA;AAED,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;;;;;CAYrB,CAAA;AAED,qEAAqE;AACrE,2DAA2D;AAC3D,+DAA+D;AAC/D,iEAAiE;AACjE,0DAA0D;AAC1D,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;CAgB9B,CAAA;AAED,qEAAqE;AACrE,sEAAsE;AACtE,qBAAqB;AACrB,MAAM,sBAAsB,GAAG,GAAG,CAAA;;;;;CAKjC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faBell } from '@fortawesome/free-solid-svg-icons/faBell';
|
|
3
4
|
import { faBellSlash } from '@fortawesome/free-solid-svg-icons/faBellSlash';
|
|
4
5
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
@@ -9,10 +10,11 @@ import { gameContext } from '../GameProvider';
|
|
|
9
10
|
import { menuButtonCss, paletteMenuButtonCss } from '../menus/menuCss';
|
|
10
11
|
export const LiveLogButton = () => {
|
|
11
12
|
const { t } = useTranslation('common');
|
|
13
|
+
const theme = useTheme();
|
|
12
14
|
const { start, stop, stopped } = useLogControls();
|
|
13
15
|
const hasLogs = useContext(gameContext)?.logs;
|
|
14
16
|
if (!hasLogs)
|
|
15
17
|
return null;
|
|
16
|
-
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss], onClick: () => stopped ? start() : stop(), children: [_jsx(FontAwesomeIcon, { icon: stopped ? faBellSlash : faBell }), stopped ? t('Enable live history') : t('Disable live history')] }));
|
|
18
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: () => stopped ? start() : stop(), children: [_jsx(FontAwesomeIcon, { icon: stopped ? faBellSlash : faBell }), stopped ? t('Enable live history') : t('Disable live history')] }));
|
|
17
19
|
};
|
|
18
20
|
//# sourceMappingURL=LiveLogButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveLogButton.js","sourceRoot":"","sources":["../../../src/components/Log/LiveLogButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAA;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"LiveLogButton.js","sourceRoot":"","sources":["../../../src/components/Log/LiveLogButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,0CAA0C,CAAA;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAEtE,MAAM,CAAC,MAAM,aAAa,GAAG,GAAG,EAAE;IAChC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,cAAc,EAAE,CAAA;IACjD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC7C,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IACzB,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,aAC/G,KAAC,eAAe,IAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,GAAG,EACvD,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,IACxD,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { css
|
|
2
|
+
import { css } from '@emotion/react';
|
|
3
3
|
import { useCallback, useEffect, useState } from 'react';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
|
-
import { onSurfaceButtonCss } from '../../../css';
|
|
6
5
|
import { usePlay } from '../../../hooks';
|
|
7
6
|
import { Dialog } from '../../dialogs';
|
|
8
7
|
import { ThemeButton } from '../ThemeButton';
|
|
@@ -56,7 +55,7 @@ export const PlayMoveButton = (props) => {
|
|
|
56
55
|
if (countdown === 0)
|
|
57
56
|
doPlay();
|
|
58
57
|
}, [countdown]);
|
|
59
|
-
return (_jsxs(_Fragment, { children: [!!confirmation && (_jsx(Dialog, { open: showDialog, onBackdropClick: () => setShowDialog(false), css: [flex, confirmationDialogCss], children:
|
|
58
|
+
return (_jsxs(_Fragment, { children: [!!confirmation && (_jsx(Dialog, { open: showDialog, onBackdropClick: () => setShowDialog(false), css: [flex, confirmationDialogCss], children: _jsxs("div", { css: content, children: [_jsx("p", { children: confirmation.text }), _jsxs("div", { css: buttons, children: [_jsx(ThemeButton, { onClick: () => setShowDialog(false), ...rest, children: confirmation.cancelText ?? t('Cancel') }), _jsx(ThemeButton, { css: moveButton, onClick: doPlay, ...rest })] })] }) }, "dialog")), _jsx(ThemeButton, { onClick: onClick, disabled: disabled, css: countdown && countdownCss(countdown), ...rest }, "button")] }));
|
|
60
59
|
};
|
|
61
60
|
const buttons = css `
|
|
62
61
|
display: flex;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayMoveButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/PlayMoveButton/PlayMoveButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"PlayMoveButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/PlayMoveButton/PlayMoveButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
2
|
import { useTheme } from '@emotion/react';
|
|
3
|
+
import { onSurfaceButtonCss } from '../../../css';
|
|
3
4
|
export const ThemeButton = (props) => {
|
|
4
5
|
const theme = useTheme();
|
|
5
|
-
|
|
6
|
+
// Fall back to onSurfaceButtonCss when the game does not provide
|
|
7
|
+
// any theme.buttons recipe so the button still has a usable look.
|
|
8
|
+
return _jsx("button", { css: theme.buttons ?? onSurfaceButtonCss, ...props });
|
|
6
9
|
};
|
|
7
10
|
//# sourceMappingURL=ThemeButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/ThemeButton/ThemeButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"ThemeButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/ThemeButton/ThemeButton.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAEjD,MAAM,CAAC,MAAM,WAAW,GAAgD,CAAC,KAAK,EAAE,EAAE;IAChF,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,iEAAiE;IACjE,kEAAkE;IAClE,OAAO,iBAAQ,GAAG,EAAE,KAAK,CAAC,OAAO,IAAI,kBAAkB,KAAM,KAAK,GAAG,CAAA;AACvE,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { css, keyframes, useTheme } from '@emotion/react';
|
|
2
|
+
import { css, keyframes, ThemeProvider, useTheme } from '@emotion/react';
|
|
3
3
|
import { useEffect, useState } from 'react';
|
|
4
4
|
import { createPortal } from 'react-dom';
|
|
5
5
|
export const Dialog = ({ children, open, backdropCss, onBackdropClick, transitionDelay = 0.3, rootId = 'root', ...props }) => {
|
|
@@ -27,8 +27,41 @@ export const Dialog = ({ children, open, backdropCss, onBackdropClick, transitio
|
|
|
27
27
|
console.error('Dialog cannot be displayed because this element id does not exists:', rootId);
|
|
28
28
|
return null;
|
|
29
29
|
}
|
|
30
|
-
|
|
30
|
+
// Layered button styling for buttons rendered inside this dialog:
|
|
31
|
+
// 1. dialogButtonBaseCss — structural rules (padding, font-weight,
|
|
32
|
+
// border-radius, ...). Always applied so
|
|
33
|
+
// games never lose layout when they only
|
|
34
|
+
// tweak colours.
|
|
35
|
+
// 2. theme.buttons — game-wide button recipe override.
|
|
36
|
+
// 3. theme.dialog.buttons — dialog-specific override.
|
|
37
|
+
// Falls back to onSurfaceButtonCss visuals via ThemeButton when the
|
|
38
|
+
// game does not provide any theme.buttons.
|
|
39
|
+
const resolvedDialogButtonsCss = [dialogButtonBaseCss, theme.buttons, theme.dialog.buttons];
|
|
40
|
+
const dialogContent = (_jsx("div", { onClick: event => event.stopPropagation(), css: [dialogCss, open ? (theme.dialog.openAnimation ?? dialogShow(transitionDelay)) : (theme.dialog.closeAnimation ?? dialogHide(transitionDelay)), theme.dialog.container], ...props, children: children }));
|
|
41
|
+
return createPortal(_jsx("div", { css: [backdropStyle(transitionDelay), !open && hide(transitionDelay), backdropCss], onClick: event => !justDisplayed && onBackdropClick?.(event), children: _jsx(ThemeProvider, { theme: t => ({ ...t, buttons: resolvedDialogButtonsCss }), children: dialogContent }) }), root);
|
|
31
42
|
};
|
|
43
|
+
// Structural base — applied to every button rendered inside a Dialog
|
|
44
|
+
// regardless of the active theme. Games override visuals via
|
|
45
|
+
// theme.buttons / theme.dialog.buttons but always inherit the
|
|
46
|
+
// structural rules (padding, border-radius, cursor, ...) from here so
|
|
47
|
+
// they don't have to redeclare them.
|
|
48
|
+
const dialogButtonBaseCss = css `
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
padding: 0.3em 0.9em;
|
|
51
|
+
border-radius: 2em;
|
|
52
|
+
border: 0.05em solid currentColor;
|
|
53
|
+
background: transparent;
|
|
54
|
+
font-weight: 600;
|
|
55
|
+
|
|
56
|
+
&:focus { outline: none; }
|
|
57
|
+
|
|
58
|
+
&:disabled {
|
|
59
|
+
color: #555555;
|
|
60
|
+
border-color: #555555;
|
|
61
|
+
cursor: auto;
|
|
62
|
+
opacity: 0.5;
|
|
63
|
+
}
|
|
64
|
+
`;
|
|
32
65
|
const fadeIn = keyframes `
|
|
33
66
|
from {
|
|
34
67
|
opacity: 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/Dialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAiB,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"Dialog.js","sourceRoot":"","sources":["../../../src/components/dialogs/Dialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { css,
|
|
2
|
+
import { css, useTheme } from '@emotion/react';
|
|
3
3
|
import { faXmark } from '@fortawesome/free-solid-svg-icons/faXmark';
|
|
4
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
5
|
-
import { onSurfaceButtonCss } from '../../../css';
|
|
6
5
|
import { Dialog } from '../index';
|
|
7
6
|
export const RulesDialog = ({ close, children, ...props }) => {
|
|
8
7
|
const theme = useTheme();
|
|
9
8
|
const CloseButton = theme.dialog.closeButton;
|
|
10
|
-
return (_jsxs(Dialog, { onBackdropClick: close, css: dialogCss, ...props, children: [close && (CloseButton ? _jsx(CloseButton, { onClick: close }) : _jsx(FontAwesomeIcon, { icon: faXmark, css: [dialogCloseIcon, theme.dialog.closeIcon], onClick: close })),
|
|
9
|
+
return (_jsxs(Dialog, { onBackdropClick: close, css: dialogCss, ...props, children: [close && (CloseButton ? _jsx(CloseButton, { onClick: close }) : _jsx(FontAwesomeIcon, { icon: faXmark, css: [dialogCloseIcon, theme.dialog.closeIcon], onClick: close })), children] }));
|
|
11
10
|
};
|
|
12
11
|
const dialogCss = css `
|
|
13
12
|
max-width: 90vw;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RulesDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/RulesDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"RulesDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/RulesDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,MAAM,EAAe,MAAM,UAAU,CAAA;AAM9C,MAAM,CAAC,MAAM,WAAW,GAAyB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAoB,EAAE,EAAE;IACnG,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,WAAW,CAAA;IAC5C,OAAO,CACL,MAAC,MAAM,IAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,KAAM,KAAK,aACtD,KAAK,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,KAAC,WAAW,IAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,CAAC,EAC3J,QAAQ,IACF,CACV,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;CAMpB,CAAA;AAED,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;CAO1B,CAAA"}
|
|
@@ -1,9 +1,30 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
2
|
/** @jsxImportSource @emotion/react */
|
|
3
|
-
import { useState } from 'react';
|
|
3
|
+
import { useContext, useState } from 'react';
|
|
4
|
+
import { gameContext } from '../../../GameProvider/GameContext';
|
|
4
5
|
import { activeIndicatorCss, toolBtnActiveCss, toolBtnCss, toolDescCss, toolIconCss, toolLabelCss } from './devtools.css';
|
|
6
|
+
/* Reads the persisted `monkeyOpponents` flag from localStorage on
|
|
7
|
+
* mount — the GameLocalAPI stores its whole localStore there, keyed
|
|
8
|
+
* by the game name. That way the toggle opens in sync with whatever
|
|
9
|
+
* state the bot is actually in (including reloads or toggles from
|
|
10
|
+
* the console). Clicking delegates to `g.bot()` which is the
|
|
11
|
+
* canonical alias that starts/stops the bots. */
|
|
5
12
|
export const BotTool = ({ exec, g }) => {
|
|
6
|
-
const
|
|
13
|
+
const gameName = useContext(gameContext)?.game;
|
|
14
|
+
const [botActive, setBotActive] = useState(() => {
|
|
15
|
+
if (!gameName || typeof window === 'undefined')
|
|
16
|
+
return false;
|
|
17
|
+
try {
|
|
18
|
+
const raw = window.localStorage.getItem(gameName);
|
|
19
|
+
if (!raw)
|
|
20
|
+
return false;
|
|
21
|
+
const parsed = JSON.parse(raw);
|
|
22
|
+
return !!parsed?.monkeyOpponents;
|
|
23
|
+
}
|
|
24
|
+
catch {
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
7
28
|
return (_jsxs("button", { css: [toolBtnCss, botActive && toolBtnActiveCss], onClick: () => {
|
|
8
29
|
const next = !botActive;
|
|
9
30
|
exec(() => g.bot(next), next ? 'Bots enabled' : 'Bots disabled');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BotTool.js","sourceRoot":"","sources":["../../../../../src/components/material/GameTable/DevTools/BotTool.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAM,QAAQ,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"BotTool.js","sourceRoot":"","sources":["../../../../../src/components/material/GameTable/DevTools/BotTool.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAM,UAAU,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAA;AAC/D,OAAO,EACL,kBAAkB,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EACzF,MAAM,gBAAgB,CAAA;AAOvB;;;;;iDAKiD;AACjD,MAAM,CAAC,MAAM,OAAO,GAAqB,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,EAAE;IACvD,MAAM,QAAQ,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC9C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,GAAG,EAAE;QACvD,IAAI,CAAC,QAAQ,IAAI,OAAO,MAAM,KAAK,WAAW;YAAE,OAAO,KAAK,CAAA;QAC5D,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;YACjD,IAAI,CAAC,GAAG;gBAAE,OAAO,KAAK,CAAA;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC9B,OAAO,CAAC,CAAC,MAAM,EAAE,eAAe,CAAA;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAA;QACd,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,UAAU,EAAE,SAAS,IAAI,gBAAgB,CAAC,EACtD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,IAAI,GAAG,CAAC,SAAS,CAAA;YACvB,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAA;YAChE,YAAY,CAAC,IAAI,CAAC,CAAA;QACpB,CAAC,aACD,eAAM,GAAG,EAAE,WAAW,YAAG,QAAQ,GAAQ,EACzC,eAAM,GAAG,EAAE,YAAY,YAAG,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,GAAQ,EAC5E,eAAM,GAAG,EAAE,WAAW,YAAG,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,qBAAqB,GAAQ,EACpF,SAAS,IAAI,eAAM,GAAG,EAAE,kBAAkB,GAAI,IACxC,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faBug } from '@fortawesome/free-solid-svg-icons/faBug';
|
|
3
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
5
|
import { useState } from 'react';
|
|
@@ -7,7 +8,8 @@ import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
|
7
8
|
import { BugReportDialog } from './BugReportDialog';
|
|
8
9
|
export const BugReportButton = () => {
|
|
9
10
|
const { t } = useTranslation('common');
|
|
11
|
+
const theme = useTheme();
|
|
10
12
|
const [open, setOpen] = useState(false);
|
|
11
|
-
return (_jsxs(_Fragment, { children: [_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss], onClick: () => setOpen(true), children: [_jsx(FontAwesomeIcon, { icon: faBug }), t('bug.report', 'Report a bug')] }), _jsx(BugReportDialog, { open: open, onClose: () => setOpen(false) })] }));
|
|
13
|
+
return (_jsxs(_Fragment, { children: [_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: () => setOpen(true), children: [_jsx(FontAwesomeIcon, { icon: faBug }), t('bug.report', 'Report a bug')] }), _jsx(BugReportDialog, { open: open, onClose: () => setOpen(false) })] }));
|
|
12
14
|
};
|
|
13
15
|
//# sourceMappingURL=BugReportButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BugReportButton.js","sourceRoot":"","sources":["../../../../src/components/menus/BugReport/BugReportButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,OAAO,CACL,8BACE,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"BugReportButton.js","sourceRoot":"","sources":["../../../../src/components/menus/BugReport/BugReportButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,yCAAyC,CAAA;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE;IAClC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvC,OAAO,CACL,8BACE,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,aAClG,KAAC,eAAe,IAAC,IAAI,EAAE,KAAK,GAAG,EAC9B,CAAC,CAAC,YAAY,EAAE,cAAc,CAAC,IACzB,EACT,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,IAC5D,CACJ,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faUserSlash } from '@fortawesome/free-solid-svg-icons/faUserSlash';
|
|
3
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
5
|
import { useTranslation } from 'react-i18next';
|
|
@@ -6,7 +7,8 @@ import { menuButtonCss, paletteDangerButtonCss, paletteMenuButtonCss } from '../
|
|
|
6
7
|
import { useOpponentWithMaxTime } from '../../../hooks';
|
|
7
8
|
export const EjectPlayerButton = (props) => {
|
|
8
9
|
const { t } = useTranslation('common');
|
|
10
|
+
const theme = useTheme();
|
|
9
11
|
const opponentWithNegativeTime = useOpponentWithMaxTime(0);
|
|
10
|
-
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, paletteDangerButtonCss], disabled: !opponentWithNegativeTime, ...props, children: [_jsx(FontAwesomeIcon, { icon: faUserSlash }), t('Eject player')] }));
|
|
12
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, paletteDangerButtonCss, theme.menu?.button], disabled: !opponentWithNegativeTime, ...props, children: [_jsx(FontAwesomeIcon, { icon: faUserSlash }), t('Eject player')] }));
|
|
11
13
|
};
|
|
12
14
|
//# sourceMappingURL=EjectPlayerButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EjectPlayerButton.js","sourceRoot":"","sources":["../../../../src/components/menus/EjectPlayer/EjectPlayerButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAEvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAwC,EAAE,EAAE;IAC5E,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;IAC1D,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,CAAC,EAAE,QAAQ,EAAE,CAAC,wBAAwB,KAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"EjectPlayerButton.js","sourceRoot":"","sources":["../../../../src/components/menus/EjectPlayer/EjectPlayerButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AACxF,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AAEvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAwC,EAAE,EAAE;IAC5E,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,wBAAwB,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;IAC1D,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,wBAAwB,KAAM,KAAK,aAC5I,KAAC,eAAe,IAAC,IAAI,EAAE,WAAW,GAAG,EACpC,CAAC,CAAC,cAAc,CAAC,IACX,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { css } from '@emotion/react';
|
|
2
|
+
import { css, useTheme } from '@emotion/react';
|
|
3
3
|
import { faUserSlash } from '@fortawesome/free-solid-svg-icons/faUserSlash';
|
|
4
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
@@ -7,10 +7,11 @@ import { useOpponentWithMaxTime, useUndo } from '../../../hooks';
|
|
|
7
7
|
import { MenuPopButton } from '../Menu/MenuPopButton';
|
|
8
8
|
export const EjectPlayerPopButton = (props) => {
|
|
9
9
|
const { t } = useTranslation('common');
|
|
10
|
+
const theme = useTheme();
|
|
10
11
|
const opponentWithNegativeTime = useOpponentWithMaxTime(0);
|
|
11
12
|
const [, canUndo] = useUndo();
|
|
12
13
|
const canUndoLastMove = canUndo();
|
|
13
|
-
return (_jsx(MenuPopButton, { pop: opponentWithNegativeTime !== undefined, popPosition: canUndoLastMove ? 2 : 1, css: [style, dangerStyle], title: t('Eject player'), ...props, children: _jsx(FontAwesomeIcon, { icon: faUserSlash }) }));
|
|
14
|
+
return (_jsx(MenuPopButton, { pop: opponentWithNegativeTime !== undefined, popPosition: canUndoLastMove ? 2 : 1, css: [style, dangerStyle, theme.menu?.popButton], title: t('Eject player'), ...props, children: _jsx(FontAwesomeIcon, { icon: faUserSlash }) }));
|
|
14
15
|
};
|
|
15
16
|
const style = css `
|
|
16
17
|
background: white;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EjectPlayerPopButton.js","sourceRoot":"","sources":["../../../../src/components/menus/EjectPlayer/EjectPlayerPopButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"EjectPlayerPopButton.js","sourceRoot":"","sources":["../../../../src/components/menus/EjectPlayer/EjectPlayerPopButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,+CAA+C,CAAA;AAC3E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAErD,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAwC,EAAE,EAAE;IAC/E,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,wBAAwB,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAA;IAC1D,MAAM,CAAC,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAA;IAC7B,MAAM,eAAe,GAAG,OAAO,EAAE,CAAA;IAEjC,OAAO,CACL,KAAC,aAAa,IAAC,GAAG,EAAE,wBAAwB,KAAK,SAAS,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACjF,GAAG,EAAE,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,cAAc,CAAE,KAAM,KAAK,YACnG,KAAC,eAAe,IAAC,IAAI,EAAE,WAAW,GAAG,GACvB,CACjB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,KAAK,GAAG,GAAG,CAAA;;;;;;;;;;;CAWhB,CAAA;AAED,MAAM,WAAW,GAAG,GAAG,CAAA;;;;;;;;;;CAUtB,CAAA"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
-
export const LogoIcon = (props) => (_jsxs("svg", { ...props, viewBox: "0 0 65 88", children: [_jsx("circle", { cx: "11.52", cy: "11.52", r: "11.52" }), _jsx("circle", { cx: "53.49", cy: "11.52", r: "11.52" }), _jsx("circle", { cx: "11.52", cy: "52.78", r: "11.52" }), _jsx("circle", { cx: "53.49", cy: "52.78", r: "11.52" }), _jsx("path", { transform: "translate(-393.75 -467.67)", d: "M429.48,510.5a11.51,11.51,0,1,0-6.68,0c-2.67,41.22-28.09,36.57-28.09,36.57v8.63h62.86v-8.63S432.16,551.72,429.48,510.5Z" })] }));
|
|
2
|
+
export const LogoIcon = (props) => (_jsxs("svg", { fill: "currentColor", ...props, viewBox: "0 0 65 88", children: [_jsx("circle", { cx: "11.52", cy: "11.52", r: "11.52" }), _jsx("circle", { cx: "53.49", cy: "11.52", r: "11.52" }), _jsx("circle", { cx: "11.52", cy: "52.78", r: "11.52" }), _jsx("circle", { cx: "53.49", cy: "52.78", r: "11.52" }), _jsx("path", { transform: "translate(-393.75 -467.67)", d: "M429.48,510.5a11.51,11.51,0,1,0-6.68,0c-2.67,41.22-28.09,36.57-28.09,36.57v8.63h62.86v-8.63S432.16,551.72,429.48,510.5Z" })] }));
|
|
3
3
|
//# sourceMappingURL=LogoIcon.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LogoIcon.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/LogoIcon.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CAC1D,
|
|
1
|
+
{"version":3,"file":"LogoIcon.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/LogoIcon.tsx"],"names":[],"mappings":";AAEA,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,KAA8B,EAAE,EAAE,CAAC,CAC1D,eAAK,IAAI,EAAC,cAAc,KAAK,KAAK,EAAE,OAAO,EAAC,WAAW,aACrD,iBAAQ,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,OAAO,GAAE,EACzC,iBAAQ,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,OAAO,GAAE,EACzC,iBAAQ,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,OAAO,GAAE,EACzC,iBAAQ,EAAE,EAAC,OAAO,EAAC,EAAE,EAAC,OAAO,EAAC,CAAC,EAAC,OAAO,GAAE,EACzC,eAAM,SAAS,EAAC,4BAA4B,EACtC,CAAC,EAAC,yHAAyH,GAAE,IAC/H,CACP,CAAA"}
|
|
@@ -64,12 +64,13 @@ export const Menu = () => {
|
|
|
64
64
|
}, [resultDialogOpen]);
|
|
65
65
|
return (_jsxs(_Fragment, { children: [_jsx("div", { css: [backdrop, isOpen && displayBackdrop], onClick: () => setOpen(false) }), couldEject && _jsx(EjectPlayerPopButton, { onClick: () => setEjectPlayerDialogOpen(true) }), couldUndo && _jsx(UndoPopButton, {}), gameOver && _jsx(ResultPopButton, { onClick: () => setResultDialogOpen(true) }), fscreen.fullscreenEnabled && _jsx(FullscreenPopButton, {}), _jsxs("div", { css: [menuFontSize, menuBaseCss, paletteMenuBaseCss, theme.menu?.panel, menuCss, !isOpen && hide], children: [_jsx("h2", { css: titleCss, children: t('Menu') }), fscreen.fullscreenEnabled && _jsx(FullscreenButton, {}), _jsx(SoundButton, {}), _jsx(LiveLogButton, {}), couldUndo && _jsx(UndoButton, {}), canGiveUp && _jsx(GiveUpButton, {}), couldEject && _jsx(EjectPlayerButton, { onClick: () => setEjectPlayerDialogOpen(true) }), _jsx(TimeStatsButton, {}), gameMode !== GameMode.TUTORIAL && _jsx(BugReportButton, {}), gameMode === GameMode.TUTORIAL && _jsx(RestartTutorialButton, {}), _jsxs(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${game}`, children: [_jsx(LogoIcon, { css: buttonLogoIconCss }), t('Back to Game Park')] }), gameOver && _jsx(ResultButton, { onClick: () => setResultDialogOpen(true) }), canPlayAgain &&
|
|
66
66
|
_jsxs(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${game}/play`, children: [_jsx(FontAwesomeIcon, { icon: faChessPawn }), t('Play again')] }), goToRanking &&
|
|
67
|
-
_jsxs(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${game}/ranking`, children: [_jsx(GamePointIcon, { css: gamePointIconStyle }), t('See overall ranking')] })] }), _jsx("button", { "aria-label": t('Menu'), title: t('Menu'), css: [mainButtonCss, palettePrimaryButtonCss, theme.menu?.mainButton], onClick: () => setOpen(!isOpen), children: isOpen ? _jsx(FontAwesomeIcon, { icon: faTimes, css: iconStyle }) : _jsx(LogoIcon, {
|
|
67
|
+
_jsxs(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${game}/ranking`, children: [_jsx(GamePointIcon, { css: gamePointIconStyle }), t('See overall ranking')] })] }), _jsx("button", { "aria-label": t('Menu'), title: t('Menu'), css: [mainButtonCss, palettePrimaryButtonCss, theme.menu?.mainButton], onClick: () => setOpen(!isOpen), children: isOpen ? _jsx(FontAwesomeIcon, { icon: faTimes, css: iconStyle }) : _jsx(LogoIcon, {}) }), couldEject && _jsx(EjectPlayerDialog, { open: ejectPlayerDialogOpen, close: () => setEjectPlayerDialogOpen(false) }), !gameOver && _jsx(TrackPlayersQuit, {}), gameOver && _jsx(ResultDialog, { open: resultDialogOpen, openDialog: () => setResultDialogOpen(true), close: () => setResultDialogOpen(false) }), _jsx(JournalTabs, { gameId: gameId })] }));
|
|
68
68
|
};
|
|
69
69
|
const mainButtonCss = css `
|
|
70
70
|
${menuFloatingButtonCss};
|
|
71
71
|
z-index: 1000;
|
|
72
72
|
background: #28B8CE;
|
|
73
|
+
color: white;
|
|
73
74
|
height: 2.5em;
|
|
74
75
|
width: 2.5em;
|
|
75
76
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/Menu.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/Menu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
3
4
|
export const NavButton = ({ children, url, ...props }) => {
|
|
4
|
-
|
|
5
|
+
const theme = useTheme();
|
|
6
|
+
return (_jsx("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: () => window.location.href = url, ...props, children: children }));
|
|
5
7
|
};
|
|
6
8
|
//# sourceMappingURL=NavButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NavButton.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/NavButton.tsx"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"NavButton.js","sourceRoot":"","sources":["../../../../src/components/menus/Menu/NavButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAEzC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAIhE,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,KAAK,EAAS,EAAE,EAAE;IAC9D,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,OAAO,CACL,iBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,KAAM,KAAK,YACzH,QAAQ,GACF,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faGraduationCap } from '@fortawesome/free-solid-svg-icons/faGraduationCap';
|
|
3
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
5
|
import { gameContext } from '../../GameProvider';
|
|
@@ -7,6 +8,7 @@ import { useTranslation } from 'react-i18next';
|
|
|
7
8
|
import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
8
9
|
export const RestartTutorialButton = () => {
|
|
9
10
|
const { t } = useTranslation('common');
|
|
11
|
+
const theme = useTheme();
|
|
10
12
|
const game = useContext(gameContext)?.game;
|
|
11
13
|
if (!game)
|
|
12
14
|
throw new Error('Cannot use TutorialButton outside a GameProvider context');
|
|
@@ -14,6 +16,6 @@ export const RestartTutorialButton = () => {
|
|
|
14
16
|
localStorage.removeItem(game);
|
|
15
17
|
window.location.reload();
|
|
16
18
|
};
|
|
17
|
-
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss], onClick: onClick, children: [_jsx(FontAwesomeIcon, { icon: faGraduationCap }), t('Restart the tutorial')] }));
|
|
19
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: onClick, children: [_jsx(FontAwesomeIcon, { icon: faGraduationCap }), t('Restart the tutorial')] }));
|
|
18
20
|
};
|
|
19
21
|
//# sourceMappingURL=RestartTutorialButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestartTutorialButton.js","sourceRoot":"","sources":["../../../../src/components/menus/RestartTutorialButton/RestartTutorialButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAA;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC1C,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAEtF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;IAC1B,CAAC,CAAA;IAED,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,OAAO,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"RestartTutorialButton.js","sourceRoot":"","sources":["../../../../src/components/menus/RestartTutorialButton/RestartTutorialButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,mDAAmD,CAAA;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAA;IAC1C,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAEtF,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;IAC1B,CAAC,CAAA;IAED,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,OAAO,aACtF,KAAC,eAAe,IAAC,IAAI,EAAE,eAAe,GAAG,EACxC,CAAC,CAAC,sBAAsB,CAAC,IACnB,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faRankingStar } from '@fortawesome/free-solid-svg-icons/faRankingStar';
|
|
3
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
5
|
import { useTranslation } from 'react-i18next';
|
|
5
6
|
import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
6
7
|
export const ResultButton = (props) => {
|
|
7
8
|
const { t } = useTranslation('common');
|
|
8
|
-
|
|
9
|
+
const theme = useTheme();
|
|
10
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], ...props, children: [_jsx(FontAwesomeIcon, { icon: faRankingStar }), t('result.button')] }));
|
|
9
11
|
};
|
|
10
12
|
//# sourceMappingURL=ResultButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultButton.js","sourceRoot":"","sources":["../../../../src/components/menus/Result/ResultButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAwC,EAAE,EAAE;IACvE,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"ResultButton.js","sourceRoot":"","sources":["../../../../src/components/menus/Result/ResultButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAwC,EAAE,EAAE;IACvE,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IAExB,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,KAAM,KAAK,aAC/E,KAAC,eAAe,IAAC,IAAI,EAAE,aAAa,GAAG,EACtC,CAAC,CAAC,eAAe,CAAC,IACZ,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faVolumeMute } from '@fortawesome/free-solid-svg-icons/faVolumeMute';
|
|
3
4
|
import { faVolumeUp } from '@fortawesome/free-solid-svg-icons/faVolumeUp';
|
|
4
5
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
@@ -7,7 +8,8 @@ import { useTranslation } from 'react-i18next';
|
|
|
7
8
|
import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
8
9
|
export const SoundButton = () => {
|
|
9
10
|
const { t } = useTranslation('common');
|
|
11
|
+
const theme = useTheme();
|
|
10
12
|
const { mute, unmute, muted } = useSoundControls();
|
|
11
|
-
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss], onClick: () => muted ? unmute() : mute(), children: [_jsx(FontAwesomeIcon, { icon: muted ? faVolumeMute : faVolumeUp }), muted ? t('Enable sound') : t('Mute sound')] }));
|
|
13
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: () => muted ? unmute() : mute(), children: [_jsx(FontAwesomeIcon, { icon: muted ? faVolumeMute : faVolumeUp }), muted ? t('Enable sound') : t('Mute sound')] }));
|
|
12
14
|
};
|
|
13
15
|
//# sourceMappingURL=SoundButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SoundButton.js","sourceRoot":"","sources":["../../../../src/components/menus/SoundButton/SoundButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAClD,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"SoundButton.js","sourceRoot":"","sources":["../../../../src/components/menus/SoundButton/SoundButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gDAAgD,CAAA;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,8CAA8C,CAAA;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,WAAW,GAAG,GAAG,EAAE;IAC9B,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,gBAAgB,EAAE,CAAA;IAClD,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,aAC9G,KAAC,eAAe,IAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,GAAG,EAC1D,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IACrC,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const TimeStatsButton: () => import("@emotion/react/jsx-runtime").JSX.Element;
|
|
1
|
+
export declare const TimeStatsButton: () => import("@emotion/react/jsx-runtime").JSX.Element | null;
|
|
@@ -20,6 +20,11 @@ export const TimeStatsButton = () => {
|
|
|
20
20
|
const [displayPopup, setDisplayPopup] = useState(false);
|
|
21
21
|
const players = usePlayers();
|
|
22
22
|
const CloseButton = theme.dialog.closeButton;
|
|
23
|
+
// Hide the button entirely when no player has a timer attached
|
|
24
|
+
// (e.g. local play / async game without time tracking).
|
|
25
|
+
const hasTimers = players.some(p => p.time !== undefined);
|
|
26
|
+
if (!hasTimers)
|
|
27
|
+
return null;
|
|
23
28
|
return (_jsxs(_Fragment, { children: [_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], onClick: () => setDisplayPopup(true), children: [_jsx(FontAwesomeIcon, { icon: faClock }), t('time.button')] }), _jsxs(Dialog, { open: displayPopup, css: [menuDialogCss, theme.timeStats?.container], onBackdropClick: () => setDisplayPopup(false), children: [CloseButton ? _jsx(CloseButton, { onClick: () => setDisplayPopup(false) }) : _jsx(FontAwesomeIcon, { icon: faXmark, css: closeIcon, onClick: () => setDisplayPopup(false) }), _jsx("h2", { children: t('time.title') }), _jsxs("div", { css: gridCss(players.length), children: [_jsx("div", {}), _jsx("div", { css: [borderTopCss, thinkBgCss], children: t('time.think.total') }), _jsx("div", { css: [borderTopCss, waitBgCss], children: t('time.wait.total') }), _jsx("div", { css: [borderTopCss, thinkBgCss], children: t('time.think.max') }), _jsx("div", { css: [borderTopCss, waitBgCss], children: t('time.wait.max') }), _jsx("div", { css: [borderTopCss, thinkBgCss], children: t('time.awaited') }), players.map((player, index) => _jsxs(Fragment, { children: [_jsxs("div", { css: [relative, borderLeftCss], children: [_jsx(Avatar, { playerId: player.id, css: avatarCss }), _jsx("span", { children: _jsx(PlayerName, { playerId: player.id }) })] }, index), _jsx("div", { css: [borderLeftCss, borderTopCss, thinkBgCss], children: humanize(player.time?.cumulatedPlayTime) }), _jsx("div", { css: [borderLeftCss, borderTopCss, waitBgCss], children: humanize(player.time?.cumulatedDownTime) }), _jsx("div", { css: [borderLeftCss, borderTopCss, thinkBgCss], children: humanize(player.time?.highestPlayTime) }), _jsx("div", { css: [borderLeftCss, borderTopCss, waitBgCss], children: humanize(player.time?.highestDownTime) }), _jsx("div", { css: [borderLeftCss, borderTopCss, thinkBgCss], children: humanize(player.time?.weightedWaitForMeTime) })] }, index))] })] })] }));
|
|
24
29
|
};
|
|
25
30
|
const PlayerName = ({ playerId }) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeStatsButton.js","sourceRoot":"","sources":["../../../../src/components/menus/TimeStatsButton/TimeStatsButton.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TimeStatsButton.js","sourceRoot":"","sources":["../../../../src/components/menus/TimeStatsButton/TimeStatsButton.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
import { useTheme } from '@emotion/react';
|
|
2
3
|
import { faUndoAlt } from '@fortawesome/free-solid-svg-icons/faUndoAlt';
|
|
3
4
|
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
4
5
|
import { useTranslation } from 'react-i18next';
|
|
@@ -6,8 +7,9 @@ import { useUndo } from '../../../hooks';
|
|
|
6
7
|
import { menuButtonCss, paletteMenuButtonCss } from '../menuCss';
|
|
7
8
|
export const UndoButton = () => {
|
|
8
9
|
const { t } = useTranslation('common');
|
|
10
|
+
const theme = useTheme();
|
|
9
11
|
const [undo, canUndo] = useUndo();
|
|
10
12
|
const canUndoLastMove = canUndo();
|
|
11
|
-
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss], disabled: !canUndoLastMove, onClick: () => undo(), children: [_jsx(FontAwesomeIcon, { icon: faUndoAlt }), t('Undo my last move')] }));
|
|
13
|
+
return (_jsxs("button", { css: [menuButtonCss, paletteMenuButtonCss, theme.menu?.button], disabled: !canUndoLastMove, onClick: () => undo(), children: [_jsx(FontAwesomeIcon, { icon: faUndoAlt }), t('Undo my last move')] }));
|
|
12
14
|
};
|
|
13
15
|
//# sourceMappingURL=UndoButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UndoButton.js","sourceRoot":"","sources":["../../../../src/components/menus/UndoButton/UndoButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAA;IACjC,MAAM,eAAe,GAAG,OAAO,EAAE,CAAA;IAEjC,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,CAAC,EAAE,QAAQ,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"UndoButton.js","sourceRoot":"","sources":["../../../../src/components/menus/UndoButton/UndoButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAEhE,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,EAAE;IAC7B,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,OAAO,EAAE,CAAA;IACjC,MAAM,eAAe,GAAG,OAAO,EAAE,CAAA;IAEjC,OAAO,CACL,kBAAQ,GAAG,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,eAAe,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,aACvH,KAAC,eAAe,IAAC,IAAI,EAAE,SAAS,GAAG,EAClC,CAAC,CAAC,mBAAmB,CAAC,IAChB,CACV,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
-
import { css,
|
|
2
|
+
import { css, useTheme } from '@emotion/react';
|
|
3
3
|
import { faBackward } from '@fortawesome/free-solid-svg-icons/faBackward';
|
|
4
4
|
import { faForward } from '@fortawesome/free-solid-svg-icons/faForward';
|
|
5
5
|
import { faForwardFast } from '@fortawesome/free-solid-svg-icons/faForwardFast';
|
|
@@ -10,7 +10,7 @@ import { isCloseTutorialPopup, isSetTutorialStep } from '@gamepark/rules-api';
|
|
|
10
10
|
import { maxBy, minBy } from 'es-toolkit';
|
|
11
11
|
import { useEffect } from 'react';
|
|
12
12
|
import { useTranslation } from 'react-i18next';
|
|
13
|
-
import {
|
|
13
|
+
import { transformCss } from '../../css';
|
|
14
14
|
import { useLegalMove, useLegalMoves, useMaterialContext, useUndo } from '../../hooks';
|
|
15
15
|
import { useTutorialStep } from '../../hooks/useTutorialStep';
|
|
16
16
|
import { PlayMoveButton, ThemeButton } from '../buttons';
|
|
@@ -56,9 +56,9 @@ export const MaterialTutorialDisplay = () => {
|
|
|
56
56
|
sizeCss(popup?.size),
|
|
57
57
|
theme.tutorial?.container
|
|
58
58
|
], backdropCss: backdropCss, children: popup &&
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
59
|
+
_jsxs("div", { css: [rules, theme.tutorial?.content], children: [passMove && _jsxs(PlayMoveButton, { move: passMove, css: passButton, children: [tCommon('Pass'), "\u00A0", _jsx(FontAwesomeIcon, { icon: faForwardFast })] }), _jsx("p", { children: popup.text(t, game) }), _jsxs("p", { css: buttonsLine, children: [_jsxs(ThemeButton, { disabled: !canUndoLastMove, onClick: () => undo(), children: [_jsx(FontAwesomeIcon, { icon: faBackward }), "\u00A0", tCommon('Previous')] }), closeTutorialPopup ?
|
|
60
|
+
_jsxs(PlayMoveButton, { move: closeTutorialPopup, children: [tCommon('OK'), "\u00A0", _jsx(FontAwesomeIcon, { icon: faPlay })] })
|
|
61
|
+
: _jsxs(PlayMoveButton, { move: nextStepMove, disabled: !nextStepMove, children: [tCommon('Next'), "\u00A0", _jsx(FontAwesomeIcon, { icon: faForward })] })] })] }) }));
|
|
62
62
|
};
|
|
63
63
|
const rules = css `
|
|
64
64
|
margin: 0 1em;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,
|
|
1
|
+
{"version":3,"file":"MaterialTutorialDisplay.js","sourceRoot":"","sources":["../../../src/components/tutorial/MaterialTutorialDisplay.tsx"],"names":[],"mappings":"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"}
|
package/dist/css/GameTheme.d.ts
CHANGED
|
@@ -45,6 +45,14 @@ export interface DialogTheme {
|
|
|
45
45
|
closeAnimation?: Interpolation<GameTheme>;
|
|
46
46
|
navigation?: ComponentType<DialogNavigationProps>;
|
|
47
47
|
navigationCss?: Interpolation<GameTheme>;
|
|
48
|
+
/**
|
|
49
|
+
* Optional override applied to every <button> rendered inside a
|
|
50
|
+
* Dialog (rules / help / confirmation / tutorial). When defined,
|
|
51
|
+
* shadows theme.buttons for the dialog subtree, so games can have
|
|
52
|
+
* a different button look in dialogs than on the rest of the UI.
|
|
53
|
+
* Falls back to theme.buttons when undefined.
|
|
54
|
+
*/
|
|
55
|
+
buttons?: Interpolation<GameTheme>;
|
|
48
56
|
}
|
|
49
57
|
export interface PaletteTheme {
|
|
50
58
|
primary: string;
|
package/dist/css/GameTheme.js
CHANGED
|
@@ -30,6 +30,10 @@ export const defaultTheme = {
|
|
|
30
30
|
dropArea: {
|
|
31
31
|
backgroundColor: 'rgba(0, 255, 0, 0.5)'
|
|
32
32
|
},
|
|
33
|
+
// theme.buttons is intentionally left undefined: each consumer
|
|
34
|
+
// (Header, Dialog, ...) layers its own structural defaults below
|
|
35
|
+
// the game override, so a missing theme.buttons must NOT spread a
|
|
36
|
+
// generic recipe everywhere.
|
|
33
37
|
palette: defaultPalette
|
|
34
38
|
};
|
|
35
39
|
//# sourceMappingURL=GameTheme.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameTheme.js","sourceRoot":"","sources":["../../src/css/GameTheme.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,gBAAgB,CAAC,wHAAwH,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"GameTheme.js","sourceRoot":"","sources":["../../src/css/GameTheme.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAErD,gBAAgB,CAAC,wHAAwH,CAAC,CAAA;AAuH1I,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,SAAS;IACvB,aAAa,EAAE,SAAS;IACxB,YAAY,EAAE,SAAS;IACvB,cAAc,EAAE,SAAS;IACzB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,SAAS;IACpB,cAAc,EAAE,SAAS;IACzB,eAAe,EAAE,SAAS;IAC1B,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,SAAS;IACtB,YAAY,EAAE,SAAS;IACvB,QAAQ,EAAE,SAAS;CACpB,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAc;IACrC,IAAI,EAAE;QACJ,UAAU,EAAE,QAAQ;QACpB,UAAU,EAAE;YACV,KAAK,EAAE,iBAAiB;YACxB,OAAO,EAAE,oBAAoB;SAC9B;KACF;IACD,MAAM,EAAE;QACN,eAAe,EAAE,SAAS;QAC1B,KAAK,EAAE,SAAS;KACjB;IACD,QAAQ,EAAE;QACR,eAAe,EAAE,sBAAsB;KACxC;IACD,+DAA+D;IAC/D,iEAAiE;IACjE,kEAAkE;IAClE,6BAA6B;IAC7B,OAAO,EAAE,cAAc;CACxB,CAAA"}
|
|
@@ -82,10 +82,11 @@ export const useFlatHistory = () => {
|
|
|
82
82
|
idleCallbackId.current = null;
|
|
83
83
|
pendingMoves.current = [];
|
|
84
84
|
processingIndex.current = 0;
|
|
85
|
+
setLoaded(true);
|
|
85
86
|
}
|
|
86
87
|
};
|
|
87
88
|
useEffect(() => {
|
|
88
|
-
if (playedMoves !== undefined && !isLoaded)
|
|
89
|
+
if (playedMoves !== undefined && playedMoves.length === 0 && !isLoaded)
|
|
89
90
|
setLoaded(true);
|
|
90
91
|
}, [playedMoves]);
|
|
91
92
|
useEffect(() => {
|
|
@@ -104,6 +105,8 @@ export const useFlatHistory = () => {
|
|
|
104
105
|
const entries = processMovesSync(newMoves, actualSize, engine.current, playedMovesRef.current, ctx);
|
|
105
106
|
setHistory((h) => h.concat(entries));
|
|
106
107
|
moves.current = playedMoves;
|
|
108
|
+
if (!isLoaded)
|
|
109
|
+
setLoaded(true);
|
|
107
110
|
}
|
|
108
111
|
else {
|
|
109
112
|
pendingMoves.current = newMoves;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFlatHistory.js","sourceRoot":"","sources":["../../src/hooks/useFlatHistory.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useFlatHistory.js","sourceRoot":"","sources":["../../src/hooks/useFlatHistory.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": "7.7.
|
|
3
|
+
"version": "7.7.12",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "React components & tools to create a Board Game user interface for Game Park",
|
|
6
6
|
"author": "Romain Fromi <romain@game-park.com> (https://game-park.com/)",
|