* WIP tips
* WIP first card stack
* WIP use tips reducer to show things to try
* single card deck similar to mask sequence
* collapse option
* Add zoom card
* WIP tips
* Reorganized to redux
* Add zooming to the gifs
* Blue cards + navigation
* Add tips to new nav bar
* Remove blue
* Update design with icons
* deck updates wip
* Updated card decks
* Add videos to libraries
* Update initial card and clicker preview
* Add backdrop to initial card step.
* WIP use vimeo player instead
* New simple spin deck
* Spin around and say hello decks
* Update button and sub-card styles
* Fix "tips" button in menu bar
* Use move cursor
* Fix cursor
* Use same image for deck preview and library
* Fix cursor again
* Update clicker game deck
* Add videos as single-step decks
* Change tips in menu bar to ? icon
* Change “tips” to “how-tos” in library
* Add help icon to cards
* Update deck library images
* Add drag cover for youtube video to prevent catching mouseup
* add a step to spin deck for clicking control
* Blue bar style updates
* Add step pips
* Update clicker game name to run away
* Fix image padding
* Add change color step to spin deck
* Add start sound step to run away deck
* Update say deck to start with adding a sprite
* Remove package lock
* Remove zooming functionality
* Remove unnecassary prototype changes
* Split up rendering of cards into smaller parts
* Use FormattedMessage for all strings
* Automatic lint fixes
* Almost finished with lint errors!
* Fix more lint errors
* Clean up CSS
* Fix webpack config
- export image and sounds in dist/static/assets
- rename main export (`scratch-gui.js`, not `index.js`)
- move project-loader-hoc back to lib (VM doesn’t load properly without it)
Dynamic import didn’t do what we wanted, so just added `npm run i18n:msgs` to the start command. This is just temporary. Other changes as requested:
* exports in one place
* loc=> locale
Also fixed use of require for localeData to use dynamic import (this one works), so the babelrc changes are needed, otherwise import as a function is not recognized.
Generating the localization source to update the translation system (transifex) is really separate from building. When building we want to be using the current state of translations from transifex, and the english default strings are not needed.
Uses the babel-cli to run the babel-plugin-react-intl separately from webpack.
Using babel-plugin-react intl to extract messages from sources that use react-intl. It creates one file per component, that’s not ideal for translators.
Transifex supports several different json formats. We picked the chrome i18n json format because it includes the ‘description’ and displays that to translators as instructions in the transifex UI.
Add missing file types to `.gitattributes`.
Use `node` instead of deprecated `stable` version specifier for Travis.
Set dev tool to `cheap-module-source-map`.
Using postcss-modules-values with imported values failed on our current basic usage; it is apparently not mature enough to be used yet.
The syntax used by postcss-simple-vars is already familiar to most people familiar with modern CSS build systems.
* Covers parts of these issues: GUI layout panes (#69), sprite libraries (#12), import buttons (#64), menu bar (#67), and sprite info area (#53)
~ Refactored layout pane structure by removing `display: flex` from `.box`, by default. Declaring flex instead only where specifically needed. This helped fix layout quirks, and should help us avoid hard to find issues related to nested flex boxes
~ Added descriptive classnames to boxes/containers/wrappers. Moved more padding, margins + layout into these wrappers to help with component reusability.
~ Set up a spacer unit variable inside `gui.css`, to start keeping consistent padding, margins and rounded corners between panes. Used [CSS/PostCSS Modules](https://github.com/css-modules/postcss-modules-values) to avoid SCSS dependency.
~ Refactored inline styles from JSX, into CSS files. 2 reasons: a) prepping for reuse of CSS Module variables. b) Feels easier to debug complex flex layouts when all the styles are in one place vs JS/HTML/CSS syntax mixed together
~ Added menu bar into layout via new component, and sprite info header in sprite selector pane, with stubs for the labels + forms. Sprite items are correctly scrolling, while leaving the header fixed, in Chrome. Mostly working in FFx. Not working in Safari, IE yet.
~ Style pass on library modal
~ Experimenting with a few different transition styles: Logo in menu bar, sprite library items, Add buttons.
Move layout styles from component stylesheets to the GUI, or the component that is placing the component.
Add a new `Box` component to control layouts, basically giving a convenient way to lay out with flexbox.
Use `Box` as the output component for any component that may need to be passed layout options. The props passing convention allows giving layout props to the final `Box` component, making wrapping with another `Box` unnecessary in some cases.
The inline css method gives us nothing that CSS modules can't give us. This puts the project more in line with the way www works, and makes CSS actually readable.
Using class names gives us full control of the modal styles.