downshift 9.3.2 → 9.4.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/downshift.cjs.cjs +617 -698
- package/dist/downshift.d.ts +49 -55
- package/dist/downshift.esm.mjs +618 -699
- package/dist/downshift.native.cjs.cjs +575 -653
- package/dist/downshift.nativeweb.cjs.cjs +615 -693
- package/dist/downshift.types.d.ts +205 -0
- package/dist/downshift.umd.js +621 -702
- package/dist/downshift.umd.js.map +1 -1
- package/dist/downshift.umd.min.js +1 -1
- package/dist/downshift.umd.min.js.map +1 -1
- package/dist/hooks/testUtils/MemoizedItem.d.ts +10 -0
- package/dist/hooks/testUtils/fixtures.d.ts +16 -0
- package/dist/hooks/testUtils/index.d.ts +4 -0
- package/dist/hooks/testUtils/interactions.d.ts +16 -0
- package/dist/hooks/testUtils/testCases.d.ts +2 -0
- package/dist/hooks/useCombobox/__tests__/utils/index.d.ts +5 -0
- package/dist/hooks/useCombobox/__tests__/utils/interactions.d.ts +6 -0
- package/dist/hooks/useCombobox/__tests__/utils/renderCombobox.d.ts +72 -0
- package/dist/hooks/useCombobox/__tests__/utils/renderUseCombobox.d.ts +2 -0
- package/dist/hooks/useCombobox/index.d.ts +4 -94
- package/dist/hooks/useCombobox/index.types.d.ts +302 -0
- package/dist/hooks/useCombobox/reducer.d.ts +4 -1
- package/dist/hooks/useCombobox/stateChangeTypes.d.ts +24 -23
- package/dist/hooks/useCombobox/utils/getInitialState.d.ts +10 -0
- package/dist/hooks/useCombobox/utils/index.d.ts +3 -0
- package/dist/hooks/useCombobox/{utils.d.ts → utils/propTypes.d.ts} +2 -30
- package/dist/hooks/useCombobox/utils/useControlledReducer.d.ts +16 -0
- package/dist/hooks/useMultipleSelection/index.d.ts +25 -13
- package/dist/hooks/useMultipleSelection/index.types.d.ts +117 -0
- package/dist/hooks/useMultipleSelection/reducer.d.ts +1 -1
- package/dist/hooks/useMultipleSelection/utils.d.ts +14 -15
- package/dist/hooks/useSelect/__tests__/utils/getItemIndexByCharacter.d.ts +7 -0
- package/dist/hooks/useSelect/__tests__/utils/index.d.ts +6 -0
- package/dist/hooks/useSelect/__tests__/utils/renderSelect.d.ts +71 -0
- package/dist/hooks/useSelect/__tests__/utils/renderUseSelect.d.ts +2 -0
- package/dist/hooks/useSelect/__tests__/utils/stateChangeTestCases.d.ts +182 -0
- package/dist/hooks/useSelect/index.d.ts +4 -71
- package/dist/hooks/useSelect/index.types.d.ts +266 -0
- package/dist/hooks/useSelect/reducer.d.ts +4 -1
- package/dist/hooks/useSelect/stateChangeTypes.d.ts +23 -22
- package/dist/hooks/useSelect/utils/index.d.ts +0 -1
- package/dist/hooks/useTagGroup/__tests__/utils/renderTagGroup.d.ts +1 -1
- package/dist/hooks/useTagGroup/index.types.d.ts +10 -13
- package/dist/hooks/useTagGroup/reducer.d.ts +4 -2
- package/dist/hooks/useTagGroup/utils/index.d.ts +3 -1
- package/dist/hooks/utils/__tests__/dropdownDefaultProps.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getChangesOnSelection.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getDefaultHighlightedIndex.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getDefaultValue.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getHighlightedIndexOnOpen.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getInitialValue.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/getItemAndIndex.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/isDropdownStateEqual.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useA11yMessageStatus.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useControlPropsValidator.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useControlledReducer.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useElementIds.legacy.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useElementIds.r18.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useEnhancedReducer.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useGetterPropsCalledChecker.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useIsInitialMount.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useMouseAndTouchTracker.test.d.ts +1 -0
- package/dist/hooks/utils/__tests__/useScrollIntoView.test.d.ts +1 -0
- package/dist/hooks/utils/callOnChangeProps.d.ts +4 -0
- package/dist/hooks/utils/dropdownDefaultProps.d.ts +13 -0
- package/dist/hooks/{utils.dropdown/defaultStateValues.d.ts → utils/dropdownDefaultStateValues.d.ts} +2 -2
- package/dist/hooks/{utils.dropdown/propTypes.d.ts → utils/dropdownPropTypes.d.ts} +1 -1
- package/dist/hooks/utils/getChangesOnSelection.d.ts +17 -0
- package/dist/hooks/utils/getDefaultHighlightedIndex.d.ts +7 -0
- package/dist/hooks/utils/getDefaultValue.d.ts +8 -0
- package/dist/hooks/utils/getHighlightedIndexOnOpen.d.ts +16 -0
- package/dist/hooks/utils/getInitialState.d.ts +23 -0
- package/dist/hooks/utils/getInitialValue.d.ts +14 -0
- package/dist/hooks/utils/index.d.ts +24 -0
- package/dist/hooks/utils/index.types.d.ts +26 -0
- package/dist/hooks/utils/isDropdownStateEqual.d.ts +16 -0
- package/dist/hooks/utils/reducer.d.ts +27 -0
- package/dist/hooks/utils/useControlPropsValidator.d.ts +6 -0
- package/dist/hooks/utils/useControlledReducer.d.ts +13 -0
- package/dist/hooks/utils/useEnhancedReducer.d.ts +15 -0
- package/dist/hooks/utils/useGetterPropsCalledChecker.d.ts +2 -0
- package/dist/hooks/utils/useMouseAndTouchTracker.d.ts +15 -0
- package/dist/hooks/utils/useScrollIntoView.d.ts +11 -0
- package/dist/index.d.ts +1 -1
- package/dist/utils/__tests__/callAllEventHandlers.test.d.ts +1 -0
- package/dist/utils/__tests__/debounce.test.d.ts +1 -0
- package/dist/utils/__tests__/generateId.r18.test.d.ts +1 -0
- package/dist/utils/__tests__/generateId.test.d.ts +1 -0
- package/dist/utils/__tests__/getHighlightedIndex.test.d.ts +1 -0
- package/dist/utils/__tests__/getNonDisabledIndex.test.d.ts +1 -0
- package/dist/utils/__tests__/getState.test.d.ts +1 -0
- package/dist/utils/__tests__/handleRefs.test.d.ts +1 -0
- package/dist/utils/__tests__/normalizeArrowKey.test.d.ts +1 -0
- package/dist/utils/__tests__/scrollIntoView.test.d.ts +1 -0
- package/dist/utils/__tests__/setA11yStatus.test.d.ts +1 -0
- package/dist/utils/__tests__/targetWithinDownshift.test.d.ts +1 -0
- package/dist/utils/__tests__/useLatestRef.test.d.ts +1 -0
- package/dist/utils/__tests__/validateControlledUnchanged.test.d.ts +1 -0
- package/dist/utils/__tests__/validatePropTypes.test.d.ts +1 -0
- package/dist/utils/getHighlightedIndex.d.ts +11 -0
- package/dist/utils/getNonDisabledIndex.d.ts +11 -0
- package/dist/utils/getState.d.ts +12 -0
- package/dist/utils/handleRefs.d.ts +2 -0
- package/dist/{utils-ts → utils}/index.d.ts +5 -1
- package/dist/utils/normalizeArrowKey.d.ts +6 -0
- package/dist/utils/targetWithinDownshift.d.ts +12 -0
- package/dist/utils/validateControlledUnchanged.d.ts +1 -0
- package/dist/utils/validatePropTypes.d.ts +2 -0
- package/dist/utils.legacy.d.ts +54 -0
- package/flow-typed/npm/downshift_v2.x.x.js.flow +87 -62
- package/package.json +2 -4
- package/preact/dist/downshift.cjs.cjs +617 -698
- package/preact/dist/downshift.cjs.js +4265 -0
- package/preact/dist/downshift.esm.js +4238 -0
- package/preact/dist/downshift.esm.mjs +618 -699
- package/preact/dist/downshift.umd.js +617 -698
- package/preact/dist/downshift.umd.js.map +1 -1
- package/preact/dist/downshift.umd.min.js +1 -1
- package/preact/dist/downshift.umd.min.js.map +1 -1
- package/typings/index.d.ts +13 -21
- package/dist/hooks/reducer.d.ts +0 -1
- package/dist/hooks/useSelect/utils/defaultProps.d.ts +0 -8
- package/dist/hooks/utils-ts/callOnChangeProps.d.ts +0 -2
- package/dist/hooks/utils-ts/getDefaultValue.d.ts +0 -2
- package/dist/hooks/utils-ts/getInitialValue.d.ts +0 -2
- package/dist/hooks/utils-ts/index.d.ts +0 -11
- package/dist/hooks/utils-ts/stateReducer.d.ts +0 -6
- package/dist/hooks/utils-ts/useControlledReducer.d.ts +0 -12
- package/dist/hooks/utils-ts/useEnhancedReducer.d.ts +0 -13
- package/dist/hooks/utils.d.ts +0 -58
- package/dist/hooks/utils.dropdown/defaultProps.d.ts +0 -9
- package/dist/hooks/utils.dropdown/index.d.ts +0 -3
- package/dist/utils-ts/getState.d.ts +0 -22
- package/dist/utils-ts/handleRefs.d.ts +0 -2
- package/dist/utils-ts/validatePropTypes.d.ts +0 -2
- package/dist/utils.d.ts +0 -123
- package/typings/index.legacy.d.ts +0 -888
- /package/dist/hooks/{utils-ts/__tests__/getItemAndIndex.test.d.ts → useCombobox/utils/__tests__/getInitialState.test.d.ts} +0 -0
- /package/dist/hooks/{utils.dropdown/__tests__/useElementIds.legacy.test.d.ts → useCombobox/utils/__tests__/useControlledReducer.test.d.ts} +0 -0
- /package/dist/hooks/{utils.dropdown/__tests__/useElementIds.r18.test.d.ts → useSelect/utils/__tests__/getItemIndexByCharacterKey.test.d.ts} +0 -0
- /package/dist/{utils-ts/__tests__/getState.test.d.ts → hooks/utils/__tests__/callOnChangeProps.test.d.ts} +0 -0
- /package/dist/{utils-ts/__tests__/handleRefs.test.d.ts → hooks/utils/__tests__/capitalizeString.test.d.ts} +0 -0
- /package/dist/hooks/{utils-ts → utils}/capitalizeString.d.ts +0 -0
- /package/dist/hooks/{utils-ts → utils}/getItemAndIndex.d.ts +0 -0
- /package/dist/hooks/{utils-ts → utils}/propTypes.d.ts +0 -0
- /package/dist/hooks/{utils-ts → utils}/useA11yMessageStatus.d.ts +0 -0
- /package/dist/hooks/{utils.dropdown → utils}/useElementIds.d.ts +0 -0
- /package/dist/hooks/{utils-ts → utils}/useIsInitialMount.d.ts +0 -0
- /package/dist/{utils-ts → utils}/callAllEventHandlers.d.ts +0 -0
- /package/dist/{utils-ts → utils}/debounce.d.ts +0 -0
- /package/dist/{utils-ts → utils}/generateId.d.ts +0 -0
- /package/dist/{utils-ts → utils}/noop.d.ts +0 -0
- /package/dist/{utils-ts → utils}/scrollIntoView.d.ts +0 -0
- /package/dist/{utils-ts → utils}/setA11yStatus.d.ts +0 -0
- /package/dist/{utils-ts → utils}/useLatestRef.d.ts +0 -0
|
@@ -1,888 +0,0 @@
|
|
|
1
|
-
import React from "react"
|
|
2
|
-
|
|
3
|
-
import {Environment} from '../dist/hooks/useTagGroup/index.types'
|
|
4
|
-
|
|
5
|
-
export {Environment}
|
|
6
|
-
|
|
7
|
-
export type Callback = () => void
|
|
8
|
-
|
|
9
|
-
export type Overwrite<T, U> = Pick<T, Exclude<keyof T, keyof U>> & U
|
|
10
|
-
|
|
11
|
-
export interface DownshiftState<Item> {
|
|
12
|
-
highlightedIndex: number | null
|
|
13
|
-
inputValue: string | null
|
|
14
|
-
isOpen: boolean
|
|
15
|
-
selectedItem: Item | null
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
export enum StateChangeTypes {
|
|
19
|
-
unknown = '__autocomplete_unknown__',
|
|
20
|
-
mouseUp = '__autocomplete_mouseup__',
|
|
21
|
-
itemMouseEnter = '__autocomplete_item_mouseenter__',
|
|
22
|
-
keyDownArrowUp = '__autocomplete_keydown_arrow_up__',
|
|
23
|
-
keyDownArrowDown = '__autocomplete_keydown_arrow_down__',
|
|
24
|
-
keyDownEscape = '__autocomplete_keydown_escape__',
|
|
25
|
-
keyDownEnter = '__autocomplete_keydown_enter__',
|
|
26
|
-
clickItem = '__autocomplete_click_item__',
|
|
27
|
-
blurInput = '__autocomplete_blur_input__',
|
|
28
|
-
changeInput = '__autocomplete_change_input__',
|
|
29
|
-
keyDownSpaceButton = '__autocomplete_keydown_space_button__',
|
|
30
|
-
clickButton = '__autocomplete_click_button__',
|
|
31
|
-
blurButton = '__autocomplete_blur_button__',
|
|
32
|
-
controlledPropUpdatedSelectedItem = '__autocomplete_controlled_prop_updated_selected_item__',
|
|
33
|
-
touchEnd = '__autocomplete_touchend__',
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export interface DownshiftProps<Item> {
|
|
37
|
-
initialSelectedItem?: Item
|
|
38
|
-
initialInputValue?: string
|
|
39
|
-
initialHighlightedIndex?: number | null
|
|
40
|
-
initialIsOpen?: boolean
|
|
41
|
-
defaultHighlightedIndex?: number | null
|
|
42
|
-
defaultIsOpen?: boolean
|
|
43
|
-
itemToString?: (item: Item | null) => string
|
|
44
|
-
selectedItemChanged?: (prevItem: Item, item: Item) => boolean
|
|
45
|
-
getA11yStatusMessage?: (options: A11yStatusMessageOptions<Item>) => string
|
|
46
|
-
onChange?: (
|
|
47
|
-
selectedItem: Item | null,
|
|
48
|
-
stateAndHelpers: ControllerStateAndHelpers<Item>,
|
|
49
|
-
) => void
|
|
50
|
-
onSelect?: (
|
|
51
|
-
selectedItem: Item | null,
|
|
52
|
-
stateAndHelpers: ControllerStateAndHelpers<Item>,
|
|
53
|
-
) => void
|
|
54
|
-
onStateChange?: (
|
|
55
|
-
options: StateChangeOptions<Item>,
|
|
56
|
-
stateAndHelpers: ControllerStateAndHelpers<Item>,
|
|
57
|
-
) => void
|
|
58
|
-
onInputValueChange?: (
|
|
59
|
-
inputValue: string,
|
|
60
|
-
stateAndHelpers: ControllerStateAndHelpers<Item>,
|
|
61
|
-
) => void
|
|
62
|
-
stateReducer?: (
|
|
63
|
-
state: DownshiftState<Item>,
|
|
64
|
-
changes: StateChangeOptions<Item>,
|
|
65
|
-
) => Partial<StateChangeOptions<Item>>
|
|
66
|
-
itemCount?: number
|
|
67
|
-
highlightedIndex?: number | null
|
|
68
|
-
inputValue?: string | null
|
|
69
|
-
isOpen?: boolean
|
|
70
|
-
selectedItem?: Item | null
|
|
71
|
-
children?: ChildrenFunction<Item>
|
|
72
|
-
id?: string
|
|
73
|
-
inputId?: string
|
|
74
|
-
labelId?: string
|
|
75
|
-
menuId?: string
|
|
76
|
-
getItemId?: (index?: number) => string
|
|
77
|
-
environment?: Environment
|
|
78
|
-
onOuterClick?: (stateAndHelpers: ControllerStateAndHelpers<Item>) => void
|
|
79
|
-
scrollIntoView?: (node: HTMLElement, menuNode: HTMLElement) => void
|
|
80
|
-
onUserAction?: (
|
|
81
|
-
options: StateChangeOptions<Item>,
|
|
82
|
-
stateAndHelpers: ControllerStateAndHelpers<Item>,
|
|
83
|
-
) => void
|
|
84
|
-
suppressRefError?: boolean
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
export interface A11yStatusMessageOptions<Item> {
|
|
88
|
-
highlightedIndex: number | null
|
|
89
|
-
inputValue: string
|
|
90
|
-
isOpen: boolean
|
|
91
|
-
itemToString: (item: Item | null) => string
|
|
92
|
-
previousResultCount: number
|
|
93
|
-
resultCount: number
|
|
94
|
-
highlightedItem: Item
|
|
95
|
-
selectedItem: Item | null
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
export interface StateChangeOptions<Item> extends Partial<DownshiftState<Item>> {
|
|
99
|
-
type: StateChangeTypes
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
export type StateChangeFunction<Item> = (
|
|
103
|
-
state: DownshiftState<Item>,
|
|
104
|
-
) => Partial<StateChangeOptions<Item>>
|
|
105
|
-
|
|
106
|
-
export interface GetRootPropsOptions {
|
|
107
|
-
refKey?: string
|
|
108
|
-
ref?: React.RefObject<any>
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
export interface GetRootPropsReturnValue {
|
|
112
|
-
'aria-expanded': boolean
|
|
113
|
-
'aria-haspopup': 'listbox'
|
|
114
|
-
'aria-labelledby': string
|
|
115
|
-
'aria-owns': string | undefined
|
|
116
|
-
ref?: React.RefObject<any>
|
|
117
|
-
role: 'combobox'
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
export interface GetInputPropsOptions extends React.HTMLProps<HTMLInputElement> {
|
|
121
|
-
disabled?: boolean
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
export interface GetInputPropsReturnValue {
|
|
125
|
-
'aria-autocomplete': 'list'
|
|
126
|
-
'aria-activedescendant': string | undefined
|
|
127
|
-
'aria-controls': string | undefined
|
|
128
|
-
'aria-labelledby': string | undefined
|
|
129
|
-
autoComplete: 'off'
|
|
130
|
-
id: string
|
|
131
|
-
onChange?: React.ChangeEventHandler
|
|
132
|
-
onChangeText?: React.ChangeEventHandler
|
|
133
|
-
onInput?: React.FormEventHandler
|
|
134
|
-
onKeyDown?: React.KeyboardEventHandler
|
|
135
|
-
onBlur?: React.FocusEventHandler
|
|
136
|
-
value: string
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
export interface GetLabelPropsOptions extends React.HTMLProps<HTMLLabelElement> {}
|
|
140
|
-
|
|
141
|
-
export interface GetLabelPropsReturnValue {
|
|
142
|
-
htmlFor: string
|
|
143
|
-
id: string
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
export interface GetToggleButtonPropsOptions extends React.HTMLProps<HTMLButtonElement> {
|
|
147
|
-
disabled?: boolean
|
|
148
|
-
onPress?: (event: React.BaseSyntheticEvent) => void
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
export interface GetToggleButtonPropsReturnValue {
|
|
152
|
-
'aria-label': 'close menu' | 'open menu'
|
|
153
|
-
'aria-haspopup': true
|
|
154
|
-
'data-toggle': true
|
|
155
|
-
onPress?: (event: React.BaseSyntheticEvent) => void
|
|
156
|
-
onClick?: React.MouseEventHandler
|
|
157
|
-
onKeyDown?: React.KeyboardEventHandler
|
|
158
|
-
onKeyUp?: React.KeyboardEventHandler
|
|
159
|
-
onBlur?: React.FocusEventHandler
|
|
160
|
-
role: 'button'
|
|
161
|
-
type: 'button'
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
export interface GetMenuPropsOptions
|
|
165
|
-
extends React.HTMLProps<HTMLElement>, GetPropsWithRefKey {
|
|
166
|
-
['aria-label']?: string
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
export interface GetMenuPropsReturnValue {
|
|
170
|
-
'aria-labelledby': string | undefined
|
|
171
|
-
ref?: React.RefObject<any>
|
|
172
|
-
role: 'listbox'
|
|
173
|
-
id: string
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
export interface GetPropsCommonOptions {
|
|
177
|
-
suppressRefError?: boolean
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
export interface GetPropsWithRefKey {
|
|
181
|
-
refKey?: string
|
|
182
|
-
}
|
|
183
|
-
|
|
184
|
-
export interface GetItemPropsOptions<Item> extends React.HTMLProps<HTMLElement> {
|
|
185
|
-
index?: number
|
|
186
|
-
item: Item
|
|
187
|
-
isSelected?: boolean
|
|
188
|
-
disabled?: boolean
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
export interface GetItemPropsReturnValue {
|
|
192
|
-
'aria-selected': boolean
|
|
193
|
-
id: string
|
|
194
|
-
onClick?: React.MouseEventHandler
|
|
195
|
-
onMouseDown?: React.MouseEventHandler
|
|
196
|
-
onMouseMove?: React.MouseEventHandler
|
|
197
|
-
onPress?: React.MouseEventHandler
|
|
198
|
-
role: 'option'
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
export interface PropGetters<Item> {
|
|
202
|
-
getRootProps: <Options>(
|
|
203
|
-
options?: GetRootPropsOptions & Options,
|
|
204
|
-
otherOptions?: GetPropsCommonOptions,
|
|
205
|
-
) => Overwrite<GetRootPropsReturnValue, Options>
|
|
206
|
-
getToggleButtonProps: <Options>(
|
|
207
|
-
options?: GetToggleButtonPropsOptions & Options,
|
|
208
|
-
) => Overwrite<GetToggleButtonPropsReturnValue, Options>
|
|
209
|
-
getLabelProps: <Options>(
|
|
210
|
-
options?: GetLabelPropsOptions & Options,
|
|
211
|
-
) => Overwrite<GetLabelPropsReturnValue, Options>
|
|
212
|
-
getMenuProps: <Options>(
|
|
213
|
-
options?: GetMenuPropsOptions & Options,
|
|
214
|
-
otherOptions?: GetPropsCommonOptions,
|
|
215
|
-
) => Overwrite<GetMenuPropsReturnValue, Options>
|
|
216
|
-
getInputProps: <Options>(
|
|
217
|
-
options?: GetInputPropsOptions & Options,
|
|
218
|
-
) => Overwrite<GetInputPropsReturnValue, Options>
|
|
219
|
-
getItemProps: <Options>(
|
|
220
|
-
options: GetItemPropsOptions<Item> & Options,
|
|
221
|
-
) => Omit<Overwrite<GetItemPropsReturnValue, Options>, 'index' | 'item'>
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
export interface Actions<Item> {
|
|
225
|
-
reset: (
|
|
226
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
227
|
-
cb?: Callback,
|
|
228
|
-
) => void
|
|
229
|
-
openMenu: (cb?: Callback) => void
|
|
230
|
-
closeMenu: (cb?: Callback) => void
|
|
231
|
-
toggleMenu: (
|
|
232
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
233
|
-
cb?: Callback,
|
|
234
|
-
) => void
|
|
235
|
-
selectItem: (
|
|
236
|
-
item: Item | null,
|
|
237
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
238
|
-
cb?: Callback,
|
|
239
|
-
) => void
|
|
240
|
-
selectItemAtIndex: (
|
|
241
|
-
index: number,
|
|
242
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
243
|
-
cb?: Callback,
|
|
244
|
-
) => void
|
|
245
|
-
selectHighlightedItem: (
|
|
246
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
247
|
-
cb?: Callback,
|
|
248
|
-
) => void
|
|
249
|
-
setHighlightedIndex: (
|
|
250
|
-
index: number,
|
|
251
|
-
otherStateToSet?: Partial<StateChangeOptions<Item>>,
|
|
252
|
-
cb?: Callback,
|
|
253
|
-
) => void
|
|
254
|
-
clearSelection: (cb?: Callback) => void
|
|
255
|
-
clearItems: () => void
|
|
256
|
-
setItemCount: (count: number) => void
|
|
257
|
-
unsetItemCount: () => void
|
|
258
|
-
setState: (
|
|
259
|
-
stateToSet: Partial<StateChangeOptions<Item>> | StateChangeFunction<Item>,
|
|
260
|
-
cb?: Callback,
|
|
261
|
-
) => void
|
|
262
|
-
itemToString: (item: Item | null) => string
|
|
263
|
-
}
|
|
264
|
-
|
|
265
|
-
export type ControllerStateAndHelpers<Item> = DownshiftState<Item> &
|
|
266
|
-
PropGetters<Item> &
|
|
267
|
-
Actions<Item>
|
|
268
|
-
|
|
269
|
-
export type ChildrenFunction<Item> = (
|
|
270
|
-
options: ControllerStateAndHelpers<Item>,
|
|
271
|
-
) => React.ReactNode
|
|
272
|
-
|
|
273
|
-
export default class Downshift<Item = any> extends React.Component<
|
|
274
|
-
DownshiftProps<Item>
|
|
275
|
-
> {
|
|
276
|
-
static stateChangeTypes: {
|
|
277
|
-
unknown: StateChangeTypes.unknown
|
|
278
|
-
mouseUp: StateChangeTypes.mouseUp
|
|
279
|
-
itemMouseEnter: StateChangeTypes.itemMouseEnter
|
|
280
|
-
keyDownArrowUp: StateChangeTypes.keyDownArrowUp
|
|
281
|
-
keyDownArrowDown: StateChangeTypes.keyDownArrowDown
|
|
282
|
-
keyDownEscape: StateChangeTypes.keyDownEscape
|
|
283
|
-
keyDownEnter: StateChangeTypes.keyDownEnter
|
|
284
|
-
clickItem: StateChangeTypes.clickItem
|
|
285
|
-
blurInput: StateChangeTypes.blurInput
|
|
286
|
-
changeInput: StateChangeTypes.changeInput
|
|
287
|
-
keyDownSpaceButton: StateChangeTypes.keyDownSpaceButton
|
|
288
|
-
clickButton: StateChangeTypes.clickButton
|
|
289
|
-
blurButton: StateChangeTypes.blurButton
|
|
290
|
-
controlledPropUpdatedSelectedItem: StateChangeTypes.controlledPropUpdatedSelectedItem
|
|
291
|
-
touchEnd: StateChangeTypes.touchEnd
|
|
292
|
-
}
|
|
293
|
-
}
|
|
294
|
-
|
|
295
|
-
export function resetIdCounter(): void
|
|
296
|
-
|
|
297
|
-
/* useSelect Types */
|
|
298
|
-
|
|
299
|
-
export interface UseSelectState<Item> {
|
|
300
|
-
highlightedIndex: number
|
|
301
|
-
selectedItem: Item | null
|
|
302
|
-
isOpen: boolean
|
|
303
|
-
inputValue: string
|
|
304
|
-
}
|
|
305
|
-
|
|
306
|
-
export enum UseSelectStateChangeTypes {
|
|
307
|
-
ToggleButtonClick = '__togglebutton_click__',
|
|
308
|
-
ToggleButtonKeyDownArrowDown = '__togglebutton_keydown_arrow_down__',
|
|
309
|
-
ToggleButtonKeyDownArrowUp = '__togglebutton_keydown_arrow_up__',
|
|
310
|
-
ToggleButtonKeyDownCharacter = '__togglebutton_keydown_character__',
|
|
311
|
-
ToggleButtonKeyDownEscape = '__togglebutton_keydown_escape__',
|
|
312
|
-
ToggleButtonKeyDownHome = '__togglebutton_keydown_home__',
|
|
313
|
-
ToggleButtonKeyDownEnd = '__togglebutton_keydown_end__',
|
|
314
|
-
ToggleButtonKeyDownEnter = '__togglebutton_keydown_enter__',
|
|
315
|
-
ToggleButtonKeyDownSpaceButton = '__togglebutton_keydown_space_button__',
|
|
316
|
-
ToggleButtonKeyDownPageUp = '__togglebutton_keydown_page_up__',
|
|
317
|
-
ToggleButtonKeyDownPageDown = '__togglebutton_keydown_page_down__',
|
|
318
|
-
ToggleButtonBlur = '__togglebutton_blur__',
|
|
319
|
-
MenuMouseLeave = '__menu_mouse_leave__',
|
|
320
|
-
ItemMouseMove = '__item_mouse_move__',
|
|
321
|
-
ItemClick = '__item_click__',
|
|
322
|
-
FunctionToggleMenu = '__function_toggle_menu__',
|
|
323
|
-
FunctionOpenMenu = '__function_open_menu__',
|
|
324
|
-
FunctionCloseMenu = '__function_close_menu__',
|
|
325
|
-
FunctionSetHighlightedIndex = '__function_set_highlighted_index__',
|
|
326
|
-
FunctionSelectItem = '__function_select_item__',
|
|
327
|
-
FunctionSetInputValue = '__function_set_input_value__',
|
|
328
|
-
FunctionReset = '__function_reset__',
|
|
329
|
-
}
|
|
330
|
-
|
|
331
|
-
export interface UseSelectProps<Item> {
|
|
332
|
-
items: Item[]
|
|
333
|
-
isItemDisabled?(item: Item, index: number): boolean
|
|
334
|
-
itemToString?: (item: Item | null) => string
|
|
335
|
-
itemToKey?: (item: Item | null) => any
|
|
336
|
-
getA11yStatusMessage?: (options: UseSelectState<Item>) => string
|
|
337
|
-
highlightedIndex?: number
|
|
338
|
-
initialHighlightedIndex?: number
|
|
339
|
-
defaultHighlightedIndex?: number
|
|
340
|
-
isOpen?: boolean
|
|
341
|
-
initialIsOpen?: boolean
|
|
342
|
-
defaultIsOpen?: boolean
|
|
343
|
-
selectedItem?: Item | null
|
|
344
|
-
initialSelectedItem?: Item | null
|
|
345
|
-
defaultSelectedItem?: Item | null
|
|
346
|
-
id?: string
|
|
347
|
-
labelId?: string
|
|
348
|
-
menuId?: string
|
|
349
|
-
toggleButtonId?: string
|
|
350
|
-
getItemId?: (index: number) => string
|
|
351
|
-
scrollIntoView?: (node: HTMLElement, menuNode: HTMLElement) => void
|
|
352
|
-
stateReducer?: (
|
|
353
|
-
state: UseSelectState<Item>,
|
|
354
|
-
actionAndChanges: UseSelectStateChangeOptions<Item>,
|
|
355
|
-
) => Partial<UseSelectState<Item>>
|
|
356
|
-
onSelectedItemChange?: (changes: UseSelectSelectedItemChange<Item>) => void
|
|
357
|
-
onIsOpenChange?: (changes: UseSelectIsOpenChange<Item>) => void
|
|
358
|
-
onHighlightedIndexChange?: (
|
|
359
|
-
changes: UseSelectHighlightedIndexChange<Item>,
|
|
360
|
-
) => void
|
|
361
|
-
onStateChange?: (changes: UseSelectStateChange<Item>) => void
|
|
362
|
-
environment?: Environment
|
|
363
|
-
}
|
|
364
|
-
|
|
365
|
-
export interface UseSelectStateChangeOptions<
|
|
366
|
-
Item,
|
|
367
|
-
> extends UseSelectDispatchAction<Item> {
|
|
368
|
-
changes: Partial<UseSelectState<Item>>
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
export interface UseSelectDispatchAction<Item> {
|
|
372
|
-
type: UseSelectStateChangeTypes
|
|
373
|
-
altKey?: boolean
|
|
374
|
-
key?: string
|
|
375
|
-
index?: number
|
|
376
|
-
highlightedIndex?: number
|
|
377
|
-
selectedItem?: Item | null
|
|
378
|
-
inputValue?: string
|
|
379
|
-
}
|
|
380
|
-
|
|
381
|
-
export interface UseSelectStateChange<Item> extends Partial<UseSelectState<Item>> {
|
|
382
|
-
type: UseSelectStateChangeTypes
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
export interface UseSelectSelectedItemChange<Item> extends UseSelectStateChange<Item> {
|
|
386
|
-
selectedItem: Item | null
|
|
387
|
-
}
|
|
388
|
-
|
|
389
|
-
export interface UseSelectHighlightedIndexChange<
|
|
390
|
-
Item,
|
|
391
|
-
> extends UseSelectStateChange<Item> {
|
|
392
|
-
highlightedIndex: number
|
|
393
|
-
}
|
|
394
|
-
|
|
395
|
-
export interface UseSelectIsOpenChange<Item> extends UseSelectStateChange<Item> {
|
|
396
|
-
isOpen: boolean
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
export interface UseSelectGetMenuPropsOptions
|
|
400
|
-
extends GetPropsWithRefKey, GetMenuPropsOptions {}
|
|
401
|
-
|
|
402
|
-
export interface UseSelectGetMenuReturnValue extends GetMenuPropsReturnValue {
|
|
403
|
-
onMouseLeave: React.MouseEventHandler
|
|
404
|
-
}
|
|
405
|
-
|
|
406
|
-
export interface UseSelectGetToggleButtonPropsOptions
|
|
407
|
-
extends GetPropsWithRefKey, React.HTMLProps<HTMLElement> {
|
|
408
|
-
onPress?: (event: React.BaseSyntheticEvent) => void
|
|
409
|
-
}
|
|
410
|
-
|
|
411
|
-
export interface UseSelectGetToggleButtonReturnValue extends Pick<
|
|
412
|
-
GetToggleButtonPropsReturnValue,
|
|
413
|
-
'onBlur' | 'onClick' | 'onPress' | 'onKeyDown'
|
|
414
|
-
> {
|
|
415
|
-
'aria-activedescendant': string
|
|
416
|
-
'aria-controls': string
|
|
417
|
-
'aria-expanded': boolean
|
|
418
|
-
'aria-haspopup': 'listbox'
|
|
419
|
-
'aria-labelledby': string | undefined
|
|
420
|
-
id: string
|
|
421
|
-
ref?: React.RefObject<any>
|
|
422
|
-
role: 'combobox'
|
|
423
|
-
tabIndex: 0
|
|
424
|
-
}
|
|
425
|
-
|
|
426
|
-
export interface UseSelectGetLabelPropsOptions extends GetLabelPropsOptions {}
|
|
427
|
-
|
|
428
|
-
export interface UseSelectGetLabelPropsReturnValue extends GetLabelPropsReturnValue {
|
|
429
|
-
onClick: React.MouseEventHandler
|
|
430
|
-
}
|
|
431
|
-
|
|
432
|
-
export interface UseSelectGetItemPropsOptions<Item>
|
|
433
|
-
extends Omit<GetItemPropsOptions<Item>, 'disabled'>, GetPropsWithRefKey {}
|
|
434
|
-
|
|
435
|
-
export interface UseSelectGetItemPropsReturnValue extends GetItemPropsReturnValue {
|
|
436
|
-
'aria-disabled': boolean
|
|
437
|
-
ref?: React.RefObject<any>
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
export interface UseSelectPropGetters<Item> {
|
|
441
|
-
getToggleButtonProps: <Options>(
|
|
442
|
-
options?: UseSelectGetToggleButtonPropsOptions & Options,
|
|
443
|
-
otherOptions?: GetPropsCommonOptions,
|
|
444
|
-
) => Overwrite<UseSelectGetToggleButtonReturnValue, Options>
|
|
445
|
-
getLabelProps: <Options>(
|
|
446
|
-
options?: UseSelectGetLabelPropsOptions & Options,
|
|
447
|
-
) => Overwrite<UseSelectGetLabelPropsReturnValue, Options>
|
|
448
|
-
getMenuProps: <Options>(
|
|
449
|
-
options?: UseSelectGetMenuPropsOptions & Options,
|
|
450
|
-
otherOptions?: GetPropsCommonOptions,
|
|
451
|
-
) => Overwrite<UseSelectGetMenuReturnValue, Options>
|
|
452
|
-
getItemProps: <Options>(
|
|
453
|
-
options: UseSelectGetItemPropsOptions<Item> & Options,
|
|
454
|
-
) => Omit<
|
|
455
|
-
Overwrite<UseSelectGetItemPropsReturnValue, Options>,
|
|
456
|
-
'index' | 'item'
|
|
457
|
-
>
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
export interface UseSelectActions<Item> {
|
|
461
|
-
reset: () => void
|
|
462
|
-
openMenu: () => void
|
|
463
|
-
closeMenu: () => void
|
|
464
|
-
toggleMenu: () => void
|
|
465
|
-
selectItem: (item: Item | null) => void
|
|
466
|
-
setHighlightedIndex: (index: number) => void
|
|
467
|
-
}
|
|
468
|
-
|
|
469
|
-
export type UseSelectReturnValue<Item> = UseSelectState<Item> &
|
|
470
|
-
UseSelectPropGetters<Item> &
|
|
471
|
-
UseSelectActions<Item>
|
|
472
|
-
|
|
473
|
-
export interface UseSelectInterface {
|
|
474
|
-
<Item>(props: UseSelectProps<Item>): UseSelectReturnValue<Item>
|
|
475
|
-
stateChangeTypes: {
|
|
476
|
-
ToggleButtonClick: UseSelectStateChangeTypes.ToggleButtonClick
|
|
477
|
-
ToggleButtonKeyDownArrowDown: UseSelectStateChangeTypes.ToggleButtonKeyDownArrowDown
|
|
478
|
-
ToggleButtonKeyDownArrowUp: UseSelectStateChangeTypes.ToggleButtonKeyDownArrowUp
|
|
479
|
-
ToggleButtonKeyDownCharacter: UseSelectStateChangeTypes.ToggleButtonKeyDownCharacter
|
|
480
|
-
ToggleButtonKeyDownEscape: UseSelectStateChangeTypes.ToggleButtonKeyDownEscape
|
|
481
|
-
ToggleButtonKeyDownHome: UseSelectStateChangeTypes.ToggleButtonKeyDownHome
|
|
482
|
-
ToggleButtonKeyDownEnd: UseSelectStateChangeTypes.ToggleButtonKeyDownEnd
|
|
483
|
-
ToggleButtonKeyDownEnter: UseSelectStateChangeTypes.ToggleButtonKeyDownEnter
|
|
484
|
-
ToggleButtonKeyDownSpaceButton: UseSelectStateChangeTypes.ToggleButtonKeyDownSpaceButton
|
|
485
|
-
ToggleButtonKeyDownPageUp: UseSelectStateChangeTypes.ToggleButtonKeyDownPageUp
|
|
486
|
-
ToggleButtonKeyDownPageDown: UseSelectStateChangeTypes.ToggleButtonKeyDownPageDown
|
|
487
|
-
ToggleButtonBlur: UseSelectStateChangeTypes.ToggleButtonBlur
|
|
488
|
-
MenuMouseLeave: UseSelectStateChangeTypes.MenuMouseLeave
|
|
489
|
-
ItemMouseMove: UseSelectStateChangeTypes.ItemMouseMove
|
|
490
|
-
ItemClick: UseSelectStateChangeTypes.ItemClick
|
|
491
|
-
FunctionToggleMenu: UseSelectStateChangeTypes.FunctionToggleMenu
|
|
492
|
-
FunctionOpenMenu: UseSelectStateChangeTypes.FunctionOpenMenu
|
|
493
|
-
FunctionCloseMenu: UseSelectStateChangeTypes.FunctionCloseMenu
|
|
494
|
-
FunctionSetHighlightedIndex: UseSelectStateChangeTypes.FunctionSetHighlightedIndex
|
|
495
|
-
FunctionSelectItem: UseSelectStateChangeTypes.FunctionSelectItem
|
|
496
|
-
FunctionSetInputValue: UseSelectStateChangeTypes.FunctionSetInputValue
|
|
497
|
-
FunctionReset: UseSelectStateChangeTypes.FunctionReset
|
|
498
|
-
}
|
|
499
|
-
}
|
|
500
|
-
|
|
501
|
-
export const useSelect: UseSelectInterface
|
|
502
|
-
|
|
503
|
-
/* useCombobox Types */
|
|
504
|
-
|
|
505
|
-
export interface UseComboboxState<Item> {
|
|
506
|
-
highlightedIndex: number
|
|
507
|
-
selectedItem: Item | null
|
|
508
|
-
isOpen: boolean
|
|
509
|
-
inputValue: string
|
|
510
|
-
}
|
|
511
|
-
|
|
512
|
-
export enum UseComboboxStateChangeTypes {
|
|
513
|
-
InputKeyDownArrowDown = '__input_keydown_arrow_down__',
|
|
514
|
-
InputKeyDownArrowUp = '__input_keydown_arrow_up__',
|
|
515
|
-
InputKeyDownEscape = '__input_keydown_escape__',
|
|
516
|
-
InputKeyDownHome = '__input_keydown_home__',
|
|
517
|
-
InputKeyDownEnd = '__input_keydown_end__',
|
|
518
|
-
InputKeyDownPageUp = '__input_keydown_page_up__',
|
|
519
|
-
InputKeyDownPageDown = '__input_keydown_page_down__',
|
|
520
|
-
InputKeyDownEnter = '__input_keydown_enter__',
|
|
521
|
-
InputChange = '__input_change__',
|
|
522
|
-
InputBlur = '__input_blur__',
|
|
523
|
-
InputClick = '__input_click__',
|
|
524
|
-
MenuMouseLeave = '__menu_mouse_leave__',
|
|
525
|
-
ItemMouseMove = '__item_mouse_move__',
|
|
526
|
-
ItemClick = '__item_click__',
|
|
527
|
-
ToggleButtonClick = '__togglebutton_click__',
|
|
528
|
-
FunctionToggleMenu = '__function_toggle_menu__',
|
|
529
|
-
FunctionOpenMenu = '__function_open_menu__',
|
|
530
|
-
FunctionCloseMenu = '__function_close_menu__',
|
|
531
|
-
FunctionSetHighlightedIndex = '__function_set_highlighted_index__',
|
|
532
|
-
FunctionSelectItem = '__function_select_item__',
|
|
533
|
-
FunctionSetInputValue = '__function_set_input_value__',
|
|
534
|
-
FunctionReset = '__function_reset__',
|
|
535
|
-
ControlledPropUpdatedSelectedItem = '__controlled_prop_updated_selected_item__',
|
|
536
|
-
}
|
|
537
|
-
|
|
538
|
-
export interface UseComboboxProps<Item> {
|
|
539
|
-
items: Item[]
|
|
540
|
-
isItemDisabled?(item: Item, index: number): boolean
|
|
541
|
-
itemToString?: (item: Item | null) => string
|
|
542
|
-
itemToKey?: (item: Item | null) => any
|
|
543
|
-
getA11yStatusMessage?: (options: UseComboboxState<Item>) => string
|
|
544
|
-
highlightedIndex?: number
|
|
545
|
-
initialHighlightedIndex?: number
|
|
546
|
-
defaultHighlightedIndex?: number
|
|
547
|
-
isOpen?: boolean
|
|
548
|
-
initialIsOpen?: boolean
|
|
549
|
-
defaultIsOpen?: boolean
|
|
550
|
-
selectedItem?: Item | null
|
|
551
|
-
initialSelectedItem?: Item | null
|
|
552
|
-
defaultSelectedItem?: Item | null
|
|
553
|
-
inputValue?: string
|
|
554
|
-
initialInputValue?: string
|
|
555
|
-
defaultInputValue?: string
|
|
556
|
-
id?: string
|
|
557
|
-
labelId?: string
|
|
558
|
-
menuId?: string
|
|
559
|
-
toggleButtonId?: string
|
|
560
|
-
inputId?: string
|
|
561
|
-
getItemId?: (index: number) => string
|
|
562
|
-
scrollIntoView?: (node: HTMLElement, menuNode: HTMLElement) => void
|
|
563
|
-
stateReducer?: (
|
|
564
|
-
state: UseComboboxState<Item>,
|
|
565
|
-
actionAndChanges: UseComboboxStateChangeOptions<Item>,
|
|
566
|
-
) => Partial<UseComboboxState<Item>>
|
|
567
|
-
onSelectedItemChange?: (changes: UseComboboxSelectedItemChange<Item>) => void
|
|
568
|
-
onIsOpenChange?: (changes: UseComboboxIsOpenChange<Item>) => void
|
|
569
|
-
onHighlightedIndexChange?: (
|
|
570
|
-
changes: UseComboboxHighlightedIndexChange<Item>,
|
|
571
|
-
) => void
|
|
572
|
-
onStateChange?: (changes: UseComboboxStateChange<Item>) => void
|
|
573
|
-
onInputValueChange?: (changes: UseComboboxInputValueChange<Item>) => void
|
|
574
|
-
environment?: Environment
|
|
575
|
-
}
|
|
576
|
-
|
|
577
|
-
export interface UseComboboxStateChangeOptions<
|
|
578
|
-
Item,
|
|
579
|
-
> extends UseComboboxDispatchAction<Item> {
|
|
580
|
-
changes: Partial<UseComboboxState<Item>>
|
|
581
|
-
}
|
|
582
|
-
|
|
583
|
-
export interface UseComboboxDispatchAction<Item> {
|
|
584
|
-
type: UseComboboxStateChangeTypes
|
|
585
|
-
altKey?: boolean
|
|
586
|
-
inputValue?: string
|
|
587
|
-
index?: number
|
|
588
|
-
highlightedIndex?: number
|
|
589
|
-
selectedItem?: Item | null
|
|
590
|
-
selectItem?: boolean
|
|
591
|
-
}
|
|
592
|
-
|
|
593
|
-
export interface UseComboboxStateChange<Item> extends Partial<UseComboboxState<Item>> {
|
|
594
|
-
type: UseComboboxStateChangeTypes
|
|
595
|
-
}
|
|
596
|
-
|
|
597
|
-
export interface UseComboboxSelectedItemChange<
|
|
598
|
-
Item,
|
|
599
|
-
> extends UseComboboxStateChange<Item> {
|
|
600
|
-
selectedItem: Item | null
|
|
601
|
-
}
|
|
602
|
-
|
|
603
|
-
export interface UseComboboxHighlightedIndexChange<
|
|
604
|
-
Item,
|
|
605
|
-
> extends UseComboboxStateChange<Item> {
|
|
606
|
-
highlightedIndex: number
|
|
607
|
-
}
|
|
608
|
-
|
|
609
|
-
export interface UseComboboxIsOpenChange<Item> extends UseComboboxStateChange<Item> {
|
|
610
|
-
isOpen: boolean
|
|
611
|
-
}
|
|
612
|
-
|
|
613
|
-
export interface UseComboboxInputValueChange<
|
|
614
|
-
Item,
|
|
615
|
-
> extends UseComboboxStateChange<Item> {
|
|
616
|
-
inputValue: string
|
|
617
|
-
}
|
|
618
|
-
|
|
619
|
-
export interface UseComboboxGetMenuPropsOptions
|
|
620
|
-
extends GetPropsWithRefKey, GetMenuPropsOptions {}
|
|
621
|
-
|
|
622
|
-
export interface UseComboboxGetMenuPropsReturnValue extends UseSelectGetMenuReturnValue {}
|
|
623
|
-
|
|
624
|
-
export interface UseComboboxGetToggleButtonPropsOptions
|
|
625
|
-
extends GetPropsWithRefKey, GetToggleButtonPropsOptions {}
|
|
626
|
-
|
|
627
|
-
export interface UseComboboxGetToggleButtonPropsReturnValue {
|
|
628
|
-
'aria-controls': string
|
|
629
|
-
'aria-expanded': boolean
|
|
630
|
-
id: string
|
|
631
|
-
onPress?: (event: React.BaseSyntheticEvent) => void
|
|
632
|
-
onClick?: React.MouseEventHandler
|
|
633
|
-
ref?: React.RefObject<any>
|
|
634
|
-
tabIndex: -1
|
|
635
|
-
}
|
|
636
|
-
|
|
637
|
-
export interface UseComboboxGetLabelPropsOptions extends GetLabelPropsOptions {}
|
|
638
|
-
|
|
639
|
-
export interface UseComboboxGetLabelPropsReturnValue extends GetLabelPropsReturnValue {}
|
|
640
|
-
|
|
641
|
-
export interface UseComboboxGetItemPropsOptions<Item>
|
|
642
|
-
extends Omit<GetItemPropsOptions<Item>, 'disabled'>, GetPropsWithRefKey {}
|
|
643
|
-
|
|
644
|
-
export interface UseComboboxGetItemPropsReturnValue extends GetItemPropsReturnValue {
|
|
645
|
-
'aria-disabled': boolean
|
|
646
|
-
ref?: React.RefObject<any>
|
|
647
|
-
}
|
|
648
|
-
|
|
649
|
-
export interface UseComboboxGetInputPropsOptions
|
|
650
|
-
extends GetInputPropsOptions, GetPropsWithRefKey {}
|
|
651
|
-
|
|
652
|
-
export interface UseComboboxGetInputPropsReturnValue extends GetInputPropsReturnValue {
|
|
653
|
-
'aria-activedescendant': string
|
|
654
|
-
'aria-controls': string
|
|
655
|
-
'aria-expanded': boolean
|
|
656
|
-
role: 'combobox'
|
|
657
|
-
onClick: React.MouseEventHandler
|
|
658
|
-
}
|
|
659
|
-
|
|
660
|
-
export interface UseComboboxPropGetters<Item> {
|
|
661
|
-
getToggleButtonProps: <Options>(
|
|
662
|
-
options?: UseComboboxGetToggleButtonPropsOptions & Options,
|
|
663
|
-
) => Overwrite<UseComboboxGetToggleButtonPropsReturnValue, Options>
|
|
664
|
-
getLabelProps: <Options>(
|
|
665
|
-
options?: UseComboboxGetLabelPropsOptions & Options,
|
|
666
|
-
) => Overwrite<UseComboboxGetLabelPropsReturnValue, Options>
|
|
667
|
-
getMenuProps: <Options>(
|
|
668
|
-
options?: UseComboboxGetMenuPropsOptions & Options,
|
|
669
|
-
otherOptions?: GetPropsCommonOptions,
|
|
670
|
-
) => Overwrite<UseComboboxGetMenuPropsReturnValue, Options>
|
|
671
|
-
getItemProps: <Options>(
|
|
672
|
-
options: UseComboboxGetItemPropsOptions<Item> & Options,
|
|
673
|
-
) => Omit<
|
|
674
|
-
Overwrite<UseComboboxGetItemPropsReturnValue, Options>,
|
|
675
|
-
'index' | 'item'
|
|
676
|
-
>
|
|
677
|
-
getInputProps: <Options>(
|
|
678
|
-
options?: UseComboboxGetInputPropsOptions & Options,
|
|
679
|
-
otherOptions?: GetPropsCommonOptions,
|
|
680
|
-
) => Overwrite<UseComboboxGetInputPropsReturnValue, Options>
|
|
681
|
-
}
|
|
682
|
-
|
|
683
|
-
export interface UseComboboxActions<Item> {
|
|
684
|
-
reset: () => void
|
|
685
|
-
openMenu: () => void
|
|
686
|
-
closeMenu: () => void
|
|
687
|
-
toggleMenu: () => void
|
|
688
|
-
selectItem: (item: Item | null) => void
|
|
689
|
-
setHighlightedIndex: (index: number) => void
|
|
690
|
-
setInputValue: (inputValue: string) => void
|
|
691
|
-
}
|
|
692
|
-
|
|
693
|
-
export type UseComboboxReturnValue<Item> = UseComboboxState<Item> &
|
|
694
|
-
UseComboboxPropGetters<Item> &
|
|
695
|
-
UseComboboxActions<Item>
|
|
696
|
-
|
|
697
|
-
export interface UseComboboxInterface {
|
|
698
|
-
<Item>(props: UseComboboxProps<Item>): UseComboboxReturnValue<Item>
|
|
699
|
-
stateChangeTypes: {
|
|
700
|
-
InputKeyDownArrowDown: UseComboboxStateChangeTypes.InputKeyDownArrowDown
|
|
701
|
-
InputKeyDownArrowUp: UseComboboxStateChangeTypes.InputKeyDownArrowUp
|
|
702
|
-
InputKeyDownEscape: UseComboboxStateChangeTypes.InputKeyDownEscape
|
|
703
|
-
InputKeyDownHome: UseComboboxStateChangeTypes.InputKeyDownHome
|
|
704
|
-
InputKeyDownEnd: UseComboboxStateChangeTypes.InputKeyDownEnd
|
|
705
|
-
InputKeyDownPageDown: UseComboboxStateChangeTypes.InputKeyDownPageDown
|
|
706
|
-
InputKeyDownPageUp: UseComboboxStateChangeTypes.InputKeyDownPageUp
|
|
707
|
-
InputKeyDownEnter: UseComboboxStateChangeTypes.InputKeyDownEnter
|
|
708
|
-
InputChange: UseComboboxStateChangeTypes.InputChange
|
|
709
|
-
InputBlur: UseComboboxStateChangeTypes.InputBlur
|
|
710
|
-
InputClick: UseComboboxStateChangeTypes.InputClick
|
|
711
|
-
MenuMouseLeave: UseComboboxStateChangeTypes.MenuMouseLeave
|
|
712
|
-
ItemMouseMove: UseComboboxStateChangeTypes.ItemMouseMove
|
|
713
|
-
ItemClick: UseComboboxStateChangeTypes.ItemClick
|
|
714
|
-
ToggleButtonClick: UseComboboxStateChangeTypes.ToggleButtonClick
|
|
715
|
-
FunctionToggleMenu: UseComboboxStateChangeTypes.FunctionToggleMenu
|
|
716
|
-
FunctionOpenMenu: UseComboboxStateChangeTypes.FunctionOpenMenu
|
|
717
|
-
FunctionCloseMenu: UseComboboxStateChangeTypes.FunctionCloseMenu
|
|
718
|
-
FunctionSetHighlightedIndex: UseComboboxStateChangeTypes.FunctionSetHighlightedIndex
|
|
719
|
-
FunctionSelectItem: UseComboboxStateChangeTypes.FunctionSelectItem
|
|
720
|
-
FunctionSetInputValue: UseComboboxStateChangeTypes.FunctionSetInputValue
|
|
721
|
-
FunctionReset: UseComboboxStateChangeTypes.FunctionReset
|
|
722
|
-
ControlledPropUpdatedSelectedItem: UseComboboxStateChangeTypes.ControlledPropUpdatedSelectedItem
|
|
723
|
-
}
|
|
724
|
-
}
|
|
725
|
-
|
|
726
|
-
export const useCombobox: UseComboboxInterface
|
|
727
|
-
|
|
728
|
-
// useMultipleSelection types.
|
|
729
|
-
|
|
730
|
-
export interface UseMultipleSelectionState<Item> {
|
|
731
|
-
selectedItems: Item[]
|
|
732
|
-
activeIndex: number
|
|
733
|
-
}
|
|
734
|
-
|
|
735
|
-
export enum UseMultipleSelectionStateChangeTypes {
|
|
736
|
-
SelectedItemClick = '__selected_item_click__',
|
|
737
|
-
SelectedItemKeyDownDelete = '__selected_item_keydown_delete__',
|
|
738
|
-
SelectedItemKeyDownBackspace = '__selected_item_keydown_backspace__',
|
|
739
|
-
SelectedItemKeyDownNavigationNext = '__selected_item_keydown_navigation_next__',
|
|
740
|
-
SelectedItemKeyDownNavigationPrevious = '__selected_item_keydown_navigation_previous__',
|
|
741
|
-
DropdownKeyDownNavigationPrevious = '__dropdown_keydown_navigation_previous__',
|
|
742
|
-
DropdownKeyDownBackspace = '__dropdown_keydown_backspace__',
|
|
743
|
-
DropdownClick = '__dropdown_click__',
|
|
744
|
-
FunctionAddSelectedItem = '__function_add_selected_item__',
|
|
745
|
-
FunctionRemoveSelectedItem = '__function_remove_selected_item__',
|
|
746
|
-
FunctionSetSelectedItems = '__function_set_selected_items__',
|
|
747
|
-
FunctionSetActiveIndex = '__function_set_active_index__',
|
|
748
|
-
FunctionReset = '__function_reset__',
|
|
749
|
-
}
|
|
750
|
-
|
|
751
|
-
export interface UseMultipleSelectionProps<Item> {
|
|
752
|
-
selectedItems?: Item[]
|
|
753
|
-
initialSelectedItems?: Item[]
|
|
754
|
-
defaultSelectedItems?: Item[]
|
|
755
|
-
itemToKey?: (item: Item | null) => any
|
|
756
|
-
getA11yStatusMessage?: (options: UseMultipleSelectionState<Item>) => string
|
|
757
|
-
stateReducer?: (
|
|
758
|
-
state: UseMultipleSelectionState<Item>,
|
|
759
|
-
actionAndChanges: UseMultipleSelectionStateChangeOptions<Item>,
|
|
760
|
-
) => Partial<UseMultipleSelectionState<Item>>
|
|
761
|
-
activeIndex?: number
|
|
762
|
-
initialActiveIndex?: number
|
|
763
|
-
defaultActiveIndex?: number
|
|
764
|
-
onActiveIndexChange?: (
|
|
765
|
-
changes: UseMultipleSelectionActiveIndexChange<Item>,
|
|
766
|
-
) => void
|
|
767
|
-
onSelectedItemsChange?: (
|
|
768
|
-
changes: UseMultipleSelectionSelectedItemsChange<Item>,
|
|
769
|
-
) => void
|
|
770
|
-
onStateChange?: (changes: UseMultipleSelectionStateChange<Item>) => void
|
|
771
|
-
keyNavigationNext?: string
|
|
772
|
-
keyNavigationPrevious?: string
|
|
773
|
-
environment?: Environment
|
|
774
|
-
}
|
|
775
|
-
|
|
776
|
-
export interface UseMultipleSelectionStateChangeOptions<
|
|
777
|
-
Item,
|
|
778
|
-
> extends UseMultipleSelectionDispatchAction<Item> {
|
|
779
|
-
changes: Partial<UseMultipleSelectionState<Item>>
|
|
780
|
-
}
|
|
781
|
-
|
|
782
|
-
export interface UseMultipleSelectionDispatchAction<Item> {
|
|
783
|
-
type: UseMultipleSelectionStateChangeTypes
|
|
784
|
-
index?: number
|
|
785
|
-
selectedItem?: Item | null
|
|
786
|
-
selectedItems?: Item[]
|
|
787
|
-
activeIndex?: number
|
|
788
|
-
}
|
|
789
|
-
|
|
790
|
-
export interface UseMultipleSelectionStateChange<Item> extends Partial<
|
|
791
|
-
UseMultipleSelectionState<Item>
|
|
792
|
-
> {
|
|
793
|
-
type: UseMultipleSelectionStateChangeTypes
|
|
794
|
-
}
|
|
795
|
-
|
|
796
|
-
export interface UseMultipleSelectionActiveIndexChange<
|
|
797
|
-
Item,
|
|
798
|
-
> extends UseMultipleSelectionStateChange<Item> {
|
|
799
|
-
activeIndex: number
|
|
800
|
-
}
|
|
801
|
-
|
|
802
|
-
export interface UseMultipleSelectionSelectedItemsChange<
|
|
803
|
-
Item,
|
|
804
|
-
> extends UseMultipleSelectionStateChange<Item> {
|
|
805
|
-
selectedItems: Item[]
|
|
806
|
-
}
|
|
807
|
-
|
|
808
|
-
export interface A11yRemovalMessage<Item> {
|
|
809
|
-
itemToString: (item: Item) => string
|
|
810
|
-
resultCount: number
|
|
811
|
-
activeSelectedItem: Item
|
|
812
|
-
removedSelectedItem: Item
|
|
813
|
-
activeIndex: number
|
|
814
|
-
}
|
|
815
|
-
|
|
816
|
-
export interface UseMultipleSelectionGetSelectedItemPropsOptions<Item>
|
|
817
|
-
extends React.HTMLProps<HTMLElement>, GetPropsWithRefKey {
|
|
818
|
-
index?: number
|
|
819
|
-
selectedItem: Item
|
|
820
|
-
}
|
|
821
|
-
|
|
822
|
-
export interface UseMultipleSelectionGetSelectedItemReturnValue {
|
|
823
|
-
ref?: React.RefObject<any>
|
|
824
|
-
tabIndex: 0 | -1
|
|
825
|
-
onClick: React.MouseEventHandler
|
|
826
|
-
onKeyDown: React.KeyboardEventHandler
|
|
827
|
-
}
|
|
828
|
-
|
|
829
|
-
export interface UseMultipleSelectionGetDropdownPropsOptions extends React.HTMLProps<HTMLElement> {
|
|
830
|
-
preventKeyAction?: boolean
|
|
831
|
-
}
|
|
832
|
-
|
|
833
|
-
export interface UseMultipleSelectionGetDropdownReturnValue {
|
|
834
|
-
ref?: React.RefObject<any>
|
|
835
|
-
onClick?: React.MouseEventHandler
|
|
836
|
-
onKeyDown?: React.KeyboardEventHandler
|
|
837
|
-
}
|
|
838
|
-
|
|
839
|
-
export interface UseMultipleSelectionPropGetters<Item> {
|
|
840
|
-
getDropdownProps: <Options>(
|
|
841
|
-
options?: UseMultipleSelectionGetDropdownPropsOptions & Options,
|
|
842
|
-
extraOptions?: GetPropsCommonOptions,
|
|
843
|
-
) => Omit<
|
|
844
|
-
Overwrite<UseMultipleSelectionGetDropdownReturnValue, Options>,
|
|
845
|
-
'preventKeyAction'
|
|
846
|
-
>
|
|
847
|
-
getSelectedItemProps: <Options>(
|
|
848
|
-
options: UseMultipleSelectionGetSelectedItemPropsOptions<Item> & Options,
|
|
849
|
-
) => Omit<
|
|
850
|
-
Overwrite<UseMultipleSelectionGetSelectedItemReturnValue, Options>,
|
|
851
|
-
'index' | 'selectedItem'
|
|
852
|
-
>
|
|
853
|
-
}
|
|
854
|
-
|
|
855
|
-
export interface UseMultipleSelectionActions<Item> {
|
|
856
|
-
reset: () => void
|
|
857
|
-
addSelectedItem: (item: Item) => void
|
|
858
|
-
removeSelectedItem: (item: Item) => void
|
|
859
|
-
setSelectedItems: (items: Item[]) => void
|
|
860
|
-
setActiveIndex: (index: number) => void
|
|
861
|
-
}
|
|
862
|
-
|
|
863
|
-
export type UseMultipleSelectionReturnValue<Item> = UseMultipleSelectionState<Item> &
|
|
864
|
-
UseMultipleSelectionPropGetters<Item> &
|
|
865
|
-
UseMultipleSelectionActions<Item>
|
|
866
|
-
|
|
867
|
-
export interface UseMultipleSelectionInterface {
|
|
868
|
-
<Item>(
|
|
869
|
-
props?: UseMultipleSelectionProps<Item>,
|
|
870
|
-
): UseMultipleSelectionReturnValue<Item>
|
|
871
|
-
stateChangeTypes: {
|
|
872
|
-
SelectedItemClick: UseMultipleSelectionStateChangeTypes.SelectedItemClick
|
|
873
|
-
SelectedItemKeyDownDelete: UseMultipleSelectionStateChangeTypes.SelectedItemKeyDownDelete
|
|
874
|
-
SelectedItemKeyDownBackspace: UseMultipleSelectionStateChangeTypes.SelectedItemKeyDownBackspace
|
|
875
|
-
SelectedItemKeyDownNavigationNext: UseMultipleSelectionStateChangeTypes.SelectedItemKeyDownNavigationNext
|
|
876
|
-
SelectedItemKeyDownNavigationPrevious: UseMultipleSelectionStateChangeTypes.SelectedItemKeyDownNavigationPrevious
|
|
877
|
-
DropdownKeyDownNavigationPrevious: UseMultipleSelectionStateChangeTypes.DropdownKeyDownNavigationPrevious
|
|
878
|
-
DropdownKeyDownBackspace: UseMultipleSelectionStateChangeTypes.DropdownKeyDownBackspace
|
|
879
|
-
DropdownClick: UseMultipleSelectionStateChangeTypes.DropdownClick
|
|
880
|
-
FunctionAddSelectedItem: UseMultipleSelectionStateChangeTypes.FunctionAddSelectedItem
|
|
881
|
-
FunctionRemoveSelectedItem: UseMultipleSelectionStateChangeTypes.FunctionRemoveSelectedItem
|
|
882
|
-
FunctionSetSelectedItems: UseMultipleSelectionStateChangeTypes.FunctionSetSelectedItems
|
|
883
|
-
FunctionSetActiveIndex: UseMultipleSelectionStateChangeTypes.FunctionSetActiveIndex
|
|
884
|
-
FunctionReset: UseMultipleSelectionStateChangeTypes.FunctionReset
|
|
885
|
-
}
|
|
886
|
-
}
|
|
887
|
-
|
|
888
|
-
export const useMultipleSelection: UseMultipleSelectionInterface
|