-
bzub authored
base.MDCRoot is now simpler in a number of ways. It now only contains the minimum of information needed to start an MDC component: the component class and the targeted root element to instantiate with. Components now embed MDCRoot directly to automatically implement vecty.{Un}Mounter. API CHANGES =========== Most of the common fields between components have been replaced by functions in a new package, base/applyer. For example, add applyer.CSSOnly() to a component's markup to disable Javascript/ripple. As for the Ripple field, it has been replaced by a dedicated ripple package and struct that implements vecty.Applyer as well. Finally, this commit begins using a convention in all components where the major elements in a component are struct fields of type vecty.MarkupOrChild. Every component has a Root field like this, which essentially replaces the Markup field. If Root is set to something other than just Markup, it is considered a wholesale replacement of ...
4dbc7802