From 799b6b15d70e6af04eb2fe2ccf893dcf6ed67099 Mon Sep 17 00:00:00 2001 From: Andrew Kingston Date: Thu, 2 Jan 2025 16:11:15 +0000 Subject: [PATCH] Convert portal feature flags store to TS --- packages/builder/src/stores/portal/auth.ts | 6 +++--- .../builder/src/stores/portal/featureFlags.js | 16 ---------------- .../builder/src/stores/portal/featureFlags.ts | 19 +++++++++++++++++++ packages/types/src/api/web/global/self.ts | 2 +- 4 files changed, 23 insertions(+), 20 deletions(-) delete mode 100644 packages/builder/src/stores/portal/featureFlags.js create mode 100644 packages/builder/src/stores/portal/featureFlags.ts diff --git a/packages/builder/src/stores/portal/auth.ts b/packages/builder/src/stores/portal/auth.ts index afbb75646c..171b2b43ae 100644 --- a/packages/builder/src/stores/portal/auth.ts +++ b/packages/builder/src/stores/portal/auth.ts @@ -4,14 +4,14 @@ import { admin } from "@/stores/portal" import analytics from "@/analytics" import { BudiStore } from "@/stores/BudiStore" import { + GetGlobalSelfResponse, isSSOUser, SetInitInfoRequest, UpdateSelfRequest, - User, } from "@budibase/types" interface PortalAuthStore { - user?: User + user?: GetGlobalSelfResponse initInfo?: Record accountPortalAccess: boolean loaded: boolean @@ -33,7 +33,7 @@ class AuthStore extends BudiStore { }) } - setUser(user?: User) { + setUser(user?: GetGlobalSelfResponse) { this.set({ loaded: true, user: user, diff --git a/packages/builder/src/stores/portal/featureFlags.js b/packages/builder/src/stores/portal/featureFlags.js deleted file mode 100644 index ef1100310a..0000000000 --- a/packages/builder/src/stores/portal/featureFlags.js +++ /dev/null @@ -1,16 +0,0 @@ -import { derived } from "svelte/store" -import { auth } from "@/stores/portal" - -export const INITIAL_FEATUREFLAG_STATE = { - SQS: false, - DEFAULT_VALUES: false, - BUDIBASE_AI: false, - AI_CUSTOM_CONFIGS: false, -} - -export const featureFlags = derived([auth], ([$auth]) => { - return { - ...INITIAL_FEATUREFLAG_STATE, - ...($auth?.user?.flags || {}), - } -}) diff --git a/packages/builder/src/stores/portal/featureFlags.ts b/packages/builder/src/stores/portal/featureFlags.ts new file mode 100644 index 0000000000..ac071f1169 --- /dev/null +++ b/packages/builder/src/stores/portal/featureFlags.ts @@ -0,0 +1,19 @@ +import { derived, Readable } from "svelte/store" +import { auth } from "@/stores/portal" + +export const INITIAL_FEATUREFLAG_STATE = { + SQS: false, + DEFAULT_VALUES: false, + BUDIBASE_AI: false, + AI_CUSTOM_CONFIGS: false, +} + +export const featureFlags: Readable> = derived( + [auth], + ([$auth]) => { + return { + ...INITIAL_FEATUREFLAG_STATE, + ...($auth?.user?.flags || {}), + } + } +) diff --git a/packages/types/src/api/web/global/self.ts b/packages/types/src/api/web/global/self.ts index 5f21a8ddc5..c478e89dd6 100644 --- a/packages/types/src/api/web/global/self.ts +++ b/packages/types/src/api/web/global/self.ts @@ -8,5 +8,5 @@ export interface GenerateAPIKeyResponse extends DevInfo {} export interface FetchAPIKeyResponse extends DevInfo {} export interface GetGlobalSelfResponse extends User { - flags?: Record + flags?: Record }