sag_components 1.0.396 → 1.0.398

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 (94) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/stories/components/Benchmark.js +23 -20
  3. package/dist/stories/components/Benchmark.style.js +5 -35
  4. package/dist/stories/components/Button.js +35 -30
  5. package/dist/stories/components/Button.style.js +1 -3
  6. package/dist/stories/components/CheckBox.js +22 -35
  7. package/dist/stories/components/CheckBox.style.js +4 -12
  8. package/dist/stories/components/CheckBoxButton.js +27 -45
  9. package/dist/stories/components/CheckBoxButton.style.js +4 -20
  10. package/dist/stories/components/CodeEditor.js +5 -3
  11. package/dist/stories/components/CodeEditor.style.js +1 -1
  12. package/dist/stories/components/CollapseData.js +34 -42
  13. package/dist/stories/components/CollapseData.style.js +11 -17
  14. package/dist/stories/components/CommonFunctions.js +13 -10
  15. package/dist/stories/components/Datepicker.js +22 -27
  16. package/dist/stories/components/Datepicker.style.js +1 -3
  17. package/dist/stories/components/Dropdown.js +94 -112
  18. package/dist/stories/components/Dropdown.style.js +1 -3
  19. package/dist/stories/components/DropdownMulti.js +123 -145
  20. package/dist/stories/components/DropdownMulti.style.js +1 -3
  21. package/dist/stories/components/FilterContainer.js +7 -7
  22. package/dist/stories/components/FilterContainer.style.js +3 -3
  23. package/dist/stories/components/IconButton.js +58 -27
  24. package/dist/stories/components/IconButton.style.js +8 -13
  25. package/dist/stories/components/KpiFilter.js +223 -186
  26. package/dist/stories/components/KpiFilter.style.js +16 -16
  27. package/dist/stories/components/ListBox.js +50 -67
  28. package/dist/stories/components/ListBox.style.js +4 -12
  29. package/dist/stories/components/Modal.js +6 -4
  30. package/dist/stories/components/Modal.style.js +5 -5
  31. package/dist/stories/components/ModalTotalBenchmark.js +48 -46
  32. package/dist/stories/components/ModalTotalCost.js +66 -68
  33. package/dist/stories/components/NoDataFoundMessage.js +5 -2
  34. package/dist/stories/components/NoDataFoundMessage.style.js +3 -3
  35. package/dist/stories/components/OneColumnContainer.js +30 -38
  36. package/dist/stories/components/OneColumnContainer.style.js +7 -23
  37. package/dist/stories/components/PerformanceAnalytics.js +142 -156
  38. package/dist/stories/components/PerformanceAnalytics.style.js +15 -25
  39. package/dist/stories/components/PerformanceAnalyticsLegend.js +25 -26
  40. package/dist/stories/components/PerformanceAnalyticsLegend.style.js +6 -16
  41. package/dist/stories/components/PerformanceAnalyticsOneColumn.js +119 -123
  42. package/dist/stories/components/PerformanceAnalyticsOneColumn.style.js +13 -23
  43. package/dist/stories/components/PerformanceAnalyticsTotals.js +26 -27
  44. package/dist/stories/components/PerformanceAnalyticsTotals.style.js +10 -18
  45. package/dist/stories/components/ReportTable.js +15 -18
  46. package/dist/stories/components/ReportTable.style.js +8 -14
  47. package/dist/stories/components/SegmentedButton.js +63 -68
  48. package/dist/stories/components/SegmentedButton.style.js +6 -16
  49. package/dist/stories/components/TextField.js +37 -52
  50. package/dist/stories/components/TextField.style.js +1 -3
  51. package/dist/stories/components/TitleDescription.js +39 -42
  52. package/dist/stories/components/TitleDescription.style.js +26 -50
  53. package/dist/stories/components/Tooltip.js +6 -11
  54. package/dist/stories/components/Tooltip.style.js +3 -3
  55. package/dist/stories/components/TotalBenchmark.js +54 -58
  56. package/dist/stories/components/TotalBenchmark.style.js +11 -17
  57. package/dist/stories/components/TotalBenchmarkAreachart.js +55 -58
  58. package/dist/stories/components/TotalBenchmarkAreachart.style.js +14 -20
  59. package/dist/stories/components/TotalBenchmarkArrows.js +48 -53
  60. package/dist/stories/components/TotalBenchmarkArrows.style.js +14 -20
  61. package/dist/stories/components/TotalBenchmarkBarchart.js +45 -51
  62. package/dist/stories/components/TotalBenchmarkBarchart.style.js +10 -16
  63. package/dist/stories/components/TotalDoughnutChart.js +60 -64
  64. package/dist/stories/components/TotalDoughnutChart.style.js +19 -29
  65. package/dist/stories/components/TspanTooltip.js +6 -8
  66. package/dist/stories/components/TspanTooltip.style.js +3 -7
  67. package/dist/stories/components/icons/ArrowDownIcon.js +7 -6
  68. package/dist/stories/components/icons/ArrowDropDownIcon.js +7 -6
  69. package/dist/stories/components/icons/ArrowUpIcon.js +7 -6
  70. package/dist/stories/components/icons/BellIcon.js +6 -5
  71. package/dist/stories/components/icons/CalendarIcon.js +7 -6
  72. package/dist/stories/components/icons/CheckBoxButtonCheckedIcon.js +8 -8
  73. package/dist/stories/components/icons/CheckBoxCheckedIcon.js +8 -8
  74. package/dist/stories/components/icons/CheckBoxNotCheckedIcon.js +8 -8
  75. package/dist/stories/components/icons/ClockIcon.js +7 -6
  76. package/dist/stories/components/icons/ComboBoxArrowDownIcon.js +8 -8
  77. package/dist/stories/components/icons/ComboBoxArrowUpIcon.js +8 -8
  78. package/dist/stories/components/icons/DocumentIcon.js +7 -7
  79. package/dist/stories/components/icons/DownloadIcon.js +7 -7
  80. package/dist/stories/components/icons/ExitIcon.js +7 -6
  81. package/dist/stories/components/icons/EyeIcon.js +7 -6
  82. package/dist/stories/components/icons/FlyIcon.js +7 -6
  83. package/dist/stories/components/icons/FoodLionIcon.js +7 -6
  84. package/dist/stories/components/icons/GiantFoodIcon.js +7 -6
  85. package/dist/stories/components/icons/HannafordIcon.js +7 -6
  86. package/dist/stories/components/icons/InfoIcon.js +8 -8
  87. package/dist/stories/components/icons/LegendUnionIcon.js +7 -7
  88. package/dist/stories/components/icons/MaintenanceIcon.js +7 -6
  89. package/dist/stories/components/icons/NoDataFoundIcon.js +6 -5
  90. package/dist/stories/components/icons/ShoppingCartIcon.js +7 -6
  91. package/dist/stories/components/icons/StopAndShopIcon.js +7 -6
  92. package/dist/stories/components/icons/TheGiantCompanyIcon.js +7 -6
  93. package/dist/stories/utils/ComponentFactory.js +4 -2
  94. package/package.json +5 -5
@@ -1,13 +1,11 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = exports.DropdownMulti = void 0;
9
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectSpread2"));
10
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
11
9
  var _react = _interopRequireWildcard(require("react"));
12
10
  var _Autocomplete = _interopRequireDefault(require("@mui/material/Autocomplete"));
13
11
  var _TextField = _interopRequireDefault(require("@mui/material/TextField"));
@@ -17,72 +15,58 @@ var _CheckBoxOutlineBlank = _interopRequireDefault(require("@mui/icons-material/
17
15
  var _CheckBox = _interopRequireDefault(require("@mui/icons-material/CheckBox"));
18
16
  var _ArrowDropDownIcon = require("./icons/ArrowDropDownIcon");
19
17
  var _DropdownMulti = require("./DropdownMulti.style");
20
- var icon = /*#__PURE__*/_react.default.createElement(_CheckBoxOutlineBlank.default, {
18
+ const icon = /*#__PURE__*/_react.default.createElement(_CheckBoxOutlineBlank.default, {
21
19
  fontSize: "small"
22
20
  });
23
- var checkedIcon = /*#__PURE__*/_react.default.createElement(_CheckBox.default, {
21
+ const checkedIcon = /*#__PURE__*/_react.default.createElement(_CheckBox.default, {
24
22
  fontSize: "small"
25
23
  });
26
24
 
27
25
  /**
28
26
  * SAG DropdownMulti
29
27
  */
30
- var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
31
- var name = _ref.name,
32
- _ref$width = _ref.width,
33
- width = _ref$width === void 0 ? "100%" : _ref$width,
34
- size = _ref.size,
35
- text = _ref.text,
36
- shape = _ref.shape,
37
- placeHolder = _ref.placeHolder,
38
- limitTagsOnMultiSelect = _ref.limitTagsOnMultiSelect,
39
- showPopupIcon = _ref.showPopupIcon,
40
- options = _ref.options,
41
- onChange = _ref.onChange,
42
- onInputChange = _ref.onInputChange,
43
- _ref$labelColor = _ref.labelColor,
44
- labelColor = _ref$labelColor === void 0 ? "#1B30AA" : _ref$labelColor,
45
- required = _ref.required,
46
- inputRef = _ref.inputRef,
47
- _ref$allowedInput = _ref.allowedInput,
48
- allowedInput = _ref$allowedInput === void 0 ? "all" : _ref$allowedInput,
49
- _ref$reset = _ref.reset,
50
- reset = _ref$reset === void 0 ? false : _ref$reset,
51
- _ref$disableClearable = _ref.disableClearable,
52
- disableClearable = _ref$disableClearable === void 0 ? false : _ref$disableClearable,
53
- _ref$disabled = _ref.disabled,
54
- disabled = _ref$disabled === void 0 ? false : _ref$disabled,
55
- _ref$dropdownListfont = _ref.dropdownListfontSize,
56
- dropdownListfontSize = _ref$dropdownListfont === void 0 ? "14px" : _ref$dropdownListfont,
57
- _ref$placeHolderFontS = _ref.placeHolderFontSize,
58
- placeHolderFontSize = _ref$placeHolderFontS === void 0 ? "14px" : _ref$placeHolderFontS;
28
+ const DropdownMulti = _ref => {
29
+ let {
30
+ name,
31
+ width = "100%",
32
+ size,
33
+ text,
34
+ shape,
35
+ placeHolder,
36
+ limitTagsOnMultiSelect,
37
+ showPopupIcon,
38
+ options,
39
+ onChange,
40
+ onInputChange,
41
+ labelColor = "#1B30AA",
42
+ required,
43
+ inputRef,
44
+ allowedInput = "all",
45
+ reset = false,
46
+ disableClearable = false,
47
+ disabled = false,
48
+ dropdownListfontSize = "14px",
49
+ placeHolderFontSize = "14px"
50
+ } = _ref;
59
51
  /**
60
52
  * SAG DropdownMulti
61
53
  */
62
54
 
63
- var _useState = (0, _react.useState)(null),
64
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
65
- currentInputValue = _useState2[0],
66
- setCurrentInputValue = _useState2[1];
67
- var _useState3 = (0, _react.useState)([]),
68
- _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
69
- selectedOptionsState = _useState4[0],
70
- setSelectedOptionsState = _useState4[1];
71
- (0, _react.useEffect)(function () {
55
+ const [currentInputValue, setCurrentInputValue] = (0, _react.useState)(null);
56
+ const [selectedOptionsState, setSelectedOptionsState] = (0, _react.useState)([]);
57
+ (0, _react.useEffect)(() => {
72
58
  console.log("selectedOptionsState", selectedOptionsState);
73
59
  }, [selectedOptionsState]);
74
- (0, _react.useEffect)(function () {
60
+ (0, _react.useEffect)(() => {
75
61
  setSelectedOptionsState([]);
76
62
  }, [reset]);
77
- (0, _react.useEffect)(function () {
78
- var delayDebounceFn = setTimeout(function () {
63
+ (0, _react.useEffect)(() => {
64
+ const delayDebounceFn = setTimeout(() => {
79
65
  onInputChange(currentInputValue);
80
66
  }, 1000);
81
- return function () {
82
- return clearTimeout(delayDebounceFn);
83
- };
67
+ return () => clearTimeout(delayDebounceFn);
84
68
  }, [currentInputValue]);
85
- var theme = (0, _styles.createTheme)({
69
+ const theme = (0, _styles.createTheme)({
86
70
  components: {
87
71
  MuiFormLabel: {
88
72
  styleOverrides: {
@@ -95,7 +79,7 @@ var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
95
79
  });
96
80
 
97
81
  // ---------------------------- Multi Text Style -----------------------------------------
98
- var getTextFieldStyleMulti = function getTextFieldStyleMulti() {
82
+ const getTextFieldStyleMulti = () => {
99
83
  if (shape === "round") {
100
84
  // round
101
85
  return {
@@ -147,23 +131,19 @@ var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
147
131
  // square
148
132
  return null;
149
133
  };
150
- var onInputChangeHandler = function onInputChangeHandler(event, newInputValue) {
134
+ const onInputChangeHandler = (event, newInputValue) => {
151
135
  setCurrentInputValue({
152
136
  syntheticBaseEvent: event,
153
137
  inputValue: newInputValue
154
138
  });
155
139
  };
156
- var onChangeHandler = function onChangeHandler(event, newValue) {
140
+ const onChangeHandler = (event, newValue) => {
157
141
  // const newSelectedOptionsSet = new Set(newValue?.map((item) => item) ?? []);
158
142
  // const newSelectedOptions = Array.from(newSelectedOptionsSet).map((item) => {
159
143
  // return item;
160
144
  // });
161
145
 
162
- var newSelectedOptions = newValue === null || newValue === void 0 ? void 0 : newValue.filter(function (value, index, self) {
163
- return index === self.findIndex(function (item) {
164
- return item.id === value.id && item.label === value.label;
165
- });
166
- });
146
+ const newSelectedOptions = newValue === null || newValue === void 0 ? void 0 : newValue.filter((value, index, self) => index === self.findIndex(item => item.id === value.id && item.label === value.label));
167
147
  console.log("onChangeHandler", newSelectedOptions);
168
148
  setSelectedOptionsState(newSelectedOptions);
169
149
  onChange({
@@ -171,10 +151,10 @@ var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
171
151
  newValue: newSelectedOptions
172
152
  });
173
153
  };
174
- var isInputAllowed = function isInputAllowed(inputChar) {
175
- var NUMERIC_REGEX = /^[0-9-]+$/;
176
- var ALPHA_REGEX = /^[a-zA-Z]+$/;
177
- var ALPHA_NUMERIC_REGEX = /^[a-zA-Z0-9-]+$/;
154
+ const isInputAllowed = inputChar => {
155
+ const NUMERIC_REGEX = /^[0-9-]+$/;
156
+ const ALPHA_REGEX = /^[a-zA-Z]+$/;
157
+ const ALPHA_NUMERIC_REGEX = /^[a-zA-Z0-9-]+$/;
178
158
  switch (allowedInput) {
179
159
  case "all":
180
160
  return true;
@@ -193,94 +173,91 @@ var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
193
173
  };
194
174
 
195
175
  // --------------------------------------- DropdownMulti--------------------------------
196
- var getAutocompleteMulti = function getAutocompleteMulti() {
197
- return selectedOptionsState && /*#__PURE__*/_react.default.createElement(_styles.ThemeProvider, {
198
- theme: theme
199
- }, /*#__PURE__*/_react.default.createElement(_Autocomplete.default, {
200
- class: name,
201
- onChange: function onChange(event, newValue) {
202
- onChangeHandler(event, newValue);
203
- },
204
- onInputChange: function onInputChange(event, newInputValue) {
205
- onInputChangeHandler(event, newInputValue);
206
- },
207
- multiple: true,
208
- limitTags: limitTagsOnMultiSelect,
209
- id: "checkboxes-tags",
210
- options: options,
211
- value: selectedOptionsState,
212
- disabled: disabled,
213
- disableCloseOnSelect: true,
214
- disableClearable: disableClearable,
215
- getOptionLabel: function getOptionLabel(option) {
216
- return option.label;
217
- },
218
- popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
219
- width: "0.5em",
220
- height: "0.5em"
221
- }) : null,
222
- renderOption: function renderOption(props, option, _ref2) {
223
- var selected = _ref2.selected;
224
- return /*#__PURE__*/_react.default.createElement("li", props, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {
225
- icon: icon,
226
- checkedIcon: checkedIcon,
227
- checked: isOptionChecked(option) //{selected} //
228
- }), option.label);
229
- },
230
- renderInput: function renderInput(params) {
231
- // console.log("params", params);
232
- return (
233
- /*#__PURE__*/
234
- //showSearchIcon &&
235
- _react.default.createElement(_TextField.default, Object.assign({}, params, {
236
- variant: "outlined",
237
- label: text,
238
- size: size,
239
- sx: getTextFieldStyleMulti(),
240
- placeholder: placeHolder,
241
- InputProps: (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params.InputProps), {}, {
242
- style: {
243
- fontSize: placeHolderFontSize,
244
- fontFamily: "Poppins"
245
- }
176
+ const getAutocompleteMulti = () => selectedOptionsState && /*#__PURE__*/_react.default.createElement(_styles.ThemeProvider, {
177
+ theme: theme
178
+ }, /*#__PURE__*/_react.default.createElement(_Autocomplete.default, {
179
+ class: name,
180
+ onChange: (event, newValue) => {
181
+ onChangeHandler(event, newValue);
182
+ },
183
+ onInputChange: (event, newInputValue) => {
184
+ onInputChangeHandler(event, newInputValue);
185
+ },
186
+ multiple: true,
187
+ limitTags: limitTagsOnMultiSelect,
188
+ id: "checkboxes-tags",
189
+ options: options,
190
+ value: selectedOptionsState,
191
+ disabled: disabled,
192
+ disableCloseOnSelect: true,
193
+ disableClearable: disableClearable,
194
+ getOptionLabel: option => option.label,
195
+ popupIcon: showPopupIcon ? /*#__PURE__*/_react.default.createElement(_ArrowDropDownIcon.ArrowDropDownIcon, {
196
+ width: "0.5em",
197
+ height: "0.5em"
198
+ }) : null,
199
+ renderOption: (props, option, _ref2) => {
200
+ let {
201
+ selected
202
+ } = _ref2;
203
+ return /*#__PURE__*/_react.default.createElement("li", props, /*#__PURE__*/_react.default.createElement(_Checkbox.default, {
204
+ icon: icon,
205
+ checkedIcon: checkedIcon,
206
+ checked: isOptionChecked(option) //{selected} //
207
+ }), option.label);
208
+ },
209
+ renderInput: params => {
210
+ // console.log("params", params);
211
+ return (
212
+ /*#__PURE__*/
213
+ //showSearchIcon &&
214
+ _react.default.createElement(_TextField.default, Object.assign({}, params, {
215
+ variant: "outlined",
216
+ label: text,
217
+ size: size,
218
+ sx: getTextFieldStyleMulti(),
219
+ placeholder: placeHolder,
220
+ InputProps: {
221
+ ...params.InputProps,
222
+ style: {
223
+ fontSize: placeHolderFontSize,
224
+ fontFamily: "Poppins"
225
+ }
246
226
 
247
- // endAdornment: (
248
- // <>
249
- // { selectedOptionsState && Object.values( selectedOptionsState)?.map((option, index) => (
250
- // <span key={index} style={{ margin: '0 5px' }}>
251
- // {option.label}
252
- // </span>
253
- // ))}
254
- // {params.InputProps.endAdornment}
227
+ // endAdornment: (
228
+ // <>
229
+ // { selectedOptionsState && Object.values( selectedOptionsState)?.map((option, index) => (
230
+ // <span key={index} style={{ margin: '0 5px' }}>
231
+ // {option.label}
232
+ // </span>
233
+ // ))}
234
+ // {params.InputProps.endAdornment}
255
235
 
256
- // </>
257
- // ),
258
- }),
236
+ // </>
237
+ // ),
238
+ },
259
239
 
260
- onKeyDown: function onKeyDown(event) {
261
- if (!isInputAllowed(event.key)) {
262
- event.preventDefault();
263
- }
264
- },
265
- inputRef: inputRef || null,
266
- required: required
267
- }))
268
- );
269
- },
270
- ListboxProps: {
271
- style: {
272
- fontSize: dropdownListfontSize,
273
- //default: 14px
274
- fontFamily: "Poppins"
275
- }
240
+ onKeyDown: event => {
241
+ if (!isInputAllowed(event.key)) {
242
+ event.preventDefault();
243
+ }
244
+ },
245
+ inputRef: inputRef || null,
246
+ required: required
247
+ }))
248
+ );
249
+ },
250
+ ListboxProps: {
251
+ style: {
252
+ fontSize: dropdownListfontSize,
253
+ //default: 14px
254
+ fontFamily: "Poppins"
276
255
  }
277
- }));
278
- };
279
- var isOptionChecked = function isOptionChecked(option) {
256
+ }
257
+ }));
258
+ const isOptionChecked = option => {
280
259
  var _Object$values;
281
- if (selectedOptionsState && (_Object$values = Object.values(selectedOptionsState)) !== null && _Object$values !== void 0 && _Object$values.map(function (itemFilter) {
282
- return itemFilter.label;
283
- }).includes(option.label)) {
260
+ if (selectedOptionsState && (_Object$values = Object.values(selectedOptionsState)) !== null && _Object$values !== void 0 && _Object$values.map(itemFilter => itemFilter.label).includes(option.label)) {
284
261
  return true;
285
262
  } else {
286
263
  return false;
@@ -292,4 +269,5 @@ var DropdownMulti = exports.DropdownMulti = function DropdownMulti(_ref) {
292
269
  width: width
293
270
  }, getAutocompleteMulti());
294
271
  };
272
+ exports.DropdownMulti = DropdownMulti;
295
273
  var _default = exports.default = DropdownMulti;
@@ -10,6 +10,4 @@ var _styledComponents = _interopRequireDefault(require("styled-components"));
10
10
  var _templateObject;
11
11
  //import './font.css';
12
12
 
13
- var DropdownContainer = exports.DropdownContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: ", "; \n text-align: left; \n position: relative; \n align-items: center;\n justify-content: center;\n font-family: Poppins; \n font-size: \"14px\";\n"])), function (props) {
14
- return props.width;
15
- });
13
+ const DropdownContainer = exports.DropdownContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: ", "; \n text-align: left; \n position: relative; \n align-items: center;\n justify-content: center;\n font-family: Poppins; \n font-size: \"14px\";\n"])), props => props.width);
@@ -5,18 +5,18 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = exports.FilterContainer = void 0;
8
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/objectWithoutProperties"));
9
8
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
10
9
  var _react = _interopRequireDefault(require("react"));
11
10
  var _styledComponents = _interopRequireDefault(require("styled-components"));
12
11
  var _FilterContainer = require("./FilterContainer.style");
13
- var _excluded = ["itemClass", "nodeRef"];
14
12
  var _templateObject;
15
- var Card = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)([""])));
16
- var FilterContainer = exports.FilterContainer = /*#__PURE__*/_react.default.forwardRef(function (_ref, ref) {
17
- var itemClass = _ref.itemClass,
18
- nodeRef = _ref.nodeRef,
19
- props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
13
+ const Card = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)([""])));
14
+ const FilterContainer = exports.FilterContainer = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
15
+ let {
16
+ itemClass,
17
+ nodeRef,
18
+ ...props
19
+ } = _ref;
20
20
  return /*#__PURE__*/_react.default.createElement(_FilterContainer.FilterDivContainer, {
21
21
  className: itemClass,
22
22
  style: {
@@ -8,6 +8,6 @@ exports.FilterFooterContent = exports.FilterDivContent = exports.FilterDivContai
8
8
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
9
9
  var _styledComponents = _interopRequireDefault(require("styled-components"));
10
10
  var _templateObject, _templateObject2, _templateObject3;
11
- var FilterDivContainer = exports.FilterDivContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n height:100%;\n box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);\n border-radius: 12px;\n display: grid;\n background-color: white;\n"])));
12
- var FilterDivContent = exports.FilterDivContent = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n padding-top: 40px;\n height: 90%;\n display: flex;\n flex-direction: column;\n align-items: center;\n > div {\n margin: 25px;\n }\n"])));
13
- var FilterFooterContent = exports.FilterFooterContent = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n height: 10%;\n"])));
11
+ const FilterDivContainer = exports.FilterDivContainer = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n height:100%;\n box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);\n border-radius: 12px;\n display: grid;\n background-color: white;\n"])));
12
+ const FilterDivContent = exports.FilterDivContent = _styledComponents.default.div(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n width: 100%;\n padding-top: 40px;\n height: 90%;\n display: flex;\n flex-direction: column;\n align-items: center;\n > div {\n margin: 25px;\n }\n"])));
13
+ const FilterFooterContent = exports.FilterFooterContent = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n height: 10%;\n"])));
@@ -1,12 +1,10 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = exports.IconButton = void 0;
9
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
10
8
  var _react = _interopRequireWildcard(require("react"));
11
9
  var _DownloadIcon = require("./icons/DownloadIcon");
12
10
  var _DocumentIcon = require("./icons/DocumentIcon");
@@ -17,22 +15,43 @@ var _MaintenanceIcon = require("./icons/MaintenanceIcon");
17
15
  var _EyeIcon = require("./icons/EyeIcon");
18
16
  var _IconButton = require("./IconButton.style");
19
17
  /* IconButton */
20
- var IconButton = exports.IconButton = function IconButton(props) {
21
- var contentColor = props.contentColor,
22
- buttonText = props.buttonText,
23
- backgroundColor = props.backgroundColor,
24
- borderColor = props.borderColor,
25
- borderRadius = props.borderRadius,
26
- iconName = props.iconName,
27
- iconWidth = props.iconWidth,
28
- iconHeight = props.iconHeight,
29
- disabled = props.disabled,
30
- onClick = props.onClick;
31
- var _useState = (0, _react.useState)(false),
32
- _useState2 = (0, _slicedToArray2.default)(_useState, 2),
33
- mouseDownPressed = _useState2[0],
34
- setMouseDownPressed = _useState2[1];
35
- var getIcon = function getIcon(icon) {
18
+ const IconButton = props => {
19
+ const {
20
+ downloadStatus,
21
+ contentColor,
22
+ buttonText,
23
+ backgroundColor,
24
+ borderColor,
25
+ borderRadius,
26
+ iconName,
27
+ iconWidth,
28
+ iconHeight,
29
+ disabled,
30
+ inProgress,
31
+ onClick,
32
+ onCancelClick
33
+ } = props;
34
+ const [mouseDownPressed, setMouseDownPressed] = (0, _react.useState)(false);
35
+ const [progress, setProgress] = (0, _react.useState)(0);
36
+ const incrementProgress = () => {
37
+ if (downloadStatus === 'in progress' && progress <= 90) {
38
+ const interval = setInterval(() => {
39
+ setProgress(prevProgress => {
40
+ const newProgress = prevProgress + 1;
41
+ if (newProgress >= 90) {
42
+ clearInterval(interval);
43
+ }
44
+ return newProgress;
45
+ });
46
+ }, 500);
47
+ } else if (downloadStatus === 'success') {
48
+ setProgress(0);
49
+ }
50
+ };
51
+ (0, _react.useEffect)(() => {
52
+ incrementProgress();
53
+ }, [downloadStatus]);
54
+ const getIcon = icon => {
36
55
  switch (icon) {
37
56
  case 'download':
38
57
  return /*#__PURE__*/_react.default.createElement(_DownloadIcon.DownloadIcon, {
@@ -80,29 +99,32 @@ var IconButton = exports.IconButton = function IconButton(props) {
80
99
  return '';
81
100
  }
82
101
  };
83
- var onMouseDownHandler = function onMouseDownHandler() {
102
+ const onMouseDownHandler = () => {
84
103
  if (disabled) return;
85
104
  setMouseDownPressed(true);
86
105
  };
87
- var onMouseUpHandler = function onMouseUpHandler() {
106
+ const onMouseUpHandler = () => {
88
107
  if (disabled) return;
89
108
  setMouseDownPressed(false);
90
109
  };
91
- var onPointerOutHandler = function onPointerOutHandler() {
110
+ const onPointerOutHandler = () => {
92
111
  if (disabled) return;
93
112
  if (!mouseDownPressed) return;
94
113
  setMouseDownPressed(false);
95
114
  };
96
- var getClassNameExtention = function getClassNameExtention() {
115
+ const getClassNameExtention = () => {
97
116
  if (disabled) return 'disabled';
98
117
  if (mouseDownPressed) return 'mouseDownPressed';
99
118
  return '';
100
119
  };
101
- var onClickHandler = function onClickHandler(event) {
120
+ const onClickHandler = event => {
102
121
  if (disabled) return;
103
122
  onClick(event);
104
123
  };
105
- return /*#__PURE__*/_react.default.createElement(_IconButton.IconButtonContainer, {
124
+ const onCancelClickHandler = event => {
125
+ onCancelClick(event);
126
+ };
127
+ return /*#__PURE__*/_react.default.createElement(_IconButton.ButtonWrapper, null, /*#__PURE__*/_react.default.createElement(_IconButton.IconButtonContainer, {
106
128
  className: getClassNameExtention(),
107
129
  backgroundColor: backgroundColor,
108
130
  borderColor: borderColor,
@@ -111,13 +133,20 @@ var IconButton = exports.IconButton = function IconButton(props) {
111
133
  onMouseDown: onMouseDownHandler,
112
134
  onMouseUp: onMouseUpHandler,
113
135
  onPointerOut: onPointerOutHandler,
114
- onClick: function onClick(event) {
136
+ inProgress: inProgress,
137
+ progress: progress,
138
+ onClick: event => {
115
139
  onClickHandler(event);
116
140
  }
117
- }, getIcon(iconName), buttonText !== '' && buttonText !== undefined && /*#__PURE__*/_react.default.createElement(_IconButton.SpanText, null, buttonText));
141
+ }, getIcon(iconName), buttonText !== '' && buttonText !== undefined && /*#__PURE__*/_react.default.createElement(_IconButton.SpanText, null, buttonText)), inProgress && /*#__PURE__*/_react.default.createElement(_IconButton.CancelClick, {
142
+ onClick: event => onCancelClickHandler(event)
143
+ }, "Click here to cancel"));
118
144
  };
145
+ exports.IconButton = IconButton;
119
146
  var _default = exports.default = IconButton;
120
147
  IconButton.defaultProps = {
148
+ // downloadStatus: 'fail',
149
+ downloadStatus: 'in progress',
121
150
  buttonText: '',
122
151
  iconName: 'eye',
123
152
  contentColor: '#212121',
@@ -127,5 +156,7 @@ IconButton.defaultProps = {
127
156
  iconHeight: 18,
128
157
  iconWidth: 18,
129
158
  disabled: false,
130
- onClick: function onClick() {}
159
+ inProgress: false,
160
+ onClick: () => {},
161
+ onCancelClick: () => {}
131
162
  };
@@ -1,20 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
- exports.SpanText = exports.IconButtonContainer = void 0;
8
+ exports.SpanText = exports.IconButtonContainer = exports.CancelClick = exports.ButtonWrapper = void 0;
8
9
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/taggedTemplateLiteral"));
9
- var _styledComponents = _interopRequireDefault(require("styled-components"));
10
- var _templateObject, _templateObject2;
11
- var IconButtonContainer = exports.IconButtonContainer = _styledComponents.default.button(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n font-size: 14px;\n font-weight: 400;\n display: flex;\n gap: 10px;\n align-items: center;\n justify-content: center;\n padding: 12px 20px; \n color: ", ";\n border-radius: ", ";\n border: 1px solid ", ";\n background: ", ";\n transition: all .3s;\n &:hover, &:focus {\n cursor: pointer;\n box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.1);\n }\n &.disabled {\n background-color: #ccc;\n }\n"])), function (props) {
12
- return props.color;
13
- }, function (props) {
14
- return props.borderRadius;
15
- }, function (props) {
16
- return props.borderColor.toString();
17
- }, function (props) {
18
- return props.backgroundColor.toString();
19
- });
20
- var SpanText = exports.SpanText = _styledComponents.default.span(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n"])));
10
+ var _styledComponents = _interopRequireWildcard(require("styled-components"));
11
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
12
+ const ButtonWrapper = exports.ButtonWrapper = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n width: fit-content;\n text-align: center;\n"])));
13
+ const IconButtonContainer = exports.IconButtonContainer = _styledComponents.default.button(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n font-size: 14px;\n font-weight: 400;\n display: flex;\n gap: 10px;\n align-items: center;\n justify-content: center;\n padding: 12px 20px;\n margin-bottom: 5px;\n color: ", ";\n border-radius: ", ";\n border: 1px solid ", ";\n background: ", ";\n position: relative;\n transition: all .3s;\n ", "\n &:hover, &:focus {\n cursor: pointer;\n box-shadow: 5px 5px 10px 0px rgba(0, 0, 0, 0.1);\n }\n"])), props => props.color, props => props.borderRadius, props => props.borderColor.toString(), props => props.backgroundColor.toString(), props => props.inProgress && (0, _styledComponents.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n pointer-events: none;\n &:after {\n content: 'In Progress';\n display: flex;\n align-items: center;\n justify-content: center;\n text-wrap: nowrap;\n position: absolute;\n background: linear-gradient(\n to right,\n #5FCC70 ", "%,\n #B1B1B1 ", "%,\n #B1B1B1 100%\n );\n width: 100%;\n height: 100%;\n border-radius: ", ";\n border-width: 0;\n z-index: 9;\n }\n "])), props.progress, props.progress + 1, props => props.borderRadius));
14
+ const SpanText = exports.SpanText = _styledComponents.default.span(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2.default)(["\n"])));
15
+ const CancelClick = exports.CancelClick = _styledComponents.default.span(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2.default)(["\n display: inherit;\n font-family: \"Lato\", sans-serif;;\n font-size: 14px;\n color: #568202;\n"])));