diff --git a/apps/demo/src/app/app.component.html b/apps/demo/src/app/app.component.html
index 9f2045ba..61208a1d 100644
--- a/apps/demo/src/app/app.component.html
+++ b/apps/demo/src/app/app.component.html
@@ -18,8 +18,10 @@
[title]="title"
[showSignIn]="!(currentUser$ | async)"
[showSignOut]="currentUser$ | async"
+ [showAbout]="true"
(signIn)="onSignIn()"
(signOut)="onSignOut()"
+ (about)="onAbout()"
#navbar>
diff --git a/apps/demo/src/app/app.component.ts b/apps/demo/src/app/app.component.ts
index 6d24261c..1b476885 100644
--- a/apps/demo/src/app/app.component.ts
+++ b/apps/demo/src/app/app.component.ts
@@ -6,7 +6,7 @@ import { AlertController, Platform } from '@ionic/angular';
import { AlertInput } from '@ionic/core';
import { MetaService } from '@ngx-meta/core';
import { TranslateService } from '@ngx-translate/core';
-import { AuthModalComponent, AuthModalService, AuthService, ILanguagesItem, LangService, RedirectUrlDto, TokenService, User, UserTokenDto } from '@rucken/core';
+import { AuthModalComponent, AuthModalService, AuthService, ILanguagesItem, LangService, ModalsService, RedirectUrlDto, TokenService, User, UserTokenDto } from '@rucken/core';
import { GroupsService, NavbarComponent, PermissionsService } from '@rucken/ionic';
import { BindIoInner } from 'ngx-bind-io';
import { Observable, Subject } from 'rxjs';
@@ -44,6 +44,7 @@ export class AppComponent implements OnInit, OnDestroy {
private _tokenService: TokenService,
private _groupsService: GroupsService,
private _permissionsService: PermissionsService,
+ private _modalsService: ModalsService,
@Inject(PLATFORM_ID) private _platformId: Object
) {
this._authModalService.signInInfoMessage = config.authModal.signInInfoMessage;
@@ -151,4 +152,10 @@ export class AppComponent implements OnInit, OnDestroy {
onSignInError(modal: AuthModalComponent, error: any) {
this._authModalService.onSignInError(modal, error);
}
+ onAbout(data?: any): void {
+ this._modalsService.info({
+ title: config.app.title,
+ message: config.app.description
+ });
+ }
}
diff --git a/apps/demo/src/app/i18n/ru.i18n.ts b/apps/demo/src/app/i18n/ru.i18n.ts
index 127a66a9..63133641 100644
--- a/apps/demo/src/app/i18n/ru.i18n.ts
+++ b/apps/demo/src/app/i18n/ru.i18n.ts
@@ -3,7 +3,7 @@ export const RuI18n = {
Cancel: 'Отмена',
Select: 'Выбрать',
'Rucken: Ionic': 'Rucken: Ионик',
- 'Admin UI for Ionic4 with Angular7+ mobile application based on Rucken template': 'Мобильное приложение с админкой на Ionic4 и Angular7 + на основе шаблона Rucken',
+ 'Admin UI for Ionic4 with Angular7+ mobile application based on Rucken template': 'Мобильное приложение с админкой на Ionic4 и Angular7+ на основе шаблона Rucken',
Russian: 'Русский',
English: 'Английский',
'Demo users:': 'Демо пользователи:',
diff --git a/apps/demo/src/app/i18n/ru.po b/apps/demo/src/app/i18n/ru.po
index daf3f3a2..b7d723a2 100644
--- a/apps/demo/src/app/i18n/ru.po
+++ b/apps/demo/src/app/i18n/ru.po
@@ -25,7 +25,7 @@ msgid "Rucken: Ionic"
msgstr "Rucken: Ионик"
msgid "Admin UI for Ionic4 with Angular7+ mobile application based on Rucken template"
-msgstr "Мобильное приложение с админкой на Ionic4 и Angular7 + на основе шаблона Rucken"
+msgstr "Мобильное приложение с админкой на Ionic4 и Angular7+ на основе шаблона Rucken"
msgid "Russian"
msgstr "Русский"
diff --git a/libs/rucken/ionic/src/i18n/template.pot b/libs/rucken/ionic/src/i18n/template.pot
index c4edc988..27b0f8b7 100644
--- a/libs/rucken/ionic/src/i18n/template.pot
+++ b/libs/rucken/ionic/src/i18n/template.pot
@@ -94,5 +94,8 @@ msgstr ""
msgid "Error Log"
msgstr ""
+msgid "About"
+msgstr ""
+
msgid "Sign in"
msgstr ""
\ No newline at end of file
diff --git a/libs/rucken/ionic/src/lib/components/navbar/navbar.component.html b/libs/rucken/ionic/src/lib/components/navbar/navbar.component.html
index 1af717f8..ab74125b 100644
--- a/libs/rucken/ionic/src/lib/components/navbar/navbar.component.html
+++ b/libs/rucken/ionic/src/lib/components/navbar/navbar.component.html
@@ -4,6 +4,18 @@
*ngFor="let item of leftRoutes$ | async">
+
+
+
+
+ {{'About' | translate}}
+
+
+ [name]="signOutIcon">
{{'Sign out' | translate}}
@@ -23,7 +35,7 @@
*ngIf="showSignIn">
+ [name]="signInIcon">
{{'Sign in' | translate}}
diff --git a/libs/rucken/ionic/src/lib/components/navbar/navbar.component.ts b/libs/rucken/ionic/src/lib/components/navbar/navbar.component.ts
index 6804da62..ce0d6917 100644
--- a/libs/rucken/ionic/src/lib/components/navbar/navbar.component.ts
+++ b/libs/rucken/ionic/src/lib/components/navbar/navbar.component.ts
@@ -17,10 +17,20 @@ export class NavbarComponent {
@Input()
menuItemTemplate: TemplateRef = undefined;
+ @Input()
+ signInIcon = 'contact';
+ @Input()
+ signOutIcon = 'log-out';
+ @Input()
+ aboutIcon = 'information-circle';
+
@Input()
showSignIn: boolean = undefined;
@Input()
showSignOut: boolean = undefined;
+ @Input()
+ showAbout: boolean = undefined;
+
@Input()
title: string = undefined;
@@ -28,6 +38,8 @@ export class NavbarComponent {
signIn = new EventEmitter();
@Output()
signOut = new EventEmitter();
+ @Output()
+ about = new EventEmitter();
@BindObservable()
@Input()
@@ -79,4 +91,10 @@ export class NavbarComponent {
}
this.signOut.emit(signOutData);
}
+ onAboutClick(aboutData?: any) {
+ if (isDevMode() && this.about.observers.length === 0) {
+ console.warn('No subscribers found for "about"', this);
+ }
+ this.about.emit(aboutData);
+ }
}