* start to create asset list
* begin refactoring overlay component to remove duplicate code
* refactoring of overlays, asset list styles
* changes to add size to asset list
* fixes to asset list
* handle case in which a user hasn't uploaded any assets
* fix bug in which asset list only grabbed first asset
* remove console.log
* update overlay exit styling to use icon mixin
* Styles CodeMirror Search box
* Switch to fork of search add-on
* Styles search box using custom markup
* Prev/Next search behaviour, highlighting current result
* Hide search modifiers until implemented
* Regexp search
* Style RegExp modifier button active state
* Styles search modifiers
* Wires up Case Sensitive search button
* Allows case insenstive regexp search
* Do not show underlying regexp query string when re-opening dialog
* Adds "Whole word" search
* Adds title and aria-label for tooltip and screenreaders
* Whole Word button shows correct active/inactive state
* Disables replace implementation which doesn't work
* Tidies up query parsing so it's less of a hack
- uses state to convert query text into a regexp
- avoids having to fake regexp using "/.../" syntax
- parsing is now in one place
* Uses shared metaKey function for Cmd/Ctrl key
* Adds find function to keyboard shortcuts modals
* Sets aria-checked to true/false to indicate button state
* Sets role=checkbox on checkbox-like buttons
* Checkbox to toggle project's serveSecure flag
This doesn't yet persist or reload the page.
* Help button that shows modal to explain feature
* Extracts protocol redirection to helper
* Returns promise from saveProject() action to allow chaining
* Setting serveSecure flag on project redirects after saving project
* Set serveSecure on Project model in API and client
* Redirect to correct protocol when project is loaded
* Persists Redux store when reloading app for login
* Disable confirmation box when leaving page for login
* Removes extra console.warn
* Sets serveSecure: true for new projects if served over HTTPS
* Clears persisted state on IDEView load
Because when a sketch is created on HTTPS and then the user logs in
the page won't be reloaded
* Appends ?source=<protocol> to URL to track return protocol