From e44c342813ed8a1787baf43efe9c8be1c829fd36 Mon Sep 17 00:00:00 2001 From: Eugene Date: Mon, 27 Jan 2025 12:02:05 -0800 Subject: [PATCH] Migrate to happydom (#5398) --- __tests__/adaptiveCards.js | 2 +- package-lock.json | 842 +++++++----------- package.json | 6 +- .../private/templateMiddleware.test.tsx | 2 +- .../src/__tests__/renderMarkdown.spec.js | 24 +- ...vicesSpeechServicesPonyfillFactory.spec.js | 2 +- .../betterLinkDocumentMod.ariaLabel.spec.ts | 8 +- .../betterLinkDocumentMod.asButton.spec.ts | 12 +- .../betterLinkDocumentMod.className.spec.ts | 8 +- ...etterLinkDocumentMod.iconClassName.spec.ts | 4 +- .../private/betterLinkDocumentMod.rel.spec.ts | 8 +- .../betterLinkDocumentMod.selector.spec.ts | 6 +- .../betterLinkDocumentMod.target.spec.ts | 8 +- .../betterLinkDocumentMod.title.spec.ts | 8 +- ...LinkDocumentMod.wrapZeroWidthSpace.spec.ts | 6 +- .../src/hooks/internal/useMemoized.spec.jsx | 2 +- .../refreshToken.authorizationToken.js | 2 +- .../__tests__/refreshToken.directLineToken.js | 2 +- .../__tests__/sendSpeechActivity.js | 2 +- packages/directlinespeech/__tests__/setup.js | 2 +- .../src/createTaskQueue.spec.js | 2 +- .../src/playCognitiveServicesStream.spec.js | 2 +- .../src/shareObservable.spec.js | 2 +- packages/embed/src/fetchJSON.spec.js | 2 +- packages/embed/src/index.spec.js | 2 +- packages/embed/src/setups/aries.spec.js | 2 +- .../embed/src/setups/createElement.spec.js | 4 +- packages/embed/src/setups/legacy.spec.js | 2 +- packages/embed/src/setups/loadAsset.spec.js | 2 +- packages/embed/src/setups/loadIFRAME.spec.js | 2 +- packages/embed/src/setups/scorpio.spec.js | 2 +- packages/embed/src/setups/version3.spec.js | 2 +- packages/embed/src/setups/version4.spec.js | 2 +- packages/playground/package.json | 2 +- .../float32ArraysToPcmWaveArrayBuffer.spec.js | 2 +- ...veArrayBufferToRiffWaveArrayBuffer.spec.js | 2 +- 36 files changed, 388 insertions(+), 602 deletions(-) diff --git a/__tests__/adaptiveCards.js b/__tests__/adaptiveCards.js index 42661bfc70..2e32a5b507 100644 --- a/__tests__/adaptiveCards.js +++ b/__tests__/adaptiveCards.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { logging } from 'selenium-webdriver'; diff --git a/package-lock.json b/package-lock.json index eb368c1c5f..4f09cfc9b2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,6 +38,7 @@ "@babel/preset-typescript": "^7.18.6", "@babel/runtime": "^7.19.0", "@biomejs/biome": "1.9.3", + "@happy-dom/jest-environment": "^15.0.0", "@testing-library/react": "^12.1.5", "@types/jest": "^28.1.8", "@types/react": "^16.14.60", @@ -64,7 +65,6 @@ "global-agent": "^3.0.0", "husky": "^9.0.11", "jest": "^28.1.3", - "jest-environment-jsdom": "^28.1.3", "jest-image-snapshot": "^6.4.0", "jest-junit": "^16.0.0", "jest-trx-results-processor": "^3.0.2", @@ -2992,6 +2992,291 @@ "csstype": "^3.1.3" } }, + "node_modules/@happy-dom/jest-environment": { + "version": "15.11.7", + "resolved": "https://registry.npmjs.org/@happy-dom/jest-environment/-/jest-environment-15.11.7.tgz", + "integrity": "sha512-za6+Hrlcei6HYW/JmY6+kmYsOBslanyV/Gd6W4OWxxpvTEiy57vjVp4SvARN60mHFcEVY+EA24WbDJfIgdnGog==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.4.0", + "@jest/fake-timers": "^29.4.0", + "@jest/types": "^29.4.0", + "happy-dom": "^15.11.7", + "jest-mock": "^29.4.0", + "jest-util": "^29.4.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@happy-dom/jest-environment/node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@happy-dom/jest-environment/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@happy-dom/jest-environment/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@happy-dom/jest-environment/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@humanwhocodes/config-array": { "version": "0.13.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.13.0.tgz", @@ -4580,16 +4865,6 @@ "react-dom": "<18.0.0" } }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10" - } - }, "node_modules/@tsconfig/strictest": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@tsconfig/strictest/-/strictest-2.0.5.tgz", @@ -4870,18 +5145,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/jsdom": { - "version": "16.2.15", - "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-16.2.15.tgz", - "integrity": "sha512-nwF87yjBKuX/roqGYerZZM0Nv1pZDMAT5YhOHYeM/72Fic+VEqJh4nyoqoapzJnW3pUlfxPY5FhgsJtM+dRnQQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*", - "@types/parse5": "^6.0.3", - "@types/tough-cookie": "*" - } - }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -4963,13 +5226,6 @@ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", "license": "MIT" }, - "node_modules/@types/parse5": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz", - "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/postcss-modules-local-by-default": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/@types/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.2.tgz", @@ -5103,13 +5359,6 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/tough-cookie": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", - "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", - "dev": true, - "license": "MIT" - }, "node_modules/@types/unist": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", @@ -5598,14 +5847,6 @@ "dev": true, "license": "MIT" }, - "node_modules/abab": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz", - "integrity": "sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==", - "deprecated": "Use your platform's native atob() and btoa() methods instead", - "dev": true, - "license": "BSD-3-Clause" - }, "node_modules/abbrev": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", @@ -5677,30 +5918,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, - "license": "MIT", - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "license": "MIT", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/acorn-import-attributes": { "version": "1.9.5", "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", @@ -5721,16 +5938,6 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/adaptivecards": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/adaptivecards/-/adaptivecards-3.0.2.tgz", @@ -6923,13 +7130,6 @@ "node": ">=8" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true, - "license": "BSD-2-Clause" - }, "node_modules/browserslist": { "version": "4.23.3", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", @@ -8142,33 +8342,6 @@ "node": ">=4" } }, - "node_modules/cssom": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.5.0.tgz", - "integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==", - "dev": true, - "license": "MIT" - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "license": "MIT", - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true, - "license": "MIT" - }, "node_modules/csstype": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", @@ -8187,35 +8360,6 @@ "node": ">=0.10" } }, - "node_modules/data-urls": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-3.0.2.tgz", - "integrity": "sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.6", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^11.0.0" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/data-urls/node_modules/whatwg-url": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz", - "integrity": "sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/data-view-buffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz", @@ -8358,13 +8502,6 @@ "node": ">=0.10.0" } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true, - "license": "MIT" - }, "node_modules/decode-named-character-reference": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/decode-named-character-reference/-/decode-named-character-reference-1.0.2.tgz", @@ -8647,28 +8784,14 @@ "node_modules/domelementtype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" - }, - "node_modules/domexception": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-4.0.0.tgz", - "integrity": "sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==", - "deprecated": "Use your platform's native DOMException instead", - "dev": true, - "license": "MIT", - "dependencies": { - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" }, "node_modules/domhandler": { "version": "5.0.3", @@ -9477,28 +9600,6 @@ "node": ">=0.8.0" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, "node_modules/eslint": { "version": "8.57.1", "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.1.tgz", @@ -10890,21 +10991,6 @@ "node": "*" } }, - "node_modules/form-data": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", - "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", - "dev": true, - "license": "MIT", - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -11470,6 +11556,34 @@ "dev": true, "license": "MIT" }, + "node_modules/happy-dom": { + "version": "15.11.7", + "resolved": "https://registry.npmjs.org/happy-dom/-/happy-dom-15.11.7.tgz", + "integrity": "sha512-KyrFvnl+J9US63TEzwoiJOQzZBJY7KgBushJA8X61DMbNsH+2ONkDuLDnCnwUiPTF42tLoEmrPyoqbenVA5zrg==", + "dev": true, + "license": "MIT", + "dependencies": { + "entities": "^4.5.0", + "webidl-conversions": "^7.0.0", + "whatwg-mimetype": "^3.0.0" + }, + "engines": { + "node": ">=18.0.0" + } + }, + "node_modules/happy-dom/node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, "node_modules/har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -11680,19 +11794,6 @@ "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "license": "ISC" }, - "node_modules/html-encoding-sniffer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz", - "integrity": "sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==", - "dev": true, - "license": "MIT", - "dependencies": { - "whatwg-encoding": "^2.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -11773,21 +11874,6 @@ "node": ">=8.0.0" } }, - "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", - "dev": true, - "license": "MIT", - "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/http-proxy-middleware": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", @@ -11828,20 +11914,6 @@ "npm": ">=1.3.7" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, - "license": "MIT", - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -12479,13 +12551,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true, - "license": "MIT" - }, "node_modules/is-regex": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", @@ -13625,26 +13690,6 @@ "node": ">=8" } }, - "node_modules/jest-environment-jsdom": { - "version": "28.1.3", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-28.1.3.tgz", - "integrity": "sha512-HnlGUmZRdxfCByd3GM2F100DgQOajUBzEitjGqIREcb45kGjZvRrKUdlaF6escXBdcXNl0OBh+1ZrfeZT3GnAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jest/environment": "^28.1.3", - "@jest/fake-timers": "^28.1.3", - "@jest/types": "^28.1.3", - "@types/jsdom": "^16.2.4", - "@types/node": "*", - "jest-mock": "^28.1.3", - "jest-util": "^28.1.3", - "jsdom": "^19.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0" - } - }, "node_modules/jest-environment-node": { "version": "28.1.3", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-28.1.3.tgz", @@ -15137,75 +15182,6 @@ "node": ">=12.0.0" } }, - "node_modules/jsdom": { - "version": "19.0.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-19.0.0.tgz", - "integrity": "sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==", - "dev": true, - "license": "MIT", - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.5.0", - "acorn-globals": "^6.0.0", - "cssom": "^0.5.0", - "cssstyle": "^2.3.0", - "data-urls": "^3.0.1", - "decimal.js": "^10.3.1", - "domexception": "^4.0.0", - "escodegen": "^2.0.0", - "form-data": "^4.0.0", - "html-encoding-sniffer": "^3.0.0", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^3.0.0", - "webidl-conversions": "^7.0.0", - "whatwg-encoding": "^2.0.0", - "whatwg-mimetype": "^3.0.0", - "whatwg-url": "^10.0.0", - "ws": "^8.2.3", - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/ws": { - "version": "8.18.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", - "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10.0.0" - }, - "peerDependencies": { - "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" - }, - "peerDependenciesMeta": { - "bufferutil": { - "optional": true - }, - "utf-8-validate": { - "optional": true - } - } - }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -17598,13 +17574,6 @@ "node": ">=8" } }, - "node_modules/nwsapi": { - "version": "2.2.12", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.12.tgz", - "integrity": "sha512-qXDmcVlZV4XRtKFzddidpfVP4oMSGhga+xdMc25mv8kaLUHtgzCDhUxkrN8exkGdTlLNaXj7CV3GtON7zuGZ+w==", - "dev": true, - "license": "MIT" - }, "node_modules/oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", @@ -17951,13 +17920,6 @@ "integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==", "license": "MIT" }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true, - "license": "MIT" - }, "node_modules/parseurl": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", @@ -19946,19 +19908,6 @@ "license": "ISC", "optional": true }, - "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "license": "ISC", - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/scheduler": { "version": "0.13.6", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.13.6.tgz", @@ -21223,13 +21172,6 @@ "node": ">=0.10.0" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true, - "license": "MIT" - }, "node_modules/synckit": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz", @@ -21619,55 +21561,6 @@ "nodetouch": "bin/nodetouch.js" } }, - "node_modules/tough-cookie": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.4.tgz", - "integrity": "sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tough-cookie/node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-3.0.0.tgz", - "integrity": "sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==", - "dev": true, - "license": "MIT", - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/tr46/node_modules/punycode": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -23007,16 +22900,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -23286,30 +23169,6 @@ "url": "https://opencollective.com/unified" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "dev": true, - "license": "MIT", - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz", - "integrity": "sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==", - "dev": true, - "license": "MIT", - "dependencies": { - "xml-name-validator": "^4.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -23574,32 +23433,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/whatwg-encoding": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz", - "integrity": "sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==", - "dev": true, - "license": "MIT", - "dependencies": { - "iconv-lite": "0.6.3" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/whatwg-encoding/node_modules/iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/whatwg-fetch": { "version": "3.6.20", "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.6.20.tgz", @@ -23616,20 +23449,6 @@ "node": ">=12" } }, - "node_modules/whatwg-url": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-10.0.0.tgz", - "integrity": "sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==", - "dev": true, - "license": "MIT", - "dependencies": { - "tr46": "^3.0.0", - "webidl-conversions": "^7.0.0" - }, - "engines": { - "node": ">=12" - } - }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -24011,16 +23830,6 @@ "dev": true, "license": "MIT" }, - "node_modules/xml-name-validator": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-4.0.0.tgz", - "integrity": "sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=12" - } - }, "node_modules/xmlbuilder": { "version": "15.1.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", @@ -24031,13 +23840,6 @@ "node": ">=8.0" } }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true, - "license": "MIT" - }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/package.json b/package.json index a37d61b2c4..cf4a8bd238 100644 --- a/package.json +++ b/package.json @@ -137,10 +137,6 @@ "28", "jest-image-snapshot@5.2.0 does not support jest@29 yet" ], - "jest-environment-jsdom": [ - "28", - "jest-image-snapshot@5.2.0 does not support jest@29 yet" - ], "lerna": [ "6", "lerna@7 use npm workspaces and we fund the migration work" @@ -169,6 +165,7 @@ "@babel/preset-typescript": "^7.18.6", "@babel/runtime": "^7.19.0", "@biomejs/biome": "1.9.3", + "@happy-dom/jest-environment": "^15.0.0", "@testing-library/react": "^12.1.5", "@types/jest": "^28.1.8", "@types/react": "^16.14.60", @@ -195,7 +192,6 @@ "global-agent": "^3.0.0", "husky": "^9.0.11", "jest": "^28.1.3", - "jest-environment-jsdom": "^28.1.3", "jest-image-snapshot": "^6.4.0", "jest-junit": "^16.0.0", "jest-trx-results-processor": "^3.0.2", diff --git a/packages/api/src/decorator/private/templateMiddleware.test.tsx b/packages/api/src/decorator/private/templateMiddleware.test.tsx index b4bc7a2af1..466e3651bb 100644 --- a/packages/api/src/decorator/private/templateMiddleware.test.tsx +++ b/packages/api/src/decorator/private/templateMiddleware.test.tsx @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { render } from '@testing-library/react'; import React, { Fragment, type ReactNode } from 'react'; diff --git a/packages/bundle/src/__tests__/renderMarkdown.spec.js b/packages/bundle/src/__tests__/renderMarkdown.spec.js index ddae64a127..33560edaed 100644 --- a/packages/bundle/src/__tests__/renderMarkdown.spec.js +++ b/packages/bundle/src/__tests__/renderMarkdown.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ /* eslint no-magic-numbers: ["error", { "ignore": [2] }] */ import renderMarkdown from '../markdown/renderMarkdown'; @@ -23,7 +23,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown('Same line.\nSame line. \n2nd line.', styleOptions, renderMarkdownOptions)).toBe( - '

Same line.\nSame line.
\n2nd line.

' + '

Same line.\nSame line.
\n2nd line.

' ); }); @@ -31,7 +31,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown('Same Line.\n\rSame Line.\r\n2nd line.', styleOptions, renderMarkdownOptions)).toBe( - '

Same Line.\nSame Line.

\n

2nd line.

' + '

Same Line.\r\nSame Line.

\n

2nd line.

' ); }); @@ -39,7 +39,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: false }; expect(renderMarkdown('Same Line.\r\nSame Line.\n\r2nd line.', styleOptions, renderMarkdownOptions)).toBe( - '

Same Line.\nSame Line.

\n

2nd line.

' + '

Same Line.\r\nSame Line.

\n

2nd line.

' ); }); @@ -48,9 +48,7 @@ describe('renderMarkdown', () => { expect( renderMarkdown('**Message with Markdown**\r\nShould see bold text.', styleOptions, renderMarkdownOptions) - ).toBe( - '

Message with Markdown

\n

Should see bold text.

' - ); + ).toBe('

Message with Markdown

\n

Should see bold text.

'); }); it('should render code correctly', () => { @@ -62,7 +60,7 @@ describe('renderMarkdown', () => { styleOptions, renderMarkdownOptions ) - ).toBe(`
{
+    ).toBe(`
{
   "hello": "World!"
 }
 
`); @@ -72,7 +70,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown('[example](https://sample.com)', styleOptions, renderMarkdownOptions)).toBe( - `

\u200Bexample\u200B

` + `

\u200Bexample\u200B

` ); }); @@ -81,7 +79,7 @@ describe('renderMarkdown', () => { const options = { externalLinkAlt: 'Opens in a new window, external.' }; expect(renderMarkdown('[example](https://sample.com)', styleOptions, options)).toBe( - `

\u200Bexample\u200B

` + `

\u200Bexample\u200B

` ); }); @@ -89,7 +87,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown(`[example@test.com](sip:example@test.com)`, styleOptions, renderMarkdownOptions)).toBe( - '

\u200Bexample@test.com\u200B

' + '

\u200Bexample@test.com\u200B

' ); }); @@ -97,7 +95,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown(`[(505)503-4455](tel:505-503-4455)`, styleOptions, renderMarkdownOptions)).toBe( - '

\u200B(505)503-4455\u200B

' + '

\u200B(505)503-4455\u200B

' ); }); @@ -105,7 +103,7 @@ describe('renderMarkdown', () => { const styleOptions = { markdownRespectCRLF: true }; expect(renderMarkdown(`~~strike text~~`, styleOptions, renderMarkdownOptions)).toBe( - '

strike text

' + '

strike text

' ); }); }); diff --git a/packages/bundle/src/createCognitiveServicesSpeechServicesPonyfillFactory.spec.js b/packages/bundle/src/createCognitiveServicesSpeechServicesPonyfillFactory.spec.js index 7e9fc4819b..30e09f36d7 100644 --- a/packages/bundle/src/createCognitiveServicesSpeechServicesPonyfillFactory.spec.js +++ b/packages/bundle/src/createCognitiveServicesSpeechServicesPonyfillFactory.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment * @jest-environment-options { "customExportConditions": ["node"] } * * "uuid" resolved by jest-environment-jsdom use Web Crypto API. diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts index 5c13f4ce05..3fbd9f6ec4 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.ariaLabel.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "ariaLabel" option with "Hello, World!"', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); @@ -46,7 +46,5 @@ describe('When passing "ariaLabel" option with false', () => { expect(actual.querySelector('a').hasAttribute('aria-label')).toBe(false)); test('should match snapshot', () => - expect(serializeDocumentFragmentIntoString(actual)).toBe( - 'Example' - )); + expect(serializeDocumentFragmentIntoString(actual)).toBe('Example')); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts index 47994d2e42..c5eabbb7dc 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.asButton.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "asButton" option with true', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

' + '

' )); }); @@ -44,7 +44,7 @@ describe('When passing "asButton" option with true and "iconClassName" with "my- test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

' + '

' )); }); @@ -63,7 +63,7 @@ describe('When passing "asButton" option with true and "title" with "Hello, Worl test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

' + '

' )); }); @@ -82,7 +82,7 @@ describe('When passing "asButton" option with true and "className" with "my-link test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

' + '

' )); }); @@ -101,6 +101,6 @@ describe('When passing "asButton" option with true and "aria-label" with "Hello, test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

' + '

' )); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts index cf3fb3265f..121ebd9323 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.className.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "className" option with "my-link"', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); @@ -46,7 +46,5 @@ describe('When passing "className" option with false', () => { expect(actual.querySelector('a').hasAttribute('class')).toBe(false)); test('should match snapshot', () => - expect(serializeDocumentFragmentIntoString(actual)).toBe( - 'Example' - )); + expect(serializeDocumentFragmentIntoString(actual)).toBe('Example')); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts index 63afc6b458..a1ae5c6d1c 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.iconClassName.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -38,6 +38,6 @@ describe('When passing "iconAlt" option with "Hello, World!" and "iconClassName" test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts index be0ba30548..0a772f029e 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.rel.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "rel" option with "noopener noreferer"', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); @@ -45,7 +45,5 @@ describe('When passing "rel" option with false', () => { test('should have "rel" attribute removed', () => expect(actual.querySelector('a').hasAttribute('rel')).toBe(false)); test('should match snapshot', () => - expect(serializeDocumentFragmentIntoString(actual)).toBe( - 'Example' - )); + expect(serializeDocumentFragmentIntoString(actual)).toBe('Example')); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts index 5c22a8d3f5..94e1050344 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.selector.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -30,7 +30,7 @@ describe('When passing "ariaLabel" option with "Hello, World!" for a specific an test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Hello, World!

\n

Aloha!

' + '

Hello, World!

\n

Aloha!

' )); }); @@ -50,6 +50,6 @@ describe('When passing "ariaLabel" option with "Hello, World!" for a specific an test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Hello, World!

\n

Aloha!

' + '

Hello, World!

\n

Aloha!

' )); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts index 16c62f96d3..6873c7abf8 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.target.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "target" option with "noopener noreferer"', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); @@ -46,7 +46,5 @@ describe('When passing "target" option with false', () => { expect(actual.querySelector('a').hasAttribute('target')).toBe(false)); test('should match snapshot', () => - expect(serializeDocumentFragmentIntoString(actual)).toBe( - 'Example' - )); + expect(serializeDocumentFragmentIntoString(actual)).toBe('Example')); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts index 1bd462f86c..3c56a171e3 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.title.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -27,7 +27,7 @@ describe('When passing "title" option with "Hello, World!"', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

Example

' + '

Example

' )); }); @@ -46,7 +46,5 @@ describe('When passing "title" option with false', () => { expect(actual.querySelector('a').hasAttribute('title')).toBe(false)); test('should match snapshot', () => - expect(serializeDocumentFragmentIntoString(actual)).toBe( - 'Example' - )); + expect(serializeDocumentFragmentIntoString(actual)).toBe('Example')); }); diff --git a/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts b/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts index 3e3a7abe84..b20332f39c 100644 --- a/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts +++ b/packages/bundle/src/markdown/private/betterLinkDocumentMod.wrapZeroWidthSpace.spec.ts @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import { parseDocumentFragmentFromString, @@ -24,7 +24,7 @@ describe('When passing "wrapZeroWidthSpace" option with true', () => { test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

\u200bExample\u200b

' + '

\u200bExample\u200b

' )); }); @@ -38,6 +38,6 @@ describe('When passing "wrapZeroWidthSpace" option with true and "asButton" opti test('should match snapshot', () => expect(serializeDocumentFragmentIntoString(actual)).toBe( - '

\u200b\u200b

' + '

\u200b\u200b

' )); }); diff --git a/packages/component/src/hooks/internal/useMemoized.spec.jsx b/packages/component/src/hooks/internal/useMemoized.spec.jsx index 1c896c7fe8..be9478cf76 100644 --- a/packages/component/src/hooks/internal/useMemoized.spec.jsx +++ b/packages/component/src/hooks/internal/useMemoized.spec.jsx @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ /* eslint-disable react/prop-types */ /* eslint-disable no-undef */ /* eslint no-magic-numbers: "off" */ diff --git a/packages/directlinespeech/__tests__/refreshToken.authorizationToken.js b/packages/directlinespeech/__tests__/refreshToken.authorizationToken.js index 5847c1aa7c..cd04ca4bec 100644 --- a/packages/directlinespeech/__tests__/refreshToken.authorizationToken.js +++ b/packages/directlinespeech/__tests__/refreshToken.authorizationToken.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import 'global-agent/bootstrap'; diff --git a/packages/directlinespeech/__tests__/refreshToken.directLineToken.js b/packages/directlinespeech/__tests__/refreshToken.directLineToken.js index 6c48379db5..7895ee07ee 100644 --- a/packages/directlinespeech/__tests__/refreshToken.directLineToken.js +++ b/packages/directlinespeech/__tests__/refreshToken.directLineToken.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import 'global-agent/bootstrap'; diff --git a/packages/directlinespeech/__tests__/sendSpeechActivity.js b/packages/directlinespeech/__tests__/sendSpeechActivity.js index 7463bc9ce3..e1f2acb77a 100644 --- a/packages/directlinespeech/__tests__/sendSpeechActivity.js +++ b/packages/directlinespeech/__tests__/sendSpeechActivity.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import 'global-agent/bootstrap'; diff --git a/packages/directlinespeech/__tests__/setup.js b/packages/directlinespeech/__tests__/setup.js index 123f860eae..082708c190 100644 --- a/packages/directlinespeech/__tests__/setup.js +++ b/packages/directlinespeech/__tests__/setup.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ // This test make sure Jest environment setup code works. diff --git a/packages/directlinespeech/src/createTaskQueue.spec.js b/packages/directlinespeech/src/createTaskQueue.spec.js index 2a36a3a862..d93236ebfb 100644 --- a/packages/directlinespeech/src/createTaskQueue.spec.js +++ b/packages/directlinespeech/src/createTaskQueue.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ /* eslint no-magic-numbers: "off" */ diff --git a/packages/directlinespeech/src/playCognitiveServicesStream.spec.js b/packages/directlinespeech/src/playCognitiveServicesStream.spec.js index b5daae6abf..ace34da6b4 100644 --- a/packages/directlinespeech/src/playCognitiveServicesStream.spec.js +++ b/packages/directlinespeech/src/playCognitiveServicesStream.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ /* eslint no-magic-numbers: "off" */ diff --git a/packages/directlinespeech/src/shareObservable.spec.js b/packages/directlinespeech/src/shareObservable.spec.js index 045f75b060..74ddf783f8 100644 --- a/packages/directlinespeech/src/shareObservable.spec.js +++ b/packages/directlinespeech/src/shareObservable.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import Observable from 'core-js/features/observable'; diff --git a/packages/embed/src/fetchJSON.spec.js b/packages/embed/src/fetchJSON.spec.js index c30d4eec2d..af96a53d6b 100644 --- a/packages/embed/src/fetchJSON.spec.js +++ b/packages/embed/src/fetchJSON.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ const { default: fetchJSON } = require('./fetchJSON'); diff --git a/packages/embed/src/index.spec.js b/packages/embed/src/index.spec.js index 57a293336b..ed07d500b0 100644 --- a/packages/embed/src/index.spec.js +++ b/packages/embed/src/index.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import createElement from './setups/createElement'; diff --git a/packages/embed/src/setups/aries.spec.js b/packages/embed/src/setups/aries.spec.js index 76d68dcc84..f6630dca57 100644 --- a/packages/embed/src/setups/aries.spec.js +++ b/packages/embed/src/setups/aries.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import setupAries from './aries'; diff --git a/packages/embed/src/setups/createElement.spec.js b/packages/embed/src/setups/createElement.spec.js index 4e62507cb2..f1840f9585 100644 --- a/packages/embed/src/setups/createElement.spec.js +++ b/packages/embed/src/setups/createElement.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import createElement from './createElement'; @@ -27,7 +27,7 @@ test('Create an element with click event', () => { test('Create an element with stylesheet', () => { const image = createElement('img', { style: { backgroundColor: 'Black' } }); - expect(image).toHaveProperty('outerHTML', ''); + expect(image).toHaveProperty('outerHTML', ''); }); test('Create an element with boolean attribute of true', () => { diff --git a/packages/embed/src/setups/legacy.spec.js b/packages/embed/src/setups/legacy.spec.js index 1d2fbdc4a3..2503915b8c 100644 --- a/packages/embed/src/setups/legacy.spec.js +++ b/packages/embed/src/setups/legacy.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import setupLegacyVersionFamily from './legacy'; diff --git a/packages/embed/src/setups/loadAsset.spec.js b/packages/embed/src/setups/loadAsset.spec.js index 9e586a3773..158ced985a 100644 --- a/packages/embed/src/setups/loadAsset.spec.js +++ b/packages/embed/src/setups/loadAsset.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import loadAsset from './loadAsset'; diff --git a/packages/embed/src/setups/loadIFRAME.spec.js b/packages/embed/src/setups/loadIFRAME.spec.js index dd7e15930c..d9c2394b5a 100644 --- a/packages/embed/src/setups/loadIFRAME.spec.js +++ b/packages/embed/src/setups/loadIFRAME.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import loadIFRAME from './loadIFRAME'; diff --git a/packages/embed/src/setups/scorpio.spec.js b/packages/embed/src/setups/scorpio.spec.js index d422a0c4f3..79c742575d 100644 --- a/packages/embed/src/setups/scorpio.spec.js +++ b/packages/embed/src/setups/scorpio.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import setupScorpio from './scorpio'; diff --git a/packages/embed/src/setups/version3.spec.js b/packages/embed/src/setups/version3.spec.js index 9265402110..f174b48ea8 100644 --- a/packages/embed/src/setups/version3.spec.js +++ b/packages/embed/src/setups/version3.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import createElement from './createElement'; diff --git a/packages/embed/src/setups/version4.spec.js b/packages/embed/src/setups/version4.spec.js index f0cb6e0f81..dceb923bff 100644 --- a/packages/embed/src/setups/version4.spec.js +++ b/packages/embed/src/setups/version4.spec.js @@ -1,5 +1,5 @@ /** - * @jest-environment jsdom + * @jest-environment @happy-dom/jest-environment */ import createElement from './createElement'; diff --git a/packages/playground/package.json b/packages/playground/package.json index e27d268eab..1f9918451e 100644 --- a/packages/playground/package.json +++ b/packages/playground/package.json @@ -45,6 +45,6 @@ "postversion": "cat package.json | jq '.version as $V | (.localDependencies // {} | with_entries(select(.value == \"production\") | { key: .key, value: $V })) as $L1 | (.localDependencies // {} | with_entries(select(.value == \"development\") | { key: .key, value: $V })) as $L2 | ((.dependencies // {}) + $L1 | to_entries | sort_by(.key) | from_entries) as $D1 | ((.devDependencies // {}) + $L2 | to_entries | sort_by(.key) | from_entries) as $D2 | . + { dependencies: $D1, devDependencies: $D2 }' > package-temp.json && mv package-temp.json package.json", "preversion": "cat package.json | jq '(.localDependencies // {} | to_entries | map([if .value == \"production\" then \"dependencies\" else \"devDependencies\" end, .key])) as $P | delpaths($P)' > package-temp.json && mv package-temp.json package.json", "start": "react-scripts start", - "test": "react-scripts test --env=jsdom" + "test": "react-scripts test --env=@happy-dom/jest-environment" } } diff --git a/packages/test/page-object/src/globals/testHelpers/speech/float32ArraysToPcmWaveArrayBuffer.spec.js b/packages/test/page-object/src/globals/testHelpers/speech/float32ArraysToPcmWaveArrayBuffer.spec.js index e08847e27b..85da3120ad 100644 --- a/packages/test/page-object/src/globals/testHelpers/speech/float32ArraysToPcmWaveArrayBuffer.spec.js +++ b/packages/test/page-object/src/globals/testHelpers/speech/float32ArraysToPcmWaveArrayBuffer.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import float32ArraysToPcmWaveArrayBuffer from './float32ArraysToPcmWaveArrayBuffer'; diff --git a/packages/test/page-object/src/globals/testHelpers/speech/pcmWaveArrayBufferToRiffWaveArrayBuffer.spec.js b/packages/test/page-object/src/globals/testHelpers/speech/pcmWaveArrayBufferToRiffWaveArrayBuffer.spec.js index 773fdb0fd0..424e3cc609 100644 --- a/packages/test/page-object/src/globals/testHelpers/speech/pcmWaveArrayBufferToRiffWaveArrayBuffer.spec.js +++ b/packages/test/page-object/src/globals/testHelpers/speech/pcmWaveArrayBufferToRiffWaveArrayBuffer.spec.js @@ -1,4 +1,4 @@ -/** @jest-environment jsdom */ +/** @jest-environment @happy-dom/jest-environment */ import pcmWaveArrayBufferToRiffWaveArrayBuffer from './pcmWaveArrayBufferToRiffWaveArrayBuffer';