@gamepark/react-game 6.4.0 → 6.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Avatar/Avatar.js +1 -8
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.d.ts +1 -0
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js +15 -3
- package/dist/components/buttons/PlayMoveButton/PlayMoveButton.js.map +1 -1
- package/dist/components/buttons/UndoMovesButton/UndoMovesButton.d.ts +7 -0
- package/dist/components/buttons/UndoMovesButton/UndoMovesButton.js +58 -0
- package/dist/components/buttons/UndoMovesButton/UndoMovesButton.js.map +1 -0
- package/dist/components/buttons/UndoMovesButton/index.d.ts +1 -0
- package/dist/components/buttons/UndoMovesButton/index.js +18 -0
- package/dist/components/buttons/UndoMovesButton/index.js.map +1 -0
- package/dist/components/buttons/index.d.ts +1 -0
- package/dist/components/buttons/index.js +1 -0
- package/dist/components/buttons/index.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js +2 -2
- package/dist/components/dialogs/RulesDialog/LocationRulesDialogContent.js.map +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js +1 -1
- package/dist/components/dialogs/RulesDialog/MaterialRulesDialogContent.js.map +1 -1
- package/dist/components/material/DraggableMaterial.js +3 -4
- package/dist/components/material/DraggableMaterial.js.map +1 -1
- package/dist/components/material/GameTable/GameMaterialDisplay.js +29 -11
- package/dist/components/material/GameTable/GameMaterialDisplay.js.map +1 -1
- package/dist/components/material/GameTable/GameTable.d.ts +4 -2
- package/dist/components/material/GameTable/GameTable.js +29 -11
- package/dist/components/material/GameTable/GameTable.js.map +1 -1
- package/dist/components/material/animations/ItemAnimations.js +1 -1
- package/dist/components/material/animations/ItemAnimations.js.map +1 -1
- package/dist/components/material/animations/MoveItemAnimations.js +5 -5
- package/dist/components/material/animations/MoveItemAnimations.js.map +1 -1
- package/dist/components/material/locations/LocationDescription.d.ts +6 -2
- package/dist/components/material/locations/LocationDescription.js +8 -0
- package/dist/components/material/locations/LocationDescription.js.map +1 -1
- package/dist/components/material/locations/SimpleDropArea.d.ts +2 -0
- package/dist/components/material/locations/SimpleDropArea.js +4 -13
- package/dist/components/material/locations/SimpleDropArea.js.map +1 -1
- package/dist/components/menus/menuCss.js +2 -2
- package/dist/components/menus/menuCss.js.map +1 -1
- package/dist/components/tutorial/MaterialTutorial.d.ts +5 -6
- package/dist/components/tutorial/MaterialTutorial.js +10 -4
- package/dist/components/tutorial/MaterialTutorial.js.map +1 -1
- package/dist/components/tutorial/TutorialRulesWrapper.js +10 -0
- package/dist/components/tutorial/TutorialRulesWrapper.js.map +1 -1
- package/dist/hooks/useRules.js +3 -1
- package/dist/hooks/useRules.js.map +1 -1
- package/dist/hooks/useUndo.d.ts +1 -1
- package/dist/hooks/useUndo.js +24 -7
- package/dist/hooks/useUndo.js.map +1 -1
- package/dist/locators/ItemLocator.js +1 -1
- package/dist/locators/ItemLocator.js.map +1 -1
- package/dist/locators/PileLocator.d.ts +3 -2
- package/dist/locators/PileLocator.js +9 -5
- package/dist/locators/PileLocator.js.map +1 -1
- package/package.json +7 -5
|
@@ -35,23 +35,16 @@ var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
|
35
35
|
var react_1 = require("@emotion/react");
|
|
36
36
|
var avataaars_1 = __importDefault(require("@gamepark/avataaars"));
|
|
37
37
|
var react_client_1 = require("@gamepark/react-client");
|
|
38
|
-
var GameProvider_1 = require("../GameProvider");
|
|
39
|
-
var react_2 = require("react");
|
|
40
38
|
var ChatSpeechBubble_1 = require("./ChatSpeechBubble");
|
|
41
39
|
var SpeechBubble_1 = require("./SpeechBubble");
|
|
42
40
|
var hooks_1 = require("../../hooks");
|
|
43
|
-
var react_redux_1 = require("react-redux");
|
|
44
|
-
var tutorial_1 = require("../tutorial");
|
|
45
41
|
var Avatar = function (_a) {
|
|
46
42
|
var _b;
|
|
47
43
|
var playerId = _a.playerId, speechBubbleProps = _a.speechBubbleProps, props = __rest(_a, ["playerId", "speechBubbleProps"]);
|
|
48
44
|
var player = (0, hooks_1.usePlayer)(playerId);
|
|
49
|
-
var isTutorial = (0, react_redux_1.useSelector)(function (state) { return state.gameMode === react_client_1.GameMode.TUTORIAL; });
|
|
50
|
-
var tutorial = (0, react_2.useContext)(GameProvider_1.gameContext).tutorial;
|
|
51
|
-
var tutorialAvatar = isTutorial && (0, tutorial_1.isMaterialTutorial)(tutorial) && tutorial.avatars[playerId];
|
|
52
45
|
var me = (0, react_client_1.useMe)();
|
|
53
46
|
var myPlayerId = (0, hooks_1.usePlayerId)();
|
|
54
|
-
var avatar = myPlayerId === playerId ? (_b = me === null || me === void 0 ? void 0 : me.user) === null || _b === void 0 ? void 0 : _b.avatar :
|
|
47
|
+
var avatar = myPlayerId === playerId ? (_b = me === null || me === void 0 ? void 0 : me.user) === null || _b === void 0 ? void 0 : _b.avatar : player === null || player === void 0 ? void 0 : player.avatar;
|
|
55
48
|
var query = new URLSearchParams(window.location.search);
|
|
56
49
|
var gameId = query.get('game');
|
|
57
50
|
return ((0, jsx_runtime_1.jsxs)("div", __assign({ css: style }, props, { children: [(0, jsx_runtime_1.jsx)(avataaars_1.default, __assign({ circle: true }, avatar, { css: avatarCss })), (speechBubbleProps === null || speechBubbleProps === void 0 ? void 0 : speechBubbleProps.children) ?
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../src/components/Avatar/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,wCAAoC;AACpC,kEAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"Avatar.js","sourceRoot":"","sources":["../../../src/components/Avatar/Avatar.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,wCAAoC;AACpC,kEAA0C;AAC1C,uDAA8C;AAE9C,uDAAqD;AACrD,+CAAgE;AAChE,qCAAoD;AAO7C,IAAM,MAAM,GAAG,UAAC,EAAgD;;IAA9C,IAAA,QAAQ,cAAA,EAAE,iBAAiB,uBAAA,EAAK,KAAK,cAAvC,iCAAyC,CAAF;IAC5D,IAAM,MAAM,GAAG,IAAA,iBAAS,EAAC,QAAQ,CAAC,CAAA;IAClC,IAAM,EAAE,GAAG,IAAA,oBAAK,GAAE,CAAA;IAClB,IAAM,UAAU,GAAG,IAAA,mBAAW,GAAE,CAAA;IAChC,IAAM,MAAM,GAAG,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAA,EAAE,aAAF,EAAE,uBAAF,EAAE,CAAE,IAAI,0CAAE,MAAM,CAAC,CAAC,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAA;IAC1E,IAAM,KAAK,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IACzD,IAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAChC,OAAO,CACL,0CAAK,GAAG,EAAE,KAAK,IAAM,KAAK,eACxB,uBAAC,mBAAQ,aAAC,MAAM,UAAK,MAAM,IAAE,GAAG,EAAE,SAAS,IAAG,EAC7C,CAAA,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,QAAQ,EAAC,CAAC;gBAC5B,uBAAC,2BAAY,eAAK,iBAAiB,cAAG,iBAAiB,CAAC,QAAQ,IAAgB,CAAC,CAAC;gBAClF,MAAM,IAAI,MAAM,IAAI,uBAAC,mCAAgB,aAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,IAAM,iBAAiB,EAAG,KAE5F,CACP,CAAA;AACH,CAAC,CAAA;AAhBY,QAAA,MAAM,UAgBlB;AAED,IAAM,KAAK,OAAG,WAAG,+HAAA,2DAGhB,IAAA,CAAA;AAED,IAAM,SAAS,OAAG,WAAG,4JAAA,wFAMpB,IAAA,CAAA"}
|
|
@@ -39,7 +39,7 @@ var react_i18next_1 = require("react-i18next");
|
|
|
39
39
|
var useIsAnimatingPlayerAction_1 = require("../../material/utils/useIsAnimatingPlayerAction");
|
|
40
40
|
var PlayMoveButton = function (props) {
|
|
41
41
|
var _a;
|
|
42
|
-
var move = props.move, confirmation = props.confirmation, delayed = props.delayed, skipAnimation = props.skipAnimation, local = props.local, onPlay = props.onPlay, rest = __rest(props, ["move", "confirmation", "delayed", "skipAnimation", "local", "onPlay"]);
|
|
42
|
+
var move = props.move, confirmation = props.confirmation, delayed = props.delayed, skipAnimation = props.skipAnimation, local = props.local, onPlay = props.onPlay, auto = props.auto, rest = __rest(props, ["move", "confirmation", "delayed", "skipAnimation", "local", "onPlay", "auto"]);
|
|
43
43
|
var play = (0, hooks_1.usePlay)();
|
|
44
44
|
var t = (0, react_i18next_1.useTranslation)().t;
|
|
45
45
|
var _b = (0, react_1.useState)(false), showDialog = _b[0], setShowDialog = _b[1];
|
|
@@ -69,7 +69,18 @@ var PlayMoveButton = function (props) {
|
|
|
69
69
|
doPlay();
|
|
70
70
|
}
|
|
71
71
|
}, [confirmation !== undefined, doPlay, displayedLongEnough]);
|
|
72
|
-
|
|
72
|
+
var _d = (0, react_1.useState)(auto), countdown = _d[0], setCountdown = _d[1];
|
|
73
|
+
(0, react_1.useEffect)(function () {
|
|
74
|
+
if (auto) {
|
|
75
|
+
var interval_1 = setInterval(function () { return setCountdown(function (countdown) { return countdown && countdown > 0 ? countdown - 1 : countdown; }); }, 1000);
|
|
76
|
+
return function () { return clearInterval(interval_1); };
|
|
77
|
+
}
|
|
78
|
+
}, [auto]);
|
|
79
|
+
(0, react_1.useEffect)(function () {
|
|
80
|
+
if (countdown === 0)
|
|
81
|
+
play(move);
|
|
82
|
+
}, [countdown, move]);
|
|
83
|
+
return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [!!confirmation && ((0, jsx_runtime_1.jsx)(dialogs_1.Dialog, __assign({ open: showDialog, onBackdropClick: function () { return setShowDialog(false); }, css: [flex, confirmationDialogCss] }, { children: (0, jsx_runtime_1.jsx)(react_2.ThemeProvider, __assign({ theme: function (theme) { return (__assign(__assign({}, theme), { buttons: (0, css_1.buttonCss)('#002448', '#c2ebf1', '#ade4ec') })); } }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ css: content }, { children: [(0, jsx_runtime_1.jsx)("p", { children: confirmation.text }), (0, jsx_runtime_1.jsxs)("div", __assign({ css: buttons }, { children: [(0, jsx_runtime_1.jsx)(ThemeButton_1.ThemeButton, __assign({ onClick: function () { return setShowDialog(false); } }, rest, { children: (_a = confirmation.cancelText) !== null && _a !== void 0 ? _a : t('Cancel') })), (0, jsx_runtime_1.jsx)(ThemeButton_1.ThemeButton, __assign({ css: moveButton, onClick: doPlay }, rest))] }))] })) })) }), "dialog")), (0, jsx_runtime_1.jsx)(ThemeButton_1.ThemeButton, __assign({ onClick: onClick, disabled: disabled, css: countdown && countdownCss(countdown) }, rest), "button")] }));
|
|
73
84
|
};
|
|
74
85
|
exports.PlayMoveButton = PlayMoveButton;
|
|
75
86
|
var buttons = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n margin-bottom: 0.3em;\n"], ["\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n margin-bottom: 0.3em;\n"])));
|
|
@@ -77,5 +88,6 @@ var moveButton = (0, react_2.css)(templateObject_2 || (templateObject_2 = __make
|
|
|
77
88
|
var flex = (0, react_2.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n display: flex;\n padding: 3em 1em 3em 3em;\n max-width: 90vw;\n max-height: 90vh;\n"], ["\n display: flex;\n padding: 3em 1em 3em 3em;\n max-width: 90vw;\n max-height: 90vh;\n"])));
|
|
78
89
|
var content = (0, react_2.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n margin: 0 1em;\n font-size: 3em;\n display: flex;\n flex-direction: column;\n"], ["\n margin: 0 1em;\n font-size: 3em;\n display: flex;\n flex-direction: column;\n"])));
|
|
79
90
|
var confirmationDialogCss = (0, react_2.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n position: relative;\n background-color: #f0fbfc;\n color: #002448;\n padding: 1em;\n border-radius: 1em;\n box-shadow: 0 0 0.2em black;\n font-family: \"Mulish\", sans-serif;\n"], ["\n position: relative;\n background-color: #f0fbfc;\n color: #002448;\n padding: 1em;\n border-radius: 1em;\n box-shadow: 0 0 0.2em black;\n font-family: \"Mulish\", sans-serif;\n"])));
|
|
80
|
-
var
|
|
91
|
+
var countdownCss = function (countdown) { return (0, react_2.css)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n padding-right: 2em;\n position: relative;\n\n &:after {\n content: '", "';\n position: absolute;\n right: 0.5em;\n font-style: italic;\n }\n"], ["\n padding-right: 2em;\n position: relative;\n\n &:after {\n content: '", "';\n position: absolute;\n right: 0.5em;\n font-style: italic;\n }\n"])), countdown); };
|
|
92
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;
|
|
81
93
|
//# sourceMappingURL=PlayMoveButton.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlayMoveButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/PlayMoveButton/PlayMoveButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,+BAAkF;AAClF,wCAAqD;AACrD,8CAA4C;AAC5C,yCAAsC;AACtC,wCAAmD;AACnD,oCAAwC;AACxC,+CAA8C;AAC9C,8FAA4F;
|
|
1
|
+
{"version":3,"file":"PlayMoveButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/PlayMoveButton/PlayMoveButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,+BAAkF;AAClF,wCAAqD;AACrD,8CAA4C;AAC5C,yCAAsC;AACtC,wCAAmD;AACnD,oCAAwC;AACxC,+CAA8C;AAC9C,8FAA4F;AAcrF,IAAM,cAAc,GAA4B,UAAC,KAAK;;IACnD,IAAA,IAAI,GAAyE,KAAK,KAA9E,EAAE,YAAY,GAA2D,KAAK,aAAhE,EAAE,OAAO,GAAkD,KAAK,QAAvD,EAAE,aAAa,GAAmC,KAAK,cAAxC,EAAE,KAAK,GAA4B,KAAK,MAAjC,EAAE,MAAM,GAAoB,KAAK,OAAzB,EAAE,IAAI,GAAc,KAAK,KAAnB,EAAK,IAAI,UAAK,KAAK,EAApF,+EAA4E,CAAF,CAAU;IAC1F,IAAM,IAAI,GAAG,IAAA,eAAO,GAAE,CAAA;IACd,IAAA,CAAC,GAAK,IAAA,8BAAc,GAAE,EAArB,CAAqB;IACxB,IAAA,KAA8B,IAAA,gBAAQ,EAAU,KAAK,CAAC,EAArD,UAAU,QAAA,EAAE,aAAa,QAA4B,CAAA;IACtD,IAAA,KAAgD,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA9D,mBAAmB,QAAA,EAAE,sBAAsB,QAAmB,CAAA;IACrE,IAAM,uBAAuB,GAAG,IAAA,uDAA0B,GAAE,CAAA;IAC5D,IAAM,QAAQ,GAAG,IAAI,KAAK,SAAS,IAAI,CAAC,uBAAuB,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1E,IAAA,iBAAS,EAAC;QACR,IAAI,QAAQ,EAAE;YACZ,sBAAsB,CAAC,KAAK,CAAC,CAAA;SAC9B;aAAM;YACL,IAAM,SAAO,GAAG,UAAU,CAAC,cAAM,OAAA,sBAAsB,CAAC,IAAI,CAAC,EAA5B,CAA4B,EAAE,GAAG,CAAC,CAAA;YACnE,OAAO,cAAM,OAAA,YAAY,CAAC,SAAO,CAAC,EAArB,CAAqB,CAAA;SACnC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,IAAM,MAAM,GAAG,IAAA,mBAAW,EAAC;QACzB,aAAa,CAAC,KAAK,CAAC,CAAA;QACpB,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,SAAA,EAAE,aAAa,eAAA,EAAE,KAAK,OAAA,EAAE,CAAC,CAAA;QAC7C,IAAI,MAAM;YAAE,MAAM,EAAE,CAAA;IACtB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;IAEjD,IAAM,OAAO,GAAG,IAAA,mBAAW,EAAC;QAC1B,IAAI,YAAY,KAAK,SAAS,EAAE;YAC9B,aAAa,CAAC,IAAI,CAAC,CAAA;SACpB;aAAM,IAAI,mBAAmB,EAAE;YAC9B,MAAM,EAAE,CAAA;SACT;IACH,CAAC,EAAE,CAAC,YAAY,KAAK,SAAS,EAAE,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAA;IAEvD,IAAA,KAA4B,IAAA,gBAAQ,EAAC,IAAI,CAAC,EAAzC,SAAS,QAAA,EAAE,YAAY,QAAkB,CAAA;IAChD,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,EAAE;YACR,IAAM,UAAQ,GAAG,WAAW,CAAC,cAAM,OAAA,YAAY,CAAC,UAAA,SAAS,IAAI,OAAA,SAAS,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,EAAtD,CAAsD,CAAC,EAAjF,CAAiF,EAAE,IAAI,CAAC,CAAA;YAC3H,OAAO,cAAM,OAAA,aAAa,CAAC,UAAQ,CAAC,EAAvB,CAAuB,CAAA;SACrC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA;IACV,IAAA,iBAAS,EAAC;QACR,IAAI,SAAS,KAAK,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAA;IAErB,OAAO,CACL,6DACG,CAAC,CAAC,YAAY,IAAI,CACjB,uBAAC,gBAAM,aAAc,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,cAAM,OAAA,aAAa,CAAC,KAAK,CAAC,EAApB,CAAoB,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,qBAAqB,CAAC,gBACpH,uBAAC,qBAAa,aAAC,KAAK,EAAE,UAAA,KAAK,IAAI,OAAA,uBAAM,KAAK,KAAE,OAAO,EAAE,IAAA,eAAS,EAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,IAAG,EAAnE,CAAmE,gBAChG,0CAAK,GAAG,EAAE,OAAO,iBACf,wCAAI,YAAY,CAAC,IAAI,GAAK,EAC1B,0CAAK,GAAG,EAAE,OAAO,iBACf,uBAAC,yBAAW,aAAC,OAAO,EAAE,cAAM,OAAA,aAAa,CAAC,KAAK,CAAC,EAApB,CAAoB,IAAM,IAAI,cACvD,MAAA,YAAY,CAAC,UAAU,mCAAI,CAAC,CAAC,QAAQ,CAAC,IAC3B,EACd,uBAAC,yBAAW,aAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,IAAM,IAAI,EAAI,KACvD,KACF,IACQ,KAXN,QAAQ,CAYX,CACV,EACD,uBAAC,yBAAW,aAAc,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,IAAI,YAAY,CAAC,SAAS,CAAC,IAAM,IAAI,GAAlG,QAAQ,CAA6F,IACrH,CACJ,CAAA;AACH,CAAC,CAAA;AA9DY,QAAA,cAAc,kBA8D1B;AACD,IAAM,OAAO,OAAG,WAAG,8KAAA,0GAKlB,IAAA,CAAA;AAED,IAAM,UAAU,OAAG,WAAG,qLAAA,iHAOrB,IAAA,CAAA;AAED,IAAM,IAAI,OAAG,WAAG,gKAAA,4FAKf,IAAA,CAAA;AAED,IAAM,OAAO,OAAG,WAAG,0JAAA,sFAKlB,IAAA,CAAA;AAED,IAAM,qBAAqB,OAAG,WAAG,gQAAA,4LAQhC,IAAA,CAAA;AAED,IAAM,YAAY,GAAG,UAAC,SAAiB,IAAK,WAAA,WAAG,qOAAA,+EAK/B,EAAS,gFAKxB,KALe,SAAS,GALmB,CAU3C,CAAA"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** @jsxImportSource @emotion/react */
|
|
2
|
+
import { ButtonHTMLAttributes, FC } from 'react';
|
|
3
|
+
import { PlayOptions } from '../../../hooks';
|
|
4
|
+
export type UndoMovesButtonProps = {
|
|
5
|
+
moves?: number;
|
|
6
|
+
} & PlayOptions & ButtonHTMLAttributes<HTMLButtonElement>;
|
|
7
|
+
export declare const UndoMovesButton: FC<UndoMovesButtonProps>;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
14
|
+
var t = {};
|
|
15
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
16
|
+
t[p] = s[p];
|
|
17
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
18
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
19
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
20
|
+
t[p[i]] = s[p[i]];
|
|
21
|
+
}
|
|
22
|
+
return t;
|
|
23
|
+
};
|
|
24
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
+
exports.UndoMovesButton = void 0;
|
|
26
|
+
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
27
|
+
/** @jsxImportSource @emotion/react */
|
|
28
|
+
var react_1 = require("react");
|
|
29
|
+
var hooks_1 = require("../../../hooks");
|
|
30
|
+
var ThemeButton_1 = require("../ThemeButton");
|
|
31
|
+
var useIsAnimatingPlayerAction_1 = require("../../material/utils/useIsAnimatingPlayerAction");
|
|
32
|
+
var UndoMovesButton = function (props) {
|
|
33
|
+
var _a = props.moves, moves = _a === void 0 ? 1 : _a, rest = __rest(props, ["moves"]);
|
|
34
|
+
var _b = (0, hooks_1.useUndo)(), undo = _b[0], canUndo = _b[1];
|
|
35
|
+
var _c = (0, react_1.useState)(false), displayedLongEnough = _c[0], setDisplayedLongEnough = _c[1];
|
|
36
|
+
var isAnimatingPlayerAction = (0, useIsAnimatingPlayerAction_1.useIsAnimatingPlayerAction)();
|
|
37
|
+
var disabled = (0, react_1.useMemo)(function () { return isAnimatingPlayerAction || !canUndo(); }, [isAnimatingPlayerAction, canUndo]);
|
|
38
|
+
(0, react_1.useEffect)(function () {
|
|
39
|
+
if (disabled) {
|
|
40
|
+
setDisplayedLongEnough(false);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
var timeout_1 = setTimeout(function () { return setDisplayedLongEnough(true); }, 200);
|
|
44
|
+
return function () { return clearTimeout(timeout_1); };
|
|
45
|
+
}
|
|
46
|
+
}, [disabled]);
|
|
47
|
+
var doUndo = (0, react_1.useCallback)(function () {
|
|
48
|
+
undo(moves);
|
|
49
|
+
}, [undo, moves]);
|
|
50
|
+
var onClick = (0, react_1.useCallback)(function () {
|
|
51
|
+
if (displayedLongEnough) {
|
|
52
|
+
doUndo();
|
|
53
|
+
}
|
|
54
|
+
}, [doUndo, displayedLongEnough]);
|
|
55
|
+
return (0, jsx_runtime_1.jsx)(ThemeButton_1.ThemeButton, __assign({ onClick: onClick, disabled: disabled }, rest), "button");
|
|
56
|
+
};
|
|
57
|
+
exports.UndoMovesButton = UndoMovesButton;
|
|
58
|
+
//# sourceMappingURL=UndoMovesButton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UndoMovesButton.js","sourceRoot":"","sources":["../../../../src/components/buttons/UndoMovesButton/UndoMovesButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,+BAA2F;AAC3F,wCAAqD;AACrD,8CAA4C;AAC5C,8FAA4F;AAMrF,IAAM,eAAe,GAA6B,UAAC,KAAK;IACrD,IAAA,KAAuB,KAAK,MAAnB,EAAT,KAAK,mBAAG,CAAC,KAAA,EAAK,IAAI,UAAK,KAAK,EAA9B,SAAsB,CAAF,CAAU;IAC9B,IAAA,KAAkB,IAAA,eAAO,GAAE,EAA1B,IAAI,QAAA,EAAE,OAAO,QAAa,CAAA;IAC3B,IAAA,KAAgD,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA9D,mBAAmB,QAAA,EAAE,sBAAsB,QAAmB,CAAA;IACrE,IAAM,uBAAuB,GAAG,IAAA,uDAA0B,GAAE,CAAA;IAC5D,IAAM,QAAQ,GAAG,IAAA,eAAO,EAAC,cAAM,OAAA,uBAAuB,IAAI,CAAC,OAAO,EAAE,EAArC,CAAqC,EAAE,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC,CAAA;IACzG,IAAA,iBAAS,EAAC;QACR,IAAI,QAAQ,EAAE;YACZ,sBAAsB,CAAC,KAAK,CAAC,CAAA;SAC9B;aAAM;YACL,IAAM,SAAO,GAAG,UAAU,CAAC,cAAM,OAAA,sBAAsB,CAAC,IAAI,CAAC,EAA5B,CAA4B,EAAE,GAAG,CAAC,CAAA;YACnE,OAAO,cAAM,OAAA,YAAY,CAAC,SAAO,CAAC,EAArB,CAAqB,CAAA;SACnC;IACH,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,IAAM,MAAM,GAAG,IAAA,mBAAW,EAAC;QACzB,IAAI,CAAC,KAAK,CAAC,CAAA;IACb,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;IAEjB,IAAM,OAAO,GAAG,IAAA,mBAAW,EAAC;QAC1B,IAAI,mBAAmB,EAAE;YACvB,MAAM,EAAE,CAAA;SACT;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAA;IAEjC,OAAO,uBAAC,yBAAW,aAAc,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,IAAM,IAAI,GAAvD,QAAQ,CAAkD,CAAA;AACpF,CAAC,CAAA;AA1BY,QAAA,eAAe,mBA0B3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './UndoMovesButton';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./UndoMovesButton"), exports);
|
|
18
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/buttons/UndoMovesButton/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC"}
|
|
@@ -15,5 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./PlayMoveButton"), exports);
|
|
18
|
+
__exportStar(require("./UndoMovesButton"), exports);
|
|
18
19
|
__exportStar(require("./ThemeButton"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/buttons/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC;AAChC,gDAA6B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/buttons/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAgC;AAChC,oDAAiC;AACjC,gDAA6B"}
|
|
@@ -34,7 +34,7 @@ var LocationRulesDialogContent = function (_a) {
|
|
|
34
34
|
var description = locator === null || locator === void 0 ? void 0 : locator.locationDescription;
|
|
35
35
|
if (!(description === null || description === void 0 ? void 0 : description.rules))
|
|
36
36
|
return null;
|
|
37
|
-
var image = description.
|
|
37
|
+
var image = description.getRulesImage(rulesDisplay.location, context);
|
|
38
38
|
var _b = description.getSize(rulesDisplay.location, context), width = _b.width, height = _b.height;
|
|
39
39
|
return (0, jsx_runtime_1.jsxs)("div", __assign({ css: flex }, { children: [!!image &&
|
|
40
40
|
(0, jsx_runtime_1.jsx)("div", { css: [noShrink, (0, css_1.fontSizeCss)(Math.min(75 / height, 75 / width, 10)), backgroundImage(image, height, width)] }), (0, jsx_runtime_1.jsx)(react_custom_scrollbars_2_1.default, __assign({ autoHeight: true, css: scrollableContainer }, { children: (0, jsx_runtime_1.jsx)("div", __assign({ css: rulesCss }, { children: (0, jsx_runtime_1.jsx)(description.rules, { location: rulesDisplay.location, closeDialog: function () { return play(rules_api_1.closeRulesDisplay, { local: true }); } }) })) }))] }));
|
|
@@ -44,6 +44,6 @@ var flex = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTempla
|
|
|
44
44
|
var noShrink = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex-shrink: 0;\n"], ["\n flex-shrink: 0;\n"])));
|
|
45
45
|
var rulesCss = (0, react_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n margin: 0 1em;\n font-size: 3em;\n\n > h2 {\n margin: 0 1em;\n text-align: center;\n }\n\n > p {\n white-space: break-spaces;\n }\n"], ["\n margin: 0 1em;\n font-size: 3em;\n\n > h2 {\n margin: 0 1em;\n text-align: center;\n }\n\n > p {\n white-space: break-spaces;\n }\n"])));
|
|
46
46
|
var backgroundImage = function (image, height, width) { return (0, react_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background-image: url(", ");\n background-size: cover;\n height: ", "em;\n width: ", "em;\n"], ["\n background-image: url(", ");\n background-size: cover;\n height: ", "em;\n width: ", "em;\n"])), image, height, width); };
|
|
47
|
-
var scrollableContainer = (0, react_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em
|
|
47
|
+
var scrollableContainer = (0, react_1.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"], ["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"])));
|
|
48
48
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
49
49
|
//# sourceMappingURL=LocationRulesDialogContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocationRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/LocationRulesDialogContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,
|
|
1
|
+
{"version":3,"file":"LocationRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/LocationRulesDialogContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,iDAA6E;AAC7E,wCAAoC;AACpC,wFAAkD;AAClD,wCAA4E;AAC5E,oCAA0C;AAMnC,IAAM,0BAA0B,GAAG,UACxC,EAAuD;QAArD,YAAY,kBAAA;IAEd,IAAM,IAAI,GAAG,IAAA,eAAO,GAAE,CAAA;IACtB,IAAM,OAAO,GAAG,IAAA,0BAAkB,GAAE,CAAA;IACpC,IAAM,OAAO,GAAG,IAAA,sBAAc,EAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC1D,IAAM,WAAW,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,mBAAmB,CAAA;IAChD,IAAI,CAAC,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,KAAK,CAAA;QAAE,OAAO,IAAI,CAAA;IACpC,IAAM,KAAK,GAAG,WAAW,CAAC,aAAa,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IACjE,IAAA,KAAoB,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAArE,KAAK,WAAA,EAAE,MAAM,YAAwD,CAAA;IAC7E,OAAO,0CAAK,GAAG,EAAE,IAAI,iBAClB,CAAC,CAAC,KAAK;gBACN,gCAAK,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAA,iBAAW,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,GAAG,EAEpH,uBAAC,mCAAU,aAAC,UAAU,QAAC,GAAG,EAAE,mBAAmB,gBAC7C,yCAAK,GAAG,EAAE,QAAQ,gBAChB,uBAAC,WAAW,CAAC,KAAK,IAAC,QAAQ,EAAE,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,cAAM,OAAA,IAAI,CAAC,6BAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAxC,CAAwC,GAAG,IAC9G,IACK,KACT,CAAA;AACR,CAAC,CAAA;AApBY,QAAA,0BAA0B,8BAoBtC;AAED,IAAM,IAAI,OAAG,WAAG,gKAAA,4FAKf,IAAA,CAAA;AAED,IAAM,QAAQ,OAAG,WAAG,2FAAA,uBAEnB,IAAA,CAAA;AAED,IAAM,QAAQ,OAAG,WAAG,2NAAA,uJAYnB,IAAA,CAAA;AAED,IAAM,eAAe,GAAG,UAAC,KAAa,EAAE,MAAc,EAAE,KAAa,IAAK,WAAA,WAAG,wKAAA,4BACnD,EAAK,2CAEnB,EAAM,gBACP,EAAK,OACf,KAJyB,KAAK,EAEnB,MAAM,EACP,KAAK,GAJ0D,CAKzE,CAAA;AAED,IAAM,mBAAmB,OAAG,WAAG,gZAAA,4UAe9B,IAAA,CAAA"}
|
|
@@ -44,6 +44,6 @@ exports.MaterialRulesDialogContent = MaterialRulesDialogContent;
|
|
|
44
44
|
var flex = (0, react_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n padding: 3em 1em 3em 3em;\n max-width: 90vw;\n max-height: 90vh;\n"], ["\n display: flex;\n padding: 3em 1em 3em 3em;\n max-width: 90vw;\n max-height: 90vh;\n"])));
|
|
45
45
|
var noShrink = (0, react_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex-shrink: 0;\n"], ["\n flex-shrink: 0;\n"])));
|
|
46
46
|
var rulesStyle = (0, react_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n margin: 0 1em;\n font-size: 3em;\n\n > h2 {\n margin: 0 1em;\n text-align: center;\n }\n\n > p {\n white-space: break-spaces;\n }\n"], ["\n margin: 0 1em;\n font-size: 3em;\n\n > h2 {\n margin: 0 1em;\n text-align: center;\n }\n\n > p {\n white-space: break-spaces;\n }\n"])));
|
|
47
|
-
var scrollableContainer = (0, react_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em
|
|
47
|
+
var scrollableContainer = (0, react_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"], ["\n max-height: calc(90vh - 6em) !important;\n\n > div {\n max-height: calc(90vh - 6em) !important;\n\n // trick to avoid very thin bar on some resolutions with react-custom-scrollbars-2\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n ::-webkit-scrollbar {\n width: 0;\n height: 0;\n }\n }\n"])));
|
|
48
48
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
49
49
|
//# sourceMappingURL=MaterialRulesDialogContent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MaterialRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialogContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,iDAA6E;AAC7E,wCAAoC;AACpC,wFAAkD;AAClD,2CAA6E;AAC7E,oCAAwD;AACxD,wCAAgE;AAMzD,IAAM,0BAA0B,GAAG,UACxC,EAA0D;QAAxD,YAAY,kBAAA;IAEd,IAAM,IAAI,GAAG,IAAA,eAAO,GAAE,CAAA;IACtB,IAAM,WAAW,GAAG,IAAA,8BAAsB,EAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;IACjE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IAC7B,IAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAA;IACxB,IAAA,KAAoB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAA9C,KAAK,WAAA,EAAE,MAAM,YAAiC,CAAA;IACtD,OAAO,0CAAK,GAAG,EAAE,IAAI,iBACnB,uBAAC,4BAAiB,IAAC,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE;oBACpE,QAAQ,EAAE,IAAA,iBAAW,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC5D,IAAA,oCAAyB,EAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAA,kBAAY,EAAC,iBAAiB,CAAC;iBACxG,GAAG,EACJ,uBAAC,mCAAU,aAAC,UAAU,QAAC,GAAG,EAAE,mBAAmB,gBAC7C,yCAAK,GAAG,EAAE,UAAU,gBAClB,uBAAC,WAAW,CAAC,KAAK,eAAK,YAAY,IAAE,WAAW,EAAE,cAAM,OAAA,IAAI,CAAC,6BAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAxC,CAAwC,IAAG,IAC/F,IACK,KACT,CAAA;AACR,CAAC,CAAA;AAnBY,QAAA,0BAA0B,8BAmBtC;AAED,IAAM,IAAI,OAAG,WAAG,gKAAA,4FAKf,IAAA,CAAA;AAED,IAAM,QAAQ,OAAG,WAAG,2FAAA,uBAEnB,IAAA,CAAA;AAED,IAAM,UAAU,OAAG,WAAG,2NAAA,uJAYrB,IAAA,CAAA;AAED,IAAM,mBAAmB,OAAG,WAAG,
|
|
1
|
+
{"version":3,"file":"MaterialRulesDialogContent.js","sourceRoot":"","sources":["../../../../src/components/dialogs/RulesDialog/MaterialRulesDialogContent.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,iDAA6E;AAC7E,wCAAoC;AACpC,wFAAkD;AAClD,2CAA6E;AAC7E,oCAAwD;AACxD,wCAAgE;AAMzD,IAAM,0BAA0B,GAAG,UACxC,EAA0D;QAAxD,YAAY,kBAAA;IAEd,IAAM,IAAI,GAAG,IAAA,eAAO,GAAE,CAAA;IACtB,IAAM,WAAW,GAAG,IAAA,8BAAsB,EAAC,YAAY,CAAC,QAAQ,CAAC,CAAA;IACjE,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAA;IAC7B,IAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAA;IACxB,IAAA,KAAoB,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAA9C,KAAK,WAAA,EAAE,MAAM,YAAiC,CAAA;IACtD,OAAO,0CAAK,GAAG,EAAE,IAAI,iBACnB,uBAAC,4BAAiB,IAAC,IAAI,EAAE,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE;oBACpE,QAAQ,EAAE,IAAA,iBAAW,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;oBAC5D,IAAA,oCAAyB,EAAC,WAAW,CAAC,IAAI,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAA,kBAAY,EAAC,iBAAiB,CAAC;iBACxG,GAAG,EACJ,uBAAC,mCAAU,aAAC,UAAU,QAAC,GAAG,EAAE,mBAAmB,gBAC7C,yCAAK,GAAG,EAAE,UAAU,gBAClB,uBAAC,WAAW,CAAC,KAAK,eAAK,YAAY,IAAE,WAAW,EAAE,cAAM,OAAA,IAAI,CAAC,6BAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAxC,CAAwC,IAAG,IAC/F,IACK,KACT,CAAA;AACR,CAAC,CAAA;AAnBY,QAAA,0BAA0B,8BAmBtC;AAED,IAAM,IAAI,OAAG,WAAG,gKAAA,4FAKf,IAAA,CAAA;AAED,IAAM,QAAQ,OAAG,WAAG,2FAAA,uBAEnB,IAAA,CAAA;AAED,IAAM,UAAU,OAAG,WAAG,2NAAA,uJAYrB,IAAA,CAAA;AAED,IAAM,mBAAmB,OAAG,WAAG,gZAAA,4UAe9B,IAAA,CAAA"}
|
|
@@ -110,7 +110,7 @@ exports.DraggableMaterial = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
110
110
|
}
|
|
111
111
|
var animation = useItemAnimation(displayedItem);
|
|
112
112
|
var isDropped = (0, react_1.useMemo)(function () { return (0, isDroppedItem_1.isDroppedItem)(itemContext); }, [itemContext]);
|
|
113
|
-
var applyTransform = isDropped || !ignoreTransform
|
|
113
|
+
var applyTransform = isDropped || !ignoreTransform;
|
|
114
114
|
if (!applyTransform)
|
|
115
115
|
transformRef.current = undefined;
|
|
116
116
|
// Firefox bugs when the animation is immediately followed by the transition: we need to delay by 1 rerender putting back the transition
|
|
@@ -140,10 +140,9 @@ function dataIsDisplayedItem(data) {
|
|
|
140
140
|
}
|
|
141
141
|
exports.dataIsDisplayedItem = dataIsDisplayedItem;
|
|
142
142
|
var useRevealedItem = function (type, index) {
|
|
143
|
-
var _a;
|
|
144
143
|
var animation = (0, hooks_1.useAnimation)(function (animation) { return (0, rules_api_1.isMoveItemType)(type, index)(animation.move); });
|
|
145
|
-
var
|
|
146
|
-
var item =
|
|
144
|
+
var rules = (0, hooks_1.useRules)();
|
|
145
|
+
var item = rules === null || rules === void 0 ? void 0 : rules.material(type).getItem(index);
|
|
147
146
|
return (0, react_1.useMemo)(function () {
|
|
148
147
|
return item && typeof (animation === null || animation === void 0 ? void 0 : animation.move.reveal) === 'object' ? (0, merge_1.default)(JSON.parse(JSON.stringify(item)), animation.move.reveal) : item;
|
|
149
148
|
}, [item, animation === null || animation === void 0 ? void 0 : animation.move.reveal]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DraggableMaterial.js","sourceRoot":"","sources":["../../../src/components/material/DraggableMaterial.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,+BAAqF;AACrF,
|
|
1
|
+
{"version":3,"file":"DraggableMaterial.js","sourceRoot":"","sources":["../../../src/components/material/DraggableMaterial.tsx"],"names":[],"mappings":"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"}
|
|
@@ -78,11 +78,11 @@ var GameMaterialDisplay = function () {
|
|
|
78
78
|
var locator = locators[item.location.type];
|
|
79
79
|
return __spreadArray([], Array((_a = item.quantity) !== null && _a !== void 0 ? _a : 1), true).map(function (_, displayIndex) {
|
|
80
80
|
var itemContext = __assign(__assign({}, context), { type: type, index: index, displayIndex: displayIndex });
|
|
81
|
-
var innerLocations =
|
|
81
|
+
var innerLocations = getInnerLocations(item, itemContext, tutorialPopup, tutorialFocus);
|
|
82
82
|
var focus = (0, tutorial_1.isStaticItemFocus)(type, item, tutorialFocus);
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
return (0, jsx_runtime_1.jsx)(locations_1.SimpleDropArea, { location: location,
|
|
83
|
+
return (0, jsx_runtime_1.jsxs)(MaterialComponent_1.MaterialComponent, __assign({ type: type, itemId: item.id, playDown: tutorialPopup && !focus && !innerLocations.some(function (location) { return location.focus; }), ref: focus ? addFocusRef : undefined, css: [css_1.pointerCursorCss, css_1.transformCss.apply(void 0, locator.transformItem(item, itemContext))], onShortClick: function () { return play((0, rules_api_1.displayMaterialRules)(type, item), { local: true }); } }, { children: [(0, jsx_runtime_1.jsx)(locations_1.LocationsMask, { locations: innerLocations.filter(function (l) { return l.focus; }).map(function (l) { return l.location; }) }), innerLocations.map(function (_a) {
|
|
84
|
+
var focus = _a.focus, location = _a.location;
|
|
85
|
+
return (0, jsx_runtime_1.jsx)(locations_1.SimpleDropArea, { location: location, alwaysVisible: focus, ref: focus ? addFocusRef : undefined }, JSON.stringify(location));
|
|
86
86
|
})] }), "".concat(type, "_").concat(index, "_").concat(displayIndex));
|
|
87
87
|
});
|
|
88
88
|
});
|
|
@@ -94,27 +94,45 @@ var GameMaterialDisplay = function () {
|
|
|
94
94
|
return items.map(function (item, index) {
|
|
95
95
|
var _a;
|
|
96
96
|
var locator = locators[item.location.type];
|
|
97
|
-
var description = material[type];
|
|
98
|
-
var focus = (0, tutorial_1.isItemFocus)(type, index, tutorialFocus);
|
|
99
97
|
return __spreadArray([], Array((_a = item.quantity) !== null && _a !== void 0 ? _a : 1), true).map(function (_, displayIndex) {
|
|
100
98
|
var itemContext = __assign(__assign({}, context), { type: type, index: index, displayIndex: displayIndex });
|
|
101
99
|
if (locator.hide(item, itemContext))
|
|
102
100
|
return null;
|
|
103
|
-
var innerLocations =
|
|
104
|
-
var
|
|
105
|
-
return (0, jsx_runtime_1.jsxs)(DraggableMaterial_1.DraggableMaterial, __assign({ type: type, index: index, displayIndex: displayIndex, playDown: tutorialPopup && !focus && !
|
|
106
|
-
|
|
101
|
+
var innerLocations = getInnerLocations(item, itemContext, tutorialPopup, tutorialFocus);
|
|
102
|
+
var focus = (0, tutorial_1.isItemFocus)(type, index, tutorialFocus);
|
|
103
|
+
return (0, jsx_runtime_1.jsxs)(DraggableMaterial_1.DraggableMaterial, __assign({ type: type, index: index, displayIndex: displayIndex, playDown: tutorialPopup && !focus && !innerLocations.some(function (location) { return location.focus; }), ref: focus ? addFocusRef : undefined, onShortClick: function () { return play((0, rules_api_1.displayMaterialRules)(type, item, index), { local: true }); } }, { children: [(0, jsx_runtime_1.jsx)(locations_1.LocationsMask, { locations: innerLocations.filter(function (l) { return l.focus; }).map(function (l) { return l.location; }) }), innerLocations.map(function (_a) {
|
|
104
|
+
var focus = _a.focus, location = _a.location;
|
|
105
|
+
return (0, jsx_runtime_1.jsx)(locations_1.SimpleDropArea, { location: location, alwaysVisible: focus, ref: focus ? addFocusRef : undefined }, JSON.stringify(location));
|
|
107
106
|
})] }), "".concat(type, "_").concat(index, "_").concat(displayIndex));
|
|
108
107
|
});
|
|
109
108
|
});
|
|
110
109
|
}), Object.values(locators).map(function (locator) {
|
|
111
110
|
var _a;
|
|
112
111
|
return (_a = locator.locationDescription) === null || _a === void 0 ? void 0 : _a.getLocations(context).map(function (location) {
|
|
113
|
-
|
|
112
|
+
var isFocus = (0, tutorial_1.isLocationFocus)(location, tutorialFocus);
|
|
113
|
+
return (0, jsx_runtime_1.jsx)(locations_1.SimpleDropArea, { location: location, alwaysVisible: isFocus, ref: isFocus ? addFocusRef : undefined }, JSON.stringify(location));
|
|
114
114
|
});
|
|
115
115
|
}), (0, jsx_runtime_1.jsx)(dialogs_1.MaterialRulesDialog, { open: !!(game === null || game === void 0 ? void 0 : game.rulesDisplay), close: function () { return play(rules_api_1.closeRulesDisplay, { local: true }); } }), (game === null || game === void 0 ? void 0 : game.tutorialStep) !== undefined && (0, jsx_runtime_1.jsx)(MaterialTutorialDisplay_1.MaterialTutorialDisplay, {})] });
|
|
116
116
|
};
|
|
117
117
|
exports.GameMaterialDisplay = GameMaterialDisplay;
|
|
118
|
+
var getInnerLocations = function (item, context, tutorialPopup, tutorialFocus) {
|
|
119
|
+
var locationsFocus = tutorialPopup ? getLocationsFocus(tutorialFocus).filter(function (location) { var _a; return context.locators[location.type].parentItemType === context.type && ((_a = location.parent) !== null && _a !== void 0 ? _a : 0) === context.index; }) : [];
|
|
120
|
+
var result = context.material[context.type].getLocations(item, context).map(function (location) { return ({ location: location }); });
|
|
121
|
+
var _loop_1 = function (locationFocus) {
|
|
122
|
+
var focusableLocation = result.find(function (focusableLocation) { return (0, fast_deep_equal_1.default)(focusableLocation.location, locationFocus); });
|
|
123
|
+
if (focusableLocation) {
|
|
124
|
+
focusableLocation.focus = true;
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
result.push({ location: locationFocus, focus: true });
|
|
128
|
+
}
|
|
129
|
+
};
|
|
130
|
+
for (var _i = 0, locationsFocus_1 = locationsFocus; _i < locationsFocus_1.length; _i++) {
|
|
131
|
+
var locationFocus = locationsFocus_1[_i];
|
|
132
|
+
_loop_1(locationFocus);
|
|
133
|
+
}
|
|
134
|
+
return result;
|
|
135
|
+
};
|
|
118
136
|
var getLocationsFocus = function (focus) {
|
|
119
137
|
if (!focus)
|
|
120
138
|
return [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GameMaterialDisplay.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/GameMaterialDisplay.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,+BAAoD;AACpD,wCAAyF;AACzF,
|
|
1
|
+
{"version":3,"file":"GameMaterialDisplay.js","sourceRoot":"","sources":["../../../../src/components/material/GameTable/GameMaterialDisplay.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** @jsxImportSource @emotion/react */
|
|
2
|
-
import { FC } from 'react';
|
|
2
|
+
import { FC, HTMLAttributes } from 'react';
|
|
3
3
|
import { CollisionDetection } from '@dnd-kit/core';
|
|
4
4
|
export type GameTableProps = {
|
|
5
5
|
collisionAlgorithm?: CollisionDetection;
|
|
@@ -14,5 +14,7 @@ export type GameTableProps = {
|
|
|
14
14
|
right: number;
|
|
15
15
|
bottom: number;
|
|
16
16
|
};
|
|
17
|
-
|
|
17
|
+
background?: string | ((player?: number) => string);
|
|
18
|
+
backgroundOverlay?: string;
|
|
19
|
+
} & HTMLAttributes<HTMLDivElement>;
|
|
18
20
|
export declare const GameTable: FC<GameTableProps>;
|
|
@@ -14,6 +14,17 @@ var __assign = (this && this.__assign) || function () {
|
|
|
14
14
|
};
|
|
15
15
|
return __assign.apply(this, arguments);
|
|
16
16
|
};
|
|
17
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
18
|
+
var t = {};
|
|
19
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
20
|
+
t[p] = s[p];
|
|
21
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
22
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
23
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
24
|
+
t[p[i]] = s[p[i]];
|
|
25
|
+
}
|
|
26
|
+
return t;
|
|
27
|
+
};
|
|
17
28
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
29
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
30
|
};
|
|
@@ -36,8 +47,8 @@ var bounds_util_1 = require("../../../utilities/bounds.util");
|
|
|
36
47
|
var wheel = { step: 0.05 };
|
|
37
48
|
var doubleClick = { disabled: true };
|
|
38
49
|
var GameTable = function (_a) {
|
|
39
|
-
var collisionAlgorithm = _a.collisionAlgorithm, perspective = _a.perspective, xMin = _a.xMin, xMax = _a.xMax, yMin = _a.yMin, yMax = _a.yMax, _b = _a.margin, margin = _b === void 0 ? { left: 0, right: 0, top: 7, bottom: 0 } : _b;
|
|
40
|
-
var
|
|
50
|
+
var collisionAlgorithm = _a.collisionAlgorithm, perspective = _a.perspective, xMin = _a.xMin, xMax = _a.xMax, yMin = _a.yMin, yMax = _a.yMax, _b = _a.margin, margin = _b === void 0 ? { left: 0, right: 0, top: 7, bottom: 0 } : _b, background = _a.background, _c = _a.backgroundOverlay, backgroundOverlay = _c === void 0 ? 'rgba(0, 0, 0, 0.8)' : _c, children = _a.children, props = __rest(_a, ["collisionAlgorithm", "perspective", "xMin", "xMax", "yMin", "yMax", "margin", "background", "backgroundOverlay", "children"]);
|
|
51
|
+
var _d = (0, react_1.useState)(false), dragging = _d[0], setDragging = _d[1];
|
|
41
52
|
var context = (0, hooks_1.useMaterialContext)();
|
|
42
53
|
var play = (0, hooks_1.usePlay)();
|
|
43
54
|
var legalMoves = (0, hooks_1.useLegalMoves)();
|
|
@@ -77,25 +88,32 @@ var GameTable = function (_a) {
|
|
|
77
88
|
}, []);
|
|
78
89
|
var hm = margin.left + margin.right;
|
|
79
90
|
var vm = margin.top + margin.bottom;
|
|
80
|
-
var tableFontSize =
|
|
91
|
+
var tableFontSize = 4;
|
|
81
92
|
var minScale = (100 - vm) / tableFontSize / (yMax - yMin);
|
|
82
93
|
var ratio = (xMax - xMin) / (yMax - yMin);
|
|
83
94
|
var ratioWithMargins = ((100 - vm) * ratio + hm) / 100;
|
|
84
|
-
return ((0, jsx_runtime_1.jsxs)(core_1.DndContext, __assign({ collisionDetection: collisionAlgorithm, measuring: { draggable: { measure: core_1.getClientRect }, droppable: { measure: core_1.getClientRect } }, modifiers: [modifiers_1.snapCenterToCursor], onDragStart: function () { return setDragging(true); }, onDragEnd: onDragEnd, onDragCancel: function () { return setDragging(false); } }, { children: [(0, jsx_runtime_1.jsx)(react_2.Global, { styles: [emotion_normalize_1.default, globalStyle, globalFontSize(ratioWithMargins)] }), (0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformWrapper, __assign({ ref: ref, minScale: minScale, maxScale: 1, initialScale: minScale, centerOnInit: true, wheel: wheel, smooth: false, panning: { disabled: dragging }, disablePadding: true, doubleClick: doubleClick }, { children: (0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformComponent, __assign({ wrapperStyle: {
|
|
95
|
+
return ((0, jsx_runtime_1.jsxs)(core_1.DndContext, __assign({ collisionDetection: collisionAlgorithm, measuring: { draggable: { measure: core_1.getClientRect }, droppable: { measure: core_1.getClientRect } }, modifiers: [modifiers_1.snapCenterToCursor], onDragStart: function () { return setDragging(true); }, onDragEnd: onDragEnd, onDragCancel: function () { return setDragging(false); } }, { children: [(0, jsx_runtime_1.jsx)(react_2.Global, { styles: [emotion_normalize_1.default, globalStyle, backgroundImage(background, context.player, backgroundOverlay), globalFontSize(ratioWithMargins)] }), (0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformWrapper, __assign({ ref: ref, minScale: minScale, maxScale: 1, initialScale: minScale, centerOnInit: true, wheel: wheel, smooth: false, panning: { disabled: dragging }, disablePadding: true, doubleClick: doubleClick }, { children: (0, jsx_runtime_1.jsx)(react_zoom_pan_pinch_1.TransformComponent, __assign({ wrapperStyle: {
|
|
85
96
|
position: 'absolute',
|
|
86
97
|
margin: "".concat(margin.top, "em ").concat(margin.right, "em ").concat(margin.bottom, "em ").concat(margin.left, "em"),
|
|
87
98
|
transformStyle: 'preserve-3d',
|
|
88
|
-
height: "min(100% - ".concat(vm, "em, (
|
|
89
|
-
width: "calc(
|
|
99
|
+
height: "min(100% - ".concat(vm, "em, (100dvw - ").concat(hm, "em) / ").concat(ratio, ")"),
|
|
100
|
+
width: "calc(100dvw - ".concat(hm, "em)"),
|
|
90
101
|
overflow: 'visible'
|
|
91
|
-
} }, { children: (0, jsx_runtime_1.
|
|
102
|
+
} }, { children: (0, jsx_runtime_1.jsxs)("div", __assign({ css: [tableCss(xMin, xMax, yMin, yMax), (0, css_1.fontSizeCss)(tableFontSize), perspective && (0, css_1.perspectiveCss)(perspective)] }, props, { children: [(0, jsx_runtime_1.jsx)(GameMaterialDisplay_1.GameMaterialDisplay, {}), children] })) })) }))] })));
|
|
92
103
|
};
|
|
93
104
|
exports.GameTable = GameTable;
|
|
94
105
|
function dataIsLocation(data) {
|
|
95
106
|
return typeof (data === null || data === void 0 ? void 0 : data.type) === 'number';
|
|
96
107
|
}
|
|
97
|
-
var globalStyle = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *, *::before, *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n body {\n margin: 0;\n font-family: \"Mulish\", sans-serif;\n }\n\n #root {\n position: absolute;\n height:
|
|
98
|
-
var
|
|
99
|
-
|
|
100
|
-
|
|
108
|
+
var globalStyle = (0, react_2.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *, *::before, *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n body {\n margin: 0;\n font-family: \"Mulish\", sans-serif;\n }\n\n #root {\n position: absolute;\n height: 100dvh;\n width: 100dvw;\n -webkit-touch-callout: none;\n user-select: none;\n overflow: hidden;\n background-color: white;\n background-size: cover;\n background-position: center;\n color: #eee;\n }\n"], ["\n html {\n -webkit-box-sizing: border-box;\n -moz-box-sizing: border-box;\n box-sizing: border-box;\n }\n\n *, *::before, *::after {\n -webkit-box-sizing: inherit;\n -moz-box-sizing: inherit;\n box-sizing: inherit;\n }\n\n body {\n margin: 0;\n font-family: \"Mulish\", sans-serif;\n }\n\n #root {\n position: absolute;\n height: 100dvh;\n width: 100dvw;\n -webkit-touch-callout: none;\n user-select: none;\n overflow: hidden;\n background-color: white;\n background-size: cover;\n background-position: center;\n color: #eee;\n }\n"])));
|
|
109
|
+
var backgroundImage = function (background, player, backgroundOverlay) {
|
|
110
|
+
if (background === void 0) { background = process.env.PUBLIC_URL + '/cover-1920.jpg'; }
|
|
111
|
+
return [
|
|
112
|
+
(0, react_2.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n #root {\n background-image: url(", ");\n }\n "], ["\n #root {\n background-image: url(", ");\n }\n "])), typeof background === 'function' ? background(player) : background),
|
|
113
|
+
backgroundOverlay && (0, react_2.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n #root {\n &:before {\n content: '';\n display: block;\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: ", ";\n }\n }\n "], ["\n #root {\n &:before {\n content: '';\n display: block;\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: ", ";\n }\n }\n "])), backgroundOverlay)
|
|
114
|
+
];
|
|
115
|
+
};
|
|
116
|
+
var globalFontSize = function (ratio) { return (0, react_2.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n body {\n font-size: 1dvh;\n @media (max-aspect-ratio: ", "/1) {\n font-size: calc(1dvw / ", ");\n }\n }\n"], ["\n body {\n font-size: 1dvh;\n @media (max-aspect-ratio: ", "/1) {\n font-size: calc(1dvw / ", ");\n }\n }\n"])), ratio, ratio); };
|
|
117
|
+
var tableCss = function (xMin, xMax, yMin, yMax) { return (0, react_2.css)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n transform-style: preserve-3d;\n width: ", "em;\n height: ", "em;\n\n > * {\n position: absolute;\n top: ", "em;\n left: ", "em;\n transform-style: preserve-3d;\n }\n"], ["\n transform-style: preserve-3d;\n width: ", "em;\n height: ", "em;\n\n > * {\n position: absolute;\n top: ", "em;\n left: ", "em;\n transform-style: preserve-3d;\n }\n"])), xMax - xMin, yMax - yMin, -yMin, -xMin); };
|
|
118
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
101
119
|
//# sourceMappingURL=GameTable.js.map
|