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/en-steps.js b/src/lib/libraries/decks/en-steps.js new file mode 100644 index 000000000..286f451c4 --- /dev/null +++ b/src/lib/libraries/decks/en-steps.js @@ -0,0 +1,189 @@ +// Intro +import stepMove from './intro/intro1.gif'; +import stepMoveSayHello from './intro/intro2.gif'; + +// Text to Speech +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'; + +// Cartoon Network +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'; + +// Add sprite +import stepAddSprite from './sprite/intro-choose-sprite.gif'; + +// Animate a name +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'; + +// Make-Music +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'; + +// Chase-Game +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'; + +// Make-A-Game +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'; + +// Animate A Character +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'; + +// Tell A Story +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'; + +// Video Sensing +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'; + +const enImages = { + // Intro + stepMove: stepMove, + stepMoveSayHello: stepMoveSayHello, + + // Text to Speech + stepAddTXTextension: stepAddTXTextension, + stepTXTSpeech: stepTXTSpeech, + stepTXTSetVoice: stepTXTSetVoice, + stepTXTMove: stepTXTMove, + stepTXTBackdrop: stepTXTBackdrop, + stepTXTAddSprite: stepTXTAddSprite, + stepTXTSong: stepTXTSong, + stepTXTColor: stepTXTColor, + stepTXTSpin: stepTXTSpin, + stepTXTGrow: stepTXTGrow, + + // Cartoon Network + stepCNcharacter: stepCNcharacter, + stepCNsay: stepCNsay, + stepCNglide: stepCNglide, + stepCNpicksprite: stepCNpicksprite, + stepCNcollect: stepCNcollect, + stepCNvariable: stepCNvariable, + stepCNscore: stepCNscore, + stepCNbackdrop: stepCNbackdrop, + + // Add sprite + stepAddSprite: stepAddSprite, + + // Animate a name + stepAnimatePickLetter: stepAnimatePickLetter, + stepAnimatePlaySound: stepAnimatePlaySound, + stepAnimatePickLetter2: stepAnimatePickLetter2, + stepAnimateChangeColor: stepAnimateChangeColor, + stepAnimateSpin: stepAnimateSpin, + stepAnimateGrow: stepAnimateGrow, + + + // Make-Music + stepPickInstrument: stepPickInstrument, + stepPlaySoundClick: stepPlaySoundClick, + stepMakeSong: stepMakeSong, + stepMakeBeat: stepMakeBeat, + stepMakeBeatbox: stepMakeBeatbox, + + // Chase-Game + stepBG: stepBG, + stepAddOcto: stepAddOcto, + stepLeftRight: stepLeftRight, + stepUpDown: stepUpDown, + stepAddStar: stepAddStar, + stepMoveRandom: stepMoveRandom, + stepWhenTouch: stepWhenTouch, + stepScoreVariable: stepScoreVariable, + stepScoreWhenTouch: stepScoreWhenTouch, + + // Make-A-Game + stepGamePickSprite: stepGamePickSprite, + stepGamePlaySound: stepGamePlaySound, + stepGameAddScore: stepGameAddScore, + stepGameChangeScore: stepGameChangeScore, + stepRandom: stepRandom, + stepGameChangeColor: stepGameChangeColor, + stepResetScore: stepResetScore, + + // Animate A Character + stepAnimateCharPickBackdrop: stepAnimateCharPickBackdrop, + stepAnimateCharPickSprite: stepAnimateCharPickSprite, + stepAnimateCharSaySomething: stepAnimateCharSaySomething, + stepAnimateCharAddSound: stepAnimateCharAddSound, + stepAnimateCharTalk: stepAnimateCharTalk, + stepAnimateCharMove: stepAnimateCharMove, + stepAnimateCharJump: stepAnimateCharJump, + stepAnimateCharChangeColor: stepAnimateCharChangeColor, + + // Tell A Story + stepStoryPickBackdrop: stepStoryPickBackdrop, + stepStoryPickSprite: stepStoryPickSprite, + stepStoryCharSaySomething: stepStoryCharSaySomething, + stepStoryCharAddAnotherSprite: stepStoryCharAddAnotherSprite, + stepStoryFlip: stepStoryFlip, + stepStoryConversation: stepStoryConversation, + stepStoryAddAnotherBackdrop: stepStoryAddAnotherBackdrop, + stepStorySwitchBackdrop: stepStorySwitchBackdrop, + stepStoryHide: stepStoryHide, + stepStoryShow: stepStoryShow, + + // Video Sensing + stepVideoSensAddExtension: stepVideoSensAddExtension, + stepVideoSensPet: stepVideoSensPet, + stepVideoSensAnimate: stepVideoSensAnimate, + stepVideoSensPop: stepVideoSensPop + +}; + +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..7eba42472 --- /dev/null +++ b/src/lib/libraries/decks/es-steps.js @@ -0,0 +1,187 @@ +// Intro +import stepMove from './es/intro1.gif'; +import stepMoveSayHello from './es/intro2.gif'; + +// // Text to Speech +// 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'; + +// // Cartoon Network +// 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'; + +// Add sprite +import stepAddSprite from './es/intro-choose-sprite.gif'; + +// Animate a name +import stepAnimatePickLetter from './es/animate-name-pick-a-letter.gif'; +import stepAnimatePlaySound from './es/animate-name-play-sound.gif'; +import stepAnimatePickLetter2 from './es/animate-name-pick-a-letter2.gif'; +import stepAnimateChangeColor from './es/animate-name-change-color.gif'; +import stepAnimateSpin from './es/animate-name-spin.gif'; +import stepAnimateGrow from './es/animate-name-grow.gif'; + +// Make-Music +import stepPickInstrument from './es/make-music-pick-instrument.gif'; +import stepPlaySoundClick from './es/make-music-play-sound.gif'; +import stepMakeSong from './es/make-music-make-song.gif'; +import stepMakeBeat from './es/make-music-make-beat.gif'; +import stepMakeBeatbox from './es/make-music-beatbox.gif'; + +// Chase-Game +import stepBG from './es/chase-game-add-backdrop.gif'; +import stepAddOcto from './es/chase-game-add-sprite1.gif'; +import stepLeftRight from './es/chase-game-move-rightleft.gif'; +import stepUpDown from './es/chase-game-move-updown.gif'; +import stepAddStar from './es/chase-game-add-sprite2.gif'; +import stepMoveRandom from './es/chase-game-move-randomly.gif'; +import stepWhenTouch from './es/chase-game-touching.gif'; +import stepScoreVariable from './es/chase-game-add-variable.gif'; +import stepScoreWhenTouch from './es/chase-game-change-score.gif'; + +// Make-A-Game +import stepGamePickSprite from './es/game-pick-sprite.gif'; +import stepGamePlaySound from './es/game-play-sound.gif'; +import stepGameAddScore from './es/game-add-score.gif'; +import stepGameChangeScore from './es/game-change-score.gif'; +import stepRandom from './es/game-random-position.gif'; +import stepGameChangeColor from './es/game-change-color.gif'; +import stepResetScore from './es/game-reset-score.gif'; + +// Animate A Character +import stepAnimateCharPickBackdrop from './es/animate-char-pick-backdrop.gif'; +import stepAnimateCharPickSprite from './es/animate-char-pick-sprite.gif'; +import stepAnimateCharSaySomething from './es/animate-char-say-something.gif'; +import stepAnimateCharAddSound from './es/animate-char-add-sound.gif'; +import stepAnimateCharTalk from './es/animate-char-talk.gif'; +import stepAnimateCharMove from './es/animate-char-move.gif'; +import stepAnimateCharJump from './es/animate-char-jump.gif'; +import stepAnimateCharChangeColor from './es/animate-char-change-color.gif'; + +// Tell A Story +import stepStoryPickBackdrop from './es/story-pick-backdrop.gif'; +import stepStoryPickSprite from './es/story-pick-sprite.gif'; +import stepStoryCharSaySomething from './es/story-say-something.gif'; +import stepStoryCharAddAnotherSprite from './es/story-pick-another-sprite.gif'; +import stepStoryFlip from './es/story-flip.gif'; +import stepStoryConversation from './es/story-conversation.gif'; +import stepStoryAddAnotherBackdrop from './es/story-add-background-2.gif'; +import stepStorySwitchBackdrop from './es/story-switch-backdrop.gif'; +import stepStoryHide from './es/story-hide-character.gif'; +import stepStoryShow from './es/story-show-character.gif'; + +// Video Sensing +import stepVideoSensAddExtension from './es/videosens-add-extension.gif'; +import stepVideoSensPet from './es/videosens-pet-cat.gif'; +import stepVideoSensAnimate from './es/videosens-animate.gif'; +import stepVideoSensPop from './es/videosens-pop.gif'; + +export default { + // Intro + stepMove: stepMove, + stepMoveSayHello: stepMoveSayHello, + + // // Text to Speech + // stepAddTXTextension: stepAddTXTextension, + // stepTXTSpeech: stepTXTSpeech, + // stepTXTSetVoice: stepTXTSetVoice, + // stepTXTMove: stepTXTMove, + // stepTXTBackdrop: stepTXTBackdrop, + // stepTXTAddSprite: stepTXTAddSprite, + // stepTXTSong: stepTXTSong, + // stepTXTColor: stepTXTColor, + // stepTXTSpin: stepTXTSpin, + // stepTXTGrow: stepTXTGrow, + // + // // Cartoon Network + // stepCNcharacter: stepCNcharacter, + // stepCNsay: stepCNsay, + // stepCNglide: stepCNglide, + // stepCNpicksprite: stepCNpicksprite, + // stepCNcollect: stepCNcollect, + // stepCNvariable: stepCNvariable, + // stepCNscore: stepCNscore, + // stepCNbackdrop: stepCNbackdrop, + + // Add sprite + stepAddSprite: stepAddSprite, + + // Animate a name + stepAnimatePickLetter: stepAnimatePickLetter, + stepAnimatePlaySound: stepAnimatePlaySound, + stepAnimatePickLetter2: stepAnimatePickLetter2, + stepAnimateChangeColor: stepAnimateChangeColor, + stepAnimateSpin: stepAnimateSpin, + stepAnimateGrow: stepAnimateGrow, + + + // Make-Music + stepPickInstrument: stepPickInstrument, + stepPlaySoundClick: stepPlaySoundClick, + stepMakeSong: stepMakeSong, + stepMakeBeat: stepMakeBeat, + stepMakeBeatbox: stepMakeBeatbox, + + // Chase-Game + stepBG: stepBG, + stepAddOcto: stepAddOcto, + stepLeftRight: stepLeftRight, + stepUpDown: stepUpDown, + stepAddStar: stepAddStar, + stepMoveRandom: stepMoveRandom, + stepWhenTouch: stepWhenTouch, + stepScoreVariable: stepScoreVariable, + stepScoreWhenTouch: stepScoreWhenTouch, + + // Make-A-Game + stepGamePickSprite: stepGamePickSprite, + stepGamePlaySound: stepGamePlaySound, + stepGameAddScore: stepGameAddScore, + stepGameChangeScore: stepGameChangeScore, + stepRandom: stepRandom, + stepGameChangeColor: stepGameChangeColor, + stepResetScore: stepResetScore, + + // Animate A Character + stepAnimateCharPickBackdrop: stepAnimateCharPickBackdrop, + stepAnimateCharPickSprite: stepAnimateCharPickSprite, + stepAnimateCharSaySomething: stepAnimateCharSaySomething, + stepAnimateCharAddSound: stepAnimateCharAddSound, + stepAnimateCharTalk: stepAnimateCharTalk, + stepAnimateCharMove: stepAnimateCharMove, + stepAnimateCharJump: stepAnimateCharJump, + stepAnimateCharChangeColor: stepAnimateCharChangeColor, + + // Tell A Story + stepStoryPickBackdrop: stepStoryPickBackdrop, + stepStoryPickSprite: stepStoryPickSprite, + stepStoryCharSaySomething: stepStoryCharSaySomething, + stepStoryCharAddAnotherSprite: stepStoryCharAddAnotherSprite, + stepStoryFlip: stepStoryFlip, + stepStoryConversation: stepStoryConversation, + stepStoryAddAnotherBackdrop: stepStoryAddAnotherBackdrop, + stepStorySwitchBackdrop: stepStorySwitchBackdrop, + stepStoryHide: stepStoryHide, + stepStoryShow: stepStoryShow, + + // Video Sensing + stepVideoSensAddExtension: stepVideoSensAddExtension, + stepVideoSensPet: stepVideoSensPet, + stepVideoSensAnimate: stepVideoSensAnimate, + stepVideoSensPop: stepVideoSensPop + +}; diff --git a/src/lib/libraries/decks/es/animate-char-add-sound.gif b/src/lib/libraries/decks/es/animate-char-add-sound.gif new file mode 100755 index 000000000..0e73a3138 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-add-sound.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-change-color.gif b/src/lib/libraries/decks/es/animate-char-change-color.gif new file mode 100755 index 000000000..b33d1968b Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-change-color.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-jump.gif b/src/lib/libraries/decks/es/animate-char-jump.gif new file mode 100755 index 000000000..f95a6e741 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-jump.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-move.gif b/src/lib/libraries/decks/es/animate-char-move.gif new file mode 100755 index 000000000..69436c73e Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-move.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-pick-another-sprite.gif b/src/lib/libraries/decks/es/animate-char-pick-another-sprite.gif new file mode 100755 index 000000000..9e943e001 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-pick-another-sprite.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-pick-backdrop.gif b/src/lib/libraries/decks/es/animate-char-pick-backdrop.gif new file mode 100755 index 000000000..5be6c21fc Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-pick-backdrop.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-pick-sprite.gif b/src/lib/libraries/decks/es/animate-char-pick-sprite.gif new file mode 100755 index 000000000..5635b378d Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-pick-sprite.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-say-something.gif b/src/lib/libraries/decks/es/animate-char-say-something.gif new file mode 100755 index 000000000..46eac1479 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-say-something.gif differ diff --git a/src/lib/libraries/decks/es/animate-char-talk.gif b/src/lib/libraries/decks/es/animate-char-talk.gif new file mode 100755 index 000000000..e388d8e6f Binary files /dev/null and b/src/lib/libraries/decks/es/animate-char-talk.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-change-color.gif b/src/lib/libraries/decks/es/animate-name-change-color.gif new file mode 100755 index 000000000..6b8755c6f Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-change-color.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-grow.gif b/src/lib/libraries/decks/es/animate-name-grow.gif new file mode 100755 index 000000000..921d2e546 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-grow.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-pick-a-letter.gif b/src/lib/libraries/decks/es/animate-name-pick-a-letter.gif new file mode 100755 index 000000000..1afdf64de Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-pick-a-letter.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-pick-a-letter2.gif b/src/lib/libraries/decks/es/animate-name-pick-a-letter2.gif new file mode 100755 index 000000000..4c5131457 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-pick-a-letter2.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-play-sound.gif b/src/lib/libraries/decks/es/animate-name-play-sound.gif new file mode 100755 index 000000000..2abcebdaf Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-play-sound.gif differ diff --git a/src/lib/libraries/decks/es/animate-name-spin.gif b/src/lib/libraries/decks/es/animate-name-spin.gif new file mode 100755 index 000000000..6250ed9b1 Binary files /dev/null and b/src/lib/libraries/decks/es/animate-name-spin.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-add-backdrop.gif b/src/lib/libraries/decks/es/chase-game-add-backdrop.gif new file mode 100755 index 000000000..7200a6502 Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-add-backdrop.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-add-sprite1.gif b/src/lib/libraries/decks/es/chase-game-add-sprite1.gif new file mode 100755 index 000000000..b1ca6ebee Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-add-sprite1.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-add-sprite2.gif b/src/lib/libraries/decks/es/chase-game-add-sprite2.gif new file mode 100755 index 000000000..3bebd695d Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-add-sprite2.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-add-variable.gif b/src/lib/libraries/decks/es/chase-game-add-variable.gif new file mode 100755 index 000000000..b0e2ea834 Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-add-variable.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-change-score.gif b/src/lib/libraries/decks/es/chase-game-change-score.gif new file mode 100755 index 000000000..86a6d5a00 Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-change-score.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-move-randomly.gif b/src/lib/libraries/decks/es/chase-game-move-randomly.gif new file mode 100755 index 000000000..1a6fab408 Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-move-randomly.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-move-rightleft.gif b/src/lib/libraries/decks/es/chase-game-move-rightleft.gif new file mode 100755 index 000000000..02fb204fb Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-move-rightleft.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-move-updown.gif b/src/lib/libraries/decks/es/chase-game-move-updown.gif new file mode 100755 index 000000000..2c26c4867 Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-move-updown.gif differ diff --git a/src/lib/libraries/decks/es/chase-game-touching.gif b/src/lib/libraries/decks/es/chase-game-touching.gif new file mode 100755 index 000000000..734611b4f Binary files /dev/null and b/src/lib/libraries/decks/es/chase-game-touching.gif differ diff --git a/src/lib/libraries/decks/es/game-add-score.gif b/src/lib/libraries/decks/es/game-add-score.gif new file mode 100755 index 000000000..b0e2ea834 Binary files /dev/null and b/src/lib/libraries/decks/es/game-add-score.gif differ diff --git a/src/lib/libraries/decks/es/game-change-color.gif b/src/lib/libraries/decks/es/game-change-color.gif new file mode 100755 index 000000000..deb7c804b Binary files /dev/null and b/src/lib/libraries/decks/es/game-change-color.gif differ diff --git a/src/lib/libraries/decks/es/game-change-score.gif b/src/lib/libraries/decks/es/game-change-score.gif new file mode 100755 index 000000000..55d062158 Binary files /dev/null and b/src/lib/libraries/decks/es/game-change-score.gif differ diff --git a/src/lib/libraries/decks/es/game-pick-sprite.gif b/src/lib/libraries/decks/es/game-pick-sprite.gif new file mode 100755 index 000000000..bf773eb27 Binary files /dev/null and b/src/lib/libraries/decks/es/game-pick-sprite.gif differ diff --git a/src/lib/libraries/decks/es/game-play-sound.gif b/src/lib/libraries/decks/es/game-play-sound.gif new file mode 100755 index 000000000..b7dff0c73 Binary files /dev/null and b/src/lib/libraries/decks/es/game-play-sound.gif differ diff --git a/src/lib/libraries/decks/es/game-random-position.gif b/src/lib/libraries/decks/es/game-random-position.gif new file mode 100755 index 000000000..d02f8adb1 Binary files /dev/null and b/src/lib/libraries/decks/es/game-random-position.gif differ diff --git a/src/lib/libraries/decks/es/game-reset-score.gif b/src/lib/libraries/decks/es/game-reset-score.gif new file mode 100755 index 000000000..2d5e0b433 Binary files /dev/null and b/src/lib/libraries/decks/es/game-reset-score.gif differ diff --git a/src/lib/libraries/decks/es/intro-choose-sprite.gif b/src/lib/libraries/decks/es/intro-choose-sprite.gif new file mode 100755 index 000000000..a708a4ae5 Binary files /dev/null and b/src/lib/libraries/decks/es/intro-choose-sprite.gif differ diff --git a/src/lib/libraries/decks/es/intro1.gif b/src/lib/libraries/decks/es/intro1.gif new file mode 100755 index 000000000..860d5f75c Binary files /dev/null and b/src/lib/libraries/decks/es/intro1.gif differ diff --git a/src/lib/libraries/decks/es/intro2.gif b/src/lib/libraries/decks/es/intro2.gif new file mode 100755 index 000000000..bfd825012 Binary files /dev/null and b/src/lib/libraries/decks/es/intro2.gif differ diff --git a/src/lib/libraries/decks/es/make-music-beatbox.gif b/src/lib/libraries/decks/es/make-music-beatbox.gif new file mode 100755 index 000000000..4638b9995 Binary files /dev/null and b/src/lib/libraries/decks/es/make-music-beatbox.gif differ diff --git a/src/lib/libraries/decks/es/make-music-make-beat.gif b/src/lib/libraries/decks/es/make-music-make-beat.gif new file mode 100755 index 000000000..c86c1a1fe Binary files /dev/null and b/src/lib/libraries/decks/es/make-music-make-beat.gif differ diff --git a/src/lib/libraries/decks/es/make-music-make-song.gif b/src/lib/libraries/decks/es/make-music-make-song.gif new file mode 100755 index 000000000..56591ea06 Binary files /dev/null and b/src/lib/libraries/decks/es/make-music-make-song.gif differ diff --git a/src/lib/libraries/decks/es/make-music-pick-instrument.gif b/src/lib/libraries/decks/es/make-music-pick-instrument.gif new file mode 100755 index 000000000..e496d57f2 Binary files /dev/null and b/src/lib/libraries/decks/es/make-music-pick-instrument.gif differ diff --git a/src/lib/libraries/decks/es/make-music-play-sound.gif b/src/lib/libraries/decks/es/make-music-play-sound.gif new file mode 100755 index 000000000..2bf03fa1c Binary files /dev/null and b/src/lib/libraries/decks/es/make-music-play-sound.gif differ diff --git a/src/lib/libraries/decks/es/story-add-background-2.gif b/src/lib/libraries/decks/es/story-add-background-2.gif new file mode 100755 index 000000000..8004e7532 Binary files /dev/null and b/src/lib/libraries/decks/es/story-add-background-2.gif differ diff --git a/src/lib/libraries/decks/es/story-conversation.gif b/src/lib/libraries/decks/es/story-conversation.gif new file mode 100755 index 000000000..6fa323113 Binary files /dev/null and b/src/lib/libraries/decks/es/story-conversation.gif differ diff --git a/src/lib/libraries/decks/es/story-flip.gif b/src/lib/libraries/decks/es/story-flip.gif new file mode 100755 index 000000000..f7cdd33e5 Binary files /dev/null and b/src/lib/libraries/decks/es/story-flip.gif differ diff --git a/src/lib/libraries/decks/es/story-hide-character.gif b/src/lib/libraries/decks/es/story-hide-character.gif new file mode 100755 index 000000000..8b9876f21 Binary files /dev/null and b/src/lib/libraries/decks/es/story-hide-character.gif differ diff --git a/src/lib/libraries/decks/es/story-pick-another-sprite.gif b/src/lib/libraries/decks/es/story-pick-another-sprite.gif new file mode 100755 index 000000000..80fcda586 Binary files /dev/null and b/src/lib/libraries/decks/es/story-pick-another-sprite.gif differ diff --git a/src/lib/libraries/decks/es/story-pick-backdrop.gif b/src/lib/libraries/decks/es/story-pick-backdrop.gif new file mode 100755 index 000000000..b4315f51c Binary files /dev/null and b/src/lib/libraries/decks/es/story-pick-backdrop.gif differ diff --git a/src/lib/libraries/decks/es/story-pick-sprite.gif b/src/lib/libraries/decks/es/story-pick-sprite.gif new file mode 100755 index 000000000..664da7e6f Binary files /dev/null and b/src/lib/libraries/decks/es/story-pick-sprite.gif differ diff --git a/src/lib/libraries/decks/es/story-say-something.gif b/src/lib/libraries/decks/es/story-say-something.gif new file mode 100755 index 000000000..147872217 Binary files /dev/null and b/src/lib/libraries/decks/es/story-say-something.gif differ diff --git a/src/lib/libraries/decks/es/story-show-character.gif b/src/lib/libraries/decks/es/story-show-character.gif new file mode 100755 index 000000000..3c98bea6e Binary files /dev/null and b/src/lib/libraries/decks/es/story-show-character.gif differ diff --git a/src/lib/libraries/decks/es/story-switch-backdrop.gif b/src/lib/libraries/decks/es/story-switch-backdrop.gif new file mode 100755 index 000000000..283305361 Binary files /dev/null and b/src/lib/libraries/decks/es/story-switch-backdrop.gif differ diff --git a/src/lib/libraries/decks/es/videosens-add-extension.gif b/src/lib/libraries/decks/es/videosens-add-extension.gif new file mode 100755 index 000000000..3b64c00d1 Binary files /dev/null and b/src/lib/libraries/decks/es/videosens-add-extension.gif differ diff --git a/src/lib/libraries/decks/es/videosens-animate.gif b/src/lib/libraries/decks/es/videosens-animate.gif new file mode 100755 index 000000000..cf67f5a89 Binary files /dev/null and b/src/lib/libraries/decks/es/videosens-animate.gif differ diff --git a/src/lib/libraries/decks/es/videosens-pet-cat.gif b/src/lib/libraries/decks/es/videosens-pet-cat.gif new file mode 100755 index 000000000..6370bf500 Binary files /dev/null and b/src/lib/libraries/decks/es/videosens-pet-cat.gif differ diff --git a/src/lib/libraries/decks/es/videosens-pop.gif b/src/lib/libraries/decks/es/videosens-pop.gif new file mode 100755 index 000000000..e008255c5 Binary files /dev/null and b/src/lib/libraries/decks/es/videosens-pop.gif differ diff --git a/src/lib/libraries/decks/index.jsx b/src/lib/libraries/decks/index.jsx index 78aeb6f29..3fb7bc236 100644 --- a/src/lib/libraries/decks/index.jsx +++ b/src/lib/libraries/decks/index.jsx @@ -3,107 +3,36 @@ import {FormattedMessage} from 'react-intl'; // Intro import libraryIntro from './intro/lib-getting-started.jpg'; -import stepMove from './intro/intro1.gif'; -import stepMoveSayHello from './intro/intro2.gif'; // 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'; // 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'; // Add sprite import libraryAddSprite from './sprite/cover-add-sprite.jpg'; -import stepAddSprite from './sprite/intro-choose-sprite.gif'; // 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'; - // 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'; // 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'; // 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'; // 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'; // 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'; // 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'; // Videos import recordASound from './videos/record-a-sound.jpg'; @@ -138,7 +67,7 @@ export default { id="gui.howtos.intro-move.step_stepMove" /> ), - image: stepMove + image: 'stepMove' }, { title: ( ), - image: stepMoveSayHello + image: 'stepMoveSayHello' }, { deckIds: [ 'add-a-backdrop', @@ -180,7 +109,7 @@ export default { id="gui.howtos.say-it-out-loud.step_AddTXTextension" /> ), - image: stepAddTXTextension + image: 'stepAddTXTextension' }, { title: ( ), - image: stepTXTSpeech + image: 'stepTXTSpeech' }, { title: ( ), - image: stepTXTSetVoice + image: 'stepTXTSetVoice' }, { title: ( ), - image: stepTXTMove + image: 'stepTXTMove' }, { title: ( ), - image: stepTXTBackdrop + image: 'stepTXTBackdrop' }, { title: ( ), - image: stepTXTAddSprite + image: 'stepTXTAddSprite' }, { title: ( ), - image: stepTXTSong + image: 'stepTXTSong' }, { title: ( ), - image: stepTXTColor + image: 'stepTXTColor' }, { title: ( ), - image: stepTXTSpin + image: 'stepTXTSpin' }, { title: ( ), - image: stepTXTGrow + image: 'stepTXTGrow' }, { deckIds: [ 'animate-a-name', @@ -295,7 +224,7 @@ export default { id="gui.howtos.cartoon-network.step_CNcharacter" /> ), - image: stepCNcharacter + image: 'stepCNcharacter' }, { title: ( ), - image: stepCNsay + image: 'stepCNsay' }, { title: ( ), - image: stepCNglide + image: 'stepCNglide' }, { title: ( ), - image: stepCNpicksprite + image: 'stepCNpicksprite' }, { title: ( ), - image: stepCNcollect + image: 'stepCNcollect' }, { title: ( ), - image: stepCNvariable + image: 'stepCNvariable' }, { title: ( ), - image: stepCNscore + image: 'stepCNscore' }, { title: ( ), - image: stepCNbackdrop + image: 'stepCNbackdrop' }, { video: '6o76f5ivo1' @@ -392,7 +321,7 @@ export default { id="gui.howtos.animate-a-name.step_AnimatePickLetter" /> ), - image: stepAnimatePickLetter + image: 'stepAnimatePickLetter' }, { title: ( ), - image: stepAnimatePlaySound + image: 'stepAnimatePlaySound' }, { title: ( ), - image: stepAnimatePickLetter2 + image: 'stepAnimatePickLetter2' }, { title: ( ), - image: stepAnimateChangeColor + image: 'stepAnimateChangeColor' }, { title: ( ), - image: stepAnimateSpin + image: 'stepAnimateSpin' }, { title: ( ), - image: stepAnimateGrow + image: 'stepAnimateGrow' }, { deckIds: [ 'add-a-backdrop', @@ -468,7 +397,7 @@ export default { id="gui.howtos.Make-Music.step_PickInstrument" /> ), - image: stepPickInstrument + image: 'stepPickInstrument' }, { title: ( @@ -478,7 +407,7 @@ export default { id="gui.howtos.Make-Music.step_PlaySoundClick" /> ), - image: stepPlaySoundClick + image: 'stepPlaySoundClick' }, { title: ( @@ -488,7 +417,7 @@ export default { id="gui.howtos.Make-Music.step_MakeSong" /> ), - image: stepMakeSong + image: 'stepMakeSong' }, { title: ( ), - image: stepMakeBeat + image: 'stepMakeBeat' }, { title: ( ), - image: stepMakeBeatbox + image: 'stepMakeBeatbox' }, { deckIds: [ 'add-a-backdrop', @@ -537,7 +466,7 @@ export default { id="gui.howtos.Make-A-Game.step_GamePickSprite" /> ), - image: stepGamePickSprite + image: 'stepGamePickSprite' }, { title: ( ), - image: stepGamePlaySound + image: 'stepGamePlaySound' }, { title: ( ), - image: stepGameAddScore + image: 'stepGameAddScore' }, { title: ( ), - image: stepGameChangeScore + image: 'stepGameChangeScore' }, { title: ( ), - image: stepRandom + image: 'stepRandom' }, { title: ( ), - image: stepGameChangeColor + image: 'stepGameChangeColor' }, { title: ( ), - image: stepResetScore + image: 'stepResetScore' }, { deckIds: [ 'add-a-backdrop', @@ -624,7 +553,7 @@ export default { id="gui.howtos.Chase-Game.step_BG" /> ), - image: stepBG + image: 'stepBG' }, { title: ( ), - image: stepAddOcto + image: 'stepAddOcto' }, { title: ( ), - image: stepLeftRight + image: 'stepLeftRight' }, { title: ( ), - image: stepUpDown + image: 'stepUpDown' }, { title: ( ), - image: stepAddStar + image: 'stepAddStar' }, { title: ( ), - image: stepMoveRandom + image: 'stepMoveRandom' }, { title: ( ), - image: stepWhenTouch + image: 'stepWhenTouch' }, { title: ( ), - image: stepScoreVariable + image: 'stepScoreVariable' }, { title: ( ), - image: stepScoreWhenTouch + image: 'stepScoreWhenTouch' }, { deckIds: [ 'add-effects', @@ -726,7 +655,7 @@ export default { id="gui.howtos.animate-char.step_addbg" /> ), - image: stepAnimateCharPickBackdrop + image: 'stepAnimateCharPickBackdrop' }, { title: ( ), - image: stepAnimateCharPickSprite + image: 'stepAnimateCharPickSprite' }, { title: ( ), - image: stepAnimateCharSaySomething + image: 'stepAnimateCharSaySomething' }, { title: ( ), - image: stepAnimateCharAddSound + image: 'stepAnimateCharAddSound' }, { title: ( ), - image: stepAnimateCharTalk + image: 'stepAnimateCharTalk' }, { title: ( ), - image: stepAnimateCharMove + image: 'stepAnimateCharMove' }, { title: ( ), - image: stepAnimateCharJump + image: 'stepAnimateCharJump' }, { title: ( ), - image: stepAnimateCharChangeColor + image: 'stepAnimateCharChangeColor' }, { deckIds: [ 'Chase-Game', @@ -819,7 +748,7 @@ export default { id="gui.howtos.story.step_addbg" /> ), - image: stepStoryPickBackdrop + image: 'stepStoryPickBackdrop' }, { title: ( ), - image: stepStoryPickSprite + image: 'stepStoryPickSprite' }, { title: ( ), - image: stepStoryCharSaySomething + image: 'stepStoryCharSaySomething' }, { title: ( ), - image: stepStoryCharAddAnotherSprite + image: 'stepStoryCharAddAnotherSprite' }, { title: ( ), - image: stepStoryFlip + image: 'stepStoryFlip' }, { title: ( ), - image: stepStoryConversation + image: 'stepStoryConversation' }, { title: ( ), - image: stepStoryAddAnotherBackdrop + image: 'stepStoryAddAnotherBackdrop' }, { title: ( ), - image: stepStorySwitchBackdrop + image: 'stepStorySwitchBackdrop' }, { title: ( ), - image: stepStoryHide + image: 'stepStoryHide' }, { title: ( ), - image: stepStoryShow + image: 'stepStoryShow' }, { deckIds: [ @@ -931,7 +860,7 @@ export default { id="gui.howtos.videosens.step_addextension" /> ), - image: stepVideoSensAddExtension + image: 'stepVideoSensAddExtension' }, { title: ( ), - image: stepVideoSensPet + image: 'stepVideoSensPet' }, { title: ( ), - image: stepVideoSensAnimate + image: 'stepVideoSensAnimate' }, { title: ( ), - image: stepVideoSensPop + image: 'stepVideoSensPop' }, { deckIds: [ 'Make-Music', @@ -987,7 +916,7 @@ export default { id="gui.howtos.add-sprite.step_addSprite" /> ), - image: stepAddSprite + image: 'stepAddSprite' }, { deckIds: [ diff --git a/src/lib/libraries/decks/translate-image.js b/src/lib/libraries/decks/translate-image.js new file mode 100644 index 000000000..88c570011 --- /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-images" */ './es-steps.js') + .then(({default: 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 +};