diff --git a/README.md b/README.md index edb6fd9..1485e43 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.40.1-blue.svg) +![Playwright version](https://img.shields.io/badge/Playwright-1.41.0-blue.svg) > Interactive playground for [Playwright](https://github.com/microsoft/playwright) to run examples directly from your browser diff --git a/e2e/package-lock.json b/e2e/package-lock.json index 5aca11a..0db523c 100644 --- a/e2e/package-lock.json +++ b/e2e/package-lock.json @@ -8,16 +8,16 @@ "name": "try-playwright", "version": "1.0.0", "devDependencies": { - "@playwright/test": "^1.40.1" + "@playwright/test": "^1.41.0" } }, "node_modules/@playwright/test": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.1.tgz", - "integrity": "sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.0.tgz", + "integrity": "sha512-Grvzj841THwtpBOrfiHOeYTJQxDRnKofMSzCiV8XeyLWu3o89qftQ4BCKfkziJhSUQRd0utKhrddtIsiraIwmw==", "dev": true, "dependencies": { - "playwright": "1.40.1" + "playwright": "1.41.0" }, "bin": { "playwright": "cli.js" @@ -41,12 +41,12 @@ } }, "node_modules/playwright": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", - "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", + "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", "dev": true, "dependencies": { - "playwright-core": "1.40.1" + "playwright-core": "1.41.0" }, "bin": { "playwright": "cli.js" @@ -59,9 +59,9 @@ } }, "node_modules/playwright-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", - "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", + "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -73,12 +73,12 @@ }, "dependencies": { "@playwright/test": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.40.1.tgz", - "integrity": "sha512-EaaawMTOeEItCRvfmkI9v6rBkF1svM8wjl/YPRrg2N2Wmp+4qJYkWtJsbew1szfKKDm6fPLy4YAanBhIlf9dWw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.41.0.tgz", + "integrity": "sha512-Grvzj841THwtpBOrfiHOeYTJQxDRnKofMSzCiV8XeyLWu3o89qftQ4BCKfkziJhSUQRd0utKhrddtIsiraIwmw==", "dev": true, "requires": { - "playwright": "1.40.1" + "playwright": "1.41.0" } }, "fsevents": { @@ -89,19 +89,19 @@ "optional": true }, "playwright": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", - "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", + "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", "dev": true, "requires": { "fsevents": "2.3.2", - "playwright-core": "1.40.1" + "playwright-core": "1.41.0" } }, "playwright-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", - "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", + "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", "dev": true } } diff --git a/e2e/package.json b/e2e/package.json index bfc3a25..627ceda 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.40.1" + "@playwright/test": "^1.41.0" }, "private": true } diff --git a/frontend/package-lock.json b/frontend/package-lock.json index c93afec..514a543 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -9,20 +9,20 @@ "version": "0.1.0", "dependencies": { "@rsuite/icons": "^1.0.3", - "@sentry/browser": "^7.84.0", - "monaco-editor": "^0.44.0", + "@sentry/browser": "^7.93.0", + "monaco-editor": "^0.45.0", "react": "^18.2.0", "react-dom": "^18.2.0", - "rsuite": "^5.46.0" + "rsuite": "^5.51.0" }, "devDependencies": { - "@playwright/experimental-ct-react": "^1.40.1", - "@types/node": "^20.10.1", - "@types/react": "^18.2.39", - "@types/react-dom": "^18.2.17", - "@vitejs/plugin-react": "^4.2.0", - "typescript": "^5.3.2", - "vite": "^5.0.4" + "@playwright/experimental-ct-react": "^1.41.0", + "@types/node": "^20.11.5", + "@types/react": "^18.2.48", + "@types/react-dom": "^18.2.18", + "@vitejs/plugin-react": "^4.2.1", + "typescript": "^5.3.3", + "vite": "^5.0.11" } }, "node_modules/@ampproject/remapping": { @@ -782,14 +782,14 @@ "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" }, "node_modules/@playwright/experimental-ct-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-core/-/experimental-ct-core-1.40.1.tgz", - "integrity": "sha512-FjYQP74I2xVAO6W52+Yn2t48FDs+IhOHcWAwZHqAX+lHVHidz4f/b0FY3Qnq8+ZIt5TgqucEzGXbw/TdqJYDtA==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-core/-/experimental-ct-core-1.41.0.tgz", + "integrity": "sha512-nshYXeACzQRmxHH2IfEP9tdl30tnsUXq5I5WMJtwaza2d4GOntqOUTeMHUq/HziG3XKZO4zc7Kn5tOo1L+BsLw==", "dev": true, "dependencies": { - "playwright": "1.40.1", - "playwright-core": "1.40.1", - "vite": "^4.4.10" + "playwright": "1.41.0", + "playwright-core": "1.41.0", + "vite": "^4.4.12" }, "bin": { "playwright": "cli.js" @@ -1204,9 +1204,9 @@ } }, "node_modules/@playwright/experimental-ct-core/node_modules/vite": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", - "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.1.tgz", + "integrity": "sha512-AXXFaAJ8yebyqzoNB9fu2pHoo/nWX+xZlaRwoeYUxEqBO+Zj4msE5G+BhGBll9lYEKv9Hfks52PAF2X7qDYXQA==", "dev": true, "dependencies": { "esbuild": "^0.18.10", @@ -1259,12 +1259,12 @@ } }, "node_modules/@playwright/experimental-ct-react": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-react/-/experimental-ct-react-1.40.1.tgz", - "integrity": "sha512-a2ubB04+pSswpWOgIwgBcSvvdvVNv4Cz8wud5ZLV5+4fcRqRACxFlGJPiVHw1zanhDSD+rH6H9+zaNm/o1iJHw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-react/-/experimental-ct-react-1.41.0.tgz", + "integrity": "sha512-F9L45wmSoU8ojLk/sZyusVKmzkAFdCos3lgUwTh1VPeI1FQLlow7UUlqcOBYOehYgwAFwX19RRm8fhzK5+qpkw==", "dev": true, "dependencies": { - "@playwright/experimental-ct-core": "1.40.1", + "@playwright/experimental-ct-core": "1.41.0", "@vitejs/plugin-react": "^4.0.0" }, "bin": { @@ -1451,74 +1451,88 @@ "react-dom": ">=16.8.0" } }, + "node_modules/@sentry-internal/feedback": { + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.93.0.tgz", + "integrity": "sha512-4G7rMeQbYGfCHxEoFroABX+UREYc2BSbFqjLmLbIcWowSpgzcwweLLphWHKOciqK6f7DnNDK0jZzx3u7NrkWHw==", + "dependencies": { + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/@sentry-internal/tracing": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.84.0.tgz", - "integrity": "sha512-y9bGYA0OM6PEREfd+nk4UURZy29tpIw+7vQwpxWfEVs2fqq0/5TBFX/tKFb8AKUI9lVM8v0bcF0bNSCnuPQZHQ==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.93.0.tgz", + "integrity": "sha512-DjuhmQNywPp+8fxC9dvhGrqgsUb6wI/HQp25lS2Re7VxL1swCasvpkg8EOYP4iBniVQ86QK0uITkOIRc5tdY1w==", "dependencies": { - "@sentry/core": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/browser": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.84.0.tgz", - "integrity": "sha512-X50TlTKY9WzAnHsYc4FYrCWgm+CdVo0h02ggmodVBUpRLUBjj+cs5Q1plov/v/XeorSwmorNEMUu/n+XZNSsrA==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.93.0.tgz", + "integrity": "sha512-MtLTcQ7y3rfk+aIvnnwCfSJvYhTJnIJi+Mf6y/ap6SKObdlsKMbQoJLlRViglGLq+nKxHLAvU0fONiCEmKfV6A==", "dependencies": { - "@sentry-internal/tracing": "7.84.0", - "@sentry/core": "7.84.0", - "@sentry/replay": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry-internal/feedback": "7.93.0", + "@sentry-internal/tracing": "7.93.0", + "@sentry/core": "7.93.0", + "@sentry/replay": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/core": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.84.0.tgz", - "integrity": "sha512-tbuwunbBx2kSex15IHCqHDnrMfIlqPc6w/76fwkGqokz3oh9GSEGlLICwmBWL8AypWimUg13IDtFpD0TJTriWA==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.93.0.tgz", + "integrity": "sha512-vZQSUiDn73n+yu2fEcH+Wpm4GbRmtxmnXnYCPgM6IjnXqkVm3awWAkzrheADblx3kmxrRiOlTXYHw9NTWs56fg==", "dependencies": { - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" }, "engines": { "node": ">=8" } }, "node_modules/@sentry/replay": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.84.0.tgz", - "integrity": "sha512-c4PxT0ZpvkR9zXNfmAk3ojkm6eZ9+NlDze09RFBOCNo69QwIN90hnvbjXFC1+vRIJsfgo78Zr0ya/Wzb3Rog7Q==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.93.0.tgz", + "integrity": "sha512-dMlLU8v+OkUeGCrPvTu5NriH7BGj3el4rGHWWAYicfJ2QXqTTq50vfasQBP1JeVNcFqnf1y653TdEIvo4RH4tw==", "dependencies": { - "@sentry-internal/tracing": "7.84.0", - "@sentry/core": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry-internal/tracing": "7.93.0", + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" }, "engines": { "node": ">=12" } }, "node_modules/@sentry/types": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.84.0.tgz", - "integrity": "sha512-VqGLIF3JOUrk7yIXjLXJvAORkZL1e3dDX0Q1okRehwyt/5CRE+mdUTeJZkBo9P9mBwgMyvtwklzOGGrzjb4eMA==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.93.0.tgz", + "integrity": "sha512-UnzUccNakhFRA/esWBWP+0v7cjNg+RilFBQC03Mv9OEMaZaS29zSbcOGtRzuFOXXLBdbr44BWADqpz3VW0XaNw==", "engines": { "node": ">=8" } }, "node_modules/@sentry/utils": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.84.0.tgz", - "integrity": "sha512-qdUVuxnRBvaf05AU+28R+xYtZmi/Ymf8os3Njq9g4XuA+QEkZLbzmIpRK5W9Ja7vUtjOeg29Xgg43A8znde9LQ==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.93.0.tgz", + "integrity": "sha512-Iovj7tUnbgSkh/WrAaMrd5UuYjW7AzyzZlFDIUrwidsyIdUficjCG2OIxYzh76H6nYIx9SxewW0R54Q6XoB4uA==", "dependencies": { - "@sentry/types": "7.84.0" + "@sentry/types": "7.93.0" }, "engines": { "node": ">=8" @@ -1576,9 +1590,9 @@ "integrity": "sha512-MrO/xLXCaUgZy3y96C/iOsaIqZSeupyTImKClHunL5GrmaiII2VwvWmLBu2hwa0Kp0sV19CsyjtrTc/Fx8rg/A==" }, "node_modules/@types/node": { - "version": "20.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", - "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", "dev": true, "dependencies": { "undici-types": "~5.26.4" @@ -1590,9 +1604,9 @@ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "node_modules/@types/react": { - "version": "18.2.39", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.39.tgz", - "integrity": "sha512-Oiw+ppED6IremMInLV4HXGbfbG6GyziY3kqAwJYOR0PNbkYDmLWQA3a95EhdSmamsvbkJN96ZNN+YD+fGjzSBA==", + "version": "18.2.48", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", + "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -1600,9 +1614,9 @@ } }, "node_modules/@types/react-dom": { - "version": "18.2.17", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.17.tgz", - "integrity": "sha512-rvrT/M7Df5eykWFxn6MYt5Pem/Dbyc1N8Y0S9Mrkw2WFCRiqUgw9P7ul2NpwsXCSM1DVdENzdG9J5SreqfAIWg==", + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, "dependencies": { "@types/react": "*" @@ -1622,15 +1636,15 @@ "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" }, "node_modules/@vitejs/plugin-react": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.0.tgz", - "integrity": "sha512-+MHTH/e6H12kRp5HUkzOGqPMksezRMmW+TNzlh/QXfI8rRf6l2Z2yH/v12no1UvTwhZgEDMuQ7g7rrfMseU6FQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", + "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", "dev": true, "dependencies": { - "@babel/core": "^7.23.3", + "@babel/core": "^7.23.5", "@babel/plugin-transform-react-jsx-self": "^7.23.3", "@babel/plugin-transform-react-jsx-source": "^7.23.3", - "@types/babel__core": "^7.20.4", + "@types/babel__core": "^7.20.5", "react-refresh": "^0.14.0" }, "engines": { @@ -1779,9 +1793,9 @@ } }, "node_modules/dom-lib": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/dom-lib/-/dom-lib-3.1.6.tgz", - "integrity": "sha512-xXEhStHDoAyfhnz8mqDwZ9rnqdqz/9BcrKd1UEw6BlA/l17emFb2dK7q8IX8ArU31pScSU9otEnL6wzvpoT5aw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/dom-lib/-/dom-lib-3.2.0.tgz", + "integrity": "sha512-UXKTs8h3z+TYwpJVzoCC+Fi0iPlaAgtdhbtvhMz6bs0R4TLraDfpBvnJlzDpqS/7L+cXxrllxh5TI20obWmLug==", "dependencies": { "@babel/runtime": "^7.20.0" } @@ -1953,9 +1967,9 @@ "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" }, "node_modules/monaco-editor": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.44.0.tgz", - "integrity": "sha512-5SmjNStN6bSuSE5WPT2ZV+iYn1/yI9sd4Igtk23ChvqB7kDk9lZbB9F5frsuvpB+2njdIeGGFf2G4gbE6rCC9Q==" + "version": "0.45.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.45.0.tgz", + "integrity": "sha512-mjv1G1ZzfEE3k9HZN0dQ2olMdwIfaeAAjFiwNprLfYNRSz7ctv9XuCT7gPtBGrMUeV1/iZzYKj17Khu1hxoHOA==" }, "node_modules/ms": { "version": "2.1.2", @@ -1964,9 +1978,9 @@ "dev": true }, "node_modules/nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ { @@ -2002,12 +2016,12 @@ "dev": true }, "node_modules/playwright": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", - "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", + "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", "dev": true, "dependencies": { - "playwright-core": "1.40.1" + "playwright-core": "1.41.0" }, "bin": { "playwright": "cli.js" @@ -2020,9 +2034,9 @@ } }, "node_modules/playwright-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", - "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", + "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", "dev": true, "bin": { "playwright-core": "cli.js" @@ -2032,9 +2046,9 @@ } }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "funding": [ { @@ -2051,7 +2065,7 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -2164,9 +2178,9 @@ } }, "node_modules/rsuite": { - "version": "5.46.0", - "resolved": "https://registry.npmjs.org/rsuite/-/rsuite-5.46.0.tgz", - "integrity": "sha512-tUFD0iSYydRw+b8ZxIeqZi56Pp8VGY2Hg/tIQWP5HJ9bQoE3g3T4KSs1xEhoao1Vh5D3Lr2Zh5CNLsQxUcO/4w==", + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/rsuite/-/rsuite-5.51.0.tgz", + "integrity": "sha512-bYX7fgC2MXYzIN376+v3FA4MfUascncxR7iyI5J+TeKBVUt1ud9A9RbFWNQ8gMcVorE27P9xuyZqfGRgdCALgA==", "dependencies": { "@babel/runtime": "^7.20.1", "@juggle/resize-observer": "^3.4.0", @@ -2182,7 +2196,7 @@ "prop-types": "^15.8.1", "react-use-set": "^1.0.0", "react-window": "^1.8.8", - "rsuite-table": "^5.18.1", + "rsuite-table": "^5.18.2", "schema-typed": "^2.1.3" }, "peerDependencies": { @@ -2191,9 +2205,9 @@ } }, "node_modules/rsuite-table": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-5.18.1.tgz", - "integrity": "sha512-xYgBELy72IEsAL25aXe45Bfpaa8BchuHY3VSrkqBngssWQ5Xa6n8qlO3oGDg5wMrjrdMAWq+IVNJYxTkMUVyNw==", + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-5.18.2.tgz", + "integrity": "sha512-IelmlHraExYgrkT13WWVENhCywWjBxPkpF2zpsqvMcwzaNAg9lHaVVyajcOKczqGB24NGRE6WgBF5n1RC6XAww==", "dependencies": { "@babel/runtime": "^7.12.5", "@juggle/resize-observer": "^3.3.1", @@ -2267,9 +2281,9 @@ } }, "node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "dev": true, "bin": { "tsc": "bin/tsc", @@ -2316,13 +2330,13 @@ } }, "node_modules/vite": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.4.tgz", - "integrity": "sha512-RzAr8LSvM8lmhB4tQ5OPcBhpjOZRZjuxv9zO5UcxeoY2bd3kP3Ticd40Qma9/BqZ8JS96Ll/jeBX9u+LJZrhVg==", + "version": "5.0.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.11.tgz", + "integrity": "sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==", "dev": true, "dependencies": { "esbuild": "^0.19.3", - "postcss": "^8.4.31", + "postcss": "^8.4.32", "rollup": "^4.2.0" }, "bin": { @@ -2848,14 +2862,14 @@ "integrity": "sha512-dfLbk+PwWvFzSxwk3n5ySL0hfBog779o8h68wK/7/APo/7cgyWp5jcXockbxdk5kFRkbeXWm4Fbi9FrdN381sA==" }, "@playwright/experimental-ct-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-core/-/experimental-ct-core-1.40.1.tgz", - "integrity": "sha512-FjYQP74I2xVAO6W52+Yn2t48FDs+IhOHcWAwZHqAX+lHVHidz4f/b0FY3Qnq8+ZIt5TgqucEzGXbw/TdqJYDtA==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-core/-/experimental-ct-core-1.41.0.tgz", + "integrity": "sha512-nshYXeACzQRmxHH2IfEP9tdl30tnsUXq5I5WMJtwaza2d4GOntqOUTeMHUq/HziG3XKZO4zc7Kn5tOo1L+BsLw==", "dev": true, "requires": { - "playwright": "1.40.1", - "playwright-core": "1.40.1", - "vite": "^4.4.10" + "playwright": "1.41.0", + "playwright-core": "1.41.0", + "vite": "^4.4.12" }, "dependencies": { "@esbuild/android-arm": { @@ -3052,9 +3066,9 @@ } }, "vite": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", - "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.1.tgz", + "integrity": "sha512-AXXFaAJ8yebyqzoNB9fu2pHoo/nWX+xZlaRwoeYUxEqBO+Zj4msE5G+BhGBll9lYEKv9Hfks52PAF2X7qDYXQA==", "dev": true, "requires": { "esbuild": "^0.18.10", @@ -3066,12 +3080,12 @@ } }, "@playwright/experimental-ct-react": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-react/-/experimental-ct-react-1.40.1.tgz", - "integrity": "sha512-a2ubB04+pSswpWOgIwgBcSvvdvVNv4Cz8wud5ZLV5+4fcRqRACxFlGJPiVHw1zanhDSD+rH6H9+zaNm/o1iJHw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/@playwright/experimental-ct-react/-/experimental-ct-react-1.41.0.tgz", + "integrity": "sha512-F9L45wmSoU8ojLk/sZyusVKmzkAFdCos3lgUwTh1VPeI1FQLlow7UUlqcOBYOehYgwAFwX19RRm8fhzK5+qpkw==", "dev": true, "requires": { - "@playwright/experimental-ct-core": "1.40.1", + "@playwright/experimental-ct-core": "1.41.0", "@vitejs/plugin-react": "^4.0.0" } }, @@ -3176,59 +3190,70 @@ "lodash": "^4.17.20" } }, + "@sentry-internal/feedback": { + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/feedback/-/feedback-7.93.0.tgz", + "integrity": "sha512-4G7rMeQbYGfCHxEoFroABX+UREYc2BSbFqjLmLbIcWowSpgzcwweLLphWHKOciqK6f7DnNDK0jZzx3u7NrkWHw==", + "requires": { + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" + } + }, "@sentry-internal/tracing": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.84.0.tgz", - "integrity": "sha512-y9bGYA0OM6PEREfd+nk4UURZy29tpIw+7vQwpxWfEVs2fqq0/5TBFX/tKFb8AKUI9lVM8v0bcF0bNSCnuPQZHQ==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry-internal/tracing/-/tracing-7.93.0.tgz", + "integrity": "sha512-DjuhmQNywPp+8fxC9dvhGrqgsUb6wI/HQp25lS2Re7VxL1swCasvpkg8EOYP4iBniVQ86QK0uITkOIRc5tdY1w==", "requires": { - "@sentry/core": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" } }, "@sentry/browser": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.84.0.tgz", - "integrity": "sha512-X50TlTKY9WzAnHsYc4FYrCWgm+CdVo0h02ggmodVBUpRLUBjj+cs5Q1plov/v/XeorSwmorNEMUu/n+XZNSsrA==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/browser/-/browser-7.93.0.tgz", + "integrity": "sha512-MtLTcQ7y3rfk+aIvnnwCfSJvYhTJnIJi+Mf6y/ap6SKObdlsKMbQoJLlRViglGLq+nKxHLAvU0fONiCEmKfV6A==", "requires": { - "@sentry-internal/tracing": "7.84.0", - "@sentry/core": "7.84.0", - "@sentry/replay": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry-internal/feedback": "7.93.0", + "@sentry-internal/tracing": "7.93.0", + "@sentry/core": "7.93.0", + "@sentry/replay": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" } }, "@sentry/core": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.84.0.tgz", - "integrity": "sha512-tbuwunbBx2kSex15IHCqHDnrMfIlqPc6w/76fwkGqokz3oh9GSEGlLICwmBWL8AypWimUg13IDtFpD0TJTriWA==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/core/-/core-7.93.0.tgz", + "integrity": "sha512-vZQSUiDn73n+yu2fEcH+Wpm4GbRmtxmnXnYCPgM6IjnXqkVm3awWAkzrheADblx3kmxrRiOlTXYHw9NTWs56fg==", "requires": { - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" } }, "@sentry/replay": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.84.0.tgz", - "integrity": "sha512-c4PxT0ZpvkR9zXNfmAk3ojkm6eZ9+NlDze09RFBOCNo69QwIN90hnvbjXFC1+vRIJsfgo78Zr0ya/Wzb3Rog7Q==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/replay/-/replay-7.93.0.tgz", + "integrity": "sha512-dMlLU8v+OkUeGCrPvTu5NriH7BGj3el4rGHWWAYicfJ2QXqTTq50vfasQBP1JeVNcFqnf1y653TdEIvo4RH4tw==", "requires": { - "@sentry-internal/tracing": "7.84.0", - "@sentry/core": "7.84.0", - "@sentry/types": "7.84.0", - "@sentry/utils": "7.84.0" + "@sentry-internal/tracing": "7.93.0", + "@sentry/core": "7.93.0", + "@sentry/types": "7.93.0", + "@sentry/utils": "7.93.0" } }, "@sentry/types": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.84.0.tgz", - "integrity": "sha512-VqGLIF3JOUrk7yIXjLXJvAORkZL1e3dDX0Q1okRehwyt/5CRE+mdUTeJZkBo9P9mBwgMyvtwklzOGGrzjb4eMA==" + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/types/-/types-7.93.0.tgz", + "integrity": "sha512-UnzUccNakhFRA/esWBWP+0v7cjNg+RilFBQC03Mv9OEMaZaS29zSbcOGtRzuFOXXLBdbr44BWADqpz3VW0XaNw==" }, "@sentry/utils": { - "version": "7.84.0", - "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.84.0.tgz", - "integrity": "sha512-qdUVuxnRBvaf05AU+28R+xYtZmi/Ymf8os3Njq9g4XuA+QEkZLbzmIpRK5W9Ja7vUtjOeg29Xgg43A8znde9LQ==", + "version": "7.93.0", + "resolved": "https://registry.npmjs.org/@sentry/utils/-/utils-7.93.0.tgz", + "integrity": "sha512-Iovj7tUnbgSkh/WrAaMrd5UuYjW7AzyzZlFDIUrwidsyIdUficjCG2OIxYzh76H6nYIx9SxewW0R54Q6XoB4uA==", "requires": { - "@sentry/types": "7.84.0" + "@sentry/types": "7.93.0" } }, "@types/babel__core": { @@ -3283,9 +3308,9 @@ "integrity": "sha512-MrO/xLXCaUgZy3y96C/iOsaIqZSeupyTImKClHunL5GrmaiII2VwvWmLBu2hwa0Kp0sV19CsyjtrTc/Fx8rg/A==" }, "@types/node": { - "version": "20.10.1", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.10.1.tgz", - "integrity": "sha512-T2qwhjWwGH81vUEx4EXmBKsTJRXFXNZTL4v0gi01+zyBmCwzE6TyHszqX01m+QHTEq+EZNo13NeJIdEqf+Myrg==", + "version": "20.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.5.tgz", + "integrity": "sha512-g557vgQjUUfN76MZAN/dt1z3dzcUsimuysco0KeluHgrPdJXkP/XdAURgyO2W9fZWHRtRBiVKzKn8vyOAwlG+w==", "dev": true, "requires": { "undici-types": "~5.26.4" @@ -3297,9 +3322,9 @@ "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" }, "@types/react": { - "version": "18.2.39", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.39.tgz", - "integrity": "sha512-Oiw+ppED6IremMInLV4HXGbfbG6GyziY3kqAwJYOR0PNbkYDmLWQA3a95EhdSmamsvbkJN96ZNN+YD+fGjzSBA==", + "version": "18.2.48", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.48.tgz", + "integrity": "sha512-qboRCl6Ie70DQQG9hhNREz81jqC1cs9EVNcjQ1AU+jH6NFfSAhVVbrrY/+nSF+Bsk4AOwm9Qa61InvMCyV+H3w==", "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -3307,9 +3332,9 @@ } }, "@types/react-dom": { - "version": "18.2.17", - "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.17.tgz", - "integrity": "sha512-rvrT/M7Df5eykWFxn6MYt5Pem/Dbyc1N8Y0S9Mrkw2WFCRiqUgw9P7ul2NpwsXCSM1DVdENzdG9J5SreqfAIWg==", + "version": "18.2.18", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.2.18.tgz", + "integrity": "sha512-TJxDm6OfAX2KJWJdMEVTwWke5Sc/E/RlnPGvGfS0W7+6ocy2xhDVQVh/KvC2Uf7kACs+gDytdusDSdWfWkaNzw==", "dev": true, "requires": { "@types/react": "*" @@ -3329,15 +3354,15 @@ "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==" }, "@vitejs/plugin-react": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.0.tgz", - "integrity": "sha512-+MHTH/e6H12kRp5HUkzOGqPMksezRMmW+TNzlh/QXfI8rRf6l2Z2yH/v12no1UvTwhZgEDMuQ7g7rrfMseU6FQ==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.2.1.tgz", + "integrity": "sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==", "dev": true, "requires": { - "@babel/core": "^7.23.3", + "@babel/core": "^7.23.5", "@babel/plugin-transform-react-jsx-self": "^7.23.3", "@babel/plugin-transform-react-jsx-source": "^7.23.3", - "@types/babel__core": "^7.20.4", + "@types/babel__core": "^7.20.5", "react-refresh": "^0.14.0" } }, @@ -3425,9 +3450,9 @@ } }, "dom-lib": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/dom-lib/-/dom-lib-3.1.6.tgz", - "integrity": "sha512-xXEhStHDoAyfhnz8mqDwZ9rnqdqz/9BcrKd1UEw6BlA/l17emFb2dK7q8IX8ArU31pScSU9otEnL6wzvpoT5aw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/dom-lib/-/dom-lib-3.2.0.tgz", + "integrity": "sha512-UXKTs8h3z+TYwpJVzoCC+Fi0iPlaAgtdhbtvhMz6bs0R4TLraDfpBvnJlzDpqS/7L+cXxrllxh5TI20obWmLug==", "requires": { "@babel/runtime": "^7.20.0" } @@ -3555,9 +3580,9 @@ "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" }, "monaco-editor": { - "version": "0.44.0", - "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.44.0.tgz", - "integrity": "sha512-5SmjNStN6bSuSE5WPT2ZV+iYn1/yI9sd4Igtk23ChvqB7kDk9lZbB9F5frsuvpB+2njdIeGGFf2G4gbE6rCC9Q==" + "version": "0.45.0", + "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.45.0.tgz", + "integrity": "sha512-mjv1G1ZzfEE3k9HZN0dQ2olMdwIfaeAAjFiwNprLfYNRSz7ctv9XuCT7gPtBGrMUeV1/iZzYKj17Khu1hxoHOA==" }, "ms": { "version": "2.1.2", @@ -3566,9 +3591,9 @@ "dev": true }, "nanoid": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", - "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true }, "node-releases": { @@ -3589,28 +3614,28 @@ "dev": true }, "playwright": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.40.1.tgz", - "integrity": "sha512-2eHI7IioIpQ0bS1Ovg/HszsN/XKNwEG1kbzSDDmADpclKc7CyqkHw7Mg2JCz/bbCxg25QUPcjksoMW7JcIFQmw==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.41.0.tgz", + "integrity": "sha512-XOsfl5ZtAik/T9oek4V0jAypNlaCNzuKOwVhqhgYT3os6kH34PzbRb74F0VWcLYa5WFdnmxl7qyAHBXvPv7lqQ==", "dev": true, "requires": { "fsevents": "2.3.2", - "playwright-core": "1.40.1" + "playwright-core": "1.41.0" } }, "playwright-core": { - "version": "1.40.1", - "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.40.1.tgz", - "integrity": "sha512-+hkOycxPiV534c4HhpfX6yrlawqVUzITRKwHAmYfmsVreltEl6fAZJ3DPfLMOODw0H3s1Itd6MDCWmP1fl/QvQ==", + "version": "1.41.0", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.41.0.tgz", + "integrity": "sha512-UGKASUhXmvqm2Lxa1fNr8sFwAtqjpgBRr9jQ7XBI8Rn5uFiEowGUGwrruUQsVPIom4bk7Lt+oLGpXobnXzrBIw==", "dev": true }, "postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "requires": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" } @@ -3695,9 +3720,9 @@ } }, "rsuite": { - "version": "5.46.0", - "resolved": "https://registry.npmjs.org/rsuite/-/rsuite-5.46.0.tgz", - "integrity": "sha512-tUFD0iSYydRw+b8ZxIeqZi56Pp8VGY2Hg/tIQWP5HJ9bQoE3g3T4KSs1xEhoao1Vh5D3Lr2Zh5CNLsQxUcO/4w==", + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/rsuite/-/rsuite-5.51.0.tgz", + "integrity": "sha512-bYX7fgC2MXYzIN376+v3FA4MfUascncxR7iyI5J+TeKBVUt1ud9A9RbFWNQ8gMcVorE27P9xuyZqfGRgdCALgA==", "requires": { "@babel/runtime": "^7.20.1", "@juggle/resize-observer": "^3.4.0", @@ -3713,14 +3738,14 @@ "prop-types": "^15.8.1", "react-use-set": "^1.0.0", "react-window": "^1.8.8", - "rsuite-table": "^5.18.1", + "rsuite-table": "^5.18.2", "schema-typed": "^2.1.3" } }, "rsuite-table": { - "version": "5.18.1", - "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-5.18.1.tgz", - "integrity": "sha512-xYgBELy72IEsAL25aXe45Bfpaa8BchuHY3VSrkqBngssWQ5Xa6n8qlO3oGDg5wMrjrdMAWq+IVNJYxTkMUVyNw==", + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/rsuite-table/-/rsuite-table-5.18.2.tgz", + "integrity": "sha512-IelmlHraExYgrkT13WWVENhCywWjBxPkpF2zpsqvMcwzaNAg9lHaVVyajcOKczqGB24NGRE6WgBF5n1RC6XAww==", "requires": { "@babel/runtime": "^7.12.5", "@juggle/resize-observer": "^3.3.1", @@ -3779,9 +3804,9 @@ "dev": true }, "typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "dev": true }, "undici-types": { @@ -3801,14 +3826,14 @@ } }, "vite": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.4.tgz", - "integrity": "sha512-RzAr8LSvM8lmhB4tQ5OPcBhpjOZRZjuxv9zO5UcxeoY2bd3kP3Ticd40Qma9/BqZ8JS96Ll/jeBX9u+LJZrhVg==", + "version": "5.0.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.11.tgz", + "integrity": "sha512-XBMnDjZcNAw/G1gEiskiM1v6yzM4GE5aMGvhWTlHAYYhxb7S3/V1s3m2LDHa8Vh6yIWYYB0iJwsEaS523c4oYA==", "dev": true, "requires": { "esbuild": "^0.19.3", "fsevents": "~2.3.3", - "postcss": "^8.4.31", + "postcss": "^8.4.32", "rollup": "^4.2.0" }, "dependencies": { diff --git a/frontend/package.json b/frontend/package.json index 095b3f4..01a9e06 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -9,19 +9,19 @@ }, "dependencies": { "@rsuite/icons": "^1.0.3", - "@sentry/browser": "^7.84.0", - "monaco-editor": "^0.44.0", + "@sentry/browser": "^7.93.0", + "monaco-editor": "^0.45.0", "react": "^18.2.0", "react-dom": "^18.2.0", - "rsuite": "^5.46.0" + "rsuite": "^5.51.0" }, "devDependencies": { - "@playwright/experimental-ct-react": "^1.40.1", - "@types/node": "^20.10.1", - "@types/react": "^18.2.39", - "@types/react-dom": "^18.2.17", - "@vitejs/plugin-react": "^4.2.0", - "typescript": "^5.3.2", - "vite": "^5.0.4" + "@playwright/experimental-ct-react": "^1.41.0", + "@types/node": "^20.11.5", + "@types/react": "^18.2.48", + "@types/react-dom": "^18.2.18", + "@vitejs/plugin-react": "^4.2.1", + "typescript": "^5.3.3", + "vite": "^5.0.11" } } diff --git a/frontend/src/components/Editor/types.txt b/frontend/src/components/Editor/types.txt index e94a0ab..9b57640 100644 --- a/frontend/src/components/Editor/types.txt +++ b/frontend/src/components/Editor/types.txt @@ -1,384 +1,379 @@ -// Declare "static" methods in Error -interface ErrorConstructor { - /** Create .stack property on a target object */ - captureStackTrace(targetObject: object, constructorOpt?: Function): void; - /** - * Optional override for formatting stack traces - * - * @see https://v8.dev/docs/stack-trace-api#customizing-stack-traces - */ - prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined; - - stackTraceLimit: number; -} - -/*-----------------------------------------------* - * * - * GLOBAL * - * * - ------------------------------------------------*/ +// #region Fetch and friends +// Conditional type aliases, used at the end of this file. +// Will either be empty if lib-dom is included, or the undici version otherwise. +type _Request = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Request; +type _Response = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Response; +type _FormData = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").FormData; +type _Headers = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Headers; +type _RequestInit = typeof globalThis extends { onmessage: any } ? {} + : import("undici-types").RequestInit; +type _ResponseInit = typeof globalThis extends { onmessage: any } ? {} + : import("undici-types").ResponseInit; +// #endregion Fetch and friends -// For backwards compability -interface NodeRequire extends NodeJS.Require {} -interface RequireResolve extends NodeJS.RequireResolve {} -interface NodeModule extends NodeJS.Module {} - -declare var process: NodeJS.Process; -declare var console: Console; - -declare var __filename: string; -declare var __dirname: string; - -declare var require: NodeRequire; -declare var module: NodeModule; - -// Same as module.exports -declare var exports: any; - -/** - * Only available if `--expose-gc` is passed to the process. - */ -declare var gc: undefined | (() => void); - -// #region borrowed -// from https://github.com/microsoft/TypeScript/blob/38da7c600c83e7b31193a62495239a0fe478cb67/lib/lib.webworker.d.ts#L633 until moved to separate lib -/** A controller object that allows you to abort one or more DOM requests as and when desired. */ -interface AbortController { - /** - * Returns the AbortSignal object associated with this object. - */ +declare global { + // Declare "static" methods in Error + interface ErrorConstructor { + /** Create .stack property on a target object */ + captureStackTrace(targetObject: object, constructorOpt?: Function): void; - readonly signal: AbortSignal; - /** - * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted. - */ - abort(reason?: any): void; -} + /** + * Optional override for formatting stack traces + * + * @see https://v8.dev/docs/stack-trace-api#customizing-stack-traces + */ + prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined; -/** A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object. */ -interface AbortSignal extends EventTarget { - /** - * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise. - */ - readonly aborted: boolean; - readonly reason: any; - onabort: null | ((this: AbortSignal, event: Event) => any); - throwIfAborted(): void; -} + stackTraceLimit: number; + } -declare var AbortController: typeof globalThis extends { onmessage: any; AbortController: infer T } ? T - : { - prototype: AbortController; - new(): AbortController; - }; + /*-----------------------------------------------* + * * + * GLOBAL * + * * + ------------------------------------------------*/ -declare var AbortSignal: typeof globalThis extends { onmessage: any; AbortSignal: infer T } ? T - : { - prototype: AbortSignal; - new(): AbortSignal; - abort(reason?: any): AbortSignal; - timeout(milliseconds: number): AbortSignal; - }; -// #endregion borrowed + // For backwards compability + interface NodeRequire extends NodeJS.Require {} + interface RequireResolve extends NodeJS.RequireResolve {} + interface NodeModule extends NodeJS.Module {} -// #region Disposable -interface SymbolConstructor { - /** - * A method that is used to release resources held by an object. Called by the semantics of the `using` statement. - */ - readonly dispose: unique symbol; + var process: NodeJS.Process; + var console: Console; - /** - * A method that is used to asynchronously release resources held by an object. Called by the semantics of the `await using` statement. - */ - readonly asyncDispose: unique symbol; -} + var __filename: string; + var __dirname: string; -interface Disposable { - [Symbol.dispose](): void; -} + var require: NodeRequire; + var module: NodeModule; -interface AsyncDisposable { - [Symbol.asyncDispose](): PromiseLike; -} -// #endregion Disposable + // Same as module.exports + var exports: any; -// #region ArrayLike.at() -interface RelativeIndexable { /** - * Takes an integer value and returns the item at that index, - * allowing for positive and negative integers. - * Negative integers count back from the last item in the array. + * Only available if `--expose-gc` is passed to the process. */ - at(index: number): T | undefined; -} -interface String extends RelativeIndexable {} -interface Array extends RelativeIndexable {} -interface ReadonlyArray extends RelativeIndexable {} -interface Int8Array extends RelativeIndexable {} -interface Uint8Array extends RelativeIndexable {} -interface Uint8ClampedArray extends RelativeIndexable {} -interface Int16Array extends RelativeIndexable {} -interface Uint16Array extends RelativeIndexable {} -interface Int32Array extends RelativeIndexable {} -interface Uint32Array extends RelativeIndexable {} -interface Float32Array extends RelativeIndexable {} -interface Float64Array extends RelativeIndexable {} -interface BigInt64Array extends RelativeIndexable {} -interface BigUint64Array extends RelativeIndexable {} -// #endregion ArrayLike.at() end + var gc: undefined | (() => void); -/** - * @since v17.0.0 - * - * Creates a deep clone of an object. - */ -declare function structuredClone( - value: T, - transfer?: { transfer: ReadonlyArray }, -): T; - -/*----------------------------------------------* -* * -* GLOBAL INTERFACES * -* * -*-----------------------------------------------*/ -declare namespace NodeJS { - interface CallSite { + // #region borrowed + // from https://github.com/microsoft/TypeScript/blob/38da7c600c83e7b31193a62495239a0fe478cb67/lib/lib.webworker.d.ts#L633 until moved to separate lib + /** A controller object that allows you to abort one or more DOM requests as and when desired. */ + interface AbortController { /** - * Value of "this" + * Returns the AbortSignal object associated with this object. */ - getThis(): unknown; + readonly signal: AbortSignal; /** - * Type of "this" as a string. - * This is the name of the function stored in the constructor field of - * "this", if available. Otherwise the object's [[Class]] internal - * property. + * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted. */ - getTypeName(): string | null; - - /** - * Current function - */ - getFunction(): Function | undefined; - - /** - * Name of the current function, typically its name property. - * If a name property is not available an attempt will be made to try - * to infer a name from the function's context. - */ - getFunctionName(): string | null; - - /** - * Name of the property [of "this" or one of its prototypes] that holds - * the current function - */ - getMethodName(): string | null; - - /** - * Name of the script [if this function was defined in a script] - */ - getFileName(): string | undefined; - - /** - * Current line number [if this function was defined in a script] - */ - getLineNumber(): number | null; - - /** - * Current column number [if this function was defined in a script] - */ - getColumnNumber(): number | null; - - /** - * A call site object representing the location where eval was called - * [if this function was created using a call to eval] - */ - getEvalOrigin(): string | undefined; - - /** - * Is this a toplevel invocation, that is, is "this" the global object? - */ - isToplevel(): boolean; + abort(reason?: any): void; + } + /** A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object. */ + interface AbortSignal extends EventTarget { /** - * Does this call take place in code defined by a call to eval? + * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise. */ - isEval(): boolean; - + readonly aborted: boolean; + readonly reason: any; + onabort: null | ((this: AbortSignal, event: Event) => any); + throwIfAborted(): void; + } + + var AbortController: typeof globalThis extends { onmessage: any; AbortController: infer T } ? T + : { + prototype: AbortController; + new(): AbortController; + }; + + var AbortSignal: typeof globalThis extends { onmessage: any; AbortSignal: infer T } ? T + : { + prototype: AbortSignal; + new(): AbortSignal; + abort(reason?: any): AbortSignal; + timeout(milliseconds: number): AbortSignal; + }; + // #endregion borrowed + + // #region Disposable + interface SymbolConstructor { /** - * Is this call in native V8 code? + * A method that is used to release resources held by an object. Called by the semantics of the `using` statement. */ - isNative(): boolean; + readonly dispose: unique symbol; /** - * Is this a constructor call? - */ - isConstructor(): boolean; - } - - interface ErrnoException extends Error { - errno?: number | undefined; - code?: string | undefined; - path?: string | undefined; - syscall?: string | undefined; - } - - interface ReadableStream extends EventEmitter { - readable: boolean; - read(size?: number): string | Buffer; - setEncoding(encoding: BufferEncoding): this; - pause(): this; - resume(): this; - isPaused(): boolean; - pipe(destination: T, options?: { end?: boolean | undefined }): T; - unpipe(destination?: WritableStream): this; - unshift(chunk: string | Uint8Array, encoding?: BufferEncoding): void; - wrap(oldStream: ReadableStream): this; - [Symbol.asyncIterator](): AsyncIterableIterator; - } - - interface WritableStream extends EventEmitter { - writable: boolean; - write(buffer: Uint8Array | string, cb?: (err?: Error | null) => void): boolean; - write(str: string, encoding?: BufferEncoding, cb?: (err?: Error | null) => void): boolean; - end(cb?: () => void): this; - end(data: string | Uint8Array, cb?: () => void): this; - end(str: string, encoding?: BufferEncoding, cb?: () => void): this; - } - - interface ReadWriteStream extends ReadableStream, WritableStream {} - - interface RefCounted { - ref(): this; - unref(): this; - } - - type TypedArray = - | Uint8Array - | Uint8ClampedArray - | Uint16Array - | Uint32Array - | Int8Array - | Int16Array - | Int32Array - | BigUint64Array - | BigInt64Array - | Float32Array - | Float64Array; - type ArrayBufferView = TypedArray | DataView; - - interface Require { - (id: string): any; - resolve: RequireResolve; - cache: Dict; - /** - * @deprecated + * A method that is used to asynchronously release resources held by an object. Called by the semantics of the `await using` statement. */ - extensions: RequireExtensions; - main: Module | undefined; + readonly asyncDispose: unique symbol; } - interface RequireResolve { - (id: string, options?: { paths?: string[] | undefined }): string; - paths(request: string): string[] | null; + interface Disposable { + [Symbol.dispose](): void; } - interface RequireExtensions extends Dict<(m: Module, filename: string) => any> { - ".js": (m: Module, filename: string) => any; - ".json": (m: Module, filename: string) => any; - ".node": (m: Module, filename: string) => any; + interface AsyncDisposable { + [Symbol.asyncDispose](): PromiseLike; } - interface Module { - /** - * `true` if the module is running during the Node.js preload - */ - isPreloading: boolean; - exports: any; - require: Require; - id: string; - filename: string; - loaded: boolean; - /** @deprecated since v14.6.0 Please use `require.main` and `module.children` instead. */ - parent: Module | null | undefined; - children: Module[]; + // #endregion Disposable + + // #region ArrayLike.at() + interface RelativeIndexable { /** - * @since v11.14.0 - * - * The directory name of the module. This is usually the same as the path.dirname() of the module.id. + * Takes an integer value and returns the item at that index, + * allowing for positive and negative integers. + * Negative integers count back from the last item in the array. */ - path: string; - paths: string[]; - } - - interface Dict { - [key: string]: T | undefined; - } - - interface ReadOnlyDict { - readonly [key: string]: T | undefined; - } - - namespace fetch { - type _Request = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Request; - type _Response = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Response; - type _FormData = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").FormData; - type _Headers = typeof globalThis extends { onmessage: any } ? {} : import("undici-types").Headers; - type _RequestInit = typeof globalThis extends { onmessage: any } ? {} - : import("undici-types").RequestInit; - type Request = globalThis.Request; - type Response = globalThis.Response; - type Headers = globalThis.Headers; - type FormData = globalThis.FormData; - type RequestInit = globalThis.RequestInit; - type RequestInfo = import("undici-types").RequestInfo; - type HeadersInit = import("undici-types").HeadersInit; - type BodyInit = import("undici-types").BodyInit; - type RequestRedirect = import("undici-types").RequestRedirect; - type RequestCredentials = import("undici-types").RequestCredentials; - type RequestMode = import("undici-types").RequestMode; - type ReferrerPolicy = import("undici-types").ReferrerPolicy; - type Dispatcher = import("undici-types").Dispatcher; - type RequestDuplex = import("undici-types").RequestDuplex; - } + at(index: number): T | undefined; + } + interface String extends RelativeIndexable {} + interface Array extends RelativeIndexable {} + interface ReadonlyArray extends RelativeIndexable {} + interface Int8Array extends RelativeIndexable {} + interface Uint8Array extends RelativeIndexable {} + interface Uint8ClampedArray extends RelativeIndexable {} + interface Int16Array extends RelativeIndexable {} + interface Uint16Array extends RelativeIndexable {} + interface Int32Array extends RelativeIndexable {} + interface Uint32Array extends RelativeIndexable {} + interface Float32Array extends RelativeIndexable {} + interface Float64Array extends RelativeIndexable {} + interface BigInt64Array extends RelativeIndexable {} + interface BigUint64Array extends RelativeIndexable {} + // #endregion ArrayLike.at() end + + /** + * @since v17.0.0 + * + * Creates a deep clone of an object. + */ + function structuredClone( + value: T, + transfer?: { transfer: ReadonlyArray }, + ): T; + + /*----------------------------------------------* + * * + * GLOBAL INTERFACES * + * * + *-----------------------------------------------*/ + namespace NodeJS { + interface CallSite { + /** + * Value of "this" + */ + getThis(): unknown; + + /** + * Type of "this" as a string. + * This is the name of the function stored in the constructor field of + * "this", if available. Otherwise the object's [[Class]] internal + * property. + */ + getTypeName(): string | null; + + /** + * Current function + */ + getFunction(): Function | undefined; + + /** + * Name of the current function, typically its name property. + * If a name property is not available an attempt will be made to try + * to infer a name from the function's context. + */ + getFunctionName(): string | null; + + /** + * Name of the property [of "this" or one of its prototypes] that holds + * the current function + */ + getMethodName(): string | null; + + /** + * Name of the script [if this function was defined in a script] + */ + getFileName(): string | undefined; + + /** + * Current line number [if this function was defined in a script] + */ + getLineNumber(): number | null; + + /** + * Current column number [if this function was defined in a script] + */ + getColumnNumber(): number | null; + + /** + * A call site object representing the location where eval was called + * [if this function was created using a call to eval] + */ + getEvalOrigin(): string | undefined; + + /** + * Is this a toplevel invocation, that is, is "this" the global object? + */ + isToplevel(): boolean; + + /** + * Does this call take place in code defined by a call to eval? + */ + isEval(): boolean; + + /** + * Is this call in native V8 code? + */ + isNative(): boolean; + + /** + * Is this a constructor call? + */ + isConstructor(): boolean; + } + + interface ErrnoException extends Error { + errno?: number | undefined; + code?: string | undefined; + path?: string | undefined; + syscall?: string | undefined; + } + + interface ReadableStream extends EventEmitter { + readable: boolean; + read(size?: number): string | Buffer; + setEncoding(encoding: BufferEncoding): this; + pause(): this; + resume(): this; + isPaused(): boolean; + pipe(destination: T, options?: { end?: boolean | undefined }): T; + unpipe(destination?: WritableStream): this; + unshift(chunk: string | Uint8Array, encoding?: BufferEncoding): void; + wrap(oldStream: ReadableStream): this; + [Symbol.asyncIterator](): AsyncIterableIterator; + } + + interface WritableStream extends EventEmitter { + writable: boolean; + write(buffer: Uint8Array | string, cb?: (err?: Error | null) => void): boolean; + write(str: string, encoding?: BufferEncoding, cb?: (err?: Error | null) => void): boolean; + end(cb?: () => void): this; + end(data: string | Uint8Array, cb?: () => void): this; + end(str: string, encoding?: BufferEncoding, cb?: () => void): this; + } + + interface ReadWriteStream extends ReadableStream, WritableStream {} + + interface RefCounted { + ref(): this; + unref(): this; + } + + type TypedArray = + | Uint8Array + | Uint8ClampedArray + | Uint16Array + | Uint32Array + | Int8Array + | Int16Array + | Int32Array + | BigUint64Array + | BigInt64Array + | Float32Array + | Float64Array; + type ArrayBufferView = TypedArray | DataView; + + interface Require { + (id: string): any; + resolve: RequireResolve; + cache: Dict; + /** + * @deprecated + */ + extensions: RequireExtensions; + main: Module | undefined; + } + + interface RequireResolve { + (id: string, options?: { paths?: string[] | undefined }): string; + paths(request: string): string[] | null; + } + + interface RequireExtensions extends Dict<(m: Module, filename: string) => any> { + ".js": (m: Module, filename: string) => any; + ".json": (m: Module, filename: string) => any; + ".node": (m: Module, filename: string) => any; + } + interface Module { + /** + * `true` if the module is running during the Node.js preload + */ + isPreloading: boolean; + exports: any; + require: Require; + id: string; + filename: string; + loaded: boolean; + /** @deprecated since v14.6.0 Please use `require.main` and `module.children` instead. */ + parent: Module | null | undefined; + children: Module[]; + /** + * @since v11.14.0 + * + * The directory name of the module. This is usually the same as the path.dirname() of the module.id. + */ + path: string; + paths: string[]; + } + + interface Dict { + [key: string]: T | undefined; + } + + interface ReadOnlyDict { + readonly [key: string]: T | undefined; + } + } + + interface RequestInit extends _RequestInit {} + + function fetch( + input: string | URL | Request, + init?: RequestInit, + ): Promise; + + interface Request extends _Request {} + var Request: typeof globalThis extends { + onmessage: any; + Request: infer T; + } ? T + : typeof import("undici-types").Request; + + interface ResponseInit extends _ResponseInit {} + + interface Response extends _Response {} + var Response: typeof globalThis extends { + onmessage: any; + Response: infer T; + } ? T + : typeof import("undici-types").Response; + + interface FormData extends _FormData {} + var FormData: typeof globalThis extends { + onmessage: any; + FormData: infer T; + } ? T + : typeof import("undici-types").FormData; + + interface Headers extends _Headers {} + var Headers: typeof globalThis extends { + onmessage: any; + Headers: infer T; + } ? T + : typeof import("undici-types").Headers; } - -interface RequestInit extends NodeJS.fetch._RequestInit {} - -declare function fetch( - input: NodeJS.fetch.RequestInfo, - init?: RequestInit, -): Promise; - -interface Request extends NodeJS.fetch._Request {} -declare var Request: typeof globalThis extends { - onmessage: any; - Request: infer T; -} ? T - : typeof import("undici-types").Request; - -interface Response extends NodeJS.fetch._Response {} -declare var Response: typeof globalThis extends { - onmessage: any; - Response: infer T; -} ? T - : typeof import("undici-types").Response; - -interface FormData extends NodeJS.fetch._FormData {} -declare var FormData: typeof globalThis extends { - onmessage: any; - FormData: infer T; -} ? T - : typeof import("undici-types").FormData; - -interface Headers extends NodeJS.fetch._Headers {} -declare var Headers: typeof globalThis extends { - onmessage: any; - Headers: infer T; -} ? T - : typeof import("undici-types").Headers; declare module 'playwright-core' { // This is generated from /utils/protocol-types-generator/index.js type binary = string; @@ -1057,7 +1052,7 @@ may be used by the front-end as additional context. request?: AffectedRequest; } export type MixedContentResolutionStatus = "MixedContentBlocked"|"MixedContentAutomaticallyUpgraded"|"MixedContentWarning"; - 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 type MixedContentResourceType = "AttributionSrc"|"Audio"|"Beacon"|"CSPReport"|"Download"|"EventSource"|"Favicon"|"Font"|"Form"|"Frame"|"Image"|"Import"|"Manifest"|"Ping"|"PluginData"|"PluginResource"|"Prefetch"|"Resource"|"Script"|"ServiceWorker"|"SharedWorker"|"SpeculationRules"|"Stylesheet"|"Track"|"Video"|"Worker"|"XMLHttpRequest"|"XSLT"; export interface MixedContentIssueDetails { /** * The type of resource causing the mixed content issue (css, js, iframe, @@ -1749,7 +1744,7 @@ events afterwards if enabled and recording. export type PermissionSetting = "granted"|"denied"|"prompt"; /** * Definition of PermissionDescriptor defined in the Permissions API: -https://w3c.github.io/permissions/#dictdef-permissiondescriptor. +https://w3c.github.io/permissions/#dom-permissiondescriptor. */ export interface PermissionDescriptor { /** @@ -2716,6 +2711,10 @@ A higher number has higher priority in the cascade order. * Font's family name reported by platform. */ familyName: string; + /** + * Font's PostScript name reported by platform. + */ + postScriptName: string; /** * Indicates if the font was downloaded or resolved locally. */ @@ -2846,6 +2845,28 @@ stylesheet rules) this rule came from. inherits: boolean; syntax: string; } + /** + * CSS font-palette-values rule representation. + */ + export interface CSSFontPaletteValuesRule { + /** + * The css style sheet identifier (absent for user agent stylesheet and user-specified +stylesheet rules) this rule came from. + */ + styleSheetId?: StyleSheetId; + /** + * Parent stylesheet's origin. + */ + origin: StyleSheetOrigin; + /** + * Associated font palette name. + */ + fontPaletteName: Value; + /** + * Associated style declaration. + */ + style: CSSStyle; + } /** * CSS property at-rule representation. */ @@ -3131,6 +3152,10 @@ attributes) for a DOM node identified by `nodeId`. * A list of CSS property registrations matching this node. */ cssPropertyRegistrations?: CSSPropertyRegistration[]; + /** + * A font-palette-values rule matching this node. + */ + cssFontPaletteValuesRule?: CSSFontPaletteValuesRule; /** * Id of the first parent element that does not have display: contents. */ @@ -5997,6 +6022,12 @@ A display feature that only splits content will have a 0 mask_length. */ maskLength: number; } + export interface DevicePosture { + /** + * Current posture of the device + */ + type: "continuous"|"folded"; + } export interface MediaFeature { name: string; value: string; @@ -6216,6 +6247,11 @@ change is not observed by the page, e.g. viewport-relative elements do not chang is turned-off. */ displayFeature?: DisplayFeature; + /** + * If set, the posture of a foldable device. If not set the posture is set +to continuous. + */ + devicePosture?: DevicePosture; } export type setDeviceMetricsOverrideReturnValue = { } @@ -6487,7 +6523,7 @@ on Android. */ userAgent: string; /** - * Browser langugage to emulate. + * Browser language to emulate. */ acceptLanguage?: string; /** @@ -8513,6 +8549,9 @@ records. * The reason why Chrome uses a specific transport protocol for HTTP semantics. */ export type AlternateProtocolUsage = "alternativeJobWonWithoutRace"|"alternativeJobWonRace"|"mainJobWonRace"|"mappingMissing"|"broken"|"dnsAlpnH3JobWonWithoutRace"|"dnsAlpnH3JobWonRace"|"unspecifiedReason"; + export interface ServiceWorkerRouterInfo { + ruleIdMatched: number; + } /** * HTTP response data. */ @@ -8577,6 +8616,10 @@ records. * Specifies that the request was served from the prefetch cache. */ fromPrefetchCache?: boolean; + /** + * Infomation about how Service Worker Static Router was used. + */ + serviceWorkerRouterInfo?: ServiceWorkerRouterInfo; /** * Total number of bytes received for this request so far. */ @@ -10339,7 +10382,7 @@ continueInterceptedRequest call. */ userAgent: string; /** - * Browser langugage to emulate. + * Browser language to emulate. */ acceptLanguage?: string; /** @@ -11271,7 +11314,7 @@ as an ad. * 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"|"bluetooth"|"browsing-topics"|"camera"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factor"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"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"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"local-fonts"|"magnetometer"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-get"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"storage-access"|"sync-xhr"|"unload"|"usb"|"vertical-scroll"|"web-share"|"window-management"|"window-placement"|"xr-spatial-tracking"; + export type PermissionsPolicyFeature = "accelerometer"|"ambient-light-sensor"|"attribution-reporting"|"autoplay"|"bluetooth"|"browsing-topics"|"camera"|"ch-dpr"|"ch-device-memory"|"ch-downlink"|"ch-ect"|"ch-prefers-color-scheme"|"ch-prefers-reduced-motion"|"ch-prefers-reduced-transparency"|"ch-rtt"|"ch-save-data"|"ch-ua"|"ch-ua-arch"|"ch-ua-bitness"|"ch-ua-platform"|"ch-ua-model"|"ch-ua-mobile"|"ch-ua-form-factor"|"ch-ua-full-version"|"ch-ua-full-version-list"|"ch-ua-platform-version"|"ch-ua-wow64"|"ch-viewport-height"|"ch-viewport-width"|"ch-width"|"clipboard-read"|"clipboard-write"|"compute-pressure"|"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"|"identity-credentials-get"|"idle-detection"|"interest-cohort"|"join-ad-interest-group"|"keyboard-map"|"local-fonts"|"magnetometer"|"microphone"|"midi"|"otp-credentials"|"payment"|"picture-in-picture"|"private-aggregation"|"private-state-token-issuance"|"private-state-token-redemption"|"publickey-credentials-get"|"run-ad-auction"|"screen-wake-lock"|"serial"|"shared-autofill"|"shared-storage"|"shared-storage-select-url"|"smart-card"|"storage-access"|"sync-xhr"|"unload"|"usb"|"usb-unrestricted"|"vertical-scroll"|"web-printing"|"web-share"|"window-management"|"window-placement"|"xr-spatial-tracking"; /** * Reason for a permissions policy feature to be disabled. */ @@ -12370,19 +12413,6 @@ as an ad. Only sent if frame is labelled as an ad and id is available. */ adScriptId?: AdScriptId; } - /** - * Returns all browser cookies for the page and all of its subframes. Depending -on the backend support, will return detailed cookie information in the -`cookies` field. - */ - export type getCookiesParameters = { - } - export type getCookiesReturnValue = { - /** - * Array of cookie objects. - */ - cookies: Network.Cookie[]; - } /** * Returns present frame tree structure. */ @@ -12632,6 +12662,10 @@ in which case the content will be scaled to fit the paper size. * Whether or not to generate tagged (accessible) PDF. Defaults to embedder choice. */ generateTaggedPDF?: boolean; + /** + * Whether or not to embed the document outline into the PDF. + */ + generateDocumentOutline?: boolean; } export type printToPDFReturnValue = { /** @@ -13610,6 +13644,7 @@ For cached script it is the last time the cache entry was validated. scriptResponseTime?: number; controlledClients?: Target.TargetID[]; targetId?: Target.TargetID; + routerRules?: string; } /** * ServiceWorker error message. @@ -13892,6 +13927,14 @@ SharedStorageAccessType.workletSet. */ ends: number[]; } + export interface AttributionReportingTriggerSpec { + /** + * number instead of integer because not all uint32 can be represented by +int + */ + triggerData: number[]; + eventReportWindows: AttributionReportingEventReportWindows; + } export type AttributionReportingTriggerDataMatching = "exact"|"modulus"; export interface AttributionReportingSourceRegistration { time: Network.TimeSinceEpoch; @@ -13899,7 +13942,7 @@ SharedStorageAccessType.workletSet. * duration in seconds */ expiry: number; - eventReportWindows: AttributionReportingEventReportWindows; + triggerSpecs: AttributionReportingTriggerSpec[]; /** * duration in seconds */ @@ -16005,6 +16048,18 @@ Otherwise, they will not be resolved. Defaults to true. Defaults to false. */ isUserVerified?: boolean; + /** + * Credentials created by this authenticator will have the backup +eligibility (BE) flag set to this value. Defaults to false. +https://w3c.github.io/webauthn/#sctn-credential-backup + */ + defaultBackupEligibility?: boolean; + /** + * Credentials created by this authenticator will have the backup state +(BS) flag set to this value. Defaults to false. +https://w3c.github.io/webauthn/#sctn-credential-backup + */ + defaultBackupState?: boolean; } export interface Credential { credentialId: binary; @@ -16475,6 +16530,14 @@ status is shared by prefetchStatusUpdated and prerenderStatusUpdated. filter out the ones that aren't necessary to the developers. */ export type PrefetchStatus = "PrefetchAllowed"|"PrefetchFailedIneligibleRedirect"|"PrefetchFailedInvalidRedirect"|"PrefetchFailedMIMENotSupported"|"PrefetchFailedNetError"|"PrefetchFailedNon2XX"|"PrefetchFailedPerPageLimitExceeded"|"PrefetchEvicted"|"PrefetchHeldback"|"PrefetchIneligibleRetryAfter"|"PrefetchIsPrivacyDecoy"|"PrefetchIsStale"|"PrefetchNotEligibleBrowserContextOffTheRecord"|"PrefetchNotEligibleDataSaverEnabled"|"PrefetchNotEligibleExistingProxy"|"PrefetchNotEligibleHostIsNonUnique"|"PrefetchNotEligibleNonDefaultStoragePartition"|"PrefetchNotEligibleSameSiteCrossOriginPrefetchRequiredProxy"|"PrefetchNotEligibleSchemeIsNotHttps"|"PrefetchNotEligibleUserHasCookies"|"PrefetchNotEligibleUserHasServiceWorker"|"PrefetchNotEligibleBatterySaverEnabled"|"PrefetchNotEligiblePreloadingDisabled"|"PrefetchNotFinishedInTime"|"PrefetchNotStarted"|"PrefetchNotUsedCookiesChanged"|"PrefetchProxyNotAvailable"|"PrefetchResponseUsed"|"PrefetchSuccessfulButNotUsed"|"PrefetchNotUsedProbeFailed"; + /** + * Information of headers to be displayed when the header mismatch occurred. + */ + export interface PrerenderMismatchedHeaders { + headerName: string; + initialValue?: string; + activationValue?: string; + } /** * Upsert. Currently, it is only emitted when a rule set added. @@ -16521,6 +16584,7 @@ filter out the ones that aren't necessary to the developers. that is incompatible with prerender and has caused the cancellation of the attempt. */ disallowedMojoInterface?: string; + mismatchedHeaders?: PrerenderMismatchedHeaders[]; } /** * Send a list of sources for all preloading attempts in a document. @@ -16550,9 +16614,13 @@ whether this account has ever been used to sign in to this RP before. */ export type LoginState = "SignIn"|"SignUp"; /** - * Whether the dialog shown is an account chooser or an auto re-authentication dialog. + * The types of FedCM dialogs. */ - export type DialogType = "AccountChooser"|"AutoReauthn"|"ConfirmIdpLogin"; + export type DialogType = "AccountChooser"|"AutoReauthn"|"ConfirmIdpLogin"|"Error"; + /** + * The buttons on the FedCM dialog. + */ + export type DialogButton = "ConfirmIdpLoginContinue"|"ErrorGotIt"|"ErrorMoreDetails"; /** * Corresponds to IdentityRequestAccount */ @@ -16583,6 +16651,13 @@ RP context was used appropriately. title: string; subtitle?: string; } + /** + * Triggered when a dialog is closed, either by user action, JS abort, +or a command below. + */ + export type dialogClosedPayload = { + dialogId: string; + } export type enableParameters = { /** @@ -16604,14 +16679,11 @@ normally happen, if this is unimportant to what's being tested. } export type selectAccountReturnValue = { } - /** - * Only valid if the dialog type is ConfirmIdpLogin. Acts as if the user had -clicked the continue button. - */ - export type confirmIdpLoginParameters = { + export type clickDialogButtonParameters = { dialogId: string; + dialogButton: DialogButton; } - export type confirmIdpLoginReturnValue = { + export type clickDialogButtonReturnValue = { } export type dismissDialogParameters = { dialogId: string; @@ -19426,6 +19498,7 @@ Error was thrown. "Preload.prerenderStatusUpdated": Preload.prerenderStatusUpdatedPayload; "Preload.preloadingAttemptSourcesUpdated": Preload.preloadingAttemptSourcesUpdatedPayload; "FedCm.dialogShown": FedCm.dialogShownPayload; + "FedCm.dialogClosed": FedCm.dialogClosedPayload; "Console.messageAdded": Console.messageAddedPayload; "Debugger.breakpointResolved": Debugger.breakpointResolvedPayload; "Debugger.paused": Debugger.pausedPayload; @@ -19783,7 +19856,6 @@ Error was thrown. "Page.getManifestIcons": Page.getManifestIconsParameters; "Page.getAppId": Page.getAppIdParameters; "Page.getAdScriptId": Page.getAdScriptIdParameters; - "Page.getCookies": Page.getCookiesParameters; "Page.getFrameTree": Page.getFrameTreeParameters; "Page.getLayoutMetrics": Page.getLayoutMetricsParameters; "Page.getNavigationHistory": Page.getNavigationHistoryParameters; @@ -19944,7 +20016,7 @@ Error was thrown. "FedCm.enable": FedCm.enableParameters; "FedCm.disable": FedCm.disableParameters; "FedCm.selectAccount": FedCm.selectAccountParameters; - "FedCm.confirmIdpLogin": FedCm.confirmIdpLoginParameters; + "FedCm.clickDialogButton": FedCm.clickDialogButtonParameters; "FedCm.dismissDialog": FedCm.dismissDialogParameters; "FedCm.resetCooldown": FedCm.resetCooldownParameters; "Console.clearMessages": Console.clearMessagesParameters; @@ -20362,7 +20434,6 @@ Error was thrown. "Page.getManifestIcons": Page.getManifestIconsReturnValue; "Page.getAppId": Page.getAppIdReturnValue; "Page.getAdScriptId": Page.getAdScriptIdReturnValue; - "Page.getCookies": Page.getCookiesReturnValue; "Page.getFrameTree": Page.getFrameTreeReturnValue; "Page.getLayoutMetrics": Page.getLayoutMetricsReturnValue; "Page.getNavigationHistory": Page.getNavigationHistoryReturnValue; @@ -20523,7 +20594,7 @@ Error was thrown. "FedCm.enable": FedCm.enableReturnValue; "FedCm.disable": FedCm.disableReturnValue; "FedCm.selectAccount": FedCm.selectAccountReturnValue; - "FedCm.confirmIdpLogin": FedCm.confirmIdpLoginReturnValue; + "FedCm.clickDialogButton": FedCm.clickDialogButtonReturnValue; "FedCm.dismissDialog": FedCm.dismissDialogReturnValue; "FedCm.resetCooldown": FedCm.resetCooldownReturnValue; "Console.clearMessages": Console.clearMessagesReturnValue; @@ -23856,8 +23927,13 @@ export interface Page { */ locator(selector: string, options?: { /** - * Matches elements containing an element that matches an inner locator. Inner locator is queried against the outer - * one. For example, `article` that has `text=Playwright` matches `
Playwright
`. + * Narrows down the results of the method to those which contain elements matching this relative locator. For example, + * `article` that has `text=Playwright` matches `
Playwright
`. + * + * Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not + * the document root. For example, you can find `content` that has `div` in + * `
Playwright
`. However, looking for `content` that has `article + * div` will fail, because the inner locator must be relative and should not use any elements outside the `content`. * * Note that outer and inner locators must belong to the same frame. Inner locator must not contain {@link * FrameLocator}s. @@ -24316,7 +24392,7 @@ export interface Page { * labels. Option is considered matching if all specified properties match. * @param options */ - selectOption(selector: string, values: null|string|ElementHandle|Array|{ + selectOption(selector: string, values: null|string|ElementHandle|ReadonlyArray|{ /** * Matches by `option.value`. Optional. */ @@ -24331,7 +24407,7 @@ export interface Page { * Matches by the index. Optional. */ index?: number; - }|Array|Array<{ + }|ReadonlyArray|ReadonlyArray<{ /** * Matches by `option.value`. Optional. */ @@ -24530,7 +24606,7 @@ export interface Page { * @param files * @param options */ - setInputFiles(selector: string, files: string|Array|{ + setInputFiles(selector: string, files: string|ReadonlyArray|{ /** * File name */ @@ -24545,7 +24621,7 @@ export interface Page { * File content */ buffer: Buffer; - }|Array<{ + }|ReadonlyArray<{ /** * File name */ @@ -24845,6 +24921,24 @@ export interface Page { */ unroute(url: string|RegExp|((url: URL) => boolean), handler?: ((route: Route, request: Request) => Promise|any)): Promise; + /** + * Removes all routes created with + * [page.route(url, handler[, options])](https://playwright.dev/docs/api/class-page#page-route) and + * [page.routeFromHAR(har[, options])](https://playwright.dev/docs/api/class-page#page-route-from-har). + * @param options + */ + unrouteAll(options?: { + /** + * Specifies wether to wait for already running handlers and what to do if they throw errors: + * - `'default'` - do not wait for current handler calls (if any) to finish, if unrouted handler throws, it may + * result in unhandled error + * - `'wait'` - wait for current handler calls (if any) to finish + * - `'ignoreErrors'` - do not wait for current handler calls (if any) to finish, all errors thrown by the handlers + * after unrouting are silently caught + */ + behavior?: "wait"|"ignoreErrors"|"default"; + }): Promise; + url(): string; /** @@ -27273,8 +27367,13 @@ export interface Frame { */ locator(selector: string, options?: { /** - * Matches elements containing an element that matches an inner locator. Inner locator is queried against the outer - * one. For example, `article` that has `text=Playwright` matches `
Playwright
`. + * Narrows down the results of the method to those which contain elements matching this relative locator. For example, + * `article` that has `text=Playwright` matches `
Playwright
`. + * + * Inner locator **must be relative** to the outer locator and is queried starting with the outer locator match, not + * the document root. For example, you can find `content` that has `div` in + * `
Playwright
`. However, looking for `content` that has `article + * div` will fail, because the inner locator must be relative and should not use any elements outside the `content`. * * Note that outer and inner locators must belong to the same frame. Inner locator must not contain {@link * FrameLocator}s. @@ -27415,7 +27514,7 @@ export interface Frame { * labels. Option is considered matching if all specified properties match. * @param options */ - selectOption(selector: string, values: null|string|ElementHandle|Array|{ + selectOption(selector: string, values: null|string|ElementHandle|ReadonlyArray|{ /** * Matches by `option.value`. Optional. */ @@ -27430,7 +27529,7 @@ export interface Frame { * Matches by the index. Optional. */ index?: number; - }|Array|Array<{ + }|ReadonlyArray|ReadonlyArray<{ /** * Matches by `option.value`. Optional. */ @@ -27587,7 +27686,7 @@ export interface Frame { * @param files * @param options */ - setInputFiles(selector: string, files: string|Array|{ + setInputFiles(selector: string, files: string|ReadonlyArray|{ /** * File name */ @@ -27602,7 +27701,7 @@ export interface Frame { * File content */ buffer: Buffer; - }|Array<{ + }|ReadonlyArray<{ /** * File name */ @@ -28758,7 +28857,7 @@ export interface BrowserContext { * * For the cookie to apply to all subdomains as well, prefix domain with a dot, like this: ".example.com". */ - addCookies(cookies: Array<{ + addCookies(cookies: ReadonlyArray<{ name: string; value: string; @@ -28849,7 +28948,7 @@ export interface BrowserContext { * URLs are returned. * @param urls Optional list of URLs. */ - cookies(urls?: string|Array): Promise>; + cookies(urls?: string|ReadonlyArray): Promise>; /** * The method adds a function called `name` on the `window` object of every frame in every page in the context. When @@ -28914,7 +29013,7 @@ export interface BrowserContext { * - `'payment-handler'` * @param options */ - grantPermissions(permissions: Array, options?: { + grantPermissions(permissions: ReadonlyArray, options?: { /** * The [origin] to grant permissions to, e.g. "https://example.com". */ @@ -29205,6 +29304,25 @@ export interface BrowserContext { */ unroute(url: string|RegExp|((url: URL) => boolean), handler?: ((route: Route, request: Request) => Promise|any)): Promise; + /** + * Removes all routes created with + * [browserContext.route(url, handler[, options])](https://playwright.dev/docs/api/class-browsercontext#browser-context-route) + * and + * [browserContext.routeFromHAR(har[, options])](https://playwright.dev/docs/api/class-browsercontext#browser-context-route-from-har). + * @param options + */ + unrouteAll(options?: { + /** + * Specifies wether to wait for already running handlers and what to do if they throw errors: + * - `'default'` - do not wait for current handler calls (if any) to finish, if unrouted handler throws, it may + * result in unhandled error + * - `'wait'` - wait for current handler calls (if any) to finish + * - `'ignoreErrors'` - do not wait for current handler calls (if any) to finish, all errors thrown by the handlers + * after unrouting are silently caught + */ + behavior?: "wait"|"ignoreErrors"|"default"; + }): Promise; + /** * **NOTE** Only works with Chromium browser's persistent context. * @@ -29667,12 +29785,18 @@ export interface JSHandle { */ export interface ElementHandle extends JSHandle { /** + * **NOTE** Use locator-based [page.locator(selector[, options])](https://playwright.dev/docs/api/class-page#page-locator) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * The method finds an element matching the specified selector in the `ElementHandle`'s subtree. If no elements match * the selector, returns `null`. * @param selector A selector to query for. */ $(selector: K, options?: { strict: boolean }): Promise | null>; /** + * **NOTE** Use locator-based [page.locator(selector[, options])](https://playwright.dev/docs/api/class-page#page-locator) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * The method finds an element matching the specified selector in the `ElementHandle`'s subtree. If no elements match * the selector, returns `null`. * @param selector A selector to query for. @@ -29680,12 +29804,18 @@ export interface ElementHandle extends JSHandle { $(selector: string, options?: { strict: boolean }): Promise | null>; /** + * **NOTE** Use locator-based [page.locator(selector[, options])](https://playwright.dev/docs/api/class-page#page-locator) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * The method finds all elements matching the specified selector in the `ElementHandle`s subtree. If no elements match * the selector, returns empty array. * @param selector A selector to query for. */ $$(selector: K): Promise[]>; /** + * **NOTE** Use locator-based [page.locator(selector[, options])](https://playwright.dev/docs/api/class-page#page-locator) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * The method finds all elements matching the specified selector in the `ElementHandle`s subtree. If no elements match * the selector, returns empty array. * @param selector A selector to query for. @@ -29693,6 +29823,11 @@ export interface ElementHandle extends JSHandle { $$(selector: string): Promise[]>; /** + * **NOTE** This method does not wait for the element to pass actionability checks and therefore can lead to the flaky tests. + * Use + * [locator.evaluate(pageFunction[, arg, options])](https://playwright.dev/docs/api/class-locator#locator-evaluate), + * other {@link Locator} helper methods or web-first assertions instead. + * * Returns the return value of `pageFunction`. * * The method finds an element matching the specified selector in the `ElementHandle`s subtree and passes it as a @@ -29716,6 +29851,11 @@ export interface ElementHandle extends JSHandle { */ $eval(selector: K, pageFunction: PageFunctionOn, arg: Arg): Promise; /** + * **NOTE** This method does not wait for the element to pass actionability checks and therefore can lead to the flaky tests. + * Use + * [locator.evaluate(pageFunction[, arg, options])](https://playwright.dev/docs/api/class-locator#locator-evaluate), + * other {@link Locator} helper methods or web-first assertions instead. + * * Returns the return value of `pageFunction`. * * The method finds an element matching the specified selector in the `ElementHandle`s subtree and passes it as a @@ -29739,6 +29879,11 @@ export interface ElementHandle extends JSHandle { */ $eval(selector: string, pageFunction: PageFunctionOn, arg: Arg): Promise; /** + * **NOTE** This method does not wait for the element to pass actionability checks and therefore can lead to the flaky tests. + * Use + * [locator.evaluate(pageFunction[, arg, options])](https://playwright.dev/docs/api/class-locator#locator-evaluate), + * other {@link Locator} helper methods or web-first assertions instead. + * * Returns the return value of `pageFunction`. * * The method finds an element matching the specified selector in the `ElementHandle`s subtree and passes it as a @@ -29762,6 +29907,11 @@ export interface ElementHandle extends JSHandle { */ $eval(selector: K, pageFunction: PageFunctionOn, arg?: any): Promise; /** + * **NOTE** This method does not wait for the element to pass actionability checks and therefore can lead to the flaky tests. + * Use + * [locator.evaluate(pageFunction[, arg, options])](https://playwright.dev/docs/api/class-locator#locator-evaluate), + * other {@link Locator} helper methods or web-first assertions instead. + * * Returns the return value of `pageFunction`. * * The method finds an element matching the specified selector in the `ElementHandle`s subtree and passes it as a @@ -29786,6 +29936,10 @@ export interface ElementHandle extends JSHandle { $eval(selector: string, pageFunction: PageFunctionOn, arg?: any): Promise; /** + * **NOTE** In most cases, + * [locator.evaluateAll(pageFunction[, arg])](https://playwright.dev/docs/api/class-locator#locator-evaluate-all), + * other {@link Locator} helper methods and web-first assertions do a better job. + * * Returns the return value of `pageFunction`. * * The method finds all elements matching the specified selector in the `ElementHandle`'s subtree and passes an array @@ -29817,6 +29971,10 @@ export interface ElementHandle extends JSHandle { */ $$eval(selector: K, pageFunction: PageFunctionOn, arg: Arg): Promise; /** + * **NOTE** In most cases, + * [locator.evaluateAll(pageFunction[, arg])](https://playwright.dev/docs/api/class-locator#locator-evaluate-all), + * other {@link Locator} helper methods and web-first assertions do a better job. + * * Returns the return value of `pageFunction`. * * The method finds all elements matching the specified selector in the `ElementHandle`'s subtree and passes an array @@ -29848,6 +30006,10 @@ export interface ElementHandle extends JSHandle { */ $$eval(selector: string, pageFunction: PageFunctionOn, arg: Arg): Promise; /** + * **NOTE** In most cases, + * [locator.evaluateAll(pageFunction[, arg])](https://playwright.dev/docs/api/class-locator#locator-evaluate-all), + * other {@link Locator} helper methods and web-first assertions do a better job. + * * Returns the return value of `pageFunction`. * * The method finds all elements matching the specified selector in the `ElementHandle`'s subtree and passes an array @@ -29879,6 +30041,10 @@ export interface ElementHandle extends JSHandle { */ $$eval(selector: K, pageFunction: PageFunctionOn, arg?: any): Promise; /** + * **NOTE** In most cases, + * [locator.evaluateAll(pageFunction[, arg])](https://playwright.dev/docs/api/class-locator#locator-evaluate-all), + * other {@link Locator} helper methods and web-first assertions do a better job. + * * Returns the return value of `pageFunction`. * * The method finds all elements matching the specified selector in the `ElementHandle`'s subtree and passes an array @@ -29911,6 +30077,9 @@ export interface ElementHandle extends JSHandle { $$eval(selector: string, pageFunction: PageFunctionOn, arg?: any): Promise; /** + * **NOTE** Use web assertions that assert visibility or a locator-based + * [locator.waitFor([options])](https://playwright.dev/docs/api/class-locator#locator-wait-for) instead. + * * Returns element specified by selector when it satisfies `state` option. Returns `null` if waiting for `hidden` or * `detached`. * @@ -29936,6 +30105,9 @@ export interface ElementHandle extends JSHandle { */ waitForSelector(selector: K, options?: ElementHandleWaitForSelectorOptionsNotHidden): Promise>; /** + * **NOTE** Use web assertions that assert visibility or a locator-based + * [locator.waitFor([options])](https://playwright.dev/docs/api/class-locator#locator-wait-for) instead. + * * Returns element specified by selector when it satisfies `state` option. Returns `null` if waiting for `hidden` or * `detached`. * @@ -29961,6 +30133,9 @@ export interface ElementHandle extends JSHandle { */ waitForSelector(selector: string, options?: ElementHandleWaitForSelectorOptionsNotHidden): Promise>; /** + * **NOTE** Use web assertions that assert visibility or a locator-based + * [locator.waitFor([options])](https://playwright.dev/docs/api/class-locator#locator-wait-for) instead. + * * Returns element specified by selector when it satisfies `state` option. Returns `null` if waiting for `hidden` or * `detached`. * @@ -29986,6 +30161,9 @@ export interface ElementHandle extends JSHandle { */ waitForSelector(selector: K, options: ElementHandleWaitForSelectorOptions): Promise | null>; /** + * **NOTE** Use web assertions that assert visibility or a locator-based + * [locator.waitFor([options])](https://playwright.dev/docs/api/class-locator#locator-wait-for) instead. + * * Returns element specified by selector when it satisfies `state` option. Returns `null` if waiting for `hidden` or * `detached`. * @@ -30055,6 +30233,9 @@ export interface ElementHandle extends JSHandle { }>; /** + * **NOTE** Use locator-based [locator.check([options])](https://playwright.dev/docs/api/class-locator#locator-check) instead. + * Read more about [locators](https://playwright.dev/docs/locators). + * * This method checks the element by performing the following steps: * 1. Ensure that element is a checkbox or a radio input. If not, this method throws. If the element is already * checked, this method returns immediately. @@ -30110,6 +30291,9 @@ export interface ElementHandle extends JSHandle { }): Promise; /** + * **NOTE** Use locator-based [locator.click([options])](https://playwright.dev/docs/api/class-locator#locator-click) instead. + * Read more about [locators](https://playwright.dev/docs/locators). + * * This method clicks 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. * 1. Scroll the element into view if needed. @@ -30188,6 +30372,9 @@ export interface ElementHandle extends JSHandle { contentFrame(): Promise; /** + * **NOTE** Use locator-based [locator.dblclick([options])](https://playwright.dev/docs/api/class-locator#locator-dblclick) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * This method double clicks 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. * 1. Scroll the element into view if needed. @@ -30259,6 +30446,10 @@ export interface ElementHandle extends JSHandle { }): Promise; /** + * **NOTE** Use locator-based + * [locator.dispatchEvent(type[, eventInit, options])](https://playwright.dev/docs/api/class-locator#locator-dispatch-event) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * The snippet below dispatches the `click` event on the element. Regardless of the visibility state of the element, * `click` is dispatched. This is equivalent to calling * [element.click()](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/click). @@ -30298,6 +30489,9 @@ export interface ElementHandle extends JSHandle { dispatchEvent(type: string, eventInit?: EvaluationArgument): Promise; /** + * **NOTE** Use locator-based [locator.fill(value[, options])](https://playwright.dev/docs/api/class-locator#locator-fill) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * This method waits for [actionability](https://playwright.dev/docs/actionability) checks, focuses the element, fills it and triggers an * `input` event after filling. Note that you can pass an empty string to clear the input field. * @@ -30334,17 +30528,27 @@ export interface ElementHandle extends JSHandle { }): Promise; /** + * **NOTE** Use locator-based [locator.focus([options])](https://playwright.dev/docs/api/class-locator#locator-focus) instead. + * Read more about [locators](https://playwright.dev/docs/locators). + * * Calls [focus](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/focus) on the element. */ focus(): Promise; /** + * **NOTE** Use locator-based + * [locator.getAttribute(name[, options])](https://playwright.dev/docs/api/class-locator#locator-get-attribute) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * Returns element attribute value. * @param name Attribute name to get the value for. */ getAttribute(name: string): Promise; /** + * **NOTE** Use locator-based [locator.hover([options])](https://playwright.dev/docs/api/class-locator#locator-hover) instead. + * Read more about [locators](https://playwright.dev/docs/locators). + * * 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. * 1. Scroll the element into view if needed. @@ -30403,16 +30607,26 @@ export interface ElementHandle extends JSHandle { }): Promise; /** + * **NOTE** Use locator-based [locator.innerHTML([options])](https://playwright.dev/docs/api/class-locator#locator-inner-html) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * Returns the `element.innerHTML`. */ innerHTML(): Promise; /** + * **NOTE** Use locator-based [locator.innerText([options])](https://playwright.dev/docs/api/class-locator#locator-inner-text) + * instead. Read more about [locators](https://playwright.dev/docs/locators). + * * Returns the `element.innerText`. */ innerText(): Promise; /** + * **NOTE** Use locator-based + * [locator.inputValue([options])](https://playwright.dev/docs/api/class-locator#locator-input-value) instead. Read + * more about [locators](https://playwright.dev/docs/locators). + * * Returns `input.value` for the selected `` or `