@nulogy/components 8.4.2 → 8.4.4

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/dist/main.js CHANGED
@@ -16948,55 +16948,30 @@
16948
16948
  })));
16949
16949
  };
16950
16950
 
16951
- var getMenuMargin = function getMenuMargin(placement, showArrow) {
16952
- var direction = String(placement).split("-")[0];
16953
-
16954
- switch (direction) {
16955
- case "top":
16956
- return {
16957
- marginBottom: showArrow ? "4px" : null
16958
- };
16959
-
16960
- case "right":
16961
- return {
16962
- marginLeft: showArrow ? "8px" : null,
16963
- marginTop: showArrow ? null : "-8px"
16964
- };
16965
-
16966
- case "left":
16967
- return {
16968
- marginRight: showArrow ? "8px" : null,
16969
- marginTop: showArrow ? null : "-8px"
16970
- };
16951
+ function _extends$1() { _extends$1 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
16952
+ var propType = PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string, PropTypes__default['default'].array, PropTypes__default['default'].object]);
16953
+ var createPropTypes = function createPropTypes(props) {
16954
+ return props.reduce(function (acc, name) {
16955
+ var _extends2;
16971
16956
 
16972
- case "bottom":
16973
- default:
16974
- return {
16975
- marginTop: showArrow ? "4px" : null
16976
- };
16977
- }
16957
+ return _extends$1({}, acc, (_extends2 = {}, _extends2[name] = propType, _extends2));
16958
+ }, {});
16959
+ };
16960
+ var propTypes = {
16961
+ space: createPropTypes(space.propNames),
16962
+ color: createPropTypes(color.propNames),
16963
+ layout: createPropTypes(layout.propNames),
16964
+ typography: createPropTypes(typography.propNames),
16965
+ flexbox: createPropTypes(flexbox.propNames),
16966
+ border: createPropTypes(border.propNames),
16967
+ background: createPropTypes(background.propNames),
16968
+ position: createPropTypes(position.propNames),
16969
+ grid: createPropTypes(grid.propNames),
16970
+ shadow: createPropTypes(shadow.propNames),
16971
+ buttonStyle: createPropTypes(buttonStyle.propNames),
16972
+ textStyle: createPropTypes(textStyle.propNames),
16973
+ colorStyle: createPropTypes(colorStyle.propNames)
16978
16974
  };
16979
-
16980
- var DropdownMenuContainer = styled__default['default'](Box).withConfig({
16981
- displayName: "DropdownMenuContainer",
16982
- componentId: "sc-12o3dvc-0"
16983
- })(color, function (_ref) {
16984
- var dataPlacement = _ref.dataPlacement,
16985
- _ref$showArrow = _ref.showArrow,
16986
- showArrow = _ref$showArrow === void 0 ? true : _ref$showArrow,
16987
- _ref$backgroundColor = _ref.backgroundColor,
16988
- backgroundColor = _ref$backgroundColor === void 0 ? "white" : _ref$backgroundColor,
16989
- theme = _ref.theme;
16990
- return Object.assign({
16991
- borderRadius: theme.radii.medium,
16992
- backgroundColor: theme.colors[backgroundColor],
16993
- borderTop: "1px solid " + theme.colors[backgroundColor],
16994
- borderBottom: "1px solid " + theme.colors[backgroundColor],
16995
- boxShadow: theme.shadows.medium,
16996
- padding: "7px 0",
16997
- zIndex: "100"
16998
- }, getMenuMargin(dataPlacement, showArrow));
16999
- });
17000
16975
 
17001
16976
  /**!
17002
16977
  * @fileOverview Kickass library to create and place poppers near their reference elements.
@@ -17407,7 +17382,7 @@
17407
17382
  return obj;
17408
17383
  };
17409
17384
 
17410
- var _extends$1 = Object.assign || function (target) {
17385
+ var _extends = Object.assign || function (target) {
17411
17386
  for (var i = 1; i < arguments.length; i++) {
17412
17387
  var source = arguments[i];
17413
17388
 
@@ -17429,7 +17404,7 @@
17429
17404
  * @returns {Object} ClientRect like output
17430
17405
  */
17431
17406
  function getClientRect(offsets) {
17432
- return _extends$1({}, offsets, {
17407
+ return _extends({}, offsets, {
17433
17408
  right: offsets.left + offsets.width,
17434
17409
  bottom: offsets.top + offsets.height
17435
17410
  });
@@ -17717,7 +17692,7 @@
17717
17692
  };
17718
17693
 
17719
17694
  var sortedAreas = Object.keys(rects).map(function (key) {
17720
- return _extends$1({
17695
+ return _extends({
17721
17696
  key: key
17722
17697
  }, rects[key], {
17723
17698
  area: getArea(rects[key])
@@ -18359,9 +18334,9 @@
18359
18334
  };
18360
18335
 
18361
18336
  // Update `data` attributes, styles and arrowStyles
18362
- data.attributes = _extends$1({}, attributes, data.attributes);
18363
- data.styles = _extends$1({}, styles, data.styles);
18364
- data.arrowStyles = _extends$1({}, data.offsets.arrow, data.arrowStyles);
18337
+ data.attributes = _extends({}, attributes, data.attributes);
18338
+ data.styles = _extends({}, styles, data.styles);
18339
+ data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);
18365
18340
 
18366
18341
  return data;
18367
18342
  }
@@ -18641,7 +18616,7 @@
18641
18616
 
18642
18617
  // this object contains `position`, we want to preserve it along with
18643
18618
  // any additional property we may add in the future
18644
- data.offsets.popper = _extends$1({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
18619
+ data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
18645
18620
 
18646
18621
  data = runModifiers(data.instance.modifiers, data, 'flip');
18647
18622
  }
@@ -18915,7 +18890,7 @@
18915
18890
 
18916
18891
  order.forEach(function (placement) {
18917
18892
  var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';
18918
- popper = _extends$1({}, popper, check[side](placement));
18893
+ popper = _extends({}, popper, check[side](placement));
18919
18894
  });
18920
18895
 
18921
18896
  data.offsets.popper = popper;
@@ -18950,7 +18925,7 @@
18950
18925
  end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])
18951
18926
  };
18952
18927
 
18953
- data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]);
18928
+ data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);
18954
18929
  }
18955
18930
 
18956
18931
  return data;
@@ -19482,7 +19457,7 @@
19482
19457
  this.update = debounce$1(this.update.bind(this));
19483
19458
 
19484
19459
  // with {} we create a new object with the options inside it
19485
- this.options = _extends$1({}, Popper.Defaults, options);
19460
+ this.options = _extends({}, Popper.Defaults, options);
19486
19461
 
19487
19462
  // init state
19488
19463
  this.state = {
@@ -19497,13 +19472,13 @@
19497
19472
 
19498
19473
  // Deep merge modifiers options
19499
19474
  this.options.modifiers = {};
19500
- Object.keys(_extends$1({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
19501
- _this.options.modifiers[name] = _extends$1({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
19475
+ Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
19476
+ _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
19502
19477
  });
19503
19478
 
19504
19479
  // Refactoring modifiers' list (Object => Array)
19505
19480
  this.modifiers = Object.keys(this.options.modifiers).map(function (name) {
19506
- return _extends$1({
19481
+ return _extends({
19507
19482
  name: name
19508
19483
  }, _this.options.modifiers[name]);
19509
19484
  })
@@ -20039,7 +20014,7 @@
20039
20014
  };
20040
20015
 
20041
20016
  var onClickEventHandlers = openOnClick ? {
20042
- onMouseDown: function onMouseDown() {
20017
+ onClick: function onClick() {
20043
20018
  if (isOpen) {
20044
20019
  closePopUp(false);
20045
20020
  } else {
@@ -20150,31 +20125,6 @@
20150
20125
  closeAriaLabel: undefined
20151
20126
  };
20152
20127
 
20153
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
20154
- var propType = PropTypes__default['default'].oneOfType([PropTypes__default['default'].number, PropTypes__default['default'].string, PropTypes__default['default'].array, PropTypes__default['default'].object]);
20155
- var createPropTypes = function createPropTypes(props) {
20156
- return props.reduce(function (acc, name) {
20157
- var _extends2;
20158
-
20159
- return _extends({}, acc, (_extends2 = {}, _extends2[name] = propType, _extends2));
20160
- }, {});
20161
- };
20162
- var propTypes = {
20163
- space: createPropTypes(space.propNames),
20164
- color: createPropTypes(color.propNames),
20165
- layout: createPropTypes(layout.propNames),
20166
- typography: createPropTypes(typography.propNames),
20167
- flexbox: createPropTypes(flexbox.propNames),
20168
- border: createPropTypes(border.propNames),
20169
- background: createPropTypes(background.propNames),
20170
- position: createPropTypes(position.propNames),
20171
- grid: createPropTypes(grid.propNames),
20172
- shadow: createPropTypes(shadow.propNames),
20173
- buttonStyle: createPropTypes(buttonStyle.propNames),
20174
- textStyle: createPropTypes(textStyle.propNames),
20175
- colorStyle: createPropTypes(colorStyle.propNames)
20176
- };
20177
-
20178
20128
  var getSubset = function getSubset(o, propObj) {
20179
20129
  var fields = Object.keys(propObj);
20180
20130
  return pick.apply(void 0, [o].concat(fields));
@@ -20201,6 +20151,56 @@
20201
20151
  }, {});
20202
20152
  };
20203
20153
 
20154
+ var getMenuMargin = function getMenuMargin(placement, showArrow) {
20155
+ var direction = String(placement).split("-")[0];
20156
+
20157
+ switch (direction) {
20158
+ case "top":
20159
+ return {
20160
+ marginBottom: showArrow ? "4px" : null
20161
+ };
20162
+
20163
+ case "right":
20164
+ return {
20165
+ marginLeft: showArrow ? "8px" : null,
20166
+ marginTop: showArrow ? null : "-8px"
20167
+ };
20168
+
20169
+ case "left":
20170
+ return {
20171
+ marginRight: showArrow ? "8px" : null,
20172
+ marginTop: showArrow ? null : "-8px"
20173
+ };
20174
+
20175
+ case "bottom":
20176
+ default:
20177
+ return {
20178
+ marginTop: showArrow ? "4px" : null
20179
+ };
20180
+ }
20181
+ };
20182
+
20183
+ var DropdownMenuContainer = styled__default['default'](Box).withConfig({
20184
+ displayName: "DropdownMenuContainer",
20185
+ componentId: "sc-12o3dvc-0"
20186
+ })(color, function (_ref) {
20187
+ var dataPlacement = _ref.dataPlacement,
20188
+ _ref$showArrow = _ref.showArrow,
20189
+ showArrow = _ref$showArrow === void 0 ? true : _ref$showArrow,
20190
+ _ref$backgroundColor = _ref.backgroundColor,
20191
+ backgroundColor = _ref$backgroundColor === void 0 ? "white" : _ref$backgroundColor,
20192
+ theme = _ref.theme;
20193
+ return Object.assign({
20194
+ borderRadius: theme.radii.medium,
20195
+ backgroundColor: theme.colors[backgroundColor],
20196
+ borderTop: "1px solid " + theme.colors[backgroundColor],
20197
+ borderBottom: "1px solid " + theme.colors[backgroundColor],
20198
+ boxShadow: theme.shadows.medium,
20199
+ padding: "7px 0",
20200
+ zIndex: "100"
20201
+ }, getMenuMargin(dataPlacement, showArrow));
20202
+ });
20203
+
20204
20204
  var DEFAULT_POPPER_MODIFIERS = {
20205
20205
  preventOverflow: {
20206
20206
  enabled: true,
@@ -21754,7 +21754,7 @@
21754
21754
  layer: layer
21755
21755
  }));
21756
21756
  });
21757
- var SubMenuItemsList$1 = styled__default['default'].ul.withConfig({
21757
+ var SubMenuItemsList$2 = styled__default['default'].ul.withConfig({
21758
21758
  displayName: "MobileMenu__SubMenuItemsList",
21759
21759
  componentId: "vqy2lk-4"
21760
21760
  })({
@@ -21852,7 +21852,7 @@
21852
21852
  linkOnClick = _ref5.linkOnClick,
21853
21853
  themeColorObject = _ref5.themeColorObject,
21854
21854
  layer = _ref5.layer;
21855
- return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, getSubMenuHeading$1(layer, themeColorObject && themeColorObject.textColor, menuItem.name), /*#__PURE__*/React__default['default'].createElement(SubMenuItemsList$1, null, renderMenuItems$1(menuItem.items, linkOnClick, themeColorObject, layer + 1)));
21855
+ return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, getSubMenuHeading$1(layer, themeColorObject && themeColorObject.textColor, menuItem.name), /*#__PURE__*/React__default['default'].createElement(SubMenuItemsList$2, null, renderMenuItems$1(menuItem.items, linkOnClick, themeColorObject, layer + 1)));
21856
21856
  };
21857
21857
 
21858
21858
  var ThemeColorObjectPropTypes = {
@@ -43154,57 +43154,68 @@
43154
43154
  menuType = _a.menuType,
43155
43155
  props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer", "menuType"]);
43156
43156
 
43157
- return (
43158
- /*#__PURE__*/
43159
- // @ts-ignore
43160
- React__default['default'].createElement(NavBarDropdownMenu, Object.assign({
43161
- placement: getPlacement(menuType),
43162
- modifiers: null,
43163
- showArrow: true,
43164
- triggerTogglesMenuState: false
43165
- }, props, {
43166
- dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
43167
- var openMenu = _ref.openMenu,
43168
- closeMenu = _ref.closeMenu;
43169
- return {
43157
+ var theme = styled.useTheme();
43158
+ return /*#__PURE__*/React__default['default'].createElement(NavBarDropdownMenu, Object.assign({
43159
+ placement: getPlacement(menuType),
43160
+ modifiers: {
43161
+ preventOverflow: {
43162
+ enabled: true,
43163
+ padding: theme.space.x1,
43164
+ boundariesElement: "viewport"
43165
+ }
43166
+ },
43167
+ showArrow: true,
43168
+ triggerTogglesMenuState: false
43169
+ }, props, {
43170
+ dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
43171
+ var openMenu = _ref.openMenu,
43172
+ closeMenu = _ref.closeMenu;
43173
+ return {
43174
+ onMouseEnter: openMenu,
43175
+ onMouseLeave: closeMenu
43176
+ };
43177
+ },
43178
+ trigger: function trigger(_ref2) {
43179
+ var closeMenu = _ref2.closeMenu,
43180
+ openMenu = _ref2.openMenu,
43181
+ isOpen = _ref2.isOpen;
43182
+
43183
+ var defaultRender = function defaultRender() {
43184
+ return /*#__PURE__*/React__default['default'].createElement(SubMenuTriggerButton, {
43185
+ isOpen: isOpen,
43186
+ name: name,
43170
43187
  onMouseEnter: openMenu,
43171
43188
  onMouseLeave: closeMenu
43172
- };
43173
- },
43174
- trigger: function trigger(_ref2) {
43175
- var closeMenu = _ref2.closeMenu,
43176
- openMenu = _ref2.openMenu,
43177
- isOpen = _ref2.isOpen;
43178
-
43179
- var defaultRender = function defaultRender() {
43180
- return /*#__PURE__*/React__default['default'].createElement(SubMenuTriggerButton, {
43181
- isOpen: isOpen,
43182
- name: name,
43183
- onMouseEnter: openMenu,
43184
- onMouseLeave: closeMenu
43185
- });
43186
- };
43189
+ });
43190
+ };
43187
43191
 
43188
- var triggerProps = {
43189
- size: "medium",
43190
- closeMenu: closeMenu,
43191
- openMenu: openMenu,
43192
- isOpen: isOpen,
43193
- defaultRender: defaultRender,
43194
- layer: layer
43195
- };
43196
- return _trigger ? _trigger(triggerProps) : defaultRender();
43197
- }
43198
- }), /*#__PURE__*/React__default['default'].createElement("ul", {
43199
- style: {
43200
- listStyle: "none",
43201
- margin: "0",
43202
- padding: "0"
43203
- }
43204
- }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)))
43205
- );
43192
+ var triggerProps = {
43193
+ size: "medium",
43194
+ closeMenu: closeMenu,
43195
+ openMenu: openMenu,
43196
+ isOpen: isOpen,
43197
+ defaultRender: defaultRender,
43198
+ layer: layer
43199
+ };
43200
+ return _trigger ? _trigger(triggerProps) : defaultRender();
43201
+ }
43202
+ }), /*#__PURE__*/React__default['default'].createElement(SubMenuItemsList$1, null, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)));
43206
43203
  };
43207
43204
 
43205
+ var SubMenuItemsList$1 = styled__default['default']("ul").withConfig({
43206
+ displayName: "SubMenuTrigger__SubMenuItemsList",
43207
+ componentId: "sc-1tg8y8b-0"
43208
+ })(function (_ref3) {
43209
+ var theme = _ref3.theme;
43210
+ return {
43211
+ listStyle: "none",
43212
+ margin: "0",
43213
+ padding: "0",
43214
+ maxHeight: "calc(100vh - " + NAVBAR_HEIGHT + " - " + theme.space.x3 + ")",
43215
+ overflowY: "auto"
43216
+ };
43217
+ }, addStyledProps);
43218
+
43208
43219
  function getPlacement(menuType) {
43209
43220
  switch (menuType) {
43210
43221
  case "primary":
@@ -43215,8 +43226,6 @@
43215
43226
  }
43216
43227
  }
43217
43228
 
43218
- SubMenuTrigger.displayName = "SubMenuTrigger";
43219
-
43220
43229
  var StyledButton = styled__default['default'].button.withConfig({
43221
43230
  displayName: "MenuTriggerButton__StyledButton",
43222
43231
  componentId: "sc-9xtkk1-0"
@@ -16922,55 +16922,30 @@ var Branding = function Branding(_a) {
16922
16922
  })));
16923
16923
  };
16924
16924
 
16925
- var getMenuMargin = function getMenuMargin(placement, showArrow) {
16926
- var direction = String(placement).split("-")[0];
16927
-
16928
- switch (direction) {
16929
- case "top":
16930
- return {
16931
- marginBottom: showArrow ? "4px" : null
16932
- };
16933
-
16934
- case "right":
16935
- return {
16936
- marginLeft: showArrow ? "8px" : null,
16937
- marginTop: showArrow ? null : "-8px"
16938
- };
16939
-
16940
- case "left":
16941
- return {
16942
- marginRight: showArrow ? "8px" : null,
16943
- marginTop: showArrow ? null : "-8px"
16944
- };
16925
+ function _extends$1() { _extends$1 = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1.apply(this, arguments); }
16926
+ var propType = PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.array, PropTypes.object]);
16927
+ var createPropTypes = function createPropTypes(props) {
16928
+ return props.reduce(function (acc, name) {
16929
+ var _extends2;
16945
16930
 
16946
- case "bottom":
16947
- default:
16948
- return {
16949
- marginTop: showArrow ? "4px" : null
16950
- };
16951
- }
16931
+ return _extends$1({}, acc, (_extends2 = {}, _extends2[name] = propType, _extends2));
16932
+ }, {});
16933
+ };
16934
+ var propTypes = {
16935
+ space: createPropTypes(space.propNames),
16936
+ color: createPropTypes(color.propNames),
16937
+ layout: createPropTypes(layout.propNames),
16938
+ typography: createPropTypes(typography.propNames),
16939
+ flexbox: createPropTypes(flexbox.propNames),
16940
+ border: createPropTypes(border.propNames),
16941
+ background: createPropTypes(background.propNames),
16942
+ position: createPropTypes(position.propNames),
16943
+ grid: createPropTypes(grid.propNames),
16944
+ shadow: createPropTypes(shadow.propNames),
16945
+ buttonStyle: createPropTypes(buttonStyle.propNames),
16946
+ textStyle: createPropTypes(textStyle.propNames),
16947
+ colorStyle: createPropTypes(colorStyle.propNames)
16952
16948
  };
16953
-
16954
- var DropdownMenuContainer = styled(Box).withConfig({
16955
- displayName: "DropdownMenuContainer",
16956
- componentId: "sc-12o3dvc-0"
16957
- })(color, function (_ref) {
16958
- var dataPlacement = _ref.dataPlacement,
16959
- _ref$showArrow = _ref.showArrow,
16960
- showArrow = _ref$showArrow === void 0 ? true : _ref$showArrow,
16961
- _ref$backgroundColor = _ref.backgroundColor,
16962
- backgroundColor = _ref$backgroundColor === void 0 ? "white" : _ref$backgroundColor,
16963
- theme = _ref.theme;
16964
- return Object.assign({
16965
- borderRadius: theme.radii.medium,
16966
- backgroundColor: theme.colors[backgroundColor],
16967
- borderTop: "1px solid " + theme.colors[backgroundColor],
16968
- borderBottom: "1px solid " + theme.colors[backgroundColor],
16969
- boxShadow: theme.shadows.medium,
16970
- padding: "7px 0",
16971
- zIndex: "100"
16972
- }, getMenuMargin(dataPlacement, showArrow));
16973
- });
16974
16949
 
16975
16950
  /**!
16976
16951
  * @fileOverview Kickass library to create and place poppers near their reference elements.
@@ -17381,7 +17356,7 @@ var defineProperty = function (obj, key, value) {
17381
17356
  return obj;
17382
17357
  };
17383
17358
 
17384
- var _extends$1 = Object.assign || function (target) {
17359
+ var _extends = Object.assign || function (target) {
17385
17360
  for (var i = 1; i < arguments.length; i++) {
17386
17361
  var source = arguments[i];
17387
17362
 
@@ -17403,7 +17378,7 @@ var _extends$1 = Object.assign || function (target) {
17403
17378
  * @returns {Object} ClientRect like output
17404
17379
  */
17405
17380
  function getClientRect(offsets) {
17406
- return _extends$1({}, offsets, {
17381
+ return _extends({}, offsets, {
17407
17382
  right: offsets.left + offsets.width,
17408
17383
  bottom: offsets.top + offsets.height
17409
17384
  });
@@ -17691,7 +17666,7 @@ function computeAutoPlacement(placement, refRect, popper, reference, boundariesE
17691
17666
  };
17692
17667
 
17693
17668
  var sortedAreas = Object.keys(rects).map(function (key) {
17694
- return _extends$1({
17669
+ return _extends({
17695
17670
  key: key
17696
17671
  }, rects[key], {
17697
17672
  area: getArea(rects[key])
@@ -18333,9 +18308,9 @@ function computeStyle(data, options) {
18333
18308
  };
18334
18309
 
18335
18310
  // Update `data` attributes, styles and arrowStyles
18336
- data.attributes = _extends$1({}, attributes, data.attributes);
18337
- data.styles = _extends$1({}, styles, data.styles);
18338
- data.arrowStyles = _extends$1({}, data.offsets.arrow, data.arrowStyles);
18311
+ data.attributes = _extends({}, attributes, data.attributes);
18312
+ data.styles = _extends({}, styles, data.styles);
18313
+ data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);
18339
18314
 
18340
18315
  return data;
18341
18316
  }
@@ -18615,7 +18590,7 @@ function flip(data, options) {
18615
18590
 
18616
18591
  // this object contains `position`, we want to preserve it along with
18617
18592
  // any additional property we may add in the future
18618
- data.offsets.popper = _extends$1({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
18593
+ data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
18619
18594
 
18620
18595
  data = runModifiers(data.instance.modifiers, data, 'flip');
18621
18596
  }
@@ -18889,7 +18864,7 @@ function preventOverflow(data, options) {
18889
18864
 
18890
18865
  order.forEach(function (placement) {
18891
18866
  var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';
18892
- popper = _extends$1({}, popper, check[side](placement));
18867
+ popper = _extends({}, popper, check[side](placement));
18893
18868
  });
18894
18869
 
18895
18870
  data.offsets.popper = popper;
@@ -18924,7 +18899,7 @@ function shift(data) {
18924
18899
  end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])
18925
18900
  };
18926
18901
 
18927
- data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]);
18902
+ data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);
18928
18903
  }
18929
18904
 
18930
18905
  return data;
@@ -19456,7 +19431,7 @@ var Popper$3 = function () {
19456
19431
  this.update = debounce$1(this.update.bind(this));
19457
19432
 
19458
19433
  // with {} we create a new object with the options inside it
19459
- this.options = _extends$1({}, Popper.Defaults, options);
19434
+ this.options = _extends({}, Popper.Defaults, options);
19460
19435
 
19461
19436
  // init state
19462
19437
  this.state = {
@@ -19471,13 +19446,13 @@ var Popper$3 = function () {
19471
19446
 
19472
19447
  // Deep merge modifiers options
19473
19448
  this.options.modifiers = {};
19474
- Object.keys(_extends$1({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
19475
- _this.options.modifiers[name] = _extends$1({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
19449
+ Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
19450
+ _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
19476
19451
  });
19477
19452
 
19478
19453
  // Refactoring modifiers' list (Object => Array)
19479
19454
  this.modifiers = Object.keys(this.options.modifiers).map(function (name) {
19480
- return _extends$1({
19455
+ return _extends({
19481
19456
  name: name
19482
19457
  }, _this.options.modifiers[name]);
19483
19458
  })
@@ -20013,7 +19988,7 @@ var Popper$1 = /*#__PURE__*/React__default.forwardRef(function (_ref, popperRef)
20013
19988
  };
20014
19989
 
20015
19990
  var onClickEventHandlers = openOnClick ? {
20016
- onMouseDown: function onMouseDown() {
19991
+ onClick: function onClick() {
20017
19992
  if (isOpen) {
20018
19993
  closePopUp(false);
20019
19994
  } else {
@@ -20124,31 +20099,6 @@ Popper$1.defaultProps = {
20124
20099
  closeAriaLabel: undefined
20125
20100
  };
20126
20101
 
20127
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
20128
- var propType = PropTypes.oneOfType([PropTypes.number, PropTypes.string, PropTypes.array, PropTypes.object]);
20129
- var createPropTypes = function createPropTypes(props) {
20130
- return props.reduce(function (acc, name) {
20131
- var _extends2;
20132
-
20133
- return _extends({}, acc, (_extends2 = {}, _extends2[name] = propType, _extends2));
20134
- }, {});
20135
- };
20136
- var propTypes = {
20137
- space: createPropTypes(space.propNames),
20138
- color: createPropTypes(color.propNames),
20139
- layout: createPropTypes(layout.propNames),
20140
- typography: createPropTypes(typography.propNames),
20141
- flexbox: createPropTypes(flexbox.propNames),
20142
- border: createPropTypes(border.propNames),
20143
- background: createPropTypes(background.propNames),
20144
- position: createPropTypes(position.propNames),
20145
- grid: createPropTypes(grid.propNames),
20146
- shadow: createPropTypes(shadow.propNames),
20147
- buttonStyle: createPropTypes(buttonStyle.propNames),
20148
- textStyle: createPropTypes(textStyle.propNames),
20149
- colorStyle: createPropTypes(colorStyle.propNames)
20150
- };
20151
-
20152
20102
  var getSubset = function getSubset(o, propObj) {
20153
20103
  var fields = Object.keys(propObj);
20154
20104
  return pick.apply(void 0, [o].concat(fields));
@@ -20175,6 +20125,56 @@ var pick = function pick(o) {
20175
20125
  }, {});
20176
20126
  };
20177
20127
 
20128
+ var getMenuMargin = function getMenuMargin(placement, showArrow) {
20129
+ var direction = String(placement).split("-")[0];
20130
+
20131
+ switch (direction) {
20132
+ case "top":
20133
+ return {
20134
+ marginBottom: showArrow ? "4px" : null
20135
+ };
20136
+
20137
+ case "right":
20138
+ return {
20139
+ marginLeft: showArrow ? "8px" : null,
20140
+ marginTop: showArrow ? null : "-8px"
20141
+ };
20142
+
20143
+ case "left":
20144
+ return {
20145
+ marginRight: showArrow ? "8px" : null,
20146
+ marginTop: showArrow ? null : "-8px"
20147
+ };
20148
+
20149
+ case "bottom":
20150
+ default:
20151
+ return {
20152
+ marginTop: showArrow ? "4px" : null
20153
+ };
20154
+ }
20155
+ };
20156
+
20157
+ var DropdownMenuContainer = styled(Box).withConfig({
20158
+ displayName: "DropdownMenuContainer",
20159
+ componentId: "sc-12o3dvc-0"
20160
+ })(color, function (_ref) {
20161
+ var dataPlacement = _ref.dataPlacement,
20162
+ _ref$showArrow = _ref.showArrow,
20163
+ showArrow = _ref$showArrow === void 0 ? true : _ref$showArrow,
20164
+ _ref$backgroundColor = _ref.backgroundColor,
20165
+ backgroundColor = _ref$backgroundColor === void 0 ? "white" : _ref$backgroundColor,
20166
+ theme = _ref.theme;
20167
+ return Object.assign({
20168
+ borderRadius: theme.radii.medium,
20169
+ backgroundColor: theme.colors[backgroundColor],
20170
+ borderTop: "1px solid " + theme.colors[backgroundColor],
20171
+ borderBottom: "1px solid " + theme.colors[backgroundColor],
20172
+ boxShadow: theme.shadows.medium,
20173
+ padding: "7px 0",
20174
+ zIndex: "100"
20175
+ }, getMenuMargin(dataPlacement, showArrow));
20176
+ });
20177
+
20178
20178
  var DEFAULT_POPPER_MODIFIERS = {
20179
20179
  preventOverflow: {
20180
20180
  enabled: true,
@@ -21728,7 +21728,7 @@ var MenuText$1 = styled.li.withConfig({
21728
21728
  layer: layer
21729
21729
  }));
21730
21730
  });
21731
- var SubMenuItemsList$1 = styled.ul.withConfig({
21731
+ var SubMenuItemsList$2 = styled.ul.withConfig({
21732
21732
  displayName: "MobileMenu__SubMenuItemsList",
21733
21733
  componentId: "vqy2lk-4"
21734
21734
  })({
@@ -21826,7 +21826,7 @@ var SubMenu$1 = function SubMenu(_ref5) {
21826
21826
  linkOnClick = _ref5.linkOnClick,
21827
21827
  themeColorObject = _ref5.themeColorObject,
21828
21828
  layer = _ref5.layer;
21829
- return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, getSubMenuHeading$1(layer, themeColorObject && themeColorObject.textColor, menuItem.name), /*#__PURE__*/React__default.createElement(SubMenuItemsList$1, null, renderMenuItems$1(menuItem.items, linkOnClick, themeColorObject, layer + 1)));
21829
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, getSubMenuHeading$1(layer, themeColorObject && themeColorObject.textColor, menuItem.name), /*#__PURE__*/React__default.createElement(SubMenuItemsList$2, null, renderMenuItems$1(menuItem.items, linkOnClick, themeColorObject, layer + 1)));
21830
21830
  };
21831
21831
 
21832
21832
  var ThemeColorObjectPropTypes = {
@@ -43128,57 +43128,68 @@ var SubMenuTrigger = function SubMenuTrigger(_a) {
43128
43128
  menuType = _a.menuType,
43129
43129
  props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer", "menuType"]);
43130
43130
 
43131
- return (
43132
- /*#__PURE__*/
43133
- // @ts-ignore
43134
- React__default.createElement(NavBarDropdownMenu, Object.assign({
43135
- placement: getPlacement(menuType),
43136
- modifiers: null,
43137
- showArrow: true,
43138
- triggerTogglesMenuState: false
43139
- }, props, {
43140
- dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
43141
- var openMenu = _ref.openMenu,
43142
- closeMenu = _ref.closeMenu;
43143
- return {
43131
+ var theme = useTheme();
43132
+ return /*#__PURE__*/React__default.createElement(NavBarDropdownMenu, Object.assign({
43133
+ placement: getPlacement(menuType),
43134
+ modifiers: {
43135
+ preventOverflow: {
43136
+ enabled: true,
43137
+ padding: theme.space.x1,
43138
+ boundariesElement: "viewport"
43139
+ }
43140
+ },
43141
+ showArrow: true,
43142
+ triggerTogglesMenuState: false
43143
+ }, props, {
43144
+ dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
43145
+ var openMenu = _ref.openMenu,
43146
+ closeMenu = _ref.closeMenu;
43147
+ return {
43148
+ onMouseEnter: openMenu,
43149
+ onMouseLeave: closeMenu
43150
+ };
43151
+ },
43152
+ trigger: function trigger(_ref2) {
43153
+ var closeMenu = _ref2.closeMenu,
43154
+ openMenu = _ref2.openMenu,
43155
+ isOpen = _ref2.isOpen;
43156
+
43157
+ var defaultRender = function defaultRender() {
43158
+ return /*#__PURE__*/React__default.createElement(SubMenuTriggerButton, {
43159
+ isOpen: isOpen,
43160
+ name: name,
43144
43161
  onMouseEnter: openMenu,
43145
43162
  onMouseLeave: closeMenu
43146
- };
43147
- },
43148
- trigger: function trigger(_ref2) {
43149
- var closeMenu = _ref2.closeMenu,
43150
- openMenu = _ref2.openMenu,
43151
- isOpen = _ref2.isOpen;
43152
-
43153
- var defaultRender = function defaultRender() {
43154
- return /*#__PURE__*/React__default.createElement(SubMenuTriggerButton, {
43155
- isOpen: isOpen,
43156
- name: name,
43157
- onMouseEnter: openMenu,
43158
- onMouseLeave: closeMenu
43159
- });
43160
- };
43163
+ });
43164
+ };
43161
43165
 
43162
- var triggerProps = {
43163
- size: "medium",
43164
- closeMenu: closeMenu,
43165
- openMenu: openMenu,
43166
- isOpen: isOpen,
43167
- defaultRender: defaultRender,
43168
- layer: layer
43169
- };
43170
- return _trigger ? _trigger(triggerProps) : defaultRender();
43171
- }
43172
- }), /*#__PURE__*/React__default.createElement("ul", {
43173
- style: {
43174
- listStyle: "none",
43175
- margin: "0",
43176
- padding: "0"
43177
- }
43178
- }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)))
43179
- );
43166
+ var triggerProps = {
43167
+ size: "medium",
43168
+ closeMenu: closeMenu,
43169
+ openMenu: openMenu,
43170
+ isOpen: isOpen,
43171
+ defaultRender: defaultRender,
43172
+ layer: layer
43173
+ };
43174
+ return _trigger ? _trigger(triggerProps) : defaultRender();
43175
+ }
43176
+ }), /*#__PURE__*/React__default.createElement(SubMenuItemsList$1, null, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)));
43180
43177
  };
43181
43178
 
43179
+ var SubMenuItemsList$1 = styled("ul").withConfig({
43180
+ displayName: "SubMenuTrigger__SubMenuItemsList",
43181
+ componentId: "sc-1tg8y8b-0"
43182
+ })(function (_ref3) {
43183
+ var theme = _ref3.theme;
43184
+ return {
43185
+ listStyle: "none",
43186
+ margin: "0",
43187
+ padding: "0",
43188
+ maxHeight: "calc(100vh - " + NAVBAR_HEIGHT + " - " + theme.space.x3 + ")",
43189
+ overflowY: "auto"
43190
+ };
43191
+ }, addStyledProps);
43192
+
43182
43193
  function getPlacement(menuType) {
43183
43194
  switch (menuType) {
43184
43195
  case "primary":
@@ -43189,8 +43200,6 @@ function getPlacement(menuType) {
43189
43200
  }
43190
43201
  }
43191
43202
 
43192
- SubMenuTrigger.displayName = "SubMenuTrigger";
43193
-
43194
43203
  var StyledButton = styled.button.withConfig({
43195
43204
  displayName: "MenuTriggerButton__StyledButton",
43196
43205
  componentId: "sc-9xtkk1-0"
@@ -10,8 +10,5 @@ declare type SubMenuTriggerProps = React.ComponentPropsWithRef<"button"> & {
10
10
  layer: number;
11
11
  menuType: MenuType;
12
12
  };
13
- declare const SubMenuTrigger: {
14
- ({ menuData, name, onItemClick, trigger, layer, menuType, ...props }: SubMenuTriggerProps): JSX.Element;
15
- displayName: string;
16
- };
13
+ declare const SubMenuTrigger: ({ menuData, name, onItemClick, trigger, layer, menuType, ...props }: SubMenuTriggerProps) => JSX.Element;
17
14
  export default SubMenuTrigger;
@@ -1,4 +1,5 @@
1
1
  import React from "react";
2
+ import { StyledProps } from "../StyledProps";
2
3
  declare type DropdownMenuProps = {
3
4
  className?: string;
4
5
  id?: string;
@@ -13,6 +14,6 @@ declare type DropdownMenuProps = {
13
14
  boundariesElement?: string;
14
15
  openAriaLabel?: string;
15
16
  closeAriaLabel?: string;
16
- };
17
+ } & StyledProps;
17
18
  declare const DropdownMenu: React.FC<DropdownMenuProps>;
18
19
  export default DropdownMenu;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nulogy/components",
3
- "version": "8.4.2",
3
+ "version": "8.4.4",
4
4
  "description": "Component library for the Nulogy Design System - http://nulogy.design",
5
5
  "private": false,
6
6
  "publishConfig": {