Switched TypeScript eslint config to custom plugin

refs https://github.com/TryGhost/DevOps/issues/50

- this switches the .eslint configs from `node` to `ts`, which is a new
  config to support eslint for TypeScript
- also makes minor changes to adhere to these new rules
This commit is contained in:
Daniel Lockyer 2023-07-25 15:05:21 +02:00 committed by Daniel Lockyer
parent bf53f8ba6f
commit b0cf1f949a
12 changed files with 158 additions and 68 deletions

View File

@ -1,11 +1,6 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost', '@typescript-eslint'],
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
],
rules: {
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error']
}
'plugin:ghost/ts'
]
};

View File

@ -1,11 +1,6 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost', '@typescript-eslint'],
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
],
rules: {
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error']
}
'plugin:ghost/ts'
]
};

View File

@ -16,8 +16,6 @@ export abstract class InMemoryRepository<IDType, T extends Entity<IDType>> {
protected store: T[] = [];
private ids: Map<IDType, true> = new Map();
constructor() {}
protected abstract toPrimitive(entity: T): object;
public async save(entity: T): Promise<void> {

View File

@ -1,8 +1,7 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost', '@typescript-eslint'],
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
'plugin:ghost/ts'
],
rules: {
'no-unused-vars': 'off',

View File

@ -1,6 +1,6 @@
const crypto = require('crypto');
const errors = require('@tryghost/errors');
const tpl = require('@tryghost/tpl');
import crypto from 'crypto';
import errors from '@tryghost/errors';
import tpl from '@tryghost/tpl';
import {MailEvent} from './MailEvent';
import {MailEventRepository} from './MailEventRepository';

2
ghost/mail-events/src/libraries.d.ts vendored Normal file
View File

@ -0,0 +1,2 @@
declare module '@tryghost/errors';
declare module '@tryghost/tpl';

View File

@ -1,11 +1,6 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost', '@typescript-eslint'],
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
],
rules: {
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': ['error']
}
'plugin:ghost/ts'
]
};

View File

@ -1,8 +1,4 @@
const {
PostDeletedEvent,
PostAddedEvent,
PostEditedEvent
} = require('@tryghost/collections');
import { PostDeletedEvent, PostAddedEvent, PostEditedEvent } from '@tryghost/collections';
type ModelToDomainEventInterceptorDeps = {
ModelEvents: {

View File

@ -1,7 +1,6 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
'plugin:ghost/ts'
]
};

View File

@ -1,7 +1,6 @@
module.exports = {
parser: '@typescript-eslint/parser',
plugins: ['ghost'],
extends: [
'plugin:ghost/node'
'plugin:ghost/ts'
]
};

View File

@ -122,7 +122,7 @@
"devDependencies": {
"concurrently": "8.2.0",
"eslint": "8.44.0",
"eslint-plugin-ghost": "3.2.0",
"eslint-plugin-ghost": "3.3.0",
"husky": "8.0.3",
"lint-staged": "13.2.3",
"nx": "16.5.5",

164
yarn.lock
View File

@ -2852,11 +2852,16 @@
dependencies:
eslint-visitor-keys "^3.3.0"
"@eslint-community/regexpp@^4.4.0", "@eslint-community/regexpp@^4.5.0":
"@eslint-community/regexpp@^4.4.0":
version "4.5.1"
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.5.1.tgz#cdd35dce4fa1a89a4fd42b1599eb35b3af408884"
integrity sha512-Z5ba73P98O1KUYCCJTUeVpja9RcGoMdncZ6T49FCUl2lN38JtCJ+3WgIDBv0AuY4WChU5PmtJmOCTlN6FZTFKQ==
"@eslint-community/regexpp@^4.5.1", "@eslint-community/regexpp@^4.6.0":
version "4.6.1"
resolved "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.6.1.tgz#0b371c118b8e4ebf9dbddb56120ab4befd791211"
integrity sha512-O7x6dMstWLn2ktjcoiNLDkAGG2EjveHL+Vvc+n0fXumkJYAcSqcVYKtwDU+hDZ0uDUsnUagSYaZrOLAYE8un1A==
"@eslint/eslintrc@^0.4.3":
version "0.4.3"
resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c"
@ -7450,6 +7455,11 @@
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3"
integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==
"@types/json-schema@^7.0.12":
version "7.0.12"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.12.tgz#d70faba7039d5fca54c83c7dbab41051d2b6f6cb"
integrity sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==
"@types/json5@^0.0.29":
version "0.0.29"
resolved "https://registry.yarnpkg.com/@types/json5/-/json5-0.0.29.tgz#ee28707ae94e11d2b827bcbe5270bcea7f3e71ee"
@ -7677,7 +7687,7 @@
resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39"
integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==
"@types/semver@^7.3.12", "@types/semver@^7.3.4":
"@types/semver@^7.3.12", "@types/semver@^7.3.4", "@types/semver@^7.5.0":
version "7.5.0"
resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.5.0.tgz#591c1ce3a702c45ee15f47a42ade72c2fd78978a"
integrity sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==
@ -7802,6 +7812,24 @@
semver "^7.3.7"
tsutils "^3.21.0"
"@typescript-eslint/eslint-plugin@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.1.0.tgz#96f3ca6615717659d06c9f7161a1d14ab0c49c66"
integrity sha512-qg7Bm5TyP/I7iilGyp6DRqqkt8na00lI6HbjWZObgk3FFSzH5ypRwAHXJhJkwiRtTcfn+xYQIMOR5kJgpo6upw==
dependencies:
"@eslint-community/regexpp" "^4.5.1"
"@typescript-eslint/scope-manager" "6.1.0"
"@typescript-eslint/type-utils" "6.1.0"
"@typescript-eslint/utils" "6.1.0"
"@typescript-eslint/visitor-keys" "6.1.0"
debug "^4.3.4"
graphemer "^1.4.0"
ignore "^5.2.4"
natural-compare "^1.4.0"
natural-compare-lite "^1.4.0"
semver "^7.5.4"
ts-api-utils "^1.0.1"
"@typescript-eslint/experimental-utils@^5.0.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-5.55.0.tgz#ea2dd8737834af3a36b6a7be5bee57f57160c942"
@ -7819,6 +7847,17 @@
"@typescript-eslint/typescript-estree" "5.62.0"
debug "^4.3.4"
"@typescript-eslint/parser@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-6.1.0.tgz#3135bf65dca5340d8650703eb8cb83113e156ee5"
integrity sha512-hIzCPvX4vDs4qL07SYzyomamcs2/tQYXg5DtdAfj35AyJ5PIUqhsLf4YrEIFzZcND7R2E8tpQIZKayxg8/6Wbw==
dependencies:
"@typescript-eslint/scope-manager" "6.1.0"
"@typescript-eslint/types" "6.1.0"
"@typescript-eslint/typescript-estree" "6.1.0"
"@typescript-eslint/visitor-keys" "6.1.0"
debug "^4.3.4"
"@typescript-eslint/scope-manager@5.55.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.55.0.tgz#e863bab4d4183ddce79967fe10ceb6c829791210"
@ -7835,6 +7874,14 @@
"@typescript-eslint/types" "5.62.0"
"@typescript-eslint/visitor-keys" "5.62.0"
"@typescript-eslint/scope-manager@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-6.1.0.tgz#a6cdbe11630614f8c04867858a42dd56590796ed"
integrity sha512-AxjgxDn27hgPpe2rQe19k0tXw84YCOsjDJ2r61cIebq1t+AIxbgiXKvD4999Wk49GVaAcdJ/d49FYel+Pp3jjw==
dependencies:
"@typescript-eslint/types" "6.1.0"
"@typescript-eslint/visitor-keys" "6.1.0"
"@typescript-eslint/type-utils@5.62.0":
version "5.62.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz#286f0389c41681376cdad96b309cedd17d70346a"
@ -7845,6 +7892,16 @@
debug "^4.3.4"
tsutils "^3.21.0"
"@typescript-eslint/type-utils@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-6.1.0.tgz#21cc6c3bc1980b03f9eb4e64580d0c5be6f08215"
integrity sha512-kFXBx6QWS1ZZ5Ni89TyT1X9Ag6RXVIVhqDs0vZE/jUeWlBv/ixq2diua6G7ece6+fXw3TvNRxP77/5mOMusx2w==
dependencies:
"@typescript-eslint/typescript-estree" "6.1.0"
"@typescript-eslint/utils" "6.1.0"
debug "^4.3.4"
ts-api-utils "^1.0.1"
"@typescript-eslint/types@5.55.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.55.0.tgz#9830f8d3bcbecf59d12f821e5bc6960baaed41fd"
@ -7855,6 +7912,11 @@
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.62.0.tgz#258607e60effa309f067608931c3df6fed41fd2f"
integrity sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==
"@typescript-eslint/types@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-6.1.0.tgz#2d607c62827bb416ada5c96ebfa2ef84e45a8dfa"
integrity sha512-+Gfd5NHCpDoHDOaU/yIF3WWRI2PcBRKKpP91ZcVbL0t5tQpqYWBs3z/GGhvU+EV1D0262g9XCnyqQh19prU0JQ==
"@typescript-eslint/typescript-estree@5.55.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.55.0.tgz#8db7c8e47ecc03d49b05362b8db6f1345ee7b575"
@ -7881,6 +7943,19 @@
semver "^7.3.7"
tsutils "^3.21.0"
"@typescript-eslint/typescript-estree@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-6.1.0.tgz#ea382f6482ba698d7e993a88ce5391ea7a66c33d"
integrity sha512-nUKAPWOaP/tQjU1IQw9sOPCDavs/iU5iYLiY/6u7gxS7oKQoi4aUxXS1nrrVGTyBBaGesjkcwwHkbkiD5eBvcg==
dependencies:
"@typescript-eslint/types" "6.1.0"
"@typescript-eslint/visitor-keys" "6.1.0"
debug "^4.3.4"
globby "^11.1.0"
is-glob "^4.0.3"
semver "^7.5.4"
ts-api-utils "^1.0.1"
"@typescript-eslint/utils@5.55.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.55.0.tgz#34e97322e7ae5b901e7a870aabb01dad90023341"
@ -7909,6 +7984,19 @@
eslint-scope "^5.1.1"
semver "^7.3.7"
"@typescript-eslint/utils@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-6.1.0.tgz#1641843792b4e3451cc692e2c73055df8b26f453"
integrity sha512-wp652EogZlKmQoMS5hAvWqRKplXvkuOnNzZSE0PVvsKjpexd/XznRVHAtrfHFYmqaJz0DFkjlDsGYC9OXw+OhQ==
dependencies:
"@eslint-community/eslint-utils" "^4.4.0"
"@types/json-schema" "^7.0.12"
"@types/semver" "^7.5.0"
"@typescript-eslint/scope-manager" "6.1.0"
"@typescript-eslint/types" "6.1.0"
"@typescript-eslint/typescript-estree" "6.1.0"
semver "^7.5.4"
"@typescript-eslint/visitor-keys@5.55.0":
version "5.55.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.55.0.tgz#01ad414fca8367706d76cdb94adf788dc5b664a2"
@ -7925,6 +8013,14 @@
"@typescript-eslint/types" "5.62.0"
eslint-visitor-keys "^3.3.0"
"@typescript-eslint/visitor-keys@6.1.0":
version "6.1.0"
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-6.1.0.tgz#d2b84dff6b58944d3257ea03687e269a788c73be"
integrity sha512-yQeh+EXhquh119Eis4k0kYhj9vmFzNpbhM3LftWQVwqVjipCkwHBQOZutcYW+JVkjtTG9k8nrZU1UoNedPDd1A==
dependencies:
"@typescript-eslint/types" "6.1.0"
eslint-visitor-keys "^3.4.1"
"@vitejs/plugin-react@4.0.3":
version "4.0.3"
resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-4.0.3.tgz#007d27ad5ef1eac4bf8c29e168ba9be2203c371b"
@ -16049,16 +16145,17 @@ eslint-plugin-babel@5.3.1:
dependencies:
eslint-rule-composer "^0.3.0"
eslint-plugin-ember@11.8.0:
version "11.8.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-ember/-/eslint-plugin-ember-11.8.0.tgz#3c984500513a01d930c13dcac0b4661a64ea457b"
integrity sha512-oZ6My7LlbyhNCguHuyBnajGbpU5+raQ5zkaF9Vqe8EkWf3Ji2uJZH7BxzMMcR4gAuyx5qTUZRXVs42km1nTzVg==
eslint-plugin-ember@11.10.0:
version "11.10.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-ember/-/eslint-plugin-ember-11.10.0.tgz#46a696ebabcfefcf8212eb0eb2b11d61360c70fc"
integrity sha512-/5VanfpfzIdmWgXWyQ6ylAJWITu8mXivRce06h0uoifVpUoGaBdAkwuto/PLGfDxWdi43xWUFLb5Tpkhx2MoFg==
dependencies:
"@ember-data/rfc395-data" "^0.0.4"
"@glimmer/syntax" "^0.84.2"
css-tree "^2.0.4"
ember-rfc176-data "^0.3.15"
ember-template-imports "^3.4.2"
ember-template-recast "^6.1.4"
eslint-utils "^3.0.0"
estraverse "^5.2.0"
lodash.camelcase "^4.1.1"
@ -16067,13 +16164,13 @@ eslint-plugin-ember@11.8.0:
requireindex "^1.2.0"
snake-case "^3.0.3"
eslint-plugin-es-x@^6.1.0:
version "6.2.1"
resolved "https://registry.yarnpkg.com/eslint-plugin-es-x/-/eslint-plugin-es-x-6.2.1.tgz#34c9abc22483d7d49ff9ca8b5db29d54442d2e6b"
integrity sha512-uR34zUhZ9EBoiSD2DdV5kHLpydVEvwWqjteUr9sXRgJknwbKZJZhdJ7uFnaTtd+Nr/2G3ceJHnHXrFhJ67n3Tw==
eslint-plugin-es-x@^7.1.0:
version "7.2.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-es-x/-/eslint-plugin-es-x-7.2.0.tgz#5779d742ad31f8fd780b9481331481e142b72311"
integrity sha512-9dvv5CcvNjSJPqnS5uZkqb3xmbeqRLnvXKK7iI5+oK/yTusyc46zbBZKENGsOfojm/mKfszyZb+wNqNPAPeGXA==
dependencies:
"@eslint-community/eslint-utils" "^4.1.2"
"@eslint-community/regexpp" "^4.5.0"
"@eslint-community/regexpp" "^4.6.0"
eslint-plugin-filenames@allouis/eslint-plugin-filenames#15dc354f4e3d155fc2d6ae082dbfc26377539a18:
version "1.3.2"
@ -16092,18 +16189,21 @@ eslint-plugin-flowtype@^8.0.3:
lodash "^4.17.21"
string-natural-compare "^3.0.1"
eslint-plugin-ghost@3.2.0:
version "3.2.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-ghost/-/eslint-plugin-ghost-3.2.0.tgz#c71a8809cbd51d7eb53203556db67432be065433"
integrity sha512-6B8ef1ICjJwbr9f97n8MZr9c0lTwKwp0SguEVzeBpBssC1yLE+aL9/oAYZG6XADx/z2/C9hKHw3B4/BXiwBtNg==
eslint-plugin-ghost@3.3.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-ghost/-/eslint-plugin-ghost-3.3.0.tgz#576fcbb308e94b5e601ce8806ec63d354c5c114d"
integrity sha512-VpL9FVI3kvY5BqM06qer67oDboDO/iHxl2mWnOZY1SwUtdcWuSfb81OQvmggilUc3UhjWahLuCHM9QzVtcOObA==
dependencies:
"@kapouer/eslint-plugin-no-return-in-loop" "1.0.0"
eslint-plugin-ember "11.8.0"
"@typescript-eslint/eslint-plugin" "6.1.0"
"@typescript-eslint/parser" "6.1.0"
eslint-plugin-ember "11.10.0"
eslint-plugin-filenames allouis/eslint-plugin-filenames#15dc354f4e3d155fc2d6ae082dbfc26377539a18
eslint-plugin-mocha "7.0.1"
eslint-plugin-n "^16.0.0"
eslint-plugin-n "16.0.1"
eslint-plugin-sort-imports-es6-autofix "0.6.0"
eslint-plugin-unicorn "42.0.0"
typescript "5.1.6"
eslint-plugin-i18next@6.0.3:
version "6.0.3"
@ -16171,19 +16271,19 @@ eslint-plugin-mocha@7.0.1:
eslint-utils "^2.0.0"
ramda "^0.27.0"
eslint-plugin-n@^16.0.0:
version "16.0.0"
resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-16.0.0.tgz#de39e4dd6cf04fd78fd6f49cb39ecb20ea0167ff"
integrity sha512-akkZTE3hsHBrq6CwmGuYCzQREbVUrA855kzcHqe6i0FLBkeY7Y/6tThCVkjUnjhvRBAlc+8lILcSe5QvvDpeZQ==
eslint-plugin-n@16.0.1:
version "16.0.1"
resolved "https://registry.yarnpkg.com/eslint-plugin-n/-/eslint-plugin-n-16.0.1.tgz#baa62bb3af52940a53ba15386348ad9b0b425ada"
integrity sha512-CDmHegJN0OF3L5cz5tATH84RPQm9kG+Yx39wIqIwPR2C0uhBGMWfbbOtetR83PQjjidA5aXMu+LEFw1jaSwvTA==
dependencies:
"@eslint-community/eslint-utils" "^4.4.0"
builtins "^5.0.1"
eslint-plugin-es-x "^6.1.0"
ignore "^5.1.1"
is-core-module "^2.12.0"
eslint-plugin-es-x "^7.1.0"
ignore "^5.2.4"
is-core-module "^2.12.1"
minimatch "^3.1.2"
resolve "^1.22.2"
semver "^7.5.0"
semver "^7.5.3"
eslint-plugin-react-hooks@4.6.0, eslint-plugin-react-hooks@^4.3.0:
version "4.6.0"
@ -19562,6 +19662,13 @@ is-core-module@^2.11.0, is-core-module@^2.12.0, is-core-module@^2.5.0, is-core-m
dependencies:
has "^1.0.3"
is-core-module@^2.12.1:
version "2.12.1"
resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.12.1.tgz#0c0b6885b6f80011c71541ce15c8d66cf5a4f9fd"
integrity sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==
dependencies:
has "^1.0.3"
is-data-descriptor@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56"
@ -28514,7 +28621,7 @@ semver@7.5.3:
dependencies:
lru-cache "^6.0.0"
semver@7.5.4, semver@^7.0.0, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.0:
semver@7.5.4, semver@^7.0.0, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8, semver@^7.5.3, semver@^7.5.4:
version "7.5.4"
resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e"
integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==
@ -30771,6 +30878,11 @@ tryer@^1.0.1:
resolved "https://registry.yarnpkg.com/tryer/-/tryer-1.0.1.tgz#f2c85406800b9b0f74c9f7465b81eaad241252f8"
integrity sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==
ts-api-utils@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-1.0.1.tgz#8144e811d44c749cd65b2da305a032510774452d"
integrity sha512-lC/RGlPmwdrIBFTX59wwNzqh7aR2otPNPR/5brHZm/XKFYKsfqxihXUe9pU3JI+3vGkl+vyCoNNnPhJn3aLK1A==
ts-dedent@^2.0.0, ts-dedent@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/ts-dedent/-/ts-dedent-2.2.0.tgz#39e4bd297cd036292ae2394eb3412be63f563bb5"