@widergy/energy-ui 1.134.5 → 1.135.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.
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = void 0;
8
8
  var _react = _interopRequireWildcard(require("react"));
9
9
  var _propTypes = require("prop-types");
10
+ var _reactRedux = require("react-redux");
10
11
  var _WithTheme = _interopRequireDefault(require("../WithTheme"));
11
12
  var _UTMenu = _interopRequireDefault(require("../UTMenu"));
12
13
  var _UTTouchableWithoutFeedback = _interopRequireDefault(require("../UTTouchableWithoutFeedback"));
@@ -42,8 +43,10 @@ var UTBreadcrumbs = function UTBreadcrumbs(_ref) {
42
43
  _ref$menuProps = _ref.menuProps,
43
44
  menuProps = _ref$menuProps === void 0 ? {} : _ref$menuProps,
44
45
  onRedirect = _ref.onRedirect,
46
+ onSetAction = _ref.onSetAction,
45
47
  _ref$separator = _ref.separator,
46
48
  separator = _ref$separator === void 0 ? _constants.DEFAULT_SEPARATOR : _ref$separator;
49
+ var dispatch = (0, _reactRedux.useDispatch)();
47
50
  var classes = (0, _react.useMemo)(function () {
48
51
  return (0, _classesUtils.mergeClasses)(themeClasses, classNames);
49
52
  }, [classNames]);
@@ -118,6 +121,20 @@ var UTBreadcrumbs = function UTBreadcrumbs(_ref) {
118
121
  items: []
119
122
  });
120
123
  };
124
+ var handleClickOptions = function handleClickOptions(options, route, id) {
125
+ var indexOfCurrentBreadcrumb = breadcrumbs.findIndex(function (breadcrumb) {
126
+ return breadcrumb.id === id;
127
+ });
128
+ if (indexOfCurrentBreadcrumb !== breadcrumbs.length - 1) {
129
+ if (options.setAction) {
130
+ onSetAction(options.setAction, options.params);
131
+ }
132
+ if (options.updatedBreadcrumbs) {
133
+ dispatch(options.updatedBreadcrumbs(breadcrumbs.slice(0, indexOfCurrentBreadcrumb + 1)));
134
+ }
135
+ onRedirect(route);
136
+ }
137
+ };
121
138
  return /*#__PURE__*/_react.default.createElement("div", {
122
139
  className: _stylesModule.default.breadcrumbs,
123
140
  ref: containerRef
@@ -125,23 +142,29 @@ var UTBreadcrumbs = function UTBreadcrumbs(_ref) {
125
142
  var route = _ref3.route,
126
143
  label = _ref3.label,
127
144
  menuItems = _ref3.menuItems,
128
- itemClassName = _ref3.itemClassName;
145
+ itemClassName = _ref3.itemClassName,
146
+ _ref3$options = _ref3.options,
147
+ options = _ref3$options === void 0 ? {} : _ref3$options,
148
+ _ref3$id = _ref3.id,
149
+ id = _ref3$id === void 0 ? Math.random() : _ref3$id;
129
150
  var handleClick = function handleClick(event) {
130
151
  if (menuItems) setMenu({
131
152
  anchor: event.currentTarget,
132
153
  items: _toConsumableArray(menuItems).map(function (_ref4) {
133
154
  var menuItemLabel = _ref4.label,
134
- menuItemRoute = _ref4.route;
155
+ menuItemRoute = _ref4.route,
156
+ menuItemOptions = _ref4.options,
157
+ menuItemId = _ref4.id;
135
158
  return {
136
159
  label: menuItemLabel,
137
160
  onClick: function onClick() {
138
161
  setContent(breadcrumbs);
139
162
  handleCloseMenu();
140
- onRedirect(menuItemRoute);
163
+ handleClickOptions(menuItemOptions, menuItemRoute, menuItemId);
141
164
  }
142
165
  };
143
166
  })
144
- });else onRedirect(route);
167
+ });else handleClickOptions(options, route, id);
145
168
  };
146
169
  var isLast = index === content.length - 1;
147
170
  return /*#__PURE__*/_react.default.createElement("div", {
@@ -171,6 +194,7 @@ UTBreadcrumbs.propTypes = {
171
194
  elipsis: _propTypes.string,
172
195
  elipsisWidthEstimate: _propTypes.number,
173
196
  onRedirect: _propTypes.func,
197
+ onSetAction: _propTypes.func,
174
198
  menuProps: _propTypes.object,
175
199
  separator: _propTypes.string
176
200
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@widergy/energy-ui",
3
- "version": "1.134.5",
3
+ "version": "1.135.0",
4
4
  "description": "Widergy Web Components",
5
5
  "author": "widergy",
6
6
  "license": "MIT",
@@ -19,7 +19,7 @@
19
19
  "prebuild": "rimraf dist",
20
20
  "build": "NODE_ENV=production babel src/lib --out-dir dist --copy-files",
21
21
  "sass-lint": "./node_modules/sass-lint/bin/sass-lint.js -v -q",
22
- "prepublish": "npm run build",
22
+ "prepare": "npm run build",
23
23
  "dev": "nodemon -e scss,js -x yalc publish --push"
24
24
  },
25
25
  "dependencies": {
@@ -31,7 +31,7 @@
31
31
  "@tippy.js/react": "^3.0.0",
32
32
  "@trainline/react-skeletor": "^1.0.2",
33
33
  "@widergy/energy-hooks": "^1.0.0",
34
- "@widergy/web-utils": ">=1.0.0",
34
+ "@widergy/web-utils": "^1.0.0",
35
35
  "autoprefixer": "^9.5.0",
36
36
  "babel-plugin-inline-react-svg": "^1.1.0",
37
37
  "babel-plugin-named-asset-import": "^0.3.2",