Доброй ночи.
Подскажите, существуют спобосы организации схем объектов в проекте.
Сейчас пишу проект на react+redux и с бека уже приходит, наверно больше 20 различных типов объектов которые постоянно реиспользуются внутри приложения. И что самое главное - они постоянно изменяются, после чего через отвалившиеся тесты приходится отлавливать в каких компонентах произошли изменения и там это все править.
Хотелось бы сделать для них единую точку входа и управления. Банально, для того что бы в тестах проверять объекты на целостность и валидность, а не искать ошибки непосредственно в компонентах.
Сейчас приходит в голову только написать какой-то большой объект в котором их хранить, и метод который будет их оттуда доставать по ключу:
const schema = {
globals: {
address: {
...
},
phone:{
...
},
person:{
name: "",
surname: "",
job: "",
phone: phoneObj
}
},
vendors:{
company:{
name: "",
post_address: addressObj,
legal_address: addressObj
phone: phoneObj,
staff: [
personObj,
personObj,
personObj
]
}
}
}
schema.get('address'); // -> { zip:'', city:'' ... }
Но опять же, нужно их как-то валидировать и т.д... Может получится неоправданно большой кусок работы, на написание которого уйдет много часов.
Я не против придумать свой велосипед, но хотелось бы перед этим узнать как делать правильно. И какие существуют уже работающие решения на рынке. Best-practice так сказать.