From 052d1991d416c2c1e60dd8dbf566857b41d3777c Mon Sep 17 00:00:00 2001
From: build-pipeline <build-token>
Date: Fri, 26 Jul 2024 07:35:28 +0000
Subject: [PATCH] publish: Merge branch 'fix/accessible-graph' into 'dev'

generated from commit 945a91c1b92ef72a396f8fae823c09c2916a01ac
---
 ...ecce.js => ecolyo.ca25c26be465c89d3cb5.js} | 47 +++++++++++++------
 ...dca7.js => ecolyo.2112580df80d16f6defb.js} | 24 ++++++----
 ...c046.js => ecolyo.afeb2a4ee7f13749b9d6.js} |  2 +-
 index.html                                    |  2 +-
 4 files changed, 50 insertions(+), 25 deletions(-)
 rename 4/{ecolyo.4c6da6b34b485a59ecce.js => ecolyo.ca25c26be465c89d3cb5.js} (99%)
 rename 7/{ecolyo.319d4180d908d8aedca7.js => ecolyo.2112580df80d16f6defb.js} (98%)
 rename app/{ecolyo.4ecb319949ce8115c046.js => ecolyo.afeb2a4ee7f13749b9d6.js} (99%)

diff --git a/4/ecolyo.4c6da6b34b485a59ecce.js b/4/ecolyo.ca25c26be465c89d3cb5.js
similarity index 99%
rename from 4/ecolyo.4c6da6b34b485a59ecce.js
rename to 4/ecolyo.ca25c26be465c89d3cb5.js
index 7496561cf..0c51fbe93 100644
--- a/4/ecolyo.4c6da6b34b485a59ecce.js
+++ b/4/ecolyo.ca25c26be465c89d3cb5.js
@@ -1551,7 +1551,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
 var DataloadConsumptionVisualizer = function DataloadConsumptionVisualizer(_ref) {
   var fluidType = _ref.fluidType,
     dataload = _ref.dataload,
-    compareDataload = _ref.compareDataload;
+    compareDataload = _ref.compareDataload,
+    focusable = _ref.focusable;
   var _useAppSelector = (0, _hooks.useAppSelector)(function (state) {
       return state.ecolyo.chart;
     }),
@@ -1575,7 +1576,8 @@ var DataloadConsumptionVisualizer = function DataloadConsumptionVisualizer(_ref)
       className: "dataloadvisualizer-root"
     }, /*#__PURE__*/_react.default.createElement(_DataloadNoValue.default, {
       dataload: dataload,
-      fluidType: fluidType
+      fluidType: fluidType,
+      focusable: focusable
     }));
   }
   return /*#__PURE__*/_react.default.createElement("div", {
@@ -1586,17 +1588,20 @@ var DataloadConsumptionVisualizer = function DataloadConsumptionVisualizer(_ref)
     dataload: compareDataload,
     fluidType: fluidType,
     dataloadSectionType: _enums.DataloadSectionType.LEFT,
-    toggleEstimationModal: toggleEstimationModal
+    toggleEstimationModal: toggleEstimationModal,
+    focusable: focusable
   }), /*#__PURE__*/_react.default.createElement(_DataloadSection.default, {
     dataload: dataload,
     fluidType: fluidType,
     dataloadSectionType: _enums.DataloadSectionType.RIGHT,
-    toggleEstimationModal: toggleEstimationModal
+    toggleEstimationModal: toggleEstimationModal,
+    focusable: focusable
   })) : /*#__PURE__*/_react.default.createElement(_DataloadSection.default, {
     dataload: dataload,
     fluidType: fluidType,
     dataloadSectionType: _enums.DataloadSectionType.NO_COMPARE,
-    toggleEstimationModal: toggleEstimationModal
+    toggleEstimationModal: toggleEstimationModal,
+    focusable: focusable
   })), /*#__PURE__*/_react.default.createElement(_EstimatedConsumptionModal.default, {
     open: openEstimationModal,
     handleCloseClick: toggleEstimationModal
@@ -1962,7 +1967,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
 var InfoDataConsumptionVisualizer = function InfoDataConsumptionVisualizer(_ref) {
   var dataload = _ref.dataload,
     fluidType = _ref.fluidType,
-    lastDataDate = _ref.lastDataDate;
+    lastDataDate = _ref.lastDataDate,
+    focusable = _ref.focusable;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var _useState = (0, _react.useState)(false),
@@ -1979,7 +1985,8 @@ var InfoDataConsumptionVisualizer = function InfoDataConsumptionVisualizer(_ref)
     var key = fluidType === _enums.FluidType.MULTIFLUID ? 'last_valid_data_multi' : 'last_available_data';
     return /*#__PURE__*/_react.default.createElement(_core.Button, {
       className: "btnText",
-      onClick: moveToLatestDate
+      onClick: moveToLatestDate,
+      tabIndex: focusable ? 0 : -1
     }, t("consumption_visualizer.".concat(key), {
       date: lastDate
     }));
@@ -1989,7 +1996,8 @@ var InfoDataConsumptionVisualizer = function InfoDataConsumptionVisualizer(_ref)
       className: "btnText",
       onClick: function onClick() {
         return setOpenNoDataModal(true);
-      }
+      },
+      tabIndex: focusable ? 0 : -1
     }, /*#__PURE__*/_react.default.createElement("span", {
       className: "text-16-normal underlined-error"
     }, t('consumption_visualizer.why_no_data'))), /*#__PURE__*/_react.default.createElement(_NoDataModal.default, {
@@ -2111,6 +2119,9 @@ var FluidChartSlide = function FluidChartSlide(_ref) {
     _useAppSelector$globa = _useAppSelector.global,
     fluidStatus = _useAppSelector$globa.fluidStatus,
     fluidTypes = _useAppSelector$globa.fluidTypes;
+
+  /** Determines if child elements should be focusable */
+  var focusable = currentIndex === index;
   var _useState = (0, _react.useState)({
       actualData: [],
       comparisonData: null
@@ -2202,7 +2213,8 @@ var FluidChartSlide = function FluidChartSlide(_ref) {
   }, /*#__PURE__*/_react.default.createElement(_Loader.default, {
     fluidType: fluidType
   })) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ConsumptionVisualizer.default, {
-    fluidType: fluidType
+    fluidType: fluidType,
+    focusable: focusable
   }), /*#__PURE__*/_react.default.createElement(_BarChart.default, {
     chartData: chartData,
     fluidType: fluidType,
@@ -2328,7 +2340,8 @@ function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol
 function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
 function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
 var ConsumptionVisualizer = function ConsumptionVisualizer(_ref) {
-  var fluidType = _ref.fluidType;
+  var fluidType = _ref.fluidType,
+    focusable = _ref.focusable;
   var _useAppSelector = (0, _hooks.useAppSelector)(function (state) {
       return state.ecolyo;
     }),
@@ -2375,13 +2388,15 @@ var ConsumptionVisualizer = function ConsumptionVisualizer(_ref) {
   }, /*#__PURE__*/_react.default.createElement(_DataloadConsumptionVisualizer.default, {
     fluidType: fluidType,
     dataload: dataload,
-    compareDataload: compareDataload
+    compareDataload: compareDataload,
+    focusable: focusable
   }), /*#__PURE__*/_react.default.createElement("div", {
     className: "consumptionvisualizer-info"
   }, /*#__PURE__*/_react.default.createElement(_InfoDataConsumptionVisualizer.default, {
     dataload: dataload,
     fluidType: fluidType,
-    lastDataDate: lastDataDate
+    lastDataDate: lastDataDate,
+    focusable: focusable
   })));
 };
 var _default = ConsumptionVisualizer;
@@ -2479,7 +2494,7 @@ var FluidChartSwipe = function FluidChartSwipe(_ref) {
       return setIsSwitching(true);
     } : null,
     onTransitionEnd: function onTransitionEnd() {
-      setIsSwitching(false);
+      return setIsSwitching(false);
     },
     axis: "x-reverse"
   }));
@@ -3488,7 +3503,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 DataloadNoValue = function DataloadNoValue(_ref) {
   var dataload = _ref.dataload,
-    fluidType = _ref.fluidType;
+    fluidType = _ref.fluidType,
+    focusable = _ref.focusable;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var dispatch = (0, _hooks.useAppDispatch)();
@@ -3528,7 +3544,8 @@ var DataloadNoValue = function DataloadNoValue(_ref) {
       classes: {
         root: 'btnText',
         label: 'text-22-normal'
-      }
+      },
+      tabIndex: focusable ? 0 : -1
     }, t('consumption_visualizer.missing_data'));
   }
   return /*#__PURE__*/_react.default.createElement("div", {
diff --git a/7/ecolyo.319d4180d908d8aedca7.js b/7/ecolyo.2112580df80d16f6defb.js
similarity index 98%
rename from 7/ecolyo.319d4180d908d8aedca7.js
rename to 7/ecolyo.2112580df80d16f6defb.js
index 4c80118e2..8473e2a92 100644
--- a/7/ecolyo.319d4180d908d8aedca7.js
+++ b/7/ecolyo.2112580df80d16f6defb.js
@@ -349,7 +349,8 @@ var DataloadSection = function DataloadSection(_ref) {
   var dataload = _ref.dataload,
     fluidType = _ref.fluidType,
     dataloadSectionType = _ref.dataloadSectionType,
-    toggleEstimationModal = _ref.toggleEstimationModal;
+    toggleEstimationModal = _ref.toggleEstimationModal,
+    focusable = _ref.focusable;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var isLeft = dataloadSectionType === _enums.DataloadSectionType.LEFT;
@@ -375,11 +376,13 @@ var DataloadSection = function DataloadSection(_ref) {
     dataload: dataload,
     fluidType: fluidType,
     dataloadSectionType: dataloadSectionType,
-    toggleEstimationModal: toggleEstimationModal
+    toggleEstimationModal: toggleEstimationModal,
+    focusable: focusable
   })), /*#__PURE__*/_react.default.createElement(_DataloadSectionDetail.default, {
     dataload: dataload,
     fluidType: fluidType,
-    dataloadSectionType: dataloadSectionType
+    dataloadSectionType: dataloadSectionType,
+    focusable: focusable
   }));
 };
 var _default = DataloadSection;
@@ -496,7 +499,8 @@ var DataloadSectionValue = function DataloadSectionValue(_ref) {
   var dataload = _ref.dataload,
     fluidType = _ref.fluidType,
     dataloadSectionType = _ref.dataloadSectionType,
-    toggleEstimationModal = _ref.toggleEstimationModal;
+    toggleEstimationModal = _ref.toggleEstimationModal,
+    focusable = _ref.focusable;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var FLUIDNAME = (0, _utils.getFluidName)(fluidType).toUpperCase();
@@ -509,7 +513,8 @@ var DataloadSectionValue = function DataloadSectionValue(_ref) {
         label: 'text-14-normal'
       },
       size: "small",
-      onClick: toggleEstimationModal
+      onClick: toggleEstimationModal,
+      tabIndex: focusable ? 0 : -1
     }, t('consumption_visualizer.estimated')));
   }
   var formattedValue = (0, _utils.formatNumberValues)(dataload.value, FLUIDNAME, true);
@@ -687,7 +692,8 @@ var _utils = __webpack_require__("RgLR");
 var DataloadSectionDetail = function DataloadSectionDetail(_ref) {
   var dataload = _ref.dataload,
     fluidType = _ref.fluidType,
-    dataloadSectionType = _ref.dataloadSectionType;
+    dataloadSectionType = _ref.dataloadSectionType,
+    focusable = _ref.focusable;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var converterService = new _converter.default();
@@ -720,7 +726,8 @@ var DataloadSectionDetail = function DataloadSectionDetail(_ref) {
         key: _enums.FluidType[index],
         "aria-label": t("consumption_visualizer.cost_per_fluid.".concat(_enums.FluidType[index].toLowerCase())),
         to: "/consumption/".concat(_enums.FluidType[index].toLowerCase()),
-        className: "dataloadvisualizer-euro-link"
+        className: "dataloadvisualizer-euro-link",
+        tabIndex: focusable ? 0 : -1
       }, /*#__PURE__*/_react.default.createElement("div", {
         className: (0, _classnames.default)('dataloadvisualizer-euro-fluid', (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, _enums.FluidType[index].toLowerCase(), isValid || isUpcoming || isComing || isEmpty || isHole), (0, _defineProperty2.default)(_classNames2, "error", isMissing), _classNames2))
       }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
@@ -734,7 +741,8 @@ var DataloadSectionDetail = function DataloadSectionDetail(_ref) {
     className: "dataloadvisualizer-euro text-16-normal"
   }, /*#__PURE__*/_react.default.createElement(_reactRouterDom.NavLink, {
     to: "/consumption/".concat((0, _utils.getFluidName)(fluidType)),
-    className: "dataloadvisualizer-euro-link"
+    className: "dataloadvisualizer-euro-link",
+    tabIndex: focusable ? 0 : -1
   }, /*#__PURE__*/_react.default.createElement("div", {
     className: "dataloadvisualizer-euro-fluid ".concat((0, _utils.getFluidName)(fluidType))
   }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
diff --git a/app/ecolyo.4ecb319949ce8115c046.js b/app/ecolyo.afeb2a4ee7f13749b9d6.js
similarity index 99%
rename from app/ecolyo.4ecb319949ce8115c046.js
rename to app/ecolyo.afeb2a4ee7f13749b9d6.js
index 011652d38..3aa5571fd 100644
--- a/app/ecolyo.4ecb319949ce8115c046.js
+++ b/app/ecolyo.afeb2a4ee7f13749b9d6.js
@@ -64,7 +64,7 @@
 /******/
 /******/ 	// script path function
 /******/ 	function jsonpScriptSrc(chunkId) {
-/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"3":"546ddc061ac2d090301c","4":"4c6da6b34b485a59ecce","5":"dbb9361b7c3d2399eabb","6":"74e7a684478516b3c9ec","7":"319d4180d908d8aedca7","8":"76b674e1f6db43a6a522","9":"73a97eac0086801c9dc9","10":"26edbface76655274ad8","11":"3baf0b358c1c353001a4"}[chunkId] + ".js"
+/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"3":"546ddc061ac2d090301c","4":"ca25c26be465c89d3cb5","5":"dbb9361b7c3d2399eabb","6":"74e7a684478516b3c9ec","7":"2112580df80d16f6defb","8":"76b674e1f6db43a6a522","9":"73a97eac0086801c9dc9","10":"26edbface76655274ad8","11":"3baf0b358c1c353001a4"}[chunkId] + ".js"
 /******/ 	}
 /******/
 /******/ 	// The require function
diff --git a/index.html b/index.html
index a79d441d1..faab8a2b4 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.e8036ce80af3e4d9351b.js"></script><script src="app/ecolyo.4ecb319949ce8115c046.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.e8036ce80af3e4d9351b.js"></script><script src="app/ecolyo.afeb2a4ee7f13749b9d6.js"></script></div></body></html>
\ No newline at end of file
-- 
GitLab