diff --git a/src/components/cards/cards.jsx b/src/components/cards/cards.jsx index f137c91a0..79d2e6ef3 100644 --- a/src/components/cards/cards.jsx +++ b/src/components/cards/cards.jsx @@ -12,6 +12,7 @@ import helpIcon from '../../lib/assets/icon--tutorials.svg'; import closeIcon from './icon--close.svg'; import {translateVideo} from '../../lib/libraries/decks/translate-video.js'; +import {translateImage} from '../../lib/libraries/decks/translate-image.js'; const CardHeader = ({onCloseCards, onShowAll, totalSteps, step}) => (
@@ -275,7 +276,7 @@ const Cards = props => { /> ) : ( ) diff --git a/src/containers/cards.jsx b/src/containers/cards.jsx index 0cc39f5c5..e75b1e129 100644 --- a/src/containers/cards.jsx +++ b/src/containers/cards.jsx @@ -1,4 +1,6 @@ import {connect} from 'react-redux'; +import PropTypes from 'prop-types'; +import React from 'react'; import { activateDeck, @@ -15,6 +17,29 @@ import { } from '../reducers/modals'; import CardsComponent from '../components/cards/cards.jsx'; +import {loadImageData} from '../lib/libraries/decks/translate-image.js'; + +class Cards extends React.Component { + componentDidMount () { + if (this.props.locale !== 'en') { + loadImageData(this.props.locale); + } + } + componentDidUpdate (prevProps) { + if (this.props.locale !== prevProps.locale) { + loadImageData(this.props.locale); + } + } + render () { + return ( + + ); + } +} + +Cards.propTypes = { + locale: PropTypes.string.isRequired +}; const mapStateToProps = state => ({ visible: state.scratchGui.cards.visible, @@ -45,4 +70,4 @@ const mapDispatchToProps = dispatch => ({ export default connect( mapStateToProps, mapDispatchToProps -)(CardsComponent); +)(Cards); diff --git a/src/lib/libraries/decks/animate-char/animate-char-pick-another-sprite.gif b/src/lib/libraries/decks/animate-char/animate-char-pick-another-sprite.gif deleted file mode 100755 index 97bed56b4..000000000 Binary files a/src/lib/libraries/decks/animate-char/animate-char-pick-another-sprite.gif and /dev/null differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-touching-score.gif b/src/lib/libraries/decks/chase-game/chase-game-touching-score.gif deleted file mode 100755 index 8026ca68d..000000000 Binary files a/src/lib/libraries/decks/chase-game/chase-game-touching-score.gif and /dev/null differ diff --git a/src/lib/libraries/decks/en-steps.js b/src/lib/libraries/decks/en-steps.js new file mode 100644 index 000000000..ce302ae65 --- /dev/null +++ b/src/lib/libraries/decks/en-steps.js @@ -0,0 +1,188 @@ +// Intro +import introMove from './steps/intro-move.en.gif'; +import introSayHello from './steps/intro-say-hello.en.gif'; + +// Text to Speech +import speechAddExtension from './steps/speech-add-extension.en.gif'; +import speechSaySomething from './steps/speech-say-something.en.gif'; +import speechSetVoice from './steps/speech-set-voice.en.gif'; +import speechMoveAround from './steps/speech-move-around.en.gif'; +import speechAddBackdrop from './steps/speech-add-backdrop.en.gif'; +import speechAddSprite from './steps/speech-add-sprite.en.gif'; +import speechSong from './steps/speech-song.en.gif'; +import speechChangeColor from './steps/speech-change-color.en.gif'; +import speechSpin from './steps/speech-spin.en.gif'; +import speechGrowShrink from './steps/speech-grow-shrink.en.gif'; + +// Cartoon Network +import cnShowCharacter from './steps/cn-show-character.en.gif'; +import cnSay from './steps/cn-say.en.gif'; +import cnGlide from './steps/cn-glide.en.gif'; +import cnPickSprite from './steps/cn-pick-sprite.en.gif'; +import cnCollect from './steps/cn-collect.en.gif'; +import cnVariable from './steps/cn-variable.en.gif'; +import cnScore from './steps/cn-score.en.gif'; +import cnBackdrop from './steps/cn-backdrop.en.gif'; + +// Add sprite +import addSprite from './steps/add-sprite.en.gif'; + +// Animate a name +import namePickLetter from './steps/name-pick-letter.en.gif'; +import namePlaySound from './steps/name-play-sound.en.gif'; +import namePickLetter2 from './steps/name-pick-letter2.en.gif'; +import nameChangeColor from './steps/name-change-color.en.gif'; +import nameSpin from './steps/name-spin.en.gif'; +import nameGrow from './steps/name-grow.en.gif'; + +// Make-Music +import musicPickInstrument from './steps/music-pick-instrument.en.gif'; +import musicPlaySound from './steps/music-play-sound.en.gif'; +import musicMakeSong from './steps/music-make-song.en.gif'; +import musicMakeBeat from './steps/music-make-beat.en.gif'; +import musicMakeBeatbox from './steps/music-make-beatbox.en.gif'; + +// Chase-Game +import chaseGameAddBackdrop from './steps/chase-game-add-backdrop.en.gif'; +import chaseGameAddSprite1 from './steps/chase-game-add-sprite1.en.gif'; +import chaseGameRightLeft from './steps/chase-game-right-left.en.gif'; +import chaseGameUpDown from './steps/chase-game-up-down.en.gif'; +import chaseGameAddSprite2 from './steps/chase-game-add-sprite2.en.gif'; +import chaseGameMoveRandomly from './steps/chase-game-move-randomly.en.gif'; +import chaseGamePlaySound from './steps/chase-game-play-sound.en.gif'; +import chaseGameAddVariable from './steps/chase-game-add-variable.en.gif'; +import chaseGameChangeScore from './steps/chase-game-change-score.en.gif'; + +// Clicker-Game (Pop Game) +import popGamePickSprite from './steps/pop-game-pick-sprite.en.gif'; +import popGamePlaySound from './steps/pop-game-play-sound.en.gif'; +import popGameAddScore from './steps/pop-game-add-score.en.gif'; +import popGameChangeScore from './steps/pop-game-change-score.en.gif'; +import popGameRandomPosition from './steps/pop-game-random-position.en.gif'; +import popGameChangeColor from './steps/pop-game-change-color.en.gif'; +import popGameResetScore from './steps/pop-game-reset-score.en.gif'; + +// Animate A Character +import animateCharPickBackdrop from './steps/animate-char-pick-backdrop.en.gif'; +import animateCharPickSprite from './steps/animate-char-pick-sprite.en.gif'; +import animateCharSaySomething from './steps/animate-char-say-something.en.gif'; +import animateCharAddSound from './steps/animate-char-add-sound.en.gif'; +import animateCharTalk from './steps/animate-char-talk.en.gif'; +import animateCharMove from './steps/animate-char-move.en.gif'; +import animateCharJump from './steps/animate-char-jump.en.gif'; +import animateCharChangeColor from './steps/animate-char-change-color.en.gif'; + +// Tell A Story +import storyPickBackdrop from './steps/story-pick-backdrop.en.gif'; +import storyPickSprite from './steps/story-pick-sprite.en.gif'; +import storySaySomething from './steps/story-say-something.en.gif'; +import storyPickSprite2 from './steps/story-pick-sprite2.en.gif'; +import storyFlip from './steps/story-flip.en.gif'; +import storyConversation from './steps/story-conversation.en.gif'; +import storyPickBackdrop2 from './steps/story-pick-backdrop2.en.gif'; +import storySwitchBackdrop from './steps/story-switch-backdrop.en.gif'; +import storyHideCharacter from './steps/story-hide-character.en.gif'; +import storyShowCharacter from './steps/story-show-character.en.gif'; + +// Video Sensing +import videoAddExtension from './steps/video-add-extension.en.gif'; +import videoPet from './steps/video-pet.en.gif'; +import videoAnimate from './steps/video-animate.en.gif'; +import videoPop from './steps/video-pop.en.gif'; + +const enImages = { + // Intro + introMove: introMove, + introSayHello: introSayHello, + + // Text to Speech + speechAddExtension: speechAddExtension, + speechSaySomething: speechSaySomething, + speechSetVoice: speechSetVoice, + speechMoveAround: speechMoveAround, + speechAddBackdrop: speechAddBackdrop, + speechAddSprite: speechAddSprite, + speechSong: speechSong, + speechChangeColor: speechChangeColor, + speechSpin: speechSpin, + speechGrowShrink: speechGrowShrink, + + // Cartoon Network + cnShowCharacter: cnShowCharacter, + cnSay: cnSay, + cnGlide: cnGlide, + cnPickSprite: cnPickSprite, + cnCollect: cnCollect, + cnVariable: cnVariable, + cnScore: cnScore, + cnBackdrop: cnBackdrop, + + // Add sprite + addSprite: addSprite, + + // Animate a name + namePickLetter: namePickLetter, + namePlaySound: namePlaySound, + namePickLetter2: namePickLetter2, + nameChangeColor: nameChangeColor, + nameSpin: nameSpin, + nameGrow: nameGrow, + + // Make-Music + musicPickInstrument: musicPickInstrument, + musicPlaySound: musicPlaySound, + musicMakeSong: musicMakeSong, + musicMakeBeat: musicMakeBeat, + musicMakeBeatbox: musicMakeBeatbox, + + // Chase-Game + chaseGameAddBackdrop: chaseGameAddBackdrop, + chaseGameAddSprite1: chaseGameAddSprite1, + chaseGameRightLeft: chaseGameRightLeft, + chaseGameUpDown: chaseGameUpDown, + chaseGameAddSprite2: chaseGameAddSprite2, + chaseGameMoveRandomly: chaseGameMoveRandomly, + chaseGamePlaySound: chaseGamePlaySound, + chaseGameAddVariable: chaseGameAddVariable, + chaseGameChangeScore: chaseGameChangeScore, + + // Make-A-Pop/Clicker Game + popGamePickSprite: popGamePickSprite, + popGamePlaySound: popGamePlaySound, + popGameAddScore: popGameAddScore, + popGameChangeScore: popGameChangeScore, + popGameRandomPosition: popGameRandomPosition, + popGameChangeColor: popGameChangeColor, + popGameResetScore: popGameResetScore, + + // Animate A Character + animateCharPickBackdrop: animateCharPickBackdrop, + animateCharPickSprite: animateCharPickSprite, + animateCharSaySomething: animateCharSaySomething, + animateCharAddSound: animateCharAddSound, + animateCharTalk: animateCharTalk, + animateCharMove: animateCharMove, + animateCharJump: animateCharJump, + animateCharChangeColor: animateCharChangeColor, + + // Tell A Story + storyPickBackdrop: storyPickBackdrop, + storyPickSprite: storyPickSprite, + storySaySomething: storySaySomething, + storyPickSprite2: storyPickSprite2, + storyFlip: storyFlip, + storyConversation: storyConversation, + storyPickBackdrop2: storyPickBackdrop2, + storySwitchBackdrop: storySwitchBackdrop, + storyHideCharacter: storyHideCharacter, + storyShowCharacter: storyShowCharacter, + + // Video Sensing + videoAddExtension: videoAddExtension, + videoPet: videoPet, + videoAnimate: videoAnimate, + videoPop: videoPop + +}; + +export {enImages}; diff --git a/src/lib/libraries/decks/es-steps.js b/src/lib/libraries/decks/es-steps.js new file mode 100644 index 000000000..f46c63a38 --- /dev/null +++ b/src/lib/libraries/decks/es-steps.js @@ -0,0 +1,188 @@ +// Intro +import introMove from './steps/intro-move.es.gif'; +import introSayHello from './steps/intro-say-hello.es.gif'; + +// Text to Speech +// import speechAddExtension from './steps/speech-add-extension.es.gif'; +// import speechSaySomething from './steps/speech-say-something.es.gif'; +// import speechSetVoice from './steps/speech-set-voice.es.gif'; +// import speechMoveAround from './steps/speech-move-around.es.gif'; +// import speechAddBackdrop from './steps/speech-add-backdrop.es.gif'; +// import speechAddSprite from './steps/speech-add-sprite.es.gif'; +// import speechSong from './steps/speech-song.es.gif'; +// import speechChangeColor from './steps/speech-change-color.es.gif'; +// import speechSpin from './steps/speech-spin.es.gif'; +// import speechGrowShrink from './steps/speech-grow-shrink.es.gif'; +// +// // Cartoon Network +// import cnShowCharacter from './steps/cn-show-character.es.gif'; +// import cnSay from './steps/cn-say.es.gif'; +// import cnGlide from './steps/cn-glide.es.gif'; +// import cnPickSprite from './steps/cn-pick-sprite.es.gif'; +// import cnCollect from './steps/cn-collect.es.gif'; +// import cnVariable from './steps/cn-variable.es.gif'; +// import cnScore from './steps/cn-score.es.gif'; +// import cnBackdrop from './steps/cn-backdrop.es.gif'; + +// Add sprite +import addSprite from './steps/add-sprite.es.gif'; + +// Animate a name +import namePickLetter from './steps/name-pick-letter.es.gif'; +import namePlaySound from './steps/name-play-sound.es.gif'; +import namePickLetter2 from './steps/name-pick-letter2.es.gif'; +import nameChangeColor from './steps/name-change-color.es.gif'; +import nameSpin from './steps/name-spin.es.gif'; +import nameGrow from './steps/name-grow.es.gif'; + +// Make-Music +import musicPickInstrument from './steps/music-pick-instrument.es.gif'; +import musicPlaySound from './steps/music-play-sound.es.gif'; +import musicMakeSong from './steps/music-make-song.es.gif'; +import musicMakeBeat from './steps/music-make-beat.es.gif'; +import musicMakeBeatbox from './steps/music-make-beatbox.es.gif'; + +// Chase-Game +import chaseGameAddBackdrop from './steps/chase-game-add-backdrop.es.gif'; +import chaseGameAddSprite1 from './steps/chase-game-add-sprite1.es.gif'; +import chaseGameRightLeft from './steps/chase-game-right-left.es.gif'; +import chaseGameUpDown from './steps/chase-game-up-down.es.gif'; +import chaseGameAddSprite2 from './steps/chase-game-add-sprite2.es.gif'; +import chaseGameMoveRandomly from './steps/chase-game-move-randomly.es.gif'; +import chaseGamePlaySound from './steps/chase-game-play-sound.es.gif'; +import chaseGameAddVariable from './steps/chase-game-add-variable.es.gif'; +import chaseGameChangeScore from './steps/chase-game-change-score.es.gif'; + +// Clicker-Game (Pop Game) +import popGamePickSprite from './steps/pop-game-pick-sprite.es.gif'; +import popGamePlaySound from './steps/pop-game-play-sound.es.gif'; +import popGameAddScore from './steps/pop-game-add-score.es.gif'; +import popGameChangeScore from './steps/pop-game-change-score.es.gif'; +import popGameRandomPosition from './steps/pop-game-random-position.es.gif'; +import popGameChangeColor from './steps/pop-game-change-color.es.gif'; +import popGameResetScore from './steps/pop-game-reset-score.es.gif'; + +// Animate A Character +import animateCharPickBackdrop from './steps/animate-char-pick-backdrop.es.gif'; +import animateCharPickSprite from './steps/animate-char-pick-sprite.es.gif'; +import animateCharSaySomething from './steps/animate-char-say-something.es.gif'; +import animateCharAddSound from './steps/animate-char-add-sound.es.gif'; +import animateCharTalk from './steps/animate-char-talk.es.gif'; +import animateCharMove from './steps/animate-char-move.es.gif'; +import animateCharJump from './steps/animate-char-jump.es.gif'; +import animateCharChangeColor from './steps/animate-char-change-color.es.gif'; + +// Tell A Story +import storyPickBackdrop from './steps/story-pick-backdrop.es.gif'; +import storyPickSprite from './steps/story-pick-sprite.es.gif'; +import storySaySomething from './steps/story-say-something.es.gif'; +import storyPickSprite2 from './steps/story-pick-sprite2.es.gif'; +import storyFlip from './steps/story-flip.es.gif'; +import storyConversation from './steps/story-conversation.es.gif'; +import storyPickBackdrop2 from './steps/story-pick-backdrop2.es.gif'; +import storySwitchBackdrop from './steps/story-switch-backdrop.es.gif'; +import storyHideCharacter from './steps/story-hide-character.es.gif'; +import storyShowCharacter from './steps/story-show-character.es.gif'; + +// Video Sensing +import videoAddExtension from './steps/video-add-extension.es.gif'; +import videoPet from './steps/video-pet.es.gif'; +import videoAnimate from './steps/video-animate.es.gif'; +import videoPop from './steps/video-pop.es.gif'; + +const esImages = { + // Intro + introMove: introMove, + introSayHello: introSayHello, + + // // Text to Speech + // speechAddExtension: speechAddExtension, + // speechSaySomething: speechSaySomething, + // speechSetVoice: speechSetVoice, + // speechMoveAround: speechMoveAround, + // speechAddBackdrop: speechAddBackdrop, + // speechAddSprite: speechAddSprite, + // speechSong: speechSong, + // speechChangeColor: speechChangeColor, + // speechSpin: speechSpin, + // speechGrowShrink: speechGrowShrink, + // + // // Cartoon Network + // cnShowCharacter: cnShowCharacter, + // cnSay: cnSay, + // cnGlide: cnGlide, + // cnPickSprite: cnPickSprite, + // cnCollect: cnCollect, + // cnVariable: cnVariable, + // cnScore: cnScore, + // cnBackdrop: cnBackdrop, + + // Add sprite + addSprite: addSprite, + + // Animate a name + namePickLetter: namePickLetter, + namePlaySound: namePlaySound, + namePickLetter2: namePickLetter2, + nameChangeColor: nameChangeColor, + nameSpin: nameSpin, + nameGrow: nameGrow, + + // Make-Music + musicPickInstrument: musicPickInstrument, + musicPlaySound: musicPlaySound, + musicMakeSong: musicMakeSong, + musicMakeBeat: musicMakeBeat, + musicMakeBeatbox: musicMakeBeatbox, + + // Chase-Game + chaseGameAddBackdrop: chaseGameAddBackdrop, + chaseGameAddSprite1: chaseGameAddSprite1, + chaseGameRightLeft: chaseGameRightLeft, + chaseGameUpDown: chaseGameUpDown, + chaseGameAddSprite2: chaseGameAddSprite2, + chaseGameMoveRandomly: chaseGameMoveRandomly, + chaseGamePlaySound: chaseGamePlaySound, + chaseGameAddVariable: chaseGameAddVariable, + chaseGameChangeScore: chaseGameChangeScore, + + // Make-A-Pop/Clicker Game + popGamePickSprite: popGamePickSprite, + popGamePlaySound: popGamePlaySound, + popGameAddScore: popGameAddScore, + popGameChangeScore: popGameChangeScore, + popGameRandomPosition: popGameRandomPosition, + popGameChangeColor: popGameChangeColor, + popGameResetScore: popGameResetScore, + + // Animate A Character + animateCharPickBackdrop: animateCharPickBackdrop, + animateCharPickSprite: animateCharPickSprite, + animateCharSaySomething: animateCharSaySomething, + animateCharAddSound: animateCharAddSound, + animateCharTalk: animateCharTalk, + animateCharMove: animateCharMove, + animateCharJump: animateCharJump, + animateCharChangeColor: animateCharChangeColor, + + // Tell A Story + storyPickBackdrop: storyPickBackdrop, + storyPickSprite: storyPickSprite, + storySaySomething: storySaySomething, + storyPickSprite2: storyPickSprite2, + storyFlip: storyFlip, + storyConversation: storyConversation, + storyPickBackdrop2: storyPickBackdrop2, + storySwitchBackdrop: storySwitchBackdrop, + storyHideCharacter: storyHideCharacter, + storyShowCharacter: storyShowCharacter, + + // Video Sensing + videoAddExtension: videoAddExtension, + videoPet: videoPet, + videoAnimate: videoAnimate, + videoPop: videoPop + +}; + +export {esImages}; diff --git a/src/lib/libraries/decks/index.jsx b/src/lib/libraries/decks/index.jsx index 78aeb6f29..92dcb643d 100644 --- a/src/lib/libraries/decks/index.jsx +++ b/src/lib/libraries/decks/index.jsx @@ -1,120 +1,51 @@ import React from 'react'; import {FormattedMessage} from 'react-intl'; +// Tutorial thumbnails: Avoid using any text that would need to be +// translated in thumbnails. // Intro -import libraryIntro from './intro/lib-getting-started.jpg'; -import stepMove from './intro/intro1.gif'; -import stepMoveSayHello from './intro/intro2.gif'; +import libraryIntro from './thumbnails/getting-started.jpg'; // Text to Speech -import libraryTXTSpeech from './txt/lib_txt-to-speech.jpg'; -import stepAddTXTextension from './txt/01_hoc-add-extensions.gif'; -import stepTXTSpeech from './txt/02_hoc-say-something.gif'; -import stepTXTSetVoice from './txt/03_hoc-set-voice.gif'; -import stepTXTMove from './txt/04_hoc-move-around.gif'; -import stepTXTBackdrop from './txt/05_hoc-add-backdrop.gif'; -import stepTXTAddSprite from './txt/06_hoc-add-character.gif'; -import stepTXTSong from './txt/07_hoc-perform-song.gif'; -import stepTXTColor from './txt/08_hoc-color-click.gif'; -import stepTXTSpin from './txt/09_hoc-spin.gif'; -import stepTXTGrow from './txt/10_hoc-grow-shrink.gif'; +import libraryTXTSpeech from './thumbnails/text-to-speech.jpg'; // Cartoon Network -import libraryCartoonNetwork from './cartoonnetwork/lib_CartoonNetwork.jpg'; -import stepCNcharacter from './cartoonnetwork/1-cn-hideshow.gif'; -import stepCNsay from './cartoonnetwork/2-cn-say.gif'; -import stepCNglide from './cartoonnetwork/3-cn-glide.gif'; -import stepCNpicksprite from './cartoonnetwork/4-cn-pick-gem.gif'; -import stepCNcollect from './cartoonnetwork/5-cn-collect.gif'; -import stepCNvariable from './cartoonnetwork/6-cn-variable.gif'; -import stepCNscore from './cartoonnetwork/7-cn-score.gif'; -import stepCNbackdrop from './cartoonnetwork/8-cn-change-backdrop.gif'; +import libraryCartoonNetwork from './thumbnails/cartoon-network.jpg'; // Add sprite -import libraryAddSprite from './sprite/cover-add-sprite.jpg'; -import stepAddSprite from './sprite/intro-choose-sprite.gif'; +import libraryAddSprite from './thumbnails/add-sprite.jpg'; // Animate a name -import libraryAnimate from './animate/lib_animate-a-name.jpg'; -import stepAnimatePickLetter from './animate/animate-name-pick-a-letter.gif'; -import stepAnimatePlaySound from './animate/animate-name-play-sound.gif'; -import stepAnimatePickLetter2 from './animate/animate-name-pick-a-letter2.gif'; -import stepAnimateChangeColor from './animate/animate-name-change-color.gif'; -import stepAnimateSpin from './animate/animate-name-spin.gif'; -import stepAnimateGrow from './animate/animate-name-grow.gif'; - +import libraryAnimate from './thumbnails/animate-a-name.jpg'; // Make-Music -import libraryMakeMusic from './make-music/lib-make-music.jpg'; -import stepPickInstrument from './make-music/make-music-pick-instrument.gif'; -import stepPlaySoundClick from './make-music/make-music-play-sound.gif'; -import stepMakeSong from './make-music/make-music-make-song.gif'; -import stepMakeBeat from './make-music/make-music-make-beat.gif'; -import stepMakeBeatbox from './make-music/make-music-beatbox.gif'; +import libraryMakeMusic from './thumbnails/make-music.jpg'; // Chase-Game -import libraryChaseGame from './chase-game/lib-chasegame.jpg'; -import stepBG from './chase-game/chase-game-add-backdrop.gif'; -import stepAddOcto from './chase-game/chase-game-add-sprite1.gif'; -import stepLeftRight from './chase-game/chase-game-move-rightleft.gif'; -import stepUpDown from './chase-game/chase-game-move-updown.gif'; -import stepAddStar from './chase-game/chase-game-add-sprite2.gif'; -import stepMoveRandom from './chase-game/chase-game-move-randomly.gif'; -import stepWhenTouch from './chase-game/chase-game-touching.gif'; -import stepScoreVariable from './chase-game/chase-game-add-variable.gif'; -import stepScoreWhenTouch from './chase-game/chase-game-change-score.gif'; +import libraryChaseGame from './thumbnails/chase-game.jpg'; // Make-A-Game -import libraryMakeAGame from './game/lib-pop.jpg'; -import stepGamePickSprite from './game/game-pick-sprite.gif'; -import stepGamePlaySound from './game/game-play-sound.gif'; -import stepGameAddScore from './game/game-add-score.gif'; -import stepGameChangeScore from './game/game-change-score.gif'; -import stepRandom from './game/game-random-position.gif'; -import stepGameChangeColor from './game/game-change-color.gif'; -import stepResetScore from './game/game-reset-score.gif'; +import libraryMakeAGame from './thumbnails/pop-game.jpg'; // Animate A Character -import libraryAnimateChar from './animate-char/lib_Animate_a_Character.jpg'; -import stepAnimateCharPickBackdrop from './animate-char/animate-char-pick-backdrop.gif'; -import stepAnimateCharPickSprite from './animate-char/animate-char-pick-sprite.gif'; -import stepAnimateCharSaySomething from './animate-char/animate-char-say-something.gif'; -import stepAnimateCharAddSound from './animate-char/animate-char-add-sound.gif'; -import stepAnimateCharTalk from './animate-char/animate-char-talk.gif'; -import stepAnimateCharMove from './animate-char/animate-char-move.gif'; -import stepAnimateCharJump from './animate-char/animate-char-jump.gif'; -import stepAnimateCharChangeColor from './animate-char/animate-char-change-color.gif'; +import libraryAnimateChar from './thumbnails/animate-a-character.jpg'; // Tell A Story -import libraryStory from './story/lib-tell-a-story.jpg'; -import stepStoryPickBackdrop from './story/story-pick-backdrop.gif'; -import stepStoryPickSprite from './story/story-pick-sprite.gif'; -import stepStoryCharSaySomething from './story/story-say-something.gif'; -import stepStoryCharAddAnotherSprite from './story/story-pick-another-sprite.gif'; -import stepStoryFlip from './story/story-flip.gif'; -import stepStoryConversation from './story/story-conversation.gif'; -import stepStoryAddAnotherBackdrop from './story/story-add-background-2.gif'; -import stepStorySwitchBackdrop from './story/story-switch-backdrop.gif'; -import stepStoryHide from './story/story-hide-character.gif'; -import stepStoryShow from './story/story-show-character.gif'; +import libraryStory from './thumbnails/tell-a-story.jpg'; // Video Sensing -import libraryVideoSens from './videosensing/lib_video_sensing.jpg'; -import stepVideoSensAddExtension from './videosensing/videosens-add-extension.gif'; -import stepVideoSensPet from './videosensing/videosens-pet-cat.gif'; -import stepVideoSensAnimate from './videosensing/videosens-animate.gif'; -import stepVideoSensPop from './videosensing/videosens-pop.gif'; +import libraryVideoSens from './thumbnails/video-sensing.jpg'; // Videos -import recordASound from './videos/record-a-sound.jpg'; -import glideAroundThumb from './videos/glide-around.jpg'; -import changeSizeThumb from './videos/change-size.jpg'; -import switchCostumeThumb from './videos/animate-sprite.jpg'; -import hideAndShowThumb from './videos/hide-and-show.jpg'; -import addBackdropThumb from './videos/add-backdrop.jpg'; -import addEffectsThumb from './videos/add-effects.jpg'; -import moveArrowKeysThumb from './videos/move-arrow-keys.jpg'; -import spinThumb from './videos/spin.jpg'; +import recordASound from './thumbnails/record-a-sound.jpg'; +import glideAroundThumb from './thumbnails/glide-around.jpg'; +import changeSizeThumb from './thumbnails/change-size.jpg'; +import switchCostumeThumb from './thumbnails/animate-sprite.jpg'; +import hideAndShowThumb from './thumbnails/hide-and-show.jpg'; +import addBackdropThumb from './thumbnails/add-backdrop.jpg'; +import addEffectsThumb from './thumbnails/add-effects.jpg'; +import moveArrowKeysThumb from './thumbnails/move-arrow-keys.jpg'; +import spinThumb from './thumbnails/spin.jpg'; export default { @@ -138,7 +69,7 @@ export default { id="gui.howtos.intro-move.step_stepMove" /> ), - image: stepMove + image: 'introMove' }, { title: ( ), - image: stepMoveSayHello + image: 'introSayHello' }, { deckIds: [ 'add-a-backdrop', @@ -180,16 +111,16 @@ export default { id="gui.howtos.say-it-out-loud.step_AddTXTextension" /> ), - image: stepAddTXTextension + image: 'speechAddExtension' }, { title: ( ), - image: stepTXTSpeech + image: 'speechSaySomething' }, { title: ( ), - image: stepTXTSetVoice + image: 'speechSetVoice' }, { title: ( ), - image: stepTXTMove + image: 'speechMoveAround' }, { title: ( ), - image: stepTXTBackdrop + image: 'speechAddBackdrop' }, { title: ( ), - image: stepTXTAddSprite + image: 'speechAddSprite' }, { title: ( ), - image: stepTXTSong + image: 'speechSong' }, { title: ( ), - image: stepTXTColor + image: 'speechChangeColor' }, { title: ( ), - image: stepTXTSpin + image: 'speechSpin' }, { title: ( ), - image: stepTXTGrow + image: 'speechGrowShrink' }, { deckIds: [ 'animate-a-name', @@ -295,7 +226,7 @@ export default { id="gui.howtos.cartoon-network.step_CNcharacter" /> ), - image: stepCNcharacter + image: 'cnShowCharacter' }, { title: ( ), - image: stepCNsay + image: 'cnSay' }, { title: ( ), - image: stepCNglide + image: 'cnGlide' }, { title: ( ), - image: stepCNpicksprite + image: 'cnPickSprite' }, { title: ( ), - image: stepCNcollect + image: 'cnCollect' }, { title: ( ), - image: stepCNvariable + image: 'cnVariable' }, { title: ( ), - image: stepCNscore + image: 'cnScore' }, { title: ( ), - image: stepCNbackdrop + image: 'cnBackdrop' }, { video: '6o76f5ivo1' @@ -392,7 +323,7 @@ export default { id="gui.howtos.animate-a-name.step_AnimatePickLetter" /> ), - image: stepAnimatePickLetter + image: 'namePickLetter' }, { title: ( ), - image: stepAnimatePlaySound + image: 'namePlaySound' }, { title: ( ), - image: stepAnimatePickLetter2 + image: 'namePickLetter2' }, { title: ( ), - image: stepAnimateChangeColor + image: 'nameChangeColor' }, { title: ( ), - image: stepAnimateSpin + image: 'nameSpin' }, { title: ( ), - image: stepAnimateGrow + image: 'nameGrow' }, { deckIds: [ 'add-a-backdrop', @@ -468,7 +399,7 @@ export default { id="gui.howtos.Make-Music.step_PickInstrument" /> ), - image: stepPickInstrument + image: 'musicPickInstrument' }, { title: ( @@ -478,7 +409,7 @@ export default { id="gui.howtos.Make-Music.step_PlaySoundClick" /> ), - image: stepPlaySoundClick + image: 'musicPlaySound' }, { title: ( @@ -488,7 +419,7 @@ export default { id="gui.howtos.Make-Music.step_MakeSong" /> ), - image: stepMakeSong + image: 'musicMakeSong' }, { title: ( ), - image: stepMakeBeat + image: 'musicMakeBeat' }, { title: ( ), - image: stepMakeBeatbox + image: 'musicMakeBeatbox' }, { deckIds: [ 'add-a-backdrop', @@ -537,7 +468,7 @@ export default { id="gui.howtos.Make-A-Game.step_GamePickSprite" /> ), - image: stepGamePickSprite + image: 'popGamePickSprite' }, { title: ( ), - image: stepGamePlaySound + image: 'popGamePlaySound' }, { title: ( ), - image: stepGameAddScore + image: 'popGameAddScore' }, { title: ( ), - image: stepGameChangeScore + image: 'popGameChangeScore' }, { title: ( ), - image: stepRandom + image: 'popGameRandomPosition' }, { title: ( ), - image: stepGameChangeColor + image: 'popGameChangeColor' }, { title: ( ), - image: stepResetScore + image: 'popGameResetScore' }, { deckIds: [ 'add-a-backdrop', @@ -624,7 +555,7 @@ export default { id="gui.howtos.Chase-Game.step_BG" /> ), - image: stepBG + image: 'chaseGameAddBackdrop' }, { title: ( ), - image: stepAddOcto + image: 'chaseGameAddSprite1' }, { title: ( ), - image: stepLeftRight + image: 'chaseGameRightLeft' }, { title: ( ), - image: stepUpDown + image: 'chaseGameUpDown' }, { title: ( ), - image: stepAddStar + image: 'chaseGameAddSprite2' }, { title: ( ), - image: stepMoveRandom + image: 'chaseGameMoveRandomly' }, { title: ( ), - image: stepWhenTouch + image: 'chaseGamePlaySound' }, { title: ( ), - image: stepScoreVariable + image: 'chaseGameAddVariable' }, { title: ( ), - image: stepScoreWhenTouch + image: 'chaseGameChangeScore' }, { deckIds: [ 'add-effects', @@ -726,7 +657,7 @@ export default { id="gui.howtos.animate-char.step_addbg" /> ), - image: stepAnimateCharPickBackdrop + image: 'animateCharPickBackdrop' }, { title: ( ), - image: stepAnimateCharPickSprite + image: 'animateCharPickSprite' }, { title: ( ), - image: stepAnimateCharSaySomething + image: 'animateCharSaySomething' }, { title: ( ), - image: stepAnimateCharAddSound + image: 'animateCharAddSound' }, { title: ( ), - image: stepAnimateCharTalk + image: 'animateCharTalk' }, { title: ( ), - image: stepAnimateCharMove + image: 'animateCharMove' }, { title: ( ), - image: stepAnimateCharJump + image: 'animateCharJump' }, { title: ( ), - image: stepAnimateCharChangeColor + image: 'animateCharChangeColor' }, { deckIds: [ 'Chase-Game', @@ -819,7 +750,7 @@ export default { id="gui.howtos.story.step_addbg" /> ), - image: stepStoryPickBackdrop + image: 'storyPickBackdrop' }, { title: ( ), - image: stepStoryPickSprite + image: 'storyPickSprite' }, { title: ( ), - image: stepStoryCharSaySomething + image: 'storySaySomething' }, { title: ( ), - image: stepStoryCharAddAnotherSprite + image: 'storyPickSprite2' }, { title: ( ), - image: stepStoryFlip + image: 'storyFlip' }, { title: ( ), - image: stepStoryConversation + image: 'storyConversation' }, { title: ( ), - image: stepStoryAddAnotherBackdrop + image: 'storyPickBackdrop2' }, { title: ( ), - image: stepStorySwitchBackdrop + image: 'storySwitchBackdrop' }, { title: ( ), - image: stepStoryHide + image: 'storyHideCharacter' }, { title: ( ), - image: stepStoryShow + image: 'storyShowCharacter' }, { deckIds: [ @@ -931,7 +862,7 @@ export default { id="gui.howtos.videosens.step_addextension" /> ), - image: stepVideoSensAddExtension + image: 'videoAddExtension' }, { title: ( ), - image: stepVideoSensPet + image: 'videoPet' }, { title: ( ), - image: stepVideoSensAnimate + image: 'videoAnimate' }, { title: ( ), - image: stepVideoSensPop + image: 'videoPop' }, { deckIds: [ 'Make-Music', @@ -987,7 +918,7 @@ export default { id="gui.howtos.add-sprite.step_addSprite" /> ), - image: stepAddSprite + image: 'addSprite' }, { deckIds: [ diff --git a/src/lib/libraries/decks/intro/intro-coverimage.jpg b/src/lib/libraries/decks/intro/intro-coverimage.jpg deleted file mode 100644 index b336ce816..000000000 Binary files a/src/lib/libraries/decks/intro/intro-coverimage.jpg and /dev/null differ diff --git a/src/lib/libraries/decks/sprite/intro-choose-sprite.gif b/src/lib/libraries/decks/steps/add-sprite.en.gif similarity index 100% rename from src/lib/libraries/decks/sprite/intro-choose-sprite.gif rename to src/lib/libraries/decks/steps/add-sprite.en.gif diff --git a/src/lib/libraries/decks/steps/add-sprite.es.gif b/src/lib/libraries/decks/steps/add-sprite.es.gif new file mode 100755 index 000000000..a708a4ae5 Binary files /dev/null and b/src/lib/libraries/decks/steps/add-sprite.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-add-sound.gif b/src/lib/libraries/decks/steps/animate-char-add-sound.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-add-sound.gif rename to src/lib/libraries/decks/steps/animate-char-add-sound.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-add-sound.es.gif b/src/lib/libraries/decks/steps/animate-char-add-sound.es.gif new file mode 100755 index 000000000..0e73a3138 Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-add-sound.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-change-color.gif b/src/lib/libraries/decks/steps/animate-char-change-color.en.gif similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-change-color.gif rename to src/lib/libraries/decks/steps/animate-char-change-color.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-change-color.es.gif b/src/lib/libraries/decks/steps/animate-char-change-color.es.gif new file mode 100755 index 000000000..b33d1968b Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-change-color.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-jump.gif b/src/lib/libraries/decks/steps/animate-char-jump.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-jump.gif rename to src/lib/libraries/decks/steps/animate-char-jump.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-jump.es.gif b/src/lib/libraries/decks/steps/animate-char-jump.es.gif new file mode 100755 index 000000000..f95a6e741 Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-jump.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-move.gif b/src/lib/libraries/decks/steps/animate-char-move.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-move.gif rename to src/lib/libraries/decks/steps/animate-char-move.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-move.es.gif b/src/lib/libraries/decks/steps/animate-char-move.es.gif new file mode 100755 index 000000000..69436c73e Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-move.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-pick-backdrop.gif b/src/lib/libraries/decks/steps/animate-char-pick-backdrop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-pick-backdrop.gif rename to src/lib/libraries/decks/steps/animate-char-pick-backdrop.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-pick-backdrop.es.gif b/src/lib/libraries/decks/steps/animate-char-pick-backdrop.es.gif new file mode 100755 index 000000000..5be6c21fc Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-pick-backdrop.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-pick-sprite.gif b/src/lib/libraries/decks/steps/animate-char-pick-sprite.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-pick-sprite.gif rename to src/lib/libraries/decks/steps/animate-char-pick-sprite.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-pick-sprite.es.gif b/src/lib/libraries/decks/steps/animate-char-pick-sprite.es.gif new file mode 100755 index 000000000..5635b378d Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-pick-sprite.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-say-something.gif b/src/lib/libraries/decks/steps/animate-char-say-something.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-say-something.gif rename to src/lib/libraries/decks/steps/animate-char-say-something.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-say-something.es.gif b/src/lib/libraries/decks/steps/animate-char-say-something.es.gif new file mode 100755 index 000000000..46eac1479 Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-say-something.es.gif differ diff --git a/src/lib/libraries/decks/animate-char/animate-char-talk.gif b/src/lib/libraries/decks/steps/animate-char-talk.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate-char/animate-char-talk.gif rename to src/lib/libraries/decks/steps/animate-char-talk.en.gif diff --git a/src/lib/libraries/decks/steps/animate-char-talk.es.gif b/src/lib/libraries/decks/steps/animate-char-talk.es.gif new file mode 100755 index 000000000..e388d8e6f Binary files /dev/null and b/src/lib/libraries/decks/steps/animate-char-talk.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-add-backdrop.gif b/src/lib/libraries/decks/steps/chase-game-add-backdrop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-add-backdrop.gif rename to src/lib/libraries/decks/steps/chase-game-add-backdrop.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-add-backdrop.es.gif b/src/lib/libraries/decks/steps/chase-game-add-backdrop.es.gif new file mode 100755 index 000000000..7200a6502 Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-add-backdrop.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-add-sprite1.gif b/src/lib/libraries/decks/steps/chase-game-add-sprite1.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-add-sprite1.gif rename to src/lib/libraries/decks/steps/chase-game-add-sprite1.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-add-sprite1.es.gif b/src/lib/libraries/decks/steps/chase-game-add-sprite1.es.gif new file mode 100755 index 000000000..b1ca6ebee Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-add-sprite1.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-add-sprite2.gif b/src/lib/libraries/decks/steps/chase-game-add-sprite2.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-add-sprite2.gif rename to src/lib/libraries/decks/steps/chase-game-add-sprite2.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-add-sprite2.es.gif b/src/lib/libraries/decks/steps/chase-game-add-sprite2.es.gif new file mode 100755 index 000000000..3bebd695d Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-add-sprite2.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-add-variable.gif b/src/lib/libraries/decks/steps/chase-game-add-variable.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-add-variable.gif rename to src/lib/libraries/decks/steps/chase-game-add-variable.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-add-variable.es.gif b/src/lib/libraries/decks/steps/chase-game-add-variable.es.gif new file mode 100755 index 000000000..b0e2ea834 Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-add-variable.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-change-score.gif b/src/lib/libraries/decks/steps/chase-game-change-score.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-change-score.gif rename to src/lib/libraries/decks/steps/chase-game-change-score.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-change-score.es.gif b/src/lib/libraries/decks/steps/chase-game-change-score.es.gif new file mode 100755 index 000000000..86a6d5a00 Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-change-score.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-move-randomly.gif b/src/lib/libraries/decks/steps/chase-game-move-randomly.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-move-randomly.gif rename to src/lib/libraries/decks/steps/chase-game-move-randomly.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-move-randomly.es.gif b/src/lib/libraries/decks/steps/chase-game-move-randomly.es.gif new file mode 100755 index 000000000..1a6fab408 Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-move-randomly.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-touching.gif b/src/lib/libraries/decks/steps/chase-game-play-sound.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-touching.gif rename to src/lib/libraries/decks/steps/chase-game-play-sound.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-play-sound.es.gif b/src/lib/libraries/decks/steps/chase-game-play-sound.es.gif new file mode 100755 index 000000000..734611b4f Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-play-sound.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-move-rightleft.gif b/src/lib/libraries/decks/steps/chase-game-right-left.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-move-rightleft.gif rename to src/lib/libraries/decks/steps/chase-game-right-left.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-right-left.es.gif b/src/lib/libraries/decks/steps/chase-game-right-left.es.gif new file mode 100755 index 000000000..02fb204fb Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-right-left.es.gif differ diff --git a/src/lib/libraries/decks/chase-game/chase-game-move-updown.gif b/src/lib/libraries/decks/steps/chase-game-up-down.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/chase-game/chase-game-move-updown.gif rename to src/lib/libraries/decks/steps/chase-game-up-down.en.gif diff --git a/src/lib/libraries/decks/steps/chase-game-up-down.es.gif b/src/lib/libraries/decks/steps/chase-game-up-down.es.gif new file mode 100755 index 000000000..2c26c4867 Binary files /dev/null and b/src/lib/libraries/decks/steps/chase-game-up-down.es.gif differ diff --git a/src/lib/libraries/decks/cartoonnetwork/8-cn-change-backdrop.gif b/src/lib/libraries/decks/steps/cn-backdrop.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/8-cn-change-backdrop.gif rename to src/lib/libraries/decks/steps/cn-backdrop.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/5-cn-collect.gif b/src/lib/libraries/decks/steps/cn-collect.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/5-cn-collect.gif rename to src/lib/libraries/decks/steps/cn-collect.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/3-cn-glide.gif b/src/lib/libraries/decks/steps/cn-glide.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/3-cn-glide.gif rename to src/lib/libraries/decks/steps/cn-glide.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/4-cn-pick-gem.gif b/src/lib/libraries/decks/steps/cn-pick-sprite.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/4-cn-pick-gem.gif rename to src/lib/libraries/decks/steps/cn-pick-sprite.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/2-cn-say.gif b/src/lib/libraries/decks/steps/cn-say.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/2-cn-say.gif rename to src/lib/libraries/decks/steps/cn-say.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/7-cn-score.gif b/src/lib/libraries/decks/steps/cn-score.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/7-cn-score.gif rename to src/lib/libraries/decks/steps/cn-score.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/1-cn-hideshow.gif b/src/lib/libraries/decks/steps/cn-show-character.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/1-cn-hideshow.gif rename to src/lib/libraries/decks/steps/cn-show-character.en.gif diff --git a/src/lib/libraries/decks/cartoonnetwork/6-cn-variable.gif b/src/lib/libraries/decks/steps/cn-variable.en.gif similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/6-cn-variable.gif rename to src/lib/libraries/decks/steps/cn-variable.en.gif diff --git a/src/lib/libraries/decks/intro/intro1.gif b/src/lib/libraries/decks/steps/intro-move.en.gif similarity index 100% rename from src/lib/libraries/decks/intro/intro1.gif rename to src/lib/libraries/decks/steps/intro-move.en.gif diff --git a/src/lib/libraries/decks/steps/intro-move.es.gif b/src/lib/libraries/decks/steps/intro-move.es.gif new file mode 100755 index 000000000..860d5f75c Binary files /dev/null and b/src/lib/libraries/decks/steps/intro-move.es.gif differ diff --git a/src/lib/libraries/decks/intro/intro2.gif b/src/lib/libraries/decks/steps/intro-say-hello.en.gif similarity index 100% rename from src/lib/libraries/decks/intro/intro2.gif rename to src/lib/libraries/decks/steps/intro-say-hello.en.gif diff --git a/src/lib/libraries/decks/steps/intro-say-hello.es.gif b/src/lib/libraries/decks/steps/intro-say-hello.es.gif new file mode 100755 index 000000000..bfd825012 Binary files /dev/null and b/src/lib/libraries/decks/steps/intro-say-hello.es.gif differ diff --git a/src/lib/libraries/decks/make-music/make-music-make-beat.gif b/src/lib/libraries/decks/steps/music-make-beat.en.gif similarity index 100% rename from src/lib/libraries/decks/make-music/make-music-make-beat.gif rename to src/lib/libraries/decks/steps/music-make-beat.en.gif diff --git a/src/lib/libraries/decks/steps/music-make-beat.es.gif b/src/lib/libraries/decks/steps/music-make-beat.es.gif new file mode 100755 index 000000000..c86c1a1fe Binary files /dev/null and b/src/lib/libraries/decks/steps/music-make-beat.es.gif differ diff --git a/src/lib/libraries/decks/make-music/make-music-beatbox.gif b/src/lib/libraries/decks/steps/music-make-beatbox.en.gif similarity index 100% rename from src/lib/libraries/decks/make-music/make-music-beatbox.gif rename to src/lib/libraries/decks/steps/music-make-beatbox.en.gif diff --git a/src/lib/libraries/decks/steps/music-make-beatbox.es.gif b/src/lib/libraries/decks/steps/music-make-beatbox.es.gif new file mode 100755 index 000000000..4638b9995 Binary files /dev/null and b/src/lib/libraries/decks/steps/music-make-beatbox.es.gif differ diff --git a/src/lib/libraries/decks/make-music/make-music-make-song.gif b/src/lib/libraries/decks/steps/music-make-song.en.gif similarity index 100% rename from src/lib/libraries/decks/make-music/make-music-make-song.gif rename to src/lib/libraries/decks/steps/music-make-song.en.gif diff --git a/src/lib/libraries/decks/steps/music-make-song.es.gif b/src/lib/libraries/decks/steps/music-make-song.es.gif new file mode 100755 index 000000000..56591ea06 Binary files /dev/null and b/src/lib/libraries/decks/steps/music-make-song.es.gif differ diff --git a/src/lib/libraries/decks/make-music/make-music-pick-instrument.gif b/src/lib/libraries/decks/steps/music-pick-instrument.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/make-music/make-music-pick-instrument.gif rename to src/lib/libraries/decks/steps/music-pick-instrument.en.gif diff --git a/src/lib/libraries/decks/steps/music-pick-instrument.es.gif b/src/lib/libraries/decks/steps/music-pick-instrument.es.gif new file mode 100755 index 000000000..e496d57f2 Binary files /dev/null and b/src/lib/libraries/decks/steps/music-pick-instrument.es.gif differ diff --git a/src/lib/libraries/decks/make-music/make-music-play-sound.gif b/src/lib/libraries/decks/steps/music-play-sound.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/make-music/make-music-play-sound.gif rename to src/lib/libraries/decks/steps/music-play-sound.en.gif diff --git a/src/lib/libraries/decks/steps/music-play-sound.es.gif b/src/lib/libraries/decks/steps/music-play-sound.es.gif new file mode 100755 index 000000000..2bf03fa1c Binary files /dev/null and b/src/lib/libraries/decks/steps/music-play-sound.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-change-color.gif b/src/lib/libraries/decks/steps/name-change-color.en.gif similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-change-color.gif rename to src/lib/libraries/decks/steps/name-change-color.en.gif diff --git a/src/lib/libraries/decks/steps/name-change-color.es.gif b/src/lib/libraries/decks/steps/name-change-color.es.gif new file mode 100755 index 000000000..6b8755c6f Binary files /dev/null and b/src/lib/libraries/decks/steps/name-change-color.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-grow.gif b/src/lib/libraries/decks/steps/name-grow.en.gif similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-grow.gif rename to src/lib/libraries/decks/steps/name-grow.en.gif diff --git a/src/lib/libraries/decks/steps/name-grow.es.gif b/src/lib/libraries/decks/steps/name-grow.es.gif new file mode 100755 index 000000000..921d2e546 Binary files /dev/null and b/src/lib/libraries/decks/steps/name-grow.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-pick-a-letter.gif b/src/lib/libraries/decks/steps/name-pick-letter.en.gif similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-pick-a-letter.gif rename to src/lib/libraries/decks/steps/name-pick-letter.en.gif diff --git a/src/lib/libraries/decks/steps/name-pick-letter.es.gif b/src/lib/libraries/decks/steps/name-pick-letter.es.gif new file mode 100755 index 000000000..1afdf64de Binary files /dev/null and b/src/lib/libraries/decks/steps/name-pick-letter.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-pick-a-letter2.gif b/src/lib/libraries/decks/steps/name-pick-letter2.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-pick-a-letter2.gif rename to src/lib/libraries/decks/steps/name-pick-letter2.en.gif diff --git a/src/lib/libraries/decks/steps/name-pick-letter2.es.gif b/src/lib/libraries/decks/steps/name-pick-letter2.es.gif new file mode 100755 index 000000000..4c5131457 Binary files /dev/null and b/src/lib/libraries/decks/steps/name-pick-letter2.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-play-sound.gif b/src/lib/libraries/decks/steps/name-play-sound.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-play-sound.gif rename to src/lib/libraries/decks/steps/name-play-sound.en.gif diff --git a/src/lib/libraries/decks/steps/name-play-sound.es.gif b/src/lib/libraries/decks/steps/name-play-sound.es.gif new file mode 100755 index 000000000..2abcebdaf Binary files /dev/null and b/src/lib/libraries/decks/steps/name-play-sound.es.gif differ diff --git a/src/lib/libraries/decks/animate/animate-name-spin.gif b/src/lib/libraries/decks/steps/name-spin.en.gif similarity index 100% rename from src/lib/libraries/decks/animate/animate-name-spin.gif rename to src/lib/libraries/decks/steps/name-spin.en.gif diff --git a/src/lib/libraries/decks/steps/name-spin.es.gif b/src/lib/libraries/decks/steps/name-spin.es.gif new file mode 100755 index 000000000..6250ed9b1 Binary files /dev/null and b/src/lib/libraries/decks/steps/name-spin.es.gif differ diff --git a/src/lib/libraries/decks/game/game-add-score.gif b/src/lib/libraries/decks/steps/pop-game-add-score.en.gif similarity index 100% rename from src/lib/libraries/decks/game/game-add-score.gif rename to src/lib/libraries/decks/steps/pop-game-add-score.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-add-score.es.gif b/src/lib/libraries/decks/steps/pop-game-add-score.es.gif new file mode 100755 index 000000000..b0e2ea834 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-add-score.es.gif differ diff --git a/src/lib/libraries/decks/game/game-change-color.gif b/src/lib/libraries/decks/steps/pop-game-change-color.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/game/game-change-color.gif rename to src/lib/libraries/decks/steps/pop-game-change-color.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-change-color.es.gif b/src/lib/libraries/decks/steps/pop-game-change-color.es.gif new file mode 100755 index 000000000..deb7c804b Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-change-color.es.gif differ diff --git a/src/lib/libraries/decks/game/game-change-score.gif b/src/lib/libraries/decks/steps/pop-game-change-score.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/game/game-change-score.gif rename to src/lib/libraries/decks/steps/pop-game-change-score.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-change-score.es.gif b/src/lib/libraries/decks/steps/pop-game-change-score.es.gif new file mode 100755 index 000000000..55d062158 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-change-score.es.gif differ diff --git a/src/lib/libraries/decks/game/game-pick-sprite.gif b/src/lib/libraries/decks/steps/pop-game-pick-sprite.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/game/game-pick-sprite.gif rename to src/lib/libraries/decks/steps/pop-game-pick-sprite.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-pick-sprite.es.gif b/src/lib/libraries/decks/steps/pop-game-pick-sprite.es.gif new file mode 100755 index 000000000..bf773eb27 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-pick-sprite.es.gif differ diff --git a/src/lib/libraries/decks/game/game-play-sound.gif b/src/lib/libraries/decks/steps/pop-game-play-sound.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/game/game-play-sound.gif rename to src/lib/libraries/decks/steps/pop-game-play-sound.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-play-sound.es.gif b/src/lib/libraries/decks/steps/pop-game-play-sound.es.gif new file mode 100755 index 000000000..b7dff0c73 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-play-sound.es.gif differ diff --git a/src/lib/libraries/decks/game/game-random-position.gif b/src/lib/libraries/decks/steps/pop-game-random-position.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/game/game-random-position.gif rename to src/lib/libraries/decks/steps/pop-game-random-position.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-random-position.es.gif b/src/lib/libraries/decks/steps/pop-game-random-position.es.gif new file mode 100755 index 000000000..d02f8adb1 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-random-position.es.gif differ diff --git a/src/lib/libraries/decks/game/game-reset-score.gif b/src/lib/libraries/decks/steps/pop-game-reset-score.en.gif similarity index 100% rename from src/lib/libraries/decks/game/game-reset-score.gif rename to src/lib/libraries/decks/steps/pop-game-reset-score.en.gif diff --git a/src/lib/libraries/decks/steps/pop-game-reset-score.es.gif b/src/lib/libraries/decks/steps/pop-game-reset-score.es.gif new file mode 100755 index 000000000..2d5e0b433 Binary files /dev/null and b/src/lib/libraries/decks/steps/pop-game-reset-score.es.gif differ diff --git a/src/lib/libraries/decks/txt/05_hoc-add-backdrop.gif b/src/lib/libraries/decks/steps/speech-add-backdrop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/05_hoc-add-backdrop.gif rename to src/lib/libraries/decks/steps/speech-add-backdrop.en.gif diff --git a/src/lib/libraries/decks/txt/01_hoc-add-extensions.gif b/src/lib/libraries/decks/steps/speech-add-extension.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/01_hoc-add-extensions.gif rename to src/lib/libraries/decks/steps/speech-add-extension.en.gif diff --git a/src/lib/libraries/decks/txt/06_hoc-add-character.gif b/src/lib/libraries/decks/steps/speech-add-sprite.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/06_hoc-add-character.gif rename to src/lib/libraries/decks/steps/speech-add-sprite.en.gif diff --git a/src/lib/libraries/decks/txt/08_hoc-color-click.gif b/src/lib/libraries/decks/steps/speech-change-color.en.gif similarity index 100% rename from src/lib/libraries/decks/txt/08_hoc-color-click.gif rename to src/lib/libraries/decks/steps/speech-change-color.en.gif diff --git a/src/lib/libraries/decks/txt/10_hoc-grow-shrink.gif b/src/lib/libraries/decks/steps/speech-grow-shrink.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/10_hoc-grow-shrink.gif rename to src/lib/libraries/decks/steps/speech-grow-shrink.en.gif diff --git a/src/lib/libraries/decks/txt/04_hoc-move-around.gif b/src/lib/libraries/decks/steps/speech-move-around.en.gif similarity index 100% rename from src/lib/libraries/decks/txt/04_hoc-move-around.gif rename to src/lib/libraries/decks/steps/speech-move-around.en.gif diff --git a/src/lib/libraries/decks/txt/02_hoc-say-something.gif b/src/lib/libraries/decks/steps/speech-say-something.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/02_hoc-say-something.gif rename to src/lib/libraries/decks/steps/speech-say-something.en.gif diff --git a/src/lib/libraries/decks/txt/03_hoc-set-voice.gif b/src/lib/libraries/decks/steps/speech-set-voice.en.gif similarity index 100% rename from src/lib/libraries/decks/txt/03_hoc-set-voice.gif rename to src/lib/libraries/decks/steps/speech-set-voice.en.gif diff --git a/src/lib/libraries/decks/txt/07_hoc-perform-song.gif b/src/lib/libraries/decks/steps/speech-song.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/txt/07_hoc-perform-song.gif rename to src/lib/libraries/decks/steps/speech-song.en.gif diff --git a/src/lib/libraries/decks/txt/09_hoc-spin.gif b/src/lib/libraries/decks/steps/speech-spin.en.gif similarity index 100% rename from src/lib/libraries/decks/txt/09_hoc-spin.gif rename to src/lib/libraries/decks/steps/speech-spin.en.gif diff --git a/src/lib/libraries/decks/story/story-conversation.gif b/src/lib/libraries/decks/steps/story-conversation.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-conversation.gif rename to src/lib/libraries/decks/steps/story-conversation.en.gif diff --git a/src/lib/libraries/decks/steps/story-conversation.es.gif b/src/lib/libraries/decks/steps/story-conversation.es.gif new file mode 100755 index 000000000..6fa323113 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-conversation.es.gif differ diff --git a/src/lib/libraries/decks/story/story-flip.gif b/src/lib/libraries/decks/steps/story-flip.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-flip.gif rename to src/lib/libraries/decks/steps/story-flip.en.gif diff --git a/src/lib/libraries/decks/steps/story-flip.es.gif b/src/lib/libraries/decks/steps/story-flip.es.gif new file mode 100755 index 000000000..f7cdd33e5 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-flip.es.gif differ diff --git a/src/lib/libraries/decks/story/story-hide-character.gif b/src/lib/libraries/decks/steps/story-hide-character.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-hide-character.gif rename to src/lib/libraries/decks/steps/story-hide-character.en.gif diff --git a/src/lib/libraries/decks/steps/story-hide-character.es.gif b/src/lib/libraries/decks/steps/story-hide-character.es.gif new file mode 100755 index 000000000..8b9876f21 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-hide-character.es.gif differ diff --git a/src/lib/libraries/decks/story/story-pick-backdrop.gif b/src/lib/libraries/decks/steps/story-pick-backdrop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-pick-backdrop.gif rename to src/lib/libraries/decks/steps/story-pick-backdrop.en.gif diff --git a/src/lib/libraries/decks/steps/story-pick-backdrop.es.gif b/src/lib/libraries/decks/steps/story-pick-backdrop.es.gif new file mode 100755 index 000000000..b4315f51c Binary files /dev/null and b/src/lib/libraries/decks/steps/story-pick-backdrop.es.gif differ diff --git a/src/lib/libraries/decks/story/story-add-background-2.gif b/src/lib/libraries/decks/steps/story-pick-backdrop2.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-add-background-2.gif rename to src/lib/libraries/decks/steps/story-pick-backdrop2.en.gif diff --git a/src/lib/libraries/decks/steps/story-pick-backdrop2.es.gif b/src/lib/libraries/decks/steps/story-pick-backdrop2.es.gif new file mode 100755 index 000000000..8004e7532 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-pick-backdrop2.es.gif differ diff --git a/src/lib/libraries/decks/story/story-pick-sprite.gif b/src/lib/libraries/decks/steps/story-pick-sprite.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-pick-sprite.gif rename to src/lib/libraries/decks/steps/story-pick-sprite.en.gif diff --git a/src/lib/libraries/decks/steps/story-pick-sprite.es.gif b/src/lib/libraries/decks/steps/story-pick-sprite.es.gif new file mode 100755 index 000000000..664da7e6f Binary files /dev/null and b/src/lib/libraries/decks/steps/story-pick-sprite.es.gif differ diff --git a/src/lib/libraries/decks/story/story-pick-another-sprite.gif b/src/lib/libraries/decks/steps/story-pick-sprite2.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-pick-another-sprite.gif rename to src/lib/libraries/decks/steps/story-pick-sprite2.en.gif diff --git a/src/lib/libraries/decks/steps/story-pick-sprite2.es.gif b/src/lib/libraries/decks/steps/story-pick-sprite2.es.gif new file mode 100755 index 000000000..80fcda586 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-pick-sprite2.es.gif differ diff --git a/src/lib/libraries/decks/story/story-say-something.gif b/src/lib/libraries/decks/steps/story-say-something.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-say-something.gif rename to src/lib/libraries/decks/steps/story-say-something.en.gif diff --git a/src/lib/libraries/decks/steps/story-say-something.es.gif b/src/lib/libraries/decks/steps/story-say-something.es.gif new file mode 100755 index 000000000..147872217 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-say-something.es.gif differ diff --git a/src/lib/libraries/decks/story/story-show-character.gif b/src/lib/libraries/decks/steps/story-show-character.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-show-character.gif rename to src/lib/libraries/decks/steps/story-show-character.en.gif diff --git a/src/lib/libraries/decks/steps/story-show-character.es.gif b/src/lib/libraries/decks/steps/story-show-character.es.gif new file mode 100755 index 000000000..3c98bea6e Binary files /dev/null and b/src/lib/libraries/decks/steps/story-show-character.es.gif differ diff --git a/src/lib/libraries/decks/story/story-switch-backdrop.gif b/src/lib/libraries/decks/steps/story-switch-backdrop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/story/story-switch-backdrop.gif rename to src/lib/libraries/decks/steps/story-switch-backdrop.en.gif diff --git a/src/lib/libraries/decks/steps/story-switch-backdrop.es.gif b/src/lib/libraries/decks/steps/story-switch-backdrop.es.gif new file mode 100755 index 000000000..283305361 Binary files /dev/null and b/src/lib/libraries/decks/steps/story-switch-backdrop.es.gif differ diff --git a/src/lib/libraries/decks/videosensing/videosens-add-extension.gif b/src/lib/libraries/decks/steps/video-add-extension.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/videosensing/videosens-add-extension.gif rename to src/lib/libraries/decks/steps/video-add-extension.en.gif diff --git a/src/lib/libraries/decks/steps/video-add-extension.es.gif b/src/lib/libraries/decks/steps/video-add-extension.es.gif new file mode 100755 index 000000000..3b64c00d1 Binary files /dev/null and b/src/lib/libraries/decks/steps/video-add-extension.es.gif differ diff --git a/src/lib/libraries/decks/videosensing/videosens-animate.gif b/src/lib/libraries/decks/steps/video-animate.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/videosensing/videosens-animate.gif rename to src/lib/libraries/decks/steps/video-animate.en.gif diff --git a/src/lib/libraries/decks/steps/video-animate.es.gif b/src/lib/libraries/decks/steps/video-animate.es.gif new file mode 100755 index 000000000..cf67f5a89 Binary files /dev/null and b/src/lib/libraries/decks/steps/video-animate.es.gif differ diff --git a/src/lib/libraries/decks/videosensing/videosens-pet-cat.gif b/src/lib/libraries/decks/steps/video-pet.en.gif similarity index 100% rename from src/lib/libraries/decks/videosensing/videosens-pet-cat.gif rename to src/lib/libraries/decks/steps/video-pet.en.gif diff --git a/src/lib/libraries/decks/steps/video-pet.es.gif b/src/lib/libraries/decks/steps/video-pet.es.gif new file mode 100755 index 000000000..6370bf500 Binary files /dev/null and b/src/lib/libraries/decks/steps/video-pet.es.gif differ diff --git a/src/lib/libraries/decks/videosensing/videosens-pop.gif b/src/lib/libraries/decks/steps/video-pop.en.gif old mode 100755 new mode 100644 similarity index 100% rename from src/lib/libraries/decks/videosensing/videosens-pop.gif rename to src/lib/libraries/decks/steps/video-pop.en.gif diff --git a/src/lib/libraries/decks/steps/video-pop.es.gif b/src/lib/libraries/decks/steps/video-pop.es.gif new file mode 100755 index 000000000..e008255c5 Binary files /dev/null and b/src/lib/libraries/decks/steps/video-pop.es.gif differ diff --git a/src/lib/libraries/decks/videos/add-backdrop.jpg b/src/lib/libraries/decks/thumbnails/add-backdrop.jpg similarity index 100% rename from src/lib/libraries/decks/videos/add-backdrop.jpg rename to src/lib/libraries/decks/thumbnails/add-backdrop.jpg diff --git a/src/lib/libraries/decks/videos/add-effects.jpg b/src/lib/libraries/decks/thumbnails/add-effects.jpg similarity index 100% rename from src/lib/libraries/decks/videos/add-effects.jpg rename to src/lib/libraries/decks/thumbnails/add-effects.jpg diff --git a/src/lib/libraries/decks/sprite/cover-add-sprite.jpg b/src/lib/libraries/decks/thumbnails/add-sprite.jpg similarity index 100% rename from src/lib/libraries/decks/sprite/cover-add-sprite.jpg rename to src/lib/libraries/decks/thumbnails/add-sprite.jpg diff --git a/src/lib/libraries/decks/animate-char/lib_Animate_a_Character.jpg b/src/lib/libraries/decks/thumbnails/animate-a-character.jpg similarity index 100% rename from src/lib/libraries/decks/animate-char/lib_Animate_a_Character.jpg rename to src/lib/libraries/decks/thumbnails/animate-a-character.jpg diff --git a/src/lib/libraries/decks/animate/lib_animate-a-name.jpg b/src/lib/libraries/decks/thumbnails/animate-a-name.jpg similarity index 100% rename from src/lib/libraries/decks/animate/lib_animate-a-name.jpg rename to src/lib/libraries/decks/thumbnails/animate-a-name.jpg diff --git a/src/lib/libraries/decks/videos/animate-sprite.jpg b/src/lib/libraries/decks/thumbnails/animate-sprite.jpg similarity index 100% rename from src/lib/libraries/decks/videos/animate-sprite.jpg rename to src/lib/libraries/decks/thumbnails/animate-sprite.jpg diff --git a/src/lib/libraries/decks/cartoonnetwork/lib_CartoonNetwork.jpg b/src/lib/libraries/decks/thumbnails/cartoon-network.jpg similarity index 100% rename from src/lib/libraries/decks/cartoonnetwork/lib_CartoonNetwork.jpg rename to src/lib/libraries/decks/thumbnails/cartoon-network.jpg diff --git a/src/lib/libraries/decks/videos/change-size.jpg b/src/lib/libraries/decks/thumbnails/change-size.jpg similarity index 100% rename from src/lib/libraries/decks/videos/change-size.jpg rename to src/lib/libraries/decks/thumbnails/change-size.jpg diff --git a/src/lib/libraries/decks/chase-game/lib-chasegame.jpg b/src/lib/libraries/decks/thumbnails/chase-game.jpg similarity index 100% rename from src/lib/libraries/decks/chase-game/lib-chasegame.jpg rename to src/lib/libraries/decks/thumbnails/chase-game.jpg diff --git a/src/lib/libraries/decks/intro/lib-getting-started.jpg b/src/lib/libraries/decks/thumbnails/getting-started.jpg similarity index 100% rename from src/lib/libraries/decks/intro/lib-getting-started.jpg rename to src/lib/libraries/decks/thumbnails/getting-started.jpg diff --git a/src/lib/libraries/decks/videos/glide-around.jpg b/src/lib/libraries/decks/thumbnails/glide-around.jpg similarity index 100% rename from src/lib/libraries/decks/videos/glide-around.jpg rename to src/lib/libraries/decks/thumbnails/glide-around.jpg diff --git a/src/lib/libraries/decks/videos/hide-and-show.jpg b/src/lib/libraries/decks/thumbnails/hide-and-show.jpg similarity index 100% rename from src/lib/libraries/decks/videos/hide-and-show.jpg rename to src/lib/libraries/decks/thumbnails/hide-and-show.jpg diff --git a/src/lib/libraries/decks/make-music/lib-make-music.jpg b/src/lib/libraries/decks/thumbnails/make-music.jpg similarity index 100% rename from src/lib/libraries/decks/make-music/lib-make-music.jpg rename to src/lib/libraries/decks/thumbnails/make-music.jpg diff --git a/src/lib/libraries/decks/videos/move-arrow-keys.jpg b/src/lib/libraries/decks/thumbnails/move-arrow-keys.jpg similarity index 100% rename from src/lib/libraries/decks/videos/move-arrow-keys.jpg rename to src/lib/libraries/decks/thumbnails/move-arrow-keys.jpg diff --git a/src/lib/libraries/decks/game/lib-pop.jpg b/src/lib/libraries/decks/thumbnails/pop-game.jpg similarity index 100% rename from src/lib/libraries/decks/game/lib-pop.jpg rename to src/lib/libraries/decks/thumbnails/pop-game.jpg diff --git a/src/lib/libraries/decks/videos/record-a-sound.jpg b/src/lib/libraries/decks/thumbnails/record-a-sound.jpg similarity index 100% rename from src/lib/libraries/decks/videos/record-a-sound.jpg rename to src/lib/libraries/decks/thumbnails/record-a-sound.jpg diff --git a/src/lib/libraries/decks/videos/spin.jpg b/src/lib/libraries/decks/thumbnails/spin.jpg similarity index 100% rename from src/lib/libraries/decks/videos/spin.jpg rename to src/lib/libraries/decks/thumbnails/spin.jpg diff --git a/src/lib/libraries/decks/story/lib-tell-a-story.jpg b/src/lib/libraries/decks/thumbnails/tell-a-story.jpg similarity index 100% rename from src/lib/libraries/decks/story/lib-tell-a-story.jpg rename to src/lib/libraries/decks/thumbnails/tell-a-story.jpg diff --git a/src/lib/libraries/decks/txt/lib_txt-to-speech.jpg b/src/lib/libraries/decks/thumbnails/text-to-speech.jpg similarity index 100% rename from src/lib/libraries/decks/txt/lib_txt-to-speech.jpg rename to src/lib/libraries/decks/thumbnails/text-to-speech.jpg diff --git a/src/lib/libraries/decks/videosensing/lib_video_sensing.jpg b/src/lib/libraries/decks/thumbnails/video-sensing.jpg similarity index 100% rename from src/lib/libraries/decks/videosensing/lib_video_sensing.jpg rename to src/lib/libraries/decks/thumbnails/video-sensing.jpg diff --git a/src/lib/libraries/decks/translate-image.js b/src/lib/libraries/decks/translate-image.js new file mode 100644 index 000000000..d64965a18 --- /dev/null +++ b/src/lib/libraries/decks/translate-image.js @@ -0,0 +1,45 @@ +/** + * @fileoverview + * Utility functions for handling tutorial images in multiple languages + */ + +import {enImages as defaultImages} from './en-steps.js'; + +let savedImages = {}; +let savedLocale = ''; + +const loadSpanish = () => + import(/* webpackChunkName: "es-steps" */ './es-steps.js') + .then(({esImages: imageData}) => imageData); + +const translations = { + es: () => loadSpanish() +}; + +const loadImageData = locale => { + if (translations.hasOwnProperty(locale)) { + translations[locale]() + .then(newImages => { + savedImages = newImages; + savedLocale = locale; + }); + } +}; + +/** + * Return image data for tutorials based on locale (default: en) + * @param {string} imageId key in the images object, or id string. + * @param {string} locale requested locale + * @return {string} image + */ +const translateImage = (imageId, locale) => { + if (locale !== savedLocale || !savedImages.hasOwnProperty(imageId)) { + return defaultImages[imageId]; + } + return savedImages[imageId]; +}; + +export { + loadImageData, + translateImage +}; diff --git a/src/lib/libraries/decks/videosensing/animate-char-jump.gif b/src/lib/libraries/decks/videosensing/animate-char-jump.gif deleted file mode 100644 index 38c2441ba..000000000 Binary files a/src/lib/libraries/decks/videosensing/animate-char-jump.gif and /dev/null differ diff --git a/webpack.config.js b/webpack.config.js index d6218176f..4618d5e41 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -22,7 +22,8 @@ const base = { }, output: { library: 'GUI', - filename: '[name].js' + filename: '[name].js', + chunkFilename: 'chunks/[name].js' }, externals: { React: 'react', @@ -189,7 +190,8 @@ module.exports = [ }, output: { libraryTarget: 'umd', - path: path.resolve('dist') + path: path.resolve('dist'), + publicPath: '/static/' }, externals: { React: 'react',