Add multi-page UI for settings & imports #30
Adds functionality to easily create multiple pages within the options of the chrome extension. We do this by creating a separate react application with hash-based routing. The feature is triggered by clicking the 'Options' link in
If accepted, this PR would fix #19
Awesome, this looks great. Nice design as well.
As usual, there are a few things in the code that I would like to either modify or understand the reason behind:
This is the easiest approach I've come across to bundle together everything that's required for a component to render. The preferred option in my opinion would be to use css-modules but that requires a lot of setup and could be a future enhancement.
Yeah, I guess I got a bit too carried away with abstracting out components that can be reused. I'll fix this.
That's a really good point, I'll take a brief look into it.
In my view, container components should be where all of the event handling and simple application logic is contained. Components should just be "dumb" helpers that take in props and render render them. This is why I've used class notation for containers where I'm expecting event handlers and other functionality to be added whereas navigation and other components are simple functions.
I'll fix the newlines, but comments are ingrained in me I'm afraid
Understood. My expectation is just a bit different, as I tend to use Redux for all state management, making that pretty much every defined component is a dumb prop-renderer (where event handlers are props too).
Let's move on though, it's fine as it is. I'll just do a quick
One question still: I would like to publish the whole thing in the public domain, free from copyright restrictions (see e.g. Unlicense or CC0). Are you okay with a "relinquishment in perpetuity of all present and future rights to this software under copyright law"?
- new state shape outlined in PR WebMemex#30 (WorldBrain/Memex#30) - tried to minimise changes to existing mapping code - main changes are now need to access `rows` of `searchResult` as it's shaped for with view purpose instead of DB results purpose now - also grabbing `latestResult` on each "row" - also updated `searchResult` proptypes + call selector in mapStateToProps on Overview container # Conflicts: # src/overview/components/Overview.jsx