|
@@ -2,7 +2,7 @@
|
|
|
<div class="history-header glass-panel">
|
|
<div class="history-header glass-panel">
|
|
|
<h1>Vault & History</h1>
|
|
<h1>Vault & History</h1>
|
|
|
<p>View previous detections and industrial reports.</p>
|
|
<p>View previous detections and industrial reports.</p>
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
<div class="vault-tabs">
|
|
<div class="vault-tabs">
|
|
|
<button [class.active]="viewMode === 'local'" (click)="switchTab('local')" class="tab-btn">
|
|
<button [class.active]="viewMode === 'local'" (click)="switchTab('local')" class="tab-btn">
|
|
|
<span class="icon">💻</span> Browser Cache
|
|
<span class="icon">💻</span> Browser Cache
|
|
@@ -25,10 +25,9 @@
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div *ngIf="!loading && currentHistory.length > 0" class="history-list">
|
|
<div *ngIf="!loading && currentHistory.length > 0" class="history-list">
|
|
|
- <div *ngFor="let record of currentHistory"
|
|
|
|
|
- class="history-card glass-panel"
|
|
|
|
|
- [class.expanded]="isExpanded(record.timestamp, record.filename, record.archive_id)">
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <div *ngFor="let record of currentHistory" class="history-card glass-panel"
|
|
|
|
|
+ [class.expanded]="isExpanded(record.timestamp, record.filename, record.archive_id)">
|
|
|
|
|
+
|
|
|
<div class="card-header" (click)="toggleExpand(record.timestamp, record.filename, record.archive_id)">
|
|
<div class="card-header" (click)="toggleExpand(record.timestamp, record.filename, record.archive_id)">
|
|
|
<div class="card-main-info">
|
|
<div class="card-main-info">
|
|
|
<span class="timestamp">{{ record.timestamp }}</span>
|
|
<span class="timestamp">{{ record.timestamp }}</span>
|
|
@@ -38,23 +37,23 @@
|
|
|
<div class="summary-mini">
|
|
<div class="summary-mini">
|
|
|
<span *ngFor="let badge of getSummaryBadge(record.summary)" class="badge">{{ badge }}</span>
|
|
<span *ngFor="let badge of getSummaryBadge(record.summary)" class="badge">{{ badge }}</span>
|
|
|
</div>
|
|
</div>
|
|
|
- <div class="expand-icon">{{ isExpanded(record.timestamp, record.filename, record.archive_id) ? '▾' : '▸' }}</div>
|
|
|
|
|
|
|
+ <div class="expand-icon">{{ isExpanded(record.timestamp, record.filename, record.archive_id) ? '▾' : '▸' }}
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div *ngIf="isExpanded(record.timestamp, record.filename, record.archive_id)" class="card-details">
|
|
<div *ngIf="isExpanded(record.timestamp, record.filename, record.archive_id)" class="card-details">
|
|
|
<hr>
|
|
<hr>
|
|
|
<div class="details-grid">
|
|
<div class="details-grid">
|
|
|
<div class="preview-side">
|
|
<div class="preview-side">
|
|
|
- <div *ngIf="record.imageData" class="image-wrapper">
|
|
|
|
|
- <img [src]="record.imageData" alt="Analysis Preview">
|
|
|
|
|
- <div *ngFor="let det of record.detections"
|
|
|
|
|
- class="detection-box"
|
|
|
|
|
- [ngStyle]="getBoxStyles(det.box, record.dimensions)">
|
|
|
|
|
- </div>
|
|
|
|
|
- </div>
|
|
|
|
|
- <div *ngIf="!record.imageData" class="no-image-preview">
|
|
|
|
|
- <p>Cloud Archive: Metadata Only</p>
|
|
|
|
|
- </div>
|
|
|
|
|
|
|
+ <div *ngIf="record.imageData" class="image-wrapper">
|
|
|
|
|
+ <img [src]="record.imageData" alt="Analysis Preview">
|
|
|
|
|
+ <div *ngFor="let det of record.detections" class="detection-box"
|
|
|
|
|
+ [ngStyle]="getBoxStyles(det.box, record)">
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div *ngIf="!record.imageData" class="no-image-preview">
|
|
|
|
|
+ <p>Cloud Archive: Metadata Only</p>
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
<div class="data-side">
|
|
<div class="data-side">
|
|
|
<h3>Industrial Metrics</h3>
|
|
<h3>Industrial Metrics</h3>
|
|
@@ -69,4 +68,4 @@
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
-</div>
|
|
|
|
|
|
|
+</div>
|