/
alt3rmann
/
label-studio
Обзор
Документация
Войти
/
alt3rmann
/
label-studio
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
web/libs/editor/src/components/AnnotationTab/DynamicPreannotationsToggle.jsx
39 строк
1 KB
carly-bartel
feat: OPTIC-1332: componetize Toggle and Label components (#6723)
03 янв 2025, 16:35
Не верифицирован
03 янв 2025, 16:35
281ef77
Код
Авторство
О чём код?
import { inject, observer } from "mobx-react"; import { useEffect } from "react"; import { Space } from "../../common/Space/Space"; import { Toggle } from "@humansignal/ui"; import ToolsManager from "../../tools/Manager"; import { Block, Elem } from "../../utils/bem"; import "./DynamicPreannotationsToggle.scss"; export const DynamicPreannotationsToggle = inject("store")( observer(({ store }) => { const enabled = store.hasInterface("auto-annotation") && !store.forceAutoAnnotation; useEffect(() => { if (!enabled) store.setAutoAnnotation(false); }, [enabled]); return enabled ? ( <Block name="dynamic-preannotations"> <Elem name="wrapper"> <Space spread> <Toggle checked={store.autoAnnotation} onChange={(e) => { const checked = e.target.checked; store.setAutoAnnotation(checked); if (!checked) { ToolsManager.allInstances().forEach((inst) => inst.selectDefault()); } }} label="Auto-Annotation" /> </Space> </Elem> </Block> ) : null; }), );