Day 5! I didn’t think I’d make this much progress today, but I’m happy I did.
- Built reusable form components (button, input, form, label) with the help of EmberMap
- Updated the chart
- Integrated a color picker addon ember-pickr
- Discovered and fixed a bug with the way I was calculating the scale.
- I didn’t realize how much stuff I thought was just regular Ember in our app is actually addons. A bunch of things I use at Crash every day didn’t work at first in plant-gantt until I tracked it back to an addon. For example:
The scale bug: You see here that blueberries are going off the right side. This is because I was calculating the scale based on the last plant in the list, which isn’t always the one that will be harvested last, only the one that will be planted last.
Instead, I had to use d3.max and offset to create a custom function to look at all of the plants and see which one would be harvested last:
let lastToHarvest = maxIndex(sortedData, d => timeDay.offset(new Date(d.start), d.daysToMaturity) );
- upgrade ember, add form components, add some helpers
- updates to chart with form data
- get the color picker working
- fixed end data calculation bug
Here’s how it works so far!
- Improve the form UI
- Use D3’s
update()to update the chart instead of destroying and redrawing it
- Show a different screen on the first time you land instead of showing the mocked out chart
- Break the components apart