super-elements / super-grid

0 stars 0 forks source link

Architecting different features for ease of dev & maintenance. #3

Open gaurav21r opened 7 years ago

gaurav21r commented 7 years ago

super-grid is going to have a whole lot of features. One of the goals of this project is for outside collaborators to easily contribute. I don't know how readable Polymer element code usually is. Very OO oriented in a very fashionably functional world!

I propose we divide most of the feature sets (except core etc.) into Polymer Behaviors. By doing this, we will make it very easy for internal and external collaborators to isolate a problem based on the feature and add new features.

Eg: super-grid can have a different behavior for each of:

  1. Row Selection.
  2. Custom Renderers.
  3. Custom Editors.

There would be the super-grid.html core element inherting all of these behaviors to finally create a grid that would have all of the above 3 features.

If there is a bug (or someone wants to add features) in say, the row selection. They would simply navigate to row-selection.html inside say a /behaviors and make a PR!