rsuite 5.11.0 → 5.13.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +30 -0
- package/Nav/styles/index.less +7 -1
- package/Navbar/styles/index.less +6 -1
- package/Sidenav/styles/index.less +47 -9
- package/cjs/Cascader/DropdownMenu.js +8 -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/Form/Form.js +21 -7
- package/cjs/Form/FormContext.d.ts +18 -13
- package/cjs/Form/useSchemaModel.d.ts +9 -0
- package/cjs/Form/useSchemaModel.js +46 -0
- package/cjs/FormControl/FormControl.d.ts +3 -0
- package/cjs/FormControl/FormControl.js +9 -2
- package/cjs/FormControl/useRegisterModel.d.ts +4 -0
- package/cjs/FormControl/useRegisterModel.js +20 -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/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 +26 -0
- package/cjs/Nav/NavDropdownMenu.js +156 -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/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 +37 -0
- package/cjs/Navbar/NavbarDropdownMenu.js +155 -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/OverlayTrigger.d.ts +4 -4
- package/cjs/Picker/utils.js +22 -15
- 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 +72 -0
- package/cjs/Sidenav/SidenavItem.d.ts +3 -0
- package/cjs/Sidenav/SidenavItem.js +22 -14
- package/cjs/Sidenav/SidenavToggle.d.ts +5 -1
- package/cjs/Sidenav/SidenavToggle.js +25 -9
- package/cjs/Whisper/Whisper.d.ts +3 -5
- package/cjs/Whisper/test/Whisper.test.d.ts +1 -0
- package/cjs/Whisper/test/Whisper.test.js +23 -0
- package/cjs/index.d.ts +1 -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/treeUtils.js +8 -10
- 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 +81 -15
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +81 -15
- package/dist/rsuite.js +303 -28
- 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/Cascader/DropdownMenu.js +8 -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/Form/Form.js +19 -7
- package/esm/Form/FormContext.d.ts +18 -13
- package/esm/Form/useSchemaModel.d.ts +9 -0
- package/esm/Form/useSchemaModel.js +39 -0
- package/esm/FormControl/FormControl.d.ts +3 -0
- package/esm/FormControl/FormControl.js +9 -6
- package/esm/FormControl/useRegisterModel.d.ts +4 -0
- package/esm/FormControl/useRegisterModel.js +14 -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/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 +26 -0
- package/esm/Nav/NavDropdownMenu.js +138 -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/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 +37 -0
- package/esm/Navbar/NavbarDropdownMenu.js +135 -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/OverlayTrigger.d.ts +4 -4
- package/esm/Picker/utils.js +22 -14
- 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 +55 -0
- package/esm/Sidenav/SidenavItem.d.ts +3 -0
- package/esm/Sidenav/SidenavItem.js +23 -15
- package/esm/Sidenav/SidenavToggle.d.ts +5 -1
- package/esm/Sidenav/SidenavToggle.js +22 -9
- package/esm/Whisper/Whisper.d.ts +3 -5
- package/esm/Whisper/test/Whisper.test.d.ts +1 -0
- package/esm/Whisper/test/Whisper.test.js +16 -0
- package/esm/index.d.ts +1 -1
- 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/treeUtils.js +8 -10
- 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 +3 -0
- package/styles/variables.less +3 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,33 @@
|
|
|
1
|
+
## [5.13.1](https://github.com/rsuite/rsuite/compare/v5.13.0...v5.13.1) (2022-05-27)
|
|
2
|
+
|
|
3
|
+
### Bug Fixes
|
|
4
|
+
|
|
5
|
+
- **CheckTreePicker:** fix duplicated key when data changed ([#2486](https://github.com/rsuite/rsuite/issues/2486)) ([#2500](https://github.com/rsuite/rsuite/issues/2500)) ([d155719](https://github.com/rsuite/rsuite/commit/d155719a9ae9d9cec119a0c33281c628379b4a78))
|
|
6
|
+
- **Sidenav:** correct Sidenav.Toggle styles ([#2497](https://github.com/rsuite/rsuite/issues/2497)) ([b3168e4](https://github.com/rsuite/rsuite/commit/b3168e426c3a2caad1689e9e9d3babf1d76022b8))
|
|
7
|
+
- **Sidenav:** correct subtle Sidenav item hover styles ([#2498](https://github.com/rsuite/rsuite/issues/2498)) ([2d853ee](https://github.com/rsuite/rsuite/commit/2d853ee8419a3283683bbf897442b9bc789b5a2a))
|
|
8
|
+
- **Sidenav:** fix Sidenav.Toggle icon direction ([#2495](https://github.com/rsuite/rsuite/issues/2495)) ([c490632](https://github.com/rsuite/rsuite/commit/c490632cc613807ff27124140b4250fc132aa8b2))
|
|
9
|
+
- **Whisper:** correct type declarations for ref ([856877a](https://github.com/rsuite/rsuite/commit/856877aec5a20710b94f6ddf241be76ecd34c88d))
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
- export WhisperInstance ([1c4eb5f](https://github.com/rsuite/rsuite/commit/1c4eb5ffbb6b5e69987436c03cc133f39c245866))
|
|
14
|
+
|
|
15
|
+
# [5.13.0](https://github.com/rsuite/rsuite/compare/v5.12.0...v5.13.0) (2022-05-19)
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
- **listbox:** fix broken keyboard navigation after filtering ([#2491](https://github.com/rsuite/rsuite/issues/2491)) ([329623a](https://github.com/rsuite/rsuite/commit/329623a21e8d551db3e634894ddcbb3658b1579d))
|
|
20
|
+
|
|
21
|
+
### Performance Improvements
|
|
22
|
+
|
|
23
|
+
- **Cascader:** apply tree view pattern ([#2492](https://github.com/rsuite/rsuite/issues/2492)) ([f3a5808](https://github.com/rsuite/rsuite/commit/f3a5808eb60cc4f5250cce908322a702a91a9d96))
|
|
24
|
+
|
|
25
|
+
# [5.12.0](https://github.com/rsuite/rsuite/compare/v5.11.0...v5.12.0) (2022-05-12)
|
|
26
|
+
|
|
27
|
+
### Features
|
|
28
|
+
|
|
29
|
+
- **Form.Control:** add `rule` prop ([#2482](https://github.com/rsuite/rsuite/issues/2482)) ([d1917df](https://github.com/rsuite/rsuite/commit/d1917dfcb9474236f756551fa8908edc85e37197))
|
|
30
|
+
|
|
1
31
|
# [5.11.0](https://github.com/rsuite/rsuite/compare/v5.10.0...v5.11.0) (2022-05-05)
|
|
2
32
|
|
|
3
33
|
### Bug Fixes
|
package/Nav/styles/index.less
CHANGED
package/Navbar/styles/index.less
CHANGED
|
@@ -12,6 +12,8 @@
|
|
|
12
12
|
.rs-sidenav {
|
|
13
13
|
transition: width @sidenav-collapse-transition-config;
|
|
14
14
|
width: @sidenav-default-width;
|
|
15
|
+
display: flex;
|
|
16
|
+
flex-direction: column;
|
|
15
17
|
}
|
|
16
18
|
|
|
17
19
|
.rs-sidenav-nav {
|
|
@@ -68,11 +70,12 @@
|
|
|
68
70
|
|
|
69
71
|
// Submenu toggle icon
|
|
70
72
|
&-icon {
|
|
73
|
+
font-size: @sidenav-item-caret-size;
|
|
71
74
|
position: absolute;
|
|
72
75
|
right: @sidenav-padding-horizontal;
|
|
73
76
|
top: @sidenav-children-padding-vertical;
|
|
74
|
-
width: auto;
|
|
75
|
-
height: @sidenav-dropdown-toggle-caret-width;
|
|
77
|
+
// width: auto;
|
|
78
|
+
// height: @sidenav-dropdown-toggle-caret-width;
|
|
76
79
|
transform: rotate(90deg);
|
|
77
80
|
}
|
|
78
81
|
}
|
|
@@ -115,6 +118,7 @@
|
|
|
115
118
|
padding-right: (@sidenav-padding-horizontal + @sidenav-dropdown-toggle-caret-width);
|
|
116
119
|
|
|
117
120
|
.rs-dropdown-toggle-caret {
|
|
121
|
+
font-size: @sidenav-item-caret-size;
|
|
118
122
|
right: @sidenav-padding-horizontal;
|
|
119
123
|
top: @sidenav-padding-vertical;
|
|
120
124
|
|
|
@@ -183,6 +187,22 @@
|
|
|
183
187
|
}
|
|
184
188
|
}
|
|
185
189
|
|
|
190
|
+
// TODO Consider rename as sidenav-footer
|
|
191
|
+
.rs-sidenav-toggle {
|
|
192
|
+
height: @sidenav-footer-height;
|
|
193
|
+
border-top: 1px solid;
|
|
194
|
+
margin-top: auto;
|
|
195
|
+
|
|
196
|
+
&-button {
|
|
197
|
+
float: right;
|
|
198
|
+
width: @sidenav-compact-width;
|
|
199
|
+
height: 100%;
|
|
200
|
+
border: none;
|
|
201
|
+
border-radius: 0;
|
|
202
|
+
color: inherit;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
|
|
186
206
|
// Expanded styles
|
|
187
207
|
.rs-sidenav-collapse-in {
|
|
188
208
|
width: @sidenav-collapse-in-width;
|
|
@@ -412,12 +432,14 @@
|
|
|
412
432
|
color: var(--rs-sidenav-default-text);
|
|
413
433
|
|
|
414
434
|
.rs-sidenav-item,
|
|
415
|
-
.rs-dropdown-toggle
|
|
435
|
+
.rs-dropdown-toggle,
|
|
436
|
+
.rs-sidenav-toggle-button {
|
|
416
437
|
background-color: var(--rs-sidenav-default-bg);
|
|
417
438
|
}
|
|
418
439
|
|
|
419
440
|
.rs-sidenav-item:hover,
|
|
420
441
|
.rs-dropdown .rs-dropdown-toggle:hover,
|
|
442
|
+
.rs-sidenav-toggle-button:hover,
|
|
421
443
|
.rs-dropdown.rs-dropdown-open .rs-dropdown-toggle {
|
|
422
444
|
background-color: var(--rs-sidenav-default-hover-bg);
|
|
423
445
|
color: var(--rs-sidenav-default-hover-text);
|
|
@@ -425,10 +447,14 @@
|
|
|
425
447
|
|
|
426
448
|
.rs-sidenav-item.rs-sidenav-item-active,
|
|
427
449
|
.rs-dropdown-item.rs-dropdown-item-active,
|
|
428
|
-
.rs-dropdown.rs-dropdown-selected-within .rs-
|
|
450
|
+
.rs-dropdown.rs-dropdown-selected-within .rs-sidenav-item-icon {
|
|
429
451
|
color: var(--rs-sidenav-default-selected-text);
|
|
430
452
|
}
|
|
431
453
|
|
|
454
|
+
.rs-sidenav-toggle {
|
|
455
|
+
border-top-color: var(--rs-sidenav-default-footer-border);
|
|
456
|
+
}
|
|
457
|
+
|
|
432
458
|
// Collapsed
|
|
433
459
|
&.rs-sidenav-collapse-out {
|
|
434
460
|
.rs-dropdown-item.rs-dropdown-item-active {
|
|
@@ -466,7 +492,7 @@
|
|
|
466
492
|
.rs-sidenav-default.rs-sidenav-collapsing,
|
|
467
493
|
.rs-sidenav-default.rs-sidenav-collapse-out {
|
|
468
494
|
// Set active Level1 style
|
|
469
|
-
.rs-dropdown.rs-dropdown-selected-within .rs-
|
|
495
|
+
.rs-dropdown.rs-dropdown-selected-within .rs-sidenav-item-icon {
|
|
470
496
|
color: var(--rs-sidenav-default-selected-text);
|
|
471
497
|
}
|
|
472
498
|
}
|
|
@@ -478,6 +504,7 @@
|
|
|
478
504
|
|
|
479
505
|
.rs-sidenav-item,
|
|
480
506
|
.rs-dropdown .rs-dropdown-toggle,
|
|
507
|
+
.rs-sidenav-toggle-button,
|
|
481
508
|
.rs-dropdown-item-submenu:hover > .rs-dropdown-item-toggle {
|
|
482
509
|
background-color: var(--rs-sidenav-inverse-bg);
|
|
483
510
|
|
|
@@ -489,7 +516,8 @@
|
|
|
489
516
|
|
|
490
517
|
.rs-dropdown-item,
|
|
491
518
|
.rs-dropdown-item > .rs-dropdown-menu-toggle,
|
|
492
|
-
.rs-dropdown-item > .rs-dropdown-item-toggle
|
|
519
|
+
.rs-dropdown-item > .rs-dropdown-item-toggle,
|
|
520
|
+
.rs-sidenav-toggle-button {
|
|
493
521
|
color: var(--rs-sidenav-inverse-text);
|
|
494
522
|
|
|
495
523
|
&:hover,
|
|
@@ -525,6 +553,10 @@
|
|
|
525
553
|
.rs-dropdown-item.rs-dropdown-item-active {
|
|
526
554
|
background-color: var(--rs-sidenav-inverse-selected-bg);
|
|
527
555
|
}
|
|
556
|
+
|
|
557
|
+
.rs-sidenav-toggle {
|
|
558
|
+
border-top-color: var(--rs-sidenav-inverse-footer-border);
|
|
559
|
+
}
|
|
528
560
|
}
|
|
529
561
|
|
|
530
562
|
// Subtle Sidenav
|
|
@@ -533,12 +565,14 @@
|
|
|
533
565
|
color: var(--rs-sidenav-subtle-text);
|
|
534
566
|
|
|
535
567
|
.rs-sidenav-item,
|
|
536
|
-
.rs-dropdown .rs-dropdown-toggle
|
|
568
|
+
.rs-dropdown .rs-dropdown-toggle,
|
|
569
|
+
.rs-dropdown .rs-dropdown-item:not(.rs-dropdown-item-submenu),
|
|
570
|
+
.rs-sidenav-toggle-button {
|
|
537
571
|
background-color: transparent;
|
|
538
572
|
|
|
539
573
|
&:hover,
|
|
540
574
|
&:focus {
|
|
541
|
-
background-color:
|
|
575
|
+
background-color: var(--rs-sidenav-subtle-hover-bg);
|
|
542
576
|
color: var(--rs-sidenav-subtle-hover-text);
|
|
543
577
|
}
|
|
544
578
|
}
|
|
@@ -546,7 +580,7 @@
|
|
|
546
580
|
// Active
|
|
547
581
|
.rs-sidenav-item.rs-sidenav-item-active,
|
|
548
582
|
.rs-dropdown-item.rs-dropdown-item-active,
|
|
549
|
-
.rs-dropdown.rs-dropdown-selected-within .rs-
|
|
583
|
+
.rs-dropdown.rs-dropdown-selected-within .rs-sidenav-item-icon {
|
|
550
584
|
color: var(--rs-sidenav-subtle-selected-text);
|
|
551
585
|
}
|
|
552
586
|
|
|
@@ -558,6 +592,10 @@
|
|
|
558
592
|
background-color: var(--rs-sidenav-subtle-hover-bg);
|
|
559
593
|
}
|
|
560
594
|
}
|
|
595
|
+
|
|
596
|
+
.rs-sidenav-toggle {
|
|
597
|
+
border-top-color: var(--rs-sidenav-subtle-footer-border);
|
|
598
|
+
}
|
|
561
599
|
}
|
|
562
600
|
|
|
563
601
|
.rs-sidenav-subtle.rs-sidenav-collapse-in,
|
|
@@ -123,11 +123,13 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
123
123
|
return /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenuItem, {
|
|
124
124
|
classPrefix: "picker-cascader-menu-item",
|
|
125
125
|
as: 'li',
|
|
126
|
+
role: "treeitem",
|
|
126
127
|
key: layer + "-" + onlyKey,
|
|
127
128
|
disabled: disabled,
|
|
128
129
|
active: !(0, _isUndefined.default)(activeItemValue) && (0, _utils.shallowEqual)(activeItemValue, value),
|
|
129
130
|
focus: focus,
|
|
130
131
|
value: value,
|
|
132
|
+
"aria-owns": node.children ? 'treeitem-' + value + '-children' : undefined,
|
|
131
133
|
className: children ? prefix('has-children') : undefined,
|
|
132
134
|
onSelect: function onSelect(_value, event) {
|
|
133
135
|
return handleSelect(layer, node, event);
|
|
@@ -143,14 +145,15 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
143
145
|
};
|
|
144
146
|
var cascadeNodes = cascadeData.map(function (children, layer) {
|
|
145
147
|
var onlyKey = layer + "_" + children.length;
|
|
148
|
+
var parentNode = cascadePaths[layer - 1];
|
|
146
149
|
|
|
147
150
|
var menu = /*#__PURE__*/_react.default.createElement("ul", {
|
|
148
|
-
role:
|
|
151
|
+
role: layer === 0 ? 'none presentation' : 'group',
|
|
152
|
+
id: parentNode ? 'treeitem-' + parentNode[valueKey] + '-children' : undefined
|
|
149
153
|
}, children.map(function (item, index) {
|
|
150
154
|
return renderCascadeNode(item, index, layer, cascadePaths[layer] && (0, _utils.shallowEqual)(cascadePaths[layer][valueKey], item[valueKey]));
|
|
151
155
|
}));
|
|
152
156
|
|
|
153
|
-
var parentNode = cascadePaths[layer - 1];
|
|
154
157
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
155
158
|
key: onlyKey,
|
|
156
159
|
className: prefix('column'),
|
|
@@ -162,7 +165,9 @@ var DropdownMenu = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
162
165
|
}
|
|
163
166
|
}, renderMenu ? renderMenu(children, menu, parentNode, layer) : menu);
|
|
164
167
|
});
|
|
165
|
-
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
168
|
+
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
169
|
+
role: "tree"
|
|
170
|
+
}, rest, {
|
|
166
171
|
ref: (0, _utils.mergeRefs)(rootRef, ref),
|
|
167
172
|
className: classes
|
|
168
173
|
}), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -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/cjs/Dropdown/Dropdown.js
CHANGED
|
@@ -23,8 +23,6 @@ var _DropdownMenu = _interopRequireDefault(require("./DropdownMenu"));
|
|
|
23
23
|
|
|
24
24
|
var _utils = require("../utils");
|
|
25
25
|
|
|
26
|
-
var _Sidenav = require("../Sidenav/Sidenav");
|
|
27
|
-
|
|
28
26
|
var _deprecatePropType = _interopRequireDefault(require("../utils/deprecatePropType"));
|
|
29
27
|
|
|
30
28
|
var _DropdownItem = _interopRequireDefault(require("./DropdownItem"));
|
|
@@ -35,22 +33,16 @@ var _Menu = _interopRequireDefault(require("../Menu/Menu"));
|
|
|
35
33
|
|
|
36
34
|
var _DropdownToggle = _interopRequireDefault(require("./DropdownToggle"));
|
|
37
35
|
|
|
38
|
-
var _MenuContext = _interopRequireDefault(require("../Menu/MenuContext"));
|
|
39
|
-
|
|
40
|
-
var _MenuItem = _interopRequireDefault(require("../Menu/MenuItem"));
|
|
41
|
-
|
|
42
36
|
var _kebabCase = _interopRequireDefault(require("lodash/kebabCase"));
|
|
43
37
|
|
|
44
|
-
var _Navbar = require("../Navbar");
|
|
45
|
-
|
|
46
|
-
var _Disclosure = _interopRequireDefault(require("../Disclosure/Disclosure"));
|
|
47
|
-
|
|
48
|
-
var _SidenavDropdown = _interopRequireDefault(require("../Sidenav/SidenavDropdown"));
|
|
49
|
-
|
|
50
38
|
var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
|
|
51
39
|
|
|
52
40
|
var _DropdownState = require("./DropdownState");
|
|
53
41
|
|
|
42
|
+
var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
|
|
43
|
+
|
|
44
|
+
var _Nav = _interopRequireDefault(require("../Nav"));
|
|
45
|
+
|
|
54
46
|
/**
|
|
55
47
|
* The <Dropdown> API
|
|
56
48
|
* When used inside <Sidenav>, renders a <TreeviewRootItem>;
|
|
@@ -58,7 +50,7 @@ var _DropdownState = require("./DropdownState");
|
|
|
58
50
|
*/
|
|
59
51
|
var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
60
52
|
var activeKey = props.activeKey,
|
|
61
|
-
|
|
53
|
+
onSelect = props.onSelect,
|
|
62
54
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["activeKey", "onSelect"]);
|
|
63
55
|
var _rest$as = rest.as,
|
|
64
56
|
Component = _rest$as === void 0 ? 'div' : _rest$as,
|
|
@@ -66,7 +58,6 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
66
58
|
onClose = rest.onClose,
|
|
67
59
|
onOpen = rest.onOpen,
|
|
68
60
|
onToggle = rest.onToggle,
|
|
69
|
-
eventKey = rest.eventKey,
|
|
70
61
|
_rest$trigger = rest.trigger,
|
|
71
62
|
trigger = _rest$trigger === void 0 ? 'click' : _rest$trigger,
|
|
72
63
|
_rest$placement = rest.placement,
|
|
@@ -82,30 +73,17 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
82
73
|
children = rest.children,
|
|
83
74
|
menuStyle = rest.menuStyle,
|
|
84
75
|
style = rest.style,
|
|
85
|
-
toggleProps = (0, _objectWithoutPropertiesLoose2.default)(rest, ["as", "title", "onClose", "onOpen", "onToggle", "
|
|
86
|
-
|
|
87
|
-
var _useContext = (0, _react.useContext)(_NavContext.default),
|
|
88
|
-
onSelectFromNav = _useContext.onSelect;
|
|
89
|
-
|
|
90
|
-
var emitSelect = (0, _react.useCallback)(function (eventKey, event) {
|
|
91
|
-
onSelectProp === null || onSelectProp === void 0 ? void 0 : onSelectProp(eventKey, event); // If <Dropdown> is inside <Nav>, also trigger `onSelect` on <Nav>
|
|
92
|
-
|
|
93
|
-
onSelectFromNav === null || onSelectFromNav === void 0 ? void 0 : onSelectFromNav(eventKey, event);
|
|
94
|
-
}, [onSelectProp, onSelectFromNav]);
|
|
76
|
+
toggleProps = (0, _objectWithoutPropertiesLoose2.default)(rest, ["as", "title", "onClose", "onOpen", "onToggle", "trigger", "placement", "toggleAs", "toggleClassName", "open", "defaultOpen", "classPrefix", "className", "disabled", "children", "menuStyle", "style"]);
|
|
77
|
+
var nav = (0, _react.useContext)(_NavContext.default);
|
|
95
78
|
|
|
96
79
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
97
80
|
merge = _useClassNames.merge,
|
|
98
|
-
withClassPrefix = _useClassNames.withClassPrefix
|
|
99
|
-
prefix = _useClassNames.prefix;
|
|
81
|
+
withClassPrefix = _useClassNames.withClassPrefix;
|
|
100
82
|
|
|
101
83
|
var _useClassNames2 = (0, _utils.useClassNames)('dropdown-menu'),
|
|
102
84
|
withMenuClassPrefix = _useClassNames2.withClassPrefix,
|
|
103
85
|
mergeMenuClassName = _useClassNames2.merge;
|
|
104
86
|
|
|
105
|
-
var _useClassNames3 = (0, _utils.useClassNames)('nav-item'),
|
|
106
|
-
withNavItemClassPrefix = _useClassNames3.withClassPrefix,
|
|
107
|
-
mergeNavItemClassNames = _useClassNames3.merge;
|
|
108
|
-
|
|
109
87
|
var menuButtonTriggers = (0, _react.useMemo)(function () {
|
|
110
88
|
if (!trigger) {
|
|
111
89
|
return undefined;
|
|
@@ -125,9 +103,6 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
125
103
|
return triggerMap[t];
|
|
126
104
|
});
|
|
127
105
|
}, [trigger]);
|
|
128
|
-
var parentMenu = (0, _react.useContext)(_MenuContext.default);
|
|
129
|
-
var sidenav = (0, _react.useContext)(_Sidenav.SidenavContext);
|
|
130
|
-
var navbar = (0, _react.useContext)(_Navbar.NavbarContext);
|
|
131
106
|
|
|
132
107
|
var _useReducer = (0, _react.useReducer)(_DropdownState.reducer, _DropdownState.initialState),
|
|
133
108
|
items = _useReducer[0].items,
|
|
@@ -141,54 +116,18 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
141
116
|
var dropdownContextValue = (0, _react.useMemo)(function () {
|
|
142
117
|
return {
|
|
143
118
|
activeKey: activeKey,
|
|
144
|
-
onSelect:
|
|
119
|
+
onSelect: onSelect,
|
|
145
120
|
hasSelectedItem: hasSelectedItem,
|
|
146
121
|
dispatch: dispatch
|
|
147
122
|
};
|
|
148
|
-
}, [activeKey,
|
|
123
|
+
}, [activeKey, onSelect, hasSelectedItem, dispatch]); // Deprecate <Dropdown> within <Nav> usage
|
|
124
|
+
// in favor of <Nav.Menu> API
|
|
149
125
|
|
|
150
|
-
if (
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
}, /*#__PURE__*/_react.default.createElement(_SidenavDropdown.default, (0, _extends2.default)({
|
|
126
|
+
if (nav) {
|
|
127
|
+
(0, _warnOnce.default)('Usage of <Dropdown> within <Nav> is deprecated. Replace with <Nav.Menu>');
|
|
128
|
+
return /*#__PURE__*/_react.default.createElement(_Nav.default.Menu, (0, _extends2.default)({
|
|
154
129
|
ref: ref
|
|
155
|
-
},
|
|
156
|
-
} // Renders a disclosure when used inside <Navbar>
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
if (navbar) {
|
|
160
|
-
return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {
|
|
161
|
-
value: dropdownContextValue
|
|
162
|
-
}, /*#__PURE__*/_react.default.createElement(_Disclosure.default, {
|
|
163
|
-
hideOnClickOutside: true
|
|
164
|
-
}, function (_ref, containerRef) {
|
|
165
|
-
var _withClassPrefix;
|
|
166
|
-
|
|
167
|
-
var open = _ref.open;
|
|
168
|
-
var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix["placement-" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix)));
|
|
169
|
-
return /*#__PURE__*/_react.default.createElement(Component, {
|
|
170
|
-
ref: (0, _utils.mergeRefs)(ref, containerRef),
|
|
171
|
-
className: classes,
|
|
172
|
-
style: style
|
|
173
|
-
}, /*#__PURE__*/_react.default.createElement(_Disclosure.default.Button, null, function (buttonProps, buttonRef) {
|
|
174
|
-
return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({
|
|
175
|
-
ref: buttonRef,
|
|
176
|
-
as: toggleAs,
|
|
177
|
-
className: toggleClassName,
|
|
178
|
-
placement: placement,
|
|
179
|
-
disabled: disabled
|
|
180
|
-
}, (0, _omit.default)(buttonProps, ['open']), toggleProps), title);
|
|
181
|
-
}), /*#__PURE__*/_react.default.createElement(_Disclosure.default.Content, null, function (_ref2, elementRef) {
|
|
182
|
-
var open = _ref2.open;
|
|
183
|
-
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix());
|
|
184
|
-
return /*#__PURE__*/_react.default.createElement("ul", {
|
|
185
|
-
ref: elementRef,
|
|
186
|
-
className: menuClassName,
|
|
187
|
-
style: menuStyle,
|
|
188
|
-
hidden: !open
|
|
189
|
-
}, children);
|
|
190
|
-
}));
|
|
191
|
-
}));
|
|
130
|
+
}, props));
|
|
192
131
|
}
|
|
193
132
|
|
|
194
133
|
var renderMenuButton = function renderMenuButton(menuButtonProps, menuButtonRef) {
|
|
@@ -201,24 +140,6 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
201
140
|
}, (0, _omit.default)(menuButtonProps, ['open']), (0, _omit.default)(toggleProps, ['data-testid'])), title);
|
|
202
141
|
};
|
|
203
142
|
|
|
204
|
-
if (parentMenu) {
|
|
205
|
-
renderMenuButton = function renderMenuButton(menuButtonProps, buttonRef) {
|
|
206
|
-
return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
|
|
207
|
-
disabled: disabled
|
|
208
|
-
}, function (_ref3, menuitemRef) {
|
|
209
|
-
var active = _ref3.active,
|
|
210
|
-
menuitemProps = (0, _objectWithoutPropertiesLoose2.default)(_ref3, ["active"]);
|
|
211
|
-
return /*#__PURE__*/_react.default.createElement(_DropdownToggle.default, (0, _extends2.default)({
|
|
212
|
-
ref: (0, _utils.mergeRefs)(buttonRef, menuitemRef),
|
|
213
|
-
as: toggleAs,
|
|
214
|
-
className: mergeNavItemClassNames(toggleClassName, withNavItemClassPrefix({
|
|
215
|
-
focus: active
|
|
216
|
-
}))
|
|
217
|
-
}, menuButtonProps, (0, _omit.default)(menuitemProps, ['onClick']), (0, _omit.default)(toggleProps, 'data-testid')), title);
|
|
218
|
-
});
|
|
219
|
-
};
|
|
220
|
-
}
|
|
221
|
-
|
|
222
143
|
return /*#__PURE__*/_react.default.createElement(_DropdownContext.default.Provider, {
|
|
223
144
|
value: dropdownContextValue
|
|
224
145
|
}, /*#__PURE__*/_react.default.createElement(_Menu.default, {
|
|
@@ -227,24 +148,19 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
227
148
|
menuButtonText: title,
|
|
228
149
|
renderMenuButton: renderMenuButton,
|
|
229
150
|
openMenuOn: menuButtonTriggers,
|
|
230
|
-
renderMenuPopup: function renderMenuPopup(
|
|
231
|
-
var open =
|
|
232
|
-
popupProps = (0, _objectWithoutPropertiesLoose2.default)(
|
|
233
|
-
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({}));
|
|
234
|
-
|
|
235
|
-
var showHeader = !!sidenav;
|
|
151
|
+
renderMenuPopup: function renderMenuPopup(_ref, popupRef) {
|
|
152
|
+
var open = _ref.open,
|
|
153
|
+
popupProps = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["open"]);
|
|
154
|
+
var menuClassName = mergeMenuClassName(className, withMenuClassPrefix({}));
|
|
236
155
|
return /*#__PURE__*/_react.default.createElement("ul", (0, _extends2.default)({
|
|
237
156
|
ref: popupRef,
|
|
238
157
|
className: menuClassName,
|
|
239
158
|
style: menuStyle,
|
|
240
159
|
hidden: !open
|
|
241
|
-
}, popupProps),
|
|
242
|
-
className: prefix('header')
|
|
243
|
-
}, title), children);
|
|
160
|
+
}, popupProps), children);
|
|
244
161
|
},
|
|
245
|
-
onToggleMenu: function onToggleMenu(open
|
|
162
|
+
onToggleMenu: function onToggleMenu(open) {
|
|
246
163
|
onToggle === null || onToggle === void 0 ? void 0 : onToggle(open);
|
|
247
|
-
sidenav === null || sidenav === void 0 ? void 0 : sidenav.onOpenChange(eventKey, event);
|
|
248
164
|
|
|
249
165
|
if (open) {
|
|
250
166
|
onOpen === null || onOpen === void 0 ? void 0 : onOpen();
|
|
@@ -252,12 +168,12 @@ var Dropdown = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
252
168
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
253
169
|
}
|
|
254
170
|
}
|
|
255
|
-
}, function (
|
|
256
|
-
var
|
|
171
|
+
}, function (_ref2, menuContainerRef) {
|
|
172
|
+
var _withClassPrefix;
|
|
257
173
|
|
|
258
|
-
var open =
|
|
259
|
-
menuContainer = (0, _objectWithoutPropertiesLoose2.default)(
|
|
260
|
-
var classes = merge(className, withClassPrefix((
|
|
174
|
+
var open = _ref2.open,
|
|
175
|
+
menuContainer = (0, _objectWithoutPropertiesLoose2.default)(_ref2, ["open"]);
|
|
176
|
+
var classes = merge(className, withClassPrefix((_withClassPrefix = {}, _withClassPrefix["placement-" + (0, _kebabCase.default)((0, _utils.placementPolyfill)(placement))] = !!placement, _withClassPrefix.disabled = disabled, _withClassPrefix.open = open, _withClassPrefix['selected-within'] = hasSelectedItem, _withClassPrefix)));
|
|
261
177
|
return /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({
|
|
262
178
|
ref: (0, _utils.mergeRefs)(ref, menuContainerRef),
|
|
263
179
|
className: classes
|
|
@@ -15,8 +15,6 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
15
15
|
|
|
16
16
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
17
|
|
|
18
|
-
var _Sidenav = require("../Sidenav/Sidenav");
|
|
19
|
-
|
|
20
18
|
var _deprecatePropType = _interopRequireDefault(require("../utils/deprecatePropType"));
|
|
21
19
|
|
|
22
20
|
var _MenuItem = _interopRequireDefault(require("../Menu/MenuItem"));
|
|
@@ -27,12 +25,6 @@ var _isNil = _interopRequireDefault(require("lodash/isNil"));
|
|
|
27
25
|
|
|
28
26
|
var _utils = require("../utils");
|
|
29
27
|
|
|
30
|
-
var _Navbar = require("../Navbar/Navbar");
|
|
31
|
-
|
|
32
|
-
var _SidenavDropdownItem = _interopRequireDefault(require("../Sidenav/SidenavDropdownItem"));
|
|
33
|
-
|
|
34
|
-
var _DisclosureContext = _interopRequireWildcard(require("../Disclosure/DisclosureContext"));
|
|
35
|
-
|
|
36
28
|
var _NavContext = _interopRequireDefault(require("../Nav/NavContext"));
|
|
37
29
|
|
|
38
30
|
var _useInternalId = _interopRequireDefault(require("../utils/useInternalId"));
|
|
@@ -41,6 +33,10 @@ var _DropdownState = require("./DropdownState");
|
|
|
41
33
|
|
|
42
34
|
var _useRenderDropdownItem = require("./useRenderDropdownItem");
|
|
43
35
|
|
|
36
|
+
var _warnOnce = _interopRequireDefault(require("../utils/warnOnce"));
|
|
37
|
+
|
|
38
|
+
var _Nav = _interopRequireDefault(require("../Nav"));
|
|
39
|
+
|
|
44
40
|
/**
|
|
45
41
|
* The <Dropdown.Item> API
|
|
46
42
|
* When used inside <Sidenav>, renders a <TreeviewItem>
|
|
@@ -76,21 +72,7 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
76
72
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventKey, event);
|
|
77
73
|
dropdown === null || dropdown === void 0 ? void 0 : (_dropdown$onSelect = dropdown.onSelect) === null || _dropdown$onSelect === void 0 ? void 0 : _dropdown$onSelect.call(dropdown, eventKey, event);
|
|
78
74
|
}, [onSelect, eventKey, dropdown]);
|
|
79
|
-
var
|
|
80
|
-
var navbar = (0, _react.useContext)(_Navbar.NavbarContext);
|
|
81
|
-
var disclosure = (0, _react.useContext)(_DisclosureContext.default);
|
|
82
|
-
|
|
83
|
-
var _ref = disclosure !== null && disclosure !== void 0 ? disclosure : [],
|
|
84
|
-
dispatchDisclosure = _ref[1];
|
|
85
|
-
|
|
86
|
-
var handleClickNavbarDropdownItem = (0, _react.useCallback)(function (event) {
|
|
87
|
-
dispatchDisclosure === null || dispatchDisclosure === void 0 ? void 0 : dispatchDisclosure({
|
|
88
|
-
type: _DisclosureContext.DisclosureActionTypes.Hide,
|
|
89
|
-
cascade: true
|
|
90
|
-
});
|
|
91
|
-
handleSelectItem === null || handleSelectItem === void 0 ? void 0 : handleSelectItem(event);
|
|
92
|
-
}, [dispatchDisclosure, handleSelectItem]);
|
|
93
|
-
var selected = activeProp || !(0, _isNil.default)(eventKey) && ((0, _utils.shallowEqual)(dropdown === null || dropdown === void 0 ? void 0 : dropdown.activeKey, eventKey) || (0, _utils.shallowEqual)(nav === null || nav === void 0 ? void 0 : nav.activeKey, eventKey));
|
|
75
|
+
var selected = activeProp || !(0, _isNil.default)(eventKey) && (0, _utils.shallowEqual)(dropdown === null || dropdown === void 0 ? void 0 : dropdown.activeKey, eventKey);
|
|
94
76
|
var dispatch = dropdown === null || dropdown === void 0 ? void 0 : dropdown.dispatch;
|
|
95
77
|
(0, _react.useEffect)(function () {
|
|
96
78
|
if (dispatch) {
|
|
@@ -113,10 +95,12 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
113
95
|
};
|
|
114
96
|
}
|
|
115
97
|
}, [internalId, selected, dispatch]);
|
|
116
|
-
var renderDropdownItem = (0, _useRenderDropdownItem.useRenderDropdownItem)(Component);
|
|
98
|
+
var renderDropdownItem = (0, _useRenderDropdownItem.useRenderDropdownItem)(Component); // If using <Dropdown.Item> within <Nav>
|
|
99
|
+
// Suggest <Nav.Item>
|
|
117
100
|
|
|
118
|
-
if (
|
|
119
|
-
|
|
101
|
+
if (nav) {
|
|
102
|
+
(0, _warnOnce.default)('Usage of <Dropdown.Item> within <Nav> is deprecated. Replace with <Nav.Item> within <Nav.Menu>.');
|
|
103
|
+
return /*#__PURE__*/_react.default.createElement(_Nav.default.Item, (0, _extends2.default)({
|
|
120
104
|
ref: ref
|
|
121
105
|
}, props));
|
|
122
106
|
}
|
|
@@ -137,42 +121,14 @@ var DropdownItem = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
137
121
|
}, restProps));
|
|
138
122
|
}
|
|
139
123
|
|
|
140
|
-
if (navbar) {
|
|
141
|
-
var classes = merge(className, withClassPrefix({
|
|
142
|
-
'with-icon': icon,
|
|
143
|
-
disabled: disabled,
|
|
144
|
-
divider: divider,
|
|
145
|
-
panel: panel,
|
|
146
|
-
active: selected
|
|
147
|
-
}));
|
|
148
|
-
var dataAttributes = {
|
|
149
|
-
'data-event-key': eventKey
|
|
150
|
-
};
|
|
151
|
-
|
|
152
|
-
if (!(0, _isNil.default)(eventKey) && typeof eventKey !== 'string') {
|
|
153
|
-
dataAttributes['data-event-key-type'] = typeof eventKey;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
return renderDropdownItem((0, _extends2.default)({
|
|
157
|
-
ref: ref,
|
|
158
|
-
className: classes,
|
|
159
|
-
'aria-current': selected || undefined
|
|
160
|
-
}, dataAttributes, restProps, {
|
|
161
|
-
onClick: (0, _utils.createChainedFunction)(handleClickNavbarDropdownItem, restProps.onClick),
|
|
162
|
-
children: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, icon && /*#__PURE__*/_react.default.cloneElement(icon, {
|
|
163
|
-
className: prefix('menu-icon')
|
|
164
|
-
}), children)
|
|
165
|
-
}));
|
|
166
|
-
}
|
|
167
|
-
|
|
168
124
|
return /*#__PURE__*/_react.default.createElement(_MenuItem.default, {
|
|
169
125
|
selected: selected,
|
|
170
126
|
disabled: disabled,
|
|
171
127
|
onActivate: handleSelectItem
|
|
172
|
-
}, function (
|
|
173
|
-
var selected =
|
|
174
|
-
active =
|
|
175
|
-
menuitem = (0, _objectWithoutPropertiesLoose2.default)(
|
|
128
|
+
}, function (_ref, menuitemRef) {
|
|
129
|
+
var selected = _ref.selected,
|
|
130
|
+
active = _ref.active,
|
|
131
|
+
menuitem = (0, _objectWithoutPropertiesLoose2.default)(_ref, ["selected", "active"]);
|
|
176
132
|
var classes = merge(className, withClassPrefix({
|
|
177
133
|
'with-icon': icon,
|
|
178
134
|
active: selected,
|