diff --git a/kolibri/plugins/coach/assets/src/views/lessons/LessonEditDetailsPage/EditDetailsResourceListTable.vue b/kolibri/plugins/coach/assets/src/views/lessons/LessonEditDetailsPage/EditDetailsResourceListTable.vue index 4e5983a9c56..f4e6a4d13ba 100644 --- a/kolibri/plugins/coach/assets/src/views/lessons/LessonEditDetailsPage/EditDetailsResourceListTable.vue +++ b/kolibri/plugins/coach/assets/src/views/lessons/LessonEditDetailsPage/EditDetailsResourceListTable.vue @@ -29,8 +29,8 @@ >
diff --git a/kolibri/plugins/coach/assets/src/views/quizzes/CreateExamPage/CreateQuizSection.vue b/kolibri/plugins/coach/assets/src/views/quizzes/CreateExamPage/CreateQuizSection.vue index dc66b455840..e2112164d5b 100644 --- a/kolibri/plugins/coach/assets/src/views/quizzes/CreateExamPage/CreateQuizSection.vue +++ b/kolibri/plugins/coach/assets/src/views/quizzes/CreateExamPage/CreateQuizSection.vue @@ -245,8 +245,8 @@
+ function isWrappedString(value) { + return typeof value === 'function' && value.KOLIBRI_I18N_WRAPPED_STRING; + } + export default { name: 'DragSortWidget', props: { moveUpText: { - type: String, + type: Function, required: true, + validator: isWrappedString, }, moveDownText: { - type: String, + type: Function, required: true, + validator: isWrappedString, }, isFirst: { type: Boolean, diff --git a/packages/kolibri-common/strings/searchAndFilterStrings.js b/packages/kolibri-common/strings/searchAndFilterStrings.js index c95cb96cf42..6a3aa591146 100644 --- a/packages/kolibri-common/strings/searchAndFilterStrings.js +++ b/packages/kolibri-common/strings/searchAndFilterStrings.js @@ -7,4 +7,32 @@ export const searchAndFilterStrings = createTranslator('SearchAndFilterStrings', context: 'Label for a section of the page that contains options for searching and filtering content', }, + moveChannelUpLabel: { + message: 'Move up one', + context: 'Label to rearrange channel order. Not seen on UI.', + }, + moveChannelDownLabel: { + message: 'Move down one', + context: 'Label to rearrange channel order. Not seen on UI.', + }, + + upLabel: { + message: 'Up', + context: 'Label to move an item up in a list', + }, + + downLabel: { + message: 'Down', + context: 'Label to move an item down in a list', + }, + + moveResourceUpButtonDescription: { + message: 'Move this resource one position up in this lesson', + context: 'Refers to changing the order of resources in a lesson.', + }, + + moveResourceDownButtonDescription: { + message: 'Move this resource one position down in this lesson', + context: 'Refers to changing the order of resources in a lesson.', + }, }); diff --git a/packages/kolibri/utils/i18n.js b/packages/kolibri/utils/i18n.js index 1baf915e7b2..769cb5f368c 100644 --- a/packages/kolibri/utils/i18n.js +++ b/packages/kolibri/utils/i18n.js @@ -157,6 +157,7 @@ class Translator { this._defaultMessages = defaultMessages; for (const key in defaultMessages) { this[`${key}$`] = this.$tr.bind(this, key); + this[`${key}$`].KOLIBRI_I18N_WRAPPED_STRING = true; } } $tr(messageId, args) {