diff --git a/packages/web/lib/networking/mutations/optIntoFeatureMutation.ts b/packages/web/lib/networking/mutations/optIntoFeatureMutation.ts
index 92b5f3b96..27633c322 100644
--- a/packages/web/lib/networking/mutations/optIntoFeatureMutation.ts
+++ b/packages/web/lib/networking/mutations/optIntoFeatureMutation.ts
@@ -37,7 +37,11 @@ export async function optInFeature(
input,
})
const output = data as Response | undefined
- if (!output || !output.optInFeature.feature) {
+ if (
+ !output ||
+ !output.optInFeature.feature ||
+ !output.optInFeature.feature.grantedAt
+ ) {
return false
}
return true
diff --git a/packages/web/pages/settings/features/beta.tsx b/packages/web/pages/settings/features/beta.tsx
index b24e17df9..733333a86 100644
--- a/packages/web/pages/settings/features/beta.tsx
+++ b/packages/web/pages/settings/features/beta.tsx
@@ -44,11 +44,13 @@ export default function Account(): JSX.Element {
)
const hasYouTube = useMemo(() => {
- return userHasFeature(viewerData?.me, 'youtube-transcripts')
+ return viewerData?.me?.featureList?.some(
+ (f) => f.name === 'youtube-transcripts'
+ )
}, [viewerData])
const hasNotion = useMemo(() => {
- return userHasFeature(viewerData?.me, 'notion')
+ return viewerData?.me?.featureList?.some((f) => f.name === 'notion')
}, [viewerData])
applyStoredTheme()
@@ -88,7 +90,7 @@ export default function Account(): JSX.Element {
Enabled beta features
{!showSpinner ? (
<>
- {viewerData?.me?.features.map((feature) => {
+ {viewerData?.me?.featureList.map((feature) => {
return (
- {feature}
+ {`${feature.name}${
+ userHasFeature(viewerData?.me, feature.name)
+ ? ''
+ : ' - Requested'
+ }`}
)
})}