testplane 9.0.0-rc.4 → 9.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/package.json +15 -15
- package/build/src/base-testplane.d.ts +6 -2
- package/build/src/base-testplane.js +18 -5
- package/build/src/base-testplane.js.map +1 -1
- package/build/src/browser/browser.d.ts +2 -0
- package/build/src/browser/browser.js +8 -4
- package/build/src/browser/browser.js.map +1 -1
- package/build/src/browser/calibrator.js +19 -17
- package/build/src/browser/calibrator.js.map +1 -1
- package/build/src/browser/camera/index.d.ts +6 -2
- package/build/src/browser/camera/index.js +18 -14
- package/build/src/browser/camera/index.js.map +1 -1
- package/build/src/browser/camera/utils.d.ts +11 -1
- package/build/src/browser/camera/utils.js +27 -1
- package/build/src/browser/camera/utils.js.map +1 -1
- package/build/src/browser/cdp/connection.d.ts +2 -39
- package/build/src/browser/cdp/connection.js +73 -353
- package/build/src/browser/cdp/connection.js.map +1 -1
- package/build/src/browser/cdp/constants.d.ts +0 -10
- package/build/src/browser/cdp/constants.js +1 -11
- package/build/src/browser/cdp/constants.js.map +1 -1
- package/build/src/browser/cdp/domains/css.d.ts +14 -6
- package/build/src/browser/cdp/domains/css.js +4 -0
- package/build/src/browser/cdp/domains/css.js.map +1 -1
- package/build/src/browser/cdp/domains/debugger.d.ts +1 -1
- package/build/src/browser/cdp/domains/fetch.d.ts +163 -0
- package/build/src/browser/cdp/domains/fetch.js +51 -0
- package/build/src/browser/cdp/domains/fetch.js.map +1 -0
- package/build/src/browser/cdp/domains/network.d.ts +290 -0
- package/build/src/browser/cdp/domains/network.js +75 -0
- package/build/src/browser/cdp/domains/network.js.map +1 -0
- package/build/src/browser/cdp/domains/page.d.ts +378 -0
- package/build/src/browser/cdp/domains/page.js +114 -0
- package/build/src/browser/cdp/domains/page.js.map +1 -0
- package/build/src/browser/cdp/emitter.d.ts +2 -1
- package/build/src/browser/cdp/emitter.js +2 -2
- package/build/src/browser/cdp/emitter.js.map +1 -1
- package/build/src/browser/cdp/error.d.ts +14 -20
- package/build/src/browser/cdp/error.js +29 -32
- package/build/src/browser/cdp/error.js.map +1 -1
- package/build/src/browser/cdp/index.d.ts +6 -0
- package/build/src/browser/cdp/index.js +21 -6
- package/build/src/browser/cdp/index.js.map +1 -1
- package/build/src/browser/cdp/selectivity/constants.d.ts +2 -0
- package/build/src/browser/cdp/selectivity/constants.js +3 -1
- package/build/src/browser/cdp/selectivity/constants.js.map +1 -1
- package/build/src/browser/cdp/selectivity/css-selectivity.d.ts +13 -3
- package/build/src/browser/cdp/selectivity/css-selectivity.js +211 -62
- package/build/src/browser/cdp/selectivity/css-selectivity.js.map +1 -1
- package/build/src/browser/cdp/selectivity/fs-cache.d.ts +12 -0
- package/build/src/browser/cdp/selectivity/fs-cache.js +122 -0
- package/build/src/browser/cdp/selectivity/fs-cache.js.map +1 -0
- package/build/src/browser/cdp/selectivity/hash-provider.d.ts +1 -0
- package/build/src/browser/cdp/selectivity/hash-provider.js +5 -3
- package/build/src/browser/cdp/selectivity/hash-provider.js.map +1 -1
- package/build/src/browser/cdp/selectivity/hash-reader.d.ts +2 -3
- package/build/src/browser/cdp/selectivity/hash-reader.js +39 -26
- package/build/src/browser/cdp/selectivity/hash-reader.js.map +1 -1
- package/build/src/browser/cdp/selectivity/hash-writer.d.ts +2 -2
- package/build/src/browser/cdp/selectivity/hash-writer.js +16 -62
- package/build/src/browser/cdp/selectivity/hash-writer.js.map +1 -1
- package/build/src/browser/cdp/selectivity/index.d.ts +6 -2
- package/build/src/browser/cdp/selectivity/index.js +147 -24
- package/build/src/browser/cdp/selectivity/index.js.map +1 -1
- package/build/src/browser/cdp/selectivity/js-selectivity.d.ts +11 -4
- package/build/src/browser/cdp/selectivity/js-selectivity.js +200 -87
- package/build/src/browser/cdp/selectivity/js-selectivity.js.map +1 -1
- package/build/src/browser/cdp/selectivity/json-utils.d.ts +5 -0
- package/build/src/browser/cdp/selectivity/json-utils.js +19 -9
- package/build/src/browser/cdp/selectivity/json-utils.js.map +1 -1
- package/build/src/browser/cdp/selectivity/merge-dumps/index.d.ts +2 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/index.js +28 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/index.js.map +1 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.d.ts +2 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.js +39 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-hashes.js.map +1 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.d.ts +2 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.js +129 -0
- package/build/src/browser/cdp/selectivity/merge-dumps/merge-tests.js.map +1 -0
- package/build/src/browser/cdp/selectivity/modes.d.ts +4 -0
- package/build/src/browser/cdp/selectivity/modes.js +11 -0
- package/build/src/browser/cdp/selectivity/modes.js.map +1 -0
- package/build/src/browser/cdp/selectivity/runner.d.ts +5 -0
- package/build/src/browser/cdp/selectivity/runner.js +114 -22
- package/build/src/browser/cdp/selectivity/runner.js.map +1 -1
- package/build/src/browser/cdp/selectivity/test-dependencies-reader.js +1 -1
- package/build/src/browser/cdp/selectivity/test-dependencies-reader.js.map +1 -1
- package/build/src/browser/cdp/selectivity/test-dependencies-writer.js +1 -1
- package/build/src/browser/cdp/selectivity/test-dependencies-writer.js.map +1 -1
- package/build/src/browser/cdp/selectivity/testplane-selectivity.d.ts +3 -1
- package/build/src/browser/cdp/selectivity/testplane-selectivity.js +64 -13
- package/build/src/browser/cdp/selectivity/testplane-selectivity.js.map +1 -1
- package/build/src/browser/cdp/selectivity/types.d.ts +6 -0
- package/build/src/browser/cdp/selectivity/types.js.map +1 -1
- package/build/src/browser/cdp/selectivity/used-dumps-tracker.d.ts +7 -0
- package/build/src/browser/cdp/selectivity/used-dumps-tracker.js +25 -0
- package/build/src/browser/cdp/selectivity/used-dumps-tracker.js.map +1 -0
- package/build/src/browser/cdp/selectivity/utils.d.ts +18 -9
- package/build/src/browser/cdp/selectivity/utils.js +111 -34
- package/build/src/browser/cdp/selectivity/utils.js.map +1 -1
- package/build/src/browser/cdp/types.d.ts +214 -0
- package/build/src/browser/cdp/utils.d.ts +0 -6
- package/build/src/browser/cdp/utils.js +1 -6
- package/build/src/browser/cdp/utils.js.map +1 -1
- package/build/src/browser/client-bridge/index.js +7 -4
- package/build/src/browser/client-bridge/index.js.map +1 -1
- package/build/src/browser/client-scripts/browser-utils/build/bundle.compat.js +1 -1
- package/build/src/browser/client-scripts/browser-utils/build/bundle.native.js +1 -1
- package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/lib.compat.js +9 -1
- package/build/src/browser/client-scripts/browser-utils/tsc-out/client-scripts/shared/lib.native.js +5 -1
- package/build/src/browser/client-scripts/calibrate.js +10 -3
- package/build/src/browser/client-scripts/rrweb-record.min.js +2 -2
- package/build/src/browser/client-scripts/screen-shooter/build/bundle.compat.js +35 -23
- package/build/src/browser/client-scripts/screen-shooter/build/bundle.native.js +20 -16
- package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/implementation.js +21 -8
- package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/operations.js +57 -29
- package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/screen-shooter/utils/dom.js +25 -1
- package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/lib.compat.js +9 -1
- package/build/src/browser/client-scripts/screen-shooter/tsc-out/client-scripts/shared/lib.native.js +5 -1
- package/build/src/browser/commands/assert-view/errors/image-diff-error.d.ts +1 -0
- package/build/src/browser/commands/assert-view/index.js +41 -15
- package/build/src/browser/commands/assert-view/index.js.map +1 -1
- package/build/src/browser/commands/openAndWait.js +23 -26
- package/build/src/browser/commands/openAndWait.js.map +1 -1
- package/build/src/browser/commands/restoreState/index.js +19 -8
- package/build/src/browser/commands/restoreState/index.js.map +1 -1
- package/build/src/browser/commands/saveState/index.d.ts +1 -2
- package/build/src/browser/commands/saveState/index.js +8 -12
- package/build/src/browser/commands/saveState/index.js.map +1 -1
- package/build/src/browser/commands/switchToRepl.js +27 -9
- package/build/src/browser/commands/switchToRepl.js.map +1 -1
- package/build/src/browser/existing-browser.d.ts +2 -0
- package/build/src/browser/existing-browser.js +15 -0
- package/build/src/browser/existing-browser.js.map +1 -1
- package/build/src/browser/history/index.d.ts +8 -1
- package/build/src/browser/history/index.js +46 -17
- package/build/src/browser/history/index.js.map +1 -1
- package/build/src/browser/history/rrweb.d.ts +3 -1
- package/build/src/browser/history/rrweb.js +158 -29
- package/build/src/browser/history/rrweb.js.map +1 -1
- package/build/src/browser/isomorphic/tsconfig.tsbuildinfo +1 -1
- package/build/src/browser/new-browser.d.ts +2 -1
- package/build/src/browser/new-browser.js +9 -12
- package/build/src/browser/new-browser.js.map +1 -1
- package/build/src/browser/screen-shooter/composite-image/index.d.ts +23 -0
- package/build/src/browser/screen-shooter/composite-image/index.js +161 -14
- package/build/src/browser/screen-shooter/composite-image/index.js.map +1 -1
- package/build/src/browser/screen-shooter/debug.d.ts +3 -0
- package/build/src/browser/screen-shooter/debug.js +25 -0
- package/build/src/browser/screen-shooter/debug.js.map +1 -0
- package/build/src/browser/screen-shooter/elements-screen-shooter.d.ts +0 -1
- package/build/src/browser/screen-shooter/elements-screen-shooter.js +120 -61
- package/build/src/browser/screen-shooter/elements-screen-shooter.js.map +1 -1
- package/build/src/browser/screen-shooter/full-page-screen-shooter.d.ts +3 -2
- package/build/src/browser/screen-shooter/full-page-screen-shooter.js +19 -15
- package/build/src/browser/screen-shooter/full-page-screen-shooter.js.map +1 -1
- package/build/src/browser/screen-shooter/operations/index.d.ts +1 -0
- package/build/src/browser/screen-shooter/operations/index.js +3 -1
- package/build/src/browser/screen-shooter/operations/index.js.map +1 -1
- package/build/src/browser/screen-shooter/operations/pointer-events.js +7 -0
- package/build/src/browser/screen-shooter/operations/pointer-events.js.map +1 -1
- package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.d.ts +6 -0
- package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.js +147 -0
- package/build/src/browser/screen-shooter/operations/wait-for-selectors-to-settle.js.map +1 -0
- package/build/src/browser/screen-shooter/viewport-screen-shooter.d.ts +2 -1
- package/build/src/browser/screen-shooter/viewport-screen-shooter.js +3 -5
- package/build/src/browser/screen-shooter/viewport-screen-shooter.js.map +1 -1
- package/build/src/browser/types.d.ts +6 -4
- package/build/src/browser/wsdriver/compression.d.ts +5 -0
- package/build/src/browser/wsdriver/compression.js +79 -0
- package/build/src/browser/wsdriver/compression.js.map +1 -0
- package/build/src/browser/wsdriver/constants.d.ts +11 -0
- package/build/src/browser/wsdriver/constants.js +15 -0
- package/build/src/browser/wsdriver/constants.js.map +1 -0
- package/build/src/browser/wsdriver/debug.d.ts +2 -0
- package/build/src/browser/wsdriver/debug.js +9 -0
- package/build/src/browser/wsdriver/debug.js.map +1 -0
- package/build/src/browser/wsdriver/error.d.ts +18 -0
- package/build/src/browser/wsdriver/error.js +36 -0
- package/build/src/browser/wsdriver/error.js.map +1 -0
- package/build/src/browser/wsdriver/index.d.ts +23 -0
- package/build/src/browser/wsdriver/index.js +261 -0
- package/build/src/browser/wsdriver/index.js.map +1 -0
- package/build/src/browser/wsdriver/request.d.ts +10 -0
- package/build/src/browser/wsdriver/request.js +58 -0
- package/build/src/browser/wsdriver/request.js.map +1 -0
- package/build/src/browser/wsdriver/response.d.ts +3 -0
- package/build/src/browser/wsdriver/response.js +111 -0
- package/build/src/browser/wsdriver/response.js.map +1 -0
- package/build/src/browser/wsdriver/types.d.ts +71 -0
- package/build/src/browser/wsdriver/types.js +27 -0
- package/build/src/browser/wsdriver/types.js.map +1 -0
- package/build/src/browser-installer/chromium/utils.js +1 -0
- package/build/src/browser-installer/chromium/utils.js.map +1 -1
- package/build/src/browser-installer/utils.js +50 -3
- package/build/src/browser-installer/utils.js.map +1 -1
- package/build/src/browser-pool/basic-pool.js +3 -1
- package/build/src/browser-pool/basic-pool.js.map +1 -1
- package/build/src/cli/commands/selectivity-merge-dumps/index.d.ts +2 -0
- package/build/src/cli/commands/selectivity-merge-dumps/index.js +50 -0
- package/build/src/cli/commands/selectivity-merge-dumps/index.js.map +1 -0
- package/build/src/cli/constants.d.ts +1 -0
- package/build/src/cli/constants.js +1 -0
- package/build/src/cli/constants.js.map +1 -1
- package/build/src/cli/index.js +13 -19
- package/build/src/cli/index.js.map +1 -1
- package/build/src/cli/repl-options.d.ts +3 -0
- package/build/src/cli/repl-options.js +16 -0
- package/build/src/cli/repl-options.js.map +1 -0
- package/build/src/config/browser-options.js +11 -3
- package/build/src/config/browser-options.js.map +1 -1
- package/build/src/config/defaults.d.ts +7 -2
- package/build/src/config/defaults.js +10 -5
- package/build/src/config/defaults.js.map +1 -1
- package/build/src/config/index.d.ts +10 -6
- package/build/src/config/index.js +67 -42
- package/build/src/config/index.js.map +1 -1
- package/build/src/config/types.d.ts +59 -14
- package/build/src/config/types.js +15 -5
- package/build/src/config/types.js.map +1 -1
- package/build/src/config/utils.d.ts +2 -2
- package/build/src/config/utils.js +11 -6
- package/build/src/config/utils.js.map +1 -1
- package/build/src/constants/config.d.ts +0 -1
- package/build/src/constants/config.js +1 -2
- package/build/src/constants/config.js.map +1 -1
- package/build/src/constants/png.d.ts +1 -0
- package/build/src/constants/repl.d.ts +2 -0
- package/build/src/constants/repl.js +6 -0
- package/build/src/constants/repl.js.map +1 -0
- package/build/src/dev-server/index.d.ts +1 -1
- package/build/src/dev-server/index.js +1 -1
- package/build/src/dev-server/index.js.map +1 -1
- package/build/src/globals.d.ts +7 -0
- package/build/src/globals.js +10 -0
- package/build/src/globals.js.map +1 -0
- package/build/src/image.d.ts +6 -1
- package/build/src/image.js +56 -2
- package/build/src/image.js.map +1 -1
- package/build/src/index.d.ts +3 -13
- package/build/src/index.js +5 -1
- package/build/src/index.js.map +1 -1
- package/build/src/runner/browser-env/vite/browser-modules/driver.js +6 -8
- package/build/src/runner/browser-env/vite/browser-modules/driver.js.map +1 -1
- package/build/src/runner/browser-env/vite/browser-modules/tsconfig.tsbuildinfo +1 -1
- package/build/src/runner/browser-env/vite/browser-modules/types.d.ts +1 -1
- package/build/src/runner/index.js +1 -0
- package/build/src/runner/index.js.map +1 -1
- package/build/src/runner/suite-monitor.d.ts +1 -1
- package/build/src/runner/test-runner/regular-test-runner.js +2 -2
- package/build/src/runner/test-runner/regular-test-runner.js.map +1 -1
- package/build/src/signal-handler.d.ts +2 -2
- package/build/src/signal-handler.js +24 -11
- package/build/src/signal-handler.js.map +1 -1
- package/build/src/test-reader/mocha-reader/mocha-event-bus.d.ts +1 -1
- package/build/src/test-reader/test-parser.js +3 -3
- package/build/src/test-reader/test-parser.js.map +1 -1
- package/build/src/testplane.d.ts +4 -5
- package/build/src/testplane.js +20 -10
- package/build/src/testplane.js.map +1 -1
- package/build/src/types/globals.d.ts +16 -0
- package/build/src/types/globals.js +3 -0
- package/build/src/types/globals.js.map +1 -0
- package/build/src/types/index.d.ts +2 -3
- package/build/src/utils/crypto.d.ts +1 -0
- package/build/src/utils/crypto.js +2 -1
- package/build/src/utils/crypto.js.map +1 -1
- package/build/src/utils/eight-bit-rgba-to-png.d.ts +1 -0
- package/build/src/utils/repl-instrumentation/index.d.ts +1 -0
- package/build/src/utils/repl-instrumentation/index.js +46 -0
- package/build/src/utils/repl-instrumentation/index.js.map +1 -0
- package/build/src/utils/repl-instrumentation/typescript.d.ts +7 -0
- package/build/src/utils/repl-instrumentation/typescript.js +307 -0
- package/build/src/utils/repl-instrumentation/typescript.js.map +1 -0
- package/build/src/utils/repl-module-hooks.d.ts +1 -0
- package/build/src/utils/repl-module-hooks.js +181 -0
- package/build/src/utils/repl-module-hooks.js.map +1 -0
- package/build/src/utils/workers-registry.d.ts +2 -2
- package/build/src/utils/workers-registry.js +1 -0
- package/build/src/utils/workers-registry.js.map +1 -1
- package/build/src/vendors/expect-webdriverio/matchers-overrides.d.ts +49 -0
- package/build/src/vendors/expect-webdriverio/matchers-overrides.js +3 -0
- package/build/src/vendors/expect-webdriverio/matchers-overrides.js.map +1 -0
- package/build/src/worker/runner/browser-pool.js +4 -1
- package/build/src/worker/runner/browser-pool.js.map +1 -1
- package/build/src/worker/runner/index.js +6 -3
- package/build/src/worker/runner/index.js.map +1 -1
- package/build/src/worker/runner/sequence-test-parser.js +5 -7
- package/build/src/worker/runner/sequence-test-parser.js.map +1 -1
- package/build/src/worker/runner/test-runner/capture-fail-screenshot.js +2 -3
- package/build/src/worker/runner/test-runner/capture-fail-screenshot.js.map +1 -1
- package/build/src/worker/runner/test-runner/execution-thread.d.ts +0 -1
- package/build/src/worker/runner/test-runner/execution-thread.js +0 -5
- package/build/src/worker/runner/test-runner/execution-thread.js.map +1 -1
- package/build/src/worker/runner/test-runner/index.d.ts +1 -0
- package/build/src/worker/runner/test-runner/index.js +47 -2
- package/build/src/worker/runner/test-runner/index.js.map +1 -1
- package/build/src/worker/testplane-facade.js +5 -3
- package/build/src/worker/testplane-facade.js.map +1 -1
- package/build/src/worker/testplane.d.ts +1 -0
- package/build/src/worker/testplane.js +4 -1
- package/build/src/worker/testplane.js.map +1 -1
- package/build/src/ws-connection/constants.d.ts +13 -0
- package/build/src/ws-connection/constants.js +17 -0
- package/build/src/ws-connection/constants.js.map +1 -0
- package/build/src/ws-connection/error.d.ts +52 -0
- package/build/src/ws-connection/error.js +84 -0
- package/build/src/ws-connection/error.js.map +1 -0
- package/build/src/ws-connection/index.d.ts +83 -0
- package/build/src/ws-connection/index.js +397 -0
- package/build/src/ws-connection/index.js.map +1 -0
- package/build/src/ws-connection/utils.d.ts +6 -0
- package/build/src/ws-connection/utils.js +9 -0
- package/build/src/ws-connection/utils.js.map +1 -0
- package/package.json +15 -15
|
@@ -6,15 +6,17 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.CompositeImage = void 0;
|
|
7
7
|
const node_os_1 = __importDefault(require("node:os"));
|
|
8
8
|
const node_path_1 = __importDefault(require("node:path"));
|
|
9
|
-
const debug_1 = __importDefault(require("debug"));
|
|
10
9
|
const image_1 = require("../../../image");
|
|
11
10
|
const geometry_1 = require("../../isomorphic/geometry");
|
|
12
11
|
const debug_utils_1 = require("./debug-utils");
|
|
13
|
-
const
|
|
12
|
+
const debug_1 = require("../debug");
|
|
13
|
+
const debug = (0, debug_1.makeVerboseScreenshotsDebug)("testplane:screenshots:composite-image");
|
|
14
14
|
class CompositeImage {
|
|
15
|
+
/** Creates a composite renderer instance while preserving subclass construction. */
|
|
15
16
|
static create(...args) {
|
|
16
17
|
return new this(...args);
|
|
17
18
|
}
|
|
19
|
+
/** Initializes chunk storage and an optional debug-output directory. */
|
|
18
20
|
constructor() {
|
|
19
21
|
this._debugTmpDir = null;
|
|
20
22
|
this._captureAreaSize = null;
|
|
@@ -37,7 +39,7 @@ class CompositeImage {
|
|
|
37
39
|
if (this._captureAreaSize.width <= 0 || this._captureAreaSize.height <= 0) {
|
|
38
40
|
throw new Error("Capture area size cannot be zero or negative. Got: " + (0, geometry_1.prettySize)(this._captureAreaSize));
|
|
39
41
|
}
|
|
40
|
-
const imageSize =
|
|
42
|
+
const imageSize = viewportImage.getSize();
|
|
41
43
|
debug("Captured the next chunk.\n captureSpecs: %O\n visibleCoveringRect: %O\n ignoreBoundingRects: %O\n viewportImageSize: %O", captureSpecs, visibleCoveringRect, ignoreBoundingRects, imageSize);
|
|
42
44
|
await (0, debug_utils_1.saveViewportImageForDebugIfNeeded)(this._compositeChunks.length, viewportImage, imageSize, safeArea, captureSpecs, visibleCoveringRect, this._debugTmpDir);
|
|
43
45
|
this._compositeChunks.push({
|
|
@@ -64,12 +66,13 @@ class CompositeImage {
|
|
|
64
66
|
"This means registerViewportImageAtOffset was never called with a valid capture rect.");
|
|
65
67
|
}
|
|
66
68
|
const anchoredChunks = this._computeAnchoredChunks();
|
|
67
|
-
const commonHorizontalArea = this._computeCommonHorizontalAreaIfNeeded(anchoredChunks, this._captureAreaSize.width);
|
|
68
|
-
const captureWidth = commonHorizontalArea?.width ?? this._captureAreaSize.width;
|
|
69
69
|
const sortedChunks = anchoredChunks.slice().sort((a, b) => (0, geometry_1.subtractCoords)(b.anchorTop, a.anchorTop));
|
|
70
70
|
const candidates = sortedChunks.map(chunk => this._buildCandidate(chunk));
|
|
71
71
|
debug("Candidates: %O", candidates);
|
|
72
72
|
this._chooseBestCandidates(candidates);
|
|
73
|
+
this._expandCandidatesToFullArea(candidates);
|
|
74
|
+
const commonHorizontalArea = this._computeCommonHorizontalAreaIfNeeded(candidates, this._captureAreaSize.width);
|
|
75
|
+
const captureWidth = commonHorizontalArea?.width ?? this._captureAreaSize.width;
|
|
73
76
|
debug("Chosen best candidates: %O", candidates);
|
|
74
77
|
const pieces = this._buildRenderPieces(candidates);
|
|
75
78
|
debug("Rendering composite image. chunks: %d, pieces: %O", this._compositeChunks.length, pieces);
|
|
@@ -126,6 +129,7 @@ class CompositeImage {
|
|
|
126
129
|
return { ...chunk, anchorTop: referenceCoveringRectTop };
|
|
127
130
|
}
|
|
128
131
|
let maxDelta = 0;
|
|
132
|
+
let hasRenderableDelta = false;
|
|
129
133
|
const minLength = Math.min(chunk.captureSpecs.length, referenceCaptureSpecs.length);
|
|
130
134
|
for (let i = 0; i < minLength; i++) {
|
|
131
135
|
const referenceSpec = referenceCaptureSpecs[i];
|
|
@@ -137,6 +141,30 @@ class CompositeImage {
|
|
|
137
141
|
if (delta > maxDelta) {
|
|
138
142
|
maxDelta = delta;
|
|
139
143
|
}
|
|
144
|
+
hasRenderableDelta = true;
|
|
145
|
+
}
|
|
146
|
+
if (!hasRenderableDelta) {
|
|
147
|
+
for (let i = 0; i < minLength; i++) {
|
|
148
|
+
const referenceSpec = referenceCaptureSpecs[i];
|
|
149
|
+
const chunkSpec = chunk.captureSpecs[i];
|
|
150
|
+
const delta = (0, geometry_1.subtractCoords)(referenceSpec.full.top, chunkSpec.full.top);
|
|
151
|
+
if (delta > maxDelta) {
|
|
152
|
+
maxDelta = delta;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
else if (maxDelta === 0) {
|
|
157
|
+
for (let i = 0; i < minLength; i++) {
|
|
158
|
+
const referenceSpec = referenceCaptureSpecs[i];
|
|
159
|
+
const chunkSpec = chunk.captureSpecs[i];
|
|
160
|
+
if (!this._isRenderableCaptureSpec(chunkSpec)) {
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
163
|
+
const delta = (0, geometry_1.subtractCoords)(referenceSpec.full.top, chunkSpec.full.top);
|
|
164
|
+
if (delta > maxDelta) {
|
|
165
|
+
maxDelta = delta;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
140
168
|
}
|
|
141
169
|
const anchorTopFromSpecs = referenceCoveringRectTop - maxDelta;
|
|
142
170
|
// Apply content-shift correction when anchor tracking data is available (best-effort pass).
|
|
@@ -151,9 +179,11 @@ class CompositeImage {
|
|
|
151
179
|
debug("Anchored chunks: %O", anchoredChunks);
|
|
152
180
|
return anchoredChunks;
|
|
153
181
|
}
|
|
182
|
+
/** Checks whether a capture spec contributes visible pixels in the current chunk. */
|
|
154
183
|
_isRenderableCaptureSpec(spec) {
|
|
155
184
|
return spec.visible.width > 0 && spec.visible.height > 0;
|
|
156
185
|
}
|
|
186
|
+
/** Returns the bounding rect that covers all visible capture-spec parts for a chunk. */
|
|
157
187
|
_getVisibleCoveringRect(chunk) {
|
|
158
188
|
const visibleRects = chunk.captureSpecs
|
|
159
189
|
.filter(spec => this._isRenderableCaptureSpec(spec))
|
|
@@ -163,6 +193,7 @@ class CompositeImage {
|
|
|
163
193
|
}
|
|
164
194
|
return (0, geometry_1.getCoveringRect)(visibleRects);
|
|
165
195
|
}
|
|
196
|
+
/** Builds a segment candidate, listing all possible options, e.g. strictly follow safe area, relax top/bottom edges, ignore safe area at all. */
|
|
166
197
|
_buildCandidate(chunk) {
|
|
167
198
|
const strict = this._getYBandForMode(chunk, "strict");
|
|
168
199
|
const relaxTop = this._getYBandForMode(chunk, "relaxTop");
|
|
@@ -177,6 +208,7 @@ class CompositeImage {
|
|
|
177
208
|
chosen: strict,
|
|
178
209
|
};
|
|
179
210
|
}
|
|
211
|
+
/** Computes a usable vertical band for a specific mode: e.g. what if we expand the top edge of the safe area? */
|
|
180
212
|
_getYBandForMode(chunk, mode) {
|
|
181
213
|
const viewportTop = 0;
|
|
182
214
|
const viewportBottom = chunk.imageSize.height;
|
|
@@ -208,6 +240,7 @@ class CompositeImage {
|
|
|
208
240
|
}
|
|
209
241
|
return resultingBand;
|
|
210
242
|
}
|
|
243
|
+
/** Chooses the best vertical band per chunk, relaxing edges only where needed to avoid gaps. */
|
|
211
244
|
_chooseBestCandidates(candidates) {
|
|
212
245
|
if (!candidates.length) {
|
|
213
246
|
return;
|
|
@@ -268,6 +301,49 @@ class CompositeImage {
|
|
|
268
301
|
}
|
|
269
302
|
}
|
|
270
303
|
}
|
|
304
|
+
/** Expansion for cases when capture elements are far apart and not fit one viewport. */
|
|
305
|
+
_expandCandidatesToFullArea(candidates) {
|
|
306
|
+
if (candidates.some(candidate => this._doesVisibleAreaCoverFullArea(candidate.chunk))) {
|
|
307
|
+
return;
|
|
308
|
+
}
|
|
309
|
+
for (const candidate of candidates) {
|
|
310
|
+
if (!candidate.chosen) {
|
|
311
|
+
continue;
|
|
312
|
+
}
|
|
313
|
+
const safeAreaBand = candidate.chunk.safeArea;
|
|
314
|
+
const fullCoveringRect = (0, geometry_1.getCoveringRect)(candidate.chunk.captureSpecs.map(spec => spec.full));
|
|
315
|
+
const safeAreaBottom = (0, geometry_1.getBottom)(safeAreaBand);
|
|
316
|
+
const fullBottom = (0, geometry_1.getBottom)(fullCoveringRect);
|
|
317
|
+
const chosenBottom = (0, geometry_1.getBottom)(candidate.chosen);
|
|
318
|
+
let top = candidate.chosen.top;
|
|
319
|
+
let bottom = chosenBottom;
|
|
320
|
+
if (fullCoveringRect.top < safeAreaBand.top && top > safeAreaBand.top) {
|
|
321
|
+
top = safeAreaBand.top;
|
|
322
|
+
}
|
|
323
|
+
if (fullBottom > safeAreaBottom && bottom < safeAreaBottom) {
|
|
324
|
+
bottom = safeAreaBottom;
|
|
325
|
+
}
|
|
326
|
+
if (top !== candidate.chosen.top || bottom !== chosenBottom) {
|
|
327
|
+
candidate.chosen = {
|
|
328
|
+
top,
|
|
329
|
+
height: (0, geometry_1.getHeight)(top, bottom),
|
|
330
|
+
};
|
|
331
|
+
candidate.expanded = true;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
/** Checks whether visible capture-spec pixels cover the complete requested capture area. */
|
|
336
|
+
_doesVisibleAreaCoverFullArea(chunk) {
|
|
337
|
+
const visibleCoveringRect = this._getVisibleCoveringRect(chunk);
|
|
338
|
+
if (!visibleCoveringRect) {
|
|
339
|
+
return false;
|
|
340
|
+
}
|
|
341
|
+
const fullCoveringRect = (0, geometry_1.getCoveringRect)(chunk.captureSpecs.map(spec => spec.full));
|
|
342
|
+
return (visibleCoveringRect.top <= fullCoveringRect.top &&
|
|
343
|
+
(0, geometry_1.getBottom)(visibleCoveringRect) >= (0, geometry_1.getBottom)(fullCoveringRect));
|
|
344
|
+
}
|
|
345
|
+
/** Given a list of best possible segments, builds a list of image pieces, inserting gaps when needed,
|
|
346
|
+
* ensuring resulting array is a vertically continuous sequence of pieces. */
|
|
271
347
|
_buildRenderPieces(candidates) {
|
|
272
348
|
const pieces = [];
|
|
273
349
|
const sortedCandidates = candidates
|
|
@@ -291,7 +367,7 @@ class CompositeImage {
|
|
|
291
367
|
}
|
|
292
368
|
const topRelativeToCaptureArea = (0, geometry_1.getMaxCoord)(chosenRelativeToCaptureArea.top, cursor);
|
|
293
369
|
if (topRelativeToCaptureArea > cursor) {
|
|
294
|
-
pieces.push(
|
|
370
|
+
pieces.push(...this._buildGapPieces(candidates, cursor, topRelativeToCaptureArea));
|
|
295
371
|
}
|
|
296
372
|
const cursorRelativeToViewport = (0, geometry_1.fromCaptureAreaToViewport)(cursor, candidate.chunk.anchorTop);
|
|
297
373
|
const topRelativeToViewport = (0, geometry_1.getMaxCoord)(chosen.top, cursorRelativeToViewport);
|
|
@@ -308,6 +384,53 @@ class CompositeImage {
|
|
|
308
384
|
}
|
|
309
385
|
return pieces;
|
|
310
386
|
}
|
|
387
|
+
/** Fills an uncovered capture-area gap with usable chunk areas or black fallback slices. */
|
|
388
|
+
_buildGapPieces(candidates, gapTop, gapBottom) {
|
|
389
|
+
const pieces = [];
|
|
390
|
+
const usableAreas = candidates
|
|
391
|
+
.map(candidate => {
|
|
392
|
+
const safeArea = candidate.chunk.safeArea;
|
|
393
|
+
return {
|
|
394
|
+
chunk: candidate.chunk,
|
|
395
|
+
area: {
|
|
396
|
+
top: (0, geometry_1.fromViewportToCaptureArea)(safeArea.top, candidate.chunk.anchorTop),
|
|
397
|
+
height: safeArea.height,
|
|
398
|
+
},
|
|
399
|
+
};
|
|
400
|
+
})
|
|
401
|
+
.sort((a, b) => (0, geometry_1.subtractCoords)(a.area.top, b.area.top));
|
|
402
|
+
let cursor = gapTop;
|
|
403
|
+
for (const { chunk, area } of usableAreas) {
|
|
404
|
+
const areaBottom = (0, geometry_1.getBottom)(area);
|
|
405
|
+
if (areaBottom <= cursor || area.top >= gapBottom) {
|
|
406
|
+
continue;
|
|
407
|
+
}
|
|
408
|
+
const top = (0, geometry_1.getMaxCoord)(area.top, cursor);
|
|
409
|
+
const bottom = (0, geometry_1.getMinCoord)(areaBottom, gapBottom);
|
|
410
|
+
if (top > cursor) {
|
|
411
|
+
pieces.push({ type: "black", height: (0, geometry_1.getHeight)(cursor, top) });
|
|
412
|
+
}
|
|
413
|
+
if (bottom > top) {
|
|
414
|
+
pieces.push({
|
|
415
|
+
type: "chunk",
|
|
416
|
+
chunk,
|
|
417
|
+
verticalArea: {
|
|
418
|
+
top: (0, geometry_1.fromCaptureAreaToViewport)(top, chunk.anchorTop),
|
|
419
|
+
height: (0, geometry_1.getHeight)(top, bottom),
|
|
420
|
+
},
|
|
421
|
+
});
|
|
422
|
+
cursor = bottom;
|
|
423
|
+
}
|
|
424
|
+
if (cursor >= gapBottom) {
|
|
425
|
+
break;
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
if (cursor < gapBottom) {
|
|
429
|
+
pieces.push({ type: "black", height: (0, geometry_1.getHeight)(cursor, gapBottom) });
|
|
430
|
+
}
|
|
431
|
+
return pieces;
|
|
432
|
+
}
|
|
433
|
+
/** Returns the horizontal viewport band occupied by visible capture-spec pixels. */
|
|
311
434
|
_getChunkHorizontalArea(chunk) {
|
|
312
435
|
const viewportHorizontalArea = {
|
|
313
436
|
left: 0,
|
|
@@ -319,15 +442,18 @@ class CompositeImage {
|
|
|
319
442
|
}
|
|
320
443
|
return (0, geometry_1.intersectXBands)(viewportHorizontalArea, visibleCoveringRect);
|
|
321
444
|
}
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
445
|
+
/** Computes a shared horizontal crop band when chunks cannot safely use the original width. */
|
|
446
|
+
_computeCommonHorizontalAreaIfNeeded(candidates, captureWidth) {
|
|
447
|
+
const chunkHorizontalAreas = candidates
|
|
448
|
+
.map(candidate => this._getCandidateHorizontalArea(candidate))
|
|
325
449
|
.filter((area) => Boolean(area));
|
|
326
450
|
if (chunkHorizontalAreas.length === 0) {
|
|
327
451
|
return null;
|
|
328
452
|
}
|
|
453
|
+
const hasMultipleCaptureSpecs = candidates.some(candidate => candidate.chunk.captureSpecs.length > 1);
|
|
454
|
+
const hasExpandedCandidate = candidates.some(candidate => candidate.expanded);
|
|
329
455
|
const hasWidthMismatch = chunkHorizontalAreas.some(area => area.width !== captureWidth);
|
|
330
|
-
if (!hasWidthMismatch) {
|
|
456
|
+
if (!hasMultipleCaptureSpecs && !hasExpandedCandidate && !hasWidthMismatch) {
|
|
331
457
|
return null;
|
|
332
458
|
}
|
|
333
459
|
const left = Math.min(...chunkHorizontalAreas.map(area => area.left));
|
|
@@ -337,6 +463,25 @@ class CompositeImage {
|
|
|
337
463
|
width: (right - left),
|
|
338
464
|
};
|
|
339
465
|
}
|
|
466
|
+
/** Selects the horizontal band that should be used for a candidate chunk. */
|
|
467
|
+
_getCandidateHorizontalArea(candidate) {
|
|
468
|
+
if (!candidate.expanded) {
|
|
469
|
+
return this._getChunkHorizontalArea(candidate.chunk);
|
|
470
|
+
}
|
|
471
|
+
return this._getExpandedChunkHorizontalArea(candidate.chunk) ?? this._getChunkHorizontalArea(candidate.chunk);
|
|
472
|
+
}
|
|
473
|
+
/** Computes a horizontal band for expanded chunks using requested full rects and clip bounds. */
|
|
474
|
+
_getExpandedChunkHorizontalArea(chunk) {
|
|
475
|
+
const viewportHorizontalArea = {
|
|
476
|
+
left: 0,
|
|
477
|
+
width: chunk.imageSize.width,
|
|
478
|
+
};
|
|
479
|
+
const fullCoveringRect = (0, geometry_1.getCoveringRect)(chunk.captureSpecs.map(spec => spec.full));
|
|
480
|
+
const clipCoveringRect = (0, geometry_1.getCoveringRect)(chunk.captureSpecs.map(spec => spec.clip));
|
|
481
|
+
const fullHorizontalArea = (0, geometry_1.intersectXBands)(viewportHorizontalArea, fullCoveringRect);
|
|
482
|
+
return (0, geometry_1.intersectXBands)(fullHorizontalArea, clipCoveringRect);
|
|
483
|
+
}
|
|
484
|
+
/** Crops one viewport chunk into a render piece after clearing ignored regions. */
|
|
340
485
|
async _createChunkPiece(chunk, verticalArea, captureWidth, commonHorizontalArea) {
|
|
341
486
|
const viewportHorizontalArea = {
|
|
342
487
|
left: 0,
|
|
@@ -358,13 +503,15 @@ class CompositeImage {
|
|
|
358
503
|
left: horizonalArea.left,
|
|
359
504
|
width: horizonalArea.width,
|
|
360
505
|
};
|
|
506
|
+
const image = await chunk.image.clone();
|
|
361
507
|
for (const ignoreRect of chunk.boundingRectsToIgnore) {
|
|
362
|
-
await
|
|
508
|
+
await image.addClear(ignoreRect);
|
|
363
509
|
}
|
|
364
|
-
await
|
|
365
|
-
await
|
|
366
|
-
return
|
|
510
|
+
await image.applyJoin();
|
|
511
|
+
await image.crop(cropArea);
|
|
512
|
+
return image;
|
|
367
513
|
}
|
|
514
|
+
/** Creates a black fallback image piece for areas that no chunk can provide. */
|
|
368
515
|
async _createBlackPiece(height, width) {
|
|
369
516
|
return new image_1.Image({ width, height });
|
|
370
517
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/browser/screen-shooter/composite-image/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/browser/screen-shooter/composite-image/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.makeVerboseScreenshotsDebug = exports.isVerboseScreenshotsDebugEnabled = void 0;
|
|
7
|
+
const debug_1 = __importDefault(require("debug"));
|
|
8
|
+
const isVerboseScreenshotsDebugEnabled = () => Boolean(process.env.TESTPLANE_DEBUG_SCREENSHOTS);
|
|
9
|
+
exports.isVerboseScreenshotsDebugEnabled = isVerboseScreenshotsDebugEnabled;
|
|
10
|
+
function makeVerboseScreenshotsDebug(namespace) {
|
|
11
|
+
const debug = (0, debug_1.default)(namespace);
|
|
12
|
+
const verboseDebug = ((...args) => {
|
|
13
|
+
if ((0, exports.isVerboseScreenshotsDebugEnabled)()) {
|
|
14
|
+
debug(...args);
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
Object.assign(verboseDebug, debug);
|
|
18
|
+
Object.defineProperty(verboseDebug, "enabled", {
|
|
19
|
+
get: () => (0, exports.isVerboseScreenshotsDebugEnabled)() && debug.enabled,
|
|
20
|
+
configurable: true,
|
|
21
|
+
});
|
|
22
|
+
return verboseDebug;
|
|
23
|
+
}
|
|
24
|
+
exports.makeVerboseScreenshotsDebug = makeVerboseScreenshotsDebug;
|
|
25
|
+
//# sourceMappingURL=debug.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../../src/browser/screen-shooter/debug.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA8B;AAEvB,MAAM,gCAAgC,GAAG,GAAY,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAAnG,QAAA,gCAAgC,oCAAmE;AAEhH,SAAgB,2BAA2B,CAAC,SAAiB;IACzD,MAAM,KAAK,GAAG,IAAA,eAAS,EAAC,SAAS,CAAC,CAAC;IACnC,MAAM,YAAY,GAAG,CAAC,CAAC,GAAG,IAA8B,EAAE,EAAE;QACxD,IAAI,IAAA,wCAAgC,GAAE,EAAE,CAAC;YACrC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QACnB,CAAC;IACL,CAAC,CAAiC,CAAC;IAEnC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACnC,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,SAAS,EAAE;QAC3C,GAAG,EAAE,GAAG,EAAE,CAAC,IAAA,wCAAgC,GAAE,IAAI,KAAK,CAAC,OAAO;QAC9D,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC;AACxB,CAAC;AAfD,kEAeC"}
|
|
@@ -35,7 +35,6 @@ export declare class ElementsScreenShooter {
|
|
|
35
35
|
capture(selectorOrSelectors: string | string[], opts?: ScreenShooterOpts): Promise<CaptureImageResult>;
|
|
36
36
|
private _prepareScreenshot;
|
|
37
37
|
private _cleanupScreenshot;
|
|
38
|
-
private _waitForCaptureAreaToSettle;
|
|
39
38
|
/** Scrolls through the entire capture area to trigger lazy loading, then restores scroll and records anchor baselines. */
|
|
40
39
|
private _preloadCaptureArea;
|
|
41
40
|
private _scrollThroughCaptureArea;
|