Update to Typescript 7 (#39987)

This commit is contained in:
Renaud Chaput
2026-08-10 14:51:10 +02:00
committed by GitHub
parent 6844f4009a
commit ecf9d23752
18 changed files with 397 additions and 167 deletions

View File

@@ -122,7 +122,7 @@ const preview: Preview = {
locale,
},
},
state as Record<string, unknown>,
state,
stateFnState,
argsState,
);

View File

@@ -36,7 +36,7 @@ const randomUpTo = max =>
* @typedef {import('mastodon/store').AppDispatch} Dispatch
* @typedef {import('mastodon/store').GetState} GetState
* @typedef {import('redux').UnknownAction} UnknownAction
* @typedef {function(Dispatch, GetState): Promise<void>} FallbackFunction
* @typedef {(dispatch: Dispatch, getState: GetState) => Promise<void>} FallbackFunction
*/
/**
@@ -45,9 +45,9 @@ const randomUpTo = max =>
* @param {Object.<string, string>} params
* @param {Object} options
* @param {FallbackFunction} [options.fallback]
* @param {function(): UnknownAction} [options.fillGaps]
* @param {function(object): boolean} [options.accept]
* @returns {function(): void}
* @param {() => UnknownAction} [options.fillGaps]
* @param {(status: object) => boolean} [options.accept]
* @returns {() => void}
*/
export const connectTimelineStream = (timelineId, channelName, params = {}, options = {}) => {
const { messages } = getLocale();
@@ -159,7 +159,7 @@ async function refreshHomeTimelineAndNotification(dispatch) {
}
/**
* @returns {function(): void}
* @returns {() => void}
*/
export const connectUserStream = () =>
connectTimelineStream('home', 'user', {}, {
@@ -171,7 +171,7 @@ export const connectUserStream = () =>
/**
* @param {Object} options
* @param {boolean} [options.onlyMedia]
* @returns {function(): void}
* @returns {() => void}
*/
export const connectCommunityStream = ({ onlyMedia } = {}) =>
connectTimelineStream(`community${onlyMedia ? ':media' : ''}`, `public:local${onlyMedia ? ':media' : ''}`, {}, {
@@ -183,7 +183,7 @@ export const connectCommunityStream = ({ onlyMedia } = {}) =>
* @param {Object} options
* @param {boolean} [options.onlyMedia]
* @param {boolean} [options.onlyRemote]
* @returns {function(): void}
* @returns {() => void}
*/
export const connectPublicStream = ({ onlyMedia, onlyRemote } = {}) =>
connectTimelineStream(`public${onlyRemote ? ':remote' : ''}${onlyMedia ? ':media' : ''}`, `public${onlyRemote ? ':remote' : ''}${onlyMedia ? ':media' : ''}`, {}, {
@@ -195,21 +195,21 @@ export const connectPublicStream = ({ onlyMedia, onlyRemote } = {}) =>
* @param {string} columnId
* @param {string} tagName
* @param {boolean} onlyLocal
* @param {function(object): boolean} accept
* @returns {function(): void}
* @param {(status: object) => boolean} accept
* @returns {() => void}
*/
export const connectHashtagStream = (columnId, tagName, onlyLocal, accept) =>
connectTimelineStream(`hashtag:${columnId}${onlyLocal ? ':local' : ''}`, `hashtag${onlyLocal ? ':local' : ''}`, { tag: tagName }, { accept });
/**
* @returns {function(): void}
* @returns {() => void}
*/
export const connectDirectStream = () =>
connectTimelineStream('direct', 'direct');
/**
* @param {string} listId
* @returns {function(): void}
* @returns {() => void}
*/
export const connectListStream = listId =>
connectTimelineStream(`list:${listId}`, 'list', { list: listId }, {

View File

@@ -69,6 +69,7 @@ const AccountButtonsOther: FC<
const dispatch = useAppDispatch();
const handleNotifyToggle = useCallback(() => {
if (account) {
// @ts-expect-error this action is not typed yet
dispatch(followAccount(account.id, { notify: !relationship?.notifying }));
}
}, [dispatch, account, relationship]);

View File

@@ -395,6 +395,7 @@ function getMenuItems({
),
action: () => {
dispatch(
// @ts-expect-error this action is not typed yet
followAccount(account.id, {
reblogs: !relationship.showing_reblogs,
}),

View File

@@ -62,9 +62,7 @@ export const EditedTimestamp: React.FC<{
const formattedDate = (
<RelativeTimestamp timestamp={item.get('created_at') as string} long />
);
const formattedName = (
<InlineAccount accountId={item.get('account') as string} />
);
const formattedName = <InlineAccount accountId={item.get('account')} />;
const label = (item.get('original') as boolean) ? (
<FormattedMessage

View File

@@ -124,6 +124,7 @@ export const FollowButton: React.FC<{
}),
);
} else {
// @ts-expect-error this action is not typed yet
dispatch(followAccount(accountId));
}
}, [signedIn, relationship, accountId, withUnmute, account, dispatch]);

View File

@@ -13,12 +13,7 @@ export const RemoteHint: React.FC<RemoteHintProps> = ({ accountId }) => {
accountId ? state.accounts.get(accountId) : undefined,
);
const domain = account?.acct ? account.acct.split('@')[1] : undefined;
if (
!account ||
!account.url ||
account.acct !== account.username ||
!domain
) {
if (!account?.url || account.acct !== account.username || !domain) {
return null;
}

View File

@@ -33,7 +33,7 @@ export const AccountCard: React.FC<{ accountId: string }> = ({ accountId }) => {
<div className='account-card__title'>
<div className='account-card__title__avatar'>
<Avatar account={account as Account} size={56} />
<Avatar account={account} size={56} />
</div>
<DisplayName account={account as Account} />
</div>

View File

@@ -89,10 +89,10 @@ export function useSearchTags({
}, []);
// Add dedicated item for adding the current query
const tags = useMemo(() => {
const tags = useMemo((): TagSearchResult[] => {
const trimmedQuery = query ? trimHashFromStart(query.trim()) : '';
if (!trimmedQuery) {
return fetchedTags as TagSearchResult[];
return fetchedTags;
}
const results: TagSearchResult[] = [...fetchedTags]; // Make array mutable

View File

@@ -18,11 +18,11 @@ export interface PollOption extends ApiPollOptionJSON {
export function createPollOptionTranslationFromServerJSON(translation: {
title: string;
}) {
}): PollOptionTranslation {
return {
...translation,
titleHtml: escapeTextContentForBrowser(translation.title),
} as PollOptionTranslation;
};
}
export interface Poll extends Omit<

View File

@@ -371,7 +371,7 @@ function fillNotificationsGap(
type: 'gap',
maxId: notifications.at(-1)?.page_max_id,
sinceId,
} as NotificationGap);
} satisfies NotificationGap);
}
// Remove older groups covered by the API

View File

@@ -24,12 +24,14 @@ interface AnnualReportState {
report?: AnnualReport;
}
const initialState: AnnualReportState = {
year: wrapstodon?.year,
state: wrapstodon?.state,
};
const annualReportSlice = createSlice({
name: 'annualReport',
initialState: {
year: wrapstodon?.year,
state: wrapstodon?.state,
} as AnnualReportState,
initialState,
reducers: {
setReport(state, action: PayloadAction<AnnualReport>) {
state.report = action.payload;

View File

@@ -14,14 +14,16 @@ interface EmojisState {
localesLoaded: Locale[];
}
const initialState: EmojisState = {
custom: {},
customCategories: {},
customLoaded: false,
localesLoaded: [],
};
const emojisSlice = createSlice({
name: 'emojis',
initialState: {
custom: {},
customCategories: {},
customLoaded: false,
localesLoaded: [],
} as EmojisState,
initialState,
reducers: {
loadLocale(state, action: PayloadAction<string>) {
const locale = toSupportedLocale(action.payload);

View File

@@ -13,9 +13,9 @@ let sharedConnection;
* @typedef Subscription
* @property {string} channelName
* @property {Object.<string, string>} params
* @property {function(): void} onConnect
* @property {function(StreamEvent): void} onReceive
* @property {function(): void} onDisconnect
* @property {() => void} onConnect
* @property {(event: StreamEvent) => void} onReceive
* @property {() => void} onDisconnect
*/
/**
@@ -146,8 +146,8 @@ const channelNameWithInlineParams = (channelName, params) => {
/**
* @param {string} channelName
* @param {Object.<string, string>} params
* @param {function(Dispatch, GetState): { onConnect: (function(): void), onReceive: (function(StreamEvent): void), onDisconnect: (function(): void) }} callbacks
* @returns {function(): void}
* @param {(dispatch: Dispatch, getState: GetState) => { onConnect: () => void, onReceive: (event: StreamEvent) => void, onDisconnect: () => void }} callbacks
* @returns {() => void}
*/
// @ts-expect-error
export const connectStream = (channelName, params, callbacks) => (dispatch, getState) => {
@@ -221,7 +221,7 @@ const KNOWN_EVENT_TYPES = [
/**
* @param {MessageEvent} e
* @param {function(StreamEvent): void} received
* @param {(event: StreamEvent) => void} received
*/
const handleEventSourceMessage = (e, received) => {
received({
@@ -234,7 +234,7 @@ const handleEventSourceMessage = (e, received) => {
* @param {string} streamingAPIBaseURL
* @param {string} accessToken
* @param {string} channelName
* @param {{ connected: function(): void, received: function(StreamEvent): void, disconnected: function(): void, reconnected: function(): void }} callbacks
* @param {{ connected: () => void, received: (event: StreamEvent) => void, disconnected: () => void, reconnected: () => void }} callbacks
* @returns {WebSocketClient | EventSource}
*/
const createConnection = (streamingAPIBaseURL, accessToken, channelName, { connected, received, disconnected, reconnected }) => {
@@ -274,7 +274,7 @@ const createConnection = (streamingAPIBaseURL, accessToken, channelName, { conne
es.addEventListener(type, e => handleEventSourceMessage(/** @type {MessageEvent} */(e), received));
});
es.onerror = /** @type {function(): void} */ (disconnected);
es.onerror = /** @type {() => void} */ (disconnected);
return es;
};

View File

@@ -4,7 +4,7 @@ const config = {
'*.{js,jsx,ts,tsx}': 'eslint --fix',
'*.{css,scss}': 'stylelint --fix',
'*.haml': 'bin/haml-lint -a',
'**/*.ts?(x)': () => 'tsc -p tsconfig.json --noEmit',
'**/*.ts?(x)': () => 'yarn tsc -p tsconfig.json --noEmit',
'app/javascript/**/*.{js,jsx,ts,tsx}': () => [
`yarn i18n:extract`,
'git diff --exit-code app/javascript/mastodon/locales/en.json',

View File

@@ -152,8 +152,9 @@
"@types/react-router": "^5.1.20",
"@types/react-router-dom": "^5.3.3",
"@types/react-sparklines": "^1.7.2",
"@types/redux-immutable": "^4.0.3",
"@types/redux-immutable": "^4.0.6",
"@types/requestidlecallback": "^0.3.5",
"@typescript/native": "npm:typescript@^7.0.2",
"@vitest/browser": "^4.1.0",
"@vitest/browser-playwright": "^4.1.10",
"@vitest/coverage-v8": "^4.1.0",
@@ -181,8 +182,8 @@
"stylelint": "^17.0.0",
"stylelint-config-standard-scss": "^17.0.0",
"type-fest": "^5.7.0",
"typescript": "~6.0.0",
"typescript-eslint": "^8.55.0",
"typescript": "npm:@typescript/typescript6@^6.0.2",
"typescript-eslint": "^8.65.0",
"typescript-plugin-css-modules": "^5.2.0",
"vitest": "^4.1.10"
},

View File

@@ -36,10 +36,11 @@
"@types/express": "^5.0.5",
"@types/pg": "^8.6.6",
"@types/ws": "^8.5.9",
"@typescript/native": "npm:typescript@^7.0.2",
"globals": "^17.3.0",
"pino-pretty": "^13.0.0",
"typescript": "~6.0.0",
"typescript-eslint": "^8.55.0"
"typescript": "npm:@typescript/typescript6@^6.0.2",
"typescript-eslint": "^8.65.0"
},
"optionalDependencies": {
"bufferutil": "^4.0.7",

460
yarn.lock
View File

@@ -2934,8 +2934,9 @@ __metadata:
"@types/react-router": "npm:^5.1.20"
"@types/react-router-dom": "npm:^5.3.3"
"@types/react-sparklines": "npm:^1.7.2"
"@types/redux-immutable": "npm:^4.0.3"
"@types/redux-immutable": "npm:^4.0.6"
"@types/requestidlecallback": "npm:^0.3.5"
"@typescript/native": "npm:typescript@^7.0.2"
"@unhead/react": "npm:^3.1.0"
"@use-gesture/react": "npm:^10.3.1"
"@vitejs/plugin-legacy": "npm:^8.0.0"
@@ -3028,8 +3029,8 @@ __metadata:
tiny-queue: "npm:^0.2.1"
twitter-text: "npm:3.1.0"
type-fest: "npm:^5.7.0"
typescript: "npm:~6.0.0"
typescript-eslint: "npm:^8.55.0"
typescript: "npm:@typescript/typescript6@^6.0.2"
typescript-eslint: "npm:^8.65.0"
typescript-plugin-css-modules: "npm:^5.2.0"
use-debounce: "npm:^10.0.0"
vite: "npm:^8.0.0"
@@ -3056,6 +3057,7 @@ __metadata:
"@types/express": "npm:^5.0.5"
"@types/pg": "npm:^8.6.6"
"@types/ws": "npm:^8.5.9"
"@typescript/native": "npm:typescript@^7.0.2"
bufferutil: "npm:^4.0.7"
cors: "npm:^2.8.5"
dotenv: "npm:^17.0.0"
@@ -3069,8 +3071,8 @@ __metadata:
pino-http: "npm:^11.0.0"
pino-pretty: "npm:^13.0.0"
prom-client: "npm:^15.0.0"
typescript: "npm:~6.0.0"
typescript-eslint: "npm:^8.55.0"
typescript: "npm:@typescript/typescript6@^6.0.2"
typescript-eslint: "npm:^8.65.0"
utf-8-validate: "npm:^6.0.3"
uuid: "npm:^14.0.0"
ws: "npm:^8.12.1"
@@ -4720,7 +4722,7 @@ __metadata:
languageName: node
linkType: hard
"@types/redux-immutable@npm:^4.0.3":
"@types/redux-immutable@npm:^4.0.6":
version: 4.0.6
resolution: "@types/redux-immutable@npm:4.0.6"
dependencies:
@@ -4787,145 +4789,359 @@ __metadata:
languageName: node
linkType: hard
"@typescript-eslint/eslint-plugin@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/eslint-plugin@npm:8.55.0"
"@typescript-eslint/eslint-plugin@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/eslint-plugin@npm:8.65.0"
dependencies:
"@eslint-community/regexpp": "npm:^4.12.2"
"@typescript-eslint/scope-manager": "npm:8.55.0"
"@typescript-eslint/type-utils": "npm:8.55.0"
"@typescript-eslint/utils": "npm:8.55.0"
"@typescript-eslint/visitor-keys": "npm:8.55.0"
"@typescript-eslint/scope-manager": "npm:8.65.0"
"@typescript-eslint/type-utils": "npm:8.65.0"
"@typescript-eslint/utils": "npm:8.65.0"
"@typescript-eslint/visitor-keys": "npm:8.65.0"
ignore: "npm:^7.0.5"
natural-compare: "npm:^1.4.0"
ts-api-utils: "npm:^2.4.0"
ts-api-utils: "npm:^2.5.0"
peerDependencies:
"@typescript-eslint/parser": ^8.55.0
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/e15973dfc822f6a455142433fa393ea2dd9fd4ba443e0d2fb68c6be7cd9a36e13412f061ccfe436a2c90fa070c4538bdd50985d374e85606c98800d372c17eb9
"@typescript-eslint/parser": ^8.65.0
eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/1d9ddad417b43037c35c91a7c30bfc0015ccc40da57fe9faadae97fbaee6031a539a35265a9933d3bb946f307c397b7a00953806339576a721d619695a972079
languageName: node
linkType: hard
"@typescript-eslint/parser@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/parser@npm:8.55.0"
"@typescript-eslint/parser@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/parser@npm:8.65.0"
dependencies:
"@typescript-eslint/scope-manager": "npm:8.55.0"
"@typescript-eslint/types": "npm:8.55.0"
"@typescript-eslint/typescript-estree": "npm:8.55.0"
"@typescript-eslint/visitor-keys": "npm:8.55.0"
"@typescript-eslint/scope-manager": "npm:8.65.0"
"@typescript-eslint/types": "npm:8.65.0"
"@typescript-eslint/typescript-estree": "npm:8.65.0"
"@typescript-eslint/visitor-keys": "npm:8.65.0"
debug: "npm:^4.4.3"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/8b8f8caf64a43b98bff8e7bb99cd62d7c72daeee44e80e0a5f693dd376d9c898997e0b9fd5521604d1445bcb24552f54aed5cae022072f8c354a2baf2a452284
eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/b3f5333abe5dfb08b53b89c824d045d96d5eb5798fab45eeedfaab72e4ce133a82fb4ebbc1acf79098aac9b08f7acc119fe0edd63ac2f91d80c98f5ca87c41e0
languageName: node
linkType: hard
"@typescript-eslint/project-service@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/project-service@npm:8.55.0"
"@typescript-eslint/project-service@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/project-service@npm:8.65.0"
dependencies:
"@typescript-eslint/tsconfig-utils": "npm:^8.55.0"
"@typescript-eslint/types": "npm:^8.55.0"
"@typescript-eslint/tsconfig-utils": "npm:^8.65.0"
"@typescript-eslint/types": "npm:^8.65.0"
debug: "npm:^4.4.3"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/f35273a63635d2de84409f68dfcea901ed2cd3f08206abb825d742b929c8fce66e0a6a32524d87ce895a7c4c2549e4388baa08644c0a5244c9708151b0f62f52
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/56d8f598f1bb6ca892ff79320bd1aa134eefa05cf0bad4932c44518475a8bccf0c9027ae2177b3c1761496c8107236b81dd93f67d09093c2242f07f3f2063c1f
languageName: node
linkType: hard
"@typescript-eslint/scope-manager@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/scope-manager@npm:8.55.0"
"@typescript-eslint/scope-manager@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/scope-manager@npm:8.65.0"
dependencies:
"@typescript-eslint/types": "npm:8.55.0"
"@typescript-eslint/visitor-keys": "npm:8.55.0"
checksum: 10c0/c42bd6b8e4936cac8bee3adbc2f707e3aee5f16af3dd18c1d095f4a1b881471b58de73abc0ad176db98654683a808946902e51d86efff39dc7610d29152c3078
"@typescript-eslint/types": "npm:8.65.0"
"@typescript-eslint/visitor-keys": "npm:8.65.0"
checksum: 10c0/303bae83a2243e742fcf86bef0b67615dc8915d2dd40268b796e2f49a40057b05de41608846aa362ad77e2d6976ec3cf30f1cdf245c1e39d18fd8ce91ae38c5c
languageName: node
linkType: hard
"@typescript-eslint/tsconfig-utils@npm:8.55.0, @typescript-eslint/tsconfig-utils@npm:^8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/tsconfig-utils@npm:8.55.0"
"@typescript-eslint/tsconfig-utils@npm:8.65.0, @typescript-eslint/tsconfig-utils@npm:^8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/tsconfig-utils@npm:8.65.0"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/77b9a0d0b1d6ab0ce26c81394bb1aa969649016d2857e5f915a15b88012ac3dccec9fc5ff65535e1cc373434e1462513f7964e416a8d7a695f7277dcd39ec2af
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/5b897bbba4584ee67c7a0bc0b4b6cbf8db2cb5997d5ab8f07fae692315dd51cabcc7116c609a94a162747dd267118b7a0f1c8fb29d71210ad38549e4b8b6adb1
languageName: node
linkType: hard
"@typescript-eslint/type-utils@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/type-utils@npm:8.55.0"
"@typescript-eslint/type-utils@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/type-utils@npm:8.65.0"
dependencies:
"@typescript-eslint/types": "npm:8.55.0"
"@typescript-eslint/typescript-estree": "npm:8.55.0"
"@typescript-eslint/utils": "npm:8.55.0"
"@typescript-eslint/types": "npm:8.65.0"
"@typescript-eslint/typescript-estree": "npm:8.65.0"
"@typescript-eslint/utils": "npm:8.65.0"
debug: "npm:^4.4.3"
ts-api-utils: "npm:^2.4.0"
ts-api-utils: "npm:^2.5.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/4987440d6e1ee2ae8024259796381612ab2fc81821ff93c45400f803726ea4894a25d07afa5f80cdf3081a189d99dc83a3a8dcd94ff9a4cab81461fe28ab9aef
eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/05a1a1283020f63eac3cb6202afd08459531a4522a85ceb0f5789f2902df7c180565f65f217cc780127888b7113b1c8c34aa6bfd7020d568f01a17f290216e9b
languageName: node
linkType: hard
"@typescript-eslint/types@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/types@npm:8.55.0"
checksum: 10c0/dc572f55966e2f0fee149e5d5e42a91cedcdeac451bff29704eb701f9336f123bbc7d7abcfbda717f9e1ef6b402fa24679908bc6032e67513287403037ef345f
"@typescript-eslint/types@npm:8.65.0, @typescript-eslint/types@npm:^8.58.0, @typescript-eslint/types@npm:^8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/types@npm:8.65.0"
checksum: 10c0/919b6d96111ea26f09c6cb1121fbba915147761be3fbf9c4de5b200faa2891087ebdcfd2f4a1f27a4c6153daeefc7448147c651a074b3ec70440f3f8c1092a81
languageName: node
linkType: hard
"@typescript-eslint/types@npm:^8.55.0, @typescript-eslint/types@npm:^8.58.0":
version: 8.60.0
resolution: "@typescript-eslint/types@npm:8.60.0"
checksum: 10c0/d2b6d46081a6521f204fda30e8f03712480b788d80b62b311e0f33764752d3db3bd415dd4e1f8d28495931316da1dfb5ee259e40c5de970367fbaa1efe97223f
languageName: node
linkType: hard
"@typescript-eslint/typescript-estree@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/typescript-estree@npm:8.55.0"
"@typescript-eslint/typescript-estree@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/typescript-estree@npm:8.65.0"
dependencies:
"@typescript-eslint/project-service": "npm:8.55.0"
"@typescript-eslint/tsconfig-utils": "npm:8.55.0"
"@typescript-eslint/types": "npm:8.55.0"
"@typescript-eslint/visitor-keys": "npm:8.55.0"
"@typescript-eslint/project-service": "npm:8.65.0"
"@typescript-eslint/tsconfig-utils": "npm:8.65.0"
"@typescript-eslint/types": "npm:8.65.0"
"@typescript-eslint/visitor-keys": "npm:8.65.0"
debug: "npm:^4.4.3"
minimatch: "npm:^9.0.5"
minimatch: "npm:^10.2.2"
semver: "npm:^7.7.3"
tinyglobby: "npm:^0.2.15"
ts-api-utils: "npm:^2.4.0"
ts-api-utils: "npm:^2.5.0"
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/2db3ff9489945ad04508b14009eb0f6b2b7c6c2469805327fa09ffa460af354cd181ff2e8153f9008bd60254efb54a004a59ccacbdbc9c963956e2c2c1189dbc
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/578ff5247f17865277badfe13362a82ba82c8bb11aaa78323933895e0ba0fc02788ae6aa9bd84bc8287660004a76231341977a3188b399c776b7e713c5054239
languageName: node
linkType: hard
"@typescript-eslint/utils@npm:8.55.0, @typescript-eslint/utils@npm:^8.48.0":
version: 8.55.0
resolution: "@typescript-eslint/utils@npm:8.55.0"
"@typescript-eslint/utils@npm:8.65.0, @typescript-eslint/utils@npm:^8.48.0":
version: 8.65.0
resolution: "@typescript-eslint/utils@npm:8.65.0"
dependencies:
"@eslint-community/eslint-utils": "npm:^4.9.1"
"@typescript-eslint/scope-manager": "npm:8.55.0"
"@typescript-eslint/types": "npm:8.55.0"
"@typescript-eslint/typescript-estree": "npm:8.55.0"
"@typescript-eslint/scope-manager": "npm:8.65.0"
"@typescript-eslint/types": "npm:8.65.0"
"@typescript-eslint/typescript-estree": "npm:8.65.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/b57b86ac531e433c8057279805e6c903250460bc937cea46ec3b9284181a38f23b7c1ef092e8a1e37179432b39bd587c33db7f031b4243b1207ef37f23e4f24f
eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/258775532bb23bfeccb7ef25369a62b5fcf48f633af178830113d5aea6d0e968ad67a63b3371206151eb6a8dca0a3381f7efa07958fd8063505e1a53e470a439
languageName: node
linkType: hard
"@typescript-eslint/visitor-keys@npm:8.55.0":
version: 8.55.0
resolution: "@typescript-eslint/visitor-keys@npm:8.55.0"
"@typescript-eslint/visitor-keys@npm:8.65.0":
version: 8.65.0
resolution: "@typescript-eslint/visitor-keys@npm:8.65.0"
dependencies:
"@typescript-eslint/types": "npm:8.55.0"
eslint-visitor-keys: "npm:^4.2.1"
checksum: 10c0/995c5ca91f7c7c1f3c4fdb4f98654abdff55efa570076b9b012da4cc203ebe7e2aee57ba83208ae51c2aef496c45cb8f6909560349131b779f31ce6f8758da23
"@typescript-eslint/types": "npm:8.65.0"
eslint-visitor-keys: "npm:^5.0.0"
checksum: 10c0/f50cf2da4077f8eebfd56658ede17dfbf2e39875dc53562f5c1bc6e9835a0b4b00e0e0255e2dc3488234aca1f783d89beb084c417b22027520bf015a7b59ffb8
languageName: node
linkType: hard
"@typescript/native@npm:typescript@^7.0.2":
version: 7.0.2
resolution: "typescript@npm:7.0.2"
dependencies:
"@typescript/typescript-aix-ppc64": "npm:7.0.2"
"@typescript/typescript-darwin-arm64": "npm:7.0.2"
"@typescript/typescript-darwin-x64": "npm:7.0.2"
"@typescript/typescript-freebsd-arm64": "npm:7.0.2"
"@typescript/typescript-freebsd-x64": "npm:7.0.2"
"@typescript/typescript-linux-arm": "npm:7.0.2"
"@typescript/typescript-linux-arm64": "npm:7.0.2"
"@typescript/typescript-linux-loong64": "npm:7.0.2"
"@typescript/typescript-linux-mips64el": "npm:7.0.2"
"@typescript/typescript-linux-ppc64": "npm:7.0.2"
"@typescript/typescript-linux-riscv64": "npm:7.0.2"
"@typescript/typescript-linux-s390x": "npm:7.0.2"
"@typescript/typescript-linux-x64": "npm:7.0.2"
"@typescript/typescript-netbsd-arm64": "npm:7.0.2"
"@typescript/typescript-netbsd-x64": "npm:7.0.2"
"@typescript/typescript-openbsd-arm64": "npm:7.0.2"
"@typescript/typescript-openbsd-x64": "npm:7.0.2"
"@typescript/typescript-sunos-x64": "npm:7.0.2"
"@typescript/typescript-win32-arm64": "npm:7.0.2"
"@typescript/typescript-win32-x64": "npm:7.0.2"
dependenciesMeta:
"@typescript/typescript-aix-ppc64":
optional: true
"@typescript/typescript-darwin-arm64":
optional: true
"@typescript/typescript-darwin-x64":
optional: true
"@typescript/typescript-freebsd-arm64":
optional: true
"@typescript/typescript-freebsd-x64":
optional: true
"@typescript/typescript-linux-arm":
optional: true
"@typescript/typescript-linux-arm64":
optional: true
"@typescript/typescript-linux-loong64":
optional: true
"@typescript/typescript-linux-mips64el":
optional: true
"@typescript/typescript-linux-ppc64":
optional: true
"@typescript/typescript-linux-riscv64":
optional: true
"@typescript/typescript-linux-s390x":
optional: true
"@typescript/typescript-linux-x64":
optional: true
"@typescript/typescript-netbsd-arm64":
optional: true
"@typescript/typescript-netbsd-x64":
optional: true
"@typescript/typescript-openbsd-arm64":
optional: true
"@typescript/typescript-openbsd-x64":
optional: true
"@typescript/typescript-sunos-x64":
optional: true
"@typescript/typescript-win32-arm64":
optional: true
"@typescript/typescript-win32-x64":
optional: true
bin:
tsc: bin/tsc
checksum: 10c0/3dcee51ec8c332492325bcdbf7df48b66668751f127e622ae7d41b6c716eb19184424a45e14f7750f50f340232388b69e6287859155f06a5ce2df76f12cb31cf
languageName: node
linkType: hard
"@typescript/old@npm:typescript@^6, typescript@npm:^5.6 || 6":
version: 6.0.3
resolution: "typescript@npm:6.0.3"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: 10c0/4a25ff5045b984370f48f196b3a0120779b1b343d40b9a68d114ea5e5fff099809b2bb777576991a63a5cd59cf7bffd96ff6fe10afcefbcb8bd6fb96ad4b6606
languageName: node
linkType: hard
"@typescript/typescript-aix-ppc64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-aix-ppc64@npm:7.0.2"
conditions: os=aix & cpu=ppc64
languageName: node
linkType: hard
"@typescript/typescript-darwin-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-darwin-arm64@npm:7.0.2"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-darwin-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-darwin-x64@npm:7.0.2"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-freebsd-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-freebsd-arm64@npm:7.0.2"
conditions: os=freebsd & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-freebsd-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-freebsd-x64@npm:7.0.2"
conditions: os=freebsd & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-linux-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-arm64@npm:7.0.2"
conditions: os=linux & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-linux-arm@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-arm@npm:7.0.2"
conditions: os=linux & cpu=arm
languageName: node
linkType: hard
"@typescript/typescript-linux-loong64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-loong64@npm:7.0.2"
conditions: os=linux & cpu=loong64
languageName: node
linkType: hard
"@typescript/typescript-linux-mips64el@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-mips64el@npm:7.0.2"
conditions: os=linux & cpu=mips64el
languageName: node
linkType: hard
"@typescript/typescript-linux-ppc64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-ppc64@npm:7.0.2"
conditions: os=linux & cpu=ppc64
languageName: node
linkType: hard
"@typescript/typescript-linux-riscv64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-riscv64@npm:7.0.2"
conditions: os=linux & cpu=riscv64
languageName: node
linkType: hard
"@typescript/typescript-linux-s390x@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-s390x@npm:7.0.2"
conditions: os=linux & cpu=s390x
languageName: node
linkType: hard
"@typescript/typescript-linux-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-linux-x64@npm:7.0.2"
conditions: os=linux & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-netbsd-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-netbsd-arm64@npm:7.0.2"
conditions: os=netbsd & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-netbsd-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-netbsd-x64@npm:7.0.2"
conditions: os=netbsd & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-openbsd-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-openbsd-arm64@npm:7.0.2"
conditions: os=openbsd & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-openbsd-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-openbsd-x64@npm:7.0.2"
conditions: os=openbsd & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-sunos-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-sunos-x64@npm:7.0.2"
conditions: os=sunos & cpu=x64
languageName: node
linkType: hard
"@typescript/typescript-win32-arm64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-win32-arm64@npm:7.0.2"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
"@typescript/typescript-win32-x64@npm:7.0.2":
version: 7.0.2
resolution: "@typescript/typescript-win32-x64@npm:7.0.2"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -7557,7 +7773,7 @@ __metadata:
languageName: node
linkType: hard
"eslint-visitor-keys@npm:^5.0.1":
"eslint-visitor-keys@npm:^5.0.0, eslint-visitor-keys@npm:^5.0.1":
version: 5.0.1
resolution: "eslint-visitor-keys@npm:5.0.1"
checksum: 10c0/16190bdf2cbae40a1109384c94450c526a79b0b9c3cb21e544256ed85ac48a4b84db66b74a6561d20fe6ab77447f150d711c2ad5ad74df4fcc133736bce99678
@@ -9970,7 +10186,7 @@ __metadata:
languageName: node
linkType: hard
"minimatch@npm:^9.0.4, minimatch@npm:^9.0.5":
"minimatch@npm:^9.0.4":
version: 9.0.9
resolution: "minimatch@npm:9.0.9"
dependencies:
@@ -13679,12 +13895,12 @@ __metadata:
languageName: node
linkType: hard
"ts-api-utils@npm:^2.4.0":
version: 2.4.0
resolution: "ts-api-utils@npm:2.4.0"
"ts-api-utils@npm:^2.5.0":
version: 2.5.0
resolution: "ts-api-utils@npm:2.5.0"
peerDependencies:
typescript: ">=4.8.4"
checksum: 10c0/ed185861aef4e7124366a3f6561113557a57504267d4d452a51e0ba516a9b6e713b56b4aeaab9fa13de9db9ab755c65c8c13a777dba9133c214632cb7b65c083
checksum: 10c0/767849383c114e7f1971fa976b20e73ac28fd0c70d8d65c0004790bf4d8f89888c7e4cf6d5949f9c1beae9bc3c64835bef77bbe27fddf45a3c7b60cebcf85c8c
languageName: node
linkType: hard
@@ -13833,18 +14049,18 @@ __metadata:
languageName: node
linkType: hard
"typescript-eslint@npm:^8.55.0":
version: 8.55.0
resolution: "typescript-eslint@npm:8.55.0"
"typescript-eslint@npm:^8.65.0":
version: 8.65.0
resolution: "typescript-eslint@npm:8.65.0"
dependencies:
"@typescript-eslint/eslint-plugin": "npm:8.55.0"
"@typescript-eslint/parser": "npm:8.55.0"
"@typescript-eslint/typescript-estree": "npm:8.55.0"
"@typescript-eslint/utils": "npm:8.55.0"
"@typescript-eslint/eslint-plugin": "npm:8.65.0"
"@typescript-eslint/parser": "npm:8.65.0"
"@typescript-eslint/typescript-estree": "npm:8.65.0"
"@typescript-eslint/utils": "npm:8.65.0"
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
checksum: 10c0/92e3e058a57bb29be7498093fd72f875e010170e1ca19214ae1bd1a1c9454354f71613ac9a6981f1e7e1d9e8b52df8888a1f42d0f2809dd5aeaf27f502787fda
eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
typescript: ">=4.8.4 <6.1.0"
checksum: 10c0/d1f5eede08c6d0d500aa605a1de2a4e721c00e8f56f632581e082aac6d1d2b9d365ce692cf5e0e212ea78271a032c8785e0fc58aee276c7930f92fff6a3358c8
languageName: node
linkType: hard
@@ -13877,13 +14093,14 @@ __metadata:
languageName: node
linkType: hard
"typescript@npm:^5.6 || 6, typescript@npm:~6.0.0":
version: 6.0.3
resolution: "typescript@npm:6.0.3"
"typescript@npm:@typescript/typescript6@^6.0.2":
version: 6.0.2
resolution: "@typescript/typescript6@npm:6.0.2"
dependencies:
"@typescript/old": "npm:typescript@^6"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
checksum: 10c0/4a25ff5045b984370f48f196b3a0120779b1b343d40b9a68d114ea5e5fff099809b2bb777576991a63a5cd59cf7bffd96ff6fe10afcefbcb8bd6fb96ad4b6606
tsc6: bin/tsc6
checksum: 10c0/0c6e5c1c3a61b79f2bc61506feb82f8ce54275b2af1aebc3dd9310d7f57b1de2aca40256d018cf736c524152ae4a731f5810ff7cd028d565158d53368e681af2
languageName: node
linkType: hard
@@ -13897,7 +14114,18 @@ __metadata:
languageName: node
linkType: hard
"typescript@patch:typescript@npm%3A^5.6 || 6#optional!builtin<compat/typescript>, typescript@patch:typescript@npm%3A~6.0.0#optional!builtin<compat/typescript>":
"typescript@patch:typescript@npm%3A@typescript/typescript6@^6.0.2#optional!builtin<compat/typescript>":
version: 6.0.2
resolution: "typescript@patch:@typescript/typescript6@npm%3A6.0.2#optional!builtin<compat/typescript>::version=6.0.2&hash=5786d5"
dependencies:
"@typescript/old": "npm:typescript@^6"
bin:
tsc6: bin/tsc6
checksum: 10c0/ba91bd03aaf52617b757d8f186f5559587159f7984cc188f51435cf0cd36b7fc750825409db62d7f62ab22e292c41422e2c25b4b763b6a05e1dbde8c2ba93c3f
languageName: node
linkType: hard
"typescript@patch:typescript@npm%3A^5.6 || 6#optional!builtin<compat/typescript>":
version: 6.0.3
resolution: "typescript@patch:typescript@npm%3A6.0.3#optional!builtin<compat/typescript>::version=6.0.3&hash=5786d5"
bin: