@vonage/vivid-test-utils 5.24.0 → 5.27.0

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.
@@ -1,6 +1,6 @@
1
1
  import { DriverT } from './drivers/driver';
2
2
  import { BaseComponent, BaseWrapper, ComponentCollectionExpectations, ComponentCollectionLocator, Context } from './base';
3
- import { VwcAccordionElement, VwcAccordionItemElement, VwcActionGroupElement, VwcAlertElement, VwcAudioPlayerElement, VwcAvatarElement, VwcBadgeElement, VwcBannerElement, VwcBreadcrumbElement, VwcBreadcrumbItemElement, VwcButtonElement, VwcCalendarElement, VwcCalendarEventElement, VwcCardElement, VwcCheckboxElement, VwcColorPickerElement, VwcComboboxElement, VwcContextualHelpElement, VwcCountryElement, VwcCountryGroupElement, VwcDataGridElement, VwcDataGridCellElement, VwcDataGridRowElement, VwcDatePickerElement, VwcDateRangePickerElement, VwcDateTimePickerElement, VwcDialPadElement, VwcDialogElement, VwcDividerElement, VwcEmptyStateElement, VwcFabElement, VwcFilePickerElement, VwcFlagElement, VwcHeaderElement, VwcIconElement, VwcKbdKeyElement, VwcKbdShortcutElement, VwcLayoutElement, VwcMenuElement, VwcMenuItemElement, VwcNavElement, VwcNavDisclosureElement, VwcNavItemElement, VwcNoteElement, VwcNumberFieldElement, VwcOptgroupElement, VwcOptionElement, VwcPaginationElement, VwcPlatformSwitchElement, VwcPopoverElement, VwcProgressElement, VwcProgressRingElement, VwcRadioElement, VwcRadioGroupElement, VwcRangeSliderElement, VwcRichTextEditorElement, VwcRichTextViewElement, VwcSearchableSelectElement, VwcSelectElement, VwcSelectableBoxElement, VwcSideDrawerElement, VwcSimpleColorPickerElement, VwcSliderElement, VwcSplitButtonElement, VwcStatusElement, VwcSwitchElement, VwcTabElement, VwcTabPanelElement, VwcTableElement, VwcTableBodyElement, VwcTableCellElement, VwcTableHeadElement, VwcTableHeaderCellElement, VwcTableRowElement, VwcTableSortingButtonElement, VwcTabsElement, VwcTagElement, VwcTagGroupElement, VwcTextAreaElement, VwcTextFieldElement, VwcTimePickerElement, VwcToggletipElement, VwcTooltipElement, VwcTreeItemElement, VwcTreeViewElement, VwcVideoPlayerElement, RteInstance, RteView } from '@vonage/vivid';
3
+ import { VwcAccordionElement, VwcAccordionItemElement, VwcActionGroupElement, VwcAlertElement, VwcAudioPlayerElement, VwcAvatarElement, VwcBadgeElement, VwcBannerElement, VwcBreadcrumbElement, VwcBreadcrumbItemElement, VwcButtonElement, VwcCalendarElement, VwcCalendarEventElement, VwcCardElement, VwcCheckboxElement, VwcColorPickerElement, VwcComboboxElement, VwcContextualHelpElement, VwcCountryElement, VwcCountryGroupElement, VwcDataGridElement, VwcDataGridCellElement, VwcDataGridRowElement, VwcDatePickerElement, VwcDateRangePickerElement, VwcDateTimePickerElement, VwcDialPadElement, VwcDialogElement, VwcDividerElement, VwcEmptyStateElement, VwcFabElement, VwcFilePickerElement, VwcFlagElement, VwcFormFieldElement, VwcHeaderElement, VwcIconElement, VwcKbdKeyElement, VwcKbdShortcutElement, VwcLayoutElement, VwcListboxElement, VwcMenuElement, VwcMenuItemElement, VwcNavElement, VwcNavDisclosureElement, VwcNavItemElement, VwcNoteElement, VwcNumberFieldElement, VwcOptgroupElement, VwcOptionElement, VwcPaginationElement, VwcPlatformSwitchElement, VwcPopoverElement, VwcProgressElement, VwcProgressRingElement, VwcRadioElement, VwcRadioGroupElement, VwcRangeSliderElement, VwcRichTextEditorElement, VwcRichTextViewElement, VwcSearchableSelectElement, VwcSelectElement, VwcSelectableBoxElement, VwcSideDrawerElement, VwcSimpleColorPickerElement, VwcSliderElement, VwcSplitButtonElement, VwcStatusElement, VwcSwitchElement, VwcTabElement, VwcTabPanelElement, VwcTableElement, VwcTableBodyElement, VwcTableCellElement, VwcTableHeadElement, VwcTableHeaderCellElement, VwcTableRowElement, VwcTableSortingButtonElement, VwcTabsElement, VwcTagElement, VwcTagGroupElement, VwcTextAreaElement, VwcTextFieldElement, VwcTimePickerElement, VwcToggletipElement, VwcTooltipElement, VwcTreeItemElement, VwcTreeViewElement, VwcVideoPlayerElement, RteInstance, RteView } from '@vonage/vivid';
4
4
  type IconId = string;
5
5
  type AccordionProps = {
6
6
  expandMode: 'single' | 'multi';
@@ -31,7 +31,7 @@ type AccordionItemProps = {
31
31
  appearance: 'ghost' | 'filled' | 'ghost-light';
32
32
  expanded: boolean;
33
33
  heading: string;
34
- headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
34
+ headingLevel: 2 | 6 | 4 | 5 | 3 | 1;
35
35
  icon: IconId;
36
36
  iconTrailing: boolean;
37
37
  id: string;
@@ -39,6 +39,7 @@ type AccordionItemProps = {
39
39
  noIndicator: boolean;
40
40
  secondaryText: string;
41
41
  size: 'condensed' | 'normal';
42
+ textSecondary: string;
42
43
  };
43
44
  export declare class AccordionItemWrapper<D extends DriverT> extends BaseWrapper<D, VwcAccordionItemElement> {
44
45
  type: "accordionItem";
@@ -96,12 +97,12 @@ export declare class ActionGroupExpectations<D extends DriverT> {
96
97
  toHaveProp: <T extends keyof ActionGroupProps>(propName: T, value: ActionGroupProps[T]) => D["expectReturn"];
97
98
  }
98
99
  type AlertProps = {
99
- connotation: 'accent' | 'success' | 'alert' | 'warning' | 'information' | 'announcement';
100
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement';
100
101
  dismissButtonAriaLabel: string;
101
102
  headline: string;
102
103
  icon: IconId;
103
104
  open: boolean;
104
- placement: 'top' | 'bottom' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end';
105
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end';
105
106
  removable: boolean;
106
107
  strategy: 'fixed' | 'static';
107
108
  text: string;
@@ -214,7 +215,8 @@ export declare class AvatarExpectations<D extends DriverT> {
214
215
  }
215
216
  type BadgeProps = {
216
217
  appearance: 'filled' | 'duotone' | 'subtle' | 'subtle-light';
217
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'warning' | 'information' | 'announcement';
218
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement' | 'cta';
219
+ count: boolean;
218
220
  icon: IconId;
219
221
  iconTrailing: boolean;
220
222
  shape: 'rounded' | 'pill';
@@ -245,7 +247,7 @@ export declare class BadgeExpectations<D extends DriverT> {
245
247
  toHaveIcon: (value: any) => D["expectReturn"];
246
248
  }
247
249
  type BannerProps = {
248
- connotation: 'success' | 'alert' | 'warning' | 'information' | 'announcement';
250
+ connotation: 'alert' | 'information' | 'success' | 'warning' | 'announcement';
249
251
  dismissAriaLabel: string;
250
252
  icon: IconId;
251
253
  removable: boolean;
@@ -335,7 +337,7 @@ type ButtonProps = {
335
337
  active: boolean;
336
338
  appearance: 'ghost' | 'filled' | 'outlined' | 'ghost-light' | 'outlined-light';
337
339
  autofocus: boolean;
338
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'announcement';
340
+ connotation: 'alert' | 'accent' | 'success' | 'announcement' | 'cta';
339
341
  disabled: boolean;
340
342
  download: string;
341
343
  dropdownIndicator: boolean;
@@ -423,7 +425,7 @@ export declare class CalendarExpectations<D extends DriverT> {
423
425
  }
424
426
  type CalendarEventProps = {
425
427
  appearance: 'filled' | 'duotone' | 'subtle';
426
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'warning' | 'information' | 'announcement';
428
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement' | 'cta';
427
429
  description: string;
428
430
  duration: number;
429
431
  heading: string;
@@ -598,7 +600,7 @@ type ComboboxProps = {
598
600
  open: boolean;
599
601
  options: VwcOptionElement[];
600
602
  placeholder: string;
601
- placement: 'top' | 'bottom';
603
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end';
602
604
  required: boolean;
603
605
  scale: 'condensed' | 'normal';
604
606
  selectedIndex: number;
@@ -638,7 +640,7 @@ export declare class ComboboxExpectations<D extends DriverT> {
638
640
  toHaveVisibleError: (value: any) => D["expectReturn"];
639
641
  }
640
642
  type ContextualHelpProps = {
641
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
643
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
642
644
  };
643
645
  export declare class ContextualHelpWrapper<D extends DriverT> extends BaseWrapper<D, VwcContextualHelpElement> {
644
646
  type: "contextualHelp";
@@ -1090,7 +1092,7 @@ export declare class DividerExpectations<D extends DriverT> {
1090
1092
  toHaveProp: <T extends keyof DividerProps>(propName: T, value: DividerProps[T]) => D["expectReturn"];
1091
1093
  }
1092
1094
  type EmptyStateProps = {
1093
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'warning' | 'information';
1095
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'cta';
1094
1096
  headline: string;
1095
1097
  icon: IconId;
1096
1098
  iconDecoration: 'filled' | 'outlined';
@@ -1119,7 +1121,7 @@ export declare class EmptyStateExpectations<D extends DriverT> {
1119
1121
  }
1120
1122
  type FabProps = {
1121
1123
  autofocus: boolean;
1122
- connotation: 'accent' | 'cta' | 'announcement';
1124
+ connotation: 'accent' | 'announcement' | 'cta';
1123
1125
  disabled: boolean;
1124
1126
  form: string;
1125
1127
  formaction: string;
@@ -1209,7 +1211,7 @@ export declare class FilePickerExpectations<D extends DriverT> {
1209
1211
  type FlagProps = {
1210
1212
  code: string;
1211
1213
  label: string;
1212
- size: 0 | 1 | -1 | 2 | 3 | 4 | 5 | -6 | -5 | -4 | -3 | -2;
1214
+ size: 0 | 2 | 4 | 5 | 3 | 1 | -1 | -6 | -5 | -4 | -3 | -2;
1213
1215
  };
1214
1216
  export declare class FlagWrapper<D extends DriverT> extends BaseWrapper<D, VwcFlagElement> {
1215
1217
  type: "flag";
@@ -1234,6 +1236,31 @@ export declare class FlagExpectations<D extends DriverT> {
1234
1236
  toHaveProp: <T extends keyof FlagProps>(propName: T, value: FlagProps[T]) => D["expectReturn"];
1235
1237
  toHaveCode: (value: any) => D["expectReturn"];
1236
1238
  }
1239
+ type FormFieldProps = {
1240
+ state: 'success' | 'error';
1241
+ };
1242
+ export declare class FormFieldWrapper<D extends DriverT> extends BaseWrapper<D, VwcFormFieldElement> {
1243
+ type: "formField";
1244
+ componentInfo: {
1245
+ name: string;
1246
+ };
1247
+ blur: () => D["actionReturn"];
1248
+ focus: () => D["actionReturn"];
1249
+ hover: () => D["actionReturn"];
1250
+ }
1251
+ export declare class FormField<D extends DriverT> extends BaseComponent<D, FormFieldWrapper<D>> {
1252
+ componentInfo: {
1253
+ name: string;
1254
+ };
1255
+ wrap(locator: D['locator']): FormFieldWrapper<D>;
1256
+ byTestId: (id: string) => FormFieldWrapper<D>;
1257
+ }
1258
+ export declare class FormFieldExpectations<D extends DriverT> {
1259
+ private readonly ctx;
1260
+ private readonly wrapper;
1261
+ constructor(ctx: Context<D>, wrapper: FormFieldWrapper<D>);
1262
+ toHaveProp: <T extends keyof FormFieldProps>(propName: T, value: FormFieldProps[T]) => D["expectReturn"];
1263
+ }
1237
1264
  type HeaderProps = {
1238
1265
  alternate: boolean;
1239
1266
  elevationShadow: boolean;
@@ -1261,10 +1288,10 @@ export declare class HeaderExpectations<D extends DriverT> {
1261
1288
  toHaveProp: <T extends keyof HeaderProps>(propName: T, value: HeaderProps[T]) => D["expectReturn"];
1262
1289
  }
1263
1290
  type IconProps = {
1264
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'warning' | 'information' | 'announcement';
1291
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement' | 'cta';
1265
1292
  label: string;
1266
1293
  name: IconId;
1267
- size: 0 | 1 | -1 | 2 | 3 | 4 | 5 | -6 | -5 | -4 | -3 | -2;
1294
+ size: 0 | 2 | 4 | 5 | 3 | 1 | -1 | -6 | -5 | -4 | -3 | -2;
1268
1295
  };
1269
1296
  export declare class IconWrapper<D extends DriverT> extends BaseWrapper<D, VwcIconElement> {
1270
1297
  type: "icon";
@@ -1293,7 +1320,7 @@ type KbdKeyProps = {
1293
1320
  appearance: 'outlined' | 'subtle' | 'dropshadow';
1294
1321
  keyboard: 'auto' | 'standard' | 'apple';
1295
1322
  keyshortcutsKey: string;
1296
- name: 'Alt' | 'Control' | 'Shift' | 'Enter' | 'Tab' | 'Space' | 'Backspace' | 'Escape' | 'ArrowUp' | 'ArrowDown' | 'ArrowLeft' | 'ArrowRight' | 'End' | 'Home' | 'PageUp' | 'PageDown' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | 'Mod' | 'Custom';
1323
+ name: '0' | '1' | '2' | '3' | '4' | '5' | '6' | 'Alt' | 'Control' | 'Shift' | 'Enter' | 'Tab' | 'Space' | 'Backspace' | 'Escape' | 'ArrowUp' | 'ArrowDown' | 'ArrowLeft' | 'ArrowRight' | 'End' | 'Home' | 'PageUp' | 'PageDown' | 'A' | 'B' | 'C' | 'D' | 'E' | 'F' | 'G' | 'H' | 'I' | 'J' | 'K' | 'L' | 'M' | 'N' | 'O' | 'P' | 'Q' | 'R' | 'S' | 'T' | 'U' | 'V' | 'W' | 'X' | 'Y' | 'Z' | '7' | '8' | '9' | 'Mod' | 'Custom';
1297
1324
  size: 'condensed' | 'normal' | 'expanded' | 'super-condensed';
1298
1325
  };
1299
1326
  export declare class KbdKeyWrapper<D extends DriverT> extends BaseWrapper<D, VwcKbdKeyElement> {
@@ -1369,12 +1396,43 @@ export declare class LayoutExpectations<D extends DriverT> {
1369
1396
  constructor(ctx: Context<D>, wrapper: LayoutWrapper<D>);
1370
1397
  toHaveProp: <T extends keyof LayoutProps>(propName: T, value: LayoutProps[T]) => D["expectReturn"];
1371
1398
  }
1399
+ type ListboxProps = {
1400
+ optionFilter: ((option: VwcOptionElement, searchText: string) => boolean);
1401
+ requiredSelection: 'none' | 'selectable' | 'any';
1402
+ searchText: string;
1403
+ selectionBehavior: 'replace' | 'toggle';
1404
+ selectionMode: 'single' | 'multiple';
1405
+ value: string;
1406
+ values: string[];
1407
+ };
1408
+ export declare class ListboxWrapper<D extends DriverT> extends BaseWrapper<D, VwcListboxElement> {
1409
+ type: "listbox";
1410
+ componentInfo: {
1411
+ name: string;
1412
+ };
1413
+ blur: () => D["actionReturn"];
1414
+ focus: () => D["actionReturn"];
1415
+ hover: () => D["actionReturn"];
1416
+ }
1417
+ export declare class Listbox<D extends DriverT> extends BaseComponent<D, ListboxWrapper<D>> {
1418
+ componentInfo: {
1419
+ name: string;
1420
+ };
1421
+ wrap(locator: D['locator']): ListboxWrapper<D>;
1422
+ byTestId: (id: string) => ListboxWrapper<D>;
1423
+ }
1424
+ export declare class ListboxExpectations<D extends DriverT> {
1425
+ private readonly ctx;
1426
+ private readonly wrapper;
1427
+ constructor(ctx: Context<D>, wrapper: ListboxWrapper<D>);
1428
+ toHaveProp: <T extends keyof ListboxProps>(propName: T, value: ListboxProps[T]) => D["expectReturn"];
1429
+ }
1372
1430
  type MenuProps = {
1373
1431
  anchor: string | HTMLElement;
1374
1432
  autoDismiss: boolean;
1375
1433
  offset: number;
1376
1434
  open: boolean;
1377
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1435
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1378
1436
  positionStrategy: 'fixed' | 'absolute';
1379
1437
  trigger: 'auto' | 'off' | 'legacy';
1380
1438
  };
@@ -1546,7 +1604,7 @@ export declare class NavItemExpectations<D extends DriverT> {
1546
1604
  toHaveIcon: (value: any) => D["expectReturn"];
1547
1605
  }
1548
1606
  type NoteProps = {
1549
- connotation: 'accent' | 'success' | 'alert' | 'warning' | 'information' | 'announcement';
1607
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement';
1550
1608
  headline: string;
1551
1609
  icon: IconId;
1552
1610
  };
@@ -1760,7 +1818,7 @@ type PopoverProps = {
1760
1818
  manual: boolean;
1761
1819
  offset: number;
1762
1820
  open: boolean;
1763
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1821
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1764
1822
  };
1765
1823
  export declare class PopoverWrapper<D extends DriverT> extends BaseWrapper<D, VwcPopoverElement> {
1766
1824
  type: "popover";
@@ -1785,7 +1843,7 @@ export declare class PopoverExpectations<D extends DriverT> {
1785
1843
  toHaveProp: <T extends keyof PopoverProps>(propName: T, value: PopoverProps[T]) => D["expectReturn"];
1786
1844
  }
1787
1845
  type ProgressProps = {
1788
- connotation: 'accent' | 'cta' | 'success' | 'alert' | 'pacific';
1846
+ connotation: 'alert' | 'accent' | 'success' | 'cta' | 'pacific';
1789
1847
  max: number;
1790
1848
  min: number;
1791
1849
  paused: boolean;
@@ -1816,11 +1874,11 @@ export declare class ProgressExpectations<D extends DriverT> {
1816
1874
  toHaveProp: <T extends keyof ProgressProps>(propName: T, value: ProgressProps[T]) => D["expectReturn"];
1817
1875
  }
1818
1876
  type ProgressRingProps = {
1819
- connotation: 'accent' | 'cta' | 'success' | 'alert';
1877
+ connotation: 'alert' | 'accent' | 'success' | 'cta';
1820
1878
  max: number;
1821
1879
  min: number;
1822
1880
  paused: boolean;
1823
- size: 0 | 1 | -1 | 2 | 3 | 4 | 5 | -6 | -5 | -4 | -3 | -2;
1881
+ size: 0 | 2 | 4 | 5 | 3 | 1 | -1 | -6 | -5 | -4 | -3 | -2;
1824
1882
  value: number;
1825
1883
  };
1826
1884
  export declare class ProgressRingWrapper<D extends DriverT> extends BaseWrapper<D, VwcProgressRingElement> {
@@ -1972,6 +2030,7 @@ export declare class RangeSliderExpectations<D extends DriverT> {
1972
2030
  toHaveVisibleError: (value: any) => D["expectReturn"];
1973
2031
  }
1974
2032
  type RichTextEditorProps = {
2033
+ appearance: 'fieldset';
1975
2034
  instance: RteInstance;
1976
2035
  };
1977
2036
  export declare class RichTextEditorWrapper<D extends DriverT> extends BaseWrapper<D, VwcRichTextEditorElement> {
@@ -2205,7 +2264,7 @@ type SimpleColorPickerProps = {
2205
2264
  label: string;
2206
2265
  name: string;
2207
2266
  open: boolean;
2208
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2267
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2209
2268
  required: boolean;
2210
2269
  swatches: {
2211
2270
  label?: string;
@@ -2285,7 +2344,7 @@ export declare class SliderExpectations<D extends DriverT> {
2285
2344
  }
2286
2345
  type SplitButtonProps = {
2287
2346
  appearance: 'ghost' | 'filled' | 'outlined' | 'outlined-light';
2288
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'announcement';
2347
+ connotation: 'alert' | 'accent' | 'success' | 'announcement' | 'cta';
2289
2348
  disabled: boolean;
2290
2349
  icon: IconId;
2291
2350
  indicatorAriaLabel: string;
@@ -2321,7 +2380,7 @@ export declare class SplitButtonExpectations<D extends DriverT> {
2321
2380
  toHaveIcon: (value: any) => D["expectReturn"];
2322
2381
  }
2323
2382
  type StatusProps = {
2324
- connotation: 'alert' | 'success' | 'warning' | 'information';
2383
+ connotation: 'alert' | 'information' | 'success' | 'warning';
2325
2384
  icon: IconId;
2326
2385
  status: string;
2327
2386
  };
@@ -2350,7 +2409,7 @@ export declare class StatusExpectations<D extends DriverT> {
2350
2409
  }
2351
2410
  type SwitchProps = {
2352
2411
  checked: boolean;
2353
- connotation: 'accent' | 'cta' | 'success' | 'alert' | 'announcement';
2412
+ connotation: 'alert' | 'accent' | 'success' | 'announcement' | 'cta';
2354
2413
  defaultChecked: boolean;
2355
2414
  disabled: boolean;
2356
2415
  initialValue: string;
@@ -2637,7 +2696,7 @@ export declare class TabsExpectations<D extends DriverT> {
2637
2696
  }
2638
2697
  type TagProps = {
2639
2698
  appearance: 'duotone' | 'subtle' | 'subtle-light';
2640
- connotation: 'alert' | 'accent' | 'cta' | 'success' | 'warning' | 'information' | 'announcement';
2699
+ connotation: 'alert' | 'accent' | 'information' | 'success' | 'warning' | 'announcement' | 'cta';
2641
2700
  disabled: boolean;
2642
2701
  icon: IconId;
2643
2702
  label: string;
@@ -2776,7 +2835,7 @@ type TextFieldProps = {
2776
2835
  size: number;
2777
2836
  spellcheck: boolean;
2778
2837
  successText: string;
2779
- type: 'text' | 'email' | 'password' | 'tel' | 'url';
2838
+ type: 'text' | 'search' | 'email' | 'password' | 'tel' | 'url';
2780
2839
  value: string;
2781
2840
  };
2782
2841
  export declare class TextFieldWrapper<D extends DriverT> extends BaseWrapper<D, VwcTextFieldElement> {
@@ -2856,7 +2915,8 @@ type ToggletipProps = {
2856
2915
  anchor: string | HTMLElement;
2857
2916
  headline: string;
2858
2917
  open: boolean;
2859
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2918
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2919
+ textSecondary: string;
2860
2920
  };
2861
2921
  export declare class ToggletipWrapper<D extends DriverT> extends BaseWrapper<D, VwcToggletipElement> {
2862
2922
  type: "toggletip";
@@ -2886,8 +2946,9 @@ export declare class ToggletipExpectations<D extends DriverT> {
2886
2946
  type TooltipProps = {
2887
2947
  anchor: string | HTMLElement;
2888
2948
  open: boolean;
2889
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2949
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2890
2950
  text: string;
2951
+ textSecondary: string;
2891
2952
  };
2892
2953
  export declare class TooltipWrapper<D extends DriverT> extends BaseWrapper<D, VwcTooltipElement> {
2893
2954
  type: "tooltip";
@@ -3035,11 +3096,13 @@ type Expectations<D extends DriverT> = {
3035
3096
  fab: FabExpectations<D>;
3036
3097
  filePicker: FilePickerExpectations<D>;
3037
3098
  flag: FlagExpectations<D>;
3099
+ formField: FormFieldExpectations<D>;
3038
3100
  header: HeaderExpectations<D>;
3039
3101
  icon: IconExpectations<D>;
3040
3102
  kbdKey: KbdKeyExpectations<D>;
3041
3103
  kbdShortcut: KbdShortcutExpectations<D>;
3042
3104
  layout: LayoutExpectations<D>;
3105
+ listbox: ListboxExpectations<D>;
3043
3106
  menu: MenuExpectations<D>;
3044
3107
  menuItem: MenuItemExpectations<D>;
3045
3108
  nav: NavExpectations<D>;
@@ -3129,11 +3192,13 @@ export declare class VividWrapper<D extends DriverT> {
3129
3192
  fab: Fab<D>;
3130
3193
  filePicker: FilePicker<D>;
3131
3194
  flag: Flag<D>;
3195
+ formField: FormField<D>;
3132
3196
  header: Header<D>;
3133
3197
  icon: Icon<D>;
3134
3198
  kbdKey: KbdKey<D>;
3135
3199
  kbdShortcut: KbdShortcut<D>;
3136
3200
  layout: Layout<D>;
3201
+ listbox: Listbox<D>;
3137
3202
  menu: Menu<D>;
3138
3203
  menuItem: MenuItem<D>;
3139
3204
  nav: Nav<D>;
package/dist/cypress.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./components.generated-F5OOqa3y.cjs`);var t=async()=>new Promise(e=>requestAnimationFrame(()=>e())),n=e=>{let n=t=>t===e,r,i=e=>{let t=r;return((...n)=>{let r=window.Error;window.Error=class extends Error{constructor(e){super(e),e===`userInvocationStack`&&(this.stack=t)}static captureStackTrace(e,t){e.message!==`userInvocationStack`&&super.captureStackTrace(e,t)}};try{return e(...n)}finally{window.Error=r}})};return{querySelector:(e,t)=>i(()=>n(e)?e.get(t):e().find(t)),enterShadow:e=>i(()=>e().shadow()),querySelectorAll:(e,t)=>i(()=>n(e)?e.get(t):e().find(t)),nth:(e,t)=>i(()=>e().eq(t)),userClick:e=>e().click(),userClear:e=>e().clear(),userFocus:e=>e().focus(),userBlur:e=>e().blur(),userHover:e=>e().then(e=>e.get(0).dispatchEvent(new MouseEvent(`mouseover`))),userFill:(e,t)=>t===``?e().clear():e().clear().type(t),userDragSlider:(e,n,r,i)=>{e().then(e=>{r().then(async n=>{let r=e.get(0),a=n.get(0);a.id===`start-thumb`?(r.startAsNumber=i,r.$emit(`input:start`),r.$emit(`input`)):a.id===`end-thumb`?(r.endAsNumber=i,r.$emit(`input:end`),r.$emit(`input`)):r.valueAsNumber=i,await t()})})},eval:(e,t,n,i)=>{let a=r;e().then(async e=>{r=a;try{let r=await t(e.get(0),n);await i?.(r)}finally{r=void 0}})},waitForUpdate(e){e().then(()=>new Promise(e=>{requestAnimationFrame(()=>{e()})}))},expectEq:(e,t,n)=>{let i=r;switch(e.type){case`eval`:e.el().should(r=>{try{expect(e.fn(r.get(0),e.arg)).to.deep.equal(t)}catch(e){let t=Error(`${n}\n\nOriginal error: ${e.message}`);throw i&&(t.stack=i),t}});break;case`count`:e.el().should(`have.length`,t);break}},wrapAction:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}},wrapExpect:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}},wrapSelector:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}}}},r=t=>new e.t({rootLocator:t,driver:n(t)});exports.vividCypress=r;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./components.generated-DcMBaOF8.cjs");var t=async()=>new Promise(e=>requestAnimationFrame(()=>e())),n=e=>{let n=t=>t===e,r,i=e=>{let t=r;return((...n)=>{let r=window.Error;window.Error=class extends Error{constructor(e){super(e),e===`userInvocationStack`&&(this.stack=t)}static captureStackTrace(e,t){e.message!==`userInvocationStack`&&super.captureStackTrace(e,t)}};try{return e(...n)}finally{window.Error=r}})};return{querySelector:(e,t)=>i(()=>n(e)?e.get(t):e().find(t)),enterShadow:e=>i(()=>e().shadow()),querySelectorAll:(e,t)=>i(()=>n(e)?e.get(t):e().find(t)),nth:(e,t)=>i(()=>e().eq(t)),userClick:e=>e().click(),userClear:e=>e().clear(),userFocus:e=>e().focus(),userBlur:e=>e().blur(),userHover:e=>e().then(e=>e.get(0).dispatchEvent(new MouseEvent(`mouseover`))),userFill:(e,t)=>t===``?e().clear():e().clear().type(t),userDragSlider:(e,n,r,i)=>{e().then(e=>{r().then(async n=>{let r=e.get(0),a=n.get(0);a.id===`start-thumb`?(r.startAsNumber=i,r.$emit(`input:start`),r.$emit(`input`)):a.id===`end-thumb`?(r.endAsNumber=i,r.$emit(`input:end`),r.$emit(`input`)):r.valueAsNumber=i,await t()})})},eval:(e,t,n,i)=>{let a=r;e().then(async e=>{r=a;try{let r=await t(e.get(0),n);await i?.(r)}finally{r=void 0}})},waitForUpdate(e){e().then(()=>new Promise(e=>{requestAnimationFrame(()=>{e()})}))},expectEq:(e,t,n)=>{let i=r;switch(e.type){case`eval`:e.el().should(r=>{try{expect(e.fn(r.get(0),e.arg)).to.deep.equal(t)}catch(e){let t=Error(`${n}\n\nOriginal error: ${e.message}`);throw i&&(t.stack=i),t}});break;case`count`:e.el().should(`have.length`,t)}},wrapAction:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}},wrapExpect:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}},wrapSelector:e=>function t(...n){if(!r){let e=Error();Error.captureStackTrace(e,t),r=e.stack}try{return e(...n)}finally{r=void 0}}}},r=t=>{let r={rootLocator:t,driver:n(t)};return new e.t(r)};exports.vividCypress=r;
package/dist/cypress.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as e } from "./components.generated-CbtYzUoa.js";
1
+ import { t as e } from "./components.generated-B-6jlcsc.js";
2
2
  //#region src/drivers/cypress.ts
3
3
  var t = async () => new Promise((e) => requestAnimationFrame(() => e())), n = (e) => {
4
4
  let n = (t) => t === e, r, i = (e) => {
@@ -71,9 +71,7 @@ var t = async () => new Promise((e) => requestAnimationFrame(() => e())), n = (e
71
71
  }
72
72
  });
73
73
  break;
74
- case "count":
75
- e.el().should("have.length", t);
76
- break;
74
+ case "count": e.el().should("have.length", t);
77
75
  }
78
76
  },
79
77
  wrapAction: (e) => function t(...n) {
@@ -110,9 +108,12 @@ var t = async () => new Promise((e) => requestAnimationFrame(() => e())), n = (e
110
108
  }
111
109
  }
112
110
  };
113
- }, r = (t) => new e({
114
- rootLocator: t,
115
- driver: n(t)
116
- });
111
+ }, r = (t) => {
112
+ let r = {
113
+ rootLocator: t,
114
+ driver: n(t)
115
+ };
116
+ return new e(r);
117
+ };
117
118
  //#endregion
118
119
  export { r as vividCypress };
package/dist/dom.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));const c=require(`./components.generated-F5OOqa3y.cjs`);let l=require(`@testing-library/user-event`);l=s(l,1);var u=()=>new Promise(e=>{requestAnimationFrame(()=>e())}),d=e=>{let t=l.default.setup(),n=async e=>{e.focus(),e.value=``,e.dispatchEvent(new InputEvent(`input`,{bubbles:!0,composed:!0}))};return{querySelector:(e,t)=>{let n=e.querySelector(t);if(!n)throw Error(`Could not find element: ${t}`);return n},enterShadow(e){if(!e.shadowRoot)throw Error(`Element ${e.outerHTML} does not have a shadow root`);return e.shadowRoot},querySelectorAll:(e,t)=>e?Array.from(e.querySelectorAll(t)):[],nth:(e,t)=>{if(t<0||t>e.length-1)throw Error(`Could not find element with index "${t}". Collection only has "${e.length}" elements.`);return e[t]},userClick:async e=>{await t.click(e),await u()},userFill:async(e,r)=>{await n(e),r&&await t.type(e,r),await u()},userClear:async e=>{await n(e),await u()},userFocus:async e=>{e.focus(),await u()},userBlur:async e=>{e.blur(),(e.tagName===`INPUT`||e.tagName===`TEXTAREA`)&&e.dispatchEvent(new InputEvent(`change`,{bubbles:!0,composed:!0})),await u()},userHover:async e=>{await t.hover(e),await u()},userDragSlider:async(e,t,n,r)=>{if(n.id===`start-thumb`){let t=e;t.startAsNumber=r,t.$emit(`input:start`),t.$emit(`input`)}else if(n.id===`end-thumb`){let t=e;t.endAsNumber=r,t.$emit(`input:end`),t.$emit(`input`)}else{let t=e;t.valueAsNumber=r}await u()},eval:async(e,t,n,r)=>{let i=await t(e,n);await r?.(i)},waitForUpdate:async()=>{await u()},expectEq:(t,n,r)=>{switch(t.type){case`eval`:try{e(t.fn(t.el,t.arg)).toEqual(n)}catch(e){throw e instanceof Error&&(e.message=`${r}\n\nOriginal error: ${e.message}`),e}break;case`count`:e(t.el.length).toEqual(n);break}},wrapAction:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapExpect:e=>function t(...n){try{return e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapSelector:e=>function t(...n){try{return e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}}}},f=(e,t)=>new c.t({rootLocator:t,driver:d(e)});exports.t=s,exports.vividDOM=f;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,s)=>(s=n==null?{}:e(i(n)),o(r||!n||!n.__esModule||!a.call(n,`default`)?t(s,`default`,{value:n,enumerable:!0}):s,n));const c=require("./components.generated-DcMBaOF8.cjs");let l=require("@testing-library/user-event");l=s(l,1);var u=()=>new Promise(e=>{requestAnimationFrame(()=>e())}),d=e=>{let t=l.default.setup(),n=async e=>{e.focus(),e.value=``,e.dispatchEvent(new InputEvent(`input`,{bubbles:!0,composed:!0}))};return{querySelector:(e,t)=>{let n=e.querySelector(t);if(!n)throw Error(`Could not find element: ${t}`);return n},enterShadow(e){if(!e.shadowRoot)throw Error(`Element ${e.outerHTML} does not have a shadow root`);return e.shadowRoot},querySelectorAll:(e,t)=>e?Array.from(e.querySelectorAll(t)):[],nth:(e,t)=>{if(t<0||t>e.length-1)throw Error(`Could not find element with index "${t}". Collection only has "${e.length}" elements.`);return e[t]},userClick:async e=>{await t.click(e),await u()},userFill:async(e,r)=>{await n(e),r&&await t.type(e,r),await u()},userClear:async e=>{await n(e),await u()},userFocus:async e=>{e.focus(),await u()},userBlur:async e=>{e.blur(),(e.tagName===`INPUT`||e.tagName===`TEXTAREA`)&&e.dispatchEvent(new InputEvent(`change`,{bubbles:!0,composed:!0})),await u()},userHover:async e=>{await t.hover(e),await u()},userDragSlider:async(e,t,n,r)=>{if(n.id===`start-thumb`){let t=e;t.startAsNumber=r,t.$emit(`input:start`),t.$emit(`input`)}else if(n.id===`end-thumb`){let t=e;t.endAsNumber=r,t.$emit(`input:end`),t.$emit(`input`)}else{let t=e;t.valueAsNumber=r}await u()},eval:async(e,t,n,r)=>{let i=await t(e,n);await r?.(i)},waitForUpdate:async()=>{await u()},expectEq:(t,n,r)=>{switch(t.type){case`eval`:try{e(t.fn(t.el,t.arg)).toEqual(n)}catch(e){throw e instanceof Error&&(e.message=`${r}\n\nOriginal error: ${e.message}`),e}break;case`count`:e(t.el.length).toEqual(n)}},wrapAction:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapExpect:e=>function t(...n){try{return e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapSelector:e=>function t(...n){try{return e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}}}},f=(e,t)=>{let n={rootLocator:t,driver:d(e)};return new c.t(n)};exports.vividDOM=f;
package/dist/dom.js CHANGED
@@ -1,4 +1,4 @@
1
- import { t as e } from "./components.generated-CbtYzUoa.js";
1
+ import { t as e } from "./components.generated-B-6jlcsc.js";
2
2
  import t from "@testing-library/user-event";
3
3
  //#region src/drivers/dom.ts
4
4
  var n = () => new Promise((e) => {
@@ -75,9 +75,7 @@ var n = () => new Promise((e) => {
75
75
  throw e instanceof Error && (e.message = `${r}\n\nOriginal error: ${e.message}`), e;
76
76
  }
77
77
  break;
78
- case "count":
79
- e(t.el.length).toEqual(n);
80
- break;
78
+ case "count": e(t.el.length).toEqual(n);
81
79
  }
82
80
  },
83
81
  wrapAction: (e) => async function t(...n) {
@@ -102,9 +100,12 @@ var n = () => new Promise((e) => {
102
100
  }
103
101
  }
104
102
  };
105
- }, i = (t, n) => new e({
106
- rootLocator: n,
107
- driver: r(t)
108
- });
103
+ }, i = (t, n) => {
104
+ let i = {
105
+ rootLocator: n,
106
+ driver: r(t)
107
+ };
108
+ return new e(i);
109
+ };
109
110
  //#endregion
110
111
  export { i as vividDOM };
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`./dom.cjs`);let e=require(`@vonage/vivid`);function t(){HTMLDialogElement.prototype.showModal=function(){this.open=!0,this.setAttribute(`open`,``)},HTMLDialogElement.prototype.close=function(){this.open=!1,this.removeAttribute(`open`)},HTMLElement.prototype.hidePopover=function(){},HTMLElement.prototype.showPopover=function(){},HTMLElement.prototype.scrollIntoView=function(){},Object.defineProperty(Object.getPrototypeOf(e.VwcButtonElement).prototype,`handleUnsupportedDelegatesFocus`,{set(){},get(){return()=>void 0}}),window.ResizeObserver=class{observe(){}disconnect(){}}}t(),window.HTMLElement.prototype.scrollIntoView=function(){},window.HTMLElement.prototype.scrollTo=function(){},exports.setDialogPolyfill=t;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@vonage/vivid");function t(){HTMLDialogElement.prototype.showModal=function(){this.open=!0,this.setAttribute(`open`,``)},HTMLDialogElement.prototype.close=function(){this.open=!1,this.removeAttribute(`open`)},HTMLElement.prototype.hidePopover=function(){},HTMLElement.prototype.showPopover=function(){},HTMLElement.prototype.scrollIntoView=function(){},Object.defineProperty(Object.getPrototypeOf(e.VwcButtonElement).prototype,"handleUnsupportedDelegatesFocus",{set(){},get(){return()=>void 0}}),window.ResizeObserver=class{observe(){}disconnect(){}}}t(),window.HTMLElement.prototype.scrollIntoView=function(){},window.HTMLElement.prototype.scrollTo=function(){},exports.setDialogPolyfill=t;
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`./components.generated-F5OOqa3y.cjs`);var t=e=>({querySelector:(e,t)=>e.locator(t),enterShadow:e=>e,querySelectorAll:(e,t)=>e.locator(t),nth:(e,t)=>e.nth(t),userClick:e=>e.click(),userFill:(e,t)=>e.fill(t),userClear:e=>e.clear(),userFocus:e=>e.focus(),userBlur:e=>e.blur(),userHover:e=>e.hover(),userDragSlider:async(e,t,n,r)=>{let i=await n.getAttribute(`id`);await e.evaluate((e,[t,n])=>{if(t===`start-thumb`){let t=e;t.startAsNumber=n,t.$emit(`input:start`),t.$emit(`input`)}else if(t===`end-thumb`){let t=e;t.endAsNumber=n,t.$emit(`input:end`),t.$emit(`input`)}else{let t=e;t.valueAsNumber=n}},[i,r])},eval:async(e,t,n,r)=>{let i=await e.evaluate(t,n);await r?.(i)},waitForUpdate:async e=>{await e.evaluate(()=>new Promise(e=>{requestAnimationFrame(()=>e())}))},expectEq:async(t,n,r)=>{switch(t.type){case`eval`:try{await e(async()=>e(await t.el.evaluate(t.fn,t.arg)).toEqual(n)).toPass()}catch(e){throw e instanceof Error&&(e.message=`${r}\n\nOriginal error: ${e.message}`),e}break;case`count`:await e(t.el).toHaveCount(n);break}},wrapAction:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapExpect:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapSelector:e=>e}),n=(n,r)=>new e.t({rootLocator:n,driver:t(r)});exports.vividPlaywright=n;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./components.generated-DcMBaOF8.cjs");var t=e=>({querySelector:(e,t)=>e.locator(t),enterShadow:e=>e,querySelectorAll:(e,t)=>e.locator(t),nth:(e,t)=>e.nth(t),userClick:e=>e.click(),userFill:(e,t)=>e.fill(t),userClear:e=>e.clear(),userFocus:e=>e.focus(),userBlur:e=>e.blur(),userHover:e=>e.hover(),userDragSlider:async(e,t,n,r)=>{let i=await n.getAttribute(`id`);await e.evaluate((e,[t,n])=>{if(t===`start-thumb`){let t=e;t.startAsNumber=n,t.$emit(`input:start`),t.$emit(`input`)}else if(t===`end-thumb`){let t=e;t.endAsNumber=n,t.$emit(`input:end`),t.$emit(`input`)}else{let t=e;t.valueAsNumber=n}},[i,r])},eval:async(e,t,n,r)=>{let i=await e.evaluate(t,n);await r?.(i)},waitForUpdate:async e=>{await e.evaluate(()=>new Promise(e=>{requestAnimationFrame(()=>e())}))},expectEq:async(t,n,r)=>{switch(t.type){case`eval`:try{await e(async()=>e(await t.el.evaluate(t.fn,t.arg)).toEqual(n)).toPass()}catch(e){throw e instanceof Error&&(e.message=`${r}\n\nOriginal error: ${e.message}`),e}break;case`count`:await e(t.el).toHaveCount(n)}},wrapAction:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapExpect:e=>async function t(...n){try{return await e(...n)}catch(e){throw e instanceof Error&&Error.captureStackTrace(e,t),e}},wrapSelector:e=>e}),n=(n,r)=>{let i={rootLocator:n,driver:t(r)};return new e.t(i)};exports.vividPlaywright=n;
@@ -1,4 +1,4 @@
1
- import { t as e } from "./components.generated-CbtYzUoa.js";
1
+ import { t as e } from "./components.generated-B-6jlcsc.js";
2
2
  //#region src/drivers/playwright.ts
3
3
  var t = (e) => ({
4
4
  querySelector: (e, t) => e.locator(t),
@@ -44,9 +44,7 @@ var t = (e) => ({
44
44
  throw e instanceof Error && (e.message = `${r}\n\nOriginal error: ${e.message}`), e;
45
45
  }
46
46
  break;
47
- case "count":
48
- await e(t.el).toHaveCount(n);
49
- break;
47
+ case "count": await e(t.el).toHaveCount(n);
50
48
  }
51
49
  },
52
50
  wrapAction: (e) => async function t(...n) {
@@ -64,9 +62,12 @@ var t = (e) => ({
64
62
  }
65
63
  },
66
64
  wrapSelector: (e) => e
67
- }), n = (n, r) => new e({
68
- rootLocator: n,
69
- driver: t(r)
70
- });
65
+ }), n = (n, r) => {
66
+ let i = {
67
+ rootLocator: n,
68
+ driver: t(r)
69
+ };
70
+ return new e(i);
71
+ };
71
72
  //#endregion
72
73
  export { n as vividPlaywright };
package/package.json CHANGED
@@ -1,6 +1,11 @@
1
1
  {
2
2
  "name": "@vonage/vivid-test-utils",
3
- "version": "5.24.0",
3
+ "version": "5.27.0",
4
+ "repository": {
5
+ "type": "git",
6
+ "url": "https://github.com/Vonage/vivid-3",
7
+ "directory": "libs/test-utils"
8
+ },
4
9
  "type": "module",
5
10
  "exports": {
6
11
  "./dom": {
@@ -28,34 +33,34 @@
28
33
  "dist"
29
34
  ],
30
35
  "dependencies": {
31
- "@testing-library/user-event": "^14.6.1",
36
+ "@testing-library/user-event": "^14.6.3",
32
37
  "change-case": "^5.4.4",
33
- "@vonage/vivid": "^5.24.0"
38
+ "@vonage/vivid": "^5.27.0"
34
39
  },
35
40
  "devDependencies": {
36
41
  "@playwright/test": "1.57.0",
37
- "@types/node": "^20.19.40",
38
- "@vitejs/plugin-vue": "^6.0.6",
39
- "@vue/test-utils": "^2.4.10",
40
- "concurrently": "^9.2.1",
42
+ "@types/node": "^20.19.43",
43
+ "@vitejs/plugin-vue": "^6.0.8",
44
+ "@vue/test-utils": "^2.4.11",
45
+ "concurrently": "^9.2.4",
41
46
  "cypress": "15.13.1",
42
- "eslint": "^10.3.0",
43
- "tsx": "^4.21.0",
47
+ "eslint": "^10.8.1",
48
+ "tsx": "^4.23.12",
44
49
  "typescript": "5.9.3",
45
- "vite": "^8.0.12",
50
+ "vite": "^8.2.1",
46
51
  "vite-plugin-dts": "^4.5.4",
47
- "vitest": "^4.1.8",
48
- "vue": "^3.5.34",
52
+ "vitest": "^4.1.10",
53
+ "vue": "^3.5.41",
49
54
  "wait-on": "^8.0.5",
50
55
  "@repo/eslint-config": "1.0.0",
51
56
  "@repo/internal-test-utils": "1.0.0",
52
- "@repo/metadata-extractor": "1.0.0",
53
- "@repo/tools": "1.0.0",
54
57
  "@repo/typescript-config": "1.0.0",
58
+ "@repo/tools": "1.0.0",
59
+ "@repo/metadata-extractor": "1.0.0",
55
60
  "@repo/vite-config": "1.0.0",
56
61
  "@repo/vitest-config": "1.0.0",
57
62
  "@repo/wrapper-gen": "1.0.0",
58
- "@vonage/vivid-vue": "5.24.0"
63
+ "@vonage/vivid-vue": "5.27.0"
59
64
  },
60
65
  "scripts": {
61
66
  "prebuild": "tsx scripts/codegen.ts",