@gamepark/react-client 5.16.1 → 5.17.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/Actions/AnimationPaused.d.ts +6 -0
- package/dist/Actions/AnimationPaused.js +9 -0
- package/dist/Actions/AnimationPaused.js.map +1 -0
- package/dist/GiveUp/GiveUp.d.ts +1 -0
- package/dist/Store/GamePageState.d.ts +1 -0
- package/dist/Store/gameReducer.d.ts +2 -1
- package/dist/Store/gameReducer.js +7 -2
- package/dist/Store/gameReducer.js.map +1 -1
- package/dist/animations/AnimationsListenerCreator.js +1 -1
- package/dist/animations/AnimationsListenerCreator.js.map +1 -1
- package/dist/api/Local/GameLocalAPI.js +1 -0
- package/dist/api/Local/GameLocalAPI.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/Actions/AnimationBreakComplete.d.ts +0 -5
- package/dist/Actions/AnimationBreakComplete.js +0 -6
- package/dist/Actions/AnimationBreakComplete.js.map +0 -1
- package/dist/Actions/EjectPlayer.d.ts +0 -6
- package/dist/Actions/EjectPlayer.js +0 -9
- package/dist/Actions/EjectPlayer.js.map +0 -1
- package/dist/Actions/IgnoreRematch.d.ts +0 -5
- package/dist/Actions/IgnoreRematch.js +0 -9
- package/dist/Actions/IgnoreRematch.js.map +0 -1
- package/dist/Actions/LeaveGame.d.ts +0 -5
- package/dist/Actions/LeaveGame.js +0 -9
- package/dist/Actions/LeaveGame.js.map +0 -1
- package/dist/Actions/MoveLegacyUndone.d.ts +0 -7
- package/dist/Actions/MoveLegacyUndone.js +0 -10
- package/dist/Actions/MoveLegacyUndone.js.map +0 -1
- package/dist/Actions/MuteSounds.d.ts +0 -4
- package/dist/Actions/MuteSounds.js +0 -5
- package/dist/Actions/MuteSounds.js.map +0 -1
- package/dist/Actions/SetDisplayState.d.ts +0 -6
- package/dist/Actions/SetDisplayState.js +0 -9
- package/dist/Actions/SetDisplayState.js.map +0 -1
- package/dist/Actions/StartRematch.d.ts +0 -7
- package/dist/Actions/StartRematch.js +0 -9
- package/dist/Actions/StartRematch.js.map +0 -1
- package/dist/Actions/UnmuteSounds.d.ts +0 -4
- package/dist/Actions/UnmuteSounds.js +0 -5
- package/dist/Actions/UnmuteSounds.js.map +0 -1
- package/dist/Chat/MessagesList.d.ts +0 -1
- package/dist/Chat/MessagesList.js +0 -43
- package/dist/Chat/MessagesList.js.map +0 -1
- package/dist/Concede/ConcedeButton.d.ts +0 -1
- package/dist/Concede/ConcedeButton.js +0 -60
- package/dist/Concede/ConcedeButton.js.map +0 -1
- package/dist/Concede/useConcede.d.ts +0 -1
- package/dist/Concede/useConcede.js +0 -18
- package/dist/Concede/useConcede.js.map +0 -1
- package/dist/EjectPlayer/useEjectPlayer.d.ts +0 -24
- package/dist/EjectPlayer/useEjectPlayer.js +0 -65
- package/dist/EjectPlayer/useEjectPlayer.js.map +0 -1
- package/dist/EjectPlayer/useEjectPlayerButton.d.ts +0 -6
- package/dist/EjectPlayer/useEjectPlayerButton.js +0 -47
- package/dist/EjectPlayer/useEjectPlayerButton.js.map +0 -1
- package/dist/Hooks/useDisplayState.d.ts +0 -1
- package/dist/Hooks/useDisplayState.js +0 -17
- package/dist/Hooks/useDisplayState.js.map +0 -1
- package/dist/Hooks/useEjection.d.ts +0 -1
- package/dist/Hooks/useEjection.js +0 -10
- package/dist/Hooks/useEjection.js.map +0 -1
- package/dist/Hooks/useFailures.d.ts +0 -1
- package/dist/Hooks/useFailures.js +0 -10
- package/dist/Hooks/useFailures.js.map +0 -1
- package/dist/Hooks/useLeaveGame.d.ts +0 -1
- package/dist/Hooks/useLeaveGame.js +0 -10
- package/dist/Hooks/useLeaveGame.js.map +0 -1
- package/dist/Hooks/useRematch.d.ts +0 -7
- package/dist/Hooks/useRematch.js +0 -17
- package/dist/Hooks/useRematch.js.map +0 -1
- package/dist/Hooks/useSound.d.ts +0 -7
- package/dist/Hooks/useSound.js +0 -25
- package/dist/Hooks/useSound.js.map +0 -1
- package/dist/Hooks/useUndo.d.ts +0 -6
- package/dist/Hooks/useUndo.js +0 -63
- package/dist/Hooks/useUndo.js.map +0 -1
- package/dist/Tutorial/TutorialButton.d.ts +0 -1
- package/dist/Tutorial/TutorialButton.js +0 -45
- package/dist/Tutorial/TutorialButton.js.map +0 -1
- package/dist/Types/Failure.d.ts +0 -7
- package/dist/Types/Failure.js +0 -10
- package/dist/Types/Failure.js.map +0 -1
- package/dist/Types/GamePageState.d.ts +0 -26
- package/dist/Types/GamePageState.js +0 -3
- package/dist/Types/GamePageState.js.map +0 -1
- package/dist/Types/PlayerTime.d.ts +0 -12
- package/dist/Types/PlayerTime.js +0 -3
- package/dist/Types/PlayerTime.js.map +0 -1
- package/dist/Types/RematchNotification.d.ts +0 -7
- package/dist/Types/RematchNotification.js +0 -12
- package/dist/Types/RematchNotification.js.map +0 -1
- package/dist/Types/RematchOffer.d.ts +0 -5
- package/dist/Types/RematchOffer.js +0 -3
- package/dist/Types/RematchOffer.js.map +0 -1
- package/dist/Types/Tutorial.d.ts +0 -5
- package/dist/Types/Tutorial.js +0 -3
- package/dist/Types/Tutorial.js.map +0 -1
- package/dist/animations/DisplayedAction.d.ts +0 -13
- package/dist/animations/DisplayedAction.js +0 -3
- package/dist/animations/DisplayedAction.js.map +0 -1
- package/dist/api/Client/game-apollo-client.d.ts +0 -2
- package/dist/api/Client/game-apollo-client.js +0 -30
- package/dist/api/Client/game-apollo-client.js.map +0 -1
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
-
return cooked;
|
|
5
|
-
};
|
|
6
|
-
var __assign = (this && this.__assign) || function () {
|
|
7
|
-
__assign = Object.assign || function(t) {
|
|
8
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
-
s = arguments[i];
|
|
10
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
-
t[p] = s[p];
|
|
12
|
-
}
|
|
13
|
-
return t;
|
|
14
|
-
};
|
|
15
|
-
return __assign.apply(this, arguments);
|
|
16
|
-
};
|
|
17
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
22
|
-
/** @jsxImportSource @emotion/react */
|
|
23
|
-
var react_1 = require("@emotion/react");
|
|
24
|
-
var free_regular_svg_icons_1 = require("@fortawesome/free-regular-svg-icons");
|
|
25
|
-
var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
|
|
26
|
-
var react_components_1 = require("@gamepark/react-components");
|
|
27
|
-
var react_2 = require("react");
|
|
28
|
-
var react_i18next_1 = require("react-i18next");
|
|
29
|
-
var react_redux_1 = require("react-redux");
|
|
30
|
-
var Menu_1 = require("../Menu");
|
|
31
|
-
var GameMode_1 = __importDefault(require("../Types/GameMode"));
|
|
32
|
-
var useConcede_1 = __importDefault(require("./useConcede"));
|
|
33
|
-
function ConcedeButton() {
|
|
34
|
-
var t = react_i18next_1.useTranslation().t;
|
|
35
|
-
var concede = useConcede_1.default()[0];
|
|
36
|
-
var _a = react_2.useState(false), displayPopup = _a[0], setDisplayPopup = _a[1];
|
|
37
|
-
var leave = function () {
|
|
38
|
-
concede();
|
|
39
|
-
setDisplayPopup(false);
|
|
40
|
-
};
|
|
41
|
-
var mode = react_redux_1.useSelector(function (state) { return state.mode; });
|
|
42
|
-
return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsxs("button", __assign({ css: [Menu_1.menuButtonCss, buttonCss], onClick: function () { return setDisplayPopup(true); } }, { children: [jsx_runtime_1.jsx(react_fontawesome_1.FontAwesomeIcon, { icon: free_regular_svg_icons_1.faFlag, css: iconCss }, void 0), t('Concede')] }), void 0),
|
|
43
|
-
jsx_runtime_1.jsxs(react_components_1.Dialog, __assign({ open: displayPopup, onBackdropClick: function () { return setDisplayPopup(false); }, css: dialogCss }, { children: [jsx_runtime_1.jsx("h2", __assign({ css: dialogTitle }, { children: t('Concede the game') }), void 0),
|
|
44
|
-
jsx_runtime_1.jsx("p", __assign({ css: paragraphCss }, { children: t('Vous serez éliminé et remplacé par un robot jouant au hasard.') }), void 0),
|
|
45
|
-
jsx_runtime_1.jsx("p", __assign({ css: paragraphCss }, { children: mode === GameMode_1.default.COMPETITIVE ?
|
|
46
|
-
t('La partie comptera comme une défaite au classement général.') :
|
|
47
|
-
t('Vos amis pourront terminer la partie sans vous.') }), void 0),
|
|
48
|
-
jsx_runtime_1.jsxs("div", __assign({ css: buttonLineCss }, { children: [jsx_runtime_1.jsx("button", __assign({ css: [Menu_1.menuButtonCss, inDialogButton], onClick: function () { return setDisplayPopup(false); } }, { children: t('Cancel') }), void 0),
|
|
49
|
-
jsx_runtime_1.jsxs("button", __assign({ css: [Menu_1.menuButtonCss, buttonCss, inDialogButton], onClick: leave }, { children: [jsx_runtime_1.jsx(react_fontawesome_1.FontAwesomeIcon, { icon: free_regular_svg_icons_1.faFlag, css: iconCss }, void 0), t('Concede')] }), void 0)] }), void 0)] }), void 0)] }, void 0));
|
|
50
|
-
}
|
|
51
|
-
exports.default = ConcedeButton;
|
|
52
|
-
var buttonCss = react_1.css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n color: darkred;\n border-color: darkred;\n &:focus, &:hover {\n background: #ffd7d7;\n }\n &:active {\n background: #ffbebe;\n }\n"], ["\n color: darkred;\n border-color: darkred;\n &:focus, &:hover {\n background: #ffd7d7;\n }\n &:active {\n background: #ffbebe;\n }\n"])));
|
|
53
|
-
var iconCss = react_1.css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n margin-right: 0.5em;\n"], ["\n margin-right: 0.5em;\n"])));
|
|
54
|
-
var dialogCss = react_1.css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-family: \"Mulish\", sans-serif;\n"], ["\n font-family: \"Mulish\", sans-serif;\n"])));
|
|
55
|
-
var dialogTitle = react_1.css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n margin: 0;\n"], ["\n margin: 0;\n"])));
|
|
56
|
-
var paragraphCss = react_1.css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n margin: 0.5em 0;\n"], ["\n margin: 0.5em 0;\n"])));
|
|
57
|
-
var buttonLineCss = react_1.css(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n margin-top: 1em;\n display: flex;\n justify-content: space-between;\n"], ["\n margin-top: 1em;\n display: flex;\n justify-content: space-between;\n"])));
|
|
58
|
-
var inDialogButton = react_1.css(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n font-size: 1.125em;\n margin: 0;\n"], ["\n font-size: 1.125em;\n margin: 0;\n"])));
|
|
59
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7;
|
|
60
|
-
//# sourceMappingURL=ConcedeButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConcedeButton.js","sourceRoot":"","sources":["../../src/Concede/ConcedeButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,wCAAkC;AAClC,8EAA0D;AAC1D,oEAA8D;AAC9D,+DAAiD;AACjD,+BAA8B;AAC9B,+CAA4C;AAC5C,2CAAuC;AACvC,gCAAqC;AACrC,+DAAwC;AAExC,4DAAqC;AAErC,SAAwB,aAAa;IAC5B,IAAA,CAAC,GAAI,8BAAc,EAAE,EAApB,CAAoB;IACrB,IAAA,OAAO,GAAI,oBAAU,EAAE,GAAhB,CAAgB;IACxB,IAAA,KAAkC,gBAAQ,CAAC,KAAK,CAAC,EAAhD,YAAY,QAAA,EAAE,eAAe,QAAmB,CAAA;IACvD,IAAM,KAAK,GAAG;QACZ,OAAO,EAAE,CAAA;QACT,eAAe,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC,CAAA;IACD,IAAM,IAAI,GAAG,yBAAW,CAAgB,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,IAAI,EAAV,CAAU,CAAC,CAAA;IAE5D,OAAO,CACL,wDACE,wCAAQ,GAAG,EAAE,CAAC,oBAAa,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,cAAM,OAAA,eAAe,CAAC,IAAI,CAAC,EAArB,CAAqB,iBAC3E,kBAAC,mCAAe,IAAC,IAAI,EAAE,+BAAM,EAAE,GAAG,EAAE,OAAO,WAAG,EAC7C,CAAC,CAAC,SAAS,CAAC,aACN;YACT,mBAAC,yBAAM,aAAC,IAAI,EAAE,YAAY,EAAE,eAAe,EAAE,cAAM,OAAA,eAAe,CAAC,KAAK,CAAC,EAAtB,CAAsB,EAAE,GAAG,EAAE,SAAS,iBAEvF,mCAAI,GAAG,EAAE,WAAW,gBAAG,CAAC,CAAC,kBAAkB,CAAC,YAAM;oBAClD,kCAAG,GAAG,EAAE,YAAY,gBAAG,CAAC,CAAC,+DAA+D,CAAC,YAAK;oBAC9F,kCAAG,GAAG,EAAE,YAAY,gBAAG,IAAI,KAAK,kBAAQ,CAAC,WAAW,CAAC,CAAC;4BACpD,CAAC,CAAC,6DAA6D,CAAC,CAAC,CAAC;4BAClE,CAAC,CAAC,iDAAiD,CAAC,YAClD;oBACJ,qCAAK,GAAG,EAAE,aAAa,iBACrB,uCAAQ,GAAG,EAAE,CAAC,oBAAa,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,cAAM,OAAA,eAAe,CAAC,KAAK,CAAC,EAAtB,CAAsB,gBAAG,CAAC,CAAC,QAAQ,CAAC,YAAU;4BAC3G,wCAAQ,GAAG,EAAE,CAAC,oBAAa,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,KAAK,iBACrE,kBAAC,mCAAe,IAAC,IAAI,EAAE,+BAAM,EAAE,GAAG,EAAE,OAAO,WAAG,EAC7C,CAAC,CAAC,SAAS,CAAC,aACN,aACL,aACC,YACR,CACJ,CAAA;AACH,CAAC;AAlCD,gCAkCC;AAED,IAAM,SAAS,GAAG,WAAG,sNAAA,mJASpB,IAAA,CAAA;AAED,IAAM,OAAO,GAAG,WAAG,+FAAA,4BAElB,IAAA,CAAA;AAED,IAAM,SAAS,GAAG,WAAG,+GAAA,4CAEpB,IAAA,CAAA;AAED,IAAM,WAAW,GAAG,WAAG,qFAAA,kBAEtB,IAAA,CAAA;AAED,IAAM,YAAY,GAAG,WAAG,2FAAA,wBAEvB,IAAA,CAAA;AAED,IAAM,aAAa,GAAG,WAAG,gJAAA,6EAIxB,IAAA,CAAA;AAED,IAAM,cAAc,GAAG,WAAG,4GAAA,yCAGzB,IAAA,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function useConcede(): [() => void, boolean];
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var react_redux_1 = require("react-redux");
|
|
7
|
-
var LeaveGame_1 = require("../Actions/LeaveGame");
|
|
8
|
-
var usePlayerId_1 = __importDefault(require("../Hooks/usePlayerId"));
|
|
9
|
-
function useConcede() {
|
|
10
|
-
var dispatch = react_redux_1.useDispatch();
|
|
11
|
-
var concede = function () { return dispatch(LeaveGame_1.LeaveGame()); };
|
|
12
|
-
var playerId = usePlayerId_1.default();
|
|
13
|
-
var gameOver = react_redux_1.useSelector(function (state) { return state.gameOver; });
|
|
14
|
-
var canConcede = playerId !== undefined && !gameOver;
|
|
15
|
-
return [concede, canConcede];
|
|
16
|
-
}
|
|
17
|
-
exports.default = useConcede;
|
|
18
|
-
//# sourceMappingURL=useConcede.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useConcede.js","sourceRoot":"","sources":["../../src/Concede/useConcede.ts"],"names":[],"mappings":";;;;;AAAA,2CAAoD;AACpD,kDAA8C;AAC9C,qEAA8C;AAG9C,SAAwB,UAAU;IAChC,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,IAAM,OAAO,GAAG,cAAM,OAAA,QAAQ,CAAC,qBAAS,EAAE,CAAC,EAArB,CAAqB,CAAA;IAC3C,IAAM,QAAQ,GAAG,qBAAW,EAAE,CAAA;IAC9B,IAAM,QAAQ,GAAG,yBAAW,CAAC,UAAC,KAAoB,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAd,CAAc,CAAC,CAAA;IACtE,IAAM,UAAU,GAAG,QAAQ,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAA;IACtD,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;AAC9B,CAAC;AAPD,6BAOC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export default function useEjectPlayer<PlayerId = any>(): {
|
|
2
|
-
getAwaitedPlayers: () => {
|
|
3
|
-
time: {
|
|
4
|
-
availableTime: number;
|
|
5
|
-
playing: boolean;
|
|
6
|
-
lastChange: string;
|
|
7
|
-
highestPlayTime: number;
|
|
8
|
-
highestDownTime: number;
|
|
9
|
-
cumulatedPlayTime: number;
|
|
10
|
-
cumulatedDownTime: number;
|
|
11
|
-
cumulatedWaitForMeTime: number;
|
|
12
|
-
weightedWaitForMeTime: number;
|
|
13
|
-
};
|
|
14
|
-
id: any;
|
|
15
|
-
name?: string;
|
|
16
|
-
avatar?: any;
|
|
17
|
-
gamePointsDelta?: number;
|
|
18
|
-
quit: boolean;
|
|
19
|
-
}[];
|
|
20
|
-
maxExceedTime: number;
|
|
21
|
-
ejectPlayer: (playerId?: PlayerId) => void;
|
|
22
|
-
canEjectPlayer: (playerId?: PlayerId) => boolean;
|
|
23
|
-
isWaitingOpponentWithNegativeTime: () => boolean;
|
|
24
|
-
};
|
|
@@ -1,65 +0,0 @@
|
|
|
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 __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
var rules_api_1 = require("@gamepark/rules-api");
|
|
18
|
-
var react_redux_1 = require("react-redux");
|
|
19
|
-
var useNow_1 = __importDefault(require("../Hooks/useNow"));
|
|
20
|
-
var usePlayerId_1 = __importDefault(require("../Hooks/usePlayerId"));
|
|
21
|
-
var EjectPlayer_1 = require("./EjectPlayer");
|
|
22
|
-
function useEjectPlayer() {
|
|
23
|
-
var _a;
|
|
24
|
-
var dispatch = react_redux_1.useDispatch();
|
|
25
|
-
var playerId = usePlayerId_1.default();
|
|
26
|
-
var gameOver = react_redux_1.useSelector(function (state) { return state.gameOver; });
|
|
27
|
-
var players = react_redux_1.useSelector(function (state) { return state.players; });
|
|
28
|
-
var options = react_redux_1.useSelector(function (state) { return state.options; });
|
|
29
|
-
var now = useNow_1.default({ standby: (options === null || options === void 0 ? void 0 : options.speed) !== rules_api_1.GameSpeed.RealTime });
|
|
30
|
-
var maxExceedTime = (_a = options === null || options === void 0 ? void 0 : options.maxExceedTime) !== null && _a !== void 0 ? _a : 60000;
|
|
31
|
-
var getAwaitedPlayers = function () { return (options === null || options === void 0 ? void 0 : options.speed) === rules_api_1.GameSpeed.RealTime ? players.filter(function (player) { var _a; return (_a = player.time) === null || _a === void 0 ? void 0 : _a.playing; })
|
|
32
|
-
.map(function (player) { return (__assign(__assign({}, player), { time: __assign(__assign({}, player.time), { availableTime: player.time.availableTime - now + Date.parse(player.time.lastChange) }) })); })
|
|
33
|
-
.sort(function (playerA, playerB) { return playerA.time.availableTime - playerB.time.availableTime; }) : []; };
|
|
34
|
-
return {
|
|
35
|
-
getAwaitedPlayers: getAwaitedPlayers, maxExceedTime: maxExceedTime,
|
|
36
|
-
ejectPlayer: function (playerId) {
|
|
37
|
-
if (playerId === undefined) {
|
|
38
|
-
var awaitedPlayers = getAwaitedPlayers();
|
|
39
|
-
if (awaitedPlayers.length === 0) {
|
|
40
|
-
return console.error('No one is awaited');
|
|
41
|
-
}
|
|
42
|
-
else {
|
|
43
|
-
playerId = awaitedPlayers[0].id;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
dispatch(EjectPlayer_1.ejectPlayerAction(playerId));
|
|
47
|
-
},
|
|
48
|
-
canEjectPlayer: function (playerId) {
|
|
49
|
-
var awaitedPlayers = getAwaitedPlayers();
|
|
50
|
-
var player = awaitedPlayers.find(function (player) { return playerId !== undefined ? player.id === playerId : true; });
|
|
51
|
-
if (!player) {
|
|
52
|
-
return false;
|
|
53
|
-
}
|
|
54
|
-
return player.time.availableTime <= -maxExceedTime;
|
|
55
|
-
},
|
|
56
|
-
isWaitingOpponentWithNegativeTime: function () {
|
|
57
|
-
var awaitedPlayers = getAwaitedPlayers();
|
|
58
|
-
var playerIsWaiting = playerId !== undefined && !gameOver && !awaitedPlayers.some(function (player) { return player.id === playerId; });
|
|
59
|
-
var opponentHasNegativeTime = awaitedPlayers.some(function (player) { return player.time.availableTime < 0; });
|
|
60
|
-
return playerIsWaiting && opponentHasNegativeTime;
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
exports.default = useEjectPlayer;
|
|
65
|
-
//# sourceMappingURL=useEjectPlayer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useEjectPlayer.js","sourceRoot":"","sources":["../../src/EjectPlayer/useEjectPlayer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getPlayerTimeout = void 0;
|
|
4
|
-
var rules_api_1 = require("@gamepark/rules-api");
|
|
5
|
-
var react_1 = require("react");
|
|
6
|
-
var react_redux_1 = require("react-redux");
|
|
7
|
-
/**
|
|
8
|
-
* Returns true if I wait an opponent with negative time
|
|
9
|
-
*/
|
|
10
|
-
function useEjectPlayerButton() {
|
|
11
|
-
var _a = react_redux_1.useSelector(function (state) { return ({
|
|
12
|
-
options: state.options,
|
|
13
|
-
playerId: state.playerId,
|
|
14
|
-
players: state.players,
|
|
15
|
-
clientTimeDelta: state.clientTimeDelta
|
|
16
|
-
}); }), options = _a.options, playerId = _a.playerId, players = _a.players, clientTimeDelta = _a.clientTimeDelta;
|
|
17
|
-
var _b = react_1.useState(false), result = _b[0], setResult = _b[1];
|
|
18
|
-
var player = players.find(function (p) { return p.id === playerId; });
|
|
19
|
-
var awaitedPlayers = players.filter(function (p) { var _a; return (_a = p.time) === null || _a === void 0 ? void 0 : _a.playing; }).sort(function (a, b) { return getPlayerTimeout(a) - getPlayerTimeout(b); });
|
|
20
|
-
var opponent = awaitedPlayers.find(function (p) { return p.id !== playerId; });
|
|
21
|
-
react_1.useEffect(function () {
|
|
22
|
-
var _a;
|
|
23
|
-
if (!options || options.speed === rules_api_1.GameSpeed.Disabled || !player || ((_a = player.time) === null || _a === void 0 ? void 0 : _a.playing) || !opponent) {
|
|
24
|
-
setResult(false);
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
var timeBeforeNegativeTimer = getPlayerTimeout(opponent) - new Date().getTime() - clientTimeDelta;
|
|
28
|
-
if (timeBeforeNegativeTimer > 0) {
|
|
29
|
-
var timeout_1 = setTimeout(function () { return setResult(true); }, timeBeforeNegativeTimer);
|
|
30
|
-
return function () { return clearTimeout(timeout_1); };
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
setResult(true);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
return;
|
|
37
|
-
}, [options, player, opponent]);
|
|
38
|
-
return result;
|
|
39
|
-
}
|
|
40
|
-
exports.default = useEjectPlayerButton;
|
|
41
|
-
function getPlayerTimeout(player) {
|
|
42
|
-
if (!player.time || !player.time.playing)
|
|
43
|
-
return Infinity;
|
|
44
|
-
return Date.parse(player.time.lastChange) + player.time.availableTime;
|
|
45
|
-
}
|
|
46
|
-
exports.getPlayerTimeout = getPlayerTimeout;
|
|
47
|
-
//# sourceMappingURL=useEjectPlayerButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useEjectPlayerButton.js","sourceRoot":"","sources":["../../src/EjectPlayer/useEjectPlayerButton.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAC7C,+BAAyC;AACzC,2CAAuC;AAIvC;;GAEG;AACH,SAAwB,oBAAoB;IACpC,IAAA,KAAgD,yBAAW,CAAC,UAAC,KAAoB,IAAK,OAAA,CAAC;QAC3F,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,eAAe,EAAE,KAAK,CAAC,eAAe;KACvC,CAAC,EAL0F,CAK1F,CAAC,EALI,OAAO,aAAA,EAAE,QAAQ,cAAA,EAAE,OAAO,aAAA,EAAE,eAAe,qBAK/C,CAAA;IACG,IAAA,KAAsB,gBAAQ,CAAC,KAAK,CAAC,EAApC,MAAM,QAAA,EAAE,SAAS,QAAmB,CAAA;IAC3C,IAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,QAAQ,EAAjB,CAAiB,CAAC,CAAA;IACnD,IAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,UAAA,CAAC,YAAI,OAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,OAAO,CAAA,EAAA,CAAC,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,gBAAgB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,EAAzC,CAAyC,CAAC,CAAA;IACrH,IAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,EAAE,KAAK,QAAQ,EAAjB,CAAiB,CAAC,CAAA;IAC5D,iBAAS,CAAC;;QACR,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,KAAK,qBAAS,CAAC,QAAQ,IAAI,CAAC,MAAM,KAAI,MAAA,MAAM,CAAC,IAAI,0CAAE,OAAO,CAAA,IAAI,CAAC,QAAQ,EAAE;YACpG,SAAS,CAAC,KAAK,CAAC,CAAA;SACjB;aAAM;YACL,IAAM,uBAAuB,GAAG,gBAAgB,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,eAAe,CAAA;YACnG,IAAI,uBAAuB,GAAG,CAAC,EAAE;gBAC/B,IAAM,SAAO,GAAG,UAAU,CAAC,cAAM,OAAA,SAAS,CAAC,IAAI,CAAC,EAAf,CAAe,EAAE,uBAAuB,CAAC,CAAA;gBAC1E,OAAO,cAAM,OAAA,YAAY,CAAC,SAAO,CAAC,EAArB,CAAqB,CAAA;aACnC;iBAAM;gBACL,SAAS,CAAC,IAAI,CAAC,CAAA;aAChB;SACF;QACD,OAAM;IACR,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC/B,OAAO,MAAM,CAAA;AACf,CAAC;AA1BD,uCA0BC;AAED,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;QAAE,OAAO,QAAQ,CAAA;IACzD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAA;AACvE,CAAC;AAHD,4CAGC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function useDisplayState<State>(initialState: State): [State, (state: State) => void];
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_1 = require("react");
|
|
4
|
-
var react_redux_1 = require("react-redux");
|
|
5
|
-
var SetDisplayState_1 = require("../Actions/SetDisplayState");
|
|
6
|
-
function useDisplayState(initialState) {
|
|
7
|
-
var displayState = react_redux_1.useSelector(function (state) { return state.displayState; });
|
|
8
|
-
var dispatch = react_redux_1.useDispatch();
|
|
9
|
-
react_1.useEffect(function () {
|
|
10
|
-
if (initialState) {
|
|
11
|
-
dispatch(SetDisplayState_1.setDisplayState(initialState));
|
|
12
|
-
}
|
|
13
|
-
}, [initialState]);
|
|
14
|
-
return [displayState !== undefined ? displayState : initialState, function (displayState) { return dispatch(SetDisplayState_1.setDisplayState(displayState)); }];
|
|
15
|
-
}
|
|
16
|
-
exports.default = useDisplayState;
|
|
17
|
-
//# sourceMappingURL=useDisplayState.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDisplayState.js","sourceRoot":"","sources":["../../src/Hooks/useDisplayState.ts"],"names":[],"mappings":";;AAAA,+BAA+B;AAC/B,2CAAoD;AACpD,8DAA0D;AAG1D,SAAwB,eAAe,CAAQ,YAAmB;IAChE,IAAM,YAAY,GAAG,yBAAW,CAAyD,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC,CAAA;IACrH,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,iBAAS,CAAC;QACR,IAAI,YAAY,EAAE;YAChB,QAAQ,CAAC,iCAAe,CAAC,YAAY,CAAC,CAAC,CAAA;SACxC;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAClB,OAAO,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,YAAY,EAAE,UAAC,YAAY,IAAK,OAAA,QAAQ,CAAC,iCAAe,CAAC,YAAY,CAAC,CAAC,EAAvC,CAAuC,CAAC,CAAA;AAC9H,CAAC;AATD,kCASC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function useEjection<PlayerId = any>(): (playerId: PlayerId) => import("../Actions/EjectPlayer").default<PlayerId>;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_redux_1 = require("react-redux");
|
|
4
|
-
var EjectPlayer_1 = require("../Actions/EjectPlayer");
|
|
5
|
-
function useEjection() {
|
|
6
|
-
var dispatch = react_redux_1.useDispatch();
|
|
7
|
-
return function (playerId) { return dispatch(EjectPlayer_1.ejectPlayer(playerId)); };
|
|
8
|
-
}
|
|
9
|
-
exports.default = useEjection;
|
|
10
|
-
//# sourceMappingURL=useEjection.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useEjection.js","sourceRoot":"","sources":["../../src/Hooks/useEjection.ts"],"names":[],"mappings":";;AAAA,2CAAuC;AACvC,sDAAkD;AAElD,SAAwB,WAAW;IACjC,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,OAAO,UAAC,QAAkB,IAAK,OAAA,QAAQ,CAAC,yBAAW,CAAC,QAAQ,CAAC,CAAC,EAA/B,CAA+B,CAAA;AAChE,CAAC;AAHD,8BAGC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function useFailures<Move = any>(): [string[], () => {}];
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_redux_1 = require("react-redux");
|
|
4
|
-
var ClearFailures_1 = require("../Actions/ClearFailures");
|
|
5
|
-
function useFailures() {
|
|
6
|
-
var dispatch = react_redux_1.useDispatch();
|
|
7
|
-
return [react_redux_1.useSelector(function (state) { return state.failures; }), function () { return dispatch(ClearFailures_1.clearFailures()); }];
|
|
8
|
-
}
|
|
9
|
-
exports.default = useFailures;
|
|
10
|
-
//# sourceMappingURL=useFailures.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useFailures.js","sourceRoot":"","sources":["../../src/Hooks/useFailures.ts"],"names":[],"mappings":";;AAAA,2CAAoD;AACpD,0DAAsD;AAGtD,SAAwB,WAAW;IACjC,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,OAAO,CAAC,yBAAW,CAAC,UAAC,KAA+B,IAAK,OAAA,KAAK,CAAC,QAAQ,EAAd,CAAc,CAAC,EAAE,cAAM,OAAA,QAAQ,CAAC,6BAAa,EAAE,CAAC,EAAzB,CAAyB,CAAC,CAAA;AAC5G,CAAC;AAHD,8BAGC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function useLeaveGame(): () => import("../Actions/LeaveGame").default;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_redux_1 = require("react-redux");
|
|
4
|
-
var LeaveGame_1 = require("../Actions/LeaveGame");
|
|
5
|
-
function useLeaveGame() {
|
|
6
|
-
var dispatch = react_redux_1.useDispatch();
|
|
7
|
-
return function () { return dispatch(LeaveGame_1.LeaveGame()); };
|
|
8
|
-
}
|
|
9
|
-
exports.default = useLeaveGame;
|
|
10
|
-
//# sourceMappingURL=useLeaveGame.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useLeaveGame.js","sourceRoot":"","sources":["../../src/Hooks/useLeaveGame.ts"],"names":[],"mappings":";;AAAA,2CAAuC;AACvC,kDAA8C;AAE9C,SAAwB,YAAY;IAClC,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,OAAO,cAAM,OAAA,QAAQ,CAAC,qBAAS,EAAE,CAAC,EAArB,CAAqB,CAAA;AACpC,CAAC;AAHD,+BAGC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import RematchOffer from '../Types/RematchOffer';
|
|
2
|
-
export default function useRematch<PlayerId>(): {
|
|
3
|
-
rematch: () => import("../Actions/StartRematch").default<unknown>;
|
|
4
|
-
rematchOffer: RematchOffer<PlayerId>;
|
|
5
|
-
ignoreRematch: () => import("../Actions/IgnoreRematch").default;
|
|
6
|
-
pending: boolean;
|
|
7
|
-
};
|
package/dist/Hooks/useRematch.js
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_redux_1 = require("react-redux");
|
|
4
|
-
var IgnoreRematch_1 = require("../Actions/IgnoreRematch");
|
|
5
|
-
var StartRematch_1 = require("../Actions/StartRematch");
|
|
6
|
-
function useRematch() {
|
|
7
|
-
var dispatch = (0, react_redux_1.useDispatch)();
|
|
8
|
-
var rematchOffer = (0, react_redux_1.useSelector)(function (state) { return state.rematchOffer; });
|
|
9
|
-
return {
|
|
10
|
-
rematch: function () { return dispatch((0, StartRematch_1.startRematch)()); },
|
|
11
|
-
rematchOffer: rematchOffer,
|
|
12
|
-
ignoreRematch: function () { return dispatch((0, IgnoreRematch_1.ignoreRematch)()); },
|
|
13
|
-
pending: rematchOffer && !rematchOffer.link
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
exports.default = useRematch;
|
|
17
|
-
//# sourceMappingURL=useRematch.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useRematch.js","sourceRoot":"","sources":["../../src/Hooks/useRematch.ts"],"names":[],"mappings":";;AAAA,2CAAoD;AACpD,0DAAsD;AACtD,wDAAoD;AAIpD,SAAwB,UAAU;IAChC,IAAM,QAAQ,GAAG,IAAA,yBAAW,GAAE,CAAA;IAC9B,IAAM,YAAY,GAAG,IAAA,yBAAW,EAAwE,UAAA,KAAK,IAAI,OAAA,KAAK,CAAC,YAAY,EAAlB,CAAkB,CAAC,CAAA;IACpI,OAAO;QACL,OAAO,EAAE,cAAM,OAAA,QAAQ,CAAC,IAAA,2BAAY,GAAE,CAAC,EAAxB,CAAwB;QACvC,YAAY,cAAA;QACZ,aAAa,EAAE,cAAM,OAAA,QAAQ,CAAC,IAAA,6BAAa,GAAE,CAAC,EAAzB,CAAyB;QAC9C,OAAO,EAAE,YAAY,IAAI,CAAC,YAAY,CAAC,IAAI;KAC5C,CAAA;AACH,CAAC;AATD,6BASC"}
|
package/dist/Hooks/useSound.d.ts
DELETED
package/dist/Hooks/useSound.js
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var react_1 = require("react");
|
|
4
|
-
var react_redux_1 = require("react-redux");
|
|
5
|
-
var MuteSounds_1 = require("../Actions/MuteSounds");
|
|
6
|
-
var UnmuteSounds_1 = require("../Actions/UnmuteSounds");
|
|
7
|
-
function useSound(src) {
|
|
8
|
-
var audio = react_1.useState(new Audio(src))[0];
|
|
9
|
-
audio.muted = react_redux_1.useSelector(function (state) { return state.soundsMuted; });
|
|
10
|
-
var dispatch = react_redux_1.useDispatch();
|
|
11
|
-
return [audio, {
|
|
12
|
-
mute: function () {
|
|
13
|
-
dispatch({ type: MuteSounds_1.MUTE_SOUNDS });
|
|
14
|
-
localStorage.setItem('soundsMuted', 'true');
|
|
15
|
-
},
|
|
16
|
-
unmute: function () {
|
|
17
|
-
audio.muted = false; // Unmute immediately that sound so that it can be played to give feedback to the user
|
|
18
|
-
dispatch({ type: UnmuteSounds_1.UNMUTE_SOUNDS });
|
|
19
|
-
localStorage.removeItem('soundsMuted');
|
|
20
|
-
},
|
|
21
|
-
muted: audio.muted
|
|
22
|
-
}];
|
|
23
|
-
}
|
|
24
|
-
exports.default = useSound;
|
|
25
|
-
//# sourceMappingURL=useSound.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSound.js","sourceRoot":"","sources":["../../src/Hooks/useSound.ts"],"names":[],"mappings":";;AAAA,+BAA8B;AAC9B,2CAAoD;AACpD,oDAAiD;AACjD,wDAAqD;AASrD,SAAwB,QAAQ,CAAC,GAAW;IACnC,IAAA,KAAK,GAAI,gBAAQ,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,GAA5B,CAA4B;IACxC,KAAK,CAAC,KAAK,GAAG,yBAAW,CAAC,UAAC,KAAoB,IAAK,OAAA,KAAK,CAAC,WAAW,EAAjB,CAAiB,CAAC,CAAA;IACtE,IAAM,QAAQ,GAAG,yBAAW,EAAE,CAAA;IAC9B,OAAO,CAAC,KAAK,EAAE;YACb,IAAI,EAAE;gBACJ,QAAQ,CAAC,EAAC,IAAI,EAAE,wBAAW,EAAC,CAAC,CAAA;gBAC7B,YAAY,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;YAC7C,CAAC;YACD,MAAM,EAAE;gBACN,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA,CAAC,sFAAsF;gBAC1G,QAAQ,CAAC,EAAC,IAAI,EAAE,4BAAa,EAAC,CAAC,CAAA;gBAC/B,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;YACxC,CAAC;YACD,KAAK,EAAE,KAAK,CAAC,KAAK;SACnB,CAAC,CAAA;AACJ,CAAC;AAhBD,2BAgBC"}
|
package/dist/Hooks/useUndo.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
declare type UndoOptions = {
|
|
2
|
-
delayed?: boolean;
|
|
3
|
-
};
|
|
4
|
-
declare type UndoFunction<Move> = (arg?: Move | UndoOptions, options?: UndoOptions) => void;
|
|
5
|
-
export default function useUndo<State, Move, PlayerId>(): [UndoFunction<Move>, (move?: Move) => boolean];
|
|
6
|
-
export {};
|
package/dist/Hooks/useUndo.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
var rules_api_1 = require("@gamepark/rules-api");
|
|
7
|
-
var fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
|
|
8
|
-
var react_1 = require("react");
|
|
9
|
-
var react_redux_1 = require("react-redux");
|
|
10
|
-
var MoveUndone_1 = require("../Actions/MoveUndone");
|
|
11
|
-
var GameContext_1 = __importDefault(require("../GameProvider/GameContext"));
|
|
12
|
-
var ArrayUtil_1 = require("../util/ArrayUtil");
|
|
13
|
-
function isUndoOptions(arg) {
|
|
14
|
-
if (typeof arg !== 'object')
|
|
15
|
-
return false;
|
|
16
|
-
var ownPropertyNames = Object.getOwnPropertyNames(arg);
|
|
17
|
-
return ownPropertyNames.length === 1 && ownPropertyNames[0] === 'delayed';
|
|
18
|
-
}
|
|
19
|
-
function useUndo() {
|
|
20
|
-
var _a;
|
|
21
|
-
var state = react_redux_1.useSelector(function (state) { return state; });
|
|
22
|
-
var Game = (_a = react_1.useContext(GameContext_1.default)) === null || _a === void 0 ? void 0 : _a.RulesView;
|
|
23
|
-
if (!Game)
|
|
24
|
-
throw new Error('Cannot useUndo outside a GameProvider');
|
|
25
|
-
var dispatch = react_redux_1.useDispatch();
|
|
26
|
-
return [function (arg, options) {
|
|
27
|
-
if (isUndoOptions(arg)) {
|
|
28
|
-
dispatch(undo(state, undefined, arg.delayed));
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
dispatch(undo(state, arg, options === null || options === void 0 ? void 0 : options.delayed));
|
|
32
|
-
}
|
|
33
|
-
}, function (move) {
|
|
34
|
-
if (!Game) {
|
|
35
|
-
console.error('A GameContext is required to use canUndo function in useUndo hook');
|
|
36
|
-
}
|
|
37
|
-
return canUndo(Game, state, move);
|
|
38
|
-
}];
|
|
39
|
-
}
|
|
40
|
-
exports.default = useUndo;
|
|
41
|
-
function undo(state, move, delayed) {
|
|
42
|
-
if (!state.actions) {
|
|
43
|
-
return console.error('Cannot undo before actions history is loaded');
|
|
44
|
-
}
|
|
45
|
-
var playerActions = state.actions.filter(function (action) { return action.playerId === state.playerId && !action.cancelled; });
|
|
46
|
-
var actionIndex = move ? playerActions.findIndex(function (action) { return fast_deep_equal_1.default(action.move, move); }) : playerActions.length - 1;
|
|
47
|
-
if (actionIndex === -1) {
|
|
48
|
-
return move ? console.error('Cannot undo: player action history does not contain this move', move)
|
|
49
|
-
: console.error('Cannot undo: player did not play any move yet');
|
|
50
|
-
}
|
|
51
|
-
return MoveUndone_1.moveUndone(actionIndex, delayed);
|
|
52
|
-
}
|
|
53
|
-
function canUndo(Game, state, move) {
|
|
54
|
-
if (!state.setup || !state.actions) {
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
var i = ArrayUtil_1.findLastIndex(state.actions, function (action) { return action.playerId === state.playerId && !action.cancelled && (!move || fast_deep_equal_1.default(action.move, move)); });
|
|
58
|
-
var consecutiveActions = state.actions.slice(i + 1).filter(function (action) { return !action.cancelled; });
|
|
59
|
-
var game = new Game(JSON.parse(JSON.stringify(state.setup)));
|
|
60
|
-
rules_api_1.replayActions(game, state.actions.filter(function (action) { return !action.delayed && !action.cancelled; }));
|
|
61
|
-
return i !== -1 && rules_api_1.hasUndo(game) && game.canUndo(state.actions[i], consecutiveActions);
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=useUndo.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useUndo.js","sourceRoot":"","sources":["../../src/Hooks/useUndo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export default function TutorialButton(): import("@emotion/react/jsx-runtime").JSX.Element;
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
-
return cooked;
|
|
5
|
-
};
|
|
6
|
-
var __assign = (this && this.__assign) || function () {
|
|
7
|
-
__assign = Object.assign || function(t) {
|
|
8
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
-
s = arguments[i];
|
|
10
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
-
t[p] = s[p];
|
|
12
|
-
}
|
|
13
|
-
return t;
|
|
14
|
-
};
|
|
15
|
-
return __assign.apply(this, arguments);
|
|
16
|
-
};
|
|
17
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
|
|
22
|
-
/** @jsxImportSource @emotion/react */
|
|
23
|
-
var react_1 = require("@emotion/react");
|
|
24
|
-
var free_solid_svg_icons_1 = require("@fortawesome/free-solid-svg-icons");
|
|
25
|
-
var react_fontawesome_1 = require("@fortawesome/react-fontawesome");
|
|
26
|
-
var react_2 = require("react");
|
|
27
|
-
var react_i18next_1 = require("react-i18next");
|
|
28
|
-
var GameContext_1 = __importDefault(require("../GameProvider/GameContext"));
|
|
29
|
-
var Menu_1 = require("../Menu");
|
|
30
|
-
function TutorialButton() {
|
|
31
|
-
var _a;
|
|
32
|
-
var t = react_i18next_1.useTranslation().t;
|
|
33
|
-
var game = (_a = react_2.useContext(GameContext_1.default)) === null || _a === void 0 ? void 0 : _a.game;
|
|
34
|
-
if (!game)
|
|
35
|
-
throw new Error('Cannot use TutorialButton outside a GameProvider context');
|
|
36
|
-
var onClick = function () {
|
|
37
|
-
localStorage.removeItem(game);
|
|
38
|
-
window.location.reload();
|
|
39
|
-
};
|
|
40
|
-
return (jsx_runtime_1.jsxs("button", __assign({ css: Menu_1.menuButtonCss, onClick: onClick }, { children: [jsx_runtime_1.jsx(react_fontawesome_1.FontAwesomeIcon, { icon: free_solid_svg_icons_1.faGraduationCap, css: iconCss }, void 0), t('Restart the tutorial')] }), void 0));
|
|
41
|
-
}
|
|
42
|
-
exports.default = TutorialButton;
|
|
43
|
-
var iconCss = react_1.css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin-right: 0.5em;\n"], ["\n margin-right: 0.5em;\n"])));
|
|
44
|
-
var templateObject_1;
|
|
45
|
-
//# sourceMappingURL=TutorialButton.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TutorialButton.js","sourceRoot":"","sources":["../../src/Tutorial/TutorialButton.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,wCAAkC;AAClC,0EAAiE;AACjE,oEAA8D;AAC9D,+BAAgC;AAChC,+CAA4C;AAC5C,4EAAqD;AACrD,gCAAqC;AAErC,SAAwB,cAAc;;IAC7B,IAAA,CAAC,GAAI,8BAAc,EAAE,EAApB,CAAoB;IAC5B,IAAM,IAAI,GAAG,MAAA,kBAAU,CAAC,qBAAW,CAAC,0CAAE,IAAI,CAAA;IAC1C,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAA;IAEtF,IAAM,OAAO,GAAG;QACd,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAA;IAC1B,CAAC,CAAA;IAED,OAAO,CACL,wCAAQ,GAAG,EAAE,oBAAa,EAAE,OAAO,EAAE,OAAO,iBAC1C,kBAAC,mCAAe,IAAC,IAAI,EAAE,sCAAe,EAAE,GAAG,EAAE,OAAO,WAAG,EACtD,CAAC,CAAC,sBAAsB,CAAC,aACnB,CACV,CAAA;AACH,CAAC;AAhBD,iCAgBC;AAED,IAAM,OAAO,GAAG,WAAG,+FAAA,4BAElB,IAAA,CAAA"}
|
package/dist/Types/Failure.d.ts
DELETED
package/dist/Types/Failure.js
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var Failure = {
|
|
4
|
-
NETWORK: 'Network error',
|
|
5
|
-
MOVE_FORBIDDEN: 'You are not allowed to play this move',
|
|
6
|
-
UNDO_FORBIDDEN: 'This move cannot be undone',
|
|
7
|
-
TUTORIAL_MOVE_EXPECTED: 'You must play the move expected by the tutorial'
|
|
8
|
-
};
|
|
9
|
-
exports.default = Failure;
|
|
10
|
-
//# sourceMappingURL=Failure.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Failure.js","sourceRoot":"","sources":["../../src/Types/Failure.ts"],"names":[],"mappings":";;AAAA,IAAM,OAAO,GAAG;IACd,OAAO,EAAE,eAAe;IACxB,cAAc,EAAE,uCAAuC;IACvD,cAAc,EAAE,4BAA4B;IAC5C,sBAAsB,EAAE,iDAAiD;CAC1E,CAAA;AAED,kBAAe,OAAO,CAAA"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import DisplayedAction from '../animations/DisplayedAction';
|
|
2
|
-
import GameMode from './GameMode';
|
|
3
|
-
import { IndexedGameNotification } from './GameNotification';
|
|
4
|
-
import GameOptions from './GameOptions';
|
|
5
|
-
import Player from './Player';
|
|
6
|
-
import RematchOffer from './RematchOffer';
|
|
7
|
-
declare type GamePageState<State = any, Move = any, PlayerId = any> = {
|
|
8
|
-
players: Player<PlayerId>[];
|
|
9
|
-
playerId?: PlayerId;
|
|
10
|
-
options?: GameOptions;
|
|
11
|
-
gameMode?: GameMode;
|
|
12
|
-
setup?: State;
|
|
13
|
-
state?: State;
|
|
14
|
-
actions?: DisplayedAction<Move, PlayerId>[];
|
|
15
|
-
pendingNotifications: IndexedGameNotification<PlayerId>[];
|
|
16
|
-
nextNotificationIndex: number;
|
|
17
|
-
failures: string[];
|
|
18
|
-
animationIncrement: number;
|
|
19
|
-
animationsSpeed: number;
|
|
20
|
-
animationsBreak?: boolean;
|
|
21
|
-
rematchOffer?: RematchOffer<PlayerId>;
|
|
22
|
-
soundsMuted: boolean;
|
|
23
|
-
clientTimeDelta: number;
|
|
24
|
-
gameOver?: boolean;
|
|
25
|
-
};
|
|
26
|
-
export default GamePageState;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GamePageState.js","sourceRoot":"","sources":["../../src/Types/GamePageState.ts"],"names":[],"mappings":""}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
declare type PlayerTime = {
|
|
2
|
-
playing: boolean;
|
|
3
|
-
lastChange: string;
|
|
4
|
-
availableTime: number;
|
|
5
|
-
highestPlayTime: number;
|
|
6
|
-
highestDownTime: number;
|
|
7
|
-
cumulatedPlayTime: number;
|
|
8
|
-
cumulatedDownTime: number;
|
|
9
|
-
cumulatedWaitForMeTime: number;
|
|
10
|
-
weightedWaitForMeTime: number;
|
|
11
|
-
};
|
|
12
|
-
export default PlayerTime;
|