@nulogy/components 8.1.3 → 8.1.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
@@ -42728,7 +42728,7 @@
42728
42728
  toggleMenu: PropTypes__default['default'].func
42729
42729
  }).isRequired,
42730
42730
  showArrow: PropTypes__default['default'].bool,
42731
- placement: PropTypes__default['default'].oneOf(["bottom-start", "right-start"]),
42731
+ placement: PropTypes__default['default'].oneOf(["bottom-start", "right-start", "left-start"]),
42732
42732
  modifiers: PropTypes__default['default'].shape({}),
42733
42733
  triggerTogglesMenuState: PropTypes__default['default'].bool,
42734
42734
  dropdownMenuContainerEventHandlers: PropTypes__default['default'].func
@@ -42748,7 +42748,7 @@
42748
42748
  hideDelay: "100"
42749
42749
  };
42750
42750
 
42751
- var renderSubMenuTrigger = function renderSubMenuTrigger(subMenuItem, onItemClick, SubMenuTrigger, layer) {
42751
+ var renderSubMenuTrigger = function renderSubMenuTrigger(subMenuItem, onItemClick, SubMenuTrigger, layer, menuType) {
42752
42752
  var _a;
42753
42753
 
42754
42754
  return /*#__PURE__*/React__default['default'].createElement(NoWrapLi, {
@@ -42758,7 +42758,8 @@
42758
42758
  name: subMenuItem.name,
42759
42759
  menuData: subMenuItem.items,
42760
42760
  trigger: subMenuItem.trigger,
42761
- layer: layer
42761
+ layer: layer,
42762
+ menuType: menuType
42762
42763
  }));
42763
42764
  };
42764
42765
 
@@ -42807,9 +42808,9 @@
42807
42808
  }
42808
42809
  };
42809
42810
 
42810
- var renderSubMenuItems = function renderSubMenuItems(subMenuItems, onItemClick, SubMenuTrigger, layer) {
42811
+ var renderSubMenuItems = function renderSubMenuItems(subMenuItems, onItemClick, SubMenuTrigger, layer, menuType) {
42811
42812
  return subMenuItems.map(function (subMenuItem) {
42812
- return getRenderFunction$2(subMenuItem)(subMenuItem, onItemClick, SubMenuTrigger, layer);
42813
+ return getRenderFunction$2(subMenuItem)(subMenuItem, onItemClick, SubMenuTrigger, layer, menuType);
42813
42814
  });
42814
42815
  };
42815
42816
 
@@ -42860,15 +42861,16 @@
42860
42861
  onItemClick = _a.onItemClick,
42861
42862
  _trigger = _a.trigger,
42862
42863
  layer = _a.layer,
42863
- props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer"]);
42864
+ menuType = _a.menuType,
42865
+ props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer", "menuType"]);
42864
42866
 
42865
42867
  return (
42866
42868
  /*#__PURE__*/
42867
42869
  // @ts-ignore
42868
42870
  React__default['default'].createElement(NavBarDropdownMenu, Object.assign({
42869
- placement: "right-start",
42871
+ placement: getPlacement(menuType),
42870
42872
  modifiers: null,
42871
- showArrow: false,
42873
+ showArrow: true,
42872
42874
  triggerTogglesMenuState: false
42873
42875
  }, props, {
42874
42876
  dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
@@ -42909,10 +42911,20 @@
42909
42911
  margin: "0",
42910
42912
  padding: "0"
42911
42913
  }
42912
- }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1)))
42914
+ }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)))
42913
42915
  );
42914
42916
  };
42915
42917
 
42918
+ function getPlacement(menuType) {
42919
+ switch (menuType) {
42920
+ case "primary":
42921
+ return "right-start";
42922
+
42923
+ case "secondary":
42924
+ return "left-start";
42925
+ }
42926
+ }
42927
+
42916
42928
  SubMenuTrigger.displayName = "SubMenuTrigger";
42917
42929
 
42918
42930
  var StyledButton = styled__default['default'].button.withConfig({
@@ -42990,7 +43002,8 @@
42990
43002
  ariaLabel = _a["aria-label"],
42991
43003
  _trigger = _a.trigger,
42992
43004
  layer = _a.layer,
42993
- props = __rest(_a, ["menuData", "name", "color", "hoverColor", "hoverBackground", "aria-label", "trigger", "layer"]);
43005
+ menuType = _a.menuType,
43006
+ props = __rest(_a, ["menuData", "name", "color", "hoverColor", "hoverBackground", "aria-label", "trigger", "layer", "menuType"]);
42994
43007
 
42995
43008
  var dropdownMinWidth = "auto";
42996
43009
 
@@ -43049,7 +43062,7 @@
43049
43062
  }, renderSubMenuItems(menuData, function (e) {
43050
43063
  closeMenu(e);
43051
43064
  e.stopPropagation();
43052
- }, SubMenuTrigger, layer + 1));
43065
+ }, SubMenuTrigger, layer + 1, menuType));
43053
43066
  })
43054
43067
  );
43055
43068
  };
@@ -43112,12 +43125,13 @@
43112
43125
  alignItems: "center"
43113
43126
  });
43114
43127
 
43115
- var renderMenuTrigger = function renderMenuTrigger(menuItem, themeColorObject, layer) {
43128
+ var renderMenuTrigger = function renderMenuTrigger(menuItem, themeColorObject, layer, menuType) {
43116
43129
  var _a;
43117
43130
 
43118
43131
  return /*#__PURE__*/React__default['default'].createElement("div", {
43119
43132
  key: (_a = menuItem.key) !== null && _a !== void 0 ? _a : menuItem.name
43120
43133
  }, /*#__PURE__*/React__default['default'].createElement(MenuTrigger, Object.assign({
43134
+ menuType: menuType,
43121
43135
  name: menuItem.name,
43122
43136
  "aria-label": menuItem.ariaLabel,
43123
43137
  menuData: menuItem.items,
@@ -43169,19 +43183,20 @@
43169
43183
  }
43170
43184
  };
43171
43185
 
43172
- var renderMenuItem = function renderMenuItem(menuItem, themeColorObject, layer) {
43173
- return getRenderFunction$1(menuItem)(menuItem, themeColorObject, layer);
43186
+ var renderMenuItem = function renderMenuItem(menuItem, themeColorObject, layer, menuType) {
43187
+ return getRenderFunction$1(menuItem)(menuItem, themeColorObject, layer, menuType);
43174
43188
  };
43175
43189
 
43176
43190
  var BaseDesktopMenu = /*#__PURE__*/React__default['default'].forwardRef(function (_a, ref) {
43177
43191
  var menuData = _a.menuData,
43192
+ menuType = _a.menuType,
43178
43193
  themeColorObject = _a.themeColorObject,
43179
- props = __rest(_a, ["menuData", "themeColorObject"]);
43194
+ props = __rest(_a, ["menuData", "menuType", "themeColorObject"]);
43180
43195
 
43181
43196
  return /*#__PURE__*/React__default['default'].createElement(Nav$1, Object.assign({}, props, {
43182
43197
  ref: ref
43183
43198
  }), menuData.map(function (menuItem) {
43184
- return renderMenuItem(menuItem, themeColorObject, 0);
43199
+ return renderMenuItem(menuItem, themeColorObject, 0, menuType);
43185
43200
  }));
43186
43201
  });
43187
43202
  var DesktopMenu = styled__default['default'](BaseDesktopMenu).withConfig({
@@ -43748,6 +43763,7 @@
43748
43763
  }, menuData.primaryMenu && /*#__PURE__*/React__default['default'].createElement(DesktopMenu, {
43749
43764
  themeColorObject: themeColorObject,
43750
43765
  "aria-label": t("primary navigation"),
43766
+ menuType: "primary",
43751
43767
  menuData: menuData.primaryMenu
43752
43768
  }), /*#__PURE__*/React__default['default'].createElement(Flex, {
43753
43769
  justifySelf: "flex-end",
@@ -43755,6 +43771,7 @@
43755
43771
  }, menuData.secondaryMenu && /*#__PURE__*/React__default['default'].createElement(DesktopMenu, {
43756
43772
  themeColorObject: themeColorObject,
43757
43773
  "aria-label": t("secondary navigation"),
43774
+ menuType: "secondary",
43758
43775
  menuData: menuData.secondaryMenu
43759
43776
  }), showNulogyLogo && /*#__PURE__*/React__default['default'].createElement(Box, {
43760
43777
  pl: "x3"
@@ -42702,7 +42702,7 @@ StatelessNavBarDropdownMenu.propTypes = {
42702
42702
  toggleMenu: PropTypes.func
42703
42703
  }).isRequired,
42704
42704
  showArrow: PropTypes.bool,
42705
- placement: PropTypes.oneOf(["bottom-start", "right-start"]),
42705
+ placement: PropTypes.oneOf(["bottom-start", "right-start", "left-start"]),
42706
42706
  modifiers: PropTypes.shape({}),
42707
42707
  triggerTogglesMenuState: PropTypes.bool,
42708
42708
  dropdownMenuContainerEventHandlers: PropTypes.func
@@ -42722,7 +42722,7 @@ NavBarDropdownMenu.defaultProps = {
42722
42722
  hideDelay: "100"
42723
42723
  };
42724
42724
 
42725
- var renderSubMenuTrigger = function renderSubMenuTrigger(subMenuItem, onItemClick, SubMenuTrigger, layer) {
42725
+ var renderSubMenuTrigger = function renderSubMenuTrigger(subMenuItem, onItemClick, SubMenuTrigger, layer, menuType) {
42726
42726
  var _a;
42727
42727
 
42728
42728
  return /*#__PURE__*/React__default.createElement(NoWrapLi, {
@@ -42732,7 +42732,8 @@ var renderSubMenuTrigger = function renderSubMenuTrigger(subMenuItem, onItemClic
42732
42732
  name: subMenuItem.name,
42733
42733
  menuData: subMenuItem.items,
42734
42734
  trigger: subMenuItem.trigger,
42735
- layer: layer
42735
+ layer: layer,
42736
+ menuType: menuType
42736
42737
  }));
42737
42738
  };
42738
42739
 
@@ -42781,9 +42782,9 @@ var getRenderFunction$2 = function getRenderFunction(subMenuItem) {
42781
42782
  }
42782
42783
  };
42783
42784
 
42784
- var renderSubMenuItems = function renderSubMenuItems(subMenuItems, onItemClick, SubMenuTrigger, layer) {
42785
+ var renderSubMenuItems = function renderSubMenuItems(subMenuItems, onItemClick, SubMenuTrigger, layer, menuType) {
42785
42786
  return subMenuItems.map(function (subMenuItem) {
42786
- return getRenderFunction$2(subMenuItem)(subMenuItem, onItemClick, SubMenuTrigger, layer);
42787
+ return getRenderFunction$2(subMenuItem)(subMenuItem, onItemClick, SubMenuTrigger, layer, menuType);
42787
42788
  });
42788
42789
  };
42789
42790
 
@@ -42834,15 +42835,16 @@ var SubMenuTrigger = function SubMenuTrigger(_a) {
42834
42835
  onItemClick = _a.onItemClick,
42835
42836
  _trigger = _a.trigger,
42836
42837
  layer = _a.layer,
42837
- props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer"]);
42838
+ menuType = _a.menuType,
42839
+ props = __rest(_a, ["menuData", "name", "onItemClick", "trigger", "layer", "menuType"]);
42838
42840
 
42839
42841
  return (
42840
42842
  /*#__PURE__*/
42841
42843
  // @ts-ignore
42842
42844
  React__default.createElement(NavBarDropdownMenu, Object.assign({
42843
- placement: "right-start",
42845
+ placement: getPlacement(menuType),
42844
42846
  modifiers: null,
42845
- showArrow: false,
42847
+ showArrow: true,
42846
42848
  triggerTogglesMenuState: false
42847
42849
  }, props, {
42848
42850
  dropdownMenuContainerEventHandlers: function dropdownMenuContainerEventHandlers(_ref) {
@@ -42883,10 +42885,20 @@ var SubMenuTrigger = function SubMenuTrigger(_a) {
42883
42885
  margin: "0",
42884
42886
  padding: "0"
42885
42887
  }
42886
- }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1)))
42888
+ }, renderSubMenuItems(menuData, onItemClick, SubMenuTrigger, layer + 1, menuType)))
42887
42889
  );
42888
42890
  };
42889
42891
 
42892
+ function getPlacement(menuType) {
42893
+ switch (menuType) {
42894
+ case "primary":
42895
+ return "right-start";
42896
+
42897
+ case "secondary":
42898
+ return "left-start";
42899
+ }
42900
+ }
42901
+
42890
42902
  SubMenuTrigger.displayName = "SubMenuTrigger";
42891
42903
 
42892
42904
  var StyledButton = styled.button.withConfig({
@@ -42964,7 +42976,8 @@ var MenuTrigger = function MenuTrigger(_a) {
42964
42976
  ariaLabel = _a["aria-label"],
42965
42977
  _trigger = _a.trigger,
42966
42978
  layer = _a.layer,
42967
- props = __rest(_a, ["menuData", "name", "color", "hoverColor", "hoverBackground", "aria-label", "trigger", "layer"]);
42979
+ menuType = _a.menuType,
42980
+ props = __rest(_a, ["menuData", "name", "color", "hoverColor", "hoverBackground", "aria-label", "trigger", "layer", "menuType"]);
42968
42981
 
42969
42982
  var dropdownMinWidth = "auto";
42970
42983
 
@@ -43023,7 +43036,7 @@ var MenuTrigger = function MenuTrigger(_a) {
43023
43036
  }, renderSubMenuItems(menuData, function (e) {
43024
43037
  closeMenu(e);
43025
43038
  e.stopPropagation();
43026
- }, SubMenuTrigger, layer + 1));
43039
+ }, SubMenuTrigger, layer + 1, menuType));
43027
43040
  })
43028
43041
  );
43029
43042
  };
@@ -43086,12 +43099,13 @@ var Nav$1 = styled.nav.withConfig({
43086
43099
  alignItems: "center"
43087
43100
  });
43088
43101
 
43089
- var renderMenuTrigger = function renderMenuTrigger(menuItem, themeColorObject, layer) {
43102
+ var renderMenuTrigger = function renderMenuTrigger(menuItem, themeColorObject, layer, menuType) {
43090
43103
  var _a;
43091
43104
 
43092
43105
  return /*#__PURE__*/React__default.createElement("div", {
43093
43106
  key: (_a = menuItem.key) !== null && _a !== void 0 ? _a : menuItem.name
43094
43107
  }, /*#__PURE__*/React__default.createElement(MenuTrigger, Object.assign({
43108
+ menuType: menuType,
43095
43109
  name: menuItem.name,
43096
43110
  "aria-label": menuItem.ariaLabel,
43097
43111
  menuData: menuItem.items,
@@ -43143,19 +43157,20 @@ var getRenderFunction$1 = function getRenderFunction(menuItem) {
43143
43157
  }
43144
43158
  };
43145
43159
 
43146
- var renderMenuItem = function renderMenuItem(menuItem, themeColorObject, layer) {
43147
- return getRenderFunction$1(menuItem)(menuItem, themeColorObject, layer);
43160
+ var renderMenuItem = function renderMenuItem(menuItem, themeColorObject, layer, menuType) {
43161
+ return getRenderFunction$1(menuItem)(menuItem, themeColorObject, layer, menuType);
43148
43162
  };
43149
43163
 
43150
43164
  var BaseDesktopMenu = /*#__PURE__*/React__default.forwardRef(function (_a, ref) {
43151
43165
  var menuData = _a.menuData,
43166
+ menuType = _a.menuType,
43152
43167
  themeColorObject = _a.themeColorObject,
43153
- props = __rest(_a, ["menuData", "themeColorObject"]);
43168
+ props = __rest(_a, ["menuData", "menuType", "themeColorObject"]);
43154
43169
 
43155
43170
  return /*#__PURE__*/React__default.createElement(Nav$1, Object.assign({}, props, {
43156
43171
  ref: ref
43157
43172
  }), menuData.map(function (menuItem) {
43158
- return renderMenuItem(menuItem, themeColorObject, 0);
43173
+ return renderMenuItem(menuItem, themeColorObject, 0, menuType);
43159
43174
  }));
43160
43175
  });
43161
43176
  var DesktopMenu = styled(BaseDesktopMenu).withConfig({
@@ -43722,6 +43737,7 @@ var MediumNavBar = function MediumNavBar(_a) {
43722
43737
  }, menuData.primaryMenu && /*#__PURE__*/React__default.createElement(DesktopMenu, {
43723
43738
  themeColorObject: themeColorObject,
43724
43739
  "aria-label": t("primary navigation"),
43740
+ menuType: "primary",
43725
43741
  menuData: menuData.primaryMenu
43726
43742
  }), /*#__PURE__*/React__default.createElement(Flex, {
43727
43743
  justifySelf: "flex-end",
@@ -43729,6 +43745,7 @@ var MediumNavBar = function MediumNavBar(_a) {
43729
43745
  }, menuData.secondaryMenu && /*#__PURE__*/React__default.createElement(DesktopMenu, {
43730
43746
  themeColorObject: themeColorObject,
43731
43747
  "aria-label": t("secondary navigation"),
43748
+ menuType: "secondary",
43732
43749
  menuData: menuData.secondaryMenu
43733
43750
  }), showNulogyLogo && /*#__PURE__*/React__default.createElement(Box, {
43734
43751
  pl: "x3"
@@ -1,6 +1,8 @@
1
1
  import React from "react";
2
+ import type { MenuType } from "./MenuTrigger";
2
3
  export declare type DesktopMenuProps = {
3
4
  menuData: any[];
5
+ menuType: MenuType;
4
6
  themeColorObject: any;
5
7
  };
6
8
  declare const DesktopMenu: import("styled-components").StyledComponent<React.ForwardRefExoticComponent<DesktopMenuProps & React.RefAttributes<HTMLElement>>, import("styled-components").DefaultTheme, {}, never>;
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  import { TriggerFunctionProps } from "./TriggerFunctionProps";
3
+ export declare type MenuType = "primary" | "secondary";
3
4
  export declare type MenuTriggerProps = {
4
5
  name?: string;
5
6
  "aria-label"?: string;
@@ -9,6 +10,7 @@ export declare type MenuTriggerProps = {
9
10
  menuData?: any[];
10
11
  trigger?: (props: TriggerFunctionProps) => React.ReactNode;
11
12
  layer: number;
13
+ menuType: MenuType;
12
14
  };
13
- declare const MenuTrigger: ({ menuData, name, color, hoverColor, hoverBackground, "aria-label": ariaLabel, trigger, layer, ...props }: MenuTriggerProps) => JSX.Element;
15
+ declare const MenuTrigger: ({ menuData, name, color, hoverColor, hoverBackground, "aria-label": ariaLabel, trigger, layer, menuType, ...props }: MenuTriggerProps) => JSX.Element;
14
16
  export default MenuTrigger;
@@ -39,6 +39,7 @@ export declare const WithIcon: {
39
39
  name: string;
40
40
  };
41
41
  };
42
+ export declare const WithPrimaryAndSecondarySubMenus: () => JSX.Element;
42
43
  export declare const WithReactRouter: {
43
44
  (): JSX.Element;
44
45
  story: {
@@ -10,7 +10,7 @@ declare type NavBarDropdownMenuProps = {
10
10
  trigger?: Function;
11
11
  menuState?: MenuState;
12
12
  showArrow?: boolean;
13
- placement?: "bottom-start" | "right-start";
13
+ placement?: "bottom-start" | "right-start" | "left-start";
14
14
  modifiers?: any;
15
15
  triggerTogglesMenuState?: boolean;
16
16
  dropdownMenuContainerEventHandlers?: Function;
@@ -1,5 +1,6 @@
1
1
  import React from "react";
2
2
  import { TriggerFunctionProps } from "./TriggerFunctionProps";
3
+ import type { MenuType } from "./MenuTrigger";
3
4
  declare type SubMenuTriggerProps = React.ComponentPropsWithRef<"button"> & {
4
5
  name?: string;
5
6
  isOpen?: boolean;
@@ -7,9 +8,10 @@ declare type SubMenuTriggerProps = React.ComponentPropsWithRef<"button"> & {
7
8
  menuData: any[];
8
9
  trigger: (props: TriggerFunctionProps) => React.ReactNode;
9
10
  layer: number;
11
+ menuType: MenuType;
10
12
  };
11
13
  declare const SubMenuTrigger: {
12
- ({ menuData, name, onItemClick, trigger, layer, ...props }: SubMenuTriggerProps): JSX.Element;
14
+ ({ menuData, name, onItemClick, trigger, layer, menuType, ...props }: SubMenuTriggerProps): JSX.Element;
13
15
  displayName: string;
14
16
  };
15
17
  export default SubMenuTrigger;
@@ -1,2 +1,2 @@
1
- declare const renderSubMenuItems: (subMenuItems: any, onItemClick: any, SubMenuTrigger: any, layer: any) => any;
1
+ declare const renderSubMenuItems: (subMenuItems: any, onItemClick: any, SubMenuTrigger: any, layer: any, menuType: any) => any;
2
2
  export default renderSubMenuItems;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nulogy/components",
3
- "version": "8.1.3",
3
+ "version": "8.1.4",
4
4
  "description": "Component library for the Nulogy Design System - http://nulogy.design",
5
5
  "private": false,
6
6
  "publishConfig": {