#334_feature_flags_in_wi #335
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "kdb-web", | ||||
|     "version": "1.1.dev79_hide_table_columns", | ||||
|     "version": "1.1.dev334_feature_flags_in_wi", | ||||
|     "scripts": { | ||||
|         "ng": "ng", | ||||
|         "update-version": "ts-node-esm update-version.ts", | ||||
|   | ||||
| @@ -26,7 +26,12 @@ export class ComponentWithTable { | ||||
|     this.columns = columns.map(column => { | ||||
|       return { key: this.getKey(column), name: column }; | ||||
|     }); | ||||
|     this._hiddenColumns = JSON.parse(localStorage.getItem("hiddenColumns") ?? ""); | ||||
|     let hiddenColumns = localStorage.getItem("hiddenColumns"); | ||||
|     if (!hiddenColumns) { | ||||
|       localStorage.setItem("hiddenColumns", JSON.stringify([{}])); | ||||
|       hiddenColumns = localStorage.getItem("hiddenColumns") ?? JSON.stringify([{}]); | ||||
|     } | ||||
|     this._hiddenColumns = JSON.parse(hiddenColumns); | ||||
|   } | ||||
|  | ||||
|   private getKey(column: string): string { | ||||
|   | ||||
| @@ -2,9 +2,10 @@ | ||||
|   <p-multiSelect display="chip" [options]="columns" [(ngModel)]="hiddenColumns" optionLabel="name" placeholder="{{'common.hidden_columns' | translate}}" [filter]=false> | ||||
|     <ng-template let-value pTemplate="selectedItems"> | ||||
|       <div *ngFor="let item of hiddenColumns; let i = index;"> | ||||
|         <div> | ||||
|         <div *ngIf="item.name"> | ||||
|           {{'common.' + item.name | translate}}<span *ngIf="i < columns.length-1">,</span> | ||||
|         </div> | ||||
|         <div *ngIf="!item.name">{{'common.hidden_columns' | translate}}</div> | ||||
|       </div> | ||||
|       <div *ngIf="!hiddenColumns || hiddenColumns.length === 0">{{'common.hidden_columns' | translate}}</div> | ||||
|     </ng-template> | ||||
|   | ||||
| @@ -113,7 +113,7 @@ | ||||
|     <app-config-list translationKey="view.server.config.bot.afk_channels" [(data)]="config.afkChannelIds"></app-config-list> | ||||
|     <app-config-list translationKey="view.server.config.bot.moderator_roles" [(data)]="config.moderatorRoleIds"></app-config-list> | ||||
|     <app-config-list translationKey="view.server.config.bot.admin_roles" [(data)]="config.adminRoleIds"></app-config-list> | ||||
|     <app-feature-flag-list [(data)]="config.featureFlags"></app-feature-flag-list> | ||||
|     <app-feature-flag-list *ngIf="isTechnician" [(data)]="config.featureFlags"></app-feature-flag-list> | ||||
|  | ||||
|     <div class="content-row"> | ||||
|       <button pButton icon="pi pi-save" label="{{'common.save' | translate}}" class="btn login-form-submit-btn" | ||||
|   | ||||
| @@ -16,6 +16,7 @@ import { AuthService } from "../../../../../../services/auth/auth.service"; | ||||
| import { ServerConfig } from "../../../../../../models/config/server-config.model"; | ||||
| import { Server } from "../../../../../../models/data/server.model"; | ||||
| import { ActivatedRoute } from "@angular/router"; | ||||
| import { UserDTO } from "../../../../../../models/auth/auth-user.dto"; | ||||
|  | ||||
| type AFKChannelId = { | ||||
|   id: number; | ||||
| @@ -41,6 +42,7 @@ export class ConfigComponent implements OnInit { | ||||
|   clonedAfkChannelIds: { [s: number]: AFKChannelId } = {}; | ||||
|  | ||||
|   private server: Server = {}; | ||||
|   isTechnician: boolean = false; | ||||
|  | ||||
|   constructor( | ||||
|     private data: DataService, | ||||
| @@ -62,6 +64,9 @@ export class ConfigComponent implements OnInit { | ||||
|     this.data.getServerFromRoute(this.route).then(async server => { | ||||
|       this.server = server; | ||||
|       this.loadConfig(); | ||||
|       let authUser = await this.authService.getLoggedInUser(); | ||||
|       let isUserTechnicianList = authUser?.users?.map(u => u.isTechnician).filter(u => u) ?? []; | ||||
|       this.isTechnician = isUserTechnicianList.length > 0; | ||||
|     }); | ||||
|   } | ||||
|  | ||||
|   | ||||
| @@ -2,6 +2,6 @@ | ||||
|     "WebVersion": { | ||||
|         "Major": "1", | ||||
|         "Minor": "1", | ||||
|         "Micro": "dev79_hide_table_columns" | ||||
|         "Micro": "dev334_feature_flags_in_wi" | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user