@sit-onyx/headless 0.4.0-dev-20251112133447 → 0.4.0-dev-20251118074438
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/composables/slider/TestSlider.d.vue.ts +9 -0
- package/dist/composables/slider/createSlider.d.ts +388 -112
- package/dist/composables/slider/createSlider.testing.d.ts +10 -30
- package/dist/index.js +186 -484
- package/dist/playwright.d.ts +1 -0
- package/dist/playwright.js +138 -0
- package/package.json +1 -1
- package/dist/composables/slider/DiscreteSlider.d.vue.ts +0 -92
- package/dist/composables/slider/RangeSlider.d.vue.ts +0 -92
- package/dist/composables/slider/SimpleSlider.d.vue.ts +0 -92
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
type __VLS_PublicProps = {
|
|
2
|
+
modelValue: number | [number, number];
|
|
3
|
+
};
|
|
4
|
+
declare const _default: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
5
|
+
"update:modelValue": (value: number | [number, number]) => any;
|
|
6
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
7
|
+
"onUpdate:modelValue"?: ((value: number | [number, number]) => any) | undefined;
|
|
8
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
9
|
+
export default _default;
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { MaybeRef, Ref } from 'vue';
|
|
2
|
-
import { Nullable } from '../../utils/types.js';
|
|
3
2
|
export type SliderMark = {
|
|
4
3
|
value: number;
|
|
5
4
|
label?: string;
|
|
6
|
-
}
|
|
7
|
-
|
|
5
|
+
};
|
|
6
|
+
type SliderValue = number | [number, number];
|
|
7
|
+
export type NormalizedSliderValue = [number] | [number, number];
|
|
8
|
+
export type CreateSliderOptions<TValue extends SliderValue = SliderValue> = {
|
|
8
9
|
/**
|
|
9
10
|
* Current value(s) of the slider.
|
|
10
|
-
* Each value should be between min and max.
|
|
11
|
-
*
|
|
12
|
-
* @default [min]
|
|
13
11
|
*/
|
|
14
12
|
value: Ref<TValue>;
|
|
15
13
|
/**
|
|
@@ -31,16 +29,9 @@ export type CreateSliderOptions<TValue extends number | number[] = number> = {
|
|
|
31
29
|
*/
|
|
32
30
|
step?: MaybeRef<number>;
|
|
33
31
|
/**
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
* @default false
|
|
37
|
-
*/
|
|
38
|
-
discrete?: MaybeRef<boolean>;
|
|
39
|
-
/**
|
|
40
|
-
* Step size when holding shift key or using Page Up/Page Down keys.
|
|
32
|
+
* Step size to increase/decrease the slider value when changing the value via keyboard while pressing the "Shift" key.
|
|
41
33
|
*
|
|
42
|
-
*
|
|
43
|
-
* This provides intuitive behavior that automatically scales with different slider ranges.
|
|
34
|
+
* default 10% of the total range (max - min)
|
|
44
35
|
*/
|
|
45
36
|
shiftStep?: MaybeRef<number>;
|
|
46
37
|
/**
|
|
@@ -50,27 +41,21 @@ export type CreateSliderOptions<TValue extends number | number[] = number> = {
|
|
|
50
41
|
*/
|
|
51
42
|
disabled?: MaybeRef<boolean>;
|
|
52
43
|
/**
|
|
53
|
-
*
|
|
44
|
+
* Whether to show marks inside the slider rail.
|
|
45
|
+
* - `true`: will generate marks automatically based on `step` prop
|
|
46
|
+
* - array of numbers or `SliderMark` objects: will shown at the specified values with optional labels
|
|
54
47
|
*
|
|
55
48
|
* @default false
|
|
56
49
|
*/
|
|
57
|
-
marks?: MaybeRef<
|
|
50
|
+
marks?: MaybeRef<SliderMark[] | number[] | boolean>;
|
|
58
51
|
/**
|
|
59
52
|
* Aria label for the slider.
|
|
60
|
-
*
|
|
61
|
-
* @default undefined
|
|
62
53
|
*/
|
|
63
54
|
label: MaybeRef<string>;
|
|
64
55
|
/**
|
|
65
|
-
* Callback when the value changes
|
|
66
|
-
* Note: This is called during interaction (dragging, key press, etc.).
|
|
56
|
+
* Callback when the current value changes.
|
|
67
57
|
*/
|
|
68
58
|
onChange?: (value: TValue) => void;
|
|
69
|
-
/**
|
|
70
|
-
* Callback when the value is committed (drag end, key press, etc.).
|
|
71
|
-
* Note: This is called when the user stops interacting with the slider.
|
|
72
|
-
*/
|
|
73
|
-
onCommit?: (value: TValue) => void;
|
|
74
59
|
};
|
|
75
60
|
/**
|
|
76
61
|
* Composable for creating an accessibility-compliant slider.
|
|
@@ -79,17 +64,195 @@ export type CreateSliderOptions<TValue extends number | number[] = number> = {
|
|
|
79
64
|
* * @experimental
|
|
80
65
|
* @deprecated This component is still under active development and its API might change in patch releases.
|
|
81
66
|
*/
|
|
82
|
-
export declare const _unstableCreateSlider: <TValue extends
|
|
67
|
+
export declare const _unstableCreateSlider: <TValue extends SliderValue>(options: CreateSliderOptions<TValue>) => import('../../utils/builder.js').HeadlessComposable<{
|
|
83
68
|
/**
|
|
84
69
|
* Root slider container element
|
|
85
70
|
*/
|
|
86
71
|
root: import('vue').ComputedRef<{
|
|
72
|
+
innerHTML?: string | undefined;
|
|
73
|
+
class?: any;
|
|
74
|
+
style: string | false | import('vue').CSSProperties | import('vue').StyleValue[] | null;
|
|
75
|
+
accesskey?: string | undefined;
|
|
76
|
+
contenteditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
|
|
77
|
+
contextmenu?: string | undefined;
|
|
78
|
+
dir?: string | undefined;
|
|
79
|
+
draggable?: (boolean | "true" | "false") | undefined;
|
|
80
|
+
hidden?: (boolean | "true" | "false") | "" | "hidden" | "until-found" | undefined;
|
|
81
|
+
id?: string | undefined;
|
|
82
|
+
inert?: (boolean | "true" | "false") | undefined;
|
|
83
|
+
lang?: string | undefined;
|
|
84
|
+
placeholder?: string | undefined;
|
|
85
|
+
spellcheck?: (boolean | "true" | "false") | undefined;
|
|
86
|
+
tabindex?: (string | number) | undefined;
|
|
87
|
+
title?: string | undefined;
|
|
88
|
+
translate?: "yes" | "no" | undefined;
|
|
89
|
+
radiogroup?: string | undefined;
|
|
90
|
+
role?: string | undefined;
|
|
91
|
+
about?: string | undefined;
|
|
92
|
+
datatype?: string | undefined;
|
|
93
|
+
inlist?: any;
|
|
94
|
+
prefix?: string | undefined;
|
|
95
|
+
property?: string | undefined;
|
|
96
|
+
resource?: string | undefined;
|
|
97
|
+
typeof?: string | undefined;
|
|
98
|
+
vocab?: string | undefined;
|
|
99
|
+
autocapitalize?: string | undefined;
|
|
100
|
+
autocorrect?: string | undefined;
|
|
101
|
+
autosave?: string | undefined;
|
|
102
|
+
color?: string | undefined;
|
|
103
|
+
itemprop?: string | undefined;
|
|
104
|
+
itemscope?: (boolean | "true" | "false") | undefined;
|
|
105
|
+
itemtype?: string | undefined;
|
|
106
|
+
itemid?: string | undefined;
|
|
107
|
+
itemref?: string | undefined;
|
|
108
|
+
results?: (string | number) | undefined;
|
|
109
|
+
security?: string | undefined;
|
|
110
|
+
unselectable?: "on" | "off" | undefined;
|
|
111
|
+
inputmode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
|
|
112
|
+
is?: string | undefined;
|
|
113
|
+
'aria-activedescendant'?: string | undefined;
|
|
114
|
+
'aria-atomic'?: (boolean | "true" | "false") | undefined;
|
|
115
|
+
'aria-autocomplete'?: "none" | "inline" | "list" | "both" | undefined;
|
|
116
|
+
'aria-busy'?: (boolean | "true" | "false") | undefined;
|
|
117
|
+
'aria-checked'?: (boolean | "true" | "false") | "mixed" | undefined;
|
|
118
|
+
'aria-colcount'?: (string | number) | undefined;
|
|
119
|
+
'aria-colindex'?: (string | number) | undefined;
|
|
120
|
+
'aria-colspan'?: (string | number) | undefined;
|
|
121
|
+
'aria-controls'?: string | undefined;
|
|
122
|
+
'aria-current'?: (boolean | "true" | "false") | "page" | "step" | "location" | "date" | "time" | undefined;
|
|
123
|
+
'aria-describedby'?: string | undefined;
|
|
124
|
+
'aria-details'?: string | undefined;
|
|
125
|
+
'aria-disabled'?: (boolean | "true" | "false") | undefined;
|
|
126
|
+
'aria-dropeffect'?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
|
|
127
|
+
'aria-errormessage'?: string | undefined;
|
|
128
|
+
'aria-expanded'?: (boolean | "true" | "false") | undefined;
|
|
129
|
+
'aria-flowto'?: string | undefined;
|
|
130
|
+
'aria-grabbed'?: (boolean | "true" | "false") | undefined;
|
|
131
|
+
'aria-haspopup'?: (boolean | "true" | "false") | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
|
|
132
|
+
'aria-hidden'?: (boolean | "true" | "false") | undefined;
|
|
133
|
+
'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
|
|
134
|
+
'aria-keyshortcuts'?: string | undefined;
|
|
135
|
+
'aria-label'?: string | undefined;
|
|
136
|
+
'aria-labelledby'?: string | undefined;
|
|
137
|
+
'aria-level'?: (string | number) | undefined;
|
|
138
|
+
'aria-live'?: "off" | "assertive" | "polite" | undefined;
|
|
139
|
+
'aria-modal'?: (boolean | "true" | "false") | undefined;
|
|
140
|
+
'aria-multiline'?: (boolean | "true" | "false") | undefined;
|
|
141
|
+
'aria-multiselectable'?: (boolean | "true" | "false") | undefined;
|
|
142
|
+
'aria-orientation'?: "horizontal" | "vertical" | undefined;
|
|
143
|
+
'aria-owns'?: string | undefined;
|
|
144
|
+
'aria-placeholder'?: string | undefined;
|
|
145
|
+
'aria-posinset'?: (string | number) | undefined;
|
|
146
|
+
'aria-pressed'?: (boolean | "true" | "false") | "mixed" | undefined;
|
|
147
|
+
'aria-readonly'?: (boolean | "true" | "false") | undefined;
|
|
148
|
+
'aria-relevant'?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
|
|
149
|
+
'aria-required'?: (boolean | "true" | "false") | undefined;
|
|
150
|
+
'aria-roledescription'?: string | undefined;
|
|
151
|
+
'aria-rowcount'?: (string | number) | undefined;
|
|
152
|
+
'aria-rowindex'?: (string | number) | undefined;
|
|
153
|
+
'aria-rowspan'?: (string | number) | undefined;
|
|
154
|
+
'aria-selected'?: (boolean | "true" | "false") | undefined;
|
|
155
|
+
'aria-setsize'?: (string | number) | undefined;
|
|
156
|
+
'aria-sort'?: "none" | "ascending" | "descending" | "other" | undefined;
|
|
157
|
+
'aria-valuemax'?: (string | number) | undefined;
|
|
158
|
+
'aria-valuemin'?: (string | number) | undefined;
|
|
159
|
+
'aria-valuenow'?: (string | number) | undefined;
|
|
160
|
+
'aria-valuetext'?: string | undefined;
|
|
161
|
+
onCopy?: ((payload: ClipboardEvent) => void) | undefined;
|
|
162
|
+
onCut?: ((payload: ClipboardEvent) => void) | undefined;
|
|
163
|
+
onPaste?: ((payload: ClipboardEvent) => void) | undefined;
|
|
164
|
+
onCompositionend?: ((payload: CompositionEvent) => void) | undefined;
|
|
165
|
+
onCompositionstart?: ((payload: CompositionEvent) => void) | undefined;
|
|
166
|
+
onCompositionupdate?: ((payload: CompositionEvent) => void) | undefined;
|
|
167
|
+
onDrag?: ((payload: DragEvent) => void) | undefined;
|
|
168
|
+
onDragend?: ((payload: DragEvent) => void) | undefined;
|
|
169
|
+
onDragenter?: ((payload: DragEvent) => void) | undefined;
|
|
170
|
+
onDragexit?: ((payload: DragEvent) => void) | undefined;
|
|
171
|
+
onDragleave?: ((payload: DragEvent) => void) | undefined;
|
|
172
|
+
onDragover?: ((payload: DragEvent) => void) | undefined;
|
|
173
|
+
onDragstart?: ((payload: DragEvent) => void) | undefined;
|
|
174
|
+
onDrop?: ((payload: DragEvent) => void) | undefined;
|
|
175
|
+
onFocus?: ((payload: FocusEvent) => void) | undefined;
|
|
176
|
+
onFocusin?: ((payload: FocusEvent) => void) | undefined;
|
|
177
|
+
onFocusout?: ((payload: FocusEvent) => void) | undefined;
|
|
178
|
+
onBlur?: ((payload: FocusEvent) => void) | undefined;
|
|
179
|
+
onChange?: ((payload: Event) => void) | undefined;
|
|
180
|
+
onBeforeinput?: ((payload: InputEvent) => void) | undefined;
|
|
181
|
+
onFormdata?: ((payload: FormDataEvent) => void) | undefined;
|
|
182
|
+
onInput?: ((payload: InputEvent) => void) | undefined;
|
|
183
|
+
onReset?: ((payload: Event) => void) | undefined;
|
|
184
|
+
onSubmit?: ((payload: SubmitEvent) => void) | undefined;
|
|
185
|
+
onInvalid?: ((payload: Event) => void) | undefined;
|
|
186
|
+
onFullscreenchange?: ((payload: Event) => void) | undefined;
|
|
187
|
+
onFullscreenerror?: ((payload: Event) => void) | undefined;
|
|
188
|
+
onLoad?: ((payload: Event) => void) | undefined;
|
|
189
|
+
onError?: ((payload: Event) => void) | undefined;
|
|
190
|
+
onKeydown?: ((payload: KeyboardEvent) => void) | undefined;
|
|
191
|
+
onKeypress?: ((payload: KeyboardEvent) => void) | undefined;
|
|
192
|
+
onKeyup?: ((payload: KeyboardEvent) => void) | undefined;
|
|
193
|
+
onDblclick?: ((payload: MouseEvent) => void) | undefined;
|
|
194
|
+
onMousedown?: ((payload: MouseEvent) => void) | undefined;
|
|
195
|
+
onMouseenter?: ((payload: MouseEvent) => void) | undefined;
|
|
196
|
+
onMouseleave?: ((payload: MouseEvent) => void) | undefined;
|
|
197
|
+
onMousemove?: ((payload: MouseEvent) => void) | undefined;
|
|
198
|
+
onMouseout?: ((payload: MouseEvent) => void) | undefined;
|
|
199
|
+
onMouseover?: ((payload: MouseEvent) => void) | undefined;
|
|
200
|
+
onMouseup?: ((payload: MouseEvent) => void) | undefined;
|
|
201
|
+
onAbort?: ((payload: UIEvent) => void) | undefined;
|
|
202
|
+
onCanplay?: ((payload: Event) => void) | undefined;
|
|
203
|
+
onCanplaythrough?: ((payload: Event) => void) | undefined;
|
|
204
|
+
onDurationchange?: ((payload: Event) => void) | undefined;
|
|
205
|
+
onEmptied?: ((payload: Event) => void) | undefined;
|
|
206
|
+
onEncrypted?: ((payload: MediaEncryptedEvent) => void) | undefined;
|
|
207
|
+
onEnded?: ((payload: Event) => void) | undefined;
|
|
208
|
+
onLoadeddata?: ((payload: Event) => void) | undefined;
|
|
209
|
+
onLoadedmetadata?: ((payload: Event) => void) | undefined;
|
|
210
|
+
onLoadstart?: ((payload: Event) => void) | undefined;
|
|
211
|
+
onPause?: ((payload: Event) => void) | undefined;
|
|
212
|
+
onPlay?: ((payload: Event) => void) | undefined;
|
|
213
|
+
onPlaying?: ((payload: Event) => void) | undefined;
|
|
214
|
+
onProgress?: ((payload: ProgressEvent<EventTarget>) => void) | undefined;
|
|
215
|
+
onRatechange?: ((payload: Event) => void) | undefined;
|
|
216
|
+
onSeeked?: ((payload: Event) => void) | undefined;
|
|
217
|
+
onSeeking?: ((payload: Event) => void) | undefined;
|
|
218
|
+
onStalled?: ((payload: Event) => void) | undefined;
|
|
219
|
+
onSuspend?: ((payload: Event) => void) | undefined;
|
|
220
|
+
onTimeupdate?: ((payload: Event) => void) | undefined;
|
|
221
|
+
onVolumechange?: ((payload: Event) => void) | undefined;
|
|
222
|
+
onWaiting?: ((payload: Event) => void) | undefined;
|
|
223
|
+
onSelect?: ((payload: Event) => void) | undefined;
|
|
224
|
+
onScroll?: ((payload: Event) => void) | undefined;
|
|
225
|
+
onScrollend?: ((payload: Event) => void) | undefined;
|
|
226
|
+
onTouchcancel?: ((payload: TouchEvent) => void) | undefined;
|
|
227
|
+
onTouchend?: ((payload: TouchEvent) => void) | undefined;
|
|
228
|
+
onTouchmove?: ((payload: TouchEvent) => void) | undefined;
|
|
229
|
+
onTouchstart?: ((payload: TouchEvent) => void) | undefined;
|
|
230
|
+
onAuxclick?: ((payload: PointerEvent) => void) | undefined;
|
|
231
|
+
onClick?: ((payload: PointerEvent) => void) | undefined;
|
|
232
|
+
onContextmenu?: ((payload: PointerEvent) => void) | undefined;
|
|
233
|
+
onGotpointercapture?: ((payload: PointerEvent) => void) | undefined;
|
|
234
|
+
onLostpointercapture?: ((payload: PointerEvent) => void) | undefined;
|
|
235
|
+
onPointerdown?: ((payload: PointerEvent) => void) | undefined;
|
|
236
|
+
onPointermove?: ((payload: PointerEvent) => void) | undefined;
|
|
237
|
+
onPointerup?: ((payload: PointerEvent) => void) | undefined;
|
|
238
|
+
onPointercancel?: ((payload: PointerEvent) => void) | undefined;
|
|
239
|
+
onPointerenter?: ((payload: PointerEvent) => void) | undefined;
|
|
240
|
+
onPointerleave?: ((payload: PointerEvent) => void) | undefined;
|
|
241
|
+
onPointerover?: ((payload: PointerEvent) => void) | undefined;
|
|
242
|
+
onPointerout?: ((payload: PointerEvent) => void) | undefined;
|
|
243
|
+
onBeforetoggle?: ((payload: ToggleEvent) => void) | undefined;
|
|
244
|
+
onToggle?: ((payload: ToggleEvent) => void) | undefined;
|
|
245
|
+
onWheel?: ((payload: WheelEvent) => void) | undefined;
|
|
246
|
+
onAnimationcancel?: ((payload: AnimationEvent) => void) | undefined;
|
|
247
|
+
onAnimationstart?: ((payload: AnimationEvent) => void) | undefined;
|
|
248
|
+
onAnimationend?: ((payload: AnimationEvent) => void) | undefined;
|
|
249
|
+
onAnimationiteration?: ((payload: AnimationEvent) => void) | undefined;
|
|
250
|
+
onSecuritypolicyviolation?: ((payload: SecurityPolicyViolationEvent) => void) | undefined;
|
|
251
|
+
onTransitioncancel?: ((payload: TransitionEvent) => void) | undefined;
|
|
252
|
+
onTransitionend?: ((payload: TransitionEvent) => void) | undefined;
|
|
253
|
+
onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
|
|
254
|
+
onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
|
|
87
255
|
ref: import('../../utils/builder.js').HeadlessElRef<HTMLElement>;
|
|
88
|
-
style: {
|
|
89
|
-
touchAction: "pan-y";
|
|
90
|
-
};
|
|
91
|
-
onMousedown: (event: MouseEvent) => void;
|
|
92
|
-
onTouchstart: (event: TouchEvent) => void;
|
|
93
256
|
}>;
|
|
94
257
|
/**
|
|
95
258
|
* Individual thumb elements for each value (span)
|
|
@@ -98,46 +261,215 @@ export declare const _unstableCreateSlider: <TValue extends number | number[] =
|
|
|
98
261
|
index: number;
|
|
99
262
|
value: number;
|
|
100
263
|
}) => {
|
|
101
|
-
"data-index": number;
|
|
102
264
|
style: {
|
|
103
265
|
left: string;
|
|
104
266
|
};
|
|
105
267
|
}>;
|
|
106
268
|
/**
|
|
107
|
-
*
|
|
269
|
+
* Input inside each thumb for accessibility
|
|
108
270
|
*/
|
|
109
271
|
thumbInput: import('vue').ComputedRef<(data: {
|
|
110
272
|
index: number;
|
|
111
273
|
value: number;
|
|
112
274
|
}) => {
|
|
275
|
+
innerHTML?: string | undefined;
|
|
276
|
+
class?: any;
|
|
277
|
+
style?: import('vue').StyleValue | undefined;
|
|
278
|
+
accesskey?: string | undefined;
|
|
279
|
+
contenteditable?: (boolean | "true" | "false") | "inherit" | "plaintext-only" | undefined;
|
|
280
|
+
contextmenu?: string | undefined;
|
|
281
|
+
dir?: string | undefined;
|
|
282
|
+
draggable?: (boolean | "true" | "false") | undefined;
|
|
283
|
+
hidden?: (boolean | "true" | "false") | "" | "hidden" | "until-found" | undefined;
|
|
284
|
+
id?: string | undefined;
|
|
285
|
+
inert?: (boolean | "true" | "false") | undefined;
|
|
286
|
+
lang?: string | undefined;
|
|
287
|
+
placeholder?: string | undefined;
|
|
288
|
+
spellcheck?: (boolean | "true" | "false") | undefined;
|
|
289
|
+
tabindex?: (string | number) | undefined;
|
|
290
|
+
title?: string | undefined;
|
|
291
|
+
translate?: "yes" | "no" | undefined;
|
|
292
|
+
radiogroup?: string | undefined;
|
|
293
|
+
role: string;
|
|
294
|
+
about?: string | undefined;
|
|
295
|
+
datatype?: string | undefined;
|
|
296
|
+
inlist?: any;
|
|
297
|
+
prefix?: string | undefined;
|
|
298
|
+
property?: string | undefined;
|
|
299
|
+
resource?: string | undefined;
|
|
300
|
+
typeof?: string | undefined;
|
|
301
|
+
vocab?: string | undefined;
|
|
302
|
+
autocapitalize?: string | undefined;
|
|
303
|
+
autocorrect?: string | undefined;
|
|
304
|
+
autosave?: string | undefined;
|
|
305
|
+
color?: string | undefined;
|
|
306
|
+
itemprop?: string | undefined;
|
|
307
|
+
itemscope?: (boolean | "true" | "false") | undefined;
|
|
308
|
+
itemtype?: string | undefined;
|
|
309
|
+
itemid?: string | undefined;
|
|
310
|
+
itemref?: string | undefined;
|
|
311
|
+
results?: (string | number) | undefined;
|
|
312
|
+
security?: string | undefined;
|
|
313
|
+
unselectable?: "on" | "off" | undefined;
|
|
314
|
+
inputmode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
|
|
315
|
+
is?: string | undefined;
|
|
316
|
+
'aria-activedescendant'?: string | undefined;
|
|
317
|
+
'aria-atomic'?: (boolean | "true" | "false") | undefined;
|
|
318
|
+
'aria-autocomplete'?: "none" | "inline" | "list" | "both" | undefined;
|
|
319
|
+
'aria-busy'?: (boolean | "true" | "false") | undefined;
|
|
320
|
+
'aria-checked'?: (boolean | "true" | "false") | "mixed" | undefined;
|
|
321
|
+
'aria-colcount'?: (string | number) | undefined;
|
|
322
|
+
'aria-colindex'?: (string | number) | undefined;
|
|
323
|
+
'aria-colspan'?: (string | number) | undefined;
|
|
324
|
+
'aria-controls'?: string | undefined;
|
|
325
|
+
'aria-current'?: (boolean | "true" | "false") | "page" | "step" | "location" | "date" | "time" | undefined;
|
|
326
|
+
'aria-describedby'?: string | undefined;
|
|
327
|
+
'aria-details'?: string | undefined;
|
|
328
|
+
'aria-disabled'?: (boolean | "true" | "false") | undefined;
|
|
329
|
+
'aria-dropeffect'?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
|
|
330
|
+
'aria-errormessage'?: string | undefined;
|
|
331
|
+
'aria-expanded'?: (boolean | "true" | "false") | undefined;
|
|
332
|
+
'aria-flowto'?: string | undefined;
|
|
333
|
+
'aria-grabbed'?: (boolean | "true" | "false") | undefined;
|
|
334
|
+
'aria-haspopup'?: (boolean | "true" | "false") | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
|
|
335
|
+
'aria-hidden'?: (boolean | "true" | "false") | undefined;
|
|
336
|
+
'aria-invalid'?: (boolean | "true" | "false") | "grammar" | "spelling" | undefined;
|
|
337
|
+
'aria-keyshortcuts'?: string | undefined;
|
|
338
|
+
"aria-label": string;
|
|
339
|
+
'aria-labelledby'?: string | undefined;
|
|
340
|
+
'aria-level'?: (string | number) | undefined;
|
|
341
|
+
'aria-live'?: "off" | "assertive" | "polite" | undefined;
|
|
342
|
+
'aria-modal'?: (boolean | "true" | "false") | undefined;
|
|
343
|
+
'aria-multiline'?: (boolean | "true" | "false") | undefined;
|
|
344
|
+
'aria-multiselectable'?: (boolean | "true" | "false") | undefined;
|
|
345
|
+
"aria-orientation": "horizontal" | "vertical";
|
|
346
|
+
'aria-owns'?: string | undefined;
|
|
347
|
+
'aria-placeholder'?: string | undefined;
|
|
348
|
+
'aria-posinset'?: (string | number) | undefined;
|
|
349
|
+
'aria-pressed'?: (boolean | "true" | "false") | "mixed" | undefined;
|
|
350
|
+
'aria-readonly'?: (boolean | "true" | "false") | undefined;
|
|
351
|
+
'aria-relevant'?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
|
|
352
|
+
'aria-required'?: (boolean | "true" | "false") | undefined;
|
|
353
|
+
'aria-roledescription'?: string | undefined;
|
|
354
|
+
'aria-rowcount'?: (string | number) | undefined;
|
|
355
|
+
'aria-rowindex'?: (string | number) | undefined;
|
|
356
|
+
'aria-rowspan'?: (string | number) | undefined;
|
|
357
|
+
'aria-selected'?: (boolean | "true" | "false") | undefined;
|
|
358
|
+
'aria-setsize'?: (string | number) | undefined;
|
|
359
|
+
'aria-sort'?: "none" | "ascending" | "descending" | "other" | undefined;
|
|
360
|
+
"aria-valuemax": string | number;
|
|
361
|
+
"aria-valuemin": string | number;
|
|
362
|
+
"aria-valuenow": string | number;
|
|
363
|
+
'aria-valuetext'?: string | undefined;
|
|
364
|
+
onCopy?: ((payload: ClipboardEvent) => void) | undefined;
|
|
365
|
+
onCut?: ((payload: ClipboardEvent) => void) | undefined;
|
|
366
|
+
onPaste?: ((payload: ClipboardEvent) => void) | undefined;
|
|
367
|
+
onCompositionend?: ((payload: CompositionEvent) => void) | undefined;
|
|
368
|
+
onCompositionstart?: ((payload: CompositionEvent) => void) | undefined;
|
|
369
|
+
onCompositionupdate?: ((payload: CompositionEvent) => void) | undefined;
|
|
370
|
+
onDrag?: ((payload: DragEvent) => void) | undefined;
|
|
371
|
+
onDragend?: ((payload: DragEvent) => void) | undefined;
|
|
372
|
+
onDragenter?: ((payload: DragEvent) => void) | undefined;
|
|
373
|
+
onDragexit?: ((payload: DragEvent) => void) | undefined;
|
|
374
|
+
onDragleave?: ((payload: DragEvent) => void) | undefined;
|
|
375
|
+
onDragover?: ((payload: DragEvent) => void) | undefined;
|
|
376
|
+
onDragstart?: ((payload: DragEvent) => void) | undefined;
|
|
377
|
+
onDrop?: ((payload: DragEvent) => void) | undefined;
|
|
378
|
+
onFocus?: ((payload: FocusEvent) => void) | undefined;
|
|
379
|
+
onFocusin?: ((payload: FocusEvent) => void) | undefined;
|
|
380
|
+
onFocusout?: ((payload: FocusEvent) => void) | undefined;
|
|
381
|
+
onBlur?: ((payload: FocusEvent) => void) | undefined;
|
|
382
|
+
onChange?: ((payload: Event) => void) | undefined;
|
|
383
|
+
onBeforeinput?: ((payload: InputEvent) => void) | undefined;
|
|
384
|
+
onFormdata?: ((payload: FormDataEvent) => void) | undefined;
|
|
385
|
+
onInput?: ((payload: InputEvent) => void) | undefined;
|
|
386
|
+
onReset?: ((payload: Event) => void) | undefined;
|
|
387
|
+
onSubmit?: ((payload: SubmitEvent) => void) | undefined;
|
|
388
|
+
onInvalid?: ((payload: Event) => void) | undefined;
|
|
389
|
+
onFullscreenchange?: ((payload: Event) => void) | undefined;
|
|
390
|
+
onFullscreenerror?: ((payload: Event) => void) | undefined;
|
|
391
|
+
onLoad?: ((payload: Event) => void) | undefined;
|
|
392
|
+
onError?: ((payload: Event) => void) | undefined;
|
|
393
|
+
onKeydown?: ((payload: KeyboardEvent) => void) | undefined;
|
|
394
|
+
onKeypress?: ((payload: KeyboardEvent) => void) | undefined;
|
|
395
|
+
onKeyup?: ((payload: KeyboardEvent) => void) | undefined;
|
|
396
|
+
onDblclick?: ((payload: MouseEvent) => void) | undefined;
|
|
397
|
+
onMousedown?: ((payload: MouseEvent) => void) | undefined;
|
|
398
|
+
onMouseenter?: ((payload: MouseEvent) => void) | undefined;
|
|
399
|
+
onMouseleave?: ((payload: MouseEvent) => void) | undefined;
|
|
400
|
+
onMousemove?: ((payload: MouseEvent) => void) | undefined;
|
|
401
|
+
onMouseout?: ((payload: MouseEvent) => void) | undefined;
|
|
402
|
+
onMouseover?: ((payload: MouseEvent) => void) | undefined;
|
|
403
|
+
onMouseup?: ((payload: MouseEvent) => void) | undefined;
|
|
404
|
+
onAbort?: ((payload: UIEvent) => void) | undefined;
|
|
405
|
+
onCanplay?: ((payload: Event) => void) | undefined;
|
|
406
|
+
onCanplaythrough?: ((payload: Event) => void) | undefined;
|
|
407
|
+
onDurationchange?: ((payload: Event) => void) | undefined;
|
|
408
|
+
onEmptied?: ((payload: Event) => void) | undefined;
|
|
409
|
+
onEncrypted?: ((payload: MediaEncryptedEvent) => void) | undefined;
|
|
410
|
+
onEnded?: ((payload: Event) => void) | undefined;
|
|
411
|
+
onLoadeddata?: ((payload: Event) => void) | undefined;
|
|
412
|
+
onLoadedmetadata?: ((payload: Event) => void) | undefined;
|
|
413
|
+
onLoadstart?: ((payload: Event) => void) | undefined;
|
|
414
|
+
onPause?: ((payload: Event) => void) | undefined;
|
|
415
|
+
onPlay?: ((payload: Event) => void) | undefined;
|
|
416
|
+
onPlaying?: ((payload: Event) => void) | undefined;
|
|
417
|
+
onProgress?: ((payload: ProgressEvent<EventTarget>) => void) | undefined;
|
|
418
|
+
onRatechange?: ((payload: Event) => void) | undefined;
|
|
419
|
+
onSeeked?: ((payload: Event) => void) | undefined;
|
|
420
|
+
onSeeking?: ((payload: Event) => void) | undefined;
|
|
421
|
+
onStalled?: ((payload: Event) => void) | undefined;
|
|
422
|
+
onSuspend?: ((payload: Event) => void) | undefined;
|
|
423
|
+
onTimeupdate?: ((payload: Event) => void) | undefined;
|
|
424
|
+
onVolumechange?: ((payload: Event) => void) | undefined;
|
|
425
|
+
onWaiting?: ((payload: Event) => void) | undefined;
|
|
426
|
+
onSelect?: ((payload: Event) => void) | undefined;
|
|
427
|
+
onScroll?: ((payload: Event) => void) | undefined;
|
|
428
|
+
onScrollend?: ((payload: Event) => void) | undefined;
|
|
429
|
+
onTouchcancel?: ((payload: TouchEvent) => void) | undefined;
|
|
430
|
+
onTouchend?: ((payload: TouchEvent) => void) | undefined;
|
|
431
|
+
onTouchmove?: ((payload: TouchEvent) => void) | undefined;
|
|
432
|
+
onTouchstart?: ((payload: TouchEvent) => void) | undefined;
|
|
433
|
+
onAuxclick?: ((payload: PointerEvent) => void) | undefined;
|
|
434
|
+
onClick?: ((payload: PointerEvent) => void) | undefined;
|
|
435
|
+
onContextmenu?: ((payload: PointerEvent) => void) | undefined;
|
|
436
|
+
onGotpointercapture?: ((payload: PointerEvent) => void) | undefined;
|
|
437
|
+
onLostpointercapture?: ((payload: PointerEvent) => void) | undefined;
|
|
438
|
+
onPointerdown?: ((payload: PointerEvent) => void) | undefined;
|
|
439
|
+
onPointermove?: ((payload: PointerEvent) => void) | undefined;
|
|
440
|
+
onPointerup?: ((payload: PointerEvent) => void) | undefined;
|
|
441
|
+
onPointercancel?: ((payload: PointerEvent) => void) | undefined;
|
|
442
|
+
onPointerenter?: ((payload: PointerEvent) => void) | undefined;
|
|
443
|
+
onPointerleave?: ((payload: PointerEvent) => void) | undefined;
|
|
444
|
+
onPointerover?: ((payload: PointerEvent) => void) | undefined;
|
|
445
|
+
onPointerout?: ((payload: PointerEvent) => void) | undefined;
|
|
446
|
+
onBeforetoggle?: ((payload: ToggleEvent) => void) | undefined;
|
|
447
|
+
onToggle?: ((payload: ToggleEvent) => void) | undefined;
|
|
448
|
+
onWheel?: ((payload: WheelEvent) => void) | undefined;
|
|
449
|
+
onAnimationcancel?: ((payload: AnimationEvent) => void) | undefined;
|
|
450
|
+
onAnimationstart?: ((payload: AnimationEvent) => void) | undefined;
|
|
451
|
+
onAnimationend?: ((payload: AnimationEvent) => void) | undefined;
|
|
452
|
+
onAnimationiteration?: ((payload: AnimationEvent) => void) | undefined;
|
|
453
|
+
onSecuritypolicyviolation?: ((payload: SecurityPolicyViolationEvent) => void) | undefined;
|
|
454
|
+
onTransitioncancel?: ((payload: TransitionEvent) => void) | undefined;
|
|
455
|
+
onTransitionend?: ((payload: TransitionEvent) => void) | undefined;
|
|
456
|
+
onTransitionrun?: ((payload: TransitionEvent) => void) | undefined;
|
|
457
|
+
onTransitionstart?: ((payload: TransitionEvent) => void) | undefined;
|
|
113
458
|
min: number;
|
|
114
459
|
max: number;
|
|
115
460
|
value: number;
|
|
116
|
-
role: string;
|
|
117
461
|
type: string;
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
"aria-valuemax": number;
|
|
121
|
-
"aria-valuenow": number;
|
|
122
|
-
"aria-orientation": "horizontal";
|
|
123
|
-
"data-index": number;
|
|
124
|
-
tabIndex: number;
|
|
125
|
-
step: string | number;
|
|
126
|
-
disabled: boolean;
|
|
127
|
-
onChange: (event: Event) => void;
|
|
128
|
-
onFocus: (event: FocusEvent) => void;
|
|
129
|
-
onBlur: (event: FocusEvent) => void;
|
|
130
|
-
onKeydown: (event: KeyboardEvent) => void;
|
|
462
|
+
step: number;
|
|
463
|
+
disabled: boolean | undefined;
|
|
131
464
|
}>;
|
|
132
465
|
/**
|
|
133
|
-
* Mark
|
|
466
|
+
* Single Mark element inside the rail
|
|
134
467
|
*/
|
|
135
468
|
mark: import('vue').ComputedRef<(data: {
|
|
136
469
|
value: number;
|
|
137
470
|
label?: string;
|
|
138
471
|
positionOffset?: string;
|
|
139
472
|
}) => {
|
|
140
|
-
"data-value": number;
|
|
141
473
|
"aria-hidden": true;
|
|
142
474
|
style: {
|
|
143
475
|
left: string;
|
|
@@ -149,82 +481,26 @@ export declare const _unstableCreateSlider: <TValue extends number | number[] =
|
|
|
149
481
|
markLabel: import('vue').ComputedRef<(data: {
|
|
150
482
|
value: number;
|
|
151
483
|
}) => {
|
|
152
|
-
"
|
|
484
|
+
"aria-hidden": true;
|
|
153
485
|
style: {
|
|
154
486
|
left: string;
|
|
487
|
+
transform: `translateX(${string})` | undefined;
|
|
155
488
|
};
|
|
156
|
-
"aria-hidden": true;
|
|
157
489
|
}>;
|
|
158
490
|
/**
|
|
159
491
|
* Track element representing the selected range
|
|
160
492
|
*/
|
|
161
493
|
track: import('vue').ComputedRef<{
|
|
162
|
-
role: string;
|
|
163
|
-
"aria-hidden": true;
|
|
164
494
|
style: {
|
|
165
495
|
left: string;
|
|
166
496
|
width: string;
|
|
167
497
|
};
|
|
168
498
|
}>;
|
|
169
|
-
/**
|
|
170
|
-
* Rail element representing the full slider range
|
|
171
|
-
*/
|
|
172
|
-
rail: import('vue').ComputedRef<{
|
|
173
|
-
role: string;
|
|
174
|
-
"aria-hidden": true;
|
|
175
|
-
}>;
|
|
176
499
|
}, {
|
|
177
|
-
|
|
178
|
-
* True if the slider is currently being dragged.
|
|
179
|
-
*/
|
|
180
|
-
isDragging: Ref<boolean, boolean>;
|
|
181
|
-
/**
|
|
182
|
-
* Index of the currently active thumb.
|
|
183
|
-
* Thumb could be active even if not dragging (e.g. click on the rail to move the thumb there).
|
|
184
|
-
* `-1` if no thumb is active.
|
|
185
|
-
*/
|
|
186
|
-
activeThumbIndex: Ref<number, number>;
|
|
187
|
-
/**
|
|
188
|
-
* `true` if the slider is a range slider (with two or more thumbs).
|
|
189
|
-
*/
|
|
190
|
-
isRange: import('vue').ComputedRef<boolean>;
|
|
191
|
-
/**
|
|
192
|
-
* Offset of the track as a percentage (0-100).
|
|
193
|
-
*/
|
|
194
|
-
trackOffset: import('vue').ComputedRef<number>;
|
|
195
|
-
/**
|
|
196
|
-
* Length of the track as a percentage (0-100).
|
|
197
|
-
*/
|
|
198
|
-
trackLength: import('vue').ComputedRef<number>;
|
|
199
|
-
/**
|
|
200
|
-
* List of marks to display on the slider.
|
|
201
|
-
* - If marks option is `true`, marks are generated based on the step value.
|
|
202
|
-
* - If marks option is an array of numbers or objects, it is used as provided (filtered to be within range).
|
|
203
|
-
* - If marks option is `false`, no marks are shown.
|
|
204
|
-
*/
|
|
205
|
-
marksList: import('vue').ComputedRef<{
|
|
206
|
-
value: number;
|
|
207
|
-
label?: string;
|
|
208
|
-
}[]>;
|
|
209
|
-
/**
|
|
210
|
-
* Step size when holding shift key or using Page Up/Page Down keys.
|
|
211
|
-
*/
|
|
500
|
+
normalizedValue: import('vue').ComputedRef<NormalizedSliderValue>;
|
|
212
501
|
shiftStep: import('vue').ComputedRef<number>;
|
|
213
|
-
|
|
214
|
-
* Normalized slider values (clamped to min/max and rounded to nearest step/mark).
|
|
215
|
-
*/
|
|
216
|
-
normalizedValues: import('vue').ComputedRef<number[]>;
|
|
502
|
+
marks: import('vue').ComputedRef<SliderMark[]>;
|
|
217
503
|
}, {
|
|
218
|
-
|
|
219
|
-
* Clamps a value to the slider's range.
|
|
220
|
-
* @param value - value to clamp
|
|
221
|
-
* @returns clamped value
|
|
222
|
-
*/
|
|
223
|
-
clampValue: import('vue').ComputedRef<(value: number) => number>;
|
|
224
|
-
/**
|
|
225
|
-
* Rounds a value to the nearest valid step.
|
|
226
|
-
* @param value - value to round
|
|
227
|
-
* @returns rounded value
|
|
228
|
-
*/
|
|
229
|
-
roundToStep: import('vue').ComputedRef<(value: number) => number | undefined>;
|
|
504
|
+
updateValue: (value: number, index: number) => void;
|
|
230
505
|
}>;
|
|
506
|
+
export {};
|
|
@@ -5,45 +5,25 @@ export type SliderTestingOptions = {
|
|
|
5
5
|
*/
|
|
6
6
|
page: Page;
|
|
7
7
|
/**
|
|
8
|
-
* Locator for the slider element(s).
|
|
8
|
+
* Locator for the slider element(s) (native `<input>`).
|
|
9
9
|
*/
|
|
10
10
|
slider: Locator;
|
|
11
11
|
/**
|
|
12
|
-
*
|
|
12
|
+
* Locator to the sliders rail element.
|
|
13
13
|
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* Expected initial value(s) for the slider.
|
|
17
|
-
*/
|
|
18
|
-
initialValues?: number[];
|
|
19
|
-
/**
|
|
20
|
-
* Expected min value.
|
|
21
|
-
*/
|
|
22
|
-
min?: number;
|
|
23
|
-
/**
|
|
24
|
-
* Expected max value.
|
|
25
|
-
*/
|
|
26
|
-
max?: number;
|
|
27
|
-
/**
|
|
28
|
-
* Expected step value.
|
|
29
|
-
*/
|
|
30
|
-
step?: number;
|
|
31
|
-
/**
|
|
32
|
-
* Expected shift step value.
|
|
33
|
-
*/
|
|
34
|
-
shiftStep?: number;
|
|
14
|
+
rail: Locator;
|
|
35
15
|
};
|
|
36
16
|
/**
|
|
37
17
|
* Comprehensive testing for single-thumb slider implementation.
|
|
38
18
|
* Tests basic accessibility, keyboard navigation, and interaction patterns.
|
|
19
|
+
*
|
|
20
|
+
* Slider must have min=0, max=100, step=1 and initial value of 50.
|
|
39
21
|
*/
|
|
40
|
-
export declare const
|
|
22
|
+
export declare const singleSliderTesting: ({ page, slider, rail }: SliderTestingOptions) => Promise<void>;
|
|
41
23
|
/**
|
|
42
|
-
* Comprehensive testing for
|
|
24
|
+
* Comprehensive testing for range slider implementation.
|
|
43
25
|
* Tests range-specific behaviors, thumb independence, and collision handling.
|
|
26
|
+
*
|
|
27
|
+
* Slider must have min=0, max=100, step=1 and initial value of [25,75].
|
|
44
28
|
*/
|
|
45
|
-
export declare const
|
|
46
|
-
/**
|
|
47
|
-
* Test slider with marks (discrete mode).
|
|
48
|
-
*/
|
|
49
|
-
export declare const discreteSliderTesting: ({ slider }: SliderTestingOptions) => Promise<void>;
|
|
29
|
+
export declare const rangeSliderTesting: ({ page, slider, rail }: SliderTestingOptions) => Promise<void>;
|