? Так тогда мне перегенерировать придется каждый раз после добавления изменений, не удобно на стадии старта, по другому никак ?
юзайте js, сдался вам этот ts :D Шучу, мысли вслух. А вообще - можно в npm prestart закинуть стягивание и перегенерацию типов, тогда при запуске всё будет пересобираться, дольше - да, но зато при изменении бэка - клиент будет подтягивать новую схему
type-graphql из ts генерит graphql типы. Он под капотом использует декораторы тайпскрипта и рефлексию. В тайпскрипте беда с экспортом метаданных, они экспортить умеют только примитивные типы (http://blog.wolksoftware.com/decorators-metadata-reflection-in-typescript-from-novice-to-expert-part-4#b-obtaining-parameter-type-metadata-using-the_2) Поэтому type-graphql костылиться на классах (не интерфейсах). Это единственно что экспортируется тайпскриптов в метаданные рефлексии. То что экспортит тайпскрипт, было реализовано 2 года назад. Сегодня как раз их подспросил как дела с экспортом более богатой метадаты https://github.com/Microsoft/TypeScript/issues/12626#issuecomment-481167427 —— На данный момент только один вариант может быть, это написание собственного трансформ-плагина к тайпскрипту c использованием Compiler Api. Который будет брать Символы из Нод (https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API) И как-то их удобно записывать для своего рантайма. И уже в рантайме строить типы и схему, например через graphql-compose. Собственно почему так весело и подробно пишу. Т.к. чем-то похожим сейчас страдаю.
Обсуждают сегодня