@spectrum-web-components/overlay 0.41.0 → 0.41.2
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/custom-elements.json +996 -314
- package/package.json +31 -7
- package/src/AbstractOverlay.d.ts +13 -3
- package/src/AbstractOverlay.dev.js +54 -19
- package/src/AbstractOverlay.dev.js.map +2 -2
- package/src/AbstractOverlay.js +1 -1
- package/src/AbstractOverlay.js.map +3 -3
- package/src/ClickController.d.ts +14 -0
- package/src/ClickController.dev.js +42 -0
- package/src/ClickController.dev.js.map +7 -0
- package/src/ClickController.js +2 -0
- package/src/ClickController.js.map +7 -0
- package/src/HoverController.d.ts +19 -0
- package/src/HoverController.dev.js +141 -0
- package/src/HoverController.dev.js.map +7 -0
- package/src/HoverController.js +2 -0
- package/src/HoverController.js.map +7 -0
- package/src/InteractionController.d.ts +23 -0
- package/src/InteractionController.dev.js +45 -0
- package/src/InteractionController.dev.js.map +7 -0
- package/src/InteractionController.js +2 -0
- package/src/InteractionController.js.map +7 -0
- package/src/LongpressController.d.ts +21 -0
- package/src/LongpressController.dev.js +157 -0
- package/src/LongpressController.dev.js.map +7 -0
- package/src/LongpressController.js +2 -0
- package/src/LongpressController.js.map +7 -0
- package/src/Overlay.d.ts +17 -50
- package/src/Overlay.dev.js +86 -363
- package/src/Overlay.dev.js.map +2 -2
- package/src/Overlay.js +10 -10
- package/src/Overlay.js.map +3 -3
- package/src/OverlayDialog.dev.js +8 -1
- package/src/OverlayDialog.dev.js.map +2 -2
- package/src/OverlayDialog.js +1 -1
- package/src/OverlayDialog.js.map +3 -3
- package/src/OverlayNoPopover.dev.js +9 -3
- package/src/OverlayNoPopover.dev.js.map +2 -2
- package/src/OverlayNoPopover.js +1 -1
- package/src/OverlayNoPopover.js.map +3 -3
- package/src/OverlayPopover.dev.js +10 -1
- package/src/OverlayPopover.dev.js.map +2 -2
- package/src/OverlayPopover.js +1 -1
- package/src/OverlayPopover.js.map +3 -3
- package/src/OverlayStack.dev.js +3 -0
- package/src/OverlayStack.dev.js.map +2 -2
- package/src/OverlayStack.js +1 -1
- package/src/OverlayStack.js.map +2 -2
- package/src/index.d.ts +1 -0
- package/src/index.dev.js +1 -0
- package/src/index.dev.js.map +2 -2
- package/src/index.js +1 -1
- package/src/index.js.map +2 -2
- package/src/overlay-trigger-directive.d.ts +31 -0
- package/src/overlay-trigger-directive.dev.js +102 -0
- package/src/overlay-trigger-directive.dev.js.map +7 -0
- package/src/overlay-trigger-directive.js +2 -0
- package/src/overlay-trigger-directive.js.map +7 -0
- package/src/overlay-trigger.css.dev.js +1 -1
- package/src/overlay-trigger.css.dev.js.map +1 -1
- package/src/overlay-trigger.css.js +1 -1
- package/src/overlay-trigger.css.js.map +1 -1
- package/src/overlay-types.d.ts +7 -0
- package/src/overlay-types.dev.js.map +1 -1
- package/src/overlay-types.js.map +1 -1
- package/src/overlay.css.dev.js +1 -3
- package/src/overlay.css.dev.js.map +2 -2
- package/src/overlay.css.js +1 -3
- package/src/overlay.css.js.map +2 -2
- package/src/slottable-request-event.d.ts +7 -0
- package/src/slottable-request-event.dev.js +28 -0
- package/src/slottable-request-event.dev.js.map +7 -0
- package/src/slottable-request-event.js +2 -0
- package/src/slottable-request-event.js.map +7 -0
- package/stories/overlay-directive.stories.js +203 -0
- package/stories/overlay-directive.stories.js.map +7 -0
- package/stories/overlay-element.stories.js +44 -1
- package/stories/overlay-element.stories.js.map +2 -2
- package/stories/overlay.stories.js +9 -9
- package/stories/overlay.stories.js.map +2 -2
- package/test/benchmark/basic-test.js +24 -1
- package/test/benchmark/basic-test.js.map +2 -2
- package/test/benchmark/directive-test.js +42 -0
- package/test/benchmark/directive-test.js.map +7 -0
- package/test/benchmark/element-test.js +40 -0
- package/test/benchmark/element-test.js.map +7 -0
- package/test/benchmark/lazy-test.js +48 -0
- package/test/benchmark/lazy-test.js.map +7 -0
- package/test/index.js +11 -176
- package/test/index.js.map +2 -2
- package/test/overlay-directive.test-vrt.js +5 -0
- package/test/overlay-directive.test-vrt.js.map +7 -0
- package/test/overlay-directive.test.js +147 -0
- package/test/overlay-directive.test.js.map +7 -0
- package/test/overlay-element.test.js +152 -1
- package/test/overlay-element.test.js.map +2 -2
- package/test/overlay-trigger-directive.test.js +75 -0
- package/test/overlay-trigger-directive.test.js.map +7 -0
- package/test/overlay-trigger-extended.test.js +1 -1
- package/test/overlay-trigger-extended.test.js.map +2 -2
package/src/Overlay.d.ts
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
import { PropertyValues, TemplateResult } from '@spectrum-web-components/base';
|
|
2
|
-
import
|
|
2
|
+
import { ElementResolutionController } from '@spectrum-web-components/reactive-controllers/src/ElementResolution.js';
|
|
3
|
+
import type { OpenableElement, OverlayState, OverlayTypes, Placement, TriggerInteraction } from './overlay-types.js';
|
|
3
4
|
import { AbstractOverlay } from './AbstractOverlay.js';
|
|
4
5
|
import { VirtualTrigger } from './VirtualTrigger.js';
|
|
5
6
|
import { PlacementController } from './PlacementController.js';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
};
|
|
7
|
+
import { ClickController } from './ClickController.js';
|
|
8
|
+
import { HoverController } from './HoverController.js';
|
|
9
|
+
import { LongpressController } from './LongpressController.js';
|
|
10
|
+
export { LONGPRESS_INSTRUCTIONS } from './LongpressController.js';
|
|
11
11
|
declare let OverlayFeatures: typeof AbstractOverlay & import("./overlay-types.js").Constructor<import("@spectrum-web-components/base").SpectrumElement>;
|
|
12
|
+
export declare const strategies: {
|
|
13
|
+
click: typeof ClickController;
|
|
14
|
+
longpress: typeof LongpressController;
|
|
15
|
+
hover: typeof HoverController;
|
|
16
|
+
};
|
|
12
17
|
/**
|
|
13
18
|
* @element sp-overlay
|
|
14
19
|
*
|
|
@@ -17,7 +22,6 @@ declare let OverlayFeatures: typeof AbstractOverlay & import("./overlay-types.js
|
|
|
17
22
|
*/
|
|
18
23
|
export declare class Overlay extends OverlayFeatures {
|
|
19
24
|
static styles: import("@spectrum-web-components/base").CSSResult[];
|
|
20
|
-
abortController: AbortController;
|
|
21
25
|
/**
|
|
22
26
|
* An Overlay that is `delayed` will wait until a warm-up period of 1000ms
|
|
23
27
|
* has completed before opening. Once the warmup period has completed, all
|
|
@@ -42,9 +46,6 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
42
46
|
elements: OpenableElement[];
|
|
43
47
|
parentOverlayToForceClose?: Overlay;
|
|
44
48
|
private get hasNonVirtualTrigger();
|
|
45
|
-
protected longpressState: 'null' | 'potential' | 'opening' | 'pressed';
|
|
46
|
-
private longressTimeout;
|
|
47
|
-
private hoverTimeout?;
|
|
48
49
|
/**
|
|
49
50
|
* The `offset` property accepts either a single number, to
|
|
50
51
|
* define the offset of the Overlay along the main axis from
|
|
@@ -53,7 +54,7 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
53
54
|
* when there is no trigger element.
|
|
54
55
|
*/
|
|
55
56
|
offset: number | [number, number];
|
|
56
|
-
protected placementController: PlacementController;
|
|
57
|
+
protected get placementController(): PlacementController;
|
|
57
58
|
/**
|
|
58
59
|
* Whether the Overlay is projected onto the "top layer" or not.
|
|
59
60
|
*/
|
|
@@ -74,12 +75,11 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
74
75
|
*
|
|
75
76
|
*/
|
|
76
77
|
receivesFocus: 'true' | 'false' | 'auto';
|
|
77
|
-
private releaseAriaDescribedby;
|
|
78
|
-
private releaseLongpressDescribedby;
|
|
79
78
|
slotEl: HTMLSlotElement;
|
|
80
79
|
get state(): OverlayState;
|
|
81
80
|
set state(state: OverlayState);
|
|
82
81
|
_state: OverlayState;
|
|
82
|
+
strategy?: ClickController | HoverController | LongpressController;
|
|
83
83
|
tipPadding?: number;
|
|
84
84
|
/**
|
|
85
85
|
* An optional ID reference for the trigger element combined with the optional
|
|
@@ -95,57 +95,24 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
95
95
|
/**
|
|
96
96
|
* The specific interaction to listen for on the `triggerElement` to open the overlay.
|
|
97
97
|
*/
|
|
98
|
-
triggerInteraction?:
|
|
98
|
+
triggerInteraction?: TriggerInteraction;
|
|
99
99
|
/**
|
|
100
100
|
* Configures the open/close heuristics of the Overlay.
|
|
101
101
|
* @type {"auto" | "hint" | "manual" | "modal" | "page"}
|
|
102
102
|
*/
|
|
103
103
|
type: OverlayTypes;
|
|
104
104
|
protected wasOpen: boolean;
|
|
105
|
-
|
|
105
|
+
protected get elementResolver(): ElementResolutionController;
|
|
106
106
|
private get usesDialog();
|
|
107
107
|
private get popoverValue();
|
|
108
108
|
protected get requiresPosition(): boolean;
|
|
109
109
|
protected managePosition(): void;
|
|
110
110
|
protected managePopoverOpen(): Promise<void>;
|
|
111
111
|
protected applyFocus(targetOpenState: boolean, focusEl: HTMLElement | null): Promise<void>;
|
|
112
|
+
protected returnFocus(): void;
|
|
112
113
|
private closeOnFocusOut;
|
|
113
114
|
protected manageOpen(oldOpen: boolean): Promise<void>;
|
|
114
|
-
protected unbindEvents(): void;
|
|
115
115
|
protected bindEvents(): void;
|
|
116
|
-
protected bindClickEvents(triggerElement: HTMLElement): void;
|
|
117
|
-
protected bindLongpressEvents(triggerElement: HTMLElement): void;
|
|
118
|
-
protected bindHoverEvents(triggerElement: HTMLElement): void;
|
|
119
|
-
protected manageTriggerElement(triggerElement: HTMLElement | undefined): void;
|
|
120
|
-
private elementIds;
|
|
121
|
-
private prepareLongpressDescription;
|
|
122
|
-
private prepareAriaDescribedby;
|
|
123
|
-
private handlePointerdown;
|
|
124
|
-
private handlePointerup;
|
|
125
|
-
/**
|
|
126
|
-
* @private
|
|
127
|
-
*/
|
|
128
|
-
protected handleKeydown: (event: KeyboardEvent) => void;
|
|
129
|
-
protected handleKeyup: (event: KeyboardEvent) => void;
|
|
130
|
-
/**
|
|
131
|
-
* An overlay with a `click` interaction should not close on click `triggerElement`.
|
|
132
|
-
* When a click is initiated (`pointerdown`), apply `preventNextToggle` when the
|
|
133
|
-
* overlay is `open` to prevent from toggling the overlay when the click event
|
|
134
|
-
* propagates later in the interaction.
|
|
135
|
-
*/
|
|
136
|
-
private preventNextToggle;
|
|
137
|
-
protected handlePointerdownForClick: () => void;
|
|
138
|
-
protected handleClick: () => void;
|
|
139
|
-
private focusedin;
|
|
140
|
-
protected handleFocusin: () => void;
|
|
141
|
-
protected handleFocusout: () => void;
|
|
142
|
-
private pointerentered;
|
|
143
|
-
protected handlePointerenter: () => void;
|
|
144
|
-
protected handleOverlayPointerenter: () => void;
|
|
145
|
-
protected handlePointerleave: () => void;
|
|
146
|
-
protected handleOverlayPointerleave: () => void;
|
|
147
|
-
protected doPointerleave(): void;
|
|
148
|
-
protected handleLongpress: () => void;
|
|
149
116
|
protected handleBeforetoggle(event: Event & {
|
|
150
117
|
newState: string;
|
|
151
118
|
}): void;
|
|
@@ -153,6 +120,7 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
153
120
|
manuallyKeepOpen(): void;
|
|
154
121
|
protected handleSlotchange(): void;
|
|
155
122
|
shouldPreventClose(): boolean;
|
|
123
|
+
protected requestSlottable(): void;
|
|
156
124
|
willUpdate(changes: PropertyValues): void;
|
|
157
125
|
protected updated(changes: PropertyValues): void;
|
|
158
126
|
protected renderContent(): TemplateResult;
|
|
@@ -163,4 +131,3 @@ export declare class Overlay extends OverlayFeatures {
|
|
|
163
131
|
connectedCallback(): void;
|
|
164
132
|
disconnectedCallback(): void;
|
|
165
133
|
}
|
|
166
|
-
export {};
|