@spectrum-web-components/picker 1.1.0 → 1.1.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/package.json +17 -17
- package/sp-picker.d.ts +6 -0
- package/sp-picker.dev.js +5 -0
- package/sp-picker.dev.js.map +7 -0
- package/sp-picker.js +2 -0
- package/sp-picker.js.map +7 -0
- package/src/DesktopController.d.ts +7 -0
- package/src/DesktopController.dev.js +72 -0
- package/src/DesktopController.dev.js.map +7 -0
- package/src/DesktopController.js +2 -0
- package/src/DesktopController.js.map +7 -0
- package/src/InteractionController.d.ts +44 -0
- package/src/InteractionController.dev.js +122 -0
- package/src/InteractionController.dev.js.map +7 -0
- package/src/InteractionController.js +2 -0
- package/src/InteractionController.js.map +7 -0
- package/src/MobileController.d.ts +8 -0
- package/src/MobileController.dev.js +51 -0
- package/src/MobileController.dev.js.map +7 -0
- package/src/MobileController.js +2 -0
- package/src/MobileController.js.map +7 -0
- package/src/Picker.d.ts +139 -0
- package/src/Picker.dev.js +717 -0
- package/src/Picker.dev.js.map +7 -0
- package/src/Picker.js +116 -0
- package/src/Picker.js.map +7 -0
- package/src/index.d.ts +1 -0
- package/src/index.dev.js +3 -0
- package/src/index.dev.js.map +7 -0
- package/src/index.js +2 -0
- package/src/index.js.map +7 -0
- package/src/picker-overrides.css.d.ts +2 -0
- package/src/picker-overrides.css.dev.js +7 -0
- package/src/picker-overrides.css.dev.js.map +7 -0
- package/src/picker-overrides.css.js +4 -0
- package/src/picker-overrides.css.js.map +7 -0
- package/src/picker.css.d.ts +2 -0
- package/src/picker.css.dev.js +7 -0
- package/src/picker.css.dev.js.map +7 -0
- package/src/picker.css.js +4 -0
- package/src/picker.css.js.map +7 -0
- package/src/spectrum-picker.css.d.ts +2 -0
- package/src/spectrum-picker.css.dev.js +7 -0
- package/src/spectrum-picker.css.dev.js.map +7 -0
- package/src/spectrum-picker.css.js +4 -0
- package/src/spectrum-picker.css.js.map +7 -0
- package/src/strategies.d.ts +6 -0
- package/src/strategies.dev.js +8 -0
- package/src/strategies.dev.js.map +7 -0
- package/src/strategies.js +2 -0
- package/src/strategies.js.map +7 -0
- package/stories/args.js +56 -0
- package/stories/args.js.map +7 -0
- package/stories/picker-pending.stories.js +16 -0
- package/stories/picker-pending.stories.js.map +7 -0
- package/stories/picker-sizes.stories.js +75 -0
- package/stories/picker-sizes.stories.js.map +7 -0
- package/stories/picker.stories.js +694 -0
- package/stories/picker.stories.js.map +7 -0
- package/stories/states.js +228 -0
- package/stories/states.js.map +7 -0
- package/stories/template.js +32 -0
- package/stories/template.js.map +7 -0
- package/sync/index.d.ts +3 -0
- package/sync/index.dev.js +5 -0
- package/sync/index.dev.js.map +7 -0
- package/sync/index.js +2 -0
- package/sync/index.js.map +7 -0
- package/sync/sp-picker.d.ts +2 -0
- package/sync/sp-picker.dev.js +4 -0
- package/sync/sp-picker.dev.js.map +7 -0
- package/sync/sp-picker.js +2 -0
- package/sync/sp-picker.js.map +7 -0
- package/test/benchmark/basic-test.js +269 -0
- package/test/benchmark/basic-test.js.map +7 -0
- package/test/index.js +1680 -0
- package/test/index.js.map +7 -0
- package/test/picker-memory.test.js +5 -0
- package/test/picker-memory.test.js.map +7 -0
- package/test/picker-pending.test-vrt.js +5 -0
- package/test/picker-pending.test-vrt.js.map +7 -0
- package/test/picker-reparenting.test.js +92 -0
- package/test/picker-reparenting.test.js.map +7 -0
- package/test/picker-responsive.test.js +125 -0
- package/test/picker-responsive.test.js.map +7 -0
- package/test/picker-sizes.test-vrt.js +5 -0
- package/test/picker-sizes.test-vrt.js.map +7 -0
- package/test/picker-sync.test.js +7 -0
- package/test/picker-sync.test.js.map +7 -0
- package/test/picker.test-vrt.js +5 -0
- package/test/picker.test-vrt.js.map +7 -0
- package/test/picker.test.js +7 -0
- package/test/picker.test.js.map +7 -0
package/src/Picker.d.ts
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from '@spectrum-web-components/base';
|
|
2
|
+
import { StyleInfo } from '@spectrum-web-components/base/src/directives.js';
|
|
3
|
+
import { Focusable } from '@spectrum-web-components/shared/src/focusable.js';
|
|
4
|
+
import type { Tooltip } from '@spectrum-web-components/tooltip';
|
|
5
|
+
import '@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js';
|
|
6
|
+
import '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';
|
|
7
|
+
import '@spectrum-web-components/menu/sp-menu.js';
|
|
8
|
+
import type { Menu, MenuItem, MenuItemChildren } from '@spectrum-web-components/menu';
|
|
9
|
+
import { Placement } from '@spectrum-web-components/overlay';
|
|
10
|
+
import { MatchMediaController } from '@spectrum-web-components/reactive-controllers/src/MatchMedia.js';
|
|
11
|
+
import { DependencyManagerController } from '@spectrum-web-components/reactive-controllers/src/DependencyManger.js';
|
|
12
|
+
import { PendingStateController } from '@spectrum-web-components/reactive-controllers/src/PendingState.js';
|
|
13
|
+
import { Overlay } from '@spectrum-web-components/overlay/src/Overlay.js';
|
|
14
|
+
import type { SlottableRequestEvent } from '@spectrum-web-components/overlay/src/slottable-request-event.js';
|
|
15
|
+
import type { FieldLabel } from '@spectrum-web-components/field-label';
|
|
16
|
+
import { DesktopController } from './DesktopController.js';
|
|
17
|
+
import { MobileController } from './MobileController.js';
|
|
18
|
+
export declare const DESCRIPTION_ID = "option-picker";
|
|
19
|
+
declare const PickerBase_base: typeof Focusable & {
|
|
20
|
+
new (...args: any[]): import("@spectrum-web-components/base").SizedElementInterface;
|
|
21
|
+
prototype: import("@spectrum-web-components/base").SizedElementInterface;
|
|
22
|
+
};
|
|
23
|
+
export declare class PickerBase extends PickerBase_base {
|
|
24
|
+
isMobile: MatchMediaController;
|
|
25
|
+
strategy: DesktopController | MobileController;
|
|
26
|
+
appliedLabel?: string;
|
|
27
|
+
button: HTMLButtonElement;
|
|
28
|
+
dependencyManager: DependencyManagerController;
|
|
29
|
+
private deprecatedMenu;
|
|
30
|
+
disabled: boolean;
|
|
31
|
+
focused: boolean;
|
|
32
|
+
icons?: 'only' | 'none';
|
|
33
|
+
invalid: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Forces the Picker to render as a popover on mobile instead of a tray.
|
|
36
|
+
*
|
|
37
|
+
* @memberof PickerBase
|
|
38
|
+
*/
|
|
39
|
+
forcePopover: boolean;
|
|
40
|
+
/** Whether the items are currently loading. */
|
|
41
|
+
pending: boolean;
|
|
42
|
+
/** Defines a string value that labels the Picker while it is in pending state. */
|
|
43
|
+
pendingLabel: string;
|
|
44
|
+
label?: string;
|
|
45
|
+
open: boolean;
|
|
46
|
+
readonly: boolean;
|
|
47
|
+
selects: undefined | 'single';
|
|
48
|
+
labelAlignment?: 'inline';
|
|
49
|
+
protected get menuItems(): MenuItem[];
|
|
50
|
+
optionsMenu: Menu;
|
|
51
|
+
private _selfManageFocusElement;
|
|
52
|
+
get selfManageFocusElement(): boolean;
|
|
53
|
+
overlayElement: Overlay;
|
|
54
|
+
protected tooltipEl?: Tooltip;
|
|
55
|
+
/**
|
|
56
|
+
* @type {"top" | "top-start" | "top-end" | "right" | "right-start" | "right-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end"}
|
|
57
|
+
* @attr
|
|
58
|
+
*/
|
|
59
|
+
placement: Placement;
|
|
60
|
+
quiet: boolean;
|
|
61
|
+
value: string;
|
|
62
|
+
get selectedItem(): MenuItem | undefined;
|
|
63
|
+
pendingStateController: PendingStateController<this>;
|
|
64
|
+
/**
|
|
65
|
+
* Initializes the `PendingStateController` for the Picker component.
|
|
66
|
+
* The `PendingStateController` manages the pending state of the Picker.
|
|
67
|
+
*/
|
|
68
|
+
constructor();
|
|
69
|
+
set selectedItem(selectedItem: MenuItem | undefined);
|
|
70
|
+
_selectedItem?: MenuItem;
|
|
71
|
+
protected listRole: 'listbox' | 'menu';
|
|
72
|
+
protected itemRole: string;
|
|
73
|
+
get focusElement(): HTMLElement;
|
|
74
|
+
forceFocusVisible(): void;
|
|
75
|
+
click(): void;
|
|
76
|
+
handleButtonBlur(): void;
|
|
77
|
+
focus(options?: FocusOptions): void;
|
|
78
|
+
handleHelperFocus(): void;
|
|
79
|
+
handleChange(event: Event): void;
|
|
80
|
+
handleButtonFocus(event: FocusEvent): void;
|
|
81
|
+
protected handleKeydown: (event: KeyboardEvent) => void;
|
|
82
|
+
protected setValueFromItem(item: MenuItem, menuChangeEvent?: Event): Promise<void>;
|
|
83
|
+
protected setMenuItemSelected(item: MenuItem, value: boolean): void;
|
|
84
|
+
toggle(target?: boolean): void;
|
|
85
|
+
close(): void;
|
|
86
|
+
protected get containerStyles(): StyleInfo;
|
|
87
|
+
protected get selectedItemContent(): MenuItemChildren;
|
|
88
|
+
protected set selectedItemContent(selectedItemContent: MenuItemChildren | undefined);
|
|
89
|
+
_selectedItemContent?: MenuItemChildren;
|
|
90
|
+
protected handleTooltipSlotchange(event: Event & {
|
|
91
|
+
target: HTMLSlotElement;
|
|
92
|
+
}): void;
|
|
93
|
+
handleSlottableRequest: (_event: SlottableRequestEvent) => void;
|
|
94
|
+
protected renderLabelContent(content: Node[]): TemplateResult | Node[];
|
|
95
|
+
protected get buttonContent(): TemplateResult[];
|
|
96
|
+
applyFocusElementLabel: (value: string, labelElement: FieldLabel) => void;
|
|
97
|
+
protected renderOverlay(menu: TemplateResult): TemplateResult;
|
|
98
|
+
protected get renderDescriptionSlot(): TemplateResult;
|
|
99
|
+
protected render(): TemplateResult;
|
|
100
|
+
protected update(changes: PropertyValues<this>): void;
|
|
101
|
+
protected bindButtonKeydownListener(): void;
|
|
102
|
+
protected updated(changes: PropertyValues<this>): void;
|
|
103
|
+
protected firstUpdated(changes: PropertyValues<this>): void;
|
|
104
|
+
protected get dismissHelper(): TemplateResult;
|
|
105
|
+
protected renderContainer(menu: TemplateResult): TemplateResult;
|
|
106
|
+
protected hasRenderedOverlay: boolean;
|
|
107
|
+
private onScroll;
|
|
108
|
+
protected get renderMenu(): TemplateResult;
|
|
109
|
+
private willManageSelection;
|
|
110
|
+
protected shouldScheduleManageSelection(event?: Event): void;
|
|
111
|
+
protected shouldManageSelection(): void;
|
|
112
|
+
protected manageSelection(): Promise<void>;
|
|
113
|
+
private selectionPromise;
|
|
114
|
+
private selectionResolver;
|
|
115
|
+
protected getUpdateComplete(): Promise<boolean>;
|
|
116
|
+
private recentlyConnected;
|
|
117
|
+
private enterKeydownOn;
|
|
118
|
+
protected handleEnterKeydown: (event: KeyboardEvent) => void;
|
|
119
|
+
bindEvents(): void;
|
|
120
|
+
connectedCallback(): void;
|
|
121
|
+
disconnectedCallback(): void;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* @element sp-picker
|
|
125
|
+
*
|
|
126
|
+
* @slot label - The placeholder content for the Picker
|
|
127
|
+
* @slot description - The description content for the Picker
|
|
128
|
+
* @slot tooltip - Tooltip to to be applied to the the Picker Button
|
|
129
|
+
* @slot - menu items to be listed in the Picker
|
|
130
|
+
* @fires change - Announces that the `value` of the element has changed
|
|
131
|
+
* @fires sp-opened - Announces that the overlay has been opened
|
|
132
|
+
* @fires sp-closed - Announces that the overlay has been closed
|
|
133
|
+
*/
|
|
134
|
+
export declare class Picker extends PickerBase {
|
|
135
|
+
static get styles(): CSSResultArray;
|
|
136
|
+
protected get containerStyles(): StyleInfo;
|
|
137
|
+
protected handleKeydown: (event: KeyboardEvent) => void;
|
|
138
|
+
}
|
|
139
|
+
export {};
|