@bigbinary/neeto-commons-frontend 2.0.69 → 2.0.71

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/README.md CHANGED
@@ -51,6 +51,7 @@ Category
51
51
  - [useErrorDisplayStore](./docs/react/hooks.md#useerrordisplaystore)
52
52
  - [useHotKeys](./docs/react/hooks.md#useHotKeys)
53
53
  - [useTimer](./docs/react/hooks.md#useTimer)
54
+ - [useStateWithDependency](./docs/react/hooks.md#usestatewithdependency)
54
55
  - [withImmutableActions](./docs/react/utils.md#withimmutableactions)
55
56
  - [withTitle](./docs/react/utils.md#withtitle)
56
57
  - [registerBrowserNotifications](./docs/react/utils.md#registerbrowsernotifications)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-commons-frontend",
3
- "version": "2.0.69",
3
+ "version": "2.0.71",
4
4
  "description": "A package encapsulating common code across neeto projects including initializers, utility functions, common components and hooks and so on.",
5
5
  "repository": "git@github.com:bigbinary/neeto-commons-frontend.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -180,7 +180,7 @@ function _objectWithoutProperties(source, excluded) {
180
180
  return target;
181
181
  }
182
182
 
183
- var _excluded = ["condition", "redirectRoute", "errorPage"];
183
+ var _excluded = ["condition", "redirectRoute", "errorPage", "permissions"];
184
184
  var PrivateRoute = function PrivateRoute(_ref) {
185
185
  var _ref$condition = _ref.condition,
186
186
  condition = _ref$condition === void 0 ? globalProps.authenticated : _ref$condition,
@@ -188,17 +188,27 @@ var PrivateRoute = function PrivateRoute(_ref) {
188
188
  redirectRoute = _ref$redirectRoute === void 0 ? undefined : _ref$redirectRoute,
189
189
  _ref$errorPage = _ref.errorPage,
190
190
  errorPage = _ref$errorPage === void 0 ? undefined : _ref$errorPage,
191
+ _ref$permissions = _ref.permissions,
192
+ permissions = _ref$permissions === void 0 ? undefined : _ref$permissions,
191
193
  props = _objectWithoutProperties(_ref, _excluded);
192
- return (
193
- // eslint-disable-next-line no-nested-ternary
194
- condition ? /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Route, props) : redirectRoute ? /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Redirect, {
194
+ if (condition) {
195
+ if (permissions) {
196
+ return globalProps.permissions.some(ramda.includes(ramda.__, permissions)) ? /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Route, props) : errorPage || /*#__PURE__*/React__default["default"].createElement(ErrorPage__default["default"], {
197
+ status: 403
198
+ });
199
+ }
200
+ return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Route, props);
201
+ }
202
+ if (redirectRoute) {
203
+ return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Redirect, {
195
204
  to: {
196
205
  pathname: redirectRoute
197
206
  }
198
- }) : errorPage || /*#__PURE__*/React__default["default"].createElement(ErrorPage__default["default"], {
199
- status: "403"
200
- })
201
- );
207
+ });
208
+ }
209
+ return errorPage || /*#__PURE__*/React__default["default"].createElement(ErrorPage__default["default"], {
210
+ status: 403
211
+ });
202
212
  };
203
213
 
204
214
  function _arrayWithHoles(arr) {
@@ -3470,6 +3480,18 @@ var usePrevious = function usePrevious(value) {
3470
3480
  return ref.current;
3471
3481
  };
3472
3482
 
3483
+ var useStateWithDependency = function useStateWithDependency(defaultValue) {
3484
+ var dependencies = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [defaultValue];
3485
+ var _useState = React.useState(defaultValue),
3486
+ _useState2 = _slicedToArray(_useState, 2),
3487
+ value = _useState2[0],
3488
+ setValue = _useState2[1];
3489
+ React.useEffect(function () {
3490
+ setValue(defaultValue);
3491
+ }, dependencies);
3492
+ return [value, setValue];
3493
+ };
3494
+
3473
3495
  function _typeof$1(obj) {
3474
3496
  "@babel/helpers - typeof";
3475
3497
 
@@ -4712,6 +4734,7 @@ exports.useKeyboardShortcutsPaneState = useKeyboardShortcutsPaneState;
4712
4734
  exports.useLocalStorage = useLocalStorage;
4713
4735
  exports.useOnClickOutside = useOnClickOutside;
4714
4736
  exports.usePrevious = usePrevious;
4737
+ exports.useStateWithDependency = useStateWithDependency;
4715
4738
  exports.useTimer = useTimer;
4716
4739
  exports.useUpdateEffect = useUpdateEffect;
4717
4740
  exports.withImmutableActions = withImmutableActions;