cypress 10.2.0 → 10.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. package/lib/exec/open.js +7 -2
  2. package/lib/exec/spawn.js +7 -2
  3. package/mount-utils/CHANGELOG.md +0 -1
  4. package/mount-utils/README.md +7 -0
  5. package/mount-utils/dist/index.js +8 -1
  6. package/mount-utils/package.json +1 -0
  7. package/package.json +20 -10
  8. package/react/CHANGELOG.md +0 -19
  9. package/react/README.md +28 -323
  10. package/react/dist/createMount.d.ts +30 -0
  11. package/react/dist/cypress-react.cjs.js +76 -80
  12. package/react/dist/cypress-react.esm-bundler.js +68 -76
  13. package/react/dist/getDisplayName.d.ts +1 -1
  14. package/react/dist/index.d.ts +2 -0
  15. package/react/dist/mount.d.ts +5 -141
  16. package/react/dist/types.d.ts +50 -0
  17. package/react/package.json +1 -5
  18. package/react18/dist/cypress-react.cjs.js +422 -0
  19. package/react18/dist/cypress-react.esm-bundler.js +394 -0
  20. package/react18/dist/index.d.ts +5 -0
  21. package/react18/package.json +59 -0
  22. package/types/cypress.d.ts +11 -2
  23. package/types/index.d.ts +1 -1
  24. package/types/{net-stubbing.ts → net-stubbing.d.ts} +0 -0
  25. package/vue/CHANGELOG.md +2 -17
  26. package/vue/README.md +17 -607
  27. package/vue/dist/@vue/test-utils/baseWrapper.d.ts +63 -0
  28. package/vue/dist/@vue/test-utils/components/RouterLinkStub.d.ts +21 -0
  29. package/vue/dist/@vue/test-utils/config.d.ts +30 -0
  30. package/vue/dist/@vue/test-utils/constants/dom-events.d.ts +900 -0
  31. package/vue/dist/@vue/test-utils/createDomEvent.d.ts +9 -0
  32. package/vue/dist/@vue/test-utils/domWrapper.d.ts +18 -0
  33. package/vue/dist/@vue/test-utils/emit.d.ts +5 -0
  34. package/vue/dist/@vue/test-utils/errorWrapper.d.ts +1 -0
  35. package/vue/dist/@vue/test-utils/index.d.ts +11 -0
  36. package/vue/dist/@vue/test-utils/interfaces/wrapperLike.d.ts +56 -0
  37. package/vue/dist/@vue/test-utils/mount.d.ts +35 -0
  38. package/vue/dist/@vue/test-utils/stubs.d.ts +22 -0
  39. package/vue/dist/@vue/test-utils/types.d.ts +125 -0
  40. package/vue/dist/@vue/test-utils/utils/autoUnmount.d.ts +5 -0
  41. package/vue/dist/@vue/test-utils/utils/compileSlots.d.ts +2 -0
  42. package/vue/dist/@vue/test-utils/utils/componentName.d.ts +4 -0
  43. package/vue/dist/@vue/test-utils/utils/find.d.ts +10 -0
  44. package/vue/dist/@vue/test-utils/utils/flushPromises.d.ts +1 -0
  45. package/vue/dist/@vue/test-utils/utils/getRootNodes.d.ts +2 -0
  46. package/vue/dist/@vue/test-utils/utils/isElement.d.ts +1 -0
  47. package/vue/dist/@vue/test-utils/utils/isElementVisible.d.ts +6 -0
  48. package/vue/dist/@vue/test-utils/utils/matchName.d.ts +1 -0
  49. package/vue/dist/@vue/test-utils/utils/stringifyNode.d.ts +1 -0
  50. package/vue/dist/@vue/test-utils/utils/vueCompatSupport.d.ts +8 -0
  51. package/vue/dist/@vue/test-utils/utils/vueShared.d.ts +3 -0
  52. package/vue/dist/@vue/test-utils/utils.d.ts +13 -0
  53. package/vue/dist/@vue/test-utils/vueWrapper.d.ts +35 -0
  54. package/vue/dist/@vue/test-utils/wrapperFactory.d.ts +14 -0
  55. package/vue/dist/cypress-vue.cjs.js +5583 -5209
  56. package/vue/dist/cypress-vue.esm-bundler.js +5584 -5211
  57. package/vue/dist/index.d.ts +35 -3
  58. package/vue/package.json +11 -7
  59. package/vue2/README.md +11 -627
  60. package/vue2/dist/cypress-vue2.browser.js +268 -262
  61. package/vue2/dist/cypress-vue2.cjs.js +267 -261
  62. package/vue2/dist/cypress-vue2.esm-bundler.js +265 -259
  63. package/vue2/package.json +1 -1
  64. package/react/dist/cypress-react.browser.js +0 -497
@@ -0,0 +1,63 @@
1
+ import type { TriggerOptions } from './createDomEvent';
2
+ import { ComponentInternalInstance, ComponentOptions, ComponentPublicInstance, ComputedOptions, CreateComponentPublicInstance, FunctionalComponent, MethodOptions } from 'vue';
3
+ import { DomEventNameWithModifier } from './constants/dom-events';
4
+ import type { VueWrapper } from './vueWrapper';
5
+ import { DefinedComponent, FindAllComponentsSelector, FindComponentSelector, NameSelector, RefSelector, VueNode } from './types';
6
+ import WrapperLike from './interfaces/wrapperLike';
7
+ import type { DOMWrapper } from './domWrapper';
8
+ export default abstract class BaseWrapper<ElementType extends Node> implements WrapperLike {
9
+ protected readonly wrapperElement: VueNode<ElementType>;
10
+ protected abstract getRootNodes(): VueNode[];
11
+ get element(): VueNode<ElementType>;
12
+ constructor(element: ElementType);
13
+ protected findAllDOMElements(selector: string): Element[];
14
+ find<K extends keyof HTMLElementTagNameMap>(selector: K): DOMWrapper<HTMLElementTagNameMap[K]>;
15
+ find<K extends keyof SVGElementTagNameMap>(selector: K): DOMWrapper<SVGElementTagNameMap[K]>;
16
+ find<T extends Element = Element>(selector: string): DOMWrapper<T>;
17
+ find<T extends Node = Node>(selector: string | RefSelector): DOMWrapper<T>;
18
+ abstract findAll<K extends keyof HTMLElementTagNameMap>(selector: K): DOMWrapper<HTMLElementTagNameMap[K]>[];
19
+ abstract findAll<K extends keyof SVGElementTagNameMap>(selector: K): DOMWrapper<SVGElementTagNameMap[K]>[];
20
+ abstract findAll<T extends Element>(selector: string): DOMWrapper<T>[];
21
+ abstract findAll(selector: string): DOMWrapper<Element>[];
22
+ findComponent<T extends never>(selector: string): WrapperLike;
23
+ findComponent<Props, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions>(selector: ComponentOptions<Props, RawBindings, D, C, M>): VueWrapper<CreateComponentPublicInstance<Props, RawBindings, D, C, M>>;
24
+ findComponent<T extends ComponentOptions>(selector: string): VueWrapper<T extends ComponentOptions<infer Props, infer RawBindings, infer D, infer C, infer M> ? CreateComponentPublicInstance<Props, RawBindings, D, C, M> : VueWrapper<CreateComponentPublicInstance>>;
25
+ findComponent<T extends DefinedComponent>(selector: T | Exclude<FindComponentSelector, FunctionalComponent>): VueWrapper<InstanceType<T>>;
26
+ findComponent<T extends FunctionalComponent>(selector: T): DOMWrapper<Node>;
27
+ findComponent<T extends FunctionalComponent>(selector: string): DOMWrapper<Element>;
28
+ findComponent<T extends never>(selector: NameSelector | RefSelector): VueWrapper;
29
+ findComponent<T extends ComponentPublicInstance>(selector: T | FindComponentSelector): VueWrapper<T>;
30
+ findComponent<T extends never>(selector: FindComponentSelector): WrapperLike;
31
+ findAllComponents<T extends never>(selector: string): WrapperLike[];
32
+ findAllComponents<T extends DefinedComponent>(selector: T | Exclude<FindAllComponentsSelector, FunctionalComponent>): VueWrapper<InstanceType<T>>[];
33
+ findAllComponents<T extends FunctionalComponent>(selector: T): DOMWrapper<Node>[];
34
+ findAllComponents<T extends FunctionalComponent>(selector: string): DOMWrapper<Element>[];
35
+ findAllComponents<T extends never>(selector: NameSelector): VueWrapper[];
36
+ findAllComponents<T extends ComponentPublicInstance>(selector: T | FindAllComponentsSelector): VueWrapper<T>[];
37
+ findAllComponents<T extends never>(selector: FindAllComponentsSelector): WrapperLike[];
38
+ abstract setValue(value?: any): Promise<void>;
39
+ html(): string;
40
+ classes(): string[];
41
+ classes(className: string): boolean;
42
+ attributes(): {
43
+ [key: string]: string;
44
+ };
45
+ attributes(key: string): string | undefined;
46
+ text(): string;
47
+ exists(): boolean;
48
+ get<K extends keyof HTMLElementTagNameMap>(selector: K): Omit<DOMWrapper<HTMLElementTagNameMap[K]>, 'exists'>;
49
+ get<K extends keyof SVGElementTagNameMap>(selector: K): Omit<DOMWrapper<SVGElementTagNameMap[K]>, 'exists'>;
50
+ get<T extends Element = Element>(selector: string): Omit<DOMWrapper<T>, 'exists'>;
51
+ get<T extends Node = Node>(selector: string | RefSelector): Omit<DOMWrapper<T>, 'exists'>;
52
+ getComponent<T extends never>(selector: string): Omit<WrapperLike, 'exists'>;
53
+ getComponent<T extends DefinedComponent>(selector: T | Exclude<FindComponentSelector, FunctionalComponent>): Omit<VueWrapper<InstanceType<T>>, 'exists'>;
54
+ getComponent<T extends FunctionalComponent>(selector: T | string): Omit<DOMWrapper<Element>, 'exists'>;
55
+ getComponent<T extends never>(selector: NameSelector | RefSelector): Omit<VueWrapper, 'exists'>;
56
+ getComponent<T extends ComponentPublicInstance>(selector: T | FindComponentSelector): Omit<VueWrapper<T>, 'exists'>;
57
+ getComponent<T extends never>(selector: FindComponentSelector): Omit<WrapperLike, 'exists'>;
58
+ protected isDisabled: () => boolean;
59
+ isVisible(): boolean;
60
+ protected abstract getCurrentComponent(): ComponentInternalInstance | void;
61
+ trigger(eventString: DomEventNameWithModifier, options?: TriggerOptions): Promise<void>;
62
+ trigger(eventString: string, options?: TriggerOptions): Promise<void>;
63
+ }
@@ -0,0 +1,21 @@
1
+ export declare const RouterLinkStub: import("vue").DefineComponent<{
2
+ to: {
3
+ type: (StringConstructor | ObjectConstructor)[];
4
+ required: true;
5
+ };
6
+ custom: {
7
+ type: BooleanConstructor;
8
+ default: boolean;
9
+ };
10
+ }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
+ to: {
12
+ type: (StringConstructor | ObjectConstructor)[];
13
+ required: true;
14
+ };
15
+ custom: {
16
+ type: BooleanConstructor;
17
+ default: boolean;
18
+ };
19
+ }>>, {
20
+ custom: boolean;
21
+ }>;
@@ -0,0 +1,30 @@
1
+ import { GlobalMountOptions, Stub } from './types';
2
+ import { VueWrapper } from './vueWrapper';
3
+ import { DOMWrapper } from './domWrapper';
4
+ import { CustomCreateStub } from './stubs';
5
+ export interface GlobalConfigOptions {
6
+ global: Required<Omit<GlobalMountOptions, 'stubs'>> & {
7
+ stubs: Record<string, Stub>;
8
+ };
9
+ plugins: {
10
+ VueWrapper: Pluggable<VueWrapper>;
11
+ DOMWrapper: Pluggable<DOMWrapper<Node>>;
12
+ createStubs?: CustomCreateStub;
13
+ };
14
+ renderStubDefaultSlot: boolean;
15
+ }
16
+ interface Plugin<Instance, O> {
17
+ handler(instance: Instance): Record<string, any>;
18
+ handler(instance: Instance, options: O): Record<string, any>;
19
+ options: O;
20
+ }
21
+ declare class Pluggable<Instance = DOMWrapper<Node>> {
22
+ installedPlugins: Plugin<Instance, any>[];
23
+ install<O>(handler: (instance: Instance) => Record<string, any>): void;
24
+ install<O>(handler: (instance: Instance, options: O) => Record<string, any>, options: O): void;
25
+ extend(instance: Instance): void;
26
+ /** For testing */
27
+ reset(): void;
28
+ }
29
+ export declare const config: GlobalConfigOptions;
30
+ export {};