From bab4daf642a0ac3e63ae54cd6b269f15a1805dec Mon Sep 17 00:00:00 2001
From: Bastien Dumont <bdumont@grandlyon.com>
Date: Tue, 28 Nov 2023 16:51:11 +0100
Subject: [PATCH] publish: Update [QA] Ecolyo.md

generated from commit 1dd38c89d7f6bbab404764fc53e7e69f29810aeb
---
 ...6eff.js => ecolyo.1083f6584cee093cf7e1.js} |   2 +-
 ...096c.js => ecolyo.75e1602c4213f8753d2f.js} | 111 ++++++------------
 index.html                                    |   2 +-
 3 files changed, 39 insertions(+), 76 deletions(-)
 rename 8/{ecolyo.2f94d5a76f80ad296eff.js => ecolyo.1083f6584cee093cf7e1.js} (99%)
 rename app/{ecolyo.112fe7f618bdb246096c.js => ecolyo.75e1602c4213f8753d2f.js} (99%)

diff --git a/8/ecolyo.2f94d5a76f80ad296eff.js b/8/ecolyo.1083f6584cee093cf7e1.js
similarity index 99%
rename from 8/ecolyo.2f94d5a76f80ad296eff.js
rename to 8/ecolyo.1083f6584cee093cf7e1.js
index 86e115d7e..05f45eade 100644
--- a/8/ecolyo.2f94d5a76f80ad296eff.js
+++ b/8/ecolyo.1083f6584cee093cf7e1.js
@@ -104,7 +104,7 @@ var BarChart = function BarChart(_ref) {
   var sum = chartData.actualData.reduce(function (a, b) {
     return a + b.value;
   }, 0);
-  var averageConsumption = sum / chartData.actualData.length;
+  var averageConsumption = Math.abs(sum / chartData.actualData.length);
   return /*#__PURE__*/_react.default.createElement("svg", {
     width: width,
     height: height
diff --git a/app/ecolyo.112fe7f618bdb246096c.js b/app/ecolyo.75e1602c4213f8753d2f.js
similarity index 99%
rename from app/ecolyo.112fe7f618bdb246096c.js
rename to app/ecolyo.75e1602c4213f8753d2f.js
index 34eb8ba08..22a7640d0 100644
--- a/app/ecolyo.112fe7f618bdb246096c.js
+++ b/app/ecolyo.75e1602c4213f8753d2f.js
@@ -64,7 +64,7 @@
 /******/
 /******/ 	// script path function
 /******/ 	function jsonpScriptSrc(chunkId) {
-/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"1":"506dcc6da2a9c0f60952","2":"cb034ca15d68f5147507","4":"0f186040259a626cef6d","5":"ca28d9c0cd873ba4e8e3","6":"d6fafc1e75a01bb2031b","7":"24a4435c56bf66712e8a","8":"2f94d5a76f80ad296eff","9":"609d6c5a040477fc7ef5","10":"f6b63fcb07754dc6add4"}[chunkId] + ".js"
+/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"1":"506dcc6da2a9c0f60952","2":"cb034ca15d68f5147507","4":"0f186040259a626cef6d","5":"ca28d9c0cd873ba4e8e3","6":"d6fafc1e75a01bb2031b","7":"24a4435c56bf66712e8a","8":"1083f6584cee093cf7e1","9":"609d6c5a040477fc7ef5","10":"f6b63fcb07754dc6add4"}[chunkId] + ".js"
 /******/ 	}
 /******/
 /******/ 	// The require function
@@ -28183,122 +28183,95 @@ exports.EGL_YEAR_DOCTYPE = EGL_YEAR_DOCTYPE;
 
 
 var _interopRequireDefault = __webpack_require__("TqRt");
-
 Object.defineProperty(exports, "__esModule", {
   value: true
 });
 exports.default = void 0;
-
 var _toConsumableArray2 = _interopRequireDefault(__webpack_require__("RIqP"));
-
 var _slicedToArray2 = _interopRequireDefault(__webpack_require__("J4zp"));
-
 var _detectBrowser = __webpack_require__("e0ae");
-
 var _enums = __webpack_require__("gnxY");
-
 var _luxon = __webpack_require__("ExVU");
-
 var _react = _interopRequireWildcard(__webpack_require__("q1tI"));
-
 var _dateChart = _interopRequireDefault(__webpack_require__("Ty7+"));
-
 var _chart = __webpack_require__("idK9");
-
 var _hooks = __webpack_require__("Zlw4");
-
-function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
-
-function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) { if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } } return n.default = e, t && t.set(e, n), n; }
-
+function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
+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 Bar = function Bar(_ref) {
   var _yScale, _yScale2, _compareDataload$valu, _xScale;
-
   var index = _ref.index,
-      dataload = _ref.dataload,
-      compare = _ref.compare,
-      compareDataload = _ref.compareDataload,
-      fluidType = _ref.fluidType,
-      timeStep = _ref.timeStep,
-      xScale = _ref.xScale,
-      yScale = _ref.yScale,
-      height = _ref.height,
-      isSwitching = _ref.isSwitching,
-      isDuel = _ref.isDuel,
-      isMultiMissingFluid = _ref.isMultiMissingFluid,
-      weekdays = _ref.weekdays,
-      _ref$clickable = _ref.clickable,
-      clickable = _ref$clickable === void 0 ? true : _ref$clickable,
-      average = _ref.average;
+    dataload = _ref.dataload,
+    compare = _ref.compare,
+    compareDataload = _ref.compareDataload,
+    fluidType = _ref.fluidType,
+    timeStep = _ref.timeStep,
+    xScale = _ref.xScale,
+    yScale = _ref.yScale,
+    height = _ref.height,
+    isSwitching = _ref.isSwitching,
+    isDuel = _ref.isDuel,
+    isMultiMissingFluid = _ref.isMultiMissingFluid,
+    weekdays = _ref.weekdays,
+    _ref$clickable = _ref.clickable,
+    clickable = _ref$clickable === void 0 ? true : _ref$clickable,
+    average = _ref.average;
   var dispatch = (0, _hooks.useAppDispatch)();
-
   var _useAppSelector = (0, _hooks.useAppSelector)(function (state) {
-    return state.ecolyo;
-  }),
-      selectedDate = _useAppSelector.chart.selectedDate,
-      fluidStatus = _useAppSelector.global.fluidStatus;
-
+      return state.ecolyo;
+    }),
+    selectedDate = _useAppSelector.chart.selectedDate,
+    fluidStatus = _useAppSelector.global.fluidStatus;
   var _useState = (0, _react.useState)(false),
-      _useState2 = (0, _slicedToArray2.default)(_useState, 2),
-      clicked = _useState2[0],
-      setClicked = _useState2[1];
-
+    _useState2 = (0, _slicedToArray2.default)(_useState, 2),
+    clicked = _useState2[0],
+    setClicked = _useState2[1];
   var _useState3 = (0, _react.useState)(false),
-      _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
-      animationEnded = _useState4[0],
-      setAnimationEnded = _useState4[1];
-
+    _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
+    animationEnded = _useState4[0],
+    setAnimationEnded = _useState4[1];
   var _useState5 = (0, _react.useState)(false),
-      _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
-      compareAnimationEnded = _useState6[0],
-      setCompareAnimationEnded = _useState6[1];
-
+    _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
+    compareAnimationEnded = _useState6[0],
+    setCompareAnimationEnded = _useState6[1];
   var browser = (0, _detectBrowser.detect)();
   var fluidStyle = fluidType === _enums.FluidType.MULTIFLUID ? 'MULTIFLUID' : _enums.FluidType[fluidType];
-
+  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
   var handleClick = function handleClick() {
     if (!isSwitching && !isDuel && clickable) {
       setClicked(true);
       dispatch((0, _chart.setSelectedDate)(dataload.date));
     }
   };
-
   var onAnimationEnd = function onAnimationEnd() {
     setClicked(false);
     setAnimationEnded(true);
   };
-
   var onCompareAnimationEnd = function onCompareAnimationEnd() {
     setClicked(false);
     setCompareAnimationEnded(true);
   };
-  /** Get date of each fluid to display placeholder bar for multifluid */
-
 
+  /** Get date of each fluid to display placeholder bar for multifluid */
   var lastDataDates = fluidStatus.map(function (fluid) {
     var _fluid$lastDataDate;
-
     return (_fluid$lastDataDate = fluid.lastDataDate) !== null && _fluid$lastDataDate !== void 0 ? _fluid$lastDataDate : _luxon.DateTime.local(0);
   });
-
   var lastDataDate = _luxon.DateTime.max.apply(_luxon.DateTime, (0, _toConsumableArray2.default)(lastDataDates));
-
   var dataMissingUpcoming = Boolean(dataload.date > lastDataDate && dataload.date < _luxon.DateTime.local());
   var value = dataload.value;
-  /** Adjust value for upcoming data (placeholder bars) */
 
+  /** Adjust value for upcoming data (placeholder bars) */
   if (dataMissingUpcoming && average) {
-    if (average < 0) {
-      // Use 1 if average is negative
-      value = 1;
-    } else if (average > 1) {
+    if (average > 1) {
       // Use 10% of average if average is above 1
       value = average * 0.1;
+    } else if (isMulti && average < 1) {
+      value = 0.2;
     } else {
       value = average;
     }
   }
-
   var yScaleValue = (_yScale = yScale(value)) !== null && _yScale !== void 0 ? _yScale : 0;
   var yScaleCompareValue = (_yScale2 = yScale((_compareDataload$valu = compareDataload === null || compareDataload === void 0 ? void 0 : compareDataload.value) !== null && _compareDataload$valu !== void 0 ? _compareDataload$valu : 0)) !== null && _yScale2 !== void 0 ? _yScale2 : 0;
   var xScaleValue = (_xScale = xScale(dataload.date.toLocaleString(_luxon.DateTime.DATETIME_SHORT))) !== null && _xScale !== void 0 ? _xScale : 0;
@@ -28306,41 +28279,32 @@ var Bar = function Bar(_ref) {
   var clickedAnim = clicked ? 'bounce-2 delay' : '';
   var disabled = clickable ? '' : 'disabled';
   var selected = isSelectedDate ? 'selected' : '';
-
   var getBarClass = function getBarClass() {
     var upcoming = dataload.value === -1 ? 'bar-UNCOMING' : '';
     var edgeBrowser = browser && browser.name !== 'edge';
     var bounce = edgeBrowser ? '1' : '3';
     var baseStyles = "bar-".concat(fluidStyle, " ").concat(upcoming, " ").concat(weekdays, " ").concat(selected, " ").concat(disabled);
-
     if (clicked) {
       return "".concat(baseStyles, " ").concat(clickedAnim);
     }
-
     if (animationEnded) {
       return baseStyles;
     }
-
     return "".concat(baseStyles, " bounce-").concat(bounce, " delay--").concat(index);
   };
-
   var getCompareBarClass = function getCompareBarClass() {
     var animate = "bounce-2 delay--".concat(clicked ? 0 : index);
     var animationClass = compareAnimationEnded ? '' : animate;
     return "bar-compare-".concat(fluidStyle, " ").concat(selected, " ").concat(animationClass, " ").concat(clickedAnim);
   };
-
   var barBackgroundClass = isSelectedDate;
-
   var getBandWidth = function getBandWidth() {
     return compare ? xScale.bandwidth() / 2 : xScale.bandwidth();
   };
-
   var topRoundedRect = function topRoundedRect(x, y, width, height) {
     var radius = height > 4 ? 4 : height / 4;
     return "\n      M".concat(x, ",").concat(y + radius, "\n      a").concat(radius, ",").concat(radius, " 0 0 1 ").concat(radius, ",").concat(-radius, "\n      h").concat(width - 2 * radius, "\n      a").concat(radius, ",").concat(radius, " 0 0 1 ").concat(radius, ",").concat(radius, "\n      v").concat(height - radius, "\n      h").concat(-width, "\n      z");
   };
-
   (0, _react.useEffect)(function () {
     if (isSelectedDate && !isDuel) {
       setClicked(true);
@@ -28488,7 +28452,6 @@ var Bar = function Bar(_ref) {
     onAnimationEnd: onCompareAnimationEnd
   })));
 };
-
 var _default = Bar;
 exports.default = _default;
 
diff --git a/index.html b/index.html
index 0c033113a..192a18739 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.c0ff54db8d39ec7c8246.js"></script><script src="app/ecolyo.112fe7f618bdb246096c.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.c0ff54db8d39ec7c8246.js"></script><script src="app/ecolyo.75e1602c4213f8753d2f.js"></script></div></body></html>
\ No newline at end of file
-- 
GitLab