Created policy module.

This commit is contained in:
Tom 2024-12-28 01:36:33 +00:00
parent 0987affccc
commit 0afa2138b4
19 changed files with 60 additions and 26 deletions

View File

@ -5,7 +5,7 @@ import { FormsModule } from '@angular/forms'
import { HermesClientService } from './hermes-client.service'; import { HermesClientService } from './hermes-client.service';
import { AuthUserGuard } from './shared/auth/auth.user.guard' import { AuthUserGuard } from './shared/auth/auth.user.guard'
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { PolicyComponent } from "./policy/policy.component"; import { PolicyComponent } from "./policies/policy/policy.component";
import { NavigationComponent } from "./navigation/navigation.component"; import { NavigationComponent } from "./navigation/navigation.component";
import EventService from './shared/services/EventService'; import EventService from './shared/services/EventService';
import { ApiAuthenticationService } from './shared/services/api/api-authentication.service'; import { ApiAuthenticationService } from './shared/services/api/api-authentication.service';

View File

@ -1,5 +1,5 @@
import { Routes } from '@angular/router'; import { Routes } from '@angular/router';
import { PolicyComponent } from './policy/policy.component'; import { PolicyComponent } from './policies/policy/policy.component';
import { AuthUserGuard } from './shared/auth/auth.user.guard'; import { AuthUserGuard } from './shared/auth/auth.user.guard';
import { LoginComponent } from './login/login.component'; import { LoginComponent } from './login/login.component';
import { TtsLoginComponent } from './tts-login/tts-login.component'; import { TtsLoginComponent } from './tts-login/tts-login.component';

View File

@ -0,0 +1,12 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
@NgModule({
declarations: [],
imports: [
CommonModule
]
})
export class PoliciesModule { }

View File

@ -1,6 +1,5 @@
<div> <div>
<form <form
class="example-form"
standalone> standalone>
<mat-form-field class="example-full-width"> <mat-form-field class="example-full-width">
<input <input
@ -18,7 +17,7 @@
</mat-autocomplete> </mat-autocomplete>
</mat-form-field> </mat-form-field>
<button <button
mat-raised-button mat-flat-button
(click)="addNewPolicy()"> (click)="addNewPolicy()">
Add Add
</button> </button>

View File

@ -4,10 +4,10 @@ import { FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms'
import { MatAutocompleteModule } from '@angular/material/autocomplete'; import { MatAutocompleteModule } from '@angular/material/autocomplete';
import { MatButtonModule } from '@angular/material/button'; import { MatButtonModule } from '@angular/material/button';
import { MatInputModule } from '@angular/material/input'; import { MatInputModule } from '@angular/material/input';
import { Policy } from '../shared/models/policy'; import { Policy } from '../../shared/models/policy';
import EventService from '../shared/services/EventService'; import EventService from '../../shared/services/EventService';
import { map, Observable, startWith } from 'rxjs'; import { map, Observable, startWith } from 'rxjs';
import { HermesClientService } from '../hermes-client.service'; import { HermesClientService } from '../../hermes-client.service';
const Policies = [ const Policies = [
{ path: "tts", description: "Anything to do with TTS" }, { path: "tts", description: "Anything to do with TTS" },

View File

@ -1,11 +1,11 @@
import { Component, ElementRef, Input, isDevMode, OnDestroy, OnInit, ViewChild } from '@angular/core'; import { Component, ElementRef, Input, isDevMode, OnDestroy, OnInit, ViewChild } from '@angular/core';
import { MatTable, MatTableModule } from '@angular/material/table'; import { MatTable, MatTableModule } from '@angular/material/table';
import { MatIconModule } from '@angular/material/icon'; import { MatIconModule } from '@angular/material/icon';
import EventService from '../shared/services/EventService'; import EventService from '../../shared/services/EventService';
import { Policy } from '../shared/models/policy'; import { Policy } from '../../shared/models/policy';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { FormsModule } from '@angular/forms'; import { FormsModule } from '@angular/forms';
import { HermesClientService } from '../hermes-client.service'; import { HermesClientService } from '../../hermes-client.service';
@Component({ @Component({
selector: 'policy-table', selector: 'policy-table',

View File

@ -1,4 +1,4 @@
Policies <h4>Policies</h4>
<div> <div>
<policy-add-form /> <policy-add-form />
</div> </div>

View File

@ -0,0 +1,7 @@
div {
background-color: black;
}
h4 {
text-align: center;
}

View File

@ -1,11 +1,11 @@
import { Component, Inject, NgZone, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core'; import { Component, Inject, NgZone, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';
import { PolicyAddFormComponent } from "../policy-add-form/policy-add-form.component"; import { PolicyAddFormComponent } from "../policy-add-form/policy-add-form.component";
import { PolicyTableComponent } from "../policy-table/policy-table.component"; import { PolicyTableComponent } from "../policy-table/policy-table.component";
import { Policy, PolicyScope } from '../shared/models/policy'; import { Policy, PolicyScope } from '../../shared/models/policy';
import { DatePipe, isPlatformBrowser } from '@angular/common'; import { DatePipe, isPlatformBrowser } from '@angular/common';
import { OAuthService } from 'angular-oauth2-oidc'; import { OAuthService } from 'angular-oauth2-oidc';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { HermesClientService } from '../hermes-client.service'; import { HermesClientService } from '../../hermes-client.service';
import { Router, RouterModule } from '@angular/router'; import { Router, RouterModule } from '@angular/router';
@Component({ @Component({

View File

@ -1,13 +1,14 @@
<div> <h4>TTS Login</h4>
<h4>TTS Login</h4> <div class="main-div">
<mat-form-field> <mat-card class="main-card">
<mat-label>API Key</mat-label> <mat-form-field>
<mat-select <mat-label>API Key</mat-label>
[(value)]="selected_api_key"> <mat-select [(value)]="selected_api_key">
@for (key of api_keys; track key.id) { @for (key of api_keys; track key.id) {
<mat-option [value]="key.id">{{key.label}}</mat-option> <mat-option [value]="key.id">{{key.label}}</mat-option>
} }
</mat-select> </mat-select>
</mat-form-field> </mat-form-field>
<button mat-raised-button (click)="login()">Log In</button> <button mat-raised-button (click)="login()">Log In</button>
</mat-card>
</div> </div>

View File

@ -0,0 +1,14 @@
.main-div {
height: 100vh;
display: flex;
justify-content: center;
align-items: center;
}
h4 {
text-align: center;
}
.main-card {
width: 20%;
}

View File

@ -10,11 +10,12 @@ import { Router } from '@angular/router';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { environment } from '../../environments/environment'; import { environment } from '../../environments/environment';
import { HermesClientService } from '../hermes-client.service'; import { HermesClientService } from '../hermes-client.service';
import { MatCard } from '@angular/material/card';
@Component({ @Component({
selector: 'tts-login', selector: 'tts-login',
standalone: true, standalone: true,
imports: [MatButtonModule, MatFormFieldModule, MatSelectModule, MatInputModule, FormsModule], imports: [MatButtonModule, MatCard, MatFormFieldModule, MatSelectModule, MatInputModule, FormsModule],
templateUrl: './tts-login.component.html', templateUrl: './tts-login.component.html',
styleUrl: './tts-login.component.scss' styleUrl: './tts-login.component.scss'
}) })