@elliemae/ds-app-picker 3.70.0-next.6 → 3.70.0-next.60
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/cjs/DSAppPicker.js +10 -141
- package/dist/cjs/DSAppPicker.js.map +3 -3
- package/dist/cjs/{utils.js → DSAppPickerCTX.js} +8 -25
- package/dist/cjs/DSAppPickerCTX.js.map +7 -0
- package/dist/cjs/config/useAppPicker.js +25 -8
- package/dist/cjs/config/useAppPicker.js.map +3 -3
- package/dist/cjs/config/useFocusTracker.js +104 -0
- package/dist/cjs/config/useFocusTracker.js.map +7 -0
- package/dist/cjs/config/useValidateProps.js +45 -0
- package/dist/cjs/config/useValidateProps.js.map +7 -0
- package/dist/cjs/constants/index.js +11 -1
- package/dist/cjs/constants/index.js.map +2 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/package.json +1 -4
- package/dist/cjs/parts/AppPanel.js +152 -0
- package/dist/cjs/parts/AppPanel.js.map +7 -0
- package/dist/cjs/parts/AppPickerFloatingContext/AppPickerContent.js +94 -0
- package/dist/cjs/parts/AppPickerFloatingContext/AppPickerContent.js.map +7 -0
- package/dist/cjs/parts/AppPickerFloatingContext/useAppPickerFloatingContext.js +171 -0
- package/dist/cjs/parts/AppPickerFloatingContext/useAppPickerFloatingContext.js.map +7 -0
- package/dist/cjs/parts/AppPickerItem.js +104 -0
- package/dist/cjs/parts/AppPickerItem.js.map +7 -0
- package/dist/cjs/parts/AppSection.js +94 -0
- package/dist/cjs/parts/AppSection.js.map +7 -0
- package/dist/cjs/parts/Trigger.js +81 -0
- package/dist/cjs/parts/Trigger.js.map +7 -0
- package/dist/cjs/parts/shared-styles.js +44 -0
- package/dist/cjs/parts/shared-styles.js.map +7 -0
- package/dist/cjs/react-desc-prop-types.js +23 -7
- package/dist/cjs/react-desc-prop-types.js.map +2 -2
- package/dist/cjs/typescript-testing/slot-props.js +48 -0
- package/dist/cjs/typescript-testing/slot-props.js.map +7 -0
- package/dist/cjs/typescript-testing/typescript-app-picker-valid.js +13 -1
- package/dist/cjs/typescript-testing/typescript-app-picker-valid.js.map +2 -2
- package/dist/cjs/util/getChipId.js +36 -0
- package/dist/cjs/util/getChipId.js.map +7 -0
- package/dist/cjs/util/getChipRegionId.js +37 -0
- package/dist/cjs/util/getChipRegionId.js.map +7 -0
- package/dist/esm/DSAppPicker.js +10 -141
- package/dist/esm/DSAppPicker.js.map +3 -3
- package/dist/esm/DSAppPickerCTX.js +8 -0
- package/dist/esm/DSAppPickerCTX.js.map +7 -0
- package/dist/esm/config/useAppPicker.js +29 -13
- package/dist/esm/config/useAppPicker.js.map +3 -3
- package/dist/esm/config/useFocusTracker.js +74 -0
- package/dist/esm/config/useFocusTracker.js.map +7 -0
- package/dist/esm/config/useValidateProps.js +15 -0
- package/dist/esm/config/useValidateProps.js.map +7 -0
- package/dist/esm/constants/index.js +11 -1
- package/dist/esm/constants/index.js.map +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/package.json +1 -4
- package/dist/esm/parts/AppPanel.js +127 -0
- package/dist/esm/parts/AppPanel.js.map +7 -0
- package/dist/esm/parts/AppPickerFloatingContext/AppPickerContent.js +64 -0
- package/dist/esm/parts/AppPickerFloatingContext/AppPickerContent.js.map +7 -0
- package/dist/esm/parts/AppPickerFloatingContext/useAppPickerFloatingContext.js +141 -0
- package/dist/esm/parts/AppPickerFloatingContext/useAppPickerFloatingContext.js.map +7 -0
- package/dist/esm/parts/AppPickerItem.js +74 -0
- package/dist/esm/parts/AppPickerItem.js.map +7 -0
- package/dist/esm/parts/AppSection.js +64 -0
- package/dist/esm/parts/AppSection.js.map +7 -0
- package/dist/esm/parts/Trigger.js +51 -0
- package/dist/esm/parts/Trigger.js.map +7 -0
- package/dist/esm/parts/shared-styles.js +14 -0
- package/dist/esm/parts/shared-styles.js.map +7 -0
- package/dist/esm/react-desc-prop-types.js +29 -8
- package/dist/esm/react-desc-prop-types.js.map +2 -2
- package/dist/esm/typescript-testing/slot-props.js +25 -0
- package/dist/esm/typescript-testing/slot-props.js.map +7 -0
- package/dist/esm/typescript-testing/typescript-app-picker-valid.js +13 -1
- package/dist/esm/typescript-testing/typescript-app-picker-valid.js.map +2 -2
- package/dist/esm/util/getChipId.js +6 -0
- package/dist/esm/util/getChipId.js.map +7 -0
- package/dist/esm/util/getChipRegionId.js +7 -0
- package/dist/esm/util/getChipRegionId.js.map +7 -0
- package/dist/types/DSAppPicker.d.ts +1 -2
- package/dist/types/DSAppPickerCTX.d.ts +6 -0
- package/dist/types/config/useAppPicker.d.ts +111 -92
- package/dist/types/config/useFocusTracker.d.ts +19 -0
- package/dist/types/config/useValidateProps.d.ts +3 -0
- package/dist/types/constants/index.d.ts +17 -7
- package/dist/types/parts/AppPanel.d.ts +2 -0
- package/dist/types/parts/AppPickerFloatingContext/AppPickerContent.d.ts +3 -0
- package/dist/types/parts/AppPickerFloatingContext/useAppPickerFloatingContext.d.ts +170 -0
- package/dist/types/parts/AppPickerItem.d.ts +11 -0
- package/dist/types/parts/AppSection.d.ts +6 -0
- package/dist/types/parts/Trigger.d.ts +13 -0
- package/dist/types/parts/shared-styles.d.ts +2 -0
- package/dist/types/react-desc-prop-types.d.ts +80 -9
- package/dist/types/util/getChipId.d.ts +2 -0
- package/dist/types/util/getChipRegionId.d.ts +1 -0
- package/package.json +19 -17
- package/dist/cjs/AppPickerImpl.js +0 -204
- package/dist/cjs/AppPickerImpl.js.map +0 -7
- package/dist/cjs/hooks/useKeepTrackButtons.js +0 -69
- package/dist/cjs/hooks/useKeepTrackButtons.js.map +0 -7
- package/dist/cjs/styles.js +0 -76
- package/dist/cjs/styles.js.map +0 -7
- package/dist/cjs/utils.js.map +0 -7
- package/dist/esm/AppPickerImpl.js +0 -174
- package/dist/esm/AppPickerImpl.js.map +0 -7
- package/dist/esm/hooks/useKeepTrackButtons.js +0 -39
- package/dist/esm/hooks/useKeepTrackButtons.js.map +0 -7
- package/dist/esm/styles.js +0 -46
- package/dist/esm/styles.js.map +0 -7
- package/dist/esm/utils.js +0 -25
- package/dist/esm/utils.js.map +0 -7
- package/dist/types/AppPickerImpl.d.ts +0 -11
- package/dist/types/hooks/useKeepTrackButtons.d.ts +0 -13
- package/dist/types/styles.d.ts +0 -7
- package/dist/types/tests/app-picker.a11y.test.d.ts +0 -1
- package/dist/types/tests/app-picker.data-testid.test.d.ts +0 -1
- package/dist/types/tests/app-picker.events.test.d.ts +0 -1
- package/dist/types/tests/app-picker.exports.test.d.ts +0 -1
- package/dist/types/tests/app-picker.get-owner-props.test.d.ts +0 -1
- package/dist/types/tests/app-picker.keyboard.test.d.ts +0 -1
- package/dist/types/typescript-testing/typescript-app-picker-valid.d.ts +0 -1
- package/dist/types/utils.d.ts +0 -14
|
@@ -1,40 +1,31 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { type DSAppPickerT } from '../react-desc-prop-types.js';
|
|
3
3
|
export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
4
|
+
focusTrackers: {
|
|
5
|
+
firstFocusableIdx: number;
|
|
6
|
+
lastFocusableIdx: number;
|
|
7
|
+
focusRegion: string;
|
|
8
|
+
firstFocusableRef: React.MutableRefObject<HTMLElement | null>;
|
|
9
|
+
lastFocusableRef: React.MutableRefObject<HTMLElement | null>;
|
|
10
|
+
trackFocusChip: (chipId: string) => void;
|
|
11
|
+
trackFocusRegionReset: () => void;
|
|
12
|
+
trackFocusTrigger: () => void;
|
|
13
|
+
trackFocusPanel: () => void;
|
|
14
|
+
trackFocusSelectedItem: () => void;
|
|
15
|
+
trackFocusFirstItem: () => void;
|
|
16
|
+
trackFocusItemAtIndex: (index: number) => void;
|
|
17
|
+
};
|
|
4
18
|
propsWithDefault: DSAppPickerT.InternalProps;
|
|
5
19
|
ownerPropsConfig: {
|
|
6
20
|
getOwnerProps: () => DSAppPickerT.InternalProps;
|
|
7
21
|
getOwnerPropsArguments: () => {};
|
|
8
22
|
};
|
|
9
|
-
globalAttributes: Partial<Pick<object, "
|
|
10
|
-
cite?: string | undefined | undefined;
|
|
11
|
-
data?: string | undefined | undefined;
|
|
12
|
-
form?: string | undefined | undefined;
|
|
13
|
-
label?: string | undefined | undefined;
|
|
14
|
-
slot?: string | undefined | undefined;
|
|
15
|
-
span?: number | undefined | undefined;
|
|
16
|
-
style?: React.CSSProperties | undefined;
|
|
17
|
-
summary?: string | undefined | undefined;
|
|
23
|
+
globalAttributes: Partial<Pick<object, "title" | "onClick" | "onKeyDown" | "form" | "list" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-braillelabel" | "aria-brailleroledescription" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colindextext" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-description" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowindextext" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerLeave" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "autoCapitalize" | "autoFocus" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "enterKeyHint" | "hidden" | "id" | "lang" | "nonce" | "slot" | "spellCheck" | "style" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "content" | "datatype" | "inlist" | "prefix" | "property" | "rel" | "resource" | "rev" | "typeof" | "vocab" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "exportparts" | "part" | "accept" | "acceptCharset" | "action" | "allowFullScreen" | "allowTransparency" | "alt" | "async" | "autoComplete" | "autoPlay" | "capture" | "cellPadding" | "cellSpacing" | "charSet" | "challenge" | "checked" | "cite" | "classID" | "cols" | "colSpan" | "controls" | "coords" | "crossOrigin" | "data" | "dateTime" | "default" | "defer" | "disabled" | "download" | "encType" | "formAction" | "formEncType" | "formMethod" | "formNoValidate" | "formTarget" | "frameBorder" | "headers" | "height" | "high" | "href" | "hrefLang" | "htmlFor" | "httpEquiv" | "integrity" | "keyParams" | "keyType" | "kind" | "label" | "loop" | "low" | "manifest" | "marginHeight" | "marginWidth" | "max" | "maxLength" | "media" | "mediaGroup" | "method" | "min" | "minLength" | "multiple" | "muted" | "name" | "noValidate" | "open" | "optimum" | "pattern" | "placeholder" | "playsInline" | "poster" | "preload" | "readOnly" | "required" | "reversed" | "rows" | "rowSpan" | "sandbox" | "scope" | "scoped" | "scrolling" | "seamless" | "selected" | "shape" | "size" | "sizes" | "span" | "src" | "srcDoc" | "srcLang" | "srcSet" | "start" | "step" | "summary" | "target" | "type" | "useMap" | "value" | "width" | "wmode" | "wrap"> & Omit<{
|
|
18
24
|
title?: string | undefined | undefined;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
className?: string | undefined | undefined;
|
|
24
|
-
color?: string | undefined | undefined;
|
|
25
|
-
height?: number | string | undefined | undefined;
|
|
26
|
-
id?: string | undefined | undefined;
|
|
27
|
-
lang?: string | undefined | undefined;
|
|
28
|
-
max?: number | string | undefined | undefined;
|
|
29
|
-
media?: string | undefined | undefined;
|
|
30
|
-
method?: string | undefined | undefined;
|
|
31
|
-
min?: number | string | undefined | undefined;
|
|
32
|
-
target?: string | undefined | undefined;
|
|
33
|
-
width?: number | string | undefined | undefined;
|
|
34
|
-
role?: React.AriaRole | undefined;
|
|
35
|
-
tabIndex?: 0 | -1 | undefined;
|
|
36
|
-
crossOrigin?: "" | "anonymous" | "use-credentials" | undefined;
|
|
37
|
-
href?: string | undefined | undefined;
|
|
25
|
+
onClick?: React.MouseEventHandler<Element> | undefined;
|
|
26
|
+
onKeyDown?: React.KeyboardEventHandler<Element> | undefined;
|
|
27
|
+
form?: string | undefined | undefined;
|
|
28
|
+
list?: string | undefined | undefined;
|
|
38
29
|
"aria-activedescendant"?: string | undefined | undefined;
|
|
39
30
|
"aria-atomic"?: (boolean | "true" | "false") | undefined;
|
|
40
31
|
"aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined | undefined;
|
|
@@ -121,7 +112,6 @@ export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
|
121
112
|
onLoadCapture?: React.ReactEventHandler<Element> | undefined;
|
|
122
113
|
onError?: React.ReactEventHandler<Element> | undefined;
|
|
123
114
|
onErrorCapture?: React.ReactEventHandler<Element> | undefined;
|
|
124
|
-
onKeyDown?: React.KeyboardEventHandler<Element> | undefined;
|
|
125
115
|
onKeyDownCapture?: React.KeyboardEventHandler<Element> | undefined;
|
|
126
116
|
onKeyPress?: React.KeyboardEventHandler<Element> | undefined;
|
|
127
117
|
onKeyPressCapture?: React.KeyboardEventHandler<Element> | undefined;
|
|
@@ -173,7 +163,6 @@ export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
|
173
163
|
onWaitingCapture?: React.ReactEventHandler<Element> | undefined;
|
|
174
164
|
onAuxClick?: React.MouseEventHandler<Element> | undefined;
|
|
175
165
|
onAuxClickCapture?: React.MouseEventHandler<Element> | undefined;
|
|
176
|
-
onClick?: React.MouseEventHandler<Element> | undefined;
|
|
177
166
|
onClickCapture?: React.MouseEventHandler<Element> | undefined;
|
|
178
167
|
onContextMenu?: React.MouseEventHandler<Element> | undefined;
|
|
179
168
|
onContextMenuCapture?: React.MouseEventHandler<Element> | undefined;
|
|
@@ -247,25 +236,30 @@ export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
|
247
236
|
onAnimationIterationCapture?: React.AnimationEventHandler<Element> | undefined;
|
|
248
237
|
onTransitionEnd?: React.TransitionEventHandler<Element> | undefined;
|
|
249
238
|
onTransitionEndCapture?: React.TransitionEventHandler<Element> | undefined;
|
|
250
|
-
classID?: string | undefined | undefined;
|
|
251
|
-
useMap?: string | undefined | undefined;
|
|
252
|
-
wmode?: string | undefined | undefined;
|
|
253
239
|
defaultChecked?: boolean | undefined | undefined;
|
|
254
240
|
defaultValue?: string | number | readonly string[] | undefined;
|
|
255
241
|
suppressContentEditableWarning?: boolean | undefined | undefined;
|
|
242
|
+
suppressHydrationWarning?: boolean | undefined | undefined;
|
|
256
243
|
accessKey?: string | undefined | undefined;
|
|
257
244
|
autoCapitalize?: "off" | "none" | "on" | "sentences" | "words" | "characters" | undefined | (string & {}) | undefined;
|
|
258
245
|
autoFocus?: boolean | undefined | undefined;
|
|
246
|
+
className?: string | undefined | undefined;
|
|
259
247
|
contentEditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
|
|
260
248
|
contextMenu?: string | undefined | undefined;
|
|
261
249
|
dir?: string | undefined | undefined;
|
|
262
250
|
draggable?: (boolean | "true" | "false") | undefined;
|
|
263
251
|
enterKeyHint?: "enter" | "done" | "go" | "next" | "previous" | "search" | "send" | undefined | undefined;
|
|
264
252
|
hidden?: boolean | undefined | undefined;
|
|
253
|
+
id?: string | undefined | undefined;
|
|
254
|
+
lang?: string | undefined | undefined;
|
|
265
255
|
nonce?: string | undefined | undefined;
|
|
256
|
+
slot?: string | undefined | undefined;
|
|
266
257
|
spellCheck?: (boolean | "true" | "false") | undefined;
|
|
258
|
+
style?: React.CSSProperties | undefined;
|
|
259
|
+
tabIndex?: 0 | -1 | undefined;
|
|
267
260
|
translate?: "yes" | "no" | undefined | undefined;
|
|
268
261
|
radioGroup?: string | undefined | undefined;
|
|
262
|
+
role?: React.AriaRole | undefined;
|
|
269
263
|
about?: string | undefined | undefined;
|
|
270
264
|
content?: string | undefined | undefined;
|
|
271
265
|
datatype?: string | undefined | undefined;
|
|
@@ -279,6 +273,7 @@ export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
|
279
273
|
vocab?: string | undefined | undefined;
|
|
280
274
|
autoCorrect?: string | undefined | undefined;
|
|
281
275
|
autoSave?: string | undefined | undefined;
|
|
276
|
+
color?: string | undefined | undefined;
|
|
282
277
|
itemProp?: string | undefined | undefined;
|
|
283
278
|
itemScope?: boolean | undefined | undefined;
|
|
284
279
|
itemType?: string | undefined | undefined;
|
|
@@ -291,86 +286,110 @@ export declare const useAppPicker: (props: DSAppPickerT.Props) => {
|
|
|
291
286
|
is?: string | undefined | undefined;
|
|
292
287
|
exportparts?: string | undefined | undefined;
|
|
293
288
|
part?: string | undefined | undefined;
|
|
289
|
+
accept?: string | undefined | undefined;
|
|
290
|
+
acceptCharset?: string | undefined | undefined;
|
|
291
|
+
action?: string | undefined;
|
|
292
|
+
allowFullScreen?: boolean | undefined | undefined;
|
|
293
|
+
allowTransparency?: boolean | undefined | undefined;
|
|
294
|
+
alt?: string | undefined | undefined;
|
|
295
|
+
async?: boolean | undefined | undefined;
|
|
296
|
+
autoComplete?: string | undefined | undefined;
|
|
297
|
+
autoPlay?: boolean | undefined | undefined;
|
|
298
|
+
capture?: boolean | "user" | "environment" | undefined | undefined;
|
|
299
|
+
cellPadding?: number | string | undefined | undefined;
|
|
300
|
+
cellSpacing?: number | string | undefined | undefined;
|
|
301
|
+
charSet?: string | undefined | undefined;
|
|
302
|
+
challenge?: string | undefined | undefined;
|
|
303
|
+
checked?: boolean | undefined | undefined;
|
|
304
|
+
cite?: string | undefined | undefined;
|
|
305
|
+
classID?: string | undefined | undefined;
|
|
306
|
+
cols?: number | undefined | undefined;
|
|
307
|
+
colSpan?: number | undefined | undefined;
|
|
308
|
+
controls?: boolean | undefined | undefined;
|
|
309
|
+
coords?: string | undefined | undefined;
|
|
310
|
+
crossOrigin?: "" | "anonymous" | "use-credentials" | undefined;
|
|
311
|
+
data?: string | undefined | undefined;
|
|
312
|
+
dateTime?: string | undefined | undefined;
|
|
313
|
+
default?: boolean | undefined | undefined;
|
|
314
|
+
defer?: boolean | undefined | undefined;
|
|
294
315
|
disabled?: boolean | undefined | undefined;
|
|
316
|
+
download?: any;
|
|
317
|
+
encType?: string | undefined | undefined;
|
|
295
318
|
formAction?: string | undefined;
|
|
296
319
|
formEncType?: string | undefined | undefined;
|
|
297
320
|
formMethod?: string | undefined | undefined;
|
|
298
321
|
formNoValidate?: boolean | undefined | undefined;
|
|
299
322
|
formTarget?: string | undefined | undefined;
|
|
300
|
-
|
|
301
|
-
|
|
323
|
+
frameBorder?: number | string | undefined | undefined;
|
|
324
|
+
headers?: string | undefined | undefined;
|
|
325
|
+
height?: number | string | undefined | undefined;
|
|
326
|
+
high?: number | undefined | undefined;
|
|
327
|
+
href?: string | undefined | undefined;
|
|
302
328
|
hrefLang?: string | undefined | undefined;
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
329
|
+
htmlFor?: string | undefined | undefined;
|
|
330
|
+
httpEquiv?: string | undefined | undefined;
|
|
331
|
+
integrity?: string | undefined | undefined;
|
|
332
|
+
keyParams?: string | undefined | undefined;
|
|
333
|
+
keyType?: string | undefined | undefined;
|
|
334
|
+
kind?: string | undefined | undefined;
|
|
335
|
+
label?: string | undefined | undefined;
|
|
308
336
|
loop?: boolean | undefined | undefined;
|
|
309
|
-
|
|
310
|
-
muted?: boolean | undefined | undefined;
|
|
311
|
-
playsInline?: boolean | undefined | undefined;
|
|
312
|
-
preload?: string | undefined | undefined;
|
|
313
|
-
src?: string | undefined | undefined;
|
|
314
|
-
dateTime?: string | undefined | undefined;
|
|
315
|
-
open?: boolean | undefined | undefined;
|
|
316
|
-
acceptCharset?: string | undefined | undefined;
|
|
317
|
-
action?: string | undefined;
|
|
318
|
-
autoComplete?: string | undefined | undefined;
|
|
319
|
-
encType?: string | undefined | undefined;
|
|
320
|
-
noValidate?: boolean | undefined | undefined;
|
|
337
|
+
low?: number | undefined | undefined;
|
|
321
338
|
manifest?: string | undefined | undefined;
|
|
322
|
-
allowFullScreen?: boolean | undefined | undefined;
|
|
323
|
-
allowTransparency?: boolean | undefined | undefined;
|
|
324
|
-
frameBorder?: number | string | undefined | undefined;
|
|
325
339
|
marginHeight?: number | undefined | undefined;
|
|
326
340
|
marginWidth?: number | undefined | undefined;
|
|
327
|
-
|
|
328
|
-
scrolling?: string | undefined | undefined;
|
|
329
|
-
seamless?: boolean | undefined | undefined;
|
|
330
|
-
srcDoc?: string | undefined | undefined;
|
|
331
|
-
sizes?: string | undefined | undefined;
|
|
332
|
-
srcSet?: string | undefined | undefined;
|
|
333
|
-
accept?: string | undefined | undefined;
|
|
334
|
-
capture?: boolean | "user" | "environment" | undefined | undefined;
|
|
335
|
-
checked?: boolean | undefined | undefined;
|
|
336
|
-
list?: string | undefined | undefined;
|
|
341
|
+
max?: number | string | undefined | undefined;
|
|
337
342
|
maxLength?: number | undefined | undefined;
|
|
343
|
+
media?: string | undefined | undefined;
|
|
344
|
+
mediaGroup?: string | undefined | undefined;
|
|
345
|
+
method?: string | undefined | undefined;
|
|
346
|
+
min?: number | string | undefined | undefined;
|
|
338
347
|
minLength?: number | undefined | undefined;
|
|
339
348
|
multiple?: boolean | undefined | undefined;
|
|
349
|
+
muted?: boolean | undefined | undefined;
|
|
350
|
+
name?: string | undefined | undefined;
|
|
351
|
+
noValidate?: boolean | undefined | undefined;
|
|
352
|
+
open?: boolean | undefined | undefined;
|
|
353
|
+
optimum?: number | undefined | undefined;
|
|
354
|
+
pattern?: string | undefined | undefined;
|
|
340
355
|
placeholder?: string | undefined | undefined;
|
|
356
|
+
playsInline?: boolean | undefined | undefined;
|
|
357
|
+
poster?: string | undefined | undefined;
|
|
358
|
+
preload?: string | undefined | undefined;
|
|
341
359
|
readOnly?: boolean | undefined | undefined;
|
|
342
360
|
required?: boolean | undefined | undefined;
|
|
343
|
-
size?: number | undefined | undefined;
|
|
344
|
-
step?: number | string | undefined | undefined;
|
|
345
|
-
htmlFor?: string | undefined | undefined;
|
|
346
|
-
integrity?: string | undefined | undefined;
|
|
347
|
-
charSet?: string | undefined | undefined;
|
|
348
|
-
httpEquiv?: string | undefined | undefined;
|
|
349
|
-
high?: number | undefined | undefined;
|
|
350
|
-
low?: number | undefined | undefined;
|
|
351
|
-
optimum?: number | undefined | undefined;
|
|
352
361
|
reversed?: boolean | undefined | undefined;
|
|
353
|
-
|
|
354
|
-
selected?: boolean | undefined | undefined;
|
|
355
|
-
async?: boolean | undefined | undefined;
|
|
356
|
-
defer?: boolean | undefined | undefined;
|
|
357
|
-
scoped?: boolean | undefined | undefined;
|
|
358
|
-
cellPadding?: number | string | undefined | undefined;
|
|
359
|
-
cellSpacing?: number | string | undefined | undefined;
|
|
360
|
-
colSpan?: number | undefined | undefined;
|
|
361
|
-
headers?: string | undefined | undefined;
|
|
362
|
+
rows?: number | undefined | undefined;
|
|
362
363
|
rowSpan?: number | undefined | undefined;
|
|
364
|
+
sandbox?: string | undefined | undefined;
|
|
363
365
|
scope?: string | undefined | undefined;
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
366
|
+
scoped?: boolean | undefined | undefined;
|
|
367
|
+
scrolling?: string | undefined | undefined;
|
|
368
|
+
seamless?: boolean | undefined | undefined;
|
|
369
|
+
selected?: boolean | undefined | undefined;
|
|
370
|
+
shape?: string | undefined | undefined;
|
|
371
|
+
size?: number | undefined | undefined;
|
|
372
|
+
sizes?: string | undefined | undefined;
|
|
373
|
+
span?: number | undefined | undefined;
|
|
374
|
+
src?: string | undefined | undefined;
|
|
375
|
+
srcDoc?: string | undefined | undefined;
|
|
369
376
|
srcLang?: string | undefined | undefined;
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
377
|
+
srcSet?: string | undefined | undefined;
|
|
378
|
+
start?: number | undefined | undefined;
|
|
379
|
+
step?: number | string | undefined | undefined;
|
|
380
|
+
summary?: string | undefined | undefined;
|
|
381
|
+
target?: string | undefined | undefined;
|
|
382
|
+
type?: string | undefined | undefined;
|
|
383
|
+
useMap?: string | undefined | undefined;
|
|
384
|
+
value?: string | number | readonly string[] | undefined;
|
|
385
|
+
width?: number | string | undefined | undefined;
|
|
386
|
+
wmode?: string | undefined | undefined;
|
|
387
|
+
wrap?: string | undefined | undefined;
|
|
374
388
|
}, never>>;
|
|
375
389
|
xstyledProps: import("@elliemae/ds-props-helpers").XstyledProps;
|
|
390
|
+
wasOpenedByKeyboardRef: React.MutableRefObject<boolean>;
|
|
391
|
+
mountedOpenAutofocusPendingRef: React.MutableRefObject<boolean>;
|
|
392
|
+
resolvedIsOpen: boolean;
|
|
393
|
+
setInternalIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
|
|
394
|
+
instanceUid: string;
|
|
376
395
|
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { DSAppPickerT } from '../react-desc-prop-types.js';
|
|
2
|
+
type FocusTrackerConfigT = {
|
|
3
|
+
allApps: DSAppPickerT.AppItem[];
|
|
4
|
+
};
|
|
5
|
+
export declare const useFocusTracker: (config: FocusTrackerConfigT) => {
|
|
6
|
+
firstFocusableIdx: number;
|
|
7
|
+
lastFocusableIdx: number;
|
|
8
|
+
focusRegion: string;
|
|
9
|
+
firstFocusableRef: import("react").MutableRefObject<HTMLElement | null>;
|
|
10
|
+
lastFocusableRef: import("react").MutableRefObject<HTMLElement | null>;
|
|
11
|
+
trackFocusChip: (chipId: string) => void;
|
|
12
|
+
trackFocusRegionReset: () => void;
|
|
13
|
+
trackFocusTrigger: () => void;
|
|
14
|
+
trackFocusPanel: () => void;
|
|
15
|
+
trackFocusSelectedItem: () => void;
|
|
16
|
+
trackFocusFirstItem: () => void;
|
|
17
|
+
trackFocusItemAtIndex: (index: number) => void;
|
|
18
|
+
};
|
|
19
|
+
export {};
|
|
@@ -1,19 +1,29 @@
|
|
|
1
1
|
export declare const DSAppPickerName = "DSApppicker";
|
|
2
|
+
export declare const APP_PICKER_REGION_FOCUSES: {
|
|
3
|
+
readonly RESET: "";
|
|
4
|
+
readonly TRIGGER: "trigger";
|
|
5
|
+
readonly PANEL: "panel";
|
|
6
|
+
};
|
|
7
|
+
export declare const CHIP_REGION_PREFIX = "chip-";
|
|
2
8
|
export declare const DSAppPickerSlots: {
|
|
3
|
-
ROOT:
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
readonly ROOT: "root";
|
|
10
|
+
readonly GROUP: "group";
|
|
11
|
+
readonly ITEM: "item";
|
|
12
|
+
readonly TITLE: "title";
|
|
13
|
+
readonly SEPARATOR: "separator";
|
|
14
|
+
readonly ROW: "row";
|
|
15
|
+
readonly CHIP: "chip";
|
|
16
|
+
readonly BUTTON: "button";
|
|
17
|
+
readonly FLOATING_WRAPPER: "floating-wrapper";
|
|
10
18
|
};
|
|
11
19
|
export declare const DSAppPickerDataTestIds: {
|
|
12
20
|
CHIP: string;
|
|
13
21
|
BUTTON: string;
|
|
14
22
|
ROOT: string;
|
|
23
|
+
GROUP: string;
|
|
15
24
|
ITEM: string;
|
|
16
25
|
TITLE: string;
|
|
17
26
|
SEPARATOR: string;
|
|
18
27
|
ROW: string;
|
|
28
|
+
FLOATING_WRAPPER: string;
|
|
19
29
|
};
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
import type React from 'react';
|
|
2
|
+
import type { useAppPicker } from '../../config/useAppPicker.js';
|
|
3
|
+
import type { DSAppPickerT } from '../../react-desc-prop-types.js';
|
|
4
|
+
/**
|
|
5
|
+
* useAppPickerFloatingContext — the single point that wires DSAppPicker to
|
|
6
|
+
* `@elliemae/ds-floating-context`'s `useFloatingContext`.
|
|
7
|
+
*
|
|
8
|
+
* WHAT IT DOES (as a black box):
|
|
9
|
+
* AppPicker can be used in two very different ways:
|
|
10
|
+
* - Controlled: the consumer supplies `isOpen` and drives the open/close transition.
|
|
11
|
+
* └→ AppPicker can't be event-based as the flip might originate from any cause and we don't own the business logic
|
|
12
|
+
* └→ we need to ensure WCAG embedded behaviours (focus, Escape, click-outside) are wired to the consumer's `isOpen` flip.
|
|
13
|
+
* - Uncontrolled: the consumer does not supply `isOpen` and AppPicker owns the full flows, we only notify the consumer of the transition and its cause.
|
|
14
|
+
*
|
|
15
|
+
* The AppPicker and this file in particular serves as the one place that coordinates the two different ways to use the component and wires with the useFloatingContext hook.
|
|
16
|
+
* This files owns:
|
|
17
|
+
* - Focus management relative to open/close transitions (initial focus on open, return focus to trigger on close)
|
|
18
|
+
* - Escape key handling (scoped to the panel and trigger)
|
|
19
|
+
* - Click-outside handling (panel and trigger)
|
|
20
|
+
* - Imperative focus API via actionRef
|
|
21
|
+
* - Controlled/Uncontrolled forks and differences in event notification (eager vs controlled-flip)
|
|
22
|
+
* - OnOpen and OnClose notification to the consumer with the correct reason and event (if any)
|
|
23
|
+
*
|
|
24
|
+
* IMPORTANT:
|
|
25
|
+
* Parts of the flow/logic required in this file is offloaded to useFloatingContext internal assumptions and logics.
|
|
26
|
+
* Changes to useFloatingContext may break the flows in this file, or alter them in ways that are not obvious, the two are closely coupled.
|
|
27
|
+
*
|
|
28
|
+
* DATA / EVENT FLOW
|
|
29
|
+
*
|
|
30
|
+
* Two concerns run in parallel and must not be conflated: (A) what makes the panel show/hide and take
|
|
31
|
+
* focus, and (B) how the consumer is told it opened/closed. They have different origins.
|
|
32
|
+
*
|
|
33
|
+
* (A) PANEL VISIBILITY + FOCUS — useFloatingContext internal co-ownership of the flow.
|
|
34
|
+
*
|
|
35
|
+
* a user action │ │ isOpen prop flip
|
|
36
|
+
* (trigger click / scoped Escape / click outside) │ │ (not a traceable user action, but the consumer's own flip)
|
|
37
|
+
* uncontrolled - flips the internal flag │ │ controlled - AppPicker's own flip is inert, consumer drives it
|
|
38
|
+
* │
|
|
39
|
+
* ▼
|
|
40
|
+
* resolvedIsOpen changes
|
|
41
|
+
* │
|
|
42
|
+
* ▼
|
|
43
|
+
* useFloatingContext (externallyControlledIsOpen) detects the transition
|
|
44
|
+
* │
|
|
45
|
+
* ▼
|
|
46
|
+
* on open │ │ on close
|
|
47
|
+
* handleFloatingOpen │ │ focus is only restored after a SCOPED ESCAPE:
|
|
48
|
+
* AppPicker business logic seeds initial focus │ │ useFloatingContext returns focus to the trigger
|
|
49
|
+
* │ │ (returnFocusToReference). Click-outside / toggle
|
|
50
|
+
* │ │ / controlled closes do NOT move focus, and
|
|
51
|
+
* │ │ handleFloatingClose only NOTIFIES (see (B)).
|
|
52
|
+
* │
|
|
53
|
+
* ▼
|
|
54
|
+
* ┌─────────────────────────────────────────────────────────────┐
|
|
55
|
+
* │ visibility + focus are delivered to final user as expected │
|
|
56
|
+
* └─────────────────────────────────────────────────────────────┘
|
|
57
|
+
*
|
|
58
|
+
* (B) CONSUMER NOTIFICATION
|
|
59
|
+
* Each flow below is the UNCONTROLLED path, where AppPicker owns the transition and can name the true cause.
|
|
60
|
+
* The controlled equivalent for every trigger is stated once at the end.
|
|
61
|
+
* ┌────────────────────────┐
|
|
62
|
+
* │ OPENING TRIGGERS FLOWS │
|
|
63
|
+
* └────────────────────────┘
|
|
64
|
+
* TRIGGER CLICK (uncontrolled)
|
|
65
|
+
* trigger click
|
|
66
|
+
* user clicks the internal trigger, panel closed
|
|
67
|
+
* │
|
|
68
|
+
* ▼
|
|
69
|
+
* handleTriggerClick
|
|
70
|
+
* ( flips the flag and wires the visual and focus Flow (A) above )
|
|
71
|
+
* │
|
|
72
|
+
* ▼
|
|
73
|
+
* ┌──────────────────────────────────────────────┐
|
|
74
|
+
* │ onOpen { reason: 'trigger', event } │ fired EAGERLY, when the event is triggered
|
|
75
|
+
* └──────────────────────────────────────────────┘
|
|
76
|
+
* ------------------------------------------------------------------------------------------------------------------------
|
|
77
|
+
* ┌────────────────────────┐
|
|
78
|
+
* │ CLOSING TRIGGERS FLOWS │
|
|
79
|
+
* └────────────────────────┘
|
|
80
|
+
* KEYBOARD ESCAPE (uncontrolled)
|
|
81
|
+
* Escape within the panel DOM tree or the trigger
|
|
82
|
+
* scoped Escape (routed only while closeOnEscape, i.e. no consumer onKeyDown)
|
|
83
|
+
* │
|
|
84
|
+
* ▼
|
|
85
|
+
* onEscape → handleScopedEscape
|
|
86
|
+
* ( flips the flag and wires the visual and focus Flow (A) above )
|
|
87
|
+
* │
|
|
88
|
+
* ▼
|
|
89
|
+
* ┌──────────────────────────────────────────────┐
|
|
90
|
+
* │ onClose { reason: 'escape', event } │ fired EAGERLY, when the event is triggered
|
|
91
|
+
* └──────────────────────────────────────────────┘
|
|
92
|
+
*
|
|
93
|
+
* CLICK OUTSIDE (uncontrolled)
|
|
94
|
+
* Click outside the panel DOM tree and the trigger
|
|
95
|
+
* useFloatingContext detects a pointer press outside the panel + trigger
|
|
96
|
+
* │
|
|
97
|
+
* ▼
|
|
98
|
+
* handleClickOutside
|
|
99
|
+
* ( flips the flag and wires the visual and focus Flow (A) above )
|
|
100
|
+
* │
|
|
101
|
+
* ▼
|
|
102
|
+
* ┌──────────────────────────────────────────────┐
|
|
103
|
+
* │ onClose { reason: 'click-outside', event } │ fired EAGERLY, when the event is triggered
|
|
104
|
+
* └──────────────────────────────────────────────┘
|
|
105
|
+
*
|
|
106
|
+
* CLICK ON TRIGGER (uncontrolled, while internal state is open)
|
|
107
|
+
* trigger click while open
|
|
108
|
+
* user clicks the internal trigger, panel open
|
|
109
|
+
* │
|
|
110
|
+
* ▼
|
|
111
|
+
* handleTriggerClick
|
|
112
|
+
* ( flips the flag and wires the visual and focus Flow (A) above )
|
|
113
|
+
* │
|
|
114
|
+
* ▼
|
|
115
|
+
* ┌──────────────────────────────────────────────┐
|
|
116
|
+
* │ onClose { reason: 'trigger-toggle', event } │ fired EAGERLY, when the event is triggered
|
|
117
|
+
* └──────────────────────────────────────────────┘
|
|
118
|
+
* ------------------------------------------------------------------------------------------------------------------------
|
|
119
|
+
* ┌──────────────────────────────────┐
|
|
120
|
+
* │ CONTROLLED OPEN & CLOSE FLOWS │
|
|
121
|
+
* └──────────────────────────────────┘
|
|
122
|
+
* AppPicker's own flip is inert;
|
|
123
|
+
* We can't fire EAGERLY and we can't track an originating event, there may be NONE
|
|
124
|
+
* The consumer's `isOpen` flip is reacted to by useFloatingContext, which fires onOpen / onClose with reason 'controlled-flip'
|
|
125
|
+
* We wire the visual and focus Flow (A) above, and then notify the consumer with reason 'controlled' (no event)
|
|
126
|
+
* │
|
|
127
|
+
* ▼
|
|
128
|
+
* ┌──────────────────────────────────────────────┐
|
|
129
|
+
* │ onOpen { reason: 'controlled' } │ no event
|
|
130
|
+
* │ onClose { reason: 'controlled' } │ a prop flip is not a traceable user action
|
|
131
|
+
* └──────────────────────────────────────────────┘
|
|
132
|
+
* ------------------------------------------------------------------------------------------------------------------------
|
|
133
|
+
*
|
|
134
|
+
* Eager (uncontrolled) and controlled-flip paths are mutually exclusive on `isControlled`.
|
|
135
|
+
* the consumer is notified exactly once per transition — never twice.
|
|
136
|
+
* On Escape specifically
|
|
137
|
+
* a controlled consumer supplies onKeyDown, so closeOnEscape is false in useFloatingContext
|
|
138
|
+
* └→ AppPicker's onEscape never runs —
|
|
139
|
+
* └→ the close arrives purely by listening to the flag transition
|
|
140
|
+
* ------------------------------------------------------------------------------------------------------------------------
|
|
141
|
+
* A nuance for an edge case:
|
|
142
|
+
*
|
|
143
|
+
* Declarative mount-open (rendered already-open).
|
|
144
|
+
* useFloatingContext fires no onOpen for it (it did not transition to open, it started open),
|
|
145
|
+
* └→ neither the focus-seed (A) nor the notification (B) runs
|
|
146
|
+
* AppPanel compensates this locally via useMountedOpenAutofocusNuance, it needs to be seen if this is even desired or should be removed
|
|
147
|
+
* ------------------------------------------------------------------------------------------------------------------------
|
|
148
|
+
*/
|
|
149
|
+
type ConfiguredAppPickerCtx = ReturnType<typeof useAppPicker>;
|
|
150
|
+
type AppPickerFloatingContextConfig = {
|
|
151
|
+
propsWithDefault: DSAppPickerT.InternalProps;
|
|
152
|
+
focusTrackers: ConfiguredAppPickerCtx['focusTrackers'];
|
|
153
|
+
wasOpenedByKeyboardRef: ConfiguredAppPickerCtx['wasOpenedByKeyboardRef'];
|
|
154
|
+
resolvedIsOpen: ConfiguredAppPickerCtx['resolvedIsOpen'];
|
|
155
|
+
setInternalIsOpen: ConfiguredAppPickerCtx['setInternalIsOpen'];
|
|
156
|
+
};
|
|
157
|
+
export declare const useAppPickerFloatingContext: (appPickerConfig: AppPickerFloatingContextConfig) => {
|
|
158
|
+
floatingStyles: React.CSSProperties;
|
|
159
|
+
arrowStyles: import("@elliemae/ds-floating-context/dist/types/parts/PopoverArrow.js").PopoverArrowT;
|
|
160
|
+
floatingContext: {
|
|
161
|
+
withoutPortal: boolean;
|
|
162
|
+
withoutAnimation: boolean;
|
|
163
|
+
portalDOMContainer: HTMLElement | undefined;
|
|
164
|
+
animationDuration: number;
|
|
165
|
+
};
|
|
166
|
+
handleTriggerRef: (instance: HTMLButtonElement | null) => void | React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES];
|
|
167
|
+
handleTriggerClick: (e: React.MouseEvent | React.KeyboardEvent) => void;
|
|
168
|
+
floatingInnerRef: (instance: HTMLDivElement | null) => void | React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES[keyof React.DO_NOT_USE_OR_YOU_WILL_BE_FIRED_CALLBACK_REF_RETURN_VALUES];
|
|
169
|
+
};
|
|
170
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { DSAppPickerT } from '../react-desc-prop-types.js';
|
|
3
|
+
interface AppPickerItemProps {
|
|
4
|
+
app: DSAppPickerT.AppItem;
|
|
5
|
+
chipId: string;
|
|
6
|
+
isFirstFocusable: boolean;
|
|
7
|
+
isLastFocusable: boolean;
|
|
8
|
+
positionAnnouncement: string;
|
|
9
|
+
}
|
|
10
|
+
export declare const AppPickerItem: React.FC<AppPickerItemProps>;
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { useAppPickerFloatingContext } from './AppPickerFloatingContext/useAppPickerFloatingContext.js';
|
|
3
|
+
type UseAppPickerFloatingContextT = ReturnType<typeof useAppPickerFloatingContext>;
|
|
4
|
+
type FloatingContextDictatedProps = {
|
|
5
|
+
handleTriggerRef: UseAppPickerFloatingContextT['handleTriggerRef'];
|
|
6
|
+
handleTriggerClick: UseAppPickerFloatingContextT['handleTriggerClick'];
|
|
7
|
+
dialogLabelId: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const Trigger: {
|
|
10
|
+
(PropsFromFloatingContext: FloatingContextDictatedProps): React.JSX.Element | null;
|
|
11
|
+
displayName: string;
|
|
12
|
+
};
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const StyledListItemFullRow: import("styled-components").StyledComponent<"div", import("@elliemae/ds-system").Theme, object & import("@elliemae/ds-system").OwnerInterface & import("@elliemae/ds-system").InnerRefInterface<"div">, never>;
|
|
2
|
+
export declare const StyledSection: import("styled-components").StyledComponent<"div", import("@elliemae/ds-system").Theme, object & import("@elliemae/ds-system").OwnerInterface & import("@elliemae/ds-system").InnerRefInterface<"div">, never>;
|