@vitest/browser 3.0.0 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -16,7 +16,7 @@ import { resolve as resolve$1, dirname as dirname$1, basename as basename$1, nor
16
16
  import { WebSocketServer } from 'ws';
17
17
  import * as nodeos from 'node:os';
18
18
 
19
- var version = "3.0.0";
19
+ var version = "3.0.2";
20
20
 
21
21
  const _DRIVE_LETTER_START_RE = /^[A-Za-z]:\//;
22
22
  function normalizeWindowsPath(input = "") {
@@ -31,7 +31,6 @@ const _IS_ABSOLUTE_RE = /^[/\\](?![/\\])|^[/\\]{2}(?!\.)|^[A-Za-z]:[/\\]/;
31
31
  const _DRIVE_LETTER_RE = /^[A-Za-z]:$/;
32
32
  const _ROOT_FOLDER_RE = /^\/([A-Za-z]:)?$/;
33
33
  const _EXTNAME_RE = /.(\.[^./]+)$/;
34
- globalThis.process?.platform === "win32" ? ";" : ":";
35
34
  const normalize = function(path) {
36
35
  if (path.length === 0) {
37
36
  return ".";
@@ -416,7 +415,7 @@ const parse = (text, reviver) => {
416
415
  */
417
416
  const stringify = (value, replacer, space) => {
418
417
  const $ = replacer && typeof replacer === object ?
419
- (k, v) => (k === '' || -1 < replacer.indexOf(k) ? v : void 0) :
418
+ (k, v) => (k === '' || -1 < replacer.indexOf(k) ? v : undefined) :
420
419
  (replacer || noop);
421
420
  const known = new Map;
422
421
  const input = [];
@@ -625,7 +624,7 @@ var BrowserPlugin = (parentServer, base = "/") => {
625
624
  }
626
625
  );
627
626
  const coverageFolder = resolveCoverageFolder(parentServer.vitest);
628
- const coveragePath = coverageFolder ? coverageFolder[1] : void 0;
627
+ const coveragePath = coverageFolder ? coverageFolder[1] : undefined;
629
628
  if (coveragePath && base === coveragePath) {
630
629
  throw new Error(
631
630
  `The ui base path and the coverage path cannot be the same: ${base}, change coverage.reportsDirectory`
@@ -1060,7 +1059,7 @@ function tryResolve(path, paths) {
1060
1059
  const _require2 = getRequire();
1061
1060
  return _require2.resolve(path, { paths });
1062
1061
  } catch {
1063
- return void 0;
1062
+ return undefined;
1064
1063
  }
1065
1064
  }
1066
1065
  let _require;
@@ -1077,15 +1076,15 @@ function resolveCoverageFolder(vitest) {
1077
1076
  return reporter === "html";
1078
1077
  }
1079
1078
  return reporter[0] === "html";
1080
- }) : void 0;
1079
+ }) : undefined;
1081
1080
  if (!htmlReporter) {
1082
- return void 0;
1081
+ return undefined;
1083
1082
  }
1084
1083
  const root = resolve(
1085
1084
  options.root || process.cwd(),
1086
1085
  options.coverage.reportsDirectory || coverageConfigDefaults.reportsDirectory
1087
1086
  );
1088
- const subdir = Array.isArray(htmlReporter) && htmlReporter.length > 1 && "subdir" in htmlReporter[1] ? htmlReporter[1].subdir : void 0;
1087
+ const subdir = Array.isArray(htmlReporter) && htmlReporter.length > 1 && "subdir" in htmlReporter[1] ? htmlReporter[1].subdir : undefined;
1089
1088
  if (!subdir || typeof subdir !== "string") {
1090
1089
  return [root, `/${basename(root)}/`];
1091
1090
  }
@@ -1716,157 +1715,13 @@ const hover = async (context, selector, options = {}) => {
1716
1715
  }
1717
1716
  };
1718
1717
 
1719
- var clickableInputTypes;
1720
- (function(clickableInputTypes) {
1721
- clickableInputTypes["button"] = "button";
1722
- clickableInputTypes["color"] = "color";
1723
- clickableInputTypes["file"] = "file";
1724
- clickableInputTypes["image"] = "image";
1725
- clickableInputTypes["reset"] = "reset";
1726
- clickableInputTypes["submit"] = "submit";
1727
- clickableInputTypes["checkbox"] = "checkbox";
1728
- clickableInputTypes["radio"] = "radio";
1729
- })(clickableInputTypes || (clickableInputTypes = {}));
1730
-
1731
- var editableInputTypes;
1732
- (function(editableInputTypes) {
1733
- editableInputTypes["text"] = "text";
1734
- editableInputTypes["date"] = "date";
1735
- editableInputTypes["datetime-local"] = "datetime-local";
1736
- editableInputTypes["email"] = "email";
1737
- editableInputTypes["month"] = "month";
1738
- editableInputTypes["number"] = "number";
1739
- editableInputTypes["password"] = "password";
1740
- editableInputTypes["search"] = "search";
1741
- editableInputTypes["tel"] = "tel";
1742
- editableInputTypes["time"] = "time";
1743
- editableInputTypes["url"] = "url";
1744
- editableInputTypes["week"] = "week";
1745
- })(editableInputTypes || (editableInputTypes = {}));
1746
-
1747
- var maxLengthSupportedTypes;
1748
- (function(maxLengthSupportedTypes) {
1749
- maxLengthSupportedTypes["email"] = "email";
1750
- maxLengthSupportedTypes["password"] = "password";
1751
- maxLengthSupportedTypes["search"] = "search";
1752
- maxLengthSupportedTypes["telephone"] = "telephone";
1753
- maxLengthSupportedTypes["text"] = "text";
1754
- maxLengthSupportedTypes["url"] = "url";
1755
- })(maxLengthSupportedTypes || (maxLengthSupportedTypes = {}));
1756
-
1757
- var bracketDict;
1758
- (function(bracketDict) {
1759
- bracketDict["{"] = "}";
1760
- bracketDict["["] = "]";
1761
- })(bracketDict || (bracketDict = {}));
1762
- /**
1763
- * Read the next key definition from user input
1764
- *
1765
- * Describe key per `{descriptor}` or `[descriptor]`.
1766
- * Everything else will be interpreted as a single character as descriptor - e.g. `a`.
1767
- * Brackets `{` and `[` can be escaped by doubling - e.g. `foo[[bar` translates to `foo[bar`.
1768
- * A previously pressed key can be released per `{/descriptor}`.
1769
- * Keeping the key pressed can be written as `{descriptor>}`.
1770
- * When keeping the key pressed you can choose how long the key is pressed `{descriptor>3}`.
1771
- * You can then release the key per `{descriptor>3/}` or keep it pressed and continue with the next key.
1772
- */ function readNextDescriptor(text, context) {
1773
- let pos = 0;
1774
- const startBracket = text[pos] in bracketDict ? text[pos] : '';
1775
- pos += startBracket.length;
1776
- const isEscapedChar = new RegExp(`^\\${startBracket}{2}`).test(text);
1777
- const type = isEscapedChar ? '' : startBracket;
1778
- return {
1779
- type,
1780
- ...type === '' ? readPrintableChar(text, pos) : readTag(text, pos, type)
1781
- };
1782
- }
1783
- function readPrintableChar(text, pos, context) {
1784
- const descriptor = text[pos];
1785
- assertDescriptor(descriptor, text, pos);
1786
- pos += descriptor.length;
1787
- return {
1788
- consumedLength: pos,
1789
- descriptor,
1790
- releasePrevious: false,
1791
- releaseSelf: true,
1792
- repeat: 1
1793
- };
1794
- }
1795
- function readTag(text, pos, startBracket, context) {
1796
- var _text_slice_match, _text_slice_match1;
1797
- const releasePreviousModifier = text[pos] === '/' ? '/' : '';
1798
- pos += releasePreviousModifier.length;
1799
- const escapedDescriptor = startBracket === '{' && text[pos] === '\\';
1800
- pos += Number(escapedDescriptor);
1801
- const descriptor = escapedDescriptor ? text[pos] : (_text_slice_match = text.slice(pos).match(startBracket === '{' ? /^\w+|^[^}>/]/ : /^\w+/)) === null || _text_slice_match === void 0 ? void 0 : _text_slice_match[0];
1802
- assertDescriptor(descriptor, text, pos);
1803
- pos += descriptor.length;
1804
- var _text_slice_match_;
1805
- const repeatModifier = (_text_slice_match_ = (_text_slice_match1 = text.slice(pos).match(/^>\d+/)) === null || _text_slice_match1 === void 0 ? void 0 : _text_slice_match1[0]) !== null && _text_slice_match_ !== void 0 ? _text_slice_match_ : '';
1806
- pos += repeatModifier.length;
1807
- const releaseSelfModifier = text[pos] === '/' || !repeatModifier && text[pos] === '>' ? text[pos] : '';
1808
- pos += releaseSelfModifier.length;
1809
- const expectedEndBracket = bracketDict[startBracket];
1810
- const endBracket = text[pos] === expectedEndBracket ? expectedEndBracket : '';
1811
- if (!endBracket) {
1812
- throw new Error(getErrorMessage([
1813
- !repeatModifier && 'repeat modifier',
1814
- !releaseSelfModifier && 'release modifier',
1815
- `"${expectedEndBracket}"`
1816
- ].filter(Boolean).join(' or '), text[pos], text));
1817
- }
1818
- pos += endBracket.length;
1819
- return {
1820
- consumedLength: pos,
1821
- descriptor,
1822
- releasePrevious: !!releasePreviousModifier,
1823
- repeat: repeatModifier ? Math.max(Number(repeatModifier.substr(1)), 1) : 1,
1824
- releaseSelf: hasReleaseSelf(releaseSelfModifier, repeatModifier)
1825
- };
1826
- }
1827
- function assertDescriptor(descriptor, text, pos, context) {
1828
- if (!descriptor) {
1829
- throw new Error(getErrorMessage('key descriptor', text[pos], text));
1830
- }
1831
- }
1832
- function hasReleaseSelf(releaseSelfModifier, repeatModifier) {
1833
- if (releaseSelfModifier) {
1834
- return releaseSelfModifier === '/';
1835
- }
1836
- if (repeatModifier) {
1837
- return false;
1838
- }
1839
- }
1840
- function getErrorMessage(expected, found, text, context) {
1841
- return `Expected ${expected} but found "${found !== null && found !== void 0 ? found : ''}" in "${text}"
1842
- See ${`https://testing-library.com/docs/user-event/keyboard`}
1843
- for more information about how userEvent parses your input.`;
1844
- }
1845
-
1846
- var ApiLevel;
1847
- (function(ApiLevel) {
1848
- ApiLevel[ApiLevel["Trigger"] = 2] = "Trigger";
1849
- ApiLevel[ApiLevel["Call"] = 1] = "Call";
1850
- })(ApiLevel || (ApiLevel = {}));
1851
-
1852
- var PointerEventsCheckLevel;
1853
- (function(PointerEventsCheckLevel) {
1854
- /**
1855
- * Check pointer events on every user interaction that triggers a bunch of events.
1856
- * E.g. once for releasing a mouse button even though this triggers `pointerup`, `mouseup`, `click`, etc...
1857
- */ PointerEventsCheckLevel[PointerEventsCheckLevel["EachTrigger"] = 4] = "EachTrigger";
1858
- /** Check each target once per call to pointer (related) API */ PointerEventsCheckLevel[PointerEventsCheckLevel["EachApiCall"] = 2] = "EachApiCall";
1859
- /** Check each event target once */ PointerEventsCheckLevel[PointerEventsCheckLevel["EachTarget"] = 1] = "EachTarget";
1860
- /** No pointer events check */ PointerEventsCheckLevel[PointerEventsCheckLevel["Never"] = 0] = "Never";
1861
- })(PointerEventsCheckLevel || (PointerEventsCheckLevel = {}));
1862
-
1863
- var DOM_KEY_LOCATION;
1864
- (function(DOM_KEY_LOCATION) {
1718
+ var DOM_KEY_LOCATION = /*#__PURE__*/ function(DOM_KEY_LOCATION) {
1865
1719
  DOM_KEY_LOCATION[DOM_KEY_LOCATION["STANDARD"] = 0] = "STANDARD";
1866
1720
  DOM_KEY_LOCATION[DOM_KEY_LOCATION["LEFT"] = 1] = "LEFT";
1867
1721
  DOM_KEY_LOCATION[DOM_KEY_LOCATION["RIGHT"] = 2] = "RIGHT";
1868
1722
  DOM_KEY_LOCATION[DOM_KEY_LOCATION["NUMPAD"] = 3] = "NUMPAD";
1869
- })(DOM_KEY_LOCATION || (DOM_KEY_LOCATION = {}));
1723
+ return DOM_KEY_LOCATION;
1724
+ }({});
1870
1725
 
1871
1726
  /**
1872
1727
  * Mapping for a default US-104-QWERTY keyboard
@@ -2019,6 +1874,95 @@ var DOM_KEY_LOCATION;
2019
1874
  }
2020
1875
  ];
2021
1876
 
1877
+ var bracketDict = /*#__PURE__*/ function(bracketDict) {
1878
+ bracketDict["{"] = "}";
1879
+ bracketDict["["] = "]";
1880
+ return bracketDict;
1881
+ }(bracketDict || {});
1882
+ /**
1883
+ * Read the next key definition from user input
1884
+ *
1885
+ * Describe key per `{descriptor}` or `[descriptor]`.
1886
+ * Everything else will be interpreted as a single character as descriptor - e.g. `a`.
1887
+ * Brackets `{` and `[` can be escaped by doubling - e.g. `foo[[bar` translates to `foo[bar`.
1888
+ * A previously pressed key can be released per `{/descriptor}`.
1889
+ * Keeping the key pressed can be written as `{descriptor>}`.
1890
+ * When keeping the key pressed you can choose how long the key is pressed `{descriptor>3}`.
1891
+ * You can then release the key per `{descriptor>3/}` or keep it pressed and continue with the next key.
1892
+ */ function readNextDescriptor(text, context) {
1893
+ let pos = 0;
1894
+ const startBracket = text[pos] in bracketDict ? text[pos] : '';
1895
+ pos += startBracket.length;
1896
+ const isEscapedChar = new RegExp(`^\\${startBracket}{2}`).test(text);
1897
+ const type = isEscapedChar ? '' : startBracket;
1898
+ return {
1899
+ type,
1900
+ ...type === '' ? readPrintableChar(text, pos) : readTag(text, pos, type)
1901
+ };
1902
+ }
1903
+ function readPrintableChar(text, pos, context) {
1904
+ const descriptor = text[pos];
1905
+ assertDescriptor(descriptor, text, pos);
1906
+ pos += descriptor.length;
1907
+ return {
1908
+ consumedLength: pos,
1909
+ descriptor,
1910
+ releasePrevious: false,
1911
+ releaseSelf: true,
1912
+ repeat: 1
1913
+ };
1914
+ }
1915
+ function readTag(text, pos, startBracket, context) {
1916
+ var _text_slice_match, _text_slice_match1;
1917
+ const releasePreviousModifier = text[pos] === '/' ? '/' : '';
1918
+ pos += releasePreviousModifier.length;
1919
+ const escapedDescriptor = startBracket === '{' && text[pos] === '\\';
1920
+ pos += Number(escapedDescriptor);
1921
+ const descriptor = escapedDescriptor ? text[pos] : (_text_slice_match = text.slice(pos).match(startBracket === '{' ? /^\w+|^[^}>/]/ : /^\w+/)) === null || _text_slice_match === undefined ? undefined : _text_slice_match[0];
1922
+ assertDescriptor(descriptor, text, pos);
1923
+ pos += descriptor.length;
1924
+ var _text_slice_match_;
1925
+ const repeatModifier = (_text_slice_match_ = (_text_slice_match1 = text.slice(pos).match(/^>\d+/)) === null || _text_slice_match1 === undefined ? undefined : _text_slice_match1[0]) !== null && _text_slice_match_ !== undefined ? _text_slice_match_ : '';
1926
+ pos += repeatModifier.length;
1927
+ const releaseSelfModifier = text[pos] === '/' || !repeatModifier && text[pos] === '>' ? text[pos] : '';
1928
+ pos += releaseSelfModifier.length;
1929
+ const expectedEndBracket = bracketDict[startBracket];
1930
+ const endBracket = text[pos] === expectedEndBracket ? expectedEndBracket : '';
1931
+ if (!endBracket) {
1932
+ throw new Error(getErrorMessage([
1933
+ !repeatModifier && 'repeat modifier',
1934
+ !releaseSelfModifier && 'release modifier',
1935
+ `"${expectedEndBracket}"`
1936
+ ].filter(Boolean).join(' or '), text[pos], text));
1937
+ }
1938
+ pos += endBracket.length;
1939
+ return {
1940
+ consumedLength: pos,
1941
+ descriptor,
1942
+ releasePrevious: !!releasePreviousModifier,
1943
+ repeat: repeatModifier ? Math.max(Number(repeatModifier.substr(1)), 1) : 1,
1944
+ releaseSelf: hasReleaseSelf(releaseSelfModifier, repeatModifier)
1945
+ };
1946
+ }
1947
+ function assertDescriptor(descriptor, text, pos, context) {
1948
+ if (!descriptor) {
1949
+ throw new Error(getErrorMessage('key descriptor', text[pos], text));
1950
+ }
1951
+ }
1952
+ function hasReleaseSelf(releaseSelfModifier, repeatModifier) {
1953
+ if (releaseSelfModifier) {
1954
+ return releaseSelfModifier === '/';
1955
+ }
1956
+ if (repeatModifier) {
1957
+ return false;
1958
+ }
1959
+ }
1960
+ function getErrorMessage(expected, found, text, context) {
1961
+ return `Expected ${expected} but found "${found !== null && found !== undefined ? found : ''}" in "${text}"
1962
+ See ${`https://testing-library.com/docs/user-event/keyboard`}
1963
+ for more information about how userEvent parses your input.`;
1964
+ }
1965
+
2022
1966
  /**
2023
1967
  * Parse key defintions per `keyboardMap`
2024
1968
  *
@@ -2036,13 +1980,13 @@ var DOM_KEY_LOCATION;
2036
1980
  const keyDef = (_keyboardMap_find = keyboardMap.find((def)=>{
2037
1981
  if (type === '[') {
2038
1982
  var _def_code;
2039
- return ((_def_code = def.code) === null || _def_code === void 0 ? void 0 : _def_code.toLowerCase()) === descriptor.toLowerCase();
1983
+ return ((_def_code = def.code) === null || _def_code === undefined ? undefined : _def_code.toLowerCase()) === descriptor.toLowerCase();
2040
1984
  } else if (type === '{') {
2041
1985
  var _def_key;
2042
- return ((_def_key = def.key) === null || _def_key === void 0 ? void 0 : _def_key.toLowerCase()) === descriptor.toLowerCase();
1986
+ return ((_def_key = def.key) === null || _def_key === undefined ? undefined : _def_key.toLowerCase()) === descriptor.toLowerCase();
2043
1987
  }
2044
1988
  return def.key === descriptor;
2045
- })) !== null && _keyboardMap_find !== void 0 ? _keyboardMap_find : {
1989
+ })) !== null && _keyboardMap_find !== undefined ? _keyboardMap_find : {
2046
1990
  key: 'Unknown',
2047
1991
  code: 'Unknown',
2048
1992
  [type === '[' ? 'code' : 'key']: descriptor
@@ -2488,7 +2432,7 @@ function wrapConfig(config) {
2488
2432
  return {
2489
2433
  ...config,
2490
2434
  // workaround RegExp serialization
2491
- testNamePattern: config.testNamePattern ? config.testNamePattern.toString() : void 0
2435
+ testNamePattern: config.testNamePattern ? config.testNamePattern.toString() : undefined
2492
2436
  };
2493
2437
  }
2494
2438
 
@@ -2641,7 +2585,7 @@ class ParentBrowserProject {
2641
2585
  const server = this.vite;
2642
2586
  const promises = scripts.map(
2643
2587
  async ({ content, src, async, id, type = "module" }, index) => {
2644
- const srcLink = (src ? (await server.pluginContainer.resolveId(src))?.id : void 0) || src;
2588
+ const srcLink = (src ? (await server.pluginContainer.resolveId(src))?.id : undefined) || src;
2645
2589
  const transformId = srcLink || join(server.config.root, `virtual__${id || `injected-${index}.js`}`);
2646
2590
  await server.moduleGraph.ensureEntryFromUrl(transformId);
2647
2591
  const contentProcessed = content && type === "module" ? (await server.pluginContainer.transform(content, transformId)).code : content;
@@ -2698,7 +2642,7 @@ function createBirpc(functions, options) {
2698
2642
  if (method === "$close")
2699
2643
  return close;
2700
2644
  if (method === "then" && !eventNames.includes("then") && !("then" in functions))
2701
- return void 0;
2645
+ return undefined;
2702
2646
  const sendEvent = (...args) => {
2703
2647
  post(serialize({ m: method, a: args, t: "q" }));
2704
2648
  };
@@ -2713,7 +2657,7 @@ function createBirpc(functions, options) {
2713
2657
  try {
2714
2658
  await _promise;
2715
2659
  } finally {
2716
- _promise = void 0;
2660
+ _promise = undefined;
2717
2661
  }
2718
2662
  }
2719
2663
  return new Promise((resolve, reject) => {
@@ -1,4 +1,4 @@
1
1
  import '@vitest/browser/context';
2
- import '../public-utils-D6S2-5kI.js';
3
- export { L as Locator, s as selectorEngine } from '../index-Dos_sf7B.js';
2
+ import '../public-utils-DldpEzVw.js';
3
+ export { L as Locator, s as selectorEngine } from '../index--cbQOwRJ.js';
4
4
  import 'vitest/utils';
@@ -1,6 +1,6 @@
1
1
  import { page, server } from '@vitest/browser/context';
2
- import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector } from '../public-utils-D6S2-5kI.js';
3
- import { s as selectorEngine, L as Locator } from '../index-Dos_sf7B.js';
2
+ import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector } from '../public-utils-DldpEzVw.js';
3
+ import { s as selectorEngine, L as Locator } from '../index--cbQOwRJ.js';
4
4
  import 'vitest/utils';
5
5
 
6
6
  page.extend({
@@ -1,6 +1,6 @@
1
1
  import { page, server, userEvent } from '@vitest/browser/context';
2
- import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector, h as getElementError } from '../public-utils-D6S2-5kI.js';
3
- import { s as selectorEngine, L as Locator, c as convertElementToCssSelector } from '../index-Dos_sf7B.js';
2
+ import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector, h as getElementError } from '../public-utils-DldpEzVw.js';
3
+ import { s as selectorEngine, L as Locator, c as convertElementToCssSelector } from '../index--cbQOwRJ.js';
4
4
  import 'vitest/utils';
5
5
 
6
6
  page.extend({
@@ -1,6 +1,6 @@
1
1
  import { page, server } from '@vitest/browser/context';
2
- import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector, h as getElementError } from '../public-utils-D6S2-5kI.js';
3
- import { s as selectorEngine, L as Locator, c as convertElementToCssSelector } from '../index-Dos_sf7B.js';
2
+ import { g as getByLabelSelector, a as getByRoleSelector, b as getByTestIdSelector, c as getByAltTextSelector, d as getByPlaceholderSelector, e as getByTextSelector, f as getByTitleSelector, h as getElementError } from '../public-utils-DldpEzVw.js';
3
+ import { s as selectorEngine, L as Locator, c as convertElementToCssSelector } from '../index--cbQOwRJ.js';
4
4
  import 'vitest/utils';
5
5
 
6
6
  page.extend({