Dmitry Gozman commited on
Commit
6aab683
Β·
unverified Β·
1 Parent(s): 85c64bb

chore: monorepo (#1325)

Browse files
This view is limited to 50 files because it contains too many changes. Β  See raw diff
Files changed (50) hide show
  1. .github/workflows/ci.yml +10 -19
  2. .github/workflows/publish.yml +13 -10
  3. .gitignore +0 -2
  4. Dockerfile +4 -2
  5. cli/package-lock.json +0 -563
  6. extension/package-lock.json +0 -1885
  7. package-lock.json +0 -0
  8. package.json +7 -30
  9. packages/extension/.gitignore +1 -0
  10. {extension β†’ packages/extension}/README.md +0 -0
  11. {extension β†’ packages/extension}/icons/icon-128.png +0 -0
  12. {extension β†’ packages/extension}/icons/icon-16.png +0 -0
  13. {extension β†’ packages/extension}/icons/icon-32.png +0 -0
  14. {extension β†’ packages/extension}/icons/icon-48.png +0 -0
  15. {extension β†’ packages/extension}/manifest.json +0 -0
  16. {extension β†’ packages/extension}/package.json +1 -0
  17. {extension β†’ packages/extension}/playwright.config.ts +1 -1
  18. {extension β†’ packages/extension}/src/background.ts +0 -0
  19. {extension β†’ packages/extension}/src/relayConnection.ts +0 -0
  20. {extension β†’ packages/extension}/src/ui/authToken.css +0 -0
  21. {extension β†’ packages/extension}/src/ui/authToken.tsx +0 -0
  22. {extension β†’ packages/extension}/src/ui/colors.css +0 -0
  23. {extension β†’ packages/extension}/src/ui/connect.css +0 -0
  24. {extension β†’ packages/extension}/src/ui/connect.html +0 -0
  25. {extension β†’ packages/extension}/src/ui/connect.tsx +0 -0
  26. {extension β†’ packages/extension}/src/ui/copyToClipboard.css +0 -0
  27. {extension β†’ packages/extension}/src/ui/copyToClipboard.tsx +0 -0
  28. {extension β†’ packages/extension}/src/ui/icons.css +0 -0
  29. {extension β†’ packages/extension}/src/ui/icons.tsx +0 -0
  30. {extension β†’ packages/extension}/src/ui/status.html +0 -0
  31. {extension β†’ packages/extension}/src/ui/status.tsx +0 -0
  32. {extension β†’ packages/extension}/src/ui/tabItem.tsx +0 -0
  33. {extension β†’ packages/extension}/src/ui/tsconfig.json +0 -0
  34. {extension β†’ packages/extension}/tests/extension.spec.ts +2 -2
  35. {extension β†’ packages/extension}/tsconfig.json +0 -0
  36. {extension β†’ packages/extension}/tsconfig.ui.json +0 -0
  37. {extension β†’ packages/extension}/vite.config.mts +0 -0
  38. {extension β†’ packages/extension}/vite.sw.config.mts +0 -0
  39. packages/playwright-cli/.gitignore +1 -0
  40. {cli β†’ packages/playwright-cli}/package.json +0 -1
  41. {cli β†’ packages/playwright-cli}/src/cli.ts +0 -0
  42. {cli β†’ packages/playwright-cli}/src/help.json +0 -0
  43. {cli β†’ packages/playwright-cli}/src/socketConnection.ts +0 -0
  44. {cli β†’ packages/playwright-cli}/tsconfig.json +0 -0
  45. packages/playwright-mcp/.gitignore +2 -0
  46. .npmignore β†’ packages/playwright-mcp/.npmignore +2 -2
  47. cli.js β†’ packages/playwright-mcp/cli.js +0 -0
  48. config.d.ts β†’ packages/playwright-mcp/config.d.ts +0 -0
  49. index.d.ts β†’ packages/playwright-mcp/index.d.ts +0 -0
  50. index.js β†’ packages/playwright-mcp/index.js +0 -0
.github/workflows/ci.yml CHANGED
@@ -16,19 +16,12 @@ jobs:
16
  with:
17
  node-version: '20'
18
  cache: 'npm'
19
- - name: Install dependencies
20
- run: npm ci
21
- - name: Run ESLint
22
- run: npm run lint
23
  - name: Ensure no changes
24
  run: git diff --exit-code
25
- - name: Run cli lint
26
- run: |
27
- npm ci
28
- npm run lint
29
- working-directory: ./cli
30
 
31
- test:
32
  strategy:
33
  fail-fast: false
34
  matrix:
@@ -47,8 +40,9 @@ jobs:
47
  run: npx playwright install --with-deps
48
  - name: Run tests
49
  run: npm run test
 
50
 
51
- test_docker:
52
  runs-on: ubuntu-latest
53
  steps:
54
  - uses: actions/checkout@v4
@@ -76,14 +70,12 @@ jobs:
76
  # Used for the Docker tests to share the test-results folder with the container.
77
  umask 0000
78
  npm run test -- --project=chromium-docker
 
79
  env:
80
  MCP_IN_DOCKER: 1
81
 
82
  test_extension:
83
  runs-on: macos-latest
84
- defaults:
85
- run:
86
- working-directory: ./extension
87
  steps:
88
  - uses: actions/checkout@v4
89
  - name: Use Node.js 20
@@ -93,19 +85,17 @@ jobs:
93
  cache: 'npm'
94
  - name: Install dependencies
95
  run: npm ci
 
 
96
  - name: Build extension
97
  run: npm run build
 
98
  - name: Upload artifact
99
  uses: actions/upload-artifact@v4
100
  with:
101
  name: extension
102
  path: ./extension/dist
103
  retention-days: 7
104
- - name: Install MCP server
105
- run: |
106
- cd ..
107
- npm ci
108
- npx playwright install chromium
109
  - name: Run tests
110
  run: |
111
  if [[ "$(uname)" == "Linux" ]]; then
@@ -114,3 +104,4 @@ jobs:
114
  npm run test
115
  fi
116
  shell: bash
 
 
16
  with:
17
  node-version: '20'
18
  cache: 'npm'
19
+ - run: npm ci
20
+ - run: npm run lint
 
 
21
  - name: Ensure no changes
22
  run: git diff --exit-code
 
 
 
 
 
23
 
24
+ test_mcp:
25
  strategy:
26
  fail-fast: false
27
  matrix:
 
40
  run: npx playwright install --with-deps
41
  - name: Run tests
42
  run: npm run test
43
+ working-directory: ./packages/playwright-mcp
44
 
45
+ test_mcp_docker:
46
  runs-on: ubuntu-latest
47
  steps:
48
  - uses: actions/checkout@v4
 
70
  # Used for the Docker tests to share the test-results folder with the container.
71
  umask 0000
72
  npm run test -- --project=chromium-docker
73
+ working-directory: ./packages/playwright-mcp
74
  env:
75
  MCP_IN_DOCKER: 1
76
 
77
  test_extension:
78
  runs-on: macos-latest
 
 
 
79
  steps:
80
  - uses: actions/checkout@v4
81
  - name: Use Node.js 20
 
85
  cache: 'npm'
86
  - name: Install dependencies
87
  run: npm ci
88
+ - name: Playwright install
89
+ run: npx playwright install --with-deps
90
  - name: Build extension
91
  run: npm run build
92
+ working-directory: ./packages/extension
93
  - name: Upload artifact
94
  uses: actions/upload-artifact@v4
95
  with:
96
  name: extension
97
  path: ./extension/dist
98
  retention-days: 7
 
 
 
 
 
99
  - name: Run tests
100
  run: |
101
  if [[ "$(uname)" == "Linux" ]]; then
 
104
  npm run test
105
  fi
106
  shell: bash
107
+ working-directory: ./packages/extension
.github/workflows/publish.yml CHANGED
@@ -7,7 +7,7 @@ on:
7
  types: [published]
8
 
9
  jobs:
10
- publish-canary-npm:
11
  if: github.event.schedule || github.event_name == 'workflow_dispatch'
12
  runs-on: ubuntu-latest
13
  permissions:
@@ -38,16 +38,19 @@ jobs:
38
  - name: Update package.json version
39
  run: |
40
  npm version ${{ steps.canary-version.outputs.version }} --no-git-tag-version
 
41
 
42
  - run: npm ci
43
  - run: npx playwright install --with-deps
44
  - run: npm run lint
45
  - run: npm run ctest
 
46
 
47
  - name: Publish to npm with next tag
48
  run: npm publish --tag next
 
49
 
50
- publish-release-npm:
51
  if: github.event_name == 'release'
52
  runs-on: ubuntu-latest
53
  permissions:
@@ -66,9 +69,11 @@ jobs:
66
  - run: npx playwright install --with-deps
67
  - run: npm run lint
68
  - run: npm run ctest
 
69
  - run: npm publish
 
70
 
71
- publish-release-docker:
72
  if: github.event_name == 'release'
73
  runs-on: ubuntu-latest
74
  permissions:
@@ -93,8 +98,7 @@ jobs:
93
  id: build-push
94
  uses: docker/build-push-action@v6
95
  with:
96
- context: .
97
- file: ./Dockerfile # Adjust path if your Dockerfile is elsewhere
98
  platforms: linux/amd64,linux/arm64
99
  push: true
100
  tags: |
@@ -127,17 +131,16 @@ jobs:
127
  node-version: 20
128
  cache: 'npm'
129
  - name: Install extension dependencies
130
- working-directory: ./extension
131
  run: npm ci
132
  - name: Build extension
133
- working-directory: ./extension
134
  run: npm run build
135
  - name: Get extension version
136
  id: get-version
137
- working-directory: ./extension
138
  run: echo "version=$(node -p "require('./package.json').version")" >> $GITHUB_OUTPUT
139
  - name: Package extension
140
- working-directory: ./extension
141
  run: |
142
  cd dist
143
  zip -r ../playwright-mcp-extension-${{ steps.get-version.outputs.version }}.zip .
@@ -146,4 +149,4 @@ jobs:
146
  env:
147
  GITHUB_TOKEN: ${{ github.token }}
148
  run: |
149
- gh release upload ${{github.event.release.tag_name}} ./extension/playwright-mcp-extension-${{ steps.get-version.outputs.version }}.zip
 
7
  types: [published]
8
 
9
  jobs:
10
+ publish-mcp-canary-npm:
11
  if: github.event.schedule || github.event_name == 'workflow_dispatch'
12
  runs-on: ubuntu-latest
13
  permissions:
 
38
  - name: Update package.json version
39
  run: |
40
  npm version ${{ steps.canary-version.outputs.version }} --no-git-tag-version
41
+ working-directory: ./packages/playwright-mcp
42
 
43
  - run: npm ci
44
  - run: npx playwright install --with-deps
45
  - run: npm run lint
46
  - run: npm run ctest
47
+ working-directory: ./packages/playwright-mcp
48
 
49
  - name: Publish to npm with next tag
50
  run: npm publish --tag next
51
+ working-directory: ./packages/playwright-mcp
52
 
53
+ publish-mcp-release-npm:
54
  if: github.event_name == 'release'
55
  runs-on: ubuntu-latest
56
  permissions:
 
69
  - run: npx playwright install --with-deps
70
  - run: npm run lint
71
  - run: npm run ctest
72
+ working-directory: ./packages/playwright-mcp
73
  - run: npm publish
74
+ working-directory: ./packages/playwright-mcp
75
 
76
+ publish-mcp-release-docker:
77
  if: github.event_name == 'release'
78
  runs-on: ubuntu-latest
79
  permissions:
 
98
  id: build-push
99
  uses: docker/build-push-action@v6
100
  with:
101
+ file: ./Dockerfile
 
102
  platforms: linux/amd64,linux/arm64
103
  push: true
104
  tags: |
 
131
  node-version: 20
132
  cache: 'npm'
133
  - name: Install extension dependencies
 
134
  run: npm ci
135
  - name: Build extension
136
+ working-directory: ./packages/extension
137
  run: npm run build
138
  - name: Get extension version
139
  id: get-version
140
+ working-directory: ./packages/extension
141
  run: echo "version=$(node -p "require('./package.json').version")" >> $GITHUB_OUTPUT
142
  - name: Package extension
143
+ working-directory: ./packages/extension
144
  run: |
145
  cd dist
146
  zip -r ../playwright-mcp-extension-${{ steps.get-version.outputs.version }}.zip .
 
149
  env:
150
  GITHUB_TOKEN: ${{ github.token }}
151
  run: |
152
+ gh release upload ${{github.event.release.tag_name}} ./packages/extension/playwright-mcp-extension-${{ steps.get-version.outputs.version }}.zip
.gitignore CHANGED
@@ -1,5 +1,3 @@
1
- lib/
2
- dist/
3
  node_modules/
4
  test-results/
5
  playwright-report/
 
 
 
1
  node_modules/
2
  test-results/
3
  playwright-report/
Dockerfile CHANGED
@@ -16,6 +16,7 @@ WORKDIR /app
16
  RUN --mount=type=cache,target=/root/.npm,sharing=locked,id=npm-cache \
17
  --mount=type=bind,source=package.json,target=package.json \
18
  --mount=type=bind,source=package-lock.json,target=package-lock.json \
 
19
  npm ci --omit=dev && \
20
  # Install system dependencies for playwright
21
  npx -y playwright-core install-deps chromium
@@ -28,10 +29,11 @@ FROM base AS builder
28
  RUN --mount=type=cache,target=/root/.npm,sharing=locked,id=npm-cache \
29
  --mount=type=bind,source=package.json,target=package.json \
30
  --mount=type=bind,source=package-lock.json,target=package-lock.json \
 
31
  npm ci
32
 
33
  # Copy the rest of the app
34
- COPY *.json *.js *.ts .
35
 
36
  # ------------------------------
37
  # Browser
@@ -59,7 +61,7 @@ RUN chown -R ${USERNAME}:${USERNAME} node_modules
59
  USER ${USERNAME}
60
 
61
  COPY --from=browser --chown=${USERNAME}:${USERNAME} ${PLAYWRIGHT_BROWSERS_PATH} ${PLAYWRIGHT_BROWSERS_PATH}
62
- COPY --chown=${USERNAME}:${USERNAME} cli.js package.json ./
63
 
64
  # Run in headless and only with chromium (other browsers need more dependencies not included in this image)
65
  ENTRYPOINT ["node", "cli.js", "--headless", "--browser", "chromium", "--no-sandbox"]
 
16
  RUN --mount=type=cache,target=/root/.npm,sharing=locked,id=npm-cache \
17
  --mount=type=bind,source=package.json,target=package.json \
18
  --mount=type=bind,source=package-lock.json,target=package-lock.json \
19
+ --mount=type=bind,source=packages/playwright-mcp/package.json,target=packages/playwright-mcp/package.json \
20
  npm ci --omit=dev && \
21
  # Install system dependencies for playwright
22
  npx -y playwright-core install-deps chromium
 
29
  RUN --mount=type=cache,target=/root/.npm,sharing=locked,id=npm-cache \
30
  --mount=type=bind,source=package.json,target=package.json \
31
  --mount=type=bind,source=package-lock.json,target=package-lock.json \
32
+ --mount=type=bind,source=packages/playwright-mcp/package.json,target=packages/playwright-mcp/package.json \
33
  npm ci
34
 
35
  # Copy the rest of the app
36
+ COPY packages/playwright-mcp/*.json packages/playwright-mcp/*.js packages/playwright-mcp/*.ts .
37
 
38
  # ------------------------------
39
  # Browser
 
61
  USER ${USERNAME}
62
 
63
  COPY --from=browser --chown=${USERNAME}:${USERNAME} ${PLAYWRIGHT_BROWSERS_PATH} ${PLAYWRIGHT_BROWSERS_PATH}
64
+ COPY --chown=${USERNAME}:${USERNAME} packages/playwright-mcp/cli.js packages/playwright-mcp/package.json ./
65
 
66
  # Run in headless and only with chromium (other browsers need more dependencies not included in this image)
67
  ENTRYPOINT ["node", "cli.js", "--headless", "--browser", "chromium", "--no-sandbox"]
cli/package-lock.json DELETED
@@ -1,563 +0,0 @@
1
- {
2
- "name": "@playwright/cli",
3
- "version": "0.0.56",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "": {
8
- "name": "@playwright/cli",
9
- "version": "0.0.56",
10
- "license": "Apache-2.0",
11
- "devDependencies": {
12
- "@types/debug": "^4.1.12",
13
- "@types/minimist": "^1.2.5",
14
- "debug": "^4.4.3",
15
- "esbuild": "^0.24.0",
16
- "minimist": "^1.2.8",
17
- "typescript": "^5.8.2"
18
- },
19
- "engines": {
20
- "node": ">=18"
21
- }
22
- },
23
- "node_modules/@esbuild/aix-ppc64": {
24
- "version": "0.24.2",
25
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.2.tgz",
26
- "integrity": "sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==",
27
- "cpu": [
28
- "ppc64"
29
- ],
30
- "dev": true,
31
- "license": "MIT",
32
- "optional": true,
33
- "os": [
34
- "aix"
35
- ],
36
- "engines": {
37
- "node": ">=18"
38
- }
39
- },
40
- "node_modules/@esbuild/android-arm": {
41
- "version": "0.24.2",
42
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.2.tgz",
43
- "integrity": "sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==",
44
- "cpu": [
45
- "arm"
46
- ],
47
- "dev": true,
48
- "license": "MIT",
49
- "optional": true,
50
- "os": [
51
- "android"
52
- ],
53
- "engines": {
54
- "node": ">=18"
55
- }
56
- },
57
- "node_modules/@esbuild/android-arm64": {
58
- "version": "0.24.2",
59
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.2.tgz",
60
- "integrity": "sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==",
61
- "cpu": [
62
- "arm64"
63
- ],
64
- "dev": true,
65
- "license": "MIT",
66
- "optional": true,
67
- "os": [
68
- "android"
69
- ],
70
- "engines": {
71
- "node": ">=18"
72
- }
73
- },
74
- "node_modules/@esbuild/android-x64": {
75
- "version": "0.24.2",
76
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.2.tgz",
77
- "integrity": "sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==",
78
- "cpu": [
79
- "x64"
80
- ],
81
- "dev": true,
82
- "license": "MIT",
83
- "optional": true,
84
- "os": [
85
- "android"
86
- ],
87
- "engines": {
88
- "node": ">=18"
89
- }
90
- },
91
- "node_modules/@esbuild/darwin-arm64": {
92
- "version": "0.24.2",
93
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.2.tgz",
94
- "integrity": "sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==",
95
- "cpu": [
96
- "arm64"
97
- ],
98
- "dev": true,
99
- "license": "MIT",
100
- "optional": true,
101
- "os": [
102
- "darwin"
103
- ],
104
- "engines": {
105
- "node": ">=18"
106
- }
107
- },
108
- "node_modules/@esbuild/darwin-x64": {
109
- "version": "0.24.2",
110
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.2.tgz",
111
- "integrity": "sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==",
112
- "cpu": [
113
- "x64"
114
- ],
115
- "dev": true,
116
- "license": "MIT",
117
- "optional": true,
118
- "os": [
119
- "darwin"
120
- ],
121
- "engines": {
122
- "node": ">=18"
123
- }
124
- },
125
- "node_modules/@esbuild/freebsd-arm64": {
126
- "version": "0.24.2",
127
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.2.tgz",
128
- "integrity": "sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==",
129
- "cpu": [
130
- "arm64"
131
- ],
132
- "dev": true,
133
- "license": "MIT",
134
- "optional": true,
135
- "os": [
136
- "freebsd"
137
- ],
138
- "engines": {
139
- "node": ">=18"
140
- }
141
- },
142
- "node_modules/@esbuild/freebsd-x64": {
143
- "version": "0.24.2",
144
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.2.tgz",
145
- "integrity": "sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==",
146
- "cpu": [
147
- "x64"
148
- ],
149
- "dev": true,
150
- "license": "MIT",
151
- "optional": true,
152
- "os": [
153
- "freebsd"
154
- ],
155
- "engines": {
156
- "node": ">=18"
157
- }
158
- },
159
- "node_modules/@esbuild/linux-arm": {
160
- "version": "0.24.2",
161
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.2.tgz",
162
- "integrity": "sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==",
163
- "cpu": [
164
- "arm"
165
- ],
166
- "dev": true,
167
- "license": "MIT",
168
- "optional": true,
169
- "os": [
170
- "linux"
171
- ],
172
- "engines": {
173
- "node": ">=18"
174
- }
175
- },
176
- "node_modules/@esbuild/linux-arm64": {
177
- "version": "0.24.2",
178
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.2.tgz",
179
- "integrity": "sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==",
180
- "cpu": [
181
- "arm64"
182
- ],
183
- "dev": true,
184
- "license": "MIT",
185
- "optional": true,
186
- "os": [
187
- "linux"
188
- ],
189
- "engines": {
190
- "node": ">=18"
191
- }
192
- },
193
- "node_modules/@esbuild/linux-ia32": {
194
- "version": "0.24.2",
195
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.2.tgz",
196
- "integrity": "sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==",
197
- "cpu": [
198
- "ia32"
199
- ],
200
- "dev": true,
201
- "license": "MIT",
202
- "optional": true,
203
- "os": [
204
- "linux"
205
- ],
206
- "engines": {
207
- "node": ">=18"
208
- }
209
- },
210
- "node_modules/@esbuild/linux-loong64": {
211
- "version": "0.24.2",
212
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.2.tgz",
213
- "integrity": "sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==",
214
- "cpu": [
215
- "loong64"
216
- ],
217
- "dev": true,
218
- "license": "MIT",
219
- "optional": true,
220
- "os": [
221
- "linux"
222
- ],
223
- "engines": {
224
- "node": ">=18"
225
- }
226
- },
227
- "node_modules/@esbuild/linux-mips64el": {
228
- "version": "0.24.2",
229
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.2.tgz",
230
- "integrity": "sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==",
231
- "cpu": [
232
- "mips64el"
233
- ],
234
- "dev": true,
235
- "license": "MIT",
236
- "optional": true,
237
- "os": [
238
- "linux"
239
- ],
240
- "engines": {
241
- "node": ">=18"
242
- }
243
- },
244
- "node_modules/@esbuild/linux-ppc64": {
245
- "version": "0.24.2",
246
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.2.tgz",
247
- "integrity": "sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==",
248
- "cpu": [
249
- "ppc64"
250
- ],
251
- "dev": true,
252
- "license": "MIT",
253
- "optional": true,
254
- "os": [
255
- "linux"
256
- ],
257
- "engines": {
258
- "node": ">=18"
259
- }
260
- },
261
- "node_modules/@esbuild/linux-riscv64": {
262
- "version": "0.24.2",
263
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.2.tgz",
264
- "integrity": "sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==",
265
- "cpu": [
266
- "riscv64"
267
- ],
268
- "dev": true,
269
- "license": "MIT",
270
- "optional": true,
271
- "os": [
272
- "linux"
273
- ],
274
- "engines": {
275
- "node": ">=18"
276
- }
277
- },
278
- "node_modules/@esbuild/linux-s390x": {
279
- "version": "0.24.2",
280
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.2.tgz",
281
- "integrity": "sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==",
282
- "cpu": [
283
- "s390x"
284
- ],
285
- "dev": true,
286
- "license": "MIT",
287
- "optional": true,
288
- "os": [
289
- "linux"
290
- ],
291
- "engines": {
292
- "node": ">=18"
293
- }
294
- },
295
- "node_modules/@esbuild/linux-x64": {
296
- "version": "0.24.2",
297
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz",
298
- "integrity": "sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==",
299
- "cpu": [
300
- "x64"
301
- ],
302
- "dev": true,
303
- "license": "MIT",
304
- "optional": true,
305
- "os": [
306
- "linux"
307
- ],
308
- "engines": {
309
- "node": ">=18"
310
- }
311
- },
312
- "node_modules/@esbuild/netbsd-arm64": {
313
- "version": "0.24.2",
314
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.24.2.tgz",
315
- "integrity": "sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==",
316
- "cpu": [
317
- "arm64"
318
- ],
319
- "dev": true,
320
- "license": "MIT",
321
- "optional": true,
322
- "os": [
323
- "netbsd"
324
- ],
325
- "engines": {
326
- "node": ">=18"
327
- }
328
- },
329
- "node_modules/@esbuild/netbsd-x64": {
330
- "version": "0.24.2",
331
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.2.tgz",
332
- "integrity": "sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==",
333
- "cpu": [
334
- "x64"
335
- ],
336
- "dev": true,
337
- "license": "MIT",
338
- "optional": true,
339
- "os": [
340
- "netbsd"
341
- ],
342
- "engines": {
343
- "node": ">=18"
344
- }
345
- },
346
- "node_modules/@esbuild/openbsd-arm64": {
347
- "version": "0.24.2",
348
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.2.tgz",
349
- "integrity": "sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==",
350
- "cpu": [
351
- "arm64"
352
- ],
353
- "dev": true,
354
- "license": "MIT",
355
- "optional": true,
356
- "os": [
357
- "openbsd"
358
- ],
359
- "engines": {
360
- "node": ">=18"
361
- }
362
- },
363
- "node_modules/@esbuild/openbsd-x64": {
364
- "version": "0.24.2",
365
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.2.tgz",
366
- "integrity": "sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==",
367
- "cpu": [
368
- "x64"
369
- ],
370
- "dev": true,
371
- "license": "MIT",
372
- "optional": true,
373
- "os": [
374
- "openbsd"
375
- ],
376
- "engines": {
377
- "node": ">=18"
378
- }
379
- },
380
- "node_modules/@esbuild/sunos-x64": {
381
- "version": "0.24.2",
382
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.2.tgz",
383
- "integrity": "sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==",
384
- "cpu": [
385
- "x64"
386
- ],
387
- "dev": true,
388
- "license": "MIT",
389
- "optional": true,
390
- "os": [
391
- "sunos"
392
- ],
393
- "engines": {
394
- "node": ">=18"
395
- }
396
- },
397
- "node_modules/@esbuild/win32-arm64": {
398
- "version": "0.24.2",
399
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.2.tgz",
400
- "integrity": "sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==",
401
- "cpu": [
402
- "arm64"
403
- ],
404
- "dev": true,
405
- "license": "MIT",
406
- "optional": true,
407
- "os": [
408
- "win32"
409
- ],
410
- "engines": {
411
- "node": ">=18"
412
- }
413
- },
414
- "node_modules/@esbuild/win32-ia32": {
415
- "version": "0.24.2",
416
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.2.tgz",
417
- "integrity": "sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==",
418
- "cpu": [
419
- "ia32"
420
- ],
421
- "dev": true,
422
- "license": "MIT",
423
- "optional": true,
424
- "os": [
425
- "win32"
426
- ],
427
- "engines": {
428
- "node": ">=18"
429
- }
430
- },
431
- "node_modules/@esbuild/win32-x64": {
432
- "version": "0.24.2",
433
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.2.tgz",
434
- "integrity": "sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==",
435
- "cpu": [
436
- "x64"
437
- ],
438
- "dev": true,
439
- "license": "MIT",
440
- "optional": true,
441
- "os": [
442
- "win32"
443
- ],
444
- "engines": {
445
- "node": ">=18"
446
- }
447
- },
448
- "node_modules/@types/debug": {
449
- "version": "4.1.12",
450
- "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
451
- "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
452
- "dev": true,
453
- "license": "MIT",
454
- "dependencies": {
455
- "@types/ms": "*"
456
- }
457
- },
458
- "node_modules/@types/minimist": {
459
- "version": "1.2.5",
460
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
461
- "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==",
462
- "dev": true,
463
- "license": "MIT"
464
- },
465
- "node_modules/@types/ms": {
466
- "version": "2.1.0",
467
- "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz",
468
- "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==",
469
- "dev": true,
470
- "license": "MIT"
471
- },
472
- "node_modules/debug": {
473
- "version": "4.4.3",
474
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
475
- "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
476
- "dev": true,
477
- "license": "MIT",
478
- "dependencies": {
479
- "ms": "^2.1.3"
480
- },
481
- "engines": {
482
- "node": ">=6.0"
483
- },
484
- "peerDependenciesMeta": {
485
- "supports-color": {
486
- "optional": true
487
- }
488
- }
489
- },
490
- "node_modules/esbuild": {
491
- "version": "0.24.2",
492
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz",
493
- "integrity": "sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==",
494
- "dev": true,
495
- "hasInstallScript": true,
496
- "license": "MIT",
497
- "bin": {
498
- "esbuild": "bin/esbuild"
499
- },
500
- "engines": {
501
- "node": ">=18"
502
- },
503
- "optionalDependencies": {
504
- "@esbuild/aix-ppc64": "0.24.2",
505
- "@esbuild/android-arm": "0.24.2",
506
- "@esbuild/android-arm64": "0.24.2",
507
- "@esbuild/android-x64": "0.24.2",
508
- "@esbuild/darwin-arm64": "0.24.2",
509
- "@esbuild/darwin-x64": "0.24.2",
510
- "@esbuild/freebsd-arm64": "0.24.2",
511
- "@esbuild/freebsd-x64": "0.24.2",
512
- "@esbuild/linux-arm": "0.24.2",
513
- "@esbuild/linux-arm64": "0.24.2",
514
- "@esbuild/linux-ia32": "0.24.2",
515
- "@esbuild/linux-loong64": "0.24.2",
516
- "@esbuild/linux-mips64el": "0.24.2",
517
- "@esbuild/linux-ppc64": "0.24.2",
518
- "@esbuild/linux-riscv64": "0.24.2",
519
- "@esbuild/linux-s390x": "0.24.2",
520
- "@esbuild/linux-x64": "0.24.2",
521
- "@esbuild/netbsd-arm64": "0.24.2",
522
- "@esbuild/netbsd-x64": "0.24.2",
523
- "@esbuild/openbsd-arm64": "0.24.2",
524
- "@esbuild/openbsd-x64": "0.24.2",
525
- "@esbuild/sunos-x64": "0.24.2",
526
- "@esbuild/win32-arm64": "0.24.2",
527
- "@esbuild/win32-ia32": "0.24.2",
528
- "@esbuild/win32-x64": "0.24.2"
529
- }
530
- },
531
- "node_modules/minimist": {
532
- "version": "1.2.8",
533
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
534
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
535
- "dev": true,
536
- "license": "MIT",
537
- "funding": {
538
- "url": "https://github.com/sponsors/ljharb"
539
- }
540
- },
541
- "node_modules/ms": {
542
- "version": "2.1.3",
543
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
544
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
545
- "dev": true,
546
- "license": "MIT"
547
- },
548
- "node_modules/typescript": {
549
- "version": "5.9.3",
550
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz",
551
- "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==",
552
- "dev": true,
553
- "license": "Apache-2.0",
554
- "bin": {
555
- "tsc": "bin/tsc",
556
- "tsserver": "bin/tsserver"
557
- },
558
- "engines": {
559
- "node": ">=14.17"
560
- }
561
- }
562
- }
563
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
extension/package-lock.json DELETED
@@ -1,1885 +0,0 @@
1
- {
2
- "name": "@playwright/mcp-extension",
3
- "version": "0.0.56",
4
- "lockfileVersion": 3,
5
- "requires": true,
6
- "packages": {
7
- "": {
8
- "name": "@playwright/mcp-extension",
9
- "version": "0.0.56",
10
- "license": "Apache-2.0",
11
- "devDependencies": {
12
- "@types/chrome": "^0.0.315",
13
- "@types/react": "^18.2.66",
14
- "@types/react-dom": "^18.2.22",
15
- "@vitejs/plugin-react": "^4.0.0",
16
- "react": "^18.2.0",
17
- "react-dom": "^18.2.0",
18
- "typescript": "^5.8.2",
19
- "vite": "^5.4.21",
20
- "vite-plugin-static-copy": "^3.1.1"
21
- },
22
- "engines": {
23
- "node": ">=18"
24
- }
25
- },
26
- "node_modules/@ampproject/remapping": {
27
- "version": "2.3.0",
28
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
29
- "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
30
- "dev": true,
31
- "dependencies": {
32
- "@jridgewell/gen-mapping": "^0.3.5",
33
- "@jridgewell/trace-mapping": "^0.3.24"
34
- },
35
- "engines": {
36
- "node": ">=6.0.0"
37
- }
38
- },
39
- "node_modules/@babel/code-frame": {
40
- "version": "7.27.1",
41
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz",
42
- "integrity": "sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==",
43
- "dev": true,
44
- "dependencies": {
45
- "@babel/helper-validator-identifier": "^7.27.1",
46
- "js-tokens": "^4.0.0",
47
- "picocolors": "^1.1.1"
48
- },
49
- "engines": {
50
- "node": ">=6.9.0"
51
- }
52
- },
53
- "node_modules/@babel/compat-data": {
54
- "version": "7.28.0",
55
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz",
56
- "integrity": "sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw==",
57
- "dev": true,
58
- "engines": {
59
- "node": ">=6.9.0"
60
- }
61
- },
62
- "node_modules/@babel/core": {
63
- "version": "7.28.0",
64
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.28.0.tgz",
65
- "integrity": "sha512-UlLAnTPrFdNGoFtbSXwcGFQBtQZJCNjaN6hQNP3UPvuNXT1i82N26KL3dZeIpNalWywr9IuQuncaAfUaS1g6sQ==",
66
- "dev": true,
67
- "dependencies": {
68
- "@ampproject/remapping": "^2.2.0",
69
- "@babel/code-frame": "^7.27.1",
70
- "@babel/generator": "^7.28.0",
71
- "@babel/helper-compilation-targets": "^7.27.2",
72
- "@babel/helper-module-transforms": "^7.27.3",
73
- "@babel/helpers": "^7.27.6",
74
- "@babel/parser": "^7.28.0",
75
- "@babel/template": "^7.27.2",
76
- "@babel/traverse": "^7.28.0",
77
- "@babel/types": "^7.28.0",
78
- "convert-source-map": "^2.0.0",
79
- "debug": "^4.1.0",
80
- "gensync": "^1.0.0-beta.2",
81
- "json5": "^2.2.3",
82
- "semver": "^6.3.1"
83
- },
84
- "engines": {
85
- "node": ">=6.9.0"
86
- },
87
- "funding": {
88
- "type": "opencollective",
89
- "url": "https://opencollective.com/babel"
90
- }
91
- },
92
- "node_modules/@babel/generator": {
93
- "version": "7.28.0",
94
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.28.0.tgz",
95
- "integrity": "sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==",
96
- "dev": true,
97
- "dependencies": {
98
- "@babel/parser": "^7.28.0",
99
- "@babel/types": "^7.28.0",
100
- "@jridgewell/gen-mapping": "^0.3.12",
101
- "@jridgewell/trace-mapping": "^0.3.28",
102
- "jsesc": "^3.0.2"
103
- },
104
- "engines": {
105
- "node": ">=6.9.0"
106
- }
107
- },
108
- "node_modules/@babel/helper-compilation-targets": {
109
- "version": "7.27.2",
110
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz",
111
- "integrity": "sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ==",
112
- "dev": true,
113
- "dependencies": {
114
- "@babel/compat-data": "^7.27.2",
115
- "@babel/helper-validator-option": "^7.27.1",
116
- "browserslist": "^4.24.0",
117
- "lru-cache": "^5.1.1",
118
- "semver": "^6.3.1"
119
- },
120
- "engines": {
121
- "node": ">=6.9.0"
122
- }
123
- },
124
- "node_modules/@babel/helper-globals": {
125
- "version": "7.28.0",
126
- "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz",
127
- "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==",
128
- "dev": true,
129
- "engines": {
130
- "node": ">=6.9.0"
131
- }
132
- },
133
- "node_modules/@babel/helper-module-imports": {
134
- "version": "7.27.1",
135
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz",
136
- "integrity": "sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w==",
137
- "dev": true,
138
- "dependencies": {
139
- "@babel/traverse": "^7.27.1",
140
- "@babel/types": "^7.27.1"
141
- },
142
- "engines": {
143
- "node": ">=6.9.0"
144
- }
145
- },
146
- "node_modules/@babel/helper-module-transforms": {
147
- "version": "7.27.3",
148
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.27.3.tgz",
149
- "integrity": "sha512-dSOvYwvyLsWBeIRyOeHXp5vPj5l1I011r52FM1+r1jCERv+aFXYk4whgQccYEGYxK2H3ZAIA8nuPkQ0HaUo3qg==",
150
- "dev": true,
151
- "dependencies": {
152
- "@babel/helper-module-imports": "^7.27.1",
153
- "@babel/helper-validator-identifier": "^7.27.1",
154
- "@babel/traverse": "^7.27.3"
155
- },
156
- "engines": {
157
- "node": ">=6.9.0"
158
- },
159
- "peerDependencies": {
160
- "@babel/core": "^7.0.0"
161
- }
162
- },
163
- "node_modules/@babel/helper-plugin-utils": {
164
- "version": "7.27.1",
165
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz",
166
- "integrity": "sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw==",
167
- "dev": true,
168
- "engines": {
169
- "node": ">=6.9.0"
170
- }
171
- },
172
- "node_modules/@babel/helper-string-parser": {
173
- "version": "7.27.1",
174
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz",
175
- "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==",
176
- "dev": true,
177
- "engines": {
178
- "node": ">=6.9.0"
179
- }
180
- },
181
- "node_modules/@babel/helper-validator-identifier": {
182
- "version": "7.27.1",
183
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.27.1.tgz",
184
- "integrity": "sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==",
185
- "dev": true,
186
- "engines": {
187
- "node": ">=6.9.0"
188
- }
189
- },
190
- "node_modules/@babel/helper-validator-option": {
191
- "version": "7.27.1",
192
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz",
193
- "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==",
194
- "dev": true,
195
- "engines": {
196
- "node": ">=6.9.0"
197
- }
198
- },
199
- "node_modules/@babel/helpers": {
200
- "version": "7.28.2",
201
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.2.tgz",
202
- "integrity": "sha512-/V9771t+EgXz62aCcyofnQhGM8DQACbRhvzKFsXKC9QM+5MadF8ZmIm0crDMaz3+o0h0zXfJnd4EhbYbxsrcFw==",
203
- "dev": true,
204
- "dependencies": {
205
- "@babel/template": "^7.27.2",
206
- "@babel/types": "^7.28.2"
207
- },
208
- "engines": {
209
- "node": ">=6.9.0"
210
- }
211
- },
212
- "node_modules/@babel/parser": {
213
- "version": "7.28.0",
214
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.28.0.tgz",
215
- "integrity": "sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==",
216
- "dev": true,
217
- "dependencies": {
218
- "@babel/types": "^7.28.0"
219
- },
220
- "bin": {
221
- "parser": "bin/babel-parser.js"
222
- },
223
- "engines": {
224
- "node": ">=6.0.0"
225
- }
226
- },
227
- "node_modules/@babel/plugin-transform-react-jsx-self": {
228
- "version": "7.27.1",
229
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz",
230
- "integrity": "sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==",
231
- "dev": true,
232
- "dependencies": {
233
- "@babel/helper-plugin-utils": "^7.27.1"
234
- },
235
- "engines": {
236
- "node": ">=6.9.0"
237
- },
238
- "peerDependencies": {
239
- "@babel/core": "^7.0.0-0"
240
- }
241
- },
242
- "node_modules/@babel/plugin-transform-react-jsx-source": {
243
- "version": "7.27.1",
244
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.27.1.tgz",
245
- "integrity": "sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==",
246
- "dev": true,
247
- "dependencies": {
248
- "@babel/helper-plugin-utils": "^7.27.1"
249
- },
250
- "engines": {
251
- "node": ">=6.9.0"
252
- },
253
- "peerDependencies": {
254
- "@babel/core": "^7.0.0-0"
255
- }
256
- },
257
- "node_modules/@babel/template": {
258
- "version": "7.27.2",
259
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.27.2.tgz",
260
- "integrity": "sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==",
261
- "dev": true,
262
- "dependencies": {
263
- "@babel/code-frame": "^7.27.1",
264
- "@babel/parser": "^7.27.2",
265
- "@babel/types": "^7.27.1"
266
- },
267
- "engines": {
268
- "node": ">=6.9.0"
269
- }
270
- },
271
- "node_modules/@babel/traverse": {
272
- "version": "7.28.0",
273
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.0.tgz",
274
- "integrity": "sha512-mGe7UK5wWyh0bKRfupsUchrQGqvDbZDbKJw+kcRGSmdHVYrv+ltd0pnpDTVpiTqnaBru9iEvA8pz8W46v0Amwg==",
275
- "dev": true,
276
- "dependencies": {
277
- "@babel/code-frame": "^7.27.1",
278
- "@babel/generator": "^7.28.0",
279
- "@babel/helper-globals": "^7.28.0",
280
- "@babel/parser": "^7.28.0",
281
- "@babel/template": "^7.27.2",
282
- "@babel/types": "^7.28.0",
283
- "debug": "^4.3.1"
284
- },
285
- "engines": {
286
- "node": ">=6.9.0"
287
- }
288
- },
289
- "node_modules/@babel/types": {
290
- "version": "7.28.2",
291
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.28.2.tgz",
292
- "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==",
293
- "dev": true,
294
- "dependencies": {
295
- "@babel/helper-string-parser": "^7.27.1",
296
- "@babel/helper-validator-identifier": "^7.27.1"
297
- },
298
- "engines": {
299
- "node": ">=6.9.0"
300
- }
301
- },
302
- "node_modules/@esbuild/aix-ppc64": {
303
- "version": "0.21.5",
304
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
305
- "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
306
- "cpu": [
307
- "ppc64"
308
- ],
309
- "dev": true,
310
- "optional": true,
311
- "os": [
312
- "aix"
313
- ],
314
- "engines": {
315
- "node": ">=12"
316
- }
317
- },
318
- "node_modules/@esbuild/android-arm": {
319
- "version": "0.21.5",
320
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
321
- "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
322
- "cpu": [
323
- "arm"
324
- ],
325
- "dev": true,
326
- "optional": true,
327
- "os": [
328
- "android"
329
- ],
330
- "engines": {
331
- "node": ">=12"
332
- }
333
- },
334
- "node_modules/@esbuild/android-arm64": {
335
- "version": "0.21.5",
336
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
337
- "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
338
- "cpu": [
339
- "arm64"
340
- ],
341
- "dev": true,
342
- "optional": true,
343
- "os": [
344
- "android"
345
- ],
346
- "engines": {
347
- "node": ">=12"
348
- }
349
- },
350
- "node_modules/@esbuild/android-x64": {
351
- "version": "0.21.5",
352
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
353
- "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
354
- "cpu": [
355
- "x64"
356
- ],
357
- "dev": true,
358
- "optional": true,
359
- "os": [
360
- "android"
361
- ],
362
- "engines": {
363
- "node": ">=12"
364
- }
365
- },
366
- "node_modules/@esbuild/darwin-arm64": {
367
- "version": "0.21.5",
368
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
369
- "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
370
- "cpu": [
371
- "arm64"
372
- ],
373
- "dev": true,
374
- "optional": true,
375
- "os": [
376
- "darwin"
377
- ],
378
- "engines": {
379
- "node": ">=12"
380
- }
381
- },
382
- "node_modules/@esbuild/darwin-x64": {
383
- "version": "0.21.5",
384
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
385
- "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
386
- "cpu": [
387
- "x64"
388
- ],
389
- "dev": true,
390
- "optional": true,
391
- "os": [
392
- "darwin"
393
- ],
394
- "engines": {
395
- "node": ">=12"
396
- }
397
- },
398
- "node_modules/@esbuild/freebsd-arm64": {
399
- "version": "0.21.5",
400
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
401
- "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
402
- "cpu": [
403
- "arm64"
404
- ],
405
- "dev": true,
406
- "optional": true,
407
- "os": [
408
- "freebsd"
409
- ],
410
- "engines": {
411
- "node": ">=12"
412
- }
413
- },
414
- "node_modules/@esbuild/freebsd-x64": {
415
- "version": "0.21.5",
416
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
417
- "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
418
- "cpu": [
419
- "x64"
420
- ],
421
- "dev": true,
422
- "optional": true,
423
- "os": [
424
- "freebsd"
425
- ],
426
- "engines": {
427
- "node": ">=12"
428
- }
429
- },
430
- "node_modules/@esbuild/linux-arm": {
431
- "version": "0.21.5",
432
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
433
- "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
434
- "cpu": [
435
- "arm"
436
- ],
437
- "dev": true,
438
- "optional": true,
439
- "os": [
440
- "linux"
441
- ],
442
- "engines": {
443
- "node": ">=12"
444
- }
445
- },
446
- "node_modules/@esbuild/linux-arm64": {
447
- "version": "0.21.5",
448
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
449
- "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
450
- "cpu": [
451
- "arm64"
452
- ],
453
- "dev": true,
454
- "optional": true,
455
- "os": [
456
- "linux"
457
- ],
458
- "engines": {
459
- "node": ">=12"
460
- }
461
- },
462
- "node_modules/@esbuild/linux-ia32": {
463
- "version": "0.21.5",
464
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
465
- "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
466
- "cpu": [
467
- "ia32"
468
- ],
469
- "dev": true,
470
- "optional": true,
471
- "os": [
472
- "linux"
473
- ],
474
- "engines": {
475
- "node": ">=12"
476
- }
477
- },
478
- "node_modules/@esbuild/linux-loong64": {
479
- "version": "0.21.5",
480
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
481
- "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
482
- "cpu": [
483
- "loong64"
484
- ],
485
- "dev": true,
486
- "optional": true,
487
- "os": [
488
- "linux"
489
- ],
490
- "engines": {
491
- "node": ">=12"
492
- }
493
- },
494
- "node_modules/@esbuild/linux-mips64el": {
495
- "version": "0.21.5",
496
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
497
- "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
498
- "cpu": [
499
- "mips64el"
500
- ],
501
- "dev": true,
502
- "optional": true,
503
- "os": [
504
- "linux"
505
- ],
506
- "engines": {
507
- "node": ">=12"
508
- }
509
- },
510
- "node_modules/@esbuild/linux-ppc64": {
511
- "version": "0.21.5",
512
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
513
- "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
514
- "cpu": [
515
- "ppc64"
516
- ],
517
- "dev": true,
518
- "optional": true,
519
- "os": [
520
- "linux"
521
- ],
522
- "engines": {
523
- "node": ">=12"
524
- }
525
- },
526
- "node_modules/@esbuild/linux-riscv64": {
527
- "version": "0.21.5",
528
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
529
- "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
530
- "cpu": [
531
- "riscv64"
532
- ],
533
- "dev": true,
534
- "optional": true,
535
- "os": [
536
- "linux"
537
- ],
538
- "engines": {
539
- "node": ">=12"
540
- }
541
- },
542
- "node_modules/@esbuild/linux-s390x": {
543
- "version": "0.21.5",
544
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
545
- "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
546
- "cpu": [
547
- "s390x"
548
- ],
549
- "dev": true,
550
- "optional": true,
551
- "os": [
552
- "linux"
553
- ],
554
- "engines": {
555
- "node": ">=12"
556
- }
557
- },
558
- "node_modules/@esbuild/linux-x64": {
559
- "version": "0.21.5",
560
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
561
- "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
562
- "cpu": [
563
- "x64"
564
- ],
565
- "dev": true,
566
- "optional": true,
567
- "os": [
568
- "linux"
569
- ],
570
- "engines": {
571
- "node": ">=12"
572
- }
573
- },
574
- "node_modules/@esbuild/netbsd-x64": {
575
- "version": "0.21.5",
576
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
577
- "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
578
- "cpu": [
579
- "x64"
580
- ],
581
- "dev": true,
582
- "optional": true,
583
- "os": [
584
- "netbsd"
585
- ],
586
- "engines": {
587
- "node": ">=12"
588
- }
589
- },
590
- "node_modules/@esbuild/openbsd-x64": {
591
- "version": "0.21.5",
592
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
593
- "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
594
- "cpu": [
595
- "x64"
596
- ],
597
- "dev": true,
598
- "optional": true,
599
- "os": [
600
- "openbsd"
601
- ],
602
- "engines": {
603
- "node": ">=12"
604
- }
605
- },
606
- "node_modules/@esbuild/sunos-x64": {
607
- "version": "0.21.5",
608
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
609
- "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
610
- "cpu": [
611
- "x64"
612
- ],
613
- "dev": true,
614
- "optional": true,
615
- "os": [
616
- "sunos"
617
- ],
618
- "engines": {
619
- "node": ">=12"
620
- }
621
- },
622
- "node_modules/@esbuild/win32-arm64": {
623
- "version": "0.21.5",
624
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
625
- "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
626
- "cpu": [
627
- "arm64"
628
- ],
629
- "dev": true,
630
- "optional": true,
631
- "os": [
632
- "win32"
633
- ],
634
- "engines": {
635
- "node": ">=12"
636
- }
637
- },
638
- "node_modules/@esbuild/win32-ia32": {
639
- "version": "0.21.5",
640
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
641
- "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
642
- "cpu": [
643
- "ia32"
644
- ],
645
- "dev": true,
646
- "optional": true,
647
- "os": [
648
- "win32"
649
- ],
650
- "engines": {
651
- "node": ">=12"
652
- }
653
- },
654
- "node_modules/@esbuild/win32-x64": {
655
- "version": "0.21.5",
656
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
657
- "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
658
- "cpu": [
659
- "x64"
660
- ],
661
- "dev": true,
662
- "optional": true,
663
- "os": [
664
- "win32"
665
- ],
666
- "engines": {
667
- "node": ">=12"
668
- }
669
- },
670
- "node_modules/@jridgewell/gen-mapping": {
671
- "version": "0.3.12",
672
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.12.tgz",
673
- "integrity": "sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==",
674
- "dev": true,
675
- "dependencies": {
676
- "@jridgewell/sourcemap-codec": "^1.5.0",
677
- "@jridgewell/trace-mapping": "^0.3.24"
678
- }
679
- },
680
- "node_modules/@jridgewell/resolve-uri": {
681
- "version": "3.1.2",
682
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
683
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
684
- "dev": true,
685
- "engines": {
686
- "node": ">=6.0.0"
687
- }
688
- },
689
- "node_modules/@jridgewell/sourcemap-codec": {
690
- "version": "1.5.4",
691
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.4.tgz",
692
- "integrity": "sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==",
693
- "dev": true
694
- },
695
- "node_modules/@jridgewell/trace-mapping": {
696
- "version": "0.3.29",
697
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.29.tgz",
698
- "integrity": "sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==",
699
- "dev": true,
700
- "dependencies": {
701
- "@jridgewell/resolve-uri": "^3.1.0",
702
- "@jridgewell/sourcemap-codec": "^1.4.14"
703
- }
704
- },
705
- "node_modules/@rolldown/pluginutils": {
706
- "version": "1.0.0-beta.27",
707
- "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.27.tgz",
708
- "integrity": "sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==",
709
- "dev": true
710
- },
711
- "node_modules/@rollup/rollup-android-arm-eabi": {
712
- "version": "4.46.1",
713
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.46.1.tgz",
714
- "integrity": "sha512-oENme6QxtLCqjChRUUo3S6X8hjCXnWmJWnedD7VbGML5GUtaOtAyx+fEEXnBXVf0CBZApMQU0Idwi0FmyxzQhw==",
715
- "cpu": [
716
- "arm"
717
- ],
718
- "dev": true,
719
- "optional": true,
720
- "os": [
721
- "android"
722
- ]
723
- },
724
- "node_modules/@rollup/rollup-android-arm64": {
725
- "version": "4.46.1",
726
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.46.1.tgz",
727
- "integrity": "sha512-OikvNT3qYTl9+4qQ9Bpn6+XHM+ogtFadRLuT2EXiFQMiNkXFLQfNVppi5o28wvYdHL2s3fM0D/MZJ8UkNFZWsw==",
728
- "cpu": [
729
- "arm64"
730
- ],
731
- "dev": true,
732
- "optional": true,
733
- "os": [
734
- "android"
735
- ]
736
- },
737
- "node_modules/@rollup/rollup-darwin-arm64": {
738
- "version": "4.46.1",
739
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.46.1.tgz",
740
- "integrity": "sha512-EFYNNGij2WllnzljQDQnlFTXzSJw87cpAs4TVBAWLdkvic5Uh5tISrIL6NRcxoh/b2EFBG/TK8hgRrGx94zD4A==",
741
- "cpu": [
742
- "arm64"
743
- ],
744
- "dev": true,
745
- "optional": true,
746
- "os": [
747
- "darwin"
748
- ]
749
- },
750
- "node_modules/@rollup/rollup-darwin-x64": {
751
- "version": "4.46.1",
752
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.46.1.tgz",
753
- "integrity": "sha512-ZaNH06O1KeTug9WI2+GRBE5Ujt9kZw4a1+OIwnBHal92I8PxSsl5KpsrPvthRynkhMck4XPdvY0z26Cym/b7oA==",
754
- "cpu": [
755
- "x64"
756
- ],
757
- "dev": true,
758
- "optional": true,
759
- "os": [
760
- "darwin"
761
- ]
762
- },
763
- "node_modules/@rollup/rollup-freebsd-arm64": {
764
- "version": "4.46.1",
765
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.46.1.tgz",
766
- "integrity": "sha512-n4SLVebZP8uUlJ2r04+g2U/xFeiQlw09Me5UFqny8HGbARl503LNH5CqFTb5U5jNxTouhRjai6qPT0CR5c/Iig==",
767
- "cpu": [
768
- "arm64"
769
- ],
770
- "dev": true,
771
- "optional": true,
772
- "os": [
773
- "freebsd"
774
- ]
775
- },
776
- "node_modules/@rollup/rollup-freebsd-x64": {
777
- "version": "4.46.1",
778
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.46.1.tgz",
779
- "integrity": "sha512-8vu9c02F16heTqpvo3yeiu7Vi1REDEC/yES/dIfq3tSXe6mLndiwvYr3AAvd1tMNUqE9yeGYa5w7PRbI5QUV+w==",
780
- "cpu": [
781
- "x64"
782
- ],
783
- "dev": true,
784
- "optional": true,
785
- "os": [
786
- "freebsd"
787
- ]
788
- },
789
- "node_modules/@rollup/rollup-linux-arm-gnueabihf": {
790
- "version": "4.46.1",
791
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.46.1.tgz",
792
- "integrity": "sha512-K4ncpWl7sQuyp6rWiGUvb6Q18ba8mzM0rjWJ5JgYKlIXAau1db7hZnR0ldJvqKWWJDxqzSLwGUhA4jp+KqgDtQ==",
793
- "cpu": [
794
- "arm"
795
- ],
796
- "dev": true,
797
- "optional": true,
798
- "os": [
799
- "linux"
800
- ]
801
- },
802
- "node_modules/@rollup/rollup-linux-arm-musleabihf": {
803
- "version": "4.46.1",
804
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.46.1.tgz",
805
- "integrity": "sha512-YykPnXsjUjmXE6j6k2QBBGAn1YsJUix7pYaPLK3RVE0bQL2jfdbfykPxfF8AgBlqtYbfEnYHmLXNa6QETjdOjQ==",
806
- "cpu": [
807
- "arm"
808
- ],
809
- "dev": true,
810
- "optional": true,
811
- "os": [
812
- "linux"
813
- ]
814
- },
815
- "node_modules/@rollup/rollup-linux-arm64-gnu": {
816
- "version": "4.46.1",
817
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.46.1.tgz",
818
- "integrity": "sha512-kKvqBGbZ8i9pCGW3a1FH3HNIVg49dXXTsChGFsHGXQaVJPLA4f/O+XmTxfklhccxdF5FefUn2hvkoGJH0ScWOA==",
819
- "cpu": [
820
- "arm64"
821
- ],
822
- "dev": true,
823
- "optional": true,
824
- "os": [
825
- "linux"
826
- ]
827
- },
828
- "node_modules/@rollup/rollup-linux-arm64-musl": {
829
- "version": "4.46.1",
830
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.46.1.tgz",
831
- "integrity": "sha512-zzX5nTw1N1plmqC9RGC9vZHFuiM7ZP7oSWQGqpbmfjK7p947D518cVK1/MQudsBdcD84t6k70WNczJOct6+hdg==",
832
- "cpu": [
833
- "arm64"
834
- ],
835
- "dev": true,
836
- "optional": true,
837
- "os": [
838
- "linux"
839
- ]
840
- },
841
- "node_modules/@rollup/rollup-linux-loongarch64-gnu": {
842
- "version": "4.46.1",
843
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.46.1.tgz",
844
- "integrity": "sha512-O8CwgSBo6ewPpktFfSDgB6SJN9XDcPSvuwxfejiddbIC/hn9Tg6Ai0f0eYDf3XvB/+PIWzOQL+7+TZoB8p9Yuw==",
845
- "cpu": [
846
- "loong64"
847
- ],
848
- "dev": true,
849
- "optional": true,
850
- "os": [
851
- "linux"
852
- ]
853
- },
854
- "node_modules/@rollup/rollup-linux-ppc64-gnu": {
855
- "version": "4.46.1",
856
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.46.1.tgz",
857
- "integrity": "sha512-JnCfFVEKeq6G3h3z8e60kAp8Rd7QVnWCtPm7cxx+5OtP80g/3nmPtfdCXbVl063e3KsRnGSKDHUQMydmzc/wBA==",
858
- "cpu": [
859
- "ppc64"
860
- ],
861
- "dev": true,
862
- "optional": true,
863
- "os": [
864
- "linux"
865
- ]
866
- },
867
- "node_modules/@rollup/rollup-linux-riscv64-gnu": {
868
- "version": "4.46.1",
869
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.46.1.tgz",
870
- "integrity": "sha512-dVxuDqS237eQXkbYzQQfdf/njgeNw6LZuVyEdUaWwRpKHhsLI+y4H/NJV8xJGU19vnOJCVwaBFgr936FHOnJsQ==",
871
- "cpu": [
872
- "riscv64"
873
- ],
874
- "dev": true,
875
- "optional": true,
876
- "os": [
877
- "linux"
878
- ]
879
- },
880
- "node_modules/@rollup/rollup-linux-riscv64-musl": {
881
- "version": "4.46.1",
882
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.46.1.tgz",
883
- "integrity": "sha512-CvvgNl2hrZrTR9jXK1ye0Go0HQRT6ohQdDfWR47/KFKiLd5oN5T14jRdUVGF4tnsN8y9oSfMOqH6RuHh+ck8+w==",
884
- "cpu": [
885
- "riscv64"
886
- ],
887
- "dev": true,
888
- "optional": true,
889
- "os": [
890
- "linux"
891
- ]
892
- },
893
- "node_modules/@rollup/rollup-linux-s390x-gnu": {
894
- "version": "4.46.1",
895
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.46.1.tgz",
896
- "integrity": "sha512-x7ANt2VOg2565oGHJ6rIuuAon+A8sfe1IeUx25IKqi49OjSr/K3awoNqr9gCwGEJo9OuXlOn+H2p1VJKx1psxA==",
897
- "cpu": [
898
- "s390x"
899
- ],
900
- "dev": true,
901
- "optional": true,
902
- "os": [
903
- "linux"
904
- ]
905
- },
906
- "node_modules/@rollup/rollup-linux-x64-gnu": {
907
- "version": "4.46.1",
908
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.46.1.tgz",
909
- "integrity": "sha512-9OADZYryz/7E8/qt0vnaHQgmia2Y0wrjSSn1V/uL+zw/i7NUhxbX4cHXdEQ7dnJgzYDS81d8+tf6nbIdRFZQoQ==",
910
- "cpu": [
911
- "x64"
912
- ],
913
- "dev": true,
914
- "optional": true,
915
- "os": [
916
- "linux"
917
- ]
918
- },
919
- "node_modules/@rollup/rollup-linux-x64-musl": {
920
- "version": "4.46.1",
921
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.46.1.tgz",
922
- "integrity": "sha512-NuvSCbXEKY+NGWHyivzbjSVJi68Xfq1VnIvGmsuXs6TCtveeoDRKutI5vf2ntmNnVq64Q4zInet0UDQ+yMB6tA==",
923
- "cpu": [
924
- "x64"
925
- ],
926
- "dev": true,
927
- "optional": true,
928
- "os": [
929
- "linux"
930
- ]
931
- },
932
- "node_modules/@rollup/rollup-win32-arm64-msvc": {
933
- "version": "4.46.1",
934
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.46.1.tgz",
935
- "integrity": "sha512-mWz+6FSRb82xuUMMV1X3NGiaPFqbLN9aIueHleTZCc46cJvwTlvIh7reQLk4p97dv0nddyewBhwzryBHH7wtPw==",
936
- "cpu": [
937
- "arm64"
938
- ],
939
- "dev": true,
940
- "optional": true,
941
- "os": [
942
- "win32"
943
- ]
944
- },
945
- "node_modules/@rollup/rollup-win32-ia32-msvc": {
946
- "version": "4.46.1",
947
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.46.1.tgz",
948
- "integrity": "sha512-7Thzy9TMXDw9AU4f4vsLNBxh7/VOKuXi73VH3d/kHGr0tZ3x/ewgL9uC7ojUKmH1/zvmZe2tLapYcZllk3SO8Q==",
949
- "cpu": [
950
- "ia32"
951
- ],
952
- "dev": true,
953
- "optional": true,
954
- "os": [
955
- "win32"
956
- ]
957
- },
958
- "node_modules/@rollup/rollup-win32-x64-msvc": {
959
- "version": "4.46.1",
960
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.46.1.tgz",
961
- "integrity": "sha512-7GVB4luhFmGUNXXJhH2jJwZCFB3pIOixv2E3s17GQHBFUOQaISlt7aGcQgqvCaDSxTZJUzlK/QJ1FN8S94MrzQ==",
962
- "cpu": [
963
- "x64"
964
- ],
965
- "dev": true,
966
- "optional": true,
967
- "os": [
968
- "win32"
969
- ]
970
- },
971
- "node_modules/@types/babel__core": {
972
- "version": "7.20.5",
973
- "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz",
974
- "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==",
975
- "dev": true,
976
- "dependencies": {
977
- "@babel/parser": "^7.20.7",
978
- "@babel/types": "^7.20.7",
979
- "@types/babel__generator": "*",
980
- "@types/babel__template": "*",
981
- "@types/babel__traverse": "*"
982
- }
983
- },
984
- "node_modules/@types/babel__generator": {
985
- "version": "7.27.0",
986
- "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz",
987
- "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==",
988
- "dev": true,
989
- "dependencies": {
990
- "@babel/types": "^7.0.0"
991
- }
992
- },
993
- "node_modules/@types/babel__template": {
994
- "version": "7.4.4",
995
- "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz",
996
- "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==",
997
- "dev": true,
998
- "dependencies": {
999
- "@babel/parser": "^7.1.0",
1000
- "@babel/types": "^7.0.0"
1001
- }
1002
- },
1003
- "node_modules/@types/babel__traverse": {
1004
- "version": "7.20.7",
1005
- "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.7.tgz",
1006
- "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==",
1007
- "dev": true,
1008
- "dependencies": {
1009
- "@babel/types": "^7.20.7"
1010
- }
1011
- },
1012
- "node_modules/@types/chrome": {
1013
- "version": "0.0.315",
1014
- "resolved": "https://registry.npmjs.org/@types/chrome/-/chrome-0.0.315.tgz",
1015
- "integrity": "sha512-Oy1dYWkr6BCmgwBtOngLByCHstQ3whltZg7/7lubgIZEYvKobDneqplgc6LKERNRBwckFviV4UU5AZZNUFrJ4A==",
1016
- "dev": true,
1017
- "dependencies": {
1018
- "@types/filesystem": "*",
1019
- "@types/har-format": "*"
1020
- }
1021
- },
1022
- "node_modules/@types/estree": {
1023
- "version": "1.0.8",
1024
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz",
1025
- "integrity": "sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==",
1026
- "dev": true
1027
- },
1028
- "node_modules/@types/filesystem": {
1029
- "version": "0.0.36",
1030
- "resolved": "https://registry.npmjs.org/@types/filesystem/-/filesystem-0.0.36.tgz",
1031
- "integrity": "sha512-vPDXOZuannb9FZdxgHnqSwAG/jvdGM8Wq+6N4D/d80z+D4HWH+bItqsZaVRQykAn6WEVeEkLm2oQigyHtgb0RA==",
1032
- "dev": true,
1033
- "dependencies": {
1034
- "@types/filewriter": "*"
1035
- }
1036
- },
1037
- "node_modules/@types/filewriter": {
1038
- "version": "0.0.33",
1039
- "resolved": "https://registry.npmjs.org/@types/filewriter/-/filewriter-0.0.33.tgz",
1040
- "integrity": "sha512-xFU8ZXTw4gd358lb2jw25nxY9QAgqn2+bKKjKOYfNCzN4DKCFetK7sPtrlpg66Ywe3vWY9FNxprZawAh9wfJ3g==",
1041
- "dev": true
1042
- },
1043
- "node_modules/@types/har-format": {
1044
- "version": "1.2.16",
1045
- "resolved": "https://registry.npmjs.org/@types/har-format/-/har-format-1.2.16.tgz",
1046
- "integrity": "sha512-fluxdy7ryD3MV6h8pTfTYpy/xQzCFC7m89nOH9y94cNqJ1mDIDPut7MnRHI3F6qRmh/cT2fUjG1MLdCNb4hE9A==",
1047
- "dev": true
1048
- },
1049
- "node_modules/@types/prop-types": {
1050
- "version": "15.7.15",
1051
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz",
1052
- "integrity": "sha512-F6bEyamV9jKGAFBEmlQnesRPGOQqS2+Uwi0Em15xenOxHaf2hv6L8YCVn3rPdPJOiJfPiCnLIRyvwVaqMY3MIw==",
1053
- "dev": true
1054
- },
1055
- "node_modules/@types/react": {
1056
- "version": "18.3.23",
1057
- "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.23.tgz",
1058
- "integrity": "sha512-/LDXMQh55EzZQ0uVAZmKKhfENivEvWz6E+EYzh+/MCjMhNsotd+ZHhBGIjFDTi6+fz0OhQQQLbTgdQIxxCsC0w==",
1059
- "dev": true,
1060
- "dependencies": {
1061
- "@types/prop-types": "*",
1062
- "csstype": "^3.0.2"
1063
- }
1064
- },
1065
- "node_modules/@types/react-dom": {
1066
- "version": "18.3.7",
1067
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.7.tgz",
1068
- "integrity": "sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==",
1069
- "dev": true,
1070
- "peerDependencies": {
1071
- "@types/react": "^18.0.0"
1072
- }
1073
- },
1074
- "node_modules/@vitejs/plugin-react": {
1075
- "version": "4.7.0",
1076
- "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.7.0.tgz",
1077
- "integrity": "sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==",
1078
- "dev": true,
1079
- "dependencies": {
1080
- "@babel/core": "^7.28.0",
1081
- "@babel/plugin-transform-react-jsx-self": "^7.27.1",
1082
- "@babel/plugin-transform-react-jsx-source": "^7.27.1",
1083
- "@rolldown/pluginutils": "1.0.0-beta.27",
1084
- "@types/babel__core": "^7.20.5",
1085
- "react-refresh": "^0.17.0"
1086
- },
1087
- "engines": {
1088
- "node": "^14.18.0 || >=16.0.0"
1089
- },
1090
- "peerDependencies": {
1091
- "vite": "^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0"
1092
- }
1093
- },
1094
- "node_modules/anymatch": {
1095
- "version": "3.1.3",
1096
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
1097
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
1098
- "dev": true,
1099
- "license": "ISC",
1100
- "dependencies": {
1101
- "normalize-path": "^3.0.0",
1102
- "picomatch": "^2.0.4"
1103
- },
1104
- "engines": {
1105
- "node": ">= 8"
1106
- }
1107
- },
1108
- "node_modules/binary-extensions": {
1109
- "version": "2.3.0",
1110
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
1111
- "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
1112
- "dev": true,
1113
- "license": "MIT",
1114
- "engines": {
1115
- "node": ">=8"
1116
- },
1117
- "funding": {
1118
- "url": "https://github.com/sponsors/sindresorhus"
1119
- }
1120
- },
1121
- "node_modules/braces": {
1122
- "version": "3.0.3",
1123
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
1124
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
1125
- "dev": true,
1126
- "license": "MIT",
1127
- "dependencies": {
1128
- "fill-range": "^7.1.1"
1129
- },
1130
- "engines": {
1131
- "node": ">=8"
1132
- }
1133
- },
1134
- "node_modules/browserslist": {
1135
- "version": "4.25.1",
1136
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.25.1.tgz",
1137
- "integrity": "sha512-KGj0KoOMXLpSNkkEI6Z6mShmQy0bc1I+T7K9N81k4WWMrfz+6fQ6es80B/YLAeRoKvjYE1YSHHOW1qe9xIVzHw==",
1138
- "dev": true,
1139
- "funding": [
1140
- {
1141
- "type": "opencollective",
1142
- "url": "https://opencollective.com/browserslist"
1143
- },
1144
- {
1145
- "type": "tidelift",
1146
- "url": "https://tidelift.com/funding/github/npm/browserslist"
1147
- },
1148
- {
1149
- "type": "github",
1150
- "url": "https://github.com/sponsors/ai"
1151
- }
1152
- ],
1153
- "dependencies": {
1154
- "caniuse-lite": "^1.0.30001726",
1155
- "electron-to-chromium": "^1.5.173",
1156
- "node-releases": "^2.0.19",
1157
- "update-browserslist-db": "^1.1.3"
1158
- },
1159
- "bin": {
1160
- "browserslist": "cli.js"
1161
- },
1162
- "engines": {
1163
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
1164
- }
1165
- },
1166
- "node_modules/caniuse-lite": {
1167
- "version": "1.0.30001727",
1168
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz",
1169
- "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==",
1170
- "dev": true,
1171
- "funding": [
1172
- {
1173
- "type": "opencollective",
1174
- "url": "https://opencollective.com/browserslist"
1175
- },
1176
- {
1177
- "type": "tidelift",
1178
- "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
1179
- },
1180
- {
1181
- "type": "github",
1182
- "url": "https://github.com/sponsors/ai"
1183
- }
1184
- ]
1185
- },
1186
- "node_modules/chokidar": {
1187
- "version": "3.6.0",
1188
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
1189
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
1190
- "dev": true,
1191
- "license": "MIT",
1192
- "dependencies": {
1193
- "anymatch": "~3.1.2",
1194
- "braces": "~3.0.2",
1195
- "glob-parent": "~5.1.2",
1196
- "is-binary-path": "~2.1.0",
1197
- "is-glob": "~4.0.1",
1198
- "normalize-path": "~3.0.0",
1199
- "readdirp": "~3.6.0"
1200
- },
1201
- "engines": {
1202
- "node": ">= 8.10.0"
1203
- },
1204
- "funding": {
1205
- "url": "https://paulmillr.com/funding/"
1206
- },
1207
- "optionalDependencies": {
1208
- "fsevents": "~2.3.2"
1209
- }
1210
- },
1211
- "node_modules/convert-source-map": {
1212
- "version": "2.0.0",
1213
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
1214
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
1215
- "dev": true
1216
- },
1217
- "node_modules/csstype": {
1218
- "version": "3.1.3",
1219
- "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
1220
- "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
1221
- "dev": true
1222
- },
1223
- "node_modules/debug": {
1224
- "version": "4.4.1",
1225
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz",
1226
- "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==",
1227
- "dev": true,
1228
- "dependencies": {
1229
- "ms": "^2.1.3"
1230
- },
1231
- "engines": {
1232
- "node": ">=6.0"
1233
- },
1234
- "peerDependenciesMeta": {
1235
- "supports-color": {
1236
- "optional": true
1237
- }
1238
- }
1239
- },
1240
- "node_modules/electron-to-chromium": {
1241
- "version": "1.5.192",
1242
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.192.tgz",
1243
- "integrity": "sha512-rP8Ez0w7UNw/9j5eSXCe10o1g/8B1P5SM90PCCMVkIRQn2R0LEHWz4Eh9RnxkniuDe1W0cTSOB3MLlkTGDcuCg==",
1244
- "dev": true
1245
- },
1246
- "node_modules/esbuild": {
1247
- "version": "0.21.5",
1248
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
1249
- "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
1250
- "dev": true,
1251
- "hasInstallScript": true,
1252
- "bin": {
1253
- "esbuild": "bin/esbuild"
1254
- },
1255
- "engines": {
1256
- "node": ">=12"
1257
- },
1258
- "optionalDependencies": {
1259
- "@esbuild/aix-ppc64": "0.21.5",
1260
- "@esbuild/android-arm": "0.21.5",
1261
- "@esbuild/android-arm64": "0.21.5",
1262
- "@esbuild/android-x64": "0.21.5",
1263
- "@esbuild/darwin-arm64": "0.21.5",
1264
- "@esbuild/darwin-x64": "0.21.5",
1265
- "@esbuild/freebsd-arm64": "0.21.5",
1266
- "@esbuild/freebsd-x64": "0.21.5",
1267
- "@esbuild/linux-arm": "0.21.5",
1268
- "@esbuild/linux-arm64": "0.21.5",
1269
- "@esbuild/linux-ia32": "0.21.5",
1270
- "@esbuild/linux-loong64": "0.21.5",
1271
- "@esbuild/linux-mips64el": "0.21.5",
1272
- "@esbuild/linux-ppc64": "0.21.5",
1273
- "@esbuild/linux-riscv64": "0.21.5",
1274
- "@esbuild/linux-s390x": "0.21.5",
1275
- "@esbuild/linux-x64": "0.21.5",
1276
- "@esbuild/netbsd-x64": "0.21.5",
1277
- "@esbuild/openbsd-x64": "0.21.5",
1278
- "@esbuild/sunos-x64": "0.21.5",
1279
- "@esbuild/win32-arm64": "0.21.5",
1280
- "@esbuild/win32-ia32": "0.21.5",
1281
- "@esbuild/win32-x64": "0.21.5"
1282
- }
1283
- },
1284
- "node_modules/escalade": {
1285
- "version": "3.2.0",
1286
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
1287
- "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
1288
- "dev": true,
1289
- "engines": {
1290
- "node": ">=6"
1291
- }
1292
- },
1293
- "node_modules/fill-range": {
1294
- "version": "7.1.1",
1295
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
1296
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
1297
- "dev": true,
1298
- "license": "MIT",
1299
- "dependencies": {
1300
- "to-regex-range": "^5.0.1"
1301
- },
1302
- "engines": {
1303
- "node": ">=8"
1304
- }
1305
- },
1306
- "node_modules/fs-extra": {
1307
- "version": "11.3.0",
1308
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.0.tgz",
1309
- "integrity": "sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==",
1310
- "dev": true,
1311
- "license": "MIT",
1312
- "dependencies": {
1313
- "graceful-fs": "^4.2.0",
1314
- "jsonfile": "^6.0.1",
1315
- "universalify": "^2.0.0"
1316
- },
1317
- "engines": {
1318
- "node": ">=14.14"
1319
- }
1320
- },
1321
- "node_modules/fsevents": {
1322
- "version": "2.3.3",
1323
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
1324
- "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
1325
- "dev": true,
1326
- "hasInstallScript": true,
1327
- "optional": true,
1328
- "os": [
1329
- "darwin"
1330
- ],
1331
- "engines": {
1332
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
1333
- }
1334
- },
1335
- "node_modules/gensync": {
1336
- "version": "1.0.0-beta.2",
1337
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
1338
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
1339
- "dev": true,
1340
- "engines": {
1341
- "node": ">=6.9.0"
1342
- }
1343
- },
1344
- "node_modules/glob-parent": {
1345
- "version": "5.1.2",
1346
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
1347
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
1348
- "dev": true,
1349
- "license": "ISC",
1350
- "dependencies": {
1351
- "is-glob": "^4.0.1"
1352
- },
1353
- "engines": {
1354
- "node": ">= 6"
1355
- }
1356
- },
1357
- "node_modules/graceful-fs": {
1358
- "version": "4.2.11",
1359
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
1360
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
1361
- "dev": true,
1362
- "license": "ISC"
1363
- },
1364
- "node_modules/is-binary-path": {
1365
- "version": "2.1.0",
1366
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
1367
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
1368
- "dev": true,
1369
- "license": "MIT",
1370
- "dependencies": {
1371
- "binary-extensions": "^2.0.0"
1372
- },
1373
- "engines": {
1374
- "node": ">=8"
1375
- }
1376
- },
1377
- "node_modules/is-extglob": {
1378
- "version": "2.1.1",
1379
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
1380
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
1381
- "dev": true,
1382
- "license": "MIT",
1383
- "engines": {
1384
- "node": ">=0.10.0"
1385
- }
1386
- },
1387
- "node_modules/is-glob": {
1388
- "version": "4.0.3",
1389
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
1390
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
1391
- "dev": true,
1392
- "license": "MIT",
1393
- "dependencies": {
1394
- "is-extglob": "^2.1.1"
1395
- },
1396
- "engines": {
1397
- "node": ">=0.10.0"
1398
- }
1399
- },
1400
- "node_modules/is-number": {
1401
- "version": "7.0.0",
1402
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
1403
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
1404
- "dev": true,
1405
- "license": "MIT",
1406
- "engines": {
1407
- "node": ">=0.12.0"
1408
- }
1409
- },
1410
- "node_modules/js-tokens": {
1411
- "version": "4.0.0",
1412
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
1413
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
1414
- "dev": true
1415
- },
1416
- "node_modules/jsesc": {
1417
- "version": "3.1.0",
1418
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz",
1419
- "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==",
1420
- "dev": true,
1421
- "bin": {
1422
- "jsesc": "bin/jsesc"
1423
- },
1424
- "engines": {
1425
- "node": ">=6"
1426
- }
1427
- },
1428
- "node_modules/json5": {
1429
- "version": "2.2.3",
1430
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
1431
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
1432
- "dev": true,
1433
- "bin": {
1434
- "json5": "lib/cli.js"
1435
- },
1436
- "engines": {
1437
- "node": ">=6"
1438
- }
1439
- },
1440
- "node_modules/jsonfile": {
1441
- "version": "6.1.0",
1442
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
1443
- "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
1444
- "dev": true,
1445
- "license": "MIT",
1446
- "dependencies": {
1447
- "universalify": "^2.0.0"
1448
- },
1449
- "optionalDependencies": {
1450
- "graceful-fs": "^4.1.6"
1451
- }
1452
- },
1453
- "node_modules/loose-envify": {
1454
- "version": "1.4.0",
1455
- "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
1456
- "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
1457
- "dev": true,
1458
- "dependencies": {
1459
- "js-tokens": "^3.0.0 || ^4.0.0"
1460
- },
1461
- "bin": {
1462
- "loose-envify": "cli.js"
1463
- }
1464
- },
1465
- "node_modules/lru-cache": {
1466
- "version": "5.1.1",
1467
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
1468
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
1469
- "dev": true,
1470
- "dependencies": {
1471
- "yallist": "^3.0.2"
1472
- }
1473
- },
1474
- "node_modules/ms": {
1475
- "version": "2.1.3",
1476
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
1477
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
1478
- "dev": true
1479
- },
1480
- "node_modules/nanoid": {
1481
- "version": "3.3.11",
1482
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
1483
- "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
1484
- "dev": true,
1485
- "funding": [
1486
- {
1487
- "type": "github",
1488
- "url": "https://github.com/sponsors/ai"
1489
- }
1490
- ],
1491
- "bin": {
1492
- "nanoid": "bin/nanoid.cjs"
1493
- },
1494
- "engines": {
1495
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
1496
- }
1497
- },
1498
- "node_modules/node-releases": {
1499
- "version": "2.0.19",
1500
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.19.tgz",
1501
- "integrity": "sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==",
1502
- "dev": true
1503
- },
1504
- "node_modules/normalize-path": {
1505
- "version": "3.0.0",
1506
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
1507
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
1508
- "dev": true,
1509
- "license": "MIT",
1510
- "engines": {
1511
- "node": ">=0.10.0"
1512
- }
1513
- },
1514
- "node_modules/p-map": {
1515
- "version": "7.0.3",
1516
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.3.tgz",
1517
- "integrity": "sha512-VkndIv2fIB99swvQoA65bm+fsmt6UNdGeIB0oxBs+WhAhdh08QA04JXpI7rbB9r08/nkbysKoya9rtDERYOYMA==",
1518
- "dev": true,
1519
- "license": "MIT",
1520
- "engines": {
1521
- "node": ">=18"
1522
- },
1523
- "funding": {
1524
- "url": "https://github.com/sponsors/sindresorhus"
1525
- }
1526
- },
1527
- "node_modules/picocolors": {
1528
- "version": "1.1.1",
1529
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
1530
- "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
1531
- "dev": true
1532
- },
1533
- "node_modules/picomatch": {
1534
- "version": "2.3.1",
1535
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
1536
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
1537
- "dev": true,
1538
- "license": "MIT",
1539
- "engines": {
1540
- "node": ">=8.6"
1541
- },
1542
- "funding": {
1543
- "url": "https://github.com/sponsors/jonschlinkert"
1544
- }
1545
- },
1546
- "node_modules/postcss": {
1547
- "version": "8.5.6",
1548
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz",
1549
- "integrity": "sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==",
1550
- "dev": true,
1551
- "funding": [
1552
- {
1553
- "type": "opencollective",
1554
- "url": "https://opencollective.com/postcss/"
1555
- },
1556
- {
1557
- "type": "tidelift",
1558
- "url": "https://tidelift.com/funding/github/npm/postcss"
1559
- },
1560
- {
1561
- "type": "github",
1562
- "url": "https://github.com/sponsors/ai"
1563
- }
1564
- ],
1565
- "dependencies": {
1566
- "nanoid": "^3.3.11",
1567
- "picocolors": "^1.1.1",
1568
- "source-map-js": "^1.2.1"
1569
- },
1570
- "engines": {
1571
- "node": "^10 || ^12 || >=14"
1572
- }
1573
- },
1574
- "node_modules/react": {
1575
- "version": "18.3.1",
1576
- "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
1577
- "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
1578
- "dev": true,
1579
- "dependencies": {
1580
- "loose-envify": "^1.1.0"
1581
- },
1582
- "engines": {
1583
- "node": ">=0.10.0"
1584
- }
1585
- },
1586
- "node_modules/react-dom": {
1587
- "version": "18.3.1",
1588
- "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
1589
- "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
1590
- "dev": true,
1591
- "dependencies": {
1592
- "loose-envify": "^1.1.0",
1593
- "scheduler": "^0.23.2"
1594
- },
1595
- "peerDependencies": {
1596
- "react": "^18.3.1"
1597
- }
1598
- },
1599
- "node_modules/react-refresh": {
1600
- "version": "0.17.0",
1601
- "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.17.0.tgz",
1602
- "integrity": "sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==",
1603
- "dev": true,
1604
- "engines": {
1605
- "node": ">=0.10.0"
1606
- }
1607
- },
1608
- "node_modules/readdirp": {
1609
- "version": "3.6.0",
1610
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
1611
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
1612
- "dev": true,
1613
- "license": "MIT",
1614
- "dependencies": {
1615
- "picomatch": "^2.2.1"
1616
- },
1617
- "engines": {
1618
- "node": ">=8.10.0"
1619
- }
1620
- },
1621
- "node_modules/rollup": {
1622
- "version": "4.46.1",
1623
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.46.1.tgz",
1624
- "integrity": "sha512-33xGNBsDJAkzt0PvninskHlWnTIPgDtTwhg0U38CUoNP/7H6wI2Cz6dUeoNPbjdTdsYTGuiFFASuUOWovH0SyQ==",
1625
- "dev": true,
1626
- "dependencies": {
1627
- "@types/estree": "1.0.8"
1628
- },
1629
- "bin": {
1630
- "rollup": "dist/bin/rollup"
1631
- },
1632
- "engines": {
1633
- "node": ">=18.0.0",
1634
- "npm": ">=8.0.0"
1635
- },
1636
- "optionalDependencies": {
1637
- "@rollup/rollup-android-arm-eabi": "4.46.1",
1638
- "@rollup/rollup-android-arm64": "4.46.1",
1639
- "@rollup/rollup-darwin-arm64": "4.46.1",
1640
- "@rollup/rollup-darwin-x64": "4.46.1",
1641
- "@rollup/rollup-freebsd-arm64": "4.46.1",
1642
- "@rollup/rollup-freebsd-x64": "4.46.1",
1643
- "@rollup/rollup-linux-arm-gnueabihf": "4.46.1",
1644
- "@rollup/rollup-linux-arm-musleabihf": "4.46.1",
1645
- "@rollup/rollup-linux-arm64-gnu": "4.46.1",
1646
- "@rollup/rollup-linux-arm64-musl": "4.46.1",
1647
- "@rollup/rollup-linux-loongarch64-gnu": "4.46.1",
1648
- "@rollup/rollup-linux-ppc64-gnu": "4.46.1",
1649
- "@rollup/rollup-linux-riscv64-gnu": "4.46.1",
1650
- "@rollup/rollup-linux-riscv64-musl": "4.46.1",
1651
- "@rollup/rollup-linux-s390x-gnu": "4.46.1",
1652
- "@rollup/rollup-linux-x64-gnu": "4.46.1",
1653
- "@rollup/rollup-linux-x64-musl": "4.46.1",
1654
- "@rollup/rollup-win32-arm64-msvc": "4.46.1",
1655
- "@rollup/rollup-win32-ia32-msvc": "4.46.1",
1656
- "@rollup/rollup-win32-x64-msvc": "4.46.1",
1657
- "fsevents": "~2.3.2"
1658
- }
1659
- },
1660
- "node_modules/scheduler": {
1661
- "version": "0.23.2",
1662
- "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
1663
- "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
1664
- "dev": true,
1665
- "dependencies": {
1666
- "loose-envify": "^1.1.0"
1667
- }
1668
- },
1669
- "node_modules/semver": {
1670
- "version": "6.3.1",
1671
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
1672
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
1673
- "dev": true,
1674
- "bin": {
1675
- "semver": "bin/semver.js"
1676
- }
1677
- },
1678
- "node_modules/source-map-js": {
1679
- "version": "1.2.1",
1680
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
1681
- "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
1682
- "dev": true,
1683
- "engines": {
1684
- "node": ">=0.10.0"
1685
- }
1686
- },
1687
- "node_modules/tinyglobby": {
1688
- "version": "0.2.14",
1689
- "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz",
1690
- "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==",
1691
- "dev": true,
1692
- "license": "MIT",
1693
- "dependencies": {
1694
- "fdir": "^6.4.4",
1695
- "picomatch": "^4.0.2"
1696
- },
1697
- "engines": {
1698
- "node": ">=12.0.0"
1699
- },
1700
- "funding": {
1701
- "url": "https://github.com/sponsors/SuperchupuDev"
1702
- }
1703
- },
1704
- "node_modules/tinyglobby/node_modules/fdir": {
1705
- "version": "6.4.6",
1706
- "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.4.6.tgz",
1707
- "integrity": "sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==",
1708
- "dev": true,
1709
- "license": "MIT",
1710
- "peerDependencies": {
1711
- "picomatch": "^3 || ^4"
1712
- },
1713
- "peerDependenciesMeta": {
1714
- "picomatch": {
1715
- "optional": true
1716
- }
1717
- }
1718
- },
1719
- "node_modules/tinyglobby/node_modules/picomatch": {
1720
- "version": "4.0.3",
1721
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
1722
- "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
1723
- "dev": true,
1724
- "license": "MIT",
1725
- "engines": {
1726
- "node": ">=12"
1727
- },
1728
- "funding": {
1729
- "url": "https://github.com/sponsors/jonschlinkert"
1730
- }
1731
- },
1732
- "node_modules/to-regex-range": {
1733
- "version": "5.0.1",
1734
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
1735
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
1736
- "dev": true,
1737
- "license": "MIT",
1738
- "dependencies": {
1739
- "is-number": "^7.0.0"
1740
- },
1741
- "engines": {
1742
- "node": ">=8.0"
1743
- }
1744
- },
1745
- "node_modules/typescript": {
1746
- "version": "5.8.3",
1747
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz",
1748
- "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
1749
- "dev": true,
1750
- "bin": {
1751
- "tsc": "bin/tsc",
1752
- "tsserver": "bin/tsserver"
1753
- },
1754
- "engines": {
1755
- "node": ">=14.17"
1756
- }
1757
- },
1758
- "node_modules/universalify": {
1759
- "version": "2.0.1",
1760
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
1761
- "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
1762
- "dev": true,
1763
- "license": "MIT",
1764
- "engines": {
1765
- "node": ">= 10.0.0"
1766
- }
1767
- },
1768
- "node_modules/update-browserslist-db": {
1769
- "version": "1.1.3",
1770
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.3.tgz",
1771
- "integrity": "sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==",
1772
- "dev": true,
1773
- "funding": [
1774
- {
1775
- "type": "opencollective",
1776
- "url": "https://opencollective.com/browserslist"
1777
- },
1778
- {
1779
- "type": "tidelift",
1780
- "url": "https://tidelift.com/funding/github/npm/browserslist"
1781
- },
1782
- {
1783
- "type": "github",
1784
- "url": "https://github.com/sponsors/ai"
1785
- }
1786
- ],
1787
- "dependencies": {
1788
- "escalade": "^3.2.0",
1789
- "picocolors": "^1.1.1"
1790
- },
1791
- "bin": {
1792
- "update-browserslist-db": "cli.js"
1793
- },
1794
- "peerDependencies": {
1795
- "browserslist": ">= 4.21.0"
1796
- }
1797
- },
1798
- "node_modules/vite": {
1799
- "version": "5.4.21",
1800
- "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.21.tgz",
1801
- "integrity": "sha512-o5a9xKjbtuhY6Bi5S3+HvbRERmouabWbyUcpXXUA1u+GNUKoROi9byOJ8M0nHbHYHkYICiMlqxkg1KkYmm25Sw==",
1802
- "dev": true,
1803
- "license": "MIT",
1804
- "dependencies": {
1805
- "esbuild": "^0.21.3",
1806
- "postcss": "^8.4.43",
1807
- "rollup": "^4.20.0"
1808
- },
1809
- "bin": {
1810
- "vite": "bin/vite.js"
1811
- },
1812
- "engines": {
1813
- "node": "^18.0.0 || >=20.0.0"
1814
- },
1815
- "funding": {
1816
- "url": "https://github.com/vitejs/vite?sponsor=1"
1817
- },
1818
- "optionalDependencies": {
1819
- "fsevents": "~2.3.3"
1820
- },
1821
- "peerDependencies": {
1822
- "@types/node": "^18.0.0 || >=20.0.0",
1823
- "less": "*",
1824
- "lightningcss": "^1.21.0",
1825
- "sass": "*",
1826
- "sass-embedded": "*",
1827
- "stylus": "*",
1828
- "sugarss": "*",
1829
- "terser": "^5.4.0"
1830
- },
1831
- "peerDependenciesMeta": {
1832
- "@types/node": {
1833
- "optional": true
1834
- },
1835
- "less": {
1836
- "optional": true
1837
- },
1838
- "lightningcss": {
1839
- "optional": true
1840
- },
1841
- "sass": {
1842
- "optional": true
1843
- },
1844
- "sass-embedded": {
1845
- "optional": true
1846
- },
1847
- "stylus": {
1848
- "optional": true
1849
- },
1850
- "sugarss": {
1851
- "optional": true
1852
- },
1853
- "terser": {
1854
- "optional": true
1855
- }
1856
- }
1857
- },
1858
- "node_modules/vite-plugin-static-copy": {
1859
- "version": "3.1.1",
1860
- "resolved": "https://registry.npmjs.org/vite-plugin-static-copy/-/vite-plugin-static-copy-3.1.1.tgz",
1861
- "integrity": "sha512-oR53SkL5cX4KT1t18E/xU50vJDo0N8oaHza4EMk0Fm+2/u6nQivxavOfrDk3udWj+dizRizB/QnBvJOOQrTTAQ==",
1862
- "dev": true,
1863
- "license": "MIT",
1864
- "dependencies": {
1865
- "chokidar": "^3.6.0",
1866
- "fs-extra": "^11.3.0",
1867
- "p-map": "^7.0.3",
1868
- "picocolors": "^1.1.1",
1869
- "tinyglobby": "^0.2.14"
1870
- },
1871
- "engines": {
1872
- "node": "^18.0.0 || >=20.0.0"
1873
- },
1874
- "peerDependencies": {
1875
- "vite": "^5.0.0 || ^6.0.0 || ^7.0.0"
1876
- }
1877
- },
1878
- "node_modules/yallist": {
1879
- "version": "3.1.1",
1880
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
1881
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
1882
- "dev": true
1883
- }
1884
- }
1885
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
package-lock.json CHANGED
The diff for this file is too large to render. See raw diff
 
package.json CHANGED
@@ -1,48 +1,25 @@
1
  {
2
- "name": "@playwright/mcp",
3
- "version": "0.0.56",
4
- "description": "Playwright Tools for MCP",
5
  "repository": {
6
  "type": "git",
7
  "url": "git+https://github.com/microsoft/playwright-mcp.git"
8
  },
9
  "homepage": "https://playwright.dev",
10
- "engines": {
11
- "node": ">=18"
12
- },
13
  "author": {
14
  "name": "Microsoft Corporation"
15
  },
16
  "license": "Apache-2.0",
17
  "scripts": {
18
- "lint": "npm run update-readme",
19
- "update-readme": "node update-readme.js",
20
  "docker-build": "docker build --no-cache -t playwright-mcp-dev:latest .",
21
  "docker-rm": "docker rm playwright-mcp-dev",
22
  "docker-run": "docker run -it -p 8080:8080 --name playwright-mcp-dev playwright-mcp-dev:latest",
23
- "test": "playwright test",
24
- "ctest": "playwright test --project=chrome",
25
- "ftest": "playwright test --project=firefox",
26
- "wtest": "playwright test --project=webkit",
27
- "dtest": "MCP_IN_DOCKER=1 playwright test --project=chromium-docker",
28
- "npm-publish": "npm run clean && npm run test && npm publish",
29
- "copy-config": "cp ../playwright/packages/playwright/src/mcp/config.d.ts . && perl -pi -e \"s|import type \\* as playwright from 'playwright-core';|import type * as playwright from 'playwright';|\" ./config.d.ts",
30
- "roll": "npm run copy-config && npm run lint"
31
- },
32
- "exports": {
33
- "./package.json": "./package.json",
34
- ".": {
35
- "types": "./index.d.ts",
36
- "default": "./index.js"
37
- }
38
- },
39
- "dependencies": {
40
- "playwright": "1.58.0-alpha-2026-01-16",
41
- "playwright-core": "1.58.0-alpha-2026-01-16"
42
- },
43
- "bin": {
44
- "mcp-server-playwright": "cli.js"
45
  },
 
 
 
46
  "devDependencies": {
47
  "@modelcontextprotocol/sdk": "^1.24.0",
48
  "@playwright/test": "1.58.0-alpha-2026-01-16",
 
1
  {
2
+ "name": "playwright-mcp-internal",
3
+ "version": "0.0.1",
4
+ "private": true,
5
  "repository": {
6
  "type": "git",
7
  "url": "git+https://github.com/microsoft/playwright-mcp.git"
8
  },
9
  "homepage": "https://playwright.dev",
 
 
 
10
  "author": {
11
  "name": "Microsoft Corporation"
12
  },
13
  "license": "Apache-2.0",
14
  "scripts": {
 
 
15
  "docker-build": "docker build --no-cache -t playwright-mcp-dev:latest .",
16
  "docker-rm": "docker rm playwright-mcp-dev",
17
  "docker-run": "docker run -it -p 8080:8080 --name playwright-mcp-dev playwright-mcp-dev:latest",
18
+ "lint": "npm run lint --workspaces"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  },
20
+ "workspaces": [
21
+ "packages/*"
22
+ ],
23
  "devDependencies": {
24
  "@modelcontextprotocol/sdk": "^1.24.0",
25
  "@playwright/test": "1.58.0-alpha-2026-01-16",
packages/extension/.gitignore ADDED
@@ -0,0 +1 @@
 
 
1
+ dist/
{extension β†’ packages/extension}/README.md RENAMED
File without changes
{extension β†’ packages/extension}/icons/icon-128.png RENAMED
File without changes
{extension β†’ packages/extension}/icons/icon-16.png RENAMED
File without changes
{extension β†’ packages/extension}/icons/icon-32.png RENAMED
File without changes
{extension β†’ packages/extension}/icons/icon-48.png RENAMED
File without changes
{extension β†’ packages/extension}/manifest.json RENAMED
File without changes
{extension β†’ packages/extension}/package.json RENAMED
@@ -19,6 +19,7 @@
19
  "build": "tsc --project . && tsc --project tsconfig.ui.json && vite build && vite build --config vite.sw.config.mts",
20
  "watch": "tsc --watch --project . & tsc --watch --project tsconfig.ui.json & vite build --watch & vite build --watch --config vite.sw.config.mts",
21
  "test": "playwright test",
 
22
  "clean": "rm -rf dist"
23
  },
24
  "devDependencies": {
 
19
  "build": "tsc --project . && tsc --project tsconfig.ui.json && vite build && vite build --config vite.sw.config.mts",
20
  "watch": "tsc --watch --project . & tsc --watch --project tsconfig.ui.json & vite build --watch & vite build --watch --config vite.sw.config.mts",
21
  "test": "playwright test",
22
+ "lint": "tsc --project .",
23
  "clean": "rm -rf dist"
24
  },
25
  "devDependencies": {
{extension β†’ packages/extension}/playwright.config.ts RENAMED
@@ -16,7 +16,7 @@
16
 
17
  import { defineConfig } from '@playwright/test';
18
 
19
- import type { TestOptions } from '../tests/fixtures';
20
 
21
  export default defineConfig<TestOptions>({
22
  testDir: './tests',
 
16
 
17
  import { defineConfig } from '@playwright/test';
18
 
19
+ import type { TestOptions } from '../playwright-mcp/tests/fixtures';
20
 
21
  export default defineConfig<TestOptions>({
22
  testDir: './tests',
{extension β†’ packages/extension}/src/background.ts RENAMED
File without changes
{extension β†’ packages/extension}/src/relayConnection.ts RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/authToken.css RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/authToken.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/colors.css RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/connect.css RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/connect.html RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/connect.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/copyToClipboard.css RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/copyToClipboard.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/icons.css RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/icons.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/status.html RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/status.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/tabItem.tsx RENAMED
File without changes
{extension β†’ packages/extension}/src/ui/tsconfig.json RENAMED
File without changes
{extension β†’ packages/extension}/tests/extension.spec.ts RENAMED
@@ -17,11 +17,11 @@
17
  import fs from 'fs';
18
  import path from 'path';
19
  import { chromium } from 'playwright';
20
- import { test as base, expect } from '../../tests/fixtures';
21
 
22
  import type { Client } from '@modelcontextprotocol/sdk/client/index.js';
23
  import type { BrowserContext } from 'playwright';
24
- import type { StartClient } from '../../tests/fixtures';
25
 
26
  type BrowserWithExtension = {
27
  userDataDir: string;
 
17
  import fs from 'fs';
18
  import path from 'path';
19
  import { chromium } from 'playwright';
20
+ import { test as base, expect } from '../../playwright-mcp/tests/fixtures';
21
 
22
  import type { Client } from '@modelcontextprotocol/sdk/client/index.js';
23
  import type { BrowserContext } from 'playwright';
24
+ import type { StartClient } from '../../playwright-mcp/tests/fixtures';
25
 
26
  type BrowserWithExtension = {
27
  userDataDir: string;
{extension β†’ packages/extension}/tsconfig.json RENAMED
File without changes
{extension β†’ packages/extension}/tsconfig.ui.json RENAMED
File without changes
{extension β†’ packages/extension}/vite.config.mts RENAMED
File without changes
{extension β†’ packages/extension}/vite.sw.config.mts RENAMED
File without changes
packages/playwright-cli/.gitignore ADDED
@@ -0,0 +1 @@
 
 
1
+ lib/
{cli β†’ packages/playwright-cli}/package.json RENAMED
@@ -19,7 +19,6 @@
19
  "lint": "tsc --project .",
20
  "build": "esbuild src/cli.ts --bundle --platform=node --target=node18 --format=cjs --outfile=lib/cli.js",
21
  "watch": "esbuild src/cli.ts --bundle --platform=node --target=node18 --format=cjs --outfile=lib/cli.js --watch",
22
- "test": "playwright test",
23
  "clean": "rm -rf lib"
24
  },
25
  "devDependencies": {
 
19
  "lint": "tsc --project .",
20
  "build": "esbuild src/cli.ts --bundle --platform=node --target=node18 --format=cjs --outfile=lib/cli.js",
21
  "watch": "esbuild src/cli.ts --bundle --platform=node --target=node18 --format=cjs --outfile=lib/cli.js --watch",
 
22
  "clean": "rm -rf lib"
23
  },
24
  "devDependencies": {
{cli β†’ packages/playwright-cli}/src/cli.ts RENAMED
File without changes
{cli β†’ packages/playwright-cli}/src/help.json RENAMED
File without changes
{cli β†’ packages/playwright-cli}/src/socketConnection.ts RENAMED
File without changes
{cli β†’ packages/playwright-cli}/tsconfig.json RENAMED
File without changes
packages/playwright-mcp/.gitignore ADDED
@@ -0,0 +1,2 @@
 
 
 
1
+ README.md
2
+ LICENSE
.npmignore β†’ packages/playwright-mcp/.npmignore RENAMED
@@ -1,6 +1,6 @@
1
  **/*
2
- README.md
3
- LICENSE
4
  !cli.js
5
  !index.*
6
  !config.d.ts
 
1
  **/*
2
+ !README.md
3
+ !LICENSE
4
  !cli.js
5
  !index.*
6
  !config.d.ts
cli.js β†’ packages/playwright-mcp/cli.js RENAMED
File without changes
config.d.ts β†’ packages/playwright-mcp/config.d.ts RENAMED
File without changes
index.d.ts β†’ packages/playwright-mcp/index.d.ts RENAMED
File without changes
index.js β†’ packages/playwright-mcp/index.js RENAMED
File without changes