diff --git a/frontend/src/component/common/NewConstraintAccordion/NewConstraintAccordionList/NewConstraintAccordionList.tsx b/frontend/src/component/common/NewConstraintAccordion/NewConstraintAccordionList/NewConstraintAccordionList.tsx index e4dc791993..862d5e742e 100644 --- a/frontend/src/component/common/NewConstraintAccordion/NewConstraintAccordionList/NewConstraintAccordionList.tsx +++ b/frontend/src/component/common/NewConstraintAccordion/NewConstraintAccordionList/NewConstraintAccordionList.tsx @@ -1,14 +1,11 @@ import type React from 'react'; -import { forwardRef, useImperativeHandle } from 'react'; +import { forwardRef } from 'react'; import { styled } from '@mui/material'; import type { IConstraint } from 'interfaces/strategy'; import produce from 'immer'; import useUnleashContext from 'hooks/api/getters/useUnleashContext/useUnleashContext'; -import { type IUseWeakMap, useWeakMap } from 'hooks/useWeakMap'; -import { - constraintId, - createEmptyConstraint, -} from 'component/common/LegacyConstraintAccordion/ConstraintAccordionList/createEmptyConstraint'; +import type { IUseWeakMap } from 'hooks/useWeakMap'; +import { constraintId } from 'component/common/LegacyConstraintAccordion/ConstraintAccordionList/createEmptyConstraint'; import { NewConstraintAccordion } from 'component/common/NewConstraintAccordion/NewConstraintAccordion'; import { ConstraintsList } from 'component/common/ConstraintsList/ConstraintsList'; import { useUiFlag } from 'hooks/useUiFlag'; @@ -44,36 +41,6 @@ const StyledContainer = styled('div')({ flexDirection: 'column', }); -export const useConstraintAccordionList = ( - setConstraints: - | React.Dispatch> - | undefined, - ref: React.RefObject, -) => { - // Constraint metadata: This is a weak map to give a constraint an ID by using the placement in memory. - const state = useWeakMap(); - const { context } = useUnleashContext(); - - const addConstraint = - setConstraints && - ((contextName: string) => { - const constraint = createEmptyConstraint(contextName); - state.set(constraint, { editing: true, new: true }); - setConstraints((prev) => [...prev, constraint]); - }); - - useImperativeHandle(ref, () => ({ - addConstraint, - })); - - const onAdd = - addConstraint && - (() => { - addConstraint(context[0].name); - }); - - return { onAdd, state, context }; -}; interface IConstraintList { constraints: IConstraint[]; setConstraints?: React.Dispatch>; diff --git a/frontend/src/component/feature/FeatureStrategy/FeatureStrategyConstraints/FeatureStrategyConstraintAccordionList/FeatureStrategyConstraintAccordionList.tsx b/frontend/src/component/feature/FeatureStrategy/FeatureStrategyConstraints/FeatureStrategyConstraintAccordionList/FeatureStrategyConstraintAccordionList.tsx index 5cd8fb71df..7c1b0d0445 100644 --- a/frontend/src/component/feature/FeatureStrategy/FeatureStrategyConstraints/FeatureStrategyConstraintAccordionList/FeatureStrategyConstraintAccordionList.tsx +++ b/frontend/src/component/feature/FeatureStrategy/FeatureStrategyConstraints/FeatureStrategyConstraintAccordionList/FeatureStrategyConstraintAccordionList.tsx @@ -93,12 +93,14 @@ export const FeatureStrategyConstraintAccordionList = forwardRef< } /> - {addEditStrategy && setConstraints ? ( - + {addEditStrategy ? ( + setConstraints ? ( + + ) : null ) : (