Commit eb71b08c authored by Vignesh Mohankumar's avatar Vignesh Mohankumar Committed by GitHub

refactor: separate files for feature flags, use `BaseVariant` (#4278)

* flag file structure update

* move

* switch

* update imports

* imports
parent 9fc1d8a9
import { BaseVariant, useBaseFlag } from '../index'
export function usePhase0Flag(): BaseVariant {
return useBaseFlag('phase0')
}
export { BaseVariant as Phase0Variant }
...@@ -33,34 +33,17 @@ export function useFeatureFlagsIsLoaded(): boolean { ...@@ -33,34 +33,17 @@ export function useFeatureFlagsIsLoaded(): boolean {
return useFeatureFlagsContext().isLoaded return useFeatureFlagsContext().isLoaded
} }
// feature flag hooks export enum BaseVariant {
export enum Phase0Variant {
Control = 'Control',
Enabled = 'Enabled',
}
export function usePhase0Flag(): Phase0Variant {
switch (useFeatureFlagsContext().flags['phase0']) {
case 'enabled':
return Phase0Variant.Enabled
case 'control':
default:
return Phase0Variant.Control
}
}
enum Phase1Variant {
Control = 'Control', Control = 'Control',
Enabled = 'Enabled', Enabled = 'Enabled',
} }
export function usePhase1Flag(): Phase1Variant { export function useBaseFlag(flag: string): BaseVariant {
switch (useFeatureFlagsContext().flags['phase1']) { switch (useFeatureFlagsContext().flags[flag]) {
case 'enabled': case 'enabled':
return Phase1Variant.Enabled return BaseVariant.Enabled
case 'control': case 'control':
default: default:
return Phase1Variant.Control return BaseVariant.Control
} }
} }
...@@ -3,7 +3,7 @@ import 'inter-ui' ...@@ -3,7 +3,7 @@ import 'inter-ui'
import 'polyfills' import 'polyfills'
import 'components/analytics' import 'components/analytics'
import { FeatureFlagsProvider } from 'featureFlag' import { FeatureFlagsProvider } from 'featureFlags'
import { BlockNumberProvider } from 'lib/hooks/useBlockNumber' import { BlockNumberProvider } from 'lib/hooks/useBlockNumber'
import { MulticallUpdater } from 'lib/state/multicall' import { MulticallUpdater } from 'lib/state/multicall'
import { StrictMode } from 'react' import { StrictMode } from 'react'
......
...@@ -4,7 +4,7 @@ import { CUSTOM_USER_PROPERTIES, EventName, PageName } from 'components/Amplitud ...@@ -4,7 +4,7 @@ import { CUSTOM_USER_PROPERTIES, EventName, PageName } from 'components/Amplitud
import { Trace } from 'components/AmplitudeAnalytics/Trace' import { Trace } from 'components/AmplitudeAnalytics/Trace'
import Loader from 'components/Loader' import Loader from 'components/Loader'
import TopLevelModals from 'components/TopLevelModals' import TopLevelModals from 'components/TopLevelModals'
import { useFeatureFlagsIsLoaded } from 'featureFlag' import { useFeatureFlagsIsLoaded } from 'featureFlags'
import ApeModeQueryParamReader from 'hooks/useApeModeQueryParamReader' import ApeModeQueryParamReader from 'hooks/useApeModeQueryParamReader'
import { lazy, Suspense } from 'react' import { lazy, Suspense } from 'react'
import { useEffect } from 'react' import { useEffect } from 'react'
......
import { Phase0Variant, usePhase0Flag } from 'featureFlag' import { Phase0Variant, usePhase0Flag } from 'featureFlags/flags/phase0'
import React, { useMemo } from 'react' import React, { useMemo } from 'react'
import { Text, TextProps as TextPropsOriginal } from 'rebass' import { Text, TextProps as TextPropsOriginal } from 'rebass'
import styled, { import styled, {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment