{"_id":"@plan2net/typo3-playwright-toolkit","_rev":"29-a9e83c93cb48b6c51015b0cff64ad086","name":"@plan2net/typo3-playwright-toolkit","dist-tags":{"latest":"0.23.1"},"versions":{"0.1.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.1.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.1.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"9530c8b8e7abee6ecaa0d9e92f0b2c95865cb4d2","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.1.0.tgz","fileCount":164,"integrity":"sha512-uKY+W0AMHBZWCbEyx8Rgkf6YS+ydfa0K7vUbO+mjqZL5zltsQkdmiEwJSOb246Zm68FnzFD2kLV3MVmgAG9APg==","signatures":[{"sig":"MEYCIQD10e0T0SxhCIvSp7K+1weYlZVgZOblLLLFv2JB0aUvLwIhALbm5ws4DSSAxXoX86ljedsUD1u1Oij4F9Bsvtp6Ly3v","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":308133},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"fc63408aedbca1e503a723e4ef6a95c26f24a8f8","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config /dev/null tests/smoke/node-modules-resolution.test.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.5","vitest":"^3.2.0","typescript":"^5.9.0","@types/node":"^24.10.1","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.1.0_1787753081608_0.6500438542648193","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.2.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.2.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"189658f2e9160a95e23dc08fdce080f3ec9800a5","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.2.0.tgz","fileCount":168,"integrity":"sha512-3pX8tTIfB4zpmZXA5lvTwoWNtSzJkKT3XHNsZD0lRLdYl0xayAW8SCHL3zZI1r7t1Y26W5/jxBumr5sJE1BwiQ==","signatures":[{"sig":"MEUCIGepG4ujhKysBFCkFx+lKqpopqIsJyoH21890mwVWWddAiEAwbA/gRFkhELQGIdZoCZp8nzyaYqH/NX3KaV+jVt9w8k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":324246},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"eba753bd1ded62226b6c7954150229a7846426e4","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config /dev/null tests/smoke/node-modules-resolution.test.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.5","vitest":"^3.2.0","typescript":"^5.9.0","@types/node":"^24.10.1","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.2.0_1787765484425_0.15828055105018435","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.3.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.3.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"340668f2df2032cebcb6b09e8b2c445cdd82ec5a","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.3.0.tgz","fileCount":168,"integrity":"sha512-M9tGt+EXFoGBi4J+gFKMtUgEjrvDMxog+QHeVHOmqRvXboYQD/nHMO47GChHLsydqe0ORwG5PTNuz6udCTMdaA==","signatures":[{"sig":"MEQCIBI7zjKRwcQpuGJ5iv5jP6YLv+YZVjwXG/ODC9ZscO2rAiB8CxBqjtkDHHGxCizBksk8ha6uujtOHQPdcx3zNpJ/Gw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":324276},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"4c8e5e9dc2b0c4c6b06c64192a67eb2bc6b006f6","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config /dev/null tests/smoke/node-modules-resolution.test.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.5","vitest":"^3.2.0","typescript":"^5.9.0","@types/node":"^24.10.1","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.3.0_1787768533770_0.06441847200144579","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.4.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.4.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"4808cb402f8f0e77a9cd18791fb426aba7e55c8e","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.4.0.tgz","fileCount":168,"integrity":"sha512-rWy5weNJjVJRwbMWraL17nFvbRveSBXN07uX9f4wJNPkMZVap7rtrL+R9aIkta/sXX8iSFvfG4xAcIsDHk3MNQ==","signatures":[{"sig":"MEUCIQDkhWlXF7cTAemV2hgnrhKpwn643cNpuMFLiSrBrX4r8gIgT99TR5y6G7Qic/OTYSPeLINAx7jt+QJ5cZQt4IBNt64=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325024},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"afd31f8cc0a64e38f5fabeca25dd2885530d0af4","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.4.0_1787820397046_0.021867290032044906","host":"s3://npm-registry-packages-npm-production"}},"0.4.1":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.4.1","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.4.1","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"0a012457f4801d7b7820c6ef0296ef445ac21f72","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.4.1.tgz","fileCount":168,"integrity":"sha512-F2iM326q29/m7BCSSwSWM3P9y1a0LJVO7qfISvNnpxKZUNTRwxPlEt3Jse+N52gfkiuAhaTdTgYHwnWc3jZeBA==","signatures":[{"sig":"MEUCIHKm06RF349QOC/MJYqJN+6icJNeJniug7iJywRTGUyIAiEAjag24wCohzXvDXAK6VGqPzREMgYOh1bTtgDyzZo9UbA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325024},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"98711027400f86ba9373900492be28a10e6965f3","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.4.1_1787831418709_0.8763555624834789","host":"s3://npm-registry-packages-npm-production"}},"0.4.2":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.4.2","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.4.2","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"1c7203df301f2fb645aa92a18ad113528e6a8bd4","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.4.2.tgz","fileCount":168,"integrity":"sha512-LK0Z3LS8H2yhptXOzgiX6yxynhmNCnQM/ev6AE6NSW5xCEDoaCayFOUR993ao4zXgZ0MlXtA5bcQXKfWI5mnBQ==","signatures":[{"sig":"MEYCIQDv/Cq4XdlwTcEP7F0zCH4vRPVjA3o6i2zROPB3P331SQIhAJW+npG2oF4Rjw42XfJ2zVp4GmOoRnUi4WCZXpBy4lm0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":325024},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"85205d6f94a7958a3663d4ad37d154fa6ec381b1","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.4.2_1787840085484_0.3525897662814166","host":"s3://npm-registry-packages-npm-production"}},"0.5.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.5.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.5.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"e54cbe9dce9919ad02d7bc07b83f9b4ed85f234f","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.5.0.tgz","fileCount":168,"integrity":"sha512-GiMVYxIg/MDgd8T/FtlcCKWqlKWluFvP8CtLY/b/8c1JV4xcvQn0TrZFLFslWDqYvQEi78EJWVpVqfJ58Jbgtg==","signatures":[{"sig":"MEUCIQDjdNkr+hTXln6VykA2NrndrlQ2BO3xDgnejB0IVoanVAIgUDy86YfCYjoSbRvds1fx/1tJd2797ussliqaQvjypqw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCouaDuU0odHoa8FekpgMPU9Z0TuQpEquxfGC89VOROMAIgQa3UuI86N+QJHnGdc60OaeqCUZ4iWsvYBE/brkWgeg4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":333683},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"81ddbfaefb28721cb9f39dcf43c1cad3f7a90520","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.5.0_1787905461972_0.37428720173371843","host":"s3://npm-registry-packages-npm-production"}},"0.6.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.6.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.6.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"040b4cedf7cc37f85cd4c70199b65b5f94b856eb","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.6.0.tgz","fileCount":172,"integrity":"sha512-zn00ymVN8WzdsF/G7C6wXv/Nrsvf6NzfhrNX3HpB4XAxBsHuejnnQL1APAsRwFtK7XfEKaqQlv+ciJ9MSEyBnw==","signatures":[{"sig":"MEUCIGIovOQOR+MKWzbqLHXFGhq6aZ/ksIGhOlrT40+f89PsAiEA9Iumjr0ABmv7mMcWuGCbB33sGZGtaL8XUnj0hgAvJQM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDvaJK8U2MUPji97oK9xGhIPxBcYPd7RZQau/TD7TbMEwIgaHx0e30n4SyfxH2ULVa6g8rpJuQ1t5Jt29zpvJRUREM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":362306},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"f5b67ffa07f11dd83c62efd26f4d3ebd3ae897eb","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.6.0_1787926827774_0.06699298916717744","host":"s3://npm-registry-packages-npm-production"}},"0.7.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.7.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.7.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"58c0548f095ff29945695fca5b8ae33a97f6a5f4","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.7.0.tgz","fileCount":172,"integrity":"sha512-IWlph+O2tKk4TO1JC02ZQXw9fkEP1YK0nFE8Y+LbIl1z4FKxZ74EcQu7JqP21cIVnEEJK9d2fjjgdKL5/Rx7uQ==","signatures":[{"sig":"MEQCID7j3d58nwKVuKC7VkuxKZJc2ielz5r2nqxqJcVO8v82AiAY9oxfwuLBNaz+Y0R5a7Zlz96XUL3taViuvjdeKhbAOQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDg5o4OlpkLXU0JBubUEcwrFWVz2xZTB7CgNZKXAR45MwIhANWCcElkji2KWMzZocYgCx579SsV8oNuS6GFIgQ1Z6vd","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":365686},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"edb38bc62781807cf347f09dd627b05a0f1ecf9c","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.7.0_1787936231094_0.5415114404403709","host":"s3://npm-registry-packages-npm-production"}},"0.8.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.8.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.8.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"acff15d8212991e64d34614ff09d3f968d1cf306","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.8.0.tgz","fileCount":172,"integrity":"sha512-Ek+vu4rxWkEj2qpG+rLVgIy1nRuX9fonjBTHwngoJ0j8PliAiLY0rXNF45u6kLmRJ+YPyUBi1aWCXlLWQ7Bhwg==","signatures":[{"sig":"MEUCICAuyXo9BbrXAee2GAqT2GBkonnQhZNDJzGzXdC9st4hAiEA63T5ed7brcUEBOzLMmeMswQ+JUeSdIeygqDLuaw+IfA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCaYdPryQgZIivsyO6FoatxBiLGLVXK5SnZm2DTERxEGgIgfcIl3O0vtaDsZUGfks6t00ESEwNlt8H87hUlS/MjENE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":368917},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"db1e66fd1decfaa1572723a4ee990efae9bf5d5a","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.8.0_1787980820088_0.14438147133733703","host":"s3://npm-registry-packages-npm-production"}},"0.9.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.9.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.9.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"32971ab07aa300d5b179361b6fb503cca655ba07","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.9.0.tgz","fileCount":180,"integrity":"sha512-Xg8z6/qnjYY+8d/WMdyR9v761IPo2VwcEP8REEy30lMAVM1/EwdnawvzV8MDpj74NvaKym1rnexoB7yat0qmlw==","signatures":[{"sig":"MEYCIQDlDSwvvrrFUOvTQkwR80Cg8BnRyHs+HXZKRGO4ouF8IgIhAMLNuunXBBXX2eYVq3M2g2tCYCRs+I1jFqRsWBRYb2oG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEvYgbPN8k6afI42tckh/XWFtHIBwHnBIoreepf1zt9WAiEAx5FMmcgdz4gePjMz2uUSk4MjREtOGA1NaVveODcPWrs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":385841},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"cda7dbc2a888e15987ac1ccabd761f7ee818d782","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.9.0_1788077004466_0.7845651315780326","host":"s3://npm-registry-packages-npm-production"}},"0.10.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.10.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.10.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"2ca6345e3c01b881bcf7419fef5b85e865067c8e","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.10.0.tgz","fileCount":180,"integrity":"sha512-x2HMWG852BiHYisqgPOE6g3Vr7vSr2nvLF+F3ii9N8x1s2EnK2TeKct1Lf3H21IMDju1GqQXxWtYsWZWKH2xEg==","signatures":[{"sig":"MEQCIFHkDNpVbKBN136YlakP1RkGwyQ8xW625CRiU1ezpYWeAiBP0N5gm0Xb0GMd4+SkMvp4uAvHPLNcMlKqJyvzKgDAGg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICGXuhizg22BqCjKaGF2pzTI2mK6eoCYb4TW4QB0xOWFAiAp6TfVa7fk2hhQ+6o1TlnZOKZBYm0s8VIX1tYcg9jHKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":385842},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"4b55e1257a826e4b4b33fe9c2c92b2282feaee19","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.10.0_1788085392456_0.5189714364336999","host":"s3://npm-registry-packages-npm-production"}},"0.11.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.11.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.11.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"549131f8980a9fa67dbe9bec32061bbef35149fa","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.11.0.tgz","fileCount":180,"integrity":"sha512-BEl065e/QTP8p3dub67Cppg+c2UVHOrZKdGQ/whbBNx+PWO92ywZ+5775t2FjQH1iJl+GgvmT9LbyZvg80b01Q==","signatures":[{"sig":"MEQCICU7QiSwbNBQd2RJR4bBFN9eHRHnFQWN1/5dCvmkbtlTAiAduzw4FiLzy8LnHXu/IOs1CkiHIQ4Ob+zs+BNgm9GD7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCINEZZHsMoP8u0D3xkZzTtwvqkNTyBQkEj8UfilFDdLQIgcx6hkXfjkHNpFasd+geUZzjkSCEZM0MUZGT2Hrlz6T0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":382802},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"decf1d2383d56f3bd313db2708b38313e43d75b1","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.56.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.11.0_1788168032277_0.2638743368368217","host":"s3://npm-registry-packages-npm-production"}},"0.12.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.12.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.12.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"3ceeaa70c07bc3844585c69d358562afff29ab22","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.12.0.tgz","fileCount":180,"integrity":"sha512-WLCBJUDPhsRXE8eR7iqRinCCLSzdtcQzoh0JRp5pHuwR4euByPU39gO5gvpJmh5wEhf64O86SibabAC1NNaHZw==","signatures":[{"sig":"MEUCID+0AGAC2dnYfz+jZECR0vuqKCFsy9LcfUvXs508J+kkAiEApm0iRwBE3nHFr8F+rz4N5HMY59Y0u48dhXYOnPBou6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQDS3NsnEtVrylx61T3UxseF20TWqqRPbhckGeKMJFLO6gIhAKe3DGaBl+tiN0loVTkbw/L3jouCsdlmEotUuEY/dmOg","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":386510},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"9619ae5338d14d3cb7081fd6b8ab2a4c17986f2a","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.12.0_1788267508573_0.21992464066031614","host":"s3://npm-registry-packages-npm-production"}},"0.13.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.13.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.13.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"eeb0c0a9d6ae1603100fa2ad79cf092c6939c7de","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.13.0.tgz","fileCount":180,"integrity":"sha512-YL4mpLIV8UpUiPvEsrF+379rvrIl7ve6E46hnd84EVX1mn2WrZE33pfvcSCp8Zr8+XtenItAGScBjoYeCY0g1Q==","signatures":[{"sig":"MEUCIQDp/SueN7IwntTcmSNv5ynAzcnnL12W6l5W7QU7Wp/pxwIgHAcJyGIvXsyCwF5JkaWdosRu/1bgYUpG8Qs1oSm3MwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCR8C7VRHCDQ1FuaENwEsk5YYhtT9EMLPGpHpIabBol4QIhAOMiNJ1qx6jFP/8nBUCyeY1nuSlnciKM/HVjzQ9NfBH7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":396098},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"26d0857c961296bf8296717b00cf7163c7974180","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"10.9.8","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.13.0_1788334276809_0.3447043465399271","host":"s3://npm-registry-packages-npm-production"}},"0.14.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.14.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.14.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"d53b2101d9a877f548537f2a6fb7fa4445890c9c","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.14.0.tgz","fileCount":180,"integrity":"sha512-gbnEsV9i4fkYav9fYI2uQ8pGAjM/5MhMLtHeWO7ZK07I3N6h30UeL0GMu6cTC8RFuhqbwmaAZ/GDsMXvOX+vsg==","signatures":[{"sig":"MEQCIHEFNYHZ7ON2aphLUGOL2HW2G0dNLBOKsKwIxBehzEZHAiAgjkbsP3O6F4+S9/TZo52maWYuXsoz+DYDKu6ENvIo5g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCID4u2tHM2poJxh+2/LzlER7IyDHc9pJMDq3gsyai3bXUAiAXiSOJIgkrRyVseioMKUiK813QT1fWBHlW7+VNFvRB2w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.14.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":403443},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"cbaebc02229f58f89ece024011fe33fcc56137e1","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.14.0_1788438362577_0.10939691077959757","host":"s3://npm-registry-packages-npm-production"}},"0.15.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.15.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.15.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"c816430537286f8ebaa1ac887c4814b394392236","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.15.0.tgz","fileCount":184,"integrity":"sha512-3AuSE73a36m1vTICpnT/VNBa21zR9/Zf4Qkso/Nu1PsQ9/dqcd77CbvLRFmjJoPTfLQrU3WB/FHgep167IxGUQ==","signatures":[{"sig":"MEUCIH/2yLd/bx9DyOQib5xebZhOH8zzO4PYyPhki2Jv5H5eAiEAgY6xBBEjp3Xboddl6u/cxLeuI7g0hIijvA48tZJDBU4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQC5ykf5AYPi2FY7uO6u8KxoqfI7qX/NeaqSVdq6WCpWtwIhAJ69SdziUIv6/XqF1mdk+PAeDh80c0OlVbxHDaM/XrAL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.15.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":411966},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"557f9fd9f2b67015b054db501f58fefe1e69622a","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.15.0_1788494461450_0.21025233906849072","host":"s3://npm-registry-packages-npm-production"}},"0.16.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.16.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.16.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"aab03af56bd8d02fe72a62139a36ef3244b136a9","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.16.0.tgz","fileCount":196,"integrity":"sha512-1u3yvhdu/hJG3YiClGhXU+C0XPlAHTF1UMkcKRi3MOZXynZY+DvqNuWfr0qBK0LTQaU3TJlFttISSnCIjtA96A==","signatures":[{"sig":"MEQCIAnlwA8e42cyGMKvcgJC72VykgQlOHU52GV3Wvp8ODKxAiA1P6V+8g1ZSUsasCdQezKPXP2uuXUcrLhU/eNFMKwxoQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD0l8qMl81Z9J93M8h8AOPNni3ABQhaxmL69lmgoS2REwIgGjZVvinklJL9l+68Nm38RWjmfSx3hJdb3NUJ/DftWk0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.16.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":455221},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"c6171df86d374ab1bba2d8c51b579627a4ef8d79","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.16.0_1788782297569_0.490306348409872","host":"s3://npm-registry-packages-npm-production"}},"0.17.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.17.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.17.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"4ba670885347e445ed6bab07e25c442a62afddd0","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.17.0.tgz","fileCount":200,"integrity":"sha512-7Zbi26CPbczhj2LFo5QbqiGPy3TgUdvkmqevZm9oeVfCqQ2ZG7CSgTSv6Ksjmsk0ggLZjxclP2QzYSW5Di+75w==","signatures":[{"sig":"MEYCIQDqwCAyAOnnwDy6b9+4ClZVUXS9uIwR+AWSMXoaeDvWiAIhAIXGeUilUzdsxSwB+zh3e66yiLGJVrcuklta8EHwL8pI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCICzUyKPAItd0hRqfxJKxXovlJSachfzdAQZ1t1/o1Kz2AiAPFMsAmrZ6J6F/urWx6Re55IQHotT1RPH9LWsFPE21yw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.17.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":459808},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"e741940548ae29db924dc1f12cddab36ef95c7e7","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.17.0_1788868839453_0.5319487343095843","host":"s3://npm-registry-packages-npm-production"}},"0.17.1":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.17.1","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.17.1","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"846705104b6d571a7cb8315ef50f5795de58556b","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.17.1.tgz","fileCount":200,"integrity":"sha512-wc208aHIURhNdic7O3korqHhelwAuMo9kHM7UTK1vcLn1pHHg7DFcW+/9MhQxQSeMYS8esr/+xYyA70KbFHTrQ==","signatures":[{"sig":"MEQCIAUSWpBxw5KQNvuHI7D6lJX1JpHIG+XVqUMjo+O96IGRAiBpW1soYI4vUIi3uE7Lr4c0eKli90VpJAWRAOwlQRsWaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCICFZRfw3Px6AYnUCznsqyol46vS25vTfzUavuGMgixbPAiEA2/JmjhFWewxHUSEJx2o4TCzIYdo2V9qUCQeJexnh9pw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.17.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":459808},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"b9e31c554707f6836d7cac1e5e004317b61dc37d","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.17.1_1788877207912_0.34042896240967213","host":"s3://npm-registry-packages-npm-production"}},"0.18.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.18.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.18.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"0cc579db9aa033383d695097db5f4d3a2e3fd20a","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.18.0.tgz","fileCount":200,"integrity":"sha512-N6ERC6KM69ANeFn8o/DB6crK9SPHpcMkKV7V/JiwFqtyXvgWgHIP/NGXOnf33boCqRpUPescxVrI5ay6obkRrQ==","signatures":[{"sig":"MEUCIDpH4DXQujeoaBfOrOaLXhj3hkKrPlm++6lPhYepInuOAiEA/t2f8x5tTkzEpIwRcjuU75NDD5xKzX1dsllCudsF/OQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIFxIkzqwU8ZIYGfHJjTkzuMbx8QnSjvtYHb30O7/kmwEAiBBE9ftOnBOP5+F3WCFg9t4d2kFi9vPjwqbKsrrUwrB6g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.18.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":463039},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"1311ce9ce9adb55a35d808ae8716f852b13eafcd","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^4.1.11","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.18.0_1788945413259_0.6201683275720962","host":"s3://npm-registry-packages-npm-production"}},"0.19.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.19.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.19.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"de759c1c5c41087495d23672ab9215ff4642ffff","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.19.0.tgz","fileCount":200,"integrity":"sha512-uGmxSljeEoCXS/5NGw8ubY3xi9hDE029D5kxPkBNboi00EWO9NviYz5dO8GyIdlIcsVhYxVQl9Z8tusOcHEY8A==","signatures":[{"sig":"MEYCIQCaW0U/yLboPpcF2QTeF+U6tsk00l/GKD8IBgnEZO1+YgIhANJF/NEpAqjjFLEKBM98IVM+8av7YQHF/m4LsoNU1BA8","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIC/JbuHCtdb+Ny6wnt15jUm8Qg16VuzsYJahKeR3CeMvAiAvrYU4DqZpAE+GSOPdMOoMKXrNq2Gmkqq739Rliy1sfg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.19.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":463038},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"079be12eb630ef5e0efa777fde7a7e473e69338b","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.62.1","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.19.0_1789547243005_0.6409796448238827","host":"s3://npm-registry-packages-npm-production"}},"0.20.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.20.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.20.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"255028607aedfcb0272bb7005c09e8694fb79d53","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.20.0.tgz","fileCount":220,"integrity":"sha512-aK8nuiTXjsInzBsnP4ygc4blzcHVMA0NnK1eRDbp8iFiOSq7wXgeYtaVKfvTQwnRptVUIcgBP2+aVtaUMh618Q==","signatures":[{"sig":"MEUCIQC8+fPfjna7MEbqE46Z5jf/S6nbZqw0zI6JV06OeSiNHAIgfmEm37afrOomLN2n65CkSw1Vap+MngdzoWoc/0svL24=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQD7QigibJQcMXzuTzMYnxvWMomknXjCHz2uP+sZpVKbqwIgOCRwqau+afxlnCYZtWVthAmrGEJ8HQ/koQvRrwbUFGo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.20.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":485678},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"72eb6e15969b18765d6e74f81ff7f95314735e7b","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.63.0","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.20.0_1789973364281_0.30905268199566316","host":"s3://npm-registry-packages-npm-production"}},"0.21.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.21.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.21.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"e9c7dd3026dd4e340f98247c00571ab608179a31","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.21.0.tgz","fileCount":220,"integrity":"sha512-KVJkQIryxvSoJgAWBRGdgyUYLZ57TTu3+vLrWzZV2UrnMZCq1GZE0/bDGrfAgxA/1WxljxuJh9yMLxPg3CCoUQ==","signatures":[{"sig":"MEUCIHstUmNPapX6sBV7sJpeILZ1ZLZIQ+USA2oXmPSccSN2AiEAv0BZCXveQmLqcwyhqQMtjI3tvAuDD5ayCAfeoXWMjNo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIFpD2+0yrTFoEl9oQ2TfzNcENTljEYxqm4cmrsBxoCWEAiEAxXgqwonzU4Gwpgv5bwzEv2guvnLhHn2NsxR+yC8C4sA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.21.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":488212},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"4b48bb872c9193ddf133573520f6820c74c93818","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.63.0","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.21.0_1790056254623_0.8995648246481698","host":"s3://npm-registry-packages-npm-production"}},"0.21.1":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.21.1","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.21.1","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"8aa4635fb0cc954f8b12b20fa58504058b801f22","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.21.1.tgz","fileCount":220,"integrity":"sha512-E18xHIAbvNFk6MSmQ21vIPYhXnYottUtjw5Rwb6VBR6G4M8rgy8NM1t33y4CWdwUusI9ITlCuZHR5PmUwGYm6w==","signatures":[{"sig":"MEYCIQCsBg+JrAszW/EqVaddCy3T2SseUm4juAy/Yr9eMkHE3wIhAM6NHASg2NAvWxafHhQ6ZR2jrl780edL9Xwr5Mu8PD4R","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEQCIAPTRADXWecRo5VzY6arHB7tsoNmOHKReBp37gClxS6QAiAvNcaTXotcivTXlAD6RmbBaqQCQLEZcitlI+c6UhXQAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.21.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":494059},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"e32f9d599031982fbc88a35b83d3e416f68fb3a6","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.0.2","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.63.0","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.21.1_1790059642282_0.46311749984637696","host":"s3://npm-registry-packages-npm-production"}},"0.22.0":{"name":"@plan2net/typo3-playwright-toolkit","version":"0.22.0","keywords":["typo3","playwright","testing","e2e"],"license":"GPL-2.0-or-later","_id":"@plan2net/typo3-playwright-toolkit@0.22.0","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"dist":{"shasum":"9b6ac89bce335a11bddc436e9355ee376d7ab2d6","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.22.0.tgz","fileCount":220,"integrity":"sha512-L4ngy0LIXOlkkT/xVw8izIAymO9hhCtGVJoAaF/8Ovann1cnD8ZLs6EMWWjAlHCHos7CPrCF3ep9DNMwmZZvdg==","signatures":[{"sig":"MEUCIB+oqwXKbneZXn/cHMWp6va2SUs0dSqvBq0JWns85SXaAiEAkMSqcBgxwOhcmQ+6z7B/4vX/dd3imwged/2hH0gWsSs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQCDd8vxtk1e3+CPSeagc3QklHl75vZNtpAkQz7HbllOvgIgdxE6wgFt55ndsjrJ6HldLGuuK1qc540iOFC4ejct9ik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.22.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":495250},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"e264dd9439d9fc5c55f0383a5c792e1f0a8be3ab","imports":{"#src/*":"./src/*"},"scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.1.0","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.63.0","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.44.0"},"_npmOperationalInternal":{"tmp":"tmp/typo3-playwright-toolkit_0.22.0_1790154038870_0.6688813953868669","host":"s3://npm-registry-packages-npm-production"}},"0.23.1":{"_id":"@plan2net/typo3-playwright-toolkit@0.23.1","bin":{"typo3-playwright-clean":"dist/clean/cli.js","typo3-playwright-doctor":"dist/doctor/cli.js","typo3-playwright-inspect":"dist/inspect/cli.js"},"bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"dist":{"shasum":"6824b6af9da4309ec2320bb2685ea9cc5a1787a4","tarball":"https://registry.npmjs.org/@plan2net/typo3-playwright-toolkit/-/typo3-playwright-toolkit-0.23.1.tgz","fileCount":232,"integrity":"sha512-ptBcfAz+it8fJyrWScWm5YF2CrJaKrq5iJYXAp+rl3RLzRTELok3H5qkci/n2ujWMfzBgt39TbbpuR/VPgQpAA==","signatures":[{"sig":"MEUCIQCchw+U0YnPnqAqsVJDPxgflq6h61J6gK1oeaM2t/iZ2AIgVz0OMVI7+BDPRNseDOC7BOT1zpKLXChRqLP6cu9r+Gg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBZi3GG+kIGGmqctYWQnBzNHABIkKliIuSfpA6o0BLShAiEA0cCww8C5InFJycdCLI7n+5MtAQFIjS9g676EBJxIeNw="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@plan2net%2ftypo3-playwright-toolkit@0.23.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":525388},"main":"./dist/index.js","name":"@plan2net/typo3-playwright-toolkit","type":"module","types":"./dist/index.d.ts","engines":{"node":">=22.12"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","default":"./dist/index.js"},"./contract":{"types":"./dist/contract.d.ts","import":"./dist/contract.js","default":"./dist/contract.js"},"./playwright":{"types":"./dist/playwright/index.d.ts","import":"./dist/playwright/index.js","default":"./dist/playwright/index.js"},"./global-setup":{"types":"./dist/global-setup.d.ts","import":"./dist/global-setup.js","default":"./dist/global-setup.js"},"./global-teardown":{"types":"./dist/global-teardown.d.ts","import":"./dist/global-teardown.js","default":"./dist/global-teardown.js"},"./tsconfig.base.json":"./tsconfig.base.json"},"gitHead":"76fba38009099c721f8153839e56ddf67f04abc8","imports":{"#src/*":"./src/*"},"license":"GPL-2.0-or-later","scripts":{"qa":"npm run typecheck && npm run lint","lint":"eslint .","test":"vitest run","build":"tsc -p tsconfig.build.json","prepack":"npm run build","lint:fix":"eslint . --fix","test:pack":"vitest run --config vitest.pack.config.ts","typecheck":"tsc -p tsconfig.json --noEmit","test:watch":"vitest"},"version":"0.23.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:0eda9084-8cbb-479e-a4f4-f795b05d800f"}},"homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","keywords":["typo3","playwright","testing","e2e"],"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"_npmVersion":"12.1.0","description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","directories":{},"maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"_nodeVersion":"22.23.2","dependencies":{"axe-core":"^4.13.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^10.9.0","vitest":"^5.0.0","typescript":"^5.9.0","@types/node":"^26.2.0","@playwright/test":"^1.63.0","typescript-eslint":"^8.67.0"},"peerDependencies":{"@playwright/test":"^1.47.0"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/typo3-playwright-toolkit_0.23.1_1790588220347_0.6147553137368726"}}},"time":{"created":"2026-08-26T14:04:41.450Z","modified":"2026-09-28T09:37:00.856Z","0.1.0":"2026-08-26T14:04:41.758Z","0.2.0":"2026-08-26T17:31:24.576Z","0.3.0":"2026-08-26T18:22:13.948Z","0.3.1":"2026-08-27T08:42:43.333Z","0.4.0":"2026-08-27T08:46:37.181Z","0.4.1":"2026-08-27T11:50:18.855Z","0.4.2":"2026-08-27T14:14:45.662Z","0.5.0":"2026-08-28T08:24:22.068Z","0.6.0":"2026-08-28T14:20:27.855Z","0.7.0":"2026-08-28T16:57:11.226Z","0.8.0":"2026-08-29T05:20:20.180Z","0.9.0":"2026-08-30T08:03:24.559Z","0.10.0":"2026-08-30T10:23:12.545Z","0.11.0":"2026-08-31T09:20:32.382Z","0.12.0":"2026-09-01T12:58:28.683Z","0.13.0":"2026-09-02T07:31:16.896Z","0.14.0":"2026-09-03T12:26:02.675Z","0.15.0":"2026-09-04T04:01:01.564Z","0.16.0":"2026-09-07T11:58:17.653Z","0.17.0":"2026-09-08T12:00:39.566Z","0.17.1":"2026-09-08T14:20:08.001Z","0.18.0":"2026-09-09T09:16:53.390Z","0.19.0":"2026-09-16T08:27:23.098Z","0.20.0":"2026-09-21T06:49:24.383Z","0.21.0":"2026-09-22T05:50:54.742Z","0.21.1":"2026-09-22T06:47:22.369Z","0.22.0":"2026-09-23T09:00:38.974Z","0.23.1":"2026-09-28T09:37:00.445Z"},"bugs":{"url":"https://github.com/plan2net/typo3-playwright-toolkit/issues"},"license":"GPL-2.0-or-later","homepage":"https://github.com/plan2net/typo3-playwright-toolkit#readme","keywords":["typo3","playwright","testing","e2e"],"repository":{"url":"git+https://github.com/plan2net/typo3-playwright-toolkit.git","type":"git","directory":"packages/typo3-playwright-toolkit"},"description":"Playwright toolkit for TYPO3 end-to-end tests: fixtures, content builders, per-test databases.","maintainers":[{"name":"wolfgang.klinger","email":"wolfgang@wazum.com"}],"readme":"<p align=\"center\">\n  <img src=\"https://raw.githubusercontent.com/plan2net/typo3-playwright-toolkit/main/packages/playwright-toolkit/Resources/Public/Icons/Extension.svg\" alt=\"\" width=\"96\" height=\"96\">\n</p>\n<h1 align=\"center\">@plan2net/typo3-playwright-toolkit</h1>\n<p align=\"center\"><em>Playwright fixtures and content builders for TYPO3, one test database per test file.</em></p>\n<br>\n\n<p align=\"center\">\n  <a href=\"https://www.npmjs.com/package/@plan2net/typo3-playwright-toolkit\"><img src=\"https://img.shields.io/npm/v/@plan2net/typo3-playwright-toolkit?style=for-the-badge&logo=npm&logoColor=white&labelColor=24273a&color=fff3b0\" alt=\"npm version\"></a>\n  <a href=\"https://nodejs.org\"><img src=\"https://img.shields.io/badge/Node-22.12%2B-a0c4ff?style=for-the-badge&logo=nodedotjs&logoColor=white&labelColor=24273a\" alt=\"Node 22.12 or newer\"></a>\n  <a href=\"https://playwright.dev\"><img src=\"https://img.shields.io/badge/Playwright-1.47%2B-b5ead7?style=for-the-badge&labelColor=24273a&logo=data:image/svg%2Bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI%2BPHBhdGggZmlsbD0iI2ZmZiIgZD0iTTcgNHYxNmwxMy04eiIvPjwvc3ZnPg%3D%3D\" alt=\"Playwright 1.47 or newer\"></a>\n  <a href=\"LICENSE\"><img src=\"https://img.shields.io/badge/licence-GPL--2.0--or--later-ffc6d9?style=for-the-badge&logo=gnu&logoColor=white&labelColor=24273a\" alt=\"GPL-2.0-or-later licence\"></a>\n</p>\n\nAn npm package. It provides the [Playwright](https://playwright.dev) fixtures, the\ncontent builders that create [TYPO3](https://typo3.org) records, and the\naccessibility ([axe](https://github.com/dequelabs/axe-core)) and CSP checks.\n\nIt needs the\n[Composer extension](https://github.com/plan2net/typo3-playwright-toolkit/tree/main/packages/playwright-toolkit),\nwhich creates the test databases, and the\n[DDEV add-on](https://github.com/plan2net/typo3-playwright-toolkit/tree/main/packages/ddev-typo3-playwright-toolkit),\nwhich provides the database service and the commands.\n\n> [!IMPORTANT]\n> Setting this up for the first time? Follow\n> **[SETUP.md](https://github.com/plan2net/typo3-playwright-toolkit/blob/main/SETUP.md)**\n> instead. It covers all three packages in order. This README documents the npm\n> package on its own.\n\n[Requirements](#requirements) · [Install](#install) · [Configure](#configure) ·\n[Using the package](#using-the-package) · [Reference](#reference) ·\n[Troubleshooting](#troubleshooting) · [Related packages](#related-packages)\n\n## Requirements\n\n- Node 22.12 or newer\n- `@playwright/test` 1.47 or newer, so a project that already runs Playwright keeps its\n  version and its screenshot baselines\n- The Composer extension, installed in the same project\n\nYou do not need a database client. This package never talks to the database; it asks\nthe extension to create and delete them. That is why PHP and Node may run in\ndifferent containers.\n[Where things run](https://github.com/plan2net/typo3-playwright-toolkit/blob/main/SETUP.md#where-things-run)\nshows how.\n\n## Install\n\n```bash\nnpm i -D @plan2net/typo3-playwright-toolkit @playwright/test\n```\n\nAdd a `tsconfig.json` next to your tests that extends the one shipped here:\n\n```json\n{\n    \"extends\": \"@plan2net/typo3-playwright-toolkit/tsconfig.base.json\",\n    \"include\": [\"**/*.ts\"]\n}\n```\n\n> [!IMPORTANT]\n> This package is ESM and needs `\"moduleResolution\": \"NodeNext\"`. Without it\n> TypeScript cannot read the package's exports, so `page` and `state` in your tests\n> type as `any` and you lose every check your editor could give you.\n\n## Configure\n\nCall `defineToolkitConfig(...)` at the top of your `playwright.config.ts`, before any\nother file from this package is loaded. Two values are enough:\n\n```ts\n// <project>/tests/playwright/playwright.config.ts\nimport { fileURLToPath } from 'url'\nimport { defineToolkitConfig, defineBasePlaywrightConfig } from '@plan2net/typo3-playwright-toolkit/playwright'\n\nconst toolkitConfig = defineToolkitConfig({\n    testingURL: 'https://example-testing.test',\n    paths: { consumerRoot: fileURLToPath(new URL('../..', import.meta.url)) },\n})\n\nexport default defineBasePlaywrightConfig(toolkitConfig, {\n    testDir: './tests',\n})\n```\n\n`testingURL` is the host name that runs in the Testing context. It is the only URL\nthis package uses, because the test database exists nowhere else.\n\n`consumerRoot` is the root of your TYPO3 project. The package derives the state and\nsession folders from it, so it works from `node_modules` without knowing its own\nlocation. Count the `..` from where your config sits: the example assumes\n`<project>/tests/playwright/`, so it climbs two levels. Pointing it at the wrong\ndirectory is not an error; the run works and writes its state somewhere you did not\nexpect. Use `fileURLToPath` rather than `new URL(...).pathname`, which\npercent-encodes a project path containing spaces or non-ASCII characters.\n\n> [!IMPORTANT]\n> `defineToolkitConfig` must run before the first import from this package.\n> Everything else reads the values it stores.\n\n## Using the package\n\n### Writing a test\n\nOne test file is one scenario: a setup function that creates content through the real\nTYPO3 backend, and the tests that read it.\n\n```ts\n// tests/my-feature.spec.ts\nimport { defineScenario, expect, flexForm } from '@plan2net/typo3-playwright-toolkit'\n\nconst test = defineScenario(async ({ builders }) => {\n    const { id, slug } = await builders\n        .page()\n        .withTitle('My Page')\n        .withSlug('/my-page')\n        .create()\n\n    await builders\n        .content()\n        .onPage(id)\n        .ofType('textmedia')\n        .configure((element) => element.withHeader('Hello').withBodyText('<p>Copy.</p>'))\n        .create()\n\n    await builders\n        .content()\n        .onPage(id)\n        // your own CType, registered as shown under \"Your own content types\"\n        .ofType('article')\n        .configure((element) =>\n            element.withField('pi_flexform', flexForm({ 'settings.limit': 3 })),\n        )\n        .create()\n\n    return { slug }\n})\n\ntest('renders the page title', async ({ page, state }) => {\n    await page.goto(state.slug)\n\n    await expect(page.locator('h1')).toHaveText('My Page')\n})\n```\n\n`state` is whatever your setup returned. The first test that needs it runs the\nsetup, and the other tests wait. If the setup fails, the tests are skipped with the\nreason instead of failing because content is missing.\n\nOn an installation with several sites, name the site the scenario is about:\n\n```ts\nconst test = defineScenario(async ({ builders }) => { /* … */ }, { site: 'shop' })\n```\n\nRelative URLs then go to that site, and a new page goes under its root page. Without\n`site`, a scenario uses the only site, or the one on your testing URL. To open another\nsite, build its URL with `siteURL('corporate', 'about')`.\n\nA slug starts with `/`, so `page.goto(state.slug)` leaves out a path in the site's\nbase. On a site like `https://example.test/shop/`, navigate with\n`page.goto(siteURL('shop', state.slug))`, which keeps it.\n\nThe `slug` you get back is the one the site stored, which is not always the one you\nasked for. A translation and a name already in use are two cases, and an extension\ncan add more. Navigate with the returned value, never with the string you passed in.\n\nA save also reports how many records TYPO3 wrote, and warns when that is more than\nyou asked for:\n\n```\n[typo3-playwright-toolkit] Saving pages wrote 27 records for 1 requested.\n  pages 17 (16 not requested), sys_redirect 10 (10 not requested)\n  A slug change cascades to every descendant page and writes a redirect for each.\n```\n\nNothing is wrong; the save succeeded. It is where a slow setup spends its time, and\nchanging the slug of a page with descendants is the usual cause. The counts are on the\nresult as `written`. It never fails a test.\n\nThe setup runs once per file, even when the file runs in several browser projects.\nThe other projects use the state and the test database that the first one created.\n\n**Every test in a file shares that one database.** They all read the same records, and so\ndoes the same file under a second browser project. With `fullyParallel: true` they also\nrun at the same time. So when one test writes, the others see it, in an order that is not\nfixed. Keep tests read-only, or put a test that has to write in a file of its own.\n\nThe setup has its own time budget, so a test keeps the full timeout for its own work.\nSetup time is not part of a test's duration; the report carries it as an annotation:\n\n```\nsetup: built in 12.9s\n```\n\nThe tests that reuse the setup say `reused, built in 12.9s`. How long a stuck setup\nruns is `setup.attemptTimeoutMs` and `setup.waitTimeoutMs`, 90s per attempt and two\nattempts by default. Lower them to hear about a broken setup sooner.\n\n### When something fails, TYPO3 says why\n\nA failing test prints what TYPO3 wrote to its log while that test ran, under the\nfailure itself:\n\n```\n    Error: expect(locator).toBeVisible() failed\n    Locator: locator('.teaser figure img')\n\n    Error: [typo3-playwright-toolkit] TYPO3 recorded 2 errors for scenario\n    \"tests/teaser.spec.ts\" (test 2C8F069F788D3F20):\n\n      1. log error\n         No page configured for type=99999.\n\n      2. DataHandler sys_file_reference\n         Attempt to insert a record on page '/gallery' (127) where this table is not allowed\n```\n\nThe same list is attached to the test as `typo3-errors.json`. A message that repeats\nis counted, not printed again. A failing setup shows the same list next to its own\nerror.\n\nIf TYPO3 refuses a record while a builder saves it, the builder stops at that line,\nso the failure points at the save and not at a later assertion. A `withField()` column\nthat TCA does not have fails there too, naming the closest column that exists: TYPO3\nwould drop such a field without saying so, leaving the test without its content.\n\nA save also fails when the backend form would not allow it for the user the test runs\nas: an empty required field, too few or too many items, a number out of range, a value\nshorter than the minimum, or a field the form does not show for the record's type and\nvalues. The message names the field, for example `tt_content NEW1: \"header\" is required.`\nA test that means to create such a record, say to cover an import, says so:\n\n```ts\nawait builders.content().onPage(pageId).ofType('text').withoutFormRules().create()\n```\n\n<picture>\n  <source media=\"(max-width: 700px)\" srcset=\"https://raw.githubusercontent.com/plan2net/typo3-playwright-toolkit/main/diagrams/scenario-fan-out-narrow.svg\">\n  <img width=\"880\" src=\"https://raw.githubusercontent.com/plan2net/typo3-playwright-toolkit/main/diagrams/scenario-fan-out.svg\"\n       alt=\"One test file runs its setup once. If the setup succeeds it produces state and a test database of its own, which every browser project then reuses. If the setup fails, the tests of that file are skipped with the reason rather than failing individually.\">\n</picture>\n\nBesides `builders`, the setup receives `testId` (the database this attempt runs\nagainst), `attempt` (`1` on the first try), `signal` (aborted when the attempt times\nout, so pass it to your own long requests), and a `page` and `request` that already\ncarry the toolkit headers. Your tests get `testId` beside `state`. It is the database\nname without its `db` prefix, and what the backend shows in brackets behind the site\nname:\n\n```ts\ntest('reports which database it used', async ({ page, state, testId }) => {\n    await page.goto(state.slug)\n\n    console.log(`built in db${testId}`)\n})\n```\n\n### Your own content types\n\nEvery CType of a normal TYPO3 installation already has a builder. For your own,\nextend `CoreContent` to get the shared setters, then register the class:\n\n```ts\nimport { CoreContent } from '@plan2net/typo3-playwright-toolkit'\n\nexport class ArticleContent extends CoreContent {\n    readonly type = 'article'\n\n    withTeaser(text: string): this {\n        return this.withField('tx_myext_teaser', text)\n    }\n}\n```\n\n```ts\n// playwright.config.ts\ncontentTypes: { article: ArticleContent }\n```\n\nTo get typed setters in `.configure()`, add the class to `ContentTypeMap`:\n\n```ts\ndeclare module '@plan2net/typo3-playwright-toolkit' {\n    interface ContentTypeMap {\n        article: ArticleContent\n    }\n}\n```\n\nA key with the name of a core CType replaces the built-in builder, and the other\ncore types stay as they are. That works for the type too: `ContentTypeMap` starts\nempty, so your `text: MyTextContent` is what `.configure()` hands you.\n\n### Files and child records\n\nFour setters attach a relation, and they work the same on a content type, on a\nchild record, and on the builder in a test:\n\n```ts\nexport class AccordionContent extends CoreContent {\n    readonly type = 'accordion'\n\n    withItems(items: AccordionItem[]): this {\n        return this.withChildren('items', 'tx_myext_accordion_item', items, (item, data) =>\n            item\n                .withField('title', data.title)\n                .withFileReference('image', data.imageId),\n        )\n    }\n}\n```\n\n`withFileReference(column, file)` and `withFileReferences(column, files)` take\nthe reference's own fields as a third argument, such as a `crop`. `withChild` and\n`withChildren` hand the callback a record with the same four setters, so a child can\ncarry its own files and children.\n\nA file is either a `sys_file` uid or the name of a media fixture:\n\n```ts\nelement.withFile('hero.png')\nelement.withFileReference('image', 'gallery/lawn-01.jpg')\nelement.withFileReference('image', 42)\n```\n\nA name is resolved against the manifest `playwright:prepare` writes, so it needs\n`mediaPath` set in the extension settings — see\n[Media fixtures](../playwright-toolkit/README.md#media-fixtures). A name that does not exist\nfails at the line that used it and lists the names that do, which is the reason to\nprefer a name over a number: `42` cannot tell you it used to be a different image.\n\nThe order you call them in is the order the records get. A child takes `pid` and\n`sys_language_uid` from the record above it, so a translation sets the language once,\nat the top.\n\nNever set `uid_local`, `uid_foreign`, `tablenames`, `fieldname` or `sorting_foreign`:\nthe toolkit writes them, and your own value fails. A wrong `uid_foreign` saves a row\nthat points at nothing, and TYPO3 reports no error.\n\nIf a builder has no setter for a column, add the relation in the test:\n\n```ts\nawait builders.content().onPage(page.id).ofType('textmedia')\n    .configure((element) => element.withHeader('Gallery', 'h2'))\n    .withFileReferences('assets', [1, 2], { crop: imageCrop({ ratio: '16:9' }) })\n    .create()\n```\n\nFill a column from one place only. Both the content type and the test, or `withField`\non top, fails.\n\nA setter that changes the reference, such as a crop, may run after the one that\nattaches the file. Write the reference at the end then, and hand the rest to `super`:\n\n```ts\nimport type { RelationOwner, RelationOutput } from '@plan2net/typo3-playwright-toolkit'\n\noverride getRelations(owner: RelationOwner): RelationOutput {\n    this.withFileReference('image', this.fileUid, { crop: imageCrop({ ratio: this.ratio }) })\n\n    return super.getRelations(owner)\n}\n```\n\n### One request for several elements\n\nEvery `create()` is a POST, and every POST boots the backend, builds the form and runs\nDataHandler. A page with six elements pays for that six times, which is most of what\nits setup costs. `builders.batch()` puts them in one:\n\n```ts\nconst [hero, intro, gallery] = await builders.batch(\n    builders.content().onPage(page.id).ofType('header')\n        .configure((element) => element.withHeader('Hero')),\n    builders.content().onPage(page.id).ofType('text')\n        .configure((element) => element.withBodytext('<p>Intro</p>')),\n    builders.content().onPage(page.id).ofType('textmedia')\n        .configure((element) => element.withHeader('Gallery'))\n        .withFileReferences('assets', [1, 2]),\n)\n```\n\nThe queued builders get no `.create()`; `batch` saves them. They land on the page in\nthe order you list them, you get a uid for each, and their files and child records\ncome along in the same request.\n\nAll the elements have to belong to one page, because a request positions them after\none another and that means nothing across pages. They also cannot point at each\nother: a relation needs a uid, and only a save hands one back. Create what is pointed\nat first, then batch the rest:\n\n```ts\nconst container = await builders.content().onPage(page.id).ofType('my_container').create()\n\nawait builders.batch(\n    builders.content().onPage(page.id).ofType('text')\n        .configure((element) => element.inContainer(Number(container.id))),\n    builders.content().onPage(page.id).ofType('header')\n        .configure((element) => element.inContainer(Number(container.id))),\n)\n```\n\nA content type whose children hang off a column of its own needs none of this:\n`withChildren` already writes them in the same request as their parent. Batching is\nfor elements that sit side by side on a page.\n\n### Calling the site directly\n\nThe `request` client, the one `defineScenario` hands your setup and the `request`\nfixture in your tests, carries the test ID for `testingURL`, so it reads and writes\nthe same throwaway database the browser does. Requests to any other host get neither\ntoolkit header.\n\n### Stubbing a third-party script\n\nA cookie banner or a tracking script can swallow the clicks your test makes.\n`prepareContext` runs on every context a test uses, after the toolkit's own routes\nare in place:\n\n```ts\n// playwright.config.ts\nprepareContext: async (context) => {\n    await context.route('**/vendor-widget.js', (route) => route.fulfill({ body: '' }))\n},\n```\n\n### Reusing a scenario's setup\n\nA scenario's setup posts its content through the real backend, which is the slowest\npart of a run. `PW_REUSE_SETUP=1` restores that content from a cached copy instead,\nso a run you repeat while working on templates or stylesheets skips the rebuild:\n\n```bash\nPW_REUSE_SETUP=1 npx playwright test accordion --project=chromium-desktop\n```\n\nThe extension records what the setup wrote as SQL under `var/playwright/setup-cache`,\nkeyed by a digest of your Playwright directory. Editing\na spec, a builder or the config invalidates it, and so does rebuilding the test\ndatabase template.\n\nNothing else does. **A change to your project's PHP — a `processDatamap` hook, a TCA\ndefault, a `TCAdefaults` line in page TSconfig — is not noticed**, and the scenario\nkeeps serving what the old code built. Every run with the variable set prints that\nwarning. Run once without it to rebuild and refresh what is cached, or drop the cache\nwith `typo3-playwright-clean --setup-cache`.\n\nLeave it off in CI, where a fresh checkout has nothing to reuse. It is refused in\nreplay mode, where every scenario shares one database.\nOn DDEV, `ddev playwright test --reuse-setup` sets it.\n\n### Building your assets\n\nEvery run builds your frontend assets before the first test. Tests against a stale\nbundle still pass, and the screenshots they write become the baseline for the next\nrun, so no later run reports the problem either.\n\nIf you set no `build`, the package runs the `build` script from your project's\n`package.json`, through the package manager your lockfile names: pnpm for\n`pnpm-lock.yaml`, yarn for `yarn.lock`, bun for a bun lockfile, npm otherwise. A\nproject without that script builds nothing and starts right away, so a site with\ncommitted assets needs no setting at all.\n\nName your own command when the default is wrong:\n\n```ts\n// playwright.config.ts\nbuild: 'pnpm build:test',           // one command\nbuild: 'npm run css && npm run js', // several, because it runs through a shell\nbuild: false,                       // this project never builds\n```\n\nThe command runs in `consumerRoot` and writes its output to your terminal. A failing\nbuild stops the run before the first test, so it costs you no per-test database and\nno state to clean up. Under DDEV the template database is rebuilt earlier, by the\n`ddev playwright` command itself, so that step runs either way.\n\nTo skip the build once, set `PW_SKIP_BUILD=1`, which is what\n`ddev playwright test --skip-build` does.\n\n### Screenshots\n\n`expectScreenshot` waits for fonts, images and animations, hides the selectors from\n`hideBeforeScreenshot`, and then compares against the stored image. An image that has\nstill not decoded when that wait runs out is named in a warning, because it would\notherwise be blank in the picture and, on a first run, blank in the new baseline.\n\nFor the duration of the shot each image is pinned to the file it resolved to, and released\nagain afterwards. Chromium collapses the viewport to 1×1 while it captures anything taller\nthan the viewport, and a `<source media=\"(max-width: …)\">` flips while it is collapsed, which\ndrops the decoded image and leaves a blank. Pinning it is invisible to a test, including one\nthat narrows the viewport between two shots. A `background-image` behind a width query is\nnot covered.\n\n```ts\nimport { expectScreenshot } from '@plan2net/typo3-playwright-toolkit'\n\nawait expectScreenshot(page, 'my-page')                             // the whole page\nawait expectScreenshot(page, 'accordion', { include: '.accordion' }) // one element\nawait expectScreenshot(page, 'home', { hideAlso: ['.chat-widget'] }) // one more hidden\nawait expectScreenshot(page, 'header', { hide: [] })                 // nothing hidden\n```\n\n`hideAlso` hides its selectors on top of `hideBeforeScreenshot`. `hide` replaces that\nlist instead, which is what a shot of an element the config hides needs.\n\nThe name carries no file extension; Playwright adds `.png` and the platform suffix\nitself. The first run writes the missing image and fails, as Playwright always does.\nEvery other option is passed on to `toHaveScreenshot`, and the tolerances come from\n`screenshot` in `defineToolkitConfig`. One shot can set its own, and a\n`maxDiffPixelRatio` there replaces the configured count, as it does in the config.\n\n> [!IMPORTANT]\n> Images are stored in CSS pixels, which is Playwright's default. If your projects\n> set a `deviceScaleFactor`, a bug that only shows at 2x cannot fail a test, and\n> images taken with `element.screenshot()` will not match. Ask for device pixels per\n> shot, or for the whole project:\n>\n> ```ts\n> await expectScreenshot(page, 'hero', { scale: 'device' })\n>\n> defineBasePlaywrightConfig(toolkit, {\n>     expect: { toHaveScreenshot: { scale: 'device' } },\n> })\n> ```\n\n`expectScreenshot` waits for animations itself. When you interact and then assert\nwithout a screenshot, say an accessibility scan after opening an accordion, wait\nfirst:\n\n```ts\nimport { waitForAnimations } from '@plan2net/typo3-playwright-toolkit'\n\nawait page.locator('summary').first().click()\nawait waitForAnimations(page, '.accordion')\nawait runAccessibilityScan(page, { include: '.accordion' })\n```\n\n### Accessibility checks\n\n`runAccessibilityScan` checks the current page with axe and fails the test if it\nfinds a problem.\n\n```ts\nimport { runAccessibilityScan } from '@plan2net/typo3-playwright-toolkit'\n\nawait runAccessibilityScan(page)                       // the whole page\nawait runAccessibilityScan(page, { include: '.card' }) // one component\nawait runAccessibilityScan(page, { exclude: '#ads' })\nawait runAccessibilityScan(page, { disabledRules: ['color-contrast'] })\n```\n\n> [!IMPORTANT]\n> The test also fails when the check ran no rules at all. An empty area would\n> otherwise pass without testing anything.\n\nA check with `include` turns off the `heading-order` rule, because axe compares the\nheadings of a part of the page with the structure of the whole page. Checks of a\nwhole page do test the heading structure.\n\nTo check every test without writing the call each time, turn it on in the config:\n\n```ts\naccessibility: { auto: true },\n```\n\nEvery test that opened a page is then scanned after it finishes. A test that never\nnavigated is skipped, because there is nothing to check, and a test that already\nfailed is skipped too, so the first failure stays the one you read.\n\n`scanAccessibility(page, options)` returns the raw axe result instead of failing the\ntest. It returns `null` when the current project does not run checks.\n\n### CSP violations\n\n`CspVerifier` collects policy violations from your own pages and fails the test if\nthere were any.\n\n```ts\nimport { CspVerifier } from '@plan2net/typo3-playwright-toolkit'\n\nconst verifier = new CspVerifier(context)\nawait verifier.install()          // before the first page is opened\n\nawait page.goto('/')\n\nawait verifier.assertNoViolations(testInfo)  // testInfo is optional\n```\n\n> [!IMPORTANT]\n> `install()` must run before anything is loaded. A page that is already open\n> reports nothing.\n\nThe test also fails if pages were requested but none of your own pages ever arrived,\nso a navigation that never loaded cannot pass. Pass `testInfo` to attach the full\nreport as a JSON file when the test fails.\n\n## Reference\n\n### Configuration options\n\nRequired:\n\n| Name | Purpose |\n|---|---|\n| `paths.consumerRoot` | Absolute path to your TYPO3 project root |\n| `testingURL` | Bare origin that runs in the Testing context |\n\nEverything else:\n\n| Name | Default | Purpose |\n|---|---|---|\n| `accessibility.auto` | `false` | Scan after every test that opened a page, instead of calling `runAccessibilityScan` yourself |\n| `accessibility.disabledRules` | `[]` | axe rules turned off for the whole project |\n| `accessibility.projects` | all projects | Projects that run axe checks |\n| `accessibility.tags` | `DEFAULT_SCAN_TAGS` | Which axe rule sets to run |\n| `build` | your `build` script | Command that builds your assets before the run, or `false` for none |\n| `cleanup.failOnLeak` | true in CI | Fail the run if a test database could not be deleted |\n| `cleanup.orphanAgeMs` | 24 hours | How old a leftover database must be before cleanup deletes it |\n| `cleanup.preserveOnFailure` | `failed` | Which test databases to keep after a failure: `failed`, `all` or `none` |\n| `contentTypes` | `{}` | Your own content builders, one per CType |\n| `csp.expectedOrigin` | origin of `testingURL` | Whose violations count |\n| `csp.mode` | `any` | Which policy header a page must send: `any`, `report-only` or `enforced` |\n| `hideBeforeScreenshot` | `[]` | CSS selectors hidden before every screenshot |\n| `paths.sessionDir` | `<consumerRoot>/var/session` | TYPO3 session folder, cleaned after a run |\n| `prepareContext` | none | Runs on every context a test uses, for your own routes and stubs |\n| `screenshot.maxDiffPixels` | `20` | How many pixels may differ, as a count |\n| `screenshot.maxDiffPixelRatio` | none | How many pixels may differ, as a share of the image. Setting it replaces the count |\n| `screenshot.threshold` | `0.2` | How different one pixel may be, from 0 to 1 |\n| `setup.attemptTimeoutMs` | `90000` | How long one setup attempt may take |\n| `setup.attempts` | `2` | Attempts per setup, so `2` means one retry |\n| `setup.lockStaleMs` | `15000` | Silence after which another worker may take over the setup |\n| `setup.pollMs` | `100` | Gap between polls while waiting for a scenario |\n| `setup.waitTimeoutMs` | `300000` | How long a test waits for its scenario in total, lock included |\n\n`defineScenario(setup, options)` takes one option, `site`: the TYPO3 site identifier,\nthe folder name under `config/sites/`. `siteURL(identifier, path?)` answers the\naddress of `path` on that site, and throws for a site this run does not know.\n\n`defineBasePlaywrightConfig` sets Playwright's `baseURL` to `testingURL` and adds\nthis package's setup and cleanup functions. Values in its second argument win, and\n`use` and `expect` are merged instead of replaced. Four keys cannot be overridden\nand are refused with an error: `globalSetup` and `globalTeardown` carry the\npreflight and the database cleanup, `use.baseURL` must stay the testing origin, and\n`use.serviceWorkers` stays `block` because a service worker serves past the routing\nthat carries the test ID. Add your own setup as a Playwright project dependency\ninstead.\n\n### Content types\n\nEvery CType of a normal TYPO3 installation has a builder, and you register nothing:\n`header`, `text`, `textmedia`, `textpic`, `image`, `bullets`, `table`, `uploads`,\n`html`, `div`, `shortcut`, and the eleven `menu_*` types.\n\nAll builders share `withHeader`, `withSubheader`, `withHeaderLayout`,\n`withHeaderLink`, `withColPos`, `setHidden`, and `withField(column, value)` for any\nother TCA column. They also share the four relation setters above:\n`withFileReference`, `withFileReferences`, `withChild` and `withChildren`. Types with\nimages add `withFile` and `withFiles` for their own media column, plus `withColumns`,\n`withOrientation` and `withImageSize`.\n\nWhere core stores a number that means nothing on its own, the setter takes the name\nand your editor suggests the options:\n\n```ts\nelement.withHeader('Chapter', 'h3')      // header_layout 3, or 'hidden' for 100\nelement.withBulletsType('numbers')       // bullets_type 1\nelement.withHeaderPosition('top')        // table_header_position 1\nelement.withOrientation('in-text-right') // imageorient 17\n```\n\n`PageBuilder` does the same for the page type: `withDoktype('folder')` writes 254.\nIt also takes a number, for a doktype your own project registered.\n\nThe `crop` column of a file reference holds JSON text, which `imageCrop()` writes for\nyou. Without an area it keeps the whole image, which is what naming only a ratio\nmeans:\n\n```ts\nimageCrop({ ratio: '16:9' })\nimageCrop({ area: { x: 0.1, y: 0, width: 0.5, height: 1 } })\n```\n\nWhere the column declares `cropVariants`, name each one with `imageCrops()`:\n\n```ts\nimageCrops({ mobile: { ratio: '9:16' }, desktop: { ratio: '16:9' } })\n```\n\nA plugin's settings go through `withSetting`, one call per setting:\n\n```ts\nelement.withSetting('limit', 10).withSetting('order', 'title')\n```\n\nEach one becomes a `settings.` entry and they are written to `pi_flexform` together,\nso two calls never overwrite each other. That is what a builder for your own plugin\nuses:\n\n```ts\nexport class EventListContent extends CoreContent {\n    readonly type = 'myext_eventlist'\n\n    upcomingOnly(): this {\n        return this.withSetting('onlyUpcoming', '1')\n    }\n}\n```\n\nFor a structure with named sheets, or a key outside `settings.`, write the column\nyourself with `flexForm()`. The form posts one field per value, not one for the\ncolumn:\n\n```ts\nelement.withField('pi_flexform', flexForm({ sDEF: {…}, sFilter: {…} }))\n```\n\n### The doctor command\n\nThe package installs `typo3-playwright-doctor`. Run it from the directory holding\nyour Playwright config to see whether the project can run tests: browser launch or\nremote connection, access to `testingURL`, API credentials and version\ncompatibility, then a throwaway database and its backend session:\n\n```bash\nnpx typo3-playwright-doctor\nnpx typo3-playwright-doctor --project chromium\nnpx typo3-playwright-doctor --config playwright.local.config.ts\n```\n\nEvery check prints success, failure or the reason it was skipped. Exit code `0` means\nready, `1` means a check failed. `--project` accepts wildcards and can be repeated;\nomit it to check every project.\n\nIt runs no tests, setup hooks, builds or repairs, and touches neither your existing\nresults nor a kept test database. The one database it creates is its own, and it\ndrops that again even after a failed check. On DDEV, `ddev playwright doctor` wraps\nit.\n\nIt also checks nothing about your installation. The TYPO3 extension has a wizard for\nthat, `playwright:setup`, which reads your files, versions and settings and writes\nwhat is missing.\n\n### The inspect command\n\nThe package installs `typo3-playwright-inspect`. Run it from your project root\nafter a failed run to print a backend link for every test database that was kept,\noptionally filtered by a part of the test file name:\n\n```bash\nnpx typo3-playwright-inspect            # every kept database\nnpx typo3-playwright-inspect accordion  # only matching test files\n```\n\nIt reads the API secret from `var/playwright/api-secret` or from\n`PLAYWRIGHT_TOOLKIT_SECRET`. On DDEV, `ddev playwright inspect` wraps it. The links\nlog in as the pre-seeded backend user and live 15 minutes.\n\n`--replay` prints a link into the database a replay run built, instead of the kept\ntest databases. Use it when the link that run printed has expired; it mints a new\none rather than rebuilding anything.\n\n### The clean command\n\nThe package installs `typo3-playwright-clean`. Run it from your project root after a\nrun you stopped, to drop the test databases and run state it left behind:\n\n```bash\nnpx typo3-playwright-clean\n```\n\nTeardown reclaims those by itself, but only once they are `cleanup.orphanAgeMs` old,\na day by default. This does it now. A run whose state was touched in the last 30\nseconds counts as still going: its databases go into the sweep's keep list and its\nrun directory stays, so a suite running in another terminal is safe. The template and\nthe replay database are never dropped. On DDEV, `ddev playwright clean` wraps it.\n\nDatabases kept for `typo3-playwright-inspect` are dropped too, since nothing marks\nthem as worth keeping. Read what you need from them first.\n\n`--setup-cache` additionally drops every cached scenario setup:\n\n```bash\nnpx typo3-playwright-clean --setup-cache\n```\n\n### Replay mode\n\n`PW_REPLAY=1` runs every scenario's setup into one shared database rather than a\nper-test one, so all the content the suite builds ends up in a single place you can\nbrowse and export. `ddev playwright replay` sets it, rebuilds that database from the\ntemplate first, and prints a backend link when the run ends.\n\nWhat changes while it is set: every scenario uses the one fixed test ID\n`REPLAY0000000000`, its content, images included, goes into a sysfolder named after\nit under the fixture root, slugs keep no test-ID suffix, setups run once with no\nretry, and teardown drops nothing. The tests themselves are skipped, because their\nassertions and screenshot baselines belong to a per-test database.\n\nSince nothing is dropped, that database stays until the next replay run. Only the\nprinted link expires: after 15 minutes, log in at your testing URL as usual, or run\n`typo3-playwright-inspect --replay` for a new one.\n\n## Troubleshooting\n\n> [!IMPORTANT]\n> **Tests that fail once and pass on the retry, on macOS.** If TYPO3 reports a\n> missing Fluid template, an unreadable l10n cache or a processed image whose type\n> could not be read, it is not your test. TYPO3 reads those files right after\n> checking they exist, and the mount your project is shared through does not keep\n> the two in step, so parallel workers hit misses. Put `var/cache` on a Docker\n> volume — [SETUP.md](https://github.com/plan2net/typo3-playwright-toolkit/blob/main/SETUP.md#the-cache-directory-on-macos)\n> has the snippet.\n\n**\"No test ID for this request\".** The builder received a page that the toolkit\nfixtures did not create. Use the `builders` argument of `defineScenario`.\n\n**\"The site … is unavailable\".** Before the first test, the toolkit asks each site's\nown hostname which test database and site answered. The reason says what came back\ninstead: a redirect, a page with no toolkit behind it (the host is not in the Testing\ncontext), another installation, or another site. Check the site's Testing base variant\nand that its hostname is set up as in step 1 of SETUP.md.\n\n**Settings seem to be ignored.** `defineToolkitConfig` ran too late. It must be the\nfirst thing in `playwright.config.ts`.\n\n**Cleanup refuses a path.** `sessionDir` must be absolute and inside `consumerRoot`,\nbecause cleanup deletes files in it. Setup state always lives in\n`<consumerRoot>/.test-state`, which is where `typo3-playwright-inspect` and\n`typo3-playwright-clean` look for it.\n\n**The run builds nothing, or builds the wrong thing.** The default reads\n`consumerRoot/package.json`, not the `package.json` next to your Playwright config.\nPoint `build` at your real command if the two differ.\n\n**\"Timed out after 300000ms waiting for the setup\".** A setup that builds a lot of\ncontent can outgrow the defaults on a slow machine. Raise `setup.attemptTimeoutMs`\nfor the setup itself and `setup.waitTimeoutMs` for the tests waiting on it. The\nsecond has to stay well above the first, since it covers every attempt plus the time\nspent waiting for the lock.\n\n**Test databases stay after a failed run.** That is intended: the databases of the\nfailed test files are kept for debugging, and the run prints a link for each one\nthat opens it in the TYPO3 backend. Set `cleanup.preserveOnFailure` to `none` to\nturn this off.\n\n**You want to look at what a failing test built.** Open the link the run printed\nunder \"Kept for debugging\". It logs you into that test's backend, and the frontend\nis reachable from there. The link is signed with the API secret and lives 15\nminutes.\n\n## Related packages\n\n- [`plan2net/playwright-toolkit`](https://github.com/plan2net/typo3-playwright-toolkit/tree/main/packages/playwright-toolkit), the Composer extension\n- [DDEV add-on](https://github.com/plan2net/typo3-playwright-toolkit/tree/main/packages/ddev-typo3-playwright-toolkit), the database service and commands\n","readmeFilename":"README.md"}