diff --git a/__mocks__/@juggle/resize-observer.ts b/__mocks__/@juggle/resize-observer.ts deleted file mode 100644 index 50199d144b..0000000000 --- a/__mocks__/@juggle/resize-observer.ts +++ /dev/null @@ -1,68 +0,0 @@ -/* eslint-env es6 */ -/* eslint-disable header/header */ -// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. -// SPDX-License-Identifier: Apache-2.0 - -const callbackField = Symbol(); - -const mockObserve = jest.fn(function (this: MockResizeObserver, el: HTMLElement) { - // JSDOM does not support CSS. This mock allows to set element sizes via inline styles - // and they will be passed into the handlers - const { width, height } = el.style; - const size = { inlineSize: parseInt(width) || 0, blockSize: parseInt(height) || 0 }; - const cb = this[callbackField]; - cb([{ borderBoxSize: [size], contentBoxSize: [size], target: el }], this); -}); -const mockUnobserve = jest.fn(); -const mockDisconnect = jest.fn(); - -class MockResizeObserver implements ResizeObserver { - [callbackField]: (...args: any[]) => void; - - constructor(cb: (...args: any[]) => void) { - this[callbackField] = cb; - } - - get observe() { - return mockObserve; - } - - get unobserve() { - return mockUnobserve; - } - - get disconnect() { - return mockDisconnect; - } -} - -class MockResizeObserverEntry implements ResizeObserverEntry { - readonly borderBoxSize: ReadonlyArray; - readonly contentBoxSize: ReadonlyArray; - readonly devicePixelContentBoxSize: ReadonlyArray; - readonly contentRect: DOMRectReadOnly; - readonly target: Element; - - constructor(target: Element) { - this.target = target; - const size = { inlineSize: 0, blockSize: 0 }; - this.borderBoxSize = [size]; - this.contentBoxSize = [size]; - this.devicePixelContentBoxSize = [size]; - // Create a simple DOMRectReadOnly mock for JSDOM compatibility - this.contentRect = { - x: 0, - y: 0, - width: 0, - height: 0, - top: 0, - right: 0, - bottom: 0, - left: 0, - toJSON: () => ({}), - } as DOMRectReadOnly; - } -} - -export { MockResizeObserver as ResizeObserver }; -export { MockResizeObserverEntry as ResizeObserverEntry }; diff --git a/build-tools/jest/setup.js b/build-tools/jest/setup.js index 0056854f65..19a1ca30b5 100644 --- a/build-tools/jest/setup.js +++ b/build-tools/jest/setup.js @@ -7,14 +7,4 @@ if (typeof window !== 'undefined') { require('@testing-library/jest-dom/extend-expect'); const { cleanup } = require('@testing-library/react'); afterEach(cleanup); - - // Mock ResizeObserver for JSDOM environment - global.ResizeObserver = class ResizeObserver { - constructor(callback) { - this.callback = callback; - } - observe() {} - unobserve() {} - disconnect() {} - }; } diff --git a/package-lock.json b/package-lock.json index f757bd382a..3cc511c708 100644 --- a/package-lock.json +++ b/package-lock.json @@ -2469,10 +2469,6 @@ "tslib": "2" } }, - "node_modules/@juggle/resize-observer": { - "version": "3.4.0", - "license": "Apache-2.0" - }, "node_modules/@keyv/serialize": { "version": "1.0.3", "dev": true, @@ -5159,14 +5155,6 @@ "dev": true, "license": "MIT" }, - "node_modules/at-least-node": { - "version": "1.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 4.0.0" - } - }, "node_modules/autoprefixer": { "version": "10.4.21", "dev": true, @@ -10239,26 +10227,6 @@ "dev": true, "license": "MIT" }, - "node_modules/handlebars": { - "version": "4.7.8", - "dev": true, - "license": "MIT", - "dependencies": { - "minimist": "^1.2.5", - "neo-async": "^2.6.2", - "source-map": "^0.6.1", - "wordwrap": "^1.0.0" - }, - "bin": { - "handlebars": "bin/handlebars" - }, - "engines": { - "node": ">=0.4.7" - }, - "optionalDependencies": { - "uglify-js": "^3.1.4" - } - }, "node_modules/has-bigints": { "version": "1.1.0", "dev": true, @@ -10356,14 +10324,6 @@ "tslib": "^2.0.3" } }, - "node_modules/highlight.js": { - "version": "10.7.3", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": "*" - } - }, "node_modules/history": { "version": "4.10.1", "dev": true, @@ -13827,11 +13787,6 @@ "yallist": "^3.0.2" } }, - "node_modules/lunr": { - "version": "2.3.9", - "dev": true, - "license": "MIT" - }, "node_modules/lz-string": { "version": "1.5.0", "dev": true, @@ -13894,17 +13849,6 @@ "node": ">=0.10.0" } }, - "node_modules/marked": { - "version": "1.2.9", - "dev": true, - "license": "MIT", - "bin": { - "marked": "bin/marked" - }, - "engines": { - "node": ">= 8.16.2" - } - }, "node_modules/math-intrinsics": { "version": "1.1.0", "dev": true, @@ -17658,70 +17602,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/shelljs": { - "version": "0.8.5", - "dev": true, - "license": "BSD-3-Clause", - "dependencies": { - "glob": "^7.0.0", - "interpret": "^1.0.0", - "rechoir": "^0.6.2" - }, - "bin": { - "shjs": "bin/shjs" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/shelljs/node_modules/glob": { - "version": "7.2.3", - "dev": true, - "license": "ISC", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/shelljs/node_modules/interpret": { - "version": "1.4.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/shelljs/node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/shelljs/node_modules/rechoir": { - "version": "0.6.2", - "dev": true, - "dependencies": { - "resolve": "^1.1.6" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/side-channel": { "version": "1.1.0", "dev": true, @@ -19672,77 +19552,6 @@ "dev": true, "license": "MIT" }, - "node_modules/typedoc": { - "version": "0.19.2", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "fs-extra": "^9.0.1", - "handlebars": "^4.7.6", - "highlight.js": "^10.2.0", - "lodash": "^4.17.20", - "lunr": "^2.3.9", - "marked": "^1.1.1", - "minimatch": "^3.0.0", - "progress": "^2.0.3", - "semver": "^7.3.2", - "shelljs": "^0.8.4", - "typedoc-default-themes": "^0.11.4" - }, - "bin": { - "typedoc": "bin/typedoc" - }, - "engines": { - "node": ">= 10.0.0" - }, - "peerDependencies": { - "typescript": "3.9.x || 4.0.x" - } - }, - "node_modules/typedoc-default-themes": { - "version": "0.11.4", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">= 8" - } - }, - "node_modules/typedoc/node_modules/fs-extra": { - "version": "9.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/typedoc/node_modules/minimatch": { - "version": "3.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, - "node_modules/typedoc/node_modules/semver": { - "version": "7.7.2", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/typescript": { "version": "4.9.5", "dev": true, @@ -19778,18 +19587,6 @@ "typescript": ">=4.8.4 <5.9.0" } }, - "node_modules/uglify-js": { - "version": "3.19.3", - "dev": true, - "license": "BSD-2-Clause", - "optional": true, - "bin": { - "uglifyjs": "bin/uglifyjs" - }, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/unbox-primitive": { "version": "1.1.0", "dev": true, @@ -20839,11 +20636,6 @@ "node": ">=0.10.0" } }, - "node_modules/wordwrap": { - "version": "1.0.0", - "dev": true, - "license": "MIT" - }, "node_modules/wrap-ansi": { "version": "9.0.0", "dev": true, diff --git a/package.json b/package.json index 51b8032459..3f706cd35c 100644 --- a/package.json +++ b/package.json @@ -166,7 +166,7 @@ { "path": "lib/components/internal/widget-exports.js", "brotli": false, - "limit": "891 kB", + "limit": "885 kB", "ignore": "react-dom" } ],