@widergy/utilitygo-smart-bill-web 3.18.0 → 3.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/components/SmartBillSummary/constants.js +1 -5
  3. package/dist/components/SmartBillSummary/index.js +29 -8
  4. package/dist/components/SmartBillSummary/styles.module.scss +13 -11
  5. package/dist/components/SmartBillSummary/tabs/Billing/index.js +1 -1
  6. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/ProgressBarItem/index.js +93 -0
  7. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/ProgressBarItem/styles.module.scss +109 -0
  8. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/ProgressBarItem/utils.js +13 -0
  9. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/ReiterationBanner/index.js +50 -0
  10. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/ReiterationBanner/styles.module.scss +43 -0
  11. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/SimpleBanner/index.js +27 -0
  12. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/components/SimpleBanner/styles.module.scss +12 -0
  13. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/index.js +49 -0
  14. package/dist/components/SmartBillSummary/tabs/Consumptions/components/ProgressBarCard/utils.js +58 -0
  15. package/dist/components/SmartBillSummary/tabs/Consumptions/index.js +30 -15
  16. package/dist/components/SmartBillSummary/tabs/Consumptions/styles.module.scss +19 -16
  17. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/ActionCards/styles.module.scss +1 -1
  18. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/BillHeader/index.js +3 -0
  19. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/BillHeader/styles.module.scss +1 -1
  20. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/ColumnRenderer/constants.js +7 -1
  21. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/ColumnRenderer/styles.module.scss +1 -1
  22. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/components/ProgressBar/styles.module.scss +2 -1
  23. package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/index.js +2 -2
  24. package/dist/components/SmartBillSummary/tabs/components/SecondHeader/index.js +53 -0
  25. package/dist/components/SmartBillSummary/tabs/components/SecondHeader/styles.module.scss +40 -0
  26. package/dist/components/SmartBillSummary/utils.js +8 -11
  27. package/dist/index.js +1 -1
  28. package/package.json +2 -2
  29. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/AccountCard/index.js +0 -0
  30. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/AccountCard/styles.module.scss +0 -0
  31. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/ActionCards/index.js +0 -0
  32. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/ColumnRenderer/index.js +0 -0
  33. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/DebtStatusLabel/constants.js +0 -0
  34. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/DebtStatusLabel/index.js +0 -0
  35. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/DebtStatusLabel/styles.module.scss +0 -0
  36. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/components/ProgressBar/constants.js +0 -0
  37. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/components/ProgressBar/index.js +0 -0
  38. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/components/ProgressBar/utils.js +0 -0
  39. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/styles.module.scss +0 -0
  40. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/RateCard/utils.js +0 -0
  41. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/TitularCard/index.js +0 -0
  42. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/TitularCard/styles.module.scss +0 -0
  43. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/TotalCard/index.js +0 -0
  44. /package/dist/components/SmartBillSummary/tabs/{Billing/components → components}/TotalCard/styles.module.scss +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,22 @@
1
+ # [3.19.0](https://github.com/widergy/UtilityGO-Smart-Bill-Web/compare/v3.18.1...v3.19.0) (2025-12-22)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * updates npm token ([3cec5b1](https://github.com/widergy/UtilityGO-Smart-Bill-Web/commit/3cec5b1b92330c19c895c2ae67dc9b391d571cf2))
7
+
8
+
9
+ ### Features
10
+
11
+ * [EVEP-46, EVEP-274] smartbill v2 ([#72](https://github.com/widergy/UtilityGO-Smart-Bill-Web/issues/72)) ([22c0382](https://github.com/widergy/UtilityGO-Smart-Bill-Web/commit/22c0382827781d284df215fdd6131da676ca6308))
12
+
13
+ ## [3.18.1](https://github.com/widergy/UtilityGO-Smart-Bill-Web/compare/v3.18.0...v3.18.1) (2025-12-09)
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * loading when download smartbill ([#74](https://github.com/widergy/UtilityGO-Smart-Bill-Web/issues/74)) ([a3b9bb3](https://github.com/widergy/UtilityGO-Smart-Bill-Web/commit/a3b9bb32b1efb5956289187bc6d78bc88435e85a))
19
+
1
20
  # [3.18.0](https://github.com/widergy/UtilityGO-Smart-Bill-Web/compare/v3.17.0...v3.18.0) (2025-11-06)
2
21
 
3
22
 
@@ -17,11 +17,7 @@ const TAB_VALUE_REGEX = exports.TAB_VALUE_REGEX = /\[data-tab-value="([^"]+)"\]/
17
17
  const CAPTURED_VALUE_REGEX = exports.CAPTURED_VALUE_REGEX = 1;
18
18
  const ONBOARDING_OPTIONS = exports.ONBOARDING_OPTIONS = {
19
19
  overlayOpacity: 1,
20
- positionPrecedence: ['top', 'left', 'bottom', 'right'],
21
- scrollPadding: 5,
22
- scrollTo: 'tooltip',
23
- scrollToElement: false,
24
- tooltipPosition: 'top'
20
+ positionPrecedence: ['top', 'left', 'bottom', 'right']
25
21
  };
26
22
  const renderComponentWithProps = (Component, tab) => props => /*#__PURE__*/_react.default.createElement(Component, _extends({}, props, {
27
23
  assets: props?.assets?.[tab] || {},
@@ -13,7 +13,8 @@ var _constants = require("./constants");
13
13
  var _utils = require("./utils");
14
14
  var _AIPanel = _interopRequireDefault(require("./components/AIPanel"));
15
15
  var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
16
- var _BillHeader = _interopRequireDefault(require("./tabs/Billing/components/BillHeader"));
16
+ var _BillHeader = _interopRequireDefault(require("./tabs/components/BillHeader"));
17
+ var _SecondHeader = _interopRequireDefault(require("./tabs/components/SecondHeader"));
17
18
  var _utils2 = require("./tabs/Billing/utils");
18
19
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
20
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
@@ -23,10 +24,12 @@ const SmartBillSummary = _ref => {
23
24
  annex,
24
25
  assets,
25
26
  billingLayout,
27
+ consumptionLayout,
26
28
  colors,
27
29
  components,
28
30
  constants,
29
31
  downloadSmartbillEnabled,
32
+ downloadSmartBillLoading,
30
33
  handlers,
31
34
  loading,
32
35
  showOnboarding = false,
@@ -37,7 +40,8 @@ const SmartBillSummary = _ref => {
37
40
  tabOptions,
38
41
  translations,
39
42
  utils,
40
- periodSpan
43
+ periodSpan,
44
+ progressBarConcept
41
45
  } = _ref;
42
46
  const {
43
47
  aiQuestionsList,
@@ -81,7 +85,7 @@ const SmartBillSummary = _ref => {
81
85
  } = loading ? {
82
86
  tabs: [],
83
87
  onboardingSteps: []
84
- } : (0, _utils.getTabOptions)(isDesktopSize, onboardingSteps, tabOptions, smartBill);
88
+ } : (0, _utils.getTabOptions)(isDesktopSize, onboardingSteps, tabOptions);
85
89
  const defaultCurrentTab = (0, _utils.getDefaultCurrentTab)(tabs);
86
90
  const [currentTab, setCurrentTab] = (0, _react.useState)(defaultCurrentTab);
87
91
  const [aiPanelIsOpen, setAiPanelIsOpen] = (0, _react.useState)(false);
@@ -152,11 +156,21 @@ const SmartBillSummary = _ref => {
152
156
  debtStatusValidation: smartBill.debt_status_label !== null,
153
157
  debtStatusLabel: smartBill.debt_status_label,
154
158
  downloadSmartbillEnabled,
159
+ downloadSmartBillLoading,
155
160
  handleDownloadSmartBill,
156
161
  smartBill
162
+ }), tabs.find(tab => tab.value === currentTab)?.header && /*#__PURE__*/_react.default.createElement(_SecondHeader.default, {
163
+ accountNumber: smartBill.client?.client_number,
164
+ accountNumberHelpText: translations.billingTab.secondHeader?.accountNumberHelpText,
165
+ supplyAddress: smartBill.client?.account_address,
166
+ city: currentAccount?.city,
167
+ district: currentAccount?.district,
168
+ supplyAddressHelpText: translations.billingTab.secondHeader?.supplyAddressHelpText,
169
+ clientNumberFormatter: utils?.formatters?.clientNumberFormatter
157
170
  }), _constants.TAB_COMPONENT_MAPPER?.[currentTab]?.({
158
171
  assets,
159
172
  billingLayout,
173
+ consumptionLayout,
160
174
  constants,
161
175
  consumptionLevels,
162
176
  components,
@@ -171,7 +185,8 @@ const SmartBillSummary = _ref => {
171
185
  smartBill,
172
186
  translations,
173
187
  utils,
174
- periodSpan
188
+ periodSpan,
189
+ progressBarConcept
175
190
  })), aiQuestionsPanelEnabled && /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_energyUi.UTTooltip, {
176
191
  arrow: false,
177
192
  content: isDesktopSize ? widyTooltipContent : '',
@@ -179,7 +194,9 @@ const SmartBillSummary = _ref => {
179
194
  placement: 'left'
180
195
  }
181
196
  }, /*#__PURE__*/_react.default.createElement("div", {
182
- className: `${widyEnabled ? _stylesModule.default.AIFloatButtonWidy : _stylesModule.default.AIFloatButton} smartbill-ai-float-button`
197
+ className: `${!widyEnabled && _stylesModule.default.AIFloatButtonContainer} smartbill-ai-float-button`
198
+ }, /*#__PURE__*/_react.default.createElement("div", {
199
+ className: widyEnabled ? _stylesModule.default.AIFloatButtonWidy : _stylesModule.default.AIFloatButton
183
200
  }, /*#__PURE__*/_react.default.createElement(_energyUi.UTTouchableWithoutFeedback, {
184
201
  onClick: openAIPanel
185
202
  }, widyEnabled ? /*#__PURE__*/_react.default.createElement("img", {
@@ -188,7 +205,7 @@ const SmartBillSummary = _ref => {
188
205
  }) : /*#__PURE__*/_react.default.createElement(_energyUi.UTIcon, {
189
206
  colorTheme: "negative",
190
207
  name: "EnergyIconChatSparkFilled"
191
- })))), /*#__PURE__*/_react.default.createElement(_AIPanel.default, {
208
+ }))))), /*#__PURE__*/_react.default.createElement(_AIPanel.default, {
192
209
  aiQuestionsList: aiQuestionsList,
193
210
  aiQuestionsListError: aiQuestionsListError,
194
211
  aiQuestionsListLoading: aiQuestionsListLoading,
@@ -207,19 +224,22 @@ const SmartBillSummary = _ref => {
207
224
  enabled: showOnboarding,
208
225
  handleComplete: onCloseOnboarding,
209
226
  handleOnClose: onCloseOnboarding,
210
- steps: filteredOnboardingSteps
227
+ steps: filteredOnboardingSteps,
228
+ variant: "dark"
211
229
  }));
212
230
  };
213
231
  SmartBillSummary.propTypes = {
214
232
  annex: _propTypes.bool,
215
233
  assets: _propTypes.object,
216
234
  billingLayout: (0, _propTypes.arrayOf)(_propTypes.object),
235
+ consumptionLayout: (0, _propTypes.arrayOf)(_propTypes.object),
217
236
  colors: _propTypes.object,
218
237
  components: (0, _propTypes.shape)({
219
238
  [_propTypes.string]: _propTypes.elementType
220
239
  }),
221
240
  constants: _propTypes.object,
222
241
  downloadSmartbillEnabled: _propTypes.bool,
242
+ downloadSmartBillLoading: _propTypes.bool,
223
243
  handlers: (0, _propTypes.shape)({
224
244
  [_propTypes.string]: _propTypes.func
225
245
  }),
@@ -238,6 +258,7 @@ SmartBillSummary.propTypes = {
238
258
  })),
239
259
  translations: _propTypes.object,
240
260
  utils: _propTypes.object,
241
- periodSpan: _propTypes.string
261
+ periodSpan: _propTypes.string,
262
+ progressBarConcept: (0, _propTypes.arrayOf)(_propTypes.object)
242
263
  };
243
264
  var _default = exports.default = SmartBillSummary;
@@ -52,18 +52,20 @@ $tab-height: 48px;
52
52
  width: 100%;
53
53
  }
54
54
 
55
+ .AIFloatButtonContainer {
56
+ bottom: 24px;
57
+ position: fixed;
58
+ padding: 8px;
59
+ right: 24px;
60
+ }
61
+
55
62
  .AIFloatButton {
56
- div {
57
- align-items: center;
58
- background-color: var(--actionAccent04);
59
- border-radius: 100px;
60
- bottom: 32px;
61
- display: flex;
62
- justify-content: center;
63
- padding: 16px;
64
- position: fixed;
65
- right: 32px;
66
- }
63
+ align-items: center;
64
+ background-color: var(--actionAccent04);
65
+ border-radius: 100%;
66
+ display: flex;
67
+ justify-content: center;
68
+ padding: 16px;
67
69
  }
68
70
 
69
71
  .AIFloatButtonWidy {
@@ -7,9 +7,9 @@ exports.default = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _propTypes = require("prop-types");
9
9
  var _billDataTypes = require("../../../../shared/types/billDataTypes");
10
+ var _ColumnRenderer = _interopRequireDefault(require("../components/ColumnRenderer"));
10
11
  var _utils = require("./utils");
11
12
  var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
12
- var _ColumnRenderer = _interopRequireDefault(require("./components/ColumnRenderer"));
13
13
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
14
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
15
15
  const Billing = _ref => {
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _energyUi = require("@widergy/energy-ui");
9
+ var _propTypes = require("prop-types");
10
+ var _core = require("@material-ui/core");
11
+ var _utils = require("./utils");
12
+ var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const ProgressBarItem = _ref => {
15
+ let {
16
+ item
17
+ } = _ref;
18
+ const {
19
+ id,
20
+ title,
21
+ tooltip,
22
+ splitPoint,
23
+ progressValue,
24
+ isExceeded,
25
+ isPositiveExcess,
26
+ registered,
27
+ limit,
28
+ unit,
29
+ excess,
30
+ min
31
+ } = item;
32
+ const safeSplit = Math.max(0, Math.min(100, Math.floor(splitPoint)));
33
+ const barColorClass = isExceeded ? min ? _stylesModule.default[`split-min-${safeSplit}`] : _stylesModule.default[`split-max-${safeSplit}`] : isPositiveExcess ? _stylesModule.default[`split-positive-${safeSplit}`] : _stylesModule.default.barNormal;
34
+ const labelColor = isExceeded ? 'error' : 'gray';
35
+ return /*#__PURE__*/_react.default.createElement("div", {
36
+ key: id,
37
+ className: _stylesModule.default.card
38
+ }, /*#__PURE__*/_react.default.createElement("div", {
39
+ className: _stylesModule.default.mainSection
40
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
41
+ colorTheme: "gray"
42
+ }, title)), /*#__PURE__*/_react.default.createElement("div", {
43
+ className: _stylesModule.default.progressBarWrapper
44
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTProgressBar, {
45
+ classNames: {
46
+ root: _stylesModule.default.progressBar,
47
+ barColorPrimary: barColorClass,
48
+ container: _stylesModule.default.progressBarContainer
49
+ },
50
+ value: progressValue
51
+ }), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
52
+ className: _stylesModule.default.rowSpaceBetween
53
+ }, /*#__PURE__*/_react.default.createElement("div", {
54
+ className: _stylesModule.default.valueGroup
55
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
56
+ colorTheme: labelColor,
57
+ variant: "title1"
58
+ }, (0, _utils.formatNumber)(registered.value)), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
59
+ colorTheme: labelColor,
60
+ variant: "subtitle2"
61
+ }, unit)), /*#__PURE__*/_react.default.createElement("div", {
62
+ className: _stylesModule.default.valueGroup
63
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
64
+ variant: "title1"
65
+ }, (0, _utils.formatNumber)(limit.value)), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
66
+ variant: "subtitle2"
67
+ }, unit))), /*#__PURE__*/_react.default.createElement("div", {
68
+ className: _stylesModule.default.rowSpaceBetween
69
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, registered.label), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, limit.label))))), isExceeded && /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_core.Divider, {
70
+ className: _stylesModule.default.divider
71
+ }), /*#__PURE__*/_react.default.createElement("div", {
72
+ className: _stylesModule.default.footerSection
73
+ }, /*#__PURE__*/_react.default.createElement("div", {
74
+ className: _stylesModule.default.rowSpaceBetween
75
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
76
+ variant: "subtitle2"
77
+ }, excess.label), /*#__PURE__*/_react.default.createElement("div", {
78
+ className: _stylesModule.default.rowGap
79
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_energyUi.UTTooltip, {
80
+ content: tooltip
81
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_energyUi.UTIcon, {
82
+ colorTheme: "error",
83
+ name: "IconInfoCircle",
84
+ size: 24
85
+ })))), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
86
+ variant: "subtitle2",
87
+ colorTheme: "error"
88
+ }, (0, _utils.formatNumber)(excess.value), " ", unit))))));
89
+ };
90
+ ProgressBarItem.propTypes = {
91
+ item: _propTypes.object.isRequired
92
+ };
93
+ var _default = exports.default = ProgressBarItem;
@@ -0,0 +1,109 @@
1
+ @import '../../scss/variables/sizes.module.scss';
2
+
3
+ $blue: var(--actionAccent04);
4
+ $red: var(--semanticError04);
5
+ $light-blue: var(--actionAccent03);
6
+ $gray-track: var(--light04);
7
+ $white: #fff;
8
+
9
+ $striped-red-pattern: repeating-linear-gradient(45deg, $red, $red 2px, $white 2px, $white 4px);
10
+
11
+ .card {
12
+ background-color: var(--light01);
13
+ border-radius: 8px;
14
+ box-shadow: var(--shadowGrayBottom1);
15
+ display: flex;
16
+ flex-direction: column;
17
+ margin-bottom: 16px;
18
+ overflow: hidden;
19
+ }
20
+
21
+ .mainSection {
22
+ display: flex;
23
+ flex-direction: column;
24
+ gap: 16px;
25
+ padding: 16px;
26
+ }
27
+
28
+ .progressBarWrapper {
29
+ display: flex;
30
+ flex-direction: column;
31
+ gap: 8px;
32
+ }
33
+
34
+ .progressBar {
35
+ border-radius: 100px !important;
36
+ height: 12px;
37
+ width: 100%;
38
+ }
39
+
40
+ .progressBarContainer {
41
+ background-color: $gray-track !important;
42
+ border-radius: 100px !important;
43
+ }
44
+
45
+ .barNormal {
46
+ background-color: $blue !important;
47
+ }
48
+
49
+ @for $i from 0 through 100 {
50
+ .split-max-#{$i} {
51
+ background: linear-gradient(90deg, $blue 0%, $blue ($i * 1%), $red ($i * 1%), $red 100%) !important;
52
+ }
53
+ }
54
+
55
+ @for $i from 0 through 100 {
56
+ .split-min-#{$i} {
57
+ background:
58
+ linear-gradient(90deg, $blue 0%, $blue ($i * 1%), transparent ($i * 1%), transparent 100%),
59
+ $striped-red-pattern !important;
60
+ background-size:
61
+ 100% 100%,
62
+ auto !important;
63
+ }
64
+ }
65
+
66
+ @for $i from 0 through 100 {
67
+ .split-positive-#{$i} {
68
+ background: linear-gradient(
69
+ 90deg,
70
+ $blue 0%,
71
+ $blue ($i * 1%),
72
+ $white ($i * 1%),
73
+ $white calc(($i * 1%) + 2px),
74
+ $light-blue calc(($i * 1%) + 2px),
75
+ $light-blue 100%
76
+ ) !important;
77
+ }
78
+ }
79
+
80
+ .rowSpaceBetween {
81
+ align-items: center;
82
+ display: flex;
83
+ flex-direction: row;
84
+ justify-content: space-between;
85
+ }
86
+
87
+ .valueGroup {
88
+ align-items: center;
89
+ display: flex;
90
+ gap: 4px;
91
+ }
92
+
93
+ .divider {
94
+ background-color: var(--light04);
95
+ margin: 0 !important;
96
+ }
97
+
98
+ .footerSection {
99
+ display: flex;
100
+ flex-direction: column;
101
+ padding: 16px;
102
+ }
103
+
104
+ .rowGap {
105
+ align-items: center;
106
+ display: flex;
107
+ flex-direction: row;
108
+ gap: 8px;
109
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.formatNumber = void 0;
7
+ var _numeral = _interopRequireDefault(require("numeral"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ const formatNumber = num => {
10
+ if (num === null || num === undefined) return '0';
11
+ return (0, _numeral.default)(num).format('0,0.[00]');
12
+ };
13
+ exports.formatNumber = formatNumber;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _energyUi = require("@widergy/energy-ui");
9
+ var _propTypes = require("prop-types");
10
+ var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const ReiterationBanner = _ref => {
13
+ let {
14
+ bannerText,
15
+ handleGoToReiteration,
16
+ texts
17
+ } = _ref;
18
+ const {
19
+ title,
20
+ description,
21
+ button
22
+ } = texts;
23
+ return /*#__PURE__*/_react.default.createElement("div", {
24
+ className: _stylesModule.default.reiterationContainer
25
+ }, /*#__PURE__*/_react.default.createElement("div", {
26
+ className: _stylesModule.default.reiterationContent
27
+ }, /*#__PURE__*/_react.default.createElement("div", {
28
+ className: _stylesModule.default.reiterationSubcontent
29
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTIcon, {
30
+ name: "IconReceipt2",
31
+ size: 24,
32
+ colorTheme: "error"
33
+ }), /*#__PURE__*/_react.default.createElement("div", {
34
+ className: _stylesModule.default.reiterationTexts
35
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
36
+ variant: "subtitle1",
37
+ weight: "medium"
38
+ }, title), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, description), bannerText && /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, bannerText)))), button && /*#__PURE__*/_react.default.createElement("div", {
39
+ className: _stylesModule.default.actionButton
40
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTButton, {
41
+ onClick: handleGoToReiteration,
42
+ variant: "text"
43
+ }, button)));
44
+ };
45
+ ReiterationBanner.propTypes = {
46
+ bannerText: _propTypes.string,
47
+ handleGoToReiteration: _propTypes.func,
48
+ texts: _propTypes.object.isRequired
49
+ };
50
+ var _default = exports.default = ReiterationBanner;
@@ -0,0 +1,43 @@
1
+ @import '../../scss/variables/sizes.module.scss';
2
+
3
+ .reiterationContainer {
4
+ background-color: var(--semanticError01);
5
+ border-radius: 8px;
6
+ display: flex;
7
+ flex-direction: column;
8
+ overflow: hidden;
9
+ position: relative;
10
+ user-select: none;
11
+ width: 100%;
12
+ margin-bottom: 16px;
13
+ }
14
+
15
+ .reiterationContent {
16
+ align-items: center;
17
+ display: flex;
18
+ flex-direction: row;
19
+ grid-gap: 16px;
20
+ padding: 16px;
21
+ }
22
+
23
+ .reiterationSubcontent {
24
+ align-items: flex-start;
25
+ display: flex;
26
+ flex-direction: row;
27
+ grid-gap: 16px;
28
+ }
29
+
30
+ .reiterationTexts {
31
+ display: flex;
32
+ flex-direction: column;
33
+ flex-shrink: 1;
34
+ grid-gap: 8px;
35
+ }
36
+
37
+ .actionButton {
38
+ border-top: 1px solid;
39
+ border-color: var(--semanticError02);
40
+ display: flex;
41
+ justify-content: flex-end;
42
+ padding: 8px;
43
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _energyUi = require("@widergy/energy-ui");
9
+ var _propTypes = require("prop-types");
10
+ var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const SimpleBanner = _ref => {
13
+ let {
14
+ bannerText
15
+ } = _ref;
16
+ return /*#__PURE__*/_react.default.createElement("div", {
17
+ className: _stylesModule.default.bannerDetail
18
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTIcon, {
19
+ name: "IconReceipt2",
20
+ colorTheme: "error",
21
+ size: 24
22
+ }), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, bannerText));
23
+ };
24
+ SimpleBanner.propTypes = {
25
+ bannerText: _propTypes.string.isRequired
26
+ };
27
+ var _default = exports.default = SimpleBanner;
@@ -0,0 +1,12 @@
1
+ @import '../../scss/variables/sizes.module.scss';
2
+
3
+ .bannerDetail {
4
+ align-items: flex-start;
5
+ background-color: var(--semanticError01);
6
+ border-radius: 8px;
7
+ display: flex;
8
+ flex-direction: row;
9
+ gap: 8px;
10
+ margin-bottom: 16px;
11
+ padding: 8px 16px;
12
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _propTypes = require("prop-types");
9
+ var _ProgressBarItem = _interopRequireDefault(require("./components/ProgressBarItem"));
10
+ var _ReiterationBanner = _interopRequireDefault(require("./components/ReiterationBanner"));
11
+ var _SimpleBanner = _interopRequireDefault(require("./components/SimpleBanner"));
12
+ var _utils = require("./utils");
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const ProgressBarCard = _ref => {
15
+ let {
16
+ handleGoToReiteration,
17
+ progressBarConcept,
18
+ smartBill,
19
+ texts
20
+ } = _ref;
21
+ const itemsWithStatus = progressBarConcept.filter(concept => concept.accountConditions.some(condition => smartBill.client.rate.purchased.includes(condition.rate))).map(concept => {
22
+ const info = (0, _utils.getInfo)(concept, smartBill);
23
+ return {
24
+ ...concept,
25
+ ...info
26
+ };
27
+ });
28
+ const renderedProgressBars = itemsWithStatus.map(item => /*#__PURE__*/_react.default.createElement(_ProgressBarItem.default, {
29
+ key: item.id,
30
+ item: item
31
+ }));
32
+ const exceededItems = itemsWithStatus.filter(item => item.isExceeded);
33
+ const reiteration = !!smartBill.reiteration;
34
+ const bannerText = exceededItems.length === 1 && !reiteration ? exceededItems[0].banner : exceededItems.length === 2 ? reiteration ? exceededItems[1]?.banner : exceededItems[1].doubleBanner : null;
35
+ return /*#__PURE__*/_react.default.createElement("div", null, reiteration && /*#__PURE__*/_react.default.createElement(_ReiterationBanner.default, {
36
+ bannerText: bannerText,
37
+ handleGoToReiteration: handleGoToReiteration,
38
+ texts: texts.reiterationBanner
39
+ }), bannerText && !reiteration && /*#__PURE__*/_react.default.createElement(_SimpleBanner.default, {
40
+ bannerText: bannerText
41
+ }), renderedProgressBars);
42
+ };
43
+ ProgressBarCard.propTypes = {
44
+ progressBarConcept: _propTypes.array,
45
+ smartBill: _propTypes.object,
46
+ texts: _propTypes.object,
47
+ handleGoToReiteration: _propTypes.func
48
+ };
49
+ var _default = exports.default = ProgressBarCard;
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getInfo = void 0;
7
+ const getValue = (smartBill, magnitudeName) => {
8
+ const item = smartBill.periods[0].consumptions.find(c => c.magnitude === magnitudeName);
9
+ if (!item) return null;
10
+ return {
11
+ value: item.value,
12
+ unit: item.unit
13
+ };
14
+ };
15
+ const getInfo = (concept, smartBill) => {
16
+ const {
17
+ data,
18
+ min
19
+ } = concept;
20
+ const {
21
+ registered,
22
+ limit,
23
+ excess
24
+ } = data;
25
+ const registeredData = getValue(smartBill, registered.magnitude);
26
+ const limitData = getValue(smartBill, limit.magnitude);
27
+ const excessData = getValue(smartBill, excess.magnitude);
28
+ const registeredVal = registeredData?.value || 0;
29
+ const limitVal = limitData?.value || 0;
30
+ const unit = registeredData?.unit || registered.unit || '';
31
+ const isExceeded = excessData?.value > 0;
32
+ const isPositiveExcess = !isExceeded && min && registeredVal > limitVal;
33
+ const excessValueDisplay = isExceeded ? excessData?.value : 0;
34
+ const rawProgress = limitVal > 0 ? registeredVal / limitVal * 100 : 0;
35
+ const progressValue = isExceeded || isPositiveExcess || rawProgress > 100 ? 100 : rawProgress;
36
+ const splitPoint = isExceeded ? min ? limitVal > 0 ? registeredVal / limitVal * 100 : 0 : registeredVal > 0 ? limitVal / registeredVal * 100 : 100 : isPositiveExcess ? registeredVal > 0 ? limitVal / registeredVal * 100 : 100 : 100;
37
+ return {
38
+ ...concept,
39
+ splitPoint,
40
+ progressValue,
41
+ isExceeded,
42
+ isPositiveExcess,
43
+ unit,
44
+ registered: {
45
+ ...registered,
46
+ value: registeredVal
47
+ },
48
+ limit: {
49
+ ...limit,
50
+ value: limitVal
51
+ },
52
+ excess: {
53
+ ...excess,
54
+ value: excessValueDisplay
55
+ }
56
+ };
57
+ };
58
+ exports.getInfo = getInfo;
@@ -8,23 +8,35 @@ var _react = _interopRequireDefault(require("react"));
8
8
  var _energyUi = require("@widergy/energy-ui");
9
9
  var _propTypes = require("prop-types");
10
10
  var _billDataTypes = require("../../../../shared/types/billDataTypes");
11
+ var _ColumnRenderer = _interopRequireDefault(require("../components/ColumnRenderer"));
11
12
  var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
12
13
  var _BimestralConsumption = _interopRequireDefault(require("./components/BimestralConsumption"));
13
- var _CurrentConsumption = _interopRequireDefault(require("./components/CurrentConsumption"));
14
- var _Billing = _interopRequireDefault(require("./components/Billing"));
15
14
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
16
16
  const Consumptions = _ref => {
17
17
  let {
18
18
  assets,
19
- reverseRow = {},
19
+ consumptionLayout,
20
+ exceeded = false,
20
21
  smartBill,
21
22
  translations,
22
- periodSpan
23
+ periodSpan,
24
+ handlers,
25
+ progressBarConcept
23
26
  } = _ref;
24
27
  const {
25
28
  title,
26
29
  description
27
30
  } = translations?.consumptions || {};
31
+ const props = {
32
+ smartBill,
33
+ texts: translations,
34
+ periodSpan,
35
+ assets,
36
+ progressBarConcept,
37
+ exceeded,
38
+ handleGoToReiteration: handlers.handleGoToReiteration
39
+ };
28
40
  return /*#__PURE__*/_react.default.createElement("div", {
29
41
  className: _stylesModule.default.generalContainer
30
42
  }, /*#__PURE__*/_react.default.createElement(_BimestralConsumption.default, {
@@ -39,22 +51,25 @@ const Consumptions = _ref => {
39
51
  variant: "title3",
40
52
  weight: "medium"
41
53
  }, title), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, null, description)), /*#__PURE__*/_react.default.createElement("div", {
42
- className: `${_stylesModule.default.consumptionDetailColumns} ${reverseRow}`
43
- }, /*#__PURE__*/_react.default.createElement(_CurrentConsumption.default, {
44
- assets: assets,
45
- smartBill: smartBill,
46
- texts: translations
47
- }), /*#__PURE__*/_react.default.createElement(_Billing.default, {
48
- smartBill: smartBill,
49
- texts: translations,
50
- periodSpan: periodSpan
54
+ className: _stylesModule.default.cardsContainer
55
+ }, consumptionLayout.map(layoutArray => {
56
+ const filteredLayout = layoutArray.filter(item => item.enabled);
57
+ const layoutKey = `layout-${layoutArray.map(item => item.name).join('-')}`;
58
+ return /*#__PURE__*/_react.default.createElement(_ColumnRenderer.default, _extends({
59
+ column: filteredLayout,
60
+ key: layoutKey
61
+ }, props));
51
62
  }))));
52
63
  };
53
64
  Consumptions.propTypes = {
54
65
  assets: _propTypes.object,
66
+ concepts: _propTypes.object,
67
+ consumptionLayout: (0, _propTypes.arrayOf)(_propTypes.object),
68
+ exceeded: _propTypes.bool,
55
69
  periodSpan: _propTypes.string,
56
- reverseRow: _propTypes.object,
70
+ progressBarConcept: (0, _propTypes.arrayOf)(_propTypes.object),
57
71
  smartBill: _billDataTypes.billDataTypes,
58
- translations: _propTypes.object
72
+ translations: _propTypes.object,
73
+ handlers: _propTypes.object
59
74
  };
60
75
  var _default = exports.default = Consumptions;
@@ -1,14 +1,16 @@
1
1
  @import '../../../../scss/variables/mediaQueries.module.scss';
2
2
 
3
- .generalContainer {
3
+ .cardsContainer {
4
+ align-items: flex-start;
4
5
  display: flex;
5
- flex-direction: column;
6
- grid-gap: 32px;
7
- padding: 24px 32px;
6
+ width: 100%;
8
7
 
9
- @media #{$mobile} {
10
- grid-gap: 24px;
11
- padding: 24px 16px;
8
+ @media #{$tablet-mobile} {
9
+ flex-direction: column;
10
+ }
11
+
12
+ > :last-child {
13
+ margin-right: 0;
12
14
  }
13
15
  }
14
16
 
@@ -18,19 +20,20 @@
18
20
  grid-gap: 8px;
19
21
  }
20
22
 
21
- .consumptionDetailColumns {
23
+ .consumptionDetail {
22
24
  display: flex;
23
- flex: 1;
24
- flex-wrap: wrap;
25
+ flex-direction: column;
26
+ grid-gap: 24px;
27
+ }
28
+
29
+ .generalContainer {
30
+ display: flex;
31
+ flex-direction: column;
25
32
  grid-gap: 32px;
33
+ padding: 24px 32px;
26
34
 
27
35
  @media #{$mobile} {
28
36
  grid-gap: 24px;
37
+ padding: 24px 16px;
29
38
  }
30
39
  }
31
-
32
- .consumptionDetail {
33
- display: flex;
34
- flex-direction: column;
35
- grid-gap: 24px;
36
- }
@@ -1,4 +1,4 @@
1
- @import '../../../../../../scss/variables/colorsExport.module.scss';
1
+ @import '../../../../../scss/variables/colors.module.scss';
2
2
 
3
3
  .cardContainer {
4
4
  align-items: center;
@@ -21,6 +21,7 @@ const BillHeader = _ref => {
21
21
  debtStatusLabel,
22
22
  debtStatusValidation,
23
23
  downloadSmartbillEnabled,
24
+ downloadSmartBillLoading,
24
25
  handleDownloadSmartBill,
25
26
  issuedOnDate,
26
27
  smartBill,
@@ -58,6 +59,7 @@ const BillHeader = _ref => {
58
59
  variant: "text",
59
60
  disabled: true
60
61
  }, "Anexos"), downloadSmartbillEnabled && /*#__PURE__*/_react.default.createElement(_energyUi.UTButton, {
62
+ loading: downloadSmartBillLoading,
61
63
  onClick: handleDownloadSmartBill,
62
64
  Icon: "IconDownload",
63
65
  variant: "text"
@@ -72,6 +74,7 @@ BillHeader.propTypes = {
72
74
  debtStatusLabel: _propTypes.string,
73
75
  debtStatusValidation: _propTypes.bool,
74
76
  downloadSmartbillEnabled: _propTypes.bool,
77
+ downloadSmartBillLoading: _propTypes.bool,
75
78
  handleDownloadSmartBill: _propTypes.func,
76
79
  issuedOnDate: _propTypes.string,
77
80
  smartBill: _propTypes.object,
@@ -1,4 +1,4 @@
1
- @import '../../../../../../scss/variables/mediaQueries.module.scss';
1
+ @import '../../../../../scss/variables/mediaQueries.module.scss';
2
2
 
3
3
  .billHeader {
4
4
  align-items: center;
@@ -9,11 +9,17 @@ var _TitularCard = _interopRequireDefault(require("../TitularCard"));
9
9
  var _TotalCard = _interopRequireDefault(require("../TotalCard"));
10
10
  var _RateCard = _interopRequireDefault(require("../RateCard"));
11
11
  var _AccountCard = _interopRequireDefault(require("../AccountCard"));
12
+ var _CurrentConsumption = _interopRequireDefault(require("../../Consumptions/components/CurrentConsumption"));
13
+ var _Billing = _interopRequireDefault(require("../../Consumptions/components/Billing"));
14
+ var _ProgressBarCard = _interopRequireDefault(require("../../Consumptions/components/ProgressBarCard"));
12
15
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
16
  const COMPONENTS = exports.COMPONENTS = {
14
17
  ActionCards: _ActionCards.default,
15
18
  TitularCard: _TitularCard.default,
16
19
  TotalCard: _TotalCard.default,
17
20
  RateCard: _RateCard.default,
18
- AccountCard: _AccountCard.default
21
+ AccountCard: _AccountCard.default,
22
+ CurrentConsumption: _CurrentConsumption.default,
23
+ Billing: _Billing.default,
24
+ ProgressBarCard: _ProgressBarCard.default
19
25
  };
@@ -1,4 +1,4 @@
1
- @import '_mediaQueries.scss';
1
+ @import '../../../../../scss/variables/mediaQueries.module.scss';
2
2
 
3
3
  $columns-gap: 32px;
4
4
  $columns-gap-mobile: 24px;
@@ -1,4 +1,5 @@
1
- @import '../../../../../../../../scss/variables/fontSizes.module.scss';
1
+ @import '../../../../../../../scss/variables/colors.module.scss';
2
+ @import '../../../../../../../scss/variables/fontSizes.module.scss';
2
3
 
3
4
  $default-border-radius: 100px;
4
5
  $default-progress-bar-background: linear-gradient(88.75deg, #30e3a2 1.07%, #efc73c 50.13%, #ec574d 98.93%);
@@ -12,8 +12,8 @@ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
12
12
  var _debounce = _interopRequireDefault(require("lodash/debounce"));
13
13
  var _upperFirst = _interopRequireDefault(require("lodash/upperFirst"));
14
14
  var _isNaN = _interopRequireDefault(require("lodash/isNaN"));
15
- var _utils = require("../../../Consumptions/components/CurrentConsumption/utils");
16
- var _testIds = require("../../../../../../constants/testIds");
15
+ var _utils = require("../../Consumptions/components/CurrentConsumption/utils");
16
+ var _testIds = require("../../../../../constants/testIds");
17
17
  var _utils2 = require("./utils");
18
18
  var _ProgressBar = _interopRequireDefault(require("./components/ProgressBar"));
19
19
  var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireDefault(require("react"));
8
+ var _energyUi = require("@widergy/energy-ui");
9
+ var _propTypes = require("prop-types");
10
+ var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
+ const SecondHeader = _ref => {
13
+ let {
14
+ accountNumber,
15
+ accountNumberHelpText,
16
+ supplyAddress,
17
+ city,
18
+ district,
19
+ supplyAddressHelpText,
20
+ clientNumberFormatter
21
+ } = _ref;
22
+ return /*#__PURE__*/_react.default.createElement("div", {
23
+ className: _stylesModule.default.secondHeader
24
+ }, /*#__PURE__*/_react.default.createElement("div", {
25
+ className: _stylesModule.default.accountNumber
26
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
27
+ variant: "small",
28
+ weight: "bold"
29
+ }, accountNumber && clientNumberFormatter?.(accountNumber) || accountNumber), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
30
+ colorTheme: "gray",
31
+ variant: "small"
32
+ }, accountNumberHelpText)), /*#__PURE__*/_react.default.createElement("div", {
33
+ className: _stylesModule.default.locationTooltip
34
+ }, /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
35
+ variant: "small",
36
+ weight: "bold"
37
+ }, supplyAddress), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
38
+ variant: "small"
39
+ }, `${city} - ${district}`), /*#__PURE__*/_react.default.createElement(_energyUi.UTLabel, {
40
+ colorTheme: "gray",
41
+ variant: "small"
42
+ }, supplyAddressHelpText)));
43
+ };
44
+ SecondHeader.propTypes = {
45
+ accountNumber: _propTypes.string,
46
+ accountNumberHelpText: _propTypes.string,
47
+ supplyAddress: _propTypes.string,
48
+ city: _propTypes.string,
49
+ district: _propTypes.string,
50
+ supplyAddressHelpText: _propTypes.string,
51
+ clientNumberFormatter: _propTypes.func
52
+ };
53
+ var _default = exports.default = SecondHeader;
@@ -0,0 +1,40 @@
1
+ @import '../../../../../scss/variables/mediaQueries.module.scss';
2
+
3
+ .secondHeader {
4
+ align-items: center;
5
+ background-color: var(--light01);
6
+ border-radius: 8px;
7
+ box-shadow: var(--shadowGrayBottom1);
8
+ display: flex;
9
+ flex-wrap: wrap;
10
+ grid-gap: 50%;
11
+ justify-content: flex-start;
12
+ padding: 24px 48px;
13
+ margin: 16px 32px 0 32px;
14
+
15
+ @media #{$mobile} {
16
+ margin: 16px 16px 0 16px;
17
+ padding: 16px;
18
+ flex-wrap: nowrap;
19
+ justify-content: space-between;
20
+ }
21
+ }
22
+
23
+ .accountNumber {
24
+ display: flex;
25
+ flex-direction: column;
26
+ align-items: flex-start;
27
+ grid-gap: 4px;
28
+ }
29
+
30
+ .locationTooltip {
31
+ display: flex;
32
+ flex-direction: column;
33
+ grid-gap: 4px;
34
+ text-align: left;
35
+ align-items: flex-start;
36
+
37
+ @media #{$mobile} {
38
+ text-align: left;
39
+ }
40
+ }
@@ -7,23 +7,20 @@ exports.getTabOptions = exports.getDefaultCurrentTab = void 0;
7
7
  var _react = _interopRequireDefault(require("react"));
8
8
  var _energyUi = require("@widergy/energy-ui");
9
9
  var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
10
- var _tabs = require("../../shared/constants/tabs");
11
10
  var _constants = require("./constants");
12
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- const getTabOptions = (isDesktopSize, onboardingSteps, tabOptions, smartBill) => {
14
- const hasBimestralPeriodicity = smartBill?.periods?.some(period => period.settlements?.periodicity === _constants.BIMESTRAL_PERIODICITY);
15
- const filteredTabs = tabOptions.map(tab => ({
12
+ const getTabOptions = (isDesktopSize, onboardingSteps, tabOptions) => {
13
+ const filteredTabs = tabOptions.filter(_ref => {
14
+ let {
15
+ enabled
16
+ } = _ref;
17
+ return enabled;
18
+ }).map(tab => ({
16
19
  ...tab,
17
20
  icon: isDesktopSize ? /*#__PURE__*/_react.default.createElement(_energyUi.UTIcon, {
18
21
  name: tab.icon
19
22
  }) : null
20
- })).filter(_ref => {
21
- let {
22
- enabled,
23
- value
24
- } = _ref;
25
- return enabled && (value !== _tabs.SMARTBILL_TABS.CONSUMPTIONS || hasBimestralPeriodicity);
26
- });
23
+ }));
27
24
  if (!(0, _isEmpty.default)(onboardingSteps)) {
28
25
  const tabPositions = {};
29
26
  filteredTabs.forEach((tab, index) => {
package/dist/index.js CHANGED
@@ -119,7 +119,7 @@ var _billDataTypes = require("./shared/types/billDataTypes");
119
119
  var _rateStagesTypes = require("./shared/types/rateStagesTypes");
120
120
  var _tabs = require("./shared/constants/tabs");
121
121
  var _Billing = _interopRequireDefault(require("./components/SmartBillSummary/tabs/Consumptions/components/Billing"));
122
- var _RateCard = _interopRequireDefault(require("./components/SmartBillSummary/tabs/Billing/components/RateCard"));
122
+ var _RateCard = _interopRequireDefault(require("./components/SmartBillSummary/tabs/components/RateCard"));
123
123
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
124
124
  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 && {}.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; }
125
125
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@widergy/utilitygo-smart-bill-web",
3
- "version": "3.18.0",
3
+ "version": "3.19.0",
4
4
  "description": "UtilityGO SmartBill Web",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -59,7 +59,7 @@
59
59
  "dayjs": "^1.10.7",
60
60
  "eslint-plugin-react": "^7.33.2",
61
61
  "lodash": ">=4.17.4",
62
- "node-sass": "^8.0.0",
62
+ "sass": "^1.80.4",
63
63
  "numeral": ">=2.0.6",
64
64
  "react-jss": "^8.6.1",
65
65
  "react-loading-skeleton": "^3.3.1",