@veracity/vui 2.14.5 → 2.14.6-beta.1
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/cjs/header/header.types.d.ts +1 -1
- package/dist/cjs/header/header.types.d.ts.map +1 -1
- package/dist/cjs/header/loggedInHeader.d.ts.map +1 -1
- package/dist/cjs/header/loggedInHeader.js +5 -5
- package/dist/cjs/sidemenu/sidemenu.js +7 -7
- package/dist/cjs/sidemenu/sidemenu.types.d.ts +6 -0
- package/dist/cjs/sidemenu/sidemenu.types.d.ts.map +1 -1
- package/dist/cjs/sidemenu/sidemenuItem.d.ts.map +1 -1
- package/dist/cjs/sidemenu/sidemenuItem.js +17 -14
- package/dist/cjs/sidemenu/sidemenuTop.js +2 -2
- package/dist/cjs/sidemenu/useSidemenuItem.d.ts +11 -0
- package/dist/cjs/sidemenu/useSidemenuItem.d.ts.map +1 -0
- package/dist/cjs/sidemenu/useSidemenuItem.js +23 -0
- package/dist/cjs/table/th.d.ts.map +1 -1
- package/dist/cjs/table/th.js +1 -3
- package/dist/esm/header/header.types.d.ts +1 -1
- package/dist/esm/header/header.types.d.ts.map +1 -1
- package/dist/esm/header/loggedInHeader.d.ts.map +1 -1
- package/dist/esm/header/loggedInHeader.js +5 -5
- package/dist/esm/sidemenu/sidemenu.js +7 -7
- package/dist/esm/sidemenu/sidemenu.types.d.ts +6 -0
- package/dist/esm/sidemenu/sidemenu.types.d.ts.map +1 -1
- package/dist/esm/sidemenu/sidemenuItem.d.ts.map +1 -1
- package/dist/esm/sidemenu/sidemenuItem.js +19 -16
- package/dist/esm/sidemenu/sidemenuTop.js +2 -2
- package/dist/esm/sidemenu/useSidemenuItem.d.ts +11 -0
- package/dist/esm/sidemenu/useSidemenuItem.d.ts.map +1 -0
- package/dist/esm/sidemenu/useSidemenuItem.js +21 -0
- package/dist/esm/table/th.d.ts.map +1 -1
- package/dist/esm/table/th.js +3 -6
- package/package.json +1 -1
- package/src/header/header.types.ts +1 -1
- package/src/header/loggedInHeader.tsx +12 -15
- package/src/sidemenu/sidemenu.tsx +8 -8
- package/src/sidemenu/sidemenu.types.ts +6 -0
- package/src/sidemenu/sidemenuItem.tsx +34 -16
- package/src/sidemenu/sidemenuTop.tsx +2 -2
- package/src/sidemenu/useSidemenuItem.ts +25 -0
- package/src/table/th.tsx +0 -2
|
@@ -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
|
|
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,
|
|
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 [
|
|
56
|
-
const context = (0, react_1.useMemo)(() => (0, utils_1.filterUndefined)({ size, variant,
|
|
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
|
-
|
|
60
|
+
setIsExpandedHorizontally(isExpanded);
|
|
61
61
|
}, [isExpanded]);
|
|
62
|
-
const onToggle = () =>
|
|
63
|
-
const w =
|
|
64
|
-
const icon = `falArrow${
|
|
65
|
-
const justifyContent =
|
|
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,
|
|
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,wCAiGmB,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
|
|
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
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
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
|
-
|
|
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
|
-
react_1.default.createElement(popover_1.Popover.Trigger,
|
|
70
|
-
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:
|
|
72
|
+
react_1.default.createElement(popover_1.Popover.Trigger, { as: box_1.default, className: (0, utils_1.cs)('vui-sidemenu-item-popover', className) },
|
|
73
|
+
react_1.default.createElement(box_1.default, Object.assign({}, buttonStyles, { borderLeft: `3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}` }), innerContent)),
|
|
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:
|
|
75
|
-
!!children && hasChildrenExpanded &&
|
|
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 {
|
|
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 &&
|
|
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":"
|
|
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"}
|
package/dist/cjs/table/th.js
CHANGED
|
@@ -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;
|
|
@@ -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
|
|
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,
|
|
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 [
|
|
15
|
-
const context = useMemo(() => filterUndefined({ size, variant,
|
|
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
|
-
|
|
19
|
+
setIsExpandedHorizontally(isExpanded);
|
|
20
20
|
}, [isExpanded]);
|
|
21
|
-
const onToggle = () =>
|
|
22
|
-
const w =
|
|
23
|
-
const icon = `falArrow${
|
|
24
|
-
const justifyContent =
|
|
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,
|
|
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,wCAiGmB,CAAA;AAI5C,eAAe,YAAY,CAAA"}
|
|
@@ -1,33 +1,36 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { useEffect } from 'react';
|
|
2
2
|
import Box from '../box';
|
|
3
3
|
import Button from '../button';
|
|
4
|
-
import { omitThemingProps,
|
|
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
|
|
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
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
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
|
-
|
|
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',
|
|
@@ -44,13 +47,13 @@ export const SidemenuItem = vui((props, ref) => {
|
|
|
44
47
|
};
|
|
45
48
|
return (React.createElement(Box, { flexDirection: "column", ref: ref, w: "100%" },
|
|
46
49
|
!hasChildrenExpanded && children ? (React.createElement(Popover, { offset: [0, 0], placement: "right-start", trigger: "mouseenter" },
|
|
47
|
-
React.createElement(Popover.Trigger, { className: cs('vui-sidemenu-item-popover', className)
|
|
48
|
-
React.createElement(Box, { borderLeft: `3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}` }, innerContent)),
|
|
49
|
-
React.createElement(Popover.Content, { shadow:
|
|
50
|
+
React.createElement(Popover.Trigger, { as: Box, className: cs('vui-sidemenu-item-popover', className) },
|
|
51
|
+
React.createElement(Box, { ...buttonStyles, borderLeft: `3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}` }, innerContent)),
|
|
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:
|
|
53
|
-
!!children && hasChildrenExpanded &&
|
|
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 {
|
|
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 &&
|
|
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":"
|
|
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"}
|
package/dist/esm/table/th.js
CHANGED
|
@@ -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
|
-
|
|
40
|
-
|
|
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.
|
|
3
|
+
"version": "2.14.6-beta.1",
|
|
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",
|
|
@@ -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
|
|
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 [
|
|
29
|
+
const [isExpandedHorizontally, setIsExpandedHorizontally] = useState(isExpanded)
|
|
30
30
|
const context = useMemo(
|
|
31
|
-
() => filterUndefined({ size, variant,
|
|
32
|
-
[size, variant,
|
|
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
|
-
|
|
40
|
+
setIsExpandedHorizontally(isExpanded)
|
|
41
41
|
}, [isExpanded])
|
|
42
42
|
|
|
43
|
-
const onToggle = () =>
|
|
43
|
+
const onToggle = () => setIsExpandedHorizontally(!isExpandedHorizontally)
|
|
44
44
|
|
|
45
|
-
const w =
|
|
46
|
-
const icon = `falArrow${
|
|
47
|
-
const justifyContent =
|
|
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,
|
|
1
|
+
import React, { MouseEvent, useEffect } from 'react'
|
|
2
2
|
|
|
3
3
|
import Box from '../box'
|
|
4
4
|
import Button from '../button'
|
|
5
|
-
import { omitThemingProps,
|
|
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 {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
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)
|
|
19
31
|
|
|
20
|
-
|
|
21
|
-
|
|
32
|
+
useEffect(() => {
|
|
33
|
+
if (isExpandedVertically) onExpand?.()
|
|
34
|
+
if (!isExpandedVertically) onCollapse?.()
|
|
35
|
+
}, [isExpandedVertically])
|
|
36
|
+
|
|
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
|
-
|
|
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',
|
|
@@ -59,10 +75,12 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
|
|
|
59
75
|
<Box flexDirection="column" ref={ref} w="100%">
|
|
60
76
|
{!hasChildrenExpanded && children ? (
|
|
61
77
|
<Popover offset={[0, 0]} placement="right-start" trigger="mouseenter">
|
|
62
|
-
<Popover.Trigger className={cs('vui-sidemenu-item-popover', className)}
|
|
63
|
-
<Box borderLeft={`3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}`}>
|
|
78
|
+
<Popover.Trigger as={Box} className={cs('vui-sidemenu-item-popover', className)}>
|
|
79
|
+
<Box {...buttonStyles} borderLeft={`3px solid ${isDark ? 'digiGreen.main' : 'seaBlue.main'}`}>
|
|
80
|
+
{innerContent}
|
|
81
|
+
</Box>
|
|
64
82
|
</Popover.Trigger>
|
|
65
|
-
<Popover.Content shadow=
|
|
83
|
+
<Popover.Content shadow="none">
|
|
66
84
|
<Box flexDirection="column" justifyContent="start" w="100%">
|
|
67
85
|
{children}
|
|
68
86
|
</Box>
|
|
@@ -74,7 +92,7 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
|
|
|
74
92
|
{hasChildrenExpanded && (
|
|
75
93
|
<Button
|
|
76
94
|
className="vui-sidemenu-item-expand"
|
|
77
|
-
icon={
|
|
95
|
+
icon={isExpandedVertically ? 'falChevronUp' : 'falChevronDown'}
|
|
78
96
|
mr={1}
|
|
79
97
|
onClick={toggle}
|
|
80
98
|
size="sm"
|
|
@@ -83,7 +101,7 @@ export const SidemenuItem = vui<'button', SidemenuItemProps>((props, ref) => {
|
|
|
83
101
|
)}
|
|
84
102
|
</Button>
|
|
85
103
|
)}
|
|
86
|
-
{!!children && hasChildrenExpanded &&
|
|
104
|
+
{!!children && hasChildrenExpanded && isExpandedVertically && (
|
|
87
105
|
<Box flexDirection="column" justifyContent="start" w="100%">
|
|
88
106
|
{children}
|
|
89
107
|
</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 {
|
|
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 &&
|
|
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
|
})
|