Merge pull request #32244 from overleaf/ab-labs-in-feature-flags

[web] Merge Labs programme into the Feature flags system

GitOrigin-RevId: db75e07bf3272becc11ef1eeda3850098b3daa9d
This commit is contained in:
Alexandre Bourdin
2026-03-26 09:06:51 +00:00
committed by Copybot
parent 6f3e0963b8
commit 671df33da3
25 changed files with 883 additions and 360 deletions
@@ -1,42 +0,0 @@
import LabsExperimentWidget, {
LabsExperimentWidgetProps,
} from '@/shared/components/labs/labs-experiments-widget'
import { isInExperiment } from '@/utils/labs-utils'
import { useState } from 'react'
import MaterialIcon from '@/shared/components/material-icon'
import { isSplitTestEnabled } from '@/utils/splitTestUtils'
type LabsWidgetProps = Pick<LabsExperimentWidgetProps, 'setErrorMessage'> & {
labsProgram: boolean
}
const LabsWidget = ({ setErrorMessage, labsProgram }: LabsWidgetProps) => {
const [optedIn, setOptedIn] = useState(isInExperiment('editor-tabs'))
const description = (
<span>Quickly switch between open files and documents using tabs.</span>
)
return (
<LabsExperimentWidget
description={description}
experimentName="editor-tabs"
title="Editor tabs"
setOptedIn={setOptedIn}
setErrorMessage={setErrorMessage}
optedIn={optedIn}
logo={
<MaterialIcon
type="tab_group"
className="rounded bg-primary-subtle labs-experiment-icon"
/>
}
optedInDescription={description}
labsEnabled={labsProgram}
/>
)
}
export const hidden = () => !isSplitTestEnabled('editor-tabs')
export default LabsWidget