@veracity/vui 2.14.4 → 2.14.6-beta.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.
Files changed (44) hide show
  1. package/dist/cjs/core/vuiProvider/useBodyScrollLock.d.ts.map +1 -1
  2. package/dist/cjs/core/vuiProvider/useBodyScrollLock.js +1 -0
  3. package/dist/cjs/header/header.types.d.ts +1 -1
  4. package/dist/cjs/header/header.types.d.ts.map +1 -1
  5. package/dist/cjs/header/loggedInHeader.d.ts.map +1 -1
  6. package/dist/cjs/header/loggedInHeader.js +5 -5
  7. package/dist/cjs/sidemenu/sidemenu.js +7 -7
  8. package/dist/cjs/sidemenu/sidemenu.types.d.ts +6 -0
  9. package/dist/cjs/sidemenu/sidemenu.types.d.ts.map +1 -1
  10. package/dist/cjs/sidemenu/sidemenuItem.d.ts.map +1 -1
  11. package/dist/cjs/sidemenu/sidemenuItem.js +15 -12
  12. package/dist/cjs/sidemenu/sidemenuTop.js +2 -2
  13. package/dist/cjs/sidemenu/useSidemenuItem.d.ts +11 -0
  14. package/dist/cjs/sidemenu/useSidemenuItem.d.ts.map +1 -0
  15. package/dist/cjs/sidemenu/useSidemenuItem.js +23 -0
  16. package/dist/cjs/table/th.d.ts.map +1 -1
  17. package/dist/cjs/table/th.js +1 -3
  18. package/dist/esm/core/vuiProvider/useBodyScrollLock.d.ts.map +1 -1
  19. package/dist/esm/core/vuiProvider/useBodyScrollLock.js +1 -0
  20. package/dist/esm/header/header.types.d.ts +1 -1
  21. package/dist/esm/header/header.types.d.ts.map +1 -1
  22. package/dist/esm/header/loggedInHeader.d.ts.map +1 -1
  23. package/dist/esm/header/loggedInHeader.js +5 -5
  24. package/dist/esm/sidemenu/sidemenu.js +7 -7
  25. package/dist/esm/sidemenu/sidemenu.types.d.ts +6 -0
  26. package/dist/esm/sidemenu/sidemenu.types.d.ts.map +1 -1
  27. package/dist/esm/sidemenu/sidemenuItem.d.ts.map +1 -1
  28. package/dist/esm/sidemenu/sidemenuItem.js +17 -14
  29. package/dist/esm/sidemenu/sidemenuTop.js +2 -2
  30. package/dist/esm/sidemenu/useSidemenuItem.d.ts +11 -0
  31. package/dist/esm/sidemenu/useSidemenuItem.d.ts.map +1 -0
  32. package/dist/esm/sidemenu/useSidemenuItem.js +21 -0
  33. package/dist/esm/table/th.d.ts.map +1 -1
  34. package/dist/esm/table/th.js +3 -6
  35. package/package.json +1 -1
  36. package/src/core/vuiProvider/useBodyScrollLock.tsx +2 -0
  37. package/src/header/header.types.ts +1 -1
  38. package/src/header/loggedInHeader.tsx +12 -15
  39. package/src/sidemenu/sidemenu.tsx +8 -8
  40. package/src/sidemenu/sidemenu.types.ts +6 -0
  41. package/src/sidemenu/sidemenuItem.tsx +30 -14
  42. package/src/sidemenu/sidemenuTop.tsx +2 -2
  43. package/src/sidemenu/useSidemenuItem.ts +25 -0
  44. package/src/table/th.tsx +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"useBodyScrollLock.d.ts","sourceRoot":"","sources":["../../../../src/core/vuiProvider/useBodyScrollLock.tsx"],"names":[],"mappings":";AAKA,eAAO,MAAM,iBAAiB;;;;CAW7B,CAAA"}
1
+ {"version":3,"file":"useBodyScrollLock.d.ts","sourceRoot":"","sources":["../../../../src/core/vuiProvider/useBodyScrollLock.tsx"],"names":[],"mappings":";AAKA,eAAO,MAAM,iBAAiB;;;;CAa7B,CAAA"}
@@ -12,6 +12,7 @@ const useBodyScrollLock = () => {
12
12
  (0, utils_1.addBodyClass)(consts_1.noScrollClass);
13
13
  else
14
14
  (0, utils_1.removeBodyClass)(consts_1.noScrollClass);
15
+ return () => (0, utils_1.removeBodyClass)(consts_1.noScrollClass);
15
16
  }, [isScrollLocked]);
16
17
  return { isScrollLocked, setIsScrollLocked, toggleIsScrollLocked };
17
18
  };
@@ -91,7 +91,7 @@ export type LoggedInHeaderProps = HeaderProps & {
91
91
  notifications?: HeaderNotificationsData | JSX.Element;
92
92
  /** Socket for services menu icon on the right side. */
93
93
  services?: HeaderServicesData | JSX.Element;
94
- /** Socket for showing the alt user Info with role; introduced for APP; by default it is true. */
94
+ /** Socket for showing the 'alternative' user Info with role (alternative: 3 lines, role. default: 2 lines, no role); introduced for APP; by default it is true. */
95
95
  showAltUserInfo?: boolean;
96
96
  /** Socket for showing the services trigger up front; introduced for APP; by default it is displayed. */
97
97
  showServices?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"header.types.d.ts","sourceRoot":"","sources":["../../../src/header/header.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.types.d.ts","sourceRoot":"","sources":["../../../src/header/header.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loggedInHeader.d.ts","sourceRoot":"","sources":["../../../src/header/loggedInHeader.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAkB,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIpE,uHAAuH;AACvH,eAAO,MAAM,cAAc,4DA+JzB,CAAA;AAIF,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"loggedInHeader.d.ts","sourceRoot":"","sources":["../../../src/header/loggedInHeader.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAkB,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIpE,uHAAuH;AACvH,eAAO,MAAM,cAAc,4DA4JzB,CAAA;AAIF,eAAe,cAAc,CAAA"}
@@ -54,11 +54,6 @@ exports.LoggedInHeader = (0, core_1.vui)((props, ref) => {
54
54
  showMainLinks && mainLinks !== undefined && (react_1.default.createElement(react_1.default.Fragment, null,
55
55
  (0, utils_1.isJsx)(mainLinks) ? mainLinks : react_1.default.createElement(header_1.default.MainLinks, { links: mainLinks }),
56
56
  react_1.default.createElement(header_1.default.Divider, { mx: 1 }))),
57
- !showMainLinks &&
58
- showAltUserInfo &&
59
- ((0, utils_1.isJsx)(userInfo) ? (userInfo) : (react_1.default.createElement(react_1.default.Fragment, null,
60
- react_1.default.createElement(headerAccountUserInfo_1.default, Object.assign({ className: "vui-altUserInfo", color: localTextColor, isApplication: true }, userInfo)),
61
- react_1.default.createElement(header_1.default.Divider, { mx: 1 })))),
62
57
  !showMainLinks && mainLinks && (react_1.default.createElement(react_1.default.Fragment, null,
63
58
  react_1.default.createElement(header_1.default.MobileToggle, { ml: 0 }),
64
59
  react_1.default.createElement(header_1.default.MobileContent, null,
@@ -80,6 +75,11 @@ exports.LoggedInHeader = (0, core_1.vui)((props, ref) => {
80
75
  mainLinks !== undefined && react_1.default.createElement(header_1.default.Divider, { mx: 1 }),
81
76
  (0, utils_1.isJsx)(services) ? services : react_1.default.createElement(header_1.default.Services, Object.assign({}, services)))),
82
77
  (0, utils_1.isJsx)(notifications) ? notifications : react_1.default.createElement(header_1.default.Notifications, Object.assign({}, notifications)),
78
+ !showMainLinks &&
79
+ showAltUserInfo &&
80
+ ((0, utils_1.isJsx)(userInfo) ? (userInfo) : (react_1.default.createElement(react_1.default.Fragment, null,
81
+ react_1.default.createElement(header_1.default.Divider, { ml: 2 }),
82
+ react_1.default.createElement(headerAccountUserInfo_1.default, Object.assign({ className: "vui-altUserInfo", color: localTextColor, isApplication: true }, userInfo))))),
83
83
  (0, utils_1.isJsx)(account) ? account : react_1.default.createElement(header_1.default.Account, Object.assign({}, account)),
84
84
  react_1.default.createElement(core_1.RenderOnScreen, { maxWidth: "lg" },
85
85
  isApplication && react_1.default.createElement(header_1.default.Divider, { ml: 1 }),
@@ -52,17 +52,17 @@ const sidemenuTop_1 = __importDefault(require("./sidemenuTop"));
52
52
  exports.Sidemenu = (0, core_1.vui)((props, ref) => {
53
53
  var _a;
54
54
  const { children, className, items, isExpanded = false, isSticky = false, size, variant, width = 280, onNavigate } = props, rest = __rest(props, ["children", "className", "items", "isExpanded", "isSticky", "size", "variant", "width", "onNavigate"]);
55
- const [isExpandedInternal, setIsExpandedInternal] = (0, react_1.useState)(isExpanded);
56
- const context = (0, react_1.useMemo)(() => (0, utils_1.filterUndefined)({ size, variant, isExpandedInternal }), [size, variant, isExpandedInternal]);
55
+ const [isExpandedHorizontally, setIsExpandedHorizontally] = (0, react_1.useState)(isExpanded);
56
+ const context = (0, react_1.useMemo)(() => (0, utils_1.filterUndefined)({ size, variant, isExpandedHorizontally }), [size, variant, isExpandedHorizontally]);
57
57
  const styles = (0, core_1.useStyleConfig)('Sidemenu', props);
58
58
  const isDark = variant === 'dark';
59
59
  (0, react_1.useEffect)(() => {
60
- setIsExpandedInternal(isExpanded);
60
+ setIsExpandedHorizontally(isExpanded);
61
61
  }, [isExpanded]);
62
- const onToggle = () => setIsExpandedInternal(!isExpandedInternal);
63
- const w = isExpandedInternal ? width : consts_1.expandedWidth;
64
- const icon = `falArrow${isExpandedInternal ? 'Left' : 'Right'}`;
65
- const justifyContent = isExpandedInternal ? 'flex-end' : 'center';
62
+ const onToggle = () => setIsExpandedHorizontally(!isExpandedHorizontally);
63
+ const w = isExpandedHorizontally ? width : consts_1.expandedWidth;
64
+ const icon = `falArrow${isExpandedHorizontally ? 'Left' : 'Right'}`;
65
+ const justifyContent = isExpandedHorizontally ? 'flex-end' : 'center';
66
66
  function onItemClick(item) {
67
67
  var _a;
68
68
  (_a = item === null || item === void 0 ? void 0 : item.onClick) === null || _a === void 0 ? void 0 : _a.call(item);
@@ -26,8 +26,14 @@ export type SidemenuItemProps = BoxProps & {
26
26
  iconSize?: 'md' | 'sm';
27
27
  /** Whether the item is active */
28
28
  isActive?: boolean;
29
+ /** Whether the item is expanded vertically */
30
+ isExpanded?: boolean;
29
31
  /** On click callback */
30
32
  onClick?: () => void;
33
+ /** On collapse callback @default true */
34
+ onCollapse?: () => void;
35
+ /** On expand callback */
36
+ onExpand?: () => void;
31
37
  /** Router path */
32
38
  path?: string;
33
39
  /** Title */
@@ -1 +1 @@
1
- {"version":3,"file":"sidemenu.types.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenu.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,YAAY,CAAA;AAE3D,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,YAAY,CAAC,UAAU,CAAC,GAAG;IACzB,gCAAgC;IAChC,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAC3B,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8JAA8J;IAC9J,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAEH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG;IACzC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,wBAAwB;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,sDAAsD;IACtD,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA"}
1
+ {"version":3,"file":"sidemenu.types.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenu.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,YAAY,CAAA;AAE3D,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,YAAY,CAAC,UAAU,CAAC,GAAG;IACzB,gCAAgC;IAChC,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAC3B,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8JAA8J;IAC9J,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAEH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG;IACzC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,wBAAwB;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,sDAAsD;IACtD,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"sidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenuItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyC,YAAY,EAAE,MAAM,SAAS,CAAA;AAM7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,mBAAmB;AACnB,eAAO,MAAM,YAAY,wCA+EmB,CAAA;AAI5C,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"sidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenuItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyB,YAAY,EAAE,MAAM,SAAS,CAAA;AAK7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,mBAAmB;AACnB,eAAO,MAAM,YAAY,wCA+FmB,CAAA;AAI5C,eAAe,YAAY,CAAA"}
@@ -46,33 +46,36 @@ const icon_1 = __importDefault(require("../icon"));
46
46
  const popover_1 = require("../popover");
47
47
  const t_1 = __importDefault(require("../t"));
48
48
  const utils_1 = require("../utils");
49
- const context_1 = require("./context");
49
+ const useSidemenuItem_1 = __importDefault(require("./useSidemenuItem"));
50
50
  /** A menu item. */
51
51
  exports.SidemenuItem = (0, core_1.vui)((props, ref) => {
52
- const _a = (0, core_1.omitThemingProps)(props), { className, children, icon, iconSize = 'md', isActive, onClick, title } = _a, rest = __rest(_a, ["className", "children", "icon", "iconSize", "isActive", "onClick", "title"]);
53
- const [displayChildren, setDisplayChildren] = (0, react_1.useState)(true);
54
- const { variant, size, isExpandedInternal } = (0, context_1.useSidemenuContext)();
55
- const styles = (0, core_1.useStyleConfig)('Sidemenu', context_1.useSidemenuContext);
56
- const isDark = variant === 'dark';
57
- const hasChildrenExpanded = !!children && isExpandedInternal;
52
+ const _a = (0, core_1.omitThemingProps)(props), { className, children, icon, iconSize = 'md', isActive, isExpanded = true, onClick, onCollapse, onExpand, title } = _a, rest = __rest(_a, ["className", "children", "icon", "iconSize", "isActive", "isExpanded", "onClick", "onCollapse", "onExpand", "title"]);
53
+ const { isExpandedVertically, setIsExpandedVertically, isDark, size, isExpandedHorizontally, styles } = (0, useSidemenuItem_1.default)(isExpanded);
54
+ (0, react_1.useEffect)(() => {
55
+ if (isExpandedVertically)
56
+ onExpand === null || onExpand === void 0 ? void 0 : onExpand();
57
+ if (!isExpandedVertically)
58
+ onCollapse === null || onCollapse === void 0 ? void 0 : onCollapse();
59
+ }, [isExpandedVertically]);
60
+ const hasChildrenExpanded = !!children && isExpandedHorizontally;
58
61
  const innerContent = (react_1.default.createElement(box_1.default, { centerV: true, px: 2, py: 1, w: "100%", whiteSpace: "pre" },
59
62
  react_1.default.createElement(icon_1.default, { ml: iconSize === 'sm' ? '4px' : 0, name: icon, size: iconSize }),
60
63
  react_1.default.createElement(t_1.default, { isTruncated: true, ml: 2 }, title)));
61
64
  const toggle = (e) => {
62
65
  e.preventDefault();
63
66
  e.stopPropagation();
64
- setDisplayChildren(!displayChildren);
67
+ setIsExpandedVertically(!isExpandedVertically);
65
68
  };
66
- const buttonStyles = Object.assign(Object.assign(Object.assign({ alignItems: 'center', border: 'none', borderRadius: 0, borderLeft: '3px solid transparent', borderLeftColor: isActive ? (isDark ? 'digiGreen.main' : 'seaBlue.main') : undefined, bg: isDark ? 'darkBlue.main' : isActive ? 'skyBlue.95' : 'white', color: hasChildrenExpanded ? 'seaBlue.main' : isDark ? 'digiGreen.main' : 'sandstone.10', h: 'auto', justifyContent: 'space-between', onClick: () => onClick === null || onClick === void 0 ? void 0 : onClick(), p: 0, variant: isDark ? 'tertiaryLight' : 'tertiaryDark', w: '100%' }, styles.item), { minH: size === 'lg' ? '56px' : '40px', hoverBg: isDark ? 'seaBlue.main' : 'skyBlue.90' }), rest);
69
+ const buttonStyles = Object.assign(Object.assign(Object.assign({ alignItems: 'center', border: 'none', borderRadius: 0, borderLeft: !hasChildrenExpanded && children ? 'none' : '3px solid transparent', borderLeftColor: isActive ? (isDark ? 'digiGreen.main' : 'seaBlue.main') : undefined, bg: isDark ? 'darkBlue.main' : isActive ? 'skyBlue.95' : 'white', color: hasChildrenExpanded ? 'seaBlue.main' : isDark ? 'digiGreen.main' : 'sandstone.10', h: 'auto', justifyContent: 'space-between', onClick: () => onClick === null || onClick === void 0 ? void 0 : onClick(), p: 0, variant: isDark ? 'tertiaryLight' : 'tertiaryDark', w: '100%' }, styles.item), { minH: size === 'lg' ? '56px' : '40px', hoverBg: isDark ? 'seaBlue.main' : 'skyBlue.90' }), rest);
67
70
  return (react_1.default.createElement(box_1.default, { flexDirection: "column", ref: ref, w: "100%" },
68
71
  !hasChildrenExpanded && children ? (react_1.default.createElement(popover_1.Popover, { offset: [0, 0], placement: "right-start", trigger: "mouseenter" },
69
72
  react_1.default.createElement(popover_1.Popover.Trigger, Object.assign({ className: (0, utils_1.cs)('vui-sidemenu-item-popover', className) }, buttonStyles),
70
73
  react_1.default.createElement(box_1.default, { borderLeft: `3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}` }, innerContent)),
71
- react_1.default.createElement(popover_1.Popover.Content, { shadow: 'none' },
74
+ react_1.default.createElement(popover_1.Popover.Content, { shadow: "none" },
72
75
  react_1.default.createElement(box_1.default, { flexDirection: "column", justifyContent: "start", w: "100%" }, children)))) : (react_1.default.createElement(button_1.default, Object.assign({ className: (0, utils_1.cs)('vui-sidemenu-item', className) }, buttonStyles),
73
76
  innerContent,
74
- hasChildrenExpanded && (react_1.default.createElement(button_1.default, { className: "vui-sidemenu-item-expand", icon: displayChildren ? 'falChevronUp' : 'falChevronDown', mr: 1, onClick: toggle, size: "sm", variant: isDark ? 'tertiaryLight' : 'tertiaryDark' })))),
75
- !!children && hasChildrenExpanded && displayChildren && (react_1.default.createElement(box_1.default, { flexDirection: "column", justifyContent: "start", w: "100%" }, children))));
77
+ hasChildrenExpanded && (react_1.default.createElement(button_1.default, { className: "vui-sidemenu-item-expand", icon: isExpandedVertically ? 'falChevronUp' : 'falChevronDown', mr: 1, onClick: toggle, size: "sm", variant: isDark ? 'tertiaryLight' : 'tertiaryDark' })))),
78
+ !!children && hasChildrenExpanded && isExpandedVertically && (react_1.default.createElement(box_1.default, { flexDirection: "column", justifyContent: "start", w: "100%" }, children))));
76
79
  });
77
80
  exports.SidemenuItem.displayName = 'SidemenuItem';
78
81
  exports.default = exports.SidemenuItem;
@@ -24,12 +24,12 @@ const context_1 = require("./context");
24
24
  const SidemenuTop = (props) => {
25
25
  const _a = (0, core_1.omitThemingProps)(props), { className, leftSlot, rightSlot } = _a, rest = __rest(_a, ["className", "leftSlot", "rightSlot"]);
26
26
  const styles = (0, core_1.useStyleConfig)('Sidemenu', props);
27
- const { isExpandedInternal } = (0, context_1.useSidemenuContext)();
27
+ const { isExpandedHorizontally } = (0, context_1.useSidemenuContext)();
28
28
  if (!leftSlot && !rightSlot)
29
29
  return null;
30
30
  return (react_1.default.createElement(box_1.Box, Object.assign({ className: (0, utils_1.cs)('vui-sidemenu-top', className), mb: 1, w: "100%" }, styles.sidemenuTop, rest),
31
31
  !!leftSlot && leftSlot,
32
- !!rightSlot && isExpandedInternal && rightSlot));
32
+ !!rightSlot && isExpandedHorizontally && rightSlot));
33
33
  };
34
34
  exports.SidemenuTop = SidemenuTop;
35
35
  exports.SidemenuTop.displayName = 'SidemenuTop';
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare const useSidemenuItem: (isExpanded: boolean) => {
3
+ isExpandedVertically: boolean;
4
+ isDark: boolean;
5
+ size: any;
6
+ isExpandedHorizontally: any;
7
+ styles: import("..").Dict<any>;
8
+ setIsExpandedVertically: import("react").Dispatch<import("react").SetStateAction<boolean>>;
9
+ };
10
+ export default useSidemenuItem;
11
+ //# sourceMappingURL=useSidemenuItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/useSidemenuItem.ts"],"names":[],"mappings":";AAKA,QAAA,MAAM,eAAe,eAAgB,OAAO;;;;;;;CAiB3C,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const react_1 = require("react");
4
+ const core_1 = require("../core");
5
+ const context_1 = require("./context");
6
+ const useSidemenuItem = (isExpanded) => {
7
+ const [isExpandedVertically, setIsExpandedVertically] = (0, react_1.useState)(isExpanded);
8
+ const { variant, size, isExpandedHorizontally } = (0, context_1.useSidemenuContext)();
9
+ const styles = (0, core_1.useStyleConfig)('Sidemenu', context_1.useSidemenuContext);
10
+ (0, react_1.useEffect)(() => {
11
+ if (isExpanded !== isExpandedVertically)
12
+ setIsExpandedVertically(isExpanded);
13
+ }, [isExpanded]);
14
+ return {
15
+ isExpandedVertically,
16
+ isDark: variant === 'dark',
17
+ size,
18
+ isExpandedHorizontally,
19
+ styles,
20
+ setIsExpandedVertically
21
+ };
22
+ };
23
+ exports.default = useSidemenuItem;
@@ -1 +1 @@
1
- {"version":3,"file":"th.d.ts","sourceRoot":"","sources":["../../../src/table/th.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,MAAM,8HAIlB,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,EAAE,+CA+Db,CAAA;AAIF,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"th.d.ts","sourceRoot":"","sources":["../../../src/table/th.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,MAAM,8HAIlB,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,EAAE,+CA8Db,CAAA;AAIF,eAAe,EAAE,CAAA"}
@@ -18,7 +18,6 @@ exports.Th = exports.ThBase = void 0;
18
18
  const react_1 = __importDefault(require("react"));
19
19
  const box_1 = __importDefault(require("../box"));
20
20
  const core_1 = require("../core");
21
- const t_1 = require("../t");
22
21
  const utils_1 = require("../utils");
23
22
  const context_1 = require("./context");
24
23
  const tableSortIcon_1 = __importDefault(require("./tableSortIcon"));
@@ -55,8 +54,7 @@ exports.Th = (0, core_1.vui)((props, ref) => {
55
54
  : {};
56
55
  return (react_1.default.createElement(exports.ThBase, Object.assign({ className: (0, utils_1.cs)('vui-th', className), "data-active": isActive, "data-disabled": disabled, hoverBg: hoverBg, px: 2, ref: ref }, styles.th, activeProps, disabledProps, interactiveProps, rest), children !== null && children !== void 0 ? children : (react_1.default.createElement(box_1.default, { centerV: true, display: "inline-flex" },
57
56
  title,
58
- isSortable && react_1.default.createElement(tableSortIcon_1.default, { ml: 1, my: 0.5, order: sortOrder }))),
59
- !title && react_1.default.createElement(t_1.T, { color: "white" }, "a11y fix")));
57
+ isSortable && react_1.default.createElement(tableSortIcon_1.default, { ml: 1, my: 0.5, order: sortOrder })))));
60
58
  });
61
59
  exports.Th.displayName = 'Th';
62
60
  exports.default = exports.Th;
@@ -1 +1 @@
1
- {"version":3,"file":"useBodyScrollLock.d.ts","sourceRoot":"","sources":["../../../../src/core/vuiProvider/useBodyScrollLock.tsx"],"names":[],"mappings":";AAKA,eAAO,MAAM,iBAAiB;;;;CAW7B,CAAA"}
1
+ {"version":3,"file":"useBodyScrollLock.d.ts","sourceRoot":"","sources":["../../../../src/core/vuiProvider/useBodyScrollLock.tsx"],"names":[],"mappings":";AAKA,eAAO,MAAM,iBAAiB;;;;CAa7B,CAAA"}
@@ -9,6 +9,7 @@ export const useBodyScrollLock = () => {
9
9
  addBodyClass(noScrollClass);
10
10
  else
11
11
  removeBodyClass(noScrollClass);
12
+ return () => removeBodyClass(noScrollClass);
12
13
  }, [isScrollLocked]);
13
14
  return { isScrollLocked, setIsScrollLocked, toggleIsScrollLocked };
14
15
  };
@@ -91,7 +91,7 @@ export type LoggedInHeaderProps = HeaderProps & {
91
91
  notifications?: HeaderNotificationsData | JSX.Element;
92
92
  /** Socket for services menu icon on the right side. */
93
93
  services?: HeaderServicesData | JSX.Element;
94
- /** Socket for showing the alt user Info with role; introduced for APP; by default it is true. */
94
+ /** Socket for showing the 'alternative' user Info with role (alternative: 3 lines, role. default: 2 lines, no role); introduced for APP; by default it is true. */
95
95
  showAltUserInfo?: boolean;
96
96
  /** Socket for showing the services trigger up front; introduced for APP; by default it is displayed. */
97
97
  showServices?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"header.types.d.ts","sourceRoot":"","sources":["../../../src/header/header.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"header.types.d.ts","sourceRoot":"","sources":["../../../src/header/header.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"loggedInHeader.d.ts","sourceRoot":"","sources":["../../../src/header/loggedInHeader.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAkB,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIpE,uHAAuH;AACvH,eAAO,MAAM,cAAc,4DA+JzB,CAAA;AAIF,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"loggedInHeader.d.ts","sourceRoot":"","sources":["../../../src/header/loggedInHeader.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAkB,mBAAmB,EAAE,MAAM,gBAAgB,CAAA;AAIpE,uHAAuH;AACvH,eAAO,MAAM,cAAc,4DA4JzB,CAAA;AAIF,eAAe,cAAc,CAAA"}
@@ -37,11 +37,6 @@ export const LoggedInHeader = vui((props, ref) => {
37
37
  showMainLinks && mainLinks !== undefined && (React.createElement(React.Fragment, null,
38
38
  isJsx(mainLinks) ? mainLinks : React.createElement(Header.MainLinks, { links: mainLinks }),
39
39
  React.createElement(Header.Divider, { mx: 1 }))),
40
- !showMainLinks &&
41
- showAltUserInfo &&
42
- (isJsx(userInfo) ? (userInfo) : (React.createElement(React.Fragment, null,
43
- React.createElement(HeaderAccountUserInfo, { className: "vui-altUserInfo", color: localTextColor, isApplication: true, ...userInfo }),
44
- React.createElement(Header.Divider, { mx: 1 })))),
45
40
  !showMainLinks && mainLinks && (React.createElement(React.Fragment, null,
46
41
  React.createElement(Header.MobileToggle, { ml: 0 }),
47
42
  React.createElement(Header.MobileContent, null,
@@ -57,6 +52,11 @@ export const LoggedInHeader = vui((props, ref) => {
57
52
  mainLinks !== undefined && React.createElement(Header.Divider, { mx: 1 }),
58
53
  isJsx(services) ? services : React.createElement(Header.Services, { ...services }))),
59
54
  isJsx(notifications) ? notifications : React.createElement(Header.Notifications, { ...notifications }),
55
+ !showMainLinks &&
56
+ showAltUserInfo &&
57
+ (isJsx(userInfo) ? (userInfo) : (React.createElement(React.Fragment, null,
58
+ React.createElement(Header.Divider, { ml: 2 }),
59
+ React.createElement(HeaderAccountUserInfo, { className: "vui-altUserInfo", color: localTextColor, isApplication: true, ...userInfo })))),
60
60
  isJsx(account) ? account : React.createElement(Header.Account, { ...account }),
61
61
  React.createElement(RenderOnScreen, { maxWidth: "lg" },
62
62
  isApplication && React.createElement(Header.Divider, { ml: 1 }),
@@ -11,17 +11,17 @@ import SidemenuTop from './sidemenuTop';
11
11
  /** A collapsible side menu for navigation. */
12
12
  export const Sidemenu = vui((props, ref) => {
13
13
  const { children, className, items, isExpanded = false, isSticky = false, size, variant, width = 280, onNavigate, ...rest } = props;
14
- const [isExpandedInternal, setIsExpandedInternal] = useState(isExpanded);
15
- const context = useMemo(() => filterUndefined({ size, variant, isExpandedInternal }), [size, variant, isExpandedInternal]);
14
+ const [isExpandedHorizontally, setIsExpandedHorizontally] = useState(isExpanded);
15
+ const context = useMemo(() => filterUndefined({ size, variant, isExpandedHorizontally }), [size, variant, isExpandedHorizontally]);
16
16
  const styles = useStyleConfig('Sidemenu', props);
17
17
  const isDark = variant === 'dark';
18
18
  useEffect(() => {
19
- setIsExpandedInternal(isExpanded);
19
+ setIsExpandedHorizontally(isExpanded);
20
20
  }, [isExpanded]);
21
- const onToggle = () => setIsExpandedInternal(!isExpandedInternal);
22
- const w = isExpandedInternal ? width : expandedWidth;
23
- const icon = `falArrow${isExpandedInternal ? 'Left' : 'Right'}`;
24
- const justifyContent = isExpandedInternal ? 'flex-end' : 'center';
21
+ const onToggle = () => setIsExpandedHorizontally(!isExpandedHorizontally);
22
+ const w = isExpandedHorizontally ? width : expandedWidth;
23
+ const icon = `falArrow${isExpandedHorizontally ? 'Left' : 'Right'}`;
24
+ const justifyContent = isExpandedHorizontally ? 'flex-end' : 'center';
25
25
  function onItemClick(item) {
26
26
  item?.onClick?.();
27
27
  if (item?.path)
@@ -26,8 +26,14 @@ export type SidemenuItemProps = BoxProps & {
26
26
  iconSize?: 'md' | 'sm';
27
27
  /** Whether the item is active */
28
28
  isActive?: boolean;
29
+ /** Whether the item is expanded vertically */
30
+ isExpanded?: boolean;
29
31
  /** On click callback */
30
32
  onClick?: () => void;
33
+ /** On collapse callback @default true */
34
+ onCollapse?: () => void;
35
+ /** On expand callback */
36
+ onExpand?: () => void;
31
37
  /** Router path */
32
38
  path?: string;
33
39
  /** Title */
@@ -1 +1 @@
1
- {"version":3,"file":"sidemenu.types.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenu.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,YAAY,CAAA;AAE3D,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,YAAY,CAAC,UAAU,CAAC,GAAG;IACzB,gCAAgC;IAChC,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAC3B,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8JAA8J;IAC9J,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAEH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG;IACzC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,wBAAwB;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,sDAAsD;IACtD,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA"}
1
+ {"version":3,"file":"sidemenu.types.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenu.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,MAAM,MAAM,mBAAmB,GAAG,UAAU,GAAG,YAAY,CAAA;AAE3D,MAAM,MAAM,aAAa,GAAG,WAAW,GACrC,YAAY,CAAC,UAAU,CAAC,GAAG;IACzB,gCAAgC;IAChC,KAAK,CAAC,EAAE,iBAAiB,EAAE,CAAA;IAC3B,mDAAmD;IACnD,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8JAA8J;IAC9J,UAAU,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAEH,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG;IACzC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe;IACf,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,wBAAwB;IACxB,IAAI,EAAE,QAAQ,CAAA;IACd,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;IACtB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,8CAA8C;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,wBAAwB;IACxB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,yCAAyC;IACzC,UAAU,CAAC,EAAE,MAAM,IAAI,CAAA;IACvB,yBAAyB;IACzB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,YAAY;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG;IACxC,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,sDAAsD;IACtD,SAAS,CAAC,EAAE,SAAS,CAAA;CACtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"sidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenuItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyC,YAAY,EAAE,MAAM,SAAS,CAAA;AAM7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAEpD,mBAAmB;AACnB,eAAO,MAAM,YAAY,wCA+EmB,CAAA;AAI5C,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"sidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/sidemenuItem.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAyB,YAAY,EAAE,MAAM,SAAS,CAAA;AAK7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAGpD,mBAAmB;AACnB,eAAO,MAAM,YAAY,wCA+FmB,CAAA;AAI5C,eAAe,YAAY,CAAA"}
@@ -1,33 +1,36 @@
1
- import React, { useState } from 'react';
1
+ import React, { useEffect } from 'react';
2
2
  import Box from '../box';
3
3
  import Button from '../button';
4
- import { omitThemingProps, useStyleConfig, vui } from '../core';
4
+ import { omitThemingProps, vui } from '../core';
5
5
  import Icon from '../icon';
6
6
  import { Popover } from '../popover';
7
7
  import T from '../t';
8
8
  import { cs } from '../utils';
9
- import { useSidemenuContext } from './context';
9
+ import useSidemenuItem from './useSidemenuItem';
10
10
  /** A menu item. */
11
11
  export const SidemenuItem = vui((props, ref) => {
12
- const { className, children, icon, iconSize = 'md', isActive, onClick, title, ...rest } = omitThemingProps(props);
13
- const [displayChildren, setDisplayChildren] = useState(true);
14
- const { variant, size, isExpandedInternal } = useSidemenuContext();
15
- const styles = useStyleConfig('Sidemenu', useSidemenuContext);
16
- const isDark = variant === 'dark';
17
- const hasChildrenExpanded = !!children && isExpandedInternal;
12
+ const { className, children, icon, iconSize = 'md', isActive, isExpanded = true, onClick, onCollapse, onExpand, title, ...rest } = omitThemingProps(props);
13
+ const { isExpandedVertically, setIsExpandedVertically, isDark, size, isExpandedHorizontally, styles } = useSidemenuItem(isExpanded);
14
+ useEffect(() => {
15
+ if (isExpandedVertically)
16
+ onExpand?.();
17
+ if (!isExpandedVertically)
18
+ onCollapse?.();
19
+ }, [isExpandedVertically]);
20
+ const hasChildrenExpanded = !!children && isExpandedHorizontally;
18
21
  const innerContent = (React.createElement(Box, { centerV: true, px: 2, py: 1, w: "100%", whiteSpace: "pre" },
19
22
  React.createElement(Icon, { ml: iconSize === 'sm' ? '4px' : 0, name: icon, size: iconSize }),
20
23
  React.createElement(T, { isTruncated: true, ml: 2 }, title)));
21
24
  const toggle = (e) => {
22
25
  e.preventDefault();
23
26
  e.stopPropagation();
24
- setDisplayChildren(!displayChildren);
27
+ setIsExpandedVertically(!isExpandedVertically);
25
28
  };
26
29
  const buttonStyles = {
27
30
  alignItems: 'center',
28
31
  border: 'none',
29
32
  borderRadius: 0,
30
- borderLeft: '3px solid transparent',
33
+ borderLeft: !hasChildrenExpanded && children ? 'none' : '3px solid transparent',
31
34
  borderLeftColor: isActive ? (isDark ? 'digiGreen.main' : 'seaBlue.main') : undefined,
32
35
  bg: isDark ? 'darkBlue.main' : isActive ? 'skyBlue.95' : 'white',
33
36
  color: hasChildrenExpanded ? 'seaBlue.main' : isDark ? 'digiGreen.main' : 'sandstone.10',
@@ -46,11 +49,11 @@ export const SidemenuItem = vui((props, ref) => {
46
49
  !hasChildrenExpanded && children ? (React.createElement(Popover, { offset: [0, 0], placement: "right-start", trigger: "mouseenter" },
47
50
  React.createElement(Popover.Trigger, { className: cs('vui-sidemenu-item-popover', className), ...buttonStyles },
48
51
  React.createElement(Box, { borderLeft: `3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}` }, innerContent)),
49
- React.createElement(Popover.Content, { shadow: 'none' },
52
+ React.createElement(Popover.Content, { shadow: "none" },
50
53
  React.createElement(Box, { flexDirection: "column", justifyContent: "start", w: "100%" }, children)))) : (React.createElement(Button, { className: cs('vui-sidemenu-item', className), ...buttonStyles },
51
54
  innerContent,
52
- hasChildrenExpanded && (React.createElement(Button, { className: "vui-sidemenu-item-expand", icon: displayChildren ? 'falChevronUp' : 'falChevronDown', mr: 1, onClick: toggle, size: "sm", variant: isDark ? 'tertiaryLight' : 'tertiaryDark' })))),
53
- !!children && hasChildrenExpanded && displayChildren && (React.createElement(Box, { flexDirection: "column", justifyContent: "start", w: "100%" }, children))));
55
+ hasChildrenExpanded && (React.createElement(Button, { className: "vui-sidemenu-item-expand", icon: isExpandedVertically ? 'falChevronUp' : 'falChevronDown', mr: 1, onClick: toggle, size: "sm", variant: isDark ? 'tertiaryLight' : 'tertiaryDark' })))),
56
+ !!children && hasChildrenExpanded && isExpandedVertically && (React.createElement(Box, { flexDirection: "column", justifyContent: "start", w: "100%" }, children))));
54
57
  });
55
58
  SidemenuItem.displayName = 'SidemenuItem';
56
59
  export default SidemenuItem;
@@ -7,12 +7,12 @@ import { useSidemenuContext } from './context';
7
7
  export const SidemenuTop = (props) => {
8
8
  const { className, leftSlot, rightSlot, ...rest } = omitThemingProps(props);
9
9
  const styles = useStyleConfig('Sidemenu', props);
10
- const { isExpandedInternal } = useSidemenuContext();
10
+ const { isExpandedHorizontally } = useSidemenuContext();
11
11
  if (!leftSlot && !rightSlot)
12
12
  return null;
13
13
  return (React.createElement(Box, { className: cs('vui-sidemenu-top', className), mb: 1, w: "100%", ...styles.sidemenuTop, ...rest },
14
14
  !!leftSlot && leftSlot,
15
- !!rightSlot && isExpandedInternal && rightSlot));
15
+ !!rightSlot && isExpandedHorizontally && rightSlot));
16
16
  };
17
17
  SidemenuTop.displayName = 'SidemenuTop';
18
18
  export default SidemenuTop;
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare const useSidemenuItem: (isExpanded: boolean) => {
3
+ isExpandedVertically: boolean;
4
+ isDark: boolean;
5
+ size: any;
6
+ isExpandedHorizontally: any;
7
+ styles: import("..").Dict<any>;
8
+ setIsExpandedVertically: import("react").Dispatch<import("react").SetStateAction<boolean>>;
9
+ };
10
+ export default useSidemenuItem;
11
+ //# sourceMappingURL=useSidemenuItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSidemenuItem.d.ts","sourceRoot":"","sources":["../../../src/sidemenu/useSidemenuItem.ts"],"names":[],"mappings":";AAKA,QAAA,MAAM,eAAe,eAAgB,OAAO;;;;;;;CAiB3C,CAAA;AAED,eAAe,eAAe,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { useStyleConfig } from '../core';
3
+ import { useSidemenuContext } from './context';
4
+ const useSidemenuItem = (isExpanded) => {
5
+ const [isExpandedVertically, setIsExpandedVertically] = useState(isExpanded);
6
+ const { variant, size, isExpandedHorizontally } = useSidemenuContext();
7
+ const styles = useStyleConfig('Sidemenu', useSidemenuContext);
8
+ useEffect(() => {
9
+ if (isExpanded !== isExpandedVertically)
10
+ setIsExpandedVertically(isExpanded);
11
+ }, [isExpanded]);
12
+ return {
13
+ isExpandedVertically,
14
+ isDark: variant === 'dark',
15
+ size,
16
+ isExpandedHorizontally,
17
+ styles,
18
+ setIsExpandedVertically
19
+ };
20
+ };
21
+ export default useSidemenuItem;
@@ -1 +1 @@
1
- {"version":3,"file":"th.d.ts","sourceRoot":"","sources":["../../../src/table/th.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,MAAM,8HAIlB,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,EAAE,+CA+Db,CAAA;AAIF,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"th.d.ts","sourceRoot":"","sources":["../../../src/table/th.tsx"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,eAAO,MAAM,MAAM,8HAIlB,CAAA;AAED,oDAAoD;AACpD,eAAO,MAAM,EAAE,+CA8Db,CAAA;AAIF,eAAe,EAAE,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import React from 'react';
2
2
  import Box from '../box';
3
3
  import { styled, useStyleConfig, vui } from '../core';
4
- import { T } from '../t';
5
4
  import { cs, useCallbackRef } from '../utils';
6
5
  import { useTableContext } from './context';
7
6
  import TableSortIcon from './tableSortIcon';
@@ -35,11 +34,9 @@ export const Th = vui((props, ref) => {
35
34
  userSelect: 'none'
36
35
  }
37
36
  : {};
38
- return (React.createElement(ThBase, { className: cs('vui-th', className), "data-active": isActive, "data-disabled": disabled, hoverBg: hoverBg, px: 2, ref: ref, ...styles.th, ...activeProps, ...disabledProps, ...interactiveProps, ...rest },
39
- children ?? (React.createElement(Box, { centerV: true, display: "inline-flex" },
40
- title,
41
- isSortable && React.createElement(TableSortIcon, { ml: 1, my: 0.5, order: sortOrder }))),
42
- !title && React.createElement(T, { color: "white" }, "a11y fix")));
37
+ return (React.createElement(ThBase, { className: cs('vui-th', className), "data-active": isActive, "data-disabled": disabled, hoverBg: hoverBg, px: 2, ref: ref, ...styles.th, ...activeProps, ...disabledProps, ...interactiveProps, ...rest }, children ?? (React.createElement(Box, { centerV: true, display: "inline-flex" },
38
+ title,
39
+ isSortable && React.createElement(TableSortIcon, { ml: 1, my: 0.5, order: sortOrder })))));
43
40
  });
44
41
  Th.displayName = 'Th';
45
42
  export default Th;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veracity/vui",
3
- "version": "2.14.4",
3
+ "version": "2.14.6-beta.0",
4
4
  "description": "Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.",
5
5
  "module": "./dist/esm/index.js",
6
6
  "main": "./dist/cjs/index.js",
@@ -11,6 +11,8 @@ export const useBodyScrollLock = () => {
11
11
  useEffect(() => {
12
12
  if (isScrollLocked) addBodyClass(noScrollClass)
13
13
  else removeBodyClass(noScrollClass)
14
+
15
+ return () => removeBodyClass(noScrollClass)
14
16
  }, [isScrollLocked])
15
17
 
16
18
  return { isScrollLocked, setIsScrollLocked, toggleIsScrollLocked }
@@ -110,7 +110,7 @@ export type LoggedInHeaderProps = HeaderProps & {
110
110
  notifications?: HeaderNotificationsData | JSX.Element
111
111
  /** Socket for services menu icon on the right side. */
112
112
  services?: HeaderServicesData | JSX.Element
113
- /** Socket for showing the alt user Info with role; introduced for APP; by default it is true. */
113
+ /** Socket for showing the 'alternative' user Info with role (alternative: 3 lines, role. default: 2 lines, no role); introduced for APP; by default it is true. */
114
114
  showAltUserInfo?: boolean
115
115
  /** Socket for showing the services trigger up front; introduced for APP; by default it is displayed. */
116
116
  showServices?: boolean
@@ -73,21 +73,6 @@ export const LoggedInHeader = vui<'div', LoggedInHeaderProps>((props, ref) => {
73
73
  <Header.Divider mx={1} />
74
74
  </>
75
75
  )}
76
- {!showMainLinks &&
77
- showAltUserInfo &&
78
- (isJsx(userInfo) ? (
79
- userInfo
80
- ) : (
81
- <>
82
- <HeaderAccountUserInfo
83
- className="vui-altUserInfo"
84
- color={localTextColor}
85
- isApplication
86
- {...userInfo}
87
- />
88
- <Header.Divider mx={1} />
89
- </>
90
- ))}
91
76
 
92
77
  {/* the main-links are folded into the hamburger menu by default */}
93
78
  {!showMainLinks && mainLinks && (
@@ -152,6 +137,18 @@ export const LoggedInHeader = vui<'div', LoggedInHeaderProps>((props, ref) => {
152
137
  </RenderOnScreen>
153
138
  )}
154
139
  {isJsx(notifications) ? notifications : <Header.Notifications {...notifications} />}
140
+
141
+ {!showMainLinks &&
142
+ showAltUserInfo &&
143
+ (isJsx(userInfo) ? (
144
+ userInfo
145
+ ) : (
146
+ <>
147
+ <Header.Divider ml={2} />
148
+ <HeaderAccountUserInfo className="vui-altUserInfo" color={localTextColor} isApplication {...userInfo} />
149
+ </>
150
+ ))}
151
+
155
152
  {isJsx(account) ? account : <Header.Account {...account} />}
156
153
  <RenderOnScreen maxWidth="lg">
157
154
  {isApplication && <Header.Divider ml={1} />}
@@ -26,10 +26,10 @@ export const Sidemenu = vui<'div', SidemenuProps>((props, ref) => {
26
26
  ...rest
27
27
  } = props
28
28
 
29
- const [isExpandedInternal, setIsExpandedInternal] = useState(isExpanded)
29
+ const [isExpandedHorizontally, setIsExpandedHorizontally] = useState(isExpanded)
30
30
  const context = useMemo(
31
- () => filterUndefined({ size, variant, isExpandedInternal }),
32
- [size, variant, isExpandedInternal]
31
+ () => filterUndefined({ size, variant, isExpandedHorizontally }),
32
+ [size, variant, isExpandedHorizontally]
33
33
  )
34
34
 
35
35
  const styles = useStyleConfig('Sidemenu', props)
@@ -37,14 +37,14 @@ export const Sidemenu = vui<'div', SidemenuProps>((props, ref) => {
37
37
  const isDark = variant === 'dark'
38
38
 
39
39
  useEffect(() => {
40
- setIsExpandedInternal(isExpanded)
40
+ setIsExpandedHorizontally(isExpanded)
41
41
  }, [isExpanded])
42
42
 
43
- const onToggle = () => setIsExpandedInternal(!isExpandedInternal)
43
+ const onToggle = () => setIsExpandedHorizontally(!isExpandedHorizontally)
44
44
 
45
- const w = isExpandedInternal ? width : expandedWidth
46
- const icon = `falArrow${isExpandedInternal ? 'Left' : 'Right'}`
47
- const justifyContent = isExpandedInternal ? 'flex-end' : 'center'
45
+ const w = isExpandedHorizontally ? width : expandedWidth
46
+ const icon = `falArrow${isExpandedHorizontally ? 'Left' : 'Right'}`
47
+ const justifyContent = isExpandedHorizontally ? 'flex-end' : 'center'
48
48
 
49
49
  function onItemClick(item: SidemenuItemProps) {
50
50
  item?.onClick?.()
@@ -31,8 +31,14 @@ export type SidemenuItemProps = BoxProps & {
31
31
  iconSize?: 'md' | 'sm'
32
32
  /** Whether the item is active */
33
33
  isActive?: boolean
34
+ /** Whether the item is expanded vertically */
35
+ isExpanded?: boolean
34
36
  /** On click callback */
35
37
  onClick?: () => void
38
+ /** On collapse callback @default true */
39
+ onCollapse?: () => void
40
+ /** On expand callback */
41
+ onExpand?: () => void
36
42
  /** Router path */
37
43
  path?: string
38
44
  /** Title */
@@ -1,24 +1,40 @@
1
- import React, { MouseEvent, useState } from 'react'
1
+ import React, { MouseEvent, useEffect } from 'react'
2
2
 
3
3
  import Box from '../box'
4
4
  import Button from '../button'
5
- import { omitThemingProps, useStyleConfig, vui, VuiComponent } from '../core'
5
+ import { omitThemingProps, vui, VuiComponent } from '../core'
6
6
  import Icon from '../icon'
7
7
  import { Popover } from '../popover'
8
8
  import T from '../t'
9
9
  import { cs } from '../utils'
10
- import { useSidemenuContext } from './context'
11
10
  import { SidemenuItemProps } from './sidemenu.types'
11
+ import useSidemenuItem from './useSidemenuItem'
12
12
 
13
13
  /** A menu item. */
14
14
  export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
15
- const { className, children, icon, iconSize = 'md', isActive, onClick, title, ...rest } = omitThemingProps(props)
16
- const [displayChildren, setDisplayChildren] = useState(true)
17
- const { variant, size, isExpandedInternal } = useSidemenuContext()
18
- const styles = useStyleConfig('Sidemenu', useSidemenuContext)
15
+ const {
16
+ className,
17
+ children,
18
+ icon,
19
+ iconSize = 'md',
20
+ isActive,
21
+ isExpanded = true,
22
+ onClick,
23
+ onCollapse,
24
+ onExpand,
25
+ title,
26
+ ...rest
27
+ } = omitThemingProps(props)
28
+
29
+ const { isExpandedVertically, setIsExpandedVertically, isDark, size, isExpandedHorizontally, styles } =
30
+ useSidemenuItem(isExpanded)
31
+
32
+ useEffect(() => {
33
+ if (isExpandedVertically) onExpand?.()
34
+ if (!isExpandedVertically) onCollapse?.()
35
+ }, [isExpandedVertically])
19
36
 
20
- const isDark = variant === 'dark'
21
- const hasChildrenExpanded = !!children && isExpandedInternal
37
+ const hasChildrenExpanded = !!children && isExpandedHorizontally
22
38
 
23
39
  const innerContent = (
24
40
  <Box centerV px={2} py={1} w="100%" whiteSpace="pre">
@@ -32,14 +48,14 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
32
48
  const toggle = (e: MouseEvent<HTMLButtonElement>) => {
33
49
  e.preventDefault()
34
50
  e.stopPropagation()
35
- setDisplayChildren(!displayChildren)
51
+ setIsExpandedVertically(!isExpandedVertically)
36
52
  }
37
53
 
38
54
  const buttonStyles = {
39
55
  alignItems: 'center',
40
56
  border: 'none',
41
57
  borderRadius: 0,
42
- borderLeft: '3px solid transparent',
58
+ borderLeft: !hasChildrenExpanded && children ? 'none' : '3px solid transparent',
43
59
  borderLeftColor: isActive ? (isDark ? 'digiGreen.main' : 'seaBlue.main') : undefined,
44
60
  bg: isDark ? 'darkBlue.main' : isActive ? 'skyBlue.95' : 'white',
45
61
  color: hasChildrenExpanded ? 'seaBlue.main' : isDark ? 'digiGreen.main' : 'sandstone.10',
@@ -62,7 +78,7 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
62
78
  <Popover.Trigger className={cs('vui-sidemenu-item-popover', className)} {...buttonStyles}>
63
79
  <Box borderLeft={`3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}`}>{innerContent}</Box>
64
80
  </Popover.Trigger>
65
- <Popover.Content shadow={'none'}>
81
+ <Popover.Content shadow="none">
66
82
  <Box flexDirection="column" justifyContent="start" w="100%">
67
83
  {children}
68
84
  </Box>
@@ -74,7 +90,7 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
74
90
  {hasChildrenExpanded && (
75
91
  <Button
76
92
  className="vui-sidemenu-item-expand"
77
- icon={displayChildren ? 'falChevronUp' : 'falChevronDown'}
93
+ icon={isExpandedVertically ? 'falChevronUp' : 'falChevronDown'}
78
94
  mr={1}
79
95
  onClick={toggle}
80
96
  size="sm"
@@ -83,7 +99,7 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
83
99
  )}
84
100
  </Button>
85
101
  )}
86
- {!!children && hasChildrenExpanded && displayChildren && (
102
+ {!!children && hasChildrenExpanded && isExpandedVertically && (
87
103
  <Box flexDirection="column" justifyContent="start" w="100%">
88
104
  {children}
89
105
  </Box>
@@ -10,14 +10,14 @@ import { SidemenuTopProps } from './sidemenu.types'
10
10
  export const SidemenuTop = (props: SidemenuTopProps) => {
11
11
  const { className, leftSlot, rightSlot, ...rest } = omitThemingProps(props)
12
12
  const styles = useStyleConfig('Sidemenu', props)
13
- const { isExpandedInternal } = useSidemenuContext()
13
+ const { isExpandedHorizontally } = useSidemenuContext()
14
14
 
15
15
  if (!leftSlot && !rightSlot) return null
16
16
 
17
17
  return (
18
18
  <Box className={cs('vui-sidemenu-top', className)} mb={1} w="100%" {...styles.sidemenuTop} {...rest}>
19
19
  {!!leftSlot && leftSlot}
20
- {!!rightSlot && isExpandedInternal && rightSlot}
20
+ {!!rightSlot && isExpandedHorizontally && rightSlot}
21
21
  </Box>
22
22
  )
23
23
  }
@@ -0,0 +1,25 @@
1
+ import { useEffect, useState } from 'react'
2
+
3
+ import { useStyleConfig } from '../core'
4
+ import { useSidemenuContext } from './context'
5
+
6
+ const useSidemenuItem = (isExpanded: boolean) => {
7
+ const [isExpandedVertically, setIsExpandedVertically] = useState(isExpanded)
8
+ const { variant, size, isExpandedHorizontally } = useSidemenuContext()
9
+ const styles = useStyleConfig('Sidemenu', useSidemenuContext)
10
+
11
+ useEffect(() => {
12
+ if (isExpanded !== isExpandedVertically) setIsExpandedVertically(isExpanded)
13
+ }, [isExpanded])
14
+
15
+ return {
16
+ isExpandedVertically,
17
+ isDark: variant === 'dark',
18
+ size,
19
+ isExpandedHorizontally,
20
+ styles,
21
+ setIsExpandedVertically
22
+ }
23
+ }
24
+
25
+ export default useSidemenuItem
package/src/table/th.tsx CHANGED
@@ -2,7 +2,6 @@ import React from 'react'
2
2
 
3
3
  import Box from '../box'
4
4
  import { styled, useStyleConfig, vui } from '../core'
5
- import { T } from '../t'
6
5
  import { cs, MouseEvent, useCallbackRef } from '../utils'
7
6
  import { useTableContext } from './context'
8
7
  import { ThProps } from './table.types'
@@ -75,7 +74,6 @@ export const Th = vui<'th', ThProps>((props, ref) => {
75
74
  {isSortable && <TableSortIcon ml={1} my={0.5} order={sortOrder} />}
76
75
  </Box>
77
76
  )}
78
- {!title && <T color="white">a11y fix</T>}
79
77
  </ThBase>
80
78
  )
81
79
  })