rsuite 5.12.0 → 5.14.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/Button/styles/index.less +1 -0
- package/CHANGELOG.md +49 -0
- package/Dropdown/styles/index.less +8 -3
- package/Grid/styles/index.less +42 -10
- package/Nav/styles/index.less +7 -1
- package/Navbar/styles/index.less +6 -1
- package/Sidenav/styles/index.less +52 -16
- package/Table/styles/index.less +0 -2
- package/Tooltip/styles/index.less +4 -4
- package/cjs/@types/common.d.ts +6 -0
- package/cjs/Cascader/DropdownMenu.js +8 -3
- package/cjs/Cascader/utils.d.ts +1 -1
- package/cjs/Col/Col.d.ts +25 -5
- package/cjs/Col/Col.js +9 -1
- package/cjs/CustomProvider/CustomProvider.d.ts +20 -7
- package/cjs/CustomProvider/CustomProvider.js +24 -3
- package/cjs/Disclosure/Disclosure.d.ts +1 -1
- package/cjs/Disclosure/DisclosureContext.d.ts +1 -1
- package/cjs/Dropdown/Dropdown.js +26 -110
- package/cjs/Dropdown/DropdownItem.js +14 -58
- package/cjs/Dropdown/DropdownMenu.js +32 -76
- package/cjs/Dropdown/DropdownToggle.js +4 -17
- package/cjs/Dropdown/useRenderDropdownItem.d.ts +1 -1
- package/cjs/Form/Form.d.ts +8 -8
- package/cjs/Form/test/Form.test.d.ts +1 -0
- package/cjs/Form/test/Form.test.js +18 -0
- package/cjs/Menu/Menu.d.ts +1 -0
- package/cjs/Menu/Menu.js +1 -0
- package/cjs/Menu/MenuItem.d.ts +1 -0
- package/cjs/Menu/MenuItem.js +1 -0
- package/cjs/Menu/Menubar.d.ts +3 -0
- package/cjs/Menu/Menubar.js +4 -0
- package/cjs/Modal/test/Modal.test.d.ts +1 -0
- package/cjs/Modal/test/Modal.test.js +14 -0
- package/cjs/Modal/utils.d.ts +1 -1
- package/cjs/Nav/Nav.d.ts +7 -2
- package/cjs/Nav/Nav.js +105 -5
- package/cjs/Nav/NavContext.d.ts +2 -8
- package/cjs/Nav/NavContext.js +1 -7
- package/cjs/Nav/NavDropdown.d.ts +71 -0
- package/cjs/Nav/NavDropdown.js +193 -0
- package/cjs/Nav/NavDropdownItem.d.ts +39 -0
- package/cjs/Nav/NavDropdownItem.js +141 -0
- package/cjs/Nav/NavDropdownMenu.d.ts +37 -0
- package/cjs/Nav/NavDropdownMenu.js +162 -0
- package/cjs/Nav/NavDropdownToggle.d.ts +21 -0
- package/cjs/Nav/NavDropdownToggle.js +74 -0
- package/cjs/Nav/NavItem.d.ts +2 -0
- package/cjs/Nav/NavItem.js +13 -26
- package/cjs/Nav/NavMenu.d.ts +38 -0
- package/cjs/Nav/NavMenu.js +122 -0
- package/cjs/Nav/test/Nav.test.d.ts +1 -0
- package/cjs/Nav/test/Nav.test.js +17 -0
- package/cjs/Navbar/NavbarDropdown.d.ts +57 -0
- package/cjs/Navbar/NavbarDropdown.js +147 -0
- package/cjs/Navbar/NavbarDropdownItem.d.ts +41 -0
- package/cjs/Navbar/NavbarDropdownItem.js +149 -0
- package/cjs/Navbar/NavbarDropdownMenu.d.ts +48 -0
- package/cjs/Navbar/NavbarDropdownMenu.js +161 -0
- package/cjs/Navbar/NavbarDropdownToggle.d.ts +19 -0
- package/cjs/Navbar/NavbarDropdownToggle.js +72 -0
- package/cjs/Navbar/NavbarItem.d.ts +5 -2
- package/cjs/Navbar/NavbarItem.js +10 -4
- package/cjs/Overlay/Modal.d.ts +1 -4
- package/cjs/Overlay/Overlay.d.ts +3 -1
- package/cjs/Overlay/Overlay.js +6 -2
- package/cjs/Overlay/OverlayTrigger.d.ts +8 -4
- package/cjs/Overlay/OverlayTrigger.js +32 -4
- package/cjs/Overlay/Position.d.ts +3 -1
- package/cjs/Overlay/Position.js +12 -4
- package/cjs/Overlay/positionUtils.d.ts +11 -4
- package/cjs/Overlay/positionUtils.js +48 -2
- package/cjs/Panel/Panel.js +9 -6
- package/cjs/Picker/utils.d.ts +1 -1
- package/cjs/Picker/utils.js +22 -15
- package/cjs/Popover/Popover.d.ts +2 -0
- package/cjs/Popover/Popover.js +6 -3
- package/cjs/Sidenav/ExpandedSidenavDropdown.d.ts +43 -0
- package/cjs/Sidenav/ExpandedSidenavDropdown.js +166 -0
- package/cjs/Sidenav/ExpandedSidenavDropdownItem.d.ts +31 -0
- package/cjs/Sidenav/ExpandedSidenavDropdownItem.js +141 -0
- package/cjs/Sidenav/ExpandedSidenavDropdownMenu.d.ts +26 -0
- package/cjs/Sidenav/ExpandedSidenavDropdownMenu.js +145 -0
- package/cjs/Sidenav/Sidenav.d.ts +8 -2
- package/cjs/Sidenav/Sidenav.js +1 -2
- package/cjs/Sidenav/SidenavDropdown.d.ts +30 -8
- package/cjs/Sidenav/SidenavDropdown.js +144 -73
- package/cjs/Sidenav/SidenavDropdownItem.d.ts +22 -5
- package/cjs/Sidenav/SidenavDropdownItem.js +88 -72
- package/cjs/Sidenav/SidenavDropdownMenu.d.ts +26 -16
- package/cjs/Sidenav/SidenavDropdownMenu.js +122 -90
- package/cjs/Sidenav/SidenavDropdownToggle.d.ts +19 -0
- package/cjs/Sidenav/SidenavDropdownToggle.js +73 -0
- package/cjs/Sidenav/SidenavItem.d.ts +7 -0
- package/cjs/Sidenav/SidenavItem.js +54 -37
- package/cjs/Sidenav/SidenavToggle.d.ts +5 -1
- package/cjs/Sidenav/SidenavToggle.js +25 -9
- package/cjs/Toggle/Toggle.d.ts +1 -1
- package/cjs/Tooltip/Tooltip.d.ts +3 -1
- package/cjs/Tooltip/Tooltip.js +8 -3
- package/cjs/Whisper/Whisper.d.ts +3 -5
- package/cjs/Whisper/Whisper.js +6 -1
- package/cjs/Whisper/test/Whisper.test.d.ts +1 -0
- package/cjs/Whisper/test/Whisper.test.js +23 -0
- package/cjs/index.d.ts +3 -3
- package/cjs/index.js +3 -2
- package/cjs/toaster/ToastContainer.d.ts +1 -0
- package/cjs/toaster/ToastContainer.js +4 -1
- package/cjs/toaster/index.d.ts +1 -0
- package/cjs/toaster/index.js +4 -1
- package/cjs/toaster/toaster.d.ts +0 -1
- package/cjs/toaster/useToaster.d.ts +12 -0
- package/cjs/toaster/useToaster.js +43 -0
- package/cjs/utils/constants.d.ts +1 -0
- package/cjs/utils/constants.js +3 -1
- package/cjs/utils/deprecateComponent.js +4 -6
- package/cjs/utils/deprecatePropType.d.ts +1 -5
- package/cjs/utils/deprecatePropType.js +7 -14
- package/cjs/utils/stringToObject.d.ts +1 -1
- package/cjs/utils/tplTransform.d.ts +1 -1
- package/cjs/utils/treeUtils.d.ts +3 -3
- package/cjs/utils/treeUtils.js +8 -10
- package/cjs/utils/useCustom.d.ts +1 -1
- package/cjs/utils/useCustom.js +5 -3
- package/cjs/utils/useFocus.d.ts +1 -1
- package/cjs/utils/useInternalId.d.ts +1 -1
- package/cjs/utils/useInternalId.js +2 -2
- package/cjs/utils/warnOnce.d.ts +9 -0
- package/cjs/utils/warnOnce.js +22 -0
- package/dist/rsuite-rtl.css +735 -56
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +735 -56
- package/dist/rsuite.js +363 -121
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/@types/common.d.ts +6 -0
- package/esm/Cascader/DropdownMenu.js +8 -3
- package/esm/Cascader/utils.d.ts +1 -1
- package/esm/Col/Col.d.ts +25 -5
- package/esm/Col/Col.js +10 -2
- package/esm/CustomProvider/CustomProvider.d.ts +20 -7
- package/esm/CustomProvider/CustomProvider.js +22 -3
- package/esm/Disclosure/Disclosure.d.ts +1 -1
- package/esm/Disclosure/DisclosureContext.d.ts +1 -1
- package/esm/Dropdown/Dropdown.js +25 -105
- package/esm/Dropdown/DropdownItem.js +13 -55
- package/esm/Dropdown/DropdownMenu.js +31 -76
- package/esm/Dropdown/DropdownToggle.js +4 -14
- package/esm/Dropdown/useRenderDropdownItem.d.ts +1 -1
- package/esm/Form/Form.d.ts +8 -8
- package/esm/Form/test/Form.test.d.ts +1 -0
- package/esm/Form/test/Form.test.js +11 -0
- package/esm/Menu/Menu.d.ts +1 -0
- package/esm/Menu/Menu.js +1 -0
- package/esm/Menu/MenuItem.d.ts +1 -0
- package/esm/Menu/MenuItem.js +1 -0
- package/esm/Menu/Menubar.d.ts +3 -0
- package/esm/Menu/Menubar.js +4 -0
- package/esm/Modal/test/Modal.test.d.ts +1 -0
- package/esm/Modal/test/Modal.test.js +9 -0
- package/esm/Modal/utils.d.ts +1 -1
- package/esm/Nav/Nav.d.ts +7 -2
- package/esm/Nav/Nav.js +96 -5
- package/esm/Nav/NavContext.d.ts +2 -8
- package/esm/Nav/NavContext.js +1 -6
- package/esm/Nav/NavDropdown.d.ts +71 -0
- package/esm/Nav/NavDropdown.js +170 -0
- package/esm/Nav/NavDropdownItem.d.ts +39 -0
- package/esm/Nav/NavDropdownItem.js +123 -0
- package/esm/Nav/NavDropdownMenu.d.ts +37 -0
- package/esm/Nav/NavDropdownMenu.js +143 -0
- package/esm/Nav/NavDropdownToggle.d.ts +21 -0
- package/esm/Nav/NavDropdownToggle.js +57 -0
- package/esm/Nav/NavItem.d.ts +2 -0
- package/esm/Nav/NavItem.js +13 -21
- package/esm/Nav/NavMenu.d.ts +38 -0
- package/esm/Nav/NavMenu.js +98 -0
- package/esm/Nav/test/Nav.test.d.ts +1 -0
- package/esm/Nav/test/Nav.test.js +11 -0
- package/esm/Navbar/NavbarDropdown.d.ts +57 -0
- package/esm/Navbar/NavbarDropdown.js +124 -0
- package/esm/Navbar/NavbarDropdownItem.d.ts +41 -0
- package/esm/Navbar/NavbarDropdownItem.js +128 -0
- package/esm/Navbar/NavbarDropdownMenu.d.ts +48 -0
- package/esm/Navbar/NavbarDropdownMenu.js +140 -0
- package/esm/Navbar/NavbarDropdownToggle.d.ts +19 -0
- package/esm/Navbar/NavbarDropdownToggle.js +55 -0
- package/esm/Navbar/NavbarItem.d.ts +5 -2
- package/esm/Navbar/NavbarItem.js +11 -4
- package/esm/Overlay/Modal.d.ts +1 -4
- package/esm/Overlay/Overlay.d.ts +3 -1
- package/esm/Overlay/Overlay.js +6 -2
- package/esm/Overlay/OverlayTrigger.d.ts +8 -4
- package/esm/Overlay/OverlayTrigger.js +33 -5
- package/esm/Overlay/Position.d.ts +3 -1
- package/esm/Overlay/Position.js +12 -4
- package/esm/Overlay/positionUtils.d.ts +11 -4
- package/esm/Overlay/positionUtils.js +46 -2
- package/esm/Panel/Panel.js +9 -6
- package/esm/Picker/utils.d.ts +1 -1
- package/esm/Picker/utils.js +22 -14
- package/esm/Popover/Popover.d.ts +2 -0
- package/esm/Popover/Popover.js +6 -3
- package/esm/Sidenav/ExpandedSidenavDropdown.d.ts +43 -0
- package/esm/Sidenav/ExpandedSidenavDropdown.js +140 -0
- package/esm/Sidenav/ExpandedSidenavDropdownItem.d.ts +31 -0
- package/esm/Sidenav/ExpandedSidenavDropdownItem.js +120 -0
- package/esm/Sidenav/ExpandedSidenavDropdownMenu.d.ts +26 -0
- package/esm/Sidenav/ExpandedSidenavDropdownMenu.js +121 -0
- package/esm/Sidenav/Sidenav.d.ts +8 -2
- package/esm/Sidenav/Sidenav.js +1 -2
- package/esm/Sidenav/SidenavDropdown.d.ts +30 -8
- package/esm/Sidenav/SidenavDropdown.js +145 -75
- package/esm/Sidenav/SidenavDropdownItem.d.ts +22 -5
- package/esm/Sidenav/SidenavDropdownItem.js +87 -71
- package/esm/Sidenav/SidenavDropdownMenu.d.ts +26 -16
- package/esm/Sidenav/SidenavDropdownMenu.js +122 -86
- package/esm/Sidenav/SidenavDropdownToggle.d.ts +19 -0
- package/esm/Sidenav/SidenavDropdownToggle.js +56 -0
- package/esm/Sidenav/SidenavItem.d.ts +7 -0
- package/esm/Sidenav/SidenavItem.js +53 -38
- package/esm/Sidenav/SidenavToggle.d.ts +5 -1
- package/esm/Sidenav/SidenavToggle.js +22 -9
- package/esm/Toggle/Toggle.d.ts +1 -1
- package/esm/Tooltip/Tooltip.d.ts +3 -1
- package/esm/Tooltip/Tooltip.js +8 -3
- package/esm/Whisper/Whisper.d.ts +3 -5
- package/esm/Whisper/Whisper.js +6 -1
- package/esm/Whisper/test/Whisper.test.d.ts +1 -0
- package/esm/Whisper/test/Whisper.test.js +16 -0
- package/esm/index.d.ts +3 -3
- package/esm/index.js +1 -1
- package/esm/toaster/ToastContainer.d.ts +1 -0
- package/esm/toaster/ToastContainer.js +1 -0
- package/esm/toaster/index.d.ts +1 -0
- package/esm/toaster/index.js +1 -0
- package/esm/toaster/toaster.d.ts +0 -1
- package/esm/toaster/useToaster.d.ts +12 -0
- package/esm/toaster/useToaster.js +34 -0
- package/esm/utils/constants.d.ts +1 -0
- package/esm/utils/constants.js +1 -0
- package/esm/utils/deprecateComponent.js +3 -4
- package/esm/utils/deprecatePropType.d.ts +1 -5
- package/esm/utils/deprecatePropType.js +3 -13
- package/esm/utils/stringToObject.d.ts +1 -1
- package/esm/utils/tplTransform.d.ts +1 -1
- package/esm/utils/treeUtils.d.ts +3 -3
- package/esm/utils/treeUtils.js +8 -10
- package/esm/utils/useCustom.d.ts +1 -1
- package/esm/utils/useCustom.js +5 -3
- package/esm/utils/useFocus.d.ts +1 -1
- package/esm/utils/useInternalId.d.ts +1 -1
- package/esm/utils/useInternalId.js +2 -2
- package/esm/utils/warnOnce.d.ts +9 -0
- package/esm/utils/warnOnce.js +18 -0
- package/package.json +1 -1
- package/styles/color-modes/dark.less +3 -0
- package/styles/color-modes/high-contrast.less +3 -0
- package/styles/color-modes/light.less +5 -2
- package/styles/variables.less +33 -12
package/esm/@types/common.d.ts
CHANGED
|
@@ -149,4 +149,10 @@ export interface Offset {
|
|
|
149
149
|
height: number;
|
|
150
150
|
}
|
|
151
151
|
export declare type OnChangeCallback<T, E = React.SyntheticEvent> = (value: T, event: E) => void;
|
|
152
|
+
export declare type CursorPosition = {
|
|
153
|
+
top: number;
|
|
154
|
+
left: number;
|
|
155
|
+
clientTop: number;
|
|
156
|
+
clientLeft: number;
|
|
157
|
+
};
|
|
152
158
|
export {};
|
|
@@ -100,11 +100,13 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
100
100
|
return /*#__PURE__*/React.createElement(DropdownMenuItem, {
|
|
101
101
|
classPrefix: "picker-cascader-menu-item",
|
|
102
102
|
as: 'li',
|
|
103
|
+
role: "treeitem",
|
|
103
104
|
key: layer + "-" + onlyKey,
|
|
104
105
|
disabled: disabled,
|
|
105
106
|
active: !isUndefined(activeItemValue) && shallowEqual(activeItemValue, value),
|
|
106
107
|
focus: focus,
|
|
107
108
|
value: value,
|
|
109
|
+
"aria-owns": node.children ? 'treeitem-' + value + '-children' : undefined,
|
|
108
110
|
className: children ? prefix('has-children') : undefined,
|
|
109
111
|
onSelect: function onSelect(_value, event) {
|
|
110
112
|
return handleSelect(layer, node, event);
|
|
@@ -120,12 +122,13 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
120
122
|
};
|
|
121
123
|
var cascadeNodes = cascadeData.map(function (children, layer) {
|
|
122
124
|
var onlyKey = layer + "_" + children.length;
|
|
125
|
+
var parentNode = cascadePaths[layer - 1];
|
|
123
126
|
var menu = /*#__PURE__*/React.createElement("ul", {
|
|
124
|
-
role:
|
|
127
|
+
role: layer === 0 ? 'none presentation' : 'group',
|
|
128
|
+
id: parentNode ? 'treeitem-' + parentNode[valueKey] + '-children' : undefined
|
|
125
129
|
}, children.map(function (item, index) {
|
|
126
130
|
return renderCascadeNode(item, index, layer, cascadePaths[layer] && shallowEqual(cascadePaths[layer][valueKey], item[valueKey]));
|
|
127
131
|
}));
|
|
128
|
-
var parentNode = cascadePaths[layer - 1];
|
|
129
132
|
return /*#__PURE__*/React.createElement("div", {
|
|
130
133
|
key: onlyKey,
|
|
131
134
|
className: prefix('column'),
|
|
@@ -137,7 +140,9 @@ var DropdownMenu = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
137
140
|
}
|
|
138
141
|
}, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);
|
|
139
142
|
});
|
|
140
|
-
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
143
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
144
|
+
role: "tree"
|
|
145
|
+
}, rest, {
|
|
141
146
|
ref: mergeRefs(rootRef, ref),
|
|
142
147
|
className: classes
|
|
143
148
|
}), /*#__PURE__*/React.createElement("div", {
|
package/esm/Cascader/utils.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export declare function getColumnsAndPaths<T extends ItemDataType>(data: T[], va
|
|
|
6
6
|
paths: T[];
|
|
7
7
|
};
|
|
8
8
|
export declare function usePaths(props: CascaderProps): {
|
|
9
|
-
enforceUpdate: (nextValue: any, isAttachChildren?: boolean
|
|
9
|
+
enforceUpdate: (nextValue: any, isAttachChildren?: boolean) => void;
|
|
10
10
|
columnData: ItemDataType<string | number>[][];
|
|
11
11
|
valueToPaths: ItemDataType<string | number>[];
|
|
12
12
|
selectedPaths: ItemDataType<string | number>[];
|
package/esm/Col/Col.d.ts
CHANGED
|
@@ -1,21 +1,29 @@
|
|
|
1
1
|
import { WithAsProps, RsRefForwardingComponent } from '../@types/common';
|
|
2
2
|
export interface ColProps extends WithAsProps {
|
|
3
|
-
/** The number of columns you wish to span for Extra small devices Phones (<
|
|
3
|
+
/** The number of columns you wish to span for Extra small devices Phones (< 576px) */
|
|
4
4
|
xs?: number;
|
|
5
|
-
/** The number of columns you wish to span for Small devices Tablets (≥
|
|
5
|
+
/** The number of columns you wish to span for Small devices Tablets (≥ 576px) */
|
|
6
6
|
sm?: number;
|
|
7
|
-
/** The number of columns you wish to span for Medium devices Desktops (≥
|
|
7
|
+
/** The number of columns you wish to span for Medium devices Desktops (≥ 768px) */
|
|
8
8
|
md?: number;
|
|
9
|
-
/** The number of columns you wish to span for Large devices Desktops (≥
|
|
9
|
+
/** The number of columns you wish to span for Large devices Desktops (≥ 992px) */
|
|
10
10
|
lg?: number;
|
|
11
|
+
/** The number of columns you wish to span for Extra Large devices Desktops (≥ 1200px) */
|
|
12
|
+
xl?: number;
|
|
13
|
+
/** The number of columns you wish to span for Ultra Large devices Desktops (≥ 1400px) */
|
|
14
|
+
xxl?: number;
|
|
11
15
|
/** Move columns to the right for Extra small devices Phones */
|
|
12
16
|
xsOffset?: number;
|
|
13
17
|
/** Move columns to the right for Small devices Tablets */
|
|
14
18
|
smOffset?: number;
|
|
15
19
|
/** Move columns to the right for Medium devices Desktops */
|
|
16
20
|
mdOffset?: number;
|
|
17
|
-
/** Move columns to the right for
|
|
21
|
+
/** Move columns to the right for Large devices Desktops */
|
|
18
22
|
lgOffset?: number;
|
|
23
|
+
/** Move columns to the right for Extra large devices Desktops */
|
|
24
|
+
xlOffset?: number;
|
|
25
|
+
/** Move columns to the right for Ultra large devices Desktops */
|
|
26
|
+
xxlOffset?: number;
|
|
19
27
|
/** Change the order of grid columns to the right for Extra small devices Phones */
|
|
20
28
|
xsPush?: number;
|
|
21
29
|
/** Change the order of grid columns to the right for Small devices Tablets */
|
|
@@ -24,6 +32,10 @@ export interface ColProps extends WithAsProps {
|
|
|
24
32
|
mdPush?: number;
|
|
25
33
|
/** Change the order of grid columns to the right for Large devices Desktops */
|
|
26
34
|
lgPush?: number;
|
|
35
|
+
/** Change the order of grid columns to the right for Extra large devices Desktops */
|
|
36
|
+
xlPush?: number;
|
|
37
|
+
/** Change the order of grid columns to the right for Ultra large devices Desktops */
|
|
38
|
+
xxlPush?: number;
|
|
27
39
|
/** Change the order of grid columns to the left for Extra small devices Phones */
|
|
28
40
|
xsPull?: number;
|
|
29
41
|
/** Change the order of grid columns to the left for Small devices Tablets */
|
|
@@ -32,6 +44,10 @@ export interface ColProps extends WithAsProps {
|
|
|
32
44
|
mdPull?: number;
|
|
33
45
|
/** Change the order of grid columns to the left for Large devices Desktops */
|
|
34
46
|
lgPull?: number;
|
|
47
|
+
/** Change the order of grid columns to the left for Extra large devices Desktops */
|
|
48
|
+
xlPull?: number;
|
|
49
|
+
/** Change the order of grid columns to the left for Ultra large devices Desktops */
|
|
50
|
+
xxlPull?: number;
|
|
35
51
|
/** Hide column on Extra small devices Phones */
|
|
36
52
|
xsHidden?: boolean;
|
|
37
53
|
/** Hide column on Small devices Tablets */
|
|
@@ -40,6 +56,10 @@ export interface ColProps extends WithAsProps {
|
|
|
40
56
|
mdHidden?: boolean;
|
|
41
57
|
/** Hide column on Large devices Desktops */
|
|
42
58
|
lgHidden?: boolean;
|
|
59
|
+
/** Hide column on Extra large devices Desktops */
|
|
60
|
+
xlHidden?: boolean;
|
|
61
|
+
/** Hide column on Ultra large devices Desktops */
|
|
62
|
+
xxlHidden?: boolean;
|
|
43
63
|
}
|
|
44
64
|
declare const Col: RsRefForwardingComponent<'div', ColProps>;
|
|
45
65
|
export default Col;
|
package/esm/Col/Col.js
CHANGED
|
@@ -3,7 +3,7 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import omit from 'lodash/omit';
|
|
6
|
-
import { useClassNames,
|
|
6
|
+
import { useClassNames, COLUMN_SIZE } from '../utils';
|
|
7
7
|
var Col = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
8
8
|
var _props$as = props.as,
|
|
9
9
|
Component = _props$as === void 0 ? 'div' : _props$as,
|
|
@@ -26,7 +26,7 @@ var Col = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
26
26
|
return rest[key];
|
|
27
27
|
};
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
COLUMN_SIZE.forEach(function (size) {
|
|
30
30
|
var col = getPropValue(size);
|
|
31
31
|
var hidden = getPropValue(size + "Hidden");
|
|
32
32
|
var offset = getPropValue(size + "Offset");
|
|
@@ -55,10 +55,14 @@ Col.propTypes = {
|
|
|
55
55
|
sm: PropTypes.number,
|
|
56
56
|
md: PropTypes.number,
|
|
57
57
|
lg: PropTypes.number,
|
|
58
|
+
xl: PropTypes.number,
|
|
59
|
+
xxl: PropTypes.number,
|
|
58
60
|
xsOffset: PropTypes.number,
|
|
59
61
|
smOffset: PropTypes.number,
|
|
60
62
|
mdOffset: PropTypes.number,
|
|
61
63
|
lgOffset: PropTypes.number,
|
|
64
|
+
xlOffset: PropTypes.number,
|
|
65
|
+
xxlOffset: PropTypes.number,
|
|
62
66
|
xsPush: PropTypes.number,
|
|
63
67
|
smPush: PropTypes.number,
|
|
64
68
|
mdPush: PropTypes.number,
|
|
@@ -67,10 +71,14 @@ Col.propTypes = {
|
|
|
67
71
|
smPull: PropTypes.number,
|
|
68
72
|
mdPull: PropTypes.number,
|
|
69
73
|
lgPull: PropTypes.number,
|
|
74
|
+
xlPull: PropTypes.number,
|
|
75
|
+
xxlPull: PropTypes.number,
|
|
70
76
|
xsHidden: PropTypes.bool,
|
|
71
77
|
smHidden: PropTypes.bool,
|
|
72
78
|
mdHidden: PropTypes.bool,
|
|
73
79
|
lgHidden: PropTypes.bool,
|
|
80
|
+
xlHidden: PropTypes.bool,
|
|
81
|
+
xxlHidden: PropTypes.bool,
|
|
74
82
|
as: PropTypes.elementType
|
|
75
83
|
};
|
|
76
84
|
export default Col;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { Locale } from '../locales';
|
|
3
|
+
import { ToastContainerInstance } from '../toaster/ToastContainer';
|
|
3
4
|
export interface CustomValue<T = Locale> {
|
|
4
5
|
/** Language configuration */
|
|
5
6
|
locale: T;
|
|
@@ -33,6 +34,10 @@ export interface CustomValue<T = Locale> {
|
|
|
33
34
|
*
|
|
34
35
|
* */
|
|
35
36
|
parseDate: (dateString: string, formatString: string) => Date;
|
|
37
|
+
/**
|
|
38
|
+
* A Map of toast containers
|
|
39
|
+
*/
|
|
40
|
+
toasters?: React.MutableRefObject<Map<string, ToastContainerInstance>>;
|
|
36
41
|
}
|
|
37
42
|
export interface CustomProviderProps<T = Locale> extends Partial<CustomValue<T>> {
|
|
38
43
|
/** Supported themes */
|
|
@@ -41,6 +46,8 @@ export interface CustomProviderProps<T = Locale> extends Partial<CustomValue<T>>
|
|
|
41
46
|
classPrefix?: string;
|
|
42
47
|
/** Primary content */
|
|
43
48
|
children?: React.ReactNode;
|
|
49
|
+
/** Sets a container for toast rendering */
|
|
50
|
+
toastContainer?: HTMLElement | (() => HTMLElement | null) | null;
|
|
44
51
|
}
|
|
45
52
|
declare const CustomContext: React.Context<CustomProviderProps<{
|
|
46
53
|
common?: {
|
|
@@ -75,7 +82,7 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
75
82
|
yesterday: string;
|
|
76
83
|
hours: string;
|
|
77
84
|
minutes: string;
|
|
78
|
-
seconds: string;
|
|
85
|
+
seconds: string;
|
|
79
86
|
formattedMonthPattern: string;
|
|
80
87
|
formattedDayPattern: string;
|
|
81
88
|
dateLocale: any;
|
|
@@ -93,7 +100,7 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
93
100
|
yesterday: string;
|
|
94
101
|
hours: string;
|
|
95
102
|
minutes: string;
|
|
96
|
-
seconds: string;
|
|
103
|
+
seconds: string;
|
|
97
104
|
formattedMonthPattern: string;
|
|
98
105
|
formattedDayPattern: string;
|
|
99
106
|
dateLocale: any;
|
|
@@ -112,7 +119,7 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
112
119
|
yesterday: string;
|
|
113
120
|
hours: string;
|
|
114
121
|
minutes: string;
|
|
115
|
-
seconds: string;
|
|
122
|
+
seconds: string;
|
|
116
123
|
formattedMonthPattern: string;
|
|
117
124
|
formattedDayPattern: string;
|
|
118
125
|
dateLocale: any;
|
|
@@ -125,6 +132,9 @@ declare const CustomContext: React.Context<CustomProviderProps<{
|
|
|
125
132
|
} | undefined;
|
|
126
133
|
InputPicker?: {
|
|
127
134
|
newItem: string;
|
|
135
|
+
/**
|
|
136
|
+
* A Map of toast containers
|
|
137
|
+
*/
|
|
128
138
|
createOption: string;
|
|
129
139
|
} | undefined;
|
|
130
140
|
Uploader?: {
|
|
@@ -179,7 +189,7 @@ declare const Consumer: React.Consumer<CustomProviderProps<{
|
|
|
179
189
|
yesterday: string;
|
|
180
190
|
hours: string;
|
|
181
191
|
minutes: string;
|
|
182
|
-
seconds: string;
|
|
192
|
+
seconds: string;
|
|
183
193
|
formattedMonthPattern: string;
|
|
184
194
|
formattedDayPattern: string;
|
|
185
195
|
dateLocale: any;
|
|
@@ -197,7 +207,7 @@ declare const Consumer: React.Consumer<CustomProviderProps<{
|
|
|
197
207
|
yesterday: string;
|
|
198
208
|
hours: string;
|
|
199
209
|
minutes: string;
|
|
200
|
-
seconds: string;
|
|
210
|
+
seconds: string;
|
|
201
211
|
formattedMonthPattern: string;
|
|
202
212
|
formattedDayPattern: string;
|
|
203
213
|
dateLocale: any;
|
|
@@ -216,7 +226,7 @@ declare const Consumer: React.Consumer<CustomProviderProps<{
|
|
|
216
226
|
yesterday: string;
|
|
217
227
|
hours: string;
|
|
218
228
|
minutes: string;
|
|
219
|
-
seconds: string;
|
|
229
|
+
seconds: string;
|
|
220
230
|
formattedMonthPattern: string;
|
|
221
231
|
formattedDayPattern: string;
|
|
222
232
|
dateLocale: any;
|
|
@@ -229,6 +239,9 @@ declare const Consumer: React.Consumer<CustomProviderProps<{
|
|
|
229
239
|
} | undefined;
|
|
230
240
|
InputPicker?: {
|
|
231
241
|
newItem: string;
|
|
242
|
+
/**
|
|
243
|
+
* A Map of toast containers
|
|
244
|
+
*/
|
|
232
245
|
createOption: string;
|
|
233
246
|
} | undefined;
|
|
234
247
|
Uploader?: {
|
|
@@ -250,6 +263,6 @@ declare const Consumer: React.Consumer<CustomProviderProps<{
|
|
|
250
263
|
off: string;
|
|
251
264
|
} | undefined;
|
|
252
265
|
}>>;
|
|
253
|
-
declare const CustomProvider: (props: CustomProviderProps) => JSX.Element;
|
|
266
|
+
declare const CustomProvider: (props: Omit<CustomProviderProps, 'toasters'>) => JSX.Element;
|
|
254
267
|
export { CustomContext, Consumer as CustomConsumer };
|
|
255
268
|
export default CustomProvider;
|
|
@@ -3,6 +3,8 @@ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWith
|
|
|
3
3
|
import React, { useEffect } from 'react';
|
|
4
4
|
import { getClassNamePrefix, prefix } from '../utils/prefix';
|
|
5
5
|
import { addClass, removeClass, canUseDOM } from '../DOMHelper';
|
|
6
|
+
import ToastContainer, { toastPlacements } from '../toaster/ToastContainer';
|
|
7
|
+
import { usePortal } from '../utils';
|
|
6
8
|
var CustomContext = /*#__PURE__*/React.createContext({});
|
|
7
9
|
var Consumer = CustomContext.Consumer,
|
|
8
10
|
Provider = CustomContext.Provider;
|
|
@@ -13,12 +15,21 @@ var CustomProvider = function CustomProvider(props) {
|
|
|
13
15
|
_props$classPrefix = props.classPrefix,
|
|
14
16
|
classPrefix = _props$classPrefix === void 0 ? getClassNamePrefix() : _props$classPrefix,
|
|
15
17
|
theme = props.theme,
|
|
16
|
-
|
|
18
|
+
container = props.toastContainer,
|
|
19
|
+
rest = _objectWithoutPropertiesLoose(props, ["children", "classPrefix", "theme", "toastContainer"]);
|
|
20
|
+
|
|
21
|
+
var toasters = React.useRef(new Map());
|
|
22
|
+
|
|
23
|
+
var _usePortal = usePortal({
|
|
24
|
+
container: container
|
|
25
|
+
}),
|
|
26
|
+
Portal = _usePortal.Portal;
|
|
17
27
|
|
|
18
28
|
var value = React.useMemo(function () {
|
|
19
29
|
return _extends({
|
|
20
30
|
classPrefix: classPrefix,
|
|
21
|
-
theme: theme
|
|
31
|
+
theme: theme,
|
|
32
|
+
toasters: toasters
|
|
22
33
|
}, rest);
|
|
23
34
|
}, [classPrefix, theme, rest]);
|
|
24
35
|
useEffect(function () {
|
|
@@ -34,7 +45,15 @@ var CustomProvider = function CustomProvider(props) {
|
|
|
34
45
|
}, [classPrefix, theme]);
|
|
35
46
|
return /*#__PURE__*/React.createElement(Provider, {
|
|
36
47
|
value: value
|
|
37
|
-
}, children)
|
|
48
|
+
}, children, /*#__PURE__*/React.createElement(Portal, null, toastPlacements.map(function (placement) {
|
|
49
|
+
return /*#__PURE__*/React.createElement(ToastContainer, {
|
|
50
|
+
key: placement,
|
|
51
|
+
placement: placement,
|
|
52
|
+
ref: function ref(_ref) {
|
|
53
|
+
toasters.current.set(placement, _ref);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
})));
|
|
38
57
|
};
|
|
39
58
|
|
|
40
59
|
export { CustomContext, Consumer as CustomConsumer };
|
|
@@ -15,7 +15,7 @@ export interface DisclosureProps {
|
|
|
15
15
|
/** Callback when disclosure button is being activated to update the open state */
|
|
16
16
|
onToggle?: (open: boolean, event: React.SyntheticEvent) => void;
|
|
17
17
|
/** What mouse events should disclosure reacts to */
|
|
18
|
-
trigger?: DisclosureTrigger[];
|
|
18
|
+
trigger?: readonly DisclosureTrigger[];
|
|
19
19
|
}
|
|
20
20
|
export interface DisclosureComponent extends React.FC<DisclosureProps> {
|
|
21
21
|
Button: typeof DisclosureButton;
|
package/esm/Dropdown/Dropdown.js
CHANGED
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
|
|
3
|
-
import React, {
|
|
3
|
+
import React, { useContext, useMemo, useReducer } from 'react';
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import omit from 'lodash/omit';
|
|
6
6
|
import pick from 'lodash/pick';
|
|
7
7
|
import DropdownMenu from './DropdownMenu';
|
|
8
8
|
import { mergeRefs, PLACEMENT_8, placementPolyfill, useClassNames } from '../utils';
|
|
9
|
-
import { SidenavContext } from '../Sidenav/Sidenav';
|
|
10
9
|
import deprecatePropType from '../utils/deprecatePropType';
|
|
11
10
|
import DropdownItem from './DropdownItem';
|
|
12
11
|
import DropdownContext from './DropdownContext';
|
|
13
12
|
import Menu from '../Menu/Menu';
|
|
14
13
|
import DropdownToggle from './DropdownToggle';
|
|
15
|
-
import MenuContext from '../Menu/MenuContext';
|
|
16
|
-
import MenuItem from '../Menu/MenuItem';
|
|
17
14
|
import kebabCase from 'lodash/kebabCase';
|
|
18
|
-
import { NavbarContext } from '../Navbar';
|
|
19
|
-
import Disclosure from '../Disclosure/Disclosure';
|
|
20
|
-
import SidenavDropdown from '../Sidenav/SidenavDropdown';
|
|
21
15
|
import NavContext from '../Nav/NavContext';
|
|
22
16
|
import { initialState, reducer } from './DropdownState';
|
|
17
|
+
import warnOnce from '../utils/warnOnce';
|
|
18
|
+
import Nav from '../Nav';
|
|
23
19
|
|
|
24
20
|
/**
|
|
25
21
|
* The <Dropdown> API
|
|
@@ -28,7 +24,7 @@ import { initialState, reducer } from './DropdownState';
|
|
|
28
24
|
*/
|
|
29
25
|
var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
30
26
|
var activeKey = props.activeKey,
|
|
31
|
-
|
|
27
|
+
onSelect = props.onSelect,
|
|
32
28
|
rest = _objectWithoutPropertiesLoose(props, ["activeKey", "onSelect"]);
|
|
33
29
|
|
|
34
30
|
var _rest$as = rest.as,
|
|
@@ -37,7 +33,6 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
37
33
|
onClose = rest.onClose,
|
|
38
34
|
onOpen = rest.onOpen,
|
|
39
35
|
onToggle = rest.onToggle,
|
|
40
|
-
eventKey = rest.eventKey,
|
|
41
36
|
_rest$trigger = rest.trigger,
|
|
42
37
|
trigger = _rest$trigger === void 0 ? 'click' : _rest$trigger,
|
|
43
38
|
_rest$placement = rest.placement,
|
|
@@ -53,30 +48,18 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
53
48
|
children = rest.children,
|
|
54
49
|
menuStyle = rest.menuStyle,
|
|
55
50
|
style = rest.style,
|
|
56
|
-
toggleProps = _objectWithoutPropertiesLoose(rest, ["as", "title", "onClose", "onOpen", "onToggle", "
|
|
51
|
+
toggleProps = _objectWithoutPropertiesLoose(rest, ["as", "title", "onClose", "onOpen", "onToggle", "trigger", "placement", "toggleAs", "toggleClassName", "open", "defaultOpen", "classPrefix", "className", "disabled", "children", "menuStyle", "style"]);
|
|
57
52
|
|
|
58
|
-
var
|
|
59
|
-
onSelectFromNav = _useContext.onSelect;
|
|
60
|
-
|
|
61
|
-
var emitSelect = useCallback(function (eventKey, event) {
|
|
62
|
-
onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event); // If <Dropdown> is inside <Nav>, also trigger `onSelect` on <Nav>
|
|
63
|
-
|
|
64
|
-
onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);
|
|
65
|
-
}, [onSelectProp, onSelectFromNav]);
|
|
53
|
+
var nav = useContext(NavContext);
|
|
66
54
|
|
|
67
55
|
var _useClassNames = useClassNames(classPrefix),
|
|
68
56
|
merge = _useClassNames.merge,
|
|
69
|
-
withClassPrefix = _useClassNames.withClassPrefix
|
|
70
|
-
prefix = _useClassNames.prefix;
|
|
57
|
+
withClassPrefix = _useClassNames.withClassPrefix;
|
|
71
58
|
|
|
72
59
|
var _useClassNames2 = useClassNames('dropdown-menu'),
|
|
73
60
|
withMenuClassPrefix = _useClassNames2.withClassPrefix,
|
|
74
61
|
mergeMenuClassName = _useClassNames2.merge;
|
|
75
62
|
|
|
76
|
-
var _useClassNames3 = useClassNames('nav-item'),
|
|
77
|
-
withNavItemClassPrefix = _useClassNames3.withClassPrefix,
|
|
78
|
-
mergeNavItemClassNames = _useClassNames3.merge;
|
|
79
|
-
|
|
80
63
|
var menuButtonTriggers = useMemo(function () {
|
|
81
64
|
if (!trigger) {
|
|
82
65
|
return undefined;
|
|
@@ -96,9 +79,6 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
96
79
|
return triggerMap[t];
|
|
97
80
|
});
|
|
98
81
|
}, [trigger]);
|
|
99
|
-
var parentMenu = useContext(MenuContext);
|
|
100
|
-
var sidenav = useContext(SidenavContext);
|
|
101
|
-
var navbar = useContext(NavbarContext);
|
|
102
82
|
|
|
103
83
|
var _useReducer = useReducer(reducer, initialState),
|
|
104
84
|
items = _useReducer[0].items,
|
|
@@ -112,54 +92,18 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
112
92
|
var dropdownContextValue = useMemo(function () {
|
|
113
93
|
return {
|
|
114
94
|
activeKey: activeKey,
|
|
115
|
-
onSelect:
|
|
95
|
+
onSelect: onSelect,
|
|
116
96
|
hasSelectedItem: hasSelectedItem,
|
|
117
97
|
dispatch: dispatch
|
|
118
98
|
};
|
|
119
|
-
}, [activeKey,
|
|
99
|
+
}, [activeKey, onSelect, hasSelectedItem, dispatch]); // Deprecate <Dropdown> within <Nav> usage
|
|
100
|
+
// in favor of <Nav.Menu> API
|
|
120
101
|
|
|
121
|
-
if (
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}, /*#__PURE__*/React.createElement(SidenavDropdown, _extends({
|
|
102
|
+
if (nav) {
|
|
103
|
+
warnOnce('Usage of <Dropdown> within <Nav> is deprecated. Replace with <Nav.Menu>');
|
|
104
|
+
return /*#__PURE__*/React.createElement(Nav.Menu, _extends({
|
|
125
105
|
ref: ref
|
|
126
|
-
},
|
|
127
|
-
} // Renders a disclosure when used inside <Navbar>
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
if (navbar) {
|
|
131
|
-
return /*#__PURE__*/React.createElement(DropdownContext.Provider, {
|
|
132
|
-
value: dropdownContextValue
|
|
133
|
-
}, /*#__PURE__*/React.createElement(Disclosure, {
|
|
134
|
-
hideOnClickOutside: true
|
|
135
|
-
}, function (_ref, containerRef) {
|
|
136
|
-
var _withClassPrefix;
|
|
137
|
-
|
|
138
|
-
var open = _ref.open;
|
|
139
|
-
var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix["placement-" + kebabCase(placementPolyfill(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix)));
|
|
140
|
-
return /*#__PURE__*/React.createElement(Component, {
|
|
141
|
-
ref: mergeRefs(ref, containerRef),
|
|
142
|
-
className: classes,
|
|
143
|
-
style: style
|
|
144
|
-
}, /*#__PURE__*/React.createElement(Disclosure.Button, null, function (buttonProps, buttonRef) {
|
|
145
|
-
return /*#__PURE__*/React.createElement(DropdownToggle, _extends({
|
|
146
|
-
ref: buttonRef,
|
|
147
|
-
as: toggleAs,
|
|
148
|
-
className: toggleClassName,
|
|
149
|
-
placement: placement,
|
|
150
|
-
disabled: disabled
|
|
151
|
-
}, omit(buttonProps, ['open']), toggleProps), title);
|
|
152
|
-
}), /*#__PURE__*/React.createElement(Disclosure.Content, null, function (_ref2, elementRef) {
|
|
153
|
-
var open = _ref2.open;
|
|
154
|
-
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());
|
|
155
|
-
return /*#__PURE__*/React.createElement("ul", {
|
|
156
|
-
ref: elementRef,
|
|
157
|
-
className: menuClassName,
|
|
158
|
-
style: menuStyle,
|
|
159
|
-
hidden: !open
|
|
160
|
-
}, children);
|
|
161
|
-
}));
|
|
162
|
-
}));
|
|
106
|
+
}, props));
|
|
163
107
|
}
|
|
164
108
|
|
|
165
109
|
var renderMenuButton = function renderMenuButton(menuButtonProps, menuButtonRef) {
|
|
@@ -172,25 +116,6 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
172
116
|
}, omit(menuButtonProps, ['open']), omit(toggleProps, ['data-testid'])), title);
|
|
173
117
|
};
|
|
174
118
|
|
|
175
|
-
if (parentMenu) {
|
|
176
|
-
renderMenuButton = function renderMenuButton(menuButtonProps, buttonRef) {
|
|
177
|
-
return /*#__PURE__*/React.createElement(MenuItem, {
|
|
178
|
-
disabled: disabled
|
|
179
|
-
}, function (_ref3, menuitemRef) {
|
|
180
|
-
var active = _ref3.active,
|
|
181
|
-
menuitemProps = _objectWithoutPropertiesLoose(_ref3, ["active"]);
|
|
182
|
-
|
|
183
|
-
return /*#__PURE__*/React.createElement(DropdownToggle, _extends({
|
|
184
|
-
ref: mergeRefs(buttonRef, menuitemRef),
|
|
185
|
-
as: toggleAs,
|
|
186
|
-
className: mergeNavItemClassNames(toggleClassName, withNavItemClassPrefix({
|
|
187
|
-
focus: active
|
|
188
|
-
}))
|
|
189
|
-
}, menuButtonProps, omit(menuitemProps, ['onClick']), omit(toggleProps, 'data-testid')), title);
|
|
190
|
-
});
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
|
|
194
119
|
return /*#__PURE__*/React.createElement(DropdownContext.Provider, {
|
|
195
120
|
value: dropdownContextValue
|
|
196
121
|
}, /*#__PURE__*/React.createElement(Menu, {
|
|
@@ -199,25 +124,20 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
199
124
|
menuButtonText: title,
|
|
200
125
|
renderMenuButton: renderMenuButton,
|
|
201
126
|
openMenuOn: menuButtonTriggers,
|
|
202
|
-
renderMenuPopup: function renderMenuPopup(
|
|
203
|
-
var open =
|
|
204
|
-
popupProps = _objectWithoutPropertiesLoose(
|
|
205
|
-
|
|
206
|
-
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({})); // When inside a collapsed <Sidenav>, render a header in menu
|
|
127
|
+
renderMenuPopup: function renderMenuPopup(_ref, popupRef) {
|
|
128
|
+
var open = _ref.open,
|
|
129
|
+
popupProps = _objectWithoutPropertiesLoose(_ref, ["open"]);
|
|
207
130
|
|
|
208
|
-
var
|
|
131
|
+
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({}));
|
|
209
132
|
return /*#__PURE__*/React.createElement("ul", _extends({
|
|
210
133
|
ref: popupRef,
|
|
211
134
|
className: menuClassName,
|
|
212
135
|
style: menuStyle,
|
|
213
136
|
hidden: !open
|
|
214
|
-
}, popupProps),
|
|
215
|
-
className: prefix('header')
|
|
216
|
-
}, title), children);
|
|
137
|
+
}, popupProps), children);
|
|
217
138
|
},
|
|
218
|
-
onToggleMenu: function onToggleMenu(open
|
|
139
|
+
onToggleMenu: function onToggleMenu(open) {
|
|
219
140
|
onToggle === null || onToggle === void 0 ? void 0 : onToggle(open);
|
|
220
|
-
sidenav === null || sidenav === void 0 ? void 0 : sidenav.onOpenChange(eventKey, event);
|
|
221
141
|
|
|
222
142
|
if (open) {
|
|
223
143
|
onOpen === null || onOpen === void 0 ? void 0 : onOpen();
|
|
@@ -225,13 +145,13 @@ var Dropdown = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
225
145
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
226
146
|
}
|
|
227
147
|
}
|
|
228
|
-
}, function (
|
|
229
|
-
var
|
|
148
|
+
}, function (_ref2, menuContainerRef) {
|
|
149
|
+
var _withClassPrefix;
|
|
230
150
|
|
|
231
|
-
var open =
|
|
232
|
-
menuContainer = _objectWithoutPropertiesLoose(
|
|
151
|
+
var open = _ref2.open,
|
|
152
|
+
menuContainer = _objectWithoutPropertiesLoose(_ref2, ["open"]);
|
|
233
153
|
|
|
234
|
-
var classes = merge(className, withClassPrefix((
|
|
154
|
+
var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix["placement-" + kebabCase(placementPolyfill(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix['selected-within'] = hasSelectedItem, _withClassPrefix)));
|
|
235
155
|
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
236
156
|
ref: mergeRefs(ref, menuContainerRef),
|
|
237
157
|
className: classes
|