diff options
author | Lvbo163 <lv.bo163@zte.com.cn> | 2018-01-11 10:57:14 +0800 |
---|---|---|
committer | Lvbo163 <lv.bo163@zte.com.cn> | 2018-01-11 10:57:14 +0800 |
commit | c825e1c7a6fa1aa8f1c430384620ffd0addf25f8 (patch) | |
tree | 8ac8c13f7062d1907c7f82ca364a8a0d027f6efb /sdc-workflow-designer-ui/src/app/services/notice.service.ts | |
parent | 008518dc35ded3bb6dc3e6352472b5816271f583 (diff) |
add internationalization
add i18n for internationalization
Issue-ID: SDC-901
Change-Id: I2784194b0fbf1f1b3de9dd03feb33d03ba495e15
Signed-off-by: Lvbo163 <lv.bo163@zte.com.cn>
Diffstat (limited to 'sdc-workflow-designer-ui/src/app/services/notice.service.ts')
-rw-r--r-- | sdc-workflow-designer-ui/src/app/services/notice.service.ts | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/sdc-workflow-designer-ui/src/app/services/notice.service.ts b/sdc-workflow-designer-ui/src/app/services/notice.service.ts new file mode 100644 index 00000000..ea081e96 --- /dev/null +++ b/sdc-workflow-designer-ui/src/app/services/notice.service.ts @@ -0,0 +1,54 @@ +/** + * Copyright (c) 2017 ZTE Corporation. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * and the Apache License 2.0 which both accompany this distribution, + * and are available at http://www.eclipse.org/legal/epl-v10.html + * and http://www.apache.org/licenses/LICENSE-2.0 + * + * Contributors: + * ZTE - initial API and implementation and/or initial documentation + */ + +import { Injectable } from '@angular/core'; +import { Subject } from 'rxjs/Subject'; + +import { Notice } from '../model/notice'; +import { NoticeType } from '../model/notice-type.enum'; + +/** + * NotifyService + * display notify infos. + */ +@Injectable() +export class NoticeService { + public showNotice = new Subject<Notice>(); + public showNotice$ = this.showNotice.asObservable(); + constructor() { } + + public success(content: string, timeout: number = 5000) { + this.addNotice(NoticeType.success, content, timeout); + } + + public info(content: string, timeout: number = 10000) { + this.addNotice(NoticeType.info, content, timeout); + } + + public warn(content: string, timeout: number = 30000) { + this.addNotice(NoticeType.warning, content, timeout); + } + + public error(content: string, timeout: number = 0) { + this.addNotice(NoticeType.danger, content, timeout); + } + + /** + * showNotify + * @param type + * @param content + */ + private addNotice(type: NoticeType, content: string, timeout: number = 0): void { + const notice = new Notice(type, content, timeout); + this.showNotice.next(notice); + } +} |