Skip to content

Commit f6347ff

Browse files
authored
Accept IUser instead of User in the public API (#58)
1 parent e410045 commit f6347ff

File tree

2 files changed

+13
-13
lines changed

2 files changed

+13
-13
lines changed

src/components/FeatureWrapper.vue

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import { ref, onBeforeMount, onUnmounted, inject, type Ref } from "vue";
1111
import {
1212
ClientCacheState,
1313
type IConfigCatClient,
14-
type User,
14+
type IUser,
1515
} from "@configcat/sdk";
1616
1717
const emits = defineEmits<{
@@ -20,7 +20,7 @@ const emits = defineEmits<{
2020
2121
const props = defineProps<{
2222
featureKey: string;
23-
userObject?: User;
23+
userObject?: IUser;
2424
}>();
2525
2626
const isFeatureFlagEnabled: Ref<null | boolean> = ref(null);

tests/mocks/ConfigCatClientMocks.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
1-
import { ClientCacheState, Config, ConfigJson, EvaluationDetails, HookEvents, IConfigCatClient, IConfigCatClientSnapshot, Internals, prepareConfig, RefreshErrorCode, RefreshResult, SettingKeyValue, SettingTypeOf, SettingValue, User } from "@configcat/sdk";
1+
import { ClientCacheState, Config, ConfigJson, EvaluationDetails, HookEvents, IConfigCatClient, IConfigCatClientSnapshot, Internals, IUser, prepareConfig, RefreshErrorCode, RefreshResult, SettingKeyValue, SettingTypeOf, SettingValue } from "@configcat/sdk";
22
import { isAllowedValue } from "@configcat/sdk/lib/esm/ProjectConfig.js";
33

44
export class ConfigCatClientMockBase implements IConfigCatClient {
55
constructor(
66
public isOffline = false) {
77
}
88

9-
getValueAsync<T extends SettingValue>(key: string, defaultValue: T, user?: User): Promise<SettingTypeOf<T>> {
9+
getValueAsync<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): Promise<SettingTypeOf<T>> {
1010
throw new Error("Method not implemented.");
1111
}
12-
getValueDetailsAsync<T extends SettingValue>(key: string, defaultValue: T, user?: User): Promise<EvaluationDetails<SettingTypeOf<T>>> {
12+
getValueDetailsAsync<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): Promise<EvaluationDetails<SettingTypeOf<T>>> {
1313
throw new Error("Method not implemented.");
1414
}
1515
getAllKeysAsync(): Promise<string[]> {
1616
throw new Error("Method not implemented.");
1717
}
18-
getAllValuesAsync(user?: User): Promise<SettingKeyValue[]> {
18+
getAllValuesAsync(user?: IUser): Promise<SettingKeyValue[]> {
1919
throw new Error("Method not implemented.");
2020
}
21-
getAllValueDetailsAsync(user?: User): Promise<EvaluationDetails[]> {
21+
getAllValueDetailsAsync(user?: IUser): Promise<EvaluationDetails[]> {
2222
throw new Error("Method not implemented.");
2323
}
2424
getKeyAndValueAsync(variationId: string): Promise<SettingKeyValue | null> {
@@ -33,7 +33,7 @@ export class ConfigCatClientMockBase implements IConfigCatClient {
3333
snapshot(): IConfigCatClientSnapshot {
3434
throw new Error("Method not implemented.");
3535
}
36-
setDefaultUser(defaultUser: User): void {
36+
setDefaultUser(defaultUser: IUser): void {
3737
throw new Error("Method not implemented.");
3838
}
3939
clearDefaultUser(): void {
@@ -86,10 +86,10 @@ export class ConfigCatClientSnapshotMockBase implements IConfigCatClientSnapshot
8686
getAllKeys(): readonly string[] {
8787
throw new Error("Method not implemented.");
8888
}
89-
getValue<T extends SettingValue>(key: string, defaultValue: T, user?: User): SettingTypeOf<T> {
89+
getValue<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): SettingTypeOf<T> {
9090
throw new Error("Method not implemented.");
9191
}
92-
getValueDetails<T extends SettingValue>(key: string, defaultValue: T, user?: User): EvaluationDetails<SettingTypeOf<T>> {
92+
getValueDetails<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): EvaluationDetails<SettingTypeOf<T>> {
9393
throw new Error("Method not implemented.");
9494
}
9595
getKeyAndValue(variationId: string): SettingKeyValue | null {
@@ -137,7 +137,7 @@ export class SimpleValueConfigCatClientMock extends ConfigCatClientMockBase {
137137
(this.eventEmitter as Internals.IEventEmitter<HookEvents>).emit("configChanged", this.currentConfig);
138138
}
139139

140-
override async getValueAsync<T extends SettingValue>(key: string, defaultValue: T, user?: User): Promise<SettingTypeOf<T>> {
140+
override async getValueAsync<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): Promise<SettingTypeOf<T>> {
141141
await this.readyPromise;
142142

143143
if (key === this.key) {
@@ -151,15 +151,15 @@ export class SimpleValueConfigCatClientMock extends ConfigCatClientMockBase {
151151
const client = this;
152152

153153
return new (class extends ConfigCatClientSnapshotMockBase {
154-
override getValue<T extends SettingValue>(key: string, defaultValue: T, user?: User): SettingTypeOf<T> {
154+
override getValue<T extends SettingValue>(key: string, defaultValue: T, user?: IUser): SettingTypeOf<T> {
155155
if (key === client.key) {
156156
return (isValidSettingValue(client.currentValue, defaultValue) ? client.currentValue : defaultValue) as SettingTypeOf<T>;
157157
}
158158

159159
return super.getValue(key, defaultValue, user);
160160
}
161161

162-
override getValueDetails<T extends SettingValue>(key: string, defaultValue: T, user?: User) {
162+
override getValueDetails<T extends SettingValue>(key: string, defaultValue: T, user?: IUser) {
163163
if (key === client.key) {
164164
return isValidSettingValue(client.currentValue, defaultValue)
165165
? { key, value: client.currentValue, isDefaultValue: false, user } as EvaluationDetails<SettingTypeOf<T>>

0 commit comments

Comments
 (0)