diff --git a/.eslintrc.js b/.eslintrc.js index f9459a7..a1d4bf8 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -2,11 +2,7 @@ module.exports = { root: true, - extends: [ - "eslint:recommended", - "plugin:eslint-plugin/recommended", - "plugin:node/recommended", - ], + extends: ["eslint:recommended", "plugin:eslint-plugin/recommended", "plugin:node/recommended"], env: { node: true, es6: true, diff --git a/.pnp.cjs b/.pnp.cjs index c41d46f..df7e81d 100755 --- a/.pnp.cjs +++ b/.pnp.cjs @@ -30,6 +30,8 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "packageDependencies": [\ ["@semantic-release/changelog", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:6.0.3"],\ ["@semantic-release/git", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:10.0.1"],\ + ["@typescript-eslint/eslint-plugin", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ ["eslint", "npm:8.38.0"],\ ["eslint-config-airbnb-base", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:15.0.0"],\ ["eslint-plugin-eslint-plugin", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.0.8"],\ @@ -37,7 +39,8 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-plugin-node", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:11.1.0"],\ ["mocha", "npm:10.2.0"],\ ["requireindex", "npm:1.2.0"],\ - ["semantic-release", "npm:21.0.1"]\ + ["semantic-release", "npm:21.0.1"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ ],\ "linkType": "SOFT"\ }]\ @@ -880,6 +883,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["@types/json-schema", [\ + ["npm:7.0.11", {\ + "packageLocation": "./.yarn/cache/@types-json-schema-npm-7.0.11-79462ae5ca-527bddfe62.zip/node_modules/@types/json-schema/",\ + "packageDependencies": [\ + ["@types/json-schema", "npm:7.0.11"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["@types/json5", [\ ["npm:0.0.29", {\ "packageLocation": "./.yarn/cache/@types-json5-npm-0.0.29-f63a7916bd-e60b153664.zip/node_modules/@types/json5/",\ @@ -916,6 +928,225 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["@types/semver", [\ + ["npm:7.3.13", {\ + "packageLocation": "./.yarn/cache/@types-semver-npm-7.3.13-56212b60da-00c0724d54.zip/node_modules/@types/semver/",\ + "packageDependencies": [\ + ["@types/semver", "npm:7.3.13"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/eslint-plugin", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-eslint-plugin-npm-5.58.0-d549b94dee-e5d76d43c4.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + "packageDependencies": [\ + ["@typescript-eslint/eslint-plugin", "npm:5.58.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-eslint-plugin-virtual-bfda3cad74/0/cache/@typescript-eslint-eslint-plugin-npm-5.58.0-d549b94dee-e5d76d43c4.zip/node_modules/@typescript-eslint/eslint-plugin/",\ + "packageDependencies": [\ + ["@typescript-eslint/eslint-plugin", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ + ["@eslint-community/regexpp", "npm:4.5.0"],\ + ["@types/eslint", null],\ + ["@types/typescript", null],\ + ["@types/typescript-eslint__parser", null],\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ + ["@typescript-eslint/scope-manager", "npm:5.58.0"],\ + ["@typescript-eslint/type-utils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0"],\ + ["@typescript-eslint/utils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0"],\ + ["debug", "virtual:d308674d86394045a3178d86fc0909ad49c0ac9801ba12776e517bdaf3dfe3537e24a9c79fd8f2bd15e4a7d8be7fae6252874fd98e2dbd2728333f46ec685014#npm:4.3.4"],\ + ["eslint", "npm:8.38.0"],\ + ["grapheme-splitter", "npm:1.0.4"],\ + ["ignore", "npm:5.2.4"],\ + ["natural-compare-lite", "npm:1.4.0"],\ + ["semver", "npm:7.4.0"],\ + ["tsutils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:3.21.0"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "@types/typescript-eslint__parser",\ + "@types/typescript",\ + "@typescript-eslint/parser",\ + "eslint",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/parser", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-parser-npm-5.58.0-6b3789fcc1-38681da48a.zip/node_modules/@typescript-eslint/parser/",\ + "packageDependencies": [\ + ["@typescript-eslint/parser", "npm:5.58.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-parser-virtual-b8ca773bc5/0/cache/@typescript-eslint-parser-npm-5.58.0-6b3789fcc1-38681da48a.zip/node_modules/@typescript-eslint/parser/",\ + "packageDependencies": [\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ + ["@types/eslint", null],\ + ["@types/typescript", null],\ + ["@typescript-eslint/scope-manager", "npm:5.58.0"],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:108b86f167045f21bf94b895b897846fc3e185383213df809200a28cdafd13575fe0bf004ecb612239b00fab6fd200e5c5f644100edb1b9a4e34ccadab31609d#npm:5.58.0"],\ + ["debug", "virtual:d308674d86394045a3178d86fc0909ad49c0ac9801ba12776e517bdaf3dfe3537e24a9c79fd8f2bd15e4a7d8be7fae6252874fd98e2dbd2728333f46ec685014#npm:4.3.4"],\ + ["eslint", "npm:8.38.0"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "@types/typescript",\ + "eslint",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/scope-manager", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-scope-manager-npm-5.58.0-a1ccd28e55-f0d3df5cc3.zip/node_modules/@typescript-eslint/scope-manager/",\ + "packageDependencies": [\ + ["@typescript-eslint/scope-manager", "npm:5.58.0"],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["@typescript-eslint/visitor-keys", "npm:5.58.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/type-utils", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-type-utils-npm-5.58.0-6f2392c10d-803f24daed.zip/node_modules/@typescript-eslint/type-utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/type-utils", "npm:5.58.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-type-utils-virtual-108b86f167/0/cache/@typescript-eslint-type-utils-npm-5.58.0-6f2392c10d-803f24daed.zip/node_modules/@typescript-eslint/type-utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/type-utils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0"],\ + ["@types/eslint", null],\ + ["@types/typescript", null],\ + ["@typescript-eslint/typescript-estree", "virtual:108b86f167045f21bf94b895b897846fc3e185383213df809200a28cdafd13575fe0bf004ecb612239b00fab6fd200e5c5f644100edb1b9a4e34ccadab31609d#npm:5.58.0"],\ + ["@typescript-eslint/utils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0"],\ + ["debug", "virtual:d308674d86394045a3178d86fc0909ad49c0ac9801ba12776e517bdaf3dfe3537e24a9c79fd8f2bd15e4a7d8be7fae6252874fd98e2dbd2728333f46ec685014#npm:4.3.4"],\ + ["eslint", "npm:8.38.0"],\ + ["tsutils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:3.21.0"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "@types/typescript",\ + "eslint",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/types", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-types-npm-5.58.0-6a148547b0-8622a73d73.zip/node_modules/@typescript-eslint/types/",\ + "packageDependencies": [\ + ["@typescript-eslint/types", "npm:5.58.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/typescript-estree", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip/node_modules/@typescript-eslint/typescript-estree/",\ + "packageDependencies": [\ + ["@typescript-eslint/typescript-estree", "npm:5.58.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:108b86f167045f21bf94b895b897846fc3e185383213df809200a28cdafd13575fe0bf004ecb612239b00fab6fd200e5c5f644100edb1b9a4e34ccadab31609d#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-a6ec732335/0/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip/node_modules/@typescript-eslint/typescript-estree/",\ + "packageDependencies": [\ + ["@typescript-eslint/typescript-estree", "virtual:108b86f167045f21bf94b895b897846fc3e185383213df809200a28cdafd13575fe0bf004ecb612239b00fab6fd200e5c5f644100edb1b9a4e34ccadab31609d#npm:5.58.0"],\ + ["@types/typescript", null],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["@typescript-eslint/visitor-keys", "npm:5.58.0"],\ + ["debug", "virtual:d308674d86394045a3178d86fc0909ad49c0ac9801ba12776e517bdaf3dfe3537e24a9c79fd8f2bd15e4a7d8be7fae6252874fd98e2dbd2728333f46ec685014#npm:4.3.4"],\ + ["globby", "npm:11.1.0"],\ + ["is-glob", "npm:4.0.3"],\ + ["semver", "npm:7.4.0"],\ + ["tsutils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:3.21.0"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:56d8ec28545976ce3be444f80ee3efb6fb500a50f58f51eb1e1b1d98ff04622f72573edf2984bf2a9f1e51756093fe114d9bc2a60c320e1bd3b04d140a4ca364#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-typescript-estree-virtual-4baf17eb1e/0/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip/node_modules/@typescript-eslint/typescript-estree/",\ + "packageDependencies": [\ + ["@typescript-eslint/typescript-estree", "virtual:56d8ec28545976ce3be444f80ee3efb6fb500a50f58f51eb1e1b1d98ff04622f72573edf2984bf2a9f1e51756093fe114d9bc2a60c320e1bd3b04d140a4ca364#npm:5.58.0"],\ + ["@types/typescript", null],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["@typescript-eslint/visitor-keys", "npm:5.58.0"],\ + ["debug", "virtual:d308674d86394045a3178d86fc0909ad49c0ac9801ba12776e517bdaf3dfe3537e24a9c79fd8f2bd15e4a7d8be7fae6252874fd98e2dbd2728333f46ec685014#npm:4.3.4"],\ + ["globby", "npm:11.1.0"],\ + ["is-glob", "npm:4.0.3"],\ + ["semver", "npm:7.4.0"],\ + ["tsutils", "virtual:4baf17eb1ed964a3f365e903977cc2b4c876afcb3f510d7ab17561d61004e19781870ee977624116621f6e705721d45fcf374f66798e8dd061bb26e5fecc3016#npm:3.21.0"],\ + ["typescript", null]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/utils", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-utils-npm-5.58.0-3279680cff-c618ae6796.zip/node_modules/@typescript-eslint/utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/utils", "npm:5.58.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0", {\ + "packageLocation": "./.yarn/__virtual__/@typescript-eslint-utils-virtual-56d8ec2854/0/cache/@typescript-eslint-utils-npm-5.58.0-3279680cff-c618ae6796.zip/node_modules/@typescript-eslint/utils/",\ + "packageDependencies": [\ + ["@typescript-eslint/utils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:5.58.0"],\ + ["@eslint-community/eslint-utils", "virtual:552d805c27b911879922fd6c8c62e8f7010a3e090fad5de06affada0215e4ae9d87b903dce7c72619378bf8ec151c34a4cdebd9f2c85e5867b8ae93c0c5e75be#npm:4.4.0"],\ + ["@types/eslint", null],\ + ["@types/json-schema", "npm:7.0.11"],\ + ["@types/semver", "npm:7.3.13"],\ + ["@typescript-eslint/scope-manager", "npm:5.58.0"],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["@typescript-eslint/typescript-estree", "virtual:56d8ec28545976ce3be444f80ee3efb6fb500a50f58f51eb1e1b1d98ff04622f72573edf2984bf2a9f1e51756093fe114d9bc2a60c320e1bd3b04d140a4ca364#npm:5.58.0"],\ + ["eslint", "npm:8.38.0"],\ + ["eslint-scope", "npm:5.1.1"],\ + ["semver", "npm:7.4.0"]\ + ],\ + "packagePeers": [\ + "@types/eslint",\ + "eslint"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["@typescript-eslint/visitor-keys", [\ + ["npm:5.58.0", {\ + "packageLocation": "./.yarn/cache/@typescript-eslint-visitor-keys-npm-5.58.0-06654486ba-ab2d1f3766.zip/node_modules/@typescript-eslint/visitor-keys/",\ + "packageDependencies": [\ + ["@typescript-eslint/visitor-keys", "npm:5.58.0"],\ + ["@typescript-eslint/types", "npm:5.58.0"],\ + ["eslint-visitor-keys", "npm:3.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["JSONStream", [\ ["npm:1.3.5", {\ "packageLocation": "./.yarn/cache/JSONStream-npm-1.3.5-1987f2e6dd-2605fa1242.zip/node_modules/JSONStream/",\ @@ -2342,7 +2573,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["@types/eslint-import-resolver-typescript", null],\ ["@types/eslint-import-resolver-webpack", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", null],\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ ["debug", "virtual:65bed195431eadffc59e2238eb20cc12d9a1665bc7458ce780a9320ff795091b03cb5c4c2094938315ddd967b5b02c0f1df67b3ed435c69b7457092b7cc06ed8#npm:3.2.7"],\ ["eslint", "npm:8.38.0"],\ ["eslint-import-resolver-node", "npm:0.3.7"],\ @@ -2371,6 +2602,8 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-plugin-aliens", "workspace:."],\ ["@semantic-release/changelog", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:6.0.3"],\ ["@semantic-release/git", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:10.0.1"],\ + ["@typescript-eslint/eslint-plugin", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ ["eslint", "npm:8.38.0"],\ ["eslint-config-airbnb-base", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:15.0.0"],\ ["eslint-plugin-eslint-plugin", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.0.8"],\ @@ -2378,7 +2611,8 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-plugin-node", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:11.1.0"],\ ["mocha", "npm:10.2.0"],\ ["requireindex", "npm:1.2.0"],\ - ["semantic-release", "npm:21.0.1"]\ + ["semantic-release", "npm:21.0.1"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ ],\ "linkType": "SOFT"\ }]\ @@ -2445,7 +2679,7 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { ["eslint-plugin-import", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:2.27.5"],\ ["@types/eslint", null],\ ["@types/typescript-eslint__parser", null],\ - ["@typescript-eslint/parser", null],\ + ["@typescript-eslint/parser", "virtual:18c05d8d18c6ab2207a1e6840b3ead7ec564a0eff6815e45b365584d26b0e94d5ba04d36094128ab8959fcebceff99e9f2ebda6ca1a7736240d230f2bd14cf94#npm:5.58.0"],\ ["array-includes", "npm:3.1.6"],\ ["array.prototype.flat", "npm:1.3.1"],\ ["array.prototype.flatmap", "npm:1.3.1"],\ @@ -2501,6 +2735,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["eslint-scope", [\ + ["npm:5.1.1", {\ + "packageLocation": "./.yarn/cache/eslint-scope-npm-5.1.1-71fe59b18a-47e4b6a3f0.zip/node_modules/eslint-scope/",\ + "packageDependencies": [\ + ["eslint-scope", "npm:5.1.1"],\ + ["esrecurse", "npm:4.3.0"],\ + ["estraverse", "npm:4.3.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:7.1.1", {\ "packageLocation": "./.yarn/cache/eslint-scope-npm-7.1.1-23935eb377-9f6e974ab2.zip/node_modules/eslint-scope/",\ "packageDependencies": [\ @@ -2607,6 +2850,13 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { }]\ ]],\ ["estraverse", [\ + ["npm:4.3.0", {\ + "packageLocation": "./.yarn/cache/estraverse-npm-4.3.0-920a32f3c6-a6299491f9.zip/node_modules/estraverse/",\ + "packageDependencies": [\ + ["estraverse", "npm:4.3.0"]\ + ],\ + "linkType": "HARD"\ + }],\ ["npm:5.3.0", {\ "packageLocation": "./.yarn/cache/estraverse-npm-5.3.0-03284f8f63-072780882d.zip/node_modules/estraverse/",\ "packageDependencies": [\ @@ -4848,6 +5098,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["natural-compare-lite", [\ + ["npm:1.4.0", {\ + "packageLocation": "./.yarn/cache/natural-compare-lite-npm-1.4.0-12b6b308ed-5222ac3986.zip/node_modules/natural-compare-lite/",\ + "packageDependencies": [\ + ["natural-compare-lite", "npm:1.4.0"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["negotiator", [\ ["npm:0.6.3", {\ "packageLocation": "./.yarn/cache/negotiator-npm-0.6.3-9d50e36171-b8ffeb1e26.zip/node_modules/negotiator/",\ @@ -6824,6 +7083,52 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["tslib", [\ + ["npm:1.14.1", {\ + "packageLocation": "./.yarn/cache/tslib-npm-1.14.1-102499115e-dbe628ef87.zip/node_modules/tslib/",\ + "packageDependencies": [\ + ["tslib", "npm:1.14.1"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ + ["tsutils", [\ + ["npm:3.21.0", {\ + "packageLocation": "./.yarn/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip/node_modules/tsutils/",\ + "packageDependencies": [\ + ["tsutils", "npm:3.21.0"]\ + ],\ + "linkType": "SOFT"\ + }],\ + ["virtual:4baf17eb1ed964a3f365e903977cc2b4c876afcb3f510d7ab17561d61004e19781870ee977624116621f6e705721d45fcf374f66798e8dd061bb26e5fecc3016#npm:3.21.0", {\ + "packageLocation": "./.yarn/__virtual__/tsutils-virtual-c2878781ac/0/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip/node_modules/tsutils/",\ + "packageDependencies": [\ + ["tsutils", "virtual:4baf17eb1ed964a3f365e903977cc2b4c876afcb3f510d7ab17561d61004e19781870ee977624116621f6e705721d45fcf374f66798e8dd061bb26e5fecc3016#npm:3.21.0"],\ + ["@types/typescript", null],\ + ["tslib", "npm:1.14.1"],\ + ["typescript", null]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }],\ + ["virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:3.21.0", {\ + "packageLocation": "./.yarn/__virtual__/tsutils-virtual-08a592835e/0/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip/node_modules/tsutils/",\ + "packageDependencies": [\ + ["tsutils", "virtual:bfda3cad743a05ce4e10b3924e9e3a519479c8ccc66427088c7be88d13d64944b5cff16d4cb9d504242feb527d0bbc9c2395f819883b1061d92258662d860c6c#npm:3.21.0"],\ + ["@types/typescript", null],\ + ["tslib", "npm:1.14.1"],\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "packagePeers": [\ + "@types/typescript",\ + "typescript"\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["tuf-js", [\ ["npm:1.1.3", {\ "packageLocation": "./.yarn/cache/tuf-js-npm-1.1.3-ea5d00b367-87efe13069.zip/node_modules/tuf-js/",\ @@ -6908,6 +7213,15 @@ function $$SETUP_STATE(hydrateRuntimeState, basePath) { "linkType": "HARD"\ }]\ ]],\ + ["typescript", [\ + ["patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82", {\ + "packageLocation": "./.yarn/cache/typescript-patch-260000abbe-bb309d320c.zip/node_modules/typescript/",\ + "packageDependencies": [\ + ["typescript", "patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82"]\ + ],\ + "linkType": "HARD"\ + }]\ + ]],\ ["uglify-js", [\ ["npm:3.17.4", {\ "packageLocation": "./.yarn/cache/uglify-js-npm-3.17.4-58d4ab56aa-7b3897df38.zip/node_modules/uglify-js/",\ diff --git a/.yarn/cache/@types-json-schema-npm-7.0.11-79462ae5ca-527bddfe62.zip b/.yarn/cache/@types-json-schema-npm-7.0.11-79462ae5ca-527bddfe62.zip new file mode 100644 index 0000000..7843ecd Binary files /dev/null and b/.yarn/cache/@types-json-schema-npm-7.0.11-79462ae5ca-527bddfe62.zip differ diff --git a/.yarn/cache/@types-semver-npm-7.3.13-56212b60da-00c0724d54.zip b/.yarn/cache/@types-semver-npm-7.3.13-56212b60da-00c0724d54.zip new file mode 100644 index 0000000..d1a5b0a Binary files /dev/null and b/.yarn/cache/@types-semver-npm-7.3.13-56212b60da-00c0724d54.zip differ diff --git a/.yarn/cache/@typescript-eslint-eslint-plugin-npm-5.58.0-d549b94dee-e5d76d43c4.zip b/.yarn/cache/@typescript-eslint-eslint-plugin-npm-5.58.0-d549b94dee-e5d76d43c4.zip new file mode 100644 index 0000000..9799fd9 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-eslint-plugin-npm-5.58.0-d549b94dee-e5d76d43c4.zip differ diff --git a/.yarn/cache/@typescript-eslint-parser-npm-5.58.0-6b3789fcc1-38681da48a.zip b/.yarn/cache/@typescript-eslint-parser-npm-5.58.0-6b3789fcc1-38681da48a.zip new file mode 100644 index 0000000..43c9852 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-parser-npm-5.58.0-6b3789fcc1-38681da48a.zip differ diff --git a/.yarn/cache/@typescript-eslint-scope-manager-npm-5.58.0-a1ccd28e55-f0d3df5cc3.zip b/.yarn/cache/@typescript-eslint-scope-manager-npm-5.58.0-a1ccd28e55-f0d3df5cc3.zip new file mode 100644 index 0000000..a162ba9 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-scope-manager-npm-5.58.0-a1ccd28e55-f0d3df5cc3.zip differ diff --git a/.yarn/cache/@typescript-eslint-type-utils-npm-5.58.0-6f2392c10d-803f24daed.zip b/.yarn/cache/@typescript-eslint-type-utils-npm-5.58.0-6f2392c10d-803f24daed.zip new file mode 100644 index 0000000..b299dee Binary files /dev/null and b/.yarn/cache/@typescript-eslint-type-utils-npm-5.58.0-6f2392c10d-803f24daed.zip differ diff --git a/.yarn/cache/@typescript-eslint-types-npm-5.58.0-6a148547b0-8622a73d73.zip b/.yarn/cache/@typescript-eslint-types-npm-5.58.0-6a148547b0-8622a73d73.zip new file mode 100644 index 0000000..c0f17a2 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-types-npm-5.58.0-6a148547b0-8622a73d73.zip differ diff --git a/.yarn/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip b/.yarn/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip new file mode 100644 index 0000000..e960e71 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-typescript-estree-npm-5.58.0-731f648727-51b668ec85.zip differ diff --git a/.yarn/cache/@typescript-eslint-utils-npm-5.58.0-3279680cff-c618ae6796.zip b/.yarn/cache/@typescript-eslint-utils-npm-5.58.0-3279680cff-c618ae6796.zip new file mode 100644 index 0000000..3e65d73 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-utils-npm-5.58.0-3279680cff-c618ae6796.zip differ diff --git a/.yarn/cache/@typescript-eslint-visitor-keys-npm-5.58.0-06654486ba-ab2d1f3766.zip b/.yarn/cache/@typescript-eslint-visitor-keys-npm-5.58.0-06654486ba-ab2d1f3766.zip new file mode 100644 index 0000000..7c108f7 Binary files /dev/null and b/.yarn/cache/@typescript-eslint-visitor-keys-npm-5.58.0-06654486ba-ab2d1f3766.zip differ diff --git a/.yarn/cache/eslint-scope-npm-5.1.1-71fe59b18a-47e4b6a3f0.zip b/.yarn/cache/eslint-scope-npm-5.1.1-71fe59b18a-47e4b6a3f0.zip new file mode 100644 index 0000000..cf013ed Binary files /dev/null and b/.yarn/cache/eslint-scope-npm-5.1.1-71fe59b18a-47e4b6a3f0.zip differ diff --git a/.yarn/cache/estraverse-npm-4.3.0-920a32f3c6-a6299491f9.zip b/.yarn/cache/estraverse-npm-4.3.0-920a32f3c6-a6299491f9.zip new file mode 100644 index 0000000..f907761 Binary files /dev/null and b/.yarn/cache/estraverse-npm-4.3.0-920a32f3c6-a6299491f9.zip differ diff --git a/.yarn/cache/natural-compare-lite-npm-1.4.0-12b6b308ed-5222ac3986.zip b/.yarn/cache/natural-compare-lite-npm-1.4.0-12b6b308ed-5222ac3986.zip new file mode 100644 index 0000000..6f588b8 Binary files /dev/null and b/.yarn/cache/natural-compare-lite-npm-1.4.0-12b6b308ed-5222ac3986.zip differ diff --git a/.yarn/cache/tslib-npm-1.14.1-102499115e-dbe628ef87.zip b/.yarn/cache/tslib-npm-1.14.1-102499115e-dbe628ef87.zip new file mode 100644 index 0000000..5569f01 Binary files /dev/null and b/.yarn/cache/tslib-npm-1.14.1-102499115e-dbe628ef87.zip differ diff --git a/.yarn/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip b/.yarn/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip new file mode 100644 index 0000000..38d2b34 Binary files /dev/null and b/.yarn/cache/tsutils-npm-3.21.0-347e6636c5-1843f4c1b2.zip differ diff --git a/.yarn/cache/typescript-npm-5.0.4-122f6a883a-82b94da3f4.zip b/.yarn/cache/typescript-npm-5.0.4-122f6a883a-82b94da3f4.zip new file mode 100644 index 0000000..8c72d57 Binary files /dev/null and b/.yarn/cache/typescript-npm-5.0.4-122f6a883a-82b94da3f4.zip differ diff --git a/.yarn/cache/typescript-patch-260000abbe-bb309d320c.zip b/.yarn/cache/typescript-patch-260000abbe-bb309d320c.zip new file mode 100644 index 0000000..3c47d9e Binary files /dev/null and b/.yarn/cache/typescript-patch-260000abbe-bb309d320c.zip differ diff --git a/lib/config/base.js b/lib/config/base.js index 4d9a19e..8af4fae 100644 --- a/lib/config/base.js +++ b/lib/config/base.js @@ -3,7 +3,9 @@ const rules = require("../recommended"); module.exports = { root: true, - extends: ["airbnb-base"], + parser: "@typescript-eslint/parser", + + extends: ["airbnb-base", "plugin:@typescript-eslint/recommended"], parserOptions: { ecmaVersion: 6, @@ -14,7 +16,7 @@ module.exports = { browser: true, }, - plugins: ["aliens"], + plugins: ["aliens", "@typescript-eslint"], rules, }; diff --git a/lib/config/recommended.js b/lib/config/recommended.js index 056a965..aecae49 100644 --- a/lib/config/recommended.js +++ b/lib/config/recommended.js @@ -3,20 +3,62 @@ module.exports = { rules: { // https://eslint.org/docs/latest/rules/no-duplicate-imports - "no-duplicate-imports": 0, //중복 모듈 가져오기 금지 + "no-duplicate-imports": "error", //중복 모듈 가져오기 금지 // https://eslint.org/docs/latest/rules/no-unused-vars "no-unused-vars": ["warn", { vars: "all", args: "all", ignoreRestSiblings: true }], //사용하지 않는 변수 허용하지 않음 // https://eslint.org/docs/latest/rules/arrow-body-style "arrow-body-style": ["error", "as-needed"], //화살표 함수 본문 주위에 중괄호 필요 여부에 따라 결정 // https://eslint.org/docs/latest/rules/block-scoped-var - "block-scoped-var": 0, //정의된 범위 내에서 변수 사용 강제 + "block-scoped-var": "error", //정의된 범위 내에서 변수 사용 강제 // https://eslint.org/docs/latest/rules/func-style "func-style": ["error", "expression"], //화살표 함수 필수 // https://eslint.org/docs/latest/rules/no-empty "no-empty": ["error", { allowEmptyCatch: true }], //빈 블록 문을 허용하지 않음 // https://eslint.org/docs/latest/rules/require-await - "require-await": 0, //await표현식이 없는 비동기 함수를 허용하지 않음 + "require-await": "off", //await표현식이 없는 비동기 함수를 허용하지 않음 // https://eslint.org/docs/latest/rules/max-depth - "max-depth": ["error", 3], //블록 중첩 최대 3번까지 + "max-depth": ["error", { max: 3 }], //블록 중첩 최대 3번까지 + // https://typescript-eslint.io/rules/array-type + "array-type": "array-simple", //간단한 배열 타입 명시는 []로 union, object, function등이 들어가는 경우 Array로 명시 + // https://typescript-eslint.io/rules/naming-convention + "@typescript-eslint/naming-convention": [ + "error", + { + selector: ["variable", "function"], + format: ["camelCase"], + }, + { + selector: ["parameter"], + format: ["snake_case"], + }, + { + selector: ["interface", "class", "typeAlias"], + format: ["PascalCase"], + }, + ], // 네이밍 규칙 + // https://typescript-eslint.io/rules/consistent-indexed-object-style + "@typescript-eslint/consistent-indexed-object-style": ["error", "index-signature"], //색인 서명만 허용 + // https://typescript-eslint.io/rules/consistent-type-imports + "@typescript-eslint/consistent-type-imports": ["error", { fixStyle: "inline-type-imports" }], //형식 가져오기의 일관된 사용을 적용 + // https://typescript-eslint.io/rules/explicit-function-return-type + "@typescript-eslint/explicit-function-return-type": "error", //반환 유형이 필요 + // https://typescript-eslint.io/rules/explicit-module-boundary-types + "@typescript-eslint/explicit-module-boundary-types": "error", //인수 유형이 필요 + // https://typescript-eslint.io/rules/no-confusing-non-null-assertion + "@typescript-eslint/no-confusing-non-null-assertion": "error", //혼동을 줄 수 있는 위치에서 null이 아닌 어설션을 허용하지 않음 + // https://typescript-eslint.io/rules/no-duplicate-type-constituents + "@typescript-eslint/no-duplicate-type-constituents": "error", //중복 타입 구성 요소를 허용하지 않음 + // https://typescript-eslint.io/rules/no-unsafe-return + "@typescript-eslint/no-unsafe-return": "error", //안전한 타입 반환 + // https://typescript-eslint.io/rules/no-useless-empty-export + "@typescript-eslint/no-useless-empty-export": "error", //빈내보내기 금지 + // https://typescript-eslint.io/rules/non-nullable-type-assertion-style + "@typescript-eslint/non-nullable-type-assertion-style": "error", //명시적 형식 캐스트에 대해 null이 아닌 어설션을 적용 + // https://typescript-eslint.io/rules/no-implied-eval + "no-implied-eval": "off", + "@typescript-eslint/no-implied-eval": "error", //eval()-like 메서드 의 사용을 금지 + // https://typescript-eslint.io/rules/no-redeclare + "no-redeclare": "off", + "@typescript-eslint/no-redeclare": "error", //변수 재선언 금지 }, }; diff --git a/package.json b/package.json index a6358c2..1e6cc74 100644 --- a/package.json +++ b/package.json @@ -23,13 +23,16 @@ "devDependencies": { "@semantic-release/changelog": "^6.0.3", "@semantic-release/git": "^10.0.1", + "@typescript-eslint/eslint-plugin": "^5.58.0", + "@typescript-eslint/parser": "^5.58.0", "eslint": "^8.19.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-plugin-eslint-plugin": "^5.0.0", "eslint-plugin-import": "^2.27.5", "eslint-plugin-node": "^11.1.0", "mocha": "^10.0.0", - "semantic-release": "^21.0.1" + "semantic-release": "^21.0.1", + "typescript": "^5.0.4" }, "engines": { "node": "^14.17.0 || ^16.0.0 || >= 18.0.0" diff --git a/yarn.lock b/yarn.lock index f0f3e58..7ac0ce2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -663,6 +663,13 @@ __metadata: languageName: node linkType: hard +"@types/json-schema@npm:^7.0.9": + version: 7.0.11 + resolution: "@types/json-schema@npm:7.0.11" + checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d + languageName: node + linkType: hard + "@types/json5@npm:^0.0.29": version: 0.0.29 resolution: "@types/json5@npm:0.0.29" @@ -691,6 +698,134 @@ __metadata: languageName: node linkType: hard +"@types/semver@npm:^7.3.12": + version: 7.3.13 + resolution: "@types/semver@npm:7.3.13" + checksum: 00c0724d54757c2f4bc60b5032fe91cda6410e48689633d5f35ece8a0a66445e3e57fa1d6e07eb780f792e82ac542948ec4d0b76eb3484297b79bd18b8cf1cb0 + languageName: node + linkType: hard + +"@typescript-eslint/eslint-plugin@npm:^5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/eslint-plugin@npm:5.58.0" + dependencies: + "@eslint-community/regexpp": ^4.4.0 + "@typescript-eslint/scope-manager": 5.58.0 + "@typescript-eslint/type-utils": 5.58.0 + "@typescript-eslint/utils": 5.58.0 + debug: ^4.3.4 + grapheme-splitter: ^1.0.4 + ignore: ^5.2.0 + natural-compare-lite: ^1.4.0 + semver: ^7.3.7 + tsutils: ^3.21.0 + peerDependencies: + "@typescript-eslint/parser": ^5.0.0 + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: e5d76d43c466ebd4b552e3307eff72ab5ae8a0c09a1d35fa13b62769ac3336df94d9281728ab5aafd2c14a0a644133583edcd708fce60a9a82df1db3ca3b8e14 + languageName: node + linkType: hard + +"@typescript-eslint/parser@npm:^5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/parser@npm:5.58.0" + dependencies: + "@typescript-eslint/scope-manager": 5.58.0 + "@typescript-eslint/types": 5.58.0 + "@typescript-eslint/typescript-estree": 5.58.0 + debug: ^4.3.4 + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 38681da48a40132c0538579c818ceef9ba2793ab8f79236c3f64980ba1649bb87cb367cd79d37bf2982b8bfbc28f91846b8676f9bd333e8b691c9befffd8874a + languageName: node + linkType: hard + +"@typescript-eslint/scope-manager@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/scope-manager@npm:5.58.0" + dependencies: + "@typescript-eslint/types": 5.58.0 + "@typescript-eslint/visitor-keys": 5.58.0 + checksum: f0d3df5cc3c461fe63ef89ad886b53c239cc7c1d9061d83d8a9d9c8e087e5501eac84bebff8a954728c17ccea191f235686373d54d2b8b6370af2bcf2b18e062 + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/type-utils@npm:5.58.0" + dependencies: + "@typescript-eslint/typescript-estree": 5.58.0 + "@typescript-eslint/utils": 5.58.0 + debug: ^4.3.4 + tsutils: ^3.21.0 + peerDependencies: + eslint: "*" + peerDependenciesMeta: + typescript: + optional: true + checksum: 803f24daed185152bf86952d4acebb5ea18ff03db5f28750368edf76fdea46b4b0f8803ae0b61c0282b47181c9977113457b16e33d5d2cb33b13855f55c5e5b2 + languageName: node + linkType: hard + +"@typescript-eslint/types@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/types@npm:5.58.0" + checksum: 8622a73d73220c4a7111537825f488c0271272032a1d4e129dc722bc6e8b3ec84f64469b2ca3b8dae7da3a9c18953ce1449af51f5f757dad60835eb579ad1d2c + languageName: node + linkType: hard + +"@typescript-eslint/typescript-estree@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/typescript-estree@npm:5.58.0" + dependencies: + "@typescript-eslint/types": 5.58.0 + "@typescript-eslint/visitor-keys": 5.58.0 + debug: ^4.3.4 + globby: ^11.1.0 + is-glob: ^4.0.3 + semver: ^7.3.7 + tsutils: ^3.21.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 51b668ec858db0c040a71dff526273945cee4ba5a9b240528d503d02526685882d900cf071c6636a4d9061ed3fd4a7274f7f1a23fba55c4b48b143344b4009c7 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/utils@npm:5.58.0" + dependencies: + "@eslint-community/eslint-utils": ^4.2.0 + "@types/json-schema": ^7.0.9 + "@types/semver": ^7.3.12 + "@typescript-eslint/scope-manager": 5.58.0 + "@typescript-eslint/types": 5.58.0 + "@typescript-eslint/typescript-estree": 5.58.0 + eslint-scope: ^5.1.1 + semver: ^7.3.7 + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + checksum: c618ae67963ecf96b1492c09afaeb363f542f0d6780bcac4af3c26034e3b20034666b2d523aa94821df813aafb57a0b150a7d5c2224fe8257452ad1de2237a58 + languageName: node + linkType: hard + +"@typescript-eslint/visitor-keys@npm:5.58.0": + version: 5.58.0 + resolution: "@typescript-eslint/visitor-keys@npm:5.58.0" + dependencies: + "@typescript-eslint/types": 5.58.0 + eslint-visitor-keys: ^3.3.0 + checksum: ab2d1f37660559954c840429ef78bbf71834063557e3e68e435005b4987970b9356fdf217ead53f7a57f66f5488dc478062c5c44bf17053a8bf041733539b98f + languageName: node + linkType: hard + "JSONStream@npm:^1.0.4": version: 1.3.5 resolution: "JSONStream@npm:1.3.5" @@ -1533,7 +1668,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:4.3.4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.3": +"debug@npm:4, debug@npm:4.3.4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -1885,6 +2020,8 @@ __metadata: dependencies: "@semantic-release/changelog": ^6.0.3 "@semantic-release/git": ^10.0.1 + "@typescript-eslint/eslint-plugin": ^5.58.0 + "@typescript-eslint/parser": ^5.58.0 eslint: ^8.19.0 eslint-config-airbnb-base: ^15.0.0 eslint-plugin-eslint-plugin: ^5.0.0 @@ -1893,6 +2030,7 @@ __metadata: mocha: ^10.0.0 requireindex: ^1.2.0 semantic-release: ^21.0.1 + typescript: ^5.0.4 peerDependencies: eslint: ">=7" eslint-config-airbnb-base: ">=15" @@ -1965,6 +2103,16 @@ __metadata: languageName: node linkType: hard +"eslint-scope@npm:^5.1.1": + version: 5.1.1 + resolution: "eslint-scope@npm:5.1.1" + dependencies: + esrecurse: ^4.3.0 + estraverse: ^4.1.1 + checksum: 47e4b6a3f0cc29c7feedee6c67b225a2da7e155802c6ea13bbef4ac6b9e10c66cd2dcb987867ef176292bf4e64eccc680a49e35e9e9c669f4a02bac17e86abdb + languageName: node + linkType: hard + "eslint-scope@npm:^7.1.1": version: 7.1.1 resolution: "eslint-scope@npm:7.1.1" @@ -2105,6 +2253,13 @@ __metadata: languageName: node linkType: hard +"estraverse@npm:^4.1.1": + version: 4.3.0 + resolution: "estraverse@npm:4.3.0" + checksum: a6299491f9940bb246124a8d44b7b7a413a8336f5436f9837aaa9330209bd9ee8af7e91a654a3545aee9c54b3308e78ee360cef1d777d37cfef77d2fa33b5827 + languageName: node + linkType: hard + "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0": version: 5.3.0 resolution: "estraverse@npm:5.3.0" @@ -2598,7 +2753,7 @@ __metadata: languageName: node linkType: hard -"globby@npm:^11.0.0": +"globby@npm:^11.0.0, globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" dependencies: @@ -4124,6 +4279,13 @@ __metadata: languageName: node linkType: hard +"natural-compare-lite@npm:^1.4.0": + version: 1.4.0 + resolution: "natural-compare-lite@npm:1.4.0" + checksum: 5222ac3986a2b78dd6069ac62cbb52a7bf8ffc90d972ab76dfe7b01892485d229530ed20d0c62e79a6b363a663b273db3bde195a1358ce9e5f779d4453887225 + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -5940,6 +6102,24 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^1.8.1": + version: 1.14.1 + resolution: "tslib@npm:1.14.1" + checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd + languageName: node + linkType: hard + +"tsutils@npm:^3.21.0": + version: 3.21.0 + resolution: "tsutils@npm:3.21.0" + dependencies: + tslib: ^1.8.1 + peerDependencies: + typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" + checksum: 1843f4c1b2e0f975e08c4c21caa4af4f7f65a12ac1b81b3b8489366826259323feb3fc7a243123453d2d1a02314205a7634e048d4a8009921da19f99755cdc48 + languageName: node + linkType: hard + "tuf-js@npm:^1.0.0": version: 1.1.3 resolution: "tuf-js@npm:1.1.3" @@ -6019,6 +6199,26 @@ __metadata: languageName: node linkType: hard +"typescript@npm:^5.0.4": + version: 5.0.4 + resolution: "typescript@npm:5.0.4" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: 82b94da3f4604a8946da585f7d6c3025fff8410779e5bde2855ab130d05e4fd08938b9e593b6ebed165bda6ad9292b230984f10952cf82f0a0ca07bbeaa08172 + languageName: node + linkType: hard + +"typescript@patch:typescript@^5.0.4#~builtin": + version: 5.0.4 + resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=85af82" + bin: + tsc: bin/tsc + tsserver: bin/tsserver + checksum: bb309d320c59a26565fb3793dba550576ab861018ff3fd1b7fccabbe46ae4a35546bc45f342c0a0b6f265c801ccdf64ffd68f548f117ceb7f0eac4b805cd52a9 + languageName: node + linkType: hard + "uglify-js@npm:^3.1.4": version: 3.17.4 resolution: "uglify-js@npm:3.17.4"