@widergy/energy-ui 3.8.0 → 3.9.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ # [3.9.0](https://github.com/widergy/energy-ui/compare/v3.8.0...v3.9.0) (2024-06-06)
2
+
3
+
4
+ ### Features
5
+
6
+ * add wizard to workflow component ([#450](https://github.com/widergy/energy-ui/issues/450)) ([943896d](https://github.com/widergy/energy-ui/commit/943896d4d36c22574d06274da3d1b270d215f75a))
7
+
1
8
  # [3.8.0](https://github.com/widergy/energy-ui/compare/v3.7.5...v3.8.0) (2024-06-06)
2
9
 
3
10
 
@@ -0,0 +1,26 @@
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 _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
10
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
+ const StepImage = _ref => {
12
+ let {
13
+ Image
14
+ } = _ref;
15
+ return typeof Image === 'string' ? /*#__PURE__*/_react.default.createElement("img", {
16
+ alt: "",
17
+ className: _stylesModule.default.image,
18
+ src: Image
19
+ }) : /*#__PURE__*/_react.default.createElement(Image, {
20
+ className: _stylesModule.default.image
21
+ });
22
+ };
23
+ StepImage.propTypes = {
24
+ Image: (0, _propTypes.oneOfType)([_propTypes.string, _propTypes.elementType])
25
+ };
26
+ var _default = exports.default = StepImage;
@@ -0,0 +1,6 @@
1
+ .image {
2
+ align-self: center;
3
+ display: flex;
4
+ max-height: 180px;
5
+ max-width: 264px;
6
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.VARIANTS = exports.DISABLE_TEXT = exports.DEFAULT_PROPS = void 0;
7
+ const DISABLE_TEXT = exports.DISABLE_TEXT = 'No volver a mostrar';
8
+ const VARIANTS = exports.VARIANTS = {
9
+ dark: 'dark',
10
+ information: 'information',
11
+ light: 'light'
12
+ };
13
+ const DEFAULT_PROPS = exports.DEFAULT_PROPS = {
14
+ variant: 'dark'
15
+ };
@@ -0,0 +1,90 @@
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
+ require("react-perfect-scrollbar/dist/css/styles.css");
10
+ var _classesUtils = require("../../utils/classesUtils");
11
+ var _WithTheme = _interopRequireDefault(require("../WithTheme"));
12
+ var _UTButton = _interopRequireDefault(require("../UTButton"));
13
+ var _UTLabel = _interopRequireDefault(require("../UTLabel"));
14
+ var _StepImage = _interopRequireDefault(require("./components/StepImage"));
15
+ var _theme = require("./theme");
16
+ var _utils = require("./utils");
17
+ var _constants = require("./constants");
18
+ var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
19
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
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); }
21
+ 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; }
22
+ const UTWizard = _ref => {
23
+ let {
24
+ classes: themeClasses,
25
+ classNames,
26
+ description,
27
+ enabled,
28
+ handleOnClick,
29
+ image,
30
+ title,
31
+ variant
32
+ } = _ref;
33
+ const classes = (0, _react.useMemo)(() => (0, _classesUtils.mergeClasses)(themeClasses, classNames), [classNames]);
34
+ const [isOpen, setIsOpen] = (0, _react.useState)(false);
35
+ const stepEnabled = enabled && !!(description || image || title);
36
+ return stepEnabled && (isOpen ? /*#__PURE__*/_react.default.createElement("div", {
37
+ className: "".concat(classes.container, " ").concat(_stylesModule.default.container)
38
+ }, /*#__PURE__*/_react.default.createElement("div", {
39
+ className: _stylesModule.default.content
40
+ }, /*#__PURE__*/_react.default.createElement("div", {
41
+ className: _stylesModule.default.header
42
+ }, /*#__PURE__*/_react.default.createElement("div", {
43
+ className: _stylesModule.default.title
44
+ }, /*#__PURE__*/_react.default.createElement(_UTLabel.default, {
45
+ weight: "medium",
46
+ colorTheme: (0, _utils.getLabelTheme)(variant),
47
+ withMarkdown: true
48
+ }, title), /*#__PURE__*/_react.default.createElement(_UTButton.default, {
49
+ Icon: "IconChevronDown",
50
+ onClick: () => setIsOpen(false),
51
+ size: "small",
52
+ variant: "text",
53
+ colorTheme: (0, _utils.getButtonTheme)(variant)
54
+ })), /*#__PURE__*/_react.default.createElement(_UTLabel.default, {
55
+ variant: "small",
56
+ colorTheme: (0, _utils.getLabelTheme)(variant),
57
+ withMarkdown: true
58
+ }, description)), image && /*#__PURE__*/_react.default.createElement(_StepImage.default, {
59
+ Image: image
60
+ }), /*#__PURE__*/_react.default.createElement("div", {
61
+ className: _stylesModule.default.footer
62
+ }, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
63
+ variant: "text",
64
+ onClick: handleOnClick,
65
+ size: "small",
66
+ colorTheme: (0, _utils.getButtonTheme)(variant),
67
+ weight: "medium"
68
+ }, _constants.DISABLE_TEXT)))) : /*#__PURE__*/_react.default.createElement("div", {
69
+ className: "".concat(classes.buttonContainer, " ").concat(_stylesModule.default.buttonContainer)
70
+ }, /*#__PURE__*/_react.default.createElement(_UTButton.default, {
71
+ size: "small",
72
+ classNames: {
73
+ root: "".concat(_stylesModule.default.button, " ").concat(classes.buttonStyle)
74
+ },
75
+ onClick: () => setIsOpen(true),
76
+ colorTheme: (0, _utils.getButtonMinimizedTheme)(variant),
77
+ Icon: "IconQuestionMark"
78
+ })));
79
+ };
80
+ UTWizard.propTypes = {
81
+ classes: (0, _propTypes.objectOf)(_propTypes.string),
82
+ classNames: (0, _propTypes.objectOf)(_propTypes.string),
83
+ description: _propTypes.string,
84
+ enabled: _propTypes.bool,
85
+ handleOnClick: _propTypes.func,
86
+ image: (0, _propTypes.oneOfType)([_propTypes.string, _propTypes.elementType]),
87
+ title: _propTypes.string,
88
+ variant: _propTypes.string
89
+ };
90
+ var _default = exports.default = (0, _WithTheme.default)(_theme.retrieveStyle)(UTWizard);
@@ -0,0 +1,54 @@
1
+ .container {
2
+ border-radius: 4px;
3
+ bottom: calc(100% + 16px);
4
+ display: flex;
5
+ height: fit-content;
6
+ max-width: 296px;
7
+ padding: 16px;
8
+ position: absolute;
9
+ right: 16px;
10
+ z-index: 9999;
11
+ }
12
+
13
+ .content {
14
+ display: flex;
15
+ flex-direction: column;
16
+ gap: 16px;
17
+ justify-content: center;
18
+ max-width: 264px;
19
+ width: 100%;
20
+ }
21
+
22
+ .header {
23
+ display: flex;
24
+ flex-direction: column;
25
+ gap: 4px;
26
+ width: 264px;
27
+ }
28
+
29
+ .footer {
30
+ display: flex;
31
+ justify-content: flex-end;
32
+ width: 100%;
33
+ }
34
+
35
+ .title {
36
+ align-items: center;
37
+ display: flex;
38
+ flex-direction: row;
39
+ justify-content: space-between;
40
+ }
41
+
42
+ .buttonContainer {
43
+ bottom: calc(100% + 16px);
44
+ display: flex;
45
+ position: absolute;
46
+ right: 16px;
47
+ z-index: 9999;
48
+ }
49
+
50
+ .button {
51
+ border-radius: 50% !important;
52
+ height: 48px;
53
+ width: 48px;
54
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.retrieveStyle = void 0;
7
+ var _constants = require("./constants");
8
+ var _utils = require("./utils");
9
+ const getBackgroundColor = _ref => {
10
+ let {
11
+ theme,
12
+ variant
13
+ } = _ref;
14
+ return variant === _constants.VARIANTS.light ? theme.Palette.light['01'] : theme.Palette[variant]['05'];
15
+ };
16
+ const retrieveStyle = _ref2 => {
17
+ let {
18
+ theme,
19
+ variant
20
+ } = _ref2;
21
+ const variantTheme = (0, _utils.getVariant)(variant);
22
+ return {
23
+ container: {
24
+ backgroundColor: getBackgroundColor({
25
+ theme,
26
+ variant: variantTheme
27
+ })
28
+ },
29
+ buttonStyle: {
30
+ backgroundColor: "".concat(getBackgroundColor({
31
+ theme,
32
+ variant: variantTheme
33
+ }), " !important")
34
+ }
35
+ };
36
+ };
37
+ exports.retrieveStyle = retrieveStyle;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getVariant = exports.getLabelTheme = exports.getButtonTheme = exports.getButtonMinimizedTheme = void 0;
7
+ var _constants = require("./constants");
8
+ const getVariant = variant => _constants.VARIANTS[variant] || _constants.VARIANTS[_constants.DEFAULT_PROPS.variant];
9
+ exports.getVariant = getVariant;
10
+ const getLabelTheme = variant => ({
11
+ [_constants.VARIANTS.dark]: 'light',
12
+ [_constants.VARIANTS.information]: 'light',
13
+ [_constants.VARIANTS.light]: 'dark'
14
+ })[getVariant(variant)];
15
+ exports.getLabelTheme = getLabelTheme;
16
+ const getButtonTheme = variant => ({
17
+ [_constants.VARIANTS.dark]: 'negative',
18
+ [_constants.VARIANTS.information]: 'negative',
19
+ [_constants.VARIANTS.light]: 'dark'
20
+ })[getVariant(variant)];
21
+ exports.getButtonTheme = getButtonTheme;
22
+ const getButtonMinimizedTheme = variant => ({
23
+ [_constants.VARIANTS.dark]: 'secondary',
24
+ [_constants.VARIANTS.information]: 'secondary',
25
+ [_constants.VARIANTS.light]: 'negative'
26
+ })[getVariant(variant)];
27
+ exports.getButtonMinimizedTheme = getButtonMinimizedTheme;
@@ -12,6 +12,7 @@ var _UTLabel = _interopRequireDefault(require("../../../UTLabel"));
12
12
  var _UTProgressBar = _interopRequireDefault(require("../../../UTProgressBar"));
13
13
  var _WithTheme = _interopRequireDefault(require("../../../WithTheme"));
14
14
  var _classesUtils = require("../../../../utils/classesUtils");
15
+ var _UTWizard = _interopRequireDefault(require("../../../UTWizard"));
15
16
  var _ActionButton = _interopRequireDefault(require("./components/ActionButton"));
16
17
  var _constants = require("./constants");
17
18
  var _types = require("./types");
@@ -21,6 +22,7 @@ var _usePrevious = require("./hooks/use-previous");
21
22
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
23
  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
24
  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; }
25
+ 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); }
24
26
  const UTWorkflowContainer = _ref => {
25
27
  let {
26
28
  backButton,
@@ -39,7 +41,8 @@ const UTWorkflowContainer = _ref => {
39
41
  subtitle,
40
42
  title,
41
43
  TitleIcon,
42
- withIcon = false
44
+ withIcon = false,
45
+ wizardConfig = {}
43
46
  } = _ref;
44
47
  (0, _react.useEffect)(() => () => onExit && onExit(), []);
45
48
  const classes = (0, _react.useMemo)(() => (0, _classesUtils.mergeClasses)(themeClasses, classNames), [classNames]);
@@ -104,7 +107,12 @@ const UTWorkflowContainer = _ref => {
104
107
  className: _stylesModule.default.subtitle,
105
108
  colorTheme: "gray",
106
109
  withMarkdown: true
107
- }, subtitle)), children)));
110
+ }, subtitle)), children), /*#__PURE__*/_react.default.createElement(_UTWizard.default, _extends({
111
+ classNames: {
112
+ container: _stylesModule.default.wizardContainer,
113
+ buttonContainer: _stylesModule.default.wizardButtonContainer
114
+ }
115
+ }, wizardConfig))));
108
116
  };
109
117
  UTWorkflowContainer.propTypes = {
110
118
  backButton: _types.buttonTypes,
@@ -123,6 +131,13 @@ UTWorkflowContainer.propTypes = {
123
131
  subtitle: _propTypes.string,
124
132
  title: _propTypes.string,
125
133
  TitleIcon: _propTypes.element,
126
- withIcon: _propTypes.bool
134
+ withIcon: _propTypes.bool,
135
+ wizardConfig: (0, _propTypes.shape)({
136
+ description: _propTypes.string,
137
+ enabled: _propTypes.bool,
138
+ handleOnClick: _propTypes.func,
139
+ title: _propTypes.string,
140
+ variant: _propTypes.string
141
+ })
127
142
  };
128
143
  var _default = exports.default = (0, _WithTheme.default)(_theme.retrieveStyle)(UTWorkflowContainer);
@@ -33,3 +33,11 @@
33
33
  .hidden {
34
34
  display: none;
35
35
  }
36
+
37
+ .wizardButtonContainer {
38
+ bottom: 16px;
39
+ }
40
+
41
+ .wizardContainer {
42
+ bottom: 16px;
43
+ }
@@ -13,6 +13,7 @@ var _UTHeader = _interopRequireDefault(require("../../../UTHeader"));
13
13
  var _UTStepper = _interopRequireDefault(require("../../../UTStepper"));
14
14
  var _UTCheckbox = _interopRequireDefault(require("../../../UTCheckbox"));
15
15
  var _useScreenSize = require("../../../../utils/useScreenSize");
16
+ var _UTWizard = _interopRequireDefault(require("../../../UTWizard"));
16
17
  var _NavActions = _interopRequireDefault(require("./components/NavActions"));
17
18
  var _types = require("./types");
18
19
  var _stylesModule = _interopRequireDefault(require("./styles.module.scss"));
@@ -46,7 +47,8 @@ const UTWorkflowContainer = _ref => {
46
47
  title,
47
48
  variant = _constants.VARIANTS.DEFAULT,
48
49
  withIcon = false,
49
- withStepperPadding = true
50
+ withStepperPadding = true,
51
+ wizardConfig = {}
50
52
  } = _ref;
51
53
  (0, _react.useEffect)(() => () => onExit && onExit(), []);
52
54
  const classes = (0, _react.useMemo)(() => (0, _classesUtils.mergeClasses)(themeClasses, classNames), [classNames]);
@@ -82,7 +84,9 @@ const UTWorkflowContainer = _ref => {
82
84
  className: "".concat(_stylesModule.default.childrenContainer, " ").concat(classes.childrenContainer, " ").concat(variant === _constants.VARIANTS.FULL_WIDTH && "".concat(_stylesModule.default.childrenContainerFullWidth, " ").concat(classes.childrenContainerFullWidth))
83
85
  }, /*#__PURE__*/_react.default.createElement("div", {
84
86
  className: "".concat(_constants.childrenContentStyle[variant] || _stylesModule.default.childrenContent, " ").concat(classes.childrenContent)
85
- }, children))), !isNavHidden && /*#__PURE__*/_react.default.createElement("div", {
87
+ }, children))), /*#__PURE__*/_react.default.createElement("div", {
88
+ className: _stylesModule.default.footer
89
+ }, /*#__PURE__*/_react.default.createElement(_UTWizard.default, wizardConfig), !isNavHidden && /*#__PURE__*/_react.default.createElement("div", {
86
90
  className: "".concat(classes.bottomNav, " ").concat(_stylesModule.default.bottomNav)
87
91
  }, checkbox && isMobileOrTablet && /*#__PURE__*/_react.default.createElement("div", {
88
92
  className: _stylesModule.default.mobileCheckboxContainer
@@ -103,7 +107,7 @@ const UTWorkflowContainer = _ref => {
103
107
  primaryAction: primaryAction,
104
108
  secondaryAction: secondaryAction,
105
109
  withIcon: withIcon
106
- })));
110
+ }))));
107
111
  };
108
112
  UTWorkflowContainer.propTypes = {
109
113
  backButton: _types.buttonTypes,
@@ -134,6 +138,13 @@ UTWorkflowContainer.propTypes = {
134
138
  title: _propTypes.string,
135
139
  variant: _propTypes.string,
136
140
  withIcon: _propTypes.bool,
137
- withStepperPadding: _propTypes.bool
141
+ withStepperPadding: _propTypes.bool,
142
+ wizardConfig: (0, _propTypes.shape)({
143
+ description: _propTypes.string,
144
+ enabled: _propTypes.bool,
145
+ handleOnClick: _propTypes.func,
146
+ title: _propTypes.string,
147
+ variant: _propTypes.string
148
+ })
138
149
  };
139
150
  var _default = exports.default = (0, _WithTheme.default)(_theme.retrieveStyle)(UTWorkflowContainer);
@@ -92,3 +92,9 @@
92
92
  .mobileCheckboxContainer {
93
93
  padding-left: 16px;
94
94
  }
95
+
96
+ .footer {
97
+ display: flex;
98
+ position: relative;
99
+ width: 100%;
100
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@widergy/energy-ui",
3
- "version": "3.8.0",
3
+ "version": "3.9.0",
4
4
  "description": "Widergy Web Components",
5
5
  "author": "widergy",
6
6
  "license": "MIT",