@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
|
@@ -35,15 +35,9 @@ import '@itwin/itwinui-css/css/button.css';
|
|
|
35
35
|
* <IconButton styleType='borderless'><SvgAdd /></IconButton>
|
|
36
36
|
*/
|
|
37
37
|
export var IconButton = React.forwardRef(function (props, ref) {
|
|
38
|
-
var _a;
|
|
39
|
-
var isActive = props.isActive, children = props.children, _b = props.styleType, styleType = _b === void 0 ? 'default' : _b, size = props.size, _c = props.type, type = _c === void 0 ? 'button' : _c, className = props.className, _d = props.as, Element = _d === void 0 ? 'button' : _d, rest = __rest(props, ["isActive", "children", "styleType", "size", "type", "className", "as"]);
|
|
38
|
+
var isActive = props.isActive, children = props.children, _a = props.styleType, styleType = _a === void 0 ? 'default' : _a, size = props.size, _b = props.type, type = _b === void 0 ? 'button' : _b, className = props.className, _c = props.as, Element = _c === void 0 ? 'button' : _c, rest = __rest(props, ["isActive", "children", "styleType", "size", "type", "className", "as"]);
|
|
40
39
|
useTheme();
|
|
41
|
-
return (React.createElement(Element, __assign({ ref: ref, className: cx('iui-button', "iui-"
|
|
42
|
-
|
|
43
|
-
_a['iui-active'] = isActive,
|
|
44
|
-
_a), className), type: type }, rest), React.cloneElement(children, {
|
|
45
|
-
className: cx('iui-button-icon', children.props.className),
|
|
46
|
-
'aria-hidden': true,
|
|
47
|
-
})));
|
|
40
|
+
return (React.createElement(Element, __assign({ ref: ref, className: cx('iui-button', className), "data-iui-variant": styleType !== 'default' ? styleType : undefined, "data-iui-size": size, "data-iui-active": isActive, type: type }, rest),
|
|
41
|
+
React.createElement("span", { className: 'iui-button-icon', "aria-hidden": true }, children)));
|
|
48
42
|
});
|
|
49
43
|
export default IconButton;
|
|
@@ -36,6 +36,6 @@ import { Button } from '../Button';
|
|
|
36
36
|
export var IdeasButton = React.forwardRef(function (props, ref) {
|
|
37
37
|
var _a = props.feedbackLabel, feedbackLabel = _a === void 0 ? 'Feedback' : _a, onClick = props.onClick, rest = __rest(props, ["feedbackLabel", "onClick"]);
|
|
38
38
|
useTheme();
|
|
39
|
-
return (React.createElement(Button, __assign({ ref: ref,
|
|
39
|
+
return (React.createElement(Button, __assign({ ref: ref, "data-iui-variant": 'idea', onClick: onClick, startIcon: React.createElement(SvgSmileyHappy, { "aria-hidden": true }) }, rest), feedbackLabel));
|
|
40
40
|
});
|
|
41
41
|
export default IdeasButton;
|
|
@@ -58,13 +58,11 @@ export var SplitButton = React.forwardRef(function (props, forwardedRef) {
|
|
|
58
58
|
setMenuWidth(ref.current.offsetWidth);
|
|
59
59
|
}
|
|
60
60
|
}, [children, size]);
|
|
61
|
-
return (React.createElement("span", { className: cx(className, 'iui-button-split
|
|
61
|
+
return (React.createElement("span", { className: cx(className, 'iui-button-split', {
|
|
62
62
|
'iui-disabled': props.disabled,
|
|
63
63
|
}), style: style, title: title, ref: ref },
|
|
64
|
-
React.createElement(
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
React.createElement(DropdownMenu, { placement: menuPlacement, menuItems: menuItems, style: { minWidth: menuWidth }, onShow: React.useCallback(function () { return setIsMenuOpen(true); }, []), onHide: React.useCallback(function () { return setIsMenuOpen(false); }, []) },
|
|
68
|
-
React.createElement(IconButton, { styleType: styleType, size: size, disabled: props.disabled }, isMenuOpen ? React.createElement(SvgCaretUpSmall, null) : React.createElement(SvgCaretDownSmall, null))))));
|
|
64
|
+
React.createElement(Button, __assign({ styleType: styleType, size: size, onClick: onClick, ref: forwardedRef }, rest), children),
|
|
65
|
+
React.createElement(DropdownMenu, { placement: menuPlacement, menuItems: menuItems, style: { minWidth: menuWidth }, onShow: React.useCallback(function () { return setIsMenuOpen(true); }, []), onHide: React.useCallback(function () { return setIsMenuOpen(false); }, []) },
|
|
66
|
+
React.createElement(IconButton, { styleType: styleType, size: size, disabled: props.disabled }, isMenuOpen ? React.createElement(SvgCaretUpSmall, null) : React.createElement(SvgCaretDownSmall, null)))));
|
|
69
67
|
});
|
|
70
68
|
export default SplitButton;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import '@itwin/itwinui-css/css/
|
|
2
|
+
import '@itwin/itwinui-css/css/checkbox.css';
|
|
3
3
|
export declare type CheckboxProps = {
|
|
4
4
|
/**
|
|
5
5
|
* Text that will be shown next to the checkbox.
|
|
@@ -28,20 +28,6 @@ export declare type CheckboxProps = {
|
|
|
28
28
|
* @default false
|
|
29
29
|
*/
|
|
30
30
|
isLoading?: boolean;
|
|
31
|
-
/**
|
|
32
|
-
* Custom CSS class name for the checkmark element.
|
|
33
|
-
*
|
|
34
|
-
* @deprecated As of 1.32.0, this is applied on the actual checkbox `<input>` element.
|
|
35
|
-
* The checkmark has been moved into a pseudo-element.
|
|
36
|
-
*/
|
|
37
|
-
checkmarkClassName?: string;
|
|
38
|
-
/**
|
|
39
|
-
* Custom CSS Style for the checkmark element.
|
|
40
|
-
*
|
|
41
|
-
* @deprecated As of 1.32.0, this is applied on the actual checkbox `<input>` element.
|
|
42
|
-
* The checkmark has been moved into a pseudo-element.
|
|
43
|
-
*/
|
|
44
|
-
checkmarkStyle?: React.CSSProperties;
|
|
45
31
|
} & Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type'>;
|
|
46
32
|
/**
|
|
47
33
|
* Simple input checkbox
|
|
@@ -83,19 +69,5 @@ export declare const Checkbox: React.ForwardRefExoticComponent<{
|
|
|
83
69
|
* @default false
|
|
84
70
|
*/
|
|
85
71
|
isLoading?: boolean | undefined;
|
|
86
|
-
/**
|
|
87
|
-
* Custom CSS class name for the checkmark element.
|
|
88
|
-
*
|
|
89
|
-
* @deprecated As of 1.32.0, this is applied on the actual checkbox `<input>` element.
|
|
90
|
-
* The checkmark has been moved into a pseudo-element.
|
|
91
|
-
*/
|
|
92
|
-
checkmarkClassName?: string | undefined;
|
|
93
|
-
/**
|
|
94
|
-
* Custom CSS Style for the checkmark element.
|
|
95
|
-
*
|
|
96
|
-
* @deprecated As of 1.32.0, this is applied on the actual checkbox `<input>` element.
|
|
97
|
-
* The checkmark has been moved into a pseudo-element.
|
|
98
|
-
*/
|
|
99
|
-
checkmarkStyle?: React.CSSProperties | undefined;
|
|
100
72
|
} & Omit<React.InputHTMLAttributes<HTMLInputElement>, "type"> & React.RefAttributes<HTMLInputElement>>;
|
|
101
73
|
export default Checkbox;
|
|
@@ -28,7 +28,7 @@ import cx from 'classnames';
|
|
|
28
28
|
import React from 'react';
|
|
29
29
|
import { ProgressRadial } from '../ProgressIndicators';
|
|
30
30
|
import { useMergedRefs, useTheme } from '../utils';
|
|
31
|
-
import '@itwin/itwinui-css/css/
|
|
31
|
+
import '@itwin/itwinui-css/css/checkbox.css';
|
|
32
32
|
/**
|
|
33
33
|
* Simple input checkbox
|
|
34
34
|
* @example
|
|
@@ -43,7 +43,7 @@ import '@itwin/itwinui-css/css/inputs.css';
|
|
|
43
43
|
*/
|
|
44
44
|
export var Checkbox = React.forwardRef(function (props, ref) {
|
|
45
45
|
var _a, _b;
|
|
46
|
-
var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, _d = props.indeterminate, indeterminate = _d === void 0 ? false : _d, label = props.label, status = props.status, _e = props.variant, variant = _e === void 0 ? 'default' : _e, setFocus = props.setFocus, _f = props.isLoading, isLoading = _f === void 0 ? false : _f, style = props.style,
|
|
46
|
+
var className = props.className, _c = props.disabled, disabled = _c === void 0 ? false : _c, _d = props.indeterminate, indeterminate = _d === void 0 ? false : _d, label = props.label, status = props.status, _e = props.variant, variant = _e === void 0 ? 'default' : _e, setFocus = props.setFocus, _f = props.isLoading, isLoading = _f === void 0 ? false : _f, style = props.style, rest = __rest(props, ["className", "disabled", "indeterminate", "label", "status", "variant", "setFocus", "isLoading", "style"]);
|
|
47
47
|
useTheme();
|
|
48
48
|
var inputElementRef = React.useRef(null);
|
|
49
49
|
var refs = useMergedRefs(inputElementRef, ref);
|
|
@@ -64,7 +64,7 @@ export var Checkbox = React.forwardRef(function (props, ref) {
|
|
|
64
64
|
React.createElement("input", __assign({ className: cx('iui-checkbox', {
|
|
65
65
|
'iui-checkbox-visibility': variant === 'eyeball',
|
|
66
66
|
'iui-loading': isLoading,
|
|
67
|
-
}, className && (_a = {}, _a[className] = !label, _a)
|
|
67
|
+
}, className && (_a = {}, _a[className] = !label, _a)), style: !label ? style : undefined, disabled: disabled || isLoading, type: 'checkbox', ref: refs }, rest)),
|
|
68
68
|
isLoading && React.createElement(ProgressRadial, { size: 'x-small', indeterminate: true })));
|
|
69
69
|
return !label ? (checkbox) : (React.createElement("label", { className: cx('iui-checkbox-wrapper', (_b = {
|
|
70
70
|
'iui-disabled': disabled
|
|
@@ -26,7 +26,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
26
26
|
*--------------------------------------------------------------------------------------------*/
|
|
27
27
|
import React from 'react';
|
|
28
28
|
import cx from 'classnames';
|
|
29
|
-
import { ColorValue, getBoundedValue,
|
|
29
|
+
import { ColorValue, getBoundedValue, useEventListener, useMergedRefs, useTheme, } from '../utils';
|
|
30
30
|
import { Slider } from '../Slider';
|
|
31
31
|
import '@itwin/itwinui-css/css/color-picker.css';
|
|
32
32
|
import { useColorPickerContext } from './ColorPickerContext';
|
|
@@ -44,12 +44,12 @@ var getHorizontalPercentageOfRectangle = function (rect, pointer) {
|
|
|
44
44
|
* and a set of sliders to adjust hue and alpha values.
|
|
45
45
|
*/
|
|
46
46
|
export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
47
|
-
var _a, _b, _c
|
|
47
|
+
var _a, _b, _c;
|
|
48
48
|
var className = props.className, rest = __rest(props, ["className"]);
|
|
49
49
|
var builderRef = React.useRef();
|
|
50
50
|
var refs = useMergedRefs(builderRef, ref);
|
|
51
51
|
useTheme();
|
|
52
|
-
var
|
|
52
|
+
var _d = useColorPickerContext(), activeColor = _d.activeColor, hsvColor = _d.hsvColor, onChangeComplete = _d.onChangeComplete, applyHsvColorChange = _d.applyHsvColorChange, showAlpha = _d.showAlpha;
|
|
53
53
|
// Set values for slider
|
|
54
54
|
var hueSliderColor = React.useMemo(function () { return ColorValue.create({ h: hsvColor.h, s: 100, v: 100 }); }, [hsvColor.h]);
|
|
55
55
|
var sliderValue = React.useMemo(function () { return hsvColor.h; }, [hsvColor]);
|
|
@@ -61,28 +61,10 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
61
61
|
var dotColorString = React.useMemo(function () { return activeColor.toHexString(); }, [
|
|
62
62
|
activeColor,
|
|
63
63
|
]);
|
|
64
|
-
var
|
|
64
|
+
var _e = React.useState(false), colorDotActive = _e[0], setColorDotActive = _e[1];
|
|
65
65
|
var hueColorString = hueSliderColor.toHexString();
|
|
66
|
-
var colorSquareStyle = ((_c = (_b = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.CSS) === null || _b === void 0 ? void 0 : _b.supports) === null || _c === void 0 ? void 0 : _c.call(_b, "--iui-color-field-hue: ".concat(hueColorString)))
|
|
67
|
-
? {
|
|
68
|
-
'--iui-color-field-hue': hueColorString,
|
|
69
|
-
'--iui-color-picker-selected-color': dotColorString,
|
|
70
|
-
}
|
|
71
|
-
: { backgroundColor: hueColorString };
|
|
72
|
-
var opacitySliderStyle = ((_f = (_e = (_d = getWindow()) === null || _d === void 0 ? void 0 : _d.CSS) === null || _e === void 0 ? void 0 : _e.supports) === null || _f === void 0 ? void 0 : _f.call(_e, "--iui-color-picker-selected-color: ".concat(hueColorString)))
|
|
73
|
-
? { '--iui-color-picker-selected-color': hueColorString }
|
|
74
|
-
: { backgroundColor: hueColorString };
|
|
75
66
|
var squareTop = 100 - hsvColor.v;
|
|
76
67
|
var squareLeft = hsvColor.s;
|
|
77
|
-
var colorDotStyle = ((_j = (_h = (_g = getWindow()) === null || _g === void 0 ? void 0 : _g.CSS) === null || _h === void 0 ? void 0 : _h.supports) === null || _j === void 0 ? void 0 : _j.call(_h, "--iui-color-dot-inset: 0"))
|
|
78
|
-
? {
|
|
79
|
-
'--iui-color-dot-inset': "".concat(squareTop.toString(), "% auto auto ").concat(squareLeft.toString(), "%"),
|
|
80
|
-
}
|
|
81
|
-
: {
|
|
82
|
-
backgroundColor: dotColorString,
|
|
83
|
-
top: squareTop.toString() + '%',
|
|
84
|
-
left: squareLeft.toString() + '%',
|
|
85
|
-
};
|
|
86
68
|
// Update slider change
|
|
87
69
|
var updateHueSlider = React.useCallback(function (huePercent, selectionChanged) {
|
|
88
70
|
var hue = Number(huePercent.toFixed(2));
|
|
@@ -139,7 +121,7 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
139
121
|
event.preventDefault();
|
|
140
122
|
event.stopPropagation();
|
|
141
123
|
}, [colorDotActive, updateSquareValue]);
|
|
142
|
-
useEventListener('pointerup', handleSquarePointerUp, (
|
|
124
|
+
useEventListener('pointerup', handleSquarePointerUp, (_a = builderRef.current) === null || _a === void 0 ? void 0 : _a.ownerDocument);
|
|
143
125
|
var handleSquarePointerMove = React.useCallback(function (event) {
|
|
144
126
|
if (!colorDotActive) {
|
|
145
127
|
return;
|
|
@@ -148,7 +130,7 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
148
130
|
event.stopPropagation();
|
|
149
131
|
updateSquareValue(event, 'onUpdate');
|
|
150
132
|
}, [colorDotActive, updateSquareValue]);
|
|
151
|
-
useEventListener('pointermove', handleSquarePointerMove, (
|
|
133
|
+
useEventListener('pointermove', handleSquarePointerMove, (_b = builderRef.current) === null || _b === void 0 ? void 0 : _b.ownerDocument);
|
|
152
134
|
var handleSquarePointerLeave = React.useCallback(function (event) {
|
|
153
135
|
if (!colorDotActive) {
|
|
154
136
|
return;
|
|
@@ -156,7 +138,7 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
156
138
|
updateSquareValue(event, 'onChange');
|
|
157
139
|
setColorDotActive(false);
|
|
158
140
|
}, [colorDotActive, updateSquareValue]);
|
|
159
|
-
useEventListener('pointerleave', handleSquarePointerLeave, (
|
|
141
|
+
useEventListener('pointerleave', handleSquarePointerLeave, (_c = builderRef.current) === null || _c === void 0 ? void 0 : _c.ownerDocument);
|
|
160
142
|
var keysPressed = React.useRef({}); // keep track of which keys are currently pressed
|
|
161
143
|
// Arrow key navigation for color dot
|
|
162
144
|
var handleColorDotKeyDown = function (event) {
|
|
@@ -202,14 +184,19 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
202
184
|
}
|
|
203
185
|
};
|
|
204
186
|
return (React.createElement("div", __assign({ className: cx('iui-color-selection-wrapper', className), ref: refs }, rest),
|
|
205
|
-
React.createElement("div", { className: 'iui-color-field', style:
|
|
187
|
+
React.createElement("div", { className: 'iui-color-field', style: {
|
|
188
|
+
'--iui-color-field-hue': hueColorString,
|
|
189
|
+
'--iui-color-picker-selected-color': dotColorString,
|
|
190
|
+
}, ref: squareRef, onPointerDown: function (event) {
|
|
206
191
|
var _a;
|
|
207
192
|
event.preventDefault();
|
|
208
193
|
updateSquareValue(event, 'onClick');
|
|
209
194
|
setColorDotActive(true);
|
|
210
195
|
(_a = colorDotRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
211
196
|
} },
|
|
212
|
-
React.createElement("div", { className: 'iui-color-dot', style:
|
|
197
|
+
React.createElement("div", { className: 'iui-color-dot', style: {
|
|
198
|
+
'--iui-color-dot-inset': "".concat(squareTop.toString(), "% auto auto ").concat(squareLeft.toString(), "%"),
|
|
199
|
+
}, onPointerDown: function () {
|
|
213
200
|
var _a;
|
|
214
201
|
setColorDotActive(true);
|
|
215
202
|
(_a = colorDotRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
@@ -223,5 +210,7 @@ export var ColorBuilder = React.forwardRef(function (props, ref) {
|
|
|
223
210
|
updateOpacitySlider(values[0], true);
|
|
224
211
|
}, onUpdate: function (values) {
|
|
225
212
|
updateOpacitySlider(values[0], false);
|
|
226
|
-
}, min: 0, max: 1, step: 0.01, style:
|
|
213
|
+
}, min: 0, max: 1, step: 0.01, style: {
|
|
214
|
+
'--iui-color-picker-selected-color': hueColorString,
|
|
215
|
+
} }))));
|
|
227
216
|
});
|
|
@@ -17,5 +17,5 @@ export declare type ColorSwatchProps = {
|
|
|
17
17
|
* <ColorSwatch color='#23450b' onClick={onClick}/>
|
|
18
18
|
* <ColorSwatch color={{ r: 255, g: 255, b: 0 }} onClick={onClick}/>
|
|
19
19
|
*/
|
|
20
|
-
export declare const ColorSwatch: React.ForwardRefExoticComponent<Pick<ColorSwatchProps, "dir" | "slot" | "style" | "title" | "id" | "aria-disabled" | "
|
|
20
|
+
export declare const ColorSwatch: React.ForwardRefExoticComponent<Pick<ColorSwatchProps, "dir" | "slot" | "style" | "title" | "id" | "aria-disabled" | "key" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "draggable" | "hidden" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "isActive"> & React.RefAttributes<HTMLDivElement>>;
|
|
21
21
|
export default ColorSwatch;
|
|
@@ -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 '@itwin/itwinui-css/css/color-picker.css';
|
|
30
|
-
import { useTheme
|
|
30
|
+
import { useTheme } from '../utils';
|
|
31
31
|
import { getColorValue } from './ColorPicker';
|
|
32
32
|
/**
|
|
33
33
|
* ColorSwatch component to display within a color palette.
|
|
@@ -43,11 +43,6 @@ export var ColorSwatch = React.forwardRef(function (props, ref) {
|
|
|
43
43
|
? color
|
|
44
44
|
: getColorValue(color).toHslString(true);
|
|
45
45
|
}, [color]);
|
|
46
|
-
|
|
47
|
-
var _a, _b, _c;
|
|
48
|
-
return ((_c = (_b = (_a = getWindow()) === null || _a === void 0 ? void 0 : _a.CSS) === null || _b === void 0 ? void 0 : _b.supports) === null || _c === void 0 ? void 0 : _c.call(_b, "--iui-color-swatch-background: ".concat(colorString)))
|
|
49
|
-
? __assign({ '--iui-color-swatch-background': colorString }, style) : __assign({ backgroundColor: colorString }, style);
|
|
50
|
-
}, [colorString, style]);
|
|
51
|
-
return (React.createElement("div", __assign({ className: cx('iui-color-swatch', { 'iui-active': isActive }, className), style: _style, onClick: onClick, tabIndex: isActive ? 0 : -1, "aria-selected": isActive, ref: ref }, rest)));
|
|
46
|
+
return (React.createElement("div", __assign({ className: cx('iui-color-swatch', { 'iui-active': isActive }, className), style: __assign({ '--iui-color-swatch-background': colorString }, style), onClick: onClick, tabIndex: isActive ? 0 : -1, "aria-selected": isActive, ref: ref }, rest)));
|
|
52
47
|
});
|
|
53
48
|
export default ColorSwatch;
|
|
@@ -3,5 +3,5 @@ import { PopoverProps } from '../utils';
|
|
|
3
3
|
declare type ComboBoxDropdownProps = PopoverProps & {
|
|
4
4
|
children: JSX.Element;
|
|
5
5
|
};
|
|
6
|
-
export declare const ComboBoxDropdown: React.ForwardRefExoticComponent<Pick<ComboBoxDropdownProps, "disabled" | "children" | "placement" | "trigger" | "visible" | "content" | "render" | "animateFill" | "appendTo" | "aria" | "delay" | "duration" | "followCursor" | "getReferenceClientRect" | "hideOnClick" | "ignoreAttributes" | "inlinePositioning" | "interactive" | "interactiveBorder" | "interactiveDebounce" | "moveTransition" | "offset" | "
|
|
6
|
+
export declare const ComboBoxDropdown: React.ForwardRefExoticComponent<Pick<ComboBoxDropdownProps, "disabled" | "theme" | "className" | "role" | "children" | "plugins" | "placement" | "trigger" | "visible" | "content" | "render" | "animateFill" | "appendTo" | "aria" | "delay" | "duration" | "followCursor" | "getReferenceClientRect" | "hideOnClick" | "ignoreAttributes" | "inlinePositioning" | "interactive" | "interactiveBorder" | "interactiveDebounce" | "moveTransition" | "offset" | "popperOptions" | "showOnCreate" | "sticky" | "touch" | "triggerTarget" | "onAfterUpdate" | "onBeforeUpdate" | "onCreate" | "onDestroy" | "onHidden" | "onHide" | "onMount" | "onShow" | "onShown" | "onTrigger" | "onUntrigger" | "onClickOutside" | "allowHTML" | "animation" | "arrow" | "inertia" | "maxWidth" | "zIndex" | "singleton" | "reference"> & React.RefAttributes<Element>>;
|
|
7
7
|
export {};
|
|
@@ -32,7 +32,7 @@ import { useSafeContext, useMergedRefs, useVirtualization, mergeRefs, getWindow,
|
|
|
32
32
|
import { ComboBoxStateContext, ComboBoxRefsContext } from './helpers';
|
|
33
33
|
var VirtualizedComboBoxMenu = React.forwardRef(function (_a, forwardedRef) {
|
|
34
34
|
var _b, _c, _d;
|
|
35
|
-
var children = _a.children, style = _a.style, rest = __rest(_a, ["children", "style"]);
|
|
35
|
+
var children = _a.children, className = _a.className, style = _a.style, rest = __rest(_a, ["children", "className", "style"]);
|
|
36
36
|
var _e = useSafeContext(ComboBoxStateContext), minWidth = _e.minWidth, id = _e.id, filteredOptions = _e.filteredOptions, getMenuItem = _e.getMenuItem, focusedIndex = _e.focusedIndex;
|
|
37
37
|
var menuRef = useSafeContext(ComboBoxRefsContext).menuRef;
|
|
38
38
|
var virtualItemRenderer = React.useCallback(function (index) {
|
|
@@ -62,11 +62,10 @@ var VirtualizedComboBoxMenu = React.forwardRef(function (_a, forwardedRef) {
|
|
|
62
62
|
var styles = React.useMemo(function () { return ({
|
|
63
63
|
minWidth: minWidth,
|
|
64
64
|
maxWidth: "min(".concat(minWidth * 2, "px, 90vw)"),
|
|
65
|
-
maxHeight: 315,
|
|
66
65
|
}); }, [minWidth]);
|
|
67
66
|
return (React.createElement(Surface, __assign({ elevation: 1, style: __assign(__assign(__assign({}, styles), overflowY), style) }, rest),
|
|
68
67
|
React.createElement("div", __assign({}, outerProps),
|
|
69
|
-
React.createElement(Menu, { id: "".concat(id, "-list"), setFocus: false, role: 'listbox', ref: mergeRefs(menuRef, innerProps.ref, forwardedRef), style: innerProps.style }, visibleChildren))));
|
|
68
|
+
React.createElement(Menu, { id: "".concat(id, "-list"), setFocus: false, role: 'listbox', ref: mergeRefs(menuRef, innerProps.ref, forwardedRef), className: cx('iui-scroll', className), style: innerProps.style }, visibleChildren))));
|
|
70
69
|
});
|
|
71
70
|
export var ComboBoxMenu = React.forwardRef(function (props, forwardedRef) {
|
|
72
71
|
var className = props.className, style = props.style, rest = __rest(props, ["className", "style"]);
|
|
@@ -76,7 +75,6 @@ export var ComboBoxMenu = React.forwardRef(function (props, forwardedRef) {
|
|
|
76
75
|
var styles = React.useMemo(function () { return ({
|
|
77
76
|
minWidth: minWidth,
|
|
78
77
|
maxWidth: "min(".concat(minWidth * 2, "px, 90vw)"),
|
|
79
|
-
maxHeight: 315,
|
|
80
78
|
}); }, [minWidth]);
|
|
81
79
|
return (React.createElement(React.Fragment, null, !enableVirtualization ? (React.createElement(Menu, __assign({ id: "".concat(id, "-list"), style: __assign(__assign({}, styles), style), setFocus: false, role: 'listbox', ref: refs, className: cx('iui-scroll', className) }, rest))) : (React.createElement(VirtualizedComboBoxMenu, __assign({ ref: forwardedRef }, props)))));
|
|
82
80
|
});
|
|
@@ -29,10 +29,10 @@ export declare type DialogProps = {
|
|
|
29
29
|
* </Dialog.Main>
|
|
30
30
|
* </Dialog>
|
|
31
31
|
*/
|
|
32
|
-
export declare const Dialog: React.ForwardRefExoticComponent<Pick<DialogProps, "
|
|
33
|
-
Backdrop: React.ForwardRefExoticComponent<Pick<import("./DialogBackdrop").DialogBackdropProps, "
|
|
34
|
-
Main: React.ForwardRefExoticComponent<Pick<import("./DialogMain").DialogMainProps, "
|
|
35
|
-
TitleBar: React.ForwardRefExoticComponent<Pick<import("./DialogTitleBar").DialogTitleBarProps, "
|
|
32
|
+
export declare const Dialog: React.ForwardRefExoticComponent<Pick<DialogProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "setFocus" | "isOpen" | "isDismissible" | "isDraggable" | "closeOnExternalClick" | "closeOnEsc" | "trapFocus" | "preventDocumentScroll" | "isResizable" | "relativeTo"> & React.RefAttributes<HTMLDivElement>> & {
|
|
33
|
+
Backdrop: React.ForwardRefExoticComponent<Pick<import("./DialogBackdrop").DialogBackdropProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "isVisible" | "isDismissible" | "closeOnExternalClick" | "relativeTo"> & React.RefAttributes<HTMLDivElement>>;
|
|
34
|
+
Main: React.ForwardRefExoticComponent<Pick<import("./DialogMain").DialogMainProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "styleType" | "setFocus" | "isOpen" | "isDismissible" | "isDraggable" | "closeOnEsc" | "trapFocus" | "preventDocumentScroll" | "isResizable" | "relativeTo"> & React.RefAttributes<HTMLDivElement>>;
|
|
35
|
+
TitleBar: React.ForwardRefExoticComponent<Pick<import("./DialogTitleBar").DialogTitleBarProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "isDismissible" | "isDraggable" | "titleText"> & React.RefAttributes<HTMLDivElement>> & {
|
|
36
36
|
Title: React.ForwardRefExoticComponent<Pick<import("./DialogTitleBarTitle").DialogTitleBarTitleProps, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>>;
|
|
37
37
|
};
|
|
38
38
|
Content: React.ForwardRefExoticComponent<Pick<import("./DialogContent").DialogContentProps, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -74,7 +74,7 @@ export var Dialog = Object.assign(React.forwardRef(function (props, ref) {
|
|
|
74
74
|
relativeTo: relativeTo,
|
|
75
75
|
dialogRootRef: dialogRootRef,
|
|
76
76
|
} },
|
|
77
|
-
React.createElement("div", __assign({ className: cx('iui-dialog-wrapper', className),
|
|
77
|
+
React.createElement("div", __assign({ className: cx('iui-dialog-wrapper', className), "data-iui-relative": relativeTo === 'container', ref: refs, style: __assign({}, style) }, rest), children)));
|
|
78
78
|
}), {
|
|
79
79
|
Backdrop: DialogBackdrop,
|
|
80
80
|
Main: DialogMain,
|
|
@@ -8,5 +8,5 @@ export declare type DialogBackdropProps = BackdropProps & Pick<DialogContextProp
|
|
|
8
8
|
* @example
|
|
9
9
|
* <Dialog.Backdrop />
|
|
10
10
|
*/
|
|
11
|
-
export declare const DialogBackdrop: React.ForwardRefExoticComponent<Pick<DialogBackdropProps, "
|
|
11
|
+
export declare const DialogBackdrop: React.ForwardRefExoticComponent<Pick<DialogBackdropProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "isVisible" | "isDismissible" | "closeOnExternalClick" | "relativeTo"> & React.RefAttributes<HTMLDivElement>>;
|
|
12
12
|
export default DialogBackdrop;
|
|
@@ -28,6 +28,7 @@ import React from 'react';
|
|
|
28
28
|
import { Backdrop } from '../Backdrop';
|
|
29
29
|
import { useMergedRefs } from '../utils';
|
|
30
30
|
import { useDialogContext } from './DialogContext';
|
|
31
|
+
import cx from 'classnames';
|
|
31
32
|
/**
|
|
32
33
|
* Backdrop component for dialog. Recommended to be used with `Dialog`
|
|
33
34
|
* then its visibility is being controlled by dialog's `isOpen` prop.
|
|
@@ -36,7 +37,7 @@ import { useDialogContext } from './DialogContext';
|
|
|
36
37
|
*/
|
|
37
38
|
export var DialogBackdrop = React.forwardRef(function (props, ref) {
|
|
38
39
|
var dialogContext = useDialogContext();
|
|
39
|
-
var _a = props.isVisible, isVisible = _a === void 0 ? dialogContext.isOpen : _a, _b = props.isDismissible, isDismissible = _b === void 0 ? dialogContext.isDismissible : _b, _c = props.onClose, onClose = _c === void 0 ? dialogContext.onClose : _c, _d = props.closeOnExternalClick, closeOnExternalClick = _d === void 0 ? dialogContext.closeOnExternalClick : _d, _e = props.relativeTo, relativeTo = _e === void 0 ? dialogContext.relativeTo : _e, onMouseDown = props.onMouseDown, style = props.style, rest = __rest(props, ["isVisible", "isDismissible", "onClose", "closeOnExternalClick", "relativeTo", "onMouseDown", "style"]);
|
|
40
|
+
var _a = props.isVisible, isVisible = _a === void 0 ? dialogContext.isOpen : _a, _b = props.isDismissible, isDismissible = _b === void 0 ? dialogContext.isDismissible : _b, _c = props.onClose, onClose = _c === void 0 ? dialogContext.onClose : _c, _d = props.closeOnExternalClick, closeOnExternalClick = _d === void 0 ? dialogContext.closeOnExternalClick : _d, _e = props.relativeTo, relativeTo = _e === void 0 ? dialogContext.relativeTo : _e, onMouseDown = props.onMouseDown, className = props.className, style = props.style, rest = __rest(props, ["isVisible", "isDismissible", "onClose", "closeOnExternalClick", "relativeTo", "onMouseDown", "className", "style"]);
|
|
40
41
|
var backdropRef = React.useRef(null);
|
|
41
42
|
var refs = useMergedRefs(backdropRef, ref);
|
|
42
43
|
var handleMouseDown = function (event) {
|
|
@@ -50,6 +51,8 @@ export var DialogBackdrop = React.forwardRef(function (props, ref) {
|
|
|
50
51
|
}
|
|
51
52
|
onMouseDown === null || onMouseDown === void 0 ? void 0 : onMouseDown(event);
|
|
52
53
|
};
|
|
53
|
-
return (React.createElement(Backdrop, __assign({ isVisible: isVisible,
|
|
54
|
+
return (React.createElement(Backdrop, __assign({ isVisible: isVisible, className: cx({
|
|
55
|
+
'iui-backdrop-fixed': relativeTo === 'viewport',
|
|
56
|
+
}, className), ref: refs, onMouseDown: handleMouseDown, style: __assign({ pointerEvents: 'auto' }, style) }, rest)));
|
|
54
57
|
});
|
|
55
58
|
export default DialogBackdrop;
|
|
@@ -32,5 +32,5 @@ export declare type DialogMainProps = {
|
|
|
32
32
|
* </Dialog.ButtonBar>
|
|
33
33
|
* </Dialog.Main>
|
|
34
34
|
*/
|
|
35
|
-
export declare const DialogMain: React.ForwardRefExoticComponent<Pick<DialogMainProps, "
|
|
35
|
+
export declare const DialogMain: React.ForwardRefExoticComponent<Pick<DialogMainProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "styleType" | "setFocus" | "isOpen" | "isDismissible" | "isDraggable" | "closeOnEsc" | "trapFocus" | "preventDocumentScroll" | "isResizable" | "relativeTo"> & React.RefAttributes<HTMLDivElement>>;
|
|
36
36
|
export default DialogMain;
|
|
@@ -59,6 +59,7 @@ export var DialogMain = React.forwardRef(function (props, ref) {
|
|
|
59
59
|
var _l = React.useState(), style = _l[0], setStyle = _l[1];
|
|
60
60
|
var dialogRef = React.useRef(null);
|
|
61
61
|
var refs = useMergedRefs(dialogRef, ref);
|
|
62
|
+
var hasBeenResized = React.useRef(false);
|
|
62
63
|
// Focuses dialog when opened and brings back focus to the previously focused element when closed.
|
|
63
64
|
var previousFocusedElement = React.useRef();
|
|
64
65
|
var setFocusRef = useLatestRef(setFocus);
|
|
@@ -144,7 +145,12 @@ export var DialogMain = React.forwardRef(function (props, ref) {
|
|
|
144
145
|
'iui-dialog-visible': isOpen,
|
|
145
146
|
'iui-dialog-draggable': isDraggable,
|
|
146
147
|
}, className), role: 'dialog', ref: refs, onKeyDown: handleKeyDown, tabIndex: -1, style: __assign(__assign({ transform: transform, overflow: 'unset' }, style), propStyle) }, rest),
|
|
147
|
-
isResizable && (React.createElement(Resizer, { elementRef: dialogRef, containerRef: dialogContext.dialogRootRef,
|
|
148
|
+
isResizable && (React.createElement(Resizer, { elementRef: dialogRef, containerRef: dialogContext.dialogRootRef, onResizeStart: function () {
|
|
149
|
+
if (!hasBeenResized.current) {
|
|
150
|
+
hasBeenResized.current = true;
|
|
151
|
+
setResizeStyle({ maxWidth: '100%' });
|
|
152
|
+
}
|
|
153
|
+
}, onResizeEnd: setResizeStyle })),
|
|
148
154
|
children));
|
|
149
155
|
return (React.createElement(CSSTransition, { in: isOpen, classNames: 'iui-dialog-animation', timeout: { exit: 600 }, unmountOnExit: true, nodeRef: dialogRef },
|
|
150
156
|
React.createElement(DialogDragContext.Provider, { value: { onPointerDown: handlePointerDown } },
|
|
@@ -28,7 +28,7 @@ export declare type DialogTitleBarProps = {
|
|
|
28
28
|
* </IconButton>
|
|
29
29
|
* </Dialog.TitleBar>
|
|
30
30
|
*/
|
|
31
|
-
export declare const DialogTitleBar: React.ForwardRefExoticComponent<Pick<DialogTitleBarProps, "
|
|
31
|
+
export declare const DialogTitleBar: React.ForwardRefExoticComponent<Pick<DialogTitleBarProps, "key" | keyof React.HTMLAttributes<HTMLDivElement> | "onClose" | "isDismissible" | "isDraggable" | "titleText"> & React.RefAttributes<HTMLDivElement>> & {
|
|
32
32
|
Title: React.ForwardRefExoticComponent<Pick<import("./DialogTitleBarTitle").DialogTitleBarTitleProps, "key" | keyof React.HTMLAttributes<HTMLDivElement>> & React.RefAttributes<HTMLDivElement>>;
|
|
33
33
|
};
|
|
34
34
|
export default DialogTitleBar;
|
|
@@ -39,11 +39,10 @@ import '@itwin/itwinui-css/css/expandable-block.css';
|
|
|
39
39
|
* <ExpandableBlock title='Block with icon' endIcon={<SvgPlaceholder />}>Content</ExpandableBlock>
|
|
40
40
|
*/
|
|
41
41
|
export var ExpandableBlock = function (props) {
|
|
42
|
-
var _a;
|
|
43
|
-
var caption = props.caption, children = props.children, className = props.className, title = props.title, onToggle = props.onToggle, style = props.style, _b = props.isExpanded, isExpanded = _b === void 0 ? false : _b, endIcon = props.endIcon, status = props.status, _c = props.size, size = _c === void 0 ? 'default' : _c, _d = props.styleType, styleType = _d === void 0 ? 'default' : _d, rest = __rest(props, ["caption", "children", "className", "title", "onToggle", "style", "isExpanded", "endIcon", "status", "size", "styleType"]);
|
|
42
|
+
var caption = props.caption, children = props.children, className = props.className, title = props.title, onToggle = props.onToggle, style = props.style, _a = props.isExpanded, isExpanded = _a === void 0 ? false : _a, endIcon = props.endIcon, status = props.status, _b = props.size, size = _b === void 0 ? 'default' : _b, _c = props.styleType, styleType = _c === void 0 ? 'default' : _c, rest = __rest(props, ["caption", "children", "className", "title", "onToggle", "style", "isExpanded", "endIcon", "status", "size", "styleType"]);
|
|
44
43
|
useTheme();
|
|
45
44
|
var icon = endIcon !== null && endIcon !== void 0 ? endIcon : (status && StatusIconMap[status]());
|
|
46
|
-
var
|
|
45
|
+
var _d = React.useState(isExpanded), expanded = _d[0], setExpanded = _d[1];
|
|
47
46
|
React.useEffect(function () {
|
|
48
47
|
setExpanded(isExpanded);
|
|
49
48
|
}, [isExpanded]);
|
|
@@ -71,7 +70,8 @@ export var ExpandableBlock = function (props) {
|
|
|
71
70
|
caption && React.createElement("div", { className: 'iui-caption' }, caption)),
|
|
72
71
|
icon &&
|
|
73
72
|
React.cloneElement(icon, {
|
|
74
|
-
className: cx('iui-status-icon',
|
|
73
|
+
className: cx('iui-status-icon', icon.props.className),
|
|
74
|
+
'data-iui-icon-color': status,
|
|
75
75
|
})),
|
|
76
76
|
React.createElement(WithCSSTransition, { in: expanded },
|
|
77
77
|
React.createElement("div", { className: 'iui-expandable-content' },
|
|
@@ -26,8 +26,12 @@ export declare type HeaderProps = {
|
|
|
26
26
|
*/
|
|
27
27
|
breadcrumbs?: React.ReactNode;
|
|
28
28
|
/**
|
|
29
|
-
* Content displayed to the left of the
|
|
29
|
+
* Content displayed to the left of the `menuItems`
|
|
30
30
|
* (expects array of `IconButton`, potentially wrapped in a `DropdownMenu`)
|
|
31
|
+
*
|
|
32
|
+
* Since v2, `userIcon` is deprecated.
|
|
33
|
+
* The new recommendation is to add `Avatar` (Called `UserIcon` before v2) to the end of `actions`.
|
|
34
|
+
* `Avatar` can be wrapped in `IconButton` and `DropdownMenu` if needed.
|
|
31
35
|
* @example
|
|
32
36
|
* [
|
|
33
37
|
* <IconButton><SvgNotification /></IconButton>,
|
|
@@ -35,6 +39,11 @@ export declare type HeaderProps = {
|
|
|
35
39
|
* <IconButton>
|
|
36
40
|
* <SvgHelpCircularHollow />
|
|
37
41
|
* </IconButton>
|
|
42
|
+
* </DropdownMenu>,
|
|
43
|
+
* <DropdownMenu menuItems={...}>
|
|
44
|
+
* <IconButton styleType='borderless'>
|
|
45
|
+
* <Avatar ... />
|
|
46
|
+
* </IconButton>
|
|
38
47
|
* </DropdownMenu>
|
|
39
48
|
* ]
|
|
40
49
|
*/
|
|
@@ -44,7 +53,10 @@ export declare type HeaderProps = {
|
|
|
44
53
|
*/
|
|
45
54
|
children?: React.ReactNode;
|
|
46
55
|
/**
|
|
56
|
+
* @deprecated Since v2, add your `UserIcon` (called `Avatar` since v2) to the end of `actions` itself
|
|
57
|
+
*
|
|
47
58
|
* User icon
|
|
59
|
+
*
|
|
48
60
|
* It's size and transition will be handled between slim/not slim state of the
|
|
49
61
|
* Header
|
|
50
62
|
* (expects `UserIcon`, can be wrapped in `IconButton` and `DropdownMenu` if needed)
|
|
@@ -89,15 +101,13 @@ export declare type HeaderProps = {
|
|
|
89
101
|
* <IconButton>
|
|
90
102
|
* <SvgHelpCircularHollow />
|
|
91
103
|
* </IconButton>
|
|
92
|
-
* </DropdownMenu
|
|
93
|
-
* ]}
|
|
94
|
-
* userIcon={
|
|
104
|
+
* </DropdownMenu>,
|
|
95
105
|
* <DropdownMenu menuItems={...}>
|
|
96
106
|
* <IconButton styleType='borderless'>
|
|
97
|
-
* <
|
|
107
|
+
* <Avatar ... />
|
|
98
108
|
* </IconButton>
|
|
99
109
|
* </DropdownMenu>
|
|
100
|
-
* }
|
|
110
|
+
* ]}
|
|
101
111
|
* isSlim
|
|
102
112
|
* />
|
|
103
113
|
*/
|
|
@@ -51,15 +51,13 @@ var defaultTranslations = {
|
|
|
51
51
|
* <IconButton>
|
|
52
52
|
* <SvgHelpCircularHollow />
|
|
53
53
|
* </IconButton>
|
|
54
|
-
* </DropdownMenu
|
|
55
|
-
* ]}
|
|
56
|
-
* userIcon={
|
|
54
|
+
* </DropdownMenu>,
|
|
57
55
|
* <DropdownMenu menuItems={...}>
|
|
58
56
|
* <IconButton styleType='borderless'>
|
|
59
|
-
* <
|
|
57
|
+
* <Avatar ... />
|
|
60
58
|
* </IconButton>
|
|
61
59
|
* </DropdownMenu>
|
|
62
|
-
* }
|
|
60
|
+
* ]}
|
|
63
61
|
* isSlim
|
|
64
62
|
* />
|
|
65
63
|
*/
|
|
@@ -68,12 +66,12 @@ export var Header = function (props) {
|
|
|
68
66
|
useTheme();
|
|
69
67
|
var headerTranslations = __assign(__assign({}, defaultTranslations), translatedStrings);
|
|
70
68
|
return (React.createElement("header", __assign({ className: cx('iui-page-header', { 'iui-slim': isSlim }, className) }, rest),
|
|
71
|
-
React.createElement("div", { className: 'iui-left' },
|
|
69
|
+
React.createElement("div", { className: 'iui-page-header-left' },
|
|
72
70
|
appLogo,
|
|
73
|
-
breadcrumbs && React.createElement("div", { className: 'iui-divider' }),
|
|
71
|
+
breadcrumbs && React.createElement("div", { className: 'iui-page-header-divider' }),
|
|
74
72
|
breadcrumbs),
|
|
75
|
-
children && React.createElement("div", { className: 'iui-center' }, children),
|
|
76
|
-
React.createElement("div", { className: 'iui-right' },
|
|
73
|
+
children && React.createElement("div", { className: 'iui-page-header-center' }, children),
|
|
74
|
+
React.createElement("div", { className: 'iui-page-header-right' },
|
|
77
75
|
actions,
|
|
78
76
|
userIcon,
|
|
79
77
|
menuItems && (React.createElement(DropdownMenu, { menuItems: menuItems },
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PolymorphicForwardRefComponent } from '../utils';
|
|
2
|
+
import { ButtonProps } from '../Buttons';
|
|
3
|
+
export declare type HeaderBasicButtonProps = ButtonProps;
|
|
4
|
+
declare type HeaderBasicButtonComponent = PolymorphicForwardRefComponent<'button', HeaderBasicButtonProps>;
|
|
5
|
+
export declare const HeaderBasicButton: HeaderBasicButtonComponent;
|
|
6
|
+
export default HeaderBasicButton;
|