diff --git a/README.md b/README.md index 0342ab7f..4e9eb80c 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Try Playwright ![CI](https://github.com/mxschmitt/try-playwright/workflows/CI/badge.svg) -![Playwright version](https://img.shields.io/badge/Playwright-1.19.0-blue.svg) +![Playwright version](https://img.shields.io/badge/Playwright-1.20.0-blue.svg) > Interactive playground for [Playwright](https://github.com/microsoft/playwright) to run examples directly from your browser diff --git a/control-service/Dockerfile b/control-service/Dockerfile index 8696a1d8..40c48b1d 100644 --- a/control-service/Dockerfile +++ b/control-service/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.16-buster as builder +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ diff --git a/e2e/package-lock.json b/e2e/package-lock.json index 5b81c4b9..12ce4bbf 100644 --- a/e2e/package-lock.json +++ b/e2e/package-lock.json @@ -8,7 +8,7 @@ "name": "try-playwright", "version": "1.0.0", "devDependencies": { - "@playwright/test": "^1.19.1" + "@playwright/test": "^1.20.0" } }, "node_modules/@babel/code-frame": { @@ -546,21 +546,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz", - "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", @@ -681,25 +666,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-react-jsx": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.7.tgz", - "integrity": "sha512-8D16ye66fxiE8m890w0BpPpngG9o9OVBBy0gH2E+2AR7qMR2ZpTYJEqLxAsoroenMId0p/wMW+Blc0meDgu0Ag==", - "dev": true, - "dependencies": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-jsx": "^7.16.7", - "@babel/types": "^7.16.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-transform-typescript": { "version": "7.16.8", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz", @@ -869,13 +835,14 @@ } }, "node_modules/@playwright/test": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.19.1.tgz", - "integrity": "sha512-NGWqJWP4N2HFyXlOSDwQSfgmige94p9KQvml62fJ5wg4sknfkyw+CnFeLUze8qvnGlS0PbVISMRV5JOE8EdxjQ==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.20.0.tgz", + "integrity": "sha512-UpI5HTcgNLckR0kqXqwNvbcIXtRaDxk+hnO0OBwPSjfbBjRfRgAJ2ClA/b30C5E3UW5dJa17zhsy2qrk66l5cg==", "dev": true, "dependencies": { "@babel/code-frame": "7.16.7", "@babel/core": "7.16.12", + "@babel/helper-plugin-utils": "7.16.7", "@babel/plugin-proposal-class-properties": "7.16.7", "@babel/plugin-proposal-dynamic-import": "7.16.7", "@babel/plugin-proposal-export-namespace-from": "7.16.7", @@ -890,24 +857,19 @@ "@babel/plugin-syntax-object-rest-spread": "7.8.3", "@babel/plugin-syntax-optional-catch-binding": "7.8.3", "@babel/plugin-transform-modules-commonjs": "7.16.8", - "@babel/plugin-transform-react-jsx": "7.16.7", "@babel/preset-typescript": "7.16.7", - "babel-plugin-module-resolver": "4.1.0", "colors": "1.4.0", "commander": "8.3.0", "debug": "4.3.3", "expect": "27.2.5", "jest-matcher-utils": "27.2.5", - "jpeg-js": "0.4.3", "json5": "2.2.0", "mime": "3.0.0", "minimatch": "3.0.4", "ms": "2.1.3", "open": "8.4.0", "pirates": "4.0.4", - "pixelmatch": "5.2.1", - "playwright-core": "1.19.1", - "pngjs": "6.0.0", + "playwright-core": "1.20.0", "rimraf": "3.0.2", "source-map-support": "0.4.18", "stack-utils": "2.0.5", @@ -1023,22 +985,6 @@ "object.assign": "^4.1.0" } }, - "node_modules/babel-plugin-module-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-module-resolver/-/babel-plugin-module-resolver-4.1.0.tgz", - "integrity": "sha512-MlX10UDheRr3lb3P0WcaIdtCSRlxdQsB1sBqL7W0raF070bGl1HQQq5K3T2vf2XAYie+ww+5AKC/WrkjRO2knA==", - "dev": true, - "dependencies": { - "find-babel-config": "^1.2.0", - "glob": "^7.1.6", - "pkg-up": "^3.1.0", - "reselect": "^4.0.0", - "resolve": "^1.13.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -1349,40 +1295,6 @@ "node": ">=8" } }, - "node_modules/find-babel-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz", - "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==", - "dev": true, - "dependencies": { - "json5": "^0.5.1", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/find-babel-config/node_modules/json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -1536,18 +1448,6 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", "dev": true }, - "node_modules/is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "dependencies": { - "has": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", @@ -1901,19 +1801,6 @@ "node": ">=6" } }, - "node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/micromatch": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", @@ -2022,51 +1909,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", @@ -2076,12 +1918,6 @@ "node": ">=0.10.0" } }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, "node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", @@ -2136,30 +1972,20 @@ "node": ">=8.0.0" } }, - "node_modules/pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "dev": true, - "dependencies": { - "find-up": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/playwright-core": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.19.1.tgz", - "integrity": "sha512-+ByjhWX39PlINVRXr4ef9Kle85mk5QzA2WLioCoMQc3bSUtZpLV1mbeUDtRp/bvFw6YDIEyptj4QvzzRTXN3vg==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.20.0.tgz", + "integrity": "sha512-d25IRcdooS278Cijlp8J8A5fLQZ+/aY3dKRJvgX5yjXA69N0huIUdnh3xXSgn+LsQ9DCNmB7Ngof3eY630jgdA==", "dev": true, "dependencies": { + "colors": "1.4.0", "commander": "8.3.0", "debug": "4.3.3", "extract-zip": "2.0.1", "https-proxy-agent": "5.0.0", "jpeg-js": "0.4.3", "mime": "3.0.0", + "pixelmatch": "5.2.1", "pngjs": "6.0.0", "progress": "2.0.3", "proper-lockfile": "4.1.2", @@ -2256,29 +2082,6 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "dev": true }, - "node_modules/reselect": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.5.tgz", - "integrity": "sha512-uVdlz8J7OO+ASpBYoz1Zypgx0KasCY20H+N8JD13oUMtPvSHQuscrHop4KbXrbsBcdB9Ds7lVK7eRkBIfO43vQ==", - "dev": true - }, - "node_modules/resolve": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", - "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", - "dev": true, - "dependencies": { - "is-core-module": "^2.8.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", @@ -2413,18 +2216,6 @@ "node": ">=4" } }, - "node_modules/supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -2875,15 +2666,6 @@ "@babel/helper-plugin-utils": "^7.8.0" } }, - "@babel/plugin-syntax-jsx": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz", - "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.16.7" - } - }, "@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", @@ -2968,19 +2750,6 @@ "babel-plugin-dynamic-import-node": "^2.3.3" } }, - "@babel/plugin-transform-react-jsx": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.16.7.tgz", - "integrity": "sha512-8D16ye66fxiE8m890w0BpPpngG9o9OVBBy0gH2E+2AR7qMR2ZpTYJEqLxAsoroenMId0p/wMW+Blc0meDgu0Ag==", - "dev": true, - "requires": { - "@babel/helper-annotate-as-pure": "^7.16.7", - "@babel/helper-module-imports": "^7.16.7", - "@babel/helper-plugin-utils": "^7.16.7", - "@babel/plugin-syntax-jsx": "^7.16.7", - "@babel/types": "^7.16.7" - } - }, "@babel/plugin-transform-typescript": { "version": "7.16.8", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.16.8.tgz", @@ -3107,13 +2876,14 @@ } }, "@playwright/test": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.19.1.tgz", - "integrity": "sha512-NGWqJWP4N2HFyXlOSDwQSfgmige94p9KQvml62fJ5wg4sknfkyw+CnFeLUze8qvnGlS0PbVISMRV5JOE8EdxjQ==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.20.0.tgz", + "integrity": "sha512-UpI5HTcgNLckR0kqXqwNvbcIXtRaDxk+hnO0OBwPSjfbBjRfRgAJ2ClA/b30C5E3UW5dJa17zhsy2qrk66l5cg==", "dev": true, "requires": { "@babel/code-frame": "7.16.7", "@babel/core": "7.16.12", + "@babel/helper-plugin-utils": "7.16.7", "@babel/plugin-proposal-class-properties": "7.16.7", "@babel/plugin-proposal-dynamic-import": "7.16.7", "@babel/plugin-proposal-export-namespace-from": "7.16.7", @@ -3128,24 +2898,19 @@ "@babel/plugin-syntax-object-rest-spread": "7.8.3", "@babel/plugin-syntax-optional-catch-binding": "7.8.3", "@babel/plugin-transform-modules-commonjs": "7.16.8", - "@babel/plugin-transform-react-jsx": "7.16.7", "@babel/preset-typescript": "7.16.7", - "babel-plugin-module-resolver": "4.1.0", "colors": "1.4.0", "commander": "8.3.0", "debug": "4.3.3", "expect": "27.2.5", "jest-matcher-utils": "27.2.5", - "jpeg-js": "0.4.3", "json5": "2.2.0", "mime": "3.0.0", "minimatch": "3.0.4", "ms": "2.1.3", "open": "8.4.0", "pirates": "4.0.4", - "pixelmatch": "5.2.1", - "playwright-core": "1.19.1", - "pngjs": "6.0.0", + "playwright-core": "1.20.0", "rimraf": "3.0.2", "source-map-support": "0.4.18", "stack-utils": "2.0.5", @@ -3246,19 +3011,6 @@ "object.assign": "^4.1.0" } }, - "babel-plugin-module-resolver": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-module-resolver/-/babel-plugin-module-resolver-4.1.0.tgz", - "integrity": "sha512-MlX10UDheRr3lb3P0WcaIdtCSRlxdQsB1sBqL7W0raF070bGl1HQQq5K3T2vf2XAYie+ww+5AKC/WrkjRO2knA==", - "dev": true, - "requires": { - "find-babel-config": "^1.2.0", - "glob": "^7.1.6", - "pkg-up": "^3.1.0", - "reselect": "^4.0.0", - "resolve": "^1.13.1" - } - }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -3497,33 +3249,6 @@ "to-regex-range": "^5.0.1" } }, - "find-babel-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/find-babel-config/-/find-babel-config-1.2.0.tgz", - "integrity": "sha512-jB2CHJeqy6a820ssiqwrKMeyC6nNdmrcgkKWJWmpoxpE8RKciYJXCcXRq1h2AzCo5I5BJeN2tkGEO3hLTuePRA==", - "dev": true, - "requires": { - "json5": "^0.5.1", - "path-exists": "^3.0.0" - }, - "dependencies": { - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - } - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -3641,15 +3366,6 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", "dev": true }, - "is-core-module": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz", - "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, "is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", @@ -3904,16 +3620,6 @@ "minimist": "^1.2.5" } }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, "micromatch": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", @@ -3995,48 +3701,12 @@ "is-wsl": "^2.2.0" } }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - "dev": true - }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true - }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", - "dev": true - }, "pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", @@ -4078,27 +3748,20 @@ } } }, - "pkg-up": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", - "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, "playwright-core": { - "version": "1.19.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.19.1.tgz", - "integrity": "sha512-+ByjhWX39PlINVRXr4ef9Kle85mk5QzA2WLioCoMQc3bSUtZpLV1mbeUDtRp/bvFw6YDIEyptj4QvzzRTXN3vg==", + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.20.0.tgz", + "integrity": "sha512-d25IRcdooS278Cijlp8J8A5fLQZ+/aY3dKRJvgX5yjXA69N0huIUdnh3xXSgn+LsQ9DCNmB7Ngof3eY630jgdA==", "dev": true, "requires": { + "colors": "1.4.0", "commander": "8.3.0", "debug": "4.3.3", "extract-zip": "2.0.1", "https-proxy-agent": "5.0.0", "jpeg-js": "0.4.3", "mime": "3.0.0", + "pixelmatch": "5.2.1", "pngjs": "6.0.0", "progress": "2.0.3", "proper-lockfile": "4.1.2", @@ -4176,23 +3839,6 @@ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==", "dev": true }, - "reselect": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/reselect/-/reselect-4.1.5.tgz", - "integrity": "sha512-uVdlz8J7OO+ASpBYoz1Zypgx0KasCY20H+N8JD13oUMtPvSHQuscrHop4KbXrbsBcdB9Ds7lVK7eRkBIfO43vQ==", - "dev": true - }, - "resolve": { - "version": "1.21.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.1.tgz", - "integrity": "sha512-lfEImVbnolPuaSZuLQ52cAxPBHeI77sPwCOWRdy12UG/CNa8an7oBHH1R+Fp1/mUqSJi4c8TIP6FOIPSZAUrEQ==", - "dev": true, - "requires": { - "is-core-module": "^2.8.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - } - }, "retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", @@ -4292,12 +3938,6 @@ "has-flag": "^3.0.0" } }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", - "dev": true - }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", diff --git a/e2e/package.json b/e2e/package.json index 73933847..b8d8249b 100644 --- a/e2e/package.json +++ b/e2e/package.json @@ -13,7 +13,7 @@ }, "homepage": "https://github.com/mxschmitt/try-playwright#readme", "devDependencies": { - "@playwright/test": "^1.19.1" + "@playwright/test": "^1.20.0" }, "private": true } diff --git a/file-service/Dockerfile b/file-service/Dockerfile index bad1177b..810d592c 100644 --- a/file-service/Dockerfile +++ b/file-service/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.16-buster as builder +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 255db73f..a93af860 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -8,24 +8,24 @@ "name": "try-playwright-frontend", "version": "0.1.0", "dependencies": { - "@sentry/browser": "6.17.9", - "@types/node": "17.0.18", - "@types/react": "17.0.39", - "@types/react-dom": "17.0.11", + "@sentry/browser": "6.18.2", + "@types/node": "17.0.21", + "@types/react": "17.0.40", + "@types/react-dom": "17.0.13", "clipboard-polyfill": "3.0.3", - "monaco-editor": "0.32.1", + "monaco-editor": "0.33.0", "monaco-editor-webpack-plugin": "7.0.1", "react": "17.0.2", "react-dom": "17.0.2", "react-monaco-editor": "0.47.0", "react-scripts": "^5.0.0", "rsuite": "4.10.6", - "typescript": "4.5.5" + "typescript": "4.6.2" }, "devDependencies": { - "@sentry/types": "6.17.9", + "@sentry/types": "6.18.2", "cross-env": "^7.0.3", - "eslint": "^8.9.0", + "eslint": "^8.11.0", "react-app-rewired": "2.2.1" } }, @@ -1852,15 +1852,15 @@ "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==" }, "node_modules/@eslint/eslintrc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", - "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -1876,9 +1876,9 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "dependencies": { "type-fest": "^0.20.2" }, @@ -1889,14 +1889,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@eslint/eslintrc/node_modules/ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "engines": { - "node": ">= 4" - } - }, "node_modules/@eslint/eslintrc/node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -2766,13 +2758,13 @@ "integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A==" }, "node_modules/@sentry/browser": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.17.9.tgz", - "integrity": "sha512-RsC8GBZmZ3YfBTaIOJ06RlFp5zG7BkUoquNJmf4YhRUZeihT9osrn8qUYGFWSV/UduwKUIlSGJA/rATWWhwPRQ==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.18.2.tgz", + "integrity": "sha512-EsqKSNboi2gOiMuEwQranLucxrARi00y2vgUnaPXcqTKTlVlHDetoWHvq8/r29idA1JHGka5tDrwrmWccWIkrg==", "dependencies": { - "@sentry/core": "6.17.9", - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "@sentry/core": "6.18.2", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" }, "engines": { @@ -2780,14 +2772,14 @@ } }, "node_modules/@sentry/core": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.17.9.tgz", - "integrity": "sha512-14KalmTholGUtgdh9TklO+jUpyQ/D3OGkhlH1rnGQGoJgFy2eYm+s+MnUEMxFdGIUCz5kOteuNqYZxaDmFagpQ==", - "dependencies": { - "@sentry/hub": "6.17.9", - "@sentry/minimal": "6.17.9", - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.18.2.tgz", + "integrity": "sha512-r5ad/gq5S/JHc9sd5CUhZQT9ojQ+f+thk/AoGeGawX/8HURZYAgIqD565d6FK0VsZEDkdRMl58z1Qon20h3y1g==", + "dependencies": { + "@sentry/hub": "6.18.2", + "@sentry/minimal": "6.18.2", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" }, "engines": { @@ -2795,12 +2787,12 @@ } }, "node_modules/@sentry/hub": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.17.9.tgz", - "integrity": "sha512-34EdrweWDbBV9EzEFIXcO+JeoyQmKzQVJxpTKZoJA6PUwf2NrndaUdjlkDEtBEzjuLUTxhLxtOzEsYs1O6RVcg==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.18.2.tgz", + "integrity": "sha512-d0AugekMkbnN12b4EXMjseJxtLPc9S20DGobCPUb4oAQT6S2oDQEj1jwP6PQ5vtgyy+GMYWxBMgqAQ4pjVYISQ==", "dependencies": { - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" }, "engines": { @@ -2808,12 +2800,12 @@ } }, "node_modules/@sentry/minimal": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.17.9.tgz", - "integrity": "sha512-T3PMCHcKk6lkZq6zKgANrYJJxXBXKOe+ousV1Fas1rVBMv7dtKfsa4itqQHszcW9shusPDiaQKIJ4zRLE5LKmg==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.18.2.tgz", + "integrity": "sha512-n7KYuo34W2LxE+3dnZ47of7XHuORINCnXq66XH72eoj67tf0XeWbIhEJrYGmoLRyRfoCYYrBLWiDl/uTjLzrzQ==", "dependencies": { - "@sentry/hub": "6.17.9", - "@sentry/types": "6.17.9", + "@sentry/hub": "6.18.2", + "@sentry/types": "6.18.2", "tslib": "^1.9.3" }, "engines": { @@ -2821,19 +2813,19 @@ } }, "node_modules/@sentry/types": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.17.9.tgz", - "integrity": "sha512-xuulX6qUCL14ayEOh/h6FUIvZtsi1Bx34dSOaWDrjXUOJHJAM7214uiqW1GZxPJ13YuaUIubjTSfDmSQ9CBzTw==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.18.2.tgz", + "integrity": "sha512-WzpJf/Q5aORTzrSwer/As1NlO90dBAQpaHV2ikDDKqOyMWEgjKb5/4gh59p9gH8JMMnLetP1AvQel0fOj5UnUw==", "engines": { "node": ">=6" } }, "node_modules/@sentry/utils": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.17.9.tgz", - "integrity": "sha512-4eo9Z3JlJCGlGrQRbtZWL+L9NnlUXgTbfK3Lk7oO8D1ev8R5b5+iE6tZHTvU5rQRcq6zu+POT+tK5u9oxc/rnQ==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.18.2.tgz", + "integrity": "sha512-EC619jesknyu4xpwud5WC/5odYLz6JUy7OSFy5405PpdGeh/m8XUvuJAx4zDx0Iz/Mlk0S1Md+ZcQwqkv39dkw==", "dependencies": { - "@sentry/types": "6.17.9", + "@sentry/types": "6.18.2", "tslib": "^1.9.3" }, "engines": { @@ -3277,9 +3269,9 @@ "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" }, "node_modules/@types/node": { - "version": "17.0.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.18.tgz", - "integrity": "sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA==" + "version": "17.0.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", + "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" }, "node_modules/@types/parse-json": { "version": "4.0.0", @@ -3312,9 +3304,9 @@ "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" }, "node_modules/@types/react": { - "version": "17.0.39", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.39.tgz", - "integrity": "sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug==", + "version": "17.0.40", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.40.tgz", + "integrity": "sha512-UrXhD/JyLH+W70nNSufXqMZNuUD2cXHu6UjCllC6pmOQgBX4SGXOH8fjRka0O0Ee0HrFxapDD8Bwn81Kmiz6jQ==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3322,9 +3314,9 @@ } }, "node_modules/@types/react-dom": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.11.tgz", - "integrity": "sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q==", + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.13.tgz", + "integrity": "sha512-wEP+B8hzvy6ORDv1QBhcQia4j6ea4SFIBttHYpXKPFZRviBvknq0FRh3VrIxeXUmsPkwuXVZrVGG7KUVONmXCQ==", "dependencies": { "@types/react": "*" } @@ -6275,11 +6267,11 @@ } }, "node_modules/eslint": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", - "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", "dependencies": { - "@eslint/eslintrc": "^1.1.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -10866,9 +10858,9 @@ } }, "node_modules/monaco-editor": { - "version": "0.32.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.32.1.tgz", - "integrity": "sha512-LUt2wsUvQmEi2tfTOK+tjAPvt7eQ+K5C4rZPr6SeuyzjAuAHrIvlUloTcOiGjZW3fn3a/jFQCONrEJbNOaCqbA==" + "version": "0.33.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.33.0.tgz", + "integrity": "sha512-VcRWPSLIUEgQJQIE0pVT8FcGBIgFoxz7jtqctE+IiCxWugD0DwgyQBcZBhdSrdMC84eumoqMZsGl2GTreOzwqw==" }, "node_modules/monaco-editor-webpack-plugin": { "version": "7.0.1", @@ -13696,9 +13688,9 @@ } }, "node_modules/rsuite-table": { - "version": "3.16.0", - "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-3.16.0.tgz", - "integrity": "sha512-E+SUd9utTP9fcLMXR8BIchwQFgx5yZpfmZVSaZXRe7L9NQt0gH45xnbySDiyiz5bMbEgKrSCAat51FcH1RwB+g==", + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-3.16.1.tgz", + "integrity": "sha512-Z//sUBq/DQMnDQzZn/ZQycsO6oL4/0UyxpSWGMysepxnoJ7OfLxltm3yPC1HCi/IJp+ooOEMNo77CjAl2b8xkQ==", "dependencies": { "@babel/runtime": "^7.12.5", "classnames": "^2.2.5", @@ -14919,9 +14911,9 @@ } }, "node_modules/typescript": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", - "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==", + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz", + "integrity": "sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -17267,15 +17259,15 @@ "integrity": "sha512-M0qqxAcwCsIVfpFQSlGN5XjXWu8l5JDZN+fPt1LeW5SZexQTgnaEvgXAY+CeygRw0EeppWHi12JxESWiWrB0Sg==" }, "@eslint/eslintrc": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.1.0.tgz", - "integrity": "sha512-C1DfL7XX4nPqGd6jcP01W9pVM1HYCuUkFk1432D7F0v3JSlUIeOYn9oCoi3eoLZ+iwBSb29BMFxxny0YrrEZqg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz", + "integrity": "sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==", "requires": { "ajv": "^6.12.4", "debug": "^4.3.2", "espree": "^9.3.1", "globals": "^13.9.0", - "ignore": "^4.0.6", + "ignore": "^5.2.0", "import-fresh": "^3.2.1", "js-yaml": "^4.1.0", "minimatch": "^3.0.4", @@ -17288,18 +17280,13 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "globals": { - "version": "13.12.1", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.12.1.tgz", - "integrity": "sha512-317dFlgY2pdJZ9rspXDks7073GpDmXdfbM3vYYp0HAMKGDh1FfWPleI2ljVNLQX5M5lXcAslTcPTrOrMEFOjyw==", + "version": "13.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz", + "integrity": "sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==", "requires": { "type-fest": "^0.20.2" } }, - "ignore": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" - }, "js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -17914,59 +17901,59 @@ "integrity": "sha512-JLo+Y592QzIE+q7Dl2pMUtt4q8SKYI5jDrZxrozEQxnGVOyYE+GWK9eLkwTaeN9DDctlaRAQ3TBmzZ1qdLE30A==" }, "@sentry/browser": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.17.9.tgz", - "integrity": "sha512-RsC8GBZmZ3YfBTaIOJ06RlFp5zG7BkUoquNJmf4YhRUZeihT9osrn8qUYGFWSV/UduwKUIlSGJA/rATWWhwPRQ==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-6.18.2.tgz", + "integrity": "sha512-EsqKSNboi2gOiMuEwQranLucxrARi00y2vgUnaPXcqTKTlVlHDetoWHvq8/r29idA1JHGka5tDrwrmWccWIkrg==", "requires": { - "@sentry/core": "6.17.9", - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "@sentry/core": "6.18.2", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" } }, "@sentry/core": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.17.9.tgz", - "integrity": "sha512-14KalmTholGUtgdh9TklO+jUpyQ/D3OGkhlH1rnGQGoJgFy2eYm+s+MnUEMxFdGIUCz5kOteuNqYZxaDmFagpQ==", - "requires": { - "@sentry/hub": "6.17.9", - "@sentry/minimal": "6.17.9", - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-6.18.2.tgz", + "integrity": "sha512-r5ad/gq5S/JHc9sd5CUhZQT9ojQ+f+thk/AoGeGawX/8HURZYAgIqD565d6FK0VsZEDkdRMl58z1Qon20h3y1g==", + "requires": { + "@sentry/hub": "6.18.2", + "@sentry/minimal": "6.18.2", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" } }, "@sentry/hub": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.17.9.tgz", - "integrity": "sha512-34EdrweWDbBV9EzEFIXcO+JeoyQmKzQVJxpTKZoJA6PUwf2NrndaUdjlkDEtBEzjuLUTxhLxtOzEsYs1O6RVcg==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/hub/-/hub-6.18.2.tgz", + "integrity": "sha512-d0AugekMkbnN12b4EXMjseJxtLPc9S20DGobCPUb4oAQT6S2oDQEj1jwP6PQ5vtgyy+GMYWxBMgqAQ4pjVYISQ==", "requires": { - "@sentry/types": "6.17.9", - "@sentry/utils": "6.17.9", + "@sentry/types": "6.18.2", + "@sentry/utils": "6.18.2", "tslib": "^1.9.3" } }, "@sentry/minimal": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.17.9.tgz", - "integrity": "sha512-T3PMCHcKk6lkZq6zKgANrYJJxXBXKOe+ousV1Fas1rVBMv7dtKfsa4itqQHszcW9shusPDiaQKIJ4zRLE5LKmg==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/minimal/-/minimal-6.18.2.tgz", + "integrity": "sha512-n7KYuo34W2LxE+3dnZ47of7XHuORINCnXq66XH72eoj67tf0XeWbIhEJrYGmoLRyRfoCYYrBLWiDl/uTjLzrzQ==", "requires": { - "@sentry/hub": "6.17.9", - "@sentry/types": "6.17.9", + "@sentry/hub": "6.18.2", + "@sentry/types": "6.18.2", "tslib": "^1.9.3" } }, "@sentry/types": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.17.9.tgz", - "integrity": "sha512-xuulX6qUCL14ayEOh/h6FUIvZtsi1Bx34dSOaWDrjXUOJHJAM7214uiqW1GZxPJ13YuaUIubjTSfDmSQ9CBzTw==" + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-6.18.2.tgz", + "integrity": "sha512-WzpJf/Q5aORTzrSwer/As1NlO90dBAQpaHV2ikDDKqOyMWEgjKb5/4gh59p9gH8JMMnLetP1AvQel0fOj5UnUw==" }, "@sentry/utils": { - "version": "6.17.9", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.17.9.tgz", - "integrity": "sha512-4eo9Z3JlJCGlGrQRbtZWL+L9NnlUXgTbfK3Lk7oO8D1ev8R5b5+iE6tZHTvU5rQRcq6zu+POT+tK5u9oxc/rnQ==", + "version": "6.18.2", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-6.18.2.tgz", + "integrity": "sha512-EC619jesknyu4xpwud5WC/5odYLz6JUy7OSFy5405PpdGeh/m8XUvuJAx4zDx0Iz/Mlk0S1Md+ZcQwqkv39dkw==", "requires": { - "@sentry/types": "6.17.9", + "@sentry/types": "6.18.2", "tslib": "^1.9.3" } }, @@ -18299,9 +18286,9 @@ "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" }, "@types/node": { - "version": "17.0.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.18.tgz", - "integrity": "sha512-eKj4f/BsN/qcculZiRSujogjvp5O/k4lOW5m35NopjZM/QwLOR075a8pJW5hD+Rtdm2DaCVPENS6KtSQnUD6BA==" + "version": "17.0.21", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.21.tgz", + "integrity": "sha512-DBZCJbhII3r90XbQxI8Y9IjjiiOGlZ0Hr32omXIZvwwZ7p4DMMXGrKXVyPfuoBOri9XNtL0UK69jYIBIsRX3QQ==" }, "@types/parse-json": { "version": "4.0.0", @@ -18334,9 +18321,9 @@ "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" }, "@types/react": { - "version": "17.0.39", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.39.tgz", - "integrity": "sha512-UVavlfAxDd/AgAacMa60Azl7ygyQNRwC/DsHZmKgNvPmRR5p70AJ5Q9EAmL2NWOJmeV+vVUI4IAP7GZrN8h8Ug==", + "version": "17.0.40", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.40.tgz", + "integrity": "sha512-UrXhD/JyLH+W70nNSufXqMZNuUD2cXHu6UjCllC6pmOQgBX4SGXOH8fjRka0O0Ee0HrFxapDD8Bwn81Kmiz6jQ==", "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -18344,9 +18331,9 @@ } }, "@types/react-dom": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.11.tgz", - "integrity": "sha512-f96K3k+24RaLGVu/Y2Ng3e1EbZ8/cVJvypZWd7cy0ofCBaf2lcM46xNhycMZ2xGwbBjRql7hOlZ+e2WlJ5MH3Q==", + "version": "17.0.13", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-17.0.13.tgz", + "integrity": "sha512-wEP+B8hzvy6ORDv1QBhcQia4j6ea4SFIBttHYpXKPFZRviBvknq0FRh3VrIxeXUmsPkwuXVZrVGG7KUVONmXCQ==", "requires": { "@types/react": "*" } @@ -20557,11 +20544,11 @@ } }, "eslint": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.9.0.tgz", - "integrity": "sha512-PB09IGwv4F4b0/atrbcMFboF/giawbBLVC7fyDamk5Wtey4Jh2K+rYaBhCAbUyEI4QzB1ly09Uglc9iCtFaG2Q==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz", + "integrity": "sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==", "requires": { - "@eslint/eslintrc": "^1.1.0", + "@eslint/eslintrc": "^1.2.1", "@humanwhocodes/config-array": "^0.9.2", "ajv": "^6.10.0", "chalk": "^4.0.0", @@ -23854,9 +23841,9 @@ } }, "monaco-editor": { - "version": "0.32.1", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.32.1.tgz", - "integrity": "sha512-LUt2wsUvQmEi2tfTOK+tjAPvt7eQ+K5C4rZPr6SeuyzjAuAHrIvlUloTcOiGjZW3fn3a/jFQCONrEJbNOaCqbA==" + "version": "0.33.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.33.0.tgz", + "integrity": "sha512-VcRWPSLIUEgQJQIE0pVT8FcGBIgFoxz7jtqctE+IiCxWugD0DwgyQBcZBhdSrdMC84eumoqMZsGl2GTreOzwqw==" }, "monaco-editor-webpack-plugin": { "version": "7.0.1", @@ -25791,9 +25778,9 @@ } }, "rsuite-table": { - "version": "3.16.0", - "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-3.16.0.tgz", - "integrity": "sha512-E+SUd9utTP9fcLMXR8BIchwQFgx5yZpfmZVSaZXRe7L9NQt0gH45xnbySDiyiz5bMbEgKrSCAat51FcH1RwB+g==", + "version": "3.16.1", + "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-3.16.1.tgz", + "integrity": "sha512-Z//sUBq/DQMnDQzZn/ZQycsO6oL4/0UyxpSWGMysepxnoJ7OfLxltm3yPC1HCi/IJp+ooOEMNo77CjAl2b8xkQ==", "requires": { "@babel/runtime": "^7.12.5", "classnames": "^2.2.5", @@ -26693,9 +26680,9 @@ } }, "typescript": { - "version": "4.5.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.5.tgz", - "integrity": "sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==" + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz", + "integrity": "sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==" }, "unbox-primitive": { "version": "1.0.1", diff --git a/frontend/package.json b/frontend/package.json index f985c02d..48abc0d0 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -3,19 +3,19 @@ "version": "0.1.0", "private": true, "dependencies": { - "@sentry/browser": "6.17.9", - "@types/node": "17.0.18", - "@types/react": "17.0.39", - "@types/react-dom": "17.0.11", + "@sentry/browser": "6.18.2", + "@types/node": "17.0.21", + "@types/react": "17.0.40", + "@types/react-dom": "17.0.13", "clipboard-polyfill": "3.0.3", - "monaco-editor": "0.32.1", + "monaco-editor": "0.33.0", "monaco-editor-webpack-plugin": "7.0.1", "react": "17.0.2", "react-dom": "17.0.2", "react-monaco-editor": "0.47.0", "react-scripts": "^5.0.0", "rsuite": "4.10.6", - "typescript": "4.5.5" + "typescript": "4.6.2" }, "scripts": { "start": "cross-env SKIP_PREFLIGHT_CHECK=true GENERATE_SOURCEMAP=false react-app-rewired start", @@ -38,9 +38,9 @@ }, "proxy": "https://localhost", "devDependencies": { - "@sentry/types": "6.17.9", + "@sentry/types": "6.18.2", "cross-env": "^7.0.3", - "eslint": "^8.9.0", + "eslint": "^8.11.0", "react-app-rewired": "2.2.1" }, "eslintConfig": { diff --git a/frontend/src/components/Editor/types.txt b/frontend/src/components/Editor/types.txt index 9a78ab3d..a1a5f3ae 100644 --- a/frontend/src/components/Editor/types.txt +++ b/frontend/src/components/Editor/types.txt @@ -854,10 +854,6 @@ children, if requested. If omitted, the full tree is returned. */ depth?: number; - /** - * Deprecated. This parameter has been renamed to `depth`. If depth is not provided, max_depth will be used. - */ - max_depth?: number; /** * The frame for whose document the AX tree should be retrieved. If omited, the root frame is used. @@ -1261,15 +1257,15 @@ animation/transition. export interface AffectedFrame { frameId: Page.FrameId; } - export type SameSiteCookieExclusionReason = "ExcludeSameSiteUnspecifiedTreatedAsLax"|"ExcludeSameSiteNoneInsecure"|"ExcludeSameSiteLax"|"ExcludeSameSiteStrict"|"ExcludeInvalidSameParty"|"ExcludeSamePartyCrossPartyContext"; - export type SameSiteCookieWarningReason = "WarnSameSiteUnspecifiedCrossSiteContext"|"WarnSameSiteNoneInsecure"|"WarnSameSiteUnspecifiedLaxAllowUnsafe"|"WarnSameSiteStrictLaxDowngradeStrict"|"WarnSameSiteStrictCrossDowngradeStrict"|"WarnSameSiteStrictCrossDowngradeLax"|"WarnSameSiteLaxCrossDowngradeStrict"|"WarnSameSiteLaxCrossDowngradeLax"; - export type SameSiteCookieOperation = "SetCookie"|"ReadCookie"; + export type CookieExclusionReason = "ExcludeSameSiteUnspecifiedTreatedAsLax"|"ExcludeSameSiteNoneInsecure"|"ExcludeSameSiteLax"|"ExcludeSameSiteStrict"|"ExcludeInvalidSameParty"|"ExcludeSamePartyCrossPartyContext"; + export type CookieWarningReason = "WarnSameSiteUnspecifiedCrossSiteContext"|"WarnSameSiteNoneInsecure"|"WarnSameSiteUnspecifiedLaxAllowUnsafe"|"WarnSameSiteStrictLaxDowngradeStrict"|"WarnSameSiteStrictCrossDowngradeStrict"|"WarnSameSiteStrictCrossDowngradeLax"|"WarnSameSiteLaxCrossDowngradeStrict"|"WarnSameSiteLaxCrossDowngradeLax"|"WarnAttributeValueExceedsMaxSize"; + export type CookieOperation = "SetCookie"|"ReadCookie"; /** * This information is currently necessary, as the front-end has a difficult time finding a specific cookie. With this, we can convey specific error information without the cookie. */ - export interface SameSiteCookieIssueDetails { + export interface CookieIssueDetails { /** * If AffectedCookie is not set then rawCookieLine contains the raw Set-Cookie header string. This hints at a problem where the @@ -1278,19 +1274,19 @@ that no valid cookie could be created. */ cookie?: AffectedCookie; rawCookieLine?: string; - cookieWarningReasons: SameSiteCookieWarningReason[]; - cookieExclusionReasons: SameSiteCookieExclusionReason[]; + cookieWarningReasons: CookieWarningReason[]; + cookieExclusionReasons: CookieExclusionReason[]; /** * Optionally identifies the site-for-cookies and the cookie url, which may be used by the front-end as additional context. */ - operation: SameSiteCookieOperation; + operation: CookieOperation; siteForCookies?: string; cookieUrl?: string; request?: AffectedRequest; } export type MixedContentResolutionStatus = "MixedContentBlocked"|"MixedContentAutomaticallyUpgraded"|"MixedContentWarning"; - export type MixedContentResourceType = "Audio"|"Beacon"|"CSPReport"|"Download"|"EventSource"|"Favicon"|"Font"|"Form"|"Frame"|"Image"|"Import"|"Manifest"|"Ping"|"PluginData"|"PluginResource"|"Prefetch"|"Resource"|"Script"|"ServiceWorker"|"SharedWorker"|"Stylesheet"|"Track"|"Video"|"Worker"|"XMLHttpRequest"|"XSLT"; + export type MixedContentResourceType = "AttributionSrc"|"Audio"|"Beacon"|"CSPReport"|"Download"|"EventSource"|"Favicon"|"Font"|"Form"|"Frame"|"Image"|"Import"|"Manifest"|"Ping"|"PluginData"|"PluginResource"|"Prefetch"|"Resource"|"Script"|"ServiceWorker"|"SharedWorker"|"Stylesheet"|"Track"|"Video"|"Worker"|"XMLHttpRequest"|"XSLT"; export interface MixedContentIssueDetails { /** * The type of resource causing the mixed content issue (css, js, iframe, @@ -1495,10 +1491,10 @@ https://www.chromestatus.com/feature/5684870116278272 for more details." /** * Represents the failure reason when a federated authentication reason fails. Should be updated alongside RequestIdTokenStatus in -third_party/blink/public/mojom/webid/federated_auth_request.mojom to include +third_party/blink/public/mojom/devtools/inspector_issue.mojom to include all cases except for success. */ - export type FederatedAuthRequestIssueReason = "ApprovalDeclined"|"TooManyRequests"|"WellKnownHttpNotFound"|"WellKnownNoResponse"|"WellKnownInvalidResponse"|"ClientIdMetadataHttpNotFound"|"ClientIdMetadataNoResponse"|"ClientIdMetadataInvalidResponse"|"ErrorFetchingSignin"|"InvalidSigninResponse"|"AccountsHttpNotFound"|"AccountsNoResponse"|"AccountsInvalidResponse"|"IdTokenHttpNotFound"|"IdTokenNoResponse"|"IdTokenInvalidResponse"|"IdTokenInvalidRequest"|"ErrorIdToken"|"Canceled"; + export type FederatedAuthRequestIssueReason = "ApprovalDeclined"|"TooManyRequests"|"ManifestHttpNotFound"|"ManifestNoResponse"|"ManifestInvalidResponse"|"ClientMetadataHttpNotFound"|"ClientMetadataNoResponse"|"ClientMetadataInvalidResponse"|"ClientMetadataMissingPrivacyPolicyUrl"|"ErrorFetchingSignin"|"InvalidSigninResponse"|"AccountsHttpNotFound"|"AccountsNoResponse"|"AccountsInvalidResponse"|"IdTokenHttpNotFound"|"IdTokenNoResponse"|"IdTokenInvalidResponse"|"IdTokenInvalidRequest"|"ErrorIdToken"|"Canceled"; /** * This issue tracks client hints related issues. It's used to deprecate old features, encourage the use of new ones, and provide general guidance. @@ -1512,14 +1508,14 @@ features, encourage the use of new ones, and provide general guidance. optional fields in InspectorIssueDetails to convey more specific information about the kind of issue. */ - export type InspectorIssueCode = "SameSiteCookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"; + export type InspectorIssueCode = "CookieIssue"|"MixedContentIssue"|"BlockedByResponseIssue"|"HeavyAdIssue"|"ContentSecurityPolicyIssue"|"SharedArrayBufferIssue"|"TrustedWebActivityIssue"|"LowTextContrastIssue"|"CorsIssue"|"AttributionReportingIssue"|"QuirksModeIssue"|"NavigatorUserAgentIssue"|"GenericIssue"|"DeprecationIssue"|"ClientHintIssue"|"FederatedAuthRequestIssue"; /** * This struct holds a list of optional fields with additional information specific to the kind of issue. When adding a new issue code, please also add a new optional field to this type. */ export interface InspectorIssueDetails { - sameSiteCookieIssueDetails?: SameSiteCookieIssueDetails; + cookieIssueDetails?: CookieIssueDetails; mixedContentIssueDetails?: MixedContentIssueDetails; blockedByResponseIssueDetails?: BlockedByResponseIssueDetails; heavyAdIssueDetails?: HeavyAdIssueDetails; @@ -2179,6 +2175,15 @@ inspector" rules), "regular" for regular stylesheets. */ matchedCSSRules: RuleMatch[]; } + /** + * Inherited pseudo element matches from pseudos of an ancestor node. + */ + export interface InheritedPseudoElementMatches { + /** + * Matches of pseudo styles from the pseudos of an ancestor node. + */ + pseudoElements: PseudoElementMatches[]; + } /** * Match data for a CSS rule. */ @@ -2329,6 +2334,16 @@ starting with the innermost one, going outwards. The array enumerates container queries starting with the innermost one, going outwards. */ containerQueries?: CSSContainerQuery[]; + /** + * @supports CSS at-rule array. +The array enumerates @supports at-rules starting with the innermost one, going outwards. + */ + supports?: CSSSupports[]; + /** + * Cascade layer array. Contains the layer hierarchy that this rule belongs to starting +with the innermost layer and going outwards. + */ + layers?: CSSLayer[]; } /** * CSS coverage information. @@ -2553,6 +2568,60 @@ available). */ name?: string; } + /** + * CSS Supports at-rule descriptor. + */ + export interface CSSSupports { + /** + * Supports rule text. + */ + text: string; + /** + * The associated rule header range in the enclosing stylesheet (if +available). + */ + range?: SourceRange; + /** + * Identifier of the stylesheet containing this object (if exists). + */ + styleSheetId?: StyleSheetId; + } + /** + * CSS Layer at-rule descriptor. + */ + export interface CSSLayer { + /** + * Layer name. + */ + text: string; + /** + * The associated rule header range in the enclosing stylesheet (if +available). + */ + range?: SourceRange; + /** + * Identifier of the stylesheet containing this object (if exists). + */ + styleSheetId?: StyleSheetId; + } + /** + * CSS Layer data. + */ + export interface CSSLayerData { + /** + * Layer name. + */ + name: string; + /** + * Direct sub-layers + */ + subLayers?: CSSLayerData[]; + /** + * Layer order. The order determines the order of the layer in the cascade order. +A higher number has higher priority in the cascade order. + */ + order: number; + } /** * Information about amount of glyphs that were rendered with given font. */ @@ -2893,6 +2962,10 @@ attributes) for a DOM node identified by `nodeId`. * A chain of inherited styles (from the immediate node parent up to the DOM tree root). */ inherited?: InheritedStyleEntry[]; + /** + * A chain of inherited pseudo element styles (from the immediate node parent up to the DOM tree root). + */ + inheritedPseudoElements?: InheritedPseudoElementMatches[]; /** * A list of CSS keyframed animations matching this node. */ @@ -2931,6 +3004,18 @@ node. */ text: string; } + /** + * Returns all layers parsed by the rendering engine for the tree scope of a node. +Given a DOM element identified by nodeId, getLayersForNode returns the root +layer for the nearest ancestor document or shadow root. The layer root contains +the full layer tree for the tree scope and their ordering. + */ + export type getLayersForNodeParameters = { + nodeId: DOM.NodeId; + } + export type getLayersForNodeReturnValue = { + rootLayer: CSSLayerData; + } /** * Starts tracking the given computed styles for updates. The specified array of properties replaces the one previously specified. Pass empty array to disable tracking. @@ -3011,6 +3096,20 @@ property */ containerQuery: CSSContainerQuery; } + /** + * Modifies the expression of a supports at-rule. + */ + export type setSupportsTextParameters = { + styleSheetId: StyleSheetId; + range: SourceRange; + text: string; + } + export type setSupportsTextReturnValue = { + /** + * The resulting CSS Supports rule after modification. + */ + supports: CSSSupports; + } /** * Modifies the rule selector. */ @@ -3388,7 +3487,7 @@ front-end. /** * Pseudo element type. */ - export type PseudoType = "first-line"|"first-letter"|"before"|"after"|"marker"|"backdrop"|"selection"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"transition"|"transition-container"|"transition-old-content"|"transition-new-content"; + export type PseudoType = "first-line"|"first-letter"|"before"|"after"|"marker"|"backdrop"|"selection"|"target-text"|"spelling-error"|"grammar-error"|"highlight"|"first-line-inherited"|"scrollbar"|"scrollbar-thumb"|"scrollbar-button"|"scrollbar-track"|"scrollbar-track-piece"|"scrollbar-corner"|"resizer"|"input-list-button"|"page-transition"|"page-transition-container"|"page-transition-image-wrapper"|"page-transition-outgoing-image"|"page-transition-incoming-image"; /** * Shadow root type. */ @@ -5982,11 +6081,6 @@ virtualTimeBudgetExpired event is sent. forwards to prevent deadlock. */ maxVirtualTimeTaskStarvationCount?: number; - /** - * If set the virtual time policy change should be deferred until any frame starts navigating. -Note any previous deferred policy change is superseded. - */ - waitForNavigation?: boolean; /** * If set, base::Time::Now will be overridden to initially return this value. */ @@ -6070,6 +6164,17 @@ on Android. } export type setUserAgentOverrideReturnValue = { } + /** + * Allows overriding the automation flag. + */ + export type setAutomationOverrideParameters = { + /** + * Whether the override should be enabled. + */ + enabled: boolean; + } + export type setAutomationOverrideReturnValue = { + } } /** @@ -10118,7 +10223,7 @@ should be omitted for worker targets. */ containerQueryContainerHighlightConfig?: ContainerQueryContainerHighlightConfig; } - export type ColorFormat = "rgb"|"hsl"|"hex"; + export type ColorFormat = "rgb"|"hsl"|"hwb"|"hex"; /** * Configurations for Persistent Grid Highlight */ @@ -10682,7 +10787,7 @@ Backend then generates 'inspectNodeRequested' event upon element selection. * All Permissions Policy features. This enum should match the one defined in third_party/blink/renderer/core/permissions_policy/permissions_policy_features.json5. */ - export type PermissionsPolicyFeature = "accelerometer"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"camera"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-rtt"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-full"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-reduced"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"cross-origin-isolated"|"direct-sockets"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"magnetometer"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"publickey-credentials-get"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"storage-access-api"|"sync-xhr"|"trust-token-redemption"|"usb"|"vertical-scroll"|"web-share"|"window-placement"|"xr-spatial-tracking"; + export type PermissionsPolicyFeature = "accelerometer"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"camera"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-rtt"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-full"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-reduced"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"ch-partitioned-cookies"|"clipboard-read"|"clipboard-write"|"cross-origin-isolated"|"direct-sockets"|"display-capture"|"document-domain"|"encrypted-media"|"execution-while-out-of-viewport"|"execution-while-not-rendered"|"focus-without-user-activation"|"fullscreen"|"frobulate"|"gamepad"|"geolocation"|"gyroscope"|"hid"|"idle-detection"|"join-ad-interest-group"|"keyboard-map"|"magnetometer"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"publickey-credentials-get"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"storage-access-api"|"sync-xhr"|"trust-token-redemption"|"usb"|"vertical-scroll"|"web-share"|"window-placement"|"xr-spatial-tracking"; /** * Reason for a permissions policy feature to be disabled. */ @@ -11161,6 +11266,12 @@ Example URLs: http://www.google.com/file.html -> "google.com" * Not restored reason */ reason: BackForwardCacheNotRestoredReason; + /** + * Context associated with the reason. The meaning of this context is +dependent on the reason: +- EmbedderExtensionSentMessageToCachedFrame: the extension ID. + */ + context?: string; } export interface BackForwardCacheNotRestoredExplanationTree { /** @@ -17828,12 +17939,14 @@ Error was thrown. "CSS.getMediaQueries": CSS.getMediaQueriesParameters; "CSS.getPlatformFontsForNode": CSS.getPlatformFontsForNodeParameters; "CSS.getStyleSheetText": CSS.getStyleSheetTextParameters; + "CSS.getLayersForNode": CSS.getLayersForNodeParameters; "CSS.trackComputedStyleUpdates": CSS.trackComputedStyleUpdatesParameters; "CSS.takeComputedStyleUpdates": CSS.takeComputedStyleUpdatesParameters; "CSS.setEffectivePropertyValueForNode": CSS.setEffectivePropertyValueForNodeParameters; "CSS.setKeyframeKey": CSS.setKeyframeKeyParameters; "CSS.setMediaText": CSS.setMediaTextParameters; "CSS.setContainerQueryText": CSS.setContainerQueryTextParameters; + "CSS.setSupportsText": CSS.setSupportsTextParameters; "CSS.setRuleSelector": CSS.setRuleSelectorParameters; "CSS.setStyleSheetText": CSS.setStyleSheetTextParameters; "CSS.setStyleTexts": CSS.setStyleTextsParameters; @@ -17955,6 +18068,7 @@ Error was thrown. "Emulation.setVisibleSize": Emulation.setVisibleSizeParameters; "Emulation.setDisabledImageTypes": Emulation.setDisabledImageTypesParameters; "Emulation.setUserAgentOverride": Emulation.setUserAgentOverrideParameters; + "Emulation.setAutomationOverride": Emulation.setAutomationOverrideParameters; "HeadlessExperimental.beginFrame": HeadlessExperimental.beginFrameParameters; "HeadlessExperimental.disable": HeadlessExperimental.disableParameters; "HeadlessExperimental.enable": HeadlessExperimental.enableParameters; @@ -18354,12 +18468,14 @@ Error was thrown. "CSS.getMediaQueries": CSS.getMediaQueriesReturnValue; "CSS.getPlatformFontsForNode": CSS.getPlatformFontsForNodeReturnValue; "CSS.getStyleSheetText": CSS.getStyleSheetTextReturnValue; + "CSS.getLayersForNode": CSS.getLayersForNodeReturnValue; "CSS.trackComputedStyleUpdates": CSS.trackComputedStyleUpdatesReturnValue; "CSS.takeComputedStyleUpdates": CSS.takeComputedStyleUpdatesReturnValue; "CSS.setEffectivePropertyValueForNode": CSS.setEffectivePropertyValueForNodeReturnValue; "CSS.setKeyframeKey": CSS.setKeyframeKeyReturnValue; "CSS.setMediaText": CSS.setMediaTextReturnValue; "CSS.setContainerQueryText": CSS.setContainerQueryTextReturnValue; + "CSS.setSupportsText": CSS.setSupportsTextReturnValue; "CSS.setRuleSelector": CSS.setRuleSelectorReturnValue; "CSS.setStyleSheetText": CSS.setStyleSheetTextReturnValue; "CSS.setStyleTexts": CSS.setStyleTextsReturnValue; @@ -18481,6 +18597,7 @@ Error was thrown. "Emulation.setVisibleSize": Emulation.setVisibleSizeReturnValue; "Emulation.setDisabledImageTypes": Emulation.setDisabledImageTypesReturnValue; "Emulation.setUserAgentOverride": Emulation.setUserAgentOverrideReturnValue; + "Emulation.setAutomationOverride": Emulation.setAutomationOverrideReturnValue; "HeadlessExperimental.beginFrame": HeadlessExperimental.beginFrameReturnValue; "HeadlessExperimental.disable": HeadlessExperimental.disableReturnValue; "HeadlessExperimental.enable": HeadlessExperimental.enableReturnValue; @@ -22036,11 +22153,12 @@ export interface Page { * [browser.newContext([options])](https://playwright.dev/docs/api/class-browser#browser-new-context) allows to set * viewport size (and more) for all pages in the context at once. * - * `page.setViewportSize` will resize the page. A lot of websites don't expect phones to change size, so you should set the - * viewport size before navigating to the page. - * [page.setViewportSize(viewportSize)](https://playwright.dev/docs/api/class-page#page-set-viewport-size) will also reset - * `screen` size, use [browser.newContext([options])](https://playwright.dev/docs/api/class-browser#browser-new-context) - * with `screen` and `viewport` parameters if you need better control of these properties. + * [page.setViewportSize(viewportSize)](https://playwright.dev/docs/api/class-page#page-set-viewport-size) will resize the + * page. A lot of websites don't expect phones to change size, so you should set the viewport size before navigating to the + * page. [page.setViewportSize(viewportSize)](https://playwright.dev/docs/api/class-page#page-set-viewport-size) will also + * reset `screen` size, use + * [browser.newContext([options])](https://playwright.dev/docs/api/class-browser#browser-new-context) with `screen` and + * `viewport` parameters if you need better control of these properties. * * ```js * const page = await browser.newPage(); @@ -25443,7 +25561,6 @@ export interface BrowserContext { * - `'midi'` * - `'midi-sysex'` (system-exclusive midi) * - `'notifications'` - * - `'push'` * - `'camera'` * - `'microphone'` * - `'background-sync'` @@ -26896,6 +27013,20 @@ export interface ElementHandle extends JSHandle { * @param options */ screenshot(options?: { + /** + * When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different treatment + * depending on their duration: + * - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event. + * - infinite animations are canceled to initial state, and then played over after the screenshot. + */ + animations?: "disabled"; + + /** + * Specify locators that should be masked when the screenshot is taken. Masked elements will be overlayed with a pink box + * `#FF00FF` that completely covers its bounding box. + */ + mask?: Array; + /** * Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images. * Defaults to `false`. @@ -27926,6 +28057,12 @@ export interface Locator { timeout?: number; }): Promise; + /** + * Highlight the corresponding element(s) on the screen. Useful for debugging, don't commit the code that uses + * [locator.highlight()](https://playwright.dev/docs/api/class-locator#locator-highlight). + */ + highlight(): Promise; + /** * This method hovers over the element by performing the following steps: * 1. Wait for [actionability](https://playwright.dev/docs/actionability) checks on the element, unless `force` option is set. @@ -28192,38 +28329,7 @@ export interface Locator { * screenshot. If the element is detached from DOM, the method throws an error. * @param options */ - screenshot(options?: { - /** - * Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images. - * Defaults to `false`. - */ - omitBackground?: boolean; - - /** - * The file path to save the image to. The screenshot type will be inferred from file extension. If `path` is a relative - * path, then it is resolved relative to the current working directory. If no path is provided, the image won't be saved to - * the disk. - */ - path?: string; - - /** - * The quality of the image, between 0-100. Not applicable to `png` images. - */ - quality?: number; - - /** - * Maximum time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can be changed by - * using the - * [browserContext.setDefaultTimeout(timeout)](https://playwright.dev/docs/api/class-browsercontext#browser-context-set-default-timeout) - * or [page.setDefaultTimeout(timeout)](https://playwright.dev/docs/api/class-page#page-set-default-timeout) methods. - */ - timeout?: number; - - /** - * Specify screenshot type, defaults to `png`. - */ - type?: "png"|"jpeg"; - }): Promise; + screenshot(options?: LocatorScreenshotOptions): Promise; /** * This method waits for [actionability](https://playwright.dev/docs/actionability) checks, then tries to scroll element into view, unless it is @@ -29862,8 +29968,14 @@ export {}; export interface Android { /** * Returns the list of detected Android devices. + * @param options */ - devices(): Promise>; + devices(options?: { + /** + * Optional port to establish ADB server connection. + */ + port?: number; + }): Promise>; /** * This setting will change the default maximum time for all the methods accepting `timeout` option. @@ -29874,7 +29986,7 @@ export interface Android { /** * [AndroidDevice] represents a connected device, either real hardware or emulated. Devices can be obtained using - * [android.devices()](https://playwright.dev/docs/api/class-android#android-devices). + * [android.devices([options])](https://playwright.dev/docs/api/class-android#android-devices). */ export interface AndroidDevice { /** @@ -34414,6 +34526,53 @@ export interface ConnectOptions { timeout?: number; } +export interface LocatorScreenshotOptions { + /** + * When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different treatment + * depending on their duration: + * - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event. + * - infinite animations are canceled to initial state, and then played over after the screenshot. + */ + animations?: "disabled"; + + /** + * Specify locators that should be masked when the screenshot is taken. Masked elements will be overlayed with a pink box + * `#FF00FF` that completely covers its bounding box. + */ + mask?: Array; + + /** + * Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images. + * Defaults to `false`. + */ + omitBackground?: boolean; + + /** + * The file path to save the image to. The screenshot type will be inferred from file extension. If `path` is a relative + * path, then it is resolved relative to the current working directory. If no path is provided, the image won't be saved to + * the disk. + */ + path?: string; + + /** + * The quality of the image, between 0-100. Not applicable to `png` images. + */ + quality?: number; + + /** + * Maximum time in milliseconds, defaults to 30 seconds, pass `0` to disable timeout. The default value can be changed by + * using the + * [browserContext.setDefaultTimeout(timeout)](https://playwright.dev/docs/api/class-browsercontext#browser-context-set-default-timeout) + * or [page.setDefaultTimeout(timeout)](https://playwright.dev/docs/api/class-page#page-set-default-timeout) methods. + */ + timeout?: number; + + /** + * Specify screenshot type, defaults to `png`. + */ + type?: "png"|"jpeg"; +} + interface ElementHandleWaitForSelectorOptions { /** * Defaults to `'visible'`. Can be either: @@ -34505,6 +34664,14 @@ interface PageWaitForFunctionOptions { } export interface PageScreenshotOptions { + /** + * When set to `"disabled"`, stops CSS animations, CSS transitions and Web Animations. Animations get different treatment + * depending on their duration: + * - finite animations are fast-forwarded to completion, so they'll fire `transitionend` event. + * - infinite animations are canceled to initial state, and then played over after the screenshot. + */ + animations?: "disabled"; + /** * An object which specifies clipping of the resulting image. Should have the following fields: */ @@ -34536,6 +34703,12 @@ export interface PageScreenshotOptions { */ fullPage?: boolean; + /** + * Specify locators that should be masked when the screenshot is taken. Masked elements will be overlayed with a pink box + * `#FF00FF` that completely covers its bounding box. + */ + mask?: Array; + /** * Hides default white background and allows capturing screenshots with transparency. Not applicable to `jpeg` images. * Defaults to `false`. @@ -34625,6 +34798,8 @@ type Devices = { "iPhone 12 Pro landscape": DeviceDescriptor; "iPhone 12 Pro Max": DeviceDescriptor; "iPhone 12 Pro Max landscape": DeviceDescriptor; + "iPhone 12 Mini": DeviceDescriptor; + "iPhone 12 Mini landscape": DeviceDescriptor; "iPhone 13": DeviceDescriptor; "iPhone 13 landscape": DeviceDescriptor; "iPhone 13 Pro": DeviceDescriptor; diff --git a/worker-csharp/Dockerfile b/worker-csharp/Dockerfile index 1da38388..379b9348 100644 --- a/worker-csharp/Dockerfile +++ b/worker-csharp/Dockerfile @@ -1,5 +1,5 @@ -ARG PLAYWRIGHT_VERSION=1.19.0 -FROM golang:1.16-buster as builder +ARG PLAYWRIGHT_VERSION=1.20.1 +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ @@ -9,20 +9,13 @@ COPY worker-csharp/main.go /root/ COPY internal/ /root/internal/ RUN CGO_ENABLED=0 GOOS=linux go build -o /app -FROM mcr.microsoft.com/playwright:v${PLAYWRIGHT_VERSION}-focal +FROM mcr.microsoft.com/playwright/dotnet:v${PLAYWRIGHT_VERSION}-focal ARG PLAYWRIGHT_VERSION ENV PLAYWRIGHT_VERSION=$PLAYWRIGHT_VERSION ENV DOTNET_CLI_TELEMETRY_OPTOUT=1 -RUN curl -o packages-microsoft-prod.deb https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb && \ - dpkg -i packages-microsoft-prod.deb && \ - apt-get update && \ - apt-get install -y apt-transport-https && \ - apt-get update && \ - apt-get install -y aspnetcore-runtime-6.0 dotnet-sdk-6.0 - -RUN apt-get remove -y python3.8 python3-pip git ssh xvfb curl nodejs && \ +RUN apt-get remove -y git ssh xvfb curl && \ apt-get autoremove -y WORKDIR /home/pwuser/ @@ -32,10 +25,8 @@ USER pwuser RUN mkdir /home/pwuser/project/ && \ cd /home/pwuser/project/ && \ dotnet new console && \ - dotnet tool install --global Microsoft.Playwright.CLI && \ dotnet add package Microsoft.Playwright --version ${PLAYWRIGHT_VERSION} && \ dotnet build && \ - /home/pwuser/.dotnet/tools/playwright install && \ rm Program.cs COPY --from=builder /app /app diff --git a/worker-java/Dockerfile b/worker-java/Dockerfile index c7b856ef..a2c52a40 100644 --- a/worker-java/Dockerfile +++ b/worker-java/Dockerfile @@ -1,5 +1,5 @@ -ARG PLAYWRIGHT_VERSION=1.19.0 -FROM golang:1.16-buster as builder +ARG PLAYWRIGHT_VERSION=1.20.0 +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ @@ -11,16 +11,12 @@ RUN CGO_ENABLED=0 GOOS=linux go build -o /app FROM mcr.microsoft.com/playwright/java:v$PLAYWRIGHT_VERSION-focal -RUN apt-get remove -y python3.8 python3-pip git ssh xvfb curl nodejs && \ +RUN apt-get remove -y git ssh xvfb curl && \ apt-get autoremove -y ARG PLAYWRIGHT_VERSION ENV PLAYWRIGHT_VERSION=$PLAYWRIGHT_VERSION -RUN adduser pwuser - -RUN chown pwuser -R /ms-playwright - USER pwuser WORKDIR /home/pwuser/ diff --git a/worker-javascript/Dockerfile b/worker-javascript/Dockerfile index e068c624..64b32521 100644 --- a/worker-javascript/Dockerfile +++ b/worker-javascript/Dockerfile @@ -1,5 +1,5 @@ -ARG PLAYWRIGHT_VERSION=1.19.1 -FROM golang:1.16-buster as builder +ARG PLAYWRIGHT_VERSION=1.20.0 +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ @@ -14,7 +14,7 @@ FROM mcr.microsoft.com/playwright:v${PLAYWRIGHT_VERSION}-focal ARG PLAYWRIGHT_VERSION ENV PLAYWRIGHT_VERSION=$PLAYWRIGHT_VERSION -RUN apt-get remove -y python3.8 python3-pip git ssh xvfb curl && \ +RUN apt-get remove -y git ssh xvfb curl && \ apt-get autoremove -y WORKDIR /home/pwuser/ diff --git a/worker-python/Dockerfile b/worker-python/Dockerfile index f996f6c6..5ef1b956 100644 --- a/worker-python/Dockerfile +++ b/worker-python/Dockerfile @@ -1,5 +1,5 @@ -ARG PLAYWRIGHT_VERSION=1.19.0 -FROM golang:1.16-buster as builder +ARG PLAYWRIGHT_VERSION=1.20.0 +FROM golang:1.18-buster as builder WORKDIR /root COPY go.mod /root/ COPY go.sum /root/ @@ -9,7 +9,7 @@ COPY worker-python/main.go /root/ COPY internal/ /root/internal/ RUN CGO_ENABLED=0 GOOS=linux go build -o /app -FROM mcr.microsoft.com/playwright:v${PLAYWRIGHT_VERSION}-focal +FROM mcr.microsoft.com/playwright/python:v${PLAYWRIGHT_VERSION}-focal ARG PLAYWRIGHT_VERSION ENV PLAYWRIGHT_VERSION=$PLAYWRIGHT_VERSION @@ -19,8 +19,6 @@ RUN apt-get remove -y git ssh xvfb curl && \ WORKDIR /home/pwuser/ -RUN pip install pip --upgrade - RUN pip install playwright==${PLAYWRIGHT_VERSION} USER pwuser