appium-uiautomator2-driver 2.12.4 → 2.12.5
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/CHANGELOG.md +7 -0
- package/build/index.js +1 -1
- package/build/lib/commands/actions.js +1 -1
- package/build/lib/commands/actions.js.map +1 -1
- package/build/lib/commands/alert.js +1 -1
- package/build/lib/commands/alert.js.map +1 -1
- package/build/lib/commands/battery.js +1 -1
- package/build/lib/commands/battery.js.map +1 -1
- package/build/lib/commands/element.js +1 -1
- package/build/lib/commands/element.js.map +1 -1
- package/build/lib/commands/find.js +1 -1
- package/build/lib/commands/find.js.map +1 -1
- package/build/lib/commands/general.js +1 -1
- package/build/lib/commands/general.js.map +1 -1
- package/build/lib/commands/gestures.js +1 -1
- package/build/lib/commands/gestures.js.map +1 -1
- package/build/lib/commands/index.js +1 -1
- package/build/lib/commands/index.js.map +1 -1
- package/build/lib/commands/screenshot.js +1 -1
- package/build/lib/commands/screenshot.js.map +1 -1
- package/build/lib/commands/touch.js +1 -1
- package/build/lib/commands/touch.js.map +1 -1
- package/build/lib/commands/viewport.js +1 -1
- package/build/lib/commands/viewport.js.map +1 -1
- package/build/lib/css-converter.js +1 -1
- package/build/lib/css-converter.js.map +1 -1
- package/build/lib/desired-caps.js +1 -1
- package/build/lib/desired-caps.js.map +1 -1
- package/build/lib/driver.js +1 -1
- package/build/lib/driver.js.map +1 -1
- package/build/lib/extensions.js +1 -1
- package/build/lib/extensions.js.map +1 -1
- package/build/lib/helpers.js +1 -1
- package/build/lib/helpers.js.map +1 -1
- package/build/lib/logger.js +1 -1
- package/build/lib/logger.js.map +1 -1
- package/build/lib/method-map.js +1 -1
- package/build/lib/method-map.js.map +1 -1
- package/build/lib/uiautomator2.js +1 -1
- package/build/lib/uiautomator2.js.map +1 -1
- package/npm-shrinkwrap.json +108 -101
- package/package.json +3 -2
- package/scripts/reset.js +30 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uiautomator2.js","names":["REQD_PARAMS","SERVER_LAUNCH_TIMEOUT","SERVER_INSTALL_RETRIES","SERVICES_LAUNCH_TIMEOUT","SERVER_PACKAGE_ID","SERVER_TEST_PACKAGE_ID","INSTRUMENTATION_TARGET","instrumentationLogger","logger","getLogger","UIA2Proxy","JWProxy","proxyCommand","url","method","body","didInstrumentationExit","errors","InvalidContextError","UiAutomator2Server","constructor","log","opts","req","util","hasValue","Error","disableSuppressAccessibilityService","proxyOpts","server","host","port","systemPort","keepAlive","readTimeout","timeout","jwproxy","proxyReqRes","bind","command","installServerApk","installTimeout","tmpRoot","tempDir","openDir","packageInfosMapper","appPath","appId","helpers","isWriteable","info","dstPath","path","resolve","basename","fs","copyFile","packagesInfo","B","all","map","apkPath","testApkPath","shouldUninstallServerPackages","shouldInstallServerPackages","isAppInstalled","adb","checkApkCert","signApp","appState","getApplicationInstallState","debug","APP_INSTALL_STATE","OLDER_VERSION_INSTALLED","NEWER_VERSION_INSTALLED","includes","NOT_INSTALLED","uninstallApk","err","warn","message","install","noIncremental","replace","timeoutCapName","rimraf","verifyServicesAvailability","isPmServiceAvailable","pmOutput","pmError","waitForCondition","shell","e","waitMs","intervalMs","error","line","split","startSession","caps","cleanupAutomationLeftovers","skipServerInstallation","serverVersion","uiautomator2ServerLaunchTimeout","timer","timing","Timer","start","retries","maxRetries","delayBetweenRetries","startInstrumentationProcess","errorAndThrow","delay","getDuration","asMilliSeconds","toFixed","capabilities","firstMatch","alwaysMatch","cmd","disableWindowAnimation","push","_","isBoolean","instrumentationProcess","createSubProcess","on","stdout","stderr","output","trim","code","deleteSession","strictCleanup","value","axios","data","activeSessionIds","id","filter","Boolean","length","JSON","stringify","pluralize","delete","forceStop","ignore","killProcessesByName"],"sources":["../../lib/uiautomator2.js"],"sourcesContent":["import _ from 'lodash';\nimport { JWProxy, errors } from 'appium/driver';\nimport { waitForCondition } from 'asyncbox';\nimport {\n SERVER_APK_PATH as apkPath,\n TEST_APK_PATH as testApkPath,\n version as serverVersion\n} from 'appium-uiautomator2-server';\nimport {\n util, logger, tempDir, fs, timing\n} from 'appium/support';\nimport B from 'bluebird';\nimport helpers from './helpers';\nimport axios from 'axios';\nimport path from 'path';\n\nconst REQD_PARAMS = ['adb', 'tmpDir', 'host', 'systemPort', 'devicePort', 'disableWindowAnimation'];\nconst SERVER_LAUNCH_TIMEOUT = 30000;\nconst SERVER_INSTALL_RETRIES = 20;\nconst SERVICES_LAUNCH_TIMEOUT = 30000;\nconst SERVER_PACKAGE_ID = 'io.appium.uiautomator2.server';\nconst SERVER_TEST_PACKAGE_ID = `${SERVER_PACKAGE_ID}.test`;\nconst INSTRUMENTATION_TARGET = `${SERVER_TEST_PACKAGE_ID}/androidx.test.runner.AndroidJUnitRunner`;\nconst instrumentationLogger = logger.getLogger('Instrumentation');\n\nclass UIA2Proxy extends JWProxy {\n async proxyCommand (url, method, body = null) {\n if (this.didInstrumentationExit) {\n throw new errors.InvalidContextError(\n `'${method} ${url}' cannot be proxied to UiAutomator2 server because ` +\n 'the instrumentation process is not running (probably crashed). ' +\n 'Check the server log and/or the logcat output for more details');\n }\n return await super.proxyCommand(url, method, body);\n }\n}\n\nclass UiAutomator2Server {\n constructor (log, opts = {}) {\n for (let req of REQD_PARAMS) {\n if (!opts || !util.hasValue(opts[req])) {\n throw new Error(`Option '${req}' is required!`);\n }\n this[req] = opts[req];\n }\n this.log = log;\n this.disableSuppressAccessibilityService = opts.disableSuppressAccessibilityService;\n const proxyOpts = {\n log,\n server: this.host,\n port: this.systemPort,\n keepAlive: true,\n };\n if (opts.readTimeout && opts.readTimeout > 0) {\n proxyOpts.timeout = opts.readTimeout;\n }\n this.jwproxy = new UIA2Proxy(proxyOpts);\n this.proxyReqRes = this.jwproxy.proxyReqRes.bind(this.jwproxy);\n this.proxyCommand = this.jwproxy.command.bind(this.jwproxy);\n this.jwproxy.didInstrumentationExit = false;\n }\n\n /**\n * Installs the apks on to the device or emulator.\n *\n * @param {number} installTimeout - Installation timeout\n */\n async installServerApk (installTimeout = SERVER_INSTALL_RETRIES * 1000) {\n const tmpRoot = await tempDir.openDir();\n const packageInfosMapper = async ({appPath, appId}) => {\n if (await helpers.isWriteable(appPath)) {\n return { appPath, appId };\n }\n\n this.log.info(`Server package at '${appPath}' is not writeable. ` +\n `Will copy it into the temporary location at '${tmpRoot}' as a workaround. ` +\n `Consider making this file writeable manually in order to improve the performance of session startup.`);\n const dstPath = path.resolve(tmpRoot, path.basename(appPath));\n await fs.copyFile(appPath, dstPath);\n return {\n appPath: dstPath,\n appId,\n };\n };\n\n try {\n const packagesInfo = await B.all(B.map([\n {\n appPath: apkPath,\n appId: SERVER_PACKAGE_ID,\n }, {\n appPath: testApkPath,\n appId: SERVER_TEST_PACKAGE_ID,\n },\n ], packageInfosMapper));\n\n let shouldUninstallServerPackages = false;\n let shouldInstallServerPackages = false;\n for (const {appId, appPath} of packagesInfo) {\n if (appId === SERVER_TEST_PACKAGE_ID) {\n const isAppInstalled = await this.adb.isAppInstalled(appId);\n\n // There is no point in getting the state for test server,\n // since it does not contain version info\n if (!await this.adb.checkApkCert(appPath, appId)) {\n await helpers.signApp(this.adb, appPath);\n shouldUninstallServerPackages = shouldUninstallServerPackages || isAppInstalled;\n shouldInstallServerPackages = true;\n }\n\n if (!isAppInstalled) {\n shouldInstallServerPackages = true;\n }\n continue;\n }\n\n const appState = await this.adb.getApplicationInstallState(appPath, appId);\n this.log.debug(`${appId} installation state: ${appState}`);\n if (await this.adb.checkApkCert(appPath, appId)) {\n shouldUninstallServerPackages = shouldUninstallServerPackages || [\n this.adb.APP_INSTALL_STATE.OLDER_VERSION_INSTALLED,\n this.adb.APP_INSTALL_STATE.NEWER_VERSION_INSTALLED,\n ].includes(appState);\n } else {\n await helpers.signApp(this.adb, appPath);\n shouldUninstallServerPackages = shouldUninstallServerPackages || ![\n this.adb.APP_INSTALL_STATE.NOT_INSTALLED,\n ].includes(appState);\n }\n shouldInstallServerPackages = shouldInstallServerPackages || shouldUninstallServerPackages || [\n this.adb.APP_INSTALL_STATE.NOT_INSTALLED,\n ].includes(appState);\n }\n this.log.info(`Server packages are ${shouldInstallServerPackages ? '' : 'not '}going to be (re)installed`);\n if (shouldInstallServerPackages && shouldUninstallServerPackages) {\n this.log.info('Full packages reinstall is going to be performed');\n }\n for (const {appId, appPath} of packagesInfo) {\n if (shouldUninstallServerPackages) {\n try {\n await this.adb.uninstallApk(appId);\n } catch (err) {\n this.log.warn(`Error uninstalling '${appId}': ${err.message}`);\n }\n }\n if (shouldInstallServerPackages) {\n await this.adb.install(appPath, {\n noIncremental: true,\n replace: true,\n timeout: installTimeout,\n timeoutCapName: 'uiautomator2ServerInstallTimeout'\n });\n }\n }\n } finally {\n await fs.rimraf(tmpRoot);\n }\n\n await this.verifyServicesAvailability();\n }\n\n async verifyServicesAvailability () {\n this.log.debug(`Waiting up to ${SERVICES_LAUNCH_TIMEOUT}ms for services to be available`);\n let isPmServiceAvailable = false;\n let pmOutput = '';\n let pmError = null;\n try {\n await waitForCondition(async () => {\n if (!isPmServiceAvailable) {\n pmError = null;\n pmOutput = '';\n try {\n pmOutput = await this.adb.shell(['pm', 'list', 'instrumentation']);\n } catch (e) {\n pmError = e;\n }\n if (pmOutput.includes('Could not access the Package Manager')) {\n pmError = new Error(`Problem running Package Manager: ${pmOutput}`);\n pmOutput = ''; // remove output, so it is not printed below\n } else if (pmOutput.includes(INSTRUMENTATION_TARGET)) {\n pmOutput = ''; // remove output, so it is not printed below\n this.log.debug(`Instrumentation target '${INSTRUMENTATION_TARGET}' is available`);\n // eslint-disable-next-line require-atomic-updates\n isPmServiceAvailable = true;\n } else if (!pmError) {\n pmError = new Error('The instrumentation target is not listed by Package Manager');\n }\n }\n return isPmServiceAvailable;\n }, {\n waitMs: SERVICES_LAUNCH_TIMEOUT,\n intervalMs: 1000,\n });\n } catch (err) {\n this.log.error(`Unable to find instrumentation target '${INSTRUMENTATION_TARGET}': ${(pmError || {}).message}`);\n if (pmOutput) {\n this.log.debug('Available targets:');\n for (const line of pmOutput.split('\\n')) {\n this.log.debug(` ${line.replace('instrumentation:', '')}`);\n }\n }\n }\n }\n\n async startSession (caps) {\n await this.cleanupAutomationLeftovers();\n if (caps.skipServerInstallation) {\n this.log.info(`'skipServerInstallation' is set. Attempting to use UIAutomator2 server from the device`);\n } else {\n this.log.info(`Starting UIAutomator2 server ${serverVersion}`);\n this.log.info(`Using UIAutomator2 server from '${apkPath}' and test from '${testApkPath}'`);\n }\n\n const timeout = caps.uiautomator2ServerLaunchTimeout || SERVER_LAUNCH_TIMEOUT;\n const timer = new timing.Timer().start();\n let retries = 0;\n const maxRetries = 2;\n const delayBetweenRetries = 3000;\n while (retries < maxRetries) {\n this.log.info(`Waiting up to ${timeout}ms for UiAutomator2 to be online...`);\n this.jwproxy.didInstrumentationExit = false;\n await this.startInstrumentationProcess();\n if (!this.jwproxy.didInstrumentationExit) {\n try {\n await waitForCondition(async () => {\n try {\n await this.jwproxy.command('/status', 'GET');\n return true;\n } catch (err) {\n // short circuit to retry or fail fast\n return this.jwproxy.didInstrumentationExit;\n }\n }, {\n waitMs: timeout,\n intervalMs: 1000,\n });\n } catch (err) {\n this.log.errorAndThrow(`The instrumentation process cannot be initialized within ${timeout}ms timeout. `\n + 'Make sure the application under test does not crash and investigate the logcat output. '\n + `You could also try to increase the value of 'uiautomator2ServerLaunchTimeout' capability`);\n }\n }\n if (!this.jwproxy.didInstrumentationExit) {\n break;\n }\n\n retries++;\n if (retries >= maxRetries) {\n this.log.errorAndThrow('The instrumentation process cannot be initialized. '\n + 'Make sure the application under test does not crash and investigate the logcat output.');\n }\n this.log.warn(`The instrumentation process has been unexpectedly terminated. `\n + `Retrying UiAutomator2 startup (#${retries} of ${maxRetries - 1})`);\n await this.cleanupAutomationLeftovers(true);\n await B.delay(delayBetweenRetries);\n }\n\n this.log.debug(`The initialization of the instrumentation process took `\n + `${timer.getDuration().asMilliSeconds.toFixed(0)}ms`);\n await this.jwproxy.command('/session', 'POST', {\n capabilities: {\n firstMatch: [caps],\n alwaysMatch: {},\n }\n });\n }\n\n async startInstrumentationProcess () {\n const cmd = ['am', 'instrument', '-w'];\n if (this.disableWindowAnimation) {\n cmd.push('--no-window-animation');\n }\n if (_.isBoolean(this.disableSuppressAccessibilityService)) {\n cmd.push('-e', 'DISABLE_SUPPRESS_ACCESSIBILITY_SERVICES', this.disableSuppressAccessibilityService);\n }\n // Disable Google analytics to prevent possible fatal exception\n cmd.push('-e', 'disableAnalytics', true);\n cmd.push(INSTRUMENTATION_TARGET);\n const instrumentationProcess = this.adb.createSubProcess(['shell', ...cmd]);\n instrumentationProcess.on('output', (stdout, stderr) => {\n const output = _.trim(stdout || stderr);\n if (output) {\n instrumentationLogger.debug(output);\n }\n });\n instrumentationProcess.on('exit', (code) => {\n instrumentationLogger.debug(`The process has exited with code ${code}`);\n this.jwproxy.didInstrumentationExit = true;\n });\n await instrumentationProcess.start(0);\n }\n\n async deleteSession () {\n this.log.debug('Deleting UiAutomator2 server session');\n // rely on jwproxy's intelligence to know what we're talking about and\n // delete the current session\n try {\n await this.jwproxy.command('/', 'DELETE');\n } catch (err) {\n this.log.warn(`Did not get confirmation UiAutomator2 deleteSession worked; ` +\n `Error was: ${err}`);\n }\n }\n\n async cleanupAutomationLeftovers (strictCleanup = false) {\n this.log.debug(`Performing ${strictCleanup ? 'strict' : 'shallow'} cleanup of automation leftovers`);\n\n try {\n const {value} = (await axios({\n url: `http://${this.host}:${this.systemPort}/sessions`,\n timeout: 500,\n })).data;\n const activeSessionIds = value.map(({id}) => id).filter(Boolean);\n if (activeSessionIds.length) {\n this.log.debug(`The following obsolete sessions are still running: ${JSON.stringify(activeSessionIds)}`);\n this.log.debug(`Cleaning up ${util.pluralize('obsolete session', activeSessionIds.length, true)}`);\n await B.all(activeSessionIds\n .map((id) => axios.delete(`http://${this.host}:${this.systemPort}/session/${id}`))\n );\n // Let all sessions to be properly terminated before continuing\n await B.delay(1000);\n } else {\n this.log.debug('No obsolete sessions have been detected');\n }\n } catch (e) {\n this.log.debug(`No obsolete sessions have been detected (${e.message})`);\n }\n\n try {\n await this.adb.forceStop(SERVER_TEST_PACKAGE_ID);\n } catch (ignore) {}\n if (!strictCleanup) {\n return;\n }\n // https://github.com/appium/appium/issues/10749\n try {\n await this.adb.killProcessesByName('uiautomator');\n } catch (ignore) {}\n }\n}\n\nexport { UiAutomator2Server, INSTRUMENTATION_TARGET, SERVER_PACKAGE_ID, SERVER_TEST_PACKAGE_ID };\nexport default UiAutomator2Server;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"uiautomator2.js","names":["_lodash","_interopRequireDefault","require","_driver","_asyncbox","_appiumUiautomator2Server","_support","_bluebird","_helpers","_axios","_path","REQD_PARAMS","SERVER_LAUNCH_TIMEOUT","SERVER_INSTALL_RETRIES","SERVICES_LAUNCH_TIMEOUT","SERVER_PACKAGE_ID","exports","SERVER_TEST_PACKAGE_ID","INSTRUMENTATION_TARGET","instrumentationLogger","logger","getLogger","UIA2Proxy","JWProxy","proxyCommand","url","method","body","didInstrumentationExit","errors","InvalidContextError","UiAutomator2Server","constructor","log","opts","req","util","hasValue","Error","disableSuppressAccessibilityService","proxyOpts","server","host","port","systemPort","keepAlive","readTimeout","timeout","jwproxy","proxyReqRes","bind","command","installServerApk","installTimeout","tmpRoot","tempDir","openDir","packageInfosMapper","appPath","appId","helpers","isWriteable","info","dstPath","path","resolve","basename","fs","copyFile","packagesInfo","B","all","map","apkPath","testApkPath","shouldUninstallServerPackages","shouldInstallServerPackages","isAppInstalled","adb","checkApkCert","signApp","appState","getApplicationInstallState","debug","APP_INSTALL_STATE","OLDER_VERSION_INSTALLED","NEWER_VERSION_INSTALLED","includes","NOT_INSTALLED","uninstallApk","err","warn","message","install","noIncremental","replace","timeoutCapName","rimraf","verifyServicesAvailability","isPmServiceAvailable","pmOutput","pmError","waitForCondition","shell","e","waitMs","intervalMs","error","line","split","startSession","caps","cleanupAutomationLeftovers","skipServerInstallation","serverVersion","uiautomator2ServerLaunchTimeout","timer","timing","Timer","start","retries","maxRetries","delayBetweenRetries","startInstrumentationProcess","errorAndThrow","delay","getDuration","asMilliSeconds","toFixed","capabilities","firstMatch","alwaysMatch","cmd","disableWindowAnimation","push","_","isBoolean","instrumentationProcess","createSubProcess","on","stdout","stderr","output","trim","code","deleteSession","strictCleanup","value","axios","data","activeSessionIds","id","filter","Boolean","length","JSON","stringify","pluralize","delete","forceStop","ignore","killProcessesByName","_default","default"],"sources":["../../lib/uiautomator2.js"],"sourcesContent":["import _ from 'lodash';\nimport { JWProxy, errors } from 'appium/driver';\nimport { waitForCondition } from 'asyncbox';\nimport {\n SERVER_APK_PATH as apkPath,\n TEST_APK_PATH as testApkPath,\n version as serverVersion\n} from 'appium-uiautomator2-server';\nimport {\n util, logger, tempDir, fs, timing\n} from 'appium/support';\nimport B from 'bluebird';\nimport helpers from './helpers';\nimport axios from 'axios';\nimport path from 'path';\n\nconst REQD_PARAMS = ['adb', 'tmpDir', 'host', 'systemPort', 'devicePort', 'disableWindowAnimation'];\nconst SERVER_LAUNCH_TIMEOUT = 30000;\nconst SERVER_INSTALL_RETRIES = 20;\nconst SERVICES_LAUNCH_TIMEOUT = 30000;\nconst SERVER_PACKAGE_ID = 'io.appium.uiautomator2.server';\nconst SERVER_TEST_PACKAGE_ID = `${SERVER_PACKAGE_ID}.test`;\nconst INSTRUMENTATION_TARGET = `${SERVER_TEST_PACKAGE_ID}/androidx.test.runner.AndroidJUnitRunner`;\nconst instrumentationLogger = logger.getLogger('Instrumentation');\n\nclass UIA2Proxy extends JWProxy {\n async proxyCommand (url, method, body = null) {\n if (this.didInstrumentationExit) {\n throw new errors.InvalidContextError(\n `'${method} ${url}' cannot be proxied to UiAutomator2 server because ` +\n 'the instrumentation process is not running (probably crashed). ' +\n 'Check the server log and/or the logcat output for more details');\n }\n return await super.proxyCommand(url, method, body);\n }\n}\n\nclass UiAutomator2Server {\n constructor (log, opts = {}) {\n for (let req of REQD_PARAMS) {\n if (!opts || !util.hasValue(opts[req])) {\n throw new Error(`Option '${req}' is required!`);\n }\n this[req] = opts[req];\n }\n this.log = log;\n this.disableSuppressAccessibilityService = opts.disableSuppressAccessibilityService;\n const proxyOpts = {\n log,\n server: this.host,\n port: this.systemPort,\n keepAlive: true,\n };\n if (opts.readTimeout && opts.readTimeout > 0) {\n proxyOpts.timeout = opts.readTimeout;\n }\n this.jwproxy = new UIA2Proxy(proxyOpts);\n this.proxyReqRes = this.jwproxy.proxyReqRes.bind(this.jwproxy);\n this.proxyCommand = this.jwproxy.command.bind(this.jwproxy);\n this.jwproxy.didInstrumentationExit = false;\n }\n\n /**\n * Installs the apks on to the device or emulator.\n *\n * @param {number} installTimeout - Installation timeout\n */\n async installServerApk (installTimeout = SERVER_INSTALL_RETRIES * 1000) {\n const tmpRoot = await tempDir.openDir();\n const packageInfosMapper = async ({appPath, appId}) => {\n if (await helpers.isWriteable(appPath)) {\n return { appPath, appId };\n }\n\n this.log.info(`Server package at '${appPath}' is not writeable. ` +\n `Will copy it into the temporary location at '${tmpRoot}' as a workaround. ` +\n `Consider making this file writeable manually in order to improve the performance of session startup.`);\n const dstPath = path.resolve(tmpRoot, path.basename(appPath));\n await fs.copyFile(appPath, dstPath);\n return {\n appPath: dstPath,\n appId,\n };\n };\n\n try {\n const packagesInfo = await B.all(B.map([\n {\n appPath: apkPath,\n appId: SERVER_PACKAGE_ID,\n }, {\n appPath: testApkPath,\n appId: SERVER_TEST_PACKAGE_ID,\n },\n ], packageInfosMapper));\n\n let shouldUninstallServerPackages = false;\n let shouldInstallServerPackages = false;\n for (const {appId, appPath} of packagesInfo) {\n if (appId === SERVER_TEST_PACKAGE_ID) {\n const isAppInstalled = await this.adb.isAppInstalled(appId);\n\n // There is no point in getting the state for test server,\n // since it does not contain version info\n if (!await this.adb.checkApkCert(appPath, appId)) {\n await helpers.signApp(this.adb, appPath);\n shouldUninstallServerPackages = shouldUninstallServerPackages || isAppInstalled;\n shouldInstallServerPackages = true;\n }\n\n if (!isAppInstalled) {\n shouldInstallServerPackages = true;\n }\n continue;\n }\n\n const appState = await this.adb.getApplicationInstallState(appPath, appId);\n this.log.debug(`${appId} installation state: ${appState}`);\n if (await this.adb.checkApkCert(appPath, appId)) {\n shouldUninstallServerPackages = shouldUninstallServerPackages || [\n this.adb.APP_INSTALL_STATE.OLDER_VERSION_INSTALLED,\n this.adb.APP_INSTALL_STATE.NEWER_VERSION_INSTALLED,\n ].includes(appState);\n } else {\n await helpers.signApp(this.adb, appPath);\n shouldUninstallServerPackages = shouldUninstallServerPackages || ![\n this.adb.APP_INSTALL_STATE.NOT_INSTALLED,\n ].includes(appState);\n }\n shouldInstallServerPackages = shouldInstallServerPackages || shouldUninstallServerPackages || [\n this.adb.APP_INSTALL_STATE.NOT_INSTALLED,\n ].includes(appState);\n }\n this.log.info(`Server packages are ${shouldInstallServerPackages ? '' : 'not '}going to be (re)installed`);\n if (shouldInstallServerPackages && shouldUninstallServerPackages) {\n this.log.info('Full packages reinstall is going to be performed');\n }\n for (const {appId, appPath} of packagesInfo) {\n if (shouldUninstallServerPackages) {\n try {\n await this.adb.uninstallApk(appId);\n } catch (err) {\n this.log.warn(`Error uninstalling '${appId}': ${err.message}`);\n }\n }\n if (shouldInstallServerPackages) {\n await this.adb.install(appPath, {\n noIncremental: true,\n replace: true,\n timeout: installTimeout,\n timeoutCapName: 'uiautomator2ServerInstallTimeout'\n });\n }\n }\n } finally {\n await fs.rimraf(tmpRoot);\n }\n\n await this.verifyServicesAvailability();\n }\n\n async verifyServicesAvailability () {\n this.log.debug(`Waiting up to ${SERVICES_LAUNCH_TIMEOUT}ms for services to be available`);\n let isPmServiceAvailable = false;\n let pmOutput = '';\n let pmError = null;\n try {\n await waitForCondition(async () => {\n if (!isPmServiceAvailable) {\n pmError = null;\n pmOutput = '';\n try {\n pmOutput = await this.adb.shell(['pm', 'list', 'instrumentation']);\n } catch (e) {\n pmError = e;\n }\n if (pmOutput.includes('Could not access the Package Manager')) {\n pmError = new Error(`Problem running Package Manager: ${pmOutput}`);\n pmOutput = ''; // remove output, so it is not printed below\n } else if (pmOutput.includes(INSTRUMENTATION_TARGET)) {\n pmOutput = ''; // remove output, so it is not printed below\n this.log.debug(`Instrumentation target '${INSTRUMENTATION_TARGET}' is available`);\n // eslint-disable-next-line require-atomic-updates\n isPmServiceAvailable = true;\n } else if (!pmError) {\n pmError = new Error('The instrumentation target is not listed by Package Manager');\n }\n }\n return isPmServiceAvailable;\n }, {\n waitMs: SERVICES_LAUNCH_TIMEOUT,\n intervalMs: 1000,\n });\n } catch (err) {\n this.log.error(`Unable to find instrumentation target '${INSTRUMENTATION_TARGET}': ${(pmError || {}).message}`);\n if (pmOutput) {\n this.log.debug('Available targets:');\n for (const line of pmOutput.split('\\n')) {\n this.log.debug(` ${line.replace('instrumentation:', '')}`);\n }\n }\n }\n }\n\n async startSession (caps) {\n await this.cleanupAutomationLeftovers();\n if (caps.skipServerInstallation) {\n this.log.info(`'skipServerInstallation' is set. Attempting to use UIAutomator2 server from the device`);\n } else {\n this.log.info(`Starting UIAutomator2 server ${serverVersion}`);\n this.log.info(`Using UIAutomator2 server from '${apkPath}' and test from '${testApkPath}'`);\n }\n\n const timeout = caps.uiautomator2ServerLaunchTimeout || SERVER_LAUNCH_TIMEOUT;\n const timer = new timing.Timer().start();\n let retries = 0;\n const maxRetries = 2;\n const delayBetweenRetries = 3000;\n while (retries < maxRetries) {\n this.log.info(`Waiting up to ${timeout}ms for UiAutomator2 to be online...`);\n this.jwproxy.didInstrumentationExit = false;\n await this.startInstrumentationProcess();\n if (!this.jwproxy.didInstrumentationExit) {\n try {\n await waitForCondition(async () => {\n try {\n await this.jwproxy.command('/status', 'GET');\n return true;\n } catch (err) {\n // short circuit to retry or fail fast\n return this.jwproxy.didInstrumentationExit;\n }\n }, {\n waitMs: timeout,\n intervalMs: 1000,\n });\n } catch (err) {\n this.log.errorAndThrow(`The instrumentation process cannot be initialized within ${timeout}ms timeout. `\n + 'Make sure the application under test does not crash and investigate the logcat output. '\n + `You could also try to increase the value of 'uiautomator2ServerLaunchTimeout' capability`);\n }\n }\n if (!this.jwproxy.didInstrumentationExit) {\n break;\n }\n\n retries++;\n if (retries >= maxRetries) {\n this.log.errorAndThrow('The instrumentation process cannot be initialized. '\n + 'Make sure the application under test does not crash and investigate the logcat output.');\n }\n this.log.warn(`The instrumentation process has been unexpectedly terminated. `\n + `Retrying UiAutomator2 startup (#${retries} of ${maxRetries - 1})`);\n await this.cleanupAutomationLeftovers(true);\n await B.delay(delayBetweenRetries);\n }\n\n this.log.debug(`The initialization of the instrumentation process took `\n + `${timer.getDuration().asMilliSeconds.toFixed(0)}ms`);\n await this.jwproxy.command('/session', 'POST', {\n capabilities: {\n firstMatch: [caps],\n alwaysMatch: {},\n }\n });\n }\n\n async startInstrumentationProcess () {\n const cmd = ['am', 'instrument', '-w'];\n if (this.disableWindowAnimation) {\n cmd.push('--no-window-animation');\n }\n if (_.isBoolean(this.disableSuppressAccessibilityService)) {\n cmd.push('-e', 'DISABLE_SUPPRESS_ACCESSIBILITY_SERVICES', this.disableSuppressAccessibilityService);\n }\n // Disable Google analytics to prevent possible fatal exception\n cmd.push('-e', 'disableAnalytics', true);\n cmd.push(INSTRUMENTATION_TARGET);\n const instrumentationProcess = this.adb.createSubProcess(['shell', ...cmd]);\n instrumentationProcess.on('output', (stdout, stderr) => {\n const output = _.trim(stdout || stderr);\n if (output) {\n instrumentationLogger.debug(output);\n }\n });\n instrumentationProcess.on('exit', (code) => {\n instrumentationLogger.debug(`The process has exited with code ${code}`);\n this.jwproxy.didInstrumentationExit = true;\n });\n await instrumentationProcess.start(0);\n }\n\n async deleteSession () {\n this.log.debug('Deleting UiAutomator2 server session');\n // rely on jwproxy's intelligence to know what we're talking about and\n // delete the current session\n try {\n await this.jwproxy.command('/', 'DELETE');\n } catch (err) {\n this.log.warn(`Did not get confirmation UiAutomator2 deleteSession worked; ` +\n `Error was: ${err}`);\n }\n }\n\n async cleanupAutomationLeftovers (strictCleanup = false) {\n this.log.debug(`Performing ${strictCleanup ? 'strict' : 'shallow'} cleanup of automation leftovers`);\n\n try {\n const {value} = (await axios({\n url: `http://${this.host}:${this.systemPort}/sessions`,\n timeout: 500,\n })).data;\n const activeSessionIds = value.map(({id}) => id).filter(Boolean);\n if (activeSessionIds.length) {\n this.log.debug(`The following obsolete sessions are still running: ${JSON.stringify(activeSessionIds)}`);\n this.log.debug(`Cleaning up ${util.pluralize('obsolete session', activeSessionIds.length, true)}`);\n await B.all(activeSessionIds\n .map((id) => axios.delete(`http://${this.host}:${this.systemPort}/session/${id}`))\n );\n // Let all sessions to be properly terminated before continuing\n await B.delay(1000);\n } else {\n this.log.debug('No obsolete sessions have been detected');\n }\n } catch (e) {\n this.log.debug(`No obsolete sessions have been detected (${e.message})`);\n }\n\n try {\n await this.adb.forceStop(SERVER_TEST_PACKAGE_ID);\n } catch (ignore) {}\n if (!strictCleanup) {\n return;\n }\n // https://github.com/appium/appium/issues/10749\n try {\n await this.adb.killProcessesByName('uiautomator');\n } catch (ignore) {}\n }\n}\n\nexport { UiAutomator2Server, INSTRUMENTATION_TARGET, SERVER_PACKAGE_ID, SERVER_TEST_PACKAGE_ID };\nexport default UiAutomator2Server;\n"],"mappings":"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"}
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "appium-uiautomator2-driver",
|
|
3
|
-
"version": "2.12.
|
|
3
|
+
"version": "2.12.5",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "appium-uiautomator2-driver",
|
|
9
|
-
"version": "2.12.
|
|
9
|
+
"version": "2.12.5",
|
|
10
10
|
"license": "Apache-2.0",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@babel/runtime": "^7.0.0",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"fancy-log": "^2.0.0",
|
|
45
45
|
"lint-staged": "^13.0.3",
|
|
46
46
|
"mocha": "^10.0.0",
|
|
47
|
-
"pngjs": "^
|
|
47
|
+
"pngjs": "^7.0.0",
|
|
48
48
|
"pre-commit": "^1.2.2",
|
|
49
49
|
"rimraf": "^4.0.4",
|
|
50
50
|
"semantic-release": "^20.0.2",
|
|
@@ -312,6 +312,13 @@
|
|
|
312
312
|
"proxy-from-env": "^1.1.0"
|
|
313
313
|
}
|
|
314
314
|
},
|
|
315
|
+
"node_modules/@appium/support/node_modules/pngjs": {
|
|
316
|
+
"version": "6.0.0",
|
|
317
|
+
"license": "MIT",
|
|
318
|
+
"engines": {
|
|
319
|
+
"node": ">=12.13.0"
|
|
320
|
+
}
|
|
321
|
+
},
|
|
315
322
|
"node_modules/@appium/support/node_modules/rimraf": {
|
|
316
323
|
"version": "3.0.2",
|
|
317
324
|
"license": "ISC",
|
|
@@ -422,7 +429,7 @@
|
|
|
422
429
|
}
|
|
423
430
|
},
|
|
424
431
|
"node_modules/@babel/runtime": {
|
|
425
|
-
"version": "7.
|
|
432
|
+
"version": "7.21.0",
|
|
426
433
|
"license": "MIT",
|
|
427
434
|
"dependencies": {
|
|
428
435
|
"regenerator-runtime": "^0.13.11"
|
|
@@ -449,10 +456,10 @@
|
|
|
449
456
|
}
|
|
450
457
|
},
|
|
451
458
|
"node_modules/@jimp/bmp": {
|
|
452
|
-
"version": "0.22.
|
|
459
|
+
"version": "0.22.5",
|
|
453
460
|
"license": "MIT",
|
|
454
461
|
"dependencies": {
|
|
455
|
-
"@jimp/utils": "^0.22.
|
|
462
|
+
"@jimp/utils": "^0.22.5",
|
|
456
463
|
"bmp-js": "^0.1.0"
|
|
457
464
|
},
|
|
458
465
|
"peerDependencies": {
|
|
@@ -460,10 +467,10 @@
|
|
|
460
467
|
}
|
|
461
468
|
},
|
|
462
469
|
"node_modules/@jimp/core": {
|
|
463
|
-
"version": "0.22.
|
|
470
|
+
"version": "0.22.5",
|
|
464
471
|
"license": "MIT",
|
|
465
472
|
"dependencies": {
|
|
466
|
-
"@jimp/utils": "^0.22.
|
|
473
|
+
"@jimp/utils": "^0.22.5",
|
|
467
474
|
"any-base": "^1.1.0",
|
|
468
475
|
"buffer": "^5.2.0",
|
|
469
476
|
"exif-parser": "^0.1.12",
|
|
@@ -475,17 +482,17 @@
|
|
|
475
482
|
}
|
|
476
483
|
},
|
|
477
484
|
"node_modules/@jimp/custom": {
|
|
478
|
-
"version": "0.22.
|
|
485
|
+
"version": "0.22.5",
|
|
479
486
|
"license": "MIT",
|
|
480
487
|
"dependencies": {
|
|
481
|
-
"@jimp/core": "^0.22.
|
|
488
|
+
"@jimp/core": "^0.22.5"
|
|
482
489
|
}
|
|
483
490
|
},
|
|
484
491
|
"node_modules/@jimp/gif": {
|
|
485
|
-
"version": "0.22.
|
|
492
|
+
"version": "0.22.5",
|
|
486
493
|
"license": "MIT",
|
|
487
494
|
"dependencies": {
|
|
488
|
-
"@jimp/utils": "^0.22.
|
|
495
|
+
"@jimp/utils": "^0.22.5",
|
|
489
496
|
"gifwrap": "^0.9.2",
|
|
490
497
|
"omggif": "^1.0.9"
|
|
491
498
|
},
|
|
@@ -494,10 +501,10 @@
|
|
|
494
501
|
}
|
|
495
502
|
},
|
|
496
503
|
"node_modules/@jimp/jpeg": {
|
|
497
|
-
"version": "0.22.
|
|
504
|
+
"version": "0.22.5",
|
|
498
505
|
"license": "MIT",
|
|
499
506
|
"dependencies": {
|
|
500
|
-
"@jimp/utils": "^0.22.
|
|
507
|
+
"@jimp/utils": "^0.22.5",
|
|
501
508
|
"jpeg-js": "^0.4.4"
|
|
502
509
|
},
|
|
503
510
|
"peerDependencies": {
|
|
@@ -505,40 +512,40 @@
|
|
|
505
512
|
}
|
|
506
513
|
},
|
|
507
514
|
"node_modules/@jimp/plugin-blit": {
|
|
508
|
-
"version": "0.22.
|
|
515
|
+
"version": "0.22.5",
|
|
509
516
|
"license": "MIT",
|
|
510
517
|
"dependencies": {
|
|
511
|
-
"@jimp/utils": "^0.22.
|
|
518
|
+
"@jimp/utils": "^0.22.5"
|
|
512
519
|
},
|
|
513
520
|
"peerDependencies": {
|
|
514
521
|
"@jimp/custom": ">=0.3.5"
|
|
515
522
|
}
|
|
516
523
|
},
|
|
517
524
|
"node_modules/@jimp/plugin-blur": {
|
|
518
|
-
"version": "0.22.
|
|
525
|
+
"version": "0.22.5",
|
|
519
526
|
"license": "MIT",
|
|
520
527
|
"dependencies": {
|
|
521
|
-
"@jimp/utils": "^0.22.
|
|
528
|
+
"@jimp/utils": "^0.22.5"
|
|
522
529
|
},
|
|
523
530
|
"peerDependencies": {
|
|
524
531
|
"@jimp/custom": ">=0.3.5"
|
|
525
532
|
}
|
|
526
533
|
},
|
|
527
534
|
"node_modules/@jimp/plugin-circle": {
|
|
528
|
-
"version": "0.22.
|
|
535
|
+
"version": "0.22.5",
|
|
529
536
|
"license": "MIT",
|
|
530
537
|
"dependencies": {
|
|
531
|
-
"@jimp/utils": "^0.22.
|
|
538
|
+
"@jimp/utils": "^0.22.5"
|
|
532
539
|
},
|
|
533
540
|
"peerDependencies": {
|
|
534
541
|
"@jimp/custom": ">=0.3.5"
|
|
535
542
|
}
|
|
536
543
|
},
|
|
537
544
|
"node_modules/@jimp/plugin-color": {
|
|
538
|
-
"version": "0.22.
|
|
545
|
+
"version": "0.22.5",
|
|
539
546
|
"license": "MIT",
|
|
540
547
|
"dependencies": {
|
|
541
|
-
"@jimp/utils": "^0.22.
|
|
548
|
+
"@jimp/utils": "^0.22.5",
|
|
542
549
|
"tinycolor2": "^1.6.0"
|
|
543
550
|
},
|
|
544
551
|
"peerDependencies": {
|
|
@@ -546,10 +553,10 @@
|
|
|
546
553
|
}
|
|
547
554
|
},
|
|
548
555
|
"node_modules/@jimp/plugin-contain": {
|
|
549
|
-
"version": "0.22.
|
|
556
|
+
"version": "0.22.5",
|
|
550
557
|
"license": "MIT",
|
|
551
558
|
"dependencies": {
|
|
552
|
-
"@jimp/utils": "^0.22.
|
|
559
|
+
"@jimp/utils": "^0.22.5"
|
|
553
560
|
},
|
|
554
561
|
"peerDependencies": {
|
|
555
562
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -559,10 +566,10 @@
|
|
|
559
566
|
}
|
|
560
567
|
},
|
|
561
568
|
"node_modules/@jimp/plugin-cover": {
|
|
562
|
-
"version": "0.22.
|
|
569
|
+
"version": "0.22.5",
|
|
563
570
|
"license": "MIT",
|
|
564
571
|
"dependencies": {
|
|
565
|
-
"@jimp/utils": "^0.22.
|
|
572
|
+
"@jimp/utils": "^0.22.5"
|
|
566
573
|
},
|
|
567
574
|
"peerDependencies": {
|
|
568
575
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -572,50 +579,50 @@
|
|
|
572
579
|
}
|
|
573
580
|
},
|
|
574
581
|
"node_modules/@jimp/plugin-crop": {
|
|
575
|
-
"version": "0.22.
|
|
582
|
+
"version": "0.22.5",
|
|
576
583
|
"license": "MIT",
|
|
577
584
|
"dependencies": {
|
|
578
|
-
"@jimp/utils": "^0.22.
|
|
585
|
+
"@jimp/utils": "^0.22.5"
|
|
579
586
|
},
|
|
580
587
|
"peerDependencies": {
|
|
581
588
|
"@jimp/custom": ">=0.3.5"
|
|
582
589
|
}
|
|
583
590
|
},
|
|
584
591
|
"node_modules/@jimp/plugin-displace": {
|
|
585
|
-
"version": "0.22.
|
|
592
|
+
"version": "0.22.5",
|
|
586
593
|
"license": "MIT",
|
|
587
594
|
"dependencies": {
|
|
588
|
-
"@jimp/utils": "^0.22.
|
|
595
|
+
"@jimp/utils": "^0.22.5"
|
|
589
596
|
},
|
|
590
597
|
"peerDependencies": {
|
|
591
598
|
"@jimp/custom": ">=0.3.5"
|
|
592
599
|
}
|
|
593
600
|
},
|
|
594
601
|
"node_modules/@jimp/plugin-dither": {
|
|
595
|
-
"version": "0.22.
|
|
602
|
+
"version": "0.22.5",
|
|
596
603
|
"license": "MIT",
|
|
597
604
|
"dependencies": {
|
|
598
|
-
"@jimp/utils": "^0.22.
|
|
605
|
+
"@jimp/utils": "^0.22.5"
|
|
599
606
|
},
|
|
600
607
|
"peerDependencies": {
|
|
601
608
|
"@jimp/custom": ">=0.3.5"
|
|
602
609
|
}
|
|
603
610
|
},
|
|
604
611
|
"node_modules/@jimp/plugin-fisheye": {
|
|
605
|
-
"version": "0.22.
|
|
612
|
+
"version": "0.22.5",
|
|
606
613
|
"license": "MIT",
|
|
607
614
|
"dependencies": {
|
|
608
|
-
"@jimp/utils": "^0.22.
|
|
615
|
+
"@jimp/utils": "^0.22.5"
|
|
609
616
|
},
|
|
610
617
|
"peerDependencies": {
|
|
611
618
|
"@jimp/custom": ">=0.3.5"
|
|
612
619
|
}
|
|
613
620
|
},
|
|
614
621
|
"node_modules/@jimp/plugin-flip": {
|
|
615
|
-
"version": "0.22.
|
|
622
|
+
"version": "0.22.5",
|
|
616
623
|
"license": "MIT",
|
|
617
624
|
"dependencies": {
|
|
618
|
-
"@jimp/utils": "^0.22.
|
|
625
|
+
"@jimp/utils": "^0.22.5"
|
|
619
626
|
},
|
|
620
627
|
"peerDependencies": {
|
|
621
628
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -623,50 +630,50 @@
|
|
|
623
630
|
}
|
|
624
631
|
},
|
|
625
632
|
"node_modules/@jimp/plugin-gaussian": {
|
|
626
|
-
"version": "0.22.
|
|
633
|
+
"version": "0.22.5",
|
|
627
634
|
"license": "MIT",
|
|
628
635
|
"dependencies": {
|
|
629
|
-
"@jimp/utils": "^0.22.
|
|
636
|
+
"@jimp/utils": "^0.22.5"
|
|
630
637
|
},
|
|
631
638
|
"peerDependencies": {
|
|
632
639
|
"@jimp/custom": ">=0.3.5"
|
|
633
640
|
}
|
|
634
641
|
},
|
|
635
642
|
"node_modules/@jimp/plugin-invert": {
|
|
636
|
-
"version": "0.22.
|
|
643
|
+
"version": "0.22.5",
|
|
637
644
|
"license": "MIT",
|
|
638
645
|
"dependencies": {
|
|
639
|
-
"@jimp/utils": "^0.22.
|
|
646
|
+
"@jimp/utils": "^0.22.5"
|
|
640
647
|
},
|
|
641
648
|
"peerDependencies": {
|
|
642
649
|
"@jimp/custom": ">=0.3.5"
|
|
643
650
|
}
|
|
644
651
|
},
|
|
645
652
|
"node_modules/@jimp/plugin-mask": {
|
|
646
|
-
"version": "0.22.
|
|
653
|
+
"version": "0.22.5",
|
|
647
654
|
"license": "MIT",
|
|
648
655
|
"dependencies": {
|
|
649
|
-
"@jimp/utils": "^0.22.
|
|
656
|
+
"@jimp/utils": "^0.22.5"
|
|
650
657
|
},
|
|
651
658
|
"peerDependencies": {
|
|
652
659
|
"@jimp/custom": ">=0.3.5"
|
|
653
660
|
}
|
|
654
661
|
},
|
|
655
662
|
"node_modules/@jimp/plugin-normalize": {
|
|
656
|
-
"version": "0.22.
|
|
663
|
+
"version": "0.22.5",
|
|
657
664
|
"license": "MIT",
|
|
658
665
|
"dependencies": {
|
|
659
|
-
"@jimp/utils": "^0.22.
|
|
666
|
+
"@jimp/utils": "^0.22.5"
|
|
660
667
|
},
|
|
661
668
|
"peerDependencies": {
|
|
662
669
|
"@jimp/custom": ">=0.3.5"
|
|
663
670
|
}
|
|
664
671
|
},
|
|
665
672
|
"node_modules/@jimp/plugin-print": {
|
|
666
|
-
"version": "0.22.
|
|
673
|
+
"version": "0.22.5",
|
|
667
674
|
"license": "MIT",
|
|
668
675
|
"dependencies": {
|
|
669
|
-
"@jimp/utils": "^0.22.
|
|
676
|
+
"@jimp/utils": "^0.22.5",
|
|
670
677
|
"load-bmfont": "^1.4.1"
|
|
671
678
|
},
|
|
672
679
|
"peerDependencies": {
|
|
@@ -675,20 +682,20 @@
|
|
|
675
682
|
}
|
|
676
683
|
},
|
|
677
684
|
"node_modules/@jimp/plugin-resize": {
|
|
678
|
-
"version": "0.22.
|
|
685
|
+
"version": "0.22.5",
|
|
679
686
|
"license": "MIT",
|
|
680
687
|
"dependencies": {
|
|
681
|
-
"@jimp/utils": "^0.22.
|
|
688
|
+
"@jimp/utils": "^0.22.5"
|
|
682
689
|
},
|
|
683
690
|
"peerDependencies": {
|
|
684
691
|
"@jimp/custom": ">=0.3.5"
|
|
685
692
|
}
|
|
686
693
|
},
|
|
687
694
|
"node_modules/@jimp/plugin-rotate": {
|
|
688
|
-
"version": "0.22.
|
|
695
|
+
"version": "0.22.5",
|
|
689
696
|
"license": "MIT",
|
|
690
697
|
"dependencies": {
|
|
691
|
-
"@jimp/utils": "^0.22.
|
|
698
|
+
"@jimp/utils": "^0.22.5"
|
|
692
699
|
},
|
|
693
700
|
"peerDependencies": {
|
|
694
701
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -698,10 +705,10 @@
|
|
|
698
705
|
}
|
|
699
706
|
},
|
|
700
707
|
"node_modules/@jimp/plugin-scale": {
|
|
701
|
-
"version": "0.22.
|
|
708
|
+
"version": "0.22.5",
|
|
702
709
|
"license": "MIT",
|
|
703
710
|
"dependencies": {
|
|
704
|
-
"@jimp/utils": "^0.22.
|
|
711
|
+
"@jimp/utils": "^0.22.5"
|
|
705
712
|
},
|
|
706
713
|
"peerDependencies": {
|
|
707
714
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -709,10 +716,10 @@
|
|
|
709
716
|
}
|
|
710
717
|
},
|
|
711
718
|
"node_modules/@jimp/plugin-shadow": {
|
|
712
|
-
"version": "0.22.
|
|
719
|
+
"version": "0.22.5",
|
|
713
720
|
"license": "MIT",
|
|
714
721
|
"dependencies": {
|
|
715
|
-
"@jimp/utils": "^0.22.
|
|
722
|
+
"@jimp/utils": "^0.22.5"
|
|
716
723
|
},
|
|
717
724
|
"peerDependencies": {
|
|
718
725
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -721,10 +728,10 @@
|
|
|
721
728
|
}
|
|
722
729
|
},
|
|
723
730
|
"node_modules/@jimp/plugin-threshold": {
|
|
724
|
-
"version": "0.22.
|
|
731
|
+
"version": "0.22.5",
|
|
725
732
|
"license": "MIT",
|
|
726
733
|
"dependencies": {
|
|
727
|
-
"@jimp/utils": "^0.22.
|
|
734
|
+
"@jimp/utils": "^0.22.5"
|
|
728
735
|
},
|
|
729
736
|
"peerDependencies": {
|
|
730
737
|
"@jimp/custom": ">=0.3.5",
|
|
@@ -733,30 +740,30 @@
|
|
|
733
740
|
}
|
|
734
741
|
},
|
|
735
742
|
"node_modules/@jimp/plugins": {
|
|
736
|
-
"version": "0.22.
|
|
737
|
-
"license": "MIT",
|
|
738
|
-
"dependencies": {
|
|
739
|
-
"@jimp/plugin-blit": "^0.22.
|
|
740
|
-
"@jimp/plugin-blur": "^0.22.
|
|
741
|
-
"@jimp/plugin-circle": "^0.22.
|
|
742
|
-
"@jimp/plugin-color": "^0.22.
|
|
743
|
-
"@jimp/plugin-contain": "^0.22.
|
|
744
|
-
"@jimp/plugin-cover": "^0.22.
|
|
745
|
-
"@jimp/plugin-crop": "^0.22.
|
|
746
|
-
"@jimp/plugin-displace": "^0.22.
|
|
747
|
-
"@jimp/plugin-dither": "^0.22.
|
|
748
|
-
"@jimp/plugin-fisheye": "^0.22.
|
|
749
|
-
"@jimp/plugin-flip": "^0.22.
|
|
750
|
-
"@jimp/plugin-gaussian": "^0.22.
|
|
751
|
-
"@jimp/plugin-invert": "^0.22.
|
|
752
|
-
"@jimp/plugin-mask": "^0.22.
|
|
753
|
-
"@jimp/plugin-normalize": "^0.22.
|
|
754
|
-
"@jimp/plugin-print": "^0.22.
|
|
755
|
-
"@jimp/plugin-resize": "^0.22.
|
|
756
|
-
"@jimp/plugin-rotate": "^0.22.
|
|
757
|
-
"@jimp/plugin-scale": "^0.22.
|
|
758
|
-
"@jimp/plugin-shadow": "^0.22.
|
|
759
|
-
"@jimp/plugin-threshold": "^0.22.
|
|
743
|
+
"version": "0.22.5",
|
|
744
|
+
"license": "MIT",
|
|
745
|
+
"dependencies": {
|
|
746
|
+
"@jimp/plugin-blit": "^0.22.5",
|
|
747
|
+
"@jimp/plugin-blur": "^0.22.5",
|
|
748
|
+
"@jimp/plugin-circle": "^0.22.5",
|
|
749
|
+
"@jimp/plugin-color": "^0.22.5",
|
|
750
|
+
"@jimp/plugin-contain": "^0.22.5",
|
|
751
|
+
"@jimp/plugin-cover": "^0.22.5",
|
|
752
|
+
"@jimp/plugin-crop": "^0.22.5",
|
|
753
|
+
"@jimp/plugin-displace": "^0.22.5",
|
|
754
|
+
"@jimp/plugin-dither": "^0.22.5",
|
|
755
|
+
"@jimp/plugin-fisheye": "^0.22.5",
|
|
756
|
+
"@jimp/plugin-flip": "^0.22.5",
|
|
757
|
+
"@jimp/plugin-gaussian": "^0.22.5",
|
|
758
|
+
"@jimp/plugin-invert": "^0.22.5",
|
|
759
|
+
"@jimp/plugin-mask": "^0.22.5",
|
|
760
|
+
"@jimp/plugin-normalize": "^0.22.5",
|
|
761
|
+
"@jimp/plugin-print": "^0.22.5",
|
|
762
|
+
"@jimp/plugin-resize": "^0.22.5",
|
|
763
|
+
"@jimp/plugin-rotate": "^0.22.5",
|
|
764
|
+
"@jimp/plugin-scale": "^0.22.5",
|
|
765
|
+
"@jimp/plugin-shadow": "^0.22.5",
|
|
766
|
+
"@jimp/plugin-threshold": "^0.22.5",
|
|
760
767
|
"timm": "^1.6.1"
|
|
761
768
|
},
|
|
762
769
|
"peerDependencies": {
|
|
@@ -764,18 +771,25 @@
|
|
|
764
771
|
}
|
|
765
772
|
},
|
|
766
773
|
"node_modules/@jimp/png": {
|
|
767
|
-
"version": "0.22.
|
|
774
|
+
"version": "0.22.5",
|
|
768
775
|
"license": "MIT",
|
|
769
776
|
"dependencies": {
|
|
770
|
-
"@jimp/utils": "^0.22.
|
|
777
|
+
"@jimp/utils": "^0.22.5",
|
|
771
778
|
"pngjs": "^6.0.0"
|
|
772
779
|
},
|
|
773
780
|
"peerDependencies": {
|
|
774
781
|
"@jimp/custom": ">=0.3.5"
|
|
775
782
|
}
|
|
776
783
|
},
|
|
784
|
+
"node_modules/@jimp/png/node_modules/pngjs": {
|
|
785
|
+
"version": "6.0.0",
|
|
786
|
+
"license": "MIT",
|
|
787
|
+
"engines": {
|
|
788
|
+
"node": ">=12.13.0"
|
|
789
|
+
}
|
|
790
|
+
},
|
|
777
791
|
"node_modules/@jimp/tiff": {
|
|
778
|
-
"version": "0.22.
|
|
792
|
+
"version": "0.22.5",
|
|
779
793
|
"license": "MIT",
|
|
780
794
|
"dependencies": {
|
|
781
795
|
"utif2": "^4.0.1"
|
|
@@ -785,14 +799,14 @@
|
|
|
785
799
|
}
|
|
786
800
|
},
|
|
787
801
|
"node_modules/@jimp/types": {
|
|
788
|
-
"version": "0.22.
|
|
802
|
+
"version": "0.22.5",
|
|
789
803
|
"license": "MIT",
|
|
790
804
|
"dependencies": {
|
|
791
|
-
"@jimp/bmp": "^0.22.
|
|
792
|
-
"@jimp/gif": "^0.22.
|
|
793
|
-
"@jimp/jpeg": "^0.22.
|
|
794
|
-
"@jimp/png": "^0.22.
|
|
795
|
-
"@jimp/tiff": "^0.22.
|
|
805
|
+
"@jimp/bmp": "^0.22.5",
|
|
806
|
+
"@jimp/gif": "^0.22.5",
|
|
807
|
+
"@jimp/jpeg": "^0.22.5",
|
|
808
|
+
"@jimp/png": "^0.22.5",
|
|
809
|
+
"@jimp/tiff": "^0.22.5",
|
|
796
810
|
"timm": "^1.6.1"
|
|
797
811
|
},
|
|
798
812
|
"peerDependencies": {
|
|
@@ -800,7 +814,7 @@
|
|
|
800
814
|
}
|
|
801
815
|
},
|
|
802
816
|
"node_modules/@jimp/utils": {
|
|
803
|
-
"version": "0.22.
|
|
817
|
+
"version": "0.22.5",
|
|
804
818
|
"license": "MIT",
|
|
805
819
|
"dependencies": {
|
|
806
820
|
"regenerator-runtime": "^0.13.3"
|
|
@@ -1029,7 +1043,7 @@
|
|
|
1029
1043
|
}
|
|
1030
1044
|
},
|
|
1031
1045
|
"node_modules/@types/node": {
|
|
1032
|
-
"version": "18.
|
|
1046
|
+
"version": "18.14.0",
|
|
1033
1047
|
"license": "MIT"
|
|
1034
1048
|
},
|
|
1035
1049
|
"node_modules/@types/normalize-package-data": {
|
|
@@ -1245,7 +1259,7 @@
|
|
|
1245
1259
|
}
|
|
1246
1260
|
},
|
|
1247
1261
|
"node_modules/appium-adb/node_modules/lru-cache": {
|
|
1248
|
-
"version": "7.
|
|
1262
|
+
"version": "7.16.1",
|
|
1249
1263
|
"license": "ISC",
|
|
1250
1264
|
"engines": {
|
|
1251
1265
|
"node": ">=12"
|
|
@@ -1284,14 +1298,14 @@
|
|
|
1284
1298
|
}
|
|
1285
1299
|
},
|
|
1286
1300
|
"node_modules/appium-android-driver/node_modules/lru-cache": {
|
|
1287
|
-
"version": "7.
|
|
1301
|
+
"version": "7.16.1",
|
|
1288
1302
|
"license": "ISC",
|
|
1289
1303
|
"engines": {
|
|
1290
1304
|
"node": ">=12"
|
|
1291
1305
|
}
|
|
1292
1306
|
},
|
|
1293
1307
|
"node_modules/appium-chromedriver": {
|
|
1294
|
-
"version": "5.
|
|
1308
|
+
"version": "5.3.0",
|
|
1295
1309
|
"hasInstallScript": true,
|
|
1296
1310
|
"license": "Apache-2.0",
|
|
1297
1311
|
"dependencies": {
|
|
@@ -3601,13 +3615,6 @@
|
|
|
3601
3615
|
"node": ">=4"
|
|
3602
3616
|
}
|
|
3603
3617
|
},
|
|
3604
|
-
"node_modules/pngjs": {
|
|
3605
|
-
"version": "6.0.0",
|
|
3606
|
-
"license": "MIT",
|
|
3607
|
-
"engines": {
|
|
3608
|
-
"node": ">=12.13.0"
|
|
3609
|
-
}
|
|
3610
|
-
},
|
|
3611
3618
|
"node_modules/portfinder": {
|
|
3612
3619
|
"version": "1.0.32",
|
|
3613
3620
|
"license": "MIT",
|