diff --git a/app/ecolyo.347f2c7ea2ff21824df6.js b/app/ecolyo.2c39fadfce0c3616338c.js similarity index 99% rename from app/ecolyo.347f2c7ea2ff21824df6.js rename to app/ecolyo.2c39fadfce0c3616338c.js index 0dd828e8fd5242f41debdc6ed33ce05f6f01c7e6..e7b19fdce6b90980b6afff8a21e3edcb347a5f82 100644 --- a/app/ecolyo.347f2c7ea2ff21824df6.js +++ b/app/ecolyo.2c39fadfce0c3616338c.js @@ -2942,15 +2942,12 @@ var ChallengeView = function ChallengeView() { index = _useState8[0], setIndex = _useState8[1]; - var _useState9 = (0, _react.useState)(false), + var _useState9 = (0, _react.useState)(marginPx), _useState10 = (0, _slicedToArray2.default)(_useState9, 2), - isLastDuelDone = _useState10[0], - setIsLastDuelDone = _useState10[1]; + containerTranslation = _useState10[0], + setContainerTranslation = _useState10[1]; - var _useState11 = (0, _react.useState)(marginPx), - _useState12 = (0, _slicedToArray2.default)(_useState11, 2), - containerTranslation = _useState12[0], - setContainerTranslation = _useState12[1]; + var isLastDuelDone = userChallengeList[userChallengeList.length - 1].state == _enums.UserChallengeState.DONE; var resetValues = function resetValues() { // Method used to cancel a swipe on a simple click @@ -2959,7 +2956,7 @@ var ChallengeView = function ChallengeView() { }; var moveSliderRight = (0, _react.useCallback)(function () { - if (index < userChallengeList.length - 1 || isLastDuelDone && index < userChallengeList.length) { + if (index < userChallengeList.length - (isLastDuelDone ? 0 : 1)) { setContainerTranslation(function (prev) { return prev - cardWidth - marginPx; }); @@ -3018,11 +3015,6 @@ var ChallengeView = function ChallengeView() { setContainerTranslation(-currentChallengeIndex * (cardWidth + marginPx) + marginPx); setIndex(currentChallengeIndex); }, [userChallengeList, cardWidth, isLastDuelDone]); - (0, _react.useEffect)(function () { - if (userChallengeList[userChallengeList.length - 1].state == _enums.UserChallengeState.DONE) { - setIsLastDuelDone(true); - } - }, [userChallengeList]); return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_CozyBar.default, { titleKey: "common.title_challenge" }), /*#__PURE__*/_react.default.createElement(_Header.default, { @@ -3063,11 +3055,11 @@ var ChallengeView = function ChallengeView() { moveToSlide: moveToSlide }); }), isLastDuelDone && /*#__PURE__*/_react.default.createElement(_ChallengeCard.default, { + userChallenge: undefined, indexSlider: index, index: userChallengeList.length, cardWidth: cardWidth, cardHeight: cardHeight, - isChallengeCardLast: true, moveToSlide: moveToSlide }))), /*#__PURE__*/_react.default.createElement("div", { className: "sliderButtons" @@ -7853,7 +7845,7 @@ var DuelView = function DuelView() { }; var renderDuel = function renderDuel(challenge) { - switch (challenge.duel.state) { + switch (challenge === null || challenge === void 0 ? void 0 : challenge.duel.state) { case _enums.UserDuelState.UNLOCKED: return /*#__PURE__*/_react.default.createElement(_DuelUnlocked.default, { userChallenge: challenge @@ -7890,7 +7882,7 @@ var DuelView = function DuelView() { displayBackArrow: true }), /*#__PURE__*/_react.default.createElement(_Content.default, { heightOffset: headerHeight - }, /*#__PURE__*/_react.default.createElement("div", null, challengeToDisplay && (challengeToDisplay.state === _enums.UserChallengeState.DUEL || challengeToDisplay.state === _enums.UserChallengeState.DONE) ? renderDuel(challengeToDisplay) : /*#__PURE__*/_react.default.createElement(_DuelError.default, null)))); + }, renderDuel(challengeToDisplay))); }; var _default = DuelView; @@ -8065,15 +8057,15 @@ var LastDuelModal = function LastDuelModal(_ref) { className: "icon", icon: _star.default, size: 48 - }), /*#__PURE__*/_react.default.createElement("div", { - className: "text-28-bold title" - }, t('last_duel_modal.title')), /*#__PURE__*/_react.default.createElement("div", { - className: "text-22-bold subtitle" - }, t('last_duel_modal.subtitle')), /*#__PURE__*/_react.default.createElement("div", { - className: "text-18-normal content" - }, t('last_duel_modal.message1')), /*#__PURE__*/_react.default.createElement("div", { - className: "text-18-normal content" - }, t('last_duel_modal.message2')))); + }), /*#__PURE__*/_react.default.createElement("h1", { + className: "text-28-bold" + }, t('last_duel_modal.title')), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("h2", { + className: "text-22-bold" + }, t('last_duel_modal.subtitle')), /*#__PURE__*/_react.default.createElement("p", { + className: "text-18-normal" + }, t('last_duel_modal.message1')), /*#__PURE__*/_react.default.createElement("p", { + className: "text-18-normal" + }, t('last_duel_modal.message2'))))); }; var _default = LastDuelModal; @@ -11327,14 +11319,10 @@ var ChallengeCard = function ChallengeCard(_ref) { index = _ref.index, cardWidth = _ref.cardWidth, cardHeight = _ref.cardHeight, - _ref$isChallengeCardL = _ref.isChallengeCardLast, - isChallengeCardLast = _ref$isChallengeCardL === void 0 ? false : _ref$isChallengeCardL, moveToSlide = _ref.moveToSlide; var renderCard = function renderCard(userChallenge) { - if (!userChallenge || isChallengeCardLast) return /*#__PURE__*/_react.default.createElement(_ChallengeCardLast.default, null); - - switch (userChallenge.state) { + switch (userChallenge === null || userChallenge === void 0 ? void 0 : userChallenge.state) { case _enums.UserChallengeState.LOCKED: return /*#__PURE__*/_react.default.createElement(_ChallengeCardLocked.default, { userChallenge: userChallenge @@ -11357,9 +11345,7 @@ var ChallengeCard = function ChallengeCard(_ref) { }); default: - return /*#__PURE__*/_react.default.createElement(_ChallengeCardLocked.default, { - userChallenge: userChallenge - }); + return /*#__PURE__*/_react.default.createElement(_ChallengeCardLast.default, null); } }; @@ -29753,6 +29739,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } var DuelOngoing = function DuelOngoing(_ref) { + var _userChallengeList; + var userChallenge = _ref.userChallenge, isFinished = _ref.isFinished; @@ -29760,6 +29748,8 @@ var DuelOngoing = function DuelOngoing(_ref) { t = _useI18n.t; var client = (0, _cozyClient.useClient)(); + var navigate = (0, _reactRouterDom.useNavigate)(); + var dispatch = (0, _hooks.useAppDispatch)(); var _useAppSelector = (0, _hooks.useAppSelector)(function (state) { return state.ecolyo.challenge; @@ -29767,9 +29757,6 @@ var DuelOngoing = function DuelOngoing(_ref) { currentDataload = _useAppSelector.currentDataload, userChallengeList = _useAppSelector.userChallengeList; - var dispatch = (0, _hooks.useAppDispatch)(); - var navigate = (0, _reactRouterDom.useNavigate)(); - var _useState = (0, _react.useState)(false), _useState2 = (0, _slicedToArray2.default)(_useState, 2), resultModal = _useState2[0], @@ -29782,8 +29769,8 @@ var DuelOngoing = function DuelOngoing(_ref) { var _useState5 = (0, _react.useState)(false), _useState6 = (0, _slicedToArray2.default)(_useState5, 2), - isLastDuel = _useState6[0], - setIsLastDuel = _useState6[1]; + showLastDuelModal = _useState6[0], + setShowLastDuelModal = _useState6[1]; var _useState7 = (0, _react.useState)(), _useState8 = (0, _slicedToArray2.default)(_useState7, 2), @@ -29800,8 +29787,7 @@ var DuelOngoing = function DuelOngoing(_ref) { return new _challenge.default(client); }, [client]); var duel = userChallenge.duel; - var title = duel.title; - var durationInDays = duel.duration.days; + var isLastDuel = userChallenge.id == ((_userChallengeList = userChallengeList[userChallengeList.length - 1]) === null || _userChallengeList === void 0 ? void 0 : _userChallengeList.id); var userConsumption = (0, _utils.formatNumberValues)(userChallenge.duel.userConsumption).toString(); var average = (0, _utils.formatNumberValues)(userChallenge.duel.threshold).toString(); var setResult = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() { @@ -29837,8 +29823,8 @@ var DuelOngoing = function DuelOngoing(_ref) { dispatch((0, _challenge2.unlockNextUserChallenge)(updatedChallenge)); dispatch((0, _global.toggleChallengeDuelNotification)(false)); - if (userChallenge.id == userChallengeList[userChallengeList.length - 1].id) { - setIsLastDuel(true); + if (isLastDuel) { + setShowLastDuelModal(true); } else { navigate('/challenges'); } @@ -29849,7 +29835,7 @@ var DuelOngoing = function DuelOngoing(_ref) { } } }, _callee); - })), [client, userChallenge, winChallenge, dispatch, userChallengeList, navigate]); + })), [client, userChallenge, winChallenge, dispatch, isLastDuel, navigate]); (0, _react.useEffect)(function () { var subscribed = true; @@ -29946,11 +29932,9 @@ var DuelOngoing = function DuelOngoing(_ref) { }, userChallenge.success === _enums.UserChallengeSuccess.WIN ? t('duel.goal_done') : t('duel.goal_failed')) : /*#__PURE__*/_react.default.createElement("div", { className: "duel-goal text-18-normal" }, t('duel.goal1', { - durationInDays: durationInDays, - smartCount: durationInDays + durationInDays: duel.duration.days }), /*#__PURE__*/_react.default.createElement("span", null, " "), t('duel.goal2', { - title: title, - smartCount: title + title: duel.title })), /*#__PURE__*/_react.default.createElement("div", { className: "duel-consumption text-28-normal" }, /*#__PURE__*/_react.default.createElement("span", { @@ -29995,7 +29979,7 @@ var DuelOngoing = function DuelOngoing(_ref) { win: winChallenge, handleCloseClick: setResult }), /*#__PURE__*/_react.default.createElement(_lastDuelModal.default, { - open: isLastDuel, + open: showLastDuelModal, handleCloseClick: function handleCloseClick() { return navigate('/challenges'); } @@ -31647,7 +31631,7 @@ var result = _node_modules_svg_sprite_loader_runtime_browser_sprite_build_js__WE exports = module.exports = __webpack_require__("JPst")(false); // Module -exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.duel-last-modal-root {\n text-align: center;\n}\n.duel-last-modal-root .closeIcon {\n float: right;\n cursor: pointer;\n}\n.duel-last-modal-root .icon {\n margin: 2rem 0 0;\n}\n.duel-last-modal-root .title {\n margin: 1rem 0 1rem;\n}\n.duel-last-modal-root .subtitle {\n color: #61f0f2;\n margin: 1rem 0 0.5rem;\n}\n.duel-last-modal-root .content {\n margin: 0.5rem 0;\n}\n\n#accessibility-title {\n display: none;\n}", ""]); +exports.push([module.i, "/** BLACK **/\n/** RED **/\n/** YELLOW **/\n/** ORANGE **/\n/** BLUE **/\n/** GREEN **/\n/** WHITE **/\n/** GREY **/\n/** App colors **/\n/** TABS GRADIENT **/\n/** SCROLLBAR **/\n.duel-last-modal-root {\n text-align: center;\n display: flex;\n flex-direction: column;\n gap: 1rem;\n}\n.duel-last-modal-root .closeIcon {\n float: right;\n cursor: pointer;\n}\n.duel-last-modal-root .icon {\n margin: auto;\n}\n.duel-last-modal-root h1 {\n color: #ffffff;\n}\n.duel-last-modal-root h2 {\n color: #61f0f2;\n margin: 0;\n}\n.duel-last-modal-root p {\n color: #e0e0e0;\n}\n\n#accessibility-title {\n display: none;\n}", ""]); @@ -34725,7 +34709,7 @@ var ChallengeCardOnGoing = function ChallengeCardOnGoing(_ref) { case 8: setIsLoading(false); - navigate('/challenges/duel?id=' + userChallenge.id); + navigate("/challenges/duel?id=".concat(userChallenge.id)); _context.next = 14; break; diff --git a/index.html b/index.html index bee61cd6fce862133ed6ab9dce42ff78cba63213..44994485a67ab61d97255e11b9d7f8911efa1901 100644 --- a/index.html +++ b/index.html @@ -1 +1 @@ -<!DOCTYPE html><html lang="{{.Locale}}"><head><meta charset="utf-8"><title>Ecolyo</title><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"><link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"><!-- PWA Manifest --><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#297EF2"><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1,viewport-fit=cover"><!-- PWA Chrome --><link rel="icon" sizes="192x192" href="/android-chrome-192x192.png"><link rel="icon" sizes="512x512" href="/android-chrome-512x512.png"><!-- PWA iOS --><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="apple-touch-startup-image" href="/apple-touch-icon.png"><meta name="apple-mobile-web-app-title" content="Ecolyo"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><!-- PWA Colors --><meta name="theme-color" content="#343641"><meta name="background-color" content="#121212">{{.ThemeCSS}} {{.CozyBar}}<script src="//{{.Domain}}/assets/js/piwik.js"></script></head><body><div role="application" class="application" data-cozy="{{.CozyData}}"><script src="vendors/ecolyo.fbf1f65c47dc10085503.js"></script><script src="app/ecolyo.347f2c7ea2ff21824df6.js"></script></div></body></html> \ No newline at end of file +<!DOCTYPE html><html lang="{{.Locale}}"><head><meta charset="utf-8"><title>Ecolyo</title><link rel="icon" type="image/png" href="/favicon-32x32.png" sizes="32x32"><link rel="icon" type="image/png" href="/favicon-16x16.png" sizes="16x16"><!-- PWA Manifest --><link rel="manifest" href="/manifest.json" crossorigin="use-credentials"><link rel="mask-icon" href="/safari-pinned-tab.svg" color="#297EF2"><meta name="viewport" content="width=device-width,height=device-height,initial-scale=1,viewport-fit=cover"><!-- PWA Chrome --><link rel="icon" sizes="192x192" href="/android-chrome-192x192.png"><link rel="icon" sizes="512x512" href="/android-chrome-512x512.png"><!-- PWA iOS --><link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png"><link rel="apple-touch-startup-image" href="/apple-touch-icon.png"><meta name="apple-mobile-web-app-title" content="Ecolyo"><meta name="apple-mobile-web-app-capable" content="yes"><meta name="apple-mobile-web-app-status-bar-style" content="black"><!-- PWA Colors --><meta name="theme-color" content="#343641"><meta name="background-color" content="#121212">{{.ThemeCSS}} {{.CozyBar}}<script src="//{{.Domain}}/assets/js/piwik.js"></script></head><body><div role="application" class="application" data-cozy="{{.CozyData}}"><script src="vendors/ecolyo.fbf1f65c47dc10085503.js"></script><script src="app/ecolyo.2c39fadfce0c3616338c.js"></script></div></body></html> \ No newline at end of file