Про цей інструмент
Інструмент JSON у схему Zod перетворює вставлений зразок JSON на готову до використання схему Zod і відповідний тип TypeScript. Zod — це домінантна бібліотека валідації для TypeScript, а вручну писати дерева z.object для реальних API-навантажень повільно й легко припуститися помилок. Цей конвертер розбирає ваш JSON за допомогою JSON.parse, рекурсивно обходить значення та видає ідіоматичний Zod: рядки стають z.string(), цілі числа — z.number().int(), інші числа — z.number(), булеві значення — z.boolean(), null — z.null(), а вкладені об'єкти — власними іменованими схемами z.object({...}).
Усе працює локально у вашому браузері — ваш JSON розбирається на сторінці й ніколи не завантажується на сервер, тож конфіденційні дані залишаються на вашому пристрої. Масиви визначають тип свого елемента шляхом глибокого злиття кожного елемента, тому масив об'єктів із трохи різними ключами дає одну схему, де відсутні в деяких елементах ключі позначаються .optional(). Рядки дати-часу у форматі ISO-8601 розпізнаються та видаються як z.string().datetime(). Ключі об'єктів, що не є коректними ідентифікаторами, безпечно беруться в лапки.
Результат — це повний модуль: експортована константа для кожної схеми об'єкта (дочірні визначені перед батьківськими, що на них посилаються), а далі export type Root = z.infer<typeof Root>, тож ви отримуєте типи часу компіляції безкоштовно. Використовуйте поле кореневої назви, щоб перейменувати схему верхнього рівня, і перемикач відсутніх ключів, щоб трактувати відсутні ключі як .optional() (за замовчуванням) або .nullable(). Скопіюйте результат або завантажте його як файл .ts.