intergalactic 15.76.1 → 15.77.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 +14 -0
- package/components.json +5 -5
- package/dropdown-menu/lib/cjs/DropdownMenu.js +21 -16
- package/dropdown-menu/lib/cjs/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/cjs/styleScrollArea.js +6 -6
- package/dropdown-menu/lib/es6/DropdownMenu.js +21 -16
- package/dropdown-menu/lib/es6/DropdownMenu.js.map +1 -1
- package/dropdown-menu/lib/es6/styleScrollArea.js +6 -6
- package/input-tags/lib/cjs/InputTags.js +12 -12
- package/input-tags/lib/es6/InputTags.js +12 -12
- package/package.json +1 -1
- package/select/lib/cjs/InputSearch.js +6 -6
- package/select/lib/cjs/Select.js +10 -13
- package/select/lib/cjs/Select.js.map +1 -1
- package/select/lib/es6/InputSearch.js +6 -6
- package/select/lib/es6/Select.js +10 -13
- package/select/lib/es6/Select.js.map +1 -1
- package/tag/lib/cjs/Tag.js +20 -20
- package/tag/lib/cjs/style/tag.shadow.css +5 -5
- package/tag/lib/es6/Tag.js +20 -20
- package/tag/lib/es6/style/tag.shadow.css +5 -5
- package/time-picker/lib/cjs/TimePicker.js +12 -12
- package/time-picker/lib/es6/TimePicker.js +12 -12
package/CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
1
|
+
## [15.77.0] - 2024-04-12
|
2
|
+
|
3
|
+
### @semcore/dropdown-menu
|
4
|
+
|
5
|
+
- **Fixed** DropdownMenu with input in the trigger was not highting current items when focus comes to input with mouse click.
|
6
|
+
|
7
|
+
### @semcore/select
|
8
|
+
|
9
|
+
- **Fixed** Multiselect interactions were not annotated properly by screen readers when select was used with `options` prop.
|
10
|
+
|
11
|
+
### @semcore/tag
|
12
|
+
|
13
|
+
- **Fixed** Focused tag was rendering focus ring even if it wasn't marked as interactive.
|
14
|
+
|
1
15
|
## [15.76.1] - 2024-04-10
|
2
16
|
|
3
17
|
### @semcore/date-picker
|
package/components.json
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
"@semcore/dot": "5.20.2",
|
19
19
|
"@semcore/drag-and-drop": "3.29.3",
|
20
20
|
"@semcore/dropdown": "4.23.2",
|
21
|
-
"@semcore/dropdown-menu": "4.26.
|
21
|
+
"@semcore/dropdown-menu": "4.26.2",
|
22
22
|
"@semcore/d3-chart": "3.37.1",
|
23
23
|
"@semcore/ellipsis": "2.22.3",
|
24
24
|
"@semcore/email": "1.0.2",
|
@@ -37,7 +37,7 @@
|
|
37
37
|
"@semcore/input": "4.22.2",
|
38
38
|
"@semcore/input-mask": "5.22.2",
|
39
39
|
"@semcore/input-number": "5.22.2",
|
40
|
-
"@semcore/input-tags": "4.26.
|
40
|
+
"@semcore/input-tags": "4.26.3",
|
41
41
|
"@semcore/link": "5.24.2",
|
42
42
|
"@semcore/mini-chart": "0.7.2",
|
43
43
|
"@semcore/modal": "4.31.2",
|
@@ -54,7 +54,7 @@
|
|
54
54
|
"@semcore/progress-bar": "4.20.2",
|
55
55
|
"@semcore/radio": "6.24.2",
|
56
56
|
"@semcore/scroll-area": "5.23.2",
|
57
|
-
"@semcore/select": "4.
|
57
|
+
"@semcore/select": "4.37.0",
|
58
58
|
"@semcore/side-panel": "3.29.2",
|
59
59
|
"@semcore/skeleton": "5.21.2",
|
60
60
|
"@semcore/slider": "4.20.2",
|
@@ -64,9 +64,9 @@
|
|
64
64
|
"@semcore/switch": "5.21.2",
|
65
65
|
"@semcore/tab-line": "4.20.2",
|
66
66
|
"@semcore/tab-panel": "4.22.2",
|
67
|
-
"@semcore/tag": "5.30.
|
67
|
+
"@semcore/tag": "5.30.3",
|
68
68
|
"@semcore/textarea": "5.21.2",
|
69
|
-
"@semcore/time-picker": "4.
|
69
|
+
"@semcore/time-picker": "4.37.0",
|
70
70
|
"@semcore/tooltip": "6.25.3",
|
71
71
|
"@semcore/typography": "5.29.2",
|
72
72
|
"@semcore/utils": "4.22.2",
|
@@ -34,22 +34,22 @@ var _getFocusableIn = require("intergalactic/utils/lib/focus-lock/getFocusableIn
|
|
34
34
|
var _keyboardFocusEnhance = _interopRequireDefault(require("intergalactic/utils/lib/enhances/keyboardFocusEnhance"));
|
35
35
|
var _excluded = ["className"];
|
36
36
|
/*__reshadow-styles__:"./style/dropdown-menu.shadow.css"*/
|
37
|
-
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".
|
38
|
-
"__SDropdownMenuList": "
|
39
|
-
"__SDropdownMenuItem": "
|
40
|
-
"_highlighted": "
|
41
|
-
"_disabled": "
|
42
|
-
"_size_l": "
|
43
|
-
"_size_m": "
|
44
|
-
"_visible": "
|
45
|
-
"_nesting-trigger": "__nesting-
|
46
|
-
"__SDropdownMenuNesting": "
|
47
|
-
"__SDropdownNestingItem": "
|
48
|
-
"_selected": "
|
49
|
-
"_notInteractive": "
|
50
|
-
"_variant_hint": "
|
51
|
-
"_variant_title": "
|
52
|
-
"__SDropdownMenuItemAddon": "
|
37
|
+
var style = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuItem_1iadm_gg_,.___SDropdownMenuList_1iadm_gg_{position:relative;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_1iadm_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0}.___SDropdownMenuItem_1iadm_gg_{display:flex;align-items:center;-webkit-text-decoration:none;text-decoration:none;box-sizing:border-box;cursor:pointer;width:100%;text-align:left;line-height:normal}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}}.___SDropdownMenuItem_1iadm_gg_:focus{outline:0}.___SDropdownMenuItem_1iadm_gg_.__selected_1iadm_gg_{background-color:var(--intergalactic-dropdown-menu-item-selected, rgba(196, 229, 254, 0.7));box-shadow:2px 0 0 0 var(--intergalactic-control-primary-info, #008ff8) inset}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_.__selected_1iadm_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-selected-hover, #c4e5fe)}}.___SDropdownMenuItem_1iadm_gg_.__highlighted_1iadm_gg_:not(:focus-within){z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownMenuItem_1iadm_gg_.__disabled_1iadm_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SDropdownMenuItem_1iadm_gg_._size_l_1iadm_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);min-height:40px}.___SDropdownMenuItem_1iadm_gg_._size_m_1iadm_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);padding:calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) var(--intergalactic-spacing-2x, 8px);min-height:32px}.___SDropdownMenuItem_1iadm_gg_.__notInteractive_1iadm_gg_{cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_.__notInteractive_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_._variant_hint_1iadm_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_._variant_hint_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_._variant_title_1iadm_gg_{font-weight:var(--intergalactic-bold, 700);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_._variant_title_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_.__visible_1iadm_gg_{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}.___SDropdownMenuItem_1iadm_gg_.__nesting-trigger_1iadm_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_1iadm_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDropdownMenuItemAddon_1iadm_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_1iadm_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_1iadm_gg_,.___SDropdownMenuNesting_1iadm_gg_._size_l_1iadm_gg_,.___SDropdownMenuNesting_1iadm_gg_._size_m_1iadm_gg_{padding:0}.___SDropdownMenuNesting_1iadm_gg_.__highlighted_1iadm_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_1iadm_gg_._size_l_1iadm_gg_,.___SDropdownNestingItem_1iadm_gg_._size_m_1iadm_gg_{padding-right:0}.___SDropdownNestingItem_1iadm_gg_ .___SDropdownMenuItem_1iadm_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}" /*__inner_css_end__*/, "1iadm_gg_") /*__reshadow_css_end__*/, {
|
38
|
+
"__SDropdownMenuList": "___SDropdownMenuList_1iadm_gg_",
|
39
|
+
"__SDropdownMenuItem": "___SDropdownMenuItem_1iadm_gg_",
|
40
|
+
"_highlighted": "__highlighted_1iadm_gg_",
|
41
|
+
"_disabled": "__disabled_1iadm_gg_",
|
42
|
+
"_size_l": "_size_l_1iadm_gg_",
|
43
|
+
"_size_m": "_size_m_1iadm_gg_",
|
44
|
+
"_visible": "__visible_1iadm_gg_",
|
45
|
+
"_nesting-trigger": "__nesting-trigger_1iadm_gg_",
|
46
|
+
"__SDropdownMenuNesting": "___SDropdownMenuNesting_1iadm_gg_",
|
47
|
+
"__SDropdownNestingItem": "___SDropdownNestingItem_1iadm_gg_",
|
48
|
+
"_selected": "__selected_1iadm_gg_",
|
49
|
+
"_notInteractive": "__notInteractive_1iadm_gg_",
|
50
|
+
"_variant_hint": "_variant_hint_1iadm_gg_",
|
51
|
+
"_variant_title": "_variant_title_1iadm_gg_",
|
52
|
+
"__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_1iadm_gg_"
|
53
53
|
});
|
54
54
|
var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
|
55
55
|
(0, _inherits2["default"])(DropdownMenuRoot, _Component);
|
@@ -126,6 +126,11 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
|
|
126
126
|
return;
|
127
127
|
}
|
128
128
|
}
|
129
|
+
if (e.key.startsWith('Arrow') && !_this.state.keyboardFocused) {
|
130
|
+
_this.setState({
|
131
|
+
keyboardFocused: true
|
132
|
+
});
|
133
|
+
}
|
129
134
|
if (['ArrowLeft', 'ArrowRight'].includes(e.key)) {
|
130
135
|
var _item = highlightedIndex !== null && _this.itemRefs[highlightedIndex];
|
131
136
|
var focusable = (0, _getFocusableIn.getFocusableIn)(_item);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"DropdownMenu.js","names":["_core","_interopRequireWildcard","require","_react","_interopRequireDefault","_classnames","_dropdown","_flexBox","_scrollArea","_uniqueID","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_hasParent","_styleScrollArea","_setFocus","_isFocusInside","_getFocusableIn","_keyboardFocusEnhance","_excluded","style","sstyled","insert","DropdownMenuRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","focusLockItemIndex","keyboardFocused","React","createRef","trigger","triggerRef","current","isFocusInside","setFocus","place","e","amount","shiftKey","targetTagName","target","tagName","_this$asProps","asProps","visible","highlightedIndex","placement","key","includes","item","itemRefs","getFocusableIn","setState","handlers","state","verticalPlacement","startsWith","preventDefault","show","hide","visibleChanged","stopPropagation","focusable","focusedIndex","indexOf","document","activeElement","nextFocused","focus","prevFocused","moveHighlightedIndex","popperRef","focusTrigger","highlightedItemRef","click","ignoreTriggerKeyboardFocusUntil","Date","now","event","relatedTarget","focused","hasParent","_focusable$","itemIndex","currentTarget","handleNestingClick","size","onClick","onKeyDown","handleNestingKeyDown","lastUserInteraction","_this$asProps2","onNestedVisibleChange","handleNestedVisibleChange","getNestingTriggerProps","node","setTimeout","scrollIntoView","prevHighlightedIndex","block","inline","_createClass2","value","uncontrolledProps","_this2","selectedItemIndex","itemProps","findIndex","selected","getTriggerProps","_this$asProps3","uid","disablePortal","getI18nText","id","focusHint","undefined","bindHandlerKeyDown","ref","onKeyboardFocus","handleTriggerKeyboardFocus","onKeyboardFocusedStateChange","handleTriggerKeyboardFocusedStateChange","getListProps","_this$asProps4","index","getPopperProps","_this$asProps5","ignorePortalsStacking","interaction","tabIndex","focusMaster","hideFocus","getItemProps","props","_this3","_this$asProps6","highlighted","scrollToNode","focusLock","handleFocusOut","handleItemFocusOut","getItemHintProps","getItemTitleProps","_this$itemProps$newIn","itemsLastIndex","selectedIndex","newIndex","disabled","componentDidUpdate","_this4","render","_ref","Children","createElement","Dropdown","assignProps","Component","uniqueIDEnhancement","i18nEnhance","localizedMessages","defaultVisible","defaultHighlightedIndex","i18n","locale","List","_ref2","arguments[0]","_ref11","SDropdownMenuList","ScrollAreaComponent","styles","cn","_objectSpread2","scrollStyles","Menu","_ref3","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","DropdownMenu","Popper","Item","_ref18","_ref4","_ref12","label","SDropdownMenuItem","Flex","useRef","useFocusLock","NestingContext","createContext","Nesting","_ref19","_ref5","_ref13","SDropdownMenuNesting","contextValue","useMemo","Provider","NestingTrigger","_ref6","_ref14","nestingContext","useContext","lastUserInteractionRef","useEffect","handleMouseEvent","useCallback","handleKeyboardEvent","addEventListener","capture","removeEventListener","NestingItem","_ref7","_ref15","SDropdownNestingItem","Addon","_useBox","useBox","forwardRef","_useBox2","_slicedToArray2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties2","_extends2","Hint","_ref8","_ref16","Title","_ref9","_ref17","Trigger","_ref20","_ref10","enhance","keyboardFocusEnhance","createComponent","ItemTitle","ItemHint","parent","_default","exports"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent from '@semcore/scroll-area';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { hasParent } from '@semcore/utils/lib/hasParent';\n\nimport scrollStyles from './styleScrollArea';\nimport style from './style/dropdown-menu.shadow.css';\nimport { setFocus } from '@semcore/utils/lib/focus-lock/setFocus';\nimport { isFocusInside } from '@semcore/utils/lib/focus-lock/isFocusInside';\nimport { getFocusableIn } from '@semcore/utils/lib/focus-lock/getFocusableIn';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nclass DropdownMenuRoot extends Component {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: null,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n };\n\n state = {\n focusLockItemIndex: null,\n keyboardFocused: false,\n };\n\n popperRef = React.createRef();\n triggerRef = React.createRef();\n\n itemProps = [];\n itemRefs = [];\n\n highlightedItemRef = React.createRef();\n\n ignoreTriggerKeyboardFocusUntil = 0;\n prevHighlightedIndex = null;\n\n uncontrolledProps() {\n return {\n highlightedIndex: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.ignoreTriggerKeyboardFocusUntil = Date.now() + 100;\n } else {\n setTimeout(() => {\n const selectedItemIndex = this.itemProps.findIndex((item) => item.selected);\n if (selectedItemIndex === -1 || this.asProps.highlightedIndex !== null) return;\n this.handlers.highlightedIndex(selectedItemIndex);\n }, 0);\n }\n },\n ],\n };\n }\n\n focusTrigger = () => {\n const trigger = this.triggerRef.current;\n if (!trigger) return;\n if (isFocusInside(trigger)) return;\n setFocus(trigger);\n };\n\n bindHandlerKeyDown = (place) => (e) => {\n const amount = e.shiftKey ? 5 : 1;\n const targetTagName = e.target.tagName;\n\n const { visible, highlightedIndex, placement } = this.asProps;\n\n if (e.key === ' ' && ['INPUT', 'TEXTAREA'].includes(targetTagName)) return;\n if (e.key === 'Enter' && targetTagName === 'TEXTAREA') return;\n if (\n place === 'popper' &&\n (e.key === ' ' || e.key === 'Enter') &&\n (targetTagName === 'BUTTON' || targetTagName === 'A')\n )\n return;\n\n if (visible && e.key === 'Tab') {\n const item = highlightedIndex !== null && this.itemRefs[highlightedIndex];\n if (item && getFocusableIn(item).length !== 0) {\n this.setState({ focusLockItemIndex: highlightedIndex });\n } else {\n this.handlers.highlightedIndex(null);\n }\n return;\n }\n\n if (e.key === 'Escape' && this.state.focusLockItemIndex !== null) {\n this.setState({ focusLockItemIndex: null });\n return false;\n }\n\n const verticalPlacement =\n !placement || placement.startsWith('top') || placement.startsWith('bottom');\n\n if (['ArrowDown', 'ArrowUp'].includes(e.key) && verticalPlacement) {\n e.preventDefault();\n this.handlers.visible(true);\n }\n if (['ArrowLeft', 'ArrowRight'].includes(e.key) && !verticalPlacement) {\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 const visibleChanged = (visible && hide) || (!visible && show);\n if (show) {\n this.handlers.visible(true);\n } else if (hide) {\n this.handlers.visible(false);\n }\n if (visibleChanged) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n }\n if (['ArrowLeft', 'ArrowRight'].includes(e.key)) {\n const item = highlightedIndex !== null && this.itemRefs[highlightedIndex];\n const focusable = getFocusableIn(item);\n if (focusable.length > 0 && item) {\n const focusedIndex = focusable.indexOf(document.activeElement);\n if (e.key === 'ArrowRight') {\n if (focusedIndex === -1) {\n this.setState({ focusLockItemIndex: highlightedIndex });\n }\n const nextFocused = focusable[focusedIndex + 1];\n if (nextFocused) {\n e.preventDefault();\n e.stopPropagation();\n nextFocused.focus();\n }\n } else if (e.key === 'ArrowLeft') {\n if (focusedIndex === 0) {\n this.setState({ focusLockItemIndex: null });\n }\n const prevFocused = focusable[focusedIndex - 1];\n if (prevFocused) {\n e.preventDefault();\n e.stopPropagation();\n prevFocused.focus();\n }\n }\n }\n }\n\n switch (e.key) {\n case 'ArrowDown': {\n if (visible) {\n this.moveHighlightedIndex(amount, e);\n if (isFocusInside(this.popperRef.current)) {\n this.focusTrigger();\n }\n e.preventDefault();\n e.stopPropagation();\n }\n break;\n }\n case 'ArrowUp': {\n if (visible) {\n this.moveHighlightedIndex(-amount, e);\n if (isFocusInside(this.popperRef.current)) {\n this.focusTrigger();\n }\n e.preventDefault();\n e.stopPropagation();\n }\n break;\n }\n case ' ':\n case 'Enter':\n if (this.highlightedItemRef.current && highlightedIndex !== null) {\n e.stopPropagation();\n e.preventDefault();\n this.highlightedItemRef.current.click();\n } else {\n if (place === 'trigger') {\n this.handlers.visible(false);\n\n e.preventDefault();\n }\n }\n break;\n }\n };\n\n handleTriggerKeyboardFocus = () => {\n if (this.ignoreTriggerKeyboardFocusUntil > Date.now()) return false;\n };\n handleTriggerKeyboardFocusedStateChange = (keyboardFocused) => {\n this.setState({ keyboardFocused });\n };\n\n getTriggerProps() {\n const { size, uid, disablePortal, visible, getI18nText, highlightedIndex } = this.asProps;\n\n return {\n size,\n id: `igc-${uid}-trigger`,\n 'aria-controls': `igc-${uid}-popper`,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-expanded': visible ? 'true' : 'false',\n 'aria-activedescendant':\n visible && highlightedIndex !== null ? `igc-${uid}-option-${highlightedIndex}` : undefined,\n onKeyDown: this.bindHandlerKeyDown('trigger'),\n ref: this.triggerRef,\n onKeyboardFocus: this.handleTriggerKeyboardFocus,\n onKeyboardFocusedStateChange: this.handleTriggerKeyboardFocusedStateChange,\n };\n }\n\n getListProps() {\n const { size, uid } = this.asProps;\n return {\n size,\n uid,\n index: this.asProps.highlightedIndex,\n };\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction, highlightedIndex } =\n this.asProps;\n\n return {\n ref: this.popperRef,\n tabIndex: 0,\n onKeyDown: this.bindHandlerKeyDown('popper'),\n id: `igc-${uid}-popper`,\n disablePortal,\n ignorePortalsStacking,\n focusMaster: interaction === 'click',\n hideFocus: highlightedIndex !== null,\n };\n }\n\n getItemProps(props, index) {\n const { size, highlightedIndex, uid } = this.asProps;\n const highlighted = index === highlightedIndex;\n let ref = (node) => {\n this.itemRefs[index] = node;\n };\n this.itemProps[index] = props;\n if (highlighted) {\n ref = (node) => {\n this.itemRefs[index] = node;\n this.scrollToNode(node);\n };\n }\n\n return {\n id: `igc-${uid}-option-${index}`,\n size,\n highlighted,\n focusLock: this.state.focusLockItemIndex === index,\n triggerRef: this.triggerRef,\n ref,\n index,\n handleFocusOut: this.handleItemFocusOut,\n keyboardFocused: this.state.keyboardFocused,\n };\n }\n\n handleItemFocusOut = (event) => {\n if (event.relatedTarget === this.popperRef.current) return;\n const focused = event.relatedTarget;\n\n if (hasParent(focused, this.popperRef.current)) {\n this.handlers.highlightedIndex(null);\n this.setState({ focusLockItemIndex: null });\n focused.focus();\n }\n };\n\n handleNestingClick = (event) => {\n const itemIndex = this.itemRefs.indexOf(event.currentTarget);\n if (itemIndex === -1) return;\n const focusable = getFocusableIn(event.currentTarget);\n focusable[0]?.focus();\n if (focusable[0] && this.state.focusLockItemIndex === null) {\n this.setState({ focusLockItemIndex: null });\n event.preventDefault();\n event.stopPropagation();\n }\n };\n handleNestingKeyDown = (event) => {\n if (event.key === ' ') {\n this.handleNestingClick(event);\n }\n };\n getNestingProps = () => {\n const { size } = this.asProps;\n return {\n size,\n onClick: this.handleNestingClick,\n onKeyDown: this.handleNestingKeyDown,\n };\n };\n handleNestedVisibleChange = (lastUserInteraction) => {\n if (\n this.asProps.visible &&\n this.asProps.highlightedIndex === null &&\n lastUserInteraction === 'keyboard'\n ) {\n this.handlers.highlightedIndex(0);\n }\n };\n getNestingTriggerProps = () => {\n const { size, visible } = this.asProps;\n return {\n size,\n visible,\n onNestedVisibleChange: this.handleNestedVisibleChange,\n };\n };\n getNestingItemProps = () => {\n return this.getNestingTriggerProps();\n };\n\n getItemHintProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemTitleProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n scrollToNode = (node) => {\n if (node) {\n this.highlightedItemRef.current = node;\n }\n setTimeout(() => {\n if (node?.scrollIntoView) {\n if (this.asProps.highlightedIndex !== this.prevHighlightedIndex) {\n this.prevHighlightedIndex = this.asProps.highlightedIndex;\n node.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n }\n }, 0);\n };\n\n moveHighlightedIndex(amount, e) {\n let { highlightedIndex } = this.asProps;\n const itemsLastIndex = this.itemProps.length - 1;\n const selectedIndex = this.itemProps.findIndex((item) => item.selected);\n\n if (itemsLastIndex < 0) return;\n\n if (highlightedIndex == null) {\n if (selectedIndex !== -1) {\n highlightedIndex = selectedIndex;\n } else if (this.highlightedItemRef.current) {\n highlightedIndex = this.prevHighlightedIndex;\n } else {\n highlightedIndex = amount < 0 ? 0 : itemsLastIndex;\n }\n }\n\n let newIndex = highlightedIndex + amount;\n if (newIndex < 0) {\n newIndex = amount + itemsLastIndex + 1;\n } else if (newIndex > itemsLastIndex) {\n newIndex = newIndex - itemsLastIndex - 1;\n }\n\n if (this.itemProps[newIndex]?.disabled) {\n this.moveHighlightedIndex(amount < 0 ? amount - 1 : amount + 1, e);\n } else {\n this.handlers.highlightedIndex(newIndex, e);\n }\n }\n\n componentDidUpdate() {\n if (!this.asProps.visible) {\n this.handlers.highlightedIndex(null);\n this.highlightedItemRef.current = null;\n }\n if (\n (this.state.focusLockItemIndex !== this.asProps.highlightedIndex || !this.asProps.visible) &&\n this.state.focusLockItemIndex !== null\n ) {\n setTimeout(() => {\n this.setState({ focusLockItemIndex: null });\n }, 0);\n }\n }\n\n render() {\n const { Children } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <Root render={Dropdown}>\n <Children />\n </Root>\n );\n }\n}\n\nfunction List(props) {\n const SDropdownMenuList = Root;\n const { uid } = props;\n\n return sstyled(props.styles)(\n <SDropdownMenuList\n render={ScrollAreaComponent}\n tabIndex={null}\n role='menu'\n aria-labelledby={`igc-${uid}-trigger`}\n shadow={true}\n styles={scrollStyles}\n />,\n );\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 <DropdownMenu.Popper {...popperProps}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n );\n}\n\nfunction Item({\n styles,\n label,\n triggerRef,\n focusLock,\n disabled,\n highlighted,\n handleFocusOut,\n keyboardFocused,\n}) {\n const SDropdownMenuItem = Root;\n const ref = React.useRef();\n\n useFocusLock(ref, false, triggerRef, !focusLock || disabled, true, handleFocusOut);\n\n return sstyled(styles)(\n <SDropdownMenuItem\n ref={ref}\n render={Flex}\n role='menuitem'\n tabIndex={-1}\n id={label}\n use:highlighted={!disabled && highlighted && keyboardFocused}\n />,\n );\n}\n\nconst NestingContext = React.createContext(null);\n\nfunction Nesting({ styles, disabled }) {\n const SDropdownMenuNesting = Root;\n const contextValue = React.useMemo(() => ({ disabled }), [disabled]);\n\n return (\n <NestingContext.Provider value={contextValue}>\n {sstyled(styles)(<SDropdownMenuNesting aria-haspopup='true' render={DropdownMenu.Item} />)}\n </NestingContext.Provider>\n );\n}\n\nfunction NestingTrigger(props) {\n const { styles, visible, onNestedVisibleChange } = props;\n const SDropdownMenuItem = Root;\n const nestingContext = React.useContext(NestingContext);\n const disabled = props.disabled || nestingContext?.disabled;\n\n const lastUserInteractionRef = React.useRef(undefined);\n React.useEffect(() => {\n onNestedVisibleChange(lastUserInteractionRef.current);\n }, [visible]);\n\n const handleMouseEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'mouse';\n }, []);\n const handleKeyboardEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'keyboard';\n }, []);\n\n React.useEffect(() => {\n document.addEventListener('mouseover', handleMouseEvent, { capture: true });\n document.addEventListener('keydown', handleKeyboardEvent, { capture: true });\n return () => {\n document.removeEventListener('mouseover', handleMouseEvent, { capture: true });\n document.removeEventListener('keydown', handleKeyboardEvent, { capture: true });\n };\n }, []);\n\n return (\n <NestingContext.Provider value={null}>\n {sstyled(styles)(\n <SDropdownMenuItem nesting-trigger tabIndex={!disabled ? 0 : undefined} render={Flex} />,\n )}\n </NestingContext.Provider>\n );\n}\n\nfunction NestingItem(props) {\n const { styles } = props;\n const SDropdownNestingItem = Root;\n\n return sstyled(styles)(<SDropdownNestingItem render={NestingTrigger} tabIndex={-1} />);\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 Hint(props) {\n const SDropdownMenuItem = Root;\n return sstyled(props.styles)(<SDropdownMenuItem render={Flex} variant='hint' />);\n}\n\nfunction Title(props) {\n const SDropdownMenuItem = Root;\n return sstyled(props.styles)(<SDropdownMenuItem render={Flex} variant='title' />);\n}\n\nfunction Trigger({ keyboardFocused, onKeyboardFocusedStateChange }) {\n React.useEffect(\n () => onKeyboardFocusedStateChange(keyboardFocused),\n [keyboardFocused, onKeyboardFocusedStateChange],\n );\n\n return <Root render={Dropdown.Trigger} aria-haspopup='true' />;\n}\nTrigger.enhance = [keyboardFocusEnhance(false)];\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Menu,\n Item: [Item, { Addon }],\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon, Item: NestingItem }],\n ItemTitle: Title,\n ItemHint: Hint,\n },\n {\n parent: [Dropdown],\n },\n);\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","_i18nEnhance","_intergalacticDynamicLocales","_useFocusLock","_hasParent","_styleScrollArea","_setFocus","_isFocusInside","_getFocusableIn","_keyboardFocusEnhance","_excluded","style","sstyled","insert","DropdownMenuRoot","_Component","_inherits2","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","focusLockItemIndex","keyboardFocused","React","createRef","trigger","triggerRef","current","isFocusInside","setFocus","place","e","amount","shiftKey","targetTagName","target","tagName","_this$asProps","asProps","visible","highlightedIndex","placement","key","includes","item","itemRefs","getFocusableIn","setState","handlers","state","verticalPlacement","startsWith","preventDefault","show","hide","visibleChanged","stopPropagation","focusable","focusedIndex","indexOf","document","activeElement","nextFocused","focus","prevFocused","moveHighlightedIndex","popperRef","focusTrigger","highlightedItemRef","click","ignoreTriggerKeyboardFocusUntil","Date","now","event","relatedTarget","focused","hasParent","_focusable$","itemIndex","currentTarget","handleNestingClick","size","onClick","onKeyDown","handleNestingKeyDown","lastUserInteraction","_this$asProps2","onNestedVisibleChange","handleNestedVisibleChange","getNestingTriggerProps","node","setTimeout","scrollIntoView","prevHighlightedIndex","block","inline","_createClass2","value","uncontrolledProps","_this2","selectedItemIndex","itemProps","findIndex","selected","getTriggerProps","_this$asProps3","uid","disablePortal","getI18nText","id","focusHint","undefined","bindHandlerKeyDown","ref","onKeyboardFocus","handleTriggerKeyboardFocus","onKeyboardFocusedStateChange","handleTriggerKeyboardFocusedStateChange","getListProps","_this$asProps4","index","getPopperProps","_this$asProps5","ignorePortalsStacking","interaction","tabIndex","focusMaster","hideFocus","getItemProps","props","_this3","_this$asProps6","highlighted","scrollToNode","focusLock","handleFocusOut","handleItemFocusOut","getItemHintProps","getItemTitleProps","_this$itemProps$newIn","itemsLastIndex","selectedIndex","newIndex","disabled","componentDidUpdate","_this4","render","_ref","Children","createElement","Dropdown","assignProps","Component","uniqueIDEnhancement","i18nEnhance","localizedMessages","defaultVisible","defaultHighlightedIndex","i18n","locale","List","_ref2","arguments[0]","_ref11","SDropdownMenuList","ScrollAreaComponent","styles","cn","_objectSpread2","scrollStyles","Menu","_ref3","disableEnforceFocus","autoFocus","animationsDisabled","popperProps","DropdownMenu","Popper","Item","_ref18","_ref4","_ref12","label","SDropdownMenuItem","Flex","useRef","useFocusLock","NestingContext","createContext","Nesting","_ref19","_ref5","_ref13","SDropdownMenuNesting","contextValue","useMemo","Provider","NestingTrigger","_ref6","_ref14","nestingContext","useContext","lastUserInteractionRef","useEffect","handleMouseEvent","useCallback","handleKeyboardEvent","addEventListener","capture","removeEventListener","NestingItem","_ref7","_ref15","SDropdownNestingItem","Addon","_useBox","useBox","forwardRef","_useBox2","_slicedToArray2","SDropdownMenuItemAddon","_useBox2$","className","other","_objectWithoutProperties2","_extends2","Hint","_ref8","_ref16","Title","_ref9","_ref17","Trigger","_ref20","_ref10","enhance","keyboardFocusEnhance","createComponent","ItemTitle","ItemHint","parent","_default","exports"],"sources":["../../src/DropdownMenu.jsx"],"sourcesContent":["import React from 'react';\nimport cn from 'classnames';\nimport createComponent, { Component, sstyled, Root } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport { Flex, useBox } from '@semcore/flex-box';\nimport ScrollAreaComponent from '@semcore/scroll-area';\nimport uniqueIDEnhancement from '@semcore/utils/lib/uniqueID';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\nimport { useFocusLock } from '@semcore/utils/lib/use/useFocusLock';\nimport { hasParent } from '@semcore/utils/lib/hasParent';\n\nimport scrollStyles from './styleScrollArea';\nimport style from './style/dropdown-menu.shadow.css';\nimport { setFocus } from '@semcore/utils/lib/focus-lock/setFocus';\nimport { isFocusInside } from '@semcore/utils/lib/focus-lock/isFocusInside';\nimport { getFocusableIn } from '@semcore/utils/lib/focus-lock/getFocusableIn';\nimport keyboardFocusEnhance from '@semcore/utils/lib/enhances/keyboardFocusEnhance';\n\nclass DropdownMenuRoot extends Component {\n static displayName = 'DropdownMenu';\n static style = style;\n static enhance = [uniqueIDEnhancement(), i18nEnhance(localizedMessages)];\n\n static defaultProps = {\n size: 'm',\n defaultVisible: false,\n defaultHighlightedIndex: null,\n i18n: localizedMessages,\n locale: 'en',\n interaction: 'click',\n };\n\n state = {\n focusLockItemIndex: null,\n keyboardFocused: false,\n };\n\n popperRef = React.createRef();\n triggerRef = React.createRef();\n\n itemProps = [];\n itemRefs = [];\n\n highlightedItemRef = React.createRef();\n\n ignoreTriggerKeyboardFocusUntil = 0;\n prevHighlightedIndex = null;\n\n uncontrolledProps() {\n return {\n highlightedIndex: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.ignoreTriggerKeyboardFocusUntil = Date.now() + 100;\n } else {\n setTimeout(() => {\n const selectedItemIndex = this.itemProps.findIndex((item) => item.selected);\n if (selectedItemIndex === -1 || this.asProps.highlightedIndex !== null) return;\n this.handlers.highlightedIndex(selectedItemIndex);\n }, 0);\n }\n },\n ],\n };\n }\n\n focusTrigger = () => {\n const trigger = this.triggerRef.current;\n if (!trigger) return;\n if (isFocusInside(trigger)) return;\n setFocus(trigger);\n };\n\n bindHandlerKeyDown = (place) => (e) => {\n const amount = e.shiftKey ? 5 : 1;\n const targetTagName = e.target.tagName;\n\n const { visible, highlightedIndex, placement } = this.asProps;\n\n if (e.key === ' ' && ['INPUT', 'TEXTAREA'].includes(targetTagName)) return;\n if (e.key === 'Enter' && targetTagName === 'TEXTAREA') return;\n if (\n place === 'popper' &&\n (e.key === ' ' || e.key === 'Enter') &&\n (targetTagName === 'BUTTON' || targetTagName === 'A')\n )\n return;\n\n if (visible && e.key === 'Tab') {\n const item = highlightedIndex !== null && this.itemRefs[highlightedIndex];\n if (item && getFocusableIn(item).length !== 0) {\n this.setState({ focusLockItemIndex: highlightedIndex });\n } else {\n this.handlers.highlightedIndex(null);\n }\n return;\n }\n\n if (e.key === 'Escape' && this.state.focusLockItemIndex !== null) {\n this.setState({ focusLockItemIndex: null });\n return false;\n }\n\n const verticalPlacement =\n !placement || placement.startsWith('top') || placement.startsWith('bottom');\n\n if (['ArrowDown', 'ArrowUp'].includes(e.key) && verticalPlacement) {\n e.preventDefault();\n this.handlers.visible(true);\n }\n if (['ArrowLeft', 'ArrowRight'].includes(e.key) && !verticalPlacement) {\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 const visibleChanged = (visible && hide) || (!visible && show);\n if (show) {\n this.handlers.visible(true);\n } else if (hide) {\n this.handlers.visible(false);\n }\n if (visibleChanged) {\n e.preventDefault();\n e.stopPropagation();\n return;\n }\n }\n if (e.key.startsWith('Arrow') && !this.state.keyboardFocused) {\n this.setState({ keyboardFocused: true });\n }\n if (['ArrowLeft', 'ArrowRight'].includes(e.key)) {\n const item = highlightedIndex !== null && this.itemRefs[highlightedIndex];\n const focusable = getFocusableIn(item);\n if (focusable.length > 0 && item) {\n const focusedIndex = focusable.indexOf(document.activeElement);\n if (e.key === 'ArrowRight') {\n if (focusedIndex === -1) {\n this.setState({ focusLockItemIndex: highlightedIndex });\n }\n const nextFocused = focusable[focusedIndex + 1];\n if (nextFocused) {\n e.preventDefault();\n e.stopPropagation();\n nextFocused.focus();\n }\n } else if (e.key === 'ArrowLeft') {\n if (focusedIndex === 0) {\n this.setState({ focusLockItemIndex: null });\n }\n const prevFocused = focusable[focusedIndex - 1];\n if (prevFocused) {\n e.preventDefault();\n e.stopPropagation();\n prevFocused.focus();\n }\n }\n }\n }\n\n switch (e.key) {\n case 'ArrowDown': {\n if (visible) {\n this.moveHighlightedIndex(amount, e);\n if (isFocusInside(this.popperRef.current)) {\n this.focusTrigger();\n }\n e.preventDefault();\n e.stopPropagation();\n }\n break;\n }\n case 'ArrowUp': {\n if (visible) {\n this.moveHighlightedIndex(-amount, e);\n if (isFocusInside(this.popperRef.current)) {\n this.focusTrigger();\n }\n e.preventDefault();\n e.stopPropagation();\n }\n break;\n }\n case ' ':\n case 'Enter':\n if (this.highlightedItemRef.current && highlightedIndex !== null) {\n e.stopPropagation();\n e.preventDefault();\n this.highlightedItemRef.current.click();\n } else {\n if (place === 'trigger') {\n this.handlers.visible(false);\n\n e.preventDefault();\n }\n }\n break;\n }\n };\n\n handleTriggerKeyboardFocus = () => {\n if (this.ignoreTriggerKeyboardFocusUntil > Date.now()) return false;\n };\n handleTriggerKeyboardFocusedStateChange = (keyboardFocused) => {\n this.setState({ keyboardFocused });\n };\n\n getTriggerProps() {\n const { size, uid, disablePortal, visible, getI18nText, highlightedIndex } = this.asProps;\n\n return {\n size,\n id: `igc-${uid}-trigger`,\n 'aria-controls': `igc-${uid}-popper`,\n focusHint: visible && !disablePortal ? getI18nText('triggerHint') : undefined,\n 'aria-expanded': visible ? 'true' : 'false',\n 'aria-activedescendant':\n visible && highlightedIndex !== null ? `igc-${uid}-option-${highlightedIndex}` : undefined,\n onKeyDown: this.bindHandlerKeyDown('trigger'),\n ref: this.triggerRef,\n onKeyboardFocus: this.handleTriggerKeyboardFocus,\n onKeyboardFocusedStateChange: this.handleTriggerKeyboardFocusedStateChange,\n };\n }\n\n getListProps() {\n const { size, uid } = this.asProps;\n return {\n size,\n uid,\n index: this.asProps.highlightedIndex,\n };\n }\n\n getPopperProps() {\n const { uid, disablePortal, ignorePortalsStacking, interaction, highlightedIndex } =\n this.asProps;\n\n return {\n ref: this.popperRef,\n tabIndex: 0,\n onKeyDown: this.bindHandlerKeyDown('popper'),\n id: `igc-${uid}-popper`,\n disablePortal,\n ignorePortalsStacking,\n focusMaster: interaction === 'click',\n hideFocus: highlightedIndex !== null,\n };\n }\n\n getItemProps(props, index) {\n const { size, highlightedIndex, uid } = this.asProps;\n const highlighted = index === highlightedIndex;\n let ref = (node) => {\n this.itemRefs[index] = node;\n };\n this.itemProps[index] = props;\n if (highlighted) {\n ref = (node) => {\n this.itemRefs[index] = node;\n this.scrollToNode(node);\n };\n }\n\n return {\n id: `igc-${uid}-option-${index}`,\n size,\n highlighted,\n focusLock: this.state.focusLockItemIndex === index,\n triggerRef: this.triggerRef,\n ref,\n index,\n handleFocusOut: this.handleItemFocusOut,\n keyboardFocused: this.state.keyboardFocused,\n };\n }\n\n handleItemFocusOut = (event) => {\n if (event.relatedTarget === this.popperRef.current) return;\n const focused = event.relatedTarget;\n\n if (hasParent(focused, this.popperRef.current)) {\n this.handlers.highlightedIndex(null);\n this.setState({ focusLockItemIndex: null });\n focused.focus();\n }\n };\n\n handleNestingClick = (event) => {\n const itemIndex = this.itemRefs.indexOf(event.currentTarget);\n if (itemIndex === -1) return;\n const focusable = getFocusableIn(event.currentTarget);\n focusable[0]?.focus();\n if (focusable[0] && this.state.focusLockItemIndex === null) {\n this.setState({ focusLockItemIndex: null });\n event.preventDefault();\n event.stopPropagation();\n }\n };\n handleNestingKeyDown = (event) => {\n if (event.key === ' ') {\n this.handleNestingClick(event);\n }\n };\n getNestingProps = () => {\n const { size } = this.asProps;\n return {\n size,\n onClick: this.handleNestingClick,\n onKeyDown: this.handleNestingKeyDown,\n };\n };\n handleNestedVisibleChange = (lastUserInteraction) => {\n if (\n this.asProps.visible &&\n this.asProps.highlightedIndex === null &&\n lastUserInteraction === 'keyboard'\n ) {\n this.handlers.highlightedIndex(0);\n }\n };\n getNestingTriggerProps = () => {\n const { size, visible } = this.asProps;\n return {\n size,\n visible,\n onNestedVisibleChange: this.handleNestedVisibleChange,\n };\n };\n getNestingItemProps = () => {\n return this.getNestingTriggerProps();\n };\n\n getItemHintProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n getItemTitleProps() {\n const { size } = this.asProps;\n return {\n size,\n };\n }\n\n scrollToNode = (node) => {\n if (node) {\n this.highlightedItemRef.current = node;\n }\n setTimeout(() => {\n if (node?.scrollIntoView) {\n if (this.asProps.highlightedIndex !== this.prevHighlightedIndex) {\n this.prevHighlightedIndex = this.asProps.highlightedIndex;\n node.scrollIntoView({\n block: 'nearest',\n inline: 'nearest',\n });\n }\n }\n }, 0);\n };\n\n moveHighlightedIndex(amount, e) {\n let { highlightedIndex } = this.asProps;\n const itemsLastIndex = this.itemProps.length - 1;\n const selectedIndex = this.itemProps.findIndex((item) => item.selected);\n\n if (itemsLastIndex < 0) return;\n\n if (highlightedIndex == null) {\n if (selectedIndex !== -1) {\n highlightedIndex = selectedIndex;\n } else if (this.highlightedItemRef.current) {\n highlightedIndex = this.prevHighlightedIndex;\n } else {\n highlightedIndex = amount < 0 ? 0 : itemsLastIndex;\n }\n }\n\n let newIndex = highlightedIndex + amount;\n if (newIndex < 0) {\n newIndex = amount + itemsLastIndex + 1;\n } else if (newIndex > itemsLastIndex) {\n newIndex = newIndex - itemsLastIndex - 1;\n }\n\n if (this.itemProps[newIndex]?.disabled) {\n this.moveHighlightedIndex(amount < 0 ? amount - 1 : amount + 1, e);\n } else {\n this.handlers.highlightedIndex(newIndex, e);\n }\n }\n\n componentDidUpdate() {\n if (!this.asProps.visible) {\n this.handlers.highlightedIndex(null);\n this.highlightedItemRef.current = null;\n }\n if (\n (this.state.focusLockItemIndex !== this.asProps.highlightedIndex || !this.asProps.visible) &&\n this.state.focusLockItemIndex !== null\n ) {\n setTimeout(() => {\n this.setState({ focusLockItemIndex: null });\n }, 0);\n }\n }\n\n render() {\n const { Children } = this.asProps;\n\n this.itemProps = [];\n\n return (\n <Root render={Dropdown}>\n <Children />\n </Root>\n );\n }\n}\n\nfunction List(props) {\n const SDropdownMenuList = Root;\n const { uid } = props;\n\n return sstyled(props.styles)(\n <SDropdownMenuList\n render={ScrollAreaComponent}\n tabIndex={null}\n role='menu'\n aria-labelledby={`igc-${uid}-trigger`}\n shadow={true}\n styles={scrollStyles}\n />,\n );\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 <DropdownMenu.Popper {...popperProps}>\n <Root render={DropdownMenu.List} />\n </DropdownMenu.Popper>\n );\n}\n\nfunction Item({\n styles,\n label,\n triggerRef,\n focusLock,\n disabled,\n highlighted,\n handleFocusOut,\n keyboardFocused,\n}) {\n const SDropdownMenuItem = Root;\n const ref = React.useRef();\n\n useFocusLock(ref, false, triggerRef, !focusLock || disabled, true, handleFocusOut);\n\n return sstyled(styles)(\n <SDropdownMenuItem\n ref={ref}\n render={Flex}\n role='menuitem'\n tabIndex={-1}\n id={label}\n use:highlighted={!disabled && highlighted && keyboardFocused}\n />,\n );\n}\n\nconst NestingContext = React.createContext(null);\n\nfunction Nesting({ styles, disabled }) {\n const SDropdownMenuNesting = Root;\n const contextValue = React.useMemo(() => ({ disabled }), [disabled]);\n\n return (\n <NestingContext.Provider value={contextValue}>\n {sstyled(styles)(<SDropdownMenuNesting aria-haspopup='true' render={DropdownMenu.Item} />)}\n </NestingContext.Provider>\n );\n}\n\nfunction NestingTrigger(props) {\n const { styles, visible, onNestedVisibleChange } = props;\n const SDropdownMenuItem = Root;\n const nestingContext = React.useContext(NestingContext);\n const disabled = props.disabled || nestingContext?.disabled;\n\n const lastUserInteractionRef = React.useRef(undefined);\n React.useEffect(() => {\n onNestedVisibleChange(lastUserInteractionRef.current);\n }, [visible]);\n\n const handleMouseEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'mouse';\n }, []);\n const handleKeyboardEvent = React.useCallback(() => {\n lastUserInteractionRef.current = 'keyboard';\n }, []);\n\n React.useEffect(() => {\n document.addEventListener('mouseover', handleMouseEvent, { capture: true });\n document.addEventListener('keydown', handleKeyboardEvent, { capture: true });\n return () => {\n document.removeEventListener('mouseover', handleMouseEvent, { capture: true });\n document.removeEventListener('keydown', handleKeyboardEvent, { capture: true });\n };\n }, []);\n\n return (\n <NestingContext.Provider value={null}>\n {sstyled(styles)(\n <SDropdownMenuItem nesting-trigger tabIndex={!disabled ? 0 : undefined} render={Flex} />,\n )}\n </NestingContext.Provider>\n );\n}\n\nfunction NestingItem(props) {\n const { styles } = props;\n const SDropdownNestingItem = Root;\n\n return sstyled(styles)(<SDropdownNestingItem render={NestingTrigger} tabIndex={-1} />);\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 Hint(props) {\n const SDropdownMenuItem = Root;\n return sstyled(props.styles)(<SDropdownMenuItem render={Flex} variant='hint' />);\n}\n\nfunction Title(props) {\n const SDropdownMenuItem = Root;\n return sstyled(props.styles)(<SDropdownMenuItem render={Flex} variant='title' />);\n}\n\nfunction Trigger({ keyboardFocused, onKeyboardFocusedStateChange }) {\n React.useEffect(\n () => onKeyboardFocusedStateChange(keyboardFocused),\n [keyboardFocused, onKeyboardFocusedStateChange],\n );\n\n return <Root render={Dropdown.Trigger} aria-haspopup='true' />;\n}\nTrigger.enhance = [keyboardFocusEnhance(false)];\n\nconst DropdownMenu = createComponent(\n DropdownMenuRoot,\n {\n Trigger,\n Popper: Dropdown.Popper,\n List,\n Menu,\n Item: [Item, { Addon }],\n Nesting: [Nesting, { Trigger: NestingTrigger, Addon, Item: NestingItem }],\n ItemTitle: Title,\n ItemHint: Hint,\n },\n {\n parent: [Dropdown],\n },\n);\n\nexport default DropdownMenu;\n"],"mappings":"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"}
|
@@ -11,12 +11,12 @@ var _core = require("intergalactic/core");
|
|
11
11
|
*
|
12
12
|
* We will figure out what to do with it and remove it.
|
13
13
|
* */
|
14
|
-
var scrollStyles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".
|
15
|
-
"__SShadowHorizontal": "
|
16
|
-
"_position_median": "
|
17
|
-
"_position_start": "
|
18
|
-
"_position_end": "
|
19
|
-
"__SShadowVertical": "
|
14
|
+
var scrollStyles = ( /*__reshadow_css_start__*/_core.sstyled.insert( /*__inner_css_start__*/".___SShadowHorizontal_19l94_gg_:after,.___SShadowHorizontal_19l94_gg_:before{width:16px;height:100%;border-radius:var(--intergalactic-control-rounded, 6px)}.___SShadowHorizontal_19l94_gg_._position_median_19l94_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 )}.___SShadowHorizontal_19l94_gg_._position_median_19l94_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 )}.___SShadowHorizontal_19l94_gg_._position_start_19l94_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 )}.___SShadowHorizontal_19l94_gg_._position_end_19l94_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 )}.___SShadowVertical_19l94_gg_:after,.___SShadowVertical_19l94_gg_:before{width:100%;height:16px;border-radius:var(--intergalactic-control-rounded, 6px)}.___SShadowVertical_19l94_gg_._position_median_19l94_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 )}.___SShadowVertical_19l94_gg_._position_median_19l94_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 )}.___SShadowVertical_19l94_gg_._position_start_19l94_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 )}.___SShadowVertical_19l94_gg_._position_end_19l94_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 )}" /*__inner_css_end__*/, "19l94_gg_") /*__reshadow_css_end__*/, {
|
15
|
+
"__SShadowHorizontal": "___SShadowHorizontal_19l94_gg_",
|
16
|
+
"_position_median": "_position_median_19l94_gg_",
|
17
|
+
"_position_start": "_position_start_19l94_gg_",
|
18
|
+
"_position_end": "_position_end_19l94_gg_",
|
19
|
+
"__SShadowVertical": "___SShadowVertical_19l94_gg_"
|
20
20
|
});
|
21
21
|
var _default = scrollStyles;
|
22
22
|
exports["default"] = _default;
|
@@ -33,22 +33,22 @@ import { useFocusLock } from 'intergalactic/utils/lib/use/useFocusLock';
|
|
33
33
|
import { hasParent } from 'intergalactic/utils/lib/hasParent';
|
34
34
|
import scrollStyles from './styleScrollArea';
|
35
35
|
/*__reshadow-styles__:"./style/dropdown-menu.shadow.css"*/
|
36
|
-
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".
|
37
|
-
"__SDropdownMenuList": "
|
38
|
-
"__SDropdownMenuItem": "
|
39
|
-
"_highlighted": "
|
40
|
-
"_disabled": "
|
41
|
-
"_size_l": "
|
42
|
-
"_size_m": "
|
43
|
-
"_visible": "
|
44
|
-
"_nesting-trigger": "__nesting-
|
45
|
-
"__SDropdownMenuNesting": "
|
46
|
-
"__SDropdownNestingItem": "
|
47
|
-
"_selected": "
|
48
|
-
"_notInteractive": "
|
49
|
-
"_variant_hint": "
|
50
|
-
"_variant_title": "
|
51
|
-
"__SDropdownMenuItemAddon": "
|
36
|
+
var style = ( /*__reshadow_css_start__*/_sstyled.insert( /*__inner_css_start__*/".___SDropdownMenuItem_1iadm_gg_,.___SDropdownMenuList_1iadm_gg_{position:relative;color:var(--intergalactic-text-primary, #191b23)}.___SDropdownMenuList_1iadm_gg_{max-height:240px;padding:var(--intergalactic-spacing-1x, 4px)0;min-height:26px;min-width:32px;box-sizing:content-box;z-index:0}.___SDropdownMenuItem_1iadm_gg_{display:flex;align-items:center;-webkit-text-decoration:none;text-decoration:none;box-sizing:border-box;cursor:pointer;width:100%;text-align:left;line-height:normal}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}}.___SDropdownMenuItem_1iadm_gg_:focus{outline:0}.___SDropdownMenuItem_1iadm_gg_.__selected_1iadm_gg_{background-color:var(--intergalactic-dropdown-menu-item-selected, rgba(196, 229, 254, 0.7));box-shadow:2px 0 0 0 var(--intergalactic-control-primary-info, #008ff8) inset}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_.__selected_1iadm_gg_:hover{background-color:var(--intergalactic-dropdown-menu-item-selected-hover, #c4e5fe)}}.___SDropdownMenuItem_1iadm_gg_.__highlighted_1iadm_gg_:not(:focus-within){z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownMenuItem_1iadm_gg_.__disabled_1iadm_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none}.___SDropdownMenuItem_1iadm_gg_._size_l_1iadm_gg_{font-size:var(--intergalactic-fs-300, 16px);line-height:var(--intergalactic-lh-300, 150%);padding:var(--intergalactic-spacing-2x, 8px) var(--intergalactic-spacing-3x, 12px);min-height:40px}.___SDropdownMenuItem_1iadm_gg_._size_m_1iadm_gg_{font-size:var(--intergalactic-fs-200, 14px);line-height:var(--intergalactic-lh-200, 142%);padding:calc(var(--intergalactic-spacing-1x, 4px) + var(--intergalactic-spacing-05x, 2px)) var(--intergalactic-spacing-2x, 8px);min-height:32px}.___SDropdownMenuItem_1iadm_gg_.__notInteractive_1iadm_gg_{cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_.__notInteractive_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_._variant_hint_1iadm_gg_{color:var(--intergalactic-text-secondary, #6c6e79);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_._variant_hint_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_._variant_title_1iadm_gg_{font-weight:var(--intergalactic-bold, 700);cursor:default}@media (hover:hover){.___SDropdownMenuItem_1iadm_gg_._variant_title_1iadm_gg_:hover{background:0 0}}.___SDropdownMenuItem_1iadm_gg_.__visible_1iadm_gg_{background-color:var(--intergalactic-dropdown-menu-item-hover, #f4f5f9)}.___SDropdownMenuItem_1iadm_gg_.__nesting-trigger_1iadm_gg_{justify-content:space-between}.___SDropdownMenuItemAddon_1iadm_gg_{display:inline-flex;margin-left:var(--intergalactic-spacing-2x, 8px);margin-right:var(--intergalactic-spacing-2x, 8px)}.___SDropdownMenuItemAddon_1iadm_gg_:first-child{margin-left:0}.___SDropdownMenuItemAddon_1iadm_gg_:last-child{margin-right:0}.___SDropdownMenuNesting_1iadm_gg_,.___SDropdownMenuNesting_1iadm_gg_._size_l_1iadm_gg_,.___SDropdownMenuNesting_1iadm_gg_._size_m_1iadm_gg_{padding:0}.___SDropdownMenuNesting_1iadm_gg_.__highlighted_1iadm_gg_{z-index:1;box-shadow:var(--intergalactic-keyboard-focus, 0px 0px 0px 3px rgba(0, 143, 248, 0.5)) inset}.___SDropdownNestingItem_1iadm_gg_._size_l_1iadm_gg_,.___SDropdownNestingItem_1iadm_gg_._size_m_1iadm_gg_{padding-right:0}.___SDropdownNestingItem_1iadm_gg_ .___SDropdownMenuItem_1iadm_gg_{width:auto;padding-top:0;padding-bottom:0;padding-left:0;min-height:auto}" /*__inner_css_end__*/, "1iadm_gg_") /*__reshadow_css_end__*/, {
|
37
|
+
"__SDropdownMenuList": "___SDropdownMenuList_1iadm_gg_",
|
38
|
+
"__SDropdownMenuItem": "___SDropdownMenuItem_1iadm_gg_",
|
39
|
+
"_highlighted": "__highlighted_1iadm_gg_",
|
40
|
+
"_disabled": "__disabled_1iadm_gg_",
|
41
|
+
"_size_l": "_size_l_1iadm_gg_",
|
42
|
+
"_size_m": "_size_m_1iadm_gg_",
|
43
|
+
"_visible": "__visible_1iadm_gg_",
|
44
|
+
"_nesting-trigger": "__nesting-trigger_1iadm_gg_",
|
45
|
+
"__SDropdownMenuNesting": "___SDropdownMenuNesting_1iadm_gg_",
|
46
|
+
"__SDropdownNestingItem": "___SDropdownNestingItem_1iadm_gg_",
|
47
|
+
"_selected": "__selected_1iadm_gg_",
|
48
|
+
"_notInteractive": "__notInteractive_1iadm_gg_",
|
49
|
+
"_variant_hint": "_variant_hint_1iadm_gg_",
|
50
|
+
"_variant_title": "_variant_title_1iadm_gg_",
|
51
|
+
"__SDropdownMenuItemAddon": "___SDropdownMenuItemAddon_1iadm_gg_"
|
52
52
|
});
|
53
53
|
import { setFocus } from 'intergalactic/utils/lib/focus-lock/setFocus';
|
54
54
|
import { isFocusInside } from 'intergalactic/utils/lib/focus-lock/isFocusInside';
|
@@ -129,6 +129,11 @@ var DropdownMenuRoot = /*#__PURE__*/function (_Component) {
|
|
129
129
|
return;
|
130
130
|
}
|
131
131
|
}
|
132
|
+
if (e.key.startsWith('Arrow') && !_this.state.keyboardFocused) {
|
133
|
+
_this.setState({
|
134
|
+
keyboardFocused: true
|
135
|
+
});
|
136
|
+
}
|
132
137
|
if (['ArrowLeft', 'ArrowRight'].includes(e.key)) {
|
133
138
|
var _item = highlightedIndex !== null && _this.itemRefs[highlightedIndex];
|
134
139
|
var focusable = getFocusableIn(_item);
|