2 ============LICENSE_START=======================================================
4 ================================================================================
6 =================================================================================
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
11 http://www.apache.org/licenses/LICENSE-2.0
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 ============LICENSE_END=========================================================
21 <div class="topic-list-panel">
23 <div class="col-md-12">
24 <div class="d-flex justify-content-end p-2">
27 <div class="input-group">
28 <input #searchText type="text" class="form-control dl-input-text-search" placeholder="Search..."
29 (keyup)="this.updateFilter($event.target.value)" />
30 <div class="input-group-append">
31 <button type="button" class="btn dl-btn-dark">
32 <i class="fa fa-search"></i>
39 <button style="margin-right: 0.5rem;" class="btn dl-btn-dark" (click)="openTopicModal('config')">
40 {{ "DEFAULT_CONFIGURATIONS" | translate }}
42 <button class="btn dl-btn-dark" (click)="openNewTopicModal()">
43 {{ "NEW_TOPIC" | translate }}
51 <div class="col-md-12">
52 <ngx-datatable #mydatatable class="bootstrap" [rows]="topics" [columnMode]="'force'" [headerHeight]="40"
53 [footerHeight]="40" [rowHeight]="50" [scrollbarV]="true" [scrollbarH]="true"
54 [loadingIndicator]="loadingIndicator" [messages]="mesgNoData" [limit]="10"
55 (activate)="onActivate($event)">
57 <ngx-datatable-column [width]="20" name="{{ 'STATUS' | translate }}" prop="enabled"
58 headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
60 <ng-template let-row="row" ngx-datatable-cell-template>
61 <span *ngIf="row.enabled">
62 <i class="fas fa-circle dl-icon-enable" aria-hidden="true"></i>
64 <span *ngIf="!row.enabled">
65 <i class="fas fa-circle dl-icon-disable" aria-hidden="true"></i>
69 </ngx-datatable-column>
71 <ngx-datatable-column [width]="450" name="{{ 'NAME' | translate }}" prop="name">
72 <ng-template let-row="row" ngx-datatable-cell-template>
73 <span>{{ row.name }}</span>
75 </ngx-datatable-column>
77 <ngx-datatable-column [width]="25" name="{{ 'SETTING' | translate }}" prop="type"
78 headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
80 <ng-template let-row="row" ngx-datatable-cell-template>
81 <span *ngIf="row.type">
82 <i class="fas fa-check dl-icon-enable" aria-hidden="true"></i>
84 <!-- <span *ngIf="!row.type">
85 <i class="fas fa-check dl-icon-disable" aria-hidden="true"></i>
89 </ngx-datatable-column>
91 <ngx-datatable-column [width]="10" name="Ka" prop="kafkas" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
92 <ng-template let-column="column" ngx-datatable-header-template>
93 <img src="assets/icons/kafka_able.svg" alt="Icon" style=" height: 20px; "/>
95 </ngx-datatable-column>
97 <ngx-datatable-column [width]="10" name="CB" prop="CB" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
98 <ng-template let-column="column" ngx-datatable-header-template>
99 <img src="assets/icons/couchbase_able.svg" alt="Icon" style=" height: 20px; "/>
101 </ngx-datatable-column>
103 <ngx-datatable-column [width]="10" name="DR" prop="DRUID" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
104 <ng-template let-column="column" ngx-datatable-header-template>
105 <img src="assets/icons/druid_able.svg" alt="Icon" style=" height: 16px; "/>
107 </ngx-datatable-column>
109 <ngx-datatable-column [width]="10" name="ES" prop="ES" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
110 <ng-template let-column="column" ngx-datatable-header-template>
111 <img src="assets/icons/elasticsearch_able.svg" alt="Icon" style=" height: 20px; "/>
113 </ngx-datatable-column>
115 <ngx-datatable-column [width]="10" name="MG" prop="MONGO" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
116 <ng-template let-column="column" ngx-datatable-header-template>
117 <img src="assets/icons/mongoDB_able.svg" alt="Icon" style=" height: 23px; "/>
119 </ngx-datatable-column>
121 <ngx-datatable-column [width]="10" name="HD" prop="HDFS" headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
122 <ng-template let-column="column" ngx-datatable-header-template>
123 <img src="assets/icons/hadoop_able.svg" alt="Icon" style=" height: 20px; "/>
125 </ngx-datatable-column>
127 <ngx-datatable-column [width]="20" name="{{ 'TTL' | translate }}" prop="ttl"
128 headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
129 <ng-template let-row="row" ngx-datatable-cell-template>
130 <span>{{ row.ttl }}</span>
132 </ngx-datatable-column>
134 <ngx-datatable-column [width]="20" name="{{ 'SAVE_RAW_DATA' | translate }}" prop="saveRaw"
135 headerClass="d-flex justify-content-center" cellClass="d-flex justify-content-center">
137 <ng-template let-row="row" ngx-datatable-cell-template>
138 <span *ngIf="row.saveRaw">
139 <i class="fas fa-check dl-icon-enable" aria-hidden="true"></i>
141 <!-- <span *ngIf="!row.saveRaw"> -->
142 <!-- <i class="fas fa-check dl-icon-disable" aria-hidden="true"></i> -->
146 </ngx-datatable-column>
148 <ngx-datatable-column [width]="10" name="" sortable="false" cellClass="d-flex justify-content-center">
149 <ng-template let-row="row" ngx-datatable-cell-template>
151 <button class="btn action-icon-setting" (click)="this.deleteTopicModal(row.name);">
152 <i class="fas fa-trash-alt fa-xs"></i>
156 </ngx-datatable-column>
158 <ngx-datatable-footer>
159 <ng-template ngx-datatable-footer-template let-rowCount="rowCount" let-pageSize="pageSize"
160 let-selectedCount="selectedCount" let-curPage="curPage" let-offset="offset"
161 let-isVisible="isVisible">
162 <div class="page-count">
163 total: {{ rowCount.toLocaleString() }}
165 <datatable-pager [pagerLeftArrowIcon]="'datatable-icon-left'" [pagerRightArrowIcon]="'datatable-icon-right'"
166 [pagerPreviousIcon]="'datatable-icon-prev'" [pagerNextIcon]="'datatable-icon-skip'"
168 [size]="pageSize" [count]="rowCount" [hidden]="!(rowCount / pageSize > 1)"
169 (change)="topicTable.onFooterPage($event)">
172 </ngx-datatable-footer>