diff --git a/contentcuration/contentcuration/frontend/accounts/pages/Main.vue b/contentcuration/contentcuration/frontend/accounts/pages/Main.vue
index 49833f60e2..c2ba1f5616 100644
--- a/contentcuration/contentcuration/frontend/accounts/pages/Main.vue
+++ b/contentcuration/contentcuration/frontend/accounts/pages/Main.vue
@@ -12,13 +12,13 @@
class="pa-4"
style="width: 300px;margin: 0 auto;"
>
-
+
+
+
{{ $tr('kolibriStudio') }}
@@ -227,4 +227,9 @@
width: 100%;
}
+ .k-logo-container {
+ display: flex;
+ justify-content: center;
+ }
+
diff --git a/contentcuration/contentcuration/frontend/administration/pages/Channels/ChannelTable.vue b/contentcuration/contentcuration/frontend/administration/pages/Channels/ChannelTable.vue
index b4185d8a85..d9ee750c28 100644
--- a/contentcuration/contentcuration/frontend/administration/pages/Channels/ChannelTable.vue
+++ b/contentcuration/contentcuration/frontend/administration/pages/Channels/ChannelTable.vue
@@ -52,7 +52,7 @@
diff --git a/contentcuration/contentcuration/frontend/administration/pages/Users/UserTable.vue b/contentcuration/contentcuration/frontend/administration/pages/Users/UserTable.vue
index 66953024d3..199d1f1ef4 100644
--- a/contentcuration/contentcuration/frontend/administration/pages/Users/UserTable.vue
+++ b/contentcuration/contentcuration/frontend/administration/pages/Users/UserTable.vue
@@ -63,7 +63,7 @@
:class="{ expanded: $vuetify.breakpoint.mdAndUp }"
>
-
+
diff --git a/contentcuration/contentcuration/frontend/channelEdit/components/ContentNodeValidator.vue b/contentcuration/contentcuration/frontend/channelEdit/components/ContentNodeValidator.vue
index d37b6022cb..c35742e8ba 100644
--- a/contentcuration/contentcuration/frontend/channelEdit/components/ContentNodeValidator.vue
+++ b/contentcuration/contentcuration/frontend/channelEdit/components/ContentNodeValidator.vue
@@ -9,7 +9,7 @@
-
+
error
@@ -19,7 +19,7 @@
-
+
warning
diff --git a/contentcuration/contentcuration/frontend/channelEdit/components/StudioTree/StudioTree.vue b/contentcuration/contentcuration/frontend/channelEdit/components/StudioTree/StudioTree.vue
index a4c08c1c0f..f816b6d240 100644
--- a/contentcuration/contentcuration/frontend/channelEdit/components/StudioTree/StudioTree.vue
+++ b/contentcuration/contentcuration/frontend/channelEdit/components/StudioTree/StudioTree.vue
@@ -118,6 +118,7 @@
v-if="loading"
class="mx-3"
indeterminate
+ color="loading"
size="15"
width="2"
/>
diff --git a/contentcuration/contentcuration/frontend/channelEdit/components/edit/EditModal.vue b/contentcuration/contentcuration/frontend/channelEdit/components/edit/EditModal.vue
index 995072d190..6faeb52413 100644
--- a/contentcuration/contentcuration/frontend/channelEdit/components/edit/EditModal.vue
+++ b/contentcuration/contentcuration/frontend/channelEdit/components/edit/EditModal.vue
@@ -22,7 +22,7 @@
-
+
{{ $tr('savingIndicator') }}
diff --git a/contentcuration/contentcuration/frontend/channelEdit/views/TreeView/TreeViewBase.vue b/contentcuration/contentcuration/frontend/channelEdit/views/TreeView/TreeViewBase.vue
index 5566b290a0..a76b0494f6 100644
--- a/contentcuration/contentcuration/frontend/channelEdit/views/TreeView/TreeViewBase.vue
+++ b/contentcuration/contentcuration/frontend/channelEdit/views/TreeView/TreeViewBase.vue
@@ -73,7 +73,7 @@
v-on="on"
>
{{ $formatNumber(errorsInChannel) }}
-
+
warning
@@ -204,7 +204,7 @@
-
+
-
+
@@ -31,7 +35,7 @@
:to="getChannelLink(listType)"
@click="trackTabClick(listType)"
>
-
+
{{ $formatNumber(invitationsByListCounts[listType]) }}
@@ -96,7 +100,6 @@
import { ChannelListTypes } from 'shared/constants';
import { constantsTranslationMixin, routerMixin } from 'shared/mixins';
import GlobalSnackbar from 'shared/views/GlobalSnackbar';
- import KolibriLogo from 'shared/views/KolibriLogo';
import AppBar from 'shared/views/AppBar';
import OfflineText from 'shared/views/OfflineText';
import PolicyModals from 'shared/views/policies/PolicyModals';
@@ -123,7 +126,6 @@
ChannelInvitation,
ChannelListAppError,
GlobalSnackbar,
- KolibriLogo,
PolicyModals,
OfflineText,
},
diff --git a/contentcuration/contentcuration/frontend/settings/pages/Storage/RequestForm.vue b/contentcuration/contentcuration/frontend/settings/pages/Storage/RequestForm.vue
index faa01aac37..aaed431916 100644
--- a/contentcuration/contentcuration/frontend/settings/pages/Storage/RequestForm.vue
+++ b/contentcuration/contentcuration/frontend/settings/pages/Storage/RequestForm.vue
@@ -142,7 +142,7 @@
v-for="affiliation in affiliationOptions"
:key="affiliation.value"
v-model="org_or_personal"
- :value="affiliation.value"
+ :buttonValue="affiliation.value"
:invalid="errors.org_or_personal"
:showInvalidText="errors.org_or_personal"
:invalidText="$tr('fieldRequiredText')"
@@ -172,7 +172,7 @@
v-for="orgType in organizationTypeOptions"
:key="orgType.value"
v-model="organization_type"
- :value="orgType.value"
+ :buttonValue="orgType.value"
:invalid="errors.organization_type"
:showInvalidText="errors.organization_type"
:invalidText="$tr('fieldRequiredText')"
@@ -199,7 +199,7 @@
v-for="constraint in timeConstraintOptions"
:key="constraint.value"
v-model="time_constraint"
- :value="constraint.value"
+ :buttonValue="constraint.value"
:label="constraint.text"
/>
diff --git a/contentcuration/contentcuration/frontend/shared/i18n/index.js b/contentcuration/contentcuration/frontend/shared/i18n/index.js
index 249b5ac561..f6a2ebf17f 100644
--- a/contentcuration/contentcuration/frontend/shared/i18n/index.js
+++ b/contentcuration/contentcuration/frontend/shared/i18n/index.js
@@ -1,15 +1,28 @@
import Vue from 'vue';
import has from 'lodash/has';
-import { languageDirections, defaultLanguage } from 'kolibri-design-system/lib/utils/i18n';
import importVueIntlLocaleData from './vue-intl-locale-data';
import importIntlLocale from './intl-locale-data';
-export {
- languageDirections,
- defaultLanguage,
- languageValidator,
- getContentLangDir,
-} from 'kolibri-design-system/lib/utils/i18n';
+const languageDirections = {
+ LTR: 'ltr',
+ RTL: 'rtl',
+};
+
+const defaultLanguage = {
+ id: 'en',
+ lang_name: 'English',
+ lang_direction: languageDirections.LTR,
+};
+
+const languageValidator = language => {
+ return ['id', 'lang_name', 'lang_direction'].reduce((valid, key) => valid && language[key], true);
+};
+
+const getContentLangDir = language => {
+ return (language || {}).lang_direction || languageDirections.LTR;
+};
+
+export { languageDirections, defaultLanguage, languageValidator, getContentLangDir };
let _i18nReady = false;
diff --git a/contentcuration/contentcuration/frontend/shared/languageSwitcher/LanguageSwitcherModal.vue b/contentcuration/contentcuration/frontend/shared/languageSwitcher/LanguageSwitcherModal.vue
index 9eb3c03362..d3c8cfe83b 100644
--- a/contentcuration/contentcuration/frontend/shared/languageSwitcher/LanguageSwitcherModal.vue
+++ b/contentcuration/contentcuration/frontend/shared/languageSwitcher/LanguageSwitcherModal.vue
@@ -19,7 +19,7 @@
v-for="language in languageCol"
:key="language.id"
v-model="selectedLanguage"
- :value="language.id"
+ :buttonValue="language.id"
:label="language.lang_name"
:title="language.english_name"
class="language-name"
diff --git a/contentcuration/contentcuration/frontend/shared/layouts/ImmersiveModalLayout.vue b/contentcuration/contentcuration/frontend/shared/layouts/ImmersiveModalLayout.vue
index 89f53056a9..ef83b58e64 100644
--- a/contentcuration/contentcuration/frontend/shared/layouts/ImmersiveModalLayout.vue
+++ b/contentcuration/contentcuration/frontend/shared/layouts/ImmersiveModalLayout.vue
@@ -1,7 +1,7 @@
-
+
arrow_back
diff --git a/contentcuration/contentcuration/frontend/shared/views/AppBar.vue b/contentcuration/contentcuration/frontend/shared/views/AppBar.vue
index f437e06e51..9563455463 100644
--- a/contentcuration/contentcuration/frontend/shared/views/AppBar.vue
+++ b/contentcuration/contentcuration/frontend/shared/views/AppBar.vue
@@ -3,10 +3,9 @@
@@ -15,11 +14,14 @@
v-else
:href="homeLink"
exact
- color="white"
+ color="appBar"
class="ma-0"
style="border-radius: 8px;"
>
-
+
@@ -31,9 +33,17 @@