fix: add eslint-plugin-github and fix lint errors (#714)

* fix: add eslint-plugin-github and fix lint errors * Update theme/src/components/code.js Co-authored-by: Kendall Gassner <kendallgassner@github.com> * Update theme/src/components/code.js Co-authored-by: Kendall Gassner <kendallgassner@github.com> * indent * fix table of contents data --------- Co-authored-by: Kendall Gassner <kendallgassner@github.com>

Luke Karrys committed Sep 27, 2023 at 16:55 UTC a15e45f112bab438a0014dad4ce226c101c501e6
10 files changed +629 -515
.eslintrc.local.js
+3
@@ -1,4 +1,7 @@
1 module.exports = {
2 + extends: [
3 + 'plugin:github/react',
4 + ],
5 overrides: [{
6 files: ['src/**'],
7 parserOptions: {
package-lock.json
+554 -375
@@ -21,6 +21,7 @@
21 "devDependencies": {
22 "@npmcli/eslint-config": "^4.0.1",
23 "@npmcli/template-oss": "4.19.0",
24 + "eslint-plugin-github": "^4.10.1",
25 "tap": "^16.3.2"
26 },
27 "engines": {
@@ -42,6 +43,7 @@
43 "devDependencies": {
44 "@npmcli/eslint-config": "^4.0.1",
45 "@npmcli/template-oss": "4.19.0",
46 + "eslint-plugin-github": "^4.10.1",
47 "tap": "^16.3.2"
48 },
49 "engines": {
@@ -2479,6 +2481,30 @@
2481 "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz",
2482 "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg=="
2483 },
2484 + "node_modules/@eslint-community/eslint-utils": {
2485 + "version": "4.4.0",
2486 + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
2487 + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
2488 + "dev": true,
2489 + "dependencies": {
2490 + "eslint-visitor-keys": "^3.3.0"
2491 + },
2492 + "engines": {
2493 + "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
2494 + },
2495 + "peerDependencies": {
2496 + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
2497 + }
2498 + },
2499 + "node_modules/@eslint-community/regexpp": {
2500 + "version": "4.8.2",
2501 + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.8.2.tgz",
2502 + "integrity": "sha512-0MGxAVt1m/ZK+LTJp/j0qF7Hz97D9O/FH9Ms3ltnyIdDD57cbb1ACIQTkbHvNXtWDv5TPq7w5Kq56+cNukbo7g==",
2503 + "dev": true,
2504 + "engines": {
2505 + "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
2506 + }
2507 + },
2508 "node_modules/@eslint/eslintrc": {
2509 "version": "1.4.1",
2510 "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
@@ -6023,6 +6049,62 @@
6049 "node": ">=14"
6050 }
6051 },
6052 + "node_modules/@pkgr/utils": {
6053 + "version": "2.4.2",
6054 + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz",
6055 + "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==",
6056 + "dev": true,
6057 + "dependencies": {
6058 + "cross-spawn": "^7.0.3",
6059 + "fast-glob": "^3.3.0",
6060 + "is-glob": "^4.0.3",
6061 + "open": "^9.1.0",
6062 + "picocolors": "^1.0.0",
6063 + "tslib": "^2.6.0"
6064 + },
6065 + "engines": {
6066 + "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
6067 + },
6068 + "funding": {
6069 + "url": "https://opencollective.com/unts"
6070 + }
6071 + },
6072 + "node_modules/@pkgr/utils/node_modules/define-lazy-prop": {
6073 + "version": "3.0.0",
6074 + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz",
6075 + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==",
6076 + "dev": true,
6077 + "engines": {
6078 + "node": ">=12"
6079 + },
6080 + "funding": {
6081 + "url": "https://github.com/sponsors/sindresorhus"
6082 + }
6083 + },
6084 + "node_modules/@pkgr/utils/node_modules/open": {
6085 + "version": "9.1.0",
6086 + "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz",
6087 + "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==",
6088 + "dev": true,
6089 + "dependencies": {
6090 + "default-browser": "^4.0.0",
6091 + "define-lazy-prop": "^3.0.0",
6092 + "is-inside-container": "^1.0.0",
6093 + "is-wsl": "^2.2.0"
6094 + },
6095 + "engines": {
6096 + "node": ">=14.16"
6097 + },
6098 + "funding": {
6099 + "url": "https://github.com/sponsors/sindresorhus"
6100 + }
6101 + },
6102 + "node_modules/@pkgr/utils/node_modules/tslib": {
6103 + "version": "2.6.2",
6104 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
6105 + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
6106 + "dev": true
6107 + },
6108 "node_modules/@pmmmwh/react-refresh-webpack-plugin": {
6109 "version": "0.5.10",
6110 "resolved": "https://registry.npmjs.org/@pmmmwh/react-refresh-webpack-plugin/-/react-refresh-webpack-plugin-0.5.10.tgz",
@@ -6918,9 +7000,9 @@
7000 }
7001 },
7002 "node_modules/@types/json-schema": {
6921 - "version": "7.0.11",
6922 - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz",
6923 - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ=="
7003 + "version": "7.0.13",
7004 + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.13.tgz",
7005 + "integrity": "sha512-RbSSoHliUbnXj3ny0CNFOoxrIDV6SUGyStHsvDqosw6CkdPV8TtWGlfecuK4ToyMEAql6pzNxgCFKanovUzlgQ=="
7006 },
7007 "node_modules/@types/json5": {
7008 "version": "0.0.29",
@@ -7086,9 +7168,9 @@
7168 "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
7169 },
7170 "node_modules/@types/semver": {
7089 - "version": "7.3.13",
7090 - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz",
7091 - "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",
7171 + "version": "7.5.3",
7172 + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz",
7173 + "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==",
7174 "dev": true
7175 },
7176 "node_modules/@types/sharp": {
@@ -7299,31 +7381,33 @@
7381 "integrity": "sha512-S9q47ByT2pPvD65IvrWp7qppVMpk9WGMbVq9wbWZOHg6tnXSD4vyhao6nOSBwwfDdV2p3Kx9evA9vI+XWTfDvw=="
7382 },
7383 "node_modules/@typescript-eslint/eslint-plugin": {
7302 - "version": "5.47.1",
7303 - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.47.1.tgz",
7304 - "integrity": "sha512-r4RZ2Jl9kcQN7K/dcOT+J7NAimbiis4sSM9spvWimsBvDegMhKLA5vri2jG19PmIPbDjPeWzfUPQ2hjEzA4Nmg==",
7384 + "version": "6.7.3",
7385 + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.7.3.tgz",
7386 + "integrity": "sha512-vntq452UHNltxsaaN+L9WyuMch8bMd9CqJ3zhzTPXXidwbf5mqqKCVXEuvRZUqLJSTLeWE65lQwyXsRGnXkCTA==",
7387 "dev": true,
7388 "dependencies": {
7307 - "@typescript-eslint/scope-manager": "5.47.1",
7308 - "@typescript-eslint/type-utils": "5.47.1",
7309 - "@typescript-eslint/utils": "5.47.1",
7389 + "@eslint-community/regexpp": "^4.5.1",
7390 + "@typescript-eslint/scope-manager": "6.7.3",
7391 + "@typescript-eslint/type-utils": "6.7.3",
7392 + "@typescript-eslint/utils": "6.7.3",
7393 + "@typescript-eslint/visitor-keys": "6.7.3",
7394 "debug": "^4.3.4",
7311 - "ignore": "^5.2.0",
7312 - "natural-compare-lite": "^1.4.0",
7313 - "regexpp": "^3.2.0",
7314 - "semver": "^7.3.7",
7315 - "tsutils": "^3.21.0"
7395 + "graphemer": "^1.4.0",
7396 + "ignore": "^5.2.4",
7397 + "natural-compare": "^1.4.0",
7398 + "semver": "^7.5.4",
7399 + "ts-api-utils": "^1.0.1"
7400 },
7401 "engines": {
7318 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7402 + "node": "^16.0.0 || >=18.0.0"
7403 },
7404 "funding": {
7405 "type": "opencollective",
7406 "url": "https://opencollective.com/typescript-eslint"
7407 },
7408 "peerDependencies": {
7325 - "@typescript-eslint/parser": "^5.0.0",
7326 - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
7409 + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha",
7410 + "eslint": "^7.0.0 || ^8.0.0"
7411 },
7412 "peerDependenciesMeta": {
7413 "typescript": {
@@ -7453,25 +7537,26 @@
7537 }
7538 },
7539 "node_modules/@typescript-eslint/parser": {
7456 - "version": "5.47.1",
7457 - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.47.1.tgz",
7458 - "integrity": "sha512-9Vb+KIv29r6GPu4EboWOnQM7T+UjpjXvjCPhNORlgm40a9Ia9bvaPJswvtae1gip2QEeVeGh6YquqAzEgoRAlw==",
7540 + "version": "6.7.3",
7541 + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.7.3.tgz",
7542 + "integrity": "sha512-TlutE+iep2o7R8Lf+yoer3zU6/0EAUc8QIBB3GYBc1KGz4c4TRm83xwXUZVPlZ6YCLss4r77jbu6j3sendJoiQ==",
7543 "dev": true,
7544 "dependencies": {
7461 - "@typescript-eslint/scope-manager": "5.47.1",
7462 - "@typescript-eslint/types": "5.47.1",
7463 - "@typescript-eslint/typescript-estree": "5.47.1",
7545 + "@typescript-eslint/scope-manager": "6.7.3",
7546 + "@typescript-eslint/types": "6.7.3",
7547 + "@typescript-eslint/typescript-estree": "6.7.3",
7548 + "@typescript-eslint/visitor-keys": "6.7.3",
7549 "debug": "^4.3.4"
7550 },
7551 "engines": {
7467 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7552 + "node": "^16.0.0 || >=18.0.0"
7553 },
7554 "funding": {
7555 "type": "opencollective",
7556 "url": "https://opencollective.com/typescript-eslint"
7557 },
7558 "peerDependencies": {
7474 - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
7559 + "eslint": "^7.0.0 || ^8.0.0"
7560 },
7561 "peerDependenciesMeta": {
7562 "typescript": {
@@ -7480,16 +7565,16 @@
7565 }
7566 },
7567 "node_modules/@typescript-eslint/scope-manager": {
7483 - "version": "5.47.1",
7484 - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.47.1.tgz",
7485 - "integrity": "sha512-9hsFDsgUwrdOoW1D97Ewog7DYSHaq4WKuNs0LHF9RiCmqB0Z+XRR4Pf7u7u9z/8CciHuJ6yxNws1XznI3ddjEw==",
7568 + "version": "6.7.3",
7569 + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.7.3.tgz",
7570 + "integrity": "sha512-wOlo0QnEou9cHO2TdkJmzF7DFGvAKEnB82PuPNHpT8ZKKaZu6Bm63ugOTn9fXNJtvuDPanBc78lGUGGytJoVzQ==",
7571 "dev": true,
7572 "dependencies": {
7488 - "@typescript-eslint/types": "5.47.1",
7489 - "@typescript-eslint/visitor-keys": "5.47.1"
7573 + "@typescript-eslint/types": "6.7.3",
7574 + "@typescript-eslint/visitor-keys": "6.7.3"
7575 },
7576 "engines": {
7492 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7577 + "node": "^16.0.0 || >=18.0.0"
7578 },
7579 "funding": {
7580 "type": "opencollective",
@@ -7497,25 +7582,25 @@
7582 }
7583 },
7584 "node_modules/@typescript-eslint/type-utils": {
7500 - "version": "5.47.1",
7501 - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.47.1.tgz",
7502 - "integrity": "sha512-/UKOeo8ee80A7/GJA427oIrBi/Gd4osk/3auBUg4Rn9EahFpevVV1mUK8hjyQD5lHPqX397x6CwOk5WGh1E/1w==",
7585 + "version": "6.7.3",
7586 + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.7.3.tgz",
7587 + "integrity": "sha512-Fc68K0aTDrKIBvLnKTZ5Pf3MXK495YErrbHb1R6aTpfK5OdSFj0rVN7ib6Tx6ePrZ2gsjLqr0s98NG7l96KSQw==",
7588 "dev": true,
7589 "dependencies": {
7505 - "@typescript-eslint/typescript-estree": "5.47.1",
7506 - "@typescript-eslint/utils": "5.47.1",
7590 + "@typescript-eslint/typescript-estree": "6.7.3",
7591 + "@typescript-eslint/utils": "6.7.3",
7592 "debug": "^4.3.4",
7508 - "tsutils": "^3.21.0"
7593 + "ts-api-utils": "^1.0.1"
7594 },
7595 "engines": {
7511 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7596 + "node": "^16.0.0 || >=18.0.0"
7597 },
7598 "funding": {
7599 "type": "opencollective",
7600 "url": "https://opencollective.com/typescript-eslint"
7601 },
7602 "peerDependencies": {
7518 - "eslint": "*"
7603 + "eslint": "^7.0.0 || ^8.0.0"
7604 },
7605 "peerDependenciesMeta": {
7606 "typescript": {
@@ -7524,12 +7609,12 @@
7609 }
7610 },
7611 "node_modules/@typescript-eslint/types": {
7527 - "version": "5.47.1",
7528 - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.47.1.tgz",
7529 - "integrity": "sha512-CmALY9YWXEpwuu6377ybJBZdtSAnzXLSQcxLSqSQSbC7VfpMu/HLVdrnVJj7ycI138EHqocW02LPJErE35cE9A==",
7612 + "version": "6.7.3",
7613 + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.7.3.tgz",
7614 + "integrity": "sha512-4g+de6roB2NFcfkZb439tigpAMnvEIg3rIjWQ+EM7IBaYt/CdJt6em9BJ4h4UpdgaBWdmx2iWsafHTrqmgIPNw==",
7615 "dev": true,
7616 "engines": {
7532 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7617 + "node": "^16.0.0 || >=18.0.0"
7618 },
7619 "funding": {
7620 "type": "opencollective",
@@ -7537,21 +7622,21 @@
7622 }
7623 },
7624 "node_modules/@typescript-eslint/typescript-estree": {
7540 - "version": "5.47.1",
7541 - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.47.1.tgz",
7542 - "integrity": "sha512-4+ZhFSuISAvRi2xUszEj0xXbNTHceV9GbH9S8oAD2a/F9SW57aJNQVOCxG8GPfSWH/X4eOPdMEU2jYVuWKEpWA==",
7625 + "version": "6.7.3",
7626 + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.7.3.tgz",
7627 + "integrity": "sha512-YLQ3tJoS4VxLFYHTw21oe1/vIZPRqAO91z6Uv0Ss2BKm/Ag7/RVQBcXTGcXhgJMdA4U+HrKuY5gWlJlvoaKZ5g==",
7628 "dev": true,
7629 "dependencies": {
7545 - "@typescript-eslint/types": "5.47.1",
7546 - "@typescript-eslint/visitor-keys": "5.47.1",
7630 + "@typescript-eslint/types": "6.7.3",
7631 + "@typescript-eslint/visitor-keys": "6.7.3",
7632 "debug": "^4.3.4",
7633 "globby": "^11.1.0",
7634 "is-glob": "^4.0.3",
7550 - "semver": "^7.3.7",
7551 - "tsutils": "^3.21.0"
7635 + "semver": "^7.5.4",
7636 + "ts-api-utils": "^1.0.1"
7637 },
7638 "engines": {
7554 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7639 + "node": "^16.0.0 || >=18.0.0"
7640 },
7641 "funding": {
7642 "type": "opencollective",
@@ -7564,64 +7649,41 @@
7649 }
7650 },
7651 "node_modules/@typescript-eslint/utils": {
7567 - "version": "5.47.1",
7568 - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.47.1.tgz",
7569 - "integrity": "sha512-l90SdwqfmkuIVaREZ2ykEfCezepCLxzWMo5gVfcJsJCaT4jHT+QjgSkYhs5BMQmWqE9k3AtIfk4g211z/sTMVw==",
7652 + "version": "6.7.3",
7653 + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.7.3.tgz",
7654 + "integrity": "sha512-vzLkVder21GpWRrmSR9JxGZ5+ibIUSudXlW52qeKpzUEQhRSmyZiVDDj3crAth7+5tmN1ulvgKaCU2f/bPRCzg==",
7655 "dev": true,
7656 "dependencies": {
7572 - "@types/json-schema": "^7.0.9",
7573 - "@types/semver": "^7.3.12",
7574 - "@typescript-eslint/scope-manager": "5.47.1",
7575 - "@typescript-eslint/types": "5.47.1",
7576 - "@typescript-eslint/typescript-estree": "5.47.1",
7577 - "eslint-scope": "^5.1.1",
7578 - "eslint-utils": "^3.0.0",
7579 - "semver": "^7.3.7"
7657 + "@eslint-community/eslint-utils": "^4.4.0",
7658 + "@types/json-schema": "^7.0.12",
7659 + "@types/semver": "^7.5.0",
7660 + "@typescript-eslint/scope-manager": "6.7.3",
7661 + "@typescript-eslint/types": "6.7.3",
7662 + "@typescript-eslint/typescript-estree": "6.7.3",
7663 + "semver": "^7.5.4"
7664 },
7665 "engines": {
7582 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7666 + "node": "^16.0.0 || >=18.0.0"
7667 },
7668 "funding": {
7669 "type": "opencollective",
7670 "url": "https://opencollective.com/typescript-eslint"
7671 },
7672 "peerDependencies": {
7589 - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
7590 - }
7591 - },
7592 - "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": {
7593 - "version": "5.1.1",
7594 - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
7595 - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
7596 - "dev": true,
7597 - "dependencies": {
7598 - "esrecurse": "^4.3.0",
7599 - "estraverse": "^4.1.1"
7600 - },
7601 - "engines": {
7602 - "node": ">=8.0.0"
7603 - }
7604 - },
7605 - "node_modules/@typescript-eslint/utils/node_modules/estraverse": {
7606 - "version": "4.3.0",
7607 - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
7608 - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
7609 - "dev": true,
7610 - "engines": {
7611 - "node": ">=4.0"
7673 + "eslint": "^7.0.0 || ^8.0.0"
7674 }
7675 },
7676 "node_modules/@typescript-eslint/visitor-keys": {
7615 - "version": "5.47.1",
7616 - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.47.1.tgz",
7617 - "integrity": "sha512-rF3pmut2JCCjh6BLRhNKdYjULMb1brvoaiWDlHfLNVgmnZ0sBVJrs3SyaKE1XoDDnJuAx/hDQryHYmPUuNq0ig==",
7677 + "version": "6.7.3",
7678 + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.7.3.tgz",
7679 + "integrity": "sha512-HEVXkU9IB+nk9o63CeICMHxFWbHWr3E1mpilIQBe9+7L/lH97rleFLVtYsfnWB+JVMaiFnEaxvknvmIzX+CqVg==",
7680 "dev": true,
7681 "dependencies": {
7620 - "@typescript-eslint/types": "5.47.1",
7621 - "eslint-visitor-keys": "^3.3.0"
7682 + "@typescript-eslint/types": "6.7.3",
7683 + "eslint-visitor-keys": "^3.4.1"
7684 },
7685 "engines": {
7624 - "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
7686 + "node": "^16.0.0 || >=18.0.0"
7687 },
7688 "funding": {
7689 "type": "opencollective",
@@ -8183,12 +8245,11 @@
8245 }
8246 },
8247 "node_modules/aria-query": {
8186 - "version": "5.1.3",
8187 - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.1.3.tgz",
8188 - "integrity": "sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==",
8189 - "dev": true,
8248 + "version": "5.3.0",
8249 + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
8250 + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
8251 "dependencies": {
8191 - "deep-equal": "^2.0.5"
8252 + "dequal": "^2.0.3"
8253 }
8254 },
8255 "node_modules/array-flatten": {
@@ -8428,22 +8489,10 @@
8489 "postcss": "^8.1.0"
8490 }
8491 },
8431 - "node_modules/available-typed-arrays": {
8432 - "version": "1.0.5",
8433 - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz",
8434 - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==",
8435 - "dev": true,
8436 - "engines": {
8437 - "node": ">= 0.4"
8438 - },
8439 - "funding": {
8440 - "url": "https://github.com/sponsors/ljharb"
8441 - }
8442 - },
8492 "node_modules/axe-core": {
8444 - "version": "4.6.1",
8445 - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.6.1.tgz",
8446 - "integrity": "sha512-lCZN5XRuOnpG4bpMq8v0khrWtUOn+i8lZSb6wHZH56ZfbIEv6XwJV84AAueh9/zi7qPVJ/E4yz6fmsiyOmXR4w==",
8493 + "version": "4.8.2",
8494 + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.8.2.tgz",
8495 + "integrity": "sha512-/dlp0fxyM3R8YW7MFzaHWXrf4zzbr0vaYb23VBFCl83R7nWNPg/yaQw2Dc8jzCMmDVLhSdzH8MjrsuIUuvX+6g==",
8496 "engines": {
8497 "node": ">=4"
8498 }
@@ -8459,9 +8508,12 @@
8508 }
8509 },
8510 "node_modules/axobject-query": {
8462 - "version": "2.2.0",
8463 - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.2.0.tgz",
8464 - "integrity": "sha512-Td525n+iPOOyUQIeBfcASuG6uJsDOITl7Mds5gFyerkWiX7qhUTdYUBlSgNMyVqtSJqwpt1kXGLdUt6SykLMRA=="
8511 + "version": "3.2.1",
8512 + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz",
8513 + "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==",
8514 + "dependencies": {
8515 + "dequal": "^2.0.3"
8516 + }
8517 },
8518 "node_modules/babel-eslint": {
8519 "version": "10.1.0",
@@ -9017,6 +9069,15 @@
9069 "node": ">8.0.0"
9070 }
9071 },
9072 + "node_modules/big-integer": {
9073 + "version": "1.6.51",
9074 + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz",
9075 + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==",
9076 + "dev": true,
9077 + "engines": {
9078 + "node": ">=0.6"
9079 + }
9080 + },
9081 "node_modules/big.js": {
9082 "version": "5.2.2",
9083 "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
@@ -9179,6 +9240,18 @@
9240 "url": "https://github.com/sponsors/sindresorhus"
9241 }
9242 },
9243 + "node_modules/bplist-parser": {
9244 + "version": "0.2.0",
9245 + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz",
9246 + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==",
9247 + "dev": true,
9248 + "dependencies": {
9249 + "big-integer": "^1.6.44"
9250 + },
9251 + "engines": {
9252 + "node": ">= 5.10.0"
9253 + }
9254 + },
9255 "node_modules/brace-expansion": {
9256 "version": "2.0.1",
9257 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
@@ -9400,6 +9473,21 @@
9473 "semver": "^7.0.0"
9474 }
9475 },
9476 + "node_modules/bundle-name": {
9477 + "version": "3.0.0",
9478 + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz",
9479 + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==",
9480 + "dev": true,
9481 + "dependencies": {
9482 + "run-applescript": "^5.0.0"
9483 + },
9484 + "engines": {
9485 + "node": ">=12"
9486 + },
9487 + "funding": {
9488 + "url": "https://github.com/sponsors/sindresorhus"
9489 + }
9490 + },
9491 "node_modules/busboy": {
9492 "version": "1.6.0",
9493 "resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
@@ -11333,32 +11421,6 @@
11421 "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==",
11422 "dev": true
11423 },
11336 - "node_modules/deep-equal": {
11337 - "version": "2.1.0",
11338 - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.1.0.tgz",
11339 - "integrity": "sha512-2pxgvWu3Alv1PoWEyVg7HS8YhGlUFUV7N5oOvfL6d+7xAmLSemMwv/c8Zv/i9KFzxV5Kt5CAvQc70fLwVuf4UA==",
11340 - "dev": true,
11341 - "dependencies": {
11342 - "call-bind": "^1.0.2",
11343 - "es-get-iterator": "^1.1.2",
11344 - "get-intrinsic": "^1.1.3",
11345 - "is-arguments": "^1.1.1",
11346 - "is-date-object": "^1.0.5",
11347 - "is-regex": "^1.1.4",
11348 - "isarray": "^2.0.5",
11349 - "object-is": "^1.1.5",
11350 - "object-keys": "^1.1.1",
11351 - "object.assign": "^4.1.4",
11352 - "regexp.prototype.flags": "^1.4.3",
11353 - "side-channel": "^1.0.4",
11354 - "which-boxed-primitive": "^1.0.2",
11355 - "which-collection": "^1.0.1",
11356 - "which-typed-array": "^1.1.8"
11357 - },
11358 - "funding": {
11359 - "url": "https://github.com/sponsors/ljharb"
11360 - }
11361 - },
11424 "node_modules/deep-extend": {
11425 "version": "0.6.0",
11426 "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
@@ -11380,6 +11442,150 @@
11442 "node": ">=0.10.0"
11443 }
11444 },
11445 + "node_modules/default-browser": {
11446 + "version": "4.0.0",
11447 + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz",
11448 + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==",
11449 + "dev": true,
11450 + "dependencies": {
11451 + "bundle-name": "^3.0.0",
11452 + "default-browser-id": "^3.0.0",
11453 + "execa": "^7.1.1",
11454 + "titleize": "^3.0.0"
11455 + },
11456 + "engines": {
11457 + "node": ">=14.16"
11458 + },
11459 + "funding": {
11460 + "url": "https://github.com/sponsors/sindresorhus"
11461 + }
11462 + },
11463 + "node_modules/default-browser-id": {
11464 + "version": "3.0.0",
11465 + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz",
11466 + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==",
11467 + "dev": true,
11468 + "dependencies": {
11469 + "bplist-parser": "^0.2.0",
11470 + "untildify": "^4.0.0"
11471 + },
11472 + "engines": {
11473 + "node": ">=12"
11474 + },
11475 + "funding": {
11476 + "url": "https://github.com/sponsors/sindresorhus"
11477 + }
11478 + },
11479 + "node_modules/default-browser/node_modules/execa": {
11480 + "version": "7.2.0",
11481 + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz",
11482 + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==",
11483 + "dev": true,
11484 + "dependencies": {
11485 + "cross-spawn": "^7.0.3",
11486 + "get-stream": "^6.0.1",
11487 + "human-signals": "^4.3.0",
11488 + "is-stream": "^3.0.0",
11489 + "merge-stream": "^2.0.0",
11490 + "npm-run-path": "^5.1.0",
11491 + "onetime": "^6.0.0",
11492 + "signal-exit": "^3.0.7",
11493 + "strip-final-newline": "^3.0.0"
11494 + },
11495 + "engines": {
11496 + "node": "^14.18.0 || ^16.14.0 || >=18.0.0"
11497 + },
11498 + "funding": {
11499 + "url": "https://github.com/sindresorhus/execa?sponsor=1"
11500 + }
11501 + },
11502 + "node_modules/default-browser/node_modules/human-signals": {
11503 + "version": "4.3.1",
11504 + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz",
11505 + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==",
11506 + "dev": true,
11507 + "engines": {
11508 + "node": ">=14.18.0"
11509 + }
11510 + },
11511 + "node_modules/default-browser/node_modules/is-stream": {
11512 + "version": "3.0.0",
11513 + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz",
11514 + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==",
11515 + "dev": true,
11516 + "engines": {
11517 + "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
11518 + },
11519 + "funding": {
11520 + "url": "https://github.com/sponsors/sindresorhus"
11521 + }
11522 + },
11523 + "node_modules/default-browser/node_modules/mimic-fn": {
11524 + "version": "4.0.0",
11525 + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz",
11526 + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==",
11527 + "dev": true,
11528 + "engines": {
11529 + "node": ">=12"
11530 + },
11531 + "funding": {
11532 + "url": "https://github.com/sponsors/sindresorhus"
11533 + }
11534 + },
11535 + "node_modules/default-browser/node_modules/npm-run-path": {
11536 + "version": "5.1.0",
11537 + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz",
11538 + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==",
11539 + "dev": true,
11540 + "dependencies": {
11541 + "path-key": "^4.0.0"
11542 + },
11543 + "engines": {
11544 + "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
11545 + },
11546 + "funding": {
11547 + "url": "https://github.com/sponsors/sindresorhus"
11548 + }
11549 + },
11550 + "node_modules/default-browser/node_modules/onetime": {
11551 + "version": "6.0.0",
11552 + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz",
11553 + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==",
11554 + "dev": true,
11555 + "dependencies": {
11556 + "mimic-fn": "^4.0.0"
11557 + },
11558 + "engines": {
11559 + "node": ">=12"
11560 + },
11561 + "funding": {
11562 + "url": "https://github.com/sponsors/sindresorhus"
11563 + }
11564 + },
11565 + "node_modules/default-browser/node_modules/path-key": {
11566 + "version": "4.0.0",
11567 + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz",
11568 + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
11569 + "dev": true,
11570 + "engines": {
11571 + "node": ">=12"
11572 + },
11573 + "funding": {
11574 + "url": "https://github.com/sponsors/sindresorhus"
11575 + }
11576 + },
11577 + "node_modules/default-browser/node_modules/strip-final-newline": {
11578 + "version": "3.0.0",
11579 + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz",
11580 + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==",
11581 + "dev": true,
11582 + "engines": {
11583 + "node": ">=12"
11584 + },
11585 + "funding": {
11586 + "url": "https://github.com/sponsors/sindresorhus"
11587 + }
11588 + },
11589 "node_modules/default-require-extensions": {
11590 "version": "3.0.1",
11591 "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.1.tgz",
@@ -12167,25 +12373,6 @@
12373 "url": "https://github.com/sponsors/ljharb"
12374 }
12375 },
12170 - "node_modules/es-get-iterator": {
12171 - "version": "1.1.2",
12172 - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz",
12173 - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==",
12174 - "dev": true,
12175 - "dependencies": {
12176 - "call-bind": "^1.0.2",
12177 - "get-intrinsic": "^1.1.0",
12178 - "has-symbols": "^1.0.1",
12179 - "is-arguments": "^1.1.0",
12180 - "is-map": "^2.0.2",
12181 - "is-set": "^2.0.2",
12182 - "is-string": "^1.0.5",
12183 - "isarray": "^2.0.5"
12184 - },
12185 - "funding": {
12186 - "url": "https://github.com/sponsors/ljharb"
12187 - }
12188 - },
12376 "node_modules/es-module-lexer": {
12377 "version": "0.9.3",
12378 "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.9.3.tgz",
@@ -12595,26 +12782,27 @@
12782 }
12783 },
12784 "node_modules/eslint-plugin-github": {
12598 - "version": "4.6.0",
12599 - "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-4.6.0.tgz",
12600 - "integrity": "sha512-6VMH3wLUPEnV/0VuV3f0F74LF93N522Ht9KBYWDuPWKhr1NBzCqySIbQsxjPINIynoLtsErSc/YgICrocCc2zw==",
12785 + "version": "4.10.1",
12786 + "resolved": "https://registry.npmjs.org/eslint-plugin-github/-/eslint-plugin-github-4.10.1.tgz",
12787 + "integrity": "sha512-1AqQBockOM+m0ZUpwfjWtX0lWdX5cRi/hwJnSNvXoOmz/Hh+ULH6QFz6ENWueTWjoWpgPv0af3bj+snps6o4og==",
12788 "dev": true,
12789 "dependencies": {
12790 "@github/browserslist-config": "^1.0.0",
12604 - "@typescript-eslint/eslint-plugin": "^5.1.0",
12605 - "@typescript-eslint/parser": "^5.1.0",
12791 + "@typescript-eslint/eslint-plugin": "^6.0.0",
12792 + "@typescript-eslint/parser": "^6.0.0",
12793 + "aria-query": "^5.3.0",
12794 "eslint-config-prettier": ">=8.0.0",
12795 "eslint-plugin-escompat": "^3.3.3",
12796 "eslint-plugin-eslint-comments": "^3.2.0",
12797 "eslint-plugin-filenames": "^1.3.2",
12798 "eslint-plugin-i18n-text": "^1.0.1",
12799 "eslint-plugin-import": "^2.25.2",
12612 - "eslint-plugin-jsx-a11y": "^6.6.0",
12800 + "eslint-plugin-jsx-a11y": "^6.7.1",
12801 "eslint-plugin-no-only-tests": "^3.0.0",
12614 - "eslint-plugin-prettier": "^4.0.0",
12802 + "eslint-plugin-prettier": "^5.0.0",
12803 "eslint-rule-documentation": ">=1.0.0",
12804 "jsx-ast-utils": "^3.3.2",
12617 - "prettier": "^2.2.1",
12805 + "prettier": "^3.0.0",
12806 "svg-element-attributes": "^1.3.1"
12807 },
12808 "bin": {
@@ -12624,6 +12812,62 @@
12812 "eslint": "^8.0.1"
12813 }
12814 },
12815 + "node_modules/eslint-plugin-github/node_modules/@types/eslint": {
12816 + "version": "8.44.3",
12817 + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.3.tgz",
12818 + "integrity": "sha512-iM/WfkwAhwmPff3wZuPLYiHX18HI24jU8k1ZSH7P8FHwxTjZ2P6CoX2wnF43oprR+YXJM6UUxATkNvyv/JHd+g==",
12819 + "dev": true,
12820 + "optional": true,
12821 + "peer": true,
12822 + "dependencies": {
12823 + "@types/estree": "*",
12824 + "@types/json-schema": "*"
12825 + }
12826 + },
12827 + "node_modules/eslint-plugin-github/node_modules/eslint-plugin-prettier": {
12828 + "version": "5.0.0",
12829 + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.0.tgz",
12830 + "integrity": "sha512-AgaZCVuYDXHUGxj/ZGu1u8H8CYgDY3iG6w5kUFw4AzMVXzB7VvbKgYR4nATIN+OvUrghMbiDLeimVjVY5ilq3w==",
12831 + "dev": true,
12832 + "dependencies": {
12833 + "prettier-linter-helpers": "^1.0.0",
12834 + "synckit": "^0.8.5"
12835 + },
12836 + "engines": {
12837 + "node": "^14.18.0 || >=16.0.0"
12838 + },
12839 + "funding": {
12840 + "url": "https://opencollective.com/prettier"
12841 + },
12842 + "peerDependencies": {
12843 + "@types/eslint": ">=8.0.0",
12844 + "eslint": ">=8.0.0",
12845 + "prettier": ">=3.0.0"
12846 + },
12847 + "peerDependenciesMeta": {
12848 + "@types/eslint": {
12849 + "optional": true
12850 + },
12851 + "eslint-config-prettier": {
12852 + "optional": true
12853 + }
12854 + }
12855 + },
12856 + "node_modules/eslint-plugin-github/node_modules/prettier": {
12857 + "version": "3.0.3",
12858 + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.0.3.tgz",
12859 + "integrity": "sha512-L/4pUDMxcNa8R/EthV08Zt42WBO4h1rarVtK0K+QJG0X187OLo7l699jWw0GKuwzkPQ//jMFA/8Xm6Fh3J/DAg==",
12860 + "dev": true,
12861 + "bin": {
12862 + "prettier": "bin/prettier.cjs"
12863 + },
12864 + "engines": {
12865 + "node": ">=14"
12866 + },
12867 + "funding": {
12868 + "url": "https://github.com/prettier/prettier?sponsor=1"
12869 + }
12870 + },
12871 "node_modules/eslint-plugin-i18n-text": {
12872 "version": "1.0.1",
12873 "resolved": "https://registry.npmjs.org/eslint-plugin-i18n-text/-/eslint-plugin-i18n-text-1.0.1.tgz",
@@ -12704,22 +12948,25 @@
12948 "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
12949 },
12950 "node_modules/eslint-plugin-jsx-a11y": {
12707 - "version": "6.6.1",
12708 - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.6.1.tgz",
12709 - "integrity": "sha512-sXgFVNHiWffBq23uiS/JaP6eVR622DqwB4yTzKvGZGcPq6/yZ3WmOZfuBks/vHWo9GaFOqC2ZK4i6+C35knx7Q==",
12951 + "version": "6.7.1",
12952 + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.7.1.tgz",
12953 + "integrity": "sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==",
12954 "dependencies": {
12711 - "@babel/runtime": "^7.18.9",
12712 - "aria-query": "^4.2.2",
12713 - "array-includes": "^3.1.5",
12955 + "@babel/runtime": "^7.20.7",
12956 + "aria-query": "^5.1.3",
12957 + "array-includes": "^3.1.6",
12958 + "array.prototype.flatmap": "^1.3.1",
12959 "ast-types-flow": "^0.0.7",
12715 - "axe-core": "^4.4.3",
12716 - "axobject-query": "^2.2.0",
12960 + "axe-core": "^4.6.2",
12961 + "axobject-query": "^3.1.1",
12962 "damerau-levenshtein": "^1.0.8",
12963 "emoji-regex": "^9.2.2",
12964 "has": "^1.0.3",
12720 - "jsx-ast-utils": "^3.3.2",
12721 - "language-tags": "^1.0.5",
12965 + "jsx-ast-utils": "^3.3.3",
12966 + "language-tags": "=1.0.5",
12967 "minimatch": "^3.1.2",
12968 + "object.entries": "^1.1.6",
12969 + "object.fromentries": "^2.0.6",
12970 "semver": "^6.3.0"
12971 },
12972 "engines": {
@@ -12729,18 +12976,6 @@
12976 "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8"
12977 }
12978 },
12732 - "node_modules/eslint-plugin-jsx-a11y/node_modules/aria-query": {
12733 - "version": "4.2.2",
12734 - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.2.2.tgz",
12735 - "integrity": "sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==",
12736 - "dependencies": {
12737 - "@babel/runtime": "^7.10.2",
12738 - "@babel/runtime-corejs3": "^7.10.2"
12739 - },
12740 - "engines": {
12741 - "node": ">=6.0"
12742 - }
12743 - },
12979 "node_modules/eslint-plugin-jsx-a11y/node_modules/brace-expansion": {
12980 "version": "1.1.11",
12981 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
@@ -12859,27 +13094,6 @@
13094 "semver": "bin/semver.js"
13095 }
13096 },
12862 - "node_modules/eslint-plugin-prettier": {
12863 - "version": "4.2.1",
12864 - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz",
12865 - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==",
12866 - "dev": true,
12867 - "dependencies": {
12868 - "prettier-linter-helpers": "^1.0.0"
12869 - },
12870 - "engines": {
12871 - "node": ">=12.0.0"
12872 - },
12873 - "peerDependencies": {
12874 - "eslint": ">=7.28.0",
12875 - "prettier": ">=2.0.0"
12876 - },
12877 - "peerDependenciesMeta": {
12878 - "eslint-config-prettier": {
12879 - "optional": true
12880 - }
12881 - }
12882 - },
13097 "node_modules/eslint-plugin-primer-react": {
13098 "version": "1.0.1",
13099 "resolved": "https://registry.npmjs.org/eslint-plugin-primer-react/-/eslint-plugin-primer-react-1.0.1.tgz",
@@ -13067,11 +13281,14 @@
13281 }
13282 },
13283 "node_modules/eslint-visitor-keys": {
13070 - "version": "3.3.0",
13071 - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz",
13072 - "integrity": "sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==",
13284 + "version": "3.4.3",
13285 + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
13286 + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
13287 "engines": {
13288 "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
13289 + },
13290 + "funding": {
13291 + "url": "https://opencollective.com/eslint"
13292 }
13293 },
13294 "node_modules/eslint-webpack-plugin": {
@@ -13643,15 +13860,15 @@
13860 "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
13861 },
13862 "node_modules/fast-diff": {
13646 - "version": "1.2.0",
13647 - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz",
13648 - "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
13863 + "version": "1.3.0",
13864 + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz",
13865 + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==",
13866 "dev": true
13867 },
13868 "node_modules/fast-glob": {
13652 - "version": "3.2.12",
13653 - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
13654 - "integrity": "sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==",
13869 + "version": "3.3.1",
13870 + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz",
13871 + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==",
13872 "dependencies": {
13873 "@nodelib/fs.stat": "^2.0.2",
13874 "@nodelib/fs.walk": "^1.2.3",
@@ -13946,15 +14163,6 @@
14163 }
14164 }
14165 },
13949 - "node_modules/for-each": {
13950 - "version": "0.3.3",
13951 - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
13952 - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
13953 - "dev": true,
13954 - "dependencies": {
13955 - "is-callable": "^1.1.3"
13956 - }
13957 - },
14166 "node_modules/foreground-child": {
14167 "version": "2.0.0",
14168 "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
@@ -16480,6 +16688,12 @@
16688 "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
16689 "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ=="
16690 },
16691 + "node_modules/graphemer": {
16692 + "version": "1.4.0",
16693 + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
16694 + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
16695 + "dev": true
16696 + },
16697 "node_modules/graphql": {
16698 "version": "15.8.0",
16699 "resolved": "https://registry.npmjs.org/graphql/-/graphql-15.8.0.tgz",
@@ -17397,22 +17611,6 @@
17611 "url": "https://github.com/sponsors/wooorm"
17612 }
17613 },
17400 - "node_modules/is-arguments": {
17401 - "version": "1.1.1",
17402 - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
17403 - "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
17404 - "dev": true,
17405 - "dependencies": {
17406 - "call-bind": "^1.0.2",
17407 - "has-tostringtag": "^1.0.0"
17408 - },
17409 - "engines": {
17410 - "node": ">= 0.4"
17411 - },
17412 - "funding": {
17413 - "url": "https://github.com/sponsors/ljharb"
17414 - }
17415 - },
17614 "node_modules/is-arrayish": {
17615 "version": "0.2.1",
17616 "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
@@ -17600,6 +17798,39 @@
17798 "url": "https://github.com/sponsors/wooorm"
17799 }
17800 },
17801 + "node_modules/is-inside-container": {
17802 + "version": "1.0.0",
17803 + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz",
17804 + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==",
17805 + "dev": true,
17806 + "dependencies": {
17807 + "is-docker": "^3.0.0"
17808 + },
17809 + "bin": {
17810 + "is-inside-container": "cli.js"
17811 + },
17812 + "engines": {
17813 + "node": ">=14.16"
17814 + },
17815 + "funding": {
17816 + "url": "https://github.com/sponsors/sindresorhus"
17817 + }
17818 + },
17819 + "node_modules/is-inside-container/node_modules/is-docker": {
17820 + "version": "3.0.0",
17821 + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz",
17822 + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==",
17823 + "dev": true,
17824 + "bin": {
17825 + "is-docker": "cli.js"
17826 + },
17827 + "engines": {
17828 + "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
17829 + },
17830 + "funding": {
17831 + "url": "https://github.com/sponsors/sindresorhus"
17832 + }
17833 + },
17834 "node_modules/is-installed-globally": {
17835 "version": "0.4.0",
17836 "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz",
@@ -17680,15 +17911,6 @@
17911 "tslib": "^2.0.3"
17912 }
17913 },
17683 - "node_modules/is-map": {
17684 - "version": "2.0.2",
17685 - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz",
17686 - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==",
17687 - "dev": true,
17688 - "funding": {
17689 - "url": "https://github.com/sponsors/ljharb"
17690 - }
17691 - },
17914 "node_modules/is-negative-zero": {
17915 "version": "2.0.2",
17916 "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
@@ -17829,15 +18051,6 @@
18051 "node": ">=6"
18052 }
18053 },
17832 - "node_modules/is-set": {
17833 - "version": "2.0.2",
17834 - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz",
17835 - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==",
17836 - "dev": true,
17837 - "funding": {
17838 - "url": "https://github.com/sponsors/ljharb"
17839 - }
17840 - },
18054 "node_modules/is-shared-array-buffer": {
18055 "version": "1.0.2",
18056 "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz",
@@ -17908,25 +18121,6 @@
18121 "node": ">=0.10.0"
18122 }
18123 },
17911 - "node_modules/is-typed-array": {
17912 - "version": "1.1.10",
17913 - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz",
17914 - "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==",
17915 - "dev": true,
17916 - "dependencies": {
17917 - "available-typed-arrays": "^1.0.5",
17918 - "call-bind": "^1.0.2",
17919 - "for-each": "^0.3.3",
17920 - "gopd": "^1.0.1",
17921 - "has-tostringtag": "^1.0.0"
17922 - },
17923 - "engines": {
17924 - "node": ">= 0.4"
17925 - },
17926 - "funding": {
17927 - "url": "https://github.com/sponsors/ljharb"
17928 - }
17929 - },
18124 "node_modules/is-typedarray": {
18125 "version": "1.0.0",
18126 "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
@@ -17970,15 +18164,6 @@
18164 "node": ">=0.10.0"
18165 }
18166 },
17973 - "node_modules/is-weakmap": {
17974 - "version": "2.0.1",
17975 - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
17976 - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==",
17977 - "dev": true,
17978 - "funding": {
17979 - "url": "https://github.com/sponsors/ljharb"
17980 - }
17981 - },
18167 "node_modules/is-weakref": {
18168 "version": "1.0.2",
18169 "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
@@ -17990,19 +18175,6 @@
18175 "url": "https://github.com/sponsors/ljharb"
18176 }
18177 },
17993 - "node_modules/is-weakset": {
17994 - "version": "2.0.2",
17995 - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz",
17996 - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==",
17997 - "dev": true,
17998 - "dependencies": {
17999 - "call-bind": "^1.0.2",
18000 - "get-intrinsic": "^1.1.1"
18001 - },
18002 - "funding": {
18003 - "url": "https://github.com/sponsors/ljharb"
18004 - }
18005 - },
18178 "node_modules/is-whitespace-character": {
18179 "version": "1.0.4",
18180 "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz",
@@ -18045,12 +18217,6 @@
18217 "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz",
18218 "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw=="
18219 },
18048 - "node_modules/isarray": {
18049 - "version": "2.0.5",
18050 - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
18051 - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
18052 - "dev": true
18053 - },
18220 "node_modules/isexe": {
18221 "version": "2.0.0",
18222 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
@@ -19464,11 +19630,11 @@
19630 "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w=="
19631 },
19632 "node_modules/language-tags": {
19467 - "version": "1.0.7",
19468 - "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.7.tgz",
19469 - "integrity": "sha512-bSytju1/657hFjgUzPAPqszxH62ouE8nQFoFaVlIQfne4wO/wXC9A4+m8jYve7YBBvi59eq0SUpcshvG8h5Usw==",
19633 + "version": "1.0.5",
19634 + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.5.tgz",
19635 + "integrity": "sha512-qJhlO9cGXi6hBGKoxEG/sKZDAHD5Hnu9Hs4WbOY3pCWXDhw0N8x1NenNzm2EnNLkLkk7J2SdxAkDSbb6ftT+UQ==",
19636 "dependencies": {
19471 - "language-subtag-registry": "^0.3.20"
19637 + "language-subtag-registry": "~0.3.2"
19638 }
19639 },
19640 "node_modules/latest-version": {
@@ -22091,12 +22257,6 @@
22257 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
22258 "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw=="
22259 },
22094 - "node_modules/natural-compare-lite": {
22095 - "version": "1.4.0",
22096 - "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
22097 - "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
22098 - "dev": true
22099 - },
22260 "node_modules/negotiator": {
22261 "version": "0.6.3",
22262 "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
@@ -22955,22 +23115,6 @@
23115 "url": "https://github.com/sponsors/ljharb"
23116 }
23117 },
22958 - "node_modules/object-is": {
22959 - "version": "1.1.5",
22960 - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
22961 - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
22962 - "dev": true,
22963 - "dependencies": {
22964 - "call-bind": "^1.0.2",
22965 - "define-properties": "^1.1.3"
22966 - },
22967 - "engines": {
22968 - "node": ">= 0.4"
22969 - },
22970 - "funding": {
22971 - "url": "https://github.com/sponsors/ljharb"
22972 - }
22973 - },
23118 "node_modules/object-keys": {
23119 "version": "1.1.1",
23120 "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
@@ -26798,6 +26942,21 @@
26942 "node": "*"
26943 }
26944 },
26945 + "node_modules/run-applescript": {
26946 + "version": "5.0.0",
26947 + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz",
26948 + "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==",
26949 + "dev": true,
26950 + "dependencies": {
26951 + "execa": "^5.0.0"
26952 + },
26953 + "engines": {
26954 + "node": ">=12"
26955 + },
26956 + "funding": {
26957 + "url": "https://github.com/sponsors/sindresorhus"
26958 + }
26959 + },
26960 "node_modules/run-async": {
26961 "version": "2.4.1",
26962 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
@@ -28328,6 +28487,28 @@
28487 "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==",
28488 "dev": true
28489 },
28490 + "node_modules/synckit": {
28491 + "version": "0.8.5",
28492 + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz",
28493 + "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==",
28494 + "dev": true,
28495 + "dependencies": {
28496 + "@pkgr/utils": "^2.3.1",
28497 + "tslib": "^2.5.0"
28498 + },
28499 + "engines": {
28500 + "node": "^14.18.0 || >=16.0.0"
28501 + },
28502 + "funding": {
28503 + "url": "https://opencollective.com/unts"
28504 + }
28505 + },
28506 + "node_modules/synckit/node_modules/tslib": {
28507 + "version": "2.6.2",
28508 + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
28509 + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
28510 + "dev": true
28511 + },
28512 "node_modules/table": {
28513 "version": "6.8.1",
28514 "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz",
@@ -30802,6 +30983,18 @@
30983 "tslib": "^2.0.3"
30984 }
30985 },
30986 + "node_modules/titleize": {
30987 + "version": "3.0.0",
30988 + "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz",
30989 + "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==",
30990 + "dev": true,
30991 + "engines": {
30992 + "node": ">=12"
30993 + },
30994 + "funding": {
30995 + "url": "https://github.com/sponsors/sindresorhus"
30996 + }
30997 + },
30998 "node_modules/tmp": {
30999 "version": "0.2.1",
31000 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz",
@@ -30972,6 +31165,18 @@
31165 "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-2.2.1.tgz",
31166 "integrity": "sha512-0z3j8R7MCjy10kc/g+qg7Ln3alJTodw9aDuVWZa3uiWqfuBMKeAeP2ocWcxoyM3D73yz3Jt/Pu4qPr4wHSdB/Q=="
31167 },
31168 + "node_modules/ts-api-utils": {
31169 + "version": "1.0.3",
31170 + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz",
31171 + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==",
31172 + "dev": true,
31173 + "engines": {
31174 + "node": ">=16.13.0"
31175 + },
31176 + "peerDependencies": {
31177 + "typescript": ">=4.2.0"
31178 + }
31179 + },
31180 "node_modules/ts-node": {
31181 "version": "10.9.1",
31182 "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz",
@@ -31599,6 +31804,15 @@
31804 "node": ">= 0.8"
31805 }
31806 },
31807 + "node_modules/untildify": {
31808 + "version": "4.0.0",
31809 + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
31810 + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==",
31811 + "dev": true,
31812 + "engines": {
31813 + "node": ">=8"
31814 + }
31815 + },
31816 "node_modules/update-browserslist-db": {
31817 "version": "1.0.10",
31818 "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz",
@@ -32245,46 +32459,11 @@
32459 "url": "https://github.com/sponsors/ljharb"
32460 }
32461 },
32248 - "node_modules/which-collection": {
32249 - "version": "1.0.1",
32250 - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz",
32251 - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==",
32252 - "dev": true,
32253 - "dependencies": {
32254 - "is-map": "^2.0.1",
32255 - "is-set": "^2.0.1",
32256 - "is-weakmap": "^2.0.1",
32257 - "is-weakset": "^2.0.1"
32258 - },
32259 - "funding": {
32260 - "url": "https://github.com/sponsors/ljharb"
32261 - }
32262 - },
32462 "node_modules/which-module": {
32463 "version": "2.0.0",
32464 "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
32465 "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q=="
32466 },
32268 - "node_modules/which-typed-array": {
32269 - "version": "1.1.9",
32270 - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz",
32271 - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==",
32272 - "dev": true,
32273 - "dependencies": {
32274 - "available-typed-arrays": "^1.0.5",
32275 - "call-bind": "^1.0.2",
32276 - "for-each": "^0.3.3",
32277 - "gopd": "^1.0.1",
32278 - "has-tostringtag": "^1.0.0",
32279 - "is-typed-array": "^1.1.10"
32280 - },
32281 - "engines": {
32282 - "node": ">= 0.4"
32283 - },
32284 - "funding": {
32285 - "url": "https://github.com/sponsors/ljharb"
32286 - }
32287 - },
32467 "node_modules/wide-align": {
32468 "version": "1.1.5",
32469 "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
@@ -32876,7 +33055,7 @@
33055 "@testing-library/jest-dom": "^5.16.5",
33056 "babel-jest": "^29.3.1",
33057 "eslint": "^8.33.0",
32879 - "eslint-plugin-github": "^4.6.0",
33058 + "eslint-plugin-github": "^4.10.1",
33059 "eslint-plugin-jsx-a11y": "^6.6.1",
33060 "eslint-plugin-primer-react": "1.0.1",
33061 "eslint-plugin-react": "^7.31.11",
package.json
+1
@@ -34,6 +34,7 @@
34 "devDependencies": {
35 "@npmcli/eslint-config": "^4.0.1",
36 "@npmcli/template-oss": "4.19.0",
37 + "eslint-plugin-github": "^4.10.1",
38 "tap": "^16.3.2"
39 },
40 "author": "GitHub Inc.",
theme/gatsby-node.js
+12 -1
@@ -73,6 +73,17 @@ exports.createPages = async ({graphql, actions}, themeOptions) => {
73 const contributors =
74 themeOptions.showContributors !== false ? await fetchContributors(repo, fileRelativePath, node.frontmatte) : []
75
76 + // Fix some old CLI pages which have mismatched headings at the top level.
77 + // All top level headings should be the same level.
78 + const tableOfContents = node.tableOfContents?.items?.reduce((acc, item) => {
79 + if (!item.url && Array.isArray(item.items)) {
80 + acc.push(...item.items)
81 + } else {
82 + acc.push(item)
83 + }
84 + return acc
85 + }, [])
86 +
87 actions.createPage({
88 path: pagePath,
89 component: node.fileAbsolutePath,
@@ -81,7 +92,7 @@ exports.createPages = async ({graphql, actions}, themeOptions) => {
92 themeOptions,
93 editUrl,
94 contributors,
84 - tableOfContents: node.tableOfContents,
95 + tableOfContents,
96 },
97 })
98
theme/package.json
+1 -1
@@ -77,7 +77,7 @@
77 "@testing-library/jest-dom": "^5.16.5",
78 "babel-jest": "^29.3.1",
79 "eslint": "^8.33.0",
80 - "eslint-plugin-github": "^4.6.0",
80 + "eslint-plugin-github": "^4.10.1",
81 "eslint-plugin-jsx-a11y": "^6.6.1",
82 "eslint-plugin-primer-react": "1.0.1",
83 "eslint-plugin-react": "^7.31.11",
theme/src/components/code.js
+33 -32
@@ -5,15 +5,41 @@ import React, {useState, useEffect} from 'react'
5 import ClipboardCopy from './clipboard-copy'
6 import LiveCode from './live-code'
7
8 +/**
9 + * Resize the scroll handle to the size of the code contents, since the former has to be positioned absolutely.
10 + */
11 +const useScrollSize = () => {
12 + const ref = React.createRef()
13 + const [size, setSize] = useState({})
14 +
15 + useEffect(() => {
16 + // Skip if already resized.
17 + if (typeof size.width !== 'undefined') {
18 + return
19 + }
20 +
21 + const node = ref.current
22 + node.parentElement.style.position = 'relative'
23 + const computedStyle = getComputedStyle(node.parentElement)
24 + setSize({
25 + height:
26 + node.parentElement.clientHeight -
27 + parseInt(computedStyle.paddingTop, 10) -
28 + parseInt(computedStyle.paddingBottom, 10),
29 + width:
30 + node.parentElement.scrollWidth -
31 + parseInt(computedStyle.paddingLeft, 10) -
32 + parseInt(computedStyle.paddingRight, 10),
33 + })
34 + }, [size, ref])
35 +
36 + return [ref, size]
37 +}
38 +
39 function Code({className, children, live, noinline}) {
9 - const [scrollHandleStyle, setScrollHandleStyle] = useState({position: 'absolute'})
40 const language = className ? className.replace(/language-/, '') : ''
41 const code = children.trim()
12 - const scrollHandleRef = React.createRef()
13 -
14 - useEffect(() => {
15 - resizeScrollHandle()
16 - })
42 + const [scrollHandleRef, scrollSize] = useScrollSize()
43
44 if (live) {
45 return <LiveCode code={code} language={language} noinline={noinline} />
@@ -28,9 +54,7 @@ function Code({className, children, live, noinline}) {
54 {({className, style, tokens, getLineProps, getTokenProps}) => (
55 <BorderBox as="pre" className={className} mt={0} mb={3} p={3} border={0} style={{...style, overflow: 'auto'}}>
56 {/* This is the scroll handle, it is supposed to be focused with keyboard and scroll a wide codebox horizontally */}
31 - <div aria-hidden="true" style={scrollHandleStyle} ref={scrollHandleRef} aria-label={code}>
32 - &nbsp;
33 - </div>
57 + <div aria-hidden="true" style={{position: 'absolute', ...scrollSize}} ref={scrollHandleRef} />
58 {tokens.map((line, i) => (
59 <div key={i} {...getLineProps({line, key: i})}>
60 {line.map((token, key) => (
@@ -43,29 +67,6 @@ function Code({className, children, live, noinline}) {
67 </Highlight>
68 </Relative>
69 )
46 -
47 - /**
48 - * Resize the scroll handle to the size of the code contents, since the former has to be positioned absolutely.
49 - */
50 - function resizeScrollHandle() {
51 - // Skip if already resized.
52 - if (typeof scrollHandleStyle.width !== 'undefined') {
53 - return
54 - }
55 -
56 - const node = scrollHandleRef.current
57 - node.parentElement.style.position = 'relative'
58 - const computedStyle = getComputedStyle(node.parentElement)
59 - const height =
60 - node.parentElement.clientHeight -
61 - parseInt(computedStyle.paddingTop, 10) -
62 - parseInt(computedStyle.paddingBottom, 10)
63 - const width =
64 - node.parentElement.scrollWidth -
65 - parseInt(computedStyle.paddingLeft, 10) -
66 - parseInt(computedStyle.paddingRight, 10)
67 - setScrollHandleStyle({...scrollHandleStyle, height, width})
68 - }
70 }
71
72 export default Code
theme/src/components/header.js
+5 -21
@@ -6,7 +6,6 @@ import headerNavItems from '../header-nav.yml'
6 import useSiteMetadata from '../use-site-metadata'
7 import MobileSearch from './mobile-search'
8 import NavDrawer from './nav-drawer'
9 -import NavDropdown, {NavDropdownItem} from './nav-dropdown'
9 import Search from './search'
10 import NpmLogo from './npm-logo'
11 import useSearch from '../use-search'
@@ -63,26 +62,11 @@ function Header({location, isSearchEnabled = true}) {
62 function HeaderNavItems({items}) {
63 return (
64 <Flex alignItems="center" color="gray.2">
66 - {items.map((item, index) => {
67 - if (item.children) {
68 - return (
69 - <Box ml={4} key={index}>
70 - <NavDropdown title={item.title}>
71 - {item.children.map(child => (
72 - <NavDropdownItem key={child.title} href={child.url}>
73 - {child.title}
74 - </NavDropdownItem>
75 - ))}
76 - </NavDropdown>
77 - </Box>
78 - )
79 - }
80 - return (
81 - <Link key={index} href={item.url} display="block" color="inherit" ml={4}>
82 - {item.title}
83 - </Link>
84 - )
85 - })}
65 + {items.map((item, index) => (
66 + <Link key={index} href={item.url} display="block" color="inherit" ml={4}>
67 + {item.title}
68 + </Link>
69 + ))}
70 </Flex>
71 )
72 }
theme/src/components/layout.js
+4 -4
@@ -76,7 +76,7 @@ function Layout({children, pageContext, location}) {
76 </Box>
77 ) : null}
78 </Box>
79 - {pageContext.tableOfContents.items ? (
79 + {pageContext.tableOfContents ? (
80 <Position
81 display={['none', null, 'block']}
82 css={{gridArea: 'table-of-contents', overflow: 'auto'}}
@@ -91,7 +91,7 @@ function Layout({children, pageContext, location}) {
91 <Text display="inline-block" fontWeight="bold" mb={1} id="table-of-content-label">
92 Table of contents
93 </Text>
94 - <TableOfContents items={pageContext.tableOfContents.items} labelId="table-of-content-label" />
94 + <TableOfContents items={pageContext.tableOfContents} labelId="table-of-content-label" />
95 </Position>
96 ) : null}
97 <Box css={{gridArea: 'content'}}>
@@ -102,7 +102,7 @@ function Layout({children, pageContext, location}) {
102 {source ? <SourceLink href={source} /> : null}
103 </Flex>
104 ) : null}
105 - {pageContext.tableOfContents.items ? (
105 + {pageContext.tableOfContents ? (
106 <Box display={['block', null, 'none']} mb={3}>
107 <Details>
108 {({open}) => (
@@ -116,7 +116,7 @@ function Layout({children, pageContext, location}) {
116 Table of contents
117 </Text>
118 <Box pt={1}>
119 - <TableOfContents items={pageContext.tableOfContents.items} />
119 + <TableOfContents items={pageContext.tableOfContents} />
120 </Box>
121 </>
122 )}
theme/src/components/nav-drawer.js
+16 -41
@@ -1,12 +1,11 @@
1 -import {BorderBox, Flex, Link, Text} from '@primer/components'
2 -import {ChevronDownIcon, ChevronUpIcon, XIcon, ThreeBarsIcon} from '@primer/octicons-react'
1 +import {BorderBox, Flex, Link} from '@primer/components'
2 +import {XIcon, ThreeBarsIcon} from '@primer/octicons-react'
3 import {Link as GatsbyLink} from 'gatsby'
4 import React from 'react'
5 import navItems from '../nav.yml'
6 import headerNavItems from '../header-nav.yml'
7 import useSiteMetadata from '../use-site-metadata'
8 import DarkButton from './dark-button'
9 -import Details from './details'
9 import Drawer from './drawer'
10 import NavItems from './nav-items'
11 import {useIsMobile} from '../use-breakpoint'
@@ -71,44 +70,20 @@ function NavDrawer({location}) {
70 }
71
72 function HeaderNavItems({items}) {
74 - return items.map((item, index) => {
75 - return (
76 - <BorderBox
77 - key={item.title}
78 - borderWidth={0}
79 - borderRadius={0}
80 - borderTopWidth={index !== 0 ? 1 : 0}
81 - borderColor="gray.7"
82 - p={4}
83 - >
84 - {item.children ? (
85 - <Details key={index}>
86 - {({open, toggle}) => (
87 - <>
88 - <summary onClick={toggle} style={{cursor: 'pointer'}}>
89 - <Flex alignItems="center" justifyContent="space-between">
90 - <Text>{item.title}</Text>
91 - {open ? <ChevronUpIcon /> : <ChevronDownIcon />}
92 - </Flex>
93 - </summary>
94 - <Flex flexDirection="column" mt={2}>
95 - {item.children.map(child => (
96 - <Link key={child.title} href={child.url} py={1} mt={2} fontSize={1} color="inherit">
97 - {child.title}
98 - </Link>
99 - ))}
100 - </Flex>
101 - </>
102 - )}
103 - </Details>
104 - ) : (
105 - <Link key={index} href={item.url} color="inherit" display="block">
106 - {item.title}
107 - </Link>
108 - )}
109 - </BorderBox>
110 - )
111 - })
73 + return items.map((item, index) => (
74 + <BorderBox
75 + key={item.title}
76 + borderWidth={0}
77 + borderRadius={0}
78 + borderTopWidth={index !== 0 ? 1 : 0}
79 + borderColor="gray.7"
80 + p={4}
81 + >
82 + <Link key={index} href={item.url} color="inherit" display="block">
83 + {item.title}
84 + </Link>
85 + </BorderBox>
86 + ))
87 }
88
89 export default NavDrawer
theme/src/components/nav-dropdown.js deleted
-40
@@ -1,40 +0,0 @@
1 -import {Absolute, BorderBox, StyledOcticon, Text, themeGet} from '@primer/components'
2 -import {ChevronDownIcon} from '@primer/octicons-react'
3 -import React from 'react'
4 -import styled from 'styled-components'
5 -import Details from './details'
6 -
7 -function NavDropdown({title, children}) {
8 - return (
9 - <Details overlay={true}>
10 - {({toggle}) => (
11 - <>
12 - <summary style={{cursor: 'pointer'}} onClick={toggle}>
13 - <Text>{title}</Text>
14 - <StyledOcticon icon={ChevronDownIcon} ml={1} />
15 - </summary>
16 - <Absolute>
17 - <BorderBox bg="white" py={1} mt={2} boxShadow="medium" color="gray.8">
18 - {children}
19 - </BorderBox>
20 - </Absolute>
21 - </>
22 - )}
23 - </Details>
24 - )
25 -}
26 -
27 -export const NavDropdownItem = styled.a`
28 - display: block;
29 - padding: ${themeGet('space.2')} ${themeGet('space.3')};
30 - color: inherit;
31 - text-decoration: none;
32 -
33 - &:hover {
34 - color: ${themeGet('colors.white')};
35 - background-color: ${themeGet('colors.blue.5')};
36 - text-decoration: none;
37 - }
38 -`
39 -
40 -export default NavDropdown