Instead of following the guidelines to create HTML content it would be better to have WebComponents available.
This will reduce the quantity and the cost of breaking changes from the consumer side.
This will also allow to have type checks and better error handling.
Nevertheless, creating WebComponents has a main drawback from my point of view.
This is a deeper step for Mozaic to become a framework and it could limit the possibilities from the consumer side.
I suggest to keep the way Mozaic works as today with pure CSS classes.
WebComponents would simply be an implementation of the available options.
It would allow a consumer to choose between the provided standard WebComponents or creating his own components by using the CSS classes available.
Describe the solution you'd like
Create WebComponents for each UI component.
You could start by creating a simple experimental WebComponent with the button.
WebComponents and their attributes should be prefixed like mc- to avoid naming conflicts with other consumer attributes.
🚀 Styleguide feature request
Description
Instead of following the guidelines to create HTML content it would be better to have WebComponents available.
This will reduce the quantity and the cost of breaking changes from the consumer side. This will also allow to have type checks and better error handling.
Nevertheless, creating WebComponents has a main drawback from my point of view. This is a deeper step for Mozaic to become a framework and it could limit the possibilities from the consumer side.
I suggest to keep the way Mozaic works as today with pure CSS classes. WebComponents would simply be an implementation of the available options. It would allow a consumer to choose between the provided standard WebComponents or creating his own components by using the CSS classes available.
Describe the solution you'd like
Create WebComponents for each UI component. You could start by creating a simple experimental WebComponent with the button.
WebComponents and their attributes should be prefixed like
mc-
to avoid naming conflicts with other consumer attributes.