Автоматически устанавливать недостающие типы

В этой статье я расскажу, как автоматизировать установку типов TypeScript в package.json.

TypeSync

TypeSync - это инструмент, позволяющий установить недостающие типы TypeScript.

Когда вы выполняете команду, она автоматически добавляет пакет набора в package.json, например:

TypeSync выполнит поиск @types/package и попытается найти четность SemVer для пакета типизации или вернется к последней версии.

Он также поддерживает монорепозицию, захватывает workspaces и синхронизирует все совпадающие файлы в подпакетах.

Подключение к предварительной установке

Давайте представим TypeSync в проекте.

yarn add -D typesync

Добавить preinstall в сценарии в package.json.

При первой установке возникает ошибка отсутствия пакета, поэтому, если нет TypeSync, просто ничего не делайте.

Добавьте зависимости, и давайте посмотрим, как это работает:

И устанавливаем пакеты:

yarn

Когда используются рабочие области, он добавит типизацию в подпакеты.

Предположим, что наши монорепозитории выглядят так:

├── package.json
├── packages
│   └── app
│       └── package.json
└── yarn.lock

А app/package.json выглядит так:

Когда вы запустите yarn, он добавит @types/lodash к app/package.json:

Заключение

TypeSync сократит утомительную работу над проектом TypeScript и улучшит DX вашей команды.

Я надеюсь, вы найдете это полезным.