Compare commits
7 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
43684dce91 | ||
|
|
3ddfbab1ef | ||
|
|
030758e078 | ||
|
|
c56b945f0d | ||
|
|
69750674c3 | ||
|
|
813cbb3156 | ||
|
|
20aaa4f2e2 |
802
package-lock.json
generated
802
package-lock.json
generated
@@ -29,7 +29,7 @@
|
||||
"@testing-library/dom": "^10.4.0",
|
||||
"@testing-library/jest-dom": "5.17.0",
|
||||
"@testing-library/react": "^16.2.0",
|
||||
"jest": "30.0.4",
|
||||
"jest": "30.0.5",
|
||||
"jest-environment-jsdom": "^30.0.0",
|
||||
"prop-types": "15.8.1",
|
||||
"react": "^18.3.1",
|
||||
@@ -2516,9 +2516,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@edx/frontend-platform": {
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@edx/frontend-platform/-/frontend-platform-8.4.0.tgz",
|
||||
"integrity": "sha512-toWMU7qVx56f5bLk6/Sl5WWqlKtGp602qDs22JYp5r2VBp5F/nzcrpXXWC925/kH0TP5hI2OMolmLq6n2N8a4Q==",
|
||||
"version": "8.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@edx/frontend-platform/-/frontend-platform-8.5.0.tgz",
|
||||
"integrity": "sha512-nzz46Pe0G1mFHoywzOWPhwy2m26CmD3o11FubeU8F94VsKfJsAexTETyWHRvwuVhQs6qaFzgobAjjEl8w0mu6A==",
|
||||
"license": "AGPL-3.0",
|
||||
"dependencies": {
|
||||
"@cospired/i18n-iso-languages": "4.2.0",
|
||||
@@ -3175,16 +3175,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@fortawesome/react-fontawesome": {
|
||||
"version": "0.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.2.tgz",
|
||||
"integrity": "sha512-EnkrprPNqI6SXJl//m29hpaNzOp1bruISWaOiRtkMi/xSvHJlzc2j2JAYS7egxt/EbjSNV/k6Xy0AQI6vB2+1g==",
|
||||
"version": "0.2.6",
|
||||
"resolved": "https://registry.npmjs.org/@fortawesome/react-fontawesome/-/react-fontawesome-0.2.6.tgz",
|
||||
"integrity": "sha512-mtBFIi1UsYQo7rYonYFkjgYKGoL8T+fEH6NGUpvuqtY3ytMsAoDaPo5rk25KuMtKDipY4bGYM/CkmCHA1N3FUg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"prop-types": "^15.8.1"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "~1 || ~6",
|
||||
"react": ">=16.3"
|
||||
"@fortawesome/fontawesome-svg-core": "~1 || ~6 || ~7",
|
||||
"react": "^16.3 || ^17.0.0 || ^18.0.0 || ^19.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@fullhuman/postcss-purgecss": {
|
||||
@@ -3519,19 +3519,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment-jsdom-abstract/-/environment-jsdom-abstract-30.0.4.tgz",
|
||||
"integrity": "sha512-pUKfqgr5Nki9kZ/3iV+ubDsvtPq0a0oNL6zqkKLM1tPQI8FBJeuWskvW1kzc5pOvqlgpzumYZveJ4bxhANY0hg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment-jsdom-abstract/-/environment-jsdom-abstract-30.0.5.tgz",
|
||||
"integrity": "sha512-gpWwiVxZunkoglP8DCnT3As9x5O8H6gveAOpvaJd2ATAoSh7ZSSCWbr9LQtUMvr8WD3VjG9YnDhsmkCK5WN1rQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/jsdom": "^21.1.7",
|
||||
"@types/node": "*",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
@@ -3547,43 +3547,43 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/@jest/environment": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.4.tgz",
|
||||
"integrity": "sha512-5NT+sr7ZOb8wW7C4r7wOKnRQ8zmRWQT2gW4j73IXAKp5/PX1Z8MCStBLQDYfIG3n1Sw0NRfYGdp0iIPVooBAFQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.5.tgz",
|
||||
"integrity": "sha512-aRX7WoaWx1oaOkDQvCWImVQ8XNtdv5sEWgk4gxR6NXb7WBUnL5sRak4WRzIQRZ1VTWPvV4VI4mgGjNL9TeKMYA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-mock": "30.0.2"
|
||||
"jest-mock": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/@jest/fake-timers": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.4.tgz",
|
||||
"integrity": "sha512-qZ7nxOcL5+gwBO6LErvwVy5k06VsX/deqo2XnVUSTV0TNC9lrg8FC3dARbi+5lmrr5VyX5drragK+xLcOjvjYw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.5.tgz",
|
||||
"integrity": "sha512-ZO5DHfNV+kgEAeP3gK3XlpJLL4U3Sz6ebl/n68Uwt64qFFs5bv4bfEEjyRGK5uM0C90ewooNgFuKMdkbEoMEXw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@sinonjs/fake-timers": "^13.0.0",
|
||||
"@types/node": "*",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/@jest/schemas": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.1.tgz",
|
||||
"integrity": "sha512-+g/1TKjFuGrf1Hh0QPCv0gISwBxJ+MQSNXmG9zjHy7BmFhtoJ9fdNhWJp3qUKRi93AOZHXtdxZgJ1vAtz6z65w==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz",
|
||||
"integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -3594,14 +3594,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/@jest/types": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.1.tgz",
|
||||
"integrity": "sha512-HGwoYRVF0QSKJu1ZQX0o5ZrUrrhj0aOOFA8hXrumD7SIzjouevhawbTjmXdwOmURdGluU9DM/XvGm3NyFoiQjw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz",
|
||||
"integrity": "sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"@types/istanbul-lib-coverage": "^2.0.6",
|
||||
"@types/istanbul-reports": "^3.0.4",
|
||||
"@types/node": "*",
|
||||
@@ -3613,9 +3613,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.37",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.37.tgz",
|
||||
"integrity": "sha512-2TRuQVgQYfy+EzHRTIvkhv2ADEouJ2xNS/Vq+W5EuuewBdOrvATvljZTxHWZSTYr2sTjTHpGvucaGAt67S2akw==",
|
||||
"version": "0.34.38",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.38.tgz",
|
||||
"integrity": "sha512-HpkxMmc2XmZKhvaKIZZThlHmx1L0I/V1hWK1NubtlFnr6ZqdiOpV72TKudZUNQjZNsyDBay72qFEhEvb+bcwcA==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
@@ -3671,19 +3671,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/jest-message-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.2.tgz",
|
||||
"integrity": "sha512-vXywcxmr0SsKXF/bAD7t7nMamRvPuJkras00gqYeB1V0WllxZrbZ0paRr3XqpFU2sYYjD0qAaG2fRyn/CGZ0aw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.5.tgz",
|
||||
"integrity": "sha512-NAiDOhsK3V7RU0Aa/HnrQo+E4JlbarbmI3q6Pi4KcxicdtjV82gcIUrejOtczChtVQR4kddu1E1EJlW6EN9IyA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.27.1",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/stack-utils": "^2.0.3",
|
||||
"chalk": "^4.1.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"micromatch": "^4.0.8",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"stack-utils": "^2.0.6"
|
||||
},
|
||||
@@ -3692,28 +3692,28 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/jest-mock": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.2.tgz",
|
||||
"integrity": "sha512-PnZOHmqup/9cT/y+pXIVbbi8ID6U1XHRmbvR7MvUy4SLqhCbwpkmXhLbsWbGewHrV5x/1bF7YDjs+x24/QSvFA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz",
|
||||
"integrity": "sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/jest-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.2.tgz",
|
||||
"integrity": "sha512-8IyqfKS4MqprBuUpZNlFB5l+WFehc8bfCe1HSZFHzft2mOuND8Cvi9r1musli+u6F3TqanCZ/Ik4H4pXUolZIg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz",
|
||||
"integrity": "sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"ci-info": "^4.2.0",
|
||||
@@ -3725,9 +3725,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/picomatch": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
|
||||
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
|
||||
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -3738,13 +3738,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/environment-jsdom-abstract/node_modules/pretty-format": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.2.tgz",
|
||||
"integrity": "sha512-yC5/EBSOrTtqhCKfLHqoUIAXVRZnukHPwWBJWR7h84Q3Be1DRQZLncwcfLoPA5RPQ65qfiCMqgYwdUuQ//eVpg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz",
|
||||
"integrity": "sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"ansi-styles": "^5.2.0",
|
||||
"react-is": "^18.3.1"
|
||||
},
|
||||
@@ -3962,13 +3962,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/snapshot-utils": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.0.4.tgz",
|
||||
"integrity": "sha512-BEpX8M/Y5lG7MI3fmiO+xCnacOrVsnbqVrcDZIT8aSGkKV1w2WwvRQxSWw5SIS8ozg7+h8tSj5EO1Riqqxcdag==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.0.5.tgz",
|
||||
"integrity": "sha512-XcCQ5qWHLvi29UUrowgDFvV4t7ETxX91CbDczMnoqXPOIcZOxyNdSjm6kV5XMc8+HkxfRegU/MUmnTbJRzGrUQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"chalk": "^4.1.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"natural-compare": "^1.4.0"
|
||||
@@ -3978,9 +3978,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/snapshot-utils/node_modules/@jest/schemas": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.1.tgz",
|
||||
"integrity": "sha512-+g/1TKjFuGrf1Hh0QPCv0gISwBxJ+MQSNXmG9zjHy7BmFhtoJ9fdNhWJp3qUKRi93AOZHXtdxZgJ1vAtz6z65w==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz",
|
||||
"integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -3991,14 +3991,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/snapshot-utils/node_modules/@jest/types": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.1.tgz",
|
||||
"integrity": "sha512-HGwoYRVF0QSKJu1ZQX0o5ZrUrrhj0aOOFA8hXrumD7SIzjouevhawbTjmXdwOmURdGluU9DM/XvGm3NyFoiQjw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz",
|
||||
"integrity": "sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"@types/istanbul-lib-coverage": "^2.0.6",
|
||||
"@types/istanbul-reports": "^3.0.4",
|
||||
"@types/node": "*",
|
||||
@@ -4010,9 +4010,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@jest/snapshot-utils/node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.37",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.37.tgz",
|
||||
"integrity": "sha512-2TRuQVgQYfy+EzHRTIvkhv2ADEouJ2xNS/Vq+W5EuuewBdOrvATvljZTxHWZSTYr2sTjTHpGvucaGAt67S2akw==",
|
||||
"version": "0.34.38",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.38.tgz",
|
||||
"integrity": "sha512-HpkxMmc2XmZKhvaKIZZThlHmx1L0I/V1hWK1NubtlFnr6ZqdiOpV72TKudZUNQjZNsyDBay72qFEhEvb+bcwcA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
@@ -4590,9 +4590,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@openedx/paragon": {
|
||||
"version": "23.14.0",
|
||||
"resolved": "https://registry.npmjs.org/@openedx/paragon/-/paragon-23.14.0.tgz",
|
||||
"integrity": "sha512-+z5PspPI5D+/Xh87KG0ZYt/E+mOlgEMj6/IXeBWSj0vUvawj/pYzKgj+hlGbFGV9lIKkKnQJA8iurQrR++VXZA==",
|
||||
"version": "23.14.2",
|
||||
"resolved": "https://registry.npmjs.org/@openedx/paragon/-/paragon-23.14.2.tgz",
|
||||
"integrity": "sha512-mBsoH9nwt4VGkoE9y33BrSJsjTzWlKjooWGXeJng4LdFNnBy7bhtEvRENQ9/0L0/trWhEMZffAMP7h9HBfg5EQ==",
|
||||
"license": "Apache-2.0",
|
||||
"workspaces": [
|
||||
"example",
|
||||
@@ -14194,16 +14194,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest/-/jest-30.0.4.tgz",
|
||||
"integrity": "sha512-9QE0RS4WwTj/TtTC4h/eFVmFAhGNVerSB9XpJh8sqaXlP73ILcPcZ7JWjjEtJJe2m8QyBLKKfPQuK+3F+Xij/g==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest/-/jest-30.0.5.tgz",
|
||||
"integrity": "sha512-y2mfcJywuTUkvLm2Lp1/pFX8kTgMO5yyQGq/Sk/n2mN7XWYp4JsCZ/QXW34M8YScgk8bPZlREH04f6blPnoHnQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/core": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/core": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"import-local": "^3.2.0",
|
||||
"jest-cli": "30.0.4"
|
||||
"jest-cli": "30.0.5"
|
||||
},
|
||||
"bin": {
|
||||
"jest": "bin/jest.js"
|
||||
@@ -14554,14 +14554,14 @@
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/jest-environment-jsdom": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-30.0.4.tgz",
|
||||
"integrity": "sha512-9WmS3oyCLFgs6DUJSoMpVb+AbH62Y2Xecw3XClbRgj6/Z+VjNeSLjrhBgVvTZ40njZTWeDHv8unp+6M/z8ADDg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-30.0.5.tgz",
|
||||
"integrity": "sha512-BmnDEoAH+jEjkPrvE9DTKS2r3jYSJWlN/r46h0/DBUxKrkgt2jAZ5Nj4wXLAcV1KWkRpcFqA5zri9SWzJZ1cCg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/environment-jsdom-abstract": "30.0.4",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/environment-jsdom-abstract": "30.0.5",
|
||||
"@types/jsdom": "^21.1.7",
|
||||
"@types/node": "*",
|
||||
"jsdom": "^26.1.0"
|
||||
@@ -14579,43 +14579,43 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/@jest/environment": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.4.tgz",
|
||||
"integrity": "sha512-5NT+sr7ZOb8wW7C4r7wOKnRQ8zmRWQT2gW4j73IXAKp5/PX1Z8MCStBLQDYfIG3n1Sw0NRfYGdp0iIPVooBAFQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.5.tgz",
|
||||
"integrity": "sha512-aRX7WoaWx1oaOkDQvCWImVQ8XNtdv5sEWgk4gxR6NXb7WBUnL5sRak4WRzIQRZ1VTWPvV4VI4mgGjNL9TeKMYA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-mock": "30.0.2"
|
||||
"jest-mock": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/@jest/fake-timers": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.4.tgz",
|
||||
"integrity": "sha512-qZ7nxOcL5+gwBO6LErvwVy5k06VsX/deqo2XnVUSTV0TNC9lrg8FC3dARbi+5lmrr5VyX5drragK+xLcOjvjYw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.5.tgz",
|
||||
"integrity": "sha512-ZO5DHfNV+kgEAeP3gK3XlpJLL4U3Sz6ebl/n68Uwt64qFFs5bv4bfEEjyRGK5uM0C90ewooNgFuKMdkbEoMEXw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@sinonjs/fake-timers": "^13.0.0",
|
||||
"@types/node": "*",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/@jest/schemas": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.1.tgz",
|
||||
"integrity": "sha512-+g/1TKjFuGrf1Hh0QPCv0gISwBxJ+MQSNXmG9zjHy7BmFhtoJ9fdNhWJp3qUKRi93AOZHXtdxZgJ1vAtz6z65w==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz",
|
||||
"integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -14626,14 +14626,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/@jest/types": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.1.tgz",
|
||||
"integrity": "sha512-HGwoYRVF0QSKJu1ZQX0o5ZrUrrhj0aOOFA8hXrumD7SIzjouevhawbTjmXdwOmURdGluU9DM/XvGm3NyFoiQjw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz",
|
||||
"integrity": "sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"@types/istanbul-lib-coverage": "^2.0.6",
|
||||
"@types/istanbul-reports": "^3.0.4",
|
||||
"@types/node": "*",
|
||||
@@ -14645,9 +14645,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.37",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.37.tgz",
|
||||
"integrity": "sha512-2TRuQVgQYfy+EzHRTIvkhv2ADEouJ2xNS/Vq+W5EuuewBdOrvATvljZTxHWZSTYr2sTjTHpGvucaGAt67S2akw==",
|
||||
"version": "0.34.38",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.38.tgz",
|
||||
"integrity": "sha512-HpkxMmc2XmZKhvaKIZZThlHmx1L0I/V1hWK1NubtlFnr6ZqdiOpV72TKudZUNQjZNsyDBay72qFEhEvb+bcwcA==",
|
||||
"dev": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
@@ -14808,19 +14808,19 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/jest-message-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.2.tgz",
|
||||
"integrity": "sha512-vXywcxmr0SsKXF/bAD7t7nMamRvPuJkras00gqYeB1V0WllxZrbZ0paRr3XqpFU2sYYjD0qAaG2fRyn/CGZ0aw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.5.tgz",
|
||||
"integrity": "sha512-NAiDOhsK3V7RU0Aa/HnrQo+E4JlbarbmI3q6Pi4KcxicdtjV82gcIUrejOtczChtVQR4kddu1E1EJlW6EN9IyA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.27.1",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/stack-utils": "^2.0.3",
|
||||
"chalk": "^4.1.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"micromatch": "^4.0.8",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"stack-utils": "^2.0.6"
|
||||
},
|
||||
@@ -14829,28 +14829,28 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/jest-mock": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.2.tgz",
|
||||
"integrity": "sha512-PnZOHmqup/9cT/y+pXIVbbi8ID6U1XHRmbvR7MvUy4SLqhCbwpkmXhLbsWbGewHrV5x/1bF7YDjs+x24/QSvFA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz",
|
||||
"integrity": "sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/jest-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.2.tgz",
|
||||
"integrity": "sha512-8IyqfKS4MqprBuUpZNlFB5l+WFehc8bfCe1HSZFHzft2mOuND8Cvi9r1musli+u6F3TqanCZ/Ik4H4pXUolZIg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz",
|
||||
"integrity": "sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"ci-info": "^4.2.0",
|
||||
@@ -14915,9 +14915,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/picomatch": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
|
||||
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
|
||||
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -14928,13 +14928,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest-environment-jsdom/node_modules/pretty-format": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.2.tgz",
|
||||
"integrity": "sha512-yC5/EBSOrTtqhCKfLHqoUIAXVRZnukHPwWBJWR7h84Q3Be1DRQZLncwcfLoPA5RPQ65qfiCMqgYwdUuQ//eVpg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz",
|
||||
"integrity": "sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"ansi-styles": "^5.2.0",
|
||||
"react-is": "^18.3.1"
|
||||
},
|
||||
@@ -15665,17 +15665,17 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/console": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/console/-/console-30.0.4.tgz",
|
||||
"integrity": "sha512-tMLCDvBJBwPqMm4OAiuKm2uF5y5Qe26KgcMn+nrDSWpEW+eeFmqA0iO4zJfL16GP7gE3bUUQ3hIuUJ22AqVRnw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/console/-/console-30.0.5.tgz",
|
||||
"integrity": "sha512-xY6b0XiL0Nav3ReresUarwl2oIz1gTnxGbGpho9/rbUWsLH0f1OD/VT84xs8c7VmH7MChnLb0pag6PhZhAdDiA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"slash": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -15683,39 +15683,39 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/core": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/core/-/core-30.0.4.tgz",
|
||||
"integrity": "sha512-MWScSO9GuU5/HoWjpXAOBs6F/iobvK1XlioelgOM9St7S0Z5WTI9kjCQLPeo4eQRRYusyLW25/J7J5lbFkrYXw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/core/-/core-30.0.5.tgz",
|
||||
"integrity": "sha512-fKD0OulvRsXF1hmaFgHhVJzczWzA1RXMMo9LTPuFXo9q/alDbME3JIyWYqovWsUBWSoBcsHaGPSLF9rz4l9Qeg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/console": "30.0.4",
|
||||
"@jest/console": "30.0.5",
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/reporters": "30.0.4",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/reporters": "30.0.5",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"ansi-escapes": "^4.3.2",
|
||||
"chalk": "^4.1.2",
|
||||
"ci-info": "^4.2.0",
|
||||
"exit-x": "^0.2.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-changed-files": "30.0.2",
|
||||
"jest-config": "30.0.4",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-changed-files": "30.0.5",
|
||||
"jest-config": "30.0.5",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-resolve": "30.0.2",
|
||||
"jest-resolve-dependencies": "30.0.4",
|
||||
"jest-runner": "30.0.4",
|
||||
"jest-runtime": "30.0.4",
|
||||
"jest-snapshot": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-validate": "30.0.2",
|
||||
"jest-watcher": "30.0.4",
|
||||
"jest-resolve": "30.0.5",
|
||||
"jest-resolve-dependencies": "30.0.5",
|
||||
"jest-runner": "30.0.5",
|
||||
"jest-runtime": "30.0.5",
|
||||
"jest-snapshot": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-validate": "30.0.5",
|
||||
"jest-watcher": "30.0.5",
|
||||
"micromatch": "^4.0.8",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"slash": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -15731,39 +15731,39 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/environment": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.4.tgz",
|
||||
"integrity": "sha512-5NT+sr7ZOb8wW7C4r7wOKnRQ8zmRWQT2gW4j73IXAKp5/PX1Z8MCStBLQDYfIG3n1Sw0NRfYGdp0iIPVooBAFQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.0.5.tgz",
|
||||
"integrity": "sha512-aRX7WoaWx1oaOkDQvCWImVQ8XNtdv5sEWgk4gxR6NXb7WBUnL5sRak4WRzIQRZ1VTWPvV4VI4mgGjNL9TeKMYA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-mock": "30.0.2"
|
||||
"jest-mock": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/expect": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.0.4.tgz",
|
||||
"integrity": "sha512-Z/DL7t67LBHSX4UzDyeYKqOxE/n7lbrrgEwWM3dGiH5Dgn35nk+YtgzKudmfIrBI8DRRrKYY5BCo3317HZV1Fw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.0.5.tgz",
|
||||
"integrity": "sha512-6udac8KKrtTtC+AXZ2iUN/R7dp7Ydry+Fo6FPFnDG54wjVMnb6vW/XNlf7Xj8UDjAE3aAVAsR4KFyKk3TCXmTA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"expect": "30.0.4",
|
||||
"jest-snapshot": "30.0.4"
|
||||
"expect": "30.0.5",
|
||||
"jest-snapshot": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/expect-utils": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.0.4.tgz",
|
||||
"integrity": "sha512-EgXecHDNfANeqOkcak0DxsoVI4qkDUsR7n/Lr2vtmTBjwLPBnnPOF71S11Q8IObWzxm2QgQoY6f9hzrRD3gHRA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.0.5.tgz",
|
||||
"integrity": "sha512-F3lmTT7CXWYywoVUGTCmom0vXq3HTTkaZyTAzIy+bXSBizB7o5qzlC9VCtq0arOa8GqmNsbg/cE9C6HLn7Szew==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -15774,51 +15774,51 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/fake-timers": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.4.tgz",
|
||||
"integrity": "sha512-qZ7nxOcL5+gwBO6LErvwVy5k06VsX/deqo2XnVUSTV0TNC9lrg8FC3dARbi+5lmrr5VyX5drragK+xLcOjvjYw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.0.5.tgz",
|
||||
"integrity": "sha512-ZO5DHfNV+kgEAeP3gK3XlpJLL4U3Sz6ebl/n68Uwt64qFFs5bv4bfEEjyRGK5uM0C90ewooNgFuKMdkbEoMEXw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@sinonjs/fake-timers": "^13.0.0",
|
||||
"@types/node": "*",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/globals": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.0.4.tgz",
|
||||
"integrity": "sha512-avyZuxEHF2EUhFF6NEWVdxkRRV6iXXcIES66DLhuLlU7lXhtFG/ySq/a8SRZmEJSsLkNAFX6z6mm8KWyXe9OEA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.0.5.tgz",
|
||||
"integrity": "sha512-7oEJT19WW4oe6HR7oLRvHxwlJk2gev0U9px3ufs8sX9PoD1Eza68KF0/tlN7X0dq/WVsBScXQGgCldA1V9Y/jA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/expect": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"jest-mock": "30.0.2"
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/expect": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"jest-mock": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/reporters": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.0.4.tgz",
|
||||
"integrity": "sha512-6ycNmP0JSJEEys1FbIzHtjl9BP0tOZ/KN6iMeAKrdvGmUsa1qfRdlQRUDKJ4P84hJ3xHw1yTqJt4fvPNHhyE+g==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.0.5.tgz",
|
||||
"integrity": "sha512-mafft7VBX4jzED1FwGC1o/9QUM2xebzavImZMeqnsklgcyxBto8mV4HzNSzUrryJ+8R9MFOM3HgYuDradWR+4g==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@bcoe/v8-coverage": "^0.2.3",
|
||||
"@jest/console": "30.0.4",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/console": "30.0.5",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@jridgewell/trace-mapping": "^0.3.25",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
@@ -15831,9 +15831,9 @@
|
||||
"istanbul-lib-report": "^3.0.0",
|
||||
"istanbul-lib-source-maps": "^5.0.0",
|
||||
"istanbul-reports": "^3.1.3",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-worker": "30.0.2",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-worker": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"string-length": "^4.0.2",
|
||||
"v8-to-istanbul": "^9.0.1"
|
||||
@@ -15851,9 +15851,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/schemas": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.1.tgz",
|
||||
"integrity": "sha512-+g/1TKjFuGrf1Hh0QPCv0gISwBxJ+MQSNXmG9zjHy7BmFhtoJ9fdNhWJp3qUKRi93AOZHXtdxZgJ1vAtz6z65w==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz",
|
||||
"integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -15879,14 +15879,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/test-result": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.0.4.tgz",
|
||||
"integrity": "sha512-Mfpv8kjyKTHqsuu9YugB6z1gcdB3TSSOaKlehtVaiNlClMkEHY+5ZqCY2CrEE3ntpBMlstX/ShDAf84HKWsyIw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.0.5.tgz",
|
||||
"integrity": "sha512-wPyztnK0gbDMQAJZ43tdMro+qblDHH1Ru/ylzUo21TBKqt88ZqnKKK2m30LKmLLoKtR2lxdpCC/P3g1vfKcawQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/console": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/console": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/istanbul-lib-coverage": "^2.0.6",
|
||||
"collect-v8-coverage": "^1.0.2"
|
||||
},
|
||||
@@ -15895,15 +15895,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/test-sequencer": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.0.4.tgz",
|
||||
"integrity": "sha512-bj6ePmqi4uxAE8EHE0Slmk5uBYd9Vd/PcVt06CsBxzH4bbA8nGsI1YbXl/NH+eii4XRtyrRx+Cikub0x8H4vDg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.0.5.tgz",
|
||||
"integrity": "sha512-Aea/G1egWoIIozmDD7PBXUOxkekXl7ueGzrsGGi1SbeKgQqCYCIf+wfbflEbf2LiPxL8j2JZGLyrzZagjvW4YQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"slash": "^3.0.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -15911,23 +15911,23 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/transform": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.0.4.tgz",
|
||||
"integrity": "sha512-atvy4hRph/UxdCIBp+UB2jhEA/jJiUeGZ7QPgBi9jUUKNgi3WEoMXGNG7zbbELG2+88PMabUNCDchmqgJy3ELg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.0.5.tgz",
|
||||
"integrity": "sha512-Vk8amLQCmuZyy6GbBht1Jfo9RSdBtg7Lks+B0PecnjI8J+PCLQPGh7uI8Q/2wwpW2gLdiAfiHNsmekKlywULqg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.27.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@jridgewell/trace-mapping": "^0.3.25",
|
||||
"babel-plugin-istanbul": "^7.0.0",
|
||||
"chalk": "^4.1.2",
|
||||
"convert-source-map": "^2.0.0",
|
||||
"fast-json-stable-stringify": "^2.1.0",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"micromatch": "^4.0.8",
|
||||
"pirates": "^4.0.7",
|
||||
"slash": "^3.0.0",
|
||||
@@ -15938,14 +15938,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@jest/types": {
|
||||
"version": "30.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.1.tgz",
|
||||
"integrity": "sha512-HGwoYRVF0QSKJu1ZQX0o5ZrUrrhj0aOOFA8hXrumD7SIzjouevhawbTjmXdwOmURdGluU9DM/XvGm3NyFoiQjw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.0.5.tgz",
|
||||
"integrity": "sha512-aREYa3aku9SSnea4aX6bhKn4bgv3AXkgijoQgbYV3yvbiGt6z+MQ85+6mIhx9DsKW2BuB/cLR/A+tcMThx+KLQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"@types/istanbul-lib-coverage": "^2.0.6",
|
||||
"@types/istanbul-reports": "^3.0.4",
|
||||
"@types/node": "*",
|
||||
@@ -15957,9 +15957,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/@sinclair/typebox": {
|
||||
"version": "0.34.37",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.37.tgz",
|
||||
"integrity": "sha512-2TRuQVgQYfy+EzHRTIvkhv2ADEouJ2xNS/Vq+W5EuuewBdOrvATvljZTxHWZSTYr2sTjTHpGvucaGAt67S2akw==",
|
||||
"version": "0.34.38",
|
||||
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.38.tgz",
|
||||
"integrity": "sha512-HpkxMmc2XmZKhvaKIZZThlHmx1L0I/V1hWK1NubtlFnr6ZqdiOpV72TKudZUNQjZNsyDBay72qFEhEvb+bcwcA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT"
|
||||
},
|
||||
@@ -15987,13 +15987,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/babel-jest": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.0.4.tgz",
|
||||
"integrity": "sha512-UjG2j7sAOqsp2Xua1mS/e+ekddkSu3wpf4nZUSvXNHuVWdaOUXQ77+uyjJLDE9i0atm5x4kds8K9yb5lRsRtcA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.0.5.tgz",
|
||||
"integrity": "sha512-mRijnKimhGDMsizTvBTWotwNpzrkHr+VvZUQBof2AufXKB8NXrL1W69TG20EvOz7aevx6FTJIaBuBkYxS8zolg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@types/babel__core": "^7.20.5",
|
||||
"babel-plugin-istanbul": "^7.0.0",
|
||||
"babel-preset-jest": "30.0.1",
|
||||
@@ -16091,18 +16091,18 @@
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/jest/node_modules/expect": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/expect/-/expect-30.0.4.tgz",
|
||||
"integrity": "sha512-dDLGjnP2cKbEppxVICxI/Uf4YemmGMPNy0QytCbfafbpYk9AFQsxb8Uyrxii0RPK7FWgLGlSem+07WirwS3cFQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/expect/-/expect-30.0.5.tgz",
|
||||
"integrity": "sha512-P0te2pt+hHI5qLJkIR+iMvS+lYUZml8rKKsohVHAGY+uClp9XVbdyYNJOIjSRpHVp8s8YqxJCiHUkSYZGr8rtQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/expect-utils": "30.0.4",
|
||||
"@jest/expect-utils": "30.0.5",
|
||||
"@jest/get-type": "30.0.1",
|
||||
"jest-matcher-utils": "30.0.4",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-matcher-utils": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
@@ -16175,14 +16175,14 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-changed-files": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.0.2.tgz",
|
||||
"integrity": "sha512-Ius/iRST9FKfJI+I+kpiDh8JuUlAISnRszF9ixZDIqJF17FckH5sOzKC8a0wd0+D+8em5ADRHA5V5MnfeDk2WA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.0.5.tgz",
|
||||
"integrity": "sha512-bGl2Ntdx0eAwXuGpdLdVYVr5YQHnSZlQ0y9HVDu565lCUAe9sj6JOtBbMmBBikGIegne9piDDIOeiLVoqTkz4A==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"execa": "^5.1.1",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"p-limit": "^3.1.0"
|
||||
},
|
||||
"engines": {
|
||||
@@ -16190,29 +16190,29 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-circus": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.0.4.tgz",
|
||||
"integrity": "sha512-o6UNVfbXbmzjYgmVPtSQrr5xFZCtkDZGdTlptYvGFSN80RuOOlTe73djvMrs+QAuSERZWcHBNIOMH+OEqvjWuw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.0.5.tgz",
|
||||
"integrity": "sha512-h/sjXEs4GS+NFFfqBDYT7y5Msfxh04EwWLhQi0F8kuWpe+J/7tICSlswU8qvBqumR3kFgHbfu7vU6qruWWBPug==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/expect": "30.0.4",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/expect": "30.0.5",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"co": "^4.6.0",
|
||||
"dedent": "^1.6.0",
|
||||
"is-generator-fn": "^2.1.0",
|
||||
"jest-each": "30.0.2",
|
||||
"jest-matcher-utils": "30.0.4",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-runtime": "30.0.4",
|
||||
"jest-snapshot": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-each": "30.0.5",
|
||||
"jest-matcher-utils": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-runtime": "30.0.5",
|
||||
"jest-snapshot": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"p-limit": "^3.1.0",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"pure-rand": "^7.0.0",
|
||||
"slash": "^3.0.0",
|
||||
"stack-utils": "^2.0.6"
|
||||
@@ -16222,21 +16222,21 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-cli": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.0.4.tgz",
|
||||
"integrity": "sha512-3dOrP3zqCWBkjoVG1zjYJpD9143N9GUCbwaF2pFF5brnIgRLHmKcCIw+83BvF1LxggfMWBA0gxkn6RuQVuRhIQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.0.5.tgz",
|
||||
"integrity": "sha512-Sa45PGMkBZzF94HMrlX4kUyPOwUpdZasaliKN3mifvDmkhLYqLLg8HQTzn6gq7vJGahFYMQjXgyJWfYImKZzOw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/core": "30.0.4",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/core": "30.0.5",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"chalk": "^4.1.2",
|
||||
"exit-x": "^0.2.2",
|
||||
"import-local": "^3.2.0",
|
||||
"jest-config": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-validate": "30.0.2",
|
||||
"jest-config": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-validate": "30.0.5",
|
||||
"yargs": "^17.7.2"
|
||||
},
|
||||
"bin": {
|
||||
@@ -16255,34 +16255,34 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-config": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.0.4.tgz",
|
||||
"integrity": "sha512-3dzbO6sh34thAGEjJIW0fgT0GA0EVlkski6ZzMcbW6dzhenylXAE/Mj2MI4HonroWbkKc6wU6bLVQ8dvBSZ9lA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.0.5.tgz",
|
||||
"integrity": "sha512-aIVh+JNOOpzUgzUnPn5FLtyVnqc3TQHVMupYtyeURSb//iLColiMIR8TxCIDKyx9ZgjKnXGucuW68hCxgbrwmA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/core": "^7.27.4",
|
||||
"@jest/get-type": "30.0.1",
|
||||
"@jest/pattern": "30.0.1",
|
||||
"@jest/test-sequencer": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"babel-jest": "30.0.4",
|
||||
"@jest/test-sequencer": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"babel-jest": "30.0.5",
|
||||
"chalk": "^4.1.2",
|
||||
"ci-info": "^4.2.0",
|
||||
"deepmerge": "^4.3.1",
|
||||
"glob": "^10.3.10",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-circus": "30.0.4",
|
||||
"jest-circus": "30.0.5",
|
||||
"jest-docblock": "30.0.1",
|
||||
"jest-environment-node": "30.0.4",
|
||||
"jest-environment-node": "30.0.5",
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-resolve": "30.0.2",
|
||||
"jest-runner": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-validate": "30.0.2",
|
||||
"jest-resolve": "30.0.5",
|
||||
"jest-runner": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-validate": "30.0.5",
|
||||
"micromatch": "^4.0.8",
|
||||
"parse-json": "^5.2.0",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"strip-json-comments": "^3.1.1"
|
||||
},
|
||||
@@ -16307,16 +16307,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-diff": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.0.4.tgz",
|
||||
"integrity": "sha512-TSjceIf6797jyd+R64NXqicttROD+Qf98fex7CowmlSn7f8+En0da1Dglwr1AXxDtVizoxXYZBlUQwNhoOXkNw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.0.5.tgz",
|
||||
"integrity": "sha512-1UIqE9PoEKaHcIKvq2vbibrCog4Y8G0zmOxgQUVEiTqwR5hJVMCoDsN1vFvI5JvwD37hjueZ1C4l2FyGnfpE0A==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/diff-sequences": "30.0.1",
|
||||
"@jest/get-type": "30.0.1",
|
||||
"chalk": "^4.1.2",
|
||||
"pretty-format": "30.0.2"
|
||||
"pretty-format": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
@@ -16336,56 +16336,56 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-each": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.0.2.tgz",
|
||||
"integrity": "sha512-ZFRsTpe5FUWFQ9cWTMguCaiA6kkW5whccPy9JjD1ezxh+mJeqmz8naL8Fl/oSbNJv3rgB0x87WBIkA5CObIUZQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.0.5.tgz",
|
||||
"integrity": "sha512-dKjRsx1uZ96TVyejD3/aAWcNKy6ajMaN531CwWIsrazIqIoXI9TnnpPlkrEYku/8rkS3dh2rbH+kMOyiEIv0xQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/get-type": "30.0.1",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"chalk": "^4.1.2",
|
||||
"jest-util": "30.0.2",
|
||||
"pretty-format": "30.0.2"
|
||||
"jest-util": "30.0.5",
|
||||
"pretty-format": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-environment-node": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.0.4.tgz",
|
||||
"integrity": "sha512-p+rLEzC2eThXqiNh9GHHTC0OW5Ca4ZfcURp7scPjYBcmgpR9HG6750716GuUipYf2AcThU3k20B31USuiaaIEg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.0.5.tgz",
|
||||
"integrity": "sha512-ppYizXdLMSvciGsRsMEnv/5EFpvOdXBaXRBzFUDPWrsfmog4kYrOGWXarLllz6AXan6ZAA/kYokgDWuos1IKDA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-validate": "30.0.2"
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-validate": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-haste-map": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.0.2.tgz",
|
||||
"integrity": "sha512-telJBKpNLeCb4MaX+I5k496556Y2FiKR/QLZc0+MGBYl4k3OO0472drlV2LUe7c1Glng5HuAu+5GLYp//GpdOQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.0.5.tgz",
|
||||
"integrity": "sha512-dkmlWNlsTSR0nH3nRfW5BKbqHefLZv0/6LCccG0xFCTWcJu8TuEwG+5Cm75iBfjVoockmO6J35o5gxtFSn5xeg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"anymatch": "^3.1.3",
|
||||
"fb-watchman": "^2.0.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-worker": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-worker": "30.0.5",
|
||||
"micromatch": "^4.0.8",
|
||||
"walker": "^1.0.8"
|
||||
},
|
||||
@@ -16397,49 +16397,49 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-leak-detector": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.0.2.tgz",
|
||||
"integrity": "sha512-U66sRrAYdALq+2qtKffBLDWsQ/XoNNs2Lcr83sc9lvE/hEpNafJlq2lXCPUBMNqamMECNxSIekLfe69qg4KMIQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.0.5.tgz",
|
||||
"integrity": "sha512-3Uxr5uP8jmHMcsOtYMRB/zf1gXN3yUIc+iPorhNETG54gErFIiUhLvyY/OggYpSMOEYqsmRxmuU4ZOoX5jpRFg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/get-type": "30.0.1",
|
||||
"pretty-format": "30.0.2"
|
||||
"pretty-format": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-matcher-utils": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.0.4.tgz",
|
||||
"integrity": "sha512-ubCewJ54YzeAZ2JeHHGVoU+eDIpQFsfPQs0xURPWoNiO42LGJ+QGgfSf+hFIRplkZDkhH5MOvuxHKXRTUU3dUQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.0.5.tgz",
|
||||
"integrity": "sha512-uQgGWt7GOrRLP1P7IwNWwK1WAQbq+m//ZY0yXygyfWp0rJlksMSLQAA4wYQC3b6wl3zfnchyTx+k3HZ5aPtCbQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/get-type": "30.0.1",
|
||||
"chalk": "^4.1.2",
|
||||
"jest-diff": "30.0.4",
|
||||
"pretty-format": "30.0.2"
|
||||
"jest-diff": "30.0.5",
|
||||
"pretty-format": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-message-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.2.tgz",
|
||||
"integrity": "sha512-vXywcxmr0SsKXF/bAD7t7nMamRvPuJkras00gqYeB1V0WllxZrbZ0paRr3XqpFU2sYYjD0qAaG2fRyn/CGZ0aw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.0.5.tgz",
|
||||
"integrity": "sha512-NAiDOhsK3V7RU0Aa/HnrQo+E4JlbarbmI3q6Pi4KcxicdtjV82gcIUrejOtczChtVQR4kddu1E1EJlW6EN9IyA==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@babel/code-frame": "^7.27.1",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/stack-utils": "^2.0.3",
|
||||
"chalk": "^4.1.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"micromatch": "^4.0.8",
|
||||
"pretty-format": "30.0.2",
|
||||
"pretty-format": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"stack-utils": "^2.0.6"
|
||||
},
|
||||
@@ -16448,15 +16448,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-mock": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.2.tgz",
|
||||
"integrity": "sha512-PnZOHmqup/9cT/y+pXIVbbi8ID6U1XHRmbvR7MvUy4SLqhCbwpkmXhLbsWbGewHrV5x/1bF7YDjs+x24/QSvFA==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.0.5.tgz",
|
||||
"integrity": "sha512-Od7TyasAAQX/6S+QCbN6vZoWOMwlTtzzGuxJku1GhGanAjz9y+QsQkpScDmETvdc9aSXyJ/Op4rhpMYBWW91wQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"jest-util": "30.0.2"
|
||||
"jest-util": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
@@ -16473,18 +16473,18 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-resolve": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.0.2.tgz",
|
||||
"integrity": "sha512-q/XT0XQvRemykZsvRopbG6FQUT6/ra+XV6rPijyjT6D0msOyCvR2A5PlWZLd+fH0U8XWKZfDiAgrUNDNX2BkCw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.0.5.tgz",
|
||||
"integrity": "sha512-d+DjBQ1tIhdz91B79mywH5yYu76bZuE96sSbxj8MkjWVx5WNdt1deEFRONVL4UkKLSrAbMkdhb24XN691yDRHg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"chalk": "^4.1.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"jest-pnp-resolver": "^1.2.3",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-validate": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-validate": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"unrs-resolver": "^1.7.11"
|
||||
},
|
||||
@@ -16493,46 +16493,46 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-resolve-dependencies": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.0.4.tgz",
|
||||
"integrity": "sha512-EQBYow19B/hKr4gUTn+l8Z+YLlP2X0IoPyp0UydOtrcPbIOYzJ8LKdFd+yrbwztPQvmlBFUwGPPEzHH1bAvFAw==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.0.5.tgz",
|
||||
"integrity": "sha512-/xMvBR4MpwkrHW4ikZIWRttBBRZgWK4d6xt3xW1iRDSKt4tXzYkMkyPfBnSCgv96cpkrctfXs6gexeqMYqdEpw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-snapshot": "30.0.4"
|
||||
"jest-snapshot": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-runner": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.0.4.tgz",
|
||||
"integrity": "sha512-mxY0vTAEsowJwvFJo5pVivbCpuu6dgdXRmt3v3MXjBxFly7/lTk3Td0PaMyGOeNQUFmSuGEsGYqhbn7PA9OekQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.0.5.tgz",
|
||||
"integrity": "sha512-JcCOucZmgp+YuGgLAXHNy7ualBx4wYSgJVWrYMRBnb79j9PD0Jxh0EHvR5Cx/r0Ce+ZBC4hCdz2AzFFLl9hCiw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/console": "30.0.4",
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/console": "30.0.5",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"emittery": "^0.13.1",
|
||||
"exit-x": "^0.2.2",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-docblock": "30.0.1",
|
||||
"jest-environment-node": "30.0.4",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-leak-detector": "30.0.2",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-resolve": "30.0.2",
|
||||
"jest-runtime": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-watcher": "30.0.4",
|
||||
"jest-worker": "30.0.2",
|
||||
"jest-environment-node": "30.0.5",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"jest-leak-detector": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-resolve": "30.0.5",
|
||||
"jest-runtime": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"jest-watcher": "30.0.5",
|
||||
"jest-worker": "30.0.5",
|
||||
"p-limit": "^3.1.0",
|
||||
"source-map-support": "0.5.13"
|
||||
},
|
||||
@@ -16541,32 +16541,32 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-runtime": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.0.4.tgz",
|
||||
"integrity": "sha512-tUQrZ8+IzoZYIHoPDQEB4jZoPyzBjLjq7sk0KVyd5UPRjRDOsN7o6UlvaGF8ddpGsjznl9PW+KRgWqCNO+Hn7w==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.0.5.tgz",
|
||||
"integrity": "sha512-7oySNDkqpe4xpX5PPiJTe5vEa+Ak/NnNz2bGYZrA1ftG3RL3EFlHaUkA1Cjx+R8IhK0Vg43RML5mJedGTPNz3A==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/environment": "30.0.4",
|
||||
"@jest/fake-timers": "30.0.4",
|
||||
"@jest/globals": "30.0.4",
|
||||
"@jest/environment": "30.0.5",
|
||||
"@jest/fake-timers": "30.0.5",
|
||||
"@jest/globals": "30.0.5",
|
||||
"@jest/source-map": "30.0.1",
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"cjs-module-lexer": "^2.1.0",
|
||||
"collect-v8-coverage": "^1.0.2",
|
||||
"glob": "^10.3.10",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-haste-map": "30.0.2",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-mock": "30.0.2",
|
||||
"jest-haste-map": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-mock": "30.0.5",
|
||||
"jest-regex-util": "30.0.1",
|
||||
"jest-resolve": "30.0.2",
|
||||
"jest-snapshot": "30.0.4",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-resolve": "30.0.5",
|
||||
"jest-snapshot": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"slash": "^3.0.0",
|
||||
"strip-bom": "^4.0.0"
|
||||
},
|
||||
@@ -16575,9 +16575,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-snapshot": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.0.4.tgz",
|
||||
"integrity": "sha512-S/8hmSkeUib8WRUq9pWEb5zMfsOjiYWDWzFzKnjX7eDyKKgimsu9hcmsUEg8a7dPAw8s/FacxsXquq71pDgPjQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.0.5.tgz",
|
||||
"integrity": "sha512-T00dWU/Ek3LqTp4+DcW6PraVxjk28WY5Ua/s+3zUKSERZSNyxTqhDXCWKG5p2HAJ+crVQ3WJ2P9YVHpj1tkW+g==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -16586,20 +16586,20 @@
|
||||
"@babel/plugin-syntax-jsx": "^7.27.1",
|
||||
"@babel/plugin-syntax-typescript": "^7.27.1",
|
||||
"@babel/types": "^7.27.3",
|
||||
"@jest/expect-utils": "30.0.4",
|
||||
"@jest/expect-utils": "30.0.5",
|
||||
"@jest/get-type": "30.0.1",
|
||||
"@jest/snapshot-utils": "30.0.4",
|
||||
"@jest/transform": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/snapshot-utils": "30.0.5",
|
||||
"@jest/transform": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"babel-preset-current-node-syntax": "^1.1.0",
|
||||
"chalk": "^4.1.2",
|
||||
"expect": "30.0.4",
|
||||
"expect": "30.0.5",
|
||||
"graceful-fs": "^4.2.11",
|
||||
"jest-diff": "30.0.4",
|
||||
"jest-matcher-utils": "30.0.4",
|
||||
"jest-message-util": "30.0.2",
|
||||
"jest-util": "30.0.2",
|
||||
"pretty-format": "30.0.2",
|
||||
"jest-diff": "30.0.5",
|
||||
"jest-matcher-utils": "30.0.5",
|
||||
"jest-message-util": "30.0.5",
|
||||
"jest-util": "30.0.5",
|
||||
"pretty-format": "30.0.5",
|
||||
"semver": "^7.7.2",
|
||||
"synckit": "^0.11.8"
|
||||
},
|
||||
@@ -16621,13 +16621,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-util": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.2.tgz",
|
||||
"integrity": "sha512-8IyqfKS4MqprBuUpZNlFB5l+WFehc8bfCe1HSZFHzft2mOuND8Cvi9r1musli+u6F3TqanCZ/Ik4H4pXUolZIg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.0.5.tgz",
|
||||
"integrity": "sha512-pvyPWssDZR0FlfMxCBoc0tvM8iUEskaRFALUtGQYzVEAqisAztmy+R8LnU14KT4XA0H/a5HMVTXat1jLne010g==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"chalk": "^4.1.2",
|
||||
"ci-info": "^4.2.0",
|
||||
@@ -16639,37 +16639,37 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-validate": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.0.2.tgz",
|
||||
"integrity": "sha512-noOvul+SFER4RIvNAwGn6nmV2fXqBq67j+hKGHKGFCmK4ks/Iy1FSrqQNBLGKlu4ZZIRL6Kg1U72N1nxuRCrGQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.0.5.tgz",
|
||||
"integrity": "sha512-ouTm6VFHaS2boyl+k4u+Qip4TSH7Uld5tyD8psQ8abGgt2uYYB8VwVfAHWHjHc0NWmGGbwO5h0sCPOGHHevefw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/get-type": "30.0.1",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/types": "30.0.5",
|
||||
"camelcase": "^6.3.0",
|
||||
"chalk": "^4.1.2",
|
||||
"leven": "^3.1.0",
|
||||
"pretty-format": "30.0.2"
|
||||
"pretty-format": "30.0.5"
|
||||
},
|
||||
"engines": {
|
||||
"node": "^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-watcher": {
|
||||
"version": "30.0.4",
|
||||
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.0.4.tgz",
|
||||
"integrity": "sha512-YESbdHDs7aQOCSSKffG8jXqOKFqw4q4YqR+wHYpR5GWEQioGvL0BfbcjvKIvPEM0XGfsfJrka7jJz3Cc3gI4VQ==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.0.5.tgz",
|
||||
"integrity": "sha512-z9slj/0vOwBDBjN3L4z4ZYaA+pG56d6p3kTUhFRYGvXbXMWhXmb/FIxREZCD06DYUwDKKnj2T80+Pb71CQ0KEg==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/test-result": "30.0.4",
|
||||
"@jest/types": "30.0.1",
|
||||
"@jest/test-result": "30.0.5",
|
||||
"@jest/types": "30.0.5",
|
||||
"@types/node": "*",
|
||||
"ansi-escapes": "^4.3.2",
|
||||
"chalk": "^4.1.2",
|
||||
"emittery": "^0.13.1",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"string-length": "^4.0.2"
|
||||
},
|
||||
"engines": {
|
||||
@@ -16677,15 +16677,15 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/jest-worker": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.0.2.tgz",
|
||||
"integrity": "sha512-RN1eQmx7qSLFA+o9pfJKlqViwL5wt+OL3Vff/A+/cPsmuw7NPwfgl33AP+/agRmHzPOFgXviRycR9kYwlcRQXg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.0.5.tgz",
|
||||
"integrity": "sha512-ojRXsWzEP16NdUuBw/4H/zkZdHOa7MMYCk4E430l+8fELeLg/mqmMlRhjL7UNZvQrDmnovWZV4DxX03fZF48fQ==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/node": "*",
|
||||
"@ungap/structured-clone": "^1.3.0",
|
||||
"jest-util": "30.0.2",
|
||||
"jest-util": "30.0.5",
|
||||
"merge-stream": "^2.0.0",
|
||||
"supports-color": "^8.1.1"
|
||||
},
|
||||
@@ -16710,9 +16710,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/picomatch": {
|
||||
"version": "4.0.2",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz",
|
||||
"integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==",
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz",
|
||||
"integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
@@ -16723,13 +16723,13 @@
|
||||
}
|
||||
},
|
||||
"node_modules/jest/node_modules/pretty-format": {
|
||||
"version": "30.0.2",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.2.tgz",
|
||||
"integrity": "sha512-yC5/EBSOrTtqhCKfLHqoUIAXVRZnukHPwWBJWR7h84Q3Be1DRQZLncwcfLoPA5RPQ65qfiCMqgYwdUuQ//eVpg==",
|
||||
"version": "30.0.5",
|
||||
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.0.5.tgz",
|
||||
"integrity": "sha512-D1tKtYvByrBkFLe2wHJl2bwMJIiT8rW+XA+TiataH79/FszLQMrpGEvzUVkzPau7OCO0Qnrhpe87PqtOAIB8Yw==",
|
||||
"devOptional": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@jest/schemas": "30.0.1",
|
||||
"@jest/schemas": "30.0.5",
|
||||
"ansi-styles": "^5.2.0",
|
||||
"react-is": "^18.3.1"
|
||||
},
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
"snapshot": "fedx-scripts jest --updateSnapshot",
|
||||
"start": "fedx-scripts webpack-dev-server --progress",
|
||||
"test": "fedx-scripts jest --coverage",
|
||||
"test:dev": "fedx-scripts jest --watchAll",
|
||||
"types": "tsc --noEmit"
|
||||
},
|
||||
"files": [
|
||||
@@ -39,7 +40,7 @@
|
||||
"@testing-library/dom": "^10.4.0",
|
||||
"@testing-library/jest-dom": "5.17.0",
|
||||
"@testing-library/react": "^16.2.0",
|
||||
"jest": "30.0.4",
|
||||
"jest": "30.0.5",
|
||||
"jest-environment-jsdom": "^30.0.0",
|
||||
"prop-types": "15.8.1",
|
||||
"react": "^18.3.1",
|
||||
@@ -70,3 +71,4 @@
|
||||
"react-router-dom": "^6.14.2"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -4,8 +4,9 @@ import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
||||
import { getConfig } from '@edx/frontend-platform';
|
||||
|
||||
// Local Components
|
||||
import DesktopUserMenuToggleSlot
|
||||
from '../plugin-slots/DesktopUserMenuToggleSlot';
|
||||
import { Menu, MenuTrigger, MenuContent } from '../Menu';
|
||||
import Avatar from '../Avatar';
|
||||
import LogoSlot from '../plugin-slots/LogoSlot';
|
||||
import DesktopLoggedOutItemsSlot from '../plugin-slots/DesktopLoggedOutItemsSlot';
|
||||
import { desktopLoggedOutItemsDataShape } from './DesktopLoggedOutItems';
|
||||
@@ -19,7 +20,6 @@ import { desktopUserMenuDataShape } from './DesktopHeaderUserMenu';
|
||||
import messages from '../Header.messages';
|
||||
|
||||
// Assets
|
||||
import { CaretIcon } from '../Icons';
|
||||
|
||||
class DesktopHeader extends React.Component {
|
||||
constructor(props) { // eslint-disable-line @typescript-eslint/no-useless-constructor
|
||||
@@ -51,8 +51,7 @@ class DesktopHeader extends React.Component {
|
||||
aria-label={intl.formatMessage(messages['header.label.account.menu.for'], { username })}
|
||||
className="btn btn-outline-primary d-inline-flex align-items-center pl-2 pr-3"
|
||||
>
|
||||
<Avatar size="1.5em" src={avatar} alt="" className="mr-2" />
|
||||
{username} <CaretIcon role="img" aria-hidden focusable="false" />
|
||||
<DesktopUserMenuToggleSlot avatar={avatar} label={username} />
|
||||
</MenuTrigger>
|
||||
<MenuContent className="mb-0 dropdown-menu show dropdown-menu-right pin-right shadow py-2">
|
||||
<DesktopUserMenuSlot menu={userMenu} />
|
||||
@@ -123,15 +122,15 @@ export const desktopHeaderDataShape = {
|
||||
|
||||
DesktopHeader.propTypes = {
|
||||
mainMenu: desktopHeaderDataShape.mainMenu,
|
||||
secondaryMenu: desktopHeaderDataShape.secondaryMenumainMenu,
|
||||
userMenu: desktopHeaderDataShape.userMenumainMenu,
|
||||
loggedOutItems: desktopHeaderDataShape.loggedOutItemsmainMenu,
|
||||
logo: desktopHeaderDataShape.logomainMenu,
|
||||
logoAltText: desktopHeaderDataShape.logoAltTextmainMenu,
|
||||
logoDestination: desktopHeaderDataShape.logoDestinationmainMenu,
|
||||
avatar: desktopHeaderDataShape.avatarmainMenu,
|
||||
username: desktopHeaderDataShape.usernamemainMenu,
|
||||
loggedIn: desktopHeaderDataShape.loggedInmainMenu,
|
||||
secondaryMenu: desktopHeaderDataShape.secondaryMenu,
|
||||
userMenu: desktopHeaderDataShape.userMenu,
|
||||
loggedOutItems: desktopHeaderDataShape.loggedOutItems,
|
||||
logo: desktopHeaderDataShape.logo,
|
||||
logoAltText: desktopHeaderDataShape.logoAltText,
|
||||
logoDestination: desktopHeaderDataShape.logoDestination,
|
||||
avatar: desktopHeaderDataShape.avatar,
|
||||
username: desktopHeaderDataShape.username,
|
||||
loggedIn: desktopHeaderDataShape.loggedIn,
|
||||
|
||||
// i18n
|
||||
intl: intlShape.isRequired,
|
||||
|
||||
20
src/desktop-header/DesktopUserMenuToggle.jsx
Normal file
20
src/desktop-header/DesktopUserMenuToggle.jsx
Normal file
@@ -0,0 +1,20 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import { CaretIcon } from '../Icons';
|
||||
import Avatar from '../Avatar';
|
||||
|
||||
const DesktopUserMenuToggle = ({ avatar, label }) => (
|
||||
<>
|
||||
<Avatar size="1.5em" src={avatar} alt="" className="mr-2" />
|
||||
{label} <CaretIcon role="img" aria-hidden focusable="false" />
|
||||
</>
|
||||
);
|
||||
|
||||
export const DesktopUserMenuTogglePropTypes = {
|
||||
avatar: PropTypes.string,
|
||||
label: PropTypes.string,
|
||||
};
|
||||
|
||||
DesktopUserMenuToggle.propTypes = DesktopUserMenuTogglePropTypes;
|
||||
|
||||
export default DesktopUserMenuToggle;
|
||||
@@ -1,12 +1,12 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
||||
import { faUserCircle } from '@fortawesome/free-solid-svg-icons';
|
||||
import { getConfig } from '@edx/frontend-platform';
|
||||
import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
||||
import { Dropdown } from '@openedx/paragon';
|
||||
|
||||
import LearningUserMenuToggleSlot from '../plugin-slots/LearningUserMenuToggleSlot';
|
||||
import LearningUserMenuSlot from '../plugin-slots/LearningUserMenuSlot';
|
||||
|
||||
import messages from './messages';
|
||||
@@ -38,10 +38,7 @@ const AuthenticatedUserDropdown = ({ intl, username }) => {
|
||||
return (
|
||||
<Dropdown className="user-dropdown ml-3">
|
||||
<Dropdown.Toggle variant="outline-primary" aria-label={intl.formatMessage(messages.userOptionsDropdownLabel)}>
|
||||
<FontAwesomeIcon icon={faUserCircle} className="d-md-none" size="lg" />
|
||||
<span data-hj-suppress className="d-none d-md-inline">
|
||||
{username}
|
||||
</span>
|
||||
<LearningUserMenuToggleSlot label={username} icon={faUserCircle} />
|
||||
</Dropdown.Toggle>
|
||||
<Dropdown.Menu className="dropdown-menu-right">
|
||||
<LearningUserMenuSlot items={dropdownItems} />
|
||||
|
||||
28
src/learning-header/LearningUserMenuToggle.jsx
Normal file
28
src/learning-header/LearningUserMenuToggle.jsx
Normal file
@@ -0,0 +1,28 @@
|
||||
import React from 'react';
|
||||
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
||||
import PropTypes from 'prop-types';
|
||||
|
||||
const LearningUserMenuToggle = ({
|
||||
label,
|
||||
icon,
|
||||
}) => (
|
||||
<>
|
||||
<FontAwesomeIcon icon={icon} className="d-md-none" size="lg" />
|
||||
<span data-hj-suppress className="d-none d-md-inline">
|
||||
{label}
|
||||
</span>
|
||||
</>
|
||||
);
|
||||
|
||||
export const LearningUserMenuTogglePropTypes = {
|
||||
label: PropTypes.string.isRequired,
|
||||
// Full shape available by examining @fortawesome/fontawesome-common-types/index.d.ts.
|
||||
icon: PropTypes.shape({
|
||||
prefix: PropTypes.string.isRequired,
|
||||
iconName: PropTypes.string.isRequired,
|
||||
}).isRequired,
|
||||
};
|
||||
|
||||
LearningUserMenuToggle.propTypes = LearningUserMenuTogglePropTypes;
|
||||
|
||||
export default LearningUserMenuToggle;
|
||||
@@ -4,8 +4,8 @@ import { injectIntl, intlShape } from '@edx/frontend-platform/i18n';
|
||||
import { getConfig } from '@edx/frontend-platform';
|
||||
|
||||
// Local Components
|
||||
import MobileUserMenuToggleSlot from '../plugin-slots/MobileUserMenuToggleSlot';
|
||||
import { Menu, MenuTrigger, MenuContent } from '../Menu';
|
||||
import Avatar from '../Avatar';
|
||||
import LogoSlot from '../plugin-slots/LogoSlot';
|
||||
import MobileLoggedOutItemsSlot from '../plugin-slots/MobileLoggedOutItemsSlot';
|
||||
import { mobileHeaderLoggedOutItemsDataShape } from './MobileLoggedOutItems';
|
||||
@@ -40,14 +40,17 @@ class MobileHeader extends React.Component {
|
||||
return <MobileLoggedOutItemsSlot items={loggedOutItems} />;
|
||||
}
|
||||
|
||||
renderUserMenuToggle() {
|
||||
const { avatar, username } = this.props;
|
||||
return <MobileUserMenuToggleSlot avatar={avatar} label={username} />;
|
||||
}
|
||||
|
||||
render() {
|
||||
const {
|
||||
logo,
|
||||
logoAltText,
|
||||
logoDestination,
|
||||
loggedIn,
|
||||
avatar,
|
||||
username,
|
||||
stickyOnMobile,
|
||||
intl,
|
||||
mainMenu,
|
||||
@@ -98,7 +101,7 @@ class MobileHeader extends React.Component {
|
||||
aria-label={intl.formatMessage(messages['header.label.account.menu'])}
|
||||
title={intl.formatMessage(messages['header.label.account.menu'])}
|
||||
>
|
||||
<Avatar size="1.5rem" src={avatar} alt={username} />
|
||||
{this.renderUserMenuToggle()}
|
||||
</MenuTrigger>
|
||||
<MenuContent tag="ul" className="nav flex-column pin-left pin-right border-top shadow py-2">
|
||||
{loggedIn ? this.renderUserMenuItems() : this.renderLoggedOutItems()}
|
||||
|
||||
14
src/mobile-header/MobileUserMenuToggle.jsx
Normal file
14
src/mobile-header/MobileUserMenuToggle.jsx
Normal file
@@ -0,0 +1,14 @@
|
||||
import React from 'react';
|
||||
import PropTypes from 'prop-types';
|
||||
import Avatar from '../Avatar';
|
||||
|
||||
const MobileUserMenuToggle = ({ avatar, username }) => <Avatar size="1.5rem" src={avatar} alt={username} />;
|
||||
|
||||
export const MobileUserMenuTogglePropTypes = {
|
||||
avatar: PropTypes.string,
|
||||
username: PropTypes.string,
|
||||
};
|
||||
|
||||
MobileUserMenuToggle.propTypes = MobileUserMenuTogglePropTypes;
|
||||
|
||||
export default MobileUserMenuToggle;
|
||||
@@ -41,4 +41,4 @@ const config = {
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
```
|
||||
|
||||
74
src/plugin-slots/DesktopUserMenuToggleSlot/README.md
Normal file
74
src/plugin-slots/DesktopUserMenuToggleSlot/README.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# Desktop User Menu Toggle Slot
|
||||
|
||||
### Slot ID: `org.openedx.frontend.layout.header_desktop_user_menu_toggle.v1`
|
||||
|
||||
## Description
|
||||
|
||||
This slot is used to replace/modify/hide the contents of the user menu toggle button on desktop sized screens.
|
||||
|
||||
## Examples
|
||||
|
||||
### Modify Label Text
|
||||
|
||||
The following `env.config.jsx` will modify the label text to be something more generic:
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
import { faHouse } from '@fortawesome/free-solid-svg-icons';
|
||||
|
||||
const modifyUserMenuToggle = ( widget ) => {
|
||||
widget.content.label = "My Profile";
|
||||
return widget;
|
||||
};
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_desktop_user_menu_toggle.v1': {
|
||||
keepDefault: true,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Modify,
|
||||
widgetId: 'default_contents',
|
||||
fn: modifyUserMenuToggle,
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
|
||||
### Replace Menu toggle contents with Custom Component
|
||||
|
||||
The following `env.config.jsx` will replace the contents of the learning user menu toggle button entirely (in this case with an emoji)
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { DIRECT_PLUGIN, PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_desktop_user_menu_toggle.v1': {
|
||||
keepDefault: false,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Insert,
|
||||
widget: {
|
||||
id: 'custom_desktop_user_menu_toggle',
|
||||
type: DIRECT_PLUGIN,
|
||||
RenderWidget: () => (
|
||||
<span>🦊</span>
|
||||
),
|
||||
},
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 3.2 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 4.6 KiB |
21
src/plugin-slots/DesktopUserMenuToggleSlot/index.jsx
Normal file
21
src/plugin-slots/DesktopUserMenuToggleSlot/index.jsx
Normal file
@@ -0,0 +1,21 @@
|
||||
import React from 'react';
|
||||
import { PluginSlot } from '@openedx/frontend-plugin-framework';
|
||||
import DesktopUserMenuToggle, { DesktopUserMenuTogglePropTypes } from '../../desktop-header/DesktopUserMenuToggle';
|
||||
|
||||
const DesktopUserMenuToggleSlot = ({
|
||||
avatar,
|
||||
label,
|
||||
}) => (
|
||||
<PluginSlot
|
||||
id="org.openedx.frontend.layout.header_desktop_user_menu_toggle.v1"
|
||||
slotOptions={{
|
||||
mergeProps: true,
|
||||
}}
|
||||
>
|
||||
<DesktopUserMenuToggle avatar={avatar} label={label} />
|
||||
</PluginSlot>
|
||||
);
|
||||
|
||||
DesktopUserMenuToggleSlot.propTypes = DesktopUserMenuTogglePropTypes;
|
||||
|
||||
export default DesktopUserMenuToggleSlot;
|
||||
74
src/plugin-slots/LearningUserMenuToggleSlot/README.md
Normal file
74
src/plugin-slots/LearningUserMenuToggleSlot/README.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# Learning User Menu Toggle Slot
|
||||
|
||||
### Slot ID: `org.openedx.frontend.layout.header_learning_user_menu_toggle.v1`
|
||||
|
||||
## Description
|
||||
|
||||
This slot is used to replace/modify/hide the contents of the learning user menu toggle button.
|
||||
|
||||
## Examples
|
||||
|
||||
### Modify Icon
|
||||
|
||||
The following `env.config.jsx` will modify the icon for the learning user menu toggle button. **Note:** The icon is only shown on mobile screens.
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
import { faHouse } from '@fortawesome/free-solid-svg-icons';
|
||||
|
||||
const modifyUserMenuToggle = ( widget ) => {
|
||||
widget.content.icon = faHouse;
|
||||
return widget;
|
||||
};
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_learning_user_menu_toggle.v1': {
|
||||
keepDefault: true,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Modify,
|
||||
widgetId: 'default_contents',
|
||||
fn: modifyUserMenuToggle,
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
|
||||
### Replace Menu toggle contents with Custom Component
|
||||
|
||||
The following `env.config.jsx` will replace the contents of the learning user menu toggle button's contents entirely (in this case with an emoji)
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { DIRECT_PLUGIN, PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_learning_user_menu_toggle.v1': {
|
||||
keepDefault: false,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Insert,
|
||||
widget: {
|
||||
id: 'custom_learning_user_menu_toggle',
|
||||
type: DIRECT_PLUGIN,
|
||||
RenderWidget: () => (
|
||||
<span>🦊</span>
|
||||
),
|
||||
},
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
22
src/plugin-slots/LearningUserMenuToggleSlot/index.jsx
Normal file
22
src/plugin-slots/LearningUserMenuToggleSlot/index.jsx
Normal file
@@ -0,0 +1,22 @@
|
||||
import React from 'react';
|
||||
import { PluginSlot } from '@openedx/frontend-plugin-framework';
|
||||
import LearningUserMenuToggle, {
|
||||
LearningUserMenuTogglePropTypes,
|
||||
} from '../../learning-header/LearningUserMenuToggle';
|
||||
|
||||
const LearningUserMenuToggleSlot = ({
|
||||
label, icon,
|
||||
}) => (
|
||||
<PluginSlot
|
||||
id="org.openedx.frontend.layout.header_learning_user_menu_toggle.v1"
|
||||
slotOptions={{
|
||||
mergeProps: true,
|
||||
}}
|
||||
>
|
||||
<LearningUserMenuToggle label={label} icon={icon} />
|
||||
</PluginSlot>
|
||||
);
|
||||
|
||||
LearningUserMenuToggleSlot.propTypes = LearningUserMenuTogglePropTypes;
|
||||
|
||||
export default LearningUserMenuToggleSlot;
|
||||
74
src/plugin-slots/MobileUserMenuToggleSlot/README.md
Normal file
74
src/plugin-slots/MobileUserMenuToggleSlot/README.md
Normal file
@@ -0,0 +1,74 @@
|
||||
# Mobile User Menu Toggle Slot
|
||||
|
||||
### Slot ID: `org.openedx.frontend.layout.header_mobile_user_menu_trigger.v1`
|
||||
|
||||
## Description
|
||||
|
||||
This slot is used to replace/modify/hide the contents of the user menu toggle button on mobile screens.
|
||||
|
||||
## Examples
|
||||
|
||||
### Modify Avatar
|
||||
|
||||
The following `env.config.jsx` will modify the icon for the user menu toggle button on mobile.
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
|
||||
const modifyUserMenuToggle = ( widget ) => {
|
||||
// Shows a dummy image with the resolution marker '30x30'.
|
||||
widget.content.avatar = "https://dummyimage.com/30x30"
|
||||
return widget;
|
||||
};
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_mobile_user_menu_trigger.v1': {
|
||||
keepDefault: true,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Modify,
|
||||
widgetId: 'default_contents',
|
||||
fn: modifyUserMenuToggle,
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
|
||||
### Replace Menu toggle contents with Custom Component
|
||||
|
||||
The following `env.config.jsx` will replace the contents of the user menu toggle button's contents entirely (in this case with an emoji).
|
||||
|
||||

|
||||
|
||||
```jsx
|
||||
import { DIRECT_PLUGIN, PLUGIN_OPERATIONS } from '@openedx/frontend-plugin-framework';
|
||||
|
||||
const config = {
|
||||
pluginSlots: {
|
||||
'org.openedx.frontend.layout.header_mobile_user_menu_trigger.v1': {
|
||||
keepDefault: false,
|
||||
plugins: [
|
||||
{
|
||||
op: PLUGIN_OPERATIONS.Insert,
|
||||
widget: {
|
||||
id: 'custom_mobile_user_menu_toggle',
|
||||
type: DIRECT_PLUGIN,
|
||||
RenderWidget: () => (
|
||||
<span>🦊</span>
|
||||
),
|
||||
},
|
||||
},
|
||||
]
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
export default config;
|
||||
```
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 1.7 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
23
src/plugin-slots/MobileUserMenuToggleSlot/index.jsx
Normal file
23
src/plugin-slots/MobileUserMenuToggleSlot/index.jsx
Normal file
@@ -0,0 +1,23 @@
|
||||
import React from 'react';
|
||||
import { PluginSlot } from '@openedx/frontend-plugin-framework';
|
||||
import MobileUserMenuToggle, {
|
||||
MobileUserMenuTogglePropTypes,
|
||||
} from '../../mobile-header/MobileUserMenuToggle';
|
||||
|
||||
const MobileUserMenuToggleSlot = ({
|
||||
avatar,
|
||||
label,
|
||||
}) => (
|
||||
<PluginSlot
|
||||
id="org.openedx.frontend.layout.header_mobile_user_menu_trigger.v1"
|
||||
slotOptions={{
|
||||
mergeProps: true,
|
||||
}}
|
||||
>
|
||||
<MobileUserMenuToggle avatar={avatar} label={label} />
|
||||
</PluginSlot>
|
||||
);
|
||||
|
||||
MobileUserMenuToggleSlot.propTypes = MobileUserMenuTogglePropTypes;
|
||||
|
||||
export default MobileUserMenuToggleSlot;
|
||||
@@ -9,15 +9,18 @@
|
||||
* [`org.openedx.frontend.layout.header_desktop_main_menu.v1`](./DesktopMainMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_desktop_secondary_menu.v1`](./DesktopSecondaryMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_desktop_user_menu.v1`](./DesktopUserMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_desktop_user_menu_toggle.v1`](./DesktopUserMenuToggleSlot/)
|
||||
|
||||
### Learning Header
|
||||
* [`org.openedx.frontend.layout.header_learning_course_info.v1`](./CourseInfoSlot/)
|
||||
* [`org.openedx.frontend.layout.header_learning_help.v1`](./LearningHelpSlot/)
|
||||
* [`org.openedx.frontend.layout.header_learning_logged_out_items.v1`](./LearningLoggedOutItemsSlot/)
|
||||
* [`org.openedx.frontend.layout.header_learning_user_menu.v1`](./LearningUserMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_learning_user_menu.v1`](./LearningUserMenuSlot/)
|
||||
|
||||
### Mobile Header
|
||||
* [`org.openedx.frontend.layout.header_mobile.v1`](./MobileHeaderSlot/)
|
||||
* [`org.openedx.frontend.layout.header_mobile_logged_out_items.v1`](./MobileLoggedOutItemsSlot/)
|
||||
* [`org.openedx.frontend.layout.header_mobile_main_menu.v1`](./MobileMainMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_mobile_user_menu.v1`](./MobileUserMenuSlot/)
|
||||
* [`org.openedx.frontend.layout.header_mobile_user_menu_trigger.v1`](./MobileUserMenuToggleSlot/)
|
||||
|
||||
Reference in New Issue
Block a user