@itwin/itwinui-react 1.48.0 → 2.0.0-dev.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 +6 -0
- package/README.md +4 -22
- package/cjs/core/Alert/Alert.d.ts +7 -6
- package/cjs/core/Alert/Alert.js +12 -7
- package/cjs/core/Avatar/Avatar.d.ts +69 -0
- package/cjs/core/{UserIcon/UserIcon.js → Avatar/Avatar.js} +15 -11
- package/cjs/core/Avatar/index.d.ts +4 -0
- package/cjs/core/{UserIcon → Avatar}/index.js +5 -4
- package/cjs/core/AvatarGroup/AvatarGroup.d.ts +70 -0
- package/cjs/core/{UserIconGroup/UserIconGroup.js → AvatarGroup/AvatarGroup.js} +23 -19
- package/cjs/core/AvatarGroup/index.d.ts +4 -0
- package/cjs/core/{UserIconGroup → AvatarGroup}/index.js +5 -4
- package/cjs/core/Badge/Badge.js +2 -4
- package/cjs/core/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/cjs/core/Buttons/Button/Button.js +5 -14
- package/cjs/core/Buttons/DropdownButton/DropdownButton.js +1 -1
- package/cjs/core/Buttons/IconButton/IconButton.js +3 -9
- package/cjs/core/Buttons/IdeasButton/IdeasButton.js +1 -1
- package/cjs/core/Buttons/SplitButton/SplitButton.js +4 -6
- package/cjs/core/Checkbox/Checkbox.d.ts +1 -29
- package/cjs/core/Checkbox/Checkbox.js +3 -3
- package/cjs/core/ColorPicker/ColorBuilder.js +16 -27
- package/cjs/core/ColorPicker/ColorSwatch.d.ts +1 -1
- package/cjs/core/ColorPicker/ColorSwatch.js +1 -6
- package/cjs/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
- package/cjs/core/ComboBox/ComboBoxMenu.js +2 -4
- package/cjs/core/Dialog/Dialog.d.ts +4 -4
- package/cjs/core/Dialog/Dialog.js +1 -1
- package/cjs/core/Dialog/DialogBackdrop.d.ts +1 -1
- package/cjs/core/Dialog/DialogBackdrop.js +5 -2
- package/cjs/core/Dialog/DialogMain.d.ts +1 -1
- package/cjs/core/Dialog/DialogMain.js +7 -1
- package/cjs/core/Dialog/DialogTitleBar.d.ts +1 -1
- package/cjs/core/ExpandableBlock/ExpandableBlock.js +4 -4
- package/cjs/core/Header/Header.d.ts +16 -6
- package/cjs/core/Header/Header.js +7 -9
- package/cjs/core/Header/HeaderBasicButton.d.ts +6 -0
- package/cjs/core/Header/HeaderBasicButton.js +52 -0
- package/cjs/core/Header/HeaderBreadcrumbs.js +6 -4
- package/cjs/core/Header/HeaderButton.d.ts +3 -2
- package/cjs/core/Header/HeaderButton.js +10 -18
- package/cjs/core/Header/HeaderDropdownButton.d.ts +6 -0
- package/cjs/core/Header/HeaderDropdownButton.js +56 -0
- package/cjs/core/Header/HeaderLogo.js +3 -3
- package/cjs/core/Header/HeaderSplitButton.d.ts +6 -0
- package/cjs/core/Header/HeaderSplitButton.js +56 -0
- package/cjs/core/Input/Input.d.ts +1 -1
- package/cjs/core/Input/Input.js +3 -4
- package/cjs/core/InputGroup/InputGroup.d.ts +1 -1
- package/cjs/core/InputGroup/InputGroup.js +1 -1
- package/cjs/core/Label/Label.d.ts +1 -1
- package/cjs/core/Label/Label.js +1 -1
- package/cjs/core/LabeledInput/LabeledInput.d.ts +2 -2
- package/cjs/core/LabeledInput/LabeledInput.js +1 -1
- package/cjs/core/LabeledSelect/LabeledSelect.d.ts +1 -1
- package/cjs/core/LabeledSelect/LabeledSelect.js +1 -1
- package/cjs/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
- package/cjs/core/LabeledTextarea/LabeledTextarea.js +1 -1
- package/cjs/core/Radio/Radio.d.ts +1 -29
- package/cjs/core/Radio/Radio.js +3 -3
- package/cjs/core/RadioTiles/RadioTileGroup.d.ts +1 -1
- package/cjs/core/RadioTiles/RadioTileGroup.js +1 -1
- package/cjs/core/Select/Select.d.ts +1 -1
- package/cjs/core/Select/Select.js +9 -12
- package/cjs/core/Select/SelectTag.d.ts +1 -1
- package/cjs/core/Select/SelectTag.js +1 -1
- package/cjs/core/SideNavigation/SidenavButton.js +1 -2
- package/cjs/core/Stepper/Stepper.d.ts +40 -0
- package/cjs/core/{Wizard/Wizard.js → Stepper/Stepper.js} +11 -28
- package/cjs/core/{Wizard/Step.d.ts → Stepper/StepperStep.d.ts} +6 -7
- package/cjs/core/{Wizard/Step.js → Stepper/StepperStep.js} +10 -10
- package/cjs/core/Stepper/Wizard.d.ts +46 -0
- package/cjs/core/Stepper/Wizard.js +55 -0
- package/cjs/core/Stepper/WorkflowDiagram.d.ts +6 -0
- package/cjs/core/Stepper/WorkflowDiagram.js +43 -0
- package/cjs/core/Stepper/WorkflowDiagramStep.d.ts +5 -0
- package/cjs/core/Stepper/WorkflowDiagramStep.js +42 -0
- package/cjs/core/Stepper/index.d.ts +8 -0
- package/cjs/core/{Wizard → Stepper}/index.js +5 -1
- package/cjs/core/Surface/Surface.js +2 -4
- package/cjs/core/Table/SubRowExpander.js +1 -1
- package/cjs/core/Table/Table.d.ts +5 -4
- package/cjs/core/Table/Table.js +30 -21
- package/cjs/core/Table/TableCell.js +4 -4
- package/cjs/core/Table/TablePaginator.js +14 -15
- package/cjs/core/Table/TableRowMemoized.d.ts +2 -0
- package/cjs/core/Table/TableRowMemoized.js +10 -13
- package/cjs/core/Table/cells/DefaultCell.js +4 -9
- package/cjs/core/Table/columns/actionColumn.js +1 -1
- package/cjs/core/Table/columns/expanderColumn.js +1 -1
- package/cjs/core/Table/filters/BaseFilter.js +1 -1
- package/cjs/core/Table/filters/FilterToggle.js +1 -1
- package/cjs/core/Table/hooks/useColumnDragAndDrop.js +4 -4
- package/cjs/core/Table/hooks/useResizeColumns.js +110 -106
- package/cjs/core/Tabs/Tab.d.ts +0 -8
- package/cjs/core/Tabs/Tab.js +1 -5
- package/cjs/core/Tabs/Tabs.js +8 -11
- package/cjs/core/Tabs/index.d.ts +2 -2
- package/cjs/core/Tabs/index.js +1 -2
- package/cjs/core/Textarea/Textarea.d.ts +1 -1
- package/cjs/core/Textarea/Textarea.js +2 -2
- package/cjs/core/ThemeProvider/ThemeProvider.d.ts +27 -17
- package/cjs/core/ThemeProvider/ThemeProvider.js +64 -7
- package/cjs/core/Tile/Tile.d.ts +19 -1
- package/cjs/core/Tile/Tile.js +35 -12
- package/cjs/core/Toast/Toast.d.ts +3 -3
- package/cjs/core/Toast/Toast.js +3 -3
- package/cjs/core/Toast/ToastWrapper.d.ts +1 -1
- package/cjs/core/Toast/ToastWrapper.js +1 -1
- package/cjs/core/Tree/TreeNode.js +1 -7
- package/cjs/core/index.d.ts +8 -8
- package/cjs/core/index.js +13 -10
- package/cjs/core/utils/components/Popover.d.ts +2 -2
- package/cjs/core/utils/components/Popover.js +1 -1
- package/cjs/core/utils/components/Resizer.d.ts +5 -0
- package/cjs/core/utils/components/Resizer.js +7 -1
- package/cjs/core/utils/components/VisuallyHidden.d.ts +1 -0
- package/cjs/core/utils/components/VisuallyHidden.js +1 -0
- package/cjs/core/utils/functions/colors.d.ts +1 -1
- package/cjs/core/utils/functions/colors.js +1 -1
- package/cjs/core/utils/functions/dom.js +1 -0
- package/cjs/core/utils/hooks/index.d.ts +1 -0
- package/cjs/core/utils/hooks/index.js +1 -0
- package/cjs/core/utils/hooks/useIsomorphicLayoutEffect.d.ts +7 -0
- package/cjs/core/utils/hooks/useIsomorphicLayoutEffect.js +17 -0
- package/cjs/core/utils/hooks/useMediaQuery.js +2 -1
- package/cjs/core/utils/hooks/useTheme.d.ts +20 -3
- package/cjs/core/utils/hooks/useTheme.js +57 -58
- package/esm/core/Alert/Alert.d.ts +7 -6
- package/esm/core/Alert/Alert.js +12 -7
- package/esm/core/Avatar/Avatar.d.ts +69 -0
- package/esm/core/{UserIcon/UserIcon.js → Avatar/Avatar.js} +13 -9
- package/esm/core/Avatar/index.d.ts +4 -0
- package/esm/core/{UserIcon → Avatar}/index.js +2 -2
- package/esm/core/AvatarGroup/AvatarGroup.d.ts +70 -0
- package/esm/core/{UserIconGroup/UserIconGroup.js → AvatarGroup/AvatarGroup.js} +21 -17
- package/esm/core/AvatarGroup/index.d.ts +4 -0
- package/esm/core/{UserIconGroup → AvatarGroup}/index.js +2 -2
- package/esm/core/Badge/Badge.js +3 -5
- package/esm/core/ButtonGroup/ButtonGroup.d.ts +1 -1
- package/esm/core/Buttons/Button/Button.js +5 -14
- package/esm/core/Buttons/DropdownButton/DropdownButton.js +1 -1
- package/esm/core/Buttons/IconButton/IconButton.js +3 -9
- package/esm/core/Buttons/IdeasButton/IdeasButton.js +1 -1
- package/esm/core/Buttons/SplitButton/SplitButton.js +4 -6
- package/esm/core/Checkbox/Checkbox.d.ts +1 -29
- package/esm/core/Checkbox/Checkbox.js +3 -3
- package/esm/core/ColorPicker/ColorBuilder.js +17 -28
- package/esm/core/ColorPicker/ColorSwatch.d.ts +1 -1
- package/esm/core/ColorPicker/ColorSwatch.js +2 -7
- package/esm/core/ComboBox/ComboBoxDropdown.d.ts +1 -1
- package/esm/core/ComboBox/ComboBoxMenu.js +2 -4
- package/esm/core/Dialog/Dialog.d.ts +4 -4
- package/esm/core/Dialog/Dialog.js +1 -1
- package/esm/core/Dialog/DialogBackdrop.d.ts +1 -1
- package/esm/core/Dialog/DialogBackdrop.js +5 -2
- package/esm/core/Dialog/DialogMain.d.ts +1 -1
- package/esm/core/Dialog/DialogMain.js +7 -1
- package/esm/core/Dialog/DialogTitleBar.d.ts +1 -1
- package/esm/core/ExpandableBlock/ExpandableBlock.js +4 -4
- package/esm/core/Header/Header.d.ts +16 -6
- package/esm/core/Header/Header.js +7 -9
- package/esm/core/Header/HeaderBasicButton.d.ts +6 -0
- package/esm/core/Header/HeaderBasicButton.js +46 -0
- package/esm/core/Header/HeaderBreadcrumbs.js +6 -4
- package/esm/core/Header/HeaderButton.d.ts +3 -2
- package/esm/core/Header/HeaderButton.js +10 -18
- package/esm/core/Header/HeaderDropdownButton.d.ts +6 -0
- package/esm/core/Header/HeaderDropdownButton.js +50 -0
- package/esm/core/Header/HeaderLogo.js +3 -3
- package/esm/core/Header/HeaderSplitButton.d.ts +6 -0
- package/esm/core/Header/HeaderSplitButton.js +50 -0
- package/esm/core/Input/Input.d.ts +1 -1
- package/esm/core/Input/Input.js +3 -4
- package/esm/core/InputGroup/InputGroup.d.ts +1 -1
- package/esm/core/InputGroup/InputGroup.js +1 -1
- package/esm/core/Label/Label.d.ts +1 -1
- package/esm/core/Label/Label.js +1 -1
- package/esm/core/LabeledInput/LabeledInput.d.ts +2 -2
- package/esm/core/LabeledInput/LabeledInput.js +1 -1
- package/esm/core/LabeledSelect/LabeledSelect.d.ts +1 -1
- package/esm/core/LabeledSelect/LabeledSelect.js +1 -1
- package/esm/core/LabeledTextarea/LabeledTextarea.d.ts +1 -1
- package/esm/core/LabeledTextarea/LabeledTextarea.js +1 -1
- package/esm/core/Radio/Radio.d.ts +1 -29
- package/esm/core/Radio/Radio.js +3 -3
- package/esm/core/RadioTiles/RadioTileGroup.d.ts +1 -1
- package/esm/core/RadioTiles/RadioTileGroup.js +1 -1
- package/esm/core/Select/Select.d.ts +1 -1
- package/esm/core/Select/Select.js +9 -12
- package/esm/core/Select/SelectTag.d.ts +1 -1
- package/esm/core/Select/SelectTag.js +1 -1
- package/esm/core/SideNavigation/SidenavButton.js +1 -2
- package/esm/core/Stepper/Stepper.d.ts +40 -0
- package/esm/core/{Wizard/Wizard.js → Stepper/Stepper.js} +10 -27
- package/esm/core/{Wizard/Step.d.ts → Stepper/StepperStep.d.ts} +6 -7
- package/esm/core/{Wizard/Step.js → Stepper/StepperStep.js} +8 -8
- package/esm/core/Stepper/Wizard.d.ts +46 -0
- package/esm/core/Stepper/Wizard.js +49 -0
- package/esm/core/Stepper/WorkflowDiagram.d.ts +6 -0
- package/esm/core/Stepper/WorkflowDiagram.js +37 -0
- package/esm/core/Stepper/WorkflowDiagramStep.d.ts +5 -0
- package/esm/core/Stepper/WorkflowDiagramStep.js +35 -0
- package/esm/core/Stepper/index.d.ts +8 -0
- package/esm/core/{Wizard → Stepper}/index.js +2 -0
- package/esm/core/Surface/Surface.js +3 -5
- package/esm/core/Table/SubRowExpander.js +1 -1
- package/esm/core/Table/Table.d.ts +5 -4
- package/esm/core/Table/Table.js +30 -21
- package/esm/core/Table/TableCell.js +4 -4
- package/esm/core/Table/TablePaginator.js +14 -15
- package/esm/core/Table/TableRowMemoized.d.ts +2 -0
- package/esm/core/Table/TableRowMemoized.js +10 -13
- package/esm/core/Table/cells/DefaultCell.js +4 -9
- package/esm/core/Table/columns/actionColumn.js +1 -1
- package/esm/core/Table/columns/expanderColumn.js +1 -1
- package/esm/core/Table/filters/BaseFilter.js +1 -1
- package/esm/core/Table/filters/FilterToggle.js +1 -1
- package/esm/core/Table/hooks/useColumnDragAndDrop.js +4 -4
- package/esm/core/Table/hooks/useResizeColumns.js +110 -106
- package/esm/core/Tabs/Tab.d.ts +0 -8
- package/esm/core/Tabs/Tab.js +0 -4
- package/esm/core/Tabs/Tabs.js +9 -12
- package/esm/core/Tabs/index.d.ts +2 -2
- package/esm/core/Tabs/index.js +1 -1
- package/esm/core/Textarea/Textarea.d.ts +1 -1
- package/esm/core/Textarea/Textarea.js +2 -2
- package/esm/core/ThemeProvider/ThemeProvider.d.ts +27 -17
- package/esm/core/ThemeProvider/ThemeProvider.js +64 -6
- package/esm/core/Tile/Tile.d.ts +19 -1
- package/esm/core/Tile/Tile.js +36 -13
- package/esm/core/Toast/Toast.d.ts +3 -3
- package/esm/core/Toast/Toast.js +3 -3
- package/esm/core/Toast/ToastWrapper.d.ts +1 -1
- package/esm/core/Toast/ToastWrapper.js +1 -1
- package/esm/core/Tree/TreeNode.js +2 -8
- package/esm/core/index.d.ts +8 -8
- package/esm/core/index.js +4 -4
- package/esm/core/utils/components/Popover.d.ts +2 -2
- package/esm/core/utils/components/Popover.js +1 -1
- package/esm/core/utils/components/Resizer.d.ts +5 -0
- package/esm/core/utils/components/Resizer.js +7 -1
- package/esm/core/utils/components/VisuallyHidden.d.ts +1 -0
- package/esm/core/utils/components/VisuallyHidden.js +1 -0
- package/esm/core/utils/functions/colors.d.ts +1 -1
- package/esm/core/utils/functions/colors.js +1 -1
- package/esm/core/utils/functions/dom.js +1 -0
- package/esm/core/utils/hooks/index.d.ts +1 -0
- package/esm/core/utils/hooks/index.js +1 -0
- package/esm/core/utils/hooks/useIsomorphicLayoutEffect.d.ts +7 -0
- package/esm/core/utils/hooks/useIsomorphicLayoutEffect.js +11 -0
- package/esm/core/utils/hooks/useMediaQuery.js +2 -1
- package/esm/core/utils/hooks/useTheme.d.ts +20 -3
- package/esm/core/utils/hooks/useTheme.js +56 -57
- package/package.json +3 -2
- package/cjs/core/UserIcon/UserIcon.d.ts +0 -57
- package/cjs/core/UserIcon/index.d.ts +0 -4
- package/cjs/core/UserIconGroup/UserIconGroup.d.ts +0 -62
- package/cjs/core/UserIconGroup/index.d.ts +0 -4
- package/cjs/core/Wizard/Wizard.d.ts +0 -54
- package/cjs/core/Wizard/index.d.ts +0 -4
- package/esm/core/UserIcon/UserIcon.d.ts +0 -57
- package/esm/core/UserIcon/index.d.ts +0 -4
- package/esm/core/UserIconGroup/UserIconGroup.d.ts +0 -62
- package/esm/core/UserIconGroup/index.d.ts +0 -4
- package/esm/core/Wizard/Wizard.d.ts +0 -54
- package/esm/core/Wizard/index.d.ts +0 -4
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
/*---------------------------------------------------------------------------------------------
|
|
24
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
25
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
26
|
+
*--------------------------------------------------------------------------------------------*/
|
|
27
|
+
import cx from 'classnames';
|
|
28
|
+
import React from 'react';
|
|
29
|
+
import { useTheme } from '../utils';
|
|
30
|
+
export var HeaderBasicButton = React.forwardRef(function (props, ref) {
|
|
31
|
+
var onClick = props.onClick, className = props.className, children = props.children, style = props.style, _a = props.type, type = _a === void 0 ? 'button' : _a, startIcon = props.startIcon, endIcon = props.endIcon, _b = props.as, Element = _b === void 0 ? 'button' : _b, styleType = props.styleType, size = props.size, rest = __rest(props, ["onClick", "className", "children", "style", "type", "startIcon", "endIcon", "as", "styleType", "size"]);
|
|
32
|
+
styleType; // To omit and prevent eslint error.
|
|
33
|
+
size; // To omit and prevent eslint error.
|
|
34
|
+
useTheme();
|
|
35
|
+
return (React.createElement(Element, __assign({ className: cx('iui-header-breadcrumb-button', className), onClick: onClick, ref: ref, type: type, style: style }, rest),
|
|
36
|
+
startIcon &&
|
|
37
|
+
React.cloneElement(startIcon, {
|
|
38
|
+
className: startIcon.props.className,
|
|
39
|
+
}),
|
|
40
|
+
children,
|
|
41
|
+
endIcon &&
|
|
42
|
+
React.cloneElement(endIcon, {
|
|
43
|
+
className: endIcon.props.className,
|
|
44
|
+
})));
|
|
45
|
+
});
|
|
46
|
+
export default HeaderBasicButton;
|
|
@@ -50,9 +50,11 @@ import '@itwin/itwinui-css/css/header.css';
|
|
|
50
50
|
export var HeaderBreadcrumbs = function (props) {
|
|
51
51
|
var items = props.items, rest = __rest(props, ["items"]);
|
|
52
52
|
useTheme();
|
|
53
|
-
return (React.createElement("nav", __assign({ "aria-label": 'breadcrumbs'
|
|
54
|
-
current,
|
|
55
|
-
|
|
56
|
-
|
|
53
|
+
return (React.createElement("nav", __assign({ "aria-label": 'breadcrumbs', className: 'iui-header-breadcrumbs' }, rest),
|
|
54
|
+
React.createElement("ol", { className: 'iui-header-breadcrumbs-list' }, items.reduce(function (previous, current, index) { return __spreadArray(__spreadArray([], previous, true), [
|
|
55
|
+
current,
|
|
56
|
+
index !== items.length - 1 && (React.createElement("li", { className: 'iui-breadcrumbs-separator', key: index },
|
|
57
|
+
React.createElement(SvgChevronRight, { key: "chevron".concat(index), "aria-hidden": true, className: 'iui-chevron' }))),
|
|
58
|
+
], false); }, []))));
|
|
57
59
|
};
|
|
58
60
|
export default HeaderBreadcrumbs;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { ButtonProps
|
|
2
|
+
import { ButtonProps } from '../Buttons';
|
|
3
3
|
import { PolymorphicForwardRefComponent } from '../utils';
|
|
4
4
|
import '@itwin/itwinui-css/css/header.css';
|
|
5
|
+
import { HeaderDropdownButtonProps } from './HeaderDropdownButton';
|
|
5
6
|
export declare type HeaderButtonProps = {
|
|
6
7
|
/**
|
|
7
8
|
* Main label of the header button.
|
|
@@ -16,7 +17,7 @@ export declare type HeaderButtonProps = {
|
|
|
16
17
|
* @default false
|
|
17
18
|
*/
|
|
18
19
|
isActive?: boolean;
|
|
19
|
-
} & Partial<Pick<
|
|
20
|
+
} & Partial<Pick<HeaderDropdownButtonProps, 'menuItems'>> & Pick<ButtonProps, 'startIcon' | 'endIcon'>;
|
|
20
21
|
declare type HeaderButtonComponent = PolymorphicForwardRefComponent<'button', HeaderButtonProps>;
|
|
21
22
|
/**
|
|
22
23
|
* Header button that handles slim state of the `Header` it's in.
|
|
@@ -26,9 +26,11 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
26
26
|
};
|
|
27
27
|
import cx from 'classnames';
|
|
28
28
|
import React from 'react';
|
|
29
|
-
import { Button, DropdownButton, SplitButton, } from '../Buttons';
|
|
30
29
|
import { useTheme } from '../utils';
|
|
31
30
|
import '@itwin/itwinui-css/css/header.css';
|
|
31
|
+
import { HeaderSplitButton } from './HeaderSplitButton';
|
|
32
|
+
import { HeaderDropdownButton, } from './HeaderDropdownButton';
|
|
33
|
+
import { HeaderBasicButton } from './HeaderBasicButton';
|
|
32
34
|
var isSplitButton = function (props) {
|
|
33
35
|
return !!props.menuItems && !!props.onClick;
|
|
34
36
|
};
|
|
@@ -46,26 +48,16 @@ var isDropdownButton = function (props) {
|
|
|
46
48
|
* <HeaderButton name='Project D' isActive />
|
|
47
49
|
*/
|
|
48
50
|
export var HeaderButton = React.forwardRef(function (props, ref) {
|
|
49
|
-
var name = props.name, description = props.description, _a = props.isActive, isActive = _a === void 0 ? false : _a, className = props.className, startIcon = props.startIcon, menuItems = props.menuItems, rest = __rest(props, ["name", "description", "isActive", "className", "startIcon", "menuItems"]);
|
|
51
|
+
var name = props.name, description = props.description, _a = props.isActive, isActive = _a === void 0 ? false : _a, className = props.className, startIcon = props.startIcon, menuItems = props.menuItems, disabled = props.disabled, rest = __rest(props, ["name", "description", "isActive", "className", "startIcon", "menuItems", "disabled"]);
|
|
50
52
|
useTheme();
|
|
51
53
|
var buttonProps = __assign(__assign({ startIcon: React.isValidElement(startIcon)
|
|
52
54
|
? React.cloneElement(startIcon, {
|
|
53
|
-
className: cx('iui-header-button-icon', startIcon.props.className),
|
|
55
|
+
className: cx('iui-header-breadcrumb-button-icon', startIcon.props.className),
|
|
54
56
|
})
|
|
55
|
-
: undefined,
|
|
56
|
-
'iui-header-button'
|
|
57
|
-
'iui-header-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}, className), 'aria-current': isActive ? 'location' : undefined, children: (React.createElement(React.Fragment, null,
|
|
61
|
-
React.createElement("div", null, name),
|
|
62
|
-
description && React.createElement("div", { className: 'iui-description' }, description))), ref: ref }, (!!menuItems && { menuItems: menuItems })), rest);
|
|
63
|
-
if (isSplitButton(buttonProps)) {
|
|
64
|
-
return React.createElement(SplitButton, __assign({}, buttonProps));
|
|
65
|
-
}
|
|
66
|
-
if (isDropdownButton(buttonProps)) {
|
|
67
|
-
return React.createElement(DropdownButton, __assign({}, buttonProps));
|
|
68
|
-
}
|
|
69
|
-
return React.createElement(Button, __assign({}, buttonProps));
|
|
57
|
+
: undefined, className: className, children: (React.createElement("span", { className: 'iui-header-breadcrumb-button-text' },
|
|
58
|
+
React.createElement("span", { className: 'iui-header-breadcrumb-button-text-label' }, name),
|
|
59
|
+
description && (React.createElement("span", { className: 'iui-header-breadcrumb-button-text-sublabel' }, description)))), ref: ref, disabled: disabled }, (!!menuItems && { menuItems: menuItems })), rest);
|
|
60
|
+
var headerButton = isSplitButton(buttonProps) ? (React.createElement(HeaderSplitButton, __assign({}, buttonProps))) : isDropdownButton(buttonProps) ? (React.createElement(HeaderDropdownButton, __assign({}, buttonProps))) : (React.createElement(HeaderBasicButton, __assign({}, buttonProps)));
|
|
61
|
+
return (React.createElement("li", { className: 'iui-header-breadcrumb-item', "aria-current": isActive ? 'location' : undefined, "aria-disabled": disabled ? 'true' : undefined }, headerButton));
|
|
70
62
|
});
|
|
71
63
|
export default HeaderButton;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PolymorphicForwardRefComponent } from '../utils';
|
|
2
|
+
import { DropdownButtonProps } from '../Buttons';
|
|
3
|
+
export declare type HeaderDropdownButtonProps = DropdownButtonProps;
|
|
4
|
+
declare type HeaderDropdownButtonComponent = PolymorphicForwardRefComponent<'button', HeaderDropdownButtonProps>;
|
|
5
|
+
export declare const HeaderDropdownButton: HeaderDropdownButtonComponent;
|
|
6
|
+
export default HeaderDropdownButton;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
/*---------------------------------------------------------------------------------------------
|
|
24
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
25
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
26
|
+
*--------------------------------------------------------------------------------------------*/
|
|
27
|
+
import cx from 'classnames';
|
|
28
|
+
import React from 'react';
|
|
29
|
+
import { DropdownMenu } from '../DropdownMenu';
|
|
30
|
+
import SvgCaretDownSmall from '@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall';
|
|
31
|
+
import SvgCaretUpSmall from '@itwin/itwinui-icons-react/cjs/icons/CaretUpSmall';
|
|
32
|
+
import { useTheme } from '../utils';
|
|
33
|
+
import { useMergedRefs } from '../utils';
|
|
34
|
+
import { HeaderBasicButton } from './HeaderBasicButton';
|
|
35
|
+
export var HeaderDropdownButton = React.forwardRef(function (props, ref) {
|
|
36
|
+
var menuItems = props.menuItems, className = props.className, children = props.children, rest = __rest(props, ["menuItems", "className", "children"]);
|
|
37
|
+
useTheme();
|
|
38
|
+
var _a = React.useState(false), isMenuOpen = _a[0], setIsMenuOpen = _a[1];
|
|
39
|
+
var _b = React.useState(0), menuWidth = _b[0], setMenuWidth = _b[1];
|
|
40
|
+
var buttonRef = React.useRef(null);
|
|
41
|
+
var refs = useMergedRefs(ref, buttonRef);
|
|
42
|
+
React.useEffect(function () {
|
|
43
|
+
if (buttonRef.current) {
|
|
44
|
+
setMenuWidth(buttonRef.current.offsetWidth);
|
|
45
|
+
}
|
|
46
|
+
}, [children]);
|
|
47
|
+
return (React.createElement(DropdownMenu, { menuItems: menuItems, style: { minWidth: menuWidth }, onShow: function () { return setIsMenuOpen(true); }, onHide: function () { return setIsMenuOpen(false); } },
|
|
48
|
+
React.createElement(HeaderBasicButton, __assign({ className: cx('iui-header-breadcrumb-button', className), ref: refs, "aria-label": 'Dropdown', endIcon: isMenuOpen ? (React.createElement(SvgCaretUpSmall, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) : (React.createElement(SvgCaretDownSmall, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) }, rest), children)));
|
|
49
|
+
});
|
|
50
|
+
export default HeaderDropdownButton;
|
|
@@ -46,12 +46,12 @@ export var HeaderLogo = function (props) {
|
|
|
46
46
|
}
|
|
47
47
|
};
|
|
48
48
|
useTheme();
|
|
49
|
-
return (React.createElement("div", __assign({ className: cx('iui-header-
|
|
49
|
+
return (React.createElement("div", __assign({ className: cx('iui-header-brand', className), role: onClick && 'button', tabIndex: onClick && 0, onKeyDown: keyDownHandler, onClick: onClick }, rest),
|
|
50
50
|
React.isValidElement(logo)
|
|
51
51
|
? React.cloneElement(logo, {
|
|
52
|
-
className: cx('iui-header-
|
|
52
|
+
className: cx('iui-header-brand-icon', logo.props.className),
|
|
53
53
|
})
|
|
54
54
|
: undefined,
|
|
55
|
-
children && React.createElement("span", { className: 'iui-label' }, children)));
|
|
55
|
+
children && React.createElement("span", { className: 'iui-header-brand-label' }, children)));
|
|
56
56
|
};
|
|
57
57
|
export default HeaderLogo;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PolymorphicForwardRefComponent } from '../utils';
|
|
2
|
+
import { SplitButtonProps } from '../Buttons';
|
|
3
|
+
export declare type HeaderSplitButtonProps = SplitButtonProps;
|
|
4
|
+
declare type HeaderSplitButtonComponent = PolymorphicForwardRefComponent<'button', HeaderSplitButtonProps>;
|
|
5
|
+
export declare const HeaderSplitButton: HeaderSplitButtonComponent;
|
|
6
|
+
export default HeaderSplitButton;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
var __assign = (this && this.__assign) || function () {
|
|
2
|
+
__assign = Object.assign || function(t) {
|
|
3
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
4
|
+
s = arguments[i];
|
|
5
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6
|
+
t[p] = s[p];
|
|
7
|
+
}
|
|
8
|
+
return t;
|
|
9
|
+
};
|
|
10
|
+
return __assign.apply(this, arguments);
|
|
11
|
+
};
|
|
12
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
13
|
+
var t = {};
|
|
14
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
15
|
+
t[p] = s[p];
|
|
16
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
17
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
18
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
19
|
+
t[p[i]] = s[p[i]];
|
|
20
|
+
}
|
|
21
|
+
return t;
|
|
22
|
+
};
|
|
23
|
+
/*---------------------------------------------------------------------------------------------
|
|
24
|
+
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
|
|
25
|
+
* See LICENSE.md in the project root for license terms and full copyright notice.
|
|
26
|
+
*--------------------------------------------------------------------------------------------*/
|
|
27
|
+
import cx from 'classnames';
|
|
28
|
+
import React from 'react';
|
|
29
|
+
import { DropdownMenu } from '../DropdownMenu';
|
|
30
|
+
import SvgCaretDownSmall from '@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall';
|
|
31
|
+
import SvgCaretUpSmall from '@itwin/itwinui-icons-react/cjs/icons/CaretUpSmall';
|
|
32
|
+
import { useTheme } from '../utils';
|
|
33
|
+
import { HeaderBasicButton } from './HeaderBasicButton';
|
|
34
|
+
export var HeaderSplitButton = React.forwardRef(function (props, forwardedRef) {
|
|
35
|
+
var menuItems = props.menuItems, className = props.className, _a = props.menuPlacement, menuPlacement = _a === void 0 ? 'bottom-end' : _a, children = props.children, style = props.style, title = props.title, disabled = props.disabled, rest = __rest(props, ["menuItems", "className", "menuPlacement", "children", "style", "title", "disabled"]);
|
|
36
|
+
useTheme();
|
|
37
|
+
var _b = React.useState(false), isMenuOpen = _b[0], setIsMenuOpen = _b[1];
|
|
38
|
+
var _c = React.useState(0), menuWidth = _c[0], setMenuWidth = _c[1];
|
|
39
|
+
var ref = React.useRef(null);
|
|
40
|
+
React.useEffect(function () {
|
|
41
|
+
if (ref.current) {
|
|
42
|
+
setMenuWidth(ref.current.offsetWidth);
|
|
43
|
+
}
|
|
44
|
+
}, [children]);
|
|
45
|
+
return (React.createElement("span", { className: cx('iui-header-breadcrumb-button-wrapper', className), style: style, title: title, ref: ref },
|
|
46
|
+
React.createElement(HeaderBasicButton, __assign({ ref: forwardedRef, disabled: disabled }, rest), children),
|
|
47
|
+
React.createElement(DropdownMenu, { placement: menuPlacement, menuItems: menuItems, style: { minWidth: menuWidth }, onShow: React.useCallback(function () { return setIsMenuOpen(true); }, []), onHide: React.useCallback(function () { return setIsMenuOpen(false); }, []) },
|
|
48
|
+
React.createElement("button", { className: 'iui-header-breadcrumb-button iui-header-breadcrumb-button-split', disabled: disabled }, isMenuOpen ? (React.createElement(SvgCaretUpSmall, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true })) : (React.createElement(SvgCaretDownSmall, { className: 'iui-header-breadcrumb-button-dropdown-icon', "aria-hidden": true }))))));
|
|
49
|
+
});
|
|
50
|
+
export default HeaderSplitButton;
|
package/esm/core/Input/Input.js
CHANGED
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import cx from 'classnames';
|
|
28
28
|
import React from 'react';
|
|
29
29
|
import { useMergedRefs, useTheme } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/input.css';
|
|
31
31
|
/**
|
|
32
32
|
* Basic input component
|
|
33
33
|
* @example
|
|
@@ -36,8 +36,7 @@ import '@itwin/itwinui-css/css/inputs.css';
|
|
|
36
36
|
* <Input size='small' />
|
|
37
37
|
*/
|
|
38
38
|
export var Input = React.forwardRef(function (props, ref) {
|
|
39
|
-
var _a;
|
|
40
|
-
var _b = props.setFocus, setFocus = _b === void 0 ? false : _b, size = props.size, className = props.className, rest = __rest(props, ["setFocus", "size", "className"]);
|
|
39
|
+
var _a = props.setFocus, setFocus = _a === void 0 ? false : _a, size = props.size, className = props.className, rest = __rest(props, ["setFocus", "size", "className"]);
|
|
41
40
|
useTheme();
|
|
42
41
|
var inputRef = React.useRef(null);
|
|
43
42
|
var refs = useMergedRefs(inputRef, ref);
|
|
@@ -46,6 +45,6 @@ export var Input = React.forwardRef(function (props, ref) {
|
|
|
46
45
|
inputRef.current.focus();
|
|
47
46
|
}
|
|
48
47
|
}, [setFocus]);
|
|
49
|
-
return (React.createElement("input", __assign({ className: cx('iui-input',
|
|
48
|
+
return (React.createElement("input", __assign({ className: cx('iui-input', className), "data-iui-size": size, ref: refs }, rest)));
|
|
50
49
|
});
|
|
51
50
|
export default Input;
|
|
@@ -26,7 +26,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
26
26
|
*--------------------------------------------------------------------------------------------*/
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import { StatusIconMap, useTheme, InputContainer } from '../utils';
|
|
29
|
-
import '@itwin/itwinui-css/css/
|
|
29
|
+
import '@itwin/itwinui-css/css/utils.css';
|
|
30
30
|
/**
|
|
31
31
|
* Group Checkbox/Radio components together
|
|
32
32
|
* @example
|
package/esm/core/Label/Label.js
CHANGED
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import cx from 'classnames';
|
|
29
29
|
import { useTheme } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/utils.css';
|
|
31
31
|
/**
|
|
32
32
|
* A standalone label to be used with input components (using `htmlFor`).
|
|
33
33
|
* Can be rendered as any element, e.g. span, using the `as` prop.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { InputProps } from '../Input/Input';
|
|
3
|
-
import '@itwin/itwinui-css/css/
|
|
3
|
+
import '@itwin/itwinui-css/css/input.css';
|
|
4
4
|
export declare type LabeledInputProps = {
|
|
5
5
|
/**
|
|
6
6
|
* Label of the input.
|
|
@@ -93,7 +93,7 @@ export declare const LabeledInput: React.ForwardRefExoticComponent<{
|
|
|
93
93
|
*
|
|
94
94
|
* Defaults to 'block' if `displayStyle` is `default`, else 'inline'.
|
|
95
95
|
*/
|
|
96
|
-
iconDisplayStyle?: "
|
|
96
|
+
iconDisplayStyle?: "inline" | "block" | undefined;
|
|
97
97
|
} & {
|
|
98
98
|
setFocus?: boolean | undefined;
|
|
99
99
|
size?: "small" | "large" | undefined;
|
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import { Input } from '../Input/Input';
|
|
29
29
|
import { StatusIconMap, useTheme, InputContainer } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/input.css';
|
|
31
31
|
/**
|
|
32
32
|
* Basic labeled input component
|
|
33
33
|
* @example
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { SelectProps } from '../Select/Select';
|
|
3
3
|
import { LabeledInputProps } from '../LabeledInput';
|
|
4
|
-
import '@itwin/itwinui-css/css/
|
|
4
|
+
import '@itwin/itwinui-css/css/select.css';
|
|
5
5
|
export declare type LabeledSelectProps<T> = {
|
|
6
6
|
/**
|
|
7
7
|
* Label of the select.
|
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import { Select } from '../Select';
|
|
29
29
|
import { StatusIconMap, useTheme, InputContainer } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/select.css';
|
|
31
31
|
/**
|
|
32
32
|
* Labeled select component to select value from options.
|
|
33
33
|
* @example
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { TextareaProps } from '../Textarea/Textarea';
|
|
3
3
|
import { LabeledInputProps } from '../LabeledInput';
|
|
4
|
-
import '@itwin/itwinui-css/css/
|
|
4
|
+
import '@itwin/itwinui-css/css/input.css';
|
|
5
5
|
export declare type LabeledTextareaProps = {
|
|
6
6
|
/**
|
|
7
7
|
* Label for the textarea.
|
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import { StatusIconMap, useTheme, InputContainer } from '../utils';
|
|
29
29
|
import { Textarea } from '../Textarea';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/input.css';
|
|
31
31
|
/**
|
|
32
32
|
* Textarea wrapper that allows for additional styling and labelling
|
|
33
33
|
* @example
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import '@itwin/itwinui-css/css/
|
|
2
|
+
import '@itwin/itwinui-css/css/radio.css';
|
|
3
3
|
export declare type RadioProps = {
|
|
4
4
|
/**
|
|
5
5
|
* Label of the radio.
|
|
@@ -9,20 +9,6 @@ export declare type RadioProps = {
|
|
|
9
9
|
* Status of the radio.
|
|
10
10
|
*/
|
|
11
11
|
status?: 'positive' | 'warning' | 'negative';
|
|
12
|
-
/**
|
|
13
|
-
* Custom CSS class name for the checkmark element.
|
|
14
|
-
*
|
|
15
|
-
* @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
|
|
16
|
-
* The checkmark has been moved into a pseudo-element.
|
|
17
|
-
*/
|
|
18
|
-
checkmarkClassName?: string;
|
|
19
|
-
/**
|
|
20
|
-
* Custom CSS Style for the checkmark element.
|
|
21
|
-
*
|
|
22
|
-
* @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
|
|
23
|
-
* The checkmark has been moved into a pseudo-element.
|
|
24
|
-
*/
|
|
25
|
-
checkmarkStyle?: React.CSSProperties;
|
|
26
12
|
/**
|
|
27
13
|
* Set focus on radio element.
|
|
28
14
|
* @default false
|
|
@@ -48,20 +34,6 @@ export declare const Radio: React.ForwardRefExoticComponent<{
|
|
|
48
34
|
* Status of the radio.
|
|
49
35
|
*/
|
|
50
36
|
status?: "positive" | "warning" | "negative" | undefined;
|
|
51
|
-
/**
|
|
52
|
-
* Custom CSS class name for the checkmark element.
|
|
53
|
-
*
|
|
54
|
-
* @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
|
|
55
|
-
* The checkmark has been moved into a pseudo-element.
|
|
56
|
-
*/
|
|
57
|
-
checkmarkClassName?: string | undefined;
|
|
58
|
-
/**
|
|
59
|
-
* Custom CSS Style for the checkmark element.
|
|
60
|
-
*
|
|
61
|
-
* @deprecated As of 1.32.0, this is applied on the actual radio `<input>` element.
|
|
62
|
-
* The checkmark has been moved into a pseudo-element.
|
|
63
|
-
*/
|
|
64
|
-
checkmarkStyle?: React.CSSProperties | undefined;
|
|
65
37
|
/**
|
|
66
38
|
* Set focus on radio element.
|
|
67
39
|
* @default false
|
package/esm/core/Radio/Radio.js
CHANGED
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import cx from 'classnames';
|
|
28
28
|
import React from 'react';
|
|
29
29
|
import { useMergedRefs, useTheme } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/radio.css';
|
|
31
31
|
/**
|
|
32
32
|
* Basic radio input component
|
|
33
33
|
* @example
|
|
@@ -40,7 +40,7 @@ import '@itwin/itwinui-css/css/inputs.css';
|
|
|
40
40
|
*/
|
|
41
41
|
export var Radio = React.forwardRef(function (props, ref) {
|
|
42
42
|
var _a, _b;
|
|
43
|
-
var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, label = props.label, status = props.status, style = props.style,
|
|
43
|
+
var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, label = props.label, status = props.status, style = props.style, _d = props.setFocus, setFocus = _d === void 0 ? false : _d, rest = __rest(props, ["className", "disabled", "label", "status", "style", "setFocus"]);
|
|
44
44
|
useTheme();
|
|
45
45
|
var inputElementRef = React.useRef(null);
|
|
46
46
|
var refs = useMergedRefs(inputElementRef, ref);
|
|
@@ -49,7 +49,7 @@ export var Radio = React.forwardRef(function (props, ref) {
|
|
|
49
49
|
inputElementRef.current.focus();
|
|
50
50
|
}
|
|
51
51
|
}, [setFocus]);
|
|
52
|
-
var radio = (React.createElement("input", __assign({ className: cx('iui-radio', className && (_a = {}, _a[className] = !label, _a)
|
|
52
|
+
var radio = (React.createElement("input", __assign({ className: cx('iui-radio', className && (_a = {}, _a[className] = !label, _a)), style: !label ? style : undefined, disabled: disabled, type: 'radio', ref: refs }, rest)));
|
|
53
53
|
return !label ? (radio) : (React.createElement("label", { className: cx('iui-radio-wrapper', (_b = { 'iui-disabled': disabled }, _b["iui-".concat(status)] = !!status, _b), className), style: style },
|
|
54
54
|
radio,
|
|
55
55
|
label && React.createElement("span", { className: 'iui-radio-label' }, label)));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { InputGroupProps } from '../InputGroup';
|
|
3
|
-
import '@itwin/itwinui-css/css/
|
|
3
|
+
import '@itwin/itwinui-css/css/radio-tile.css';
|
|
4
4
|
export declare type RadioTileGroupProps = Omit<InputGroupProps, 'displayStyle' | 'disabled'>;
|
|
5
5
|
/**
|
|
6
6
|
* RadioTileGroup component to group RadioTile components together
|
|
@@ -26,7 +26,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
26
26
|
*--------------------------------------------------------------------------------------------*/
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import { InputGroup } from '../InputGroup';
|
|
29
|
-
import '@itwin/itwinui-css/css/
|
|
29
|
+
import '@itwin/itwinui-css/css/radio-tile.css';
|
|
30
30
|
import { useTheme } from '../utils';
|
|
31
31
|
/**
|
|
32
32
|
* RadioTileGroup component to group RadioTile components together
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { PopoverProps, CommonProps } from '../utils';
|
|
3
|
-
import '@itwin/itwinui-css/css/
|
|
3
|
+
import '@itwin/itwinui-css/css/select.css';
|
|
4
4
|
export declare type ItemRendererProps = {
|
|
5
5
|
/**
|
|
6
6
|
* Close handler that closes the dropdown.
|
|
@@ -29,7 +29,7 @@ import cx from 'classnames';
|
|
|
29
29
|
import { DropdownMenu } from '../DropdownMenu';
|
|
30
30
|
import { MenuItem } from '../Menu/MenuItem';
|
|
31
31
|
import { useTheme, useOverflow, } from '../utils';
|
|
32
|
-
import '@itwin/itwinui-css/css/
|
|
32
|
+
import '@itwin/itwinui-css/css/select.css';
|
|
33
33
|
import SvgCaretDownSmall from '@itwin/itwinui-icons-react/cjs/icons/CaretDownSmall';
|
|
34
34
|
import SelectTag from './SelectTag';
|
|
35
35
|
var isMultipleEnabled = function (variable, multiple) {
|
|
@@ -90,14 +90,13 @@ var isSingleOnChange = function (onChange, multiple) {
|
|
|
90
90
|
*/
|
|
91
91
|
export var Select = function (props) {
|
|
92
92
|
var _a;
|
|
93
|
-
var _b;
|
|
94
|
-
var options = props.options, value = props.value, onChange = props.onChange, placeholder = props.placeholder, _c = props.disabled, disabled = _c === void 0 ? false : _c, size = props.size, _d = props.setFocus, setFocus = _d === void 0 ? false : _d, itemRenderer = props.itemRenderer, selectedItemRenderer = props.selectedItemRenderer, className = props.className, style = props.style, menuClassName = props.menuClassName, menuStyle = props.menuStyle, onShow = props.onShow, onHide = props.onHide, popoverProps = props.popoverProps, _e = props.multiple, multiple = _e === void 0 ? false : _e, rest = __rest(props, ["options", "value", "onChange", "placeholder", "disabled", "size", "setFocus", "itemRenderer", "selectedItemRenderer", "className", "style", "menuClassName", "menuStyle", "onShow", "onHide", "popoverProps", "multiple"]);
|
|
93
|
+
var options = props.options, value = props.value, onChange = props.onChange, placeholder = props.placeholder, _b = props.disabled, disabled = _b === void 0 ? false : _b, size = props.size, _c = props.setFocus, setFocus = _c === void 0 ? false : _c, itemRenderer = props.itemRenderer, selectedItemRenderer = props.selectedItemRenderer, className = props.className, style = props.style, menuClassName = props.menuClassName, menuStyle = props.menuStyle, onShow = props.onShow, onHide = props.onHide, popoverProps = props.popoverProps, _d = props.multiple, multiple = _d === void 0 ? false : _d, rest = __rest(props, ["options", "value", "onChange", "placeholder", "disabled", "size", "setFocus", "itemRenderer", "selectedItemRenderer", "className", "style", "menuClassName", "menuStyle", "onShow", "onHide", "popoverProps", "multiple"]);
|
|
95
94
|
useTheme();
|
|
96
|
-
var
|
|
95
|
+
var _e = React.useState((_a = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.visible) !== null && _a !== void 0 ? _a : false), isOpen = _e[0], setIsOpen = _e[1];
|
|
97
96
|
React.useEffect(function () {
|
|
98
97
|
setIsOpen(function (open) { var _a; return (_a = popoverProps === null || popoverProps === void 0 ? void 0 : popoverProps.visible) !== null && _a !== void 0 ? _a : open; });
|
|
99
98
|
}, [popoverProps]);
|
|
100
|
-
var
|
|
99
|
+
var _f = React.useState(0), minWidth = _f[0], setMinWidth = _f[1];
|
|
101
100
|
var toggle = function () { return setIsOpen(function (open) { return !open; }); };
|
|
102
101
|
var selectRef = React.useRef(null);
|
|
103
102
|
var toggleButtonRef = React.useRef(null);
|
|
@@ -171,19 +170,17 @@ export var Select = function (props) {
|
|
|
171
170
|
return React.createElement(SelectTag, { key: item.label, label: item.label });
|
|
172
171
|
}, []);
|
|
173
172
|
return (React.createElement("div", __assign({ className: cx('iui-input-with-icon', className), "aria-expanded": isOpen, "aria-haspopup": 'listbox', style: style }, rest),
|
|
174
|
-
React.createElement(DropdownMenu, __assign({ menuItems: menuItems, placement: 'bottom-start', className: cx('iui-scroll', menuClassName), style: __assign({ minWidth: minWidth, maxWidth: "min(".concat(minWidth * 2, "px, 90vw)")
|
|
173
|
+
React.createElement(DropdownMenu, __assign({ menuItems: menuItems, placement: 'bottom-start', className: cx('iui-scroll', menuClassName), style: __assign({ minWidth: minWidth, maxWidth: "min(".concat(minWidth * 2, "px, 90vw)") }, menuStyle), role: 'listbox', onShow: onShowHandler, onHide: onHideHandler, disabled: disabled }, popoverProps, { visible: isOpen, onClickOutside: function (_, _a) {
|
|
175
174
|
var _b;
|
|
176
175
|
var target = _a.target;
|
|
177
176
|
if (!((_b = toggleButtonRef.current) === null || _b === void 0 ? void 0 : _b.contains(target))) {
|
|
178
177
|
setIsOpen(false);
|
|
179
178
|
}
|
|
180
179
|
} }),
|
|
181
|
-
React.createElement("div", { ref: selectRef, className: cx('iui-select-button',
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
_a["iui-".concat(size)] = !!size,
|
|
186
|
-
_a)), onClick: function () { return !disabled && toggle(); }, onKeyDown: function (e) { return !disabled && onKeyDown(e, toggle); }, tabIndex: !disabled ? 0 : undefined },
|
|
180
|
+
React.createElement("div", { ref: selectRef, className: cx('iui-select-button', {
|
|
181
|
+
'iui-placeholder': (!selectedItems || selectedItems.length === 0) && !!placeholder,
|
|
182
|
+
'iui-disabled': disabled,
|
|
183
|
+
}), "data-iui-size": size, onClick: function () { return !disabled && toggle(); }, onKeyDown: function (e) { return !disabled && onKeyDown(e, toggle); }, tabIndex: !disabled ? 0 : undefined },
|
|
187
184
|
(!selectedItems || selectedItems.length === 0) && (React.createElement("span", { className: 'iui-content' }, placeholder)),
|
|
188
185
|
isMultipleEnabled(selectedItems, multiple) ? (React.createElement(MultipleSelectButton, { selectedItems: selectedItems, selectedItemsRenderer: selectedItemRenderer, tagRenderer: tagRenderer })) : (React.createElement(SingleSelectButton, { selectedItem: selectedItems, selectedItemRenderer: selectedItemRenderer })))),
|
|
189
186
|
React.createElement("span", { ref: toggleButtonRef, className: cx('iui-end-icon', {
|
|
@@ -27,7 +27,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
27
27
|
import cx from 'classnames';
|
|
28
28
|
import React from 'react';
|
|
29
29
|
import { useTheme } from '../utils';
|
|
30
|
-
import '@itwin/itwinui-css/css/
|
|
30
|
+
import '@itwin/itwinui-css/css/select.css';
|
|
31
31
|
/**
|
|
32
32
|
* Tag for showing selected value in `Select`.
|
|
33
33
|
* @private
|
|
@@ -37,8 +37,7 @@ export var SidenavButton = React.forwardRef(function (props, ref) {
|
|
|
37
37
|
var className = props.className, children = props.children, _a = props.isActive, isActive = _a === void 0 ? false : _a, _b = props.disabled, disabled = _b === void 0 ? false : _b, _c = props.isSubmenuOpen, isSubmenuOpen = _c === void 0 ? false : _c, rest = __rest(props, ["className", "children", "isActive", "disabled", "isSubmenuOpen"]);
|
|
38
38
|
useTheme();
|
|
39
39
|
return (React.createElement(Button, __assign({ className: cx('iui-sidenav-button', {
|
|
40
|
-
'iui-active': isActive,
|
|
41
40
|
'iui-submenu-open': isSubmenuOpen,
|
|
42
|
-
}, className), size: 'large', disabled: disabled, ref: ref }, rest), children));
|
|
41
|
+
}, className), "data-iui-active": isActive, size: 'large', disabled: disabled, ref: ref }, rest), children));
|
|
43
42
|
});
|
|
44
43
|
export default SidenavButton;
|