@vonage/vivid-test-utils 5.24.0 → 5.25.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, 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';
@@ -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";
@@ -101,7 +102,7 @@ type AlertProps = {
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;
@@ -598,7 +599,7 @@ type ComboboxProps = {
598
599
  open: boolean;
599
600
  options: VwcOptionElement[];
600
601
  placeholder: string;
601
- placement: 'top' | 'bottom';
602
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end';
602
603
  required: boolean;
603
604
  scale: 'condensed' | 'normal';
604
605
  selectedIndex: number;
@@ -638,7 +639,7 @@ export declare class ComboboxExpectations<D extends DriverT> {
638
639
  toHaveVisibleError: (value: any) => D["expectReturn"];
639
640
  }
640
641
  type ContextualHelpProps = {
641
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
642
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
642
643
  };
643
644
  export declare class ContextualHelpWrapper<D extends DriverT> extends BaseWrapper<D, VwcContextualHelpElement> {
644
645
  type: "contextualHelp";
@@ -1369,12 +1370,43 @@ export declare class LayoutExpectations<D extends DriverT> {
1369
1370
  constructor(ctx: Context<D>, wrapper: LayoutWrapper<D>);
1370
1371
  toHaveProp: <T extends keyof LayoutProps>(propName: T, value: LayoutProps[T]) => D["expectReturn"];
1371
1372
  }
1373
+ type ListboxProps = {
1374
+ optionFilter: ((option: VwcOptionElement, searchText: string) => boolean);
1375
+ requiredSelection: 'none' | 'selectable' | 'any';
1376
+ searchText: string;
1377
+ selectionBehavior: 'replace' | 'toggle';
1378
+ selectionMode: 'single' | 'multiple';
1379
+ value: string;
1380
+ values: string[];
1381
+ };
1382
+ export declare class ListboxWrapper<D extends DriverT> extends BaseWrapper<D, VwcListboxElement> {
1383
+ type: "listbox";
1384
+ componentInfo: {
1385
+ name: string;
1386
+ };
1387
+ blur: () => D["actionReturn"];
1388
+ focus: () => D["actionReturn"];
1389
+ hover: () => D["actionReturn"];
1390
+ }
1391
+ export declare class Listbox<D extends DriverT> extends BaseComponent<D, ListboxWrapper<D>> {
1392
+ componentInfo: {
1393
+ name: string;
1394
+ };
1395
+ wrap(locator: D['locator']): ListboxWrapper<D>;
1396
+ byTestId: (id: string) => ListboxWrapper<D>;
1397
+ }
1398
+ export declare class ListboxExpectations<D extends DriverT> {
1399
+ private readonly ctx;
1400
+ private readonly wrapper;
1401
+ constructor(ctx: Context<D>, wrapper: ListboxWrapper<D>);
1402
+ toHaveProp: <T extends keyof ListboxProps>(propName: T, value: ListboxProps[T]) => D["expectReturn"];
1403
+ }
1372
1404
  type MenuProps = {
1373
1405
  anchor: string | HTMLElement;
1374
1406
  autoDismiss: boolean;
1375
1407
  offset: number;
1376
1408
  open: boolean;
1377
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1409
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1378
1410
  positionStrategy: 'fixed' | 'absolute';
1379
1411
  trigger: 'auto' | 'off' | 'legacy';
1380
1412
  };
@@ -1760,7 +1792,7 @@ type PopoverProps = {
1760
1792
  manual: boolean;
1761
1793
  offset: number;
1762
1794
  open: boolean;
1763
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1795
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
1764
1796
  };
1765
1797
  export declare class PopoverWrapper<D extends DriverT> extends BaseWrapper<D, VwcPopoverElement> {
1766
1798
  type: "popover";
@@ -2205,7 +2237,7 @@ type SimpleColorPickerProps = {
2205
2237
  label: string;
2206
2238
  name: string;
2207
2239
  open: boolean;
2208
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2240
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2209
2241
  required: boolean;
2210
2242
  swatches: {
2211
2243
  label?: string;
@@ -2776,7 +2808,7 @@ type TextFieldProps = {
2776
2808
  size: number;
2777
2809
  spellcheck: boolean;
2778
2810
  successText: string;
2779
- type: 'text' | 'email' | 'password' | 'tel' | 'url';
2811
+ type: 'text' | 'search' | 'email' | 'password' | 'tel' | 'url';
2780
2812
  value: string;
2781
2813
  };
2782
2814
  export declare class TextFieldWrapper<D extends DriverT> extends BaseWrapper<D, VwcTextFieldElement> {
@@ -2856,7 +2888,8 @@ type ToggletipProps = {
2856
2888
  anchor: string | HTMLElement;
2857
2889
  headline: string;
2858
2890
  open: boolean;
2859
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2891
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2892
+ textSecondary: string;
2860
2893
  };
2861
2894
  export declare class ToggletipWrapper<D extends DriverT> extends BaseWrapper<D, VwcToggletipElement> {
2862
2895
  type: "toggletip";
@@ -2886,8 +2919,9 @@ export declare class ToggletipExpectations<D extends DriverT> {
2886
2919
  type TooltipProps = {
2887
2920
  anchor: string | HTMLElement;
2888
2921
  open: boolean;
2889
- placement: 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2922
+ placement: 'top-start' | 'top' | 'top-end' | 'bottom-start' | 'bottom' | 'bottom-end' | 'left' | 'right' | 'left-end' | 'left-start' | 'right-end' | 'right-start';
2890
2923
  text: string;
2924
+ textSecondary: string;
2891
2925
  };
2892
2926
  export declare class TooltipWrapper<D extends DriverT> extends BaseWrapper<D, VwcTooltipElement> {
2893
2927
  type: "tooltip";
@@ -3040,6 +3074,7 @@ type Expectations<D extends DriverT> = {
3040
3074
  kbdKey: KbdKeyExpectations<D>;
3041
3075
  kbdShortcut: KbdShortcutExpectations<D>;
3042
3076
  layout: LayoutExpectations<D>;
3077
+ listbox: ListboxExpectations<D>;
3043
3078
  menu: MenuExpectations<D>;
3044
3079
  menuItem: MenuItemExpectations<D>;
3045
3080
  nav: NavExpectations<D>;
@@ -3134,6 +3169,7 @@ export declare class VividWrapper<D extends DriverT> {
3134
3169
  kbdKey: KbdKey<D>;
3135
3170
  kbdShortcut: KbdShortcut<D>;
3136
3171
  layout: Layout<D>;
3172
+ listbox: Listbox<D>;
3137
3173
  menu: Menu<D>;
3138
3174
  menuItem: MenuItem<D>;
3139
3175
  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-CFCjcJdH.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;
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-NJa_d646.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) => {
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,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-CFCjcJdH.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;
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-NJa_d646.js";
2
2
  import t from "@testing-library/user-event";
3
3
  //#region src/drivers/dom.ts
4
4
  var n = () => new Promise((e) => {
@@ -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-CFCjcJdH.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,4 +1,4 @@
1
- import { t as e } from "./components.generated-CbtYzUoa.js";
1
+ import { t as e } from "./components.generated-NJa_d646.js";
2
2
  //#region src/drivers/playwright.ts
3
3
  var t = (e) => ({
4
4
  querySelector: (e, t) => e.locator(t),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vonage/vivid-test-utils",
3
- "version": "5.24.0",
3
+ "version": "5.25.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./dom": {
@@ -30,7 +30,7 @@
30
30
  "dependencies": {
31
31
  "@testing-library/user-event": "^14.6.1",
32
32
  "change-case": "^5.4.4",
33
- "@vonage/vivid": "^5.24.0"
33
+ "@vonage/vivid": "^5.25.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@playwright/test": "1.57.0",
@@ -48,14 +48,14 @@
48
48
  "vue": "^3.5.34",
49
49
  "wait-on": "^8.0.5",
50
50
  "@repo/eslint-config": "1.0.0",
51
- "@repo/internal-test-utils": "1.0.0",
52
- "@repo/metadata-extractor": "1.0.0",
53
51
  "@repo/tools": "1.0.0",
52
+ "@repo/internal-test-utils": "1.0.0",
54
53
  "@repo/typescript-config": "1.0.0",
54
+ "@repo/metadata-extractor": "1.0.0",
55
55
  "@repo/vite-config": "1.0.0",
56
56
  "@repo/vitest-config": "1.0.0",
57
57
  "@repo/wrapper-gen": "1.0.0",
58
- "@vonage/vivid-vue": "5.24.0"
58
+ "@vonage/vivid-vue": "5.25.0"
59
59
  },
60
60
  "scripts": {
61
61
  "prebuild": "tsx scripts/codegen.ts",