Skip to content

Commit 82e7bc1

Browse files
committed
new uuid types
1 parent 1169c45 commit 82e7bc1

2 files changed

Lines changed: 14 additions & 12 deletions

File tree

src/app/model/evidence-store.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { YamlService } from '../service/yaml-loader/yaml-loader.service';
2-
import { Uuid } from './types';
2+
import { ActivityId, EvidenceId } from './types';
33

44
export interface EvidenceAttachment {
55
type: string; // e.g. 'document', 'image', 'link'
66
externalLink: string; // URL
77
}
88

99
export interface EvidenceEntry {
10-
id: string; // stable UUID for this entry
10+
id: EvidenceId; // stable UUID for this entry
1111
teams: string[];
1212
title: string;
1313
evidenceRecorded: string; // ISO date string
@@ -16,7 +16,7 @@ export interface EvidenceEntry {
1616
attachment?: EvidenceAttachment[];
1717
}
1818

19-
export type EvidenceData = Record<Uuid, EvidenceEntry[]>;
19+
export type EvidenceData = Record<ActivityId, EvidenceEntry[]>;
2020

2121
const LOCALSTORAGE_KEY: string = 'evidence';
2222

@@ -39,15 +39,15 @@ export class EvidenceStore {
3939
return this._evidence;
4040
}
4141

42-
public getEvidence(activityUuid: Uuid): EvidenceEntry[] {
42+
public getEvidence(activityUuid: ActivityId): EvidenceEntry[] {
4343
return this._evidence[activityUuid] || [];
4444
}
4545

46-
public hasEvidence(activityUuid: Uuid): boolean {
46+
public hasEvidence(activityUuid: ActivityId): boolean {
4747
return (this._evidence[activityUuid]?.length || 0) > 0;
4848
}
4949

50-
public getEvidenceCount(activityUuid: Uuid): number {
50+
public getEvidenceCount(activityUuid: ActivityId): number {
5151
return this._evidence[activityUuid]?.length ?? 0;
5252
}
5353

@@ -59,7 +59,7 @@ export class EvidenceStore {
5959
return count;
6060
}
6161

62-
public getActivityUuidsWithEvidence(): Uuid[] {
62+
public getActivityUuidsWithEvidence(): ActivityId[] {
6363
return Object.keys(this._evidence).filter(uuid => this._evidence[uuid].length > 0);
6464
}
6565

@@ -92,7 +92,7 @@ export class EvidenceStore {
9292
this.saveToLocalStorage();
9393
}
9494

95-
public addEvidence(activityUuid: Uuid, entry: EvidenceEntry): void {
95+
public addEvidence(activityUuid: ActivityId, entry: EvidenceEntry): void {
9696
if (!this._evidence[activityUuid]) {
9797
this._evidence[activityUuid] = [];
9898
}
@@ -101,8 +101,8 @@ export class EvidenceStore {
101101
}
102102

103103
public updateEvidence(
104-
activityUuid: Uuid,
105-
entryId: string,
104+
activityUuid: ActivityId,
105+
entryId: EvidenceId,
106106
updatedEntry: Partial<EvidenceEntry>
107107
): void {
108108
const entries = this._evidence[activityUuid];
@@ -120,7 +120,7 @@ export class EvidenceStore {
120120
this.saveToLocalStorage();
121121
}
122122

123-
public deleteEvidence(activityUuid: Uuid, entryId: string): void {
123+
public deleteEvidence(activityUuid: ActivityId, entryId: EvidenceId): void {
124124
const entries = this._evidence[activityUuid];
125125
if (!entries) {
126126
console.warn(`No evidence found for activity ${activityUuid}`);
@@ -179,7 +179,7 @@ export class EvidenceStore {
179179

180180
// ─── Helpers ─────────────────────────────────────────────
181181

182-
private isDuplicateEntry(activityUuid: Uuid, entry: EvidenceEntry): boolean {
182+
private isDuplicateEntry(activityUuid: ActivityId, entry: EvidenceEntry): boolean {
183183
const existing = this._evidence[activityUuid];
184184
if (!existing) return false;
185185
return existing.some(e => e.id === entry.id);

src/app/model/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ export type Progress = Record<Uuid, ActivityProgress>;
1515
export type ActivityProgress = Record<TeamName, TeamProgress>;
1616
export type TeamProgress = Record<ProgressTitle, Date>;
1717
export type Uuid = string;
18+
export type ActivityId = Uuid;
19+
export type EvidenceId = Uuid;
1820
export type TeamName = string;
1921
export type GroupName = string;
2022
export type ProgressTitle = string;

0 commit comments

Comments
 (0)