@wopee-io/wopee.wdio 4.0.0
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/README.md +5 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.d.ts +5 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.js +48 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.d.ts +9 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.js +20 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.d.ts +9 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.js +22 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.d.ts +8 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.js +39 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.d.ts +85 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.js +2 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.d.ts +8 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.js +35 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.d.ts +8 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.js +27 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.js.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.d.ts +13 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.d.ts.map +1 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.js +27 -0
- package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.js.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/default.d.ts +14 -0
- package/build/adapter/driven/localSaveScreenshot/default.d.ts.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/default.js +20 -0
- package/build/adapter/driven/localSaveScreenshot/default.js.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.d.ts +42 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.d.ts.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.interface.d.ts +43 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.interface.d.ts.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.interface.js +2 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.interface.js.map +1 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.js +76 -0
- package/build/adapter/driven/localSaveScreenshot/localSaveScreenshot.js.map +1 -0
- package/build/adapter/driven/wdioLoggerAdapter/wdioLoggerAdapter.d.ts +10 -0
- package/build/adapter/driven/wdioLoggerAdapter/wdioLoggerAdapter.d.ts.map +1 -0
- package/build/adapter/driven/wdioLoggerAdapter/wdioLoggerAdapter.js +20 -0
- package/build/adapter/driven/wdioLoggerAdapter/wdioLoggerAdapter.js.map +1 -0
- package/build/adapter/fullPageScreenshotAdapter/fullPageScreenshotAdapter.d.ts +31 -0
- package/build/adapter/fullPageScreenshotAdapter/fullPageScreenshotAdapter.d.ts.map +1 -0
- package/build/adapter/fullPageScreenshotAdapter/fullPageScreenshotAdapter.js +138 -0
- package/build/adapter/fullPageScreenshotAdapter/fullPageScreenshotAdapter.js.map +1 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.d.ts +10 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.d.ts.map +1 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.interface.d.ts +28 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.interface.d.ts.map +1 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.interface.js +12 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.interface.js.map +1 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.js +57 -0
- package/build/adapter/wdioConfigAdapter/wdioConfigAdapter.js.map +1 -0
- package/build/adapter/wdioLoggerAdapter/wdioLoggerAdapter.d.ts +10 -0
- package/build/adapter/wdioLoggerAdapter/wdioLoggerAdapter.d.ts.map +1 -0
- package/build/adapter/wdioLoggerAdapter/wdioLoggerAdapter.js +20 -0
- package/build/adapter/wdioLoggerAdapter/wdioLoggerAdapter.js.map +1 -0
- package/build/core/domain/valueObjects/elementPosition.interface.d.ts +7 -0
- package/build/core/domain/valueObjects/elementPosition.interface.d.ts.map +1 -0
- package/build/core/domain/valueObjects/elementPosition.interface.js +2 -0
- package/build/core/domain/valueObjects/elementPosition.interface.js.map +1 -0
- package/build/core/domain/valueObjects/index.d.ts +4 -0
- package/build/core/domain/valueObjects/index.d.ts.map +1 -0
- package/build/core/domain/valueObjects/index.js +2 -0
- package/build/core/domain/valueObjects/index.js.map +1 -0
- package/build/core/domain/valueObjects/track.interface.d.ts +22 -0
- package/build/core/domain/valueObjects/track.interface.d.ts.map +1 -0
- package/build/core/domain/valueObjects/track.interface.js +2 -0
- package/build/core/domain/valueObjects/track.interface.js.map +1 -0
- package/build/desktopBrowser/clientSideScript/screenDimensions.interfaces.d.ts +85 -0
- package/build/desktopBrowser/clientSideScript/screenDimensions.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/clientSideScript/screenDimensions.interfaces.js +2 -0
- package/build/desktopBrowser/clientSideScript/screenDimensions.interfaces.js.map +1 -0
- package/build/desktopBrowser/commands/element.interfaces.d.ts +11 -0
- package/build/desktopBrowser/commands/element.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/commands/element.interfaces.js +2 -0
- package/build/desktopBrowser/commands/element.interfaces.js.map +1 -0
- package/build/desktopBrowser/commands/fullPage.interfaces.d.ts +11 -0
- package/build/desktopBrowser/commands/fullPage.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/commands/fullPage.interfaces.js +2 -0
- package/build/desktopBrowser/commands/fullPage.interfaces.js.map +1 -0
- package/build/desktopBrowser/commands/screen.interfaces.d.ts +8 -0
- package/build/desktopBrowser/commands/screen.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/commands/screen.interfaces.js +2 -0
- package/build/desktopBrowser/commands/screen.interfaces.js.map +1 -0
- package/build/desktopBrowser/commands/trackElement.d.ts +7 -0
- package/build/desktopBrowser/commands/trackElement.d.ts.map +1 -0
- package/build/desktopBrowser/commands/trackElement.js +63 -0
- package/build/desktopBrowser/commands/trackElement.js.map +1 -0
- package/build/desktopBrowser/commands/trackFullPageScreen.d.ts +7 -0
- package/build/desktopBrowser/commands/trackFullPageScreen.d.ts.map +1 -0
- package/build/desktopBrowser/commands/trackFullPageScreen.js +49 -0
- package/build/desktopBrowser/commands/trackFullPageScreen.js.map +1 -0
- package/build/desktopBrowser/commands/trackImage.d.ts +6 -0
- package/build/desktopBrowser/commands/trackImage.d.ts.map +1 -0
- package/build/desktopBrowser/commands/trackImage.interface.d.ts +8 -0
- package/build/desktopBrowser/commands/trackImage.interface.d.ts.map +1 -0
- package/build/desktopBrowser/commands/trackImage.interface.js +2 -0
- package/build/desktopBrowser/commands/trackImage.interface.js.map +1 -0
- package/build/desktopBrowser/commands/trackImage.js +27 -0
- package/build/desktopBrowser/commands/trackImage.js.map +1 -0
- package/build/desktopBrowser/commands/trackScreen.d.ts +7 -0
- package/build/desktopBrowser/commands/trackScreen.d.ts.map +1 -0
- package/build/desktopBrowser/commands/trackScreen.js +52 -0
- package/build/desktopBrowser/commands/trackScreen.js.map +1 -0
- package/build/desktopBrowser/helpers/utils.d.ts +33 -0
- package/build/desktopBrowser/helpers/utils.d.ts.map +1 -0
- package/build/desktopBrowser/helpers/utils.js +77 -0
- package/build/desktopBrowser/helpers/utils.js.map +1 -0
- package/build/desktopBrowser/index.d.ts +8 -0
- package/build/desktopBrowser/index.d.ts.map +1 -0
- package/build/desktopBrowser/index.js +6 -0
- package/build/desktopBrowser/index.js.map +1 -0
- package/build/desktopBrowser/methods/elementPosition.d.ts +23 -0
- package/build/desktopBrowser/methods/elementPosition.d.ts.map +1 -0
- package/build/desktopBrowser/methods/elementPosition.js +26 -0
- package/build/desktopBrowser/methods/elementPosition.js.map +1 -0
- package/build/desktopBrowser/methods/images.d.ts +27 -0
- package/build/desktopBrowser/methods/images.d.ts.map +1 -0
- package/build/desktopBrowser/methods/images.interfaces.d.ts +31 -0
- package/build/desktopBrowser/methods/images.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/methods/images.interfaces.js +2 -0
- package/build/desktopBrowser/methods/images.interfaces.js.map +1 -0
- package/build/desktopBrowser/methods/images.js +109 -0
- package/build/desktopBrowser/methods/images.js.map +1 -0
- package/build/desktopBrowser/methods/instanceData.interfaces.d.ts +10 -0
- package/build/desktopBrowser/methods/instanceData.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/methods/instanceData.interfaces.js +2 -0
- package/build/desktopBrowser/methods/instanceData.interfaces.js.map +1 -0
- package/build/desktopBrowser/methods/methods.interface.d.ts +13 -0
- package/build/desktopBrowser/methods/methods.interface.d.ts.map +1 -0
- package/build/desktopBrowser/methods/methods.interface.js +2 -0
- package/build/desktopBrowser/methods/methods.interface.js.map +1 -0
- package/build/desktopBrowser/methods/rectangles.d.ts +23 -0
- package/build/desktopBrowser/methods/rectangles.d.ts.map +1 -0
- package/build/desktopBrowser/methods/rectangles.interfaces.d.ts +23 -0
- package/build/desktopBrowser/methods/rectangles.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/methods/rectangles.interfaces.js +2 -0
- package/build/desktopBrowser/methods/rectangles.interfaces.js.map +1 -0
- package/build/desktopBrowser/methods/rectangles.js +51 -0
- package/build/desktopBrowser/methods/rectangles.js.map +1 -0
- package/build/desktopBrowser/methods/screenshots.d.ts +29 -0
- package/build/desktopBrowser/methods/screenshots.d.ts.map +1 -0
- package/build/desktopBrowser/methods/screenshots.interfaces.d.ts +27 -0
- package/build/desktopBrowser/methods/screenshots.interfaces.d.ts.map +1 -0
- package/build/desktopBrowser/methods/screenshots.interfaces.js +2 -0
- package/build/desktopBrowser/methods/screenshots.interfaces.js.map +1 -0
- package/build/desktopBrowser/methods/screenshots.js +91 -0
- package/build/desktopBrowser/methods/screenshots.js.map +1 -0
- package/build/domain/model/afterScreenshotOptions.interface.d.ts +11 -0
- package/build/domain/model/afterScreenshotOptions.interface.d.ts.map +1 -0
- package/build/domain/model/afterScreenshotOptions.interface.js +2 -0
- package/build/domain/model/afterScreenshotOptions.interface.js.map +1 -0
- package/build/domain/model/beforeScreenshotOptions.interface.d.ts +7 -0
- package/build/domain/model/beforeScreenshotOptions.interface.d.ts.map +1 -0
- package/build/domain/model/beforeScreenshotOptions.interface.js +2 -0
- package/build/domain/model/beforeScreenshotOptions.interface.js.map +1 -0
- package/build/domain/model/config.interface.d.ts +19 -0
- package/build/domain/model/config.interface.d.ts.map +1 -0
- package/build/domain/model/config.interface.js +2 -0
- package/build/domain/model/config.interface.js.map +1 -0
- package/build/domain/model/constants.d.ts +9 -0
- package/build/domain/model/constants.d.ts.map +1 -0
- package/build/domain/model/constants.js +9 -0
- package/build/domain/model/constants.js.map +1 -0
- package/build/domain/model/croppingOptions.interface.d.ts +8 -0
- package/build/domain/model/croppingOptions.interface.d.ts.map +1 -0
- package/build/domain/model/croppingOptions.interface.js +12 -0
- package/build/domain/model/croppingOptions.interface.js.map +1 -0
- package/build/domain/model/instances.interface.d.ts +16 -0
- package/build/domain/model/instances.interface.d.ts.map +1 -0
- package/build/domain/model/instances.interface.js +2 -0
- package/build/domain/model/instances.interface.js.map +1 -0
- package/build/domain/model/instancesOptions.interface.d.ts +7 -0
- package/build/domain/model/instancesOptions.interface.d.ts.map +1 -0
- package/build/domain/model/instancesOptions.interface.js +10 -0
- package/build/domain/model/instancesOptions.interface.js.map +1 -0
- package/build/domain/model/methods.interface.d.ts +17 -0
- package/build/domain/model/methods.interface.d.ts.map +1 -0
- package/build/domain/model/methods.interface.js +2 -0
- package/build/domain/model/methods.interface.js.map +1 -0
- package/build/domain/model/permanentStorageResult.interface.d.ts +14 -0
- package/build/domain/model/permanentStorageResult.interface.d.ts.map +1 -0
- package/build/domain/model/permanentStorageResult.interface.js +2 -0
- package/build/domain/model/permanentStorageResult.interface.js.map +1 -0
- package/build/domain/model/saveBase64ImageOptions.interface.d.ts +54 -0
- package/build/domain/model/saveBase64ImageOptions.interface.d.ts.map +1 -0
- package/build/domain/model/saveBase64ImageOptions.interface.js +2 -0
- package/build/domain/model/saveBase64ImageOptions.interface.js.map +1 -0
- package/build/domain/model/screenshotOutput.interface.d.ts +16 -0
- package/build/domain/model/screenshotOutput.interface.d.ts.map +1 -0
- package/build/domain/model/screenshotOutput.interface.js +2 -0
- package/build/domain/model/screenshotOutput.interface.js.map +1 -0
- package/build/domain/model/screenshotSize.interface.d.ts +14 -0
- package/build/domain/model/screenshotSize.interface.d.ts.map +1 -0
- package/build/domain/model/screenshotSize.interface.js +2 -0
- package/build/domain/model/screenshotSize.interface.js.map +1 -0
- package/build/domain/model/screenshotValidationPayload.interface.d.ts +47 -0
- package/build/domain/model/screenshotValidationPayload.interface.d.ts.map +1 -0
- package/build/domain/model/screenshotValidationPayload.interface.js +2 -0
- package/build/domain/model/screenshotValidationPayload.interface.js.map +1 -0
- package/build/domain/model/screenshotValidationResult.interface.d.ts +23 -0
- package/build/domain/model/screenshotValidationResult.interface.d.ts.map +1 -0
- package/build/domain/model/screenshotValidationResult.interface.js +11 -0
- package/build/domain/model/screenshotValidationResult.interface.js.map +1 -0
- package/build/domain/model/service.interface.d.ts +33 -0
- package/build/domain/model/service.interface.d.ts.map +1 -0
- package/build/domain/model/service.interface.js +2 -0
- package/build/domain/model/service.interface.js.map +1 -0
- package/build/domain/model/trackImage.interface.d.ts +17 -0
- package/build/domain/model/trackImage.interface.d.ts.map +1 -0
- package/build/domain/model/trackImage.interface.js +2 -0
- package/build/domain/model/trackImage.interface.js.map +1 -0
- package/build/domain/service/afterScreenshot.d.ts +11 -0
- package/build/domain/service/afterScreenshot.d.ts.map +1 -0
- package/build/domain/service/afterScreenshot.js +15 -0
- package/build/domain/service/afterScreenshot.js.map +1 -0
- package/build/domain/service/beforeScreenshot.d.ts +12 -0
- package/build/domain/service/beforeScreenshot.d.ts.map +1 -0
- package/build/domain/service/beforeScreenshot.js +41 -0
- package/build/domain/service/beforeScreenshot.js.map +1 -0
- package/build/domain/service/webdriverService.d.ts +19 -0
- package/build/domain/service/webdriverService.d.ts.map +1 -0
- package/build/domain/service/webdriverService.js +98 -0
- package/build/domain/service/webdriverService.js.map +1 -0
- package/build/domain/service/wopeeService.d.ts +37 -0
- package/build/domain/service/wopeeService.d.ts.map +1 -0
- package/build/domain/service/wopeeService.js +83 -0
- package/build/domain/service/wopeeService.js.map +1 -0
- package/build/index.d.ts +59 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +4 -0
- package/build/index.js.map +1 -0
- package/build/port/clientSideOperationPort/clientSideOperationPort.d.ts +12 -0
- package/build/port/clientSideOperationPort/clientSideOperationPort.d.ts.map +1 -0
- package/build/port/clientSideOperationPort/clientSideOperationPort.js +3 -0
- package/build/port/clientSideOperationPort/clientSideOperationPort.js.map +1 -0
- package/build/port/driven/configDrivingPort/configDrivingPort.d.ts +9 -0
- package/build/port/driven/configDrivingPort/configDrivingPort.d.ts.map +1 -0
- package/build/port/driven/configDrivingPort/configDrivingPort.js +15 -0
- package/build/port/driven/configDrivingPort/configDrivingPort.js.map +1 -0
- package/build/port/driven/configDrivingPort/configDrivingPortDefaults.d.ts +6 -0
- package/build/port/driven/configDrivingPort/configDrivingPortDefaults.d.ts.map +1 -0
- package/build/port/driven/configDrivingPort/configDrivingPortDefaults.js +36 -0
- package/build/port/driven/configDrivingPort/configDrivingPortDefaults.js.map +1 -0
- package/build/port/driven/permanentStoragePort.d.ts +15 -0
- package/build/port/driven/permanentStoragePort.d.ts.map +1 -0
- package/build/port/driven/permanentStoragePort.js +6 -0
- package/build/port/driven/permanentStoragePort.js.map +1 -0
- package/build/port/driven/screenshotValidationPort.d.ts +28 -0
- package/build/port/driven/screenshotValidationPort.d.ts.map +1 -0
- package/build/port/driven/screenshotValidationPort.js +6 -0
- package/build/port/driven/screenshotValidationPort.js.map +1 -0
- package/build/types.d.ts +1 -0
- package/build/types.d.ts.map +1 -0
- package/build/types.js +2 -0
- package/build/types.js.map +1 -0
- package/build/utils/versionMetadata.d.ts +10 -0
- package/build/utils/versionMetadata.d.ts.map +1 -0
- package/build/utils/versionMetadata.js +26 -0
- package/build/utils/versionMetadata.js.map +1 -0
- package/build/utils/wopeeError.d.ts +4 -0
- package/build/utils/wopeeError.d.ts.map +1 -0
- package/build/utils/wopeeError.js +8 -0
- package/build/utils/wopeeError.js.map +1 -0
- package/build/utils.d.ts +34 -0
- package/build/utils.d.ts.map +1 -0
- package/build/utils.js +57 -0
- package/build/utils.js.map +1 -0
- package/docs/commands.md +37 -0
- package/docs/configuration.md +241 -0
- package/docs/mobile_native.md +31 -0
- package/node_modules/@autonomous-testing/sdk/.commitlintrc.json +3 -0
- package/node_modules/@autonomous-testing/sdk/.eslintignore +2 -0
- package/node_modules/@autonomous-testing/sdk/.eslintrc +21 -0
- package/node_modules/@autonomous-testing/sdk/.github/actions/npm_clean_install/action.yaml +35 -0
- package/node_modules/@autonomous-testing/sdk/.github/workflows/ci_cd.yaml +137 -0
- package/node_modules/@autonomous-testing/sdk/.prettierignore +3 -0
- package/node_modules/@autonomous-testing/sdk/.prettierrc +12 -0
- package/node_modules/@autonomous-testing/sdk/README.md +57 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/index.d.ts +2 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/index.js +18 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/imageTrackingResult.interface.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/imageTrackingResult.interface.js +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/index.js +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/trackPayload.interface.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/domain/valueObjects/trackPayload.interface.js +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/core/index.js +19 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/imageTracker.d.ts +6 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/imageTracker.js +7 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/index.js +8 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/logger.d.ts +7 -0
- package/node_modules/@autonomous-testing/sdk/build/core/ports/logger.js +7 -0
- package/node_modules/@autonomous-testing/sdk/build/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/index.js +20 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.d.ts +39 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.default.d.ts +16 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.default.js +31 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.interface.d.ts +93 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.interface.js +14 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapter.js +153 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapterQueries.d.ts +5 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapterQueries.js +102 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapterUtils.d.ts +9 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/apolloTrackAdapterUtils.js +26 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/index.d.ts +7 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/apolloTrackAdapter/index.js +8 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/consoleLogger/consoleLogger.d.ts +36 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/consoleLogger/consoleLogger.js +49 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/consoleLogger/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/consoleLogger/index.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/index.js +20 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/noLogger/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/noLogger/index.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/noLogger/noLogger.d.ts +31 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/adapters/noLogger/noLogger.js +34 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/index.js +19 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/apolloTrackAdapterService.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/apolloTrackAdapterService.interface.d.ts +51 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/apolloTrackAdapterService.interface.js +24 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/apolloTrackAdapterService.js +13 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/apolloTrackAdapterService/index.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/index.js +19 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/consoleLoggerOptions.interface.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/consoleLoggerOptions.interface.js +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/index.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/loggerOptions.interface.d.ts +8 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/loggerOptions.interface.js +3 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/loggerService.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/infrastructure/services/loggerService/loggerService.js +24 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/index.js +19 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/metadata/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/metadata/index.js +7 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/metadata/versionMetadata.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/metadata/versionMetadata.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/error.interface.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/error.interface.js +12 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/index.d.ts +4 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/index.js +21 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/zodHelper/index.d.ts +3 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/zodHelper/index.js +6 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/zodHelper/zodHelper.d.ts +14 -0
- package/node_modules/@autonomous-testing/sdk/build/shared/utils/zodHelper/zodHelper.js +39 -0
- package/node_modules/@autonomous-testing/sdk/package.json +53 -0
- package/node_modules/asynckit/LICENSE +21 -0
- package/node_modules/asynckit/README.md +233 -0
- package/node_modules/asynckit/bench.js +76 -0
- package/node_modules/asynckit/index.js +6 -0
- package/node_modules/asynckit/lib/abort.js +29 -0
- package/node_modules/asynckit/lib/async.js +34 -0
- package/node_modules/asynckit/lib/defer.js +26 -0
- package/node_modules/asynckit/lib/iterate.js +75 -0
- package/node_modules/asynckit/lib/readable_asynckit.js +91 -0
- package/node_modules/asynckit/lib/readable_parallel.js +25 -0
- package/node_modules/asynckit/lib/readable_serial.js +25 -0
- package/node_modules/asynckit/lib/readable_serial_ordered.js +29 -0
- package/node_modules/asynckit/lib/state.js +37 -0
- package/node_modules/asynckit/lib/streamify.js +141 -0
- package/node_modules/asynckit/lib/terminator.js +29 -0
- package/node_modules/asynckit/package.json +63 -0
- package/node_modules/asynckit/parallel.js +43 -0
- package/node_modules/asynckit/serial.js +17 -0
- package/node_modules/asynckit/serialOrdered.js +75 -0
- package/node_modules/asynckit/stream.js +21 -0
- package/node_modules/axios/CHANGELOG.md +952 -0
- package/node_modules/axios/LICENSE +7 -0
- package/node_modules/axios/MIGRATION_GUIDE.md +3 -0
- package/node_modules/axios/README.md +1695 -0
- package/node_modules/axios/SECURITY.md +6 -0
- package/node_modules/axios/dist/axios.js +4172 -0
- package/node_modules/axios/dist/axios.js.map +1 -0
- package/node_modules/axios/dist/axios.min.js +2 -0
- package/node_modules/axios/dist/axios.min.js.map +1 -0
- package/node_modules/axios/dist/browser/axios.cjs +3638 -0
- package/node_modules/axios/dist/browser/axios.cjs.map +1 -0
- package/node_modules/axios/dist/esm/axios.js +3661 -0
- package/node_modules/axios/dist/esm/axios.js.map +1 -0
- package/node_modules/axios/dist/esm/axios.min.js +2 -0
- package/node_modules/axios/dist/esm/axios.min.js.map +1 -0
- package/node_modules/axios/dist/node/axios.cjs +4705 -0
- package/node_modules/axios/dist/node/axios.cjs.map +1 -0
- package/node_modules/axios/index.d.cts +545 -0
- package/node_modules/axios/index.d.ts +562 -0
- package/node_modules/axios/index.js +43 -0
- package/node_modules/axios/lib/adapters/README.md +37 -0
- package/node_modules/axios/lib/adapters/adapters.js +79 -0
- package/node_modules/axios/lib/adapters/fetch.js +227 -0
- package/node_modules/axios/lib/adapters/http.js +685 -0
- package/node_modules/axios/lib/adapters/xhr.js +190 -0
- package/node_modules/axios/lib/axios.js +89 -0
- package/node_modules/axios/lib/cancel/CancelToken.js +121 -0
- package/node_modules/axios/lib/cancel/CanceledError.js +25 -0
- package/node_modules/axios/lib/cancel/isCancel.js +5 -0
- package/node_modules/axios/lib/core/Axios.js +228 -0
- package/node_modules/axios/lib/core/AxiosError.js +100 -0
- package/node_modules/axios/lib/core/AxiosHeaders.js +302 -0
- package/node_modules/axios/lib/core/InterceptorManager.js +71 -0
- package/node_modules/axios/lib/core/README.md +8 -0
- package/node_modules/axios/lib/core/buildFullPath.js +21 -0
- package/node_modules/axios/lib/core/dispatchRequest.js +81 -0
- package/node_modules/axios/lib/core/mergeConfig.js +106 -0
- package/node_modules/axios/lib/core/settle.js +27 -0
- package/node_modules/axios/lib/core/transformData.js +28 -0
- package/node_modules/axios/lib/defaults/index.js +161 -0
- package/node_modules/axios/lib/defaults/transitional.js +7 -0
- package/node_modules/axios/lib/env/README.md +3 -0
- package/node_modules/axios/lib/env/classes/FormData.js +2 -0
- package/node_modules/axios/lib/env/data.js +1 -0
- package/node_modules/axios/lib/helpers/AxiosTransformStream.js +192 -0
- package/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +58 -0
- package/node_modules/axios/lib/helpers/HttpStatusCode.js +71 -0
- package/node_modules/axios/lib/helpers/README.md +7 -0
- package/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +28 -0
- package/node_modules/axios/lib/helpers/bind.js +7 -0
- package/node_modules/axios/lib/helpers/buildURL.js +63 -0
- package/node_modules/axios/lib/helpers/callbackify.js +16 -0
- package/node_modules/axios/lib/helpers/combineURLs.js +15 -0
- package/node_modules/axios/lib/helpers/composeSignals.js +46 -0
- package/node_modules/axios/lib/helpers/cookies.js +42 -0
- package/node_modules/axios/lib/helpers/deprecatedMethod.js +26 -0
- package/node_modules/axios/lib/helpers/formDataToJSON.js +95 -0
- package/node_modules/axios/lib/helpers/formDataToStream.js +111 -0
- package/node_modules/axios/lib/helpers/fromDataURI.js +53 -0
- package/node_modules/axios/lib/helpers/isAbsoluteURL.js +15 -0
- package/node_modules/axios/lib/helpers/isAxiosError.js +14 -0
- package/node_modules/axios/lib/helpers/isURLSameOrigin.js +67 -0
- package/node_modules/axios/lib/helpers/null.js +2 -0
- package/node_modules/axios/lib/helpers/parseHeaders.js +55 -0
- package/node_modules/axios/lib/helpers/parseProtocol.js +6 -0
- package/node_modules/axios/lib/helpers/progressEventReducer.js +32 -0
- package/node_modules/axios/lib/helpers/readBlob.js +15 -0
- package/node_modules/axios/lib/helpers/resolveConfig.js +57 -0
- package/node_modules/axios/lib/helpers/speedometer.js +55 -0
- package/node_modules/axios/lib/helpers/spread.js +28 -0
- package/node_modules/axios/lib/helpers/throttle.js +35 -0
- package/node_modules/axios/lib/helpers/toFormData.js +219 -0
- package/node_modules/axios/lib/helpers/toURLEncodedForm.js +18 -0
- package/node_modules/axios/lib/helpers/trackStream.js +55 -0
- package/node_modules/axios/lib/helpers/validator.js +91 -0
- package/node_modules/axios/lib/platform/browser/classes/Blob.js +3 -0
- package/node_modules/axios/lib/platform/browser/classes/FormData.js +3 -0
- package/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js +4 -0
- package/node_modules/axios/lib/platform/browser/index.js +13 -0
- package/node_modules/axios/lib/platform/common/utils.js +50 -0
- package/node_modules/axios/lib/platform/index.js +7 -0
- package/node_modules/axios/lib/platform/node/classes/FormData.js +3 -0
- package/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +4 -0
- package/node_modules/axios/lib/platform/node/index.js +12 -0
- package/node_modules/axios/lib/utils.js +728 -0
- package/node_modules/axios/package.json +219 -0
- package/node_modules/combined-stream/License +19 -0
- package/node_modules/combined-stream/Readme.md +138 -0
- package/node_modules/combined-stream/lib/combined_stream.js +208 -0
- package/node_modules/combined-stream/package.json +25 -0
- package/node_modules/delayed-stream/.npmignore +1 -0
- package/node_modules/delayed-stream/License +19 -0
- package/node_modules/delayed-stream/Makefile +7 -0
- package/node_modules/delayed-stream/Readme.md +141 -0
- package/node_modules/delayed-stream/lib/delayed_stream.js +107 -0
- package/node_modules/delayed-stream/package.json +27 -0
- package/node_modules/follow-redirects/LICENSE +18 -0
- package/node_modules/follow-redirects/README.md +155 -0
- package/node_modules/follow-redirects/debug.js +15 -0
- package/node_modules/follow-redirects/http.js +1 -0
- package/node_modules/follow-redirects/https.js +1 -0
- package/node_modules/follow-redirects/index.js +672 -0
- package/node_modules/follow-redirects/package.json +58 -0
- package/node_modules/form-data/License +19 -0
- package/node_modules/form-data/README.md.bak +358 -0
- package/node_modules/form-data/Readme.md +358 -0
- package/node_modules/form-data/index.d.ts +62 -0
- package/node_modules/form-data/lib/browser.js +2 -0
- package/node_modules/form-data/lib/form_data.js +501 -0
- package/node_modules/form-data/lib/populate.js +10 -0
- package/node_modules/form-data/package.json +68 -0
- package/node_modules/mime-db/HISTORY.md +507 -0
- package/node_modules/mime-db/LICENSE +23 -0
- package/node_modules/mime-db/README.md +100 -0
- package/node_modules/mime-db/db.json +8519 -0
- package/node_modules/mime-db/index.js +12 -0
- package/node_modules/mime-db/package.json +60 -0
- package/node_modules/mime-types/HISTORY.md +397 -0
- package/node_modules/mime-types/LICENSE +23 -0
- package/node_modules/mime-types/README.md +113 -0
- package/node_modules/mime-types/index.js +188 -0
- package/node_modules/mime-types/package.json +44 -0
- package/node_modules/proxy-from-env/.eslintrc +29 -0
- package/node_modules/proxy-from-env/.travis.yml +10 -0
- package/node_modules/proxy-from-env/LICENSE +20 -0
- package/node_modules/proxy-from-env/README.md +131 -0
- package/node_modules/proxy-from-env/index.js +108 -0
- package/node_modules/proxy-from-env/package.json +34 -0
- package/node_modules/proxy-from-env/test.js +483 -0
- package/node_modules/zod/LICENSE +21 -0
- package/node_modules/zod/README.md +2876 -0
- package/node_modules/zod/index.d.ts +2 -0
- package/node_modules/zod/lib/ZodError.d.ts +164 -0
- package/node_modules/zod/lib/ZodError.js +137 -0
- package/node_modules/zod/lib/__tests__/Mocker.d.ts +17 -0
- package/node_modules/zod/lib/__tests__/Mocker.js +57 -0
- package/node_modules/zod/lib/benchmarks/datetime.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/datetime.js +54 -0
- package/node_modules/zod/lib/benchmarks/discriminatedUnion.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/discriminatedUnion.js +79 -0
- package/node_modules/zod/lib/benchmarks/index.d.ts +1 -0
- package/node_modules/zod/lib/benchmarks/index.js +59 -0
- package/node_modules/zod/lib/benchmarks/ipv4.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/ipv4.js +54 -0
- package/node_modules/zod/lib/benchmarks/object.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/object.js +70 -0
- package/node_modules/zod/lib/benchmarks/primitives.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/primitives.js +170 -0
- package/node_modules/zod/lib/benchmarks/realworld.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/realworld.js +56 -0
- package/node_modules/zod/lib/benchmarks/string.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/string.js +55 -0
- package/node_modules/zod/lib/benchmarks/union.d.ts +5 -0
- package/node_modules/zod/lib/benchmarks/union.js +79 -0
- package/node_modules/zod/lib/errors.d.ts +5 -0
- package/node_modules/zod/lib/errors.js +17 -0
- package/node_modules/zod/lib/external.d.ts +6 -0
- package/node_modules/zod/lib/external.js +18 -0
- package/node_modules/zod/lib/helpers/enumUtil.d.ts +8 -0
- package/node_modules/zod/lib/helpers/enumUtil.js +2 -0
- package/node_modules/zod/lib/helpers/errorUtil.d.ts +9 -0
- package/node_modules/zod/lib/helpers/errorUtil.js +8 -0
- package/node_modules/zod/lib/helpers/parseUtil.d.ts +78 -0
- package/node_modules/zod/lib/helpers/parseUtil.js +125 -0
- package/node_modules/zod/lib/helpers/partialUtil.d.ts +8 -0
- package/node_modules/zod/lib/helpers/partialUtil.js +2 -0
- package/node_modules/zod/lib/helpers/typeAliases.d.ts +2 -0
- package/node_modules/zod/lib/helpers/typeAliases.js +2 -0
- package/node_modules/zod/lib/helpers/util.d.ts +82 -0
- package/node_modules/zod/lib/helpers/util.js +142 -0
- package/node_modules/zod/lib/index.d.ts +4 -0
- package/node_modules/zod/lib/index.js +29 -0
- package/node_modules/zod/lib/index.mjs +4236 -0
- package/node_modules/zod/lib/index.umd.js +4351 -0
- package/node_modules/zod/lib/locales/en.d.ts +3 -0
- package/node_modules/zod/lib/locales/en.js +129 -0
- package/node_modules/zod/lib/types.d.ts +1127 -0
- package/node_modules/zod/lib/types.js +3677 -0
- package/node_modules/zod/package.json +119 -0
- package/package.json +79 -0
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDocumentScrollHeight.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB,IAAI,MAAM,CAqDxD"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This function calculates the scroll height of the document, which is the actual height of the page from top to bottom.
|
|
3
|
+
*/
|
|
4
|
+
export default function getDocumentScrollHeight() {
|
|
5
|
+
const viewPortHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);
|
|
6
|
+
// Get the scroll height of the document's root element (usually the <html> element)
|
|
7
|
+
const scrollHeight = document.documentElement.scrollHeight;
|
|
8
|
+
const bodyScrollHeight = document.body.scrollHeight;
|
|
9
|
+
// In some situations, the default scroll height can be equal to the viewport height,
|
|
10
|
+
// but the body scroll height can be different. In such cases, return the body scroll height.
|
|
11
|
+
if (viewPortHeight === scrollHeight && bodyScrollHeight > scrollHeight) {
|
|
12
|
+
return bodyScrollHeight;
|
|
13
|
+
}
|
|
14
|
+
// In some cases, determining the page height can be challenging,
|
|
15
|
+
// for example, when using a 'vh' property on the body element.
|
|
16
|
+
// If that's the case, we need to traverse all elements and find the tallest one,
|
|
17
|
+
// which is a time-consuming operation.
|
|
18
|
+
let pageHeight = 0;
|
|
19
|
+
let largestNodeElement = document.querySelector('body');
|
|
20
|
+
if (bodyScrollHeight === scrollHeight && bodyScrollHeight === viewPortHeight) {
|
|
21
|
+
findHighestNode(document.documentElement.childNodes);
|
|
22
|
+
// There could be some elements above this largest element;
|
|
23
|
+
// add their heights to the result.
|
|
24
|
+
return pageHeight + largestNodeElement.getBoundingClientRect().top;
|
|
25
|
+
}
|
|
26
|
+
// The scrollHeight is accurate enough, return it.
|
|
27
|
+
return scrollHeight;
|
|
28
|
+
/**
|
|
29
|
+
* This function finds the largest HTML element on the page.
|
|
30
|
+
* @param nodesList - List of nodes to search through.
|
|
31
|
+
*/
|
|
32
|
+
function findHighestNode(nodesList) {
|
|
33
|
+
for (let i = nodesList.length - 1; i >= 0; i--) {
|
|
34
|
+
const currentNode = nodesList[i];
|
|
35
|
+
if (currentNode.scrollHeight && currentNode.clientHeight) {
|
|
36
|
+
const elHeight = Math.max(currentNode.scrollHeight, currentNode.clientHeight);
|
|
37
|
+
pageHeight = Math.max(elHeight, pageHeight);
|
|
38
|
+
if (elHeight === pageHeight) {
|
|
39
|
+
largestNodeElement = currentNode;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (currentNode.childNodes.length) {
|
|
43
|
+
findHighestNode(currentNode.childNodes);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=getDocumentScrollHeight.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDocumentScrollHeight.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getDocumentScrollHeight.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,uBAAuB;IAC7C,MAAM,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC;IAEhG,oFAAoF;IACpF,MAAM,YAAY,GAAG,QAAQ,CAAC,eAAe,CAAC,YAAY,CAAC;IAE3D,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;IAEpD,qFAAqF;IACrF,6FAA6F;IAC7F,IAAI,cAAc,KAAK,YAAY,IAAI,gBAAgB,GAAG,YAAY,EAAE,CAAC;QACvE,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,iEAAiE;IACjE,+DAA+D;IAC/D,iFAAiF;IACjF,uCAAuC;IACvC,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,kBAAkB,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAExD,IAAI,gBAAgB,KAAK,YAAY,IAAI,gBAAgB,KAAK,cAAc,EAAE,CAAC;QAC7E,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAErD,2DAA2D;QAC3D,mCAAmC;QACnC,OAAO,UAAU,GAAG,kBAAkB,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC;IACrE,CAAC;IAED,kDAAkD;IAClD,OAAO,YAAY,CAAC;IAEpB;;;OAGG;IACH,SAAS,eAAe,CAAC,SAAc;QACrC,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAEjC,IAAI,WAAW,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;gBACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC9E,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;gBAC5C,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;oBAC5B,kBAAkB,GAAG,WAAW,CAAC;gBACnC,CAAC;YACH,CAAC;YAED,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;gBAClC,eAAe,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC","sourcesContent":["/**\n * This function calculates the scroll height of the document, which is the actual height of the page from top to bottom.\n */\nexport default function getDocumentScrollHeight(): number {\n const viewPortHeight = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n\n // Get the scroll height of the document's root element (usually the <html> element)\n const scrollHeight = document.documentElement.scrollHeight;\n\n const bodyScrollHeight = document.body.scrollHeight;\n\n // In some situations, the default scroll height can be equal to the viewport height,\n // but the body scroll height can be different. In such cases, return the body scroll height.\n if (viewPortHeight === scrollHeight && bodyScrollHeight > scrollHeight) {\n return bodyScrollHeight;\n }\n\n // In some cases, determining the page height can be challenging,\n // for example, when using a 'vh' property on the body element.\n // If that's the case, we need to traverse all elements and find the tallest one,\n // which is a time-consuming operation.\n let pageHeight = 0;\n let largestNodeElement = document.querySelector('body');\n\n if (bodyScrollHeight === scrollHeight && bodyScrollHeight === viewPortHeight) {\n findHighestNode(document.documentElement.childNodes);\n\n // There could be some elements above this largest element;\n // add their heights to the result.\n return pageHeight + largestNodeElement.getBoundingClientRect().top;\n }\n\n // The scrollHeight is accurate enough, return it.\n return scrollHeight;\n\n /**\n * This function finds the largest HTML element on the page.\n * @param nodesList - List of nodes to search through.\n */\n function findHighestNode(nodesList: any) {\n for (let i = nodesList.length - 1; i >= 0; i--) {\n const currentNode = nodesList[i];\n\n if (currentNode.scrollHeight && currentNode.clientHeight) {\n const elHeight = Math.max(currentNode.scrollHeight, currentNode.clientHeight);\n pageHeight = Math.max(elHeight, pageHeight);\n if (elHeight === pageHeight) {\n largestNodeElement = currentNode;\n }\n }\n\n if (currentNode.childNodes.length) {\n findHighestNode(currentNode.childNodes);\n }\n }\n }\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ElementPosition } from '../../../core/domain/valueObjects/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Get the position of an HTML element relative to the top of the DOM.
|
|
4
|
+
*
|
|
5
|
+
* @param {HTMLElement} element - The element for which you want to retrieve the position.
|
|
6
|
+
* @returns {ElementPosition} - An object containing the height, width, horizontal (x), and vertical (y) offsets of the element.
|
|
7
|
+
*/
|
|
8
|
+
export default function getElementPositionTopDom(element: HTMLElement): ElementPosition;
|
|
9
|
+
//# sourceMappingURL=getElementPositionTopDom.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElementPositionTopDom.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAatF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the position of an HTML element relative to the top of the DOM.
|
|
3
|
+
*
|
|
4
|
+
* @param {HTMLElement} element - The element for which you want to retrieve the position.
|
|
5
|
+
* @returns {ElementPosition} - An object containing the height, width, horizontal (x), and vertical (y) offsets of the element.
|
|
6
|
+
*/
|
|
7
|
+
export default function getElementPositionTopDom(element) {
|
|
8
|
+
// Retrieve the element's height, width, horizontal offset (x), and vertical offset (y).
|
|
9
|
+
const height = element.offsetHeight;
|
|
10
|
+
const width = element.offsetWidth;
|
|
11
|
+
const x = element.offsetLeft;
|
|
12
|
+
const y = element.offsetTop;
|
|
13
|
+
return {
|
|
14
|
+
height,
|
|
15
|
+
width,
|
|
16
|
+
x,
|
|
17
|
+
y,
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=getElementPositionTopDom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElementPositionTopDom.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopDom.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,wBAAwB,CAAC,OAAoB;IACnE,wFAAwF;IACxF,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC;IAClC,MAAM,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;IAC7B,MAAM,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;IAE5B,OAAO;QACL,MAAM;QACN,KAAK;QACL,CAAC;QACD,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { ElementPosition } from '../../../core/domain/valueObjects/index.js';\n\n/**\n * Get the position of an HTML element relative to the top of the DOM.\n *\n * @param {HTMLElement} element - The element for which you want to retrieve the position.\n * @returns {ElementPosition} - An object containing the height, width, horizontal (x), and vertical (y) offsets of the element.\n */\nexport default function getElementPositionTopDom(element: HTMLElement): ElementPosition {\n // Retrieve the element's height, width, horizontal offset (x), and vertical offset (y).\n const height = element.offsetHeight;\n const width = element.offsetWidth;\n const x = element.offsetLeft;\n const y = element.offsetTop;\n\n return {\n height,\n width,\n x,\n y,\n };\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ElementPosition } from '../../../core/domain/valueObjects/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* Get the position of an HTML element relative to the top of the window's viewport.
|
|
4
|
+
*
|
|
5
|
+
* @param {HTMLElement} element - The element for which you want to retrieve the position.
|
|
6
|
+
* @returns {ElementPosition} - An object containing the rounded height, width, horizontal (x), and vertical (y) positions of the element.
|
|
7
|
+
*/
|
|
8
|
+
export default function getElementPositionTopWindow(element: HTMLElement): ElementPosition;
|
|
9
|
+
//# sourceMappingURL=getElementPositionTopWindow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElementPositionTopWindow.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,CAgBzF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the position of an HTML element relative to the top of the window's viewport.
|
|
3
|
+
*
|
|
4
|
+
* @param {HTMLElement} element - The element for which you want to retrieve the position.
|
|
5
|
+
* @returns {ElementPosition} - An object containing the rounded height, width, horizontal (x), and vertical (y) positions of the element.
|
|
6
|
+
*/
|
|
7
|
+
export default function getElementPositionTopWindow(element) {
|
|
8
|
+
// Retrieve the element's position and dimensions relative to the viewport.
|
|
9
|
+
const { height, width, left, top } = element.getBoundingClientRect();
|
|
10
|
+
// Round the values to ensure accuracy.
|
|
11
|
+
const roundedHeight = Math.round(height);
|
|
12
|
+
const roundedWidth = Math.round(width);
|
|
13
|
+
const roundedX = Math.round(left);
|
|
14
|
+
const roundedY = Math.round(top);
|
|
15
|
+
return {
|
|
16
|
+
height: roundedHeight,
|
|
17
|
+
width: roundedWidth,
|
|
18
|
+
x: roundedX,
|
|
19
|
+
y: roundedY,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=getElementPositionTopWindow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getElementPositionTopWindow.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getElementPositionTopWindow.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,2BAA2B,CAAC,OAAoB;IACtE,2EAA2E;IAC3E,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAErE,uCAAuC;IACvC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAEjC,OAAO;QACL,MAAM,EAAE,aAAa;QACrB,KAAK,EAAE,YAAY;QACnB,CAAC,EAAE,QAAQ;QACX,CAAC,EAAE,QAAQ;KACZ,CAAC;AACJ,CAAC","sourcesContent":["import { ElementPosition } from '../../../core/domain/valueObjects/index.js';\n\n/**\n * Get the position of an HTML element relative to the top of the window's viewport.\n *\n * @param {HTMLElement} element - The element for which you want to retrieve the position.\n * @returns {ElementPosition} - An object containing the rounded height, width, horizontal (x), and vertical (y) positions of the element.\n */\nexport default function getElementPositionTopWindow(element: HTMLElement): ElementPosition {\n // Retrieve the element's position and dimensions relative to the viewport.\n const { height, width, left, top } = element.getBoundingClientRect();\n\n // Round the values to ensure accuracy.\n const roundedHeight = Math.round(height);\n const roundedWidth = Math.round(width);\n const roundedX = Math.round(left);\n const roundedY = Math.round(top);\n\n return {\n height: roundedHeight,\n width: roundedWidth,\n x: roundedX,\n y: roundedY,\n };\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ScreenDimensions } from '../../../desktopBrowser/clientSideScript/screenDimensions.interfaces.js';
|
|
2
|
+
/**
|
|
3
|
+
* Retrieve various screen dimensions, including body, HTML, and window properties.
|
|
4
|
+
*
|
|
5
|
+
* @returns {ScreenDimensions} - An object containing dimensions for body, HTML, and window properties.
|
|
6
|
+
*/
|
|
7
|
+
export default function getScreenDimensions(): ScreenDimensions;
|
|
8
|
+
//# sourceMappingURL=getScreenDimensions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getScreenDimensions.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,yEAAyE,CAAC;AAE3G;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,IAAI,gBAAgB,CAoC9D"}
|
package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.js
ADDED
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Retrieve various screen dimensions, including body, HTML, and window properties.
|
|
3
|
+
*
|
|
4
|
+
* @returns {ScreenDimensions} - An object containing dimensions for body, HTML, and window properties.
|
|
5
|
+
*/
|
|
6
|
+
export default function getScreenDimensions() {
|
|
7
|
+
const body = document.body;
|
|
8
|
+
const html = document.documentElement;
|
|
9
|
+
// Extract body dimensions, default to 0 if body is not available.
|
|
10
|
+
const bodyDimensions = {
|
|
11
|
+
scrollHeight: body?.scrollHeight || 0,
|
|
12
|
+
offsetHeight: body?.offsetHeight || 0,
|
|
13
|
+
};
|
|
14
|
+
// Extract HTML dimensions, default to 0 if html is not available.
|
|
15
|
+
const htmlDimensions = {
|
|
16
|
+
clientHeight: html?.clientHeight || 0,
|
|
17
|
+
clientWidth: html?.clientWidth || 0,
|
|
18
|
+
scrollHeight: html?.scrollHeight || 0,
|
|
19
|
+
scrollWidth: html?.scrollWidth || 0,
|
|
20
|
+
offsetHeight: html?.offsetHeight || 0,
|
|
21
|
+
};
|
|
22
|
+
const windowDimensions = {
|
|
23
|
+
innerWidth: window.innerWidth,
|
|
24
|
+
innerHeight: window.innerHeight,
|
|
25
|
+
outerHeight: window.outerHeight || htmlDimensions.clientHeight,
|
|
26
|
+
outerWidth: window.outerWidth || htmlDimensions.clientWidth,
|
|
27
|
+
devicePixelRatio: window.devicePixelRatio,
|
|
28
|
+
screenWidth: window.screen.width,
|
|
29
|
+
screenHeight: window.screen.height,
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
dimensions: {
|
|
33
|
+
body: bodyDimensions,
|
|
34
|
+
html: htmlDimensions,
|
|
35
|
+
window: windowDimensions,
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=getScreenDimensions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getScreenDimensions.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/getScreenDimensions.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB;IACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;IAC3B,MAAM,IAAI,GAAG,QAAQ,CAAC,eAAe,CAAC;IAEtC,kEAAkE;IAClE,MAAM,cAAc,GAAG;QACrB,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC;QACrC,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC;KACtC,CAAC;IAEF,kEAAkE;IAClE,MAAM,cAAc,GAAG;QACrB,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC;QACrC,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,CAAC;QACnC,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC;QACrC,WAAW,EAAE,IAAI,EAAE,WAAW,IAAI,CAAC;QACnC,YAAY,EAAE,IAAI,EAAE,YAAY,IAAI,CAAC;KACtC,CAAC;IAEF,MAAM,gBAAgB,GAAG;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,cAAc,CAAC,YAAY;QAC9D,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,cAAc,CAAC,WAAW;QAC3D,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK;QAChC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;KACnC,CAAC;IAEF,OAAO;QACL,UAAU,EAAE;YACV,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,cAAc;YACpB,MAAM,EAAE,gBAAgB;SACzB;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { ScreenDimensions } from '../../../desktopBrowser/clientSideScript/screenDimensions.interfaces.js';\n\n/**\n * Retrieve various screen dimensions, including body, HTML, and window properties.\n *\n * @returns {ScreenDimensions} - An object containing dimensions for body, HTML, and window properties.\n */\nexport default function getScreenDimensions(): ScreenDimensions {\n const body = document.body;\n const html = document.documentElement;\n\n // Extract body dimensions, default to 0 if body is not available.\n const bodyDimensions = {\n scrollHeight: body?.scrollHeight || 0,\n offsetHeight: body?.offsetHeight || 0,\n };\n\n // Extract HTML dimensions, default to 0 if html is not available.\n const htmlDimensions = {\n clientHeight: html?.clientHeight || 0,\n clientWidth: html?.clientWidth || 0,\n scrollHeight: html?.scrollHeight || 0,\n scrollWidth: html?.scrollWidth || 0,\n offsetHeight: html?.offsetHeight || 0,\n };\n\n const windowDimensions = {\n innerWidth: window.innerWidth,\n innerHeight: window.innerHeight,\n outerHeight: window.outerHeight || htmlDimensions.clientHeight,\n outerWidth: window.outerWidth || htmlDimensions.clientWidth,\n devicePixelRatio: window.devicePixelRatio,\n screenWidth: window.screen.width,\n screenHeight: window.screen.height,\n };\n\n return {\n dimensions: {\n body: bodyDimensions,\n html: htmlDimensions,\n window: windowDimensions,\n },\n };\n}\n"]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
export interface ScreenDimensions {
|
|
2
|
+
dimensions: {
|
|
3
|
+
body: {
|
|
4
|
+
/**
|
|
5
|
+
* Minimum height required by the element to fit all content in the viewport without a vertical scrollbar.
|
|
6
|
+
* Includes padding but excludes border, margin, or horizontal scrollbar.
|
|
7
|
+
* Can also include the height of pseudo-elements like ::before or ::after.
|
|
8
|
+
*/
|
|
9
|
+
scrollHeight?: number;
|
|
10
|
+
/**
|
|
11
|
+
* Measurement in pixels of the element's CSS height.
|
|
12
|
+
* Includes borders, padding, and horizontal scrollbars if rendered.
|
|
13
|
+
* Excludes pseudo-elements like ::before or ::after.
|
|
14
|
+
* For the document body, includes total linear content height instead of the CSS height.
|
|
15
|
+
* Ignores floated elements extending below other linear content.
|
|
16
|
+
*/
|
|
17
|
+
offsetHeight?: number;
|
|
18
|
+
};
|
|
19
|
+
html: {
|
|
20
|
+
/**
|
|
21
|
+
* Inner width of an element in pixels.
|
|
22
|
+
* Includes padding but excludes borders, margins, and vertical scrollbars if present.
|
|
23
|
+
*/
|
|
24
|
+
clientWidth?: number;
|
|
25
|
+
/**
|
|
26
|
+
* Measurement in pixels of the element's CSS width.
|
|
27
|
+
* Includes borders, padding, and horizontal scrollbars if rendered.
|
|
28
|
+
* Excludes pseudo-elements like ::before or ::after.
|
|
29
|
+
* If content can fit without horizontal scrollbar, scrollWidth is equal to clientWidth.
|
|
30
|
+
*/
|
|
31
|
+
scrollWidth?: number;
|
|
32
|
+
/**
|
|
33
|
+
* Inner height of an element in pixels.
|
|
34
|
+
* Includes padding but excludes borders, margins, and horizontal scrollbars if present.
|
|
35
|
+
*/
|
|
36
|
+
clientHeight?: number;
|
|
37
|
+
/**
|
|
38
|
+
* Measurement in pixels of the element's CSS height.
|
|
39
|
+
* Includes borders, padding, and horizontal scrollbars if rendered.
|
|
40
|
+
* Excludes pseudo-elements like ::before or ::after.
|
|
41
|
+
* If content can fit without vertical scrollbar, scrollHeight is equal to clientHeight.
|
|
42
|
+
*/
|
|
43
|
+
scrollHeight?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Measurement in pixels of the element's CSS height.
|
|
46
|
+
* Includes borders, padding, and horizontal scrollbars if rendered.
|
|
47
|
+
* Excludes pseudo-elements like ::before or ::after.
|
|
48
|
+
* For the document body, includes total linear content height instead of the CSS height.
|
|
49
|
+
* Ignores floated elements extending below other linear content.
|
|
50
|
+
*/
|
|
51
|
+
offsetHeight?: number;
|
|
52
|
+
};
|
|
53
|
+
window: {
|
|
54
|
+
/**
|
|
55
|
+
* Width of the browser window viewport in pixels, including the vertical scrollbar if rendered.
|
|
56
|
+
*/
|
|
57
|
+
innerWidth?: number;
|
|
58
|
+
/**
|
|
59
|
+
* Height of the browser window viewport in pixels, including the horizontal scrollbar if rendered.
|
|
60
|
+
*/
|
|
61
|
+
innerHeight?: number;
|
|
62
|
+
/**
|
|
63
|
+
* Width of the entire browser window, including sidebar (if expanded), window chrome, and resizing borders/handles.
|
|
64
|
+
*/
|
|
65
|
+
outerWidth?: number;
|
|
66
|
+
/**
|
|
67
|
+
* Height of the entire browser window, including sidebar (if expanded), window chrome, and resizing borders/handles.
|
|
68
|
+
*/
|
|
69
|
+
outerHeight?: number;
|
|
70
|
+
/**
|
|
71
|
+
* Ratio of physical pixels to CSS pixels for the current display device.
|
|
72
|
+
*/
|
|
73
|
+
devicePixelRatio?: number;
|
|
74
|
+
/**
|
|
75
|
+
* Width of the screen in pixels.
|
|
76
|
+
*/
|
|
77
|
+
screenWidth?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Height of the screen in pixels.
|
|
80
|
+
*/
|
|
81
|
+
screenHeight?: number;
|
|
82
|
+
};
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=screenDimensions.interfaces.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenDimensions.interfaces.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE;QACV,IAAI,EAAE;YACJ;;;;eAIG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB;;;;;;eAMG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,IAAI,EAAE;YACJ;;;eAGG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;;;;eAKG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;;eAGG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB;;;;;eAKG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB;;;;;;eAMG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;QACF,MAAM,EAAE;YACN;;eAEG;YACH,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB;;eAEG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;eAEG;YACH,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB;;eAEG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;eAEG;YACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B;;eAEG;YACH,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB;;eAEG;YACH,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC;KACH,CAAC;CACH"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screenDimensions.interfaces.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/screenDimensions.interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Represents various screen dimensions including body, HTML, and window properties.\nexport interface ScreenDimensions {\n dimensions: {\n body: {\n /**\n * Minimum height required by the element to fit all content in the viewport without a vertical scrollbar.\n * Includes padding but excludes border, margin, or horizontal scrollbar.\n * Can also include the height of pseudo-elements like ::before or ::after.\n */\n scrollHeight?: number;\n /**\n * Measurement in pixels of the element's CSS height.\n * Includes borders, padding, and horizontal scrollbars if rendered.\n * Excludes pseudo-elements like ::before or ::after.\n * For the document body, includes total linear content height instead of the CSS height.\n * Ignores floated elements extending below other linear content.\n */\n offsetHeight?: number;\n };\n html: {\n /**\n * Inner width of an element in pixels.\n * Includes padding but excludes borders, margins, and vertical scrollbars if present.\n */\n clientWidth?: number;\n /**\n * Measurement in pixels of the element's CSS width.\n * Includes borders, padding, and horizontal scrollbars if rendered.\n * Excludes pseudo-elements like ::before or ::after.\n * If content can fit without horizontal scrollbar, scrollWidth is equal to clientWidth.\n */\n scrollWidth?: number;\n /**\n * Inner height of an element in pixels.\n * Includes padding but excludes borders, margins, and horizontal scrollbars if present.\n */\n clientHeight?: number;\n /**\n * Measurement in pixels of the element's CSS height.\n * Includes borders, padding, and horizontal scrollbars if rendered.\n * Excludes pseudo-elements like ::before or ::after.\n * If content can fit without vertical scrollbar, scrollHeight is equal to clientHeight.\n */\n scrollHeight?: number;\n /**\n * Measurement in pixels of the element's CSS height.\n * Includes borders, padding, and horizontal scrollbars if rendered.\n * Excludes pseudo-elements like ::before or ::after.\n * For the document body, includes total linear content height instead of the CSS height.\n * Ignores floated elements extending below other linear content.\n */\n offsetHeight?: number;\n };\n window: {\n /**\n * Width of the browser window viewport in pixels, including the vertical scrollbar if rendered.\n */\n innerWidth?: number;\n /**\n * Height of the browser window viewport in pixels, including the horizontal scrollbar if rendered.\n */\n innerHeight?: number;\n /**\n * Width of the entire browser window, including sidebar (if expanded), window chrome, and resizing borders/handles.\n */\n outerWidth?: number;\n /**\n * Height of the entire browser window, including sidebar (if expanded), window chrome, and resizing borders/handles.\n */\n outerHeight?: number;\n /**\n * Ratio of physical pixels to CSS pixels for the current display device.\n */\n devicePixelRatio?: number;\n /**\n * Width of the screen in pixels.\n */\n screenWidth?: number;\n /**\n * Height of the screen in pixels.\n */\n screenHeight?: number;\n };\n };\n}\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scroll an HTML element into the top of the viewport.
|
|
3
|
+
*
|
|
4
|
+
* @param {HTMLElement} element - The element to scroll into view.
|
|
5
|
+
* @returns {number} - The previous scroll position before the scroll operation.
|
|
6
|
+
*/
|
|
7
|
+
export default function scrollElementIntoView(element: HTMLElement): number;
|
|
8
|
+
//# sourceMappingURL=scrollElementIntoView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollElementIntoView.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,CAmC1E"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scroll an HTML element into the top of the viewport.
|
|
3
|
+
*
|
|
4
|
+
* @param {HTMLElement} element - The element to scroll into view.
|
|
5
|
+
* @returns {number} - The previous scroll position before the scroll operation.
|
|
6
|
+
*/
|
|
7
|
+
export default function scrollElementIntoView(element) {
|
|
8
|
+
let currentPosition = 0;
|
|
9
|
+
const htmlNode = document.querySelector('html');
|
|
10
|
+
const bodyNode = document.querySelector('body');
|
|
11
|
+
if (htmlNode && htmlNode.scrollTop > 0) {
|
|
12
|
+
currentPosition = htmlNode.scrollTop;
|
|
13
|
+
}
|
|
14
|
+
else if (bodyNode && bodyNode.scrollTop > 0) {
|
|
15
|
+
currentPosition = bodyNode.scrollTop;
|
|
16
|
+
}
|
|
17
|
+
const { top } = element.getBoundingClientRect();
|
|
18
|
+
const yPosition = top;
|
|
19
|
+
// Scroll using the HTML element if it has a scrollable height.
|
|
20
|
+
if (htmlNode && htmlNode.scrollHeight > htmlNode.clientHeight) {
|
|
21
|
+
htmlNode.scrollTop = yPosition;
|
|
22
|
+
if (htmlNode.scrollTop === yPosition) {
|
|
23
|
+
return currentPosition;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// If scrolling with HTML didn't work, try scrolling with the body element.
|
|
27
|
+
if (bodyNode && bodyNode.scrollHeight > bodyNode.clientHeight) {
|
|
28
|
+
bodyNode.scrollTop = yPosition;
|
|
29
|
+
if (bodyNode.scrollTop === yPosition) {
|
|
30
|
+
return currentPosition;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return currentPosition;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=scrollElementIntoView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollElementIntoView.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollElementIntoView.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,qBAAqB,CAAC,OAAoB;IAChE,IAAI,eAAe,GAAG,CAAC,CAAC;IAExB,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAEhD,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QACvC,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC;IACvC,CAAC;SAAM,IAAI,QAAQ,IAAI,QAAQ,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;QAC9C,eAAe,GAAG,QAAQ,CAAC,SAAS,CAAC;IACvC,CAAC;IAED,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAEhD,MAAM,SAAS,GAAG,GAAG,CAAC;IAEtB,+DAA+D;IAC/D,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC9D,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/B,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,eAAe,CAAC;QACzB,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC9D,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/B,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO,eAAe,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAC;AACzB,CAAC","sourcesContent":["/**\n * Scroll an HTML element into the top of the viewport.\n *\n * @param {HTMLElement} element - The element to scroll into view.\n * @returns {number} - The previous scroll position before the scroll operation.\n */\nexport default function scrollElementIntoView(element: HTMLElement): number {\n let currentPosition = 0;\n\n const htmlNode = document.querySelector('html');\n const bodyNode = document.querySelector('body');\n\n if (htmlNode && htmlNode.scrollTop > 0) {\n currentPosition = htmlNode.scrollTop;\n } else if (bodyNode && bodyNode.scrollTop > 0) {\n currentPosition = bodyNode.scrollTop;\n }\n\n const { top } = element.getBoundingClientRect();\n\n const yPosition = top;\n\n // Scroll using the HTML element if it has a scrollable height.\n if (htmlNode && htmlNode.scrollHeight > htmlNode.clientHeight) {\n htmlNode.scrollTop = yPosition;\n\n if (htmlNode.scrollTop === yPosition) {\n return currentPosition;\n }\n }\n\n // If scrolling with HTML didn't work, try scrolling with the body element.\n if (bodyNode && bodyNode.scrollHeight > bodyNode.clientHeight) {\n bodyNode.scrollTop = yPosition;\n\n if (bodyNode.scrollTop === yPosition) {\n return currentPosition;\n }\n }\n\n return currentPosition;\n}\n"]}
|
package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scroll the document to a specific vertical position on the screen.
|
|
3
|
+
*
|
|
4
|
+
* @param {number} yPosition - The vertical position to scroll to.
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export default function scrollToPosition(yPosition: number): void;
|
|
8
|
+
//# sourceMappingURL=scrollToPosition.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollToPosition.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAuBhE"}
|
package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Scroll the document to a specific vertical position on the screen.
|
|
3
|
+
*
|
|
4
|
+
* @param {number} yPosition - The vertical position to scroll to.
|
|
5
|
+
* @returns {void}
|
|
6
|
+
*/
|
|
7
|
+
export default function scrollToPosition(yPosition) {
|
|
8
|
+
// Try scrolling with the HTML element if it's scrollable.
|
|
9
|
+
const htmlNode = document.querySelector('html');
|
|
10
|
+
if (htmlNode && htmlNode.scrollHeight > htmlNode.clientHeight) {
|
|
11
|
+
htmlNode.scrollTop = yPosition;
|
|
12
|
+
if (htmlNode.scrollTop === yPosition) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
// If scrolling with HTML didn't work, try scrolling with the body element.
|
|
17
|
+
const bodyNode = document.querySelector('body');
|
|
18
|
+
if (bodyNode && bodyNode.scrollHeight > bodyNode.clientHeight) {
|
|
19
|
+
bodyNode.scrollTop = yPosition;
|
|
20
|
+
if (bodyNode.scrollTop === yPosition) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
// If scrolling with HTML and body didn't work, try scrolling with the document.
|
|
25
|
+
(document.scrollingElement || document.documentElement).scrollTop = yPosition;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=scrollToPosition.js.map
|
package/build/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scrollToPosition.js","sourceRoot":"","sources":["../../../../lib/adapter/desktopBrowserClientOperationAdapter/clientSideScripts/scrollToPosition.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,OAAO,UAAU,gBAAgB,CAAC,SAAiB;IACxD,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC9D,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/B,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAChD,IAAI,QAAQ,IAAI,QAAQ,CAAC,YAAY,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC9D,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC;QAE/B,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,CAAC,QAAQ,CAAC,gBAAgB,IAAI,QAAQ,CAAC,eAAe,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;AAChF,CAAC","sourcesContent":["/**\n * Scroll the document to a specific vertical position on the screen.\n *\n * @param {number} yPosition - The vertical position to scroll to.\n * @returns {void}\n */\nexport default function scrollToPosition(yPosition: number): void {\n // Try scrolling with the HTML element if it's scrollable.\n const htmlNode = document.querySelector('html');\n if (htmlNode && htmlNode.scrollHeight > htmlNode.clientHeight) {\n htmlNode.scrollTop = yPosition;\n\n if (htmlNode.scrollTop === yPosition) {\n return;\n }\n }\n\n // If scrolling with HTML didn't work, try scrolling with the body element.\n const bodyNode = document.querySelector('body');\n if (bodyNode && bodyNode.scrollHeight > bodyNode.clientHeight) {\n bodyNode.scrollTop = yPosition;\n\n if (bodyNode.scrollTop === yPosition) {\n return;\n }\n }\n\n // If scrolling with HTML and body didn't work, try scrolling with the document.\n (document.scrollingElement || document.documentElement).scrollTop = yPosition;\n}\n"]}
|
package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ElementPosition } from '../../core/domain/valueObjects/index.js';
|
|
2
|
+
import { ScreenDimensions } from '../../desktopBrowser/clientSideScript/screenDimensions.interfaces';
|
|
3
|
+
import { Executor } from '../../desktopBrowser/methods/methods.interface';
|
|
4
|
+
import { ClientSideOperationPort } from '../../port/clientSideOperationPort/clientSideOperationPort';
|
|
5
|
+
export declare class DesktopBrowserClientOperationAdapter implements ClientSideOperationPort {
|
|
6
|
+
getDocumentScrollHeight(executor: Executor): Promise<number>;
|
|
7
|
+
getElementPositionTopDom(executor: Executor, element: HTMLElement): Promise<ElementPosition>;
|
|
8
|
+
getElementPositionTopWindow(executor: Executor, element: HTMLElement): Promise<ElementPosition>;
|
|
9
|
+
getScreenDimensions(executor: Executor): Promise<ScreenDimensions>;
|
|
10
|
+
scrollElementIntoView(executor: Executor, element: HTMLElement): Promise<number>;
|
|
11
|
+
scrollToPosition(executor: Executor, yPosition: number): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=desktopBrowserClientOperationAdapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"desktopBrowserClientOperationAdapter.d.ts","sourceRoot":"","sources":["../../../lib/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,mEAAmE,CAAC;AACrG,OAAO,EAAE,QAAQ,EAAE,MAAM,gDAAgD,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,4DAA4D,CAAC;AAQrG,qBAAa,oCAAqC,YAAW,uBAAuB;IAC5E,uBAAuB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAI5D,wBAAwB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAI5F,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAI/F,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAIlE,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IAIhF,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG7E"}
|
package/build/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.js
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import getDocumentScrollHeight from './clientSideScripts/getDocumentScrollHeight.js';
|
|
2
|
+
import getElementPositionTopDom from './clientSideScripts/getElementPositionTopDom.js';
|
|
3
|
+
import getElementPositionTopWindow from './clientSideScripts/getElementPositionTopWindow.js';
|
|
4
|
+
import getScreenDimensions from './clientSideScripts/getScreenDimensions.js';
|
|
5
|
+
import scrollElementIntoView from './clientSideScripts/scrollElementIntoView.js';
|
|
6
|
+
import scrollToPosition from './clientSideScripts/scrollToPosition.js';
|
|
7
|
+
export class DesktopBrowserClientOperationAdapter {
|
|
8
|
+
async getDocumentScrollHeight(executor) {
|
|
9
|
+
return await executor(getDocumentScrollHeight);
|
|
10
|
+
}
|
|
11
|
+
async getElementPositionTopDom(executor, element) {
|
|
12
|
+
return await executor(getElementPositionTopDom, element);
|
|
13
|
+
}
|
|
14
|
+
async getElementPositionTopWindow(executor, element) {
|
|
15
|
+
return await executor(getElementPositionTopWindow, element);
|
|
16
|
+
}
|
|
17
|
+
async getScreenDimensions(executor) {
|
|
18
|
+
return executor(getScreenDimensions);
|
|
19
|
+
}
|
|
20
|
+
async scrollElementIntoView(executor, element) {
|
|
21
|
+
return executor(scrollElementIntoView, element);
|
|
22
|
+
}
|
|
23
|
+
async scrollToPosition(executor, yPosition) {
|
|
24
|
+
return executor(scrollToPosition, yPosition);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=desktopBrowserClientOperationAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"desktopBrowserClientOperationAdapter.js","sourceRoot":"","sources":["../../../lib/adapter/desktopBrowserClientOperationAdapter/desktopBrowserClientOperationAdapter.ts"],"names":[],"mappings":"AAIA,OAAO,uBAAuB,MAAM,gDAAgD,CAAC;AACrF,OAAO,wBAAwB,MAAM,iDAAiD,CAAC;AACvF,OAAO,2BAA2B,MAAM,oDAAoD,CAAC;AAC7F,OAAO,mBAAmB,MAAM,4CAA4C,CAAC;AAC7E,OAAO,qBAAqB,MAAM,8CAA8C,CAAC;AACjF,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AAEvE,MAAM,OAAO,oCAAoC;IAC/C,KAAK,CAAC,uBAAuB,CAAC,QAAkB;QAC9C,OAAO,MAAM,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,QAAkB,EAAE,OAAoB;QACrE,OAAO,MAAM,QAAQ,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,2BAA2B,CAAC,QAAkB,EAAE,OAAoB;QACxE,OAAO,MAAM,QAAQ,CAAC,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,QAAkB;QAC1C,OAAO,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAkB,EAAE,OAAoB;QAClE,OAAO,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,QAAkB,EAAE,SAAiB;QAC1D,OAAO,QAAQ,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;IAC/C,CAAC;CACF","sourcesContent":["import { ElementPosition } from '../../core/domain/valueObjects/index.js';\nimport { ScreenDimensions } from '../../desktopBrowser/clientSideScript/screenDimensions.interfaces';\nimport { Executor } from '../../desktopBrowser/methods/methods.interface';\nimport { ClientSideOperationPort } from '../../port/clientSideOperationPort/clientSideOperationPort';\nimport getDocumentScrollHeight from './clientSideScripts/getDocumentScrollHeight.js';\nimport getElementPositionTopDom from './clientSideScripts/getElementPositionTopDom.js';\nimport getElementPositionTopWindow from './clientSideScripts/getElementPositionTopWindow.js';\nimport getScreenDimensions from './clientSideScripts/getScreenDimensions.js';\nimport scrollElementIntoView from './clientSideScripts/scrollElementIntoView.js';\nimport scrollToPosition from './clientSideScripts/scrollToPosition.js';\n\nexport class DesktopBrowserClientOperationAdapter implements ClientSideOperationPort {\n async getDocumentScrollHeight(executor: Executor): Promise<number> {\n return await executor(getDocumentScrollHeight);\n }\n\n async getElementPositionTopDom(executor: Executor, element: HTMLElement): Promise<ElementPosition> {\n return await executor(getElementPositionTopDom, element);\n }\n\n async getElementPositionTopWindow(executor: Executor, element: HTMLElement): Promise<ElementPosition> {\n return await executor(getElementPositionTopWindow, element);\n }\n\n async getScreenDimensions(executor: Executor): Promise<ScreenDimensions> {\n return executor(getScreenDimensions);\n }\n\n async scrollElementIntoView(executor: Executor, element: HTMLElement): Promise<number> {\n return executor(scrollElementIntoView, element);\n }\n\n async scrollToPosition(executor: Executor, yPosition: number): Promise<void> {\n return executor(scrollToPosition, yPosition);\n }\n}\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { LocalSaveScreenshotAdapterOptions } from './localSaveScreenshot.interface.js';
|
|
2
|
+
/**
|
|
3
|
+
* Default options for the screenshot tracking adapter.
|
|
4
|
+
* These options are used to configure how screenshots are saved locally.
|
|
5
|
+
*/
|
|
6
|
+
export declare const DEFAULT_LOCAL_SAVE_SCREENSHOT_OPTIONS: Partial<LocalSaveScreenshotAdapterOptions>;
|
|
7
|
+
/**
|
|
8
|
+
* Sets and returns the configuration options for the screenshot tracking adapter.
|
|
9
|
+
*
|
|
10
|
+
* @param options - The configuration options to set.
|
|
11
|
+
* @returns The updated configuration options.
|
|
12
|
+
*/
|
|
13
|
+
export declare function setLocalSaveScreenshotOptions(options?: LocalSaveScreenshotAdapterOptions): LocalSaveScreenshotAdapterOptions;
|
|
14
|
+
//# sourceMappingURL=default.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/driven/localSaveScreenshot/default.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AAKvF;;;GAGG;AACH,eAAO,MAAM,qCAAqC,EAAE,OAAO,CAAC,iCAAiC,CAG5F,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,CAAC,EAAE,iCAAiC,GAC1C,iCAAiC,CAEnC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import lodash from 'lodash';
|
|
2
|
+
const { merge } = lodash;
|
|
3
|
+
/**
|
|
4
|
+
* Default options for the screenshot tracking adapter.
|
|
5
|
+
* These options are used to configure how screenshots are saved locally.
|
|
6
|
+
*/
|
|
7
|
+
export const DEFAULT_LOCAL_SAVE_SCREENSHOT_OPTIONS = {
|
|
8
|
+
rootFolder: './.tmp/',
|
|
9
|
+
formatImageName: '{name}-{browserName}-{width}x{height}-dpr-{dpr}',
|
|
10
|
+
};
|
|
11
|
+
/**
|
|
12
|
+
* Sets and returns the configuration options for the screenshot tracking adapter.
|
|
13
|
+
*
|
|
14
|
+
* @param options - The configuration options to set.
|
|
15
|
+
* @returns The updated configuration options.
|
|
16
|
+
*/
|
|
17
|
+
export function setLocalSaveScreenshotOptions(options) {
|
|
18
|
+
return merge(DEFAULT_LOCAL_SAVE_SCREENSHOT_OPTIONS, options);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=default.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"default.js","sourceRoot":"","sources":["../../../../lib/adapter/driven/localSaveScreenshot/default.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;AAEzB;;;GAGG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAA+C;IAC/F,UAAU,EAAE,SAAS;IACrB,eAAe,EAAE,iDAAiD;CACnE,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAC3C,OAA2C;IAE3C,OAAO,KAAK,CAAC,qCAAqC,EAAE,OAAO,CAAC,CAAC;AAC/D,CAAC","sourcesContent":["import { LocalSaveScreenshotAdapterOptions } from './localSaveScreenshot.interface.js';\nimport lodash from 'lodash';\n\nconst { merge } = lodash;\n\n/**\n * Default options for the screenshot tracking adapter.\n * These options are used to configure how screenshots are saved locally.\n */\nexport const DEFAULT_LOCAL_SAVE_SCREENSHOT_OPTIONS: Partial<LocalSaveScreenshotAdapterOptions> = {\n rootFolder: './.tmp/',\n formatImageName: '{name}-{browserName}-{width}x{height}-dpr-{dpr}',\n};\n\n/**\n * Sets and returns the configuration options for the screenshot tracking adapter.\n *\n * @param options - The configuration options to set.\n * @returns The updated configuration options.\n */\nexport function setLocalSaveScreenshotOptions(\n options?: LocalSaveScreenshotAdapterOptions,\n): LocalSaveScreenshotAdapterOptions {\n return merge(DEFAULT_LOCAL_SAVE_SCREENSHOT_OPTIONS, options);\n}\n"]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { PermanentStorageResult } from '../../../domain/model/permanentStorageResult.interface.js';
|
|
2
|
+
import { SaveBase64ImageOptions } from '../../../domain/model/saveBase64ImageOptions.interface.js';
|
|
3
|
+
import { PermanentStorageDrivenPort } from '../../../port/driven/permanentStoragePort.js';
|
|
4
|
+
import { LocalSaveScreenshotAdapterOptions } from './localSaveScreenshot.interface.js';
|
|
5
|
+
import { Logger } from '@wdio/logger';
|
|
6
|
+
/**
|
|
7
|
+
* A class that implements the PermanentStorageDrivenPort interface for local file storage of screenshots.
|
|
8
|
+
*/
|
|
9
|
+
export declare class LocalSaveScreenshot implements PermanentStorageDrivenPort {
|
|
10
|
+
private _config;
|
|
11
|
+
private _log;
|
|
12
|
+
/**
|
|
13
|
+
* Creates an instance of LocalSaveScreenshot.
|
|
14
|
+
*
|
|
15
|
+
* @param {LocalSaveScreenshotAdapterOptions} config - Configuration options for local saving of screenshots.
|
|
16
|
+
* @param {Logger} log - Logger for logging messages.
|
|
17
|
+
*/
|
|
18
|
+
constructor(config: LocalSaveScreenshotAdapterOptions, log: Logger);
|
|
19
|
+
/**
|
|
20
|
+
* Get and create a folder with a specific name based on input and environment.
|
|
21
|
+
*
|
|
22
|
+
* @param {ScreenshotFilePathOptions} options - Options for generating the folder name, including the browser name.
|
|
23
|
+
* @returns {string} The full path to the created folder.
|
|
24
|
+
*/
|
|
25
|
+
private _getAndCreatePath;
|
|
26
|
+
/**
|
|
27
|
+
* Formats a filename based on specified options.
|
|
28
|
+
*
|
|
29
|
+
* @param {ScreenshotFileNameOptions} options - The options used for formatting the filename.
|
|
30
|
+
* @returns {string} The formatted filename as a string.
|
|
31
|
+
*/
|
|
32
|
+
private _formatFileName;
|
|
33
|
+
/**
|
|
34
|
+
* Save a base64 image to a file.
|
|
35
|
+
*
|
|
36
|
+
* @param {string} base64Image - The base64 image data to be saved.
|
|
37
|
+
* @param {SaveBase64ImageOptions} saveBase64ImageOptions - Options for saving the base64 image.
|
|
38
|
+
* @returns {Promise<PermanentStorageResult>} A Promise that resolves when the image is successfully saved.
|
|
39
|
+
*/
|
|
40
|
+
saveBase64Image(base64Image: string, saveBase64ImageOptions: SaveBase64ImageOptions): Promise<PermanentStorageResult>;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=localSaveScreenshot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"localSaveScreenshot.d.ts","sourceRoot":"","sources":["../../../../lib/adapter/driven/localSaveScreenshot/localSaveScreenshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2DAA2D,CAAC;AAKnG,OAAO,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAG1F,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAItC;;GAEG;AACH,qBAAa,mBAAoB,YAAW,0BAA0B;IACpE,OAAO,CAAC,OAAO,CAAoC;IACnD,OAAO,CAAC,IAAI,CAAS;IAErB;;;;;OAKG;gBACS,MAAM,EAAE,iCAAiC,EAAE,GAAG,EAAE,MAAM;IAKlE;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAoBvB;;;;;;OAMG;IACG,eAAe,CACnB,WAAW,EAAE,MAAM,EACnB,sBAAsB,EAAE,sBAAsB,GAC7C,OAAO,CAAC,sBAAsB,CAAC;CAYnC"}
|