@gamepark/react-game 7.5.10 → 7.5.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/MaterialHeader.js +4 -2
- package/dist/components/Header/MaterialHeader.js.map +1 -1
- package/dist/components/Scoring/ScoringDescription.d.ts +2 -1
- package/dist/components/dialogs/Dialog.js +27 -1
- package/dist/components/dialogs/Dialog.js.map +1 -1
- package/dist/components/dialogs/ResultDialog/ResultDialog.js +2 -1
- package/dist/components/dialogs/ResultDialog/ResultDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/BottomBarNavigation.d.ts +3 -0
- package/dist/components/dialogs/RulesDialog/BottomBarNavigation.js +80 -0
- package/dist/components/dialogs/RulesDialog/BottomBarNavigation.js.map +1 -0
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js +13 -5
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +25 -5
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.js +2 -1
- package/dist/components/dialogs/RulesDialog/RulesDialog.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/index.d.ts +1 -0
- package/dist/components/dialogs/RulesDialog/index.js +1 -0
- package/dist/components/dialogs/RulesDialog/index.js.map +1 -1
- package/dist/components/material/DraggableMaterial.js +4 -3
- package/dist/components/material/DraggableMaterial.js.map +1 -1
- package/dist/components/material/MaterialDescription.js +1 -1
- package/dist/components/material/animations/CreateItemAnimations.js +15 -56
- package/dist/components/material/animations/CreateItemAnimations.js.map +1 -1
- package/dist/components/material/animations/ItemAnimations.js +1 -1
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js +2 -1
- package/dist/components/menus/TimeStatsButton/TimeStatsButton.js.map +1 -1
- package/dist/css/GameTheme.d.ts +14 -0
- package/dist/css/GameTheme.js.map +1 -1
- package/dist/hooks/useLegalMoves.d.ts +6 -1
- package/dist/hooks/useLegalMoves.js +5 -2
- package/dist/hooks/useLegalMoves.js.map +1 -1
- package/package.json +2 -2
|
@@ -44,10 +44,12 @@ const MaterialHeaderContent = ({ loading, rulesStepsHeaders, GameOver, GameOverR
|
|
|
44
44
|
};
|
|
45
45
|
const GameOverHeader = ({ GameOverRule }) => {
|
|
46
46
|
const resultText = useResultText();
|
|
47
|
+
const context = useContext(gameContext);
|
|
47
48
|
const [dialogOpen, setDialogOpen] = useState(false);
|
|
49
|
+
const ResultHeader = context.scoring?.ResultHeader;
|
|
48
50
|
if (!GameOverRule)
|
|
49
|
-
return _jsx(_Fragment, { children: resultText });
|
|
50
|
-
return _jsxs(_Fragment, { children: [_jsxs("span", { children: [resultText, "\u00A0", _jsx(FontAwesomeIcon, { icon: faCircleQuestion, onClick: () => setDialogOpen(true), css: pointerCursorCss })] }), _jsx(RulesDialog, { open: dialogOpen, close: () => setDialogOpen(false), children: _jsx(GameOverRule, {}) })] });
|
|
51
|
+
return ResultHeader ? _jsx(ResultHeader, {}) : _jsx(_Fragment, { children: resultText });
|
|
52
|
+
return _jsxs(_Fragment, { children: [_jsxs("span", { children: [ResultHeader ? _jsx(ResultHeader, {}) : resultText, "\u00A0", _jsx(FontAwesomeIcon, { icon: faCircleQuestion, onClick: () => setDialogOpen(true), css: pointerCursorCss })] }), _jsx(RulesDialog, { open: dialogOpen, close: () => setDialogOpen(false), children: _jsx(GameOverRule, {}) })] });
|
|
51
53
|
};
|
|
52
54
|
const ShowVictoryClaim = () => {
|
|
53
55
|
const { t } = useTranslation('common');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialHeader.js","sourceRoot":"","sources":["../../../src/components/Header/MaterialHeader.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MaterialHeader.js","sourceRoot":"","sources":["../../../src/components/Header/MaterialHeader.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Rules } from '@gamepark/rules-api';
|
|
2
|
-
import { ReactElement } from 'react';
|
|
2
|
+
import { ComponentType, ReactElement } from 'react';
|
|
3
3
|
export type ScoringValue = string | number | ReactElement;
|
|
4
4
|
export interface ScoringDescription<Player extends number = number, GameRule extends Rules = Rules, Key = any> {
|
|
5
5
|
getScoringKeys(rules: GameRule): Key[];
|
|
6
6
|
getScoringHeader(key: Key, rules: GameRule): ScoringValue;
|
|
7
7
|
getScoringPlayerData(key: Key, player: Player, rules: GameRule): ScoringValue | null;
|
|
8
|
+
ResultHeader?: ComponentType;
|
|
8
9
|
}
|
|
@@ -27,7 +27,7 @@ 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
|
-
return createPortal(_jsx("div", { css: [backdropStyle(transitionDelay), !open && hide(transitionDelay), backdropCss], onClick: event => !justDisplayed && onBackdropClick?.(event), children: _jsx("div", { onClick: event => event.stopPropagation(), css: [dialogCss, theme.dialog.container], ...props, children: children }) }), root);
|
|
30
|
+
return createPortal(_jsx("div", { css: [backdropStyle(transitionDelay), !open && hide(transitionDelay), backdropCss], onClick: event => !justDisplayed && onBackdropClick?.(event), children: _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 }) }), root);
|
|
31
31
|
};
|
|
32
32
|
const fadeIn = keyframes `
|
|
33
33
|
from {
|
|
@@ -64,6 +64,32 @@ const hide = (transitionDelay) => css `
|
|
|
64
64
|
animation: ${fadeOut} ${transitionDelay}s forwards;
|
|
65
65
|
pointer-events: none;
|
|
66
66
|
`;
|
|
67
|
+
const scaleIn = keyframes `
|
|
68
|
+
from {
|
|
69
|
+
opacity: 0;
|
|
70
|
+
scale: 0.92;
|
|
71
|
+
}
|
|
72
|
+
to {
|
|
73
|
+
opacity: 1;
|
|
74
|
+
scale: 1;
|
|
75
|
+
}
|
|
76
|
+
`;
|
|
77
|
+
const scaleOut = keyframes `
|
|
78
|
+
from {
|
|
79
|
+
opacity: 1;
|
|
80
|
+
scale: 1;
|
|
81
|
+
}
|
|
82
|
+
to {
|
|
83
|
+
opacity: 0;
|
|
84
|
+
scale: 0.92;
|
|
85
|
+
}
|
|
86
|
+
`;
|
|
87
|
+
const dialogShow = (transitionDelay) => css `
|
|
88
|
+
animation: ${scaleIn} ${transitionDelay}s ease-out forwards;
|
|
89
|
+
`;
|
|
90
|
+
const dialogHide = (transitionDelay) => css `
|
|
91
|
+
animation: ${scaleOut} ${transitionDelay}s ease-in forwards;
|
|
92
|
+
`;
|
|
67
93
|
const dialogCss = css `
|
|
68
94
|
position: relative;
|
|
69
95
|
background-color: var(--gp-dialog-bg);
|
|
@@ -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;AACxE,OAAO,EAAqC,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAUxC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,GAAG,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE;IACxI,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5C,wIAAwI;IACxI,mJAAmJ;IACnJ,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,IAAI,CAAC,CAAA;YAChB,gBAAgB,CAAC,IAAI,CAAC,CAAA;YACtB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;YAC9D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC,CAAA;YAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAA;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,qEAAqE,EAAE,MAAM,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,YAAY,CACjB,cAAK,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,IAAI,eAAe,EAAE,CAAC,KAAK,CAAC,YACnJ,cAAK,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,KAAK,
|
|
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;AACxE,OAAO,EAAqC,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAUxC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,GAAG,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,KAAK,EAAe,EAAE,EAAE;IACxI,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5C,wIAAwI;IACxI,mJAAmJ;IACnJ,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEzD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,CAAC;YACT,UAAU,CAAC,IAAI,CAAC,CAAA;YAChB,gBAAgB,CAAC,IAAI,CAAC,CAAA;YACtB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAA;YAC9D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC,CAAA;YAC3E,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAA;IAE3B,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAA;IAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,qEAAqE,EAAE,MAAM,CAAC,CAAA;QAC5F,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,YAAY,CACjB,cAAK,GAAG,EAAE,CAAC,aAAa,CAAC,eAAe,CAAC,EAAE,CAAC,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,aAAa,IAAI,eAAe,EAAE,CAAC,KAAK,CAAC,YACnJ,cAAK,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,KAAM,KAAK,YACnO,QAAQ,GACL,GACF,EACN,IAAI,CACL,CAAA;AACH,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,SAAS,CAAA;;;;;;;CAOvB,CAAA;AAED,MAAM,OAAO,GAAG,SAAS,CAAA;;;;;;;CAOxB,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,eAAuB,EAAE,EAAE,CAAC,GAAG,CAAA;;;;;;;;;wBAS9B,eAAe;eACxB,MAAM,IAAI,eAAe;;;;CAIvC,CAAA;AAED,MAAM,IAAI,GAAG,CAAC,eAAuB,EAAE,EAAE,CAAC,GAAG,CAAA;eAC9B,OAAO,IAAI,eAAe;;CAExC,CAAA;AAED,MAAM,OAAO,GAAG,SAAS,CAAA;;;;;;;;;CASxB,CAAA;AAED,MAAM,QAAQ,GAAG,SAAS,CAAA;;;;;;;;;CASzB,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,eAAuB,EAAE,EAAE,CAAC,GAAG,CAAA;eACpC,OAAO,IAAI,eAAe;CACxC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,eAAuB,EAAE,EAAE,CAAC,GAAG,CAAA;eACpC,QAAQ,IAAI,eAAe;CACzC,CAAA;AAED,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;;CAOpB,CAAA"}
|
|
@@ -32,7 +32,8 @@ export const ResultDialog = ({ openDialog, close, ...props }) => {
|
|
|
32
32
|
const scoringCells = useScoringHeader();
|
|
33
33
|
let row = (gameMode === GameMode.TOURNAMENT ? 3 : gameMode === GameMode.COMPETITIVE ? 2 : 1) + (scoringCells?.length ?? 0);
|
|
34
34
|
const resultText = useResultText();
|
|
35
|
-
|
|
35
|
+
const CloseButton = theme.dialog.closeButton;
|
|
36
|
+
return (_jsxs(Dialog, { onBackdropClick: close, css: [style, theme.result?.container], ...props, children: [CloseButton ? _jsx(CloseButton, { onClick: close }) : _jsx(FontAwesomeIcon, { icon: faXmark, css: [closeIcon, theme.result?.closeIcon], onClick: close }), _jsxs("div", { css: scrollableContent, children: [_jsx("h2", { children: context.scoring?.ResultHeader ? _jsx(context.scoring.ResultHeader, {}) : resultText }), _jsxs("div", { css: buttonLine, children: [gameMode === GameMode.TOURNAMENT && tournament ?
|
|
36
37
|
_jsx(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${context.game}/tournaments/${tournament.number}`, children: t('result.tournament.link') })
|
|
37
38
|
:
|
|
38
39
|
_jsx(NavButton, { url: `${PLATFORM_URI}/${locale}/board-games/${context.game}`, children: t('Back to Game Park') }), gameMode === GameMode.COMPETITIVE &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ResultDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/ResultDialog/ResultDialog.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,QAAQ,EAAE,MAAM,4CAA4C,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AACzE,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AAOtE,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;AACzD,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAA;AAC1C,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;AAGhC,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,KAAK,EAAS,EAAE,EAAE;IACrE,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACtC,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;IACxC,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAA;IACvC,MAAM,KAAK,GAAG,QAAQ,EAAG,CAAA;IACzB,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC3D,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC/D,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAA;IACvC,IAAI,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC,CAAA;IAE1H,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;IAClC,OAAO,CACL,MAAC,MAAM,IAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,KAAM,KAAK,
|
|
1
|
+
{"version":3,"file":"ResultDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/ResultDialog/ResultDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
|
+
/** @jsxImportSource @emotion/react */
|
|
3
|
+
import { css, useTheme } from '@emotion/react';
|
|
4
|
+
import { faChevronLeft } from '@fortawesome/free-solid-svg-icons/faChevronLeft';
|
|
5
|
+
import { faChevronRight } from '@fortawesome/free-solid-svg-icons/faChevronRight';
|
|
6
|
+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
7
|
+
import { useTranslation } from 'react-i18next';
|
|
8
|
+
export const BottomBarNavigation = ({ onPrevious, onNext, currentIndex, total }) => {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
const theme = useTheme();
|
|
11
|
+
const primary = theme.palette.primary;
|
|
12
|
+
return (_jsxs("div", { css: [barCss(primary), theme.dialog.navigationCss], children: [_jsxs("button", { css: btnCss(primary), onClick: onPrevious, disabled: !onPrevious, children: [_jsx(FontAwesomeIcon, { icon: faChevronLeft, css: iconCss }), _jsx("span", { children: t('navigation.previous', 'Previous') })] }), _jsxs("div", { css: counterCss, children: [_jsx("div", { css: dotsCss, children: Array.from({ length: Math.min(total, 8) }, (_, i) => (_jsx("div", { css: [dotCss(primary), i === Math.min(currentIndex, 7) && activeDotCss(primary)] }, i))) }), _jsxs("span", { children: [currentIndex + 1, " / ", total] })] }), _jsxs("button", { css: btnCss(primary), onClick: onNext, disabled: !onNext, children: [_jsx("span", { children: t('navigation.next', 'Next') }), _jsx(FontAwesomeIcon, { icon: faChevronRight, css: iconCss })] })] }));
|
|
13
|
+
};
|
|
14
|
+
const barCss = (primary) => css `
|
|
15
|
+
display: flex;
|
|
16
|
+
align-items: center;
|
|
17
|
+
justify-content: space-between;
|
|
18
|
+
font-size: 2.4em;
|
|
19
|
+
padding: 0.3em 1em;
|
|
20
|
+
border-top: 1px solid color-mix(in srgb, ${primary} 8%, transparent);
|
|
21
|
+
background: linear-gradient(to top, color-mix(in srgb, ${primary} 4%, transparent), transparent);
|
|
22
|
+
`;
|
|
23
|
+
const btnCss = (primary) => css `
|
|
24
|
+
display: flex;
|
|
25
|
+
align-items: center;
|
|
26
|
+
gap: 0.4em;
|
|
27
|
+
padding: 0.4em 0.9em;
|
|
28
|
+
border-radius: 2em;
|
|
29
|
+
font-size: 0.78em;
|
|
30
|
+
font-weight: 600;
|
|
31
|
+
font-family: inherit;
|
|
32
|
+
color: ${primary};
|
|
33
|
+
background: transparent;
|
|
34
|
+
border: 1.5px solid color-mix(in srgb, ${primary} 25%, transparent);
|
|
35
|
+
cursor: pointer;
|
|
36
|
+
transition: all 0.15s;
|
|
37
|
+
|
|
38
|
+
&:hover:not(:disabled) {
|
|
39
|
+
background: color-mix(in srgb, ${primary} 10%, transparent);
|
|
40
|
+
border-color: ${primary};
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
&:active:not(:disabled) {
|
|
44
|
+
background: color-mix(in srgb, ${primary} 18%, transparent);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&:disabled {
|
|
48
|
+
opacity: 0.25;
|
|
49
|
+
cursor: default;
|
|
50
|
+
}
|
|
51
|
+
`;
|
|
52
|
+
const iconCss = css `
|
|
53
|
+
font-size: 0.9em;
|
|
54
|
+
`;
|
|
55
|
+
const counterCss = css `
|
|
56
|
+
font-size: 0.75em;
|
|
57
|
+
color: inherit;
|
|
58
|
+
opacity: 0.7;
|
|
59
|
+
display: flex;
|
|
60
|
+
align-items: center;
|
|
61
|
+
gap: 0.5em;
|
|
62
|
+
font-weight: 600;
|
|
63
|
+
`;
|
|
64
|
+
const dotsCss = css `
|
|
65
|
+
display: flex;
|
|
66
|
+
gap: 0.3em;
|
|
67
|
+
`;
|
|
68
|
+
const dotCss = (primary) => css `
|
|
69
|
+
width: 0.35em;
|
|
70
|
+
height: 0.35em;
|
|
71
|
+
border-radius: 50%;
|
|
72
|
+
background: color-mix(in srgb, ${primary} 35%, transparent);
|
|
73
|
+
transition: all 0.2s;
|
|
74
|
+
`;
|
|
75
|
+
const activeDotCss = (primary) => css `
|
|
76
|
+
background: ${primary};
|
|
77
|
+
width: 1em;
|
|
78
|
+
border-radius: 0.2em;
|
|
79
|
+
`;
|
|
80
|
+
//# sourceMappingURL=BottomBarNavigation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BottomBarNavigation.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/BottomBarNavigation.tsx"],"names":[],"mappings":";AAAA,sCAAsC;AACtC,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAA;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAG9C,MAAM,CAAC,MAAM,mBAAmB,GAA8B,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE;IAC5G,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAA;IAC9B,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAA;IACrC,OAAO,CACL,eAAK,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,aACrD,kBAAQ,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,UAAU,aACtE,KAAC,eAAe,IAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,OAAO,GAAG,EACrD,yBAAO,CAAC,CAAC,qBAAqB,EAAE,UAAU,CAAC,GAAQ,IAC5C,EACT,eAAK,GAAG,EAAE,UAAU,aAClB,cAAK,GAAG,EAAE,OAAO,YACd,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACpD,cAAa,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,IAAnF,CAAC,CAAqF,CACjG,CAAC,GACE,EACN,2BAAO,YAAY,GAAG,CAAC,SAAK,KAAK,IAAQ,IACrC,EACN,kBAAQ,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,aAC9D,yBAAO,CAAC,CAAC,iBAAiB,EAAE,MAAM,CAAC,GAAQ,EAC3C,KAAC,eAAe,IAAC,IAAI,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,GAAG,IAC/C,IACL,CACP,CAAA;AACH,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,CAAA;;;;;;6CAMM,OAAO;2DACO,OAAO;CACjE,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,CAAA;;;;;;;;;WAS5B,OAAO;;2CAEyB,OAAO;;;;;qCAKb,OAAO;oBACxB,OAAO;;;;qCAIU,OAAO;;;;;;;CAO3C,CAAA;AAED,MAAM,OAAO,GAAG,GAAG,CAAA;;CAElB,CAAA;AAED,MAAM,UAAU,GAAG,GAAG,CAAA;;;;;;;;CAQrB,CAAA;AAED,MAAM,OAAO,GAAG,GAAG,CAAA;;;CAGlB,CAAA;AAED,MAAM,MAAM,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,CAAA;;;;mCAIJ,OAAO;;CAEzC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,CAAA;gBAC7B,OAAO;;;CAGtB,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
2
2
|
import { css } from '@emotion/react';
|
|
3
3
|
import { HelpDisplayType } from '@gamepark/rules-api';
|
|
4
|
+
import { useEffect, useState } from 'react';
|
|
4
5
|
import { useGame } from '../../../hooks';
|
|
5
6
|
import { RulesDialog } from '../index';
|
|
6
7
|
import { LocationRulesDialogContent } from './LocationRulesDialogContent';
|
|
@@ -8,12 +9,19 @@ import { MaterialRulesDialogContent } from './MaterialRulesDialogContent';
|
|
|
8
9
|
import { RulesHelpDialogContent } from './RulesHelpDialogContent';
|
|
9
10
|
export const MaterialRulesDialog = (props) => {
|
|
10
11
|
const game = useGame();
|
|
11
|
-
|
|
12
|
+
const [lastHelpDisplay, setLastHelpDisplay] = useState(game?.helpDisplay);
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
if (game?.helpDisplay) {
|
|
15
|
+
setLastHelpDisplay(game.helpDisplay);
|
|
16
|
+
}
|
|
17
|
+
}, [game?.helpDisplay]);
|
|
18
|
+
const helpDisplay = game?.helpDisplay ?? lastHelpDisplay;
|
|
19
|
+
if (!helpDisplay)
|
|
12
20
|
return null;
|
|
13
|
-
return (_jsxs(RulesDialog, { ...props, css: inlineImg, children: [
|
|
14
|
-
_jsx(MaterialRulesDialogContent, { helpDisplay:
|
|
15
|
-
_jsx(LocationRulesDialogContent, { helpDisplay:
|
|
16
|
-
_jsx(RulesHelpDialogContent, { helpDisplay:
|
|
21
|
+
return (_jsxs(RulesDialog, { ...props, css: inlineImg, children: [helpDisplay.type === HelpDisplayType.Material &&
|
|
22
|
+
_jsx(MaterialRulesDialogContent, { helpDisplay: helpDisplay }), helpDisplay.type === HelpDisplayType.Location &&
|
|
23
|
+
_jsx(LocationRulesDialogContent, { helpDisplay: helpDisplay }), helpDisplay.type === HelpDisplayType.Rules &&
|
|
24
|
+
_jsx(RulesHelpDialogContent, { helpDisplay: helpDisplay })] }));
|
|
17
25
|
};
|
|
18
26
|
const inlineImg = css `
|
|
19
27
|
p img, li img, h2 img, h3 img, h4 img {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialRulesDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"MaterialRulesDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,EAAe,eAAe,EAAgB,MAAM,qBAAqB,CAAA;AAChF,OAAO,EAAM,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAoB,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AAEjE,MAAM,CAAC,MAAM,mBAAmB,GAAyB,CAAC,KAAuB,EAAE,EAAE;IACnF,MAAM,IAAI,GAAG,OAAO,EAAgB,CAAA;IACpC,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAA0B,IAAI,EAAE,WAAW,CAAC,CAAA;IAElG,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,IAAI,EAAE,WAAW,EAAE,CAAC;YACtB,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;QACtC,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;IAEvB,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,IAAI,eAAe,CAAA;IACxD,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IAE7B,OAAO,CACL,MAAC,WAAW,OAAK,KAAK,EAAE,GAAG,EAAE,SAAS,aACnC,WAAW,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ;gBAC5C,KAAC,0BAA0B,IAAC,WAAW,EAAE,WAAW,GAAG,EAExD,WAAW,CAAC,IAAI,KAAK,eAAe,CAAC,QAAQ;gBAC5C,KAAC,0BAA0B,IAAC,WAAW,EAAE,WAAW,GAAG,EAExD,WAAW,CAAC,IAAI,KAAK,eAAe,CAAC,KAAK;gBACzC,KAAC,sBAAsB,IAAC,WAAW,EAAE,WAAW,GAAG,IAEzC,CACf,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;CAMpB,CAAA"}
|
|
@@ -31,15 +31,17 @@ const useMaterialNavigation = (helpDisplay, context) => {
|
|
|
31
31
|
useKeyDown('ArrowLeft', () => previousMove ? play(previousMove, { local: true }) : undefined);
|
|
32
32
|
const materialIndexes = useMemo(() => material?.getIndexes(), [material]);
|
|
33
33
|
if (!material || !materialIndexes)
|
|
34
|
-
return { previous: undefined, next: undefined };
|
|
34
|
+
return { previous: undefined, next: undefined, currentIndex: 0, total: 0 };
|
|
35
35
|
const currentIndex = materialIndexes.indexOf(helpDisplay.itemIndex);
|
|
36
36
|
const previous = material.index(materialIndexes[currentIndex - 1]);
|
|
37
37
|
const next = material.index(materialIndexes[currentIndex + 1]);
|
|
38
38
|
const previousMove = previous.length ? displayMaterialHelp(helpDisplay.itemType, previous.getItem(), previous.getIndex()) : undefined;
|
|
39
39
|
const nextMove = next.length ? displayMaterialHelp(helpDisplay.itemType, next.getItem(), next.getIndex()) : undefined;
|
|
40
40
|
return {
|
|
41
|
-
previous:
|
|
42
|
-
next:
|
|
41
|
+
previous: previousMove,
|
|
42
|
+
next: nextMove,
|
|
43
|
+
currentIndex,
|
|
44
|
+
total: materialIndexes.length
|
|
43
45
|
};
|
|
44
46
|
};
|
|
45
47
|
export const MaterialRulesDialogContent = ({ helpDisplay }) => {
|
|
@@ -48,14 +50,20 @@ export const MaterialRulesDialogContent = ({ helpDisplay }) => {
|
|
|
48
50
|
const context = useMaterialContext();
|
|
49
51
|
const description = useMaterialDescription(helpDisplay.itemType);
|
|
50
52
|
const itemContext = { ...context, type: helpDisplay.itemType, index: helpDisplay.itemIndex, displayIndex: helpDisplay.displayIndex };
|
|
51
|
-
const { previous, next } = useMaterialNavigation(helpDisplay, itemContext);
|
|
53
|
+
const { previous, next, currentIndex, total } = useMaterialNavigation(helpDisplay, itemContext);
|
|
52
54
|
const closeDialog = () => play(displayHelp(undefined), { transient: true });
|
|
53
55
|
useKeyDown('Escape', closeDialog);
|
|
54
56
|
if (!description)
|
|
55
57
|
return null;
|
|
56
58
|
const item = helpDisplay.item;
|
|
57
59
|
const hasNavigation = previous || next;
|
|
58
|
-
|
|
60
|
+
const Navigation = theme.dialog.navigation;
|
|
61
|
+
const onPrevious = previous ? () => play(previous, { transient: true }) : undefined;
|
|
62
|
+
const onNext = next ? () => play(next, { transient: true }) : undefined;
|
|
63
|
+
if (hasNavigation && Navigation) {
|
|
64
|
+
return _jsxs("div", { css: navigationWrapper, children: [_jsxs("div", { css: [flex, navigationContent], children: [_jsx(description.helpDisplay, { item: item, itemType: helpDisplay.itemType, itemIndex: helpDisplay.itemIndex, displayIndex: helpDisplay.displayIndex, closeDialog: closeDialog }), _jsx("div", { css: [helpDialogContentCss, theme.dialog.content], children: description.help && _jsx(description.help, { ...helpDisplay, closeDialog: closeDialog }) })] }), _jsx(Navigation, { onPrevious: onPrevious, onNext: onNext, currentIndex: currentIndex, total: total })] });
|
|
65
|
+
}
|
|
66
|
+
return _jsxs(_Fragment, { children: [_jsxs("div", { css: [flex, hasNavigation && fullSize], children: [_jsx(description.helpDisplay, { item: item, itemType: helpDisplay.itemType, itemIndex: helpDisplay.itemIndex, displayIndex: helpDisplay.displayIndex, closeDialog: closeDialog }), _jsx("div", { css: [helpDialogContentCss, theme.dialog.content], children: description.help && _jsx(description.help, { ...helpDisplay, closeDialog: closeDialog }) })] }), hasNavigation && _jsxs(_Fragment, { children: [previous && _jsx(PreviousArrow, { onPrevious: () => play(previous, { transient: true }) }), next && _jsx(NextArrow, { onNext: () => play(next, { transient: true }) })] })] });
|
|
59
67
|
};
|
|
60
68
|
const NextArrow = (props) => {
|
|
61
69
|
const { onNext } = props;
|
|
@@ -113,6 +121,18 @@ const nextArrow = css `
|
|
|
113
121
|
animation: ${nextAnimation} 0.2s forwards;
|
|
114
122
|
}
|
|
115
123
|
`;
|
|
124
|
+
const navigationWrapper = css `
|
|
125
|
+
display: flex;
|
|
126
|
+
flex-direction: column;
|
|
127
|
+
max-height: 85vh;
|
|
128
|
+
max-height: 85dvh;
|
|
129
|
+
width: 80vw;
|
|
130
|
+
width: 80dvw;
|
|
131
|
+
`;
|
|
132
|
+
const navigationContent = css `
|
|
133
|
+
flex: 1;
|
|
134
|
+
min-height: 0;
|
|
135
|
+
`;
|
|
116
136
|
const flex = css `
|
|
117
137
|
display: flex;
|
|
118
138
|
padding: 3em 1em 3em 3em;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialogContent.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iDAAiD,CAAA;AAC/E,OAAO,EAAE,cAAc,EAAE,MAAM,kDAAkD,CAAA;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAuB,mBAAmB,EAAiB,MAAM,qBAAqB,CAAA;AACjH,OAAO,EAAM,OAAO,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC1G,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAA;AAC/D,IAAO,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAA;AACpD,IAAO,mBAAmB,GAAG,mBAAmB,CAAC,mBAAmB,CAAA;AAMpE,MAAM,qBAAqB,GAAG,CAAkF,WAAgC,EAAE,OAA6B,EAAE,EAAE;IACjL,MAAM,KAAK,GAAG,QAAQ,EAAkB,CAAA;IACxC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAA;IACjC,MAAM,QAAQ,GAAG,WAAW,EAAG,CAAA;IAC/B,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IAAI,CAAC,QAAQ,CAAC,QAAQ;YAAE,OAAM;QAC9B,MAAM,kBAAkB,GAAG,KAAK;aAC7B,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC;aAC9B,QAAQ,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAS,CAAC,CAAC,CAAA;QAE3E,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAiC,CAAA;QAChF,MAAM,KAAK,GAAmB,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACxE,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAM;QACzB,OAAO,kBAAkB,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAA;IAC1C,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IAEhB,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACtF,UAAU,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAE7F,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEzE,IAAI,CAAC,QAAQ,IAAI,CAAC,eAAe;QAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"MaterialRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialogContent.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ import { onSurfaceButtonCss } from '../../../css';
|
|
|
6
6
|
import { Dialog } from '../index';
|
|
7
7
|
export const RulesDialog = ({ close, children, ...props }) => {
|
|
8
8
|
const theme = useTheme();
|
|
9
|
-
|
|
9
|
+
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 })), _jsx(ThemeProvider, { theme: theme => ({ ...theme, buttons: onSurfaceButtonCss }), children: children })] }));
|
|
10
11
|
};
|
|
11
12
|
const dialogCss = css `
|
|
12
13
|
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,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,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,OAAO,CACL,MAAC,MAAM,IAAC,eAAe,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,KAAM,KAAK,aACtD,KAAK,IAAI,KAAC,eAAe,IAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"RulesDialog.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/RulesDialog.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAEhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAA;AACjD,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,EAC5J,KAAC,aAAa,IAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,YACvE,QAAQ,GACK,IACT,CACV,CAAA;AACH,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,GAAG,CAAA;;;;;;CAMpB,CAAA;AAED,MAAM,eAAe,GAAG,GAAG,CAAA;;;;;;;CAO1B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,eAAe,CAAA"}
|
|
@@ -5,7 +5,7 @@ import { isMoveItemsAtOnce, isSelectItem } from '@gamepark/rules-api';
|
|
|
5
5
|
import { isEqual } from 'es-toolkit';
|
|
6
6
|
import { forwardRef, memo, useCallback, useEffect, useMemo, useRef, useState } from 'react';
|
|
7
7
|
import { grabbingCursor, grabCursor } from '../../css';
|
|
8
|
-
import { useMaterialContextRef, usePlay } from '../../hooks';
|
|
8
|
+
import { useLegalMoves, useMaterialContextRef, usePlay } from '../../hooks';
|
|
9
9
|
import { getLocationOriginCss } from '../../locators';
|
|
10
10
|
import { combineEventListeners, findIfUnique } from '../../utilities';
|
|
11
11
|
import { useScale } from './GameTable';
|
|
@@ -90,13 +90,14 @@ const DraggableMaterialInnerBase = forwardRef(({ highlight, type, index, display
|
|
|
90
90
|
};
|
|
91
91
|
}
|
|
92
92
|
}, [itemContext, play, legalMoves]);
|
|
93
|
+
const legalMovesForLongClick = useLegalMoves({ includeDuringAnimations: true });
|
|
93
94
|
const onLongClickMove = useMemo(() => {
|
|
94
95
|
if (unselect || onShortClickMove)
|
|
95
96
|
return;
|
|
96
|
-
const move = findIfUnique(
|
|
97
|
+
const move = findIfUnique(legalMovesForLongClick, move => description.canLongClick(move, itemContext));
|
|
97
98
|
if (move !== undefined)
|
|
98
99
|
return () => play(move);
|
|
99
|
-
}, [itemContext, play,
|
|
100
|
+
}, [itemContext, play, legalMovesForLongClick]);
|
|
100
101
|
const hadMenu = useRef(!!menu);
|
|
101
102
|
useEffect(() => {
|
|
102
103
|
if (hadMenu.current && !menu && !menuAlwaysVisible && item.selected) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DraggableMaterial.js","sourceRoot":"","sources":["../../../src/components/material/DraggableMaterial.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAiC,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC1F,OAAO,EAAE,GAAG,EAAwB,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAiC,iBAAiB,EAAE,YAAY,EAA6C,MAAM,qBAAqB,CAAA;AAC/I,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAc,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtD,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"DraggableMaterial.js","sourceRoot":"","sources":["../../../src/components/material/DraggableMaterial.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAiC,aAAa,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC1F,OAAO,EAAE,GAAG,EAAwB,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAiC,iBAAiB,EAAE,YAAY,EAA6C,MAAM,qBAAqB,CAAA;AAC/I,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAc,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAClG,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAEtD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAC3E,OAAO,EAAE,oBAAoB,EAAe,MAAM,gBAAgB,CAAA;AAClE,OAAO,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAgBvD,SAAS,aAAa,CAAC,IAA4B,EAAE,IAA4B;IAC/E,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,YAAY;QAAE,OAAO,KAAK,CAAA;IACjH,oDAAoD;IACpD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAA;IAChE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAA;IAChD,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAA;IACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC;QAAE,OAAO,KAAK,CAAA;IAC5D,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACnD,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAA;IACrD,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACnD,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAA;IAC3C,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAA;IACnD,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI;QAAE,OAAO,KAAK,CAAA;IACzC,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAA;IAC/C,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,qBAAqB,GAAG,CAC5B,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,EAA6B,EACxH,EAAE;IACF,MAAM,aAAa,GAAkB,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;IAChH,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,IAAI,KAAK,IAAI,YAAY,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAA;IAEhJ,OAAO,KAAC,sBAAsB,IAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,IAAI,SAAS,EAAE,QAAQ,EAAE,QAAQ,EACtE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAChE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAC5C,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,KACxB,KAAK,KAAM,UAAU,KACrB,qBAAqB,CAAC,SAAS,IAAI,EAAE,EAAE,KAAK,CAAC,GAAG,CAAA;AACrF,CAAC,CAAA;AACD,qBAAqB,CAAC,WAAW,GAAG,mBAAmB,CAAA;AAEvD,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,EAAE,aAAa,CAA+F,CAAA;AAMzK,MAAM,0BAA0B,GAAG,UAAU,CAA8C,CACzF,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,KAAK,EAA+B,EAAE,GAAG,EACzM,EAAE;IACF,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAA;IACvC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;IACnC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAE,CAAA;IACnC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAA;IACpH,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACpD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;IACnE,MAAM,iBAAiB,GAAG,WAAW,CAAC,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAA;IAE5E,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE;QAC5B,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,SAAS,GAAG,CAAC,IAAkB,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,KAAK,IAAI,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAA;YAC/J,IAAI,OAAO,CAAC,SAAS,CAAC;gBAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtD,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;IAEtC,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,MAAM,IAAI,GAAG,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;QAC3F,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,cAAc,GAAG,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAA;QACjE,IAAI,cAAc;YAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;QACrD,MAAM,mBAAmB,GAAG,WAAW,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAA;QAC3E,IAAI,mBAAmB;YAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;QAChF,IAAI,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC/B,OAAO,GAAG,EAAE;gBACV,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC7E,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBACzE,KAAK,MAAM,YAAY,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC;wBAC3E,IAAI,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;oBACzC,CAAC;gBACH,CAAC;YACH,CAAC,CAAA;QACH,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAA;IAEnC,MAAM,sBAAsB,GAAG,aAAa,CAAe,EAAE,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7F,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE;QACnC,IAAI,QAAQ,IAAI,gBAAgB;YAAE,OAAM;QACxC,MAAM,IAAI,GAAG,YAAY,CAAC,sBAAsB,EAAE,IAAI,CAAC,EAAE,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;QACtG,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjD,CAAC,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,sBAAsB,CAAC,CAAC,CAAA;IAE/C,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAC9B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QAC7E,CAAC;QACD,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,IAAI,CAAA;IAC1B,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;IAEX,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,EAAiB,CAAA;IAC/D,MAAM,kBAAkB,GAAG,OAAO,CAA0B,GAAG,EAAE,CAAC,WAAW,IAAI,EAAE,GAAG,OAAO,EAAE,GAAG,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;IACxI,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,kBAAkB;QACjE,CAAC,cAAc,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACpE,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAC,KAAK,CAAC;eACjI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAC3F,CAAC,EACF,CAAC,IAAI,EAAE,kBAAkB,EAAE,UAAU,CAAC,CAAC,CAAA;IAC3C,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,EAAiB,CAAA;IACvE,SAAS,GAAG,SAAS,IAAI,eAAe,CAAA;IAExC,sIAAsI;IACtI,qHAAqH;IACrH,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAA;YAC3D,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,kBAAkB,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;IACH,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IAEhB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAA;IACxB,MAAM,YAAY,GAAG,MAAM,CAAS,EAAE,CAAC,CAAA;IACvC,IAAI,SAAS,IAAI,CAAC,eAAe,EAAE,CAAC;QAClC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAA;QAC1B,YAAY,CAAC,OAAO,GAAG,eAAe,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;IAC5G,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAA;IAC1E,MAAM,cAAc,GAAG,SAAS,IAAI,gBAAgB,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,eAAe,CAAC,CAAA;IACvF,IAAI,CAAC,cAAc;QAAE,YAAY,CAAC,OAAO,GAAG,EAAE,CAAA;IAC9C,MAAM,SAAS,GAAG,aAAa,CAAA;IAE/B,wIAAwI;IACxI,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IACvD,SAAS,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAA;IAExD,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,KAAqB,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAA;IAC3J,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,KAAoB,EAAE,EAAE,CAAC,gBAAgB,IAAI,kBAAkB,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAA;IACjI,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,cAAc,CAAC,SAAS,CAAC,CAAA;QACzB,kBAAkB,CAAC,SAAS,CAAC,CAAA;IAC/B,CAAC,EAAE,EAAE,CAAC,CAAA;IACN,aAAa,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAA;IAErD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,EAAE,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;IAElH,OAAO,8BACL,KAAC,WAAW,IAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAC1E,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE;oBACH,iBAAiB;oBACjB,CAAC,cAAc,IAAI,CAAC,SAAS,IAAI,mBAAmB;oBACpD,CAAC,QAAQ,IAAI,aAAa;oBAC1B,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,UAAU,CAAC;oBACtD,mBAAmB;iBACpB,EACD,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,EAChE,SAAS,EAAE,SAAS,EACpB,SAAS,EAAE,SAAS,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,QAAQ,IAAI,gBAAgB,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS,CAAC,CAAC,KACpH,KAAK,EACT,YAAY,EAAE,QAAQ,IAAI,gBAAgB,EAAE,WAAW,EAAE,eAAe,GAAG,EACvF,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,QAAQ,CAAC;gBAC3C,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,KAAM,KAAK,EAAE,GAAG,EAAE,iBAAiB,YAAG,IAAI,GAAmB,IAE7I,CAAA;AACL,CAAC,CAAC,CAAA;AACF,0BAA0B,CAAC,WAAW,GAAG,wBAAwB,CAAA;AAEjE,MAAM,sBAAsB,GAAG,IAAI,CAAC,0BAA0B,CAAC,CAAA;AAE/D,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;;;CAM9B,CAAA;AAED,MAAM,aAAa,GAAG,GAAG,CAAA;;CAExB,CAAA;AAED,MAAM,mBAAmB,GAAG,GAAG,CAAA;;;;CAI9B,CAAA;AAED,MAAM,UAAU,mBAAmB,CAA4B,IAA0B;IACvF,OAAO,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,EAAE,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,EAAE,YAAY,KAAK,QAAQ,CAAA;AACpH,CAAC"}
|
|
@@ -240,7 +240,7 @@ export class MaterialDescription extends ComponentDescription {
|
|
|
240
240
|
getAnimationCss(animationKeyframes, duration) {
|
|
241
241
|
const elevationArc = getElevationKeyframes(defaultElevation);
|
|
242
242
|
return css `
|
|
243
|
-
animation: ${elevationArc} ${duration}s
|
|
243
|
+
animation: ${elevationArc} ${duration}s linear infinite;
|
|
244
244
|
|
|
245
245
|
> * {
|
|
246
246
|
animation: ${animationKeyframes} ${duration}s ease-in-out forwards;
|
|
@@ -1,29 +1,13 @@
|
|
|
1
1
|
import { keyframes } from '@emotion/react';
|
|
2
|
-
import { AnimationStep } from '@gamepark/react-client';
|
|
3
2
|
import { fadeIn } from '../../../css';
|
|
4
3
|
import { defaultOrigin, getItemFromContext, getOriginDeltaPosition } from '../../../locators';
|
|
5
4
|
import { getFirstStockItem, getFirstStockItemTransforms } from './getFirstStockItemTransforms.util';
|
|
6
5
|
import { ItemAnimations } from './ItemAnimations';
|
|
7
6
|
import { toClosestRotations, toSingleRotation } from './rotations.utils';
|
|
8
7
|
import { transformItem } from './transformItem.util';
|
|
9
|
-
//
|
|
10
|
-
//
|
|
11
|
-
|
|
12
|
-
const createdItemEntries = new Map();
|
|
13
|
-
function getConsequenceIndex(action) {
|
|
14
|
-
const step = action.animation?.step;
|
|
15
|
-
return (step === AnimationStep.BEFORE_MOVE || step === AnimationStep.AFTER_UNDO)
|
|
16
|
-
? action.played - 1
|
|
17
|
-
: action.played - 2;
|
|
18
|
-
}
|
|
19
|
-
function getOrCreateArray(map, key) {
|
|
20
|
-
let arr = map.get(key);
|
|
21
|
-
if (!arr) {
|
|
22
|
-
arr = [];
|
|
23
|
-
map.set(key, arr);
|
|
24
|
-
}
|
|
25
|
-
return arr;
|
|
26
|
-
}
|
|
8
|
+
// Pre-quantity snapshot captured synchronously between getPreDuration and getPostDuration
|
|
9
|
+
// within the same reducer call. No keying needed — only one CreateItem is processed at a time.
|
|
10
|
+
let pendingSnapshot;
|
|
27
11
|
export class CreateItemAnimations extends ItemAnimations {
|
|
28
12
|
duration;
|
|
29
13
|
trajectory;
|
|
@@ -35,22 +19,17 @@ export class CreateItemAnimations extends ItemAnimations {
|
|
|
35
19
|
getPreDuration(move, context) {
|
|
36
20
|
const rules = new context.Rules(context.game, { player: context.playerId });
|
|
37
21
|
const items = rules.game.items?.[move.itemType] ?? [];
|
|
38
|
-
|
|
39
|
-
getOrCreateArray(preQuantityQueue, key).push(items.map((item) => item.quantity));
|
|
22
|
+
pendingSnapshot = items.map((item) => item.quantity);
|
|
40
23
|
return 0;
|
|
41
24
|
}
|
|
42
25
|
getPostDuration(move, context) {
|
|
43
26
|
const rules = new context.Rules(context.game, { player: context.playerId });
|
|
44
27
|
const items = rules.game.items?.[move.itemType] ?? [];
|
|
45
|
-
const key = getConsequenceIndex(context.action);
|
|
46
|
-
const actionId = context.action.id;
|
|
47
28
|
// Start with the prediction — always available and correct except in simultaneous phases
|
|
48
29
|
let createdIndex = rules.mutator(move.itemType).getItemCreationIndex(move.item);
|
|
49
|
-
//
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
if (queue && queue.length === 0)
|
|
53
|
-
preQuantityQueue.delete(key);
|
|
30
|
+
// Improve with snapshot comparison: find the first item whose quantity increased
|
|
31
|
+
const snapshot = pendingSnapshot;
|
|
32
|
+
pendingSnapshot = undefined;
|
|
54
33
|
if (snapshot) {
|
|
55
34
|
for (let i = 0; i < items.length; i++) {
|
|
56
35
|
const oldQuantity = i < snapshot.length ? (snapshot[i] ?? 1) : 0;
|
|
@@ -61,19 +40,11 @@ export class CreateItemAnimations extends ItemAnimations {
|
|
|
61
40
|
}
|
|
62
41
|
}
|
|
63
42
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
if (entries) {
|
|
70
|
-
const idx = entries.indexOf(entry);
|
|
71
|
-
if (idx !== -1)
|
|
72
|
-
entries.splice(idx, 1);
|
|
73
|
-
if (entries.length === 0)
|
|
74
|
-
createdItemEntries.delete(key);
|
|
75
|
-
}
|
|
76
|
-
}, this.duration * 2000);
|
|
43
|
+
// Compute the range of displayIndexes to animate
|
|
44
|
+
const quantity = items[createdIndex]?.quantity ?? 1;
|
|
45
|
+
const createdQuantity = move.item.quantity ?? 1;
|
|
46
|
+
// Store animation data on the action (Immer draft) for use in isItemToAnimate
|
|
47
|
+
context.action.animationData = { createdIndex, displayIndexes: [quantity - createdQuantity, quantity - 1] };
|
|
77
48
|
return this.duration;
|
|
78
49
|
}
|
|
79
50
|
getItemAnimation(context, animation, boundaries) {
|
|
@@ -114,22 +85,10 @@ export class CreateItemAnimations extends ItemAnimations {
|
|
|
114
85
|
}
|
|
115
86
|
isItemToAnimate(context, animation) {
|
|
116
87
|
const { type, index, displayIndex } = context;
|
|
117
|
-
const
|
|
118
|
-
|
|
119
|
-
// Primary: match by action ID
|
|
120
|
-
let entry = entries?.find(e => e.actionId === animation.action.id);
|
|
121
|
-
// Fallback: action.id may have changed (local → server), match by itemType
|
|
122
|
-
if (!entry) {
|
|
123
|
-
entry = entries?.findLast(e => e.itemType === animation.move.itemType);
|
|
124
|
-
// Migrate the entry to the new action ID so subsequent calls find it directly
|
|
125
|
-
if (entry)
|
|
126
|
-
entry.actionId = animation.action.id;
|
|
127
|
-
}
|
|
128
|
-
if (animation.move.itemType !== type || entry?.index !== index)
|
|
88
|
+
const data = animation.action.animationData;
|
|
89
|
+
if (!data || animation.move.itemType !== type || data.createdIndex !== index)
|
|
129
90
|
return false;
|
|
130
|
-
|
|
131
|
-
const createdQuantity = animation.move.item.quantity ?? 1;
|
|
132
|
-
return displayIndex >= quantity - createdQuantity;
|
|
91
|
+
return displayIndex >= data.displayIndexes[0] && displayIndex <= data.displayIndexes[1];
|
|
133
92
|
}
|
|
134
93
|
getKeyframesFromOrigin(origin, _animation, _context) {
|
|
135
94
|
return keyframes `
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateItemAnimations.js","sourceRoot":"","sources":["../../../../src/components/material/animations/CreateItemAnimations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,SAAS,EAAS,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"CreateItemAnimations.js","sourceRoot":"","sources":["../../../../src/components/material/animations/CreateItemAnimations.ts"],"names":[],"mappings":"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"}
|
|
@@ -142,7 +142,7 @@ export class ItemAnimations extends Animations {
|
|
|
142
142
|
const resolvedElevation = elevationConfig ?? defaultElevation;
|
|
143
143
|
const elevationArc = getElevationKeyframes(resolvedElevation);
|
|
144
144
|
return css `
|
|
145
|
-
animation: ${elevationArc} ${duration}s
|
|
145
|
+
animation: ${elevationArc} ${duration}s linear infinite;
|
|
146
146
|
> * {
|
|
147
147
|
animation: ${animationKeyframes} ${duration}s ${easing} forwards;
|
|
148
148
|
}
|
|
@@ -19,7 +19,8 @@ export const TimeStatsButton = () => {
|
|
|
19
19
|
const theme = useTheme();
|
|
20
20
|
const [displayPopup, setDisplayPopup] = useState(false);
|
|
21
21
|
const players = usePlayers();
|
|
22
|
-
|
|
22
|
+
const CloseButton = theme.dialog.closeButton;
|
|
23
|
+
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))] })] })] }));
|
|
23
24
|
};
|
|
24
25
|
const PlayerName = ({ playerId }) => {
|
|
25
26
|
const name = usePlayerName(playerId);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TimeStatsButton.js","sourceRoot":"","sources":["../../../../src/components/menus/TimeStatsButton/TimeStatsButton.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,2CAA2C,CAAA;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAA;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAC/E,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,uBAAuB,CAAA;AAC5C,OAAO,GAAG,MAAM,kBAAkB,CAAA;AAElC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;AACtB,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;AAEjB,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,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;IACvD,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"TimeStatsButton.js","sourceRoot":"","sources":["../../../../src/components/menus/TimeStatsButton/TimeStatsButton.tsx"],"names":[],"mappings":"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"}
|
package/dist/css/GameTheme.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Interpolation } from '@emotion/react';
|
|
2
|
+
import { ComponentType } from 'react';
|
|
2
3
|
export interface GameTheme {
|
|
3
4
|
root: RootTheme;
|
|
4
5
|
dialog: DialogTheme;
|
|
@@ -24,13 +25,26 @@ export interface BackgroundTheme {
|
|
|
24
25
|
image: string;
|
|
25
26
|
overlay: string;
|
|
26
27
|
}
|
|
28
|
+
export type DialogNavigationProps = {
|
|
29
|
+
onPrevious?: () => void;
|
|
30
|
+
onNext?: () => void;
|
|
31
|
+
currentIndex: number;
|
|
32
|
+
total: number;
|
|
33
|
+
};
|
|
27
34
|
export interface DialogTheme {
|
|
28
35
|
backgroundColor: string;
|
|
29
36
|
color: string;
|
|
30
37
|
container?: Interpolation<GameTheme>;
|
|
31
38
|
backdrop?: Interpolation<GameTheme>;
|
|
32
39
|
closeIcon?: Interpolation<GameTheme>;
|
|
40
|
+
closeButton?: ComponentType<{
|
|
41
|
+
onClick: () => void;
|
|
42
|
+
}>;
|
|
33
43
|
content?: Interpolation<GameTheme>;
|
|
44
|
+
openAnimation?: Interpolation<GameTheme>;
|
|
45
|
+
closeAnimation?: Interpolation<GameTheme>;
|
|
46
|
+
navigation?: ComponentType<DialogNavigationProps>;
|
|
47
|
+
navigationCss?: Interpolation<GameTheme>;
|
|
34
48
|
}
|
|
35
49
|
export interface PaletteTheme {
|
|
36
50
|
primary: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameTheme.js","sourceRoot":"","sources":["../../src/css/GameTheme.ts"],"names":[],"mappings":"
|
|
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;AA+G1I,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,OAAO,EAAE,cAAc;CACxB,CAAA"}
|
|
@@ -1,2 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
type LegalMovesOptions<Move> = {
|
|
2
|
+
predicate?: (move: Move) => boolean;
|
|
3
|
+
includeDuringAnimations?: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare function useLegalMoves<Move = any>(predicateOrOptions?: ((move: Move) => boolean) | LegalMovesOptions<Move>): Move[];
|
|
2
6
|
export declare function useLegalMove<Move = any>(predicate?: (move: Move) => boolean): Move | undefined;
|
|
7
|
+
export {};
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import { useGameSelector } from '@gamepark/react-client';
|
|
2
2
|
import { useIsAnimatingPlayerAction } from '../components/material/utils/useIsAnimatingPlayerAction';
|
|
3
3
|
const EMPTY_MOVES = [];
|
|
4
|
-
export function useLegalMoves(
|
|
4
|
+
export function useLegalMoves(predicateOrOptions) {
|
|
5
5
|
const legalMoves = useGameSelector((state) => state.legalMoves);
|
|
6
6
|
const gameOver = useGameSelector((state) => state.gameOver);
|
|
7
7
|
const isAnimatingPlayerAction = useIsAnimatingPlayerAction();
|
|
8
|
-
|
|
8
|
+
const { predicate, includeDuringAnimations } = typeof predicateOrOptions === 'function'
|
|
9
|
+
? { predicate: predicateOrOptions, includeDuringAnimations: false }
|
|
10
|
+
: { predicate: predicateOrOptions?.predicate, includeDuringAnimations: predicateOrOptions?.includeDuringAnimations ?? false };
|
|
11
|
+
if (gameOver || (!includeDuringAnimations && isAnimatingPlayerAction))
|
|
9
12
|
return EMPTY_MOVES;
|
|
10
13
|
return predicate ? legalMoves.filter(predicate) : legalMoves;
|
|
11
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLegalMoves.js","sourceRoot":"","sources":["../../src/hooks/useLegalMoves.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAA;AAEpG,MAAM,WAAW,GAAY,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"useLegalMoves.js","sourceRoot":"","sources":["../../src/hooks/useLegalMoves.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,yDAAyD,CAAA;AAEpG,MAAM,WAAW,GAAY,EAAE,CAAA;AAO/B,MAAM,UAAU,aAAa,CAAa,kBAAwE;IAChH,MAAM,UAAU,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;IAC/D,MAAM,QAAQ,GAAG,eAAe,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAC3D,MAAM,uBAAuB,GAAG,0BAA0B,EAAE,CAAA;IAC5D,MAAM,EAAE,SAAS,EAAE,uBAAuB,EAAE,GAAG,OAAO,kBAAkB,KAAK,UAAU;QACrF,CAAC,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,KAAK,EAAE;QACnE,CAAC,CAAC,EAAE,SAAS,EAAE,kBAAkB,EAAE,SAAS,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,uBAAuB,IAAI,KAAK,EAAE,CAAA;IAC/H,IAAI,QAAQ,IAAI,CAAC,CAAC,uBAAuB,IAAI,uBAAuB,CAAC;QAAE,OAAO,WAAW,CAAA;IACzF,OAAO,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;AAC9D,CAAC;AAED,MAAM,UAAU,YAAY,CAAa,SAAmC;IAC1E,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,CAAA;IACtC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;AAChD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gamepark/react-game",
|
|
3
|
-
"version": "7.5.
|
|
3
|
+
"version": "7.5.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/)",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"@dnd-kit/modifiers": "^9.0.0",
|
|
26
26
|
"@gamepark/api-types": "^1.0.0",
|
|
27
27
|
"@gamepark/avataaars": "^3.0.0",
|
|
28
|
-
"@gamepark/react-client": "^7.5.
|
|
28
|
+
"@gamepark/react-client": "^7.5.2",
|
|
29
29
|
"dayjs": "^1.11.19",
|
|
30
30
|
"fscreen": "^1.2.0",
|
|
31
31
|
"i18next-http-backend": "^3.0.2",
|