@windward/games 0.0.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/components/content/CrudTable.vue +2 -2
  2. package/components/content/blocks/crosswordPuzzle/CrosswordClues.vue +4 -2
  3. package/components/content/blocks/crosswordPuzzle/CrosswordPuzzle.vue +14 -12
  4. package/components/content/blocks/dragDrop/BucketGame.vue +54 -101
  5. package/components/content/blocks/dragDrop/SortingGame.vue +47 -33
  6. package/components/content/blocks/flashcards/CardFace.vue +38 -39
  7. package/components/content/blocks/flashcards/Flashcard.vue +109 -28
  8. package/components/content/blocks/flashcards/FlashcardSlides.vue +3 -2
  9. package/components/content/blocks/matchingGame/MatchingGame.vue +105 -61
  10. package/components/content/blocks/multipleChoice/MultipleChoice.vue +186 -225
  11. package/components/content/blocks/multipleChoice/QuestionDialog.vue +7 -7
  12. package/components/content/blocks/quizshowGame/AnswerPanel.vue +31 -24
  13. package/components/content/blocks/quizshowGame/Gridview.vue +20 -24
  14. package/components/content/blocks/quizshowGame/QuizShow.vue +22 -9
  15. package/components/content/blocks/quizshowGame/feedbackIcons.vue +4 -2
  16. package/components/content/blocks/sevenStrikes/SevenStikes.vue +153 -108
  17. package/components/content/blocks/sevenStrikes/keyboard.vue +9 -2
  18. package/components/content/blocks/slideshow/SlideShow.vue +5 -3
  19. package/components/content/blocks/wordJumble/Jumble.vue +4 -4
  20. package/components/content/blocks/wordJumble/WordJumble.vue +128 -62
  21. package/components/settings/BucketGameSettingsManager.vue +185 -359
  22. package/components/settings/CrosswordPuzzleSettingsManager.vue +114 -181
  23. package/components/settings/FlashCardSlidesManager.vue +323 -419
  24. package/components/settings/MatchingGameManager.vue +357 -618
  25. package/components/settings/MultipleChoiceSettingsManager.vue +130 -140
  26. package/components/settings/QuizShowSettingsManager.vue +17 -17
  27. package/components/settings/SevenStrikesSettingsManager.vue +131 -193
  28. package/components/settings/SlideShowManager.vue +91 -129
  29. package/components/settings/SortingGameSettingsManager.vue +41 -153
  30. package/components/settings/WordJumbleSettingsManager.vue +84 -150
  31. package/i18n/en-US/components/content/blocks/bucket_game.ts +1 -0
  32. package/i18n/en-US/components/content/blocks/flashcard.ts +3 -0
  33. package/i18n/en-US/components/content/blocks/word_jumble.ts +2 -0
  34. package/i18n/en-US/components/settings/bucket_game.ts +3 -2
  35. package/i18n/en-US/components/settings/flashcard.ts +1 -0
  36. package/i18n/en-US/components/settings/matching_game.ts +1 -1
  37. package/i18n/en-US/components/settings/quizshow_game.ts +1 -1
  38. package/i18n/en-US/components/settings/seven_strikes.ts +1 -1
  39. package/i18n/en-US/components/settings/slideshow.ts +2 -0
  40. package/i18n/en-US/index.ts +2 -1
  41. package/i18n/es-ES/components/content/blocks/bucket_game.ts +40 -0
  42. package/i18n/es-ES/components/content/blocks/crossword.ts +25 -0
  43. package/i18n/es-ES/components/content/blocks/flashcard.ts +8 -0
  44. package/i18n/es-ES/components/content/blocks/index.ts +23 -0
  45. package/i18n/es-ES/components/content/blocks/matching_game.ts +26 -0
  46. package/i18n/es-ES/components/content/blocks/multiple_choice.ts +9 -0
  47. package/i18n/es-ES/components/content/blocks/quizshow_game.ts +35 -0
  48. package/i18n/es-ES/components/content/blocks/seven_strikes.ts +6 -0
  49. package/i18n/es-ES/components/content/blocks/slideshow.ts +13 -0
  50. package/i18n/es-ES/components/content/blocks/sorting_game.ts +5 -0
  51. package/i18n/es-ES/components/content/blocks/word_jumble.ts +11 -0
  52. package/i18n/es-ES/components/content/crud_table.ts +6 -0
  53. package/i18n/es-ES/components/content/index.ts +7 -0
  54. package/i18n/es-ES/components/index.ts +9 -0
  55. package/i18n/es-ES/components/navigation/index.ts +5 -0
  56. package/i18n/es-ES/components/settings/bucket_game.ts +39 -0
  57. package/i18n/es-ES/components/settings/crossword.ts +7 -0
  58. package/i18n/es-ES/components/settings/flashcard.ts +29 -0
  59. package/i18n/es-ES/components/settings/index.ts +23 -0
  60. package/i18n/es-ES/components/settings/matching_game.ts +15 -0
  61. package/i18n/es-ES/components/settings/multiple_choice.ts +17 -0
  62. package/i18n/es-ES/components/settings/quizshow_game.ts +20 -0
  63. package/i18n/es-ES/components/settings/seven_strikes.ts +8 -0
  64. package/i18n/es-ES/components/settings/slideshow.ts +13 -0
  65. package/i18n/es-ES/components/settings/sorting_game.ts +5 -0
  66. package/i18n/es-ES/components/settings/word_jumble.ts +11 -0
  67. package/i18n/es-ES/index.ts +16 -0
  68. package/i18n/es-ES/modules/index.ts +5 -0
  69. package/i18n/es-ES/pages/index.ts +5 -0
  70. package/i18n/es-ES/shared/content_blocks.ts +18 -0
  71. package/i18n/es-ES/shared/index.ts +7 -0
  72. package/i18n/es-ES/shared/settings.ts +14 -0
  73. package/i18n/index.ts +11 -0
  74. package/i18n/sv-SE/components/content/blocks/bucket_game.ts +40 -0
  75. package/i18n/sv-SE/components/content/blocks/crossword.ts +20 -0
  76. package/i18n/sv-SE/components/content/blocks/flashcard.ts +8 -0
  77. package/i18n/sv-SE/components/content/blocks/index.ts +23 -0
  78. package/i18n/sv-SE/components/content/blocks/matching_game.ts +25 -0
  79. package/i18n/sv-SE/components/content/blocks/multiple_choice.ts +9 -0
  80. package/i18n/sv-SE/components/content/blocks/quizshow_game.ts +35 -0
  81. package/i18n/sv-SE/components/content/blocks/seven_strikes.ts +6 -0
  82. package/i18n/sv-SE/components/content/blocks/slideshow.ts +13 -0
  83. package/i18n/sv-SE/components/content/blocks/sorting_game.ts +5 -0
  84. package/i18n/sv-SE/components/content/blocks/word_jumble.ts +11 -0
  85. package/i18n/sv-SE/components/content/crud_table.ts +6 -0
  86. package/i18n/sv-SE/components/content/index.ts +7 -0
  87. package/i18n/sv-SE/components/index.ts +9 -0
  88. package/i18n/sv-SE/components/navigation/index.ts +5 -0
  89. package/i18n/sv-SE/components/settings/bucket_game.ts +38 -0
  90. package/i18n/sv-SE/components/settings/crossword.ts +7 -0
  91. package/i18n/sv-SE/components/settings/flashcard.ts +29 -0
  92. package/i18n/sv-SE/components/settings/index.ts +23 -0
  93. package/i18n/sv-SE/components/settings/matching_game.ts +15 -0
  94. package/i18n/sv-SE/components/settings/multiple_choice.ts +16 -0
  95. package/i18n/sv-SE/components/settings/quizshow_game.ts +20 -0
  96. package/i18n/sv-SE/components/settings/seven_strikes.ts +8 -0
  97. package/i18n/sv-SE/components/settings/slideshow.ts +13 -0
  98. package/i18n/sv-SE/components/settings/sorting_game.ts +5 -0
  99. package/i18n/sv-SE/components/settings/word_jumble.ts +11 -0
  100. package/i18n/sv-SE/index.ts +16 -0
  101. package/i18n/sv-SE/modules/index.ts +5 -0
  102. package/i18n/sv-SE/pages/index.ts +5 -0
  103. package/i18n/sv-SE/shared/content_blocks.ts +18 -0
  104. package/i18n/sv-SE/shared/index.ts +7 -0
  105. package/i18n/sv-SE/shared/settings.ts +14 -0
  106. package/package.json +1 -1
  107. package/plugin.js +33 -34
  108. package/test/Feature/LocaleKeys.spec.js +11 -0
  109. package/test/__mocks__/componentsMock.js +12 -0
  110. package/test/__mocks__/fileMock.js +1 -0
  111. package/test/__mocks__/modelMock.js +88 -0
  112. package/test/__mocks__/styleMock.js +1 -0
  113. package/test/blocks/crossword/CrosswordPuzzle.spec.js +1 -1
  114. package/test/blocks/dragDrop/BucketGame.spec.js +1 -1
  115. package/test/blocks/dragDrop/SortingGame.spec.js +1 -1
  116. package/test/blocks/flashcards/CardFace.spec.js +1 -1
  117. package/test/blocks/flashcards/FlashCardSlides.spec.js +1 -1
  118. package/test/blocks/flashcards/Flashcard.spec.js +1 -1
  119. package/test/blocks/matchingGame/MatchingGame.spec.js +1 -1
  120. package/test/blocks/multipleChoice/MultipleChoice.spec.js +1 -1
  121. package/test/blocks/multipleChoice/QuestionDialog.spec.js +1 -1
  122. package/test/blocks/quizShow/quizShow.spec.js +1 -1
  123. package/test/blocks/sevenStrikes/sevenStrikes.spec.js +1 -1
  124. package/test/blocks/slideshow/slideshow.spec.js +1 -1
  125. package/test/blocks/wordJumble/Jumble.spec.js +1 -1
  126. package/test/blocks/wordJumble/WordJumble.spec.js +1 -1
  127. package/test/mocks.js +8 -2
  128. package/test/settings/BucketGameManager.spec.js +4 -4
  129. package/test/settings/CrosswordPuzzleManager.spec.js +6 -11
  130. package/test/settings/FlashCardSlidesManager.spec.js +1 -1
  131. package/test/settings/MatchingGameManager.spec.js +1 -1
  132. package/test/settings/MultipleChoiceGameManager.spec.js +1 -1
  133. package/test/settings/SevenStrikesManager.spec.js +1 -1
  134. package/test/settings/SlideShowManager.spec.js +1 -1
  135. package/test/settings/SortingGameManager.spec.js +1 -1
  136. package/test/settings/WordJumbleManager.spec.js +1 -4
  137. package/i18n/en-US.ts +0 -5
@@ -1,10 +1,10 @@
1
1
  <template>
2
- <div class="background">
2
+ <div>
3
3
  <div>
4
4
  <h3
5
5
  :aria-label="
6
6
  $t(
7
- 'plugin.games.components.content.blocks.matching_game.match_game_title'
7
+ 'windward.games.components.content.blocks.matching_game.match_game_title'
8
8
  )
9
9
  "
10
10
  tabindex="0"
@@ -18,7 +18,7 @@
18
18
  <p tabindex="0">
19
19
  {{
20
20
  $t(
21
- 'plugin.games.components.content.blocks.matching_game.description'
21
+ 'windward.games.components.content.blocks.matching_game.description'
22
22
  )
23
23
  }}
24
24
  </p>
@@ -31,7 +31,7 @@
31
31
  feedback
32
32
  ? feedback
33
33
  : $t(
34
- 'plugin.games.components.content.blocks.bucket_game.form.feedback.feedback_here'
34
+ 'windward.games.components.content.blocks.bucket_game.form.feedback.feedback_here'
35
35
  )
36
36
  }}</v-col>
37
37
  <v-col class="d-flex justify-end pl-4">
@@ -40,8 +40,16 @@
40
40
  class="success mr-5"
41
41
  @click="onContinueGame"
42
42
  >{{ $t('shared.forms.continue') }}
43
- </v-btn></v-col
44
- >
43
+ </v-btn>
44
+ <v-container
45
+ v-if="status === 'errorOutline'"
46
+ class="d-flex justify-end"
47
+ @click="onExitFeedback"
48
+ ><v-icon class="icon--error"
49
+ >mdi-close-circle</v-icon
50
+ >
51
+ </v-container>
52
+ </v-col>
45
53
  </v-row>
46
54
  <br />
47
55
  </v-container>
@@ -49,8 +57,8 @@
49
57
  <v-container>
50
58
  <v-row>
51
59
  <draggable
52
- class="d-flex justify-space-between flex-wrap col-md-12"
53
60
  v-bind="dragOptions"
61
+ class="d-flex justify-space-between flex-wrap col-md-12"
54
62
  :list="block.metadata.config.answerObjects"
55
63
  :disabled="!allowDrag"
56
64
  :group="{
@@ -69,7 +77,7 @@
69
77
  tile
70
78
  color="primary"
71
79
  >
72
- <v-icon>mdi-gesture-tap-hold</v-icon>
80
+ <v-icon>mdi-drag-vertical</v-icon>
73
81
  <span>
74
82
  {{ answer.display }}
75
83
  </span>
@@ -77,8 +85,8 @@
77
85
  </draggable>
78
86
  </v-row>
79
87
  <v-row
80
- class="d-flex flex-wrap flex-row justify-center flex-fill"
81
88
  v-if="render"
89
+ class="d-flex flex-wrap flex-row justify-center flex-fill"
82
90
  >
83
91
  <v-row align="center" class="col-md-12">
84
92
  <v-card
@@ -154,17 +162,17 @@
154
162
  </v-row>
155
163
  </v-row>
156
164
  <v-row
157
- class="d-flex flex-wrap flex-row justify-center flex-fill"
158
165
  v-if="
159
166
  !render && block.metadata.config.prompts.length > 0
160
167
  "
168
+ class="d-flex flex-wrap flex-row justify-center flex-fill"
161
169
  >
162
170
  <v-row align="center" class="col-md-12">
163
171
  <v-card
164
172
  v-if="
165
173
  !block.metadata.config.prompts[
166
174
  startingIndex
167
- ]['toggle']
175
+ ][startingIndex].toggle
168
176
  "
169
177
  class="pa-2 flex-fill bucket"
170
178
  min-height="5em"
@@ -174,13 +182,8 @@
174
182
  >
175
183
  <v-card-text class="text-center">
176
184
  <draggable
177
- class="dragArea list-group"
178
- :key="
179
- block.metadata.config.prompts[
180
- startingIndex
181
- ]['prompt']
182
- "
183
185
  v-bind="dragOptions"
186
+ class="dragArea list-group"
184
187
  disabled
185
188
  group="people"
186
189
  tabindex="0"
@@ -192,7 +195,7 @@
192
195
  {{
193
196
  block.metadata.config.prompts[
194
197
  startingIndex
195
- ]['prompt']
198
+ ][startingIndex].prompt
196
199
  }}
197
200
  </div>
198
201
  </draggable>
@@ -204,7 +207,10 @@
204
207
  v-if="
205
208
  block.metadata.config.prompts[
206
209
  startingIndex
207
- ]['file']
210
+ ][startingIndex].toggle &&
211
+ block.metadata.config.prompts[
212
+ startingIndex
213
+ ][startingIndex].file
208
214
  "
209
215
  class="pa-2 flex-fill bucket"
210
216
  min-height="5em"
@@ -213,13 +219,13 @@
213
219
  >
214
220
  <v-card-text>
215
221
  <draggable
222
+ v-bind="dragOptions"
216
223
  class="dragArea list-group"
217
224
  :key="
218
225
  block.metadata.config.prompts[
219
226
  startingIndex
220
227
  ]['prompt']
221
228
  "
222
- v-bind="dragOptions"
223
229
  disabled
224
230
  group="people"
225
231
  tabindex="0"
@@ -228,33 +234,36 @@
228
234
  :id="
229
235
  block.metadata.config.prompts[
230
236
  startingIndex
231
- ]['file']['asset']['public_url']
237
+ ][startingIndex].file.asset
238
+ .public_url
232
239
  "
233
240
  >
234
241
  <v-img
235
242
  v-if="
236
243
  block.metadata.config
237
244
  .prompts[startingIndex][
238
- 'file'
239
- ]
245
+ startingIndex
246
+ ]['file']
240
247
  "
241
248
  :aria-describedby="
242
249
  block.metadata.config
243
250
  .prompts[startingIndex][
244
- 'ariaDescribedBy'
245
- ]
251
+ startingIndex
252
+ ]['ariaDescribedBy']
246
253
  "
247
254
  :alt="
248
255
  block.metadata.config
249
256
  .prompts[startingIndex][
250
- 'altText'
251
- ]
257
+ startingIndex
258
+ ]['altText']
252
259
  "
253
260
  :src="
254
261
  block.metadata.config
255
262
  .prompts[startingIndex][
256
- 'file'
257
- ]['asset']['public_url']
263
+ startingIndex
264
+ ]['file']['asset'][
265
+ 'public_url'
266
+ ]
258
267
  "
259
268
  ></v-img>
260
269
  </div>
@@ -275,7 +284,7 @@
275
284
  tabindex="0"
276
285
  :aria-label="
277
286
  $t(
278
- 'plugin.games.components.content.blocks.matching_game.of_complete',
287
+ 'windward.games.components.content.blocks.matching_game.of_complete',
279
288
  [
280
289
  completedAmount,
281
290
  totalAmountQuestions,
@@ -286,7 +295,7 @@
286
295
  <v-col align="end" tabindex="0">
287
296
  {{
288
297
  $t(
289
- 'plugin.games.components.content.blocks.matching_game.of_complete_text_area',
298
+ 'windward.games.components.content.blocks.matching_game.of_complete_text_area',
290
299
  [
291
300
  completedAmount,
292
301
  totalAmountQuestions,
@@ -294,11 +303,12 @@
294
303
  )
295
304
  }}
296
305
  <v-progress-linear
306
+ v-model="completedPercent"
297
307
  color="primary"
298
308
  outlined
299
- v-model="completedPercent"
300
309
  rounded
301
310
  height="15"
311
+ style="pointer-events: none"
302
312
  ></v-progress-linear>
303
313
  <br />
304
314
  <v-btn
@@ -307,7 +317,7 @@
307
317
  @click="onReset"
308
318
  >{{
309
319
  $t(
310
- 'plugin.games.components.content.blocks.matching_game.reset'
320
+ 'windward.games.components.content.blocks.matching_game.reset'
311
321
  )
312
322
  }}
313
323
  </v-btn>
@@ -342,16 +352,22 @@ export default {
342
352
  this.block.metadata.config = {}
343
353
  }
344
354
  if (_.isEmpty(this.block.metadata.config.title)) {
345
- this.block.metadata.config.title = ''
355
+ this.block.metadata.config.title = this.$t(
356
+ 'windward.games.components.settings.matching_game.form.title'
357
+ )
346
358
  }
347
359
  if (_.isEmpty(this.block.metadata.config.instructions)) {
348
360
  this.block.metadata.config.instructions = ''
349
361
  }
350
362
  if (_.isEmpty(this.block.metadata.config.feedback_correct)) {
351
- this.block.metadata.config.feedback_correct = ''
363
+ this.block.metadata.config.feedback_correct = this.$t(
364
+ 'windward.games.components.settings.bucket_game.form.feedback.correct_default'
365
+ )
352
366
  }
353
367
  if (_.isEmpty(this.block.metadata.config.feedback_incorrect)) {
354
- this.block.metadata.config.feedback_incorrect = ''
368
+ this.block.metadata.config.feedback_incorrect = this.$t(
369
+ 'windward.games.components.settings.bucket_game.form.feedback.incorrect_default'
370
+ )
355
371
  }
356
372
  if (_.isEmpty(this.block.metadata.config.prompts)) {
357
373
  this.block.metadata.config.prompts = []
@@ -370,10 +386,10 @@ export default {
370
386
  return _.flatten(this.solvedQuestions).length
371
387
  },
372
388
  completedPercent() {
373
- if (this.block.metadata.config.prompts.length > 0) {
389
+ if (this.flattenedPrompts.length > 0) {
374
390
  return (
375
391
  (this.solvedQuestions.length /
376
- this.block.metadata.config.prompts.length) *
392
+ this.flattenedPrompts.length) *
377
393
  100
378
394
  )
379
395
  }
@@ -386,9 +402,8 @@ export default {
386
402
  data() {
387
403
  return {
388
404
  feedback: this.$t(
389
- 'plugin.games.components.content.blocks.matching_game.default_feedback'
405
+ 'windward.games.components.content.blocks.matching_game.default_feedback'
390
406
  ),
391
- toggle: false,
392
407
  gameCompleted: false,
393
408
  shufflePrompts: [],
394
409
  solvedQuestions: [],
@@ -404,9 +419,10 @@ export default {
404
419
  name: '',
405
420
  },
406
421
  prompt: '',
422
+ toggle: false,
407
423
  },
408
- editedPrompt: {},
409
424
  startingIndex: 0,
425
+ flattenedPrompts: '',
410
426
  }
411
427
  },
412
428
  watch: {
@@ -415,8 +431,13 @@ export default {
415
431
  this.onReset()
416
432
  }
417
433
  },
434
+ value(newValue) {
435
+ this.flattenedPrompts = _.flatten(newValue.metadata.config.prompts)
436
+ },
418
437
  },
419
438
  mounted() {
439
+ // flatten nested prompts
440
+ this.flattenedPrompts = _.flatten(this.block.metadata.config.prompts)
420
441
  this.setMainPrompt()
421
442
  },
422
443
  methods: {
@@ -437,10 +458,9 @@ export default {
437
458
  return array
438
459
  },
439
460
  setMainPrompt() {
440
- if (this.block.metadata.config.prompts.length !== 0) {
441
- this.shufflePrompts = _.cloneDeep(
442
- this.block.metadata.config.prompts
443
- )
461
+ const holder = this.block.metadata.config.prompts.flat(1)
462
+ if (holder !== 0 && !_.isEmpty(holder)) {
463
+ this.shufflePrompts = _.cloneDeep(holder)
444
464
  this.shufflePrompts = this.shuffle(this.shufflePrompts)
445
465
  this.mainPrompt = this.shufflePrompts.shift()
446
466
  }
@@ -452,25 +472,40 @@ export default {
452
472
  }
453
473
  let draggedElement = ''
454
474
  let target = ''
455
- if (this.mainPrompt.toggle === false) {
475
+ if (
476
+ this.mainPrompt.toggle === false ||
477
+ !_.isBoolean(this.mainPrompt.toggle)
478
+ ) {
456
479
  draggedElement =
457
480
  this.block.metadata.config.answerObjects[evt.oldIndex]
458
- target = this.block.metadata.config.prompts.find((element) => {
459
- return (
460
- element.prompt == evt.to.firstChild.textContent.trim()
461
- )
481
+ this.block.metadata.config.prompts.forEach((outerElement) => {
482
+ const getMain = outerElement.find((element) => {
483
+ return (
484
+ element.prompt ==
485
+ evt.to.firstChild.textContent.trim()
486
+ )
487
+ })
488
+ if (getMain) {
489
+ target = getMain
490
+ }
462
491
  })
463
492
  } else {
464
493
  draggedElement =
465
494
  this.block.metadata.config.answerObjects[evt.oldIndex]
466
- target = this.block.metadata.config.prompts.find((element) => {
467
- return (
468
- element.file?.asset.public_url ==
469
- evt.to.firstElementChild.id
470
- )
495
+ this.block.metadata.config.prompts.forEach((outerElement) => {
496
+ const mainElement = outerElement.find((element) => {
497
+ return (
498
+ element.file?.asset.public_url ==
499
+ evt.to.firstElementChild.id
500
+ )
501
+ })
502
+ if (mainElement) {
503
+ target = mainElement
504
+ }
471
505
  })
472
506
  }
473
- if (_.isUndefined(target)) {
507
+ if (_.isUndefined(target) || _.isEmpty(target)) {
508
+ console.log('dragged to nowhere')
474
509
  } else if (draggedElement.id !== target.answer.id) {
475
510
  this.feedback = this.block.metadata.config.feedback_incorrect
476
511
  this.status = 'errorOutline'
@@ -480,17 +515,23 @@ export default {
480
515
  this.status = 'successOutline'
481
516
  this.allowDrag = false
482
517
  if (
483
- this.solvedQuestions.length ===
484
- this.block.metadata.config.prompts.length
518
+ this.solvedQuestions.length === this.flattenedPrompts.length
485
519
  ) {
486
520
  this.feedback = this.$t(
487
- 'plugin.games.components.content.blocks.matching_game.congratulations_feedback'
521
+ 'windward.games.components.content.blocks.matching_game.congratulations_feedback'
488
522
  )
489
523
  this.gameCompleted = true
490
524
  this.status = 'default'
491
525
  }
492
526
  }
493
527
  },
528
+ onExitFeedback() {
529
+ this.status = 'default'
530
+ this.allowDrag = true
531
+ this.feedback = this.$t(
532
+ 'windward.games.components.content.blocks.matching_game.default_feedback'
533
+ )
534
+ },
494
535
  onContinueGame() {
495
536
  if (!this.render) {
496
537
  this.startingIndex = this.startingIndex + 1
@@ -499,7 +540,7 @@ export default {
499
540
  this.mainPrompt = this.shufflePrompts.shift()
500
541
  this.allowDrag = true
501
542
  this.feedback = this.$t(
502
- 'plugin.games.components.content.blocks.matching_game.default_feedback'
543
+ 'windward.games.components.content.blocks.matching_game.default_feedback'
503
544
  )
504
545
  },
505
546
  onReset() {
@@ -510,7 +551,7 @@ export default {
510
551
  this.gameCompleted = false
511
552
  this.allowDrag = true
512
553
  this.feedback = this.$t(
513
- 'plugin.games.components.content.blocks.matching_game.default_feedback'
554
+ 'windward.games.components.content.blocks.matching_game.default_feedback'
514
555
  )
515
556
  this.setMainPrompt()
516
557
  },
@@ -538,6 +579,9 @@ export default {
538
579
  .answerCard {
539
580
  min-width: 23%;
540
581
  }
582
+ .icon--error {
583
+ color: var(--v-error-base);
584
+ }
541
585
  @media (max-width: 1270px) {
542
586
  .answerCard {
543
587
  min-width: 30%;