Themed LangSwitchComponent

(cherry picked from commit f9b4460e70)
This commit is contained in:
Alexandre Vryghem
2023-09-26 12:02:55 +02:00
committed by github-actions[bot]
parent d6de6fee6c
commit d7f1d37e41
10 changed files with 47 additions and 4 deletions

View File

@@ -7,7 +7,7 @@
<nav role="navigation" [attr.aria-label]="'nav.user.description' | translate" class="navbar navbar-light navbar-expand-md flex-shrink-0 px-0"> <nav role="navigation" [attr.aria-label]="'nav.user.description' | translate" class="navbar navbar-light navbar-expand-md flex-shrink-0 px-0">
<ds-themed-search-navbar></ds-themed-search-navbar> <ds-themed-search-navbar></ds-themed-search-navbar>
<ds-lang-switch></ds-lang-switch> <ds-themed-lang-switch></ds-themed-lang-switch>
<ds-context-help-toggle></ds-context-help-toggle> <ds-context-help-toggle></ds-context-help-toggle>
<ds-themed-auth-nav-menu></ds-themed-auth-nav-menu> <ds-themed-auth-nav-menu></ds-themed-auth-nav-menu>
<ds-impersonate-navbar></ds-impersonate-navbar> <ds-impersonate-navbar></ds-impersonate-navbar>

View File

@@ -33,7 +33,7 @@ export class LangSwitchComponent implements OnInit {
this.activeLangs = environment.languages.filter((MyLangConfig) => MyLangConfig.active === true); this.activeLangs = environment.languages.filter((MyLangConfig) => MyLangConfig.active === true);
this.moreThanOneLanguage = (this.activeLangs.length > 1); this.moreThanOneLanguage = (this.activeLangs.length > 1);
if (!this.moreThanOneLanguage) { if (!this.moreThanOneLanguage) {
this.el.nativeElement.style.display = 'none'; this.el.nativeElement.parentElement.classList.add('d-none');
} }
} }

View File

@@ -0,0 +1,27 @@
import { Component } from '@angular/core';
import { ThemedComponent } from '../theme-support/themed.component';
import { LangSwitchComponent } from './lang-switch.component';
/**
* Themed wrapper for {@link LangSwitchComponent}
*/
@Component({
selector: 'ds-themed-lang-switch',
styleUrls: [],
templateUrl: '../theme-support/themed.component.html',
})
export class ThemedLangSwitchComponent extends ThemedComponent<LangSwitchComponent> {
protected getComponentName(): string {
return 'LangSwitchComponent';
}
protected importThemedComponent(themeName: string): Promise<any> {
return import(`../../../themes/${themeName}/app/shared/lang-switch/lang-switch.component`);
}
protected importUnthemedComponent(): Promise<any> {
return import(`./lang-switch.component`);
}
}

View File

@@ -281,6 +281,7 @@ import {
} from '../item-page/simple/field-components/specific-field/title/themed-item-page-field.component'; } from '../item-page/simple/field-components/specific-field/title/themed-item-page-field.component';
import { BitstreamListItemComponent } from './object-list/bitstream-list-item/bitstream-list-item.component'; import { BitstreamListItemComponent } from './object-list/bitstream-list-item/bitstream-list-item.component';
import { NgxPaginationModule } from 'ngx-pagination'; import { NgxPaginationModule } from 'ngx-pagination';
import { ThemedLangSwitchComponent } from './lang-switch/themed-lang-switch.component';
const MODULES = [ const MODULES = [
CommonModule, CommonModule,
@@ -332,6 +333,7 @@ const COMPONENTS = [
DsSelectComponent, DsSelectComponent,
ErrorComponent, ErrorComponent,
LangSwitchComponent, LangSwitchComponent,
ThemedLangSwitchComponent,
LoadingComponent, LoadingComponent,
ThemedLoadingComponent, ThemedLoadingComponent,
LogInComponent, LogInComponent,

View File

@@ -0,0 +1,12 @@
import { Component } from '@angular/core';
import { LangSwitchComponent as BaseComponent } from '../../../../../app/shared/lang-switch/lang-switch.component';
@Component({
selector: 'ds-lang-switch',
// styleUrls: ['./lang-switch.component.scss'],
styleUrls: ['../../../../../app/shared/lang-switch/lang-switch.component.scss'],
// templateUrl: './lang-switch.component.html',
templateUrl: '../../../../../app/shared/lang-switch/lang-switch.component.html',
})
export class LangSwitchComponent extends BaseComponent {
}

View File

@@ -54,6 +54,7 @@ import {
ItemSearchResultListElementComponent ItemSearchResultListElementComponent
} from './app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component'; } from './app/shared/object-list/search-result-list-element/item-search-result/item-types/item/item-search-result-list-element.component';
import { TopLevelCommunityListComponent } from './app/home-page/top-level-community-list/top-level-community-list.component'; import { TopLevelCommunityListComponent } from './app/home-page/top-level-community-list/top-level-community-list.component';
import { LangSwitchComponent } from './app/shared/lang-switch/lang-switch.component';
/** /**
@@ -91,6 +92,7 @@ const DECLARATIONS = [
EditCollectionSelectorComponent, EditCollectionSelectorComponent,
EditCommunitySelectorComponent, EditCommunitySelectorComponent,
EditItemSelectorComponent, EditItemSelectorComponent,
LangSwitchComponent,
]; ];
@NgModule({ @NgModule({

View File

@@ -7,7 +7,7 @@
</div> </div>
<div class="d-flex flex-grow-1 ml-auto justify-content-end align-items-center"> <div class="d-flex flex-grow-1 ml-auto justify-content-end align-items-center">
<ds-themed-search-navbar></ds-themed-search-navbar> <ds-themed-search-navbar></ds-themed-search-navbar>
<ds-lang-switch></ds-lang-switch> <ds-themed-lang-switch></ds-themed-lang-switch>
<ds-context-help-toggle></ds-context-help-toggle> <ds-context-help-toggle></ds-context-help-toggle>
<ds-themed-auth-nav-menu></ds-themed-auth-nav-menu> <ds-themed-auth-nav-menu></ds-themed-auth-nav-menu>
<ds-impersonate-navbar></ds-impersonate-navbar> <ds-impersonate-navbar></ds-impersonate-navbar>

View File

@@ -16,7 +16,7 @@
</ul> </ul>
</div> </div>
<ds-search-navbar class="navbar-collapsed"></ds-search-navbar> <ds-search-navbar class="navbar-collapsed"></ds-search-navbar>
<ds-lang-switch class="navbar-collapsed"></ds-lang-switch> <ds-themed-lang-switch class="navbar-collapsed"></ds-themed-lang-switch>
<ds-context-help-toggle class="navbar-collapsed"></ds-context-help-toggle> <ds-context-help-toggle class="navbar-collapsed"></ds-context-help-toggle>
<ds-themed-auth-nav-menu class="navbar-collapsed"></ds-themed-auth-nav-menu> <ds-themed-auth-nav-menu class="navbar-collapsed"></ds-themed-auth-nav-menu>
<ds-impersonate-navbar class="navbar-collapsed"></ds-impersonate-navbar> <ds-impersonate-navbar class="navbar-collapsed"></ds-impersonate-navbar>