cypress 13.17.0 → 14.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (73) hide show
  1. package/angular/README.md +5 -0
  2. package/angular/angular/README.md +5 -0
  3. package/angular/angular/dist/index.d.ts +11 -2
  4. package/angular/angular/dist/index.js +944 -4
  5. package/angular/angular/package.json +16 -9
  6. package/angular/dist/index.d.ts +11 -2
  7. package/angular/dist/index.js +944 -4
  8. package/angular/package.json +16 -9
  9. package/lib/cli.js +1 -30
  10. package/lib/exec/spawn.js +29 -7
  11. package/mount-utils/dist/index.d.ts +0 -28
  12. package/mount-utils/dist/index.js +0 -27
  13. package/mount-utils/mount-utils/dist/index.d.ts +0 -28
  14. package/mount-utils/mount-utils/dist/index.js +0 -27
  15. package/package.json +5 -23
  16. package/react/README.md +5 -0
  17. package/react/dist/cypress-react.cjs.js +21 -676
  18. package/react/dist/cypress-react.esm-bundler.js +22 -676
  19. package/react/dist/index.d.ts +13 -30
  20. package/react/package.json +13 -15
  21. package/react/react/README.md +5 -0
  22. package/react/react/dist/cypress-react.cjs.js +21 -676
  23. package/react/react/dist/cypress-react.esm-bundler.js +22 -676
  24. package/react/react/dist/index.d.ts +13 -30
  25. package/react/react/package.json +13 -15
  26. package/svelte/README.md +6 -2
  27. package/svelte/dist/cypress-svelte.cjs.js +12 -12
  28. package/svelte/dist/cypress-svelte.esm-bundler.js +12 -12
  29. package/svelte/dist/index.d.ts +8 -179
  30. package/svelte/package.json +2 -2
  31. package/svelte/svelte/README.md +6 -2
  32. package/svelte/svelte/dist/cypress-svelte.cjs.js +12 -12
  33. package/svelte/svelte/dist/cypress-svelte.esm-bundler.js +12 -12
  34. package/svelte/svelte/dist/index.d.ts +8 -179
  35. package/svelte/svelte/package.json +2 -2
  36. package/types/cypress.d.ts +32 -49
  37. package/types/net-stubbing.d.ts +2 -7
  38. package/vue/dist/cypress-vue.cjs.js +380 -275
  39. package/vue/dist/cypress-vue.esm-bundler.js +382 -276
  40. package/vue/dist/index.d.ts +61 -78
  41. package/vue/package.json +2 -5
  42. package/vue/vue/dist/cypress-vue.cjs.js +380 -275
  43. package/vue/vue/dist/cypress-vue.esm-bundler.js +382 -276
  44. package/vue/vue/dist/index.d.ts +61 -78
  45. package/vue/vue/package.json +2 -5
  46. package/angular-signals/README.md +0 -11
  47. package/angular-signals/angular-signals/README.md +0 -11
  48. package/angular-signals/angular-signals/dist/index.d.ts +0 -136
  49. package/angular-signals/angular-signals/dist/index.js +0 -1861
  50. package/angular-signals/angular-signals/package.json +0 -74
  51. package/angular-signals/dist/index.d.ts +0 -136
  52. package/angular-signals/dist/index.js +0 -1861
  53. package/angular-signals/package.json +0 -74
  54. package/react18/README.md +0 -7
  55. package/react18/dist/cypress-react.cjs.js +0 -597
  56. package/react18/dist/cypress-react.esm-bundler.js +0 -574
  57. package/react18/dist/index.d.ts +0 -78
  58. package/react18/package.json +0 -71
  59. package/react18/react18/README.md +0 -7
  60. package/react18/react18/dist/cypress-react.cjs.js +0 -597
  61. package/react18/react18/dist/cypress-react.esm-bundler.js +0 -574
  62. package/react18/react18/dist/index.d.ts +0 -78
  63. package/react18/react18/package.json +0 -71
  64. package/vue2/README.md +0 -7
  65. package/vue2/dist/cypress-vue2.cjs.js +0 -20045
  66. package/vue2/dist/cypress-vue2.esm-bundler.js +0 -20042
  67. package/vue2/dist/index.d.ts +0 -207
  68. package/vue2/package.json +0 -65
  69. package/vue2/vue2/README.md +0 -7
  70. package/vue2/vue2/dist/cypress-vue2.cjs.js +0 -20045
  71. package/vue2/vue2/dist/cypress-vue2.esm-bundler.js +0 -20042
  72. package/vue2/vue2/dist/index.d.ts +0 -207
  73. package/vue2/vue2/package.json +0 -65
@@ -1,187 +1,14 @@
1
1
  /// <reference types="cypress" />
2
2
 
3
- declare module '*.svelte' {
4
- export { SvelteComponentDev as default } from 'svelte/internal';
5
- }
6
-
7
- /**
8
- * INTERNAL, DO NOT USE. Code may change at any time.
9
- */
10
- interface Fragment {
11
- key: string | null;
12
- first: null;
13
- c: () => void;
14
- l: (nodes: any) => void;
15
- h: () => void;
16
- m: (target: HTMLElement, anchor: any) => void;
17
- p: (ctx: any, dirty: any) => void;
18
- r: () => void;
19
- f: () => void;
20
- a: () => void;
21
- i: (local: any) => void;
22
- o: (local: any) => void;
23
- d: (detaching: 0 | 1) => void;
24
- }
25
- interface T$$ {
26
- dirty: number[];
27
- ctx: null | any;
28
- bound: any;
29
- update: () => void;
30
- callbacks: any;
31
- after_update: any[];
32
- props: Record<string, 0 | string>;
33
- fragment: null | false | Fragment;
34
- not_equal: any;
35
- before_update: any[];
36
- context: Map<any, any>;
37
- on_mount: any[];
38
- on_destroy: any[];
39
- skip_bound: boolean;
40
- on_disconnect: any[];
41
- root: Element | ShadowRoot;
42
- }
43
- /**
44
- * Base class for Svelte components. Used when dev=false.
45
- */
46
- declare class SvelteComponent {
47
- $$: T$$;
48
- $$set?: ($$props: any) => void;
49
- $destroy(): void;
50
- $on(type: any, callback: any): () => void;
51
- $set($$props: any): void;
52
- }
53
-
54
- declare type Props = Record<string, any>;
55
- interface ComponentConstructorOptions<Props extends Record<string, any> = Record<string, any>> {
56
- target: Element | ShadowRoot;
57
- anchor?: Element;
58
- props?: Props;
59
- context?: Map<any, any>;
60
- hydrate?: boolean;
61
- intro?: boolean;
62
- $$inline?: boolean;
63
- }
64
- interface SvelteComponentDev$1 {
65
- $set(props?: Props): void;
66
- $on(event: string, callback: (event: any) => void): () => void;
67
- $destroy(): void;
68
- [accessor: string]: any;
69
- }
70
- /**
71
- * Base class for Svelte components with some minor dev-enhancements. Used when dev=true.
72
- */
73
- declare class SvelteComponentDev$1 extends SvelteComponent {
74
- /**
75
- * @private
76
- * For type checking capabilities only.
77
- * Does not exist at runtime.
78
- * ### DO NOT USE!
79
- */
80
- $$prop_def: Props;
81
- /**
82
- * @private
83
- * For type checking capabilities only.
84
- * Does not exist at runtime.
85
- * ### DO NOT USE!
86
- */
87
- $$events_def: any;
88
- /**
89
- * @private
90
- * For type checking capabilities only.
91
- * Does not exist at runtime.
92
- * ### DO NOT USE!
93
- */
94
- $$slot_def: any;
95
- constructor(options: ComponentConstructorOptions);
96
- $capture_state(): void;
97
- $inject_state(): void;
98
- }
99
- interface SvelteComponentTyped<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any> {
100
- $set(props?: Partial<Props>): void;
101
- $on<K extends Extract<keyof Events, string>>(type: K, callback: (e: Events[K]) => void): () => void;
102
- $destroy(): void;
103
- [accessor: string]: any;
104
- }
105
- /**
106
- * Base class to create strongly typed Svelte components.
107
- * This only exists for typing purposes and should be used in `.d.ts` files.
108
- *
109
- * ### Example:
110
- *
111
- * You have component library on npm called `component-library`, from which
112
- * you export a component called `MyComponent`. For Svelte+TypeScript users,
113
- * you want to provide typings. Therefore you create a `index.d.ts`:
114
- * ```ts
115
- * import { SvelteComponentTyped } from "svelte";
116
- * export class MyComponent extends SvelteComponentTyped<{foo: string}> {}
117
- * ```
118
- * Typing this makes it possible for IDEs like VS Code with the Svelte extension
119
- * to provide intellisense and to use the component like this in a Svelte file
120
- * with TypeScript:
121
- * ```svelte
122
- * <script lang="ts">
123
- * import { MyComponent } from "component-library";
124
- * </script>
125
- * <MyComponent foo={'bar'} />
126
- * ```
127
- *
128
- * #### Why not make this part of `SvelteComponent(Dev)`?
129
- * Because
130
- * ```ts
131
- * class ASubclassOfSvelteComponent extends SvelteComponent<{foo: string}> {}
132
- * const component: typeof SvelteComponent = ASubclassOfSvelteComponent;
133
- * ```
134
- * will throw a type error, so we need to separate the more strictly typed class.
135
- */
136
- declare class SvelteComponentTyped<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any> extends SvelteComponentDev$1 {
137
- /**
138
- * @private
139
- * For type checking capabilities only.
140
- * Does not exist at runtime.
141
- * ### DO NOT USE!
142
- */
143
- $$prop_def: Props;
144
- /**
145
- * @private
146
- * For type checking capabilities only.
147
- * Does not exist at runtime.
148
- * ### DO NOT USE!
149
- */
150
- $$events_def: Events;
151
- /**
152
- * @private
153
- * For type checking capabilities only.
154
- * Does not exist at runtime.
155
- * ### DO NOT USE!
156
- */
157
- $$slot_def: Slots;
158
- constructor(options: ComponentConstructorOptions<Props>);
159
- }
160
- /**
161
- * Convenience type to get the props the given component expects. Example:
162
- * ```html
163
- * <script lang="ts">
164
- * import type { ComponentProps } from 'svelte';
165
- * import Component from './Component.svelte';
166
- *
167
- * const props: ComponentProps<Component> = { foo: 'bar' }; // Errors if these aren't the correct props
168
- * </script>
169
- * ```
170
- */
171
- declare type ComponentProps<Component extends SvelteComponent> = Component extends SvelteComponentTyped<infer Props> ? Props : never;
3
+ import { Component, MountOptions } from 'svelte';
172
4
 
173
- type SvelteConstructor<T> = new (...args: any[]) => T;
174
- type SvelteComponentOptions<T extends SvelteComponentDev$1> = Omit<ComponentConstructorOptions<ComponentProps<T>>, 'hydrate' | 'target' | '$$inline'>;
175
- interface MountOptions<T extends SvelteComponentDev$1> extends SvelteComponentOptions<T> {
176
- log?: boolean;
177
- }
178
- interface MountReturn<T extends SvelteComponentDev$1> {
179
- component: T;
5
+ interface MountReturn {
6
+ component: Record<string, any>;
180
7
  }
181
8
  /**
182
9
  * Mounts a Svelte component inside the Cypress browser
183
10
  *
184
- * @param {SvelteConstructor<T>} Component Svelte component being mounted
11
+ * @param {Record<string, any>} Component Svelte component being mounted
185
12
  * @param {MountReturn<T extends SvelteComponent>} options options to customize the component being mounted
186
13
  * @returns Cypress.Chainable<MountReturn>
187
14
  *
@@ -196,6 +23,8 @@ interface MountReturn<T extends SvelteComponentDev$1> {
196
23
  *
197
24
  * @see {@link https://on.cypress.io/mounting-svelte} for more details.
198
25
  */
199
- declare function mount<T extends SvelteComponentDev$1>(Component: SvelteConstructor<T>, options?: MountOptions<T>): Cypress.Chainable<MountReturn<T>>;
26
+ declare function mount(Component: Component<Record<string, any>, Record<string, any>, any>, options?: Omit<MountOptions, 'target'> & {
27
+ log?: boolean;
28
+ }): Cypress.Chainable<MountReturn>;
200
29
 
201
- export { MountOptions, MountReturn, mount };
30
+ export { MountReturn, mount };
@@ -12,12 +12,12 @@
12
12
  },
13
13
  "devDependencies": {
14
14
  "@cypress/mount-utils": "0.0.0-development",
15
- "svelte": "^3.49.0",
15
+ "svelte": "^5.4.0",
16
16
  "typescript": "~5.4.5"
17
17
  },
18
18
  "peerDependencies": {
19
19
  "cypress": ">=10.6.0",
20
- "svelte": ">=3.0.0"
20
+ "svelte": ">=5.0.0"
21
21
  },
22
22
  "files": [
23
23
  "dist/**/*"
@@ -70,18 +70,10 @@ declare namespace Cypress {
70
70
  strategy: 'file' | 'http'
71
71
  origin: string
72
72
  fileServer: string | null
73
- props: Record<string, any>
74
- visiting: string
73
+ props: Record<string, any> | null
75
74
  }
76
75
 
77
76
  interface Backend {
78
- /**
79
- * Firefox only: Force Cypress to run garbage collection routines.
80
- * No-op if not running in Firefox.
81
- *
82
- * @see https://on.cypress.io/firefox-gc-issue
83
- */
84
- (task: 'firefox:force:gc'): Promise<void>
85
77
  (task: 'net', eventName: string, frame: any): Promise<void>
86
78
  }
87
79
 
@@ -125,11 +117,7 @@ declare namespace Cypress {
125
117
  */
126
118
  warning?: string
127
119
  /**
128
- * The minimum majorVersion of this browser supported by Cypress.
129
- */
130
- minSupportedVersion?: number
131
- /**
132
- * If `true`, this browser is too old to be supported by Cypress.
120
+ * If `true`, this browser version is not supported in Cypress.
133
121
  */
134
122
  unsupportedVersion?: boolean
135
123
  }
@@ -3114,24 +3102,16 @@ declare namespace Cypress {
3114
3102
  */
3115
3103
  experimentalModifyObstructiveThirdPartyCode: boolean
3116
3104
  /**
3117
- * Disables setting document.domain to the applications super domain on injection.
3118
- * This experiment is to be used for sites that do not work with setting document.domain
3119
- * due to cross-origin issues. Enabling this option no longer allows for default subdomain
3120
- * navigations, and will require the use of cy.origin(). This option takes an array of
3121
- * strings/string globs.
3122
- * @see https://developer.mozilla.org/en-US/docs/Web/API/Document/domain
3123
- * @see https://on.cypress.io/experiments#Experimental-Skip-Domain-Injection
3124
- * @default null
3125
- */
3126
- experimentalSkipDomainInjection: string[] | null
3127
- /**
3128
- * Allows for just-in-time compiling of a component test, which will only compile assets related to the component.
3129
- * This results in a smaller bundle under test, reducing resource constraints on a given machine. This option is recommended
3130
- * for users with large component testing projects and those who are running into webpack 'chunk load error' issues.
3131
- * Supported for vite and webpack. For component testing only.
3132
- * @see https://on.cypress.io/experiments#Configuration
3105
+ * Enables setting document.domain to the superdomain on code injection. This option is
3106
+ * disabled by default. Enabling this option allows for navigating between subdomains in
3107
+ * the same test without the use of cy.origin(). Setting document.domain is deprecated in Chrome.
3108
+ * Enabling this may result in incompatibilities with sites that leverage origin-agent-cluster
3109
+ * headers. Enabling this when a browser does not support setting document.domain will not result
3110
+ * in the browser allowing document.domain to be set. In these cases, this configuration option
3111
+ * must be set to false, to allow cy.origin() to be used on subdomains.
3112
+ * @default false
3133
3113
  */
3134
- experimentalJustInTimeCompile: boolean
3114
+ injectDocumentDomain: boolean
3135
3115
  /**
3136
3116
  * Enables AST-based JS/HTML rewriting. This may fix issues caused by the existing regex-based JS/HTML replacement algorithm.
3137
3117
  * @default false
@@ -3152,6 +3132,14 @@ declare namespace Cypress {
3152
3132
  * @default false
3153
3133
  */
3154
3134
  experimentalMemoryManagement: boolean
3135
+ /**
3136
+ * Allows for just-in-time compiling of a component test, which will only compile assets related to the component.
3137
+ * This results in a smaller bundle under test, reducing resource constraints on a given machine. This option is recommended
3138
+ * for users with large component testing projects and those who are running into webpack 'chunk load error' issues.
3139
+ * Supported for webpack-dev-server only. For component testing only.
3140
+ * @see https://on.cypress.io/experiments#Configuration
3141
+ */
3142
+ justInTimeCompile: boolean
3155
3143
  /**
3156
3144
  * Number of times to retry a failed test.
3157
3145
  * If a number is set, tests will retry in both runMode and openMode.
@@ -3188,10 +3176,6 @@ declare namespace Cypress {
3188
3176
  * The user agent the browser sends in all request headers.
3189
3177
  */
3190
3178
  userAgent: null | string
3191
- /**
3192
- * Polyfills `window.fetch` to enable Network spying and stubbing
3193
- */
3194
- experimentalFetchPolyfill: boolean
3195
3179
 
3196
3180
  /**
3197
3181
  * Override default config options for Component Testing runner.
@@ -3360,19 +3344,19 @@ declare namespace Cypress {
3360
3344
  interface CypressComponentDependency {
3361
3345
  /**
3362
3346
  * Unique identifier.
3363
- * @example 'reactscripts'
3347
+ * @example 'react'
3364
3348
  */
3365
3349
  type: string
3366
3350
 
3367
3351
  /**
3368
3352
  * Name to display in the user interface.
3369
- * @example "React Scripts"
3353
+ * @example "React.js"
3370
3354
  */
3371
3355
  name: string
3372
3356
 
3373
3357
  /**
3374
3358
  * Package name on npm.
3375
- * @example react-scripts
3359
+ * @example react
3376
3360
  */
3377
3361
  package: string
3378
3362
 
@@ -3383,21 +3367,20 @@ declare namespace Cypress {
3383
3367
  *
3384
3368
  * @example `react`
3385
3369
  * @example `react@18`
3386
- * @example `react-scripts`
3387
3370
  */
3388
3371
  installer: string
3389
3372
 
3390
3373
  /**
3391
3374
  * Description shown in UI. It is recommended to use the same one the package uses on npm.
3392
- * @example 'Create React apps with no build configuration'
3375
+ * @example 'A JavaScript library for building user interfaces'
3393
3376
  */
3394
3377
  description: string
3395
3378
 
3396
3379
  /**
3397
3380
  * Minimum version supported. Should conform to Semantic Versioning as used in `package.json`.
3398
3381
  * @see https://docs.npmjs.com/cli/v9/configuring-npm/package-json#dependencies
3399
- * @example '^=4.0.0 || ^=5.0.0'
3400
- * @example '^2.0.0'
3382
+ * @example '^=17.0.0 || ^=8.0.0'
3383
+ * @example '^4.0.0'
3401
3384
  */
3402
3385
  minVersion: string
3403
3386
  }
@@ -3406,21 +3389,21 @@ declare namespace Cypress {
3406
3389
  /**
3407
3390
  * A semantic, unique identifier.
3408
3391
  * Must begin with `cypress-ct-` or `@org/cypress-ct-` for third party implementations.
3409
- * @example 'reactscripts'
3392
+ * @example 'react'
3410
3393
  * @example 'nextjs'
3411
3394
  * @example 'cypress-ct-solid-js'
3412
3395
  */
3413
3396
  type: string
3414
3397
 
3415
3398
  /**
3416
- * Used as the flag for `getPreset` for meta framworks, such as finding the webpack config for CRA, Angular, etc.
3399
+ * Used as the flag for `getPreset` for meta frameworks, such as finding the webpack config for CRA, Angular, etc.
3417
3400
  * It is also the name of the string added to `cypress.config`
3418
3401
  *
3419
3402
  * @example
3420
3403
  * export default {
3421
3404
  * component: {
3422
3405
  * devServer: {
3423
- * framework: 'create-react-app' // can be 'next', 'create-react-app', etc etc.
3406
+ * framework: 'react' // can be 'next', 'vue', etc etc.
3424
3407
  * }
3425
3408
  * }
3426
3409
  * }
@@ -3435,7 +3418,7 @@ declare namespace Cypress {
3435
3418
  /**
3436
3419
  * Name displayed in Launchpad when doing initial setup.
3437
3420
  * @example 'Solid.js'
3438
- * @example 'Create React App'
3421
+ * @example 'React.js'
3439
3422
  */
3440
3423
  name: string
3441
3424
 
@@ -3465,12 +3448,12 @@ declare namespace Cypress {
3465
3448
  dependencies: (bundler: 'webpack' | 'vite', projectPath: string) => Promise<DependencyToInstall[]>
3466
3449
 
3467
3450
  /**
3468
- * This is used interally by Cypress for the "Create From Component" feature.
3451
+ * This is used internally by Cypress for the "Create From Component" feature.
3469
3452
  */
3470
3453
  codeGenFramework?: 'react' | 'vue' | 'svelte' | 'angular'
3471
3454
 
3472
3455
  /**
3473
- * This is used interally by Cypress for the "Create From Component" feature.
3456
+ * This is used internally by Cypress for the "Create From Component" feature.
3474
3457
  * @example '*.{js,jsx,tsx}'
3475
3458
  */
3476
3459
  glob?: string
@@ -3536,7 +3519,7 @@ declare namespace Cypress {
3536
3519
 
3537
3520
  type DevServerConfigOptions = {
3538
3521
  bundler: 'webpack'
3539
- framework: 'react' | 'vue' | 'vue-cli' | 'nuxt' | 'create-react-app' | 'next' | 'svelte'
3522
+ framework: 'react' | 'vue' | 'next' | 'svelte'
3540
3523
  webpackConfig?: ConfigHandler<PickConfigOpt<'webpackConfig'>>
3541
3524
  } | {
3542
3525
  bundler: 'vite'
@@ -144,6 +144,7 @@ export namespace CyHttpMessages {
144
144
  httpVersion: string
145
145
  /**
146
146
  * The resource type that is being requested, according to the browser.
147
+ * @deprecated the resource types may change or be completely removed in a future version of Cypress
147
148
  */
148
149
  resourceType: ResourceType
149
150
  /**
@@ -410,13 +411,7 @@ export type StaticResponseWithOptions = StaticResponse & InterceptOptions
410
411
  /**
411
412
  * Describes a response that will be sent back to the browser to fulfill the request.
412
413
  */
413
- export type StaticResponse = GenericStaticResponse<string, string | object | boolean | ArrayBuffer | null> & {
414
- /**
415
- * Milliseconds to delay before the response is sent.
416
- * @deprecated Use `delay` instead of `delayMs`.
417
- */
418
- delayMs?: number
419
- }
414
+ export type StaticResponse = GenericStaticResponse<string, string | object | boolean | ArrayBuffer | null>
420
415
 
421
416
  export interface GenericStaticResponse<Fixture, Body> {
422
417
  /**