@widergy/energy-ui 3.121.2 → 3.122.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 (92) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/components/UTAvatar/constants.js +44 -1
  3. package/dist/components/UTAvatar/index.js +31 -8
  4. package/dist/components/UTAvatar/stories/UTAvatar.mdx +13 -0
  5. package/dist/components/UTAvatar/stories/UTAvatar.stories.js +38 -0
  6. package/dist/components/UTAvatar/stories/UTAvatarColors.stories.js +91 -0
  7. package/dist/components/UTAvatar/stories/UTAvatarShapes.stories.js +51 -0
  8. package/dist/components/UTAvatar/stories/UTAvatarSizes.stories.js +106 -0
  9. package/dist/components/UTAvatar/stories/UTAvatarTypes.stories.js +51 -0
  10. package/dist/components/UTAvatar/stories/storiesConstants.js +155 -0
  11. package/dist/components/UTAvatar/styles.module.scss +24 -0
  12. package/dist/components/UTBodyPlaceholder/UTBodyPlaceholder.mdx +11 -0
  13. package/dist/components/UTBodyPlaceholder/UTBodyPlaceholder.stories.js +76 -0
  14. package/dist/components/UTBodyPlaceholder/constants.js +14 -0
  15. package/dist/components/UTBodyPlaceholder/index.js +45 -0
  16. package/dist/components/UTBodyPlaceholder/styles.module.scss +34 -0
  17. package/dist/components/UTButton/constants.js +8 -5
  18. package/dist/components/UTButton/stories/UTButton.mdx +13 -0
  19. package/dist/components/UTButton/stories/UTButton.stories.js +38 -0
  20. package/dist/components/UTButton/stories/UTButtonAdornments.stories.js +52 -0
  21. package/dist/components/UTButton/stories/UTButtonColorThemes.stories.js +52 -0
  22. package/dist/components/UTButton/stories/UTButtonSizes.stories.js +40 -0
  23. package/dist/components/UTButton/stories/UTButtonStates.stories.js +34 -0
  24. package/dist/components/UTButton/stories/UTButtonVariants.stories.js +61 -0
  25. package/dist/components/UTButton/stories/storiesConstants.js +220 -0
  26. package/dist/components/UTButton/theme.js +15 -14
  27. package/dist/components/UTButton/utils.js +2 -2
  28. package/dist/components/UTDataElement/UTDataElement.stories.js +2 -1
  29. package/dist/components/UTDataElement/theme.js +2 -1
  30. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/CollapsedPanelContent/constants.js +11 -0
  31. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/CollapsedPanelContent/index.js +34 -0
  32. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/CollapsedPanelContent/layout.js +46 -0
  33. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryEmpty/index.js +36 -0
  34. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryEmpty/layout.js +50 -0
  35. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryHeader/constants.js +8 -0
  36. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryHeader/index.js +55 -0
  37. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryHeader/layout.js +78 -0
  38. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryItem/constants.js +21 -0
  39. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryItem/index.js +80 -0
  40. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/components/ExpandedPanelContentCategoryItem/layout.js +132 -0
  41. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/constants.js +7 -0
  42. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/index.js +62 -0
  43. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/layout.js +78 -0
  44. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentCategory/utils.js +23 -0
  45. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentHeader/constants.js +16 -0
  46. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentHeader/index.js +75 -0
  47. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentHeader/layout.js +136 -0
  48. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentPopper/constants.js +11 -0
  49. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentPopper/index.js +40 -0
  50. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/components/ExpandedPanelContentPopper/layout.js +55 -0
  51. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/index.js +37 -0
  52. package/dist/components/UTFilterGrouping/components/GroupingPanel/components/ExpandedPanelContent/layout.js +44 -0
  53. package/dist/components/UTFilterGrouping/components/GroupingPanel/index.js +57 -0
  54. package/dist/components/UTFilterGrouping/components/GroupingPanel/layout.js +64 -0
  55. package/dist/components/UTFilterGrouping/constants.js +10 -0
  56. package/dist/components/UTFilterGrouping/context.js +9 -0
  57. package/dist/components/UTFilterGrouping/index.js +187 -0
  58. package/dist/components/UTFilterGrouping/layout.js +43 -0
  59. package/dist/components/UTFilterGrouping/stories/UTFilterGrouping.mdx +13 -0
  60. package/dist/components/UTFilterGrouping/stories/UTFilterGrouping.stories.js +315 -0
  61. package/dist/components/UTFilterGrouping/stories/constants.json +282 -0
  62. package/dist/components/UTFilterGrouping/stories/fixtures.js +162 -0
  63. package/dist/components/UTFilterGrouping/stories/props.schema.json +163 -0
  64. package/dist/components/UTFilterGrouping/stories/styles.module.scss +19 -0
  65. package/dist/components/UTFilterGrouping/stories/tests.js +250 -0
  66. package/dist/components/UTFilterGrouping/stories/utils.js +178 -0
  67. package/dist/components/UTFilterGrouping/styles.module.scss +251 -0
  68. package/dist/components/UTFilterGrouping/theme.js +55 -0
  69. package/dist/components/UTFilterGrouping/types.js +51 -0
  70. package/dist/components/UTFilterGrouping/utils.js +27 -0
  71. package/dist/components/UTGraph/UTGraph.stories.js +1 -1
  72. package/dist/components/UTHeader/index.js +1 -1
  73. package/dist/components/UTIcon/UTIcon.mdx +17 -0
  74. package/dist/components/UTIcon/UTIcon.stories.js +2 -1
  75. package/dist/components/UTIcon/index.js +2 -19
  76. package/dist/components/UTKpi/UTKpi.stories.js +2 -1
  77. package/dist/components/UTLabel/UTLabel.stories.js +2 -1
  78. package/dist/components/UTLabel/constants.js +1 -1
  79. package/dist/components/UTPanel/UTPanel.stories.js +2 -1
  80. package/dist/components/UTRadioGroup/UTRadioGroup.stories.js +2 -1
  81. package/dist/components/UTSearchField/index.js +8 -2
  82. package/dist/components/UTSearchField/stories/UTSearchField.mdx +11 -0
  83. package/dist/components/UTSearchField/stories/UTSearchField.stories.js +250 -0
  84. package/dist/components/UTSignature/UTSignature.stories.js +2 -1
  85. package/dist/components/UTStatus/UTStatus.stories.js +2 -1
  86. package/dist/components/UTSwitch/versions/V1/theme.js +5 -4
  87. package/dist/components/UTTable/UTTable.stories.js +2 -1
  88. package/dist/components/UTTable/components/HeaderCell/styles.module.scss +0 -1
  89. package/dist/constants/Palette.js +1 -0
  90. package/dist/constants/testIds.js +53 -1
  91. package/dist/types/iconTypes.js +25 -0
  92. package/package.json +8 -1
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TOOLTIP_PLACEMENT = exports.TOOLTIP_OFFSET = void 0;
7
+ var _constants = require("../../../../../../../../constants");
8
+ const TOOLTIP_PLACEMENT = exports.TOOLTIP_PLACEMENT = {
9
+ [_constants.PANEL_POSITIONS.LEFT]: 'right',
10
+ [_constants.PANEL_POSITIONS.RIGHT]: 'left'
11
+ };
12
+ const TOOLTIP_OFFSET = exports.TOOLTIP_OFFSET = {
13
+ editButton: {
14
+ [_constants.PANEL_POSITIONS.LEFT]: '0, 40',
15
+ [_constants.PANEL_POSITIONS.RIGHT]: '0, -268'
16
+ },
17
+ deleteButton: {
18
+ [_constants.PANEL_POSITIONS.LEFT]: '0, 0',
19
+ [_constants.PANEL_POSITIONS.RIGHT]: '0, -320'
20
+ }
21
+ };
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _isEqual = _interopRequireDefault(require("lodash/isEqual"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _propTypes = require("prop-types");
10
+ var _context = _interopRequireDefault(require("../../../../../../../../context"));
11
+ var _utils = require("../../../../../../../../utils");
12
+ var _layout = _interopRequireDefault(require("./layout"));
13
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ const ExpandedPanelContentCategoryItemContainer = _ref => {
16
+ var _name$toLowerCase, _name$toLowerCase$spl, _name$toLowerCase$spl2;
17
+ let {
18
+ dataTestId,
19
+ filter
20
+ } = _ref;
21
+ const {
22
+ classes,
23
+ closePopper,
24
+ handleSelectFilter,
25
+ openPopper,
26
+ position,
27
+ selectedFilter,
28
+ tooltipsContentMap: {
29
+ editButton,
30
+ deleteButton
31
+ },
32
+ handleDeleteFilterGrouping,
33
+ handleEditFilterGrouping
34
+ } = (0, _react.useContext)(_context.default);
35
+ const {
36
+ description,
37
+ name,
38
+ pinned,
39
+ category
40
+ } = filter;
41
+ const id = "".concat(name === null || name === void 0 || (_name$toLowerCase = name.toLowerCase) === null || _name$toLowerCase === void 0 || (_name$toLowerCase = _name$toLowerCase.call(name)) === null || _name$toLowerCase === void 0 || (_name$toLowerCase$spl = _name$toLowerCase.split) === null || _name$toLowerCase$spl === void 0 || (_name$toLowerCase$spl = _name$toLowerCase$spl.call(_name$toLowerCase, ' ')) === null || _name$toLowerCase$spl === void 0 || (_name$toLowerCase$spl2 = _name$toLowerCase$spl.join) === null || _name$toLowerCase$spl2 === void 0 ? void 0 : _name$toLowerCase$spl2.call(_name$toLowerCase$spl, '_'), "_").concat(category);
42
+ const deleteButtonTippyRef = (0, _react.useRef)(null);
43
+ const editButtonTippyRef = (0, _react.useRef)(null);
44
+ const handleOpenItemDescription = () => {
45
+ const anchor = document.getElementById(id);
46
+ openPopper({
47
+ anchor,
48
+ title: name,
49
+ description
50
+ });
51
+ };
52
+ const handleSelectFilters = () => {
53
+ handleSelectFilter(filter);
54
+ };
55
+ const animationEnd = () => (0, _utils.handleAnimationEnd)(editButtonTippyRef, deleteButtonTippyRef);
56
+ return /*#__PURE__*/_react.default.createElement(_layout.default, {
57
+ animationEnd: animationEnd,
58
+ classes: classes,
59
+ closeItemDescription: closePopper,
60
+ dataTestId: dataTestId,
61
+ deleteButton: deleteButton,
62
+ deleteButtonTippyRef: deleteButtonTippyRef,
63
+ editButton: editButton,
64
+ editButtonTippyRef: editButtonTippyRef,
65
+ handleDeleteFilterGrouping: () => handleDeleteFilterGrouping(filter),
66
+ handleEditFilterGrouping: () => handleEditFilterGrouping(filter),
67
+ handleSelectFilter: handleSelectFilters,
68
+ id: id,
69
+ name: name,
70
+ openItemDescription: handleOpenItemDescription,
71
+ pinned: pinned,
72
+ position: position,
73
+ selected: (0, _isEqual.default)(selectedFilter, filter)
74
+ });
75
+ };
76
+ ExpandedPanelContentCategoryItemContainer.propTypes = {
77
+ dataTestId: _propTypes.string,
78
+ filter: _propTypes.object
79
+ };
80
+ var _default = exports.default = ExpandedPanelContentCategoryItemContainer;
@@ -0,0 +1,132 @@
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 _UTButton = _interopRequireDefault(require("../../../../../../../../../UTButton"));
10
+ var _UTIcon = _interopRequireDefault(require("../../../../../../../../../UTIcon"));
11
+ var _UTLabel = _interopRequireDefault(require("../../../../../../../../../UTLabel"));
12
+ var _UTTooltip = _interopRequireDefault(require("../../../../../../../../../UTTooltip"));
13
+ var _UTTouchableWithoutFeedback = _interopRequireDefault(require("../../../../../../../../../UTTouchableWithoutFeedback"));
14
+ var _testIds = require("../../../../../../../../../../constants/testIds");
15
+ var _types = require("../../../../../../../../types");
16
+ var _constants = require("./constants");
17
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
18
+ const {
19
+ DELETE_BUTTON,
20
+ DELETE_BUTTON_TOOLTIP,
21
+ EDIT_BUTTON,
22
+ EDIT_BUTTON_TOOLTIP
23
+ } = _testIds.ID_CONSTANTS;
24
+ const ExpandedPanelContentCategoryItem = _ref => {
25
+ let {
26
+ animationEnd,
27
+ classes,
28
+ closeItemDescription,
29
+ dataTestId,
30
+ deleteButton,
31
+ deleteButtonTippyRef,
32
+ editButton,
33
+ editButtonTippyRef,
34
+ handleDeleteFilterGrouping,
35
+ handleEditFilterGrouping,
36
+ handleSelectFilter,
37
+ id,
38
+ name,
39
+ openItemDescription,
40
+ pinned,
41
+ position,
42
+ selected
43
+ } = _ref;
44
+ return /*#__PURE__*/_react.default.createElement("article", {
45
+ className: "".concat(classes.expandedPanelContentCategoryItem, " ").concat(selected ? classes.expandedPanelContentCategoryItemSelected : ''),
46
+ id: id
47
+ }, /*#__PURE__*/_react.default.createElement(_UTTouchableWithoutFeedback.default, {
48
+ className: "".concat(classes.expandedPanelContentCategoryItemTitleContainer, " ").concat(selected ? classes.expandedPanelContentCategoryItemTitleContainerSelected : ''),
49
+ dataTestId: "".concat(dataTestId, ".").concat(_testIds.ID_CONSTANTS.NAME_CONTAINER),
50
+ onClick: handleSelectFilter
51
+ }, pinned && /*#__PURE__*/_react.default.createElement(_UTIcon.default, {
52
+ colorTheme: selected ? 'accent' : undefined,
53
+ dataTestId: "".concat(dataTestId, ".").concat(_testIds.ID_CONSTANTS.PINNED),
54
+ name: "IconPin",
55
+ shade: selected ? '05' : undefined,
56
+ size: "20"
57
+ }), /*#__PURE__*/_react.default.createElement("div", {
58
+ className: classes.hoverableContainer,
59
+ "data-testid": "".concat(dataTestId, ".").concat(_testIds.ID_CONSTANTS.NAME),
60
+ onMouseEnter: openItemDescription,
61
+ onMouseLeave: closeItemDescription
62
+ }, /*#__PURE__*/_react.default.createElement(_UTLabel.default, {
63
+ className: classes.expandedPanelContentCategoryItemTitleLabel,
64
+ colorTheme: selected ? 'accent' : undefined,
65
+ shade: selected ? '05' : undefined
66
+ }, name))), !pinned && /*#__PURE__*/_react.default.createElement("section", {
67
+ className: classes.expandedPanelContentCategoryItemActionsContainer,
68
+ onAnimationEnd: animationEnd
69
+ }, /*#__PURE__*/_react.default.createElement(_UTTooltip.default, {
70
+ arrow: false,
71
+ content: editButton,
72
+ dataTestId: "".concat(dataTestId, ".").concat(EDIT_BUTTON_TOOLTIP),
73
+ tippyProps: {
74
+ appendTo: () => document.body,
75
+ offset: _constants.TOOLTIP_OFFSET.editButton[position],
76
+ onCreate: instance => {
77
+ editButtonTippyRef.current = instance;
78
+ },
79
+ placement: _constants.TOOLTIP_PLACEMENT[position]
80
+ }
81
+ }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
82
+ classes: {
83
+ root: classes.expandedPanelContentCategoryItemAction
84
+ },
85
+ colorTheme: "gray",
86
+ dataTestId: "".concat(dataTestId, ".").concat(EDIT_BUTTON),
87
+ Icon: "IconPencil",
88
+ onClick: handleEditFilterGrouping,
89
+ variant: "text"
90
+ }))), /*#__PURE__*/_react.default.createElement(_UTTooltip.default, {
91
+ arrow: false,
92
+ content: deleteButton,
93
+ dataTestId: "".concat(dataTestId, ".").concat(DELETE_BUTTON_TOOLTIP),
94
+ tippyProps: {
95
+ appendTo: () => document.body,
96
+ offset: _constants.TOOLTIP_OFFSET.deleteButton[position],
97
+ onCreate: instance => {
98
+ deleteButtonTippyRef.current = instance;
99
+ },
100
+ placement: _constants.TOOLTIP_PLACEMENT[position]
101
+ }
102
+ }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
103
+ classes: {
104
+ root: classes.expandedPanelContentCategoryItemAction
105
+ },
106
+ colorTheme: "gray",
107
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(DELETE_BUTTON) : undefined,
108
+ Icon: "IconTrash",
109
+ onClick: handleDeleteFilterGrouping,
110
+ variant: "text"
111
+ })))));
112
+ };
113
+ ExpandedPanelContentCategoryItem.propTypes = {
114
+ animationEnd: _propTypes.func,
115
+ classes: _propTypes.object,
116
+ closeItemDescription: _propTypes.func,
117
+ dataTestId: _propTypes.string,
118
+ deleteButton: _propTypes.string,
119
+ deleteButtonTippyRef: _types.refType,
120
+ editButton: _propTypes.string,
121
+ editButtonTippyRef: _types.refType,
122
+ handleDeleteFilterGrouping: _propTypes.func,
123
+ handleEditFilterGrouping: _propTypes.func,
124
+ handleSelectFilter: _propTypes.func,
125
+ id: _propTypes.string,
126
+ name: _propTypes.string,
127
+ openItemDescription: _propTypes.func,
128
+ pinned: _propTypes.bool,
129
+ position: _propTypes.string,
130
+ selected: _propTypes.bool
131
+ };
132
+ var _default = exports.default = ExpandedPanelContentCategoryItem;
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.FADE_TIMEOUT = void 0;
7
+ const FADE_TIMEOUT = exports.FADE_TIMEOUT = 600;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _propTypes = require("prop-types");
10
+ var _testIds = require("lib/constants/testIds");
11
+ var _context = _interopRequireDefault(require("../../../../../../context"));
12
+ var _layout = _interopRequireDefault(require("./layout"));
13
+ var _utils = require("./utils");
14
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ const {
17
+ filterGrouping
18
+ } = _testIds.TEST_IDS;
19
+ const ExpandedPanelContentCategoryContainer = _ref => {
20
+ let {
21
+ category,
22
+ categoryConfig,
23
+ dataTestId
24
+ } = _ref;
25
+ const {
26
+ classes,
27
+ filteredValues,
28
+ selectedFilter
29
+ } = (0, _react.useContext)(_context.default);
30
+ const [collapsedCategory, setCollapsedCategory] = (0, _react.useState)(false);
31
+ const modifiedDataTestId = dataTestId ? "".concat(dataTestId, ".").concat(category.category) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentCategory;
32
+ const handleToggleCollapsedCategory = () => {
33
+ setCollapsedCategory(!collapsedCategory);
34
+ };
35
+ const selectedFilterIsInCategory = (selectedFilter === null || selectedFilter === void 0 ? void 0 : selectedFilter.category) === category.category;
36
+ const {
37
+ clientFilters,
38
+ userFilters
39
+ } = (0, _utils.getSegregatedFilters)(category.filters);
40
+ const shouldFadeIn = !filteredValues && !(0, _isEmpty.default)(selectedFilter) && collapsedCategory && selectedFilterIsInCategory;
41
+ const shouldShowEmptyState = filteredValues && (0, _isEmpty.default)(userFilters) ? null : (0, _isEmpty.default)(userFilters);
42
+ return /*#__PURE__*/_react.default.createElement(_layout.default, {
43
+ category: category,
44
+ categoryConfig: categoryConfig,
45
+ classes: classes,
46
+ clientFilters: clientFilters,
47
+ collapsedCategory: collapsedCategory,
48
+ dataTestId: modifiedDataTestId,
49
+ filteredValues: filteredValues,
50
+ handleToggleCollapsedCategory: handleToggleCollapsedCategory,
51
+ selectedFilter: selectedFilter,
52
+ shouldFadeIn: shouldFadeIn,
53
+ shouldShowEmptyState: shouldShowEmptyState,
54
+ userFilters: userFilters
55
+ });
56
+ };
57
+ ExpandedPanelContentCategoryContainer.propTypes = {
58
+ category: _propTypes.object,
59
+ categoryConfig: _propTypes.object,
60
+ dataTestId: _propTypes.string
61
+ };
62
+ var _default = exports.default = ExpandedPanelContentCategoryContainer;
@@ -0,0 +1,78 @@
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 _core = require("@material-ui/core");
10
+ var _testIds = require("../../../../../../../../constants/testIds");
11
+ var _ExpandedPanelContentCategoryEmpty = _interopRequireDefault(require("./components/ExpandedPanelContentCategoryEmpty"));
12
+ var _ExpandedPanelContentCategoryHeader = _interopRequireDefault(require("./components/ExpandedPanelContentCategoryHeader"));
13
+ var _ExpandedPanelContentCategoryItem = _interopRequireDefault(require("./components/ExpandedPanelContentCategoryItem"));
14
+ var _constants = require("./constants");
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ const {
17
+ CLIENT_FILTER,
18
+ EXPANDED_PANEL_CONTENT_CATEGORY_ITEM,
19
+ PERSISTENT_FILTER,
20
+ USER_FILTER
21
+ } = _testIds.ID_CONSTANTS;
22
+ const ExpandedPanelContentCategory = _ref => {
23
+ let {
24
+ category,
25
+ categoryConfig,
26
+ classes,
27
+ clientFilters,
28
+ collapsedCategory,
29
+ dataTestId,
30
+ handleToggleCollapsedCategory,
31
+ selectedFilter,
32
+ shouldFadeIn,
33
+ shouldShowEmptyState,
34
+ userFilters
35
+ } = _ref;
36
+ return /*#__PURE__*/_react.default.createElement("section", {
37
+ className: classes.expandedPanelContentCategory
38
+ }, /*#__PURE__*/_react.default.createElement(_ExpandedPanelContentCategoryHeader.default, {
39
+ category: category,
40
+ categoryConfig: categoryConfig,
41
+ collapsedCategory: collapsedCategory,
42
+ dataTestId: dataTestId,
43
+ handleToggleCollapsedCategory: handleToggleCollapsedCategory
44
+ }), /*#__PURE__*/_react.default.createElement("article", {
45
+ className: collapsedCategory ? classes.expandedPanelContentUserFiltersCollapsed : classes.expandedPanelContentUserFiltersExpanded
46
+ }, clientFilters.map((filter, i) => /*#__PURE__*/_react.default.createElement(_ExpandedPanelContentCategoryItem.default, {
47
+ dataTestId: "".concat(dataTestId, ".").concat(EXPANDED_PANEL_CONTENT_CATEGORY_ITEM, ".").concat(CLIENT_FILTER, ".").concat(i),
48
+ filter: filter,
49
+ key: filter.id
50
+ })), shouldShowEmptyState ? /*#__PURE__*/_react.default.createElement(_ExpandedPanelContentCategoryEmpty.default, {
51
+ dataTestId: dataTestId
52
+ }) : userFilters.map((filter, i) => /*#__PURE__*/_react.default.createElement(_ExpandedPanelContentCategoryItem.default, {
53
+ dataTestId: "".concat(dataTestId, ".").concat(EXPANDED_PANEL_CONTENT_CATEGORY_ITEM, ".").concat(USER_FILTER, ".").concat(i),
54
+ filter: filter,
55
+ key: filter.id
56
+ }))), shouldFadeIn && /*#__PURE__*/_react.default.createElement(_core.Fade, {
57
+ in: shouldFadeIn,
58
+ timeout: _constants.FADE_TIMEOUT
59
+ }, /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_ExpandedPanelContentCategoryItem.default, {
60
+ dataTestId: "".concat(dataTestId, ".").concat(EXPANDED_PANEL_CONTENT_CATEGORY_ITEM, ".").concat(USER_FILTER, ".").concat(PERSISTENT_FILTER),
61
+ filter: selectedFilter,
62
+ key: selectedFilter.id
63
+ }))));
64
+ };
65
+ ExpandedPanelContentCategory.propTypes = {
66
+ category: _propTypes.object,
67
+ categoryConfig: _propTypes.object,
68
+ classes: (0, _propTypes.objectOf)(_propTypes.string),
69
+ clientFilters: _propTypes.array,
70
+ collapsedCategory: _propTypes.bool,
71
+ dataTestId: _propTypes.string,
72
+ handleToggleCollapsedCategory: _propTypes.func,
73
+ selectedFilter: _propTypes.object,
74
+ shouldFadeIn: _propTypes.bool,
75
+ shouldShowEmptyState: _propTypes.bool,
76
+ userFilters: _propTypes.array
77
+ };
78
+ var _default = exports.default = ExpandedPanelContentCategory;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getSegregatedFilters = void 0;
7
+ /**
8
+ * Segregates filters into client and user filters
9
+ * @param {Filters[]} filters Array of filters
10
+ * @returns {{clientFilters: Filters[], userFilters: Filters[]}} Object with clientFilters and userFilters
11
+ */
12
+ const getSegregatedFilters = filters => filters.reduce((segregatedFilters, currentFilter) => {
13
+ if (currentFilter.pinned) {
14
+ segregatedFilters.clientFilters.push(currentFilter);
15
+ } else {
16
+ segregatedFilters.userFilters.push(currentFilter);
17
+ }
18
+ return segregatedFilters;
19
+ }, {
20
+ clientFilters: [],
21
+ userFilters: []
22
+ });
23
+ exports.getSegregatedFilters = getSegregatedFilters;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.TOOLTIP_PLACEMENT = exports.ICON_BY_POSITION = exports.CUSTOM_SEARCH_ACTION_CONFIG = void 0;
7
+ var _constants = require("../../../../../../constants");
8
+ const CUSTOM_SEARCH_ACTION_CONFIG = exports.CUSTOM_SEARCH_ACTION_CONFIG = {
9
+ Icon: 'IconX',
10
+ size: 'small'
11
+ };
12
+ const ICON_BY_POSITION = exports.ICON_BY_POSITION = {
13
+ [_constants.PANEL_POSITIONS.LEFT]: 'IconChevronsLeft',
14
+ [_constants.PANEL_POSITIONS.RIGHT]: 'IconChevronsRight'
15
+ };
16
+ const TOOLTIP_PLACEMENT = exports.TOOLTIP_PLACEMENT = 'top';
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _propTypes = require("prop-types");
9
+ var _context = _interopRequireDefault(require("../../../../../../context"));
10
+ var _utils = require("../../../../../../utils");
11
+ var _testIds = require("../../../../../../../../constants/testIds");
12
+ var _layout = _interopRequireDefault(require("./layout"));
13
+ var _constants = require("./constants");
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ const {
17
+ filterGrouping
18
+ } = _testIds.TEST_IDS;
19
+ const {
20
+ CUSTOM_SEARCH_ACTION,
21
+ EXPANDED_PANEL_CONTENT_HEADER
22
+ } = _testIds.ID_CONSTANTS;
23
+ const ExpandedPanelContentHeaderContainer = _ref => {
24
+ let {
25
+ dataTestId
26
+ } = _ref;
27
+ const {
28
+ classes,
29
+ handleAddFilterGroup,
30
+ handleFilterGroupSearch,
31
+ handleTogglePanel,
32
+ panelTitle,
33
+ position,
34
+ searchValue,
35
+ tooltipsContentMap: {
36
+ collapseButton,
37
+ searchButton
38
+ }
39
+ } = (0, _react.useContext)(_context.default);
40
+ const [searchOpen, setSearchOpen] = (0, _react.useState)(false);
41
+ const handleSearchToggle = () => {
42
+ handleFilterGroupSearch('');
43
+ setSearchOpen(!searchOpen);
44
+ };
45
+ const customSearchAction = {
46
+ ..._constants.CUSTOM_SEARCH_ACTION_CONFIG,
47
+ onClick: () => handleSearchToggle(),
48
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(EXPANDED_PANEL_CONTENT_HEADER, ".").concat(CUSTOM_SEARCH_ACTION) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.customSearchAction
49
+ };
50
+ const searchButtonTippyRef = (0, _react.useRef)(null);
51
+ const collapseButtonTippyRef = (0, _react.useRef)(null);
52
+ const animationEnd = () => (0, _utils.handleAnimationEnd)(searchButtonTippyRef, collapseButtonTippyRef);
53
+ return /*#__PURE__*/_react.default.createElement(_layout.default, {
54
+ animationEnd: animationEnd,
55
+ classes: classes,
56
+ collapseButtonTippyRef: collapseButtonTippyRef,
57
+ collapseButtonTooltip: collapseButton,
58
+ customSearchAction: customSearchAction,
59
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(EXPANDED_PANEL_CONTENT_HEADER) : undefined,
60
+ handleAddFilterGroup: handleAddFilterGroup,
61
+ handleFilterGroupSearch: handleFilterGroupSearch,
62
+ handleSearchToggle: handleSearchToggle,
63
+ handleTogglePanel: handleTogglePanel,
64
+ panelTitle: panelTitle,
65
+ position: position,
66
+ searchButtonTippyRef: searchButtonTippyRef,
67
+ searchButtonTooltip: searchButton,
68
+ searchOpen: searchOpen,
69
+ searchValue: searchValue
70
+ });
71
+ };
72
+ ExpandedPanelContentHeaderContainer.propTypes = {
73
+ dataTestId: _propTypes.string
74
+ };
75
+ var _default = exports.default = ExpandedPanelContentHeaderContainer;
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _propTypes = require("prop-types");
9
+ var _UTButton = _interopRequireDefault(require("../../../../../../../UTButton"));
10
+ var _UTLabel = _interopRequireDefault(require("../../../../../../../UTLabel"));
11
+ var _UTSearchField = _interopRequireDefault(require("../../../../../../../UTSearchField"));
12
+ var _UTTooltip = _interopRequireDefault(require("../../../../../../../UTTooltip"));
13
+ var _types = require("../../../../../../types");
14
+ var _testIds = require("../../../../../../../../constants/testIds");
15
+ var _constants = require("./constants");
16
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
17
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
18
+ const {
19
+ filterGrouping
20
+ } = _testIds.TEST_IDS;
21
+ const {
22
+ ADD_FILTER_BUTTON,
23
+ COLLAPSE_BUTTON,
24
+ COLLAPSE_BUTTON_TOOLTIP,
25
+ SEARCH_BUTTON,
26
+ SEARCH_BUTTON_TOOLTIP,
27
+ SEARCH_FIELD,
28
+ TITLE
29
+ } = _testIds.ID_CONSTANTS;
30
+ const ExpandedPanelContentHeader = _ref => {
31
+ let {
32
+ animationEnd,
33
+ classes,
34
+ collapseButtonTippyRef,
35
+ collapseButtonTooltip,
36
+ customSearchAction,
37
+ dataTestId,
38
+ handleAddFilterGroup,
39
+ handleFilterGroupSearch,
40
+ handleSearchToggle,
41
+ handleTogglePanel,
42
+ panelTitle,
43
+ position,
44
+ searchButtonTippyRef,
45
+ searchButtonTooltip,
46
+ searchOpen,
47
+ searchValue
48
+ } = _ref;
49
+ return /*#__PURE__*/_react.default.createElement("header", {
50
+ className: "".concat(classes.expandedPanelContentHeader, " ").concat(searchOpen ? classes.expandedPanelContentHeaderSearchOpen : '')
51
+ }, searchOpen ? /*#__PURE__*/_react.default.createElement(_UTSearchField.default, {
52
+ customAction: customSearchAction,
53
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(SEARCH_FIELD) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.searchField,
54
+ onChange: handleFilterGroupSearch,
55
+ value: searchValue,
56
+ variant: "white"
57
+ }) : /*#__PURE__*/_react.default.createElement(_react.Fragment, null, /*#__PURE__*/_react.default.createElement(_UTLabel.default, {
58
+ className: classes.expandedPanelContentTitle,
59
+ colorTheme: "dark",
60
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(TITLE) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.title,
61
+ shade: "05",
62
+ variant: "subtitle1",
63
+ weight: "medium"
64
+ }, panelTitle), /*#__PURE__*/_react.default.createElement("section", {
65
+ className: classes.expandedPanelContentActions
66
+ }, /*#__PURE__*/_react.default.createElement("div", {
67
+ className: classes.expandedPanelContentActionsContainer,
68
+ onAnimationEnd: animationEnd
69
+ }, /*#__PURE__*/_react.default.createElement(_UTTooltip.default, {
70
+ arrow: false,
71
+ content: searchButtonTooltip,
72
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(SEARCH_BUTTON_TOOLTIP) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.searchButtonTooltip,
73
+ tippyProps: {
74
+ onCreate: instance => {
75
+ searchButtonTippyRef.current = instance;
76
+ },
77
+ placement: _constants.TOOLTIP_PLACEMENT
78
+ }
79
+ }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
80
+ classes: {
81
+ root: classes.expandedPanelContentAction
82
+ },
83
+ colorTheme: "gray",
84
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(SEARCH_BUTTON) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.searchButton,
85
+ Icon: "IconSearch",
86
+ onClick: handleSearchToggle,
87
+ variant: "text"
88
+ }))), /*#__PURE__*/_react.default.createElement(_UTTooltip.default, {
89
+ arrow: false,
90
+ content: collapseButtonTooltip,
91
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(COLLAPSE_BUTTON_TOOLTIP) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.collapseButtonTooltip,
92
+ tippyProps: {
93
+ onCreate: instance => {
94
+ collapseButtonTippyRef.current = instance;
95
+ },
96
+ placement: _constants.TOOLTIP_PLACEMENT
97
+ }
98
+ }, /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
99
+ classes: {
100
+ root: classes.expandedPanelContentAction
101
+ },
102
+ colorTheme: "gray",
103
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(COLLAPSE_BUTTON) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.collapseButton,
104
+ Icon: _constants.ICON_BY_POSITION[position],
105
+ onClick: handleTogglePanel,
106
+ variant: "text"
107
+ })))), /*#__PURE__*/_react.default.createElement(_UTButton.default, {
108
+ classes: {
109
+ root: classes.expandedPanelContentAction
110
+ },
111
+ colorTheme: "dark",
112
+ dataTestId: dataTestId ? "".concat(dataTestId, ".").concat(ADD_FILTER_BUTTON) : filterGrouping.groupingPanel.expandedPanelContent.expandedPanelContentHeader.addFilterButton,
113
+ Icon: "IconPlus",
114
+ onClick: handleAddFilterGroup,
115
+ variant: "text"
116
+ }))));
117
+ };
118
+ ExpandedPanelContentHeader.propTypes = {
119
+ animationEnd: _propTypes.func,
120
+ classes: (0, _propTypes.objectOf)(_propTypes.string),
121
+ collapseButtonTippyRef: _types.refType,
122
+ collapseButtonTooltip: _propTypes.string,
123
+ customSearchAction: _types.customSearchActionType,
124
+ dataTestId: _propTypes.string,
125
+ handleAddFilterGroup: _propTypes.func,
126
+ handleFilterGroupSearch: _propTypes.func,
127
+ handleSearchToggle: _propTypes.func,
128
+ handleTogglePanel: _propTypes.func,
129
+ panelTitle: _propTypes.string,
130
+ position: _propTypes.string,
131
+ searchButtonTippyRef: _types.refType,
132
+ searchButtonTooltip: _propTypes.string,
133
+ searchOpen: _propTypes.bool,
134
+ searchValue: _propTypes.string
135
+ };
136
+ var _default = exports.default = ExpandedPanelContentHeader;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.POPPER_PLACEMENT = void 0;
7
+ var _constants = require("../../../../../../constants");
8
+ const POPPER_PLACEMENT = exports.POPPER_PLACEMENT = {
9
+ [_constants.PANEL_POSITIONS.LEFT]: 'right',
10
+ [_constants.PANEL_POSITIONS.RIGHT]: 'left'
11
+ };