@semcore/dropdown-menu 4.43.0-prerelease.0 → 4.43.2-prerelease.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 CHANGED
@@ -2,6 +2,18 @@
2
2
 
3
3
  CHANGELOG.md standards are inspired by [keepachangelog.com](https://keepachangelog.com/en/1.0.0/).
4
4
 
5
+ ## [4.43.2] - 2024-11-06
6
+
7
+ ### Fixed
8
+
9
+ - Unexpected focus on actions in DropdownMenu.Item.
10
+
11
+ ## [4.43.1] - 2024-11-05
12
+
13
+ ### Added
14
+
15
+ - `DropdownPopperAriaProps` type for DropdownMenu.Popper props.
16
+
5
17
  ## [4.43.0] - 2024-11-01
6
18
 
7
19
  ### Changed
@@ -0,0 +1,162 @@
1
+ import React from 'react';
2
+ import type { Meta, StoryObj } from '@storybook/react';
3
+
4
+ import DropdownMenu from '../src';
5
+ import { Flex } from '../../flex-box/src';
6
+ import TrashM from '@semcore/icon/Trash/m';
7
+ import PlusM from '@semcore/icon/MathPlus/m';
8
+ import Button from '../../button/src';
9
+ import ChevronRightIcon from '@semcore/icon/ChevronRight/m';
10
+ import { DropdownMenuWithNoticeExample } from './examples/dropdown-menu-notice';
11
+
12
+ const meta: Meta<typeof DropdownMenu> = {
13
+ title: 'Components/Dropdown Menu',
14
+ component: DropdownMenu,
15
+ };
16
+
17
+ type Story = StoryObj<typeof DropdownMenu>;
18
+
19
+ export const DropdownMenuWithNotice: Story = {
20
+ render: DropdownMenuWithNoticeExample,
21
+ };
22
+
23
+ export const MenuItemWithActions: Story = {
24
+ render: () => {
25
+ return (
26
+ <DropdownMenu>
27
+ <DropdownMenu.Trigger tag={Button}>List item with actions</DropdownMenu.Trigger>
28
+ <DropdownMenu.Menu>
29
+ <DropdownMenu.Item>Item 1</DropdownMenu.Item>
30
+ <DropdownMenu.Item>Item 2</DropdownMenu.Item>
31
+
32
+ <DropdownMenu.Item>
33
+ <DropdownMenu inlineActions placement={'right'}>
34
+ <Flex justifyContent='space-between'>
35
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
36
+ Item 3
37
+ </DropdownMenu.Item.Content>
38
+ <DropdownMenu.Actions gap={1}>
39
+ <DropdownMenu.Item tag={Button} addonLeft={PlusM} aria-label={'Add new'} />
40
+ <DropdownMenu.Item tag={Button} addonLeft={TrashM} aria-label={'Delete'} />
41
+ </DropdownMenu.Actions>
42
+ </Flex>
43
+ </DropdownMenu>
44
+ </DropdownMenu.Item>
45
+ <DropdownMenu.Item>
46
+ <DropdownMenu
47
+ placement={'right-start'}
48
+ interaction={'hover'}
49
+ timeout={[0, 300]}
50
+ offset={[-11, 12]}
51
+ >
52
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
53
+ Item 4
54
+ <ChevronRightIcon color='icon-secondary-neutral' />
55
+ </DropdownMenu.Item.Content>
56
+ <DropdownMenu.Menu>
57
+ <DropdownMenu.Item>Add</DropdownMenu.Item>
58
+ <DropdownMenu.Item>Delete</DropdownMenu.Item>
59
+ </DropdownMenu.Menu>
60
+ </DropdownMenu>
61
+ </DropdownMenu.Item>
62
+ </DropdownMenu.Menu>
63
+ </DropdownMenu>
64
+ );
65
+ },
66
+ };
67
+
68
+ export const NestedMenus: Story = {
69
+ render: () => {
70
+ return (
71
+ <DropdownMenu>
72
+ <DropdownMenu.Trigger tag={Button}>Nested menus</DropdownMenu.Trigger>
73
+ <DropdownMenu.Menu>
74
+ <DropdownMenu.Item>Item 1</DropdownMenu.Item>
75
+ <DropdownMenu.Item>Item 2</DropdownMenu.Item>
76
+ <DropdownMenu.Item>Item 3</DropdownMenu.Item>
77
+ <DropdownMenu.Item>
78
+ <DropdownMenu
79
+ placement='right-start'
80
+ interaction='hover'
81
+ timeout={[0, 300]}
82
+ offset={[-11, 12]}
83
+ >
84
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
85
+ Item 4
86
+ <DropdownMenu.Item.Addon tag={ChevronRightIcon} color='icon-secondary-neutral' />
87
+ </DropdownMenu.Item.Content>
88
+ <DropdownMenu.Menu w={120}>
89
+ <DropdownMenu.Item>
90
+ <DropdownMenu
91
+ placement='right-start'
92
+ interaction='hover'
93
+ timeout={[0, 300]}
94
+ offset={[-11, 12]}
95
+ >
96
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
97
+ Item 4.1
98
+ <DropdownMenu.Item.Addon
99
+ tag={ChevronRightIcon}
100
+ color='icon-secondary-neutral'
101
+ />
102
+ </DropdownMenu.Item.Content>
103
+ <DropdownMenu.Menu w={120}>
104
+ <DropdownMenu.Item>Item 4.1.1</DropdownMenu.Item>
105
+ <DropdownMenu.Item>Item 4.1.2</DropdownMenu.Item>
106
+ <DropdownMenu.Item>Item 4.1.3</DropdownMenu.Item>
107
+ </DropdownMenu.Menu>
108
+ </DropdownMenu>
109
+ </DropdownMenu.Item>
110
+ <DropdownMenu.Item>
111
+ <DropdownMenu
112
+ placement='right-start'
113
+ interaction='hover'
114
+ timeout={[0, 300]}
115
+ offset={[-11, 12]}
116
+ >
117
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
118
+ Item 4.2
119
+ <DropdownMenu.Item.Addon
120
+ tag={ChevronRightIcon}
121
+ color='icon-secondary-neutral'
122
+ />
123
+ </DropdownMenu.Item.Content>
124
+ <DropdownMenu.Menu w={120}>
125
+ <DropdownMenu.Item>
126
+ <DropdownMenu
127
+ placement='right-start'
128
+ interaction='hover'
129
+ timeout={[0, 300]}
130
+ offset={[-11, 12]}
131
+ >
132
+ <DropdownMenu.Item.Content tag={DropdownMenu.Trigger}>
133
+ Item 4.2.1
134
+ <DropdownMenu.Item.Addon
135
+ tag={ChevronRightIcon}
136
+ color='icon-secondary-neutral'
137
+ />
138
+ </DropdownMenu.Item.Content>
139
+ <DropdownMenu.Menu w={120}>
140
+ <DropdownMenu.Item>Item 4.2.1.1</DropdownMenu.Item>
141
+ <DropdownMenu.Item>Item 4.2.1.2</DropdownMenu.Item>
142
+ <DropdownMenu.Item>Item 4.2.1.3</DropdownMenu.Item>
143
+ </DropdownMenu.Menu>
144
+ </DropdownMenu>
145
+ </DropdownMenu.Item>
146
+ <DropdownMenu.Item>Item 4.2.2</DropdownMenu.Item>
147
+ <DropdownMenu.Item>Item 4.2.3</DropdownMenu.Item>
148
+ </DropdownMenu.Menu>
149
+ </DropdownMenu>
150
+ </DropdownMenu.Item>
151
+ <DropdownMenu.Item>Item 4.3</DropdownMenu.Item>
152
+ </DropdownMenu.Menu>
153
+ </DropdownMenu>
154
+ </DropdownMenu.Item>
155
+ <DropdownMenu.Item>Item 5</DropdownMenu.Item>
156
+ </DropdownMenu.Menu>
157
+ </DropdownMenu>
158
+ );
159
+ },
160
+ };
161
+
162
+ export default meta;
@@ -0,0 +1,59 @@
1
+ import React from 'react';
2
+ import DropdownMenu from '../../src';
3
+ import Button from '../../../button/src';
4
+ import Link from '../../../link/src';
5
+ import { Text } from '../../../typography/src';
6
+ import Notice from '../../../notice/src';
7
+ import SpinContainer from '../../../spin-container/src';
8
+ import FileExportM from '@semcore/icon/FileExport/m';
9
+
10
+ export const DropdownMenuWithNoticeExample = () => {
11
+ const [loading, setLoading] = React.useState(false);
12
+
13
+ const handleClick = () => {
14
+ setLoading(true);
15
+ setTimeout(() => setLoading(false), 1000);
16
+ };
17
+
18
+ return (
19
+ <DropdownMenu>
20
+ <DropdownMenu.Trigger tag={Button}>
21
+ <Button.Addon>
22
+ <FileExportM />
23
+ </Button.Addon>
24
+ <Button.Text>Export</Button.Text>
25
+ </DropdownMenu.Trigger>
26
+ <DropdownMenu.Popper wMax='256px' aria-label={'Export options'}>
27
+ <SpinContainer loading={loading}>
28
+ <DropdownMenu.List>
29
+ <DropdownMenu.Item onClick={handleClick}>Excel</DropdownMenu.Item>
30
+ <DropdownMenu.Item onClick={handleClick}>CSV</DropdownMenu.Item>
31
+ <DropdownMenu.Item onClick={handleClick}>CSV Semicolon</DropdownMenu.Item>
32
+ </DropdownMenu.List>
33
+ <Notice
34
+ theme='warning'
35
+ style={{
36
+ padding: 'var(--intergalactic-spacing-3x) var(--intergalactic-spacing-2x)',
37
+ borderWidth: 0,
38
+ borderTopWidth: '1px',
39
+ borderRadius:
40
+ '0 0 var(--intergalactic-rounded-medium) var(--intergalactic-rounded-medium)',
41
+ }}
42
+ >
43
+ <Notice.Content>
44
+ <Text tag='strong' mb={1} style={{ display: 'block' }}>
45
+ Export failed
46
+ </Text>
47
+ <Text>
48
+ If the problem persists, please contact us at{' '}
49
+ <Link inline href='mailto:feedback@semrush.com'>
50
+ feedback@semrush.com
51
+ </Link>
52
+ </Text>
53
+ </Notice.Content>
54
+ </Notice>
55
+ </SpinContainer>
56
+ </DropdownMenu.Popper>
57
+ </DropdownMenu>
58
+ );
59
+ };
@@ -36,24 +36,24 @@ var _button = _interopRequireDefault(require("@semcore/button"));
36
36
  var _typography = require("@semcore/typography");
37
37
  var _excluded = ["className"];
38
38
  /*__reshadow-styles__:"./style/dropdown-menu.shadow.css"*/
39
- var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuList_br0nj_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;position:relative;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_:after,.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_median_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_median_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_start_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_end_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_:after,.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_median_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_median_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_start_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_end_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItemContainer_br0nj_gg_.__nesting-trigger_br0nj_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_br0nj_gg_,.___SItemContentText_br0nj_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-1x, 4px);margin-right:var(--intergalactic-spacing-1x, 4px)}.___SDropdownMenuItemAddon_br0nj_gg_:first-child,.___SItemContentText_br0nj_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_br0nj_gg_:last-child,.___SItemContentText_br0nj_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_br0nj_gg_,.___SDropdownMenuNesting_br0nj_gg_._size_l_br0nj_gg_,.___SDropdownMenuNesting_br0nj_gg_._size_m_br0nj_gg_{padding:0}.___SDropdownMenuNesting_br0nj_gg_.__highlighted_br0nj_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_br0nj_gg_._size_l_br0nj_gg_,.___SDropdownNestingItem_br0nj_gg_._size_m_br0nj_gg_{padding-right:0}.___SDropdownNestingItem_br0nj_gg_ .___SDropdownMenuItemContainer_br0nj_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}.___SItemContent_br0nj_gg_:focus{outline:0}.___SItemHint_br0nj_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}" /*__inner_css_end__*/, "br0nj_gg_") /*__reshadow_css_end__*/, {
40
- "__SDropdownMenuItemContainer": "___SDropdownMenuItemContainer_br0nj_gg_",
41
- "_nesting-trigger": "__nesting-trigger_br0nj_gg_",
42
- "__SDropdownMenuNesting": "___SDropdownMenuNesting_br0nj_gg_",
43
- "_size_l": "_size_l_br0nj_gg_",
44
- "_size_m": "_size_m_br0nj_gg_",
45
- "_highlighted": "__highlighted_br0nj_gg_",
46
- "__SDropdownNestingItem": "___SDropdownNestingItem_br0nj_gg_",
47
- "__SItemContent": "___SItemContent_br0nj_gg_",
48
- "__SItemHint": "___SItemHint_br0nj_gg_",
49
- "__SDropdownMenuList": "___SDropdownMenuList_br0nj_gg_",
50
- "__SShadowHorizontal": "___SShadowHorizontal_br0nj_gg_",
51
- "_position_median": "_position_median_br0nj_gg_",
52
- "_position_start": "_position_start_br0nj_gg_",
53
- "_position_end": "_position_end_br0nj_gg_",
54
- "__SShadowVertical": "___SShadowVertical_br0nj_gg_",
55
- "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_br0nj_gg_",
56
- "__SItemContentText": "___SItemContentText_br0nj_gg_"
39
+ var style = ( /*__reshadow_css_start__*/_index.sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuList_10zcc_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;position:relative;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_:after,.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_median_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_median_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_start_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_end_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_:after,.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_median_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_median_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_start_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_end_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItemContainer_10zcc_gg_.__nesting-trigger_10zcc_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_10zcc_gg_,.___SItemContentText_10zcc_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-1x, 4px);margin-right:var(--intergalactic-spacing-1x, 4px)}.___SDropdownMenuItemAddon_10zcc_gg_:first-child,.___SItemContentText_10zcc_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_10zcc_gg_:last-child,.___SItemContentText_10zcc_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_10zcc_gg_,.___SDropdownMenuNesting_10zcc_gg_._size_l_10zcc_gg_,.___SDropdownMenuNesting_10zcc_gg_._size_m_10zcc_gg_{padding:0}.___SDropdownMenuNesting_10zcc_gg_.__highlighted_10zcc_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_10zcc_gg_._size_l_10zcc_gg_,.___SDropdownNestingItem_10zcc_gg_._size_m_10zcc_gg_{padding-right:0}.___SDropdownNestingItem_10zcc_gg_ .___SDropdownMenuItemContainer_10zcc_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}.___SItemContent_10zcc_gg_:focus{outline:0}.___SItemHint_10zcc_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}" /*__inner_css_end__*/, "10zcc_gg_") /*__reshadow_css_end__*/, {
40
+ "__SDropdownMenuItemContainer": "___SDropdownMenuItemContainer_10zcc_gg_",
41
+ "_nesting-trigger": "__nesting-trigger_10zcc_gg_",
42
+ "__SDropdownMenuNesting": "___SDropdownMenuNesting_10zcc_gg_",
43
+ "_size_l": "_size_l_10zcc_gg_",
44
+ "_size_m": "_size_m_10zcc_gg_",
45
+ "_highlighted": "__highlighted_10zcc_gg_",
46
+ "__SDropdownNestingItem": "___SDropdownNestingItem_10zcc_gg_",
47
+ "__SItemContent": "___SItemContent_10zcc_gg_",
48
+ "__SItemHint": "___SItemHint_10zcc_gg_",
49
+ "__SDropdownMenuList": "___SDropdownMenuList_10zcc_gg_",
50
+ "__SShadowHorizontal": "___SShadowHorizontal_10zcc_gg_",
51
+ "_position_median": "_position_median_10zcc_gg_",
52
+ "_position_start": "_position_start_10zcc_gg_",
53
+ "_position_end": "_position_end_10zcc_gg_",
54
+ "__SShadowVertical": "___SShadowVertical_10zcc_gg_",
55
+ "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_10zcc_gg_",
56
+ "__SItemContentText": "___SItemContentText_10zcc_gg_"
57
57
  });
58
58
  var ListBoxContextProvider = function ListBoxContextProvider(_ref22) {
59
59
  var children = _ref22.children;
@@ -72,6 +72,7 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
72
72
  args[_key] = arguments[_key];
73
73
  }
74
74
  _this = _super.call.apply(_super, [this].concat(args));
75
+ (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "actionsRef", /*#__PURE__*/_react["default"].createRef());
75
76
  (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "role", 'menu');
76
77
  return _this;
77
78
  }
@@ -109,27 +110,31 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
109
110
  key: "getPopperProps",
110
111
  value: function getPopperProps() {
111
112
  return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, (0, _get2["default"])((0, _getPrototypeOf2["default"])(DropdownMenuRoot.prototype), "getPopperProps", this).call(this)), {}, {
112
- onKeyDown: (0, _assignProps14.callAllEventHandlers)(this.handlePreventCommonKeyDown.bind(this), this.handlePreventPopperKeyDown.bind(this)
113
- // this.handleKeyDownForPopper.bind(this),
114
- )
113
+ onKeyDown: (0, _assignProps14.callAllEventHandlers)(this.handlePreventCommonKeyDown.bind(this), this.handlePreventPopperKeyDown.bind(this))
115
114
  });
116
115
  }
117
116
  }, {
118
117
  key: "getActionsProps",
119
118
  value: function getActionsProps() {
120
- return this.getListProps();
119
+ return (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, this.getListProps()), {}, {
120
+ ref: this.actionsRef,
121
+ onKeyDown: (0, _assignProps14.callAllEventHandlers)(this.handlePreventTabOnActions.bind(this), this.handlePreventCommonKeyDown.bind(this), this.handleKeyDownForMenu('list'), this.handleArrowKeyDown.bind(this))
122
+ });
121
123
  }
122
124
  }, {
123
125
  key: "getItemProps",
124
126
  value: function getItemProps(props, index) {
125
127
  var _this2 = this;
126
- var highlightedIndex = this.asProps.highlightedIndex;
128
+ var _this$asProps2 = this.asProps,
129
+ highlightedIndex = _this$asProps2.highlightedIndex,
130
+ visible = _this$asProps2.visible;
127
131
  var isHighlighted = index === highlightedIndex;
128
132
  var itemProps = (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, (0, _get2["default"])((0, _getPrototypeOf2["default"])(DropdownMenuRoot.prototype), "getItemProps", this).call(this, props, index)), {}, {
129
- tabIndex: isHighlighted ? 0 : -1,
133
+ tabIndex: isHighlighted && visible ? 0 : -1,
130
134
  ref: function ref(node) {
131
135
  return _this2.itemRef(props, index, node);
132
- }
136
+ },
137
+ actionsRef: this.actionsRef
133
138
  });
134
139
  if (props.tag === _button["default"]) {
135
140
  var _props$use, _props$theme, _props$size;
@@ -175,15 +180,24 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
175
180
  }
176
181
  };
177
182
  }
183
+ }, {
184
+ key: "handlePreventTabOnActions",
185
+ value: function handlePreventTabOnActions(e) {
186
+ if (e.key === 'Tab') {
187
+ e.stopPropagation();
188
+ e.preventDefault();
189
+ return false;
190
+ }
191
+ }
178
192
  }, {
179
193
  key: "render",
180
194
  value: function render() {
181
195
  var _ref = this.asProps;
182
- var _this$asProps2 = this.asProps,
183
- Children = _this$asProps2.Children,
184
- selectedIndex = _this$asProps2.selectedIndex,
185
- interaction = _this$asProps2.interaction,
186
- timeout = _this$asProps2.timeout;
196
+ var _this$asProps3 = this.asProps,
197
+ Children = _this$asProps3.Children,
198
+ selectedIndex = _this$asProps3.selectedIndex,
199
+ interaction = _this$asProps3.interaction,
200
+ timeout = _this$asProps3.timeout;
187
201
  this.itemProps = [];
188
202
  return /*#__PURE__*/_react["default"].createElement(_dropdown.selectedIndexContext.Provider, {
189
203
  value: selectedIndex
@@ -262,7 +276,9 @@ function Item(_ref25) {
262
276
  disabled = _ref25.disabled,
263
277
  Children = _ref25.Children,
264
278
  forwardRef = _ref25.forwardRef,
265
- role = _ref25.role;
279
+ role = _ref25.role,
280
+ tabIndex = _ref25.tabIndex,
281
+ actionsRef = _ref25.actionsRef;
266
282
  var SDropdownMenuItemContainer = _dropdown["default"].Item;
267
283
  var itemRef = _react["default"].useRef();
268
284
  var _React$useState = _react["default"].useState(false),
@@ -272,7 +288,8 @@ function Item(_ref25) {
272
288
  var menuItemContextValue = {
273
289
  contentId: id,
274
290
  ref: (0, _ref31.forkRef)(forwardRef, itemRef),
275
- role: role
291
+ role: role,
292
+ tabIndex: tabIndex
276
293
  };
277
294
  var ariaDescribes = [];
278
295
  var hasSubMenu = (0, _findComponent.isAdvanceMode)(Children, [DropdownMenu.displayName], true);
@@ -299,6 +316,9 @@ function Item(_ref25) {
299
316
  var onBlur = function onBlur(e) {
300
317
  if (e.target === itemRef.current) {
301
318
  setHighlighted(false);
319
+ if (actionsRef.current) {
320
+ itemRef.current.tabIndex = -1;
321
+ }
302
322
  }
303
323
  };
304
324
  document.addEventListener('focus', onFocus, {
@@ -324,7 +344,7 @@ function Item(_ref25) {
324
344
  "use:highlighted": !disabled && highlighted && focusSourceRef.current === 'keyboard',
325
345
  "use:role": advancedMode ? undefined : role,
326
346
  "use:id": advancedMode ? undefined : id,
327
- "tabIndex": advancedMode ? undefined : -1
347
+ "use:tabIndex": advancedMode ? -1 : tabIndex
328
348
  }, _ref5))), /*#__PURE__*/_react["default"].createElement(Children, _ref16.cn("Children", {}))));
329
349
  }
330
350
  function Addon(props) {
@@ -371,7 +391,7 @@ function ItemContent(_ref26) {
371
391
  return _ref17 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SItemContent, _ref17.cn("SItemContent", (0, _objectSpread2["default"])({}, (0, _core.assignProps)({
372
392
  "role": menuItemCtxValue.role,
373
393
  "id": menuItemCtxValue.contentId,
374
- "tabIndex": -1,
394
+ "tabIndex": menuItemCtxValue.tabIndex,
375
395
  "ref": (0, _ref31.forkRef)(menuItemCtxValue.ref, ref),
376
396
  "use:aria-describedby": (0, _toConsumableArray2["default"])(describedby).join(' '),
377
397
  "aria-haspopup": menuItemCtxValue.hasSubMenu ? 'true' : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_classnames","_dropdown","_flexBox","_scrollArea","_uniqueID","_intergalacticDynamicLocales","_keyboardFocusEnhance","_findComponent","_ref31","_assignProps14","_button","_typography","_excluded","style","_index","sstyled","insert","ListBoxContextProvider","_ref22","children","createElement","hideScrollBarsFromScreenReadersContext","Provider","value","menuItemContext","React","createContext","DropdownMenuRoot","_AbstractDropdown","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","_createClass2","key","itemRef","props","index","node","_get2","_getPrototypeOf2","prototype","document","activeElement","getTriggerProps","_this$asProps","asProps","Children","uid","visible","hasMenu","isAdvanceMode","DropdownMenu","Menu","displayName","ariaControls","_objectSpread2","onKeyDown","callAllEventHandlers","handlePreventCommonKeyDown","bind","handleOpenKeyDown","handleKeyDownForMenu","undefined","getListProps","handleArrowKeyDown","getPopperProps","handlePreventPopperKeyDown","getActionsProps","getItemProps","_this2","highlightedIndex","isHighlighted","itemProps","tabIndex","ref","tag","ButtonComponent","_props$use","_props$theme","_props$size","use","theme","size","place","_this3","e","_this3$asProps","placement","inlineActions","show","startsWith","hide","isMenuItem","target","getAttribute","handlers","setTimeout","_this3$itemRefs$highl","itemRefs","focus","preventDefault","stopPropagation","_this3$triggerRef$cur","triggerRef","current","render","_ref","_this$asProps2","selectedIndex","interaction","timeout","selectedIndexContext","Dropdown","assignProps","AbstractDropdown","Object","values","enhance","defaultVisible","defaultHighlightedIndex","defaultSelectedIndex","i18n","localizedMessages","locale","List","_ref23","_ref2","arguments[0]","_ref14","styles","SDropdownMenuList","ScrollAreaComponent","cn","Container","Bar","orientation","Actions","_ref24","_ref3","_ref15","SDropdownMenuActions","Flex","_ref4","disablePortal","ignorePortalsStacking","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","Popper","_extends2","role","Item","_ref25","_ref5","_ref16","id","disabled","forwardRef","SDropdownMenuItemContainer","useRef","_React$useState","useState","_React$useState2","_slicedToArray2","highlighted","setHighlighted","menuItemContextValue","contentId","forkRef","ariaDescribes","hasSubMenu","hasHint","Hint","advancedMode","Content","hintId","useUID","push","useEffect","onFocus","onBlur","addEventListener","capture","removeEventListener","focusSourceRef","useFocusSource","Addon","_useBox","useBox","_useBox2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties2","Trigger","_ref6","ItemContent","_ref26","_ref7","_ref17","SItemContent","menuItemCtxValue","useContext","subMenu","_React$useState3","Set","_React$useState4","describedby","setDescribedby","element","parent","parentElement","prev","add","_toConsumableArray2","join","ItemContentText","_ref27","_ref8","_ref18","SItemContentText","Text","ItemHint","_ref28","_ref9","_ref19","SItemHint","_React$useContext","_ref10","_ref20","Title","_ref11","_ref21","Nesting","_ref29","_ref12","NestingTrigger","_ref30","_ref13","createComponent","ItemTitle","Group","_default","exports"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { sstyled, Root } from '@semcore/core';\nimport Dropdown, { AbstractDropdown, selectedIndexContext, enhance } from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from '@semcore/scroll-area';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport style from './style/dropdown-menu.shadow.css';\nimport { useFocusSource } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonComponent from '@semcore/button';\nimport { Text } from '@semcore/typography';\n\nconst ListBoxContextProvider = ({ children }) => (\n <hideScrollBarsFromScreenReadersContext.Provider value={true}>\n {children}\n </hideScrollBarsFromScreenReadersContext.Provider>\n);\n\nconst menuItemContext = React.createContext({});\n\nclass DropdownMenuRoot extends AbstractDropdown {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = Object.values(enhance);\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: 0,\n defaultSelectedIndex: 0,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n inlineActions: false,\n placement: 'bottom-start',\n timeout: 0,\n };\n\n role = 'menu';\n\n itemRef(props, index, node) {\n super.itemRef(props, index, node);\n\n if (node === document.activeElement) {\n super.scrollToNode(node);\n }\n }\n\n getTriggerProps() {\n const { Children, uid, visible } = this.asProps;\n const hasMenu = isAdvanceMode(Children, [DropdownMenu.Menu.displayName]);\n const ariaControls = hasMenu ? `igc-${uid}-list` : `igc-${uid}-popper`;\n\n return {\n ...super.getTriggerProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleOpenKeyDown.bind(this),\n this.handleKeyDownForMenu('trigger'),\n ),\n 'aria-controls': visible ? ariaControls : undefined,\n 'aria-haspopup': hasMenu ? 'true' : 'dialog',\n };\n }\n\n getListProps() {\n return {\n ...super.getListProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handlePreventPopperKeyDown.bind(this),\n // this.handleKeyDownForPopper.bind(this),\n ),\n };\n }\n\n getActionsProps() {\n return this.getListProps();\n }\n\n getItemProps(props, index) {\n const { highlightedIndex } = this.asProps;\n const isHighlighted = index === highlightedIndex;\n\n const itemProps = {\n ...super.getItemProps(props, index),\n tabIndex: isHighlighted ? 0 : -1,\n ref: (node) => this.itemRef(props, index, node),\n };\n\n if (props.tag === ButtonComponent) {\n itemProps.use = props.use ?? 'tertiary';\n itemProps.theme = props.theme ?? 'muted';\n itemProps.size = props.size ?? 's';\n }\n\n return itemProps;\n }\n\n handleKeyDownForMenu(place) {\n return (e) => {\n const { visible, placement, inlineActions } = this.asProps;\n\n const show =\n (e.key === 'ArrowRight' && placement?.startsWith('right')) ||\n (e.key === 'ArrowLeft' && placement?.startsWith('left'));\n const hide =\n (e.key === 'ArrowLeft' && placement?.startsWith('right')) ||\n (e.key === 'ArrowRight' && placement?.startsWith('left')) ||\n e.key === 'Escape';\n const isMenuItem = e.target.getAttribute('role') === super.childRole;\n\n if (place === 'trigger' && (!visible || inlineActions) && show && isMenuItem) {\n this.handlers.visible(true);\n this.handlers.highlightedIndex(0);\n setTimeout(() => {\n const { highlightedIndex } = this.asProps;\n this.itemRefs[highlightedIndex]?.focus();\n }, 0);\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n if (place === 'list' && visible && hide && isMenuItem) {\n if (\n !inlineActions ||\n (inlineActions && (e.key === 'Escape' || this.asProps.highlightedIndex === 0))\n ) {\n this.handlers.visible(false);\n this.triggerRef.current?.focus();\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n };\n }\n\n render() {\n const { Children, selectedIndex, interaction, timeout } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <selectedIndexContext.Provider value={selectedIndex}>\n <Root\n render={Dropdown}\n timeout={timeout || (interaction === 'hover' ? [0, 100] : undefined)}\n >\n <Children />\n </Root>\n </selectedIndexContext.Provider>\n );\n }\n}\n\nfunction List({ styles, Children }) {\n const SDropdownMenuList = Root;\n\n return sstyled(styles)(\n <ListBoxContextProvider>\n <SDropdownMenuList render={ScrollAreaComponent} shadow={true}>\n <ScrollAreaComponent.Container tabIndex={undefined}>\n <Children />\n </ScrollAreaComponent.Container>\n <ScrollAreaComponent.Bar orientation='horizontal' />\n <ScrollAreaComponent.Bar orientation='vertical' />\n </SDropdownMenuList>\n </ListBoxContextProvider>,\n );\n}\nfunction Actions({ styles }) {\n const SDropdownMenuActions = Root;\n\n return sstyled(styles)(<SDropdownMenuActions render={Flex} />);\n}\n\nfunction Menu(props) {\n const {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n } = props;\n const popperProps = {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n };\n return (\n <ListBoxContextProvider>\n <DropdownMenu.Popper {...popperProps} role={null}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n </ListBoxContextProvider>\n );\n}\n\nfunction Item({ id, styles, disabled, Children, forwardRef, role }) {\n const SDropdownMenuItemContainer = Root;\n const itemRef = React.useRef();\n\n const [highlighted, setHighlighted] = React.useState(false);\n\n const menuItemContextValue = {\n contentId: id,\n ref: forkRef(forwardRef, itemRef),\n role,\n };\n const ariaDescribes = [];\n\n const hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);\n const hasHint = isAdvanceMode(Children, [DropdownMenu.Item.Hint.displayName], true);\n const advancedMode =\n isAdvanceMode(Children, [DropdownMenu.Item.Content.displayName], true) || hasSubMenu || hasHint;\n\n if (hasHint) {\n const hintId = `igc-${useUID()}-option-hint`;\n\n menuItemContextValue.hintId = hintId;\n ariaDescribes.push(hintId);\n }\n\n if (hasSubMenu) {\n menuItemContextValue.hasSubMenu = true;\n }\n\n menuItemContextValue.ariaDescribes = ariaDescribes;\n\n React.useEffect(() => {\n const onFocus = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(true);\n\n if (hasSubMenu) {\n e.stopPropagation();\n }\n }\n };\n const onBlur = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(false);\n }\n };\n\n document.addEventListener('focus', onFocus, { capture: true });\n document.addEventListener('blur', onBlur, { capture: true });\n\n return () => {\n document.removeEventListener('focus', onFocus, { capture: true });\n document.removeEventListener('blur', onBlur, { capture: true });\n };\n }, [itemRef.current]);\n\n const focusSourceRef = useFocusSource();\n\n return sstyled(styles)(\n <menuItemContext.Provider value={menuItemContextValue}>\n <SDropdownMenuItemContainer\n render={Dropdown.Item}\n ref={advancedMode ? undefined : menuItemContextValue.ref}\n use:highlighted={!disabled && highlighted && focusSourceRef.current === 'keyboard'}\n use:role={advancedMode ? undefined : role}\n use:id={advancedMode ? undefined : id}\n tabIndex={advancedMode ? undefined : -1}\n >\n <Children />\n </SDropdownMenuItemContainer>\n </menuItemContext.Provider>,\n );\n}\n\nfunction Addon(props) {\n const [SDropdownMenuItemAddon, { className, ...other }] = useBox(props, props.forwardRef);\n const styles = sstyled(props.styles);\n return (\n <SDropdownMenuItemAddon\n className={cn(styles.cn('SDropdownMenuItemAddon', props).className, className) || undefined}\n {...other}\n />\n );\n}\n\nfunction Trigger() {\n return <Root render={Dropdown.Trigger} />;\n}\n\nfunction ItemContent({ styles }) {\n const SItemContent = Root;\n const ref = React.useRef();\n const menuItemCtxValue = React.useContext(menuItemContext);\n\n let subMenu = undefined;\n\n if (menuItemCtxValue.hasSubMenu) {\n subMenu = 'true';\n }\n\n const [describedby, setDescribedby] = React.useState(new Set(menuItemCtxValue.ariaDescribes));\n\n React.useEffect(() => {\n const element = ref.current;\n const parent = element?.parentElement;\n\n if (\n parent.getAttribute('aria-haspopup') === 'true' &&\n parent.getAttribute('aria-describedby')\n ) {\n setDescribedby((prev) => {\n prev.add(parent.getAttribute('aria-describedby'));\n\n return new Set(prev);\n });\n }\n }, [menuItemCtxValue.ariaDescribes]);\n\n return sstyled(styles)(\n <SItemContent\n render={Flex}\n role={menuItemCtxValue.role}\n id={menuItemCtxValue.contentId}\n tabIndex={-1}\n ref={forkRef(menuItemCtxValue.ref, ref)}\n use:aria-describedby={[...describedby].join(' ')}\n aria-haspopup={menuItemCtxValue.hasSubMenu ? 'true' : undefined}\n aria-expanded={subMenu}\n alignItems='center'\n justifyContent={menuItemCtxValue.hasSubMenu ? 'space-between' : undefined}\n />,\n );\n}\n\nfunction ItemContentText({ styles }) {\n const SItemContentText = Root;\n return sstyled(styles)(<SItemContentText render={Text} />);\n}\n\nfunction ItemHint({ styles }) {\n const SItemHint = Root;\n const { hintId } = React.useContext(menuItemContext);\n\n return sstyled(styles)(<SItemHint render={Flex} id={hintId} aria-hidden={'true'} />);\n}\n\n/**\n * @deprecated Use Item hint\n */\nfunction Hint(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='hint' />,\n );\n}\n/**\n * @deprecated Use Group with title prop\n */\nfunction Title(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='title' />,\n );\n}\n\n/**\n * @deprecated\n */\nfunction Nesting({ forwardRef }) {\n return <Root render={DropdownMenu.Item} ref={forwardRef} />;\n}\n\n/**\n * @deprecated\n */\nfunction NestingTrigger({ forwardRef }) {\n return (\n <Root\n render={DropdownMenu.Item.Content}\n tag={DropdownMenu.Trigger}\n ref={forwardRef}\n use:role={'menuitem'}\n />\n );\n}\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Actions,\n Menu,\n Item: [Item, { Addon, Content: ItemContent, Text: ItemContentText, Hint: ItemHint }],\n /**\n * @deprecated. Use just Item. See examples on\n */\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon }],\n ItemTitle: Title,\n ItemHint: Hint,\n Group: Dropdown.Group,\n },\n {\n parent: [Dropdown],\n },\n);\n\nDropdownMenu.selectedIndexContext = selectedIndexContext;\n\nexport default DropdownMenu;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownMenu.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_classnames","_dropdown","_flexBox","_scrollArea","_uniqueID","_intergalacticDynamicLocales","_keyboardFocusEnhance","_findComponent","_ref31","_assignProps14","_button","_typography","_excluded","style","_index","sstyled","insert","ListBoxContextProvider","_ref22","children","createElement","hideScrollBarsFromScreenReadersContext","Provider","value","menuItemContext","React","createContext","DropdownMenuRoot","_AbstractDropdown","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","createRef","_createClass2","key","itemRef","props","index","node","_get2","_getPrototypeOf2","prototype","document","activeElement","getTriggerProps","_this$asProps","asProps","Children","uid","visible","hasMenu","isAdvanceMode","DropdownMenu","Menu","displayName","ariaControls","_objectSpread2","onKeyDown","callAllEventHandlers","handlePreventCommonKeyDown","bind","handleOpenKeyDown","handleKeyDownForMenu","undefined","getListProps","handleArrowKeyDown","getPopperProps","handlePreventPopperKeyDown","getActionsProps","ref","actionsRef","handlePreventTabOnActions","getItemProps","_this2","_this$asProps2","highlightedIndex","isHighlighted","itemProps","tabIndex","tag","ButtonComponent","_props$use","_props$theme","_props$size","use","theme","size","place","_this3","e","_this3$asProps","placement","inlineActions","show","startsWith","hide","isMenuItem","target","getAttribute","handlers","setTimeout","_this3$itemRefs$highl","itemRefs","focus","preventDefault","stopPropagation","_this3$triggerRef$cur","triggerRef","current","render","_ref","_this$asProps3","selectedIndex","interaction","timeout","selectedIndexContext","Dropdown","assignProps","AbstractDropdown","Object","values","enhance","defaultVisible","defaultHighlightedIndex","defaultSelectedIndex","i18n","localizedMessages","locale","List","_ref23","_ref2","arguments[0]","_ref14","styles","SDropdownMenuList","ScrollAreaComponent","cn","Container","Bar","orientation","Actions","_ref24","_ref3","_ref15","SDropdownMenuActions","Flex","_ref4","disablePortal","ignorePortalsStacking","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","Popper","_extends2","role","Item","_ref25","_ref5","_ref16","id","disabled","forwardRef","SDropdownMenuItemContainer","useRef","_React$useState","useState","_React$useState2","_slicedToArray2","highlighted","setHighlighted","menuItemContextValue","contentId","forkRef","ariaDescribes","hasSubMenu","hasHint","Hint","advancedMode","Content","hintId","useUID","push","useEffect","onFocus","onBlur","addEventListener","capture","removeEventListener","focusSourceRef","useFocusSource","Addon","_useBox","useBox","_useBox2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties2","Trigger","_ref6","ItemContent","_ref26","_ref7","_ref17","SItemContent","menuItemCtxValue","useContext","subMenu","_React$useState3","Set","_React$useState4","describedby","setDescribedby","element","parent","parentElement","prev","add","_toConsumableArray2","join","ItemContentText","_ref27","_ref8","_ref18","SItemContentText","Text","ItemHint","_ref28","_ref9","_ref19","SItemHint","_React$useContext","_ref10","_ref20","Title","_ref11","_ref21","Nesting","_ref29","_ref12","NestingTrigger","_ref30","_ref13","createComponent","ItemTitle","Group","_default","exports"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { sstyled, Root } from '@semcore/core';\nimport Dropdown, { AbstractDropdown, selectedIndexContext, enhance } from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from '@semcore/scroll-area';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport style from './style/dropdown-menu.shadow.css';\nimport { useFocusSource } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonComponent from '@semcore/button';\nimport { Text } from '@semcore/typography';\n\nconst ListBoxContextProvider = ({ children }) => (\n <hideScrollBarsFromScreenReadersContext.Provider value={true}>\n {children}\n </hideScrollBarsFromScreenReadersContext.Provider>\n);\n\nconst menuItemContext = React.createContext({});\n\nclass DropdownMenuRoot extends AbstractDropdown {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = Object.values(enhance);\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: 0,\n defaultSelectedIndex: 0,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n inlineActions: false,\n placement: 'bottom-start',\n timeout: 0,\n };\n\n actionsRef = React.createRef();\n role = 'menu';\n\n itemRef(props, index, node) {\n super.itemRef(props, index, node);\n\n if (node === document.activeElement) {\n super.scrollToNode(node);\n }\n }\n\n getTriggerProps() {\n const { Children, uid, visible } = this.asProps;\n const hasMenu = isAdvanceMode(Children, [DropdownMenu.Menu.displayName]);\n const ariaControls = hasMenu ? `igc-${uid}-list` : `igc-${uid}-popper`;\n\n return {\n ...super.getTriggerProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleOpenKeyDown.bind(this),\n this.handleKeyDownForMenu('trigger'),\n ),\n 'aria-controls': visible ? ariaControls : undefined,\n 'aria-haspopup': hasMenu ? 'true' : 'dialog',\n };\n }\n\n getListProps() {\n return {\n ...super.getListProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handlePreventPopperKeyDown.bind(this),\n ),\n };\n }\n\n getActionsProps() {\n return {\n ...this.getListProps(),\n ref: this.actionsRef,\n onKeyDown: callAllEventHandlers(\n this.handlePreventTabOnActions.bind(this),\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getItemProps(props, index) {\n const { highlightedIndex, visible } = this.asProps;\n const isHighlighted = index === highlightedIndex;\n const itemProps = {\n ...super.getItemProps(props, index),\n tabIndex: isHighlighted && visible ? 0 : -1,\n ref: (node) => this.itemRef(props, index, node),\n actionsRef: this.actionsRef,\n };\n\n if (props.tag === ButtonComponent) {\n itemProps.use = props.use ?? 'tertiary';\n itemProps.theme = props.theme ?? 'muted';\n itemProps.size = props.size ?? 's';\n }\n\n return itemProps;\n }\n\n handleKeyDownForMenu(place) {\n return (e) => {\n const { visible, placement, inlineActions } = this.asProps;\n\n const show =\n (e.key === 'ArrowRight' && placement?.startsWith('right')) ||\n (e.key === 'ArrowLeft' && placement?.startsWith('left'));\n const hide =\n (e.key === 'ArrowLeft' && placement?.startsWith('right')) ||\n (e.key === 'ArrowRight' && placement?.startsWith('left')) ||\n e.key === 'Escape';\n const isMenuItem = e.target.getAttribute('role') === super.childRole;\n\n if (place === 'trigger' && (!visible || inlineActions) && show && isMenuItem) {\n this.handlers.visible(true);\n this.handlers.highlightedIndex(0);\n setTimeout(() => {\n const { highlightedIndex } = this.asProps;\n this.itemRefs[highlightedIndex]?.focus();\n }, 0);\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n if (place === 'list' && visible && hide && isMenuItem) {\n if (\n !inlineActions ||\n (inlineActions && (e.key === 'Escape' || this.asProps.highlightedIndex === 0))\n ) {\n this.handlers.visible(false);\n this.triggerRef.current?.focus();\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n };\n }\n\n handlePreventTabOnActions(e) {\n if (e.key === 'Tab') {\n e.stopPropagation();\n e.preventDefault();\n return false;\n }\n }\n\n render() {\n const { Children, selectedIndex, interaction, timeout } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <selectedIndexContext.Provider value={selectedIndex}>\n <Root\n render={Dropdown}\n timeout={timeout || (interaction === 'hover' ? [0, 100] : undefined)}\n >\n <Children />\n </Root>\n </selectedIndexContext.Provider>\n );\n }\n}\n\nfunction List({ styles, Children }) {\n const SDropdownMenuList = Root;\n\n return sstyled(styles)(\n <ListBoxContextProvider>\n <SDropdownMenuList render={ScrollAreaComponent} shadow={true}>\n <ScrollAreaComponent.Container tabIndex={undefined}>\n <Children />\n </ScrollAreaComponent.Container>\n <ScrollAreaComponent.Bar orientation='horizontal' />\n <ScrollAreaComponent.Bar orientation='vertical' />\n </SDropdownMenuList>\n </ListBoxContextProvider>,\n );\n}\nfunction Actions({ styles }) {\n const SDropdownMenuActions = Root;\n\n return sstyled(styles)(<SDropdownMenuActions render={Flex} />);\n}\n\nfunction Menu(props) {\n const {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n } = props;\n const popperProps = {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n };\n return (\n <ListBoxContextProvider>\n <DropdownMenu.Popper {...popperProps} role={null}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n </ListBoxContextProvider>\n );\n}\n\nfunction Item({ id, styles, disabled, Children, forwardRef, role, tabIndex, actionsRef }) {\n const SDropdownMenuItemContainer = Root;\n const itemRef = React.useRef();\n\n const [highlighted, setHighlighted] = React.useState(false);\n\n const menuItemContextValue = {\n contentId: id,\n ref: forkRef(forwardRef, itemRef),\n role,\n tabIndex,\n };\n const ariaDescribes = [];\n\n const hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);\n const hasHint = isAdvanceMode(Children, [DropdownMenu.Item.Hint.displayName], true);\n const advancedMode =\n isAdvanceMode(Children, [DropdownMenu.Item.Content.displayName], true) || hasSubMenu || hasHint;\n\n if (hasHint) {\n const hintId = `igc-${useUID()}-option-hint`;\n\n menuItemContextValue.hintId = hintId;\n ariaDescribes.push(hintId);\n }\n\n if (hasSubMenu) {\n menuItemContextValue.hasSubMenu = true;\n }\n\n menuItemContextValue.ariaDescribes = ariaDescribes;\n\n React.useEffect(() => {\n const onFocus = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(true);\n\n if (hasSubMenu) {\n e.stopPropagation();\n }\n }\n };\n const onBlur = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(false);\n\n if (actionsRef.current) {\n itemRef.current.tabIndex = -1;\n }\n }\n };\n\n document.addEventListener('focus', onFocus, { capture: true });\n document.addEventListener('blur', onBlur, { capture: true });\n\n return () => {\n document.removeEventListener('focus', onFocus, { capture: true });\n document.removeEventListener('blur', onBlur, { capture: true });\n };\n }, [itemRef.current]);\n\n const focusSourceRef = useFocusSource();\n\n return sstyled(styles)(\n <menuItemContext.Provider value={menuItemContextValue}>\n <SDropdownMenuItemContainer\n render={Dropdown.Item}\n ref={advancedMode ? undefined : menuItemContextValue.ref}\n use:highlighted={!disabled && highlighted && focusSourceRef.current === 'keyboard'}\n use:role={advancedMode ? undefined : role}\n use:id={advancedMode ? undefined : id}\n use:tabIndex={advancedMode ? -1 : tabIndex}\n >\n <Children />\n </SDropdownMenuItemContainer>\n </menuItemContext.Provider>,\n );\n}\n\nfunction Addon(props) {\n const [SDropdownMenuItemAddon, { className, ...other }] = useBox(props, props.forwardRef);\n const styles = sstyled(props.styles);\n return (\n <SDropdownMenuItemAddon\n className={cn(styles.cn('SDropdownMenuItemAddon', props).className, className) || undefined}\n {...other}\n />\n );\n}\n\nfunction Trigger() {\n return <Root render={Dropdown.Trigger} />;\n}\n\nfunction ItemContent({ styles }) {\n const SItemContent = Root;\n const ref = React.useRef();\n const menuItemCtxValue = React.useContext(menuItemContext);\n\n let subMenu = undefined;\n\n if (menuItemCtxValue.hasSubMenu) {\n subMenu = 'true';\n }\n\n const [describedby, setDescribedby] = React.useState(new Set(menuItemCtxValue.ariaDescribes));\n\n React.useEffect(() => {\n const element = ref.current;\n const parent = element?.parentElement;\n\n if (\n parent.getAttribute('aria-haspopup') === 'true' &&\n parent.getAttribute('aria-describedby')\n ) {\n setDescribedby((prev) => {\n prev.add(parent.getAttribute('aria-describedby'));\n\n return new Set(prev);\n });\n }\n }, [menuItemCtxValue.ariaDescribes]);\n\n return sstyled(styles)(\n <SItemContent\n render={Flex}\n role={menuItemCtxValue.role}\n id={menuItemCtxValue.contentId}\n tabIndex={menuItemCtxValue.tabIndex}\n ref={forkRef(menuItemCtxValue.ref, ref)}\n use:aria-describedby={[...describedby].join(' ')}\n aria-haspopup={menuItemCtxValue.hasSubMenu ? 'true' : undefined}\n aria-expanded={subMenu}\n alignItems='center'\n justifyContent={menuItemCtxValue.hasSubMenu ? 'space-between' : undefined}\n />,\n );\n}\n\nfunction ItemContentText({ styles }) {\n const SItemContentText = Root;\n return sstyled(styles)(<SItemContentText render={Text} />);\n}\n\nfunction ItemHint({ styles }) {\n const SItemHint = Root;\n const { hintId } = React.useContext(menuItemContext);\n\n return sstyled(styles)(<SItemHint render={Flex} id={hintId} aria-hidden={'true'} />);\n}\n\n/**\n * @deprecated Use Item hint\n */\nfunction Hint(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='hint' />,\n );\n}\n/**\n * @deprecated Use Group with title prop\n */\nfunction Title(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='title' />,\n );\n}\n\n/**\n * @deprecated\n */\nfunction Nesting({ forwardRef }) {\n return <Root render={DropdownMenu.Item} ref={forwardRef} />;\n}\n\n/**\n * @deprecated\n */\nfunction NestingTrigger({ forwardRef }) {\n return (\n <Root\n render={DropdownMenu.Item.Content}\n tag={DropdownMenu.Trigger}\n ref={forwardRef}\n use:role={'menuitem'}\n />\n );\n}\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Actions,\n Menu,\n Item: [Item, { Addon, Content: ItemContent, Text: ItemContentText, Hint: ItemHint }],\n /**\n * @deprecated. Use just Item. See examples on\n */\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon }],\n ItemTitle: Title,\n ItemHint: Hint,\n Group: Dropdown.Group,\n },\n {\n parent: [Dropdown],\n },\n);\n\nDropdownMenu.selectedIndexContext = selectedIndexContext;\n\nexport default DropdownMenu;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport Dropdown, {\n DropdownContext,\n DropdownProps,\n DropdownHandlers,\n DropdownTriggerProps,\n} from '@semcore/dropdown';\nimport { Box, BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { ScrollAreaProps } from '@semcore/scroll-area';\nimport { Text } from '@semcore/typography';\n\nexport type DropdownMenuSize = 'm' | 'l';\n\n/** @deprecated */\nexport interface IDropdownMenuProps extends DropdownMenuProps, UnknownProperties {}\nexport type DropdownMenuProps = DropdownProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n /**\n * Index of the element selected by default\n */\n defaultHighlightedIndex?: number | null;\n /**\n * Index of the selected item\n */\n highlightedIndex?: number | null;\n /**\n * Callback for highlightedIndex change\n * highlightedIndex - Index of the selected item\n */\n onHighlightedIndexChange?: (highlightedIndex: number | null) => void;\n locale?: string;\n /**\n * Flag for menu that using as actions on DropdownMenu.Item\n */\n inlineActions?: boolean;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuListProps extends DropdownMenuListProps, UnknownProperties {}\nexport type DropdownMenuListProps = BoxProps &\n ScrollAreaProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n };\n\n/** @deprecated */\nexport interface IDropdownMenuMenuProps extends DropdownMenuMenuProps, UnknownProperties {}\nexport type DropdownMenuMenuProps = DropdownMenuListProps & {};\n\n/** @deprecated */\nexport interface IDropdownMenuItemProps extends DropdownMenuItemProps, UnknownProperties {}\nexport type DropdownMenuItemProps = FlexProps & {\n /**\n * Enables selected state\n * @deprecated Dropdown menu item can't have that state\n */\n selected?: boolean;\n /**\n * Disables item\n */\n disabled?: boolean;\n /**\n * Adds focus styles around\n */\n highlighted?: boolean;\n /**\n * Disables hover state\n * @deprecated use `disabled` instead\n */\n notInteractive?: boolean;\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemHintProps extends DropdownMenuItemHintProps, UnknownProperties {}\nexport type DropdownMenuItemHintProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemTitleProps\n extends DropdownMenuItemTitleProps,\n UnknownProperties {}\nexport type DropdownMenuItemTitleProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuContext extends DropdownMenuContext, UnknownProperties {}\nexport type DropdownMenuContext = DropdownContext & {\n highlightedIndex?: number;\n getListProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getItemHintProps: PropGetterFn;\n getItemTitleProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuHandlers extends DropdownMenuHandlers, UnknownProperties {}\nexport type DropdownMenuHandlers = DropdownHandlers & {\n highlightedIndex: (index: number) => void;\n};\n\nexport type DropdownMenuTriggerProps = DropdownTriggerProps;\n\ndeclare const DropdownMenu: Intergalactic.Component<\n 'div',\n DropdownMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n> & {\n Trigger: typeof Dropdown.Trigger;\n Popper: Intergalactic.Component<'div', DropdownMenuProps>;\n List: Intergalactic.Component<\n 'div',\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Actions: Intergalactic.Component<\n typeof Flex,\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Menu: Intergalactic.Component<\n 'div',\n DropdownMenuMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Item: Intergalactic.Component<\n typeof Dropdown.Item,\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n Addon: typeof Box;\n Content: typeof Flex;\n Text: typeof Text;\n Hint: typeof Flex;\n };\n /**\n * @deprecated Use Group with title prop\n */\n ItemTitle: Intergalactic.Component<'div', DropdownMenuItemTitleProps>;\n /**\n * @deprecated Use prop subTitle on Group or Item component\n */\n ItemHint: Intergalactic.Component<'div', DropdownMenuItemHintProps>;\n Group: typeof Dropdown.Group;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Nesting: Intergalactic.Component<\n 'div',\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n /**\n * @deprecated Use Item instead of Nesting\n */\n Trigger: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Item: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Addon: typeof Box;\n };\n\n selectedIndexContext: React.Context<number>;\n};\n\nexport default DropdownMenu;\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport Dropdown, {\n DropdownContext,\n DropdownProps,\n DropdownHandlers,\n DropdownTriggerProps,\n DropdownPopperAriaProps,\n} from '@semcore/dropdown';\nimport { Box, BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { ScrollAreaProps } from '@semcore/scroll-area';\nimport { Text } from '@semcore/typography';\n\nexport type DropdownMenuSize = 'm' | 'l';\n\n/** @deprecated */\nexport interface IDropdownMenuProps extends DropdownMenuProps, UnknownProperties {}\nexport type DropdownMenuProps = DropdownProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n /**\n * Index of the element selected by default\n */\n defaultHighlightedIndex?: number | null;\n /**\n * Index of the selected item\n */\n highlightedIndex?: number | null;\n /**\n * Callback for highlightedIndex change\n * highlightedIndex - Index of the selected item\n */\n onHighlightedIndexChange?: (highlightedIndex: number | null) => void;\n locale?: string;\n /**\n * Flag for menu that using as actions on DropdownMenu.Item\n */\n inlineActions?: boolean;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuListProps extends DropdownMenuListProps, UnknownProperties {}\nexport type DropdownMenuListProps = BoxProps &\n ScrollAreaProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n };\n\n/** @deprecated */\nexport interface IDropdownMenuMenuProps extends DropdownMenuMenuProps, UnknownProperties {}\nexport type DropdownMenuMenuProps = DropdownMenuListProps & {};\n\n/** @deprecated */\nexport interface IDropdownMenuItemProps extends DropdownMenuItemProps, UnknownProperties {}\nexport type DropdownMenuItemProps = FlexProps & {\n /**\n * Enables selected state\n * @deprecated Dropdown menu item can't have that state\n */\n selected?: boolean;\n /**\n * Disables item\n */\n disabled?: boolean;\n /**\n * Adds focus styles around\n */\n highlighted?: boolean;\n /**\n * Disables hover state\n * @deprecated use `disabled` instead\n */\n notInteractive?: boolean;\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemHintProps extends DropdownMenuItemHintProps, UnknownProperties {}\nexport type DropdownMenuItemHintProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemTitleProps\n extends DropdownMenuItemTitleProps,\n UnknownProperties {}\nexport type DropdownMenuItemTitleProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuContext extends DropdownMenuContext, UnknownProperties {}\nexport type DropdownMenuContext = DropdownContext & {\n highlightedIndex?: number;\n getListProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getItemHintProps: PropGetterFn;\n getItemTitleProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuHandlers extends DropdownMenuHandlers, UnknownProperties {}\nexport type DropdownMenuHandlers = DropdownHandlers & {\n highlightedIndex: (index: number) => void;\n};\n\nexport type DropdownMenuTriggerProps = DropdownTriggerProps;\n\ndeclare const DropdownMenu: Intergalactic.Component<\n 'div',\n DropdownMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n> & {\n Trigger: typeof Dropdown.Trigger;\n Popper: Intergalactic.Component<'div', DropdownMenuProps & DropdownPopperAriaProps>;\n List: Intergalactic.Component<\n 'div',\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Actions: Intergalactic.Component<\n typeof Flex,\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Menu: Intergalactic.Component<\n 'div',\n DropdownMenuMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Item: Intergalactic.Component<\n typeof Dropdown.Item,\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n Addon: typeof Box;\n Content: typeof Flex;\n Text: typeof Text;\n Hint: typeof Flex;\n };\n /**\n * @deprecated Use Group with title prop\n */\n ItemTitle: Intergalactic.Component<'div', DropdownMenuItemTitleProps>;\n /**\n * @deprecated Use prop subTitle on Group or Item component\n */\n ItemHint: Intergalactic.Component<'div', DropdownMenuItemHintProps>;\n Group: typeof Dropdown.Group;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Nesting: Intergalactic.Component<\n 'div',\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n /**\n * @deprecated Use Item instead of Nesting\n */\n Trigger: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Item: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Addon: typeof Box;\n };\n\n selectedIndexContext: React.Context<number>;\n};\n\nexport default DropdownMenu;\n"],"mappings":""}
@@ -35,24 +35,24 @@ import ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from '@se
35
35
  import { useUID } from '@semcore/utils/lib/uniqueID';
36
36
  import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
37
37
  /*__reshadow-styles__:"./style/dropdown-menu.shadow.css"*/
38
- var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuList_br0nj_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;position:relative;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_:after,.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_median_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_median_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_start_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowHorizontal_br0nj_gg_._position_end_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_:after,.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_median_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_median_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_start_br0nj_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_br0nj_gg_ .___SShadowVertical_br0nj_gg_._position_end_br0nj_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItemContainer_br0nj_gg_.__nesting-trigger_br0nj_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_br0nj_gg_,.___SItemContentText_br0nj_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-1x, 4px);margin-right:var(--intergalactic-spacing-1x, 4px)}.___SDropdownMenuItemAddon_br0nj_gg_:first-child,.___SItemContentText_br0nj_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_br0nj_gg_:last-child,.___SItemContentText_br0nj_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_br0nj_gg_,.___SDropdownMenuNesting_br0nj_gg_._size_l_br0nj_gg_,.___SDropdownMenuNesting_br0nj_gg_._size_m_br0nj_gg_{padding:0}.___SDropdownMenuNesting_br0nj_gg_.__highlighted_br0nj_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_br0nj_gg_._size_l_br0nj_gg_,.___SDropdownNestingItem_br0nj_gg_._size_m_br0nj_gg_{padding-right:0}.___SDropdownNestingItem_br0nj_gg_ .___SDropdownMenuItemContainer_br0nj_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}.___SItemContent_br0nj_gg_:focus{outline:0}.___SItemHint_br0nj_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}" /*__inner_css_end__*/, "br0nj_gg_") /*__reshadow_css_end__*/, {
39
- "__SDropdownMenuItemContainer": "___SDropdownMenuItemContainer_br0nj_gg_",
40
- "_nesting-trigger": "__nesting-trigger_br0nj_gg_",
41
- "__SDropdownMenuNesting": "___SDropdownMenuNesting_br0nj_gg_",
42
- "_size_l": "_size_l_br0nj_gg_",
43
- "_size_m": "_size_m_br0nj_gg_",
44
- "_highlighted": "__highlighted_br0nj_gg_",
45
- "__SDropdownNestingItem": "___SDropdownNestingItem_br0nj_gg_",
46
- "__SItemContent": "___SItemContent_br0nj_gg_",
47
- "__SItemHint": "___SItemHint_br0nj_gg_",
48
- "__SDropdownMenuList": "___SDropdownMenuList_br0nj_gg_",
49
- "__SShadowHorizontal": "___SShadowHorizontal_br0nj_gg_",
50
- "_position_median": "_position_median_br0nj_gg_",
51
- "_position_start": "_position_start_br0nj_gg_",
52
- "_position_end": "_position_end_br0nj_gg_",
53
- "__SShadowVertical": "___SShadowVertical_br0nj_gg_",
54
- "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_br0nj_gg_",
55
- "__SItemContentText": "___SItemContentText_br0nj_gg_"
38
+ var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuList_10zcc_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;position:relative;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_:after,.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_median_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_median_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_start_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-left,\n linear-gradient(to right, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowHorizontal_10zcc_gg_._position_end_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-right,\n linear-gradient(to left, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_:after,.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_median_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_median_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_start_10zcc_gg_:before{background:var(--intergalactic-scroll-area-dropdown-menu-top,\n linear-gradient(to bottom, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuList_10zcc_gg_ .___SShadowVertical_10zcc_gg_._position_end_10zcc_gg_:after{background:var(--intergalactic-scroll-area-dropdown-menu-bottom,\n linear-gradient(to top, rgba(255, 255, 255, 1) 34.38%, rgba(255, 255, 255, 0) 100%)\n )}.___SDropdownMenuItemContainer_10zcc_gg_.__nesting-trigger_10zcc_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_10zcc_gg_,.___SItemContentText_10zcc_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-1x, 4px);margin-right:var(--intergalactic-spacing-1x, 4px)}.___SDropdownMenuItemAddon_10zcc_gg_:first-child,.___SItemContentText_10zcc_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_10zcc_gg_:last-child,.___SItemContentText_10zcc_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_10zcc_gg_,.___SDropdownMenuNesting_10zcc_gg_._size_l_10zcc_gg_,.___SDropdownMenuNesting_10zcc_gg_._size_m_10zcc_gg_{padding:0}.___SDropdownMenuNesting_10zcc_gg_.__highlighted_10zcc_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_10zcc_gg_._size_l_10zcc_gg_,.___SDropdownNestingItem_10zcc_gg_._size_m_10zcc_gg_{padding-right:0}.___SDropdownNestingItem_10zcc_gg_ .___SDropdownMenuItemContainer_10zcc_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}.___SItemContent_10zcc_gg_:focus{outline:0}.___SItemHint_10zcc_gg_{color:var(--intergalactic-text-secondary, #6c6e79)}" /*__inner_css_end__*/, "10zcc_gg_") /*__reshadow_css_end__*/, {
39
+ "__SDropdownMenuItemContainer": "___SDropdownMenuItemContainer_10zcc_gg_",
40
+ "_nesting-trigger": "__nesting-trigger_10zcc_gg_",
41
+ "__SDropdownMenuNesting": "___SDropdownMenuNesting_10zcc_gg_",
42
+ "_size_l": "_size_l_10zcc_gg_",
43
+ "_size_m": "_size_m_10zcc_gg_",
44
+ "_highlighted": "__highlighted_10zcc_gg_",
45
+ "__SDropdownNestingItem": "___SDropdownNestingItem_10zcc_gg_",
46
+ "__SItemContent": "___SItemContent_10zcc_gg_",
47
+ "__SItemHint": "___SItemHint_10zcc_gg_",
48
+ "__SDropdownMenuList": "___SDropdownMenuList_10zcc_gg_",
49
+ "__SShadowHorizontal": "___SShadowHorizontal_10zcc_gg_",
50
+ "_position_median": "_position_median_10zcc_gg_",
51
+ "_position_start": "_position_start_10zcc_gg_",
52
+ "_position_end": "_position_end_10zcc_gg_",
53
+ "__SShadowVertical": "___SShadowVertical_10zcc_gg_",
54
+ "__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_10zcc_gg_",
55
+ "__SItemContentText": "___SItemContentText_10zcc_gg_"
56
56
  });
57
57
  import { useFocusSource } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';
58
58
  import { isAdvanceMode } from '@semcore/utils/lib/findComponent';
@@ -77,6 +77,7 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
77
77
  args[_key] = arguments[_key];
78
78
  }
79
79
  _this = _super.call.apply(_super, [this].concat(args));
80
+ _defineProperty(_assertThisInitialized(_this), "actionsRef", /*#__PURE__*/React.createRef());
80
81
  _defineProperty(_assertThisInitialized(_this), "role", 'menu');
81
82
  return _this;
82
83
  }
@@ -114,27 +115,31 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
114
115
  key: "getPopperProps",
115
116
  value: function getPopperProps() {
116
117
  return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(DropdownMenuRoot.prototype), "getPopperProps", this).call(this)), {}, {
117
- onKeyDown: callAllEventHandlers(this.handlePreventCommonKeyDown.bind(this), this.handlePreventPopperKeyDown.bind(this)
118
- // this.handleKeyDownForPopper.bind(this),
119
- )
118
+ onKeyDown: callAllEventHandlers(this.handlePreventCommonKeyDown.bind(this), this.handlePreventPopperKeyDown.bind(this))
120
119
  });
121
120
  }
122
121
  }, {
123
122
  key: "getActionsProps",
124
123
  value: function getActionsProps() {
125
- return this.getListProps();
124
+ return _objectSpread(_objectSpread({}, this.getListProps()), {}, {
125
+ ref: this.actionsRef,
126
+ onKeyDown: callAllEventHandlers(this.handlePreventTabOnActions.bind(this), this.handlePreventCommonKeyDown.bind(this), this.handleKeyDownForMenu('list'), this.handleArrowKeyDown.bind(this))
127
+ });
126
128
  }
127
129
  }, {
128
130
  key: "getItemProps",
129
131
  value: function getItemProps(props, index) {
130
132
  var _this2 = this;
131
- var highlightedIndex = this.asProps.highlightedIndex;
133
+ var _this$asProps2 = this.asProps,
134
+ highlightedIndex = _this$asProps2.highlightedIndex,
135
+ visible = _this$asProps2.visible;
132
136
  var isHighlighted = index === highlightedIndex;
133
137
  var itemProps = _objectSpread(_objectSpread({}, _get(_getPrototypeOf(DropdownMenuRoot.prototype), "getItemProps", this).call(this, props, index)), {}, {
134
- tabIndex: isHighlighted ? 0 : -1,
138
+ tabIndex: isHighlighted && visible ? 0 : -1,
135
139
  ref: function ref(node) {
136
140
  return _this2.itemRef(props, index, node);
137
- }
141
+ },
142
+ actionsRef: this.actionsRef
138
143
  });
139
144
  if (props.tag === ButtonComponent) {
140
145
  var _props$use, _props$theme, _props$size;
@@ -180,15 +185,24 @@ var DropdownMenuRoot = /*#__PURE__*/function (_AbstractDropdown) {
180
185
  }
181
186
  };
182
187
  }
188
+ }, {
189
+ key: "handlePreventTabOnActions",
190
+ value: function handlePreventTabOnActions(e) {
191
+ if (e.key === 'Tab') {
192
+ e.stopPropagation();
193
+ e.preventDefault();
194
+ return false;
195
+ }
196
+ }
183
197
  }, {
184
198
  key: "render",
185
199
  value: function render() {
186
200
  var _ref = this.asProps;
187
- var _this$asProps2 = this.asProps,
188
- Children = _this$asProps2.Children,
189
- selectedIndex = _this$asProps2.selectedIndex,
190
- interaction = _this$asProps2.interaction,
191
- timeout = _this$asProps2.timeout;
201
+ var _this$asProps3 = this.asProps,
202
+ Children = _this$asProps3.Children,
203
+ selectedIndex = _this$asProps3.selectedIndex,
204
+ interaction = _this$asProps3.interaction,
205
+ timeout = _this$asProps3.timeout;
192
206
  this.itemProps = [];
193
207
  return /*#__PURE__*/React.createElement(selectedIndexContext.Provider, {
194
208
  value: selectedIndex
@@ -267,7 +281,9 @@ function Item(_ref25) {
267
281
  disabled = _ref25.disabled,
268
282
  Children = _ref25.Children,
269
283
  forwardRef = _ref25.forwardRef,
270
- role = _ref25.role;
284
+ role = _ref25.role,
285
+ tabIndex = _ref25.tabIndex,
286
+ actionsRef = _ref25.actionsRef;
271
287
  var SDropdownMenuItemContainer = Dropdown.Item;
272
288
  var itemRef = React.useRef();
273
289
  var _React$useState = React.useState(false),
@@ -277,7 +293,8 @@ function Item(_ref25) {
277
293
  var menuItemContextValue = {
278
294
  contentId: id,
279
295
  ref: forkRef(forwardRef, itemRef),
280
- role: role
296
+ role: role,
297
+ tabIndex: tabIndex
281
298
  };
282
299
  var ariaDescribes = [];
283
300
  var hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);
@@ -304,6 +321,9 @@ function Item(_ref25) {
304
321
  var onBlur = function onBlur(e) {
305
322
  if (e.target === itemRef.current) {
306
323
  setHighlighted(false);
324
+ if (actionsRef.current) {
325
+ itemRef.current.tabIndex = -1;
326
+ }
307
327
  }
308
328
  };
309
329
  document.addEventListener('focus', onFocus, {
@@ -329,7 +349,7 @@ function Item(_ref25) {
329
349
  "use:highlighted": !disabled && highlighted && focusSourceRef.current === 'keyboard',
330
350
  "use:role": advancedMode ? undefined : role,
331
351
  "use:id": advancedMode ? undefined : id,
332
- "tabIndex": advancedMode ? undefined : -1
352
+ "use:tabIndex": advancedMode ? -1 : tabIndex
333
353
  }, _ref5))), /*#__PURE__*/React.createElement(Children, _ref16.cn("Children", {}))));
334
354
  }
335
355
  function Addon(props) {
@@ -376,7 +396,7 @@ function ItemContent(_ref26) {
376
396
  return _ref17 = sstyled(styles), /*#__PURE__*/React.createElement(SItemContent, _ref17.cn("SItemContent", _objectSpread({}, _assignProps7({
377
397
  "role": menuItemCtxValue.role,
378
398
  "id": menuItemCtxValue.contentId,
379
- "tabIndex": -1,
399
+ "tabIndex": menuItemCtxValue.tabIndex,
380
400
  "ref": forkRef(menuItemCtxValue.ref, ref),
381
401
  "use:aria-describedby": _toConsumableArray(describedby).join(' '),
382
402
  "aria-haspopup": menuItemCtxValue.hasSubMenu ? 'true' : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownMenu.js","names":["React","cn","createComponent","sstyled","Root","Dropdown","AbstractDropdown","selectedIndexContext","enhance","Flex","useBox","ScrollAreaComponent","hideScrollBarsFromScreenReadersContext","useUID","localizedMessages","style","_sstyled","insert","useFocusSource","isAdvanceMode","forkRef","callAllEventHandlers","ButtonComponent","Text","ListBoxContextProvider","_ref22","children","createElement","Provider","value","menuItemContext","createContext","DropdownMenuRoot","_AbstractDropdown","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","_createClass","key","itemRef","props","index","node","_get","_getPrototypeOf","prototype","document","activeElement","getTriggerProps","_this$asProps","asProps","Children","uid","visible","hasMenu","DropdownMenu","Menu","displayName","ariaControls","_objectSpread","onKeyDown","handlePreventCommonKeyDown","bind","handleOpenKeyDown","handleKeyDownForMenu","undefined","getListProps","handleArrowKeyDown","getPopperProps","handlePreventPopperKeyDown","getActionsProps","getItemProps","_this2","highlightedIndex","isHighlighted","itemProps","tabIndex","ref","tag","_props$use","_props$theme","_props$size","use","theme","size","place","_this3","e","_this3$asProps","placement","inlineActions","show","startsWith","hide","isMenuItem","target","getAttribute","handlers","setTimeout","_this3$itemRefs$highl","itemRefs","focus","preventDefault","stopPropagation","_this3$triggerRef$cur","triggerRef","current","render","_ref","_this$asProps2","selectedIndex","interaction","timeout","_assignProps","Object","values","defaultVisible","defaultHighlightedIndex","defaultSelectedIndex","i18n","locale","List","_ref23","_ref2","arguments[0]","_ref14","styles","SDropdownMenuList","_assignProps2","Container","Bar","orientation","Actions","_ref24","_ref3","_ref15","SDropdownMenuActions","_assignProps3","_ref4","disablePortal","ignorePortalsStacking","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","Popper","_extends","role","_assignProps4","Item","_ref25","_ref5","_ref16","id","disabled","forwardRef","SDropdownMenuItemContainer","useRef","_React$useState","useState","_React$useState2","_slicedToArray","highlighted","setHighlighted","menuItemContextValue","contentId","ariaDescribes","hasSubMenu","hasHint","Hint","advancedMode","Content","hintId","push","useEffect","onFocus","onBlur","addEventListener","capture","removeEventListener","focusSourceRef","_assignProps5","Addon","_useBox","_useBox2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties","_excluded","Trigger","_ref6","_assignProps6","ItemContent","_ref26","_ref7","_ref17","SItemContent","menuItemCtxValue","useContext","subMenu","_React$useState3","Set","_React$useState4","describedby","setDescribedby","element","parent","parentElement","prev","add","_assignProps7","_toConsumableArray","join","ItemContentText","_ref27","_ref8","_ref18","SItemContentText","_assignProps8","ItemHint","_ref28","_ref9","_ref19","SItemHint","_React$useContext","_assignProps9","_ref10","_ref20","_assignProps10","Title","_ref11","_ref21","_assignProps11","Nesting","_ref29","_ref12","_assignProps12","NestingTrigger","_ref30","_ref13","_assignProps13","ItemTitle","Group"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { sstyled, Root } from '@semcore/core';\nimport Dropdown, { AbstractDropdown, selectedIndexContext, enhance } from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from '@semcore/scroll-area';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport style from './style/dropdown-menu.shadow.css';\nimport { useFocusSource } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonComponent from '@semcore/button';\nimport { Text } from '@semcore/typography';\n\nconst ListBoxContextProvider = ({ children }) => (\n <hideScrollBarsFromScreenReadersContext.Provider value={true}>\n {children}\n </hideScrollBarsFromScreenReadersContext.Provider>\n);\n\nconst menuItemContext = React.createContext({});\n\nclass DropdownMenuRoot extends AbstractDropdown {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = Object.values(enhance);\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: 0,\n defaultSelectedIndex: 0,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n inlineActions: false,\n placement: 'bottom-start',\n timeout: 0,\n };\n\n role = 'menu';\n\n itemRef(props, index, node) {\n super.itemRef(props, index, node);\n\n if (node === document.activeElement) {\n super.scrollToNode(node);\n }\n }\n\n getTriggerProps() {\n const { Children, uid, visible } = this.asProps;\n const hasMenu = isAdvanceMode(Children, [DropdownMenu.Menu.displayName]);\n const ariaControls = hasMenu ? `igc-${uid}-list` : `igc-${uid}-popper`;\n\n return {\n ...super.getTriggerProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleOpenKeyDown.bind(this),\n this.handleKeyDownForMenu('trigger'),\n ),\n 'aria-controls': visible ? ariaControls : undefined,\n 'aria-haspopup': hasMenu ? 'true' : 'dialog',\n };\n }\n\n getListProps() {\n return {\n ...super.getListProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handlePreventPopperKeyDown.bind(this),\n // this.handleKeyDownForPopper.bind(this),\n ),\n };\n }\n\n getActionsProps() {\n return this.getListProps();\n }\n\n getItemProps(props, index) {\n const { highlightedIndex } = this.asProps;\n const isHighlighted = index === highlightedIndex;\n\n const itemProps = {\n ...super.getItemProps(props, index),\n tabIndex: isHighlighted ? 0 : -1,\n ref: (node) => this.itemRef(props, index, node),\n };\n\n if (props.tag === ButtonComponent) {\n itemProps.use = props.use ?? 'tertiary';\n itemProps.theme = props.theme ?? 'muted';\n itemProps.size = props.size ?? 's';\n }\n\n return itemProps;\n }\n\n handleKeyDownForMenu(place) {\n return (e) => {\n const { visible, placement, inlineActions } = this.asProps;\n\n const show =\n (e.key === 'ArrowRight' && placement?.startsWith('right')) ||\n (e.key === 'ArrowLeft' && placement?.startsWith('left'));\n const hide =\n (e.key === 'ArrowLeft' && placement?.startsWith('right')) ||\n (e.key === 'ArrowRight' && placement?.startsWith('left')) ||\n e.key === 'Escape';\n const isMenuItem = e.target.getAttribute('role') === super.childRole;\n\n if (place === 'trigger' && (!visible || inlineActions) && show && isMenuItem) {\n this.handlers.visible(true);\n this.handlers.highlightedIndex(0);\n setTimeout(() => {\n const { highlightedIndex } = this.asProps;\n this.itemRefs[highlightedIndex]?.focus();\n }, 0);\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n if (place === 'list' && visible && hide && isMenuItem) {\n if (\n !inlineActions ||\n (inlineActions && (e.key === 'Escape' || this.asProps.highlightedIndex === 0))\n ) {\n this.handlers.visible(false);\n this.triggerRef.current?.focus();\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n };\n }\n\n render() {\n const { Children, selectedIndex, interaction, timeout } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <selectedIndexContext.Provider value={selectedIndex}>\n <Root\n render={Dropdown}\n timeout={timeout || (interaction === 'hover' ? [0, 100] : undefined)}\n >\n <Children />\n </Root>\n </selectedIndexContext.Provider>\n );\n }\n}\n\nfunction List({ styles, Children }) {\n const SDropdownMenuList = Root;\n\n return sstyled(styles)(\n <ListBoxContextProvider>\n <SDropdownMenuList render={ScrollAreaComponent} shadow={true}>\n <ScrollAreaComponent.Container tabIndex={undefined}>\n <Children />\n </ScrollAreaComponent.Container>\n <ScrollAreaComponent.Bar orientation='horizontal' />\n <ScrollAreaComponent.Bar orientation='vertical' />\n </SDropdownMenuList>\n </ListBoxContextProvider>,\n );\n}\nfunction Actions({ styles }) {\n const SDropdownMenuActions = Root;\n\n return sstyled(styles)(<SDropdownMenuActions render={Flex} />);\n}\n\nfunction Menu(props) {\n const {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n } = props;\n const popperProps = {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n };\n return (\n <ListBoxContextProvider>\n <DropdownMenu.Popper {...popperProps} role={null}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n </ListBoxContextProvider>\n );\n}\n\nfunction Item({ id, styles, disabled, Children, forwardRef, role }) {\n const SDropdownMenuItemContainer = Root;\n const itemRef = React.useRef();\n\n const [highlighted, setHighlighted] = React.useState(false);\n\n const menuItemContextValue = {\n contentId: id,\n ref: forkRef(forwardRef, itemRef),\n role,\n };\n const ariaDescribes = [];\n\n const hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);\n const hasHint = isAdvanceMode(Children, [DropdownMenu.Item.Hint.displayName], true);\n const advancedMode =\n isAdvanceMode(Children, [DropdownMenu.Item.Content.displayName], true) || hasSubMenu || hasHint;\n\n if (hasHint) {\n const hintId = `igc-${useUID()}-option-hint`;\n\n menuItemContextValue.hintId = hintId;\n ariaDescribes.push(hintId);\n }\n\n if (hasSubMenu) {\n menuItemContextValue.hasSubMenu = true;\n }\n\n menuItemContextValue.ariaDescribes = ariaDescribes;\n\n React.useEffect(() => {\n const onFocus = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(true);\n\n if (hasSubMenu) {\n e.stopPropagation();\n }\n }\n };\n const onBlur = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(false);\n }\n };\n\n document.addEventListener('focus', onFocus, { capture: true });\n document.addEventListener('blur', onBlur, { capture: true });\n\n return () => {\n document.removeEventListener('focus', onFocus, { capture: true });\n document.removeEventListener('blur', onBlur, { capture: true });\n };\n }, [itemRef.current]);\n\n const focusSourceRef = useFocusSource();\n\n return sstyled(styles)(\n <menuItemContext.Provider value={menuItemContextValue}>\n <SDropdownMenuItemContainer\n render={Dropdown.Item}\n ref={advancedMode ? undefined : menuItemContextValue.ref}\n use:highlighted={!disabled && highlighted && focusSourceRef.current === 'keyboard'}\n use:role={advancedMode ? undefined : role}\n use:id={advancedMode ? undefined : id}\n tabIndex={advancedMode ? undefined : -1}\n >\n <Children />\n </SDropdownMenuItemContainer>\n </menuItemContext.Provider>,\n );\n}\n\nfunction Addon(props) {\n const [SDropdownMenuItemAddon, { className, ...other }] = useBox(props, props.forwardRef);\n const styles = sstyled(props.styles);\n return (\n <SDropdownMenuItemAddon\n className={cn(styles.cn('SDropdownMenuItemAddon', props).className, className) || undefined}\n {...other}\n />\n );\n}\n\nfunction Trigger() {\n return <Root render={Dropdown.Trigger} />;\n}\n\nfunction ItemContent({ styles }) {\n const SItemContent = Root;\n const ref = React.useRef();\n const menuItemCtxValue = React.useContext(menuItemContext);\n\n let subMenu = undefined;\n\n if (menuItemCtxValue.hasSubMenu) {\n subMenu = 'true';\n }\n\n const [describedby, setDescribedby] = React.useState(new Set(menuItemCtxValue.ariaDescribes));\n\n React.useEffect(() => {\n const element = ref.current;\n const parent = element?.parentElement;\n\n if (\n parent.getAttribute('aria-haspopup') === 'true' &&\n parent.getAttribute('aria-describedby')\n ) {\n setDescribedby((prev) => {\n prev.add(parent.getAttribute('aria-describedby'));\n\n return new Set(prev);\n });\n }\n }, [menuItemCtxValue.ariaDescribes]);\n\n return sstyled(styles)(\n <SItemContent\n render={Flex}\n role={menuItemCtxValue.role}\n id={menuItemCtxValue.contentId}\n tabIndex={-1}\n ref={forkRef(menuItemCtxValue.ref, ref)}\n use:aria-describedby={[...describedby].join(' ')}\n aria-haspopup={menuItemCtxValue.hasSubMenu ? 'true' : undefined}\n aria-expanded={subMenu}\n alignItems='center'\n justifyContent={menuItemCtxValue.hasSubMenu ? 'space-between' : undefined}\n />,\n );\n}\n\nfunction ItemContentText({ styles }) {\n const SItemContentText = Root;\n return sstyled(styles)(<SItemContentText render={Text} />);\n}\n\nfunction ItemHint({ styles }) {\n const SItemHint = Root;\n const { hintId } = React.useContext(menuItemContext);\n\n return sstyled(styles)(<SItemHint render={Flex} id={hintId} aria-hidden={'true'} />);\n}\n\n/**\n * @deprecated Use Item hint\n */\nfunction Hint(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='hint' />,\n );\n}\n/**\n * @deprecated Use Group with title prop\n */\nfunction Title(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='title' />,\n );\n}\n\n/**\n * @deprecated\n */\nfunction Nesting({ forwardRef }) {\n return <Root render={DropdownMenu.Item} ref={forwardRef} />;\n}\n\n/**\n * @deprecated\n */\nfunction NestingTrigger({ forwardRef }) {\n return (\n <Root\n render={DropdownMenu.Item.Content}\n tag={DropdownMenu.Trigger}\n ref={forwardRef}\n use:role={'menuitem'}\n />\n );\n}\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Actions,\n Menu,\n Item: [Item, { Addon, Content: ItemContent, Text: ItemContentText, Hint: ItemHint }],\n /**\n * @deprecated. Use just Item. See examples on\n */\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon }],\n ItemTitle: Title,\n ItemHint: Hint,\n Group: Dropdown.Group,\n },\n {\n parent: [Dropdown],\n },\n);\n\nDropdownMenu.selectedIndexContext = selectedIndexContext;\n\nexport default DropdownMenu;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DropdownMenu.js","names":["React","cn","createComponent","sstyled","Root","Dropdown","AbstractDropdown","selectedIndexContext","enhance","Flex","useBox","ScrollAreaComponent","hideScrollBarsFromScreenReadersContext","useUID","localizedMessages","style","_sstyled","insert","useFocusSource","isAdvanceMode","forkRef","callAllEventHandlers","ButtonComponent","Text","ListBoxContextProvider","_ref22","children","createElement","Provider","value","menuItemContext","createContext","DropdownMenuRoot","_AbstractDropdown","_inherits","_super","_createSuper","_this","_classCallCheck","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty","_assertThisInitialized","createRef","_createClass","key","itemRef","props","index","node","_get","_getPrototypeOf","prototype","document","activeElement","getTriggerProps","_this$asProps","asProps","Children","uid","visible","hasMenu","DropdownMenu","Menu","displayName","ariaControls","_objectSpread","onKeyDown","handlePreventCommonKeyDown","bind","handleOpenKeyDown","handleKeyDownForMenu","undefined","getListProps","handleArrowKeyDown","getPopperProps","handlePreventPopperKeyDown","getActionsProps","ref","actionsRef","handlePreventTabOnActions","getItemProps","_this2","_this$asProps2","highlightedIndex","isHighlighted","itemProps","tabIndex","tag","_props$use","_props$theme","_props$size","use","theme","size","place","_this3","e","_this3$asProps","placement","inlineActions","show","startsWith","hide","isMenuItem","target","getAttribute","handlers","setTimeout","_this3$itemRefs$highl","itemRefs","focus","preventDefault","stopPropagation","_this3$triggerRef$cur","triggerRef","current","render","_ref","_this$asProps3","selectedIndex","interaction","timeout","_assignProps","Object","values","defaultVisible","defaultHighlightedIndex","defaultSelectedIndex","i18n","locale","List","_ref23","_ref2","arguments[0]","_ref14","styles","SDropdownMenuList","_assignProps2","Container","Bar","orientation","Actions","_ref24","_ref3","_ref15","SDropdownMenuActions","_assignProps3","_ref4","disablePortal","ignorePortalsStacking","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","Popper","_extends","role","_assignProps4","Item","_ref25","_ref5","_ref16","id","disabled","forwardRef","SDropdownMenuItemContainer","useRef","_React$useState","useState","_React$useState2","_slicedToArray","highlighted","setHighlighted","menuItemContextValue","contentId","ariaDescribes","hasSubMenu","hasHint","Hint","advancedMode","Content","hintId","push","useEffect","onFocus","onBlur","addEventListener","capture","removeEventListener","focusSourceRef","_assignProps5","Addon","_useBox","_useBox2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties","_excluded","Trigger","_ref6","_assignProps6","ItemContent","_ref26","_ref7","_ref17","SItemContent","menuItemCtxValue","useContext","subMenu","_React$useState3","Set","_React$useState4","describedby","setDescribedby","element","parent","parentElement","prev","add","_assignProps7","_toConsumableArray","join","ItemContentText","_ref27","_ref8","_ref18","SItemContentText","_assignProps8","ItemHint","_ref28","_ref9","_ref19","SItemHint","_React$useContext","_assignProps9","_ref10","_ref20","_assignProps10","Title","_ref11","_ref21","_assignProps11","Nesting","_ref29","_ref12","_assignProps12","NestingTrigger","_ref30","_ref13","_assignProps13","ItemTitle","Group"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { sstyled, Root } from '@semcore/core';\nimport Dropdown, { AbstractDropdown, selectedIndexContext, enhance } from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent, { hideScrollBarsFromScreenReadersContext } from '@semcore/scroll-area';\nimport { useUID } from '@semcore/utils/lib/uniqueID';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport style from './style/dropdown-menu.shadow.css';\nimport { useFocusSource } from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\nimport { isAdvanceMode } from '@semcore/utils/lib/findComponent';\nimport { forkRef } from '@semcore/utils/lib/ref';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonComponent from '@semcore/button';\nimport { Text } from '@semcore/typography';\n\nconst ListBoxContextProvider = ({ children }) => (\n <hideScrollBarsFromScreenReadersContext.Provider value={true}>\n {children}\n </hideScrollBarsFromScreenReadersContext.Provider>\n);\n\nconst menuItemContext = React.createContext({});\n\nclass DropdownMenuRoot extends AbstractDropdown {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = Object.values(enhance);\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: 0,\n defaultSelectedIndex: 0,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n inlineActions: false,\n placement: 'bottom-start',\n timeout: 0,\n };\n\n actionsRef = React.createRef();\n role = 'menu';\n\n itemRef(props, index, node) {\n super.itemRef(props, index, node);\n\n if (node === document.activeElement) {\n super.scrollToNode(node);\n }\n }\n\n getTriggerProps() {\n const { Children, uid, visible } = this.asProps;\n const hasMenu = isAdvanceMode(Children, [DropdownMenu.Menu.displayName]);\n const ariaControls = hasMenu ? `igc-${uid}-list` : `igc-${uid}-popper`;\n\n return {\n ...super.getTriggerProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleOpenKeyDown.bind(this),\n this.handleKeyDownForMenu('trigger'),\n ),\n 'aria-controls': visible ? ariaControls : undefined,\n 'aria-haspopup': hasMenu ? 'true' : 'dialog',\n };\n }\n\n getListProps() {\n return {\n ...super.getListProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n onKeyDown: callAllEventHandlers(\n this.handlePreventCommonKeyDown.bind(this),\n this.handlePreventPopperKeyDown.bind(this),\n ),\n };\n }\n\n getActionsProps() {\n return {\n ...this.getListProps(),\n ref: this.actionsRef,\n onKeyDown: callAllEventHandlers(\n this.handlePreventTabOnActions.bind(this),\n this.handlePreventCommonKeyDown.bind(this),\n this.handleKeyDownForMenu('list'),\n this.handleArrowKeyDown.bind(this),\n ),\n };\n }\n\n getItemProps(props, index) {\n const { highlightedIndex, visible } = this.asProps;\n const isHighlighted = index === highlightedIndex;\n const itemProps = {\n ...super.getItemProps(props, index),\n tabIndex: isHighlighted && visible ? 0 : -1,\n ref: (node) => this.itemRef(props, index, node),\n actionsRef: this.actionsRef,\n };\n\n if (props.tag === ButtonComponent) {\n itemProps.use = props.use ?? 'tertiary';\n itemProps.theme = props.theme ?? 'muted';\n itemProps.size = props.size ?? 's';\n }\n\n return itemProps;\n }\n\n handleKeyDownForMenu(place) {\n return (e) => {\n const { visible, placement, inlineActions } = this.asProps;\n\n const show =\n (e.key === 'ArrowRight' && placement?.startsWith('right')) ||\n (e.key === 'ArrowLeft' && placement?.startsWith('left'));\n const hide =\n (e.key === 'ArrowLeft' && placement?.startsWith('right')) ||\n (e.key === 'ArrowRight' && placement?.startsWith('left')) ||\n e.key === 'Escape';\n const isMenuItem = e.target.getAttribute('role') === super.childRole;\n\n if (place === 'trigger' && (!visible || inlineActions) && show && isMenuItem) {\n this.handlers.visible(true);\n this.handlers.highlightedIndex(0);\n setTimeout(() => {\n const { highlightedIndex } = this.asProps;\n this.itemRefs[highlightedIndex]?.focus();\n }, 0);\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n if (place === 'list' && visible && hide && isMenuItem) {\n if (\n !inlineActions ||\n (inlineActions && (e.key === 'Escape' || this.asProps.highlightedIndex === 0))\n ) {\n this.handlers.visible(false);\n this.triggerRef.current?.focus();\n\n e.preventDefault();\n e.stopPropagation();\n return false;\n }\n }\n };\n }\n\n handlePreventTabOnActions(e) {\n if (e.key === 'Tab') {\n e.stopPropagation();\n e.preventDefault();\n return false;\n }\n }\n\n render() {\n const { Children, selectedIndex, interaction, timeout } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <selectedIndexContext.Provider value={selectedIndex}>\n <Root\n render={Dropdown}\n timeout={timeout || (interaction === 'hover' ? [0, 100] : undefined)}\n >\n <Children />\n </Root>\n </selectedIndexContext.Provider>\n );\n }\n}\n\nfunction List({ styles, Children }) {\n const SDropdownMenuList = Root;\n\n return sstyled(styles)(\n <ListBoxContextProvider>\n <SDropdownMenuList render={ScrollAreaComponent} shadow={true}>\n <ScrollAreaComponent.Container tabIndex={undefined}>\n <Children />\n </ScrollAreaComponent.Container>\n <ScrollAreaComponent.Bar orientation='horizontal' />\n <ScrollAreaComponent.Bar orientation='vertical' />\n </SDropdownMenuList>\n </ListBoxContextProvider>,\n );\n}\nfunction Actions({ styles }) {\n const SDropdownMenuActions = Root;\n\n return sstyled(styles)(<SDropdownMenuActions render={Flex} />);\n}\n\nfunction Menu(props) {\n const {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n } = props;\n const popperProps = {\n visible,\n disablePortal,\n ignorePortalsStacking,\n disableEnforceFocus,\n interaction,\n autoFocus,\n animationsDisabled,\n };\n return (\n <ListBoxContextProvider>\n <DropdownMenu.Popper {...popperProps} role={null}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n </ListBoxContextProvider>\n );\n}\n\nfunction Item({ id, styles, disabled, Children, forwardRef, role, tabIndex, actionsRef }) {\n const SDropdownMenuItemContainer = Root;\n const itemRef = React.useRef();\n\n const [highlighted, setHighlighted] = React.useState(false);\n\n const menuItemContextValue = {\n contentId: id,\n ref: forkRef(forwardRef, itemRef),\n role,\n tabIndex,\n };\n const ariaDescribes = [];\n\n const hasSubMenu = isAdvanceMode(Children, [DropdownMenu.displayName], true);\n const hasHint = isAdvanceMode(Children, [DropdownMenu.Item.Hint.displayName], true);\n const advancedMode =\n isAdvanceMode(Children, [DropdownMenu.Item.Content.displayName], true) || hasSubMenu || hasHint;\n\n if (hasHint) {\n const hintId = `igc-${useUID()}-option-hint`;\n\n menuItemContextValue.hintId = hintId;\n ariaDescribes.push(hintId);\n }\n\n if (hasSubMenu) {\n menuItemContextValue.hasSubMenu = true;\n }\n\n menuItemContextValue.ariaDescribes = ariaDescribes;\n\n React.useEffect(() => {\n const onFocus = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(true);\n\n if (hasSubMenu) {\n e.stopPropagation();\n }\n }\n };\n const onBlur = (e) => {\n if (e.target === itemRef.current) {\n setHighlighted(false);\n\n if (actionsRef.current) {\n itemRef.current.tabIndex = -1;\n }\n }\n };\n\n document.addEventListener('focus', onFocus, { capture: true });\n document.addEventListener('blur', onBlur, { capture: true });\n\n return () => {\n document.removeEventListener('focus', onFocus, { capture: true });\n document.removeEventListener('blur', onBlur, { capture: true });\n };\n }, [itemRef.current]);\n\n const focusSourceRef = useFocusSource();\n\n return sstyled(styles)(\n <menuItemContext.Provider value={menuItemContextValue}>\n <SDropdownMenuItemContainer\n render={Dropdown.Item}\n ref={advancedMode ? undefined : menuItemContextValue.ref}\n use:highlighted={!disabled && highlighted && focusSourceRef.current === 'keyboard'}\n use:role={advancedMode ? undefined : role}\n use:id={advancedMode ? undefined : id}\n use:tabIndex={advancedMode ? -1 : tabIndex}\n >\n <Children />\n </SDropdownMenuItemContainer>\n </menuItemContext.Provider>,\n );\n}\n\nfunction Addon(props) {\n const [SDropdownMenuItemAddon, { className, ...other }] = useBox(props, props.forwardRef);\n const styles = sstyled(props.styles);\n return (\n <SDropdownMenuItemAddon\n className={cn(styles.cn('SDropdownMenuItemAddon', props).className, className) || undefined}\n {...other}\n />\n );\n}\n\nfunction Trigger() {\n return <Root render={Dropdown.Trigger} />;\n}\n\nfunction ItemContent({ styles }) {\n const SItemContent = Root;\n const ref = React.useRef();\n const menuItemCtxValue = React.useContext(menuItemContext);\n\n let subMenu = undefined;\n\n if (menuItemCtxValue.hasSubMenu) {\n subMenu = 'true';\n }\n\n const [describedby, setDescribedby] = React.useState(new Set(menuItemCtxValue.ariaDescribes));\n\n React.useEffect(() => {\n const element = ref.current;\n const parent = element?.parentElement;\n\n if (\n parent.getAttribute('aria-haspopup') === 'true' &&\n parent.getAttribute('aria-describedby')\n ) {\n setDescribedby((prev) => {\n prev.add(parent.getAttribute('aria-describedby'));\n\n return new Set(prev);\n });\n }\n }, [menuItemCtxValue.ariaDescribes]);\n\n return sstyled(styles)(\n <SItemContent\n render={Flex}\n role={menuItemCtxValue.role}\n id={menuItemCtxValue.contentId}\n tabIndex={menuItemCtxValue.tabIndex}\n ref={forkRef(menuItemCtxValue.ref, ref)}\n use:aria-describedby={[...describedby].join(' ')}\n aria-haspopup={menuItemCtxValue.hasSubMenu ? 'true' : undefined}\n aria-expanded={subMenu}\n alignItems='center'\n justifyContent={menuItemCtxValue.hasSubMenu ? 'space-between' : undefined}\n />,\n );\n}\n\nfunction ItemContentText({ styles }) {\n const SItemContentText = Root;\n return sstyled(styles)(<SItemContentText render={Text} />);\n}\n\nfunction ItemHint({ styles }) {\n const SItemHint = Root;\n const { hintId } = React.useContext(menuItemContext);\n\n return sstyled(styles)(<SItemHint render={Flex} id={hintId} aria-hidden={'true'} />);\n}\n\n/**\n * @deprecated Use Item hint\n */\nfunction Hint(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='hint' />,\n );\n}\n/**\n * @deprecated Use Group with title prop\n */\nfunction Title(props) {\n const SDropdownMenuItemContainer = Root;\n return sstyled(props.styles)(\n <SDropdownMenuItemContainer render={Dropdown.Item} variant='title' />,\n );\n}\n\n/**\n * @deprecated\n */\nfunction Nesting({ forwardRef }) {\n return <Root render={DropdownMenu.Item} ref={forwardRef} />;\n}\n\n/**\n * @deprecated\n */\nfunction NestingTrigger({ forwardRef }) {\n return (\n <Root\n render={DropdownMenu.Item.Content}\n tag={DropdownMenu.Trigger}\n ref={forwardRef}\n use:role={'menuitem'}\n />\n );\n}\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Actions,\n Menu,\n Item: [Item, { Addon, Content: ItemContent, Text: ItemContentText, Hint: ItemHint }],\n /**\n * @deprecated. Use just Item. See examples on\n */\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon }],\n ItemTitle: Title,\n ItemHint: Hint,\n Group: Dropdown.Group,\n },\n {\n parent: [Dropdown],\n },\n);\n\nDropdownMenu.selectedIndexContext = selectedIndexContext;\n\nexport default DropdownMenu;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport Dropdown, {\n DropdownContext,\n DropdownProps,\n DropdownHandlers,\n DropdownTriggerProps,\n} from '@semcore/dropdown';\nimport { Box, BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { ScrollAreaProps } from '@semcore/scroll-area';\nimport { Text } from '@semcore/typography';\n\nexport type DropdownMenuSize = 'm' | 'l';\n\n/** @deprecated */\nexport interface IDropdownMenuProps extends DropdownMenuProps, UnknownProperties {}\nexport type DropdownMenuProps = DropdownProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n /**\n * Index of the element selected by default\n */\n defaultHighlightedIndex?: number | null;\n /**\n * Index of the selected item\n */\n highlightedIndex?: number | null;\n /**\n * Callback for highlightedIndex change\n * highlightedIndex - Index of the selected item\n */\n onHighlightedIndexChange?: (highlightedIndex: number | null) => void;\n locale?: string;\n /**\n * Flag for menu that using as actions on DropdownMenu.Item\n */\n inlineActions?: boolean;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuListProps extends DropdownMenuListProps, UnknownProperties {}\nexport type DropdownMenuListProps = BoxProps &\n ScrollAreaProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n };\n\n/** @deprecated */\nexport interface IDropdownMenuMenuProps extends DropdownMenuMenuProps, UnknownProperties {}\nexport type DropdownMenuMenuProps = DropdownMenuListProps & {};\n\n/** @deprecated */\nexport interface IDropdownMenuItemProps extends DropdownMenuItemProps, UnknownProperties {}\nexport type DropdownMenuItemProps = FlexProps & {\n /**\n * Enables selected state\n * @deprecated Dropdown menu item can't have that state\n */\n selected?: boolean;\n /**\n * Disables item\n */\n disabled?: boolean;\n /**\n * Adds focus styles around\n */\n highlighted?: boolean;\n /**\n * Disables hover state\n * @deprecated use `disabled` instead\n */\n notInteractive?: boolean;\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemHintProps extends DropdownMenuItemHintProps, UnknownProperties {}\nexport type DropdownMenuItemHintProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemTitleProps\n extends DropdownMenuItemTitleProps,\n UnknownProperties {}\nexport type DropdownMenuItemTitleProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuContext extends DropdownMenuContext, UnknownProperties {}\nexport type DropdownMenuContext = DropdownContext & {\n highlightedIndex?: number;\n getListProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getItemHintProps: PropGetterFn;\n getItemTitleProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuHandlers extends DropdownMenuHandlers, UnknownProperties {}\nexport type DropdownMenuHandlers = DropdownHandlers & {\n highlightedIndex: (index: number) => void;\n};\n\nexport type DropdownMenuTriggerProps = DropdownTriggerProps;\n\ndeclare const DropdownMenu: Intergalactic.Component<\n 'div',\n DropdownMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n> & {\n Trigger: typeof Dropdown.Trigger;\n Popper: Intergalactic.Component<'div', DropdownMenuProps>;\n List: Intergalactic.Component<\n 'div',\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Actions: Intergalactic.Component<\n typeof Flex,\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Menu: Intergalactic.Component<\n 'div',\n DropdownMenuMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Item: Intergalactic.Component<\n typeof Dropdown.Item,\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n Addon: typeof Box;\n Content: typeof Flex;\n Text: typeof Text;\n Hint: typeof Flex;\n };\n /**\n * @deprecated Use Group with title prop\n */\n ItemTitle: Intergalactic.Component<'div', DropdownMenuItemTitleProps>;\n /**\n * @deprecated Use prop subTitle on Group or Item component\n */\n ItemHint: Intergalactic.Component<'div', DropdownMenuItemHintProps>;\n Group: typeof Dropdown.Group;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Nesting: Intergalactic.Component<\n 'div',\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n /**\n * @deprecated Use Item instead of Nesting\n */\n Trigger: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Item: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Addon: typeof Box;\n };\n\n selectedIndexContext: React.Context<number>;\n};\n\nexport default DropdownMenu;\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import { PropGetterFn, UnknownProperties, Intergalactic } from '@semcore/core';\nimport Dropdown, {\n DropdownContext,\n DropdownProps,\n DropdownHandlers,\n DropdownTriggerProps,\n DropdownPopperAriaProps,\n} from '@semcore/dropdown';\nimport { Box, BoxProps, FlexProps, Flex } from '@semcore/flex-box';\nimport { ScrollAreaProps } from '@semcore/scroll-area';\nimport { Text } from '@semcore/typography';\n\nexport type DropdownMenuSize = 'm' | 'l';\n\n/** @deprecated */\nexport interface IDropdownMenuProps extends DropdownMenuProps, UnknownProperties {}\nexport type DropdownMenuProps = DropdownProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n /**\n * Index of the element selected by default\n */\n defaultHighlightedIndex?: number | null;\n /**\n * Index of the selected item\n */\n highlightedIndex?: number | null;\n /**\n * Callback for highlightedIndex change\n * highlightedIndex - Index of the selected item\n */\n onHighlightedIndexChange?: (highlightedIndex: number | null) => void;\n locale?: string;\n /**\n * Flag for menu that using as actions on DropdownMenu.Item\n */\n inlineActions?: boolean;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuListProps extends DropdownMenuListProps, UnknownProperties {}\nexport type DropdownMenuListProps = BoxProps &\n ScrollAreaProps & {\n /**\n * Size of the menu\n * @default m\n */\n size?: DropdownMenuSize;\n };\n\n/** @deprecated */\nexport interface IDropdownMenuMenuProps extends DropdownMenuMenuProps, UnknownProperties {}\nexport type DropdownMenuMenuProps = DropdownMenuListProps & {};\n\n/** @deprecated */\nexport interface IDropdownMenuItemProps extends DropdownMenuItemProps, UnknownProperties {}\nexport type DropdownMenuItemProps = FlexProps & {\n /**\n * Enables selected state\n * @deprecated Dropdown menu item can't have that state\n */\n selected?: boolean;\n /**\n * Disables item\n */\n disabled?: boolean;\n /**\n * Adds focus styles around\n */\n highlighted?: boolean;\n /**\n * Disables hover state\n * @deprecated use `disabled` instead\n */\n notInteractive?: boolean;\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemHintProps extends DropdownMenuItemHintProps, UnknownProperties {}\nexport type DropdownMenuItemHintProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuItemTitleProps\n extends DropdownMenuItemTitleProps,\n UnknownProperties {}\nexport type DropdownMenuItemTitleProps = FlexProps & {\n /**\n * Size of the component\n * @default m\n */\n size?: DropdownMenuSize;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuContext extends DropdownMenuContext, UnknownProperties {}\nexport type DropdownMenuContext = DropdownContext & {\n highlightedIndex?: number;\n getListProps: PropGetterFn;\n getItemProps: PropGetterFn;\n getItemHintProps: PropGetterFn;\n getItemTitleProps: PropGetterFn;\n};\n\n/** @deprecated */\nexport interface IDropdownMenuHandlers extends DropdownMenuHandlers, UnknownProperties {}\nexport type DropdownMenuHandlers = DropdownHandlers & {\n highlightedIndex: (index: number) => void;\n};\n\nexport type DropdownMenuTriggerProps = DropdownTriggerProps;\n\ndeclare const DropdownMenu: Intergalactic.Component<\n 'div',\n DropdownMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n> & {\n Trigger: typeof Dropdown.Trigger;\n Popper: Intergalactic.Component<'div', DropdownMenuProps & DropdownPopperAriaProps>;\n List: Intergalactic.Component<\n 'div',\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Actions: Intergalactic.Component<\n typeof Flex,\n DropdownMenuListProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Menu: Intergalactic.Component<\n 'div',\n DropdownMenuMenuProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n >;\n Item: Intergalactic.Component<\n typeof Dropdown.Item,\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n Addon: typeof Box;\n Content: typeof Flex;\n Text: typeof Text;\n Hint: typeof Flex;\n };\n /**\n * @deprecated Use Group with title prop\n */\n ItemTitle: Intergalactic.Component<'div', DropdownMenuItemTitleProps>;\n /**\n * @deprecated Use prop subTitle on Group or Item component\n */\n ItemHint: Intergalactic.Component<'div', DropdownMenuItemHintProps>;\n Group: typeof Dropdown.Group;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Nesting: Intergalactic.Component<\n 'div',\n DropdownMenuItemProps,\n DropdownMenuContext,\n [handlers: DropdownMenuHandlers]\n > & {\n /**\n * @deprecated Use Item instead of Nesting\n */\n Trigger: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Item: Intergalactic.Component<'div', DropdownMenuItemProps>;\n /**\n * @deprecated Use Item instead of Nesting\n */\n Addon: typeof Box;\n };\n\n selectedIndexContext: React.Context<number>;\n};\n\nexport default DropdownMenu;\n"],"mappings":""}
@@ -4,6 +4,7 @@ import Dropdown, {
4
4
  DropdownProps,
5
5
  DropdownHandlers,
6
6
  DropdownTriggerProps,
7
+ DropdownPopperAriaProps,
7
8
  } from '@semcore/dropdown';
8
9
  import { Box, BoxProps, FlexProps, Flex } from '@semcore/flex-box';
9
10
  import { ScrollAreaProps } from '@semcore/scroll-area';
@@ -129,7 +130,7 @@ declare const DropdownMenu: Intergalactic.Component<
129
130
  [handlers: DropdownMenuHandlers]
130
131
  > & {
131
132
  Trigger: typeof Dropdown.Trigger;
132
- Popper: Intergalactic.Component<'div', DropdownMenuProps>;
133
+ Popper: Intergalactic.Component<'div', DropdownMenuProps & DropdownPopperAriaProps>;
133
134
  List: Intergalactic.Component<
134
135
  'div',
135
136
  DropdownMenuListProps,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@semcore/dropdown-menu",
3
3
  "description": "Semrush DropdownMenu Component",
4
- "version": "4.43.0-prerelease.0",
4
+ "version": "4.43.2-prerelease.0",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/es6/index.js",
7
7
  "typings": "lib/types/index.d.ts",
@@ -9,16 +9,16 @@
9
9
  "author": "UI-kit team <ui-kit-team@semrush.com>",
10
10
  "license": "MIT",
11
11
  "dependencies": {
12
- "@semcore/dropdown": "4.41.0-prerelease.0",
13
- "@semcore/flex-box": "5.38.0-prerelease.0",
14
- "@semcore/scroll-area": "5.42.0-prerelease.0",
15
- "@semcore/utils": "4.43.0-prerelease.0",
16
- "@semcore/icon": "4.52.0-prerelease.0",
17
- "@semcore/typography": "5.47.0-prerelease.0",
12
+ "@semcore/dropdown": "4.41.2-prerelease.0",
13
+ "@semcore/flex-box": "5.38.1-prerelease.0",
14
+ "@semcore/scroll-area": "5.42.1-prerelease.0",
15
+ "@semcore/utils": "4.43.2-prerelease.0",
16
+ "@semcore/icon": "4.52.1-prerelease.0",
17
+ "@semcore/typography": "5.47.1-prerelease.0",
18
18
  "classnames": "2.2.6"
19
19
  },
20
20
  "peerDependencies": {
21
- "@semcore/core": "^2.36.0-prerelease.0",
21
+ "@semcore/core": "^2.36.1-prerelease.0",
22
22
  "react": "16.8 - 18",
23
23
  "react-dom": "16.8 - 18"
24
24
  },
@@ -32,8 +32,8 @@
32
32
  "@types/classnames": "2.2.6",
33
33
  "@semcore/testing-utils": "1.0.0",
34
34
  "@semcore/base-trigger": "4.26.1",
35
- "@semcore/icon": "4.26.0",
36
- "@semcore/button": "5.39.1-prerelease.0"
35
+ "@semcore/icon": "4.52.1-prerelease.0",
36
+ "@semcore/button": "5.39.2-prerelease.0"
37
37
  },
38
38
  "scripts": {
39
39
  "build": "pnpm semcore-builder --source=js"