diff --git a/src/app/services/api.service.ts b/src/app/services/api.service.ts
index 29341ec..861e621 100644
--- a/src/app/services/api.service.ts
+++ b/src/app/services/api.service.ts
@@ -11,6 +11,11 @@ import { PenaltyDto } from "../../types/penalty.dto";
import { PrizeDto } from "../../types/prize.dto";
import {QuestionresultsDto} from "../../types/questionresults.dto";
+export interface FeatureFlagStateDto {
+ name: string;
+ state: boolean;
+}
+
@Injectable({
providedIn: 'root'
})
@@ -94,4 +99,12 @@ export class ApiService {
getQuestionResults() {
return this.httpClient.get
(`${API_URL}/quiz/question-results`)
}
+
+ getFeatureFlagState(feature: string) {
+ return this.httpClient.get(`${API_URL}/featureflag/${feature}`);
+ }
+
+ setFeatureFlagState(feature: string, state: boolean) {
+ return this.httpClient.post(`${API_URL}/featureflag`, { name: feature, state: state });
+ }
}
diff --git a/src/app/services/event.service.ts b/src/app/services/event.service.ts
index 261b0e5..9e3ebd3 100644
--- a/src/app/services/event.service.ts
+++ b/src/app/services/event.service.ts
@@ -31,6 +31,7 @@ export class EventService {
public gameResumed = new EventEmitter>();
public notificationEvent = new EventEmitter>();
public userPropertyChanged = new EventEmitter>();
+ public featureFlagChanged = new EventEmitter>();
constructor() { }
public emit(event: ServerEvent) {
@@ -81,6 +82,9 @@ export class EventService {
case "user_property_changed":
this.userPropertyChanged.emit(event as ServerEvent);
break;
+ case "feature_flag_changed":
+ this.featureFlagChanged.emit(event);
+ break;
}
}
}
diff --git a/src/app/shared/featureflags.ts b/src/app/shared/featureflags.ts
new file mode 100644
index 0000000..5c86195
--- /dev/null
+++ b/src/app/shared/featureflags.ts
@@ -0,0 +1,3 @@
+export class FeatureFlagList {
+ static readonly FeatureFlags: string[] = ["EnableEndgamePoints"];
+}
\ No newline at end of file
diff --git a/src/types/server-event.ts b/src/types/server-event.ts
index d2b705f..ca4c376 100644
--- a/src/types/server-event.ts
+++ b/src/types/server-event.ts
@@ -87,5 +87,6 @@ export interface ServerEvent {
| 'game_resumed'
| 'notification'
| 'user_property_changed'
+ | 'feature_flag_changed'
data: T
}