@veracity/vui 2.9.0 → 2.10.0-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/accordion/accordionItem.d.ts.map +1 -1
- package/dist/cjs/avatar/theme.js +1 -1
- package/dist/cjs/button/button.js +1 -1
- package/dist/cjs/core/vuiProvider/globalStyle.d.ts.map +1 -1
- package/dist/cjs/core/vuiProvider/globalStyle.js +6 -1
- package/dist/cjs/header/headerAccount.d.ts.map +1 -1
- package/dist/cjs/header/headerAccount.js +1 -1
- package/dist/cjs/header/headerAccountUserInfo.js +1 -1
- package/dist/cjs/header/headerMobileToggle.d.ts.map +1 -1
- package/dist/cjs/header/headerMobileToggle.js +1 -1
- package/dist/cjs/header/headerNotifications.d.ts.map +1 -1
- package/dist/cjs/header/headerNotifications.js +1 -1
- package/dist/cjs/header/headerServices.d.ts.map +1 -1
- package/dist/cjs/header/headerServices.js +1 -1
- package/dist/cjs/input/autoCompletePopover.d.ts +7 -0
- package/dist/cjs/input/autoCompletePopover.d.ts.map +1 -0
- package/dist/cjs/input/autoCompletePopover.js +31 -0
- package/dist/cjs/input/helpText.d.ts +1 -1
- package/dist/cjs/input/helpText.js +1 -1
- package/dist/cjs/input/input.d.ts +0 -1
- package/dist/cjs/input/input.d.ts.map +1 -1
- package/dist/cjs/input/input.js +32 -39
- package/dist/cjs/input/input.types.d.ts +11 -0
- package/dist/cjs/input/input.types.d.ts.map +1 -1
- package/dist/cjs/list/list.types.d.ts +2 -0
- package/dist/cjs/list/list.types.d.ts.map +1 -1
- package/dist/cjs/list/theme.d.ts +20 -0
- package/dist/cjs/list/theme.d.ts.map +1 -1
- package/dist/cjs/list/theme.js +21 -1
- package/dist/cjs/popover/popover.d.ts.map +1 -1
- package/dist/cjs/popover/popover.js +2 -2
- package/dist/cjs/popover/popover.types.d.ts +3 -0
- package/dist/cjs/popover/popover.types.d.ts.map +1 -1
- package/dist/cjs/popover/usePopover.d.ts.map +1 -1
- package/dist/cjs/popover/usePopover.js +2 -2
- package/dist/cjs/progressCircular/progressCircular.d.ts.map +1 -1
- package/dist/cjs/progressCircular/progressCircular.js +1 -1
- package/dist/cjs/radio/radio.d.ts.map +1 -1
- package/dist/cjs/radio/radio.js +2 -1
- package/dist/cjs/select/select.d.ts.map +1 -1
- package/dist/cjs/select/select.js +2 -2
- package/dist/cjs/select/useSelect.types.d.ts +3 -0
- package/dist/cjs/select/useSelect.types.d.ts.map +1 -1
- package/dist/cjs/sidemenu/consts.d.ts +0 -1
- package/dist/cjs/sidemenu/consts.d.ts.map +1 -1
- package/dist/cjs/sidemenu/consts.js +1 -2
- package/dist/cjs/sidemenu/sidemenu.d.ts +1 -1
- package/dist/cjs/sidemenu/sidemenu.d.ts.map +1 -1
- package/dist/cjs/sidemenu/sidemenu.js +7 -6
- package/dist/cjs/sidemenu/sidemenuItem.d.ts.map +1 -1
- package/dist/cjs/sidemenu/sidemenuItem.js +5 -3
- package/dist/cjs/sidemenu/sidemenuTop.d.ts.map +1 -1
- package/dist/cjs/sidemenu/sidemenuTop.js +2 -2
- package/dist/cjs/sidemenu/theme.d.ts +42 -3
- package/dist/cjs/sidemenu/theme.d.ts.map +1 -1
- package/dist/cjs/sidemenu/theme.js +43 -3
- package/dist/cjs/switch/consts.d.ts +2 -0
- package/dist/cjs/switch/consts.d.ts.map +1 -1
- package/dist/cjs/switch/consts.js +2 -0
- package/dist/cjs/switch/switchButton.d.ts.map +1 -1
- package/dist/cjs/switch/switchButton.js +1 -2
- package/dist/cjs/table/tableSortIcon.js +1 -1
- package/dist/cjs/table/useTable.d.ts.map +1 -1
- package/dist/cjs/table/useTable.js +9 -3
- package/dist/cjs/theme/components.d.ts +62 -3
- package/dist/cjs/theme/components.d.ts.map +1 -1
- package/dist/cjs/theme/defaultTheme.d.ts +63 -3
- package/dist/cjs/theme/defaultTheme.d.ts.map +1 -1
- package/dist/cjs/theme/foundations/colors.d.ts +2 -0
- package/dist/cjs/theme/foundations/colors.d.ts.map +1 -1
- package/dist/cjs/theme/foundations/colors.js +1 -0
- package/dist/cjs/theme/foundations/index.d.ts +1 -0
- package/dist/cjs/theme/foundations/index.d.ts.map +1 -1
- package/dist/cjs/tree/tree.js +1 -1
- package/dist/cjs/tree/treeItem.d.ts.map +1 -1
- package/dist/cjs/tree/treeItem.js +6 -2
- package/dist/cjs/tutorial/tutorial.types.d.ts +3 -3
- package/dist/cjs/tutorial/tutorial.types.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorialCard.d.ts.map +1 -1
- package/dist/cjs/tutorial/tutorialCard.js +1 -4
- package/dist/cjs/utils/array.d.ts.map +1 -1
- package/dist/cjs/utils/array.js +2 -0
- package/dist/cjs/utils/types.d.ts +2 -1
- package/dist/cjs/utils/types.d.ts.map +1 -1
- package/dist/esm/accordion/accordionItem.d.ts.map +1 -1
- package/dist/esm/avatar/theme.js +1 -1
- package/dist/esm/button/button.js +1 -1
- package/dist/esm/core/vuiProvider/globalStyle.d.ts.map +1 -1
- package/dist/esm/core/vuiProvider/globalStyle.js +6 -1
- package/dist/esm/header/headerAccount.d.ts.map +1 -1
- package/dist/esm/header/headerAccount.js +1 -1
- package/dist/esm/header/headerAccountUserInfo.js +1 -1
- package/dist/esm/header/headerMobileToggle.d.ts.map +1 -1
- package/dist/esm/header/headerMobileToggle.js +1 -1
- package/dist/esm/header/headerNotifications.d.ts.map +1 -1
- package/dist/esm/header/headerNotifications.js +1 -1
- package/dist/esm/header/headerServices.d.ts.map +1 -1
- package/dist/esm/header/headerServices.js +1 -1
- package/dist/esm/input/autoCompletePopover.d.ts +7 -0
- package/dist/esm/input/autoCompletePopover.d.ts.map +1 -0
- package/dist/esm/input/autoCompletePopover.js +23 -0
- package/dist/esm/input/helpText.d.ts +1 -1
- package/dist/esm/input/helpText.js +1 -1
- package/dist/esm/input/input.d.ts +0 -1
- package/dist/esm/input/input.d.ts.map +1 -1
- package/dist/esm/input/input.js +31 -38
- package/dist/esm/input/input.types.d.ts +11 -0
- package/dist/esm/input/input.types.d.ts.map +1 -1
- package/dist/esm/list/list.types.d.ts +2 -0
- package/dist/esm/list/list.types.d.ts.map +1 -1
- package/dist/esm/list/theme.d.ts +20 -0
- package/dist/esm/list/theme.d.ts.map +1 -1
- package/dist/esm/list/theme.js +21 -1
- package/dist/esm/popover/popover.d.ts.map +1 -1
- package/dist/esm/popover/popover.js +2 -2
- package/dist/esm/popover/popover.types.d.ts +3 -0
- package/dist/esm/popover/popover.types.d.ts.map +1 -1
- package/dist/esm/popover/usePopover.d.ts.map +1 -1
- package/dist/esm/popover/usePopover.js +2 -1
- package/dist/esm/progressCircular/progressCircular.d.ts.map +1 -1
- package/dist/esm/progressCircular/progressCircular.js +1 -1
- package/dist/esm/radio/radio.d.ts.map +1 -1
- package/dist/esm/radio/radio.js +2 -1
- package/dist/esm/select/select.d.ts.map +1 -1
- package/dist/esm/select/select.js +2 -2
- package/dist/esm/select/useSelect.types.d.ts +3 -0
- package/dist/esm/select/useSelect.types.d.ts.map +1 -1
- package/dist/esm/sidemenu/consts.d.ts +0 -1
- package/dist/esm/sidemenu/consts.d.ts.map +1 -1
- package/dist/esm/sidemenu/consts.js +0 -1
- package/dist/esm/sidemenu/sidemenu.d.ts +1 -1
- package/dist/esm/sidemenu/sidemenu.d.ts.map +1 -1
- package/dist/esm/sidemenu/sidemenu.js +8 -7
- package/dist/esm/sidemenu/sidemenuItem.d.ts.map +1 -1
- package/dist/esm/sidemenu/sidemenuItem.js +6 -4
- package/dist/esm/sidemenu/sidemenuTop.d.ts.map +1 -1
- package/dist/esm/sidemenu/sidemenuTop.js +3 -3
- package/dist/esm/sidemenu/theme.d.ts +42 -3
- package/dist/esm/sidemenu/theme.d.ts.map +1 -1
- package/dist/esm/sidemenu/theme.js +43 -3
- package/dist/esm/switch/consts.d.ts +2 -0
- package/dist/esm/switch/consts.d.ts.map +1 -1
- package/dist/esm/switch/consts.js +2 -0
- package/dist/esm/switch/switchButton.d.ts.map +1 -1
- package/dist/esm/switch/switchButton.js +1 -2
- package/dist/esm/table/tableSortIcon.js +1 -1
- package/dist/esm/table/useTable.d.ts.map +1 -1
- package/dist/esm/table/useTable.js +9 -3
- package/dist/esm/theme/components.d.ts +62 -3
- package/dist/esm/theme/components.d.ts.map +1 -1
- package/dist/esm/theme/defaultTheme.d.ts +63 -3
- package/dist/esm/theme/defaultTheme.d.ts.map +1 -1
- package/dist/esm/theme/foundations/colors.d.ts +2 -0
- package/dist/esm/theme/foundations/colors.d.ts.map +1 -1
- package/dist/esm/theme/foundations/colors.js +1 -0
- package/dist/esm/theme/foundations/index.d.ts +1 -0
- package/dist/esm/theme/foundations/index.d.ts.map +1 -1
- package/dist/esm/tree/tree.js +1 -1
- package/dist/esm/tree/treeItem.d.ts.map +1 -1
- package/dist/esm/tree/treeItem.js +7 -3
- package/dist/esm/tutorial/tutorial.types.d.ts +3 -3
- package/dist/esm/tutorial/tutorial.types.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorialCard.d.ts.map +1 -1
- package/dist/esm/tutorial/tutorialCard.js +1 -4
- package/dist/esm/utils/array.d.ts.map +1 -1
- package/dist/esm/utils/array.js +2 -0
- package/dist/esm/utils/types.d.ts +2 -1
- package/dist/esm/utils/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/accordion/accordionItem.tsx +0 -1
- package/src/avatar/theme.ts +1 -1
- package/src/button/button.tsx +2 -2
- package/src/core/vuiProvider/globalStyle.tsx +6 -1
- package/src/header/headerAccount.tsx +1 -0
- package/src/header/headerAccountUserInfo.tsx +1 -1
- package/src/header/headerMobileToggle.tsx +1 -0
- package/src/header/headerNotifications.tsx +1 -2
- package/src/header/headerServices.tsx +1 -0
- package/src/input/autoCompletePopover.tsx +49 -0
- package/src/input/helpText.tsx +1 -1
- package/src/input/input.tsx +54 -67
- package/src/input/input.types.ts +12 -0
- package/src/list/list.types.ts +2 -0
- package/src/list/theme.ts +21 -1
- package/src/popover/popover.tsx +2 -3
- package/src/popover/popover.types.ts +4 -0
- package/src/popover/usePopover.ts +2 -0
- package/src/progressCircular/progressCircular.tsx +1 -0
- package/src/radio/radio.tsx +25 -9
- package/src/select/select.tsx +3 -1
- package/src/select/useSelect.types.ts +3 -0
- package/src/sidemenu/consts.ts +0 -2
- package/src/sidemenu/sidemenu.tsx +26 -7
- package/src/sidemenu/sidemenuItem.tsx +10 -8
- package/src/sidemenu/sidemenuTop.tsx +3 -4
- package/src/sidemenu/theme.ts +43 -3
- package/src/switch/consts.ts +3 -1
- package/src/switch/switchButton.tsx +1 -2
- package/src/table/tableSortIcon.tsx +1 -1
- package/src/table/useTable.ts +12 -4
- package/src/theme/foundations/colors.ts +1 -0
- package/src/tree/tree.tsx +1 -1
- package/src/tree/treeItem.tsx +8 -2
- package/src/tutorial/tutorial.types.ts +3 -3
- package/src/tutorial/tutorialCard.tsx +1 -4
- package/src/utils/array.ts +1 -0
- package/src/utils/types.ts +3 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/theme/foundations/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/theme/foundations/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqBA,wBAqBC"}
|
package/dist/esm/tree/tree.js
CHANGED
|
@@ -68,7 +68,7 @@ export const Tree = vui((props, ref) => {
|
|
|
68
68
|
};
|
|
69
69
|
return (React.createElement(TreeProvider, { value: context },
|
|
70
70
|
React.createElement(TreeBase, { className: cs('vui-tree', className), ref: ref, ...styles.container, ...rest },
|
|
71
|
-
React.createElement(List, { w: 1 }, itemsInternal?.map(({ id, isActive, ...props }, index) => {
|
|
71
|
+
React.createElement(List, { role: "tree", w: 1 }, itemsInternal?.map(({ id, isActive, ...props }, index) => {
|
|
72
72
|
return (React.createElement(TreeItem, { activeItemIndex: activeItemIndex, iconCollapse: iconCollapseInternal, iconExpand: iconExpandInternal, id: id, isActive: isActive ? isActive : activeItemIndex ? activeItemIndex === id : false, isFirstLevel: true, key: id ?? index, onClickTreeItem: onClickTreeItem, ...props }));
|
|
73
73
|
})))));
|
|
74
74
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"treeItem.d.ts","sourceRoot":"","sources":["../../../src/tree/treeItem.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAK5C,eAAO,MAAM,YAAY,8HAKxB,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,QAAQ,
|
|
1
|
+
{"version":3,"file":"treeItem.d.ts","sourceRoot":"","sources":["../../../src/tree/treeItem.tsx"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAK5C,eAAO,MAAM,YAAY,8HAKxB,CAAA;AAGD;;GAEG;AACH,eAAO,MAAM,QAAQ,qDAyLnB,CAAA;AAEF,eAAe,QAAQ,CAAA"}
|
|
@@ -2,7 +2,7 @@ import React, { useEffect, useState } from 'react';
|
|
|
2
2
|
import { Box } from '../box';
|
|
3
3
|
import { styled, useStyleConfig, vui } from '../core';
|
|
4
4
|
import { List } from '../list';
|
|
5
|
-
import { cs, isArray, isReactText, vuiColorToRGBA } from '../utils';
|
|
5
|
+
import { cs, filterUndefined, isArray, isReactText, vuiColorToRGBA } from '../utils';
|
|
6
6
|
import { useTreeContext } from './context';
|
|
7
7
|
import TreeIcon from './treeIcon';
|
|
8
8
|
import TreeText from './treeText';
|
|
@@ -87,6 +87,10 @@ export const TreeItem = vui((props, ref) => {
|
|
|
87
87
|
if (!isCollapsable) {
|
|
88
88
|
textMl += 3.8;
|
|
89
89
|
}
|
|
90
|
+
const aliasedProps = filterUndefined({
|
|
91
|
+
'aria-expanded': isCollapsable ? !collapsedInternal : undefined,
|
|
92
|
+
role: 'treeitem'
|
|
93
|
+
});
|
|
90
94
|
// hoverBg cannot be styled directly from theme, it has to be JS manipulated because of event propagation
|
|
91
95
|
return (React.createElement(TreeItemBase, { className: cs('vui-treeItem', isFirstLevel ? 'vui-treeItem-firstLevel' : '', className), color: isFirstLevel ? styles?.firstLevelItem?.color : color, h: collapsedInternal ? h : isCollapsable ? 'auto' : h, id: id.toString(), m: 0, onClick: !disabled ? (e) => toggle(e) : undefined, onMouseOut: !disabled ? (e) => hoverTreeItem(e, 'out') : undefined, onMouseOver: !disabled ? (e) => hoverTreeItem(e, 'over') : undefined, p: 0, propagatedPL: propagatedPL, ref: ref, w: 1, ...itemStyles, bg: isFirstLevel
|
|
92
96
|
? isActiveInternal
|
|
@@ -94,12 +98,12 @@ export const TreeItem = vui((props, ref) => {
|
|
|
94
98
|
: styles?.firstLevelItem?.bg
|
|
95
99
|
: isActiveInternal
|
|
96
100
|
? styles?.item?.activeBg
|
|
97
|
-
: bg, hoverBg: undefined, ...rest },
|
|
101
|
+
: bg, hoverBg: undefined, ...aliasedProps, ...rest },
|
|
98
102
|
React.createElement(React.Fragment, null,
|
|
99
103
|
React.createElement(Box, { centerV: true, className: cs('vui-treeItem-permanent', isActiveInternal ? 'vui-treeItem-active' : '', isFirstLevel ? 'vui-treeItem-firstLevel' : ''), fontWeight: isActiveInternal ? '600' : '500', pl: `${innerBoxPl}px` },
|
|
100
104
|
items && items?.length > 0 && (React.createElement(React.Fragment, null, collapsedInternal ? React.createElement(TreeIcon, { mx: 1.5, name: iconExpand }) : React.createElement(TreeIcon, { mx: 1.5, name: iconCollapse }))),
|
|
101
105
|
isReactText(text) ? React.createElement(TreeText, { ml: textMl, ...{ isTruncated, text } }) : text),
|
|
102
|
-
isCollapsable && !collapsedInternal && (React.createElement(List, { w: 1 }, children ??
|
|
106
|
+
isCollapsable && !collapsedInternal && (React.createElement(List, { role: "tree", w: 1 }, children ??
|
|
103
107
|
(isArray(items)
|
|
104
108
|
? items.map(({ key, propagatedPL, ...props }, index) => {
|
|
105
109
|
return (React.createElement(TreeItem, { activeItemIndex: activeItemIndex, iconCollapse: iconCollapse, iconExpand: iconExpand, key: key ?? index, onClickTreeItem: onClickTreeItem, propagatedPL: innerListPl, ...props }));
|
|
@@ -17,11 +17,11 @@ export type TutorialProps = {
|
|
|
17
17
|
className?: string;
|
|
18
18
|
/** An id for further handling with localStorage */
|
|
19
19
|
id: string;
|
|
20
|
-
/** Invoked once the action button clicked. */
|
|
20
|
+
/** Invoked once the action button is clicked. */
|
|
21
21
|
onAction?: () => void;
|
|
22
|
-
/** Invoked once the dismiss button clicked. */
|
|
22
|
+
/** Invoked once the dismiss button is clicked. */
|
|
23
23
|
onDismiss?: () => void;
|
|
24
|
-
/** Invoked once the finish button clicked. */
|
|
24
|
+
/** Invoked once the finish button is clicked. */
|
|
25
25
|
onFinish?: () => void;
|
|
26
26
|
/** Popover placement */
|
|
27
27
|
placement?: Placement;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tutorial.types.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorial.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sCAAsC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAA;IACV,
|
|
1
|
+
{"version":3,"file":"tutorial.types.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorial.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,sCAAsC;IACtC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAA;IACV,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,wBAAwB;IACxB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,wBAAwB;IACxB,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,qBAAqB;IACrB,KAAK,EAAE,MAAM,CAAA;IACb,wBAAwB;IACxB,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,2BAA2B;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,mCAAmC;IACnC,MAAM,EAAE,OAAO,CAAA;IACf,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,mBAAmB;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,gBAAgB,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,UAAU,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tutorialCard.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorialCard.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,iBAAiB,EAAyC,MAAM,kBAAkB,CAAA;AAG3F,wBAAgB,YAAY,CAAC,EAC3B,WAAsB,EACtB,SAAS,EACT,KAAK,EACL,YAAY,EACZ,KAAK,EAAE,UAAe,EACtB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,QAAQ,EACT,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"tutorialCard.d.ts","sourceRoot":"","sources":["../../../src/tutorial/tutorialCard.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,iBAAiB,EAAyC,MAAM,kBAAkB,CAAA;AAG3F,wBAAgB,YAAY,CAAC,EAC3B,WAAsB,EACtB,SAAS,EACT,KAAK,EACL,YAAY,EACZ,KAAK,EAAE,UAAe,EACtB,cAAc,EACd,QAAQ,EACR,SAAS,EACT,QAAQ,EACT,EAAE,iBAAiB,eAoHnB"}
|
|
@@ -32,8 +32,5 @@ export function TutorialCard({ actionLabel = 'Action', className, title, readMor
|
|
|
32
32
|
(showSkipButton || isFinalStep || !!onAction) && (React.createElement(Box, { alignItems: "center", justifyContent: "space-between" },
|
|
33
33
|
showSkipButton && !isFinalStep && (React.createElement(Button, { mr: 2, onClick: onDismiss, variant: "primaryLight" }, "Skip")),
|
|
34
34
|
isFinalStep && (React.createElement(Button, { mr: 2, onClick: onFinish, variant: "primaryLight" }, "Finish")),
|
|
35
|
-
!!onAction && (React.createElement(Button, { mr: 6, onClick: onAction, variant: "primaryLight" },
|
|
36
|
-
React.createElement(React.Fragment, null,
|
|
37
|
-
actionLabel,
|
|
38
|
-
onAction))))))));
|
|
35
|
+
!!onAction && (React.createElement(Button, { mr: 6, onClick: onAction, variant: "primaryLight" }, actionLabel)))))));
|
|
39
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAG9B,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,GAAE,IAAI,CAAC,OAAO,CAAS,WAGlF,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["../../../src/utils/array.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAA;AAG9B,iGAAiG;AACjG,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,GAAE,IAAI,CAAC,OAAO,CAAS,WAGlF,CAAC,SAAS,CAAC,YAY3B;AAGD,oFAAoF;AACpF,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAEtD"}
|
package/dist/esm/utils/array.js
CHANGED
|
@@ -43,8 +43,9 @@ export type RefPropsOf<C extends ElementType, Props = {}> = RightJoinProps<Compo
|
|
|
43
43
|
export type RenderProps<P> = React.ReactNode | ((props: P) => React.ReactNode);
|
|
44
44
|
/** Merges props definitions, overriding source keys */
|
|
45
45
|
export type RightJoinProps<SourceProps, OverrideProps> = Omit<SourceProps, keyof OverrideProps> & OverrideProps;
|
|
46
|
+
export type SortOrder = 'asc' | 'desc' | null;
|
|
46
47
|
export type Sort<T = string> = {
|
|
47
48
|
key: T;
|
|
48
|
-
order:
|
|
49
|
+
order: SortOrder;
|
|
49
50
|
};
|
|
50
51
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/utils/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@veracity/vui",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.0-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",
|
|
@@ -23,7 +23,6 @@ export const AccordionItem = (props: AccordionItemProps) => {
|
|
|
23
23
|
...rest
|
|
24
24
|
} = omitThemingProps(props)
|
|
25
25
|
const [collapsedInternal, setIsCollapsedInternal] = useState<boolean>(false)
|
|
26
|
-
|
|
27
26
|
const styles = useStyleConfig('Accordion', useAccordionContext())
|
|
28
27
|
|
|
29
28
|
useEffect(() => {
|
package/src/avatar/theme.ts
CHANGED
package/src/button/button.tsx
CHANGED
|
@@ -98,6 +98,7 @@ export const Button = vui<'button', ButtonProps>((props, ref) => {
|
|
|
98
98
|
const pr = (icon || iconRight ? spaceXItem : spaceXText) + 'px'
|
|
99
99
|
|
|
100
100
|
let ariaLabel = 'vui-button'
|
|
101
|
+
|
|
101
102
|
if (title) {
|
|
102
103
|
ariaLabel = title
|
|
103
104
|
} else {
|
|
@@ -142,7 +143,6 @@ export const Button = vui<'button', ButtonProps>((props, ref) => {
|
|
|
142
143
|
return (
|
|
143
144
|
<ButtonProvider value={context}>
|
|
144
145
|
<ButtonBase
|
|
145
|
-
aria-label={ariaLabel}
|
|
146
146
|
borderWidth={border}
|
|
147
147
|
className={cs('vui-button', className, isActive && activeClassName, `vui-button-variant-${variantProp}`)}
|
|
148
148
|
disabled={disabled}
|
|
@@ -151,7 +151,7 @@ export const Button = vui<'button', ButtonProps>((props, ref) => {
|
|
|
151
151
|
pl={pl}
|
|
152
152
|
pr={isDropDown ? 0 : pr}
|
|
153
153
|
ref={ref}
|
|
154
|
-
title={title}
|
|
154
|
+
title={title || ariaLabel}
|
|
155
155
|
type="button"
|
|
156
156
|
variant={variant}
|
|
157
157
|
{...buttonStyles}
|
|
@@ -17,7 +17,6 @@ type GlobalStyleProps = {
|
|
|
17
17
|
*/
|
|
18
18
|
export default createGlobalStyle<GlobalStyleProps>`
|
|
19
19
|
${fontFaces}
|
|
20
|
-
|
|
21
20
|
:root {
|
|
22
21
|
${generateCSSVariables}
|
|
23
22
|
}
|
|
@@ -29,18 +28,23 @@ export default createGlobalStyle<GlobalStyleProps>`
|
|
|
29
28
|
}
|
|
30
29
|
|
|
31
30
|
button,
|
|
31
|
+
.vui-avatar,
|
|
32
|
+
.vui-tag,
|
|
32
33
|
.vui-switchTrack {
|
|
33
34
|
--x-ring-color: transparent;
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
button:focus-visible,
|
|
37
38
|
li:focus-visible,
|
|
39
|
+
.vui-avatar:focus-visible,
|
|
40
|
+
.vui-tag:focus-visible,
|
|
38
41
|
.vui-switchTrack:focus-visible {
|
|
39
42
|
--x-ring-color: var(--vui-colors-focusColor);
|
|
40
43
|
outline: var(--vui-colors-focusColor) solid 3px;
|
|
41
44
|
z-index: 1;
|
|
42
45
|
}
|
|
43
46
|
|
|
47
|
+
//@formatter:off
|
|
44
48
|
${p =>
|
|
45
49
|
p.globalStyle &&
|
|
46
50
|
css`
|
|
@@ -59,6 +63,7 @@ export default createGlobalStyle<GlobalStyleProps>`
|
|
|
59
63
|
}
|
|
60
64
|
`}
|
|
61
65
|
|
|
66
|
+
//@formatter:on
|
|
62
67
|
@keyframes vui-bounce {
|
|
63
68
|
${bounce}
|
|
64
69
|
}
|
|
@@ -39,7 +39,7 @@ export const HeaderAccountUserInfo = vui<'div', HeaderAccountUserInfoProps>((pro
|
|
|
39
39
|
)}
|
|
40
40
|
{companyName && <T fontSize={isApplication ? '12px' : 'inherit'}>{companyName}</T>}
|
|
41
41
|
{role && (
|
|
42
|
-
<T color="sandstone.
|
|
42
|
+
<T color="sandstone.45" fontSize={isApplication ? '12px' : 'inherit'}>
|
|
43
43
|
{role}
|
|
44
44
|
</T>
|
|
45
45
|
)}
|
|
@@ -36,9 +36,8 @@ export const HeaderNotifications = vui<'a', HeaderNotificationsProps>((props, re
|
|
|
36
36
|
className={cs('vui-headerNotifications', className)}
|
|
37
37
|
href={url ?? links.notifications}
|
|
38
38
|
minW={0}
|
|
39
|
-
ml={1}
|
|
40
39
|
position="relative"
|
|
41
|
-
px="
|
|
40
|
+
px="9px"
|
|
42
41
|
ref={ref}
|
|
43
42
|
size="lg"
|
|
44
43
|
title="Notifications"
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
|
|
3
|
+
import { styled } from '../core'
|
|
4
|
+
import { List } from '../list'
|
|
5
|
+
import { Popover } from '../popover'
|
|
6
|
+
import { cs } from '../utils'
|
|
7
|
+
import { AutoCompletePopoverProps } from './input.types'
|
|
8
|
+
|
|
9
|
+
const InputContainer = styled.divBox`
|
|
10
|
+
width: 100%;
|
|
11
|
+
`
|
|
12
|
+
|
|
13
|
+
const options = {
|
|
14
|
+
aria: {
|
|
15
|
+
expanded: false
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** Wrapper for the autocomplete popover. */
|
|
20
|
+
export const AutoCompletePopover = ({
|
|
21
|
+
autoCompleteOptions,
|
|
22
|
+
autoCompleteMaxHeight,
|
|
23
|
+
children,
|
|
24
|
+
filterAutoCompleteOptions,
|
|
25
|
+
onAutoCompleteSelect
|
|
26
|
+
}: AutoCompletePopoverProps) => {
|
|
27
|
+
if (!autoCompleteOptions?.length) return children
|
|
28
|
+
|
|
29
|
+
return (
|
|
30
|
+
<Popover options={options} placement="bottom-start">
|
|
31
|
+
<Popover.Trigger as={InputContainer} className={cs('vui-input-popoverTrigger')}>
|
|
32
|
+
{children}
|
|
33
|
+
</Popover.Trigger>
|
|
34
|
+
{!!autoCompleteOptions && (
|
|
35
|
+
<Popover.Content>
|
|
36
|
+
<List maxH={autoCompleteMaxHeight}>
|
|
37
|
+
{autoCompleteOptions?.filter?.(filterAutoCompleteOptions).map((i: string) => (
|
|
38
|
+
<List.Item cursor="pointer" hoverBg="skyBlue.hover" key={i} onClick={() => onAutoCompleteSelect(i)}>
|
|
39
|
+
{i}
|
|
40
|
+
</List.Item>
|
|
41
|
+
))}
|
|
42
|
+
</List>
|
|
43
|
+
</Popover.Content>
|
|
44
|
+
)}
|
|
45
|
+
</Popover>
|
|
46
|
+
)
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export default React.memo(AutoCompletePopover)
|
package/src/input/helpText.tsx
CHANGED
|
@@ -8,7 +8,7 @@ import { inputColors } from './consts'
|
|
|
8
8
|
import { useInputContext } from './context'
|
|
9
9
|
import { HelpTextProps } from './input.types'
|
|
10
10
|
|
|
11
|
-
/** Displaying help text bellow
|
|
11
|
+
/** Displaying help text bellow the input. */
|
|
12
12
|
export const HelpText = vui<'div', HelpTextProps>((props, ref) => {
|
|
13
13
|
const { className, children, isError, ...rest } = props
|
|
14
14
|
const inputProps = useInputContext()
|
package/src/input/input.tsx
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React, { useEffect, useMemo, useState } from 'react'
|
|
2
2
|
|
|
3
3
|
import { styled, useStyleConfig, vui, VuiComponent } from '../core'
|
|
4
|
-
import { List } from '../list'
|
|
5
|
-
import { Popover } from '../popover'
|
|
6
4
|
import { T } from '../t'
|
|
7
5
|
import { ChangeEvent, cs, filterUndefined, isString } from '../utils'
|
|
6
|
+
import AutoCompletePopover from './autoCompletePopover'
|
|
8
7
|
import { inputColors, inputStateMapping } from './consts'
|
|
9
8
|
import { InputProvider } from './context'
|
|
10
9
|
import { getInitialCount } from './helpers'
|
|
@@ -13,10 +12,6 @@ import { InputProps } from './input.types'
|
|
|
13
12
|
import InputIcon from './inputIcon'
|
|
14
13
|
import InputInput from './inputInput'
|
|
15
14
|
|
|
16
|
-
export const InputContainer = styled.divBox`
|
|
17
|
-
width: 100%;
|
|
18
|
-
`
|
|
19
|
-
|
|
20
15
|
export const InputBase = styled.divBox`
|
|
21
16
|
align-items: center;
|
|
22
17
|
background-color: white;
|
|
@@ -118,67 +113,59 @@ export const Input = vui<'div', InputProps>((props, ref) => {
|
|
|
118
113
|
|
|
119
114
|
return (
|
|
120
115
|
<InputProvider value={context}>
|
|
121
|
-
<
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
<List.Item cursor="pointer" hoverBg="skyBlue.hover" key={i} onClick={() => onAutoCompleteSelect(i)}>
|
|
175
|
-
{i}
|
|
176
|
-
</List.Item>
|
|
177
|
-
))}
|
|
178
|
-
</List>
|
|
179
|
-
</Popover.Content>
|
|
180
|
-
)}
|
|
181
|
-
</Popover>
|
|
116
|
+
<AutoCompletePopover
|
|
117
|
+
autoCompleteMaxHeight={autoCompleteMaxHeight}
|
|
118
|
+
autoCompleteOptions={autoCompleteOptions}
|
|
119
|
+
filterAutoCompleteOptions={filterAutoCompleteOptions}
|
|
120
|
+
onAutoCompleteSelect={onAutoCompleteSelect}
|
|
121
|
+
>
|
|
122
|
+
<InputBase className={cs('vui-input', className)} ref={ref} {...styles.container} {...aliasedProps} {...rest}>
|
|
123
|
+
{itemLeft}
|
|
124
|
+
{isString(iconLeft) ? <InputIcon ml={1} name={iconLeft} /> : iconLeft}
|
|
125
|
+
{children ?? input ?? (
|
|
126
|
+
<InputInput
|
|
127
|
+
ref={inputRef}
|
|
128
|
+
{...{
|
|
129
|
+
autoFocus,
|
|
130
|
+
defaultValue,
|
|
131
|
+
disabled,
|
|
132
|
+
id,
|
|
133
|
+
max,
|
|
134
|
+
maxLength,
|
|
135
|
+
min,
|
|
136
|
+
name,
|
|
137
|
+
onBlur,
|
|
138
|
+
onChange,
|
|
139
|
+
onFocus,
|
|
140
|
+
pattern,
|
|
141
|
+
placeholder,
|
|
142
|
+
readOnly,
|
|
143
|
+
required,
|
|
144
|
+
step,
|
|
145
|
+
type
|
|
146
|
+
}}
|
|
147
|
+
autoComplete={autoCompleteOptions?.length ? 'off' : autoComplete}
|
|
148
|
+
value={valueInternal}
|
|
149
|
+
{...inputProps}
|
|
150
|
+
/>
|
|
151
|
+
)}
|
|
152
|
+
{isString(iconRight) ? <InputIcon mr={1} name={iconRight} /> : iconRight}
|
|
153
|
+
{itemRight}
|
|
154
|
+
{state && <InputIcon mr={1} {...states[state]?.iconProps} />}
|
|
155
|
+
{showCount && (
|
|
156
|
+
<T
|
|
157
|
+
className="vui-inputCount"
|
|
158
|
+
color={maxLength && count > maxLength ? inputColors.error : inputColors.helpText}
|
|
159
|
+
position="absolute"
|
|
160
|
+
right={0}
|
|
161
|
+
size="sm"
|
|
162
|
+
top="calc(100% + 1px)"
|
|
163
|
+
>
|
|
164
|
+
{count} {maxLength ? `/ ${maxLength}` : null}
|
|
165
|
+
</T>
|
|
166
|
+
)}
|
|
167
|
+
</InputBase>
|
|
168
|
+
</AutoCompletePopover>
|
|
182
169
|
{!!helpText && <HelpText>{helpText}</HelpText>}
|
|
183
170
|
{!!errorText && <HelpText isError>{errorText}</HelpText>}
|
|
184
171
|
</InputProvider>
|
package/src/input/input.types.ts
CHANGED
|
@@ -80,6 +80,18 @@ export type InputProps = SystemProps &
|
|
|
80
80
|
value?: number | string
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
+
export type AutoCompletePopoverProps = {
|
|
84
|
+
/** List of autocomplete options. */
|
|
85
|
+
autoCompleteOptions?: string[]
|
|
86
|
+
/** Maximum autoComplete container height in px. */
|
|
87
|
+
autoCompleteMaxHeight?: number
|
|
88
|
+
/** The input children. */
|
|
89
|
+
children: JSX.Element
|
|
90
|
+
/** Filter helper function. */
|
|
91
|
+
filterAutoCompleteOptions: (value: string, index: number, array: string[]) => boolean
|
|
92
|
+
onAutoCompleteSelect: (value: string) => void
|
|
93
|
+
}
|
|
94
|
+
|
|
83
95
|
export type HelpTextProps = PProps & {
|
|
84
96
|
isError?: boolean
|
|
85
97
|
}
|
package/src/list/list.types.ts
CHANGED
|
@@ -16,6 +16,8 @@ export type ListProps = SystemProps &
|
|
|
16
16
|
isInteractive?: boolean
|
|
17
17
|
/** Socket displaying a list of items. */
|
|
18
18
|
items?: PropsOf<'li', ListItemProps>[] | JSX.Element
|
|
19
|
+
/** Socket for the variant. The 'blue' variant is internal, used in the header. */
|
|
20
|
+
variant?: 'default' | 'ordered' | 'unordered' | 'blue'
|
|
19
21
|
}
|
|
20
22
|
|
|
21
23
|
export type ListItemLinkProps = PropsOf<'a', LinkProps> | object
|
package/src/list/theme.ts
CHANGED
|
@@ -83,7 +83,27 @@ const sizes = {
|
|
|
83
83
|
|
|
84
84
|
const variants = {
|
|
85
85
|
default: {},
|
|
86
|
-
|
|
86
|
+
ordered: {
|
|
87
|
+
container: {
|
|
88
|
+
as: 'ol',
|
|
89
|
+
listStyleType: 'decimal',
|
|
90
|
+
pl: 3
|
|
91
|
+
},
|
|
92
|
+
item: {
|
|
93
|
+
display: 'list-item'
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
unordered: {
|
|
97
|
+
container: {
|
|
98
|
+
as: 'ul',
|
|
99
|
+
listStyleType: 'disc',
|
|
100
|
+
pl: 3
|
|
101
|
+
},
|
|
102
|
+
item: {
|
|
103
|
+
display: 'list-item'
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
// internal; variant *blue* was introduced for the *header* component
|
|
87
107
|
blue: {
|
|
88
108
|
heading: {
|
|
89
109
|
color: 'darkBlue.main'
|
package/src/popover/popover.tsx
CHANGED
|
@@ -12,10 +12,9 @@ import usePopover from './usePopover'
|
|
|
12
12
|
* By default, renders provided content only when popover is opened (lazy).
|
|
13
13
|
*/
|
|
14
14
|
export default function Popover(props: PopoverProps) {
|
|
15
|
-
const { children, isLazy = true, ...rest } = props
|
|
16
|
-
const popoverProps = usePopover(rest)
|
|
15
|
+
const { children, isLazy = true, options, ...rest } = props
|
|
16
|
+
const popoverProps = usePopover({ options, ...rest })
|
|
17
17
|
const { close, isOpen, open } = popoverProps
|
|
18
|
-
|
|
19
18
|
const context = filterUndefined({ isLazy, ...popoverProps })
|
|
20
19
|
|
|
21
20
|
return <PopoverProvider value={context}>{runIfFn(children, { close, isOpen, open })}</PopoverProvider>
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { TippyProps } from '@tippyjs/react'
|
|
2
|
+
|
|
1
3
|
import { BoxProps } from '../box'
|
|
2
4
|
import { SystemProps } from '../system'
|
|
3
5
|
import { RenderProps } from '../utils'
|
|
@@ -11,6 +13,8 @@ export type PopoverProps = UsePopoverProps & {
|
|
|
11
13
|
children?: PopoverRenderProps
|
|
12
14
|
/** Mounts provided content only when popover is opened for performance. @default true */
|
|
13
15
|
isLazy?: boolean
|
|
16
|
+
/** Object with any Tippy props. */
|
|
17
|
+
options?: Partial<TippyProps>
|
|
14
18
|
}
|
|
15
19
|
|
|
16
20
|
export type PopoverRenderProps = RenderProps<{
|
|
@@ -40,6 +40,7 @@ export default function usePopover(props: UsePopoverProps = {}) {
|
|
|
40
40
|
|
|
41
41
|
const tippyOptions: Partial<TippyProps> = useMemo(() => {
|
|
42
42
|
const {
|
|
43
|
+
aria,
|
|
43
44
|
offset: optionsOffset,
|
|
44
45
|
onHidden,
|
|
45
46
|
onHide,
|
|
@@ -50,6 +51,7 @@ export default function usePopover(props: UsePopoverProps = {}) {
|
|
|
50
51
|
} = options ?? {}
|
|
51
52
|
|
|
52
53
|
return {
|
|
54
|
+
aria,
|
|
53
55
|
arrow: false,
|
|
54
56
|
duration: [200, 150],
|
|
55
57
|
hideOnClick: !isControlled ? closeOnBlur : false,
|