From 648967ab2578ca2ddef7b4e41b36711f54b6ac49 Mon Sep 17 00:00:00 2001
From: build-pipeline <build-token>
Date: Wed, 10 Apr 2024 13:08:04 +0000
Subject: [PATCH] publish: Merge branch 'refactor/fluidType-&-isMulti' into
 'dev'

generated from commit eb223144844344faed5263c6116e496cf2f95d19
---
 ...ae37.js => ecolyo.cdf9dd63a069e5414967.js} |  59 ++++----
 ...8a5e.js => ecolyo.152b55e202ef5f864595.js} | 128 ++++++++----------
 ...6604.js => ecolyo.34606de539279daaa4ff.js} |  38 +++---
 ...cbec.js => ecolyo.d61472e75eb196504d3e.js} |  25 ++--
 ...8b23.js => ecolyo.e14b271f59d69e5c02fd.js} |  83 ++++++------
 index.html                                    |   2 +-
 services/aggregatorUsageEvents/ecolyo.js      |  60 ++++----
 services/consumptionAlert/ecolyo.js           |  54 ++++----
 .../enedisHalfHourMonthlyAnalysis/ecolyo.js   |  54 ++++----
 services/fluidsPrices/ecolyo.js               |  54 ++++----
 services/monthlyReportNotification/ecolyo.js  |  54 ++++----
 11 files changed, 306 insertions(+), 305 deletions(-)
 rename 4/{ecolyo.b7c36a8f27e4baa4ae37.js => ecolyo.cdf9dd63a069e5414967.js} (98%)
 rename 5/{ecolyo.f72cde68e2be97b18a5e.js => ecolyo.152b55e202ef5f864595.js} (98%)
 rename 6/{ecolyo.a172c09454aa06516604.js => ecolyo.34606de539279daaa4ff.js} (99%)
 rename 7/{ecolyo.0aa5f5c57c463f74cbec.js => ecolyo.d61472e75eb196504d3e.js} (98%)
 rename app/{ecolyo.1c5feca57698fbde8b23.js => ecolyo.e14b271f59d69e5c02fd.js} (99%)

diff --git a/4/ecolyo.b7c36a8f27e4baa4ae37.js b/4/ecolyo.cdf9dd63a069e5414967.js
similarity index 98%
rename from 4/ecolyo.b7c36a8f27e4baa4ae37.js
rename to 4/ecolyo.cdf9dd63a069e5414967.js
index 6d05ce14b..061937123 100644
--- a/4/ecolyo.b7c36a8f27e4baa4ae37.js
+++ b/4/ecolyo.cdf9dd63a069e5414967.js
@@ -1371,7 +1371,7 @@ var _picto = __webpack_require__("4NCG");
 var _utils = __webpack_require__("RgLR");
 __webpack_require__("zs5I");
 var ProfileComparatorRow = function ProfileComparatorRow(_ref) {
-  var fluid = _ref.fluid,
+  var fluidType = _ref.fluidType,
     userPriceConsumption = _ref.userPriceConsumption,
     homePriceConsumption = _ref.homePriceConsumption,
     performanceValue = _ref.performanceValue,
@@ -1382,67 +1382,70 @@ var ProfileComparatorRow = function ProfileComparatorRow(_ref) {
     t = _useI18n.t;
   var converterService = new _converter.default();
   var maxPriceConsumption = Math.max(userPriceConsumption, homePriceConsumption);
-  var fluidLoad = forecast && fluid !== _enums.FluidType.MULTIFLUID ? forecast.fluidForecast[fluid].load : 0;
-  var formatFluidConsumptionForConso = function formatFluidConsumptionForConso(_fluid) {
-    if (_fluid === _enums.FluidType.MULTIFLUID) {
+  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
+  var isElecOrGas = fluidType === _enums.FluidType.ELECTRICITY || fluidType === _enums.FluidType.GAS;
+  var FLUIDNAME = (0, _utils.getFluidName)(fluidType).toUpperCase();
+  var fluidLoad = forecast && !isMulti ? forecast.fluidForecast[fluidType].load : 0;
+  var formatFluidConsumptionForConso = function formatFluidConsumptionForConso() {
+    if (isMulti) {
       return "".concat((0, _utils.formatNumberValues)(userPriceConsumption).toString(), " \u20AC");
     } else {
       if (performanceValue) {
         // keeps unit in kWh for electricity and gas
-        if (_fluid === _enums.FluidType.ELECTRICITY || _fluid === _enums.FluidType.GAS) {
-          return "".concat(Math.round(performanceValue), " ").concat(t("FLUID.".concat(_enums.FluidType[_fluid], ".UNIT")));
+        if (isElecOrGas) {
+          return "".concat(Math.round(performanceValue), " ").concat(t("FLUID.".concat(FLUIDNAME, ".UNIT")));
         }
-        return performanceValue >= 1000 || fluidLoad >= 1000 ? (0, _utils.formatNumberValues)(performanceValue / 1000).toString() + ' ' + t("FLUID.".concat(_enums.FluidType[_fluid], ".MEGAUNIT")) : Math.round(performanceValue) + ' ' + t("FLUID.".concat(_enums.FluidType[_fluid], ".UNIT"));
+        return performanceValue >= 1000 || fluidLoad >= 1000 ? (0, _utils.formatNumberValues)(performanceValue / 1000).toString() + ' ' + t("FLUID.".concat(FLUIDNAME, ".MEGAUNIT")) : Math.round(performanceValue) + ' ' + t("FLUID.".concat(FLUIDNAME, ".UNIT"));
       } else {
         return '-';
       }
     }
   };
-  var formatFluidConsumptionForForecast = function formatFluidConsumptionForForecast(_fluid) {
-    if (_fluid === _enums.FluidType.MULTIFLUID) {
+  var formatFluidConsumptionForForecast = function formatFluidConsumptionForForecast() {
+    if (isMulti) {
       return "".concat((0, _utils.formatNumberValues)(homePriceConsumption).toString(), " \u20AC");
     } else {
       // keeps unit in kWh for electricity and gas
-      if (_fluid === _enums.FluidType.ELECTRICITY || _fluid === _enums.FluidType.GAS) {
-        return "".concat(Math.round(fluidLoad), " ").concat(t("FLUID.".concat(_enums.FluidType[_fluid], ".UNIT")));
+      if (isElecOrGas) {
+        return "".concat(Math.round(fluidLoad), " ").concat(t("FLUID.".concat(FLUIDNAME, ".UNIT")));
       }
-      return performanceValue && performanceValue >= 1000 || fluidLoad >= 1000 ? (0, _utils.formatNumberValues)(fluidLoad / 1000).toString() + ' ' + t("FLUID.".concat(_enums.FluidType[_fluid], ".MEGAUNIT")) : Math.round(fluidLoad) + ' ' + t("FLUID.".concat(_enums.FluidType[_fluid], ".UNIT"));
+      return performanceValue && performanceValue >= 1000 || fluidLoad >= 1000 ? (0, _utils.formatNumberValues)(fluidLoad / 1000).toString() + ' ' + t("FLUID.".concat(FLUIDNAME, ".MEGAUNIT")) : Math.round(fluidLoad) + ' ' + t("FLUID.".concat(FLUIDNAME, ".UNIT"));
     }
   };
-  var getWidthForConso = function getWidthForConso(_fluid) {
-    if (_fluid === _enums.FluidType.MULTIFLUID) {
+  var getWidthForConso = function getWidthForConso() {
+    if (isMulti) {
       return "".concat(userPriceConsumption / maxPriceConsumption * 100, "%");
     } else {
-      return "".concat(converterService.LoadToEuro(performanceValue || 0, _fluid) / maxPriceConsumption * 100, "%");
+      return "".concat(converterService.LoadToEuro(performanceValue || 0, fluidType) / maxPriceConsumption * 100, "%");
     }
   };
-  var getWidthForForecast = function getWidthForForecast(_fluid) {
-    if (_fluid === _enums.FluidType.MULTIFLUID) {
+  var getWidthForForecast = function getWidthForForecast() {
+    if (isMulti) {
       return "".concat(homePriceConsumption / maxPriceConsumption * 100, "%");
     } else {
-      var fluidValue = forecast ? forecast.fluidForecast[_fluid].value : 0;
+      var fluidValue = forecast ? forecast.fluidForecast[fluidType].value : 0;
       return "".concat(fluidValue / maxPriceConsumption * 100, "%");
     }
   };
-  var comparaisonText = connected ? formatFluidConsumptionForConso(fluid) : t("analysis.no_data");
+  var comparaisonText = connected ? formatFluidConsumptionForConso() : t("analysis.no_data");
   return /*#__PURE__*/_react.default.createElement("div", {
-    className: "analysisRow consumption-".concat(_enums.FluidType[fluid].toLowerCase())
+    className: "analysisRow consumption-".concat(FLUIDNAME.toLowerCase())
   }, /*#__PURE__*/_react.default.createElement("div", {
     className: "user-graph"
   }, /*#__PURE__*/_react.default.createElement("div", {
-    className: (0, _classnames.default)('price', 'text-15-bold', (0, _defineProperty2.default)({}, 'not-connected', !connected || noData)),
+    className: (0, _classnames.default)('price text-15-bold', (0, _defineProperty2.default)({}, 'not-connected', !connected || noData)),
     "data-testid": "userPrice"
   }, comparaisonText), connected && /*#__PURE__*/_react.default.createElement("div", {
     className: "container-graph"
   }, /*#__PURE__*/_react.default.createElement("div", {
     className: "graph",
     style: {
-      width: getWidthForConso(fluid)
+      width: getWidthForConso()
     }
   }))), /*#__PURE__*/_react.default.createElement("div", {
     className: "icon-container"
   }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
-    icon: fluid === _enums.FluidType.MULTIFLUID ? _euroIcon.default : (0, _picto.getPicto)(fluid, true),
+    icon: isMulti ? _euroIcon.default : (0, _picto.getPicto)(fluidType, true),
     size: 22,
     className: noData ? 'noData' : ''
   })), /*#__PURE__*/_react.default.createElement("div", {
@@ -1452,12 +1455,12 @@ var ProfileComparatorRow = function ProfileComparatorRow(_ref) {
   }, connected && /*#__PURE__*/_react.default.createElement("div", {
     className: "graph",
     style: {
-      width: getWidthForForecast(fluid)
+      width: getWidthForForecast()
     }
   })), /*#__PURE__*/_react.default.createElement("div", {
     className: (0, _classnames.default)('price', 'text-15-bold', (0, _defineProperty2.default)({}, 'not-connected', !connected)),
     "data-testid": "averagePrice"
-  }, formatFluidConsumptionForForecast(fluid))));
+  }, formatFluidConsumptionForForecast())));
 };
 var _default = ProfileComparatorRow;
 exports.default = _default;
@@ -2435,7 +2438,7 @@ var ProfileComparator = function ProfileComparator(_ref) {
   }, t('analysis.user_consumption')), /*#__PURE__*/_react.default.createElement("div", null), /*#__PURE__*/_react.default.createElement("div", {
     className: "average-title"
   }, t("analysis.comparison"))), /*#__PURE__*/_react.default.createElement(_ProfileComparatorRow.default, {
-    fluid: _enums.FluidType.MULTIFLUID,
+    fluidType: _enums.FluidType.MULTIFLUID,
     userPriceConsumption: userPriceConsumption,
     homePriceConsumption: homePriceConsumption,
     performanceValue: null,
@@ -2445,7 +2448,7 @@ var ProfileComparator = function ProfileComparator(_ref) {
   }), performanceIndicators.map(function (indicator, index) {
     return Boolean(indicator.value) && /*#__PURE__*/_react.default.createElement(_ProfileComparatorRow.default, {
       key: _enums.FluidType[index],
-      fluid: index,
+      fluidType: index,
       userPriceConsumption: userPriceConsumption,
       homePriceConsumption: homePriceConsumption,
       performanceValue: indicator.value,
@@ -2458,7 +2461,7 @@ var ProfileComparator = function ProfileComparator(_ref) {
   }), emptyFluidTypes.map(function (fluid) {
     return /*#__PURE__*/_react.default.createElement(_ProfileComparatorRow.default, {
       key: fluid,
-      fluid: fluid,
+      fluidType: fluid,
       userPriceConsumption: userPriceConsumption,
       homePriceConsumption: homePriceConsumption,
       performanceValue: null,
diff --git a/5/ecolyo.f72cde68e2be97b18a5e.js b/5/ecolyo.152b55e202ef5f864595.js
similarity index 98%
rename from 5/ecolyo.f72cde68e2be97b18a5e.js
rename to 5/ecolyo.152b55e202ef5f864595.js
index 7500030ff..04c3c11a4 100644
--- a/5/ecolyo.f72cde68e2be97b18a5e.js
+++ b/5/ecolyo.152b55e202ef5f864595.js
@@ -334,20 +334,19 @@ var SwitchGas = (0, _styles.withStyles)({
 var StyledSwitch = function StyledSwitch(_ref) {
   var fluidType = _ref.fluidType,
     props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
-  if (fluidType !== undefined) {
-    switch (fluidType) {
-      case _enums.FluidType.ELECTRICITY:
-        return /*#__PURE__*/_react.default.createElement(SwitchElec, props);
-      case _enums.FluidType.WATER:
-        return /*#__PURE__*/_react.default.createElement(SwitchWater, props);
-      case _enums.FluidType.GAS:
-        return /*#__PURE__*/_react.default.createElement(SwitchGas, props);
-      default:
-        return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
-    }
-  } else {
+  if (fluidType === undefined) {
     return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
   }
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return /*#__PURE__*/_react.default.createElement(SwitchElec, props);
+    case _enums.FluidType.WATER:
+      return /*#__PURE__*/_react.default.createElement(SwitchWater, props);
+    case _enums.FluidType.GAS:
+      return /*#__PURE__*/_react.default.createElement(SwitchGas, props);
+    default:
+      return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
+  }
 };
 var _default = StyledSwitch;
 exports.default = _default;
@@ -2137,7 +2136,7 @@ var FluidChartSlide = function FluidChartSlide(_ref) {
     }
     function _loadData() {
       _loadData = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
-        var dateChartService, referenceDate, _yield$Promise$all, _yield$Promise$all2, timePeriod, compareTimePeriod, consumptionService, fluidTypeArray, graphData;
+        var dateChartService, referenceDate, _yield$Promise$all, _yield$Promise$all2, timePeriod, compareTimePeriod, consumptionService, isMulti, fluidTypeArray, graphData;
         return _regenerator.default.wrap(function _callee$(_context) {
           while (1) {
             switch (_context.prev = _context.next) {
@@ -2147,7 +2146,7 @@ var FluidChartSlide = function FluidChartSlide(_ref) {
                   setTimeStep(currentTimeStep);
                 }
                 if (!(!isDataLoaded && index >= currentIndex - 1 && index <= currentIndex + 1)) {
-                  _context.next = 16;
+                  _context.next = 17;
                   break;
                 }
                 dateChartService = new _dateChart.default();
@@ -2162,16 +2161,17 @@ var FluidChartSlide = function FluidChartSlide(_ref) {
                 timePeriod = _yield$Promise$all2[0];
                 compareTimePeriod = _yield$Promise$all2[1];
                 consumptionService = new _consumption.default(client);
-                fluidTypeArray = fluidType === _enums.FluidType.MULTIFLUID ? fluidTypes : [fluidType];
-                _context.next = 14;
-                return consumptionService.getGraphData(timePeriod, currentTimeStep, fluidTypeArray, fluidStatus, compareTimePeriod, fluidType === _enums.FluidType.MULTIFLUID);
-              case 14:
+                isMulti = fluidType === _enums.FluidType.MULTIFLUID;
+                fluidTypeArray = isMulti ? fluidTypes : [fluidType];
+                _context.next = 15;
+                return consumptionService.getGraphData(timePeriod, currentTimeStep, fluidTypeArray, fluidStatus, compareTimePeriod, isMulti);
+              case 15:
                 graphData = _context.sent;
                 if (subscribed && graphData && (graphData === null || graphData === void 0 ? void 0 : graphData.actualData.length) > 0) {
                   setChartData(graphData);
                   setIsDataLoaded(true);
                 }
-              case 16:
+              case 17:
               case "end":
                 return _context.stop();
             }
@@ -2629,7 +2629,6 @@ exports.default = void 0;
 var _StyledCard = _interopRequireDefault(__webpack_require__("y8/m"));
 var _I18n = __webpack_require__("nUfk");
 var _Icon = _interopRequireDefault(__webpack_require__("AHiN"));
-var _enums = __webpack_require__("j0hM");
 var _react = _interopRequireDefault(__webpack_require__("ivGQ"));
 var _reactRouterDom = __webpack_require__("Iyno");
 var _hooks = __webpack_require__("6FOS");
@@ -2663,8 +2662,8 @@ var KonnectorViewerList = function KonnectorViewerList() {
       icon: (0, _picto.getAddPicto)(fluidStatusItem.fluidType),
       size: 36
     }), /*#__PURE__*/_react.default.createElement("div", {
-      className: "konnector-title text-18-bold ".concat(_enums.FluidType[fluidStatusItem.fluidType].toLowerCase())
-    }, t("konnector_options.label_connect_to_".concat(_enums.FluidType[fluidStatusItem.fluidType].toLowerCase()))));
+      className: "konnector-title text-18-bold ".concat((0, _utils.getFluidName)(fluidStatusItem.fluidType))
+    }, t("konnector_options.label_connect_to_".concat((0, _utils.getFluidName)(fluidStatusItem.fluidType)))));
   })));
 };
 var _default = KonnectorViewerList;
@@ -3184,16 +3183,6 @@ var ConnectionResult = function ConnectionResult(_ref) {
       setOutDatedDataDays(isOutdated());
     }
   }, [currentFluidStatus.connection.triggerState, isOutdated]);
-  var getFluidTypeTranslation = function getFluidTypeTranslation(fluidType) {
-    switch (fluidType) {
-      case _enums.FluidType.GAS:
-        return 'de gaz';
-      case _enums.FluidType.ELECTRICITY:
-        return "d'électricité";
-      default:
-        return "d'eau";
-    }
-  };
   var consentError = konnectorError === _enums.KonnectorUpdate.ERROR_CONSENT_FORM_GAS || konnectorError === _enums.KonnectorUpdate.ERROR_UPDATE_OAUTH;
 
   /**
@@ -3220,7 +3209,7 @@ var ConnectionResult = function ConnectionResult(_ref) {
         konnectorError: konnectorError,
         consentRelatedError: consentError,
         lastExecutionDate: lastExecutionDate,
-        fluidConcerned: getFluidTypeTranslation(fluidType)
+        fluidConcerned: (0, _utils.getFluidTypeTranslation)(fluidType)
       });
     }
     // Else check if data is outdated
@@ -3444,6 +3433,7 @@ var _enums = __webpack_require__("j0hM");
 var _react = _interopRequireWildcard(__webpack_require__("ivGQ"));
 var _chart = __webpack_require__("dklY");
 var _hooks = __webpack_require__("6FOS");
+var _utils = __webpack_require__("RgLR");
 __webpack_require__("AyQw");
 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; }
@@ -3453,6 +3443,7 @@ var DataloadNoValue = function DataloadNoValue(_ref) {
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
   var dispatch = (0, _hooks.useAppDispatch)();
+  var fluidName = (0, _utils.getFluidName)(fluidType);
   var handleToggleKonnectorCard = (0, _react.useCallback)(function () {
     dispatch((0, _chart.setShowConnectionDetails)(true));
     var app = document.querySelector('.app-content');
@@ -3479,7 +3470,7 @@ var DataloadNoValue = function DataloadNoValue(_ref) {
     }, /*#__PURE__*/_react.default.createElement("div", {
       className: "dataloadvisualizer-section"
     }, /*#__PURE__*/_react.default.createElement("div", {
-      className: "dataloadvisualizer-value ".concat(_enums.FluidType[fluidType].toLowerCase(), " upper")
+      className: "dataloadvisualizer-value ".concat(fluidName, " upper")
     }, t('consumption_visualizer.no_data'))));
   }
   if (dataload.state === _enums.DataloadState.MISSING || dataload.state === _enums.DataloadState.AGGREGATED_HOLE_OR_MISSING) {
@@ -3496,7 +3487,7 @@ var DataloadNoValue = function DataloadNoValue(_ref) {
   }, /*#__PURE__*/_react.default.createElement("div", {
     className: "dataloadvisualizer-section"
   }, /*#__PURE__*/_react.default.createElement("div", {
-    className: "dataloadvisualizer-value ".concat(_enums.FluidType[fluidType].toLowerCase(), " upper to-come")
+    className: "dataloadvisualizer-value ".concat(fluidName, " upper to-come")
   }, t('consumption_visualizer.data_to_come'))));
 };
 var _default = DataloadNoValue;
@@ -3639,6 +3630,7 @@ var _slicedToArray2 = _interopRequireDefault(__webpack_require__("XkwL"));
 var _core = __webpack_require__("rMFn");
 var _notif_error = _interopRequireDefault(__webpack_require__("z26Q"));
 var _notif_maintenance = _interopRequireDefault(__webpack_require__("gXlJ"));
+var _classnames = _interopRequireDefault(__webpack_require__("uRLs"));
 var _StyledIcon = _interopRequireDefault(__webpack_require__("VP3k"));
 var _I18n = __webpack_require__("nUfk");
 var _enums = __webpack_require__("j0hM");
@@ -3663,43 +3655,44 @@ var FluidButton = function FluidButton(_ref) {
     _useState2 = (0, _slicedToArray2.default)(_useState, 2),
     showError = _useState2[0],
     setShowError = _useState2[1];
+  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
+  var fluidName = (0, _utils.getFluidName)(fluidType);
   var isConnected = (0, _react.useCallback)(function () {
-    if (fluidType === _enums.FluidType.MULTIFLUID) {
-      return true;
-    } else return (0, _utils.isKonnectorActive)(fluidStatus, fluidType);
-  }, [fluidStatus, fluidType]);
+    if (isMulti) return true;
+    return (0, _utils.isKonnectorActive)(fluidStatus, fluidType);
+  }, [fluidStatus, fluidType, isMulti]);
   var isErrored = (0, _react.useCallback)(function () {
-    if (fluidType !== _enums.FluidType.MULTIFLUID && fluidStatus[fluidType].status === _enums.FluidState.ERROR || fluidType !== _enums.FluidType.WATER && fluidStatus[fluidType].status === _enums.FluidState.ERROR_LOGIN_FAILED) {
+    if (!isMulti && fluidStatus[fluidType].status === _enums.FluidState.ERROR || fluidType !== _enums.FluidType.WATER && fluidStatus[fluidType].status === _enums.FluidState.ERROR_LOGIN_FAILED) {
       return true;
     }
     return false;
-  }, [fluidStatus, fluidType]);
+  }, [fluidStatus, fluidType, isMulti]);
   var iconType = (0, _picto.getNavPicto)(fluidType, isActive, isConnected());
   var goToFluid = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
     return _regenerator.default.wrap(function _callee$(_context) {
       while (1) {
         switch (_context.prev = _context.next) {
           case 0:
-            navigate(fluidType === _enums.FluidType.MULTIFLUID ? '/consumption' : "/consumption/".concat((0, _utils.getFluidName)(fluidType)));
+            navigate(isMulti ? '/consumption' : "/consumption/".concat(fluidName));
           case 1:
           case "end":
             return _context.stop();
         }
       }
     }, _callee);
-  })), [navigate, fluidType]);
+  })), [navigate, isMulti, fluidName]);
   var isFluidMaintenance = function isFluidMaintenance() {
     var _fluidStatus$fluidTyp;
     return (_fluidStatus$fluidTyp = fluidStatus[fluidType]) === null || _fluidStatus$fluidTyp === void 0 ? void 0 : _fluidStatus$fluidTyp.maintenance;
   };
   (0, _react.useEffect)(function () {
     // Show errors only on connected konnectors that are in error, outdated, with no data (specific case), and not in multifluid
-    if (fluidType !== _enums.FluidType.MULTIFLUID && isConnected() && isErrored()) {
+    if (!isMulti && isConnected() && isErrored()) {
       setShowError(true);
     }
-  }, [fluidStatus, fluidType, isConnected, isErrored]);
+  }, [fluidStatus, fluidType, isConnected, isErrored, isMulti]);
   return /*#__PURE__*/_react.default.createElement(_core.IconButton, {
-    className: "fluid-title fluid-button ".concat(_enums.FluidType[fluidType].toLowerCase()),
+    className: "fluid-title fluid-button",
     onClick: goToFluid
   }, /*#__PURE__*/_react.default.createElement(_StyledIcon.default, {
     className: "fluid-icon",
@@ -3714,8 +3707,10 @@ var FluidButton = function FluidButton(_ref) {
     size: 22,
     className: "notif-error"
   }), /*#__PURE__*/_react.default.createElement("div", {
-    className: "fluid-title ".concat((0, _utils.getFluidName)(fluidType), " ").concat(isActive && 'active', " text-14-normal")
-  }, t("FLUID.".concat(_enums.FluidType[fluidType], ".LABEL"))));
+    className: (0, _classnames.default)('fluid-title text-14-normal', {
+      active: isActive
+    })
+  }, t("FLUID.".concat(fluidName.toLocaleUpperCase(), ".LABEL"))));
 };
 var _default = FluidButton;
 exports.default = _default;
@@ -3868,6 +3863,7 @@ var _Icon = _interopRequireDefault(__webpack_require__("AHiN"));
 var _enums = __webpack_require__("j0hM");
 var _lodash = __webpack_require__("nHcj");
 var _react = _interopRequireWildcard(__webpack_require__("ivGQ"));
+var _utils = __webpack_require__("RgLR");
 var _KonnectorModalFooter = _interopRequireDefault(__webpack_require__("X1ii"));
 __webpack_require__("0gil");
 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); }
@@ -3884,7 +3880,7 @@ var KonnectorModal = function KonnectorModal(_ref) {
     account = _ref.account;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
-  var fluidName = _enums.FluidType[fluidType];
+  var fluidName = (0, _utils.getFluidName)(fluidType);
   var _useState = (0, _react.useState)(0),
     _useState2 = (0, _slicedToArray2.default)(_useState, 2),
     index = _useState2[0],
@@ -3933,12 +3929,12 @@ var KonnectorModal = function KonnectorModal(_ref) {
       size: 48
     }), /*#__PURE__*/_react.default.createElement("div", {
       className: "kcs-picto-txt text-20-bold"
-    }, t("konnector_modal.success_".concat(isUpdating ? 'update_' : '', "txt"))), /*#__PURE__*/_react.default.createElement("b", null, t("konnector_modal.success_data_".concat(isUpdating ? 'update_' : '').concat(fluidName.toLowerCase()))), /*#__PURE__*/_react.default.createElement("p", {
+    }, t("konnector_modal.success_".concat(isUpdating ? 'update_' : '', "txt"))), /*#__PURE__*/_react.default.createElement("b", null, t("konnector_modal.success_data_".concat(isUpdating ? 'update_' : '').concat(fluidName))), /*#__PURE__*/_react.default.createElement("p", {
       style: {
         fontWeight: 400
       },
       dangerouslySetInnerHTML: {
-        __html: t("konnector_modal.success_data_additional_".concat(isUpdating ? 'update_' : '').concat(fluidName.toLowerCase()))
+        __html: t("konnector_modal.success_data_additional_".concat(isUpdating ? 'update_' : '').concat(fluidName))
       }
     }));
   };
@@ -3987,9 +3983,9 @@ var KonnectorModal = function KonnectorModal(_ref) {
     size: 48
   }), /*#__PURE__*/_react.default.createElement("div", {
     className: "kce-picto-txt text-20-bold"
-  }, t('konnector_modal.error_txt')), /*#__PURE__*/_react.default.createElement("div", null, t("konnector_modal.error_credentials_".concat(isUpdating ? 'update_' : '').concat(fluidName.toLowerCase()))), fluidType === _enums.FluidType.ELECTRICITY && !isUpdating && /*#__PURE__*/_react.default.createElement("div", {
+  }, t('konnector_modal.error_txt')), /*#__PURE__*/_react.default.createElement("div", null, t("konnector_modal.error_credentials_".concat(isUpdating ? 'update_' : '').concat(fluidName))), fluidType === _enums.FluidType.ELECTRICITY && !isUpdating && /*#__PURE__*/_react.default.createElement("div", {
     className: "elec-fail"
-  }, t("konnector_modal.error_credentials_".concat(fluidName.toLowerCase(), "_2"))), fluidType === _enums.FluidType.ELECTRICITY && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !showCommonErrors && /*#__PURE__*/_react.default.createElement(_core.Button, {
+  }, t("konnector_modal.error_credentials_".concat(fluidName, "_2"))), fluidType === _enums.FluidType.ELECTRICITY && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, !showCommonErrors && /*#__PURE__*/_react.default.createElement(_core.Button, {
     className: "btnText commonErrors",
     onClick: function onClick() {
       return setShowCommonErrors(true);
@@ -4042,7 +4038,7 @@ var KonnectorModal = function KonnectorModal(_ref) {
     size: 48
   }), /*#__PURE__*/_react.default.createElement("div", {
     className: "kce-picto-txt text-20-bold"
-  }, t('konnector_modal.error_txt')), /*#__PURE__*/_react.default.createElement("div", null, t("konnector_modal.error_data_".concat(isUpdating ? 'update_' : '').concat(fluidName.toLowerCase()))), /*#__PURE__*/_react.default.createElement("div", {
+  }, t('konnector_modal.error_txt')), /*#__PURE__*/_react.default.createElement("div", null, t("konnector_modal.error_data_".concat(isUpdating ? 'update_' : '').concat(fluidName))), /*#__PURE__*/_react.default.createElement("div", {
     className: "err-data-2"
   }, t('konnector_modal.error_data_2')))), state === _flowEvents.SUCCESS_EVENT && connectionSuccessContent(), /*#__PURE__*/_react.default.createElement(_KonnectorModalFooter.default, {
     state: state,
@@ -4495,7 +4491,6 @@ var ConsumptionView = function ConsumptionView(_ref) {
   var navigate = (0, _reactRouterDom.useNavigate)();
   var client = (0, _cozyClient.useClient)();
   var dispatch = (0, _hooks.useAppDispatch)();
-  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
   var _useAppSelector = (0, _hooks.useAppSelector)(function (state) {
       return state.ecolyo;
     }),
@@ -4510,6 +4505,7 @@ var ConsumptionView = function ConsumptionView(_ref) {
     _useAppSelector$modal = _useAppSelector.modal,
     partnersIssueModal = _useAppSelector$modal.partnersIssueModal,
     customPopupModal = _useAppSelector$modal.customPopupModal;
+  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
   var dateChartService = new _dateChart.default();
   var _useState = (0, _react.useState)(releaseNotes.show),
     _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -4523,8 +4519,8 @@ var ConsumptionView = function ConsumptionView(_ref) {
     _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
     consentExpiredFluids = _useState6[0],
     setConsentExpiredFluids = _useState6[1];
-  var updateKey = fluidType !== _enums.FluidType.MULTIFLUID && fluidStatus[fluidType].lastDataDate ? "".concat(fluidStatus[fluidType].lastDataDate.toLocaleString(), " + ").concat(fluidStatus[fluidType].status + fluidType) : '';
-  var lastDataDateKey = fluidType !== _enums.FluidType.MULTIFLUID && fluidStatus[fluidType].lastDataDate ? "".concat(fluidStatus[fluidType].lastDataDate.toLocaleString() + fluidType) : '';
+  var updateKey = !isMulti && fluidStatus[fluidType].lastDataDate ? "".concat(fluidStatus[fluidType].lastDataDate.toLocaleString(), " + ").concat(fluidStatus[fluidType].status + fluidType) : '';
+  var lastDataDateKey = !isMulti && fluidStatus[fluidType].lastDataDate ? "".concat(fluidStatus[fluidType].lastDataDate.toLocaleString() + fluidType) : '';
   var handleCloseReleaseNoteModal = (0, _react.useCallback)(function () {
     setOpenReleaseNoteModal(false);
     dispatch((0, _global.showReleaseNotes)({
@@ -4536,18 +4532,6 @@ var ConsumptionView = function ConsumptionView(_ref) {
       navigate(releaseNotes.redirectLink);
     }
   }, [dispatch, navigate, releaseNotes.notes, releaseNotes.redirectLink]);
-  var getPartnerKey = function getPartnerKey(fluidType) {
-    switch (fluidType) {
-      case _enums.FluidType.ELECTRICITY:
-        return 'enedis';
-      case _enums.FluidType.WATER:
-        return 'egl';
-      case _enums.FluidType.GAS:
-        return 'grdf';
-      default:
-        throw new Error('unknown fluidtype');
-    }
-  };
   var handleClosePartnerIssueModal = (0, _react.useCallback)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee() {
     var profileService, profileValues, updatedProfile;
     return _regenerator.default.wrap(function _callee$(_context) {
@@ -4565,12 +4549,12 @@ var ConsumptionView = function ConsumptionView(_ref) {
             }
             _context.next = 7;
             return profileService.updateProfile({
-              partnersIssueSeenDate: _objectSpread(_objectSpread({}, profileValues.partnersIssueSeenDate), {}, (0, _defineProperty2.default)({}, getPartnerKey(fluidType), (0, _utils.getTodayDate)()))
+              partnersIssueSeenDate: _objectSpread(_objectSpread({}, profileValues.partnersIssueSeenDate), {}, (0, _defineProperty2.default)({}, (0, _utils.getPartnerKey)(fluidType), (0, _utils.getTodayDate)()))
             });
           case 7:
             updatedProfile = _context.sent;
             if (updatedProfile) {
-              dispatch((0, _modal.openPartnersModal)(_objectSpread(_objectSpread({}, partnersIssueModal), {}, (0, _defineProperty2.default)({}, getPartnerKey(fluidType), false))));
+              dispatch((0, _modal.openPartnersModal)(_objectSpread(_objectSpread({}, partnersIssueModal), {}, (0, _defineProperty2.default)({}, (0, _utils.getPartnerKey)(fluidType), false))));
             }
           case 9:
           case "end":
@@ -4706,7 +4690,7 @@ var ConsumptionView = function ConsumptionView(_ref) {
     return /*#__PURE__*/_react.default.createElement(_PartnerIssueModal.default, {
       key: issuedFluid.fluidType,
       issuedFluid: issuedFluid.fluidType,
-      open: partnersIssueModal[getPartnerKey(issuedFluid.fluidType)],
+      open: partnersIssueModal[(0, _utils.getPartnerKey)(issuedFluid.fluidType)],
       handleCloseClick: handleClosePartnerIssueModal
     });
   }), /*#__PURE__*/_react.default.createElement(_CustomPopupModal.default, {
diff --git a/6/ecolyo.a172c09454aa06516604.js b/6/ecolyo.34606de539279daaa4ff.js
similarity index 99%
rename from 6/ecolyo.a172c09454aa06516604.js
rename to 6/ecolyo.34606de539279daaa4ff.js
index 258fb8c54..b641214f7 100644
--- a/6/ecolyo.a172c09454aa06516604.js
+++ b/6/ecolyo.34606de539279daaa4ff.js
@@ -117,20 +117,19 @@ var SwitchGas = (0, _styles.withStyles)({
 var StyledSwitch = function StyledSwitch(_ref) {
   var fluidType = _ref.fluidType,
     props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
-  if (fluidType !== undefined) {
-    switch (fluidType) {
-      case _enums.FluidType.ELECTRICITY:
-        return /*#__PURE__*/_react.default.createElement(SwitchElec, props);
-      case _enums.FluidType.WATER:
-        return /*#__PURE__*/_react.default.createElement(SwitchWater, props);
-      case _enums.FluidType.GAS:
-        return /*#__PURE__*/_react.default.createElement(SwitchGas, props);
-      default:
-        return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
-    }
-  } else {
+  if (fluidType === undefined) {
     return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
   }
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return /*#__PURE__*/_react.default.createElement(SwitchElec, props);
+    case _enums.FluidType.WATER:
+      return /*#__PURE__*/_react.default.createElement(SwitchWater, props);
+    case _enums.FluidType.GAS:
+      return /*#__PURE__*/_react.default.createElement(SwitchGas, props);
+    default:
+      return /*#__PURE__*/_react.default.createElement(SwitchBase, props);
+  }
 };
 var _default = StyledSwitch;
 exports.default = _default;
@@ -397,23 +396,24 @@ var ExportLoadingModal = function ExportLoadingModal(_ref) {
   };
   var buildDataRow = (0, _react2.useCallback)( /*#__PURE__*/function () {
     var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(dataload, fluidType) {
-      var dataRow, emas, maxPowerEntities, maxLoad;
+      var dataRow, fluidName, emas, maxPowerEntities, maxLoad;
       return _regenerator.default.wrap(function _callee$(_context) {
         while (1) {
           switch (_context.prev = _context.next) {
             case 0:
               dataRow = {};
+              fluidName = (0, _utils.getFluidName)(fluidType);
               dataRow[t('export.month')] = (0, _utils.formatTwoDigits)(dataload.date.month);
               dataRow[t('export.year')] = dataload.date.year;
-              dataRow["".concat(t('export.consumption'), " (").concat(t("FLUID.".concat(_enums.FluidType[fluidType], ".UNIT")), ")")] = dataload.value;
+              dataRow["".concat(t('export.consumption'), " (").concat(t("FLUID.".concat(fluidName, ".UNIT")), ")")] = dataload.value;
               if (!(fluidType === _enums.FluidType.ELECTRICITY)) {
-                _context.next = 10;
+                _context.next = 11;
                 break;
               }
               emas = new _enedisMonthlyAnalysisData.default(client);
-              _context.next = 8;
+              _context.next = 9;
               return emas.getMaxPowerByDate(dataload.date.year, dataload.date.month);
-            case 8:
+            case 9:
               maxPowerEntities = _context.sent;
               if (maxPowerEntities) {
                 maxLoad = maxPowerEntities.reduce(function (max, entity) {
@@ -424,9 +424,9 @@ var ExportLoadingModal = function ExportLoadingModal(_ref) {
                 }, 0);
                 dataRow[t('export.maxpower')] = maxLoad;
               }
-            case 10:
-              return _context.abrupt("return", dataRow);
             case 11:
+              return _context.abrupt("return", dataRow);
+            case 12:
             case "end":
               return _context.stop();
           }
diff --git a/7/ecolyo.0aa5f5c57c463f74cbec.js b/7/ecolyo.d61472e75eb196504d3e.js
similarity index 98%
rename from 7/ecolyo.0aa5f5c57c463f74cbec.js
rename to 7/ecolyo.d61472e75eb196504d3e.js
index a68cb5d9f..e910bde1b 100644
--- a/7/ecolyo.0aa5f5c57c463f74cbec.js
+++ b/7/ecolyo.d61472e75eb196504d3e.js
@@ -355,18 +355,18 @@ var DataloadSection = function DataloadSection(_ref) {
     toggleEstimationModal = _ref.toggleEstimationModal;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
-  if (dataload.value === -1 && dataloadSectionType === _enums.DataloadSectionType.LEFT) {
-    return /*#__PURE__*/_react.default.createElement("div", {
-      className: "dataloadvisualizer-section dataloadvisualizer-section-left-novalue"
-    }, /*#__PURE__*/_react.default.createElement("div", {
-      className: "dataloadvisualizer-novalue ".concat(_enums.FluidType[fluidType].toLowerCase(), "-compare text-20-normal")
-    }, t('consumption_visualizer.no_data')));
-  }
   var isLeft = dataloadSectionType === _enums.DataloadSectionType.LEFT;
   var isRight = dataloadSectionType === _enums.DataloadSectionType.RIGHT;
   var noCompare = dataloadSectionType === _enums.DataloadSectionType.NO_COMPARE;
   var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
   var fluidName = (0, _utils.getFluidName)(fluidType);
+  if (dataload.value === -1 && isLeft) {
+    return /*#__PURE__*/_react.default.createElement("div", {
+      className: "dataloadvisualizer-section dataloadvisualizer-section-left-novalue"
+    }, /*#__PURE__*/_react.default.createElement("div", {
+      className: "dataloadvisualizer-novalue ".concat(fluidName, "-compare text-20-normal")
+    }, t('consumption_visualizer.no_data')));
+  }
   return /*#__PURE__*/_react.default.createElement("div", {
     className: (0, _classnames.default)('dataloadvisualizer-section', {
       'dataloadvisualizer-section-left': isLeft,
@@ -502,10 +502,11 @@ var DataloadSectionValue = function DataloadSectionValue(_ref) {
     toggleEstimationModal = _ref.toggleEstimationModal;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
+  var FLUIDNAME = (0, _utils.getFluidName)(fluidType).toUpperCase();
   if (fluidType === _enums.FluidType.MULTIFLUID) {
     return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _utils.formatNumberValues)(dataload.value), /*#__PURE__*/_react.default.createElement("div", {
       className: "text-18-normal euroUnit"
-    }, t("FLUID.".concat(_enums.FluidType[fluidType], ".UNIT"))), dataloadSectionType === _enums.DataloadSectionType.NO_COMPARE && /*#__PURE__*/_react.default.createElement(_core.Button, {
+    }, t("FLUID.".concat(FLUIDNAME, ".UNIT"))), dataloadSectionType === _enums.DataloadSectionType.NO_COMPARE && /*#__PURE__*/_react.default.createElement(_core.Button, {
       classes: {
         root: 'btnText',
         label: 'text-14-normal'
@@ -514,12 +515,12 @@ var DataloadSectionValue = function DataloadSectionValue(_ref) {
       onClick: toggleEstimationModal
     }, t('consumption_visualizer.estimated')));
   }
-  var formattedValue = (0, _utils.formatNumberValues)(dataload.value, _enums.FluidType[fluidType], true);
-  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, Number(formattedValue) >= 1000 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _utils.formatNumberValues)(dataload.value, _enums.FluidType[fluidType]), /*#__PURE__*/_react.default.createElement("span", {
+  var formattedValue = (0, _utils.formatNumberValues)(dataload.value, FLUIDNAME, true);
+  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, Number(formattedValue) >= 1000 ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _utils.formatNumberValues)(dataload.value, FLUIDNAME), /*#__PURE__*/_react.default.createElement("span", {
     className: "text-18-normal"
-  }, t("FLUID.".concat(_enums.FluidType[fluidType], ".MEGAUNIT")))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _utils.formatNumberValues)(dataload.value), /*#__PURE__*/_react.default.createElement("span", {
+  }, t("FLUID.".concat(FLUIDNAME, ".MEGAUNIT")))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, (0, _utils.formatNumberValues)(dataload.value), /*#__PURE__*/_react.default.createElement("span", {
     className: "text-18-normal"
-  }, t("FLUID.".concat(_enums.FluidType[fluidType], ".UNIT")))));
+  }, t("FLUID.".concat(FLUIDNAME, ".UNIT")))));
 };
 var _default = DataloadSectionValue;
 exports.default = _default;
diff --git a/app/ecolyo.1c5feca57698fbde8b23.js b/app/ecolyo.e14b271f59d69e5c02fd.js
similarity index 99%
rename from app/ecolyo.1c5feca57698fbde8b23.js
rename to app/ecolyo.e14b271f59d69e5c02fd.js
index 64df5707e..d1f93b1ac 100644
--- a/app/ecolyo.1c5feca57698fbde8b23.js
+++ b/app/ecolyo.e14b271f59d69e5c02fd.js
@@ -64,7 +64,7 @@
 /******/
 /******/ 	// script path function
 /******/ 	function jsonpScriptSrc(chunkId) {
-/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"3":"f407a5f06d8f4c483bb7","4":"b7c36a8f27e4baa4ae37","5":"f72cde68e2be97b18a5e","6":"a172c09454aa06516604","7":"0aa5f5c57c463f74cbec","8":"a73a83af326b8e1dfa4a","9":"73a97eac0086801c9dc9","10":"26edbface76655274ad8","11":"3baf0b358c1c353001a4"}[chunkId] + ".js"
+/******/ 		return __webpack_require__.p + "" + ({}[chunkId]||chunkId) + "/ecolyo." + {"3":"f407a5f06d8f4c483bb7","4":"cdf9dd63a069e5414967","5":"152b55e202ef5f864595","6":"34606de539279daaa4ff","7":"d61472e75eb196504d3e","8":"a73a83af326b8e1dfa4a","9":"73a97eac0086801c9dc9","10":"26edbface76655274ad8","11":"3baf0b358c1c353001a4"}[chunkId] + ".js"
 /******/ 	}
 /******/
 /******/ 	// The require function
@@ -16167,20 +16167,18 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
 var _regenerator = _interopRequireDefault(__webpack_require__("hJxD"));
 var _slicedToArray2 = _interopRequireDefault(__webpack_require__("XkwL"));
 var _asyncToGenerator2 = _interopRequireDefault(__webpack_require__("HZZ/"));
-var _defineProperty2 = _interopRequireDefault(__webpack_require__("J58c"));
 var _react = __webpack_require__("5QCN");
 var _enums = __webpack_require__("j0hM");
 var _get = _interopRequireDefault(__webpack_require__("/yh+"));
@@ -16192,18 +16190,6 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
 /** Array of elec, water & gas */
 var allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -16223,6 +16209,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+var getFluidTypeTranslation = function getFluidTypeTranslation(fluidType) {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+var getPartnerKey = function getPartnerKey(fluidType) {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -16285,22 +16297,11 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, "relationships.".concat(relName, ".data"), []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(function (relName) {
-    return (0, _defineProperty2.default)({}, relName, (0, _get.default)(doc, "relationships.".concat(relName, ".data"), []));
-  })[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
 var importIconById = /*#__PURE__*/function () {
-  var _ref2 = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(id, pathType) {
+  var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(id, pathType) {
     var importedChallengeIcon;
     return _regenerator.default.wrap(function _callee$(_context) {
       while (1) {
@@ -16332,7 +16333,7 @@ var importIconById = /*#__PURE__*/function () {
     }, _callee, null, [[0, 8]]);
   }));
   return function importIconById(_x, _x2) {
-    return _ref2.apply(this, arguments);
+    return _ref.apply(this, arguments);
   };
 }();
 exports.importIconById = importIconById;
@@ -16605,9 +16606,9 @@ var roundToNearestHalfHour = function roundToNearestHalfHour(hour, minute, isEnd
  */
 exports.roundToNearestHalfHour = roundToNearestHalfHour;
 var roundOffPeakHours = function roundOffPeakHours(offPeakHours) {
-  return offPeakHours.map(function (_ref3) {
-    var start = _ref3.start,
-      end = _ref3.end;
+  return offPeakHours.map(function (_ref2) {
+    var start = _ref2.start,
+      end = _ref2.end;
     return {
       start: roundToNearestHalfHour(start.hour, start.minute, false),
       end: roundToNearestHalfHour(end.hour, end.minute, true)
@@ -27641,6 +27642,7 @@ var _react = _interopRequireWildcard(__webpack_require__("ivGQ"));
 var _dateChart = _interopRequireDefault(__webpack_require__("Aj1I"));
 var _chart = __webpack_require__("dklY");
 var _hooks = __webpack_require__("6FOS");
+var _utils = __webpack_require__("RgLR");
 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) {
@@ -27682,8 +27684,8 @@ var Bar = function Bar(_ref) {
     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 FLUIDNAME = (0, _utils.getFluidName)(fluidType).toUpperCase();
   var handleClick = function handleClick() {
     if (!isSwitching && !isDuel && clickable) {
       setClicked(true);
@@ -27738,7 +27740,7 @@ var Bar = function Bar(_ref) {
     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);
+    var baseStyles = ["bar-".concat(FLUIDNAME), upcoming, weekdays, selected, disabled].filter(Boolean).join(' ');
     if (clicked) {
       return "".concat(baseStyles, " ").concat(clickedAnim);
     }
@@ -27750,7 +27752,7 @@ var Bar = function Bar(_ref) {
   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);
+    return "bar-compare-".concat(FLUIDNAME, " ").concat(selected, " ").concat(animationClass, " ").concat(clickedAnim);
   };
   var barBackgroundClass = isSelectedDate;
   var getBandWidth = function getBandWidth() {
@@ -32096,6 +32098,7 @@ var _d3Axis = __webpack_require__("dIIL");
 var _d3Selection = __webpack_require__("gIG6");
 var _enums = __webpack_require__("j0hM");
 var _react = _interopRequireWildcard(__webpack_require__("ivGQ"));
+var _utils = __webpack_require__("RgLR");
 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 AxisRight = function AxisRight(_ref) {
@@ -32107,10 +32110,10 @@ var AxisRight = function AxisRight(_ref) {
     isAnalysis = _ref.isAnalysis;
   var _useI18n = (0, _I18n.useI18n)(),
     t = _useI18n.t;
-  var fluidStyle = fluidType === _enums.FluidType.MULTIFLUID ? 'MULTIFLUID' : _enums.FluidType[fluidType];
-  var isMultiFluid = fluidStyle !== 'MULTIFLUID';
+  var isMulti = fluidType === _enums.FluidType.MULTIFLUID;
+  var fluidStyle = (0, _utils.getFluidName)(fluidType).toLocaleUpperCase();
   var yAxisRef = (0, _react.useRef)(null);
-  var newMarginRight = fluidType === _enums.FluidType.MULTIFLUID ? marginRight - 10 : marginRight;
+  var newMarginRight = isMulti ? marginRight - 10 : marginRight;
   var formatFluidValue = function formatFluidValue(value, unit) {
     var fluidUnit = t("FLUID.".concat(fluidStyle, ".").concat(unit));
     return "".concat(value.valueOf(), " ").concat(fluidUnit);
@@ -32124,7 +32127,7 @@ var AxisRight = function AxisRight(_ref) {
   var drawYAxis = function drawYAxis() {
     // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
     (0, _d3Selection.select)(yAxisRef.current).call((0, _d3Axis.axisRight)(yScale).ticks(isAnalysis ? 2 : 4).tickSize(-width).tickSizeOuter(0).tickFormat(function (d) {
-      return Number(d) >= 1000 && isMultiFluid ? formatMultiFluidValue(d) : formatSingleFluidValue(d);
+      return Number(d) >= 1000 && !isMulti ? formatMultiFluidValue(d) : formatSingleFluidValue(d);
     }));
     (0, _d3Selection.selectAll)('.tick text').attr('class', 'chart-ticks-y-text');
     (0, _d3Selection.select)('.domain').remove();
diff --git a/index.html b/index.html
index 0473ad9f4..5de330ec5 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.b479e82bf0a2e56e4c58.js"></script><script src="app/ecolyo.1c5feca57698fbde8b23.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.b479e82bf0a2e56e4c58.js"></script><script src="app/ecolyo.e14b271f59d69e5c02fd.js"></script></div></body></html>
\ No newline at end of file
diff --git a/services/aggregatorUsageEvents/ecolyo.js b/services/aggregatorUsageEvents/ecolyo.js
index 8b4751234..a600ebde8 100644
--- a/services/aggregatorUsageEvents/ecolyo.js
+++ b/services/aggregatorUsageEvents/ecolyo.js
@@ -298,7 +298,7 @@ const getConsumptionValue = async (client, fluidType) => {
 const calculateConsumptionVariation = async client => {
   logStack('info', `calculateConsumptionVariation`);
   const consumptionData = await getConsumptionValue(client, [_enums.FluidType.ELECTRICITY, _enums.FluidType.GAS, _enums.FluidType.WATER]);
-  for (const fluidType in [_enums.FluidType.ELECTRICITY, _enums.FluidType.GAS, _enums.FluidType.WATER]) {
+  for (const fluidType of [_enums.FluidType.ELECTRICITY, _enums.FluidType.GAS, _enums.FluidType.WATER]) {
     var _consumptionData$flui;
     // Seniority is set to 0, otherwise the indicator is too specific
     const seniority = 0;
@@ -312,14 +312,14 @@ const calculateConsumptionVariation = async client => {
       // in percent
       // eslint-disable-next-line camelcase
       group1: {
-        fluid_type: _enums.FluidType[fluidType].toLowerCase()
+        fluid_type: (0, _utils.getFluidName)(fluidType)
       },
       group2: {
         seniority: Math.round(seniority).toString()
       },
       group3: {
         // eslint-disable-next-line camelcase
-        fluid_usage: await buildProfileWithFluidType(client, (0, _utils.getFluidType)(_enums.FluidType[fluidType]))
+        fluid_usage: await buildProfileWithFluidType(client, fluidType)
       }
     };
 
@@ -98836,13 +98836,12 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
@@ -98854,18 +98853,6 @@ var _challengeEntity = _interopRequireDefault(__webpack_require__(751));
 /** Array of elec, water & gas */
 const allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -98885,6 +98872,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+const getFluidTypeTranslation = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+const getPartnerKey = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -98944,17 +98957,6 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, `relationships.${relName}.data`, []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(relName => ({
-    [relName]: (0, _get.default)(doc, `relationships.${relName}.data`, [])
-  }))[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
diff --git a/services/consumptionAlert/ecolyo.js b/services/consumptionAlert/ecolyo.js
index 385a59237..591c73d14 100644
--- a/services/consumptionAlert/ecolyo.js
+++ b/services/consumptionAlert/ecolyo.js
@@ -98433,13 +98433,12 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
@@ -98451,18 +98450,6 @@ var _challengeEntity = _interopRequireDefault(__webpack_require__(751));
 /** Array of elec, water & gas */
 const allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -98482,6 +98469,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+const getFluidTypeTranslation = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+const getPartnerKey = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -98541,17 +98554,6 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, `relationships.${relName}.data`, []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(relName => ({
-    [relName]: (0, _get.default)(doc, `relationships.${relName}.data`, [])
-  }))[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
diff --git a/services/enedisHalfHourMonthlyAnalysis/ecolyo.js b/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
index 01997d014..d8fd8d6f8 100644
--- a/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
+++ b/services/enedisHalfHourMonthlyAnalysis/ecolyo.js
@@ -98433,13 +98433,12 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
@@ -98451,18 +98450,6 @@ var _challengeEntity = _interopRequireDefault(__webpack_require__(751));
 /** Array of elec, water & gas */
 const allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -98482,6 +98469,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+const getFluidTypeTranslation = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+const getPartnerKey = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -98541,17 +98554,6 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, `relationships.${relName}.data`, []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(relName => ({
-    [relName]: (0, _get.default)(doc, `relationships.${relName}.data`, [])
-  }))[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
diff --git a/services/fluidsPrices/ecolyo.js b/services/fluidsPrices/ecolyo.js
index e03860b0d..d25ef6bb6 100644
--- a/services/fluidsPrices/ecolyo.js
+++ b/services/fluidsPrices/ecolyo.js
@@ -98433,13 +98433,12 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
@@ -98451,18 +98450,6 @@ var _challengeEntity = _interopRequireDefault(__webpack_require__(751));
 /** Array of elec, water & gas */
 const allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -98482,6 +98469,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+const getFluidTypeTranslation = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+const getPartnerKey = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -98541,17 +98554,6 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, `relationships.${relName}.data`, []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(relName => ({
-    [relName]: (0, _get.default)(doc, `relationships.${relName}.data`, [])
-  }))[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
diff --git a/services/monthlyReportNotification/ecolyo.js b/services/monthlyReportNotification/ecolyo.js
index 23ed1315b..07f0fb3ce 100644
--- a/services/monthlyReportNotification/ecolyo.js
+++ b/services/monthlyReportNotification/ecolyo.js
@@ -98433,13 +98433,12 @@ exports.formatListWithAnd = exports.allFluids = void 0;
 exports.formatNumberValues = formatNumberValues;
 exports.getChallengeTitleWithLineReturn = exports.formatTwoDigits = exports.formatOffPeakHours = void 0;
 exports.getFluidName = getFluidName;
-exports.getFluidType = getFluidType;
+exports.getFluidTypeTranslation = void 0;
 exports.getKonnectorSlug = getKonnectorSlug;
 exports.getKonnectorUpdateError = getKonnectorUpdateError;
-exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
+exports.getPartnerKey = exports.getMonthNameWithPrep = exports.getMonthName = exports.getMonthFullName = void 0;
 exports.getRelationship = getRelationship;
 exports.getRelationshipHasMany = getRelationshipHasMany;
-exports.getRelationships = getRelationships;
 exports.importIconById = exports.getTodayDate = exports.getSeason = void 0;
 exports.isKonnectorActive = isKonnectorActive;
 exports.splitOffPeakHours = exports.roundToNearestHalfHour = exports.roundOffPeakHours = exports.parseOffPeakHours = exports.isValidOffPeakHours = void 0;
@@ -98451,18 +98450,6 @@ var _challengeEntity = _interopRequireDefault(__webpack_require__(751));
 /** Array of elec, water & gas */
 const allFluids = [_enums.FluidType.ELECTRICITY, _enums.FluidType.WATER, _enums.FluidType.GAS];
 exports.allFluids = allFluids;
-function getFluidType(type) {
-  switch (type.toUpperCase()) {
-    case 'ELECTRICITY':
-      return _enums.FluidType.ELECTRICITY;
-    case 'WATER':
-      return _enums.FluidType.WATER;
-    case 'GAS':
-      return _enums.FluidType.GAS;
-    default:
-      return _enums.FluidType.ELECTRICITY;
-  }
-}
 function getKonnectorSlug(fluidType) {
   switch (fluidType) {
     case _enums.FluidType.ELECTRICITY:
@@ -98482,6 +98469,32 @@ function getKonnectorSlug(fluidType) {
 function getFluidName(fluidType) {
   return _enums.FluidType[fluidType].toLowerCase();
 }
+const getFluidTypeTranslation = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.GAS:
+      return 'de gaz';
+    case _enums.FluidType.ELECTRICITY:
+      return "d'électricité";
+    case _enums.FluidType.WATER:
+      return "d'eau";
+    default:
+      throw new Error('unexpected fluidtype');
+  }
+};
+exports.getFluidTypeTranslation = getFluidTypeTranslation;
+const getPartnerKey = fluidType => {
+  switch (fluidType) {
+    case _enums.FluidType.ELECTRICITY:
+      return 'enedis';
+    case _enums.FluidType.WATER:
+      return 'egl';
+    case _enums.FluidType.GAS:
+      return 'grdf';
+    default:
+      throw new Error('unknown fluidtype');
+  }
+};
+exports.getPartnerKey = getPartnerKey;
 function getKonnectorUpdateError(type) {
   switch (type.toUpperCase()) {
     case 'USER_ACTION_NEEDED.OAUTH_OUTDATED':
@@ -98541,17 +98554,6 @@ function getRelationshipHasMany(doc, relName) {
   return (0, _get.default)(doc, `relationships.${relName}.data`, []);
 }
 
-/**
- * Get many relations in doc
- * @param {object} doc - DocumentEntity
- * @param relNameList - Array of name of the relations
- */
-function getRelationships(doc, relNameList) {
-  return relNameList.map(relName => ({
-    [relName]: (0, _get.default)(doc, `relationships.${relName}.data`, [])
-  }))[0];
-}
-
 /**
  * Import a svg file with format : id.svg
  */
-- 
GitLab