Protobuf schéma na typy TypeScript
Převeďte protobuf schéma na odpovídající TypeScript rozhraní, výčty a union typy.
Protobuf schéma na typy TypeScript
Vložte protobuf schéma a tento nástroj vygeneruje odpovídající typy TypeScript: jedno rozhraní na zprávu, jeden výčet na protobuf výčet a union typ pro každý oneof. Používejte jej, když soubor .proto definuje formát telegrafie API a chcete bezpečně zadaného klienta bez spuštění celého řetězce nástrojů protoc.
Zvolte proto2 nebo proto3 pro kontrolu způsobu čtení holých polí: proto3 implicitní přítomnost udržuje singulární skalární a výčetová pole vždy přítomná, zatímco pole typizovaná zprávami zůstávají volitelná; proto2 místo toho čte explicitní klíčová slova required a optional na každém poli. 64bitová celá čísla se mapují na řetězec ve výchozím nastavení, protože čísla JavaScriptu ztrácí přesnost nad 2^53 — vypněte možnost pro number místo toho. Opakovaná pole se stanou poli a pole map<K, V> se stanou Record<K, V>. Oneof se buď zhroutí do typu diskriminované unie, takže pouze jeden člen může být nastaven najednou, nebo se rozbalí na běžná volitelná pole. Vnořené typy si zachovávají své vnoření v generovaných názvech (Outer_Inner), názvy polí mohou zůstat v snake_case nebo se převést na camelCase, komentáře se přenášejí jako JSDoc a zapnutí generování služby přidá jedno rozhraní na službu Protobuf s každou rpc zadanou pro jednosměrné nebo streamované volání.
Konvertor je ručně psaný analyzátor, ne obal kolem protoc: pokrývá každodenní tvar schémy — zprávy, výčty, oneofs, mapy, vnořené typy a služby — zatímco přeskakuje možnosti, rozšíření a vyhrazené příkazy polí, které nepotřebuje k reprodukci typu. Chybějící středník nebo neodpovídající závorka vytváří jasnou chybu pojmenováním zhruba kde se to stalo.
Všechno běží lokálně ve vašem prohlížeči; vaše schéma se nikdy nenahrává, takže je bezpečné vkládat vlastnické definice API. Zkopírujte výsledek, stáhněte jej jako soubor .txt nebo jej pošlete zpět do vstupu, aby ste pokračovali v zdokonalování schémy.