mirror of
				https://github.com/Unleash/unleash.git
				synced 2025-10-27 11:02:16 +01:00 
			
		
		
		
	feat: move away from old accordion list, create/edit segment (#9820)
This is one path that is using old component, that we can update. 
This commit is contained in:
		
							parent
							
								
									08d0907d89
								
							
						
					
					
						commit
						31dbef84f6
					
				| @ -15,10 +15,12 @@ import { | |||||||
| import useUnleashContext from 'hooks/api/getters/useUnleashContext/useUnleashContext'; | import useUnleashContext from 'hooks/api/getters/useUnleashContext/useUnleashContext'; | ||||||
| import type { IConstraint } from 'interfaces/strategy'; | import type { IConstraint } from 'interfaces/strategy'; | ||||||
| import { useNavigate } from 'react-router-dom'; | import { useNavigate } from 'react-router-dom'; | ||||||
|  | import type { IConstraintAccordionListRef } from 'component/common/LegacyConstraintAccordion/ConstraintAccordionList/ConstraintAccordionList'; | ||||||
|  | import { ConstraintAccordionList } from 'component/common/LegacyConstraintAccordion/ConstraintAccordionList/ConstraintAccordionList'; | ||||||
| import { | import { | ||||||
|     ConstraintAccordionList, |     NewConstraintAccordionList, | ||||||
|     type IConstraintAccordionListRef, |     useConstraintAccordionList, | ||||||
| } from 'component/common/LegacyConstraintAccordion/ConstraintAccordionList/ConstraintAccordionList'; | } from 'component/common/NewConstraintAccordion/NewConstraintAccordionList/NewConstraintAccordionList'; | ||||||
| import type { SegmentFormStep, SegmentFormMode } from './SegmentForm'; | import type { SegmentFormStep, SegmentFormMode } from './SegmentForm'; | ||||||
| import { | import { | ||||||
|     AutocompleteBox, |     AutocompleteBox, | ||||||
| @ -32,6 +34,8 @@ import { useSegmentValuesCount } from 'component/segments/hooks/useSegmentValues | |||||||
| import AccessContext from 'contexts/AccessContext'; | import AccessContext from 'contexts/AccessContext'; | ||||||
| import { useSegmentLimits } from 'hooks/api/getters/useSegmentLimits/useSegmentLimits'; | import { useSegmentLimits } from 'hooks/api/getters/useSegmentLimits/useSegmentLimits'; | ||||||
| import { GO_BACK } from 'constants/navigate'; | import { GO_BACK } from 'constants/navigate'; | ||||||
|  | import type { RefObject } from 'react'; | ||||||
|  | import { useUiFlag } from 'hooks/useUiFlag'; | ||||||
| 
 | 
 | ||||||
| interface ISegmentFormPartTwoProps { | interface ISegmentFormPartTwoProps { | ||||||
|     project?: string; |     project?: string; | ||||||
| @ -122,6 +126,11 @@ export const SegmentFormStepTwo: React.FC<ISegmentFormPartTwoProps> = ({ | |||||||
|             ? [CREATE_SEGMENT, UPDATE_PROJECT_SEGMENT] |             ? [CREATE_SEGMENT, UPDATE_PROJECT_SEGMENT] | ||||||
|             : [UPDATE_SEGMENT, UPDATE_PROJECT_SEGMENT]; |             : [UPDATE_SEGMENT, UPDATE_PROJECT_SEGMENT]; | ||||||
|     const { segmentValuesLimit } = useSegmentLimits(); |     const { segmentValuesLimit } = useSegmentLimits(); | ||||||
|  |     const addEditStrategy = useUiFlag('addEditStrategy'); | ||||||
|  |     const { state } = useConstraintAccordionList( | ||||||
|  |         hasAccess(modePermission, project) ? setConstraints : undefined, | ||||||
|  |         constraintsAccordionListRef as RefObject<IConstraintAccordionListRef>, | ||||||
|  |     ); | ||||||
| 
 | 
 | ||||||
|     const overSegmentValuesLimit: boolean = Boolean( |     const overSegmentValuesLimit: boolean = Boolean( | ||||||
|         segmentValuesLimit && segmentValuesCount > segmentValuesLimit, |         segmentValuesLimit && segmentValuesCount > segmentValuesLimit, | ||||||
| @ -201,6 +210,21 @@ export const SegmentFormStepTwo: React.FC<ISegmentFormPartTwoProps> = ({ | |||||||
|                     } |                     } | ||||||
|                 /> |                 /> | ||||||
|                 <StyledConstraintContainer> |                 <StyledConstraintContainer> | ||||||
|  |                     <ConditionallyRender | ||||||
|  |                         condition={addEditStrategy} | ||||||
|  |                         show={ | ||||||
|  |                             <NewConstraintAccordionList | ||||||
|  |                                 ref={constraintsAccordionListRef} | ||||||
|  |                                 constraints={constraints} | ||||||
|  |                                 setConstraints={ | ||||||
|  |                                     hasAccess(modePermission, project) | ||||||
|  |                                         ? setConstraints | ||||||
|  |                                         : undefined | ||||||
|  |                                 } | ||||||
|  |                                 state={state} | ||||||
|  |                             /> | ||||||
|  |                         } | ||||||
|  |                         elseShow={ | ||||||
|                             <ConstraintAccordionList |                             <ConstraintAccordionList | ||||||
|                                 ref={constraintsAccordionListRef} |                                 ref={constraintsAccordionListRef} | ||||||
|                                 constraints={constraints} |                                 constraints={constraints} | ||||||
| @ -210,6 +234,8 @@ export const SegmentFormStepTwo: React.FC<ISegmentFormPartTwoProps> = ({ | |||||||
|                                         : undefined |                                         : undefined | ||||||
|                                 } |                                 } | ||||||
|                             /> |                             /> | ||||||
|  |                         } | ||||||
|  |                     /> | ||||||
|                 </StyledConstraintContainer> |                 </StyledConstraintContainer> | ||||||
|             </StyledForm> |             </StyledForm> | ||||||
|             <StyledButtonContainer> |             <StyledButtonContainer> | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user