@itwin/itwinui-react 1.31.0 → 1.33.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.
- package/CHANGELOG.md +25 -0
- package/cjs/core/ButtonGroup/ButtonGroup.d.ts +8 -1
- package/cjs/core/ButtonGroup/ButtonGroup.js +7 -3
- package/cjs/core/Checkbox/Checkbox.d.ts +13 -0
- package/cjs/core/Checkbox/Checkbox.js +15 -22
- package/cjs/core/ColorPicker/ColorSwatch.d.ts +1 -1
- package/cjs/core/ComboBox/ComboBox.d.ts +17 -1
- package/cjs/core/ComboBox/ComboBox.js +55 -20
- package/cjs/core/ExpandableBlock/ExpandableBlock.d.ts +6 -0
- package/cjs/core/ExpandableBlock/ExpandableBlock.js +3 -2
- package/cjs/core/Footer/Footer.d.ts +14 -2
- package/cjs/core/Footer/Footer.js +40 -17
- package/cjs/core/InputGroup/InputGroup.js +12 -2
- package/cjs/core/LabeledSelect/LabeledSelect.js +10 -4
- package/cjs/core/Menu/Menu.js +3 -3
- package/cjs/core/Menu/MenuItem.js +1 -1
- package/cjs/core/Radio/Radio.d.ts +13 -0
- package/cjs/core/Radio/Radio.js +7 -8
- package/cjs/core/StatusMessage/StatusMessage.d.ts +24 -0
- package/cjs/core/StatusMessage/StatusMessage.js +39 -0
- package/cjs/core/StatusMessage/index.d.ts +4 -0
- package/cjs/core/StatusMessage/index.js +10 -0
- package/cjs/core/Table/filters/DateRangeFilter/DatePickerInput.js +1 -1
- package/cjs/core/Tree/Tree.d.ts +123 -0
- package/cjs/core/Tree/Tree.js +177 -0
- package/cjs/core/Tree/TreeContext.d.ts +25 -0
- package/cjs/core/Tree/TreeContext.js +20 -0
- package/cjs/core/Tree/TreeNode.d.ts +87 -0
- package/cjs/core/Tree/TreeNode.js +169 -0
- package/cjs/core/Tree/TreeNodeExpander.d.ts +8 -0
- package/cjs/core/Tree/TreeNodeExpander.js +46 -0
- package/cjs/core/Tree/index.d.ts +6 -0
- package/cjs/core/Tree/index.js +13 -0
- package/cjs/core/index.d.ts +4 -0
- package/cjs/core/index.js +7 -1
- package/cjs/core/utils/components/InputContainer.d.ts +1 -0
- package/cjs/core/utils/components/InputContainer.js +8 -7
- package/cjs/core/utils/components/Popover.js +1 -1
- package/cjs/core/utils/functions/focusable.js +6 -2
- package/esm/core/ButtonGroup/ButtonGroup.d.ts +8 -1
- package/esm/core/ButtonGroup/ButtonGroup.js +7 -3
- package/esm/core/Checkbox/Checkbox.d.ts +13 -0
- package/esm/core/Checkbox/Checkbox.js +15 -22
- package/esm/core/ColorPicker/ColorSwatch.d.ts +1 -1
- package/esm/core/ComboBox/ComboBox.d.ts +17 -1
- package/esm/core/ComboBox/ComboBox.js +56 -21
- package/esm/core/ExpandableBlock/ExpandableBlock.d.ts +6 -0
- package/esm/core/ExpandableBlock/ExpandableBlock.js +3 -2
- package/esm/core/Footer/Footer.d.ts +14 -2
- package/esm/core/Footer/Footer.js +40 -17
- package/esm/core/InputGroup/InputGroup.js +12 -2
- package/esm/core/LabeledSelect/LabeledSelect.js +10 -4
- package/esm/core/Menu/Menu.js +3 -3
- package/esm/core/Menu/MenuItem.js +1 -1
- package/esm/core/Radio/Radio.d.ts +13 -0
- package/esm/core/Radio/Radio.js +7 -8
- package/esm/core/StatusMessage/StatusMessage.d.ts +24 -0
- package/esm/core/StatusMessage/StatusMessage.js +32 -0
- package/esm/core/StatusMessage/index.d.ts +4 -0
- package/esm/core/StatusMessage/index.js +6 -0
- package/esm/core/Table/filters/DateRangeFilter/DatePickerInput.js +1 -1
- package/esm/core/Tree/Tree.d.ts +123 -0
- package/esm/core/Tree/Tree.js +170 -0
- package/esm/core/Tree/TreeContext.d.ts +25 -0
- package/esm/core/Tree/TreeContext.js +13 -0
- package/esm/core/Tree/TreeNode.d.ts +87 -0
- package/esm/core/Tree/TreeNode.js +162 -0
- package/esm/core/Tree/TreeNodeExpander.d.ts +8 -0
- package/esm/core/Tree/TreeNodeExpander.js +39 -0
- package/esm/core/Tree/index.d.ts +6 -0
- package/esm/core/Tree/index.js +7 -0
- package/esm/core/index.d.ts +4 -0
- package/esm/core/index.js +2 -0
- package/esm/core/utils/components/InputContainer.d.ts +1 -0
- package/esm/core/utils/components/InputContainer.js +8 -7
- package/esm/core/utils/components/Popover.js +1 -1
- package/esm/core/utils/functions/focusable.js +6 -2
- package/package.json +2 -2
package/esm/core/index.js
CHANGED
|
@@ -34,6 +34,7 @@ export { RadioTile, RadioTileGroup } from './RadioTiles';
|
|
|
34
34
|
export { Select } from './Select';
|
|
35
35
|
export { SideNavigation, SidenavButton, SidenavSubmenu, SidenavSubmenuHeader, } from './SideNavigation';
|
|
36
36
|
export { Slider } from './Slider';
|
|
37
|
+
export { StatusMessage } from './StatusMessage';
|
|
37
38
|
export { Table, tableFilters, FilterButtonBar, DefaultCell, EditableCell, TablePaginator, } from './Table';
|
|
38
39
|
export { Tag, TagContainer } from './Tag';
|
|
39
40
|
export { Textarea } from './Textarea';
|
|
@@ -43,6 +44,7 @@ export { default as toaster } from './Toast';
|
|
|
43
44
|
export { ThemeProvider } from './ThemeProvider';
|
|
44
45
|
export { ToggleSwitch } from './ToggleSwitch';
|
|
45
46
|
export { Tooltip } from './Tooltip';
|
|
47
|
+
export { Tree, TreeNode, TreeNodeExpander } from './Tree';
|
|
46
48
|
export { Anchor, Body, Headline, Leading, Small, Subheading, Title, Blockquote, Code, Kbd, KbdKeys, Text, } from './Typography';
|
|
47
49
|
export { UserIcon } from './UserIcon';
|
|
48
50
|
export { UserIconGroup } from './UserIconGroup';
|
|
@@ -9,6 +9,7 @@ export declare type InputContainerProps<T extends React.ElementType = 'div'> = {
|
|
|
9
9
|
icon?: JSX.Element;
|
|
10
10
|
isLabelInline?: boolean;
|
|
11
11
|
isIconInline?: boolean;
|
|
12
|
+
statusMessage?: React.ReactNode;
|
|
12
13
|
} & React.ComponentPropsWithoutRef<T>;
|
|
13
14
|
/**
|
|
14
15
|
* Input container to wrap inputs with label, and add optional message and icon.
|
|
@@ -33,22 +33,23 @@ import cx from 'classnames';
|
|
|
33
33
|
export var InputContainer = function (props) {
|
|
34
34
|
var _a;
|
|
35
35
|
var _b;
|
|
36
|
-
var _c = props.as, Element = _c === void 0 ? 'div' : _c, label = props.label, disabled = props.disabled, required = props.required, status = props.status, message = props.message, icon = props.icon, isLabelInline = props.isLabelInline, isIconInline = props.isIconInline, children = props.children, className = props.className, style = props.style, rest = __rest(props, ["as", "label", "disabled", "required", "status", "message", "icon", "isLabelInline", "isIconInline", "children", "className", "style"]);
|
|
36
|
+
var _c = props.as, Element = _c === void 0 ? 'div' : _c, label = props.label, disabled = props.disabled, required = props.required, status = props.status, message = props.message, icon = props.icon, isLabelInline = props.isLabelInline, isIconInline = props.isIconInline, children = props.children, className = props.className, style = props.style, statusMessage = props.statusMessage, rest = __rest(props, ["as", "label", "disabled", "required", "status", "message", "icon", "isLabelInline", "isIconInline", "children", "className", "style", "statusMessage"]);
|
|
37
37
|
return (React.createElement(Element, __assign({ className: cx('iui-input-container', (_a = {
|
|
38
38
|
'iui-disabled': disabled
|
|
39
39
|
},
|
|
40
40
|
_a["iui-" + status] = !!status,
|
|
41
41
|
_a['iui-inline-label'] = isLabelInline,
|
|
42
42
|
_a['iui-inline-icon'] = isIconInline,
|
|
43
|
-
_a['iui-with-message'] = !!message && !isLabelInline,
|
|
43
|
+
_a['iui-with-message'] = (!!message || !!icon || !!statusMessage) && !isLabelInline,
|
|
44
44
|
_a), className), style: style }, rest),
|
|
45
45
|
label && (React.createElement("div", { className: cx('iui-label', {
|
|
46
46
|
'iui-required': required,
|
|
47
47
|
}) }, label)),
|
|
48
48
|
children,
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
49
|
+
statusMessage ? (statusMessage) : (React.createElement(React.Fragment, null,
|
|
50
|
+
icon &&
|
|
51
|
+
React.cloneElement(icon, {
|
|
52
|
+
className: cx('iui-input-icon', (_b = icon.props) === null || _b === void 0 ? void 0 : _b.className),
|
|
53
|
+
}),
|
|
54
|
+
message && !isLabelInline && (React.createElement("div", { className: 'iui-message' }, message))))));
|
|
54
55
|
};
|
|
@@ -53,7 +53,7 @@ export var Popover = React.forwardRef(function (props, ref) {
|
|
|
53
53
|
},
|
|
54
54
|
}); },
|
|
55
55
|
};
|
|
56
|
-
var computedProps = __assign(__assign({ allowHTML: true, animation: false, appendTo:
|
|
56
|
+
var computedProps = __assign(__assign({ allowHTML: true, animation: false, appendTo: function (el) { return el.ownerDocument.body; }, arrow: false, duration: 0, interactive: true, role: undefined, offset: [0, 0], maxWidth: '', zIndex: 99999 }, props), { className: cx('iui-popover', props.className), plugins: __spreadArray([
|
|
57
57
|
lazyLoad,
|
|
58
58
|
removeTabIndex,
|
|
59
59
|
hideOnEscOrTab
|
|
@@ -12,7 +12,9 @@ export var getTabbableElements = function (container) {
|
|
|
12
12
|
}
|
|
13
13
|
var elements = container.querySelectorAll(tabbableElementsSelector);
|
|
14
14
|
return Array.from(elements).filter(function (el) {
|
|
15
|
-
return !el.hasAttribute('disabled') &&
|
|
15
|
+
return !el.hasAttribute('disabled') &&
|
|
16
|
+
!el.classList.contains('iui-disabled') &&
|
|
17
|
+
el.getAttribute('aria-disabled') !== 'true';
|
|
16
18
|
});
|
|
17
19
|
};
|
|
18
20
|
/**
|
|
@@ -24,6 +26,8 @@ export var getFocusableElements = function (container) {
|
|
|
24
26
|
}
|
|
25
27
|
var elements = container.querySelectorAll(tabbableElementsSelector + ", [tabindex=\"-1\"]");
|
|
26
28
|
return Array.from(elements).filter(function (el) {
|
|
27
|
-
return !el.hasAttribute('disabled') &&
|
|
29
|
+
return !el.hasAttribute('disabled') &&
|
|
30
|
+
!el.classList.contains('iui-disabled') &&
|
|
31
|
+
el.getAttribute('aria-disabled') !== 'true';
|
|
28
32
|
});
|
|
29
33
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itwin/itwinui-react",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.33.0",
|
|
4
4
|
"author": "Bentley Systems",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "cjs/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"build-storybook": "build-storybook"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@itwin/itwinui-css": "^0.
|
|
43
|
+
"@itwin/itwinui-css": "^0.50.0",
|
|
44
44
|
"@itwin/itwinui-icons-react": "^1.5.0",
|
|
45
45
|
"@itwin/itwinui-illustrations-react": "^1.0.1",
|
|
46
46
|
"@tippyjs/react": "^4.2.5",
|