diff options
Diffstat (limited to 'components/datalake-handler/admin/src')
109 files changed, 612 insertions, 3219 deletions
diff --git a/components/datalake-handler/admin/src/app/app-routing.module.ts b/components/datalake-handler/admin/src/app/app-routing.module.ts deleted file mode 100644 index 50802a6b..00000000 --- a/components/datalake-handler/admin/src/app/app-routing.module.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { NgModule } from "@angular/core"; -import { Routes, RouterModule } from "@angular/router"; - -import { FeederComponent } from "./feeder/feeder.component"; -import { TopicsComponent } from "./topics/topics.component"; -import { DatabaseComponent } from "./database/database.component"; - -const routes: Routes = [ - { path: "", redirectTo: "/feeder", pathMatch: "full" }, - { path: "feeder", component: FeederComponent }, - { path: "topics", component: TopicsComponent }, - { path: "database", component: DatabaseComponent } -]; - -@NgModule({ - imports: [ - RouterModule.forRoot(routes, { - useHash: true - }) - ], - exports: [RouterModule] -}) -export class AppRoutingModule {} diff --git a/components/datalake-handler/admin/src/app/app.component.css b/components/datalake-handler/admin/src/app/app.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/app.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/app.component.html b/components/datalake-handler/admin/src/app/app.component.html deleted file mode 100644 index 68a6dfc6..00000000 --- a/components/datalake-handler/admin/src/app/app.component.html +++ /dev/null @@ -1,23 +0,0 @@ -<div id="container"> - <div class="container-fluid"> - <div class="row"> - <div class="col-md-2 sidebar-header p-0"></div> - <div class="col-md-10 header pl-3 pr-3"> - <app-header></app-header> - </div> - </div> - </div> - - <div class="container-fluid"> - <div class="row"> - <div class="col-md-2 sidebar p-0"> - <app-sidebar></app-sidebar> - </div> - - <div class="col-md-10 content pl-3 pr-3"> - <hr> - <router-outlet></router-outlet> - </div> - </div> - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/app.component.spec.ts b/components/datalake-handler/admin/src/app/app.component.spec.ts deleted file mode 100644 index 631c2c55..00000000 --- a/components/datalake-handler/admin/src/app/app.component.spec.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { TestBed, async } from '@angular/core/testing'; -import { RouterTestingModule } from '@angular/router/testing'; -import { AppComponent } from './app.component'; - -describe('AppComponent', () => { - beforeEach(async(() => { - TestBed.configureTestingModule({ - imports: [ - RouterTestingModule - ], - declarations: [ - AppComponent - ], - }).compileComponents(); - })); - - it('should create the app', () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.debugElement.componentInstance; - expect(app).toBeTruthy(); - }); - - it(`should have as title 'admin'`, () => { - const fixture = TestBed.createComponent(AppComponent); - const app = fixture.debugElement.componentInstance; - expect(app.title).toEqual('admin'); - }); - - it('should render title in a h1 tag', () => { - const fixture = TestBed.createComponent(AppComponent); - fixture.detectChanges(); - const compiled = fixture.debugElement.nativeElement; - expect(compiled.querySelector('h1').textContent).toContain('Welcome to admin!'); - }); -}); diff --git a/components/datalake-handler/admin/src/app/app.component.ts b/components/datalake-handler/admin/src/app/app.component.ts deleted file mode 100644 index 01be458c..00000000 --- a/components/datalake-handler/admin/src/app/app.component.ts +++ /dev/null @@ -1,9 +0,0 @@ -import { Component } from "@angular/core"; -@Component({ - selector: "app-root", - templateUrl: "./app.component.html", - styleUrls: ["./app.component.css"] -}) -export class AppComponent { - title = "app"; -} diff --git a/components/datalake-handler/admin/src/app/app.module.ts b/components/datalake-handler/admin/src/app/app.module.ts deleted file mode 100644 index 07045363..00000000 --- a/components/datalake-handler/admin/src/app/app.module.ts +++ /dev/null @@ -1,82 +0,0 @@ -import { BrowserModule } from "@angular/platform-browser"; -import { NgModule } from "@angular/core"; -import { FormsModule } from "@angular/forms"; -import { NgbModule } from "@ng-bootstrap/ng-bootstrap"; - -import { AppRoutingModule } from "./app-routing.module"; -import { AppComponent } from "./app.component"; - -import { HeaderComponent } from "./header/header.component"; -import { SidebarComponent } from "./sidebar/sidebar.component"; - -import { FeederComponent } from "./feeder/feeder.component"; -import { TopicsComponent } from "./topics/topics.component"; -import { DatabaseComponent } from "./database/database.component"; -import { TopicListComponent } from "./topics/topic-list/topic-list.component"; - -// Service -import { HeaderService } from "./core/services/header.service"; -import { RestApiService } from "./core/services/rest-api.service"; - -// i18n -import { TranslateModule, TranslateLoader } from "@ngx-translate/core"; -import { TranslateHttpLoader } from "@ngx-translate/http-loader"; - -export function createLoader(http: HttpClient) { - return new TranslateHttpLoader(http); -} - -// REST API -import { HttpClientModule } from "@angular/common/http"; -import { HttpClient } from "@angular/common/http"; - -import { DatabaseListComponent } from "./database/database-list/database-list.component"; -import { NgxDatatableModule } from "@swimlane/ngx-datatable"; -import { CouchbaseComponent } from "./database/database-list/dbs-modal/couchbase/couchbase.component"; -import { MongodbComponent } from "./database/database-list/dbs-modal/mongodb/mongodb.component"; -import { DatabaseAddModalComponent } from "./database/database-list/database-add-modal/database-add-modal.component"; -import { ElasticsearchComponent } from "./database/database-list/dbs-modal/elasticsearch/elasticsearch.component"; -import { DruidComponent } from "./database/database-list/dbs-modal/druid/druid.component"; - -@NgModule({ - declarations: [ - AppComponent, - HeaderComponent, - SidebarComponent, - FeederComponent, - TopicsComponent, - DatabaseComponent, - TopicListComponent, - DatabaseListComponent, - CouchbaseComponent, - MongodbComponent, - DatabaseAddModalComponent, - ElasticsearchComponent, - DruidComponent - ], - imports: [ - BrowserModule, - AppRoutingModule, - NgbModule, - HttpClientModule, - TranslateModule.forRoot({ - loader: { - provide: TranslateLoader, - useFactory: createLoader, - deps: [HttpClient] - } - }), - FormsModule, - NgxDatatableModule - ], - providers: [HeaderService, RestApiService], - bootstrap: [AppComponent], - entryComponents: [ - DatabaseAddModalComponent, - CouchbaseComponent, - DruidComponent, - ElasticsearchComponent, - MongodbComponent - ] -}) -export class AppModule {} diff --git a/components/datalake-handler/admin/src/app/core/models/DB/db.model.ts b/components/datalake-handler/admin/src/app/core/models/DB/db.model.ts deleted file mode 100644 index 473c32c0..00000000 --- a/components/datalake-handler/admin/src/app/core/models/DB/db.model.ts +++ /dev/null @@ -1,8 +0,0 @@ -export class Db { - name: string; - host: string; - port: number; - login: string; - pass: string; - ssl: boolean; -} diff --git a/components/datalake-handler/admin/src/app/core/models/Topic/topic.model.ts b/components/datalake-handler/admin/src/app/core/models/Topic/topic.model.ts deleted file mode 100644 index f3eb8f15..00000000 --- a/components/datalake-handler/admin/src/app/core/models/Topic/topic.model.ts +++ /dev/null @@ -1,14 +0,0 @@ -export class Topic { - name: string; - login: string; - pass: string; - dbs: any; - enable: boolean; - save_raw: boolean; - data_format: string; - ttl: number; - correlate_cleared_message: boolean; - message_id_path: string; - // for UI display - type: string; -} diff --git a/components/datalake-handler/admin/src/app/core/services/header.service.spec.ts b/components/datalake-handler/admin/src/app/core/services/header.service.spec.ts deleted file mode 100644 index f6eccf8f..00000000 --- a/components/datalake-handler/admin/src/app/core/services/header.service.spec.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { TestBed } from "@angular/core/testing"; - -import { HeaderService } from "./header.service"; - -describe("HeaderService", () => { - beforeEach(() => TestBed.configureTestingModule({})); - - it("should be created", () => { - const service: HeaderService = TestBed.get(HeaderService); - expect(service).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/core/services/header.service.ts b/components/datalake-handler/admin/src/app/core/services/header.service.ts deleted file mode 100644 index f0e16d79..00000000 --- a/components/datalake-handler/admin/src/app/core/services/header.service.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Injectable } from "@angular/core"; -import { BehaviorSubject } from "rxjs"; - -@Injectable() -export class HeaderService { - public title = new BehaviorSubject("Title"); - - constructor() {} - - setTitle(title: string) { - this.title.next(title); - } -} diff --git a/components/datalake-handler/admin/src/app/core/services/rest-api.service.spec.ts b/components/datalake-handler/admin/src/app/core/services/rest-api.service.spec.ts deleted file mode 100644 index 32e8d79a..00000000 --- a/components/datalake-handler/admin/src/app/core/services/rest-api.service.spec.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { TestBed } from "@angular/core/testing"; - -import { RestApiService } from "./rest-api.service"; - -describe("RestApiService", () => { - beforeEach(() => TestBed.configureTestingModule({})); - - it("should be created", () => { - const service: RestApiService = TestBed.get(RestApiService); - expect(service).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/core/services/rest-api.service.ts b/components/datalake-handler/admin/src/app/core/services/rest-api.service.ts deleted file mode 100644 index efb3ad3e..00000000 --- a/components/datalake-handler/admin/src/app/core/services/rest-api.service.ts +++ /dev/null @@ -1,52 +0,0 @@ -import { Injectable } from "@angular/core"; -import { - HttpClient, - HttpHeaders, - HttpErrorResponse -} from "@angular/common/http"; -import { Observable, of } from "rxjs"; -import { map, catchError, tap } from "rxjs/operators"; - -const httpOptions = { - headers: new HttpHeaders({ - "Content-Type": "application/json" - }) -}; - -@Injectable({ - providedIn: "root" -}) -export class RestApiService { - constructor(private http: HttpClient) {} - - private extractData(res: Response) { - let body = res; - return body || {}; - } - - private handleError<T>(operation = "operation", result?: T) { - return (error: any): Observable<T> => { - // TODO: send the error to remote logging infrastructure - console.error(error); // log to console instead - - // TODO: better job of transforming error for user consumption - console.log(`${operation} failed: ${error.message}`); - - // Let the app keep running by returning an empty result. - return of(result as T); - }; - } - - getTopics(): Observable<any> { - return this.http.get("/topics/dmaap/").pipe(map(this.extractData)); - } - - /* - updateProduct (id, product): Observable<any> { - return this.http.put(endpoint + 'products/' + id, JSON.stringify(product), httpOptions).pipe( - tap(_ => console.log(`updated product id=${id}`)), - catchError(this.handleError<any>('updateProduct')) - ); - } - */ -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.css b/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.css deleted file mode 100644 index 8b137891..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.css +++ /dev/null @@ -1 +0,0 @@ - diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.html b/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.html deleted file mode 100644 index 4a8e8774..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.html +++ /dev/null @@ -1,59 +0,0 @@ -<div class="modal-header border-0"> - -</div> -<div class="modal-body"> - <div class="container-fluid"> - - <div class="row"> - <div class="col-md-3 border-right"> - <div class="row"> - - - - <ul class="nav nav-tabs flex-column"> - <li class="nav-item"> - <a class="nav-link active" id="all-tab" data-toggle="tab" href="#all" role="tab" aria-controls="all" - aria-selected="true">All</a> - </li> - <li class="nav-item"> - <a class="nav-link" id="tsdb-tab" data-toggle="tab" href="#tsdb" role="tab" aria-controls="tsdb" - aria-selected="false">TSDB</a> - </li> - <li class="nav-item"> - <a class="nav-link" id="olap-tab" data-toggle="tab" href="#olap" role="tab" aria-controls="olap" - aria-selected="false">OLAP</a> - </li> - </ul> - - - </div> - </div> - <div class="col-md-9"> - <div class="tab-content" id="dbTabContent"> - <div class="tab-pane fade show active" id="all" role="tabpanel" aria-labelledby="all-tab"> - - <div class="list-group"> - <a class="list-group-item list-group-item-action" [ngClass]="{'active': seletedDb == 'Couchbase'}" - (click)="clickDb('Couchbase')">Couchbase</a> - <a class="list-group-item list-group-item-action" [ngClass]="{'active': seletedDb == 'Druid'}" - (click)="clickDb('Druid')">Druid</a> - <a class="list-group-item list-group-item-action" [ngClass]="{'active': seletedDb == 'Elasticsearch'}" - (click)="clickDb('Elasticsearch')">Elasticsearch</a> - <a class="list-group-item list-group-item-action" [ngClass]="{'active': seletedDb == 'MongoDB'}" - (click)="clickDb('MongoDB')">MongoDB</a> - </div> - - </div> - - <div class="tab-pane fade" id="tsdb" role="tabpanel" aria-labelledby="tsdb-tab">tsdb dbs</div> - <div class="tab-pane fade" id="olap" role="tabpanel" aria-labelledby="olap-tab">olap dbs</div> - </div> - </div> - </div> - - </div> -</div> -<div class="modal-footer border-0"> - <button type="submit" class="btn btn-primary" (click)="openDbDetailModal()">OK</button> - <button type="button" class="btn btn-outline-dark" (click)="activeModal.close('Close click')">Cancel</button> -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.spec.ts deleted file mode 100644 index fec2d097..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { DatabaseAddModalComponent } from './database-add-modal.component'; - -describe('DatabaseAddModalComponent', () => { - let component: DatabaseAddModalComponent; - let fixture: ComponentFixture<DatabaseAddModalComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ DatabaseAddModalComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(DatabaseAddModalComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.ts b/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.ts deleted file mode 100644 index 022220ce..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-add-modal/database-add-modal.component.ts +++ /dev/null @@ -1,73 +0,0 @@ -import { Component, OnInit, Input, ViewChild } from "@angular/core"; -import { NgbModal, NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; - -// DB modal components -import { CouchbaseComponent } from "../dbs-modal/couchbase/couchbase.component"; -import { DruidComponent } from "../dbs-modal/druid/druid.component"; -import { ElasticsearchComponent } from "../dbs-modal/elasticsearch/elasticsearch.component"; -import { MongodbComponent } from "../dbs-modal/mongodb/mongodb.component"; - -@Component({ - selector: "app-database-add-modal", - templateUrl: "./database-add-modal.component.html", - styleUrls: ["./database-add-modal.component.css"] -}) -export class DatabaseAddModalComponent implements OnInit { - seletedDb: string; - - constructor( - private modalService: NgbModal, - public activeModal: NgbActiveModal - ) {} - - ngOnInit() {} - - clickDb(name: any) { - console.log("seleted: " + name); - if (name != null) { - this.seletedDb = name; - } - } - - openDbDetailModal() { - this.activeModal.close(); - - switch (this.seletedDb) { - case "Couchbase": { - const modalRef = this.modalService.open(CouchbaseComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - case "Druid": { - const modalRef = this.modalService.open(DruidComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - case "Elasticsearch": { - const modalRef = this.modalService.open(ElasticsearchComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - case "MongoDB": { - const modalRef = this.modalService.open(MongodbComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - default: { - break; - } - } - } -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.css b/components/datalake-handler/admin/src/app/database/database-list/database-list.component.css deleted file mode 100644 index ef7724a1..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.css +++ /dev/null @@ -1,14 +0,0 @@ -.db-panel { - background: #FFFFFF; - box-shadow: 3px 3px 11px 0 #D2D3D5; - border-radius: 20px; - position: relative; - /*width: 100%; - padding-top: 75%;*/ - /* 4:3 Aspect Ratio */ - font-family: "Open Sans", sans-serif; - font-size: 18px; - color: #313032; - /*vertical-align: middle;*/ - text-align: center; -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.html b/components/datalake-handler/admin/src/app/database/database-list/database-list.component.html deleted file mode 100644 index 2f560350..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.html +++ /dev/null @@ -1,22 +0,0 @@ -<div class="d-flex flex-wrap"> - <div *ngFor="let db of dbs; let i = index; let lastRecord = last" class="col-3 p-2"> - <div class="db-panel w-100 mh-100"> - <div class="row"> - <div class="col-12"> - <button type="button" class="btn" (click)="openDbDetailModal(db)"> - icon - </button> - </div> - <div class="col-12">{{ db.name }}</div> - </div> - </div> - </div> - <div class="col-3 p-2"> - <div class="db-panel w-100 mh-100"> - <button type="button" class="btn btn-dl-dark-plus" (click)="openDbAddModal()"> - <i class="fas fa-plus fa-2x"></i> - </button> - </div> - - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/database-list.component.spec.ts deleted file mode 100644 index c65f8266..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { DatabaseListComponent } from './database-list.component'; - -describe('DatabaseListComponent', () => { - let component: DatabaseListComponent; - let fixture: ComponentFixture<DatabaseListComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ DatabaseListComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(DatabaseListComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.ts b/components/datalake-handler/admin/src/app/database/database-list/database-list.component.ts deleted file mode 100644 index 5fb941b9..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/database-list.component.ts +++ /dev/null @@ -1,118 +0,0 @@ -import { Component, OnInit, ViewChild, ElementRef } from "@angular/core"; -import { Db } from "../../core/models/DB/db.model"; -import { NgbModal, ModalDismissReasons } from "@ng-bootstrap/ng-bootstrap"; -import { DatabaseAddModalComponent } from "./database-add-modal/database-add-modal.component"; - -// DB modal components -import { CouchbaseComponent } from "./dbs-modal/couchbase/couchbase.component"; -import { DruidComponent } from "./dbs-modal/druid/druid.component"; -import { ElasticsearchComponent } from "./dbs-modal/elasticsearch/elasticsearch.component"; -import { MongodbComponent } from "./dbs-modal/mongodb/mongodb.component"; - -@Component({ - selector: "app-database-list", - templateUrl: "./database-list.component.html", - styleUrls: ["./database-list.component.css"] -}) -export class DatabaseListComponent implements OnInit { - constructor(private modalService: NgbModal) {} - - @ViewChild("addDbModal") private addDBModal: ElementRef; - - dbs: Db[] = []; - - dbSupports: any[]; - - ngOnInit() { - // TODO: rest api - this.dbs.push( - { - name: "Couchbase", - host: "host1", - login: "login1", - pass: "pass1", - port: 111, - ssl: true - }, - { - name: "Druid", - host: "host2", - login: "login2", - pass: "pass2", - port: 222, - ssl: true - }, - { - name: "Elasticsearch", - host: "host3", - login: "login3", - pass: "pass3", - port: 333, - ssl: false - }, - { - name: "MongoDB", - host: "host4", - login: "login4", - pass: "pass4", - port: 444, - ssl: false - } - ); - } - - openDbAddModal() { - this.modalService.open(DatabaseAddModalComponent, { - size: "lg", - centered: true - }); - } - - openDbDetailModal(db: Db) { - console.log("db name: " + db.name); - - switch (db.name) { - case "Couchbase": { - const modalRef = this.modalService.open(CouchbaseComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.dbname = "Couchbase"; - modalRef.componentInstance.name = db.name; - modalRef.componentInstance.host = db.host; - modalRef.componentInstance.port = db.port; - modalRef.componentInstance.login = db.login; - modalRef.componentInstance.pass = db.pass; - modalRef.componentInstance.ssl = db.ssl; - break; - } - case "Druid": { - const modalRef = this.modalService.open(DruidComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - case "Elasticsearch": { - const modalRef = this.modalService.open(ElasticsearchComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - case "MongoDB": { - const modalRef = this.modalService.open(MongodbComponent, { - size: "lg", - centered: true - }); - modalRef.componentInstance.name = "World"; - break; - } - default: { - break; - } - } - } -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.css b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html deleted file mode 100644 index 523d6dbb..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html +++ /dev/null @@ -1,80 +0,0 @@ -<div class="modal-header border border-bottom"> - <h1><label>Document store | {{ dbname }}</label></h1> - <hr> -</div> -<div class="modal-body border-0"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputBucket">Bucket</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputBucket" type="text" placeholder="" value="{{ name }}"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputHost">Host</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputHost" type="text" placeholder="" value="{{ host }}"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputPort">Port</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputPort" type="text" placeholder="" value="{{ port }}"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputUserName" type="text" placeholder="Username" - value="{{ login }}"> - </div> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputPass" type="text" placeholder="Password" - value="{{ pass }}"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputSsl">SSL</label></div> - <div class="col-md-8"> - <div class="custom-control custom-checkbox"> - <input type="checkbox" id="inputSsl" name="customRadio" class="custom-control-input" checked="ssl"> - <label class="custom-control-label" for="inputSsl">Enable</label> - </div> - </div> - </div> - </div> - -</div> -<div class="modal-footer border-0"> - - <div class="d-flex align-items-start"> - <div class="p-2 mr-auto"> - <button type="button" class="btn btn-outline-dark">Verify</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark">Save</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark" (click)="activeModal.close('Close click')">Close</button> - </div> - - </div> - -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.spec.ts deleted file mode 100644 index 3f9ca6d0..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { CouchbaseComponent } from './couchbase.component'; - -describe('CouchbaseComponent', () => { - let component: CouchbaseComponent; - let fixture: ComponentFixture<CouchbaseComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ CouchbaseComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(CouchbaseComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts deleted file mode 100644 index 9632174c..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component, OnInit, Input } from "@angular/core"; -import { NgbModal, NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; - -@Component({ - selector: "app-couchbase", - templateUrl: "./couchbase.component.html", - styleUrls: ["./couchbase.component.css"] -}) -export class CouchbaseComponent implements OnInit { - constructor(public activeModal: NgbActiveModal) {} - - ngOnInit() {} -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.css b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.html b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.html deleted file mode 100644 index 29639f97..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.html +++ /dev/null @@ -1,78 +0,0 @@ -<div class="modal-header border border-bottom"> - <h1><label>OLAP store | Druid</label></h1> - <hr> -</div> -<div class="modal-body border-0"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputBucket">Database</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputBucket" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputHost">Host</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputHost" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputPort">Port</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputPort" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputUserName" type="text" placeholder="Username"> - </div> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputPass" type="text" placeholder="Password"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputSsl">SSL</label></div> - <div class="col-md-8"> - <div class="custom-control custom-checkbox"> - <input type="checkbox" id="inputSsl" name="customRadio" class="custom-control-input"> - <label class="custom-control-label" for="inputSsl">Enable</label> - </div> - </div> - </div> - </div> - -</div> -<div class="modal-footer border-0"> - - <div class="d-flex align-items-start"> - <div class="p-2 mr-auto"> - <button type="button" class="btn btn-outline-dark">Verify</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark">Save</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark" (click)="activeModal.close('Close click')">Close</button> - </div> - - </div> - -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.spec.ts deleted file mode 100644 index 4418b99b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { DruidComponent } from './druid.component'; - -describe('DruidComponent', () => { - let component: DruidComponent; - let fixture: ComponentFixture<DruidComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ DruidComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(DruidComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.ts deleted file mode 100644 index e2688a8e..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/druid/druid.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component, OnInit } from "@angular/core"; -import { NgbModal, NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; - -@Component({ - selector: "app-druid", - templateUrl: "./druid.component.html", - styleUrls: ["./druid.component.css"] -}) -export class DruidComponent implements OnInit { - constructor(public activeModal: NgbActiveModal) {} - - ngOnInit() {} -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.css b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html deleted file mode 100644 index 65d8525b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html +++ /dev/null @@ -1,69 +0,0 @@ -<div class="modal-header border border-bottom"> - <h1><label>Search Engine | Elasticsearch</label></h1> - <hr> -</div> -<div class="modal-body border-0"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputHost">Host</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputHost" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputPort">Port</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputPort" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputUserName" type="text" placeholder="Username"> - </div> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputPass" type="text" placeholder="Password"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputSsl">SSL</label></div> - <div class="col-md-8"> - <div class="custom-control custom-checkbox"> - <input type="checkbox" id="inputSsl" name="customRadio" class="custom-control-input"> - <label class="custom-control-label" for="inputSsl">Enable</label> - </div> - </div> - </div> - </div> - -</div> -<div class="modal-footer border-0"> - - <div class="d-flex align-items-start"> - <div class="p-2 mr-auto"> - <button type="button" class="btn btn-outline-dark">Verify</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark">Save</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark" (click)="activeModal.close('Close click')">Close</button> - </div> - - </div> - -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.spec.ts deleted file mode 100644 index 96b18a8a..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { ElasticsearchComponent } from './elasticsearch.component'; - -describe('ElasticsearchComponent', () => { - let component: ElasticsearchComponent; - let fixture: ComponentFixture<ElasticsearchComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ ElasticsearchComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(ElasticsearchComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts deleted file mode 100644 index 37add661..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { Component, OnInit } from "@angular/core"; -import { NgbModal, NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; - -@Component({ - selector: "app-elasticsearch", - templateUrl: "./elasticsearch.component.html", - styleUrls: ["./elasticsearch.component.css"] -}) -export class ElasticsearchComponent implements OnInit { - constructor(public activeModal: NgbActiveModal) {} - - ngOnInit() {} -} diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.css b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html deleted file mode 100644 index 508ee515..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html +++ /dev/null @@ -1,78 +0,0 @@ -<div class="modal-header border border-bottom"> - <h1><label>Document store | MongoDB</label></h1> - <hr> -</div> -<div class="modal-body border-0"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputBucket">Bucket</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputBucket" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputHost">Host</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputHost" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputPort">Port</label></div> - <div class="col-md-8"> - <input class="form-control input-dl-field" id="inputPort" type="text" placeholder=""> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputUserName" type="text" placeholder="Username"> - </div> - <div class="col-md-6"> - <input class="form-control input-dl-field" id="inputPass" type="text" placeholder="Password"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputSsl">SSL</label></div> - <div class="col-md-8"> - <div class="custom-control custom-checkbox"> - <input type="checkbox" id="inputSsl" name="customRadio" class="custom-control-input"> - <label class="custom-control-label" for="inputSsl">Enable</label> - </div> - </div> - </div> - </div> - -</div> -<div class="modal-footer border-0"> - - <div class="d-flex align-items-start"> - <div class="p-2 mr-auto"> - <button type="button" class="btn btn-outline-dark">Verify</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark">Save</button> - </div> - <div class="p-2"> - <button type="button" class="btn btn-outline-dark" (click)="activeModal.close('Close click')">Close</button> - </div> - - </div> - -</div> diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.spec.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.spec.ts deleted file mode 100644 index 3d7fc234..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { MongodbComponent } from './mongodb.component'; - -describe('MongodbComponent', () => { - let component: MongodbComponent; - let fixture: ComponentFixture<MongodbComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ MongodbComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(MongodbComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts b/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts deleted file mode 100644 index 399600ff..00000000 --- a/components/datalake-handler/admin/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component, OnInit, Input } from "@angular/core"; -import { NgbModal, NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; - -@Component({ - selector: "app-mongodb", - templateUrl: "./mongodb.component.html", - styleUrls: ["./mongodb.component.css"] -}) -export class MongodbComponent implements OnInit { - @Input() title = "1234"; - - constructor(public activeModal: NgbActiveModal) {} - - ngOnInit() {} -} diff --git a/components/datalake-handler/admin/src/app/database/database.component.css b/components/datalake-handler/admin/src/app/database/database.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/database/database.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/database/database.component.html b/components/datalake-handler/admin/src/app/database/database.component.html deleted file mode 100644 index 7ce4bc3e..00000000 --- a/components/datalake-handler/admin/src/app/database/database.component.html +++ /dev/null @@ -1,7 +0,0 @@ -<div class="row"> - <div class="col-md-12 path"> - Home > Database Connections - </div> -</div> - -<app-database-list></app-database-list> diff --git a/components/datalake-handler/admin/src/app/database/database.component.spec.ts b/components/datalake-handler/admin/src/app/database/database.component.spec.ts deleted file mode 100644 index f0621e27..00000000 --- a/components/datalake-handler/admin/src/app/database/database.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { DatabaseComponent } from './database.component'; - -describe('DatabaseComponent', () => { - let component: DatabaseComponent; - let fixture: ComponentFixture<DatabaseComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ DatabaseComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(DatabaseComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/database/database.component.ts b/components/datalake-handler/admin/src/app/database/database.component.ts deleted file mode 100644 index ef0ee0cb..00000000 --- a/components/datalake-handler/admin/src/app/database/database.component.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; - -@Component({ - selector: "app-database", - templateUrl: "./database.component.html", - styleUrls: ["./database.component.css"] -}) -export class DatabaseComponent implements OnInit { - constructor(private headerService: HeaderService) {} - - ngOnInit() { - this.headerService.setTitle("SIDEBAR.DATABASE"); - } -} diff --git a/components/datalake-handler/admin/src/app/feeder/feeder.component.css b/components/datalake-handler/admin/src/app/feeder/feeder.component.css deleted file mode 100644 index efaa42c3..00000000 --- a/components/datalake-handler/admin/src/app/feeder/feeder.component.css +++ /dev/null @@ -1,27 +0,0 @@ -.dashboard-panel { - background: #FFFFFF; - box-shadow: 3px 3px 11px 0 #D2D3D5; - border-radius: 20px; - position: relative; - width: 100%; - height: 100%; -} - -.dashboard-panel .title { - font-family: 'Open Sans', sans-serif; - font-weight: 600; - font-size: 25px; - color: #5DBEBB; - letter-spacing: 1.79px; - text-align: left; - margin: 20px 0 -10px 20px; -} - -.dashboard-panel .number { - font-family: 'Open Sans', sans-serif; - font-weight: 300; - font-size: 120px; - color: #313032; - letter-spacing: 5px; - text-align: center; -} diff --git a/components/datalake-handler/admin/src/app/feeder/feeder.component.html b/components/datalake-handler/admin/src/app/feeder/feeder.component.html deleted file mode 100644 index 729e1e30..00000000 --- a/components/datalake-handler/admin/src/app/feeder/feeder.component.html +++ /dev/null @@ -1,59 +0,0 @@ -<div class="row"> - <div class="col-md-12 path"> - Home > DataLake Feeder > Dashboard - </div> -</div> - -<div class="row"> - <div class="col-md-3 p-2"> - <div class="dashboard-panel"> - <div class="row"> - <div class="col-md-12 title"> - Topics - </div> - <div class="col-md-12 number"> - {{ topicNumber }} - </div> - </div> - </div> - </div> - - <div class="col-md-3 p-2"> - <div class="dashboard-panel"> - <div class="row"> - <div class="col-md-12 title"> - Success - </div> - <div class="col-md-12 number"> - {{ topicSuccess }} - </div> - </div> - </div> - </div> - - <div class="col-md-3 p-2"> - <div class="dashboard-panel"> - <div class="row"> - <div class="col-md-12 title"> - Fail - </div> - <div class="col-md-12 number"> - {{ topicFail }} - </div> - </div> - </div> - </div> - - <div class="col-md-3 p-2"> - <div class="dashboard-panel"> - <div class="row"> - <div class="col-md-12 title"> - Event - </div> - <div class="col-md-12 number"> - {{ topicEvents }} - </div> - </div> - </div> - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/feeder/feeder.component.spec.ts b/components/datalake-handler/admin/src/app/feeder/feeder.component.spec.ts deleted file mode 100644 index e371f352..00000000 --- a/components/datalake-handler/admin/src/app/feeder/feeder.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { FeederComponent } from './feeder.component'; - -describe('FeederComponent', () => { - let component: FeederComponent; - let fixture: ComponentFixture<FeederComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ FeederComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(FeederComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/feeder/feeder.component.ts b/components/datalake-handler/admin/src/app/feeder/feeder.component.ts deleted file mode 100644 index b738b2ee..00000000 --- a/components/datalake-handler/admin/src/app/feeder/feeder.component.ts +++ /dev/null @@ -1,20 +0,0 @@ -import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; - -@Component({ - selector: "app-feeder", - templateUrl: "./feeder.component.html", - styleUrls: ["./feeder.component.css"] -}) -export class FeederComponent implements OnInit { - constructor(private headerService: HeaderService) {} - - topicNumber: number = 11; - topicSuccess: number = 9; - topicFail: number = 1; - topicEvents: number = 50; - - ngOnInit() { - this.headerService.setTitle("SIDEBAR.FEDDFER"); - } -} diff --git a/components/datalake-handler/admin/src/app/header/header.component.css b/components/datalake-handler/admin/src/app/header/header.component.css deleted file mode 100644 index 8b137891..00000000 --- a/components/datalake-handler/admin/src/app/header/header.component.css +++ /dev/null @@ -1 +0,0 @@ - diff --git a/components/datalake-handler/admin/src/app/header/header.component.html b/components/datalake-handler/admin/src/app/header/header.component.html deleted file mode 100644 index 7aa35e2c..00000000 --- a/components/datalake-handler/admin/src/app/header/header.component.html +++ /dev/null @@ -1,10 +0,0 @@ -<div class="d-flex"> - <div class="mr-auto title"> - {{ title | translate }} - </div> - <div class="ml-auto"> - <select class="form-control lang-select" [(ngModel)]="selectedLang" (ngModelChange)="changeLanguage(selectedLang)"> - <option class="lang" *ngFor="let lang of langs" [value]=lang.value>{{ lang.name }}</option> - </select> - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/header/header.component.spec.ts b/components/datalake-handler/admin/src/app/header/header.component.spec.ts deleted file mode 100644 index 2d0479d7..00000000 --- a/components/datalake-handler/admin/src/app/header/header.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { HeaderComponent } from './header.component'; - -describe('HeaderComponent', () => { - let component: HeaderComponent; - let fixture: ComponentFixture<HeaderComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ HeaderComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(HeaderComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/header/header.component.ts b/components/datalake-handler/admin/src/app/header/header.component.ts deleted file mode 100644 index 21ed700c..00000000 --- a/components/datalake-handler/admin/src/app/header/header.component.ts +++ /dev/null @@ -1,38 +0,0 @@ -import { Component } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; -import { TranslateService } from "@ngx-translate/core"; - -@Component({ - selector: "app-header", - templateUrl: "./header.component.html", - styleUrls: ["./header.component.css"] -}) -export class HeaderComponent { - title = "PageTitle"; - - selectedLang: String; - langs: Array<any> = [ - { value: "en-us", name: "EN" }, - { value: "zh-hans", name: "中文(简)" }, - { value: "zh-hant", name: "中文(繁)" } - ]; - - constructor( - private headerService: HeaderService, - private translateService: TranslateService - ) { - this.translateService.setDefaultLang("en-us"); - } - - ngOnInit() { - this.headerService.title.subscribe(title => { - this.title = title; - }); - this.selectedLang = "en-us"; - } - - changeLanguage(lang: string) { - console.log("Selected:" + lang); - this.translateService.use(lang); - } -} diff --git a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.css b/components/datalake-handler/admin/src/app/sidebar/sidebar.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.html b/components/datalake-handler/admin/src/app/sidebar/sidebar.component.html deleted file mode 100644 index 42d10a2d..00000000 --- a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.html +++ /dev/null @@ -1,34 +0,0 @@ -<nav class="navbar navbar-expand-md"> - <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent" - aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> - <span class="fas fa-align-justify"></span> - </button> - <div class="collapse navbar-collapse nav" id="navbarSupportedContent"> - <ul class="navbar-nav flex-column" routerLinkActive="active"> - - <li class="nav-item"> - <a class="nav-link" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" - routerLink="/feeder"> - <i class="fas fa-tachometer-alt"></i> - {{"SIDEBAR.FEDDFER" | translate}} - </a> - </li> - - <li class="nav-item"> - <a class="nav-link" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" - routerLink="/topics"> - <i class="fas fa-cube"></i> - {{"SIDEBAR.TOPICS" | translate}} - </a> - </li> - - <li class="nav-item"> - <a class="nav-link" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" - routerLink="/database"> - <i class="fas fa-database" aria-hidden="true"></i> - {{"SIDEBAR.DATABASE" | translate}} - </a> - </li> - </ul> - </div> -</nav> diff --git a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.spec.ts b/components/datalake-handler/admin/src/app/sidebar/sidebar.component.spec.ts deleted file mode 100644 index f29709fd..00000000 --- a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { SidebarComponent } from './sidebar.component'; - -describe('SidebarComponent', () => { - let component: SidebarComponent; - let fixture: ComponentFixture<SidebarComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ SidebarComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(SidebarComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.ts b/components/datalake-handler/admin/src/app/sidebar/sidebar.component.ts deleted file mode 100644 index 05c2f06a..00000000 --- a/components/datalake-handler/admin/src/app/sidebar/sidebar.component.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { Component, OnInit } from "@angular/core"; - -@Component({ - selector: "app-sidebar", - templateUrl: "./sidebar.component.html", - styleUrls: ["./sidebar.component.css"] -}) -export class SidebarComponent implements OnInit { - constructor() {} - - ngOnInit() {} -} diff --git a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.css b/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.css deleted file mode 100644 index bb3e0e80..00000000 --- a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.css +++ /dev/null @@ -1,5 +0,0 @@ -.topic-list-panel { - background: #FFFFFF; - box-shadow: 3px 3px 11px 0 #D2D3D5; - border-radius: 20px; -} diff --git a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.html b/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.html deleted file mode 100644 index 969a80e8..00000000 --- a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.html +++ /dev/null @@ -1,421 +0,0 @@ -<div class="topic-list-panel"> - <div class="row"> - <div class="col-md-12"> - <div class="d-flex justify-content-end p-2"> - - <!-- Search bar --> - <div class="p-1"> - <div class="input-group"> - <input type="text" class="form-control input-dl-field-search" placeholder="Search..." - (keyup)='this.updateFilter($event)'> - <div class="input-group-append"> - <button type="button" class="btn btn-dl-dark"> - <i class="fa fa-search"></i> - </button> - </div> - </div> - </div> - - <!-- button --> - <div class="p-1"> - <button class="btn btn-dl-dark" data-toggle="modal" data-target="#topicDefaultModal" - (click)="updateDetail()">Default - configuration</button> - </div> - - </div> - </div> - </div> - - <!-- datatable --> - <div class="row"> - <div class="col-md-12"> - <ngx-datatable #mydatatable class="bootstrap" [rows]="topics" [columnMode]="'force'" [headerHeight]="40" - [footerHeight]="40" [rowHeight]="50" [scrollbarV]="true" [scrollbarH]="true" - [loadingIndicator]="loadingIndicator"> - - <ngx-datatable-column [width]="50" name="Status" prop="enable"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span *ngIf="row.enable == true"> - <i class="fas fa-circle icon-enable" aria-hidden="true"></i> - </span> - <span *ngIf="row.enable == false"> - <i class="fas fa-circle icon-disable" aria-hidden="true"></i> - </span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="300" name="Name" prop="name"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span>{{ row.name }}</span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="150" name="Sink"> - <ng-template let-row="row" ngx-datatable-cell-template> - <!-- couchbasedb --> - <span class="pr-1"> - <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" - y="0px" width="20" height="20" viewBox="-408 285.3 25 25" - style="enable-background:new -408 285.3 25 25;" xml:space="preserve"> - <path [ngStyle]="{'fill': row.dbs.includes('couchbasedb') ? '#5DBEBB':'D2D3D5'}" - d="M-395.5,285.3c-6.9,0-12.5,5.6-12.5,12.5s5.6,12.5,12.5,12.5s12.5-5.6,12.5-12.5S-388.6,285.3-395.5,285.3z - M-387.1,300c0,0.8-0.4,1.4-1.3,1.6c-1.5,0.3-4.6,0.4-7.2,0.4s-5.7-0.2-7.2-0.4c-0.8-0.2-1.3-0.8-1.3-1.6v-4.9 - c0-0.8,0.6-1.5,1.3-1.6c0.4-0.1,1.5-0.2,2.2-0.2c0.3,0,0.5,0.2,0.5,0.6v3.4l4.4-0.1l4.4,0.1v-3.4c0-0.4,0.2-0.6,0.5-0.6 - c0.8,0,1.8,0.1,2.2,0.2c0.7,0.1,1.3,0.8,1.3,1.6C-387.1,296.7-387.1,298.3-387.1,300L-387.1,300z" /> - </svg> - </span> - - <!-- druid --> - <span class="pr-1"> - <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" - y="0px" width="20" height="20" viewBox="-403 285.3 34 25" - style="enable-background:new -403 285.3 34 25;" xml:space="preserve"> - <g> - <path [ngStyle]="{'fill': row.dbs.includes('druid') ? '#5DBEBB':'D2D3D5'}" - d="M-385.5,285.3c2.2,0,4.3,0,6.5,0c4.2,0,8,2.7,9.4,6.6c0.6,1.7,0.8,3.4,0.6,5.2c-0.3,2.6-1,5-2.5,7.2 - c-2.3,3.4-5.5,5.2-9.5,5.8c-1.4,0.2-2.7,0.2-4.1,0.2c-0.6,0-0.9-0.3-0.9-0.7c0-0.5,0.3-0.9,0.8-0.9c0.6,0,1.2,0,1.9,0 - c3.7-0.1,7-1.4,9.6-4.2c1.8-1.9,2.7-4.3,3-6.9c0.2-1.8,0.2-3.6-0.5-5.3c-1.1-2.6-3.1-4.2-5.8-5c-1.1-0.3-2.1-0.3-3.2-0.4 - c-4,0-8.1,0-12.1,0c-0.2,0-0.3,0-0.5,0c-0.4,0-0.7-0.4-0.7-0.8s0.3-0.7,0.6-0.8c0.2,0,0.4,0,0.6,0L-385.5,285.3L-385.5,285.3z" /> - <path [ngStyle]="{'fill': row.dbs.includes('druid') ? '#5DBEBB':'D2D3D5'}" d="M-389.7,304.6h-7.2c-0.2,0-0.3,0-0.5,0c-0.4-0.1-0.7-0.3-0.7-0.7c0-0.4,0.2-0.7,0.6-0.9 - c0.2-0.1,0.5-0.1,0.8-0.1c4.7,0,9.5,0,14.2,0c1.7,0,3.1-0.6,4.2-1.8c1-1,1.5-2.3,1.6-3.7c0.1-1.1,0-2.1-0.7-3.1 - c-0.8-1-1.8-1.5-3.1-1.5c-4.5,0-9,0-13.5,0c-0.5,0-1,0-1.4-0.1c-0.4,0-0.6-0.3-0.7-0.7c0-0.5,0.2-0.8,0.6-0.9c0.1,0,0.3,0,0.4,0 - h14.4c2.4,0,4.5,1.5,5.3,3.8c0.5,1.6,0.4,3.3-0.3,4.8c-1.2,3-3.9,4.9-7.2,4.9C-385,304.6-387.3,304.6-389.7,304.6L-389.7,304.6z - M-400.4,292.6c-0.6,0-1.1,0-1.7,0c-0.5,0-0.8-0.3-0.9-0.7s0.2-0.8,0.7-0.9c0.3,0,0.5-0.1,0.8-0.1c0.8,0,1.5,0,2.3,0 - c0.2,0,0.5,0,0.7,0.1c0.4,0.1,0.6,0.5,0.6,0.9s-0.3,0.7-0.7,0.7C-399.2,292.7-399.8,292.6-400.4,292.6L-400.4,292.6z M-390.3,310.3 - c-0.5,0-1,0-1.6,0c-0.5,0-0.8-0.3-0.9-0.7c0-0.5,0.3-0.9,0.7-0.9c1.1-0.1,2.2-0.1,3.4,0c0.4,0,0.8,0.4,0.7,0.8l0,0 - c0,0.5-0.4,0.7-0.9,0.8L-390.3,310.3L-390.3,310.3z" /> - </g> - </svg> - </span> - - <!-- elasticsearch --> - <span class="pr-1"> - <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" - y="0px" width="20" height="20" viewBox="2066.4 284.8 25.1 25" - style="enable-background:new 2066.4 284.8 25.1 25;" xml:space="preserve"> - <g> - <path style="fill: #FFFFFF" d="M2091.6,297.9c0-2.1-1.3-3.9-3.3-4.7c0.1-0.4,0.1-0.9,0.1-1.4c0-3.9-3.2-7.1-7.1-7.1c-2.3,0-4.4,1.1-5.7,3 - c-0.7-0.5-1.5-0.8-2.3-0.8c-2.1,0-3.8,1.7-3.8,3.8c0,0.5,0.1,0.9,0.2,1.3c-2,0.7-3.3,2.6-3.3,4.7c0,2.1,1.3,4,3.3,4.7 - c-0.1,0.4-0.1,0.9-0.1,1.4c0,3.9,3.2,7.1,7.1,7.1c2.3,0,4.4-1.1,5.7-3c0.7,0.5,1.5,0.8,2.3,0.8c2.1,0,3.8-1.7,3.8-3.8 - c0-0.5-0.1-0.9-0.2-1.3C2090.2,301.8,2091.6,300,2091.6,297.9L2091.6,297.9z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'#D2D3D5'}" d="M2076.3,295.5l5.6,2.6l5.7-5c0.1-0.4,0.1-0.8,0.1-1.3c0-3.5-2.8-6.3-6.3-6.3c-2.1,0-4,1-5.2,2.7l-0.9,4.9 - L2076.3,295.5L2076.3,295.5z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'#D2D3D5'}" d="M2070.5,301.4c-0.1,0.4-0.1,0.8-0.1,1.3c0,3.5,2.8,6.3,6.3,6.3c2.1,0,4.1-1,5.2-2.8l0.9-4.9l-1.3-2.4l-5.6-2.6 - L2070.5,301.4L2070.5,301.4z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'#D2D3D5'}" d="M2070.4,291.7l3.8,0.9l0.9-4.4c-0.5-0.4-1.2-0.6-1.8-0.6c-1.7,0-3,1.4-3,3 - C2070.2,291.1,2070.3,291.4,2070.4,291.7L2070.4,291.7z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'#D2D3D5'}" - d="M2070.1,292.7c-1.7,0.6-2.9,2.2-2.9,4c0,1.8,1.1,3.3,2.7,4l5.4-4.9l-1-2.1L2070.1,292.7L2070.1,292.7z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'D2D3D5'}" d="M2082.9,306.3c0.5,0.4,1.2,0.6,1.8,0.6c1.7,0,3-1.4,3-3c0-0.4-0.1-0.7-0.2-1l-3.8-0.9L2082.9,306.3 - L2082.9,306.3z" /> - <path [ngStyle]="{'fill': row.dbs.includes('elasticsearch') ? '#5DBEBB':'#D2D3D5'}" - d="M2083.7,300.9l4.2,1c1.7-0.6,2.9-2.2,2.9-4c0-1.8-1.1-3.3-2.7-4l-5.5,4.8L2083.7,300.9L2083.7,300.9z" /> - </g> - </svg> - </span> - - <!-- mongodb --> - <span class="pr-1"> - <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" - y="0px" width="20" height="20" viewBox="-397.2 285.8 11.2 25" - style="enable-background:new -397.2 285.8 11.2 25;" xml:space="preserve"> - <g transform="matrix(1.2754196 0 0 1.2754196 -16.030009 -21.83192)"> - <path [ngStyle]="{'fill': row.dbs.includes('mongodb') ? '#19A2A2':'#C4C6C8'}" - d="M-294.5,241.2c0.2,0.3,0.4,0.7,0.5,1c0.1,0.2,0.2,0.4,0.4,0.5c0.4,0.4,0.9,0.9,1.2,1.4 - c0.9,1.2,1.5,2.5,1.9,3.9c0.3,0.9,0.4,1.7,0.4,2.6c0,2.7-0.9,4.9-2.7,6.8c-0.3,0.3-0.6,0.6-1,0.8c-0.2,0-0.3-0.2-0.4-0.3 - c-0.2-0.2-0.2-0.5-0.3-0.8c-0.1-0.3-0.1-0.6-0.1-1c0,0,0-0.1,0-0.2C-294.4,256.1-294.6,241.3-294.5,241.2z" /> - <path [ngStyle]="{'fill': row.dbs.includes('mongodb') ? '#5DBEBB':'#D2D3D5'}" - d="M-294.5,241.2C-294.5,241.2-294.5,241.2-294.5,241.2c-0.1,0.2-0.2,0.4-0.3,0.6c-0.1,0.2-0.3,0.3-0.5,0.5 - c-0.9,0.8-1.7,1.8-2.3,2.9c-0.8,1.5-1.2,3.1-1.3,4.8c0,0.6,0.2,2.8,0.4,3.4c0.5,1.6,1.4,3,2.7,4.2c0.3,0.3,0.6,0.5,0.9,0.8 - c0.1,0,0.1-0.1,0.1-0.2c0-0.2,0.1-0.3,0.1-0.4c0.1-0.5,0.2-1.1,0.2-1.6C-294.4,256.2-294.4,241.3-294.5,241.2L-294.5,241.2z" /> - <path [ngStyle]="{'fill': row.dbs.includes('mongodb') ? '#CEEBEA':'#C2BFBF'}" d="M-294,258.9c0-0.2,0.2-0.4,0.3-0.7c-0.1,0-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.2-0.2-0.4c-0.2-0.4-0.2-0.9-0.2-1.4 - c0,0,0-0.1,0-0.2s0-0.1,0-0.2c0,0-0.1,0.4-0.1,0.5c0,0.5-0.1,1-0.2,1.4c0,0.2,0,0.4-0.2,0.5c0,0,0,0,0,0.1c0.2,0.5,0.2,1.1,0.3,1.7 - v0.2c0,0.3,0,0.2,0.2,0.3c0.1,0,0.2,0,0.3,0.1c0.1,0,0.1,0,0.1-0.1c0-0.1,0-0.2,0-0.4c0-0.3,0-0.7,0-1 - C-294,259.3-294,259.1-294,258.9z" /> - </g> - </svg> - </span> - - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="100" name="TTL" prop="ttl"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span>{{ row.ttl }}</span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="100" name="Authentication"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span *ngIf="row.login != '' && row.pass != ''"> - <i class="fas fa-unlock-alt icon-enable" aria-hidden="true"></i> - </span> - <span *ngIf="row.login === '' && row.pass === ''"> - <i class="fa fa-unlock-alt icon-disable" aria-hidden="true"></i> - </span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="100" name="Save raw data" prop="save_raw"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span *ngIf="row.save_raw == true"> - <i class="fas fa-check icon-enable" aria-hidden="true"></i> - </span> - <span *ngIf="row.save_raw == false"> - <i class="fas fa-check icon-disable" aria-hidden="true"></i> - </span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="150" name="Setting"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span class="icon-unconfig" - *ngIf="row.dbs.includes('_DL_DEFAULT_')"> Unconfigured </span> - <span class="icon-config" - *ngIf="!row.dbs.includes('_DL_DEFAULT_')"> Configured </span> - </ng-template> - </ngx-datatable-column> - - <ngx-datatable-column [width]="100" name="" sortable="false"> - <ng-template let-row="row" ngx-datatable-cell-template> - <span> - <button md-icon-button class="btn action-icon-setting" data-toggle="modal" data-target="#topicDetailModal" - (click)="this.updateDetail(row.name)"> - <i class="fas fa-cog fa-xs"></i> - </button> - </span> - </ng-template> - </ngx-datatable-column> - - </ngx-datatable> - </div> - </div> -</div> - -<!-- Detail Modal --> -<div class="modal fade" id="topicDetailModal" tabindex="-1" role="dialog" aria-hidden="true"> - <div class="modal-dialog modal-dialog-centered modal-lg" role="document"> - <div class="modal-content"> - <div class="modal-title"> - <div class="container-fluid pt-3"> - <h4>{{ topicDetail.name }}</h4> - <hr> - </div> - </div> - - <div class="modal-body"> - <div class="container-fluid"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Status</label></div> - <div class="col-md-8"><input type="checkbox" [(ngModel)]="topicDetail.enable" - [checked]="topicDetail.enable"></div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control" id="inputUserName" type="text" placeholder="Username" - value="{{ topicDetail.login }}" [(ngModel)]="topicDetail.login"> - </div> - <div class="col-md-6"> - <input class="form-control" id="inputPass" type="text" placeholder="Password" - value="{{ topicDetail.pass }}" [(ngModel)]="topicDetail.pass"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Database</label></div> - <div class="col-md-8"> - {{ topicDetail.dbs }} - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Data format</label></div> - <div class="col-md-4"> - <select class="custom-select" id="selDataFormat" [(ngModel)]="topicDetail.data_format"> - <option *ngFor="let dataFormat of dataFormats" [value]="dataFormat" - [selected]="dataFormat == topicDetail.data_format"> - {{ dataFormat }}</option> - </select> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>TTL (days)</label></div> - <div class="col-md-4"> - <input class="form-control" id="inputTtl" type="text" placeholder="3650" [(ngModel)]="topicDetail.ttl" - value="{{ topicDetail.ttl }}"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"> - <label>Save raw data</label> - </div> - <div class="col-md-4"> - <input type="checkbox" [checked]="topicDetail.save_raw" [(ngModel)]="topicDetail.save_raw"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"> - <label>Correlate cleard message</label> - </div> - <div class="col-md-4"> - <input type="checkbox" [checked]="topicDetail.correlate_cleared_message" - [(ngModel)]="topicDetail.correlate_cleared_message"> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>ID extraction</label></div> - <div class="col-md-8"> - <div class="d-flex" *ngFor="let field of idExFields; let i = index"> - <div class="order-1"> - <input class="form-control" placeholder="/event-header/id" type="text" [(ngModel)]="field.item" - [value]="field.item"> - </div> - <div class="order-2"> - <button type="button" class="btn" (click)="addIdField(i)"><i class="fa fa-plus fa-xs" - aria-hidden="true"></i> - </button> - </div> - <div class="order-3"> - <button type="button" class="btn" (click)="deleteIdField(i)"><i class="fa fa-trash fa-xs" - aria-hidden="true"></i> - </button> - </div> - </div> - </div> - </div> - </div> - - </div> - </div> - - <div class="modal-footer"> - <button type="submit" class="btn btn-primary" (click)="saveTopic()">OK</button> - <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button> - </div> - </div> - - </div> -</div> - -<!-- config Modal --> -<div class="modal fade" id="topicDefaultModal" tabindex="-1" role="dialog" aria-hidden="true"> - <div class="modal-dialog modal-dialog-centered modal-lg" role="document"> - <div class="modal-content"> - <div class="modal-title"> - <div class="container-fluid pt-3"> - <h4>Topics Default Configurations</h4> - <hr> - </div> - </div> - - <div class="modal-body"> - <div class="container-fluid"> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Status</label></div> - <div class="col-md-8"><input type="checkbox" [(ngModel)]="topicDetail.enable" - [checked]="topicDetail.enable"></div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label for="inputUserName">Authentication</label></div> - <div class="col-md-8"> - <div class="row"> - <div class="col-md-6"> - <input class="form-control" id="inputUserName" type="text" placeholder="Username" - value="{{ topicDetail.login }}" [(ngModel)]="topicDetail.login"> - </div> - <div class="col-md-6"> - <input class="form-control" id="inputPass" type="text" placeholder="Password" - value="{{ topicDetail.pass }}" [(ngModel)]="topicDetail.pass"> - </div> - </div> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Data format</label></div> - <div class="col-md-4"> - <select class="custom-select" id="selDataFormat" [(ngModel)]="topicDetail.data_format"> - <option *ngFor="let dataFormat of dataFormats" [value]="dataFormat" - [selected]="dataFormat == topicDetail.data_format"> - {{ dataFormat }}</option> - </select> - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>TTL (days)</label></div> - <div class="col-md-4"> - <input class="form-control" id="inputTtl" type="text" placeholder="3650" [(ngModel)]="topicDetail.ttl" - value="{{ topicDetail.ttl }}"> - </div> - </div> - </div> - - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"><label>Database</label></div> - <div class="col-md-8"> - Database list - </div> - </div> - </div> - - <div class="form-group"> - <div class="row"> - <div class="col-md-4"> - <label>Save raw data</label> - </div> - <div class="col-md-4"> - <input type="checkbox" [checked]="topicDetail.save_raw" [(ngModel)]="topicDetail.save_raw"> - </div> - </div> - </div> - - </div> - </div> - - <div class="modal-footer"> - <button type="submit" class="btn btn-primary" (click)="saveTopic()">OK</button> - <button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button> - </div> - </div> - - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.spec.ts b/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.spec.ts deleted file mode 100644 index 531afbb7..00000000 --- a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.spec.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { async, ComponentFixture, TestBed } from "@angular/core/testing"; - -import { TopicListComponent } from "./topic-list.component"; - -describe("TopicListComponent", () => { - let component: TopicListComponent; - let fixture: ComponentFixture<TopicListComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [TopicListComponent] - }).compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(TopicListComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it("should create", () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.ts b/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.ts deleted file mode 100644 index 1cdd7634..00000000 --- a/components/datalake-handler/admin/src/app/topics/topic-list/topic-list.component.ts +++ /dev/null @@ -1,189 +0,0 @@ -import { Component, ViewChild } from "@angular/core"; -import { RestApiService } from "../../core/services/rest-api.service"; -import { Topic } from "../../core/models/Topic/topic.model"; -import { NgbModal, ModalDismissReasons } from "@ng-bootstrap/ng-bootstrap"; - -@Component({ - selector: "app-topic-list", - templateUrl: "./topic-list.component.html", - styleUrls: ["./topic-list.component.css"] -}) -export class TopicListComponent { - // fake data - topicList: Array<string> = [ - "AAI-EVENT1", - "AAI-EVENT2", - "AAI-EVENT3", - "AAI-EVENT4", - "AAI-EVENT5", - "AAI-EVENT6", - "AAI-EVENT7", - "AAI-EVENT8", - "AAI-EVENT9", - "AAI-EVENT10", - "AAI-EVENT11", - "AAI-EVENT12", - "AAI-EVENT13", - "AAI-EVENT14", - "AAI-EVENT15", - "AAI-EVENT16", - "AAI-EVENT17", - "AAI-EVENT18", - "AAI-EVENT19", - "AAI-EVENT21", - "AAI-EVENT22", - "AAI-EVENT23", - "AAI-EVENT24", - "AAI-EVENT25", - "AAI-EVENT26", - "AAI-EVENT27", - "AAI-EVENT28", - "AAI-EVENT29", - "__consumer_offsets", - "msgrtr.apinode.metrics.dmaap", - "unauthenticated.DCAE_CL_OUTPUT", - "unauthenticated.SEC_FAULT_OUTPUT" - ]; - topics: Topic[] = []; - temp: Topic[] = []; // cache for topics - topicDetail: Topic = new Topic(); - closeResult: string; - dataFormats: Array<string> = ["JSON", "XML"]; - idExFields: Array<any> = []; - idExNewField: any = {}; - - loadingIndicator: boolean = true; - - constructor( - private restApiService: RestApiService, - private modalService: NgbModal - ) { - setTimeout(() => { - this.loadingIndicator = false; - }, 5000); - } - - ngOnInit() { - // fake data - var topicCount: number = this.topicList.length; - console.log("topic length:" + topicCount); - for (var i = 0; i < topicCount; i++) { - if (i % 2 == 0) { - var feed = { - name: this.topicList[i], - login: "logintest" + i, - pass: "passtest" + i, - dbs: ["_DL_DEFAULT_", "couchbasedb", "druid", "mongodb"], - enable: true, - save_raw: true, - data_format: "XML", - ttl: 100 + i, - correlate_cleared_message: true, - message_id_path: "/event_id/id,/event_id/name", - type: "" - }; - } else { - var feed = { - name: this.topicList[i], - login: "", - pass: "", - dbs: ["druid", "elasticsearch"], - enable: false, - save_raw: false, - data_format: "XML", - ttl: 100 + i, - correlate_cleared_message: false, - message_id_path: "/event_id/id,/event_id/name/event_id/ekko_name", - type: "" - }; - } - - if (feed.dbs.toString().search("_DL_DEFAULT")) { - feed.type = "Unconfigured"; - } else { - feed.type = "Configured"; - } - this.topics.push(feed); - } - - // for cache of datatable - this.temp = this.topics; - } - - updateDetail(name: string) { - // clean - this.topicDetail = null; - this.idExFields = []; - - const index = this.topics.findIndex(topic => topic.name === name); - - this.topicDetail = { - name: this.topics[index].name, - login: this.topics[index].login, - pass: this.topics[index].pass, - dbs: this.topics[index].dbs, - enable: this.topics[index].enable, - save_raw: this.topics[index].save_raw, - data_format: this.topics[index].data_format, - ttl: this.topics[index].ttl, - correlate_cleared_message: this.topics[index].correlate_cleared_message, - message_id_path: this.topics[index].message_id_path, - type: this.topics[index].type - }; - - var feed = this.topicDetail.message_id_path.split(","); - for (var i = 0; i < feed.length; i++) { - var data = { item: feed[i] }; - this.idExFields.push(data); - } - } - - addIdField() { - this.idExFields.push(this.idExNewField); - this.idExNewField = {}; - } - - deleteIdField(index: number) { - if (this.idExFields.length > 1) { - this.idExFields.splice(index, 1); - } - } - - saveTopic() { - console.log("save topic"); - console.log("name: " + this.topicDetail.name); - console.log("login: " + this.topicDetail.login); - console.log("pass: " + this.topicDetail.pass); - console.log("dbs: "); - console.log("enable: " + this.topicDetail.enable); - console.log("save_raw: " + this.topicDetail.save_raw); - console.log("data_format: " + this.topicDetail.data_format); - console.log("ttl: " + this.topicDetail.ttl); - console.log( - "correlate_cleared_message: " + this.topicDetail.correlate_cleared_message - ); - - this.topicDetail.message_id_path = ""; - for (var i = 0; i < this.idExFields.length; i++) { - if (i == 0) { - this.topicDetail.message_id_path = this.idExFields[i].item; - } else { - this.topicDetail.message_id_path = - this.topicDetail.message_id_path + "," + this.idExFields[i].item; - } - } - console.log("message_id_path: ", this.topicDetail.message_id_path); - } - - updateFilter(event) { - const val = event.target.value.toLowerCase(); - console.log("filter val: " + val); - // filter data - const temp = this.temp.filter(function(d) { - return d.name.toLowerCase().indexOf(val) !== -1 || !val; - }); - - // update the rows - this.topics = temp; - } -} diff --git a/components/datalake-handler/admin/src/app/topics/topics.component.css b/components/datalake-handler/admin/src/app/topics/topics.component.css deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/app/topics/topics.component.css +++ /dev/null diff --git a/components/datalake-handler/admin/src/app/topics/topics.component.html b/components/datalake-handler/admin/src/app/topics/topics.component.html deleted file mode 100644 index ced38d3d..00000000 --- a/components/datalake-handler/admin/src/app/topics/topics.component.html +++ /dev/null @@ -1,27 +0,0 @@ -<div class="row"> - <div class="col-md-12 path"> - Home > Topics - </div> - - <!-- - <div class="col-md-2"> - - <div class="row"> - <div class="col-md-12 text-center"> - Topics Category - </div> - </div> - - <div class="row"> - <div class="col-md-12"> - <app-topic-cate></app-topic-cate> - </div> - </div> - - </div> - --> - - <div class="col-md-12"> - <app-topic-list></app-topic-list> - </div> -</div> diff --git a/components/datalake-handler/admin/src/app/topics/topics.component.spec.ts b/components/datalake-handler/admin/src/app/topics/topics.component.spec.ts deleted file mode 100644 index f38f85e6..00000000 --- a/components/datalake-handler/admin/src/app/topics/topics.component.spec.ts +++ /dev/null @@ -1,25 +0,0 @@ -import { async, ComponentFixture, TestBed } from '@angular/core/testing'; - -import { TopicsComponent } from './topics.component'; - -describe('TopicsComponent', () => { - let component: TopicsComponent; - let fixture: ComponentFixture<TopicsComponent>; - - beforeEach(async(() => { - TestBed.configureTestingModule({ - declarations: [ TopicsComponent ] - }) - .compileComponents(); - })); - - beforeEach(() => { - fixture = TestBed.createComponent(TopicsComponent); - component = fixture.componentInstance; - fixture.detectChanges(); - }); - - it('should create', () => { - expect(component).toBeTruthy(); - }); -}); diff --git a/components/datalake-handler/admin/src/app/topics/topics.component.ts b/components/datalake-handler/admin/src/app/topics/topics.component.ts deleted file mode 100644 index ef171437..00000000 --- a/components/datalake-handler/admin/src/app/topics/topics.component.ts +++ /dev/null @@ -1,16 +0,0 @@ -import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; - -@Component({ - selector: "app-topics", - templateUrl: "./topics.component.html", - styleUrls: ["./topics.component.css"] -}) -export class TopicsComponent implements OnInit { - constructor(private headerService: HeaderService) {} - - ngOnInit() { - // Set page title - this.headerService.setTitle("SIDEBAR.TOPICS"); - } -} diff --git a/components/datalake-handler/admin/src/assets/.gitkeep b/components/datalake-handler/admin/src/assets/.gitkeep deleted file mode 100644 index e69de29b..00000000 --- a/components/datalake-handler/admin/src/assets/.gitkeep +++ /dev/null diff --git a/components/datalake-handler/admin/src/assets/i18n/en-us.json b/components/datalake-handler/admin/src/assets/i18n/en-us.json deleted file mode 100644 index cf2bed68..00000000 --- a/components/datalake-handler/admin/src/assets/i18n/en-us.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "HELLO": "Hello1234", - "SIDEBAR": { - "FEDDFER": "DataLake Feeder", - "TOPICS": "Topics", - "DATABASE": "Database" - } -} diff --git a/components/datalake-handler/admin/src/assets/i18n/zh-hans.json b/components/datalake-handler/admin/src/assets/i18n/zh-hans.json deleted file mode 100644 index 2648750a..00000000 --- a/components/datalake-handler/admin/src/assets/i18n/zh-hans.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "HELLO": "你抖音了沒", - "SIDEBAR": { - "FEDDFER": "资料湖", - "TOPICS": "主题", - "DATABASE": "数据库" - } -} diff --git a/components/datalake-handler/admin/src/assets/i18n/zh-hant.json b/components/datalake-handler/admin/src/assets/i18n/zh-hant.json deleted file mode 100644 index a9919db0..00000000 --- a/components/datalake-handler/admin/src/assets/i18n/zh-hant.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "HELLO": "安安", - "SIDEBAR": { - "FEDDFER": "資料湖", - "TOPICS": "主題", - "DATABASE": "資料庫" - } -} diff --git a/components/datalake-handler/admin/src/browserslist b/components/datalake-handler/admin/src/browserslist deleted file mode 100644 index 37371cb0..00000000 --- a/components/datalake-handler/admin/src/browserslist +++ /dev/null @@ -1,11 +0,0 @@ -# This file is currently used by autoprefixer to adjust CSS to support the below specified browsers -# For additional information regarding the format and rule options, please see: -# https://github.com/browserslist/browserslist#queries -# -# For IE 9-11 support, please remove 'not' from the last line of the file and adjust as needed - -> 0.5% -last 2 versions -Firefox ESR -not dead -not IE 9-11
\ No newline at end of file diff --git a/components/datalake-handler/admin/src/environments/environment.prod.ts b/components/datalake-handler/admin/src/environments/environment.prod.ts deleted file mode 100644 index 3612073b..00000000 --- a/components/datalake-handler/admin/src/environments/environment.prod.ts +++ /dev/null @@ -1,3 +0,0 @@ -export const environment = { - production: true -}; diff --git a/components/datalake-handler/admin/src/environments/environment.ts b/components/datalake-handler/admin/src/environments/environment.ts deleted file mode 100644 index 7b4f817a..00000000 --- a/components/datalake-handler/admin/src/environments/environment.ts +++ /dev/null @@ -1,16 +0,0 @@ -// This file can be replaced during build by using the `fileReplacements` array. -// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`. -// The list of file replacements can be found in `angular.json`. - -export const environment = { - production: false -}; - -/* - * For easier debugging in development mode, you can import the following file - * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`. - * - * This import should be commented out in production mode because it will have a negative impact - * on performance if an error is thrown. - */ -// import 'zone.js/dist/zone-error'; // Included with Angular CLI. diff --git a/components/datalake-handler/admin/src/favicon.ico b/components/datalake-handler/admin/src/favicon.ico Binary files differdeleted file mode 100644 index 8081c7ce..00000000 --- a/components/datalake-handler/admin/src/favicon.ico +++ /dev/null diff --git a/components/datalake-handler/admin/src/index.html b/components/datalake-handler/admin/src/index.html deleted file mode 100644 index c92d5095..00000000 --- a/components/datalake-handler/admin/src/index.html +++ /dev/null @@ -1,27 +0,0 @@ -<!doctype html> -<html lang="en"> - -<head> - <meta charset="utf-8"> - <title>DataLake AdminPortal</title> - <base href="/"> - - <meta name="viewport" content="width=device-width, initial-scale=1"> - <link rel="icon" type="image/x-icon" href="favicon.ico"> - - <link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet"> - -</head> - -<body> - - <div id="loading"></div> - - <div id="content"> - <app-root></app-root> - </div> - - </script> -</body> - -</html> diff --git a/components/datalake-handler/admin/src/karma.conf.js b/components/datalake-handler/admin/src/karma.conf.js deleted file mode 100644 index db002eac..00000000 --- a/components/datalake-handler/admin/src/karma.conf.js +++ /dev/null @@ -1,32 +0,0 @@ -// Karma configuration file, see link for more information -// https://karma-runner.github.io/1.0/config/configuration-file.html - -module.exports = function (config) { - config.set({ - basePath: '', - frameworks: ['jasmine', '@angular-devkit/build-angular'], - plugins: [ - require('karma-jasmine'), - require('karma-chrome-launcher'), - require('karma-jasmine-html-reporter'), - require('karma-coverage-istanbul-reporter'), - require('@angular-devkit/build-angular/plugins/karma') - ], - client: { - clearContext: false // leave Jasmine Spec Runner output visible in browser - }, - coverageIstanbulReporter: { - dir: require('path').join(__dirname, '../coverage/admin'), - reports: ['html', 'lcovonly', 'text-summary'], - fixWebpackSourcePaths: true - }, - reporters: ['progress', 'kjhtml'], - port: 9876, - colors: true, - logLevel: config.LOG_INFO, - autoWatch: true, - browsers: ['Chrome'], - singleRun: false, - restartOnFileChange: true - }); -}; diff --git a/components/datalake-handler/admin/src/main.ts b/components/datalake-handler/admin/src/main.ts deleted file mode 100644 index c7b673cf..00000000 --- a/components/datalake-handler/admin/src/main.ts +++ /dev/null @@ -1,12 +0,0 @@ -import { enableProdMode } from '@angular/core'; -import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; - -import { AppModule } from './app/app.module'; -import { environment } from './environments/environment'; - -if (environment.production) { - enableProdMode(); -} - -platformBrowserDynamic().bootstrapModule(AppModule) - .catch(err => console.error(err)); diff --git a/components/datalake-handler/admin/src/polyfills.ts b/components/datalake-handler/admin/src/polyfills.ts deleted file mode 100644 index 75d63939..00000000 --- a/components/datalake-handler/admin/src/polyfills.ts +++ /dev/null @@ -1,63 +0,0 @@ -/** - * This file includes polyfills needed by Angular and is loaded before the app. - * You can add your own extra polyfills to this file. - * - * This file is divided into 2 sections: - * 1. Browser polyfills. These are applied before loading ZoneJS and are sorted by browsers. - * 2. Application imports. Files imported after ZoneJS that should be loaded before your main - * file. - * - * The current setup is for so-called "evergreen" browsers; the last versions of browsers that - * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), - * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. - * - * Learn more in https://angular.io/guide/browser-support - */ - -/*************************************************************************************************** - * BROWSER POLYFILLS - */ - -/** IE10 and IE11 requires the following for NgClass support on SVG elements */ -// import 'classlist.js'; // Run `npm install --save classlist.js`. - -/** - * Web Animations `@angular/platform-browser/animations` - * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. - * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). - */ -// import 'web-animations-js'; // Run `npm install --save web-animations-js`. - -/** - * By default, zone.js will patch all possible macroTask and DomEvents - * user can disable parts of macroTask/DomEvents patch by setting following flags - * because those flags need to be set before `zone.js` being loaded, and webpack - * will put import in the top of bundle, so user need to create a separate file - * in this directory (for example: zone-flags.ts), and put the following flags - * into that file, and then add the following code before importing zone.js. - * import './zone-flags.ts'; - * - * The flags allowed in zone-flags.ts are listed here. - * - * The following flags will work for all browsers. - * - * (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - * (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - * (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - * - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - * - * (window as any).__Zone_enable_cross_context_check = true; - * - */ - -/*************************************************************************************************** - * Zone JS is required by default for Angular itself. - */ -import 'zone.js/dist/zone'; // Included with Angular CLI. - - -/*************************************************************************************************** - * APPLICATION IMPORTS - */ diff --git a/components/datalake-handler/admin/src/src/app/about/about.component.css b/components/datalake-handler/admin/src/src/app/about/about.component.css new file mode 100644 index 00000000..0721a51b --- /dev/null +++ b/components/datalake-handler/admin/src/src/app/about/about.component.css @@ -0,0 +1,47 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 QCT + *================================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +.about-block { + height: 80vh; +} + +.about-panel { + background: #FFFFFF; + box-shadow: 3px 3px 11px 0 #D2D3D5; + border-radius: 20px; +} + +.about-title { + color: #5DBEBB; + font-weight: 800; + padding-bottom: 20px; +} + +.about-bold { + color: #313032; + font-weight: 800; +} + +.about-info { + font-family: "Open Sans", sans-serif; + font-weight: 600; + font-size: 14px; + color: #A8A9AC; +} diff --git a/components/datalake-handler/admin/src/src/app/about/about.component.html b/components/datalake-handler/admin/src/src/app/about/about.component.html new file mode 100644 index 00000000..ca3512f4 --- /dev/null +++ b/components/datalake-handler/admin/src/src/app/about/about.component.html @@ -0,0 +1,67 @@ +<!-- +============LICENSE_START======================================================= +ONAP : DataLake +================================================================================ +Copyright 2019 QCT +================================================================================= +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +============LICENSE_END========================================================= +--> + +<div class="about-block d-flex justify-content-center align-items-center"> + <div class="d-flex justify-content-center align-items-center col-md-6 h-50 about-panel"> + + <div class="d-flex justify-content-center align-items-left flex-column m-2"> + <div class="dl-h2 about-title"> + ONAP DataLake Admin Platform + </div> + + <div class="about-info"> + <div class="row"> + <div class="col-sm-4"> + <label class="about-bold">Version: </label>1.0.0 + </div> + <div class="col-sm-8"> + <label class="about-bold">Code freeze: </label>Jun 1, 2019 + </div> + </div> + </div> + + <div class="about-info"> + <div class="row"> + <div class="col-sm-12"> + <label class="about-bold">Resources</label> + </div> + </div> + <div class="row"> + <div class="col-sm-4"> + China Mobile + </div> + <div class="col-sm-8"> + Guobiao Mo, Tao Shen + </div> + </div> + <div class="row"> + <div class="col-sm-4"> + QCT + </div> + <div class="col-sm-8"> + Karl Chiang, Kate Hsuan, Ekko Chang, May Lin + </div> + </div> + + </div> + </div> + + </div> +</div> diff --git a/components/datalake-handler/admin/src/src/app/about/about.component.spec.ts b/components/datalake-handler/admin/src/src/app/about/about.component.spec.ts new file mode 100644 index 00000000..b2be756c --- /dev/null +++ b/components/datalake-handler/admin/src/src/app/about/about.component.spec.ts @@ -0,0 +1,44 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 QCT + *================================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +import { async, ComponentFixture, TestBed } from "@angular/core/testing"; + +import { AboutComponent } from "./about.component"; + +describe("AboutComponent", () => { + let component: AboutComponent; + let fixture: ComponentFixture<AboutComponent>; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [AboutComponent] + }).compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(AboutComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it("should create", () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/components/datalake-handler/admin/src/src/app/about/about.component.ts b/components/datalake-handler/admin/src/src/app/about/about.component.ts new file mode 100644 index 00000000..8e0e5b36 --- /dev/null +++ b/components/datalake-handler/admin/src/src/app/about/about.component.ts @@ -0,0 +1,41 @@ +/* + * ============LICENSE_START======================================================= + * ONAP : DataLake + * ================================================================================ + * Copyright 2019 QCT + *================================================================================= + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ + +/** + * + * @author Ekko Chang + * + */ + +import { Component, OnInit } from "@angular/core"; +import { AdminService } from "../core/services/admin.service"; + +@Component({ + selector: "app-about", + templateUrl: "./about.component.html", + styleUrls: ["./about.component.css"] +}) +export class AboutComponent implements OnInit { + constructor(private adminService: AdminService) { + this.adminService.setTitle("SIDEBAR.ABOUT"); + } + + ngOnInit() {} +} diff --git a/components/datalake-handler/admin/src/src/app/app-routing.module.ts b/components/datalake-handler/admin/src/src/app/app-routing.module.ts index 88096caf..37436156 100644 --- a/components/datalake-handler/admin/src/src/app/app-routing.module.ts +++ b/components/datalake-handler/admin/src/src/app/app-routing.module.ts @@ -30,12 +30,14 @@ import { Routes, RouterModule } from "@angular/router"; import { FeederComponent } from "./feeder/feeder.component"; import { TopicsComponent } from "./topics/topics.component"; import { DatabaseComponent } from "./database/database.component"; +import { AboutComponent } from "./about/about.component"; const routes: Routes = [ { path: "", redirectTo: "/feeder", pathMatch: "full" }, { path: "feeder", component: FeederComponent }, { path: "topics", component: TopicsComponent }, - { path: "database", component: DatabaseComponent } + { path: "database", component: DatabaseComponent }, + { path: "about", component: AboutComponent } ]; @NgModule({ diff --git a/components/datalake-handler/admin/src/src/app/app.module.ts b/components/datalake-handler/admin/src/src/app/app.module.ts index 339f0296..09885544 100644 --- a/components/datalake-handler/admin/src/src/app/app.module.ts +++ b/components/datalake-handler/admin/src/src/app/app.module.ts @@ -41,7 +41,7 @@ import { DatabaseComponent } from "./database/database.component"; import { TopicListComponent } from "./topics/topic-list/topic-list.component"; // Service -import { HeaderService } from "./core/services/header.service"; +import { AdminService } from "./core/services/admin.service"; import { RestApiService } from "./core/services/rest-api.service"; import { ToastrNotificationService } from "src/app/core/services/toastr-notification.service"; @@ -70,6 +70,7 @@ import { TopicDetailModalComponent } from "./topics/topic-list/topic-detail-moda import { TopicConfigModalComponent } from "./topics/topic-list/topic-config-modal/topic-config-modal.component"; import { ToastrNotificationComponent } from "./core/toastr-notification/toastr-notification.component"; import { AlertComponent } from "./core/alert/alert.component"; +import { AboutComponent } from './about/about.component'; @NgModule({ declarations: [ @@ -89,7 +90,8 @@ import { AlertComponent } from "./core/alert/alert.component"; TopicDetailModalComponent, TopicConfigModalComponent, ToastrNotificationComponent, - AlertComponent + AlertComponent, + AboutComponent ], imports: [ BrowserModule, @@ -106,7 +108,7 @@ import { AlertComponent } from "./core/alert/alert.component"; FormsModule, NgxDatatableModule ], - providers: [HeaderService, RestApiService, ToastrNotificationService], + providers: [AdminService, RestApiService, ToastrNotificationService], bootstrap: [AppComponent], entryComponents: [ AlertComponent, diff --git a/components/datalake-handler/admin/src/src/app/core/services/header.service.spec.ts b/components/datalake-handler/admin/src/src/app/core/services/admin.service.spec.ts index 0e4136d2..130da36e 100644 --- a/components/datalake-handler/admin/src/src/app/core/services/header.service.spec.ts +++ b/components/datalake-handler/admin/src/src/app/core/services/admin.service.spec.ts @@ -20,13 +20,13 @@ import { TestBed } from "@angular/core/testing"; -import { HeaderService } from "./header.service"; +import { AdminService } from "./admin.service"; -describe("HeaderService", () => { +describe("AdminService", () => { beforeEach(() => TestBed.configureTestingModule({})); it("should be created", () => { - const service: HeaderService = TestBed.get(HeaderService); + const service: AdminService = TestBed.get(AdminService); expect(service).toBeTruthy(); }); }); diff --git a/components/datalake-handler/admin/src/src/app/core/services/header.service.ts b/components/datalake-handler/admin/src/src/app/core/services/admin.service.ts index 5b89ba35..6281c956 100644 --- a/components/datalake-handler/admin/src/src/app/core/services/header.service.ts +++ b/components/datalake-handler/admin/src/src/app/core/services/admin.service.ts @@ -29,7 +29,7 @@ import { Injectable } from "@angular/core"; import { BehaviorSubject } from "rxjs"; @Injectable() -export class HeaderService { +export class AdminService { public title = new BehaviorSubject("Title"); constructor() {} @@ -37,4 +37,8 @@ export class HeaderService { setTitle(title: string) { this.title.next(title); } + + onKeyPressNumber(data: any) { + return (data.target.value = data.target.value.replace(/[^0-9.]/g, "")); + } } diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html index 1a6363e7..a675270d 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.html @@ -29,7 +29,7 @@ limitations under the License. </a> <div class="dropdown-menu"> <button class="dropdown-item" type="button" (click)="this.deleteDb(db.name)"> - <i class="fas fa-times db-config-icon"></i> Delete + <i class="fas fa-times db-config-icon"></i> {{ 'DELETE' | translate }} </button> </div> </div> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts index 9d58295a..8df720ea 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/database-list.component.ts @@ -196,7 +196,6 @@ export class DatabaseListComponent implements OnInit { this.tempDbDetail = receiveEntry; if (index != -1) { // Db name found, to update db - console.log("Update database: " + this.tempDbDetail.name); this.restApiService.upadteDb(this.tempDbDetail).subscribe( res => { this.dbs[index] = this.tempDbDetail; @@ -210,7 +209,6 @@ export class DatabaseListComponent implements OnInit { ); } else { // Db name not found, to insert db - console.log("Inserte database: " + this.tempDbDetail.name); this.restApiService.addDb(this.tempDbDetail).subscribe( res => { this.dbs.push(this.tempDbDetail); diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html index dec458ca..d11ffd95 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.html @@ -23,7 +23,7 @@ limitations under the License. <div class="container"> <div class="row"> <div class="col-md-12"> - <label class="dl-h3">Document store | Couchbase</label> + <label class="dl-h3">{{ 'DOCUMENT_STORE' | translate }} | Couchbase</label> </div> </div> @@ -50,7 +50,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">Host</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">{{ "HOST" | translate}}</label></div> <div class="col-md-4"> <input [(ngModel)]="this.tempDb.host" class="form-control dl-input-text" id="inputHost" type="text" placeholder=""> @@ -60,23 +60,24 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">Port</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">{{ "PORT" | translate}}</label></div> <div class="col-md-2"> <input [(ngModel)]="this.tempDb.port" class="form-control dl-input-text" id="inputPort" type="text" - placeholder=""> + placeholder="" (input)="this.adminService.onKeyPressNumber($event)"> </div> </div> </div> <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputUserName">Authentication</label></div> + <div class="col-md-3"><label class="dl-emphasis1" + for="inputUserName">{{ "AUTHENTICATION" | translate}}</label></div> <div class="col-sm-4"> <input [(ngModel)]="this.tempDb.login" class="form-control dl-input-text" id="inputUserName" type="text" placeholder="Username"> </div> <div class="col-sm-4"> - <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="text" + <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="password" placeholder="Password"> </div> </div> @@ -84,7 +85,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">SSL</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">{{ "ENABLE_SSL" | translate}}</label></div> <div class="col-md-3"> <div class="input-group"> <div class="input-group-prepend"> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts index f573ec05..deee9a0e 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/couchbase/couchbase.component.ts @@ -27,6 +27,7 @@ import { Component, Input, Output, EventEmitter } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { Db } from "src/app/core/models/db.model"; +import { AdminService } from "src/app/core/services/admin.service"; @Component({ selector: "app-couchbase", @@ -38,7 +39,10 @@ export class CouchbaseComponent { @Input() db: Db; tempDb: Db; - constructor(public activeModal: NgbActiveModal) {} + constructor( + public activeModal: NgbActiveModal, + public adminService: AdminService + ) {} ngOnInit() { // cache for display @@ -58,18 +62,6 @@ export class CouchbaseComponent { passBack() { this.db = this.tempDb; - - console.log("=================================="); - console.log("Update db name: " + this.db.name); - console.log("Update db enabled: " + this.db.enabled); - console.log("Update db host: " + this.db.host); - console.log("Update db port: " + this.db.port); - console.log("Update db database: " + this.db.database); - console.log("Update db encrypt: " + this.db.encrypt); - console.log("Update db login: " + this.db.login); - console.log("Update db pass: " + this.db.pass); - console.log("=================================="); - this.passEntry.emit(this.db); } } diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.html index 23a8c771..0f0de21d 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.html @@ -50,7 +50,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">Host</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">{{ "HOST" | translate}}</label></div> <div class="col-md-4"> <input [(ngModel)]="this.tempDb.host" class="form-control dl-input-text" id="inputHost" type="text" placeholder=""> @@ -60,23 +60,24 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">Port</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">{{ "PORT" | translate}}</label></div> <div class="col-md-2"> <input [(ngModel)]="this.tempDb.port" class="form-control dl-input-text" id="inputPort" type="text" - placeholder=""> + placeholder="" (input)="this.adminService.onKeyPressNumber($event)"> </div> </div> </div> <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputUserName">Authentication</label></div> + <div class="col-md-3"><label class="dl-emphasis1" + for="inputUserName">{{ "AUTHENTICATION" | translate}}</label></div> <div class="col-sm-4"> <input [(ngModel)]="this.tempDb.login" class="form-control dl-input-text" id="inputUserName" type="text" placeholder="Username"> </div> <div class="col-sm-4"> - <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="text" + <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="password" placeholder="Password"> </div> </div> @@ -84,7 +85,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">SSL</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">{{ "ENABLE_SSL" | translate}}</label></div> <div class="col-md-3"> <div class="input-group"> <div class="input-group-prepend"> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.ts index ab76ec12..7465c266 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/druid/druid.component.ts @@ -27,6 +27,7 @@ import { Component, Input, Output, EventEmitter } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { Db } from "src/app/core/models/db.model"; +import { AdminService } from "src/app/core/services/admin.service"; @Component({ selector: "app-druid", @@ -38,7 +39,10 @@ export class DruidComponent { @Input() db: Db; tempDb: Db; - constructor(public activeModal: NgbActiveModal) {} + constructor( + public activeModal: NgbActiveModal, + public adminService: AdminService + ) {} ngOnInit() { // cache for display @@ -58,18 +62,6 @@ export class DruidComponent { passBack() { this.db = this.tempDb; - - console.log("=================================="); - console.log("Update db name: " + this.db.name); - console.log("Update db enabled: " + this.db.enabled); - console.log("Update db host: " + this.db.host); - console.log("Update db port: " + this.db.port); - console.log("Update db database: " + this.db.database); - console.log("Update db encrypt: " + this.db.encrypt); - console.log("Update db login: " + this.db.login); - console.log("Update db pass: " + this.db.pass); - console.log("=================================="); - this.passEntry.emit(this.db); } } diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html index 43511d17..a9cac352 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.html @@ -23,7 +23,7 @@ limitations under the License. <div class="container"> <div class="row"> <div class="col-md-12"> - <label class="dl-h3">Search engine | Elasticsearch</label> + <label class="dl-h3"> {{ 'SEARCH_ENGINE' | translate }} | Elasticsearch</label> </div> </div> @@ -40,7 +40,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">Host</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">{{ "HOST" | translate}}</label></div> <div class="col-md-4"> <input [(ngModel)]="this.tempDb.host" class="form-control dl-input-text" id="inputHost" type="text" placeholder=""> @@ -50,23 +50,24 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">Port</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">{{ "PORT" | translate}}</label></div> <div class="col-md-2"> <input [(ngModel)]="this.tempDb.port" class="form-control dl-input-text" id="inputPort" type="text" - placeholder=""> + placeholder="" (input)="this.adminService.onKeyPressNumber($event)"> </div> </div> </div> <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputUserName">Authentication</label></div> + <div class="col-md-3"><label class="dl-emphasis1" + for="inputUserName">{{ "AUTHENTICATION" | translate}}</label></div> <div class="col-sm-4"> <input [(ngModel)]="this.tempDb.login" class="form-control dl-input-text" id="inputUserName" type="text" placeholder="Username"> </div> <div class="col-sm-4"> - <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="text" + <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="password" placeholder="Password"> </div> </div> @@ -74,7 +75,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">SSL</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">{{ "ENABLE_SSL" | translate}}</label></div> <div class="col-md-3"> <div class="input-group"> <div class="input-group-prepend"> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts index ebec9baf..dbe57c9b 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/elasticsearch/elasticsearch.component.ts @@ -27,6 +27,7 @@ import { Component, Input, Output, EventEmitter } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { Db } from "src/app/core/models/db.model"; +import { AdminService } from "src/app/core/services/admin.service"; @Component({ selector: "app-elasticsearch", @@ -38,7 +39,10 @@ export class ElasticsearchComponent { @Input() db: Db; tempDb: Db; - constructor(public activeModal: NgbActiveModal) {} + constructor( + public activeModal: NgbActiveModal, + public adminService: AdminService + ) {} ngOnInit() { // cache for display @@ -58,18 +62,6 @@ export class ElasticsearchComponent { passBack() { this.db = this.tempDb; - - console.log("=================================="); - console.log("Update db name: " + this.db.name); - console.log("Update db enabled: " + this.db.enabled); - console.log("Update db host: " + this.db.host); - console.log("Update db port: " + this.db.port); - console.log("Update db database: " + this.db.database); - console.log("Update db encrypt: " + this.db.encrypt); - console.log("Update db login: " + this.db.login); - console.log("Update db pass: " + this.db.pass); - console.log("=================================="); - this.passEntry.emit(this.db); } } diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html index 3bc1b3f4..bda2b3a2 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.html @@ -50,7 +50,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">Host</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputHost">{{ "HOST" | translate}}</label></div> <div class="col-md-4"> <input [(ngModel)]="this.tempDb.host" class="form-control dl-input-text" id="inputHost" type="text" placeholder=""> @@ -60,23 +60,24 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">Port</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputPort">{{ "PORT" | translate}}</label></div> <div class="col-md-2"> <input [(ngModel)]="this.tempDb.port" class="form-control dl-input-text" id="inputPort" type="text" - placeholder=""> + placeholder="" (input)="this.adminService.onKeyPressNumber($event)"> </div> </div> </div> <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputUserName">Authentication</label></div> + <div class="col-md-3"><label class="dl-emphasis1" + for="inputUserName">{{ "AUTHENTICATION" | translate}}</label></div> <div class="col-sm-4"> <input [(ngModel)]="this.tempDb.login" class="form-control dl-input-text" id="inputUserName" type="text" placeholder="Username"> </div> <div class="col-sm-4"> - <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="text" + <input [(ngModel)]="this.tempDb.pass" class="form-control dl-input-text" id="inputPass" type="password" placeholder="Password"> </div> </div> @@ -84,7 +85,7 @@ limitations under the License. <div class="form-group"> <div class="row"> - <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">SSL</label></div> + <div class="col-md-3"><label class="dl-emphasis1" for="inputSsl">{{ "ENABLE_SSL" | translate}}</label></div> <div class="col-md-3"> <div class="input-group"> <div class="input-group-prepend"> diff --git a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts index d8d35ac1..6f37f6a0 100644 --- a/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database-list/dbs-modal/mongodb/mongodb.component.ts @@ -27,6 +27,7 @@ import { Component, Input, Output, EventEmitter } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { Db } from "src/app/core/models/db.model"; +import { AdminService } from "src/app/core/services/admin.service"; @Component({ selector: "app-mongodb", @@ -38,7 +39,10 @@ export class MongodbComponent { @Input() db: Db; tempDb: Db; - constructor(public activeModal: NgbActiveModal) {} + constructor( + public activeModal: NgbActiveModal, + public adminService: AdminService + ) {} ngOnInit() { // cache for display @@ -58,18 +62,6 @@ export class MongodbComponent { passBack() { this.db = this.tempDb; - - console.log("=================================="); - console.log("Update db name: " + this.db.name); - console.log("Update db enabled: " + this.db.enabled); - console.log("Update db host: " + this.db.host); - console.log("Update db port: " + this.db.port); - console.log("Update db database: " + this.db.database); - console.log("Update db encrypt: " + this.db.encrypt); - console.log("Update db login: " + this.db.login); - console.log("Update db pass: " + this.db.pass); - console.log("=================================="); - this.passEntry.emit(this.db); } } diff --git a/components/datalake-handler/admin/src/src/app/database/database.component.ts b/components/datalake-handler/admin/src/src/app/database/database.component.ts index f8acff8f..67f35f9a 100644 --- a/components/datalake-handler/admin/src/src/app/database/database.component.ts +++ b/components/datalake-handler/admin/src/src/app/database/database.component.ts @@ -25,7 +25,7 @@ */ import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; +import { AdminService } from "../core/services/admin.service"; @Component({ selector: "app-database", @@ -33,8 +33,8 @@ import { HeaderService } from "../core/services/header.service"; styleUrls: ["./database.component.css"] }) export class DatabaseComponent implements OnInit { - constructor(private headerService: HeaderService) { - this.headerService.setTitle("SIDEBAR.DATABASE"); + constructor(private adminService: AdminService) { + this.adminService.setTitle("SIDEBAR.DATABASE"); } ngOnInit() {} diff --git a/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts b/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts index 0e8ad00c..8544198e 100644 --- a/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts +++ b/components/datalake-handler/admin/src/src/app/feeder/feeder.component.ts @@ -25,7 +25,7 @@ */ import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "src/app/core/services/header.service"; +import { AdminService } from "src/app/core/services/admin.service"; import { RestApiService } from "src/app/core/services/rest-api.service"; // notify @@ -40,11 +40,11 @@ export class FeederComponent implements OnInit { topicContent: string = ""; constructor( - private headerService: HeaderService, + private adminService: AdminService, private restApiService: RestApiService, private notificationService: ToastrNotificationService ) { - this.headerService.setTitle("SIDEBAR.FEDDFER"); + this.adminService.setTitle("SIDEBAR.FEDDFER"); this.restApiService.getTopicsFromFeeder().subscribe( res => { // TODO: -1, because __consumer_offsets diff --git a/components/datalake-handler/admin/src/src/app/header/header.component.ts b/components/datalake-handler/admin/src/src/app/header/header.component.ts index 8747ff3f..4cc00a46 100644 --- a/components/datalake-handler/admin/src/src/app/header/header.component.ts +++ b/components/datalake-handler/admin/src/src/app/header/header.component.ts @@ -25,7 +25,7 @@ */ import { Component } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; +import { AdminService } from "../core/services/admin.service"; import { TranslateService } from "@ngx-translate/core"; @Component({ @@ -44,21 +44,20 @@ export class HeaderComponent { ]; constructor( - private headerService: HeaderService, + private adminService: AdminService, private translateService: TranslateService ) { this.translateService.setDefaultLang("en-us"); } ngOnInit() { - this.headerService.title.subscribe(title => { + this.adminService.title.subscribe(title => { this.title = title; }); - this.selectedLang = "en-us"; + this.selectedLang = this.translateService.defaultLang; } changeLanguage(lang: string) { - console.log("Selected:" + lang); this.translateService.use(lang); } } diff --git a/components/datalake-handler/admin/src/src/app/sidebar/sidebar.component.html b/components/datalake-handler/admin/src/src/app/sidebar/sidebar.component.html index ed2f5cfa..044f62a7 100644 --- a/components/datalake-handler/admin/src/src/app/sidebar/sidebar.component.html +++ b/components/datalake-handler/admin/src/src/app/sidebar/sidebar.component.html @@ -49,6 +49,14 @@ limitations under the License. {{"SIDEBAR.DATABASE" | translate}} </a> </li> + + <li class="nav-item"> + <a class="nav-link" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}" + routerLink="/about"> + <i class="fas fa-info-circle" aria-hidden="true"></i> + {{"SIDEBAR.ABOUT" | translate}} + </a> + </li> </ul> </div> </nav> diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.html b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.html index af1ef714..bfa3f572 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.html +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.html @@ -1,9 +1,29 @@ +<!-- +============LICENSE_START======================================================= +ONAP : DataLake +================================================================================ +Copyright 2019 QCT +================================================================================= +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +============LICENSE_END========================================================= +--> + <div class="p-1"> <div class="modal-header pb-0 border-0"> <div class="container-fluid"> <div class="row"> <div class="col-md-12"> - <label class="dl-h3">{{ title }}</label> + <label class="dl-h3">{{ "DEFAULT_CONFIGURATIONS" | translate }}</label> </div> </div> @@ -19,7 +39,7 @@ <div class="container-fluid"> <div class="form-group"> <div class="row"> - <div class="col-md-4"><label class="dl-emphasis1">Status</label></div> + <div class="col-md-4"><label class="dl-emphasis1">{{ 'STATUS' | translate }}</label></div> <div class="col-md-8"> <label class="dl-switch"> @@ -33,7 +53,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-12"> - <label class="dl-emphasis1" for="inputUserName">Authentication</label> + <label class="dl-emphasis1" for="inputUserName">{{ 'AUTHENTICATION' | translate }}</label> </div> </div> <div class="row"> @@ -42,8 +62,8 @@ placeholder="Username" /> </div> <div class="col-md-6"> - <input #t_password [value]="topic.password" class="form-control dl-input-text" id="inputPass" type="text" - placeholder="Password" /> + <input #t_password [value]="topic.password" class="form-control dl-input-text" id="inputPass" + type="password" placeholder="Password" /> </div> </div> </div> @@ -51,10 +71,10 @@ <div class="form-group"> <div class="row"> <div class="col-md-6"> - <label class="dl-emphasis1">Data format</label> + <label class="dl-emphasis1">{{ 'DATA_FORMAT' | translate }}</label> </div> <div class="col-md-6"> - <label class="dl-emphasis1">TTL (days)</label> + <label class="dl-emphasis1">{{ 'TTL' | translate }} (days)</label> </div> </div> <div class="row"> @@ -66,14 +86,14 @@ </div> <div class="col-md-6"> <input #t_ttl [value]="topic.ttl" class="form-control dl-input-text" id="inputTtl" type="text" - placeholder="3650" /> + placeholder="3650" (input)="this.adminService.onKeyPressNumber($event)" /> </div> </div> </div> <div class="form-group"> <div class="row"> - <div class="col-md-12"><label class="dl-emphasis1">Sink</label></div> + <div class="col-md-12"><label class="dl-emphasis1">{{ 'SINK' | translate }}</label></div> </div> <div class="row d-flex flex-wrap"> <div *ngFor="let db of dbs" class="col-md-6 pb-1"> @@ -96,7 +116,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-12"> - <label class="dl-emphasis1">Raw data</label> + <label class="dl-emphasis1">{{ 'SAVE_RAW_DATA' | translate }}</label> </div> </div> <div class="row"> diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.ts b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.ts index 36ea1dc6..b67dff19 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.ts +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-config-modal/topic-config-modal.component.ts @@ -35,6 +35,7 @@ import { } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { RestApiService } from "src/app/core/services/rest-api.service"; +import { AdminService } from "src/app/core/services/admin.service"; import { Topic } from "src/app/core/models/topic.model"; @Component({ @@ -60,6 +61,7 @@ export class TopicConfigModalComponent implements OnInit { constructor( public activeModal: NgbActiveModal, + public adminService: AdminService, private restApiService: RestApiService ) { this.getDbs(); @@ -77,19 +79,16 @@ export class TopicConfigModalComponent implements OnInit { getDbs() { this.dbs = []; this.restApiService.getDbList().subscribe((data: {}) => { - //console.log(data); this.dbs = data; }); } updateSelectedDB(event: any, name: string) { if (event.target.checked) { - console.log("checked"); if (!this.tempSeletedDbs.find(db => db === name)) { this.tempSeletedDbs.push(name); } } else { - console.log("unchecked"); const index = this.tempSeletedDbs.indexOf(name, 0); if (index > -1) { this.tempSeletedDbs.splice(index, 1); @@ -106,17 +105,6 @@ export class TopicConfigModalComponent implements OnInit { this.topic.ttl = this.t_ttl.nativeElement.value; this.topic.saveRaw = this.tempSaveRaw; - console.log("=================================="); - console.log("Update topic name: " + this.topic.name); - console.log("Update topic login: " + this.topic.login); - console.log("Update topic password: " + this.topic.password); - console.log("Update topic sinkdbs: " + this.topic.sinkdbs); - console.log("Update topic enabled: " + this.topic.enabled); - console.log("Update topic saveRaw: " + this.topic.saveRaw); - console.log("Update topic dataFormat: " + this.topic.dataFormat); - console.log("Update topic ttl: " + this.topic.ttl); - console.log("=================================="); - this.passEntry.emit(this.topic); } } diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.html b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.html index 93021382..67b84b74 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.html +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.html @@ -1,3 +1,23 @@ +<!-- +============LICENSE_START======================================================= +ONAP : DataLake +================================================================================ +Copyright 2019 QCT +================================================================================= +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +============LICENSE_END========================================================= +--> + <div class="p-1"> <div class="modal-header pb-0 border-0 border-bottom"> @@ -12,6 +32,13 @@ <div class="col-md-12"> <hr> </div> + + <div *ngIf="!topic.type" class="col-md-12"> + <div class="dl-notice"> + {{ "TOPIC_DEFAULT_CONF_NOTICE" | translate}} + </div> + </div> + </div> </div> @@ -21,7 +48,7 @@ <div class="container-fluid"> <div class="form-group"> <div class="row"> - <div class="col-md-4"><label class="dl-emphasis1">Status</label></div> + <div class="col-md-4"><label class="dl-emphasis1">{{ 'STATUS' | translate }}</label></div> <div class="col-md-8"> <label class="dl-switch"> @@ -35,15 +62,15 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1" for="inputUserName">Authentication</label> + <label class="dl-emphasis1" for="inputUserName">{{ 'AUTHENTICATION' | translate }}</label> </div> <div class="col-md-4"> <input #t_login [value]="topic.login" class="form-control dl-input-text" id="inputUserName" type="text" placeholder="Username" /> </div> <div class="col-md-4"> - <input #t_password [value]="topic.password" class="form-control dl-input-text" id="inputPass" type="text" - placeholder="Password" /> + <input #t_password [value]="topic.password" class="form-control dl-input-text" id="inputPass" + type="password" placeholder="Password" /> </div> </div> </div> @@ -51,7 +78,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">Sink</label> + <label class="dl-emphasis1">{{ 'SINK' | translate }}</label> </div> <div class="col-md-8"> <div class="row d-flex flex-wrap"> @@ -77,7 +104,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">Data format</label> + <label class="dl-emphasis1">{{ 'DATA_FORMAT' | translate }}</label> </div> <div class="col-md-4"> <select #t_dataFormat class="custom-select dl-input-text" id="selDataFormat"> @@ -91,11 +118,11 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">TTL (days)</label> + <label class="dl-emphasis1">{{ 'TTL' | translate }} (days)</label> </div> <div class="col-md-4"> <input #t_ttl [value]="topic.ttl" class="form-control dl-input-text" id="inputTtl" type="text" - placeholder="3650" /> + placeholder="3650" (input)="this.adminService.onKeyPressNumber($event)" /> </div> </div> </div> @@ -103,7 +130,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">Raw data</label> + <label class="dl-emphasis1">{{ 'SAVE_RAW_DATA' | translate }}</label> </div> <div class="col-md-4"> <div class="input-group"> @@ -124,7 +151,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">Correlate cleard message</label> + <label class="dl-emphasis1">{{ 'CORRELATE_CLEARED_MESSAGE' | translate }}</label> </div> <div class="col-md-4"> <div class="input-group"> @@ -145,7 +172,7 @@ <div class="form-group"> <div class="row"> <div class="col-md-4"> - <label class="dl-emphasis1">ID extraction</label> + <label class="dl-emphasis1">{{ 'ID_EXTRACTION' | translate }}</label> </div> <div class="col-md-8"> <div class="d-flex row align-items-center" *ngFor="let field of idExFields; let i = index"> diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.ts b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.ts index c1c61f0c..e2dd1825 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.ts +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-detail-modal/topic-detail-modal.component.ts @@ -35,6 +35,7 @@ import { } from "@angular/core"; import { NgbActiveModal } from "@ng-bootstrap/ng-bootstrap"; import { RestApiService } from "src/app/core/services/rest-api.service"; +import { AdminService } from "src/app/core/services/admin.service"; import { Topic } from "src/app/core/models/topic.model"; @Component({ @@ -62,6 +63,7 @@ export class TopicDetailModalComponent implements OnInit { constructor( public activeModal: NgbActiveModal, + public adminService: AdminService, private restApiService: RestApiService ) { this.getDbs(); @@ -90,19 +92,16 @@ export class TopicDetailModalComponent implements OnInit { getDbs() { this.dbs = []; this.restApiService.getDbList().subscribe((data: {}) => { - //console.log(data); this.dbs = data; }); } updateSelectedDB(event: any, name: string) { if (event.target.checked) { - console.log("checked"); if (!this.tempSeletedDbs.find(db => db === name)) { this.tempSeletedDbs.push(name); } } else { - console.log("unchecked"); const index = this.tempSeletedDbs.indexOf(name, 0); if (index > -1) { this.tempSeletedDbs.splice(index, 1); @@ -142,29 +141,12 @@ export class TopicDetailModalComponent implements OnInit { } } - console.log("=================================="); - console.log("Update topic name: " + this.topic.name); - console.log("Update topic login: " + this.topic.login); - console.log("Update topic password: " + this.topic.password); - console.log("Update topic sinkdbs: " + this.topic.sinkdbs); - console.log("Update topic enabled: " + this.topic.enabled); - console.log("Update topic saveRaw: " + this.topic.saveRaw); - console.log("Update topic dataFormat: " + this.topic.dataFormat); - console.log("Update topic ttl: " + this.topic.ttl); - console.log( - "Update topic correlateClearedMessage: " + - this.topic.correlateClearedMessage - ); - console.log("Update topic messageIdPath: " + this.topic.messageIdPath); - // Reset to default if (this.topic.sinkdbs.length == 0) { this.topic.type = false; } else { this.topic.type = true; } - console.log("Update topic type: " + this.topic.type); - console.log("=================================="); this.passEntry.emit(this.topic); } } diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html index 3d4e0938..3e3fd721 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.html @@ -5,13 +5,8 @@ <!-- Search bar --> <div class="p-1"> <div class="input-group"> - <input - #searchText - type="text" - class="form-control dl-input-text-search" - placeholder="Search..." - (keyup)="this.updateFilter($event.target.value)" - /> + <input #searchText type="text" class="form-control dl-input-text-search" placeholder="Search..." + (keyup)="this.updateFilter($event.target.value)" /> <div class="input-group-append"> <button type="button" class="btn dl-btn-dark"> <i class="fa fa-search"></i> @@ -23,7 +18,7 @@ <!-- button --> <div class="p-1"> <button class="btn dl-btn-dark" (click)="openTopicModal('config')"> - Default configuration + {{ "DEFAULT_CONFIGURATIONS" | translate }} </button> </div> </div> @@ -33,27 +28,11 @@ <!-- datatable --> <div class="row"> <div class="col-md-12"> - <ngx-datatable - #mydatatable - class="bootstrap" - [rows]="topics" - [columnMode]="'force'" - [headerHeight]="40" - [footerHeight]="40" - [rowHeight]="50" - [scrollbarV]="true" - [scrollbarH]="true" - [loadingIndicator]="loadingIndicator" - [messages]="mesgNoData" - [limit]="10" - > - <ngx-datatable-column - [width]="30" - name="Status" - prop="enabled" - headerClass="d-flex justify-content-center" - cellClass="d-flex justify-content-center" - > + <ngx-datatable #mydatatable class="bootstrap" [rows]="topics" [columnMode]="'force'" [headerHeight]="40" + [footerHeight]="40" [rowHeight]="50" [scrollbarV]="true" [scrollbarH]="true" + [loadingIndicator]="loadingIndicator" [messages]="mesgNoData" [limit]="10"> + <ngx-datatable-column [width]="30" name="{{ 'STATUS' | translate }}" prop="enabled" + headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center"> <div> <ng-template let-row="row" ngx-datatable-cell-template> <span *ngIf="row.enabled"> @@ -66,39 +45,21 @@ </div> </ngx-datatable-column> - <ngx-datatable-column [width]="350" name="Name" prop="name"> + <ngx-datatable-column [width]="350" name="{{ 'NAME' | translate }}" prop="name"> <ng-template let-row="row" ngx-datatable-cell-template> <span>{{ row.name }}</span> </ng-template> </ngx-datatable-column> - <ngx-datatable-column [width]="100" name="Sink" prop="sinkdbs"> + <ngx-datatable-column [width]="100" name="{{ 'SINK' | translate }}" prop="sinkdbs"> <ng-template let-row="row" ngx-datatable-cell-template> <!-- Couchbase enable --> - <span - *ngIf="row.sinkdbs.includes('Couchbase')" - class="pr-1" - placement="bottom" - ngbTooltip="Couchbase" - container="body" - tooltipClass="dl-db-icon-hover-enable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-408 285.3 25 25" - style="enable-background:new -408 285.3 25 25;" - xml:space="preserve" - > - <path - [ngStyle]="{ + <span *ngIf="row.sinkdbs.includes('Couchbase')" class="pr-1" placement="bottom" ngbTooltip="Couchbase" + container="body" tooltipClass="dl-db-icon-hover-enable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-408 285.3 25 25" + style="enable-background:new -408 285.3 25 25;" xml:space="preserve"> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Couchbase') ? '#5DBEBB' : '#D2D3D5' @@ -106,35 +67,16 @@ d="M-395.5,285.3c-6.9,0-12.5,5.6-12.5,12.5s5.6,12.5,12.5,12.5s12.5-5.6,12.5-12.5S-388.6,285.3-395.5,285.3z M-387.1,300c0,0.8-0.4,1.4-1.3,1.6c-1.5,0.3-4.6,0.4-7.2,0.4s-5.7-0.2-7.2-0.4c-0.8-0.2-1.3-0.8-1.3-1.6v-4.9 c0-0.8,0.6-1.5,1.3-1.6c0.4-0.1,1.5-0.2,2.2-0.2c0.3,0,0.5,0.2,0.5,0.6v3.4l4.4-0.1l4.4,0.1v-3.4c0-0.4,0.2-0.6,0.5-0.6 - c0.8,0,1.8,0.1,2.2,0.2c0.7,0.1,1.3,0.8,1.3,1.6C-387.1,296.7-387.1,298.3-387.1,300L-387.1,300z" - /> + c0.8,0,1.8,0.1,2.2,0.2c0.7,0.1,1.3,0.8,1.3,1.6C-387.1,296.7-387.1,298.3-387.1,300L-387.1,300z" /> </svg> </span> <!-- Couchbase disable --> - <span - *ngIf="!row.sinkdbs.includes('Couchbase')" - class="pr-1" - placement="bottom" - ngbTooltip="Couchbase" - container="body" - tooltipClass="dl-db-icon-hover-disable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-408 285.3 25 25" - style="enable-background:new -408 285.3 25 25;" - xml:space="preserve" - > - <path - [ngStyle]="{ + <span *ngIf="!row.sinkdbs.includes('Couchbase')" class="pr-1" placement="bottom" ngbTooltip="Couchbase" + container="body" tooltipClass="dl-db-icon-hover-disable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-408 285.3 25 25" + style="enable-background:new -408 285.3 25 25;" xml:space="preserve"> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Couchbase') ? '#5DBEBB' : '#D2D3D5' @@ -142,37 +84,18 @@ d="M-395.5,285.3c-6.9,0-12.5,5.6-12.5,12.5s5.6,12.5,12.5,12.5s12.5-5.6,12.5-12.5S-388.6,285.3-395.5,285.3z M-387.1,300c0,0.8-0.4,1.4-1.3,1.6c-1.5,0.3-4.6,0.4-7.2,0.4s-5.7-0.2-7.2-0.4c-0.8-0.2-1.3-0.8-1.3-1.6v-4.9 c0-0.8,0.6-1.5,1.3-1.6c0.4-0.1,1.5-0.2,2.2-0.2c0.3,0,0.5,0.2,0.5,0.6v3.4l4.4-0.1l4.4,0.1v-3.4c0-0.4,0.2-0.6,0.5-0.6 - c0.8,0,1.8,0.1,2.2,0.2c0.7,0.1,1.3,0.8,1.3,1.6C-387.1,296.7-387.1,298.3-387.1,300L-387.1,300z" - /> + c0.8,0,1.8,0.1,2.2,0.2c0.7,0.1,1.3,0.8,1.3,1.6C-387.1,296.7-387.1,298.3-387.1,300L-387.1,300z" /> </svg> </span> <!-- Druid enable --> - <span - *ngIf="row.sinkdbs.includes('Druid')" - class="pr-1" - placement="bottom" - ngbTooltip="Druid" - container="body" - tooltipClass="dl-db-icon-hover-enable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-403 285.3 34 25" - style="enable-background:new -403 285.3 34 25;" - xml:space="preserve" - > + <span *ngIf="row.sinkdbs.includes('Druid')" class="pr-1" placement="bottom" ngbTooltip="Druid" + container="body" tooltipClass="dl-db-icon-hover-enable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-403 285.3 34 25" + style="enable-background:new -403 285.3 34 25;" xml:space="preserve"> <g> - <path - [ngStyle]="{ + <path [ngStyle]="{ fill: row.sinkdbs.includes('Druid') ? '#5DBEBB' : '#D2D3D5' @@ -180,52 +103,30 @@ d="M-385.5,285.3c2.2,0,4.3,0,6.5,0c4.2,0,8,2.7,9.4,6.6c0.6,1.7,0.8,3.4,0.6,5.2c-0.3,2.6-1,5-2.5,7.2 c-2.3,3.4-5.5,5.2-9.5,5.8c-1.4,0.2-2.7,0.2-4.1,0.2c-0.6,0-0.9-0.3-0.9-0.7c0-0.5,0.3-0.9,0.8-0.9c0.6,0,1.2,0,1.9,0 c3.7-0.1,7-1.4,9.6-4.2c1.8-1.9,2.7-4.3,3-6.9c0.2-1.8,0.2-3.6-0.5-5.3c-1.1-2.6-3.1-4.2-5.8-5c-1.1-0.3-2.1-0.3-3.2-0.4 - c-4,0-8.1,0-12.1,0c-0.2,0-0.3,0-0.5,0c-0.4,0-0.7-0.4-0.7-0.8s0.3-0.7,0.6-0.8c0.2,0,0.4,0,0.6,0L-385.5,285.3L-385.5,285.3z" - /> - <path - [ngStyle]="{ + c-4,0-8.1,0-12.1,0c-0.2,0-0.3,0-0.5,0c-0.4,0-0.7-0.4-0.7-0.8s0.3-0.7,0.6-0.8c0.2,0,0.4,0,0.6,0L-385.5,285.3L-385.5,285.3z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Druid') ? '#5DBEBB' : '#D2D3D5' - }" - d="M-389.7,304.6h-7.2c-0.2,0-0.3,0-0.5,0c-0.4-0.1-0.7-0.3-0.7-0.7c0-0.4,0.2-0.7,0.6-0.9 + }" d="M-389.7,304.6h-7.2c-0.2,0-0.3,0-0.5,0c-0.4-0.1-0.7-0.3-0.7-0.7c0-0.4,0.2-0.7,0.6-0.9 c0.2-0.1,0.5-0.1,0.8-0.1c4.7,0,9.5,0,14.2,0c1.7,0,3.1-0.6,4.2-1.8c1-1,1.5-2.3,1.6-3.7c0.1-1.1,0-2.1-0.7-3.1 c-0.8-1-1.8-1.5-3.1-1.5c-4.5,0-9,0-13.5,0c-0.5,0-1,0-1.4-0.1c-0.4,0-0.6-0.3-0.7-0.7c0-0.5,0.2-0.8,0.6-0.9c0.1,0,0.3,0,0.4,0 h14.4c2.4,0,4.5,1.5,5.3,3.8c0.5,1.6,0.4,3.3-0.3,4.8c-1.2,3-3.9,4.9-7.2,4.9C-385,304.6-387.3,304.6-389.7,304.6L-389.7,304.6z M-400.4,292.6c-0.6,0-1.1,0-1.7,0c-0.5,0-0.8-0.3-0.9-0.7s0.2-0.8,0.7-0.9c0.3,0,0.5-0.1,0.8-0.1c0.8,0,1.5,0,2.3,0 c0.2,0,0.5,0,0.7,0.1c0.4,0.1,0.6,0.5,0.6,0.9s-0.3,0.7-0.7,0.7C-399.2,292.7-399.8,292.6-400.4,292.6L-400.4,292.6z M-390.3,310.3 c-0.5,0-1,0-1.6,0c-0.5,0-0.8-0.3-0.9-0.7c0-0.5,0.3-0.9,0.7-0.9c1.1-0.1,2.2-0.1,3.4,0c0.4,0,0.8,0.4,0.7,0.8l0,0 - c0,0.5-0.4,0.7-0.9,0.8L-390.3,310.3L-390.3,310.3z" - /> + c0,0.5-0.4,0.7-0.9,0.8L-390.3,310.3L-390.3,310.3z" /> </g> </svg> </span> <!-- Druid disable --> - <span - *ngIf="!row.sinkdbs.includes('Druid')" - class="pr-1" - placement="bottom" - ngbTooltip="Druid" - container="body" - tooltipClass="dl-db-icon-hover-disable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-403 285.3 34 25" - style="enable-background:new -403 285.3 34 25;" - xml:space="preserve" - > + <span *ngIf="!row.sinkdbs.includes('Druid')" class="pr-1" placement="bottom" ngbTooltip="Druid" + container="body" tooltipClass="dl-db-icon-hover-disable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-403 285.3 34 25" + style="enable-background:new -403 285.3 34 25;" xml:space="preserve"> <g> - <path - [ngStyle]="{ + <path [ngStyle]="{ fill: row.sinkdbs.includes('Druid') ? '#5DBEBB' : '#D2D3D5' @@ -233,369 +134,220 @@ d="M-385.5,285.3c2.2,0,4.3,0,6.5,0c4.2,0,8,2.7,9.4,6.6c0.6,1.7,0.8,3.4,0.6,5.2c-0.3,2.6-1,5-2.5,7.2 c-2.3,3.4-5.5,5.2-9.5,5.8c-1.4,0.2-2.7,0.2-4.1,0.2c-0.6,0-0.9-0.3-0.9-0.7c0-0.5,0.3-0.9,0.8-0.9c0.6,0,1.2,0,1.9,0 c3.7-0.1,7-1.4,9.6-4.2c1.8-1.9,2.7-4.3,3-6.9c0.2-1.8,0.2-3.6-0.5-5.3c-1.1-2.6-3.1-4.2-5.8-5c-1.1-0.3-2.1-0.3-3.2-0.4 - c-4,0-8.1,0-12.1,0c-0.2,0-0.3,0-0.5,0c-0.4,0-0.7-0.4-0.7-0.8s0.3-0.7,0.6-0.8c0.2,0,0.4,0,0.6,0L-385.5,285.3L-385.5,285.3z" - /> - <path - [ngStyle]="{ + c-4,0-8.1,0-12.1,0c-0.2,0-0.3,0-0.5,0c-0.4,0-0.7-0.4-0.7-0.8s0.3-0.7,0.6-0.8c0.2,0,0.4,0,0.6,0L-385.5,285.3L-385.5,285.3z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Druid') ? '#5DBEBB' : '#D2D3D5' - }" - d="M-389.7,304.6h-7.2c-0.2,0-0.3,0-0.5,0c-0.4-0.1-0.7-0.3-0.7-0.7c0-0.4,0.2-0.7,0.6-0.9 + }" d="M-389.7,304.6h-7.2c-0.2,0-0.3,0-0.5,0c-0.4-0.1-0.7-0.3-0.7-0.7c0-0.4,0.2-0.7,0.6-0.9 c0.2-0.1,0.5-0.1,0.8-0.1c4.7,0,9.5,0,14.2,0c1.7,0,3.1-0.6,4.2-1.8c1-1,1.5-2.3,1.6-3.7c0.1-1.1,0-2.1-0.7-3.1 c-0.8-1-1.8-1.5-3.1-1.5c-4.5,0-9,0-13.5,0c-0.5,0-1,0-1.4-0.1c-0.4,0-0.6-0.3-0.7-0.7c0-0.5,0.2-0.8,0.6-0.9c0.1,0,0.3,0,0.4,0 h14.4c2.4,0,4.5,1.5,5.3,3.8c0.5,1.6,0.4,3.3-0.3,4.8c-1.2,3-3.9,4.9-7.2,4.9C-385,304.6-387.3,304.6-389.7,304.6L-389.7,304.6z M-400.4,292.6c-0.6,0-1.1,0-1.7,0c-0.5,0-0.8-0.3-0.9-0.7s0.2-0.8,0.7-0.9c0.3,0,0.5-0.1,0.8-0.1c0.8,0,1.5,0,2.3,0 c0.2,0,0.5,0,0.7,0.1c0.4,0.1,0.6,0.5,0.6,0.9s-0.3,0.7-0.7,0.7C-399.2,292.7-399.8,292.6-400.4,292.6L-400.4,292.6z M-390.3,310.3 c-0.5,0-1,0-1.6,0c-0.5,0-0.8-0.3-0.9-0.7c0-0.5,0.3-0.9,0.7-0.9c1.1-0.1,2.2-0.1,3.4,0c0.4,0,0.8,0.4,0.7,0.8l0,0 - c0,0.5-0.4,0.7-0.9,0.8L-390.3,310.3L-390.3,310.3z" - /> + c0,0.5-0.4,0.7-0.9,0.8L-390.3,310.3L-390.3,310.3z" /> </g> </svg> </span> <!-- Elasticsearch enable --> - <span - *ngIf="row.sinkdbs.includes('Elasticsearch')" - class="pr-1" - placement="bottom" - ngbTooltip="Elasticsearch" - container="body" - tooltipClass="dl-db-icon-hover-enable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="2066.4 284.8 25.1 25" - style="enable-background:new 2066.4 284.8 25.1 25;" - xml:space="preserve" - > + <span *ngIf="row.sinkdbs.includes('Elasticsearch')" class="pr-1" placement="bottom" + ngbTooltip="Elasticsearch" container="body" tooltipClass="dl-db-icon-hover-enable" [openDelay]="300" + [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="2066.4 284.8 25.1 25" + style="enable-background:new 2066.4 284.8 25.1 25;" xml:space="preserve"> <g> - <path - style="fill: #FFFFFF" - d="M2091.6,297.9c0-2.1-1.3-3.9-3.3-4.7c0.1-0.4,0.1-0.9,0.1-1.4c0-3.9-3.2-7.1-7.1-7.1c-2.3,0-4.4,1.1-5.7,3 + <path style="fill: #FFFFFF" d="M2091.6,297.9c0-2.1-1.3-3.9-3.3-4.7c0.1-0.4,0.1-0.9,0.1-1.4c0-3.9-3.2-7.1-7.1-7.1c-2.3,0-4.4,1.1-5.7,3 c-0.7-0.5-1.5-0.8-2.3-0.8c-2.1,0-3.8,1.7-3.8,3.8c0,0.5,0.1,0.9,0.2,1.3c-2,0.7-3.3,2.6-3.3,4.7c0,2.1,1.3,4,3.3,4.7 c-0.1,0.4-0.1,0.9-0.1,1.4c0,3.9,3.2,7.1,7.1,7.1c2.3,0,4.4-1.1,5.7-3c0.7,0.5,1.5,0.8,2.3,0.8c2.1,0,3.8-1.7,3.8-3.8 - c0-0.5-0.1-0.9-0.2-1.3C2090.2,301.8,2091.6,300,2091.6,297.9L2091.6,297.9z" - /> - <path - [ngStyle]="{ + c0-0.5-0.1-0.9-0.2-1.3C2090.2,301.8,2091.6,300,2091.6,297.9L2091.6,297.9z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2076.3,295.5l5.6,2.6l5.7-5c0.1-0.4,0.1-0.8,0.1-1.3c0-3.5-2.8-6.3-6.3-6.3c-2.1,0-4,1-5.2,2.7l-0.9,4.9 - L2076.3,295.5L2076.3,295.5z" - /> - <path - [ngStyle]="{ + }" d="M2076.3,295.5l5.6,2.6l5.7-5c0.1-0.4,0.1-0.8,0.1-1.3c0-3.5-2.8-6.3-6.3-6.3c-2.1,0-4,1-5.2,2.7l-0.9,4.9 + L2076.3,295.5L2076.3,295.5z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2070.5,301.4c-0.1,0.4-0.1,0.8-0.1,1.3c0,3.5,2.8,6.3,6.3,6.3c2.1,0,4.1-1,5.2-2.8l0.9-4.9l-1.3-2.4l-5.6-2.6 - L2070.5,301.4L2070.5,301.4z" - /> - <path - [ngStyle]="{ + }" d="M2070.5,301.4c-0.1,0.4-0.1,0.8-0.1,1.3c0,3.5,2.8,6.3,6.3,6.3c2.1,0,4.1-1,5.2-2.8l0.9-4.9l-1.3-2.4l-5.6-2.6 + L2070.5,301.4L2070.5,301.4z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2070.4,291.7l3.8,0.9l0.9-4.4c-0.5-0.4-1.2-0.6-1.8-0.6c-1.7,0-3,1.4-3,3 - C2070.2,291.1,2070.3,291.4,2070.4,291.7L2070.4,291.7z" - /> - <path - [ngStyle]="{ + }" d="M2070.4,291.7l3.8,0.9l0.9-4.4c-0.5-0.4-1.2-0.6-1.8-0.6c-1.7,0-3,1.4-3,3 + C2070.2,291.1,2070.3,291.4,2070.4,291.7L2070.4,291.7z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' }" - d="M2070.1,292.7c-1.7,0.6-2.9,2.2-2.9,4c0,1.8,1.1,3.3,2.7,4l5.4-4.9l-1-2.1L2070.1,292.7L2070.1,292.7z" - /> - <path - [ngStyle]="{ + d="M2070.1,292.7c-1.7,0.6-2.9,2.2-2.9,4c0,1.8,1.1,3.3,2.7,4l5.4-4.9l-1-2.1L2070.1,292.7L2070.1,292.7z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2082.9,306.3c0.5,0.4,1.2,0.6,1.8,0.6c1.7,0,3-1.4,3-3c0-0.4-0.1-0.7-0.2-1l-3.8-0.9L2082.9,306.3 - L2082.9,306.3z" - /> - <path - [ngStyle]="{ + }" d="M2082.9,306.3c0.5,0.4,1.2,0.6,1.8,0.6c1.7,0,3-1.4,3-3c0-0.4-0.1-0.7-0.2-1l-3.8-0.9L2082.9,306.3 + L2082.9,306.3z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' }" - d="M2083.7,300.9l4.2,1c1.7-0.6,2.9-2.2,2.9-4c0-1.8-1.1-3.3-2.7-4l-5.5,4.8L2083.7,300.9L2083.7,300.9z" - /> + d="M2083.7,300.9l4.2,1c1.7-0.6,2.9-2.2,2.9-4c0-1.8-1.1-3.3-2.7-4l-5.5,4.8L2083.7,300.9L2083.7,300.9z" /> </g> </svg> </span> <!-- Elasticsearch disable --> - <span - *ngIf="!row.sinkdbs.includes('Elasticsearch')" - class="pr-1" - placement="bottom" - ngbTooltip="Elasticsearch" - container="body" - tooltipClass="dl-db-icon-hover-disable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="2066.4 284.8 25.1 25" - style="enable-background:new 2066.4 284.8 25.1 25;" - xml:space="preserve" - > + <span *ngIf="!row.sinkdbs.includes('Elasticsearch')" class="pr-1" placement="bottom" + ngbTooltip="Elasticsearch" container="body" tooltipClass="dl-db-icon-hover-disable" [openDelay]="300" + [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="2066.4 284.8 25.1 25" + style="enable-background:new 2066.4 284.8 25.1 25;" xml:space="preserve"> <g> - <path - style="fill: #FFFFFF" - d="M2091.6,297.9c0-2.1-1.3-3.9-3.3-4.7c0.1-0.4,0.1-0.9,0.1-1.4c0-3.9-3.2-7.1-7.1-7.1c-2.3,0-4.4,1.1-5.7,3 + <path style="fill: #FFFFFF" d="M2091.6,297.9c0-2.1-1.3-3.9-3.3-4.7c0.1-0.4,0.1-0.9,0.1-1.4c0-3.9-3.2-7.1-7.1-7.1c-2.3,0-4.4,1.1-5.7,3 c-0.7-0.5-1.5-0.8-2.3-0.8c-2.1,0-3.8,1.7-3.8,3.8c0,0.5,0.1,0.9,0.2,1.3c-2,0.7-3.3,2.6-3.3,4.7c0,2.1,1.3,4,3.3,4.7 c-0.1,0.4-0.1,0.9-0.1,1.4c0,3.9,3.2,7.1,7.1,7.1c2.3,0,4.4-1.1,5.7-3c0.7,0.5,1.5,0.8,2.3,0.8c2.1,0,3.8-1.7,3.8-3.8 - c0-0.5-0.1-0.9-0.2-1.3C2090.2,301.8,2091.6,300,2091.6,297.9L2091.6,297.9z" - /> - <path - [ngStyle]="{ + c0-0.5-0.1-0.9-0.2-1.3C2090.2,301.8,2091.6,300,2091.6,297.9L2091.6,297.9z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2076.3,295.5l5.6,2.6l5.7-5c0.1-0.4,0.1-0.8,0.1-1.3c0-3.5-2.8-6.3-6.3-6.3c-2.1,0-4,1-5.2,2.7l-0.9,4.9 - L2076.3,295.5L2076.3,295.5z" - /> - <path - [ngStyle]="{ + }" d="M2076.3,295.5l5.6,2.6l5.7-5c0.1-0.4,0.1-0.8,0.1-1.3c0-3.5-2.8-6.3-6.3-6.3c-2.1,0-4,1-5.2,2.7l-0.9,4.9 + L2076.3,295.5L2076.3,295.5z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2070.5,301.4c-0.1,0.4-0.1,0.8-0.1,1.3c0,3.5,2.8,6.3,6.3,6.3c2.1,0,4.1-1,5.2-2.8l0.9-4.9l-1.3-2.4l-5.6-2.6 - L2070.5,301.4L2070.5,301.4z" - /> - <path - [ngStyle]="{ + }" d="M2070.5,301.4c-0.1,0.4-0.1,0.8-0.1,1.3c0,3.5,2.8,6.3,6.3,6.3c2.1,0,4.1-1,5.2-2.8l0.9-4.9l-1.3-2.4l-5.6-2.6 + L2070.5,301.4L2070.5,301.4z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2070.4,291.7l3.8,0.9l0.9-4.4c-0.5-0.4-1.2-0.6-1.8-0.6c-1.7,0-3,1.4-3,3 - C2070.2,291.1,2070.3,291.4,2070.4,291.7L2070.4,291.7z" - /> - <path - [ngStyle]="{ + }" d="M2070.4,291.7l3.8,0.9l0.9-4.4c-0.5-0.4-1.2-0.6-1.8-0.6c-1.7,0-3,1.4-3,3 + C2070.2,291.1,2070.3,291.4,2070.4,291.7L2070.4,291.7z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' }" - d="M2070.1,292.7c-1.7,0.6-2.9,2.2-2.9,4c0,1.8,1.1,3.3,2.7,4l5.4-4.9l-1-2.1L2070.1,292.7L2070.1,292.7z" - /> - <path - [ngStyle]="{ + d="M2070.1,292.7c-1.7,0.6-2.9,2.2-2.9,4c0,1.8,1.1,3.3,2.7,4l5.4-4.9l-1-2.1L2070.1,292.7L2070.1,292.7z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' - }" - d="M2082.9,306.3c0.5,0.4,1.2,0.6,1.8,0.6c1.7,0,3-1.4,3-3c0-0.4-0.1-0.7-0.2-1l-3.8-0.9L2082.9,306.3 - L2082.9,306.3z" - /> - <path - [ngStyle]="{ + }" d="M2082.9,306.3c0.5,0.4,1.2,0.6,1.8,0.6c1.7,0,3-1.4,3-3c0-0.4-0.1-0.7-0.2-1l-3.8-0.9L2082.9,306.3 + L2082.9,306.3z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('Elasticsearch') ? '#5DBEBB' : '#D2D3D5' }" - d="M2083.7,300.9l4.2,1c1.7-0.6,2.9-2.2,2.9-4c0-1.8-1.1-3.3-2.7-4l-5.5,4.8L2083.7,300.9L2083.7,300.9z" - /> + d="M2083.7,300.9l4.2,1c1.7-0.6,2.9-2.2,2.9-4c0-1.8-1.1-3.3-2.7-4l-5.5,4.8L2083.7,300.9L2083.7,300.9z" /> </g> </svg> </span> <!-- MongoDB enable --> - <span - *ngIf="row.sinkdbs.includes('MongoDB')" - class="pr-1" - placement="bottom" - ngbTooltip="MongoDB" - container="body" - tooltipClass="dl-db-icon-hover-enable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-397.2 285.8 11.2 25" - style="enable-background:new -397.2 285.8 11.2 25;" - xml:space="preserve" - > - <g - transform="matrix(1.2754196 0 0 1.2754196 -16.030009 -21.83192)" - > - <path - [ngStyle]="{ + <span *ngIf="row.sinkdbs.includes('MongoDB')" class="pr-1" placement="bottom" ngbTooltip="MongoDB" + container="body" tooltipClass="dl-db-icon-hover-enable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-397.2 285.8 11.2 25" + style="enable-background:new -397.2 285.8 11.2 25;" xml:space="preserve"> + <g transform="matrix(1.2754196 0 0 1.2754196 -16.030009 -21.83192)"> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#19A2A2' : '#C4C6C8' }" d="M-294.5,241.2c0.2,0.3,0.4,0.7,0.5,1c0.1,0.2,0.2,0.4,0.4,0.5c0.4,0.4,0.9,0.9,1.2,1.4 c0.9,1.2,1.5,2.5,1.9,3.9c0.3,0.9,0.4,1.7,0.4,2.6c0,2.7-0.9,4.9-2.7,6.8c-0.3,0.3-0.6,0.6-1,0.8c-0.2,0-0.3-0.2-0.4-0.3 - c-0.2-0.2-0.2-0.5-0.3-0.8c-0.1-0.3-0.1-0.6-0.1-1c0,0,0-0.1,0-0.2C-294.4,256.1-294.6,241.3-294.5,241.2z" - /> - <path - [ngStyle]="{ + c-0.2-0.2-0.2-0.5-0.3-0.8c-0.1-0.3-0.1-0.6-0.1-1c0,0,0-0.1,0-0.2C-294.4,256.1-294.6,241.3-294.5,241.2z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#5DBEBB' : '#D2D3D5' }" d="M-294.5,241.2C-294.5,241.2-294.5,241.2-294.5,241.2c-0.1,0.2-0.2,0.4-0.3,0.6c-0.1,0.2-0.3,0.3-0.5,0.5 c-0.9,0.8-1.7,1.8-2.3,2.9c-0.8,1.5-1.2,3.1-1.3,4.8c0,0.6,0.2,2.8,0.4,3.4c0.5,1.6,1.4,3,2.7,4.2c0.3,0.3,0.6,0.5,0.9,0.8 - c0.1,0,0.1-0.1,0.1-0.2c0-0.2,0.1-0.3,0.1-0.4c0.1-0.5,0.2-1.1,0.2-1.6C-294.4,256.2-294.4,241.3-294.5,241.2L-294.5,241.2z" - /> - <path - [ngStyle]="{ + c0.1,0,0.1-0.1,0.1-0.2c0-0.2,0.1-0.3,0.1-0.4c0.1-0.5,0.2-1.1,0.2-1.6C-294.4,256.2-294.4,241.3-294.5,241.2L-294.5,241.2z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#CEEBEA' : '#C2BFBF' - }" - d="M-294,258.9c0-0.2,0.2-0.4,0.3-0.7c-0.1,0-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.2-0.2-0.4c-0.2-0.4-0.2-0.9-0.2-1.4 + }" d="M-294,258.9c0-0.2,0.2-0.4,0.3-0.7c-0.1,0-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.2-0.2-0.4c-0.2-0.4-0.2-0.9-0.2-1.4 c0,0,0-0.1,0-0.2s0-0.1,0-0.2c0,0-0.1,0.4-0.1,0.5c0,0.5-0.1,1-0.2,1.4c0,0.2,0,0.4-0.2,0.5c0,0,0,0,0,0.1c0.2,0.5,0.2,1.1,0.3,1.7 v0.2c0,0.3,0,0.2,0.2,0.3c0.1,0,0.2,0,0.3,0.1c0.1,0,0.1,0,0.1-0.1c0-0.1,0-0.2,0-0.4c0-0.3,0-0.7,0-1 - C-294,259.3-294,259.1-294,258.9z" - /> + C-294,259.3-294,259.1-294,258.9z" /> </g> </svg> </span> <!-- MongoDB disable --> - <span - *ngIf="!row.sinkdbs.includes('MongoDB')" - class="pr-1" - placement="bottom" - ngbTooltip="MongoDB" - container="body" - tooltipClass="dl-db-icon-hover-disable" - [openDelay]="300" - [closeDelay]="300" - > - <svg - version="1.1" - xmlns="http://www.w3.org/2000/svg" - xmlns:xlink="http://www.w3.org/1999/xlink" - x="0px" - y="0px" - width="20" - height="20" - viewBox="-397.2 285.8 11.2 25" - style="enable-background:new -397.2 285.8 11.2 25;" - xml:space="preserve" - > - <g - transform="matrix(1.2754196 0 0 1.2754196 -16.030009 -21.83192)" - > - <path - [ngStyle]="{ + <span *ngIf="!row.sinkdbs.includes('MongoDB')" class="pr-1" placement="bottom" ngbTooltip="MongoDB" + container="body" tooltipClass="dl-db-icon-hover-disable" [openDelay]="300" [closeDelay]="300"> + <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" + y="0px" width="20" height="20" viewBox="-397.2 285.8 11.2 25" + style="enable-background:new -397.2 285.8 11.2 25;" xml:space="preserve"> + <g transform="matrix(1.2754196 0 0 1.2754196 -16.030009 -21.83192)"> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#19A2A2' : '#C4C6C8' }" d="M-294.5,241.2c0.2,0.3,0.4,0.7,0.5,1c0.1,0.2,0.2,0.4,0.4,0.5c0.4,0.4,0.9,0.9,1.2,1.4 c0.9,1.2,1.5,2.5,1.9,3.9c0.3,0.9,0.4,1.7,0.4,2.6c0,2.7-0.9,4.9-2.7,6.8c-0.3,0.3-0.6,0.6-1,0.8c-0.2,0-0.3-0.2-0.4-0.3 - c-0.2-0.2-0.2-0.5-0.3-0.8c-0.1-0.3-0.1-0.6-0.1-1c0,0,0-0.1,0-0.2C-294.4,256.1-294.6,241.3-294.5,241.2z" - /> - <path - [ngStyle]="{ + c-0.2-0.2-0.2-0.5-0.3-0.8c-0.1-0.3-0.1-0.6-0.1-1c0,0,0-0.1,0-0.2C-294.4,256.1-294.6,241.3-294.5,241.2z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#5DBEBB' : '#D2D3D5' }" d="M-294.5,241.2C-294.5,241.2-294.5,241.2-294.5,241.2c-0.1,0.2-0.2,0.4-0.3,0.6c-0.1,0.2-0.3,0.3-0.5,0.5 c-0.9,0.8-1.7,1.8-2.3,2.9c-0.8,1.5-1.2,3.1-1.3,4.8c0,0.6,0.2,2.8,0.4,3.4c0.5,1.6,1.4,3,2.7,4.2c0.3,0.3,0.6,0.5,0.9,0.8 - c0.1,0,0.1-0.1,0.1-0.2c0-0.2,0.1-0.3,0.1-0.4c0.1-0.5,0.2-1.1,0.2-1.6C-294.4,256.2-294.4,241.3-294.5,241.2L-294.5,241.2z" - /> - <path - [ngStyle]="{ + c0.1,0,0.1-0.1,0.1-0.2c0-0.2,0.1-0.3,0.1-0.4c0.1-0.5,0.2-1.1,0.2-1.6C-294.4,256.2-294.4,241.3-294.5,241.2L-294.5,241.2z" /> + <path [ngStyle]="{ fill: row.sinkdbs.includes('MongoDB') ? '#CEEBEA' : '#C2BFBF' - }" - d="M-294,258.9c0-0.2,0.2-0.4,0.3-0.7c-0.1,0-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.2-0.2-0.4c-0.2-0.4-0.2-0.9-0.2-1.4 + }" d="M-294,258.9c0-0.2,0.2-0.4,0.3-0.7c-0.1,0-0.2-0.2-0.3-0.3c-0.1-0.1-0.1-0.2-0.2-0.4c-0.2-0.4-0.2-0.9-0.2-1.4 c0,0,0-0.1,0-0.2s0-0.1,0-0.2c0,0-0.1,0.4-0.1,0.5c0,0.5-0.1,1-0.2,1.4c0,0.2,0,0.4-0.2,0.5c0,0,0,0,0,0.1c0.2,0.5,0.2,1.1,0.3,1.7 v0.2c0,0.3,0,0.2,0.2,0.3c0.1,0,0.2,0,0.3,0.1c0.1,0,0.1,0,0.1-0.1c0-0.1,0-0.2,0-0.4c0-0.3,0-0.7,0-1 - C-294,259.3-294,259.1-294,258.9z" - /> + C-294,259.3-294,259.1-294,258.9z" /> </g> </svg> </span> </ng-template> </ngx-datatable-column> - <ngx-datatable-column - [width]="40" - name="TTL" - prop="ttl" - headerClass="d-flex justify-content-center" - cellClass="d-flex justify-content-center" - > + <ngx-datatable-column [width]="55" name="{{ 'TTL' | translate }}" prop="ttl" + headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center"> <ng-template let-row="row" ngx-datatable-cell-template> <span>{{ row.ttl }}</span> </ng-template> </ngx-datatable-column> - <ngx-datatable-column - [width]="100" - name="Authentication" - prop="login" - headerClass="d-flex justify-content-center" - cellClass="d-flex justify-content-center" - > + <ngx-datatable-column [width]="100" name="{{ 'AUTHENTICATION' | translate }}" prop="login" + headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center"> <div> <ng-template let-row="row" ngx-datatable-cell-template> <span *ngIf="row.login"> - <i - class="fas fa-unlock-alt dl-icon-enable" - aria-hidden="true" - ></i> - + <i class="fas fa-unlock-alt dl-icon-enable" aria-hidden="true"></i> </span> <span *ngIf="!row.login"> - <i - class="fa fa-unlock-alt dl-icon-disable" - aria-hidden="true" - ></i> - + <i class="fa fa-unlock-alt dl-icon-disable" aria-hidden="true"></i> </span> </ng-template> </div> </ngx-datatable-column> - <ngx-datatable-column - [width]="100" - name="Save raw data" - prop="saveRaw" - headerClass="d-flex justify-content-center" - cellClass="d-flex justify-content-center" - > + <ngx-datatable-column [width]="100" name="{{ 'SAVE_RAW_DATA' | translate }}" prop="saveRaw" + headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center"> <div> <ng-template let-row="row" ngx-datatable-cell-template> <span *ngIf="row.saveRaw"> @@ -608,36 +360,20 @@ </div> </ngx-datatable-column> - <ngx-datatable-column - [width]="85" - name="Setting" - prop="type" - headerClass="d-flex justify-content-center" - cellClass="d-flex justify-content-center" - > + <ngx-datatable-column [width]="85" name="{{ 'SETTING' | translate }}" prop="type" + headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center"> <ng-template let-row="row" ngx-datatable-cell-template> - <span class="dl-icon-unconfig" *ngIf="row.type" - > Configured </span - > - <span class="dl-icon-config" *ngIf="!row.type" - > Unconfigured </span - > + <span class="dl-icon-unconfig" + *ngIf="row.type"> {{ 'CONFIGURED' | translate }} </span> + <span class="dl-icon-config" + *ngIf="!row.type"> {{ 'UNCONFIGURED' | translate }} </span> </ng-template> </ngx-datatable-column> - <ngx-datatable-column - [width]="50" - name="" - sortable="false" - cellClass="d-flex justify-content-center" - > + <ngx-datatable-column [width]="50" name="" sortable="false" cellClass="d-flex justify-content-center"> <ng-template let-row="row" ngx-datatable-cell-template> <span> - <button - md-icon-button - class="btn action-icon-setting" - (click)="this.openTopicModal(row.name)" - > + <button md-icon-button class="btn action-icon-setting" (click)="this.openTopicModal(row.name)"> <i class="fas fa-cog fa-xs"></i> </button> </span> @@ -645,29 +381,15 @@ </ngx-datatable-column> <ngx-datatable-footer> - <ng-template - ngx-datatable-footer-template - let-rowCount="rowCount" - let-pageSize="pageSize" - let-selectedCount="selectedCount" - let-curPage="curPage" - let-offset="offset" - let-isVisible="isVisible" - > + <ng-template ngx-datatable-footer-template let-rowCount="rowCount" let-pageSize="pageSize" + let-selectedCount="selectedCount" let-curPage="curPage" let-offset="offset" let-isVisible="isVisible"> <div class="page-count"> total: {{ rowCount.toLocaleString() }} {{ totalMessage }} </div> - <datatable-pager - [pagerLeftArrowIcon]="'datatable-icon-left'" - [pagerRightArrowIcon]="'datatable-icon-right'" - [pagerPreviousIcon]="'datatable-icon-prev'" - [pagerNextIcon]="'datatable-icon-skip'" - [page]="curPage" - [size]="pageSize" - [count]="rowCount" - [hidden]="!(rowCount / pageSize > 1)" - (change)="table.onFooterPage($event)" - > + <datatable-pager [pagerLeftArrowIcon]="'datatable-icon-left'" [pagerRightArrowIcon]="'datatable-icon-right'" + [pagerPreviousIcon]="'datatable-icon-prev'" [pagerNextIcon]="'datatable-icon-skip'" [page]="curPage" + [size]="pageSize" [count]="rowCount" [hidden]="!(rowCount / pageSize > 1)" + (change)="table.onFooterPage($event)"> </datatable-pager> </ng-template> </ngx-datatable-footer> diff --git a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.ts b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.ts index d3d7e574..dc375f50 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.ts +++ b/components/datalake-handler/admin/src/src/app/topics/topic-list/topic-list.component.ts @@ -89,15 +89,12 @@ export class TopicListComponent { async initData() { this.topicListDmaap = []; this.topicListDmaap = await this.getTopicList("dmaap"); - console.log("topic list from dmaap: " + this.topicListDmaap); this.topicListFeeder = []; this.topicListFeeder = await this.getTopicList("feeder"); - console.log("topic list from feeder: " + this.topicListFeeder); this.topicDefaultConfig = new Topic(); this.topicDefaultConfig = await this.getTopicDefaultConfig(); - console.log("topic default config name: " + this.topicDefaultConfig.name); return true; } diff --git a/components/datalake-handler/admin/src/src/app/topics/topics.component.ts b/components/datalake-handler/admin/src/src/app/topics/topics.component.ts index bbcbda1b..539d1249 100644 --- a/components/datalake-handler/admin/src/src/app/topics/topics.component.ts +++ b/components/datalake-handler/admin/src/src/app/topics/topics.component.ts @@ -1,5 +1,5 @@ import { Component, OnInit } from "@angular/core"; -import { HeaderService } from "../core/services/header.service"; +import { AdminService } from "../core/services/admin.service"; @Component({ selector: "app-topics", @@ -7,9 +7,9 @@ import { HeaderService } from "../core/services/header.service"; styleUrls: ["./topics.component.css"] }) export class TopicsComponent implements OnInit { - constructor(private headerService: HeaderService) { + constructor(private adminService: AdminService) { // Set page title - this.headerService.setTitle("SIDEBAR.TOPICS"); + this.adminService.setTitle("SIDEBAR.TOPICS"); } ngOnInit() {} diff --git a/components/datalake-handler/admin/src/src/assets/i18n/en-us.json b/components/datalake-handler/admin/src/src/assets/i18n/en-us.json index cf2bed68..e928ccc2 100644 --- a/components/datalake-handler/admin/src/src/assets/i18n/en-us.json +++ b/components/datalake-handler/admin/src/src/assets/i18n/en-us.json @@ -1,8 +1,37 @@ { - "HELLO": "Hello1234", "SIDEBAR": { "FEDDFER": "DataLake Feeder", "TOPICS": "Topics", - "DATABASE": "Database" - } + "DATABASE": "Database", + "ABOUT": "About" + }, + + "NAME": "Name", + "STATUS": "Status", + "SINK": "Sink", + "AUTHENTICATION": "Authentication", + "DATA_FORMAT": "Data format", + "TTL": "TTL", + "SAVE_RAW_DATA": "Save raw data", + "CORRELATE_CLEARED_MESSAGE": "Correlate cleared message", + "DEFAULT_CONFIGURATIONS": "Default configurations", + "ID_EXTRACTION": "ID extraction", + "CONFIGURED": "Configured", + "UNCONFIGURED": "Unconfigured", + + "DATABASE_CONNECTIONS": "Database connections", + "BUCKET": "Bucket", + "HOST": "Host", + "PORT": "Port", + "ENABLE_SSL": "Enable SSL", + "VERIFY": "Verify", + "SETTING": "Setting", + + "DOCUMENT_STORE": "Document store", + "SEARCH_ENGINE": "Search engine", + + "DELETE": "Delete", + "ERROR_CODE": "Error Code", + "SUCCESS_UPDATED": "Success updated", + "TOPIC_DEFAULT_CONF_NOTICE": "Notice: This topic uses the default topics settings." } diff --git a/components/datalake-handler/admin/src/src/assets/i18n/zh-hans.json b/components/datalake-handler/admin/src/src/assets/i18n/zh-hans.json index 2648750a..964e028d 100644 --- a/components/datalake-handler/admin/src/src/assets/i18n/zh-hans.json +++ b/components/datalake-handler/admin/src/src/assets/i18n/zh-hans.json @@ -1,8 +1,37 @@ { - "HELLO": "你抖音了沒", "SIDEBAR": { - "FEDDFER": "资料湖", - "TOPICS": "主题", - "DATABASE": "数据库" - } + "FEDDFER": "DataLake Feeder", + "TOPICS": "Topics", + "DATABASE": "Database", + "ABOUT": "About" + }, + + "NAME": "名称", + "STATUS": "状态", + "SINK": "数据库", + "AUTHENTICATION": "身份验证", + "DATA_FORMAT": "数据格式", + "TTL": "数据失效时间", + "SAVE_RAW_DATA": "保存原始数据", + "CORRELATE_CLEARED_MESSAGE": "关联已清除的消息", + "DEFAULT_CONFIGURATIONS": "默认配置", + "ID_EXTRACTION": "ID提取", + "CONFIGURED": "已配置", + "UNCONFIGURED": "未配置", + + "DATABASE_CONNECTIONS": "数据库连接", + "BUCKET": "Bucket", + "HOST": "主机", + "PORT": "端口", + "ENABLE_SSL": "使用SSL", + "VERIFY": "验证", + "SETTING": "设置", + + "DOCUMENT_STORE": "文档存储", + "SEARCH_ENGINE": "搜索引擎", + + "DELETE": "删除", + "ERROR_CODE": "错误代码", + "SUCCESS_UPDATED": "更新成功", + "TOPIC_DEFAULT_CONF_NOTICE": "注意: 本Topic使用默认Topic设置。" } diff --git a/components/datalake-handler/admin/src/src/assets/i18n/zh-hant.json b/components/datalake-handler/admin/src/src/assets/i18n/zh-hant.json index a9919db0..f91ba785 100644 --- a/components/datalake-handler/admin/src/src/assets/i18n/zh-hant.json +++ b/components/datalake-handler/admin/src/src/assets/i18n/zh-hant.json @@ -1,8 +1,38 @@ { - "HELLO": "安安", "SIDEBAR": { - "FEDDFER": "資料湖", - "TOPICS": "主題", - "DATABASE": "資料庫" - } + "FEDDFER": "DataLake Feeder", + "TOPICS": "Topics", + "DATABASE": "Database", + "ABOUT": "About" + }, + + "NAME": "名稱", + "STATUS": "狀態", + "SINK": "資料庫", + "AUTHENTICATION": "身份驗證", + "DATA_FORMAT": "檔案格式", + "TTL": "存活時間", + "SAVE_RAW_DATA": "保存原始資料", + "CORRELATE_CLEARED_MESSAGE": "關聯已清除的訊息", + "DEFAULT_CONFIGURATIONS": "預設配置", + "ID_EXTRACTION": "ID提取", + "CONFIGURED": "已配置", + "UNCONFIGURED": "未配置", + + + "DATABASE_CONNECTIONS": "資料庫連線", + "BUCKET": "Bucket", + "HOST": "主機", + "PORT": "埠", + "ENABLE_SSL": "使用SSL", + "VERIFY": "驗證", + "SETTING": "設定", + + "DOCUMENT_STORE": "文檔儲存", + "SEARCH_ENGINE": "搜尋引擎", + + "DELETE": "刪除", + "ERROR_CODE": "錯誤代碼", + "SUCCESS_UPDATED": "更新成功", + "TOPIC_DEFAULT_CONF_NOTICE": "注意:此Topic目前使用預設配置。" } diff --git a/components/datalake-handler/admin/src/src/styles.css b/components/datalake-handler/admin/src/src/styles.css index f3e5053c..df7e52c4 100644 --- a/components/datalake-handler/admin/src/src/styles.css +++ b/components/datalake-handler/admin/src/src/styles.css @@ -552,3 +552,15 @@ input#switch:checked+.dl-slider:before { .dl-md-modal .modal-dialog { max-width: 565px; } + +.dl-notice { + font-family: "Open Sans", sans-serif; + font-weight: 600; + font-size: 14px; + color: #0091FF; + text-align: left; + background-color: rgba(13, 169, 226, 0.30); + border: 2px solid #0DA9E2; + border-radius: 6px; + padding: 4px 4px 4px 10px; +} diff --git a/components/datalake-handler/admin/src/styles.css b/components/datalake-handler/admin/src/styles.css deleted file mode 100644 index 11b0ebe0..00000000 --- a/components/datalake-handler/admin/src/styles.css +++ /dev/null @@ -1,281 +0,0 @@ -html { - height: 100%; -} - -body { - margin: 0; - height: 100%; -} - -#container { - height: 100%; -} - -/* Sidebar */ -.sidebar-header { - background-color: #313449; -} - -.sidebar { - background-color: #313449; - -} - -.sidebar .nav-item { - font-size: 14px; - color: #ffffff; - font-family: "Open Sans", sans-serif; - font-weight: 600; - letter-spacing: 2px; - text-align: left; - margin: 0; - padding: 0; -} - -.sidebar .nav-item .active { - background-color: #ffffff; - font-size: 14px; - color: #313449; - font-family: "Open Sans", sans-serif; - font-weight: 600; - letter-spacing: 2px; - text-align: left; - border-radius: 10px; -} - -.sidebar .nav-link { - color: #ffffff; -} - -.sidebar .nav-item :hover { - background: rgba(255, 255, 255, 0.2); - border-radius: 10px; -} - -/* Header */ -.header { - background-color: #f2f8fb; -} - -.header .title { - font-family: "Open Sans", sans-serif; - font-weight: 300; - color: #313032; - font-size: 35px; - letter-spacing: 2px; - text-align: center; -} - -.header .lang-select { - background-color: #f2f8fb; - border: none; - /*box-shadow: 1px 1px 10px -2px rgb(0, 0, 0.50);*/ - border-radius: 5px; -} - -.header .lang-select :hover { - background-color: #f2f8fb; - border-radius: 5px; - color: #313032; -} - -.header .lang { - font-family: "Open Sans", sans-serif; - font-weight: 600; - color: #313032; - font-size: 16px; -} - -hr { - margin: 10px 0 10px 0; -} - -/* Content */ -.content { - background-color: #f2f8fb; - display: inline-block; - height: 100%; - overflow: auto; - min-height: 100vh; - font-family: "Open Sans", sans-serif; -} - -/* Path string */ -.path { - font-family: "Open Sans", sans-serif; - font-size: 10px; - margin: 0 0 20px 0; -} - -/* -bootstrap table theme -*/ -.ngx-datatable.bootstrap { - box-shadow: none; - font-size: 13px; -} - -.ngx-datatable.bootstrap .datatable-header { - height: unset !important; -} - -.ngx-datatable.bootstrap .datatable-header .datatable-header-cell { - vertical-align: bottom; - padding: 0.75rem; - border-bottom: 1px solid #d1d4d7; -} - -.ngx-datatable.bootstrap .datatable-header .datatable-header-cell .datatable-header-cell-label { - line-height: 24px; -} - -.ngx-datatable.bootstrap .datatable-body { - height: 70vh; -} - -.ngx-datatable.bootstrap .datatable-body .datatable-body-row { - padding: 0.75rem; - vertical-align: top; - border-top: 1px solid #d1d4d7; -} - -.ngx-datatable.bootstrap .datatable-body .datatable-body-row.datatable-row-even { - /*background-color: rgba(0, 0, 0, 0.05);*/ - background-color: #FFFFFF; -} - -.ngx-datatable.bootstrap .datatable-body .datatable-body-row .datatable-body-cell { - /*text-align: left; - vertical-align: top;*/ - text-align: left; - align-items: middle !important; -} - -.ngx-datatable.bootstrap .datatable-body .datatable-body-row.active { - background-color: #1483ff; - color: #fff; -} - -.ngx-datatable.bootstrap .datatable-footer { - background: #424242; - color: #ededed; - margin-top: -1px; -} - -.ngx-datatable.bootstrap .datatable-footer .page-count { - line-height: 50px; - height: 50px; - padding: 0 1.2rem; -} - -.ngx-datatable.bootstrap .datatable-footer .datatable-pager { - margin: 0 10px; - vertical-align: top; -} - -.ngx-datatable.bootstrap .datatable-footer .datatable-pager ul li { - margin: 10px 0px; -} - -.ngx-datatable.bootstrap .datatable-footer .datatable-pager ul li:not(.disabled).active a, -.ngx-datatable.bootstrap .datatable-footer .datatable-pager ul li:not(.disabled):hover a { - background-color: #545454; - font-weight: bold; -} - -.ngx-datatable.bootstrap .datatable-footer .datatable-pager a { - height: 22px; - min-width: 24px; - line-height: 22px; - padding: 0; - border-radius: 3px; - margin: 0 3px; - text-align: center; - vertical-align: top; - text-decoration: none; - vertical-align: bottom; - color: #ededed; -} - -.ngx-datatable.bootstrap .datatable-footer .datatable-pager .datatable-icon-left, -.ngx-datatable.bootstrap .datatable-footer .datatable-pager .datatable-icon-skip, -.ngx-datatable.bootstrap .datatable-footer .datatable-pager .datatable-icon-right, -.ngx-datatable.bootstrap .datatable-footer .datatable-pager .datatable-icon-prev { - font-size: 18px; - line-height: 27px; - padding: 0 3px; -} - -.icon-enable { - color: #5dbebb; -} - -.icon-disable { - color: #d2d3d5; -} - -.icon-unconfig { - font-family: "Open Sans", sans-serif; - font-weight: 600; - font-size: 11px; - color: #19a2a2; - text-align: left; - background-color: rgb(93, 190, 187, 0.3); - border: 1px solid #19a2a2; - border-radius: 2px; -} - -.icon-config { - font-family: "Open Sans", sans-serif; - font-weight: 600; - font-size: 11px; - color: #bdbec0; - text-align: left; - background-color: rgb(189, 190, 192, 0.3); - border: 1px solid #bdbec0; - border-radius: 2px; -} - -.action-icon-setting { - margin: -15px 0 0 0; -} - -/* - Form elements -*/ - -/* Input */ -.input-dl-field-search { - font-family: "Open Sans", sans-serif; - font-weight: 600; - font-size: 14px; - text-align: left; - border: 1px solid #5DBEBB; - border-radius: 2px; -} - -.input-dl-field { - font-family: "Open Sans", sans-serif; - font-size: 14px; - color: #a8a9ac; - text-align: left; - - background-color: #ffffff; - box-shadow: 3px 3px 11px 0 #d2d3d5; - border-radius: 8px; -} - -/* Button */ -.btn-dl-dark { - font-family: "Open Sans", sans-serif; - font-size: 14px; - color: #FFFFFF; - text-align: center; - background-color: #5DBEBB; - border-radius: 6px; -} - -.btn-dl-dark :hover { - background-color: #19A2A2; - border-radius: 6px; -} diff --git a/components/datalake-handler/admin/src/test.ts b/components/datalake-handler/admin/src/test.ts deleted file mode 100644 index 16317897..00000000 --- a/components/datalake-handler/admin/src/test.ts +++ /dev/null @@ -1,20 +0,0 @@ -// This file is required by karma.conf.js and loads recursively all the .spec and framework files - -import 'zone.js/dist/zone-testing'; -import { getTestBed } from '@angular/core/testing'; -import { - BrowserDynamicTestingModule, - platformBrowserDynamicTesting -} from '@angular/platform-browser-dynamic/testing'; - -declare const require: any; - -// First, initialize the Angular testing environment. -getTestBed().initTestEnvironment( - BrowserDynamicTestingModule, - platformBrowserDynamicTesting() -); -// Then we find all the tests. -const context = require.context('./', true, /\.spec\.ts$/); -// And load the modules. -context.keys().map(context); diff --git a/components/datalake-handler/admin/src/tsconfig.app.json b/components/datalake-handler/admin/src/tsconfig.app.json deleted file mode 100644 index 190fd300..00000000 --- a/components/datalake-handler/admin/src/tsconfig.app.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/app", - "types": [] - }, - "exclude": [ - "test.ts", - "**/*.spec.ts" - ] -} diff --git a/components/datalake-handler/admin/src/tsconfig.spec.json b/components/datalake-handler/admin/src/tsconfig.spec.json deleted file mode 100644 index de773363..00000000 --- a/components/datalake-handler/admin/src/tsconfig.spec.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "extends": "../tsconfig.json", - "compilerOptions": { - "outDir": "../out-tsc/spec", - "types": [ - "jasmine", - "node" - ] - }, - "files": [ - "test.ts", - "polyfills.ts" - ], - "include": [ - "**/*.spec.ts", - "**/*.d.ts" - ] -} |