Skip to content

Commit 644ad35

Browse files
committed
migrate to _msg for codeboogie
1 parent d3c2790 commit 644ad35

6 files changed

Lines changed: 62 additions & 153 deletions

File tree

static/scenes/codeboogie/index.html

Lines changed: 0 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -117,58 +117,8 @@ <h4 class="choose-mode__description hide-noshare"><i18n-msg msgid="codeboogie-mo
117117
</div>
118118
</div>
119119
</div>
120-
121-
<div style="display: none;">
122-
<div id="CB_whenRun"><i18n-msg msgid="codelab-block-whenrun">PLACEHOLDER_i18n</i18n-msg></div>
123-
<div id="CB_pointLeft"><i18n-msg msgid="codeboogie-block-leftarm">PLACEHOLDER_i18n</i18n-msg></div>
124-
<div id="CB_pointLeftTooltip"><i18n-msg msgid="codeboogie-block-leftarm-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
125-
<div id="CB_pointRight"><i18n-msg msgid="codeboogie-block-rightarm">PLACEHOLDER_i18n</i18n-msg></div>
126-
<div id="CB_pointRightTooltip"><i18n-msg msgid="codeboogie-block-rightarm-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
127-
<div id="CB_stepLeft"><i18n-msg msgid="codeboogie-block-leftfoot">PLACEHOLDER_i18n</i18n-msg></div>
128-
<div id="CB_stepLeftTooltip"><i18n-msg msgid="codeboogie-block-leftfoot-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
129-
<div id="CB_stepRight"><i18n-msg msgid="codeboogie-block-rightfoot">PLACEHOLDER_i18n</i18n-msg></div>
130-
<div id="CB_stepRightTooltip"><i18n-msg msgid="codeboogie-block-rightfoot-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
131-
<div id="CB_jump"><i18n-msg msgid="codeboogie-block-jump">PLACEHOLDER_i18n</i18n-msg></div>
132-
<div id="CB_jumpTooltip"><i18n-msg msgid="codeboogie-block-jump-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
133-
<div id="CB_splits"><i18n-msg msgid="codeboogie-block-split">PLACEHOLDER_i18n</i18n-msg></div>
134-
<div id="CB_splitsTooltip"><i18n-msg msgid="codeboogie-block-split-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
135-
<div id="CB_hip"><i18n-msg msgid="codeboogie-block-shake">PLACEHOLDER_i18n</i18n-msg></div>
136-
<div id="CB_hipTooltip"><i18n-msg msgid="codeboogie-block-shake-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
137-
<div id="CB_getDancing"><i18n-msg msgid="codeboogie-get-dancing">PLACEHOLDER_i18n</i18n-msg></div>
138-
<div id="CB_watchClosely"><i18n-msg msgid="codeboogie-watch-closely">PLACEHOLDER_i18n</i18n-msg></div>
139-
<div id="CB_letsDance"><i18n-msg msgid="codeboogie-lets-dance">PLACEHOLDER_i18n</i18n-msg></div>
140-
<div id="CB_success"><i18n-msg msgid="codeboogie-success">PLACEHOLDER_i18n</i18n-msg></div>
141-
<div id="CB_oops"><i18n-msg msgid="codelab-oops">PLACEHOLDER_i18n</i18n-msg></div>
142-
<div id="CB_repeatTitleTimes"><i18n-msg msgid="codelab-block-repeat-times">PLACEHOLDER_i18n</i18n-msg></div>
143-
<div id="CB_repeatTooltip"><i18n-msg msgid="codelab-block-repeat-tooltip">PLACEHOLDER_i18n</i18n-msg></div>
144-
<div id="CB_finish"><i18n-msg msgid="codelab-finish">PLACEHOLDER_i18n</i18n-msg></div>
145-
<div id="CB_yourTurn"><i18n-msg msgid="codeboogie-your-turn">PLACEHOLDER_i18n</i18n-msg></div>
146-
<div id="CB_tryAgain"><i18n-msg msgid="codelab-try-again">PLACEHOLDER_i18n</i18n-msg></div>
147-
<div id="CB_keepDancing"><i18n-msg msgid="codeboogie-keep-dancing">PLACEHOLDER_i18n</i18n-msg></div>
148-
<div id="CB_resultGenericFail"><i18n-msg msgid="codelab-result-generic-fail">PLACEHOLDER_i18n</i18n-msg></div>
149-
<div id="CB_resultEmptyBlockFail"><i18n-msg msgid="codelab-result-empty-repeat-fail">PLACEHOLDER_i18n</i18n-msg></div>
150-
<div id="CB_resultExtraTopBlockFail"><i18n-msg msgid="codelab-result-extra-top-block-fail">PLACEHOLDER_i18n</i18n-msg></div>
151-
<div id="CB_resultMissingBlockSuccess"><i18n-msg msgid="codeboogie-result-missing-block-success">PLACEHOLDER_i18n</i18n-msg></div>
152-
<div id="CB_resultMissingBlockFail"><i18n-msg msgid="codeboogie-result-missing-block-fail">PLACEHOLDER_i18n</i18n-msg></div>
153-
<div id="CB_resultTooFewBlocksFail"><i18n-msg msgid="codeboogie-result-too-few-blocks-fail">PLACEHOLDER_i18n</i18n-msg></div>
154-
<div id="CB_resultTooManyBlocksSuccess"><i18n-msg msgid="codeboogie-result-too-many-blocks-success">PLACEHOLDER_i18n</i18n-msg></div>
155-
<div id="CB_resultPerfectSuccess"><i18n-msg msgid="codeboogie-result-perfect-success">PLACEHOLDER_i18n</i18n-msg></div>
156-
<div id="CB_resultTooManySteps"><i18n-msg msgid="codeboogie-result-too-many-steps">PLACEHOLDER_i18n</i18n-msg></div>
157-
<div id="CB_resultWrongMove"><i18n-msg msgid="codeboogie-result-wrong-move">PLACEHOLDER_i18n</i18n-msg></div>
158-
<div id="CB_niceMoves"><i18n-msg msgid="codeboogie-nice-moves">PLACEHOLDER_i18n</i18n-msg></div>
159-
<div id="CB_go"><i18n-msg msgid="codeboogie-go">PLACEHOLDER_i18n</i18n-msg></div>
160-
<div id="CB_chooseGameMode"><i18n-msg msgid="codeboogie-choose-game-mode">PLACEHOLDER_i18n</i18n-msg></div>
161-
<div id="CB_chooseStage"><i18n-msg msgid="codeboogie-choose-stage">PLACEHOLDER_i18n</i18n-msg></div>
162-
<div id="CB_backToStart"><i18n-msg msgid="codeboogie-back-to-start">PLACEHOLDER_i18n</i18n-msg></div>
163-
<div id="CB_modeDanceClass"><i18n-msg msgid="codeboogie-mode-dance-class">PLACEHOLDER_i18n</i18n-msg></div>
164-
<div id="CB_modeDanceClassDescription"><i18n-msg msgid="codeboogie-mode-dance-class-description">PLACEHOLDER_i18n</i18n-msg></div>
165-
<div id="CB_modeFreestyle"><i18n-msg msgid="codeboogie-mode-freestyle">PLACEHOLDER_i18n</i18n-msg></div>
166-
<div id="CB_modeFreestyleDescription"><i18n-msg msgid="codeboogie-mode-freestyle-description">PLACEHOLDER_i18n</i18n-msg></div>
167-
<div id="CB_shareMoves"><i18n-msg msgid="codeboogie-share-moves">PLACEHOLDER_i18n</i18n-msg></div>
168-
</div>
169120
</div>
170121

171-
172122
<script src="../../node_modules/web-animations-js/web-animations-next.min.js"></script>
173123
<script type="module">
174124
import api from '../../src/scene/api.js';

static/scenes/codeboogie/js/animation_player.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ goog.require('app.AnimationData');
2424
goog.require('app.Character');
2525
goog.require('app.Constants');
2626
goog.require('app.DanceStatus');
27-
goog.require('app.I18n');
2827
goog.require('app.Lights');
2928
goog.require('app.MoveTiles');
3029
goog.require('app.Step');

static/scenes/codeboogie/js/blocks.js

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ goog.require('Blockly.Blocks');
2222
goog.require('Blockly.FieldImage');
2323
goog.require('Blockly.FieldLabel');
2424
goog.require('Blockly.JavaScript');
25-
goog.require('app.I18n');
2625
goog.require('app.Patterns');
2726
goog.require('app.Step');
2827

@@ -83,39 +82,39 @@ app.blocks.install = function() {
8382
(function() {
8483
var STEP_CONFIGS = {
8584
[app.Step.LEFT_ARM]: {
86-
letter: app.I18n.getMsg('CB_pointLeft'),
85+
letter: _msg`codeboogie-block-leftarm`,
8786
image: 'img/block-point-left.svg',
88-
tooltip: app.I18n.getMsg('CB_pointLeftTooltip')
87+
tooltip: _msg`codeboogie-block-leftarm-tooltip`
8988
},
9089
[app.Step.RIGHT_ARM]: {
91-
letter: app.I18n.getMsg('CB_pointRight'),
90+
letter: _msg`codeboogie-block-rightarm`,
9291
image: 'img/block-point-right.svg',
93-
tooltip: app.I18n.getMsg('CB_pointRightTooltip')
92+
tooltip: _msg`codeboogie-block-rightarm-tooltip`
9493
},
9594
[app.Step.LEFT_FOOT]: {
96-
letter: app.I18n.getMsg('CB_stepLeft'),
95+
letter: _msg`codeboogie-block-leftfoot`,
9796
image: 'img/block-step-left.svg',
98-
tooltip: app.I18n.getMsg('CB_stepLeftTooltip')
97+
tooltip: _msg`codeboogie-block-leftfoot-tooltip`
9998
},
10099
[app.Step.RIGHT_FOOT]: {
101-
letter: app.I18n.getMsg('CB_stepRight'),
100+
letter: _msg`codeboogie-block-rightfoot`,
102101
image: 'img/block-step-right.svg',
103-
tooltip: app.I18n.getMsg('CB_stepRightTooltip')
102+
tooltip: _msg`codeboogie-block-rightfoot-tooltip`
104103
},
105104
[app.Step.JUMP]: {
106-
letter: app.I18n.getMsg('CB_jump'),
105+
letter: _msg`codeboogie-block-jump`,
107106
image: 'img/block-jump.svg',
108-
tooltip: app.I18n.getMsg('CB_jumpTooltip')
107+
tooltip: _msg`codeboogie-block-jump-tooltip`
109108
},
110109
[app.Step.SPLIT]: {
111-
letter: app.I18n.getMsg('CB_splits'),
110+
letter: _msg`codeboogie-block-split`,
112111
image: 'img/block-splits.svg',
113-
tooltip: app.I18n.getMsg('CB_splitsTooltip')
112+
tooltip: _msg`codeboogie-block-split-tooltip`
114113
},
115114
[app.Step.SHAKE]: {
116-
letter: app.I18n.getMsg('CB_hip'),
115+
letter: _msg`codeboogie-block-shake`,
117116
image: 'img/block-hip-shake.svg',
118-
tooltip: app.I18n.getMsg('CB_hipTooltip')
117+
tooltip: _msg`codeboogie-block-shake-tooltip`
119118
}
120119
};
121120

@@ -205,7 +204,7 @@ app.blocks.install = function() {
205204
this.contextMenu = false;
206205
this.setHSV(26, 0.77, 0.96);
207206
this.appendDummyInput()
208-
.appendField(app.I18n.getMsg('CB_whenRun'));
207+
.appendField(_msg`codelab-block-whenrun`);
209208
this.setNextStatement(true);
210209
}
211210
};
@@ -224,11 +223,11 @@ app.blocks.install = function() {
224223
this.appendDummyInput()
225224
.appendField(new Blockly.FieldImage('img/block-repeat.svg', 28, 32))
226225
.appendField(new Blockly.FieldDropdown(optionNumberRange(2, 6)), 'TIMES')
227-
.appendField(app.I18n.getMsg('CB_repeatTitleTimes'));
226+
.appendField(_msg`codelab-block-repeat-times`);
228227
this.appendStatementInput('DO');
229228
this.setPreviousStatement(true);
230229
this.setNextStatement(true);
231-
this.setTooltip(app.I18n.getMsg('CB_repeatTooltip'));
230+
this.setTooltip(_msg`codelab-block-repeat-tooltip`);
232231
}
233232
};
234233

@@ -242,7 +241,7 @@ app.blocks.install = function() {
242241
this.appendDummyInput()
243242
.appendField(new Blockly.FieldImage('img/block-repeat.svg', 23, 32));
244243
this.setMini(true);
245-
this.setTooltip(app.I18n.getMsg('CB_repeatTooltip'));
244+
this.setTooltip(_msg`codelab-block-repeat-tooltip`);
246245
}
247246
};
248247

static/scenes/codeboogie/js/dance_level.js

Lines changed: 41 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,17 @@ goog.require('app.Level');
2323
goog.require('app.LevelResult');
2424
goog.require('app.Step');
2525

26+
// TODO(samthor): duplicated from blocks.js, where we insert into Blockly.
27+
const stepNames = {
28+
[app.Step.LEFT_ARM]: _msg`codeboogie-block-leftarm`,
29+
[app.Step.RIGHT_ARM]: _msg`codeboogie-block-rightarm`,
30+
[app.Step.LEFT_FOOT]: _msg`codeboogie-block-leftfoot`,
31+
[app.Step.RIGHT_FOOT]: _msg`codeboogie-block-rightfoot`,
32+
[app.Step.JUMP]: _msg`codeboogie-block-jump`,
33+
[app.Step.SPLIT]: _msg`codeboogie-block-split`,
34+
[app.Step.SHAKE]: _msg`codeboogie-block-shake`,
35+
};
36+
2637
/**
2738
* Dance result constants.
2839
* @enum {string}
@@ -95,15 +106,15 @@ app.DanceLevel = class extends app.Level {
95106
animation.unshift({
96107
teacherStep: app.Step.IDLE,
97108
playerStep: app.Step.IDLE,
98-
title: app.I18n.getMsg('CB_watchClosely'),
109+
title: _msg`codeboogie-watch-closely`,
99110
isIntro: true
100111
});
101112
}
102113

103114
return new app.DanceLevelResult(false, null, {
104115
animationQueue: animation,
105116
danceStatus: danceStatus,
106-
endTitle: app.I18n.getMsg('CB_yourTurn')
117+
endTitle: _msg`codeboogie-your-turn`
107118
});
108119
}
109120

@@ -119,13 +130,13 @@ app.DanceLevel = class extends app.Level {
119130
if (blockly.hasEmptyContainerBlocks()) {
120131
// Block is assumed to be "if" or "repeat" if we reach here.
121132
return new app.DanceLevelResult(false,
122-
app.I18n.getMsg('CB_resultEmptyBlockFail'),
133+
_msg`codelab-result-empty-repeat-fail`,
123134
{skipAnimation: true});
124135
}
125136

126137
if (blockly.hasExtraTopBlocks()) {
127138
return new app.DanceLevelResult(false,
128-
app.I18n.getMsg('CB_resultExtraTopBlockFail'),
139+
_msg`codelab-result-extra-top-block-fail`,
129140
{skipAnimation: true});
130141
}
131142

@@ -134,7 +145,7 @@ app.DanceLevel = class extends app.Level {
134145
if (this.freestyle &&
135146
playerStepCount > app.DanceLevel.FREESTYLE_STEP_LIMIT) {
136147
return new app.DanceLevelResult(false,
137-
app.I18n.getMsg('CB_resultTooManySteps'),
148+
_msg`codeboogie-result-too-many-steps`,
138149
{skipAnimation: true});
139150
}
140151

@@ -145,11 +156,16 @@ app.DanceLevel = class extends app.Level {
145156
var missingBlocks = blockly.getMissingBlocks(this.requiredBlocks);
146157
var numEnabledBlocks = blockly.getCountableBlocks().length;
147158

148-
var endTitleMsg = '';
159+
var endTitle = '';
149160

150161
if (!this.freestyle) {
151-
endTitleMsg = danceStatus === app.DanceStatus.NO_STEPS ? 'CB_yourTurn' :
152-
levelComplete ? 'CB_success' : 'CB_tryAgain';
162+
if (danceStatus === app.DanceStatus.NO_STEPS) {
163+
endTitle = _msg`codeboogie-your-turn`;
164+
} else if (levelComplete) {
165+
endTitle = _msg`codeboogie-success`;
166+
} else {
167+
endTitle = _msg`codelab-try-again`;
168+
}
153169
}
154170

155171
var allowRetry = true;
@@ -158,20 +174,20 @@ app.DanceLevel = class extends app.Level {
158174

159175
if (missingBlocks.length) {
160176
message = levelComplete ?
161-
app.I18n.getMsg('CB_resultMissingBlockSuccess') :
162-
app.I18n.getMsg('CB_resultMissingBlockFail');
177+
_msg`codeboogie-result-missing-block-success` :
178+
_msg`codeboogie-result-missing-block-fail`;
163179
} else if (!levelComplete) {
164180
if (this.idealBlockCount !== Infinity &&
165181
numEnabledBlocks < this.idealBlockCount) {
166-
message = app.I18n.getMsg('CB_resultTooFewBlocksFail');
182+
message = _msg`codeboogie-result-too-few-blocks-fail`;
167183
} else {
168-
message = app.I18n.getMsg('CB_resultGenericFail');
184+
message = _msg`codelab-result-generic-fail`;
169185
}
170186
} else if (numEnabledBlocks > this.idealBlockCount) {
171-
message = app.I18n.getMsg('CB_resultTooManyBlocksSuccess');
187+
message = _msg`codeboogie-result-too-many-blocks-success`;
172188
} else if (this.freestyle) {
173-
message = app.I18n.getMsg('CB_shareMoves');
174-
endTitleMsg = 'CB_keepDancing';
189+
message = _msg`codeboogie-share-moves`;
190+
endTitle = _msg`codeboogie-keep-dancing`;
175191
} else {
176192
allowRetry = false;
177193
}
@@ -180,7 +196,7 @@ app.DanceLevel = class extends app.Level {
180196
allowRetry,
181197
animationQueue: animationQueue,
182198
code: code,
183-
endTitle: app.I18n.getMsg(endTitleMsg),
199+
endTitle: endTitle,
184200
danceStatus: danceStatus,
185201
idealBlockCount: this.idealBlockCount,
186202
missingBlocks: missingBlocks,
@@ -251,7 +267,7 @@ app.DanceLevel = class extends app.Level {
251267
playerStep: playerStep ? playerStep.step : 'watch',
252268
tile: step,
253269
blockId: playerStep && playerStep.blockId,
254-
title: app.I18n.getMsg('CB_' + step)
270+
title: stepNames[step] || '?',
255271
};
256272

257273
queue.push(animation);
@@ -262,11 +278,11 @@ app.DanceLevel = class extends app.Level {
262278
queue.push({
263279
teacherStep: app.Step.WATCH,
264280
playerStep: app.Step.FAIL,
265-
title: app.I18n.getMsg('CB_oops')
281+
title: _msg`codelab-oops`
266282
});
267283
} else {
268284
queue[playerSteps.length].playerStep = app.Step.FAIL;
269-
queue[playerSteps.length].title = app.I18n.getMsg('CB_oops');
285+
queue[playerSteps.length].title = _msg`codelab-oops`;
270286
}
271287
}
272288

@@ -276,12 +292,12 @@ app.DanceLevel = class extends app.Level {
276292
teacherStep: app.Step.WATCH,
277293
playerStep: extraBlock.step,
278294
blockId: extraBlock.blockId,
279-
title: app.I18n.getMsg('CB_oops')
295+
title: _msg`codelab-oops`
280296
});
281297
queue.push({
282298
teacherStep: app.Step.WATCH,
283299
playerStep: app.Step.FAIL,
284-
title: app.I18n.getMsg('CB_oops')
300+
title: _msg`codelab-oops`
285301
});
286302
}
287303

@@ -291,17 +307,17 @@ app.DanceLevel = class extends app.Level {
291307
queue.push({
292308
teacherStep: specialMove,
293309
playerStep: specialMove,
294-
title: app.I18n.getMsg('CB_success')
310+
title: _msg`codeboogie-success`
295311
});
296312
}
297313

298314
if (!(this.freestyle && result === app.DanceStatus.NO_STEPS)) {
299315
queue.unshift({
300316
teacherStep: app.Step.IDLE,
301317
playerStep: app.Step.IDLE,
302-
title: app.I18n.getMsg(result === app.DanceStatus.NO_STEPS ?
303-
'CB_watchClosely' :
304-
'CB_letsDance'),
318+
title: result === app.DanceStatus.NO_STEPS ?
319+
_msg`codeboogie-watch-closely` :
320+
_msg`codeboogie-lets-dance`,
305321
isCountdown: true,
306322
isIntro: true
307323
});

static/scenes/codeboogie/js/i18n.js

Lines changed: 0 additions & 55 deletions
This file was deleted.

0 commit comments

Comments
 (0)