diff --git a/MiniKmsClient/src/app/manage-keys/manage-keys.component.html b/MiniKmsClient/src/app/manage-keys/manage-keys.component.html
index 012e432..b682bd4 100644
--- a/MiniKmsClient/src/app/manage-keys/manage-keys.component.html
+++ b/MiniKmsClient/src/app/manage-keys/manage-keys.component.html
@@ -1 +1,56 @@
-
manage-keys works!
+
+
+ Alias
+
+
+
+
+ Key Type
+
+
+ {{ type }}
+
+
+
+
+
+
+
+
+
+
+
+ | Key ID |
+ {{element.keyId}} |
+
+
+
+
+ Alias |
+ {{element.alias}} |
+
+
+
+
+ Key Type |
+ {{element.keyType}} |
+
+
+
+
+ Actions |
+
+
+
+ |
+
+
+
+
+
diff --git a/MiniKmsClient/src/app/manage-keys/manage-keys.component.scss b/MiniKmsClient/src/app/manage-keys/manage-keys.component.scss
index e69de29..45e5640 100644
--- a/MiniKmsClient/src/app/manage-keys/manage-keys.component.scss
+++ b/MiniKmsClient/src/app/manage-keys/manage-keys.component.scss
@@ -0,0 +1,37 @@
+:host {
+ display: block;
+ min-height: 100vh;
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
+ padding: 20px;
+ box-sizing: border-box;
+}
+
+.controls-row {
+ display: flex;
+ gap: 16px;
+ align-items: center;
+ margin: 20px auto;
+ width: 60%;
+ background: white;
+ padding: 16px;
+ border-radius: 12px;
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
+ padding-top: 36px;
+}
+
+.control {
+ flex: 1;
+}
+
+button.add-btn {
+ height: 56px;
+}
+
+.full-width-table {
+ width: 80%;
+ margin: 0 auto;
+ background: white;
+ border-radius: 12px;
+ overflow: hidden;
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
+}
\ No newline at end of file
diff --git a/MiniKmsClient/src/app/manage-keys/manage-keys.component.ts b/MiniKmsClient/src/app/manage-keys/manage-keys.component.ts
index f016840..a7899db 100644
--- a/MiniKmsClient/src/app/manage-keys/manage-keys.component.ts
+++ b/MiniKmsClient/src/app/manage-keys/manage-keys.component.ts
@@ -1,4 +1,11 @@
import { Component } from '@angular/core';
+import { MatTableDataSource } from '@angular/material/table';
+
+export interface KeyRecord {
+ keyId: string;
+ alias: string;
+ keyType: string;
+}
@Component({
selector: 'app-manage-keys',
@@ -6,5 +13,28 @@ import { Component } from '@angular/core';
styleUrl: './manage-keys.component.scss'
})
export class ManageKeysComponent {
+keyTypes: string[] = ['AES', 'RSA', 'HMAC'];
+
+ displayedColumns: string[] = ['keyId', 'alias', 'keyType', 'actions'];
+ dataSource = new MatTableDataSource([
+ { keyId: '1', alias: 'Key One', keyType: 'AES' },
+ { keyId: '2', alias: 'Key Two', keyType: 'RSA' },
+ { keyId: '3', alias: 'Key Three', keyType: 'AES' },
+ { keyId: '4', alias: 'Key Four', keyType: 'HMAC' }
+ ]);
+
+ addKey() {
+ console.log('Add key clicked');
+ // TODO: implement
+ }
+
+ deleteKey(key: KeyRecord) {
+ console.log('Delete key', key);
+ // TODO: implement
+ }
+ rotateKey(key: KeyRecord) {
+ console.log('Rotate key', key);
+ // TODO: implement
+ }
}