diff --git a/.storybook/time-machine.js b/.storybook/time-machine.js
index 48b04c45a59..7332f5e21a5 100644
--- a/.storybook/time-machine.js
+++ b/.storybook/time-machine.js
@@ -1,4 +1,4 @@
-import timemachine from 'timemachine';
+import timemachine from './timemachine';
/*
timemachine is a node module which overrides the system time for a repo. There are components on storybook with date and time which varies according to current date and time. This causes inconsistency across chromaticqa tests hence the use of this dependency.
*/
diff --git a/.storybook/timemachine.js b/.storybook/timemachine.js
new file mode 100644
index 00000000000..6654c604700
--- /dev/null
+++ b/.storybook/timemachine.js
@@ -0,0 +1,93 @@
+const OriginalDate = Date;
+
+const Timemachine = {
+ timestamp: 0,
+ tick: false,
+ tickStartDate: null,
+ keepTime: false,
+ difference: 0,
+
+ config({ dateString, timestamp, difference, keepTime, tick } = {}) {
+ this.timestamp = OriginalDate.parse(dateString) || timestamp || this.timestamp;
+
+ if (difference !== undefined) this.difference = difference;
+ if (keepTime !== undefined) this.keepTime = keepTime;
+
+ if (tick !== undefined) {
+ this.tick = tick;
+ if (this.tick) {
+ this.tickStartDate = new OriginalDate();
+ }
+ }
+
+ this._apply();
+ },
+
+ reset() {
+ this.timestamp = 0;
+ this.tick = false;
+ this.tickStartDate = null;
+ this.keepTime = false;
+ this.difference = 0;
+
+ globalThis.Date = OriginalDate;
+ },
+
+ _apply() {
+ const self = this;
+
+ // We use a standard function instead of a class here so it can be
+ // called without 'new', mimicking native Date behavior.
+ function MockDate(...args) {
+ let date;
+
+ if (self.keepTime) {
+ date = new OriginalDate();
+ } else if (args.length > 0) {
+ // ✨ The spread operator replaces the massive 7-level ES5 if/else block
+ date = new OriginalDate(...args);
+ } else {
+ date = new OriginalDate(self.timestamp);
+ }
+
+ if (args.length === 0) {
+ const difference = self._getDifference();
+ if (difference !== 0) {
+ date = new OriginalDate(date.getTime() + difference);
+ }
+ }
+
+ return date;
+ }
+
+ MockDate.prototype = OriginalDate.prototype;
+
+ MockDate.now = () => {
+ const timestamp = self.keepTime ? OriginalDate.now() : self.timestamp;
+ return timestamp + self._getDifference();
+ };
+
+ MockDate.OriginalDate = OriginalDate;
+ MockDate.UTC = OriginalDate.UTC;
+ MockDate.parse = OriginalDate.parse; // Added for completeness
+
+ // Safely override the global Date object in any environment
+ globalThis.Date = MockDate;
+ },
+
+ _getDifference() {
+ let difference = this.difference;
+
+ if (this.tick && this.tickStartDate) {
+ difference += OriginalDate.now() - this.tickStartDate.getTime();
+ }
+
+ return difference;
+ },
+};
+
+// Initialize
+Timemachine._apply();
+
+// Export as a standard ES Module
+export default Timemachine;
\ No newline at end of file
diff --git a/.yarn/cache/@adobe-css-tools-npm-4.4.4-a2900386bf-0abd471573.zip b/.yarn/cache/@adobe-css-tools-npm-4.4.4-a2900386bf-0abd471573.zip
deleted file mode 100644
index 10235a6d2f3..00000000000
Binary files a/.yarn/cache/@adobe-css-tools-npm-4.4.4-a2900386bf-0abd471573.zip and /dev/null differ
diff --git a/.yarn/cache/@adobe-css-tools-npm-4.5.0-a5b5be48dc-a332050614.zip b/.yarn/cache/@adobe-css-tools-npm-4.5.0-a5b5be48dc-a332050614.zip
new file mode 100644
index 00000000000..e1668c3c203
Binary files /dev/null and b/.yarn/cache/@adobe-css-tools-npm-4.5.0-a5b5be48dc-a332050614.zip differ
diff --git a/.yarn/cache/@asamuzakjp-css-color-npm-4.1.2-585025f523-0938a4598a.zip b/.yarn/cache/@asamuzakjp-css-color-npm-4.1.2-585025f523-0938a4598a.zip
deleted file mode 100644
index e53605ad551..00000000000
Binary files a/.yarn/cache/@asamuzakjp-css-color-npm-4.1.2-585025f523-0938a4598a.zip and /dev/null differ
diff --git a/.yarn/cache/@asamuzakjp-dom-selector-npm-6.8.1-2d4f0b3661-4d1c63bf09.zip b/.yarn/cache/@asamuzakjp-dom-selector-npm-6.8.1-2d4f0b3661-4d1c63bf09.zip
deleted file mode 100644
index 6321ddec8ca..00000000000
Binary files a/.yarn/cache/@asamuzakjp-dom-selector-npm-6.8.1-2d4f0b3661-4d1c63bf09.zip and /dev/null differ
diff --git a/.yarn/cache/@asamuzakjp-nwsapi-npm-2.3.9-9247524c07-95a6d1c102.zip b/.yarn/cache/@asamuzakjp-nwsapi-npm-2.3.9-9247524c07-95a6d1c102.zip
deleted file mode 100644
index 2edf8c3ce0b..00000000000
Binary files a/.yarn/cache/@asamuzakjp-nwsapi-npm-2.3.9-9247524c07-95a6d1c102.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-color-helpers-npm-6.0.2-d0267095a4-c47a943e94.zip b/.yarn/cache/@csstools-color-helpers-npm-6.0.2-d0267095a4-c47a943e94.zip
deleted file mode 100644
index 67b427b327c..00000000000
Binary files a/.yarn/cache/@csstools-color-helpers-npm-6.0.2-d0267095a4-c47a943e94.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-css-calc-npm-3.2.1-8e555a1a29-39042a9382.zip b/.yarn/cache/@csstools-css-calc-npm-3.2.1-8e555a1a29-39042a9382.zip
deleted file mode 100644
index 78bb12797a5..00000000000
Binary files a/.yarn/cache/@csstools-css-calc-npm-3.2.1-8e555a1a29-39042a9382.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-css-color-parser-npm-4.1.1-78778c10ec-05bcfb0b05.zip b/.yarn/cache/@csstools-css-color-parser-npm-4.1.1-78778c10ec-05bcfb0b05.zip
deleted file mode 100644
index 5e6f1ff0e79..00000000000
Binary files a/.yarn/cache/@csstools-css-color-parser-npm-4.1.1-78778c10ec-05bcfb0b05.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-css-parser-algorithms-npm-4.0.0-31b0851d2f-000f3ba55f.zip b/.yarn/cache/@csstools-css-parser-algorithms-npm-4.0.0-31b0851d2f-000f3ba55f.zip
deleted file mode 100644
index 630b4594380..00000000000
Binary files a/.yarn/cache/@csstools-css-parser-algorithms-npm-4.0.0-31b0851d2f-000f3ba55f.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-css-syntax-patches-for-csstree-npm-1.1.4-f286520ee4-f12bfd6273.zip b/.yarn/cache/@csstools-css-syntax-patches-for-csstree-npm-1.1.4-f286520ee4-f12bfd6273.zip
deleted file mode 100644
index 1f5a0547daa..00000000000
Binary files a/.yarn/cache/@csstools-css-syntax-patches-for-csstree-npm-1.1.4-f286520ee4-f12bfd6273.zip and /dev/null differ
diff --git a/.yarn/cache/@csstools-css-tokenizer-npm-4.0.0-ad04e84b3b-074ade1a7f.zip b/.yarn/cache/@csstools-css-tokenizer-npm-4.0.0-ad04e84b3b-074ade1a7f.zip
deleted file mode 100644
index e2650624e29..00000000000
Binary files a/.yarn/cache/@csstools-css-tokenizer-npm-4.0.0-ad04e84b3b-074ade1a7f.zip and /dev/null differ
diff --git a/.yarn/cache/@types-jsdom-npm-27.0.0-1d3e92b047-67dc284f74.zip b/.yarn/cache/@types-jsdom-npm-27.0.0-1d3e92b047-67dc284f74.zip
deleted file mode 100644
index 6d20f13ecbb..00000000000
Binary files a/.yarn/cache/@types-jsdom-npm-27.0.0-1d3e92b047-67dc284f74.zip and /dev/null differ
diff --git a/.yarn/cache/bidi-js-npm-1.0.3-0035393a88-c4341c7a98.zip b/.yarn/cache/bidi-js-npm-1.0.3-0035393a88-c4341c7a98.zip
deleted file mode 100644
index ea0e1c9a545..00000000000
Binary files a/.yarn/cache/bidi-js-npm-1.0.3-0035393a88-c4341c7a98.zip and /dev/null differ
diff --git a/.yarn/cache/chalk-npm-5.6.2-ecbd482482-1b2f48f6fb.zip b/.yarn/cache/chalk-npm-5.6.2-ecbd482482-1b2f48f6fb.zip
deleted file mode 100644
index d465237e225..00000000000
Binary files a/.yarn/cache/chalk-npm-5.6.2-ecbd482482-1b2f48f6fb.zip and /dev/null differ
diff --git a/.yarn/cache/cli-table-npm-0.3.11-f912789cff-1cf68fcc71.zip b/.yarn/cache/cli-table-npm-0.3.11-f912789cff-1cf68fcc71.zip
deleted file mode 100644
index 99ed548e010..00000000000
Binary files a/.yarn/cache/cli-table-npm-0.3.11-f912789cff-1cf68fcc71.zip and /dev/null differ
diff --git a/.yarn/cache/colors-npm-1.0.3-6c5d583ab3-8d81835f21.zip b/.yarn/cache/colors-npm-1.0.3-6c5d583ab3-8d81835f21.zip
deleted file mode 100644
index 73a272bf73a..00000000000
Binary files a/.yarn/cache/colors-npm-1.0.3-6c5d583ab3-8d81835f21.zip and /dev/null differ
diff --git a/.yarn/cache/css-tree-npm-3.2.1-f5a5ee91c7-9945b387bd.zip b/.yarn/cache/css-tree-npm-3.2.1-f5a5ee91c7-9945b387bd.zip
deleted file mode 100644
index 7f87f3b9590..00000000000
Binary files a/.yarn/cache/css-tree-npm-3.2.1-f5a5ee91c7-9945b387bd.zip and /dev/null differ
diff --git a/.yarn/cache/cssstyle-npm-5.3.7-ffdbe1b5e7-bd4469af81.zip b/.yarn/cache/cssstyle-npm-5.3.7-ffdbe1b5e7-bd4469af81.zip
deleted file mode 100644
index 8926d3dfdd6..00000000000
Binary files a/.yarn/cache/cssstyle-npm-5.3.7-ffdbe1b5e7-bd4469af81.zip and /dev/null differ
diff --git a/.yarn/cache/data-urls-npm-6.0.1-7bea6e7051-6ab8025df0.zip b/.yarn/cache/data-urls-npm-6.0.1-7bea6e7051-6ab8025df0.zip
deleted file mode 100644
index 4e0c248f00b..00000000000
Binary files a/.yarn/cache/data-urls-npm-6.0.1-7bea6e7051-6ab8025df0.zip and /dev/null differ
diff --git a/.yarn/cache/electron-to-chromium-npm-1.5.360-d6a5c979fe-df1e842670.zip b/.yarn/cache/electron-to-chromium-npm-1.5.361-59eee8ca64-1144dc40c7.zip
similarity index 91%
rename from .yarn/cache/electron-to-chromium-npm-1.5.360-d6a5c979fe-df1e842670.zip
rename to .yarn/cache/electron-to-chromium-npm-1.5.361-59eee8ca64-1144dc40c7.zip
index a54ebe3acc8..96c808f757f 100644
Binary files a/.yarn/cache/electron-to-chromium-npm-1.5.360-d6a5c979fe-df1e842670.zip and b/.yarn/cache/electron-to-chromium-npm-1.5.361-59eee8ca64-1144dc40c7.zip differ
diff --git a/.yarn/cache/jest-junit-npm-16.0.0-39a50dfe1a-2c33ee8bfd.zip b/.yarn/cache/jest-junit-npm-16.0.0-39a50dfe1a-2c33ee8bfd.zip
deleted file mode 100644
index 7e0b9c13fe1..00000000000
Binary files a/.yarn/cache/jest-junit-npm-16.0.0-39a50dfe1a-2c33ee8bfd.zip and /dev/null differ
diff --git a/.yarn/cache/jsdom-npm-27.0.0-2830e3e1f9-bd20b5560a.zip b/.yarn/cache/jsdom-npm-27.0.0-2830e3e1f9-bd20b5560a.zip
deleted file mode 100644
index 5afb61bf128..00000000000
Binary files a/.yarn/cache/jsdom-npm-27.0.0-2830e3e1f9-bd20b5560a.zip and /dev/null differ
diff --git a/.yarn/cache/lru-cache-npm-11.5.0-e0289ae8c3-c02af3d6e5.zip b/.yarn/cache/lru-cache-npm-11.5.0-e0289ae8c3-c02af3d6e5.zip
deleted file mode 100644
index fdf81bae8f4..00000000000
Binary files a/.yarn/cache/lru-cache-npm-11.5.0-e0289ae8c3-c02af3d6e5.zip and /dev/null differ
diff --git a/.yarn/cache/mdn-data-npm-2.27.1-f4f339e836-5046dc83a9.zip b/.yarn/cache/mdn-data-npm-2.27.1-f4f339e836-5046dc83a9.zip
deleted file mode 100644
index cc6f4f7e4e1..00000000000
Binary files a/.yarn/cache/mdn-data-npm-2.27.1-f4f339e836-5046dc83a9.zip and /dev/null differ
diff --git a/.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-d71b8dcd4b.zip b/.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-d71b8dcd4b.zip
deleted file mode 100644
index 5388c2be2da..00000000000
Binary files a/.yarn/cache/mkdirp-npm-1.0.4-37f6ef56b9-d71b8dcd4b.zip and /dev/null differ
diff --git a/.yarn/cache/node-releases-npm-2.0.45-57b660f694-2148f1ea00.zip b/.yarn/cache/node-releases-npm-2.0.45-57b660f694-2148f1ea00.zip
deleted file mode 100644
index a0151152117..00000000000
Binary files a/.yarn/cache/node-releases-npm-2.0.45-57b660f694-2148f1ea00.zip and /dev/null differ
diff --git a/.yarn/cache/node-releases-npm-2.0.46-b0f9c0af01-47a1fd18bc.zip b/.yarn/cache/node-releases-npm-2.0.46-b0f9c0af01-47a1fd18bc.zip
new file mode 100644
index 00000000000..e5dde6cbe54
Binary files /dev/null and b/.yarn/cache/node-releases-npm-2.0.46-b0f9c0af01-47a1fd18bc.zip differ
diff --git a/.yarn/cache/timemachine-npm-0.3.2-6af6996405-65a40a820c.zip b/.yarn/cache/timemachine-npm-0.3.2-6af6996405-65a40a820c.zip
deleted file mode 100644
index 7eadc2feabb..00000000000
Binary files a/.yarn/cache/timemachine-npm-0.3.2-6af6996405-65a40a820c.zip and /dev/null differ
diff --git a/.yarn/cache/tldts-npm-7.0.30-e815b3f846-93e43ee4c7.zip b/.yarn/cache/tldts-npm-7.0.30-e815b3f846-93e43ee4c7.zip
deleted file mode 100644
index f7655c60fb0..00000000000
Binary files a/.yarn/cache/tldts-npm-7.0.30-e815b3f846-93e43ee4c7.zip and /dev/null differ
diff --git a/.yarn/cache/tough-cookie-npm-6.0.1-7a26930694-915b1167e0.zip b/.yarn/cache/tough-cookie-npm-6.0.1-7a26930694-915b1167e0.zip
deleted file mode 100644
index f289cb9cc45..00000000000
Binary files a/.yarn/cache/tough-cookie-npm-6.0.1-7a26930694-915b1167e0.zip and /dev/null differ
diff --git a/.yarn/cache/tr46-npm-6.0.0-86cfd34257-e6d402eb2b.zip b/.yarn/cache/tr46-npm-6.0.0-86cfd34257-e6d402eb2b.zip
deleted file mode 100644
index 3ac6982df25..00000000000
Binary files a/.yarn/cache/tr46-npm-6.0.0-86cfd34257-e6d402eb2b.zip and /dev/null differ
diff --git a/.yarn/cache/webidl-conversions-npm-8.0.1-0a5c649859-0f7007311f.zip b/.yarn/cache/webidl-conversions-npm-8.0.1-0a5c649859-0f7007311f.zip
deleted file mode 100644
index 9bb1aa4b6a2..00000000000
Binary files a/.yarn/cache/webidl-conversions-npm-8.0.1-0a5c649859-0f7007311f.zip and /dev/null differ
diff --git a/.yarn/cache/whatwg-mimetype-npm-5.0.0-2b2a97ac39-a2d5da445f.zip b/.yarn/cache/whatwg-mimetype-npm-5.0.0-2b2a97ac39-a2d5da445f.zip
deleted file mode 100644
index bbf5811838a..00000000000
Binary files a/.yarn/cache/whatwg-mimetype-npm-5.0.0-2b2a97ac39-a2d5da445f.zip and /dev/null differ
diff --git a/.yarn/cache/whatwg-url-npm-15.1.0-0889b0b826-9ae5ce7006.zip b/.yarn/cache/whatwg-url-npm-15.1.0-0889b0b826-9ae5ce7006.zip
deleted file mode 100644
index cf2cb73b2fb..00000000000
Binary files a/.yarn/cache/whatwg-url-npm-15.1.0-0889b0b826-9ae5ce7006.zip and /dev/null differ
diff --git a/jest.config.js b/jest.config.js
index c329fc5a840..270eedd843b 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -65,16 +65,7 @@ const puppeteerTests = {
module.exports = {
projects: [unitTests, clientUnitTests, puppeteerTests],
reporters: [
- 'default',
- [
- 'jest-junit',
- {
- suiteName: 'Jest Tests',
- outputDirectory: 'reports/jest',
- uniqueOutputName: 'true',
- ancestorSeparator: ' › ',
- },
- ],
+ 'default'
],
fakeTimers: {
enableGlobally: true,
diff --git a/package.json b/package.json
index 24217ddcf31..40f32bab188 100644
--- a/package.json
+++ b/package.json
@@ -25,7 +25,7 @@
"lighthouse": "./scripts/lighthouseRun.sh",
"prepare": "husky install",
"storybook": "storybook dev -p 9001 -c .storybook",
- "test:local": "yarn test:lint && yarn test:dependencies && yarn test:unit && run-p --race start amp:validate",
+ "test:local": "yarn test:lint && yarn test:dependencies && yarn test:unit && amp:validate",
"test:dependencies": "node ./scripts/dependencyCheck",
"test:lint": "biome check --max-diagnostics 50000 --diagnostic-level error ./src ./ws-nextjs-app ./data ./cypress",
"test:lint:fix": "biome check --max-diagnostics 50000 --diagnostic-level error --write ./src ./ws-nextjs-app ./data ./cypress",
@@ -118,7 +118,6 @@
"@testing-library/user-event": "14.6.1",
"@types/jest": "30.0.0",
"@types/js-cookie": "^3.0.3",
- "@types/jsdom": "27.0.0",
"@types/ramda": "0.31.1",
"@types/react": "19.2.14",
"@types/react-dom": "19.2.3",
@@ -129,9 +128,7 @@
"babel-jest": "30.3.0",
"babel-loader": "10.1.1",
"babel-plugin-dynamic-import-node": "2.3.3",
- "chalk": "5.6.2",
"chromatic": "13.1.4",
- "cli-table": "0.3.11",
"colors": "^1.4.0",
"crypto": "1.0.1",
"cypress": "15.11.0",
@@ -144,18 +141,13 @@
"jest": "30.3.0",
"jest-environment-jsdom": "30.2.0",
"jest-expect-message": "1.1.3",
- "jest-junit": "16.0.0",
- "jsdom": "27.0.0",
"lighthouse": "13.0.1",
"minimist": "1.2.8",
- "mkdirp": "3.0.1",
"mocha-junit-reporter": "2.2.1",
- "npm-run-all2": "8.0.4",
"puppeteer": "24.22.3",
"retry": "0.13.1",
"storybook": "10.3.6",
"supertest": "7.2.2",
- "timemachine": "0.3.2",
"ts-jest": "29.4.9",
"typescript": "5.9.3",
"webpack": "5.106.2"
diff --git a/scripts/ampHtmlValidator/checkManifest/index.js b/scripts/ampHtmlValidator/checkManifest/index.js
index c20b9676d4e..bfd98b9c943 100644
--- a/scripts/ampHtmlValidator/checkManifest/index.js
+++ b/scripts/ampHtmlValidator/checkManifest/index.js
@@ -1,16 +1,19 @@
// biome-ignore-all lint/suspicious/noConsole: we want this
-import { JSDOM } from 'jsdom';
const getManifestFile = async url => {
const response = await fetch(url);
-
const html = await response.text();
- const {
- window: { document },
- } = new JSDOM(html);
+ // 1. Isolate the tag that has rel="manifest"
+ const linkTagMatch = html.match(/]*rel=["']manifest["'][^>]*>/i);
+
+ if (linkTagMatch) {
+ // 2. Extract the href attribute from that specific tag
+ const hrefMatch = linkTagMatch[0].match(/href=["']([^"']+)["']/i);
+ return hrefMatch ? hrefMatch[1] : null;
+ }
- return document.querySelector('link[rel="manifest"]').getAttribute('href');
+ return null;
};
export default async () => {
@@ -57,4 +60,4 @@ export default async () => {
});
process.exitCode = 1;
}
-};
+};
\ No newline at end of file
diff --git a/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.js b/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.js
index 7f6cb16ccb1..de5da3f3bd8 100755
--- a/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.js
+++ b/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.js
@@ -1,14 +1,13 @@
// biome-ignore-all lint/style/noCommonJs: we want this
// biome-ignore-all lint/style/useNodejsImportProtocol: we want this
const fs = require('fs');
-const mkdirp = require('mkdirp');
const path = require('path');
const writeToNestedFile = (filePath, contents) => {
const fullFilePath = path.join(__dirname, filePath);
const folder = path.dirname(fullFilePath);
- mkdirp.sync(folder);
+ if (!fs.existsSync(folder)) fs.mkdirSync(folder, { recursive: true });
fs.writeFileSync(fullFilePath, contents);
diff --git a/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.test.js b/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.test.js
index 630bf135b0f..8c9223d656d 100644
--- a/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.test.js
+++ b/src/app/legacy/psammead/moment-timezone-include/src/writeToNestedFile/index.test.js
@@ -2,16 +2,12 @@
import fs from 'fs';
import path from 'path';
-import mkdirp from 'mkdirp';
-
import writeToNestedFile from '.';
jest.mock('fs', () => ({
writeFileSync: jest.fn(),
-}));
-
-jest.mock('mkdirp', () => ({
- sync: jest.fn(),
+ existsSync: jest.fn(),
+ mkdirSync: jest.fn(),
}));
jest.mock('../writeNewTimezoneData', () => jest.fn());
@@ -20,9 +16,6 @@ describe('writeToNestedFile', () => {
it('Should create directory and write file correctly', () => {
writeToNestedFile('path/to/a/place', 'filecontent');
- expect(mkdirp.sync).toHaveBeenCalledTimes(1);
- expect(mkdirp.sync).toHaveBeenCalledWith(path.join(__dirname, 'path/to/a'));
-
expect(fs.writeFileSync).toHaveBeenCalledTimes(1);
expect(fs.writeFileSync).toHaveBeenCalledWith(
path.join(__dirname, 'path/to/a/place'),
diff --git a/src/app/legacy/psammead/moment-timezone-include/tz.zip b/src/app/legacy/psammead/moment-timezone-include/tz.zip
new file mode 100644
index 00000000000..dd0feaf3f0f
Binary files /dev/null and b/src/app/legacy/psammead/moment-timezone-include/tz.zip differ
diff --git a/ws-nextjs-app/package.json b/ws-nextjs-app/package.json
index da84ac81629..5862b8d2e15 100644
--- a/ws-nextjs-app/package.json
+++ b/ws-nextjs-app/package.json
@@ -46,7 +46,6 @@
"cypress-multi-reporters": "2.0.5",
"cypress-terminal-report": "7.2.1",
"jest": "30.3.0",
- "jest-environment-jsdom": "30.2.0",
"mocha-junit-reporter": "2.2.1",
"next-test-api-route-handler": "5.0.5",
"npm-run-all2": "8.0.4",
diff --git a/yarn.lock b/yarn.lock
index 33006701bbb..8ffc178d7f1 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -6,9 +6,9 @@ __metadata:
cacheKey: 10
"@adobe/css-tools@npm:^4.4.0":
- version: 4.4.4
- resolution: "@adobe/css-tools@npm:4.4.4"
- checksum: 10/0abd4715737877e5aa5d730d6ec2cffae2131102ddc8310ac5ba3f457ffb2ef453324dbb5b927e3cbc3f81bdd29ce485754014c6e64f4577a49540c76e26ac6b
+ version: 4.5.0
+ resolution: "@adobe/css-tools@npm:4.5.0"
+ checksum: 10/a332050614f7e08928aba518ac65534621672590bdfc2079886e9ead90da78c7fe2498152c5083318e93ee909260ec13854c21ac77c24053f7d30c5d2d2adcc1
languageName: node
linkType: hard
@@ -25,39 +25,6 @@ __metadata:
languageName: node
linkType: hard
-"@asamuzakjp/css-color@npm:^4.1.1":
- version: 4.1.2
- resolution: "@asamuzakjp/css-color@npm:4.1.2"
- dependencies:
- "@csstools/css-calc": "npm:^3.0.0"
- "@csstools/css-color-parser": "npm:^4.0.1"
- "@csstools/css-parser-algorithms": "npm:^4.0.0"
- "@csstools/css-tokenizer": "npm:^4.0.0"
- lru-cache: "npm:^11.2.5"
- checksum: 10/0938a4598a1d06d4db53b8aff406815f77047419eccb78f484dd26d13bd6cafaff247bc42f5493f2cb585477f461a38fba0db3c7a407ba9f281d27bc0d8f1983
- languageName: node
- linkType: hard
-
-"@asamuzakjp/dom-selector@npm:^6.5.4":
- version: 6.8.1
- resolution: "@asamuzakjp/dom-selector@npm:6.8.1"
- dependencies:
- "@asamuzakjp/nwsapi": "npm:^2.3.9"
- bidi-js: "npm:^1.0.3"
- css-tree: "npm:^3.1.0"
- is-potential-custom-element-name: "npm:^1.0.1"
- lru-cache: "npm:^11.2.6"
- checksum: 10/4d1c63bf094aa35c9c60ad8d2faf45ee4f5f8d1520fbb158e2552c456f8264029932ff4464ea18ea760a89b3075b4bf70e43b2086191d256f35eff46fde3eb24
- languageName: node
- linkType: hard
-
-"@asamuzakjp/nwsapi@npm:^2.3.9":
- version: 2.3.9
- resolution: "@asamuzakjp/nwsapi@npm:2.3.9"
- checksum: 10/95a6d1c102e1117fe818da087fcc5b914d23e0699855991bae50b891435dd1945ad7d384198f8bcf616207fd85b7ec32e3db6b96e9309d84c6903b8dc4151e34
- languageName: node
- linkType: hard
-
"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.27.1, @babel/code-frame@npm:^7.28.6, @babel/code-frame@npm:^7.29.0":
version: 7.29.0
resolution: "@babel/code-frame@npm:7.29.0"
@@ -1662,13 +1629,6 @@ __metadata:
languageName: node
linkType: hard
-"@csstools/color-helpers@npm:^6.0.2":
- version: 6.0.2
- resolution: "@csstools/color-helpers@npm:6.0.2"
- checksum: 10/c47a943e947d76980d0e1071027cb70481ac481968e744a05a7aea7ede9886f10d062b2e3691e03c115d97b053d4140c1ca28e24c1ffe2d21693e126de6522e9
- languageName: node
- linkType: hard
-
"@csstools/css-calc@npm:^2.1.3, @csstools/css-calc@npm:^2.1.4":
version: 2.1.4
resolution: "@csstools/css-calc@npm:2.1.4"
@@ -1679,16 +1639,6 @@ __metadata:
languageName: node
linkType: hard
-"@csstools/css-calc@npm:^3.0.0, @csstools/css-calc@npm:^3.2.1":
- version: 3.2.1
- resolution: "@csstools/css-calc@npm:3.2.1"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^4.0.0
- "@csstools/css-tokenizer": ^4.0.0
- checksum: 10/39042a9382cbd7c4fa241c1a6c10d64c23fa7653970fc11df532e9bc42a366a8b50c3ac3036bd5f2a77b94144e7f804f19d2b52800ad2f48bd9a3840377165d8
- languageName: node
- linkType: hard
-
"@csstools/css-color-parser@npm:^3.0.9":
version: 3.1.0
resolution: "@csstools/css-color-parser@npm:3.1.0"
@@ -1702,19 +1652,6 @@ __metadata:
languageName: node
linkType: hard
-"@csstools/css-color-parser@npm:^4.0.1":
- version: 4.1.1
- resolution: "@csstools/css-color-parser@npm:4.1.1"
- dependencies:
- "@csstools/color-helpers": "npm:^6.0.2"
- "@csstools/css-calc": "npm:^3.2.1"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^4.0.0
- "@csstools/css-tokenizer": ^4.0.0
- checksum: 10/05bcfb0b05070387dbaf3b498091998fc23b4442c04e5469ce7b1af600113032c43946b07d4c6ae04f2e4c2c4d49ecfca8b2a42fe9d53d7cec4bf2642b2a33e8
- languageName: node
- linkType: hard
-
"@csstools/css-parser-algorithms@npm:^3.0.4":
version: 3.0.5
resolution: "@csstools/css-parser-algorithms@npm:3.0.5"
@@ -1724,27 +1661,6 @@ __metadata:
languageName: node
linkType: hard
-"@csstools/css-parser-algorithms@npm:^4.0.0":
- version: 4.0.0
- resolution: "@csstools/css-parser-algorithms@npm:4.0.0"
- peerDependencies:
- "@csstools/css-tokenizer": ^4.0.0
- checksum: 10/000f3ba55f440d9fbece50714e88f9d4479e2bde9e0568333492663f2c6034dc31d0b9ef5d66d196c76be58eea145ca6920aa8bdfdcc6361894806c21b5402d0
- languageName: node
- linkType: hard
-
-"@csstools/css-syntax-patches-for-csstree@npm:^1.0.21":
- version: 1.1.4
- resolution: "@csstools/css-syntax-patches-for-csstree@npm:1.1.4"
- peerDependencies:
- css-tree: ^3.2.1
- peerDependenciesMeta:
- css-tree:
- optional: true
- checksum: 10/f12bfd62737b49e81d12e83f325c58f9c1861739056c0467288890a2b195c2d800c14ee16b09f4e957d2c9df6da371f225b6b6e640fb5fc25fc68bd3a8ced789
- languageName: node
- linkType: hard
-
"@csstools/css-tokenizer@npm:^3.0.3":
version: 3.0.4
resolution: "@csstools/css-tokenizer@npm:3.0.4"
@@ -1752,13 +1668,6 @@ __metadata:
languageName: node
linkType: hard
-"@csstools/css-tokenizer@npm:^4.0.0":
- version: 4.0.0
- resolution: "@csstools/css-tokenizer@npm:4.0.0"
- checksum: 10/074ade1a7fc3410b813c8982cf07a56814a55af509c533c2dc80d5689f34d2ba38219f8fa78fa36ea2adc6c5db506ea3c3a667388dda1b59b1281fdd2a2d1e28
- languageName: node
- linkType: hard
-
"@cypress/request@npm:^3.0.10":
version: 3.0.10
resolution: "@cypress/request@npm:3.0.10"
@@ -4583,17 +4492,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/jsdom@npm:27.0.0":
- version: 27.0.0
- resolution: "@types/jsdom@npm:27.0.0"
- dependencies:
- "@types/node": "npm:*"
- "@types/tough-cookie": "npm:*"
- parse5: "npm:^7.0.0"
- checksum: 10/67dc284f74960e1ba0787599dfb0a46ca94ea4443242d3fc1e513b0c5313d2d4136176764acce2b03b8c66dec942ff4ab15322208ccc17b7c1dccc8cd01d4cc2
- languageName: node
- linkType: hard
-
"@types/jsdom@npm:^21.1.7":
version: 21.1.7
resolution: "@types/jsdom@npm:21.1.7"
@@ -6018,15 +5916,6 @@ __metadata:
languageName: node
linkType: hard
-"bidi-js@npm:^1.0.3":
- version: 1.0.3
- resolution: "bidi-js@npm:1.0.3"
- dependencies:
- require-from-string: "npm:^2.0.2"
- checksum: 10/c4341c7a98797efe3d186cd99d6f97e9030a4f959794ca200ef2ec0a678483a916335bba6c2c0608a21d04a221288a31c9fd0faa0cd9b3903b93594b42466a6a
- languageName: node
- linkType: hard
-
"blob-util@npm:^2.0.2":
version: 2.0.2
resolution: "blob-util@npm:2.0.2"
@@ -6267,13 +6156,6 @@ __metadata:
languageName: node
linkType: hard
-"chalk@npm:5.6.2":
- version: 5.6.2
- resolution: "chalk@npm:5.6.2"
- checksum: 10/1b2f48f6fba1370670d5610f9cd54c391d6ede28f4b7062dd38244ea5768777af72e5be6b74fb6c6d54cb84c4a2dff3f3afa9b7cb5948f7f022cfd3d087989e0
- languageName: node
- linkType: hard
-
"chalk@npm:^4.0.0, chalk@npm:^4.1.0, chalk@npm:^4.1.2":
version: 4.1.2
resolution: "chalk@npm:4.1.2"
@@ -6444,15 +6326,6 @@ __metadata:
languageName: node
linkType: hard
-"cli-table@npm:0.3.11":
- version: 0.3.11
- resolution: "cli-table@npm:0.3.11"
- dependencies:
- colors: "npm:1.0.3"
- checksum: 10/1cf68fcc717cc7fa4a5fdac6722bcd756883201068a65a8a4550b800e9e6ae107c5b350821128d604cb3eb6a977619bc673e616ff402c3ddc179deb4d00626f7
- languageName: node
- linkType: hard
-
"cli-truncate@npm:^2.1.0":
version: 2.1.0
resolution: "cli-truncate@npm:2.1.0"
@@ -6575,13 +6448,6 @@ __metadata:
languageName: node
linkType: hard
-"colors@npm:1.0.3":
- version: 1.0.3
- resolution: "colors@npm:1.0.3"
- checksum: 10/8d81835f217ffca6de6665c8dd9ed132c562d108d4ba842d638c7cb5f8127cff47cb1b54c6bbea49e22eaa7b56caee6b85278dde9c2564f8a0eaef161e028ae0
- languageName: node
- linkType: hard
-
"colors@npm:1.4.0, colors@npm:^1.4.0":
version: 1.4.0
resolution: "colors@npm:1.4.0"
@@ -6880,16 +6746,6 @@ __metadata:
languageName: node
linkType: hard
-"css-tree@npm:^3.1.0":
- version: 3.2.1
- resolution: "css-tree@npm:3.2.1"
- dependencies:
- mdn-data: "npm:2.27.1"
- source-map-js: "npm:^1.2.1"
- checksum: 10/9945b387bdec756738c34d64b8287f05ca6645f51d1c8abaaa5822ec3e74533604103aaad164b8100afd8495e92120be7c1c6afbe5be89f867acc5b456ddd79c
- languageName: node
- linkType: hard
-
"css-what@npm:^6.0.1":
version: 6.2.2
resolution: "css-what@npm:6.2.2"
@@ -6923,18 +6779,6 @@ __metadata:
languageName: node
linkType: hard
-"cssstyle@npm:^5.3.0":
- version: 5.3.7
- resolution: "cssstyle@npm:5.3.7"
- dependencies:
- "@asamuzakjp/css-color": "npm:^4.1.1"
- "@csstools/css-syntax-patches-for-csstree": "npm:^1.0.21"
- css-tree: "npm:^3.1.0"
- lru-cache: "npm:^11.2.4"
- checksum: 10/bd4469af81f068537dbbce53c4247f192e91202c19abc066b77b4ee7bbf256526bc82471198bec762ac70ea53ce17b8044aec69fd7982d2d0fd9fd7780329e2d
- languageName: node
- linkType: hard
-
"csstype@npm:^3.0.2, csstype@npm:^3.2.2":
version: 3.2.3
resolution: "csstype@npm:3.2.3"
@@ -7057,16 +6901,6 @@ __metadata:
languageName: node
linkType: hard
-"data-urls@npm:^6.0.0":
- version: 6.0.1
- resolution: "data-urls@npm:6.0.1"
- dependencies:
- whatwg-mimetype: "npm:^5.0.0"
- whatwg-url: "npm:^15.1.0"
- checksum: 10/6ab8025df0ee497bfb12241f815fd3f3438dd34cd851c0801c16aa4e1e70f4f68d6334e3176ca340fe4084622b8a299a98b3d3059bbca671f1eaf8bae1088ec2
- languageName: node
- linkType: hard
-
"dayjs@npm:^1.10.4":
version: 1.11.20
resolution: "dayjs@npm:1.11.20"
@@ -7455,9 +7289,9 @@ __metadata:
linkType: hard
"electron-to-chromium@npm:^1.5.328":
- version: 1.5.360
- resolution: "electron-to-chromium@npm:1.5.360"
- checksum: 10/df1e8426709e741363c707f646918f4f45b8ae571d4ee44169cab348b7aba158baac8e09b361c28d8330445bb0c67855a3108d17c85f3b19da0c901f70f78aac
+ version: 1.5.361
+ resolution: "electron-to-chromium@npm:1.5.361"
+ checksum: 10/1144dc40c7e0588c179fbc64ac97215a9af897f95137191a857961f2ea889126a8ccc412bab35990906cf65645251b45245403f91a7cd293a970c22cbb58a905
languageName: node
linkType: hard
@@ -9402,18 +9236,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-junit@npm:16.0.0":
- version: 16.0.0
- resolution: "jest-junit@npm:16.0.0"
- dependencies:
- mkdirp: "npm:^1.0.4"
- strip-ansi: "npm:^6.0.1"
- uuid: "npm:^8.3.2"
- xml: "npm:^1.0.1"
- checksum: 10/2c33ee8bfd0c83b9aa1f8ba5905084890d5f519d294ccc2829d778ac860d5adffffec75d930f44f1d498aa8370c783e0aa6a632d947fb7e81205f0e7b926669d
- languageName: node
- linkType: hard
-
"jest-leak-detector@npm:30.3.0":
version: 30.3.0
resolution: "jest-leak-detector@npm:30.3.0"
@@ -9925,39 +9747,6 @@ __metadata:
languageName: node
linkType: hard
-"jsdom@npm:27.0.0":
- version: 27.0.0
- resolution: "jsdom@npm:27.0.0"
- dependencies:
- "@asamuzakjp/dom-selector": "npm:^6.5.4"
- cssstyle: "npm:^5.3.0"
- data-urls: "npm:^6.0.0"
- decimal.js: "npm:^10.5.0"
- html-encoding-sniffer: "npm:^4.0.0"
- http-proxy-agent: "npm:^7.0.2"
- https-proxy-agent: "npm:^7.0.6"
- is-potential-custom-element-name: "npm:^1.0.1"
- parse5: "npm:^7.3.0"
- rrweb-cssom: "npm:^0.8.0"
- saxes: "npm:^6.0.0"
- symbol-tree: "npm:^3.2.4"
- tough-cookie: "npm:^6.0.0"
- w3c-xmlserializer: "npm:^5.0.0"
- webidl-conversions: "npm:^8.0.0"
- whatwg-encoding: "npm:^3.1.1"
- whatwg-mimetype: "npm:^4.0.0"
- whatwg-url: "npm:^15.0.0"
- ws: "npm:^8.18.2"
- xml-name-validator: "npm:^5.0.0"
- peerDependencies:
- canvas: ^3.0.0
- peerDependenciesMeta:
- canvas:
- optional: true
- checksum: 10/bd20b5560a2d2528d2494500f1bb2f58c4c674f4a6deb164a9693c6a43f0a0ae0eec44ff56e6bf065022c76fb07f7a2e197e81c964fd60b4d0ce160beb4d5007
- languageName: node
- linkType: hard
-
"jsdom@npm:^26.1.0":
version: 26.1.0
resolution: "jsdom@npm:26.1.0"
@@ -10356,13 +10145,6 @@ __metadata:
languageName: node
linkType: hard
-"lru-cache@npm:^11.2.4, lru-cache@npm:^11.2.5, lru-cache@npm:^11.2.6":
- version: 11.5.0
- resolution: "lru-cache@npm:11.5.0"
- checksum: 10/c02af3d6e5e5baff9b52ed1a0850dc97e21a2554308c0feab5663873f9b395ea66b2767ead6e347542c08ab89b04aadb92884eddbcd14d975505687530df99e8
- languageName: node
- linkType: hard
-
"lru-cache@npm:^5.1.1":
version: 5.1.1
resolution: "lru-cache@npm:5.1.1"
@@ -10466,13 +10248,6 @@ __metadata:
languageName: node
linkType: hard
-"mdn-data@npm:2.27.1":
- version: 2.27.1
- resolution: "mdn-data@npm:2.27.1"
- checksum: 10/5046dc83a961b8ea82a5d6d8331d07df6b15faec61519ce2f83e49766702358e7e6af96413be977ff89080534be6762c1d5963b5dd1180c208a47c0a663226b2
- languageName: node
- linkType: hard
-
"memfs@npm:^3.4.1, memfs@npm:^3.4.12":
version: 3.5.3
resolution: "memfs@npm:3.5.3"
@@ -10623,7 +10398,7 @@ __metadata:
languageName: node
linkType: hard
-"mkdirp@npm:3.0.1, mkdirp@npm:^3.0.0":
+"mkdirp@npm:^3.0.0":
version: 3.0.1
resolution: "mkdirp@npm:3.0.1"
bin:
@@ -10632,15 +10407,6 @@ __metadata:
languageName: node
linkType: hard
-"mkdirp@npm:^1.0.4":
- version: 1.0.4
- resolution: "mkdirp@npm:1.0.4"
- bin:
- mkdirp: bin/cmd.js
- checksum: 10/d71b8dcd4b5af2fe13ecf3bd24070263489404fe216488c5ba7e38ece1f54daf219e72a833a3a2dc404331e870e9f44963a33399589490956bff003a3404d3b2
- languageName: node
- linkType: hard
-
"mocha-junit-reporter@npm:2.2.1":
version: 2.2.1
resolution: "mocha-junit-reporter@npm:2.2.1"
@@ -10882,9 +10648,9 @@ __metadata:
linkType: hard
"node-releases@npm:^2.0.36":
- version: 2.0.45
- resolution: "node-releases@npm:2.0.45"
- checksum: 10/2148f1ea008c0559581468b44ca34a880004ef2a6e40c5753eb85f73b249ca3b0165c71c54df410642b080f09f9b42d0f9aef340448c787b540282cc2df1ad41
+ version: 2.0.46
+ resolution: "node-releases@npm:2.0.46"
+ checksum: 10/47a1fd18bc8330282c3e628ea38629dd137e9f1f16d7b7d3bb033ea24f5c3f917d78e25fbc90bb004d1971c624b1cc3d48023a20d7c214ea23326a75aebb908f
languageName: node
linkType: hard
@@ -11197,7 +10963,7 @@ __metadata:
languageName: node
linkType: hard
-"parse5@npm:^7.0.0, parse5@npm:^7.2.1, parse5@npm:^7.3.0":
+"parse5@npm:^7.0.0, parse5@npm:^7.2.1":
version: 7.3.0
resolution: "parse5@npm:7.3.0"
dependencies:
@@ -12527,7 +12293,6 @@ __metadata:
cypress-multi-reporters: "npm:2.0.5"
cypress-terminal-report: "npm:7.2.1"
jest: "npm:30.3.0"
- jest-environment-jsdom: "npm:30.2.0"
mocha-junit-reporter: "npm:2.2.1"
next: "npm:16.2.6"
next-test-api-route-handler: "npm:5.0.5"
@@ -12576,7 +12341,6 @@ __metadata:
"@testing-library/user-event": "npm:14.6.1"
"@types/jest": "npm:30.0.0"
"@types/js-cookie": "npm:^3.0.3"
- "@types/jsdom": "npm:27.0.0"
"@types/ramda": "npm:0.31.1"
"@types/react": "npm:19.2.14"
"@types/react-dom": "npm:19.2.3"
@@ -12588,9 +12352,7 @@ __metadata:
babel-jest: "npm:30.3.0"
babel-loader: "npm:10.1.1"
babel-plugin-dynamic-import-node: "npm:2.3.3"
- chalk: "npm:5.6.2"
chromatic: "npm:13.1.4"
- cli-table: "npm:0.3.11"
colors: "npm:^1.4.0"
crypto: "npm:1.0.1"
cypress: "npm:15.11.0"
@@ -12605,17 +12367,13 @@ __metadata:
jest: "npm:30.3.0"
jest-environment-jsdom: "npm:30.2.0"
jest-expect-message: "npm:1.1.3"
- jest-junit: "npm:16.0.0"
js-cookie: "npm:3.0.7"
- jsdom: "npm:27.0.0"
lighthouse: "npm:13.0.1"
lru-cache: "npm:11.2.7"
minimist: "npm:1.2.8"
- mkdirp: "npm:3.0.1"
mocha-junit-reporter: "npm:2.2.1"
moment: "npm:2.30.1"
moment-timezone: "npm:0.6.0"
- npm-run-all2: "npm:8.0.4"
puppeteer: "npm:24.22.3"
ramda: "npm:0.32.0"
react: "npm:19.2.6"
@@ -12625,7 +12383,6 @@ __metadata:
retry: "npm:0.13.1"
storybook: "npm:10.3.6"
supertest: "npm:7.2.2"
- timemachine: "npm:0.3.2"
ts-jest: "npm:29.4.9"
typescript: "npm:5.9.3"
undici: "npm:8.1.0"
@@ -13305,13 +13062,6 @@ __metadata:
languageName: node
linkType: hard
-"timemachine@npm:0.3.2":
- version: 0.3.2
- resolution: "timemachine@npm:0.3.2"
- checksum: 10/65a40a820c1b79688621b39be962896a969e8ce1755897b097b6b0d6986f6c2431535036f094ff624bec1750c2d2335a02fd664165a18d8d364ac1dd6c0f0c50
- languageName: node
- linkType: hard
-
"tiny-invariant@npm:^1.3.1, tiny-invariant@npm:^1.3.3":
version: 1.3.3
resolution: "tiny-invariant@npm:1.3.3"
@@ -13377,17 +13127,6 @@ __metadata:
languageName: node
linkType: hard
-"tldts@npm:^7.0.5":
- version: 7.0.30
- resolution: "tldts@npm:7.0.30"
- dependencies:
- tldts-core: "npm:^7.0.30"
- bin:
- tldts: bin/cli.js
- checksum: 10/93e43ee4c77c408af892387e3be7501d5c1a536a3162c848ef7d031dc257a501f37e88fea0766c52dea1df5f00ad8e28e1d228281ca4129a9f15816f2bc9bc68
- languageName: node
- linkType: hard
-
"tmp@npm:~0.2.4":
version: 0.2.5
resolution: "tmp@npm:0.2.5"
@@ -13420,15 +13159,6 @@ __metadata:
languageName: node
linkType: hard
-"tough-cookie@npm:^6.0.0":
- version: 6.0.1
- resolution: "tough-cookie@npm:6.0.1"
- dependencies:
- tldts: "npm:^7.0.5"
- checksum: 10/915b1167e0630598eb0644e8bc089ddc28a23bf05f3c329a4a0d879c6b9801a2603be65acb06b5d2dd0f589cabb06bb638837f8222dd82a7023655f07269451a
- languageName: node
- linkType: hard
-
"tr46@npm:^5.1.0":
version: 5.1.1
resolution: "tr46@npm:5.1.1"
@@ -13438,15 +13168,6 @@ __metadata:
languageName: node
linkType: hard
-"tr46@npm:^6.0.0":
- version: 6.0.0
- resolution: "tr46@npm:6.0.0"
- dependencies:
- punycode: "npm:^2.3.1"
- checksum: 10/e6d402eb2b780a40042f327f77b4ae316da1d2b18a29c16e48c239f5267c6005bbf780f854179cfae62b02dfaa70b0e9aad8f0078ccc4225f5b3b3b131928e8f
- languageName: node
- linkType: hard
-
"tree-kill@npm:1.2.2":
version: 1.2.2
resolution: "tree-kill@npm:1.2.2"
@@ -13997,13 +13718,6 @@ __metadata:
languageName: node
linkType: hard
-"webidl-conversions@npm:^8.0.0":
- version: 8.0.1
- resolution: "webidl-conversions@npm:8.0.1"
- checksum: 10/0f7007311f1fc257a8e406dd236f13b61fb57cf0fddb476aec33457d2d0add2d012d6df0eeb00934399238e3f3b9dad30f59dc6ac83024ae0ebd5a518bf365e8
- languageName: node
- linkType: hard
-
"webpack-dev-middleware@npm:^6.1.2":
version: 6.1.3
resolution: "webpack-dev-middleware@npm:6.1.3"
@@ -14143,13 +13857,6 @@ __metadata:
languageName: node
linkType: hard
-"whatwg-mimetype@npm:^5.0.0":
- version: 5.0.0
- resolution: "whatwg-mimetype@npm:5.0.0"
- checksum: 10/a2d5da445f671ed34010b45283ffb9ba3c68c695b8ec91f7400cfc9149c35eb2bc47bd2c39bbe8e026786b955ace03402ba2e5cfde4955434a3ec3c511a85d0a
- languageName: node
- linkType: hard
-
"whatwg-url@npm:^14.0.0, whatwg-url@npm:^14.1.1":
version: 14.2.0
resolution: "whatwg-url@npm:14.2.0"
@@ -14160,16 +13867,6 @@ __metadata:
languageName: node
linkType: hard
-"whatwg-url@npm:^15.0.0, whatwg-url@npm:^15.1.0":
- version: 15.1.0
- resolution: "whatwg-url@npm:15.1.0"
- dependencies:
- tr46: "npm:^6.0.0"
- webidl-conversions: "npm:^8.0.0"
- checksum: 10/9ae5ce70060f2a9ea73799062af6e796ec2477f44bf1a886953b405700e3ab11d15aa0fe7088c4215f839e56a845d5d1c44584ed292a832837a8c8549c566886
- languageName: node
- linkType: hard
-
"when-exit@npm:^2.1.4":
version: 2.1.5
resolution: "when-exit@npm:2.1.5"
@@ -14353,7 +14050,7 @@ __metadata:
languageName: node
linkType: hard
-"ws@npm:^8.18.0, ws@npm:^8.18.2, ws@npm:^8.18.3, ws@npm:^8.20.0":
+"ws@npm:^8.18.0, ws@npm:^8.18.3, ws@npm:^8.20.0":
version: 8.20.1
resolution: "ws@npm:8.20.1"
peerDependencies: