От компонента к компоненту различаются элементы, экспортируемые из библиотеки:
может не хватить типов, для типизации callback или props
Как например типов для таблицы, callback'и приходится типизировать вручную
в каких-то компонентах экспортируется cn, в каких то нет
Например cnButton экспортируется. Это важно, когда хочется переиспользовать стили; или создать кастомный компонент, совместимый с consta, но его сложно создать on top of consta компонента (много изменений или невозможность переопределения поведения)
Дополнительно, эти функции можно протипизировать
название типов неконсистентно
В той же таблице, типы callback'ов в camelCase, в TextField пропс называется с указанием компонента, в каком-нибудь Select без
Все эти моменты, после их решение и выработки общего правила (например, что обязательно должно экспортироваться, или как должны называться типы), следует добавить в гайд по стилю кода и/или гайд контрибьютерам
Дополнительное:
подумать над альтернативным способом кастомизации компонент
Как я писал в #3627, вариантов для отображения дополнительных элементов может быть бесконечно много, и зачастую они могут конфликтовать друг с другом. Одним из вариантов может стать применение некоторых паттернов, как Compound components, Function as a children component, и их комбинация. На их основе можно создавать модульные каркасы, не привязанные к пропсам
Основное:
От компонента к компоненту различаются элементы, экспортируемые из библиотеки:
Как например типов для таблицы, callback'и приходится типизировать вручную
Например cnButton экспортируется. Это важно, когда хочется переиспользовать стили; или создать кастомный компонент, совместимый с consta, но его сложно создать on top of consta компонента (много изменений или невозможность переопределения поведения) Дополнительно, эти функции можно протипизировать
В той же таблице, типы callback'ов в camelCase, в TextField пропс называется с указанием компонента, в каком-нибудь Select без
Все эти моменты, после их решение и выработки общего правила (например, что обязательно должно экспортироваться, или как должны называться типы), следует добавить в гайд по стилю кода и/или гайд контрибьютерам
Дополнительное:
Как я писал в #3627, вариантов для отображения дополнительных элементов может быть бесконечно много, и зачастую они могут конфликтовать друг с другом. Одним из вариантов может стать применение некоторых паттернов, как Compound components, Function as a children component, и их комбинация. На их основе можно создавать модульные каркасы, не привязанные к пропсам