@@ -48,6 +48,7 @@ import useComputationDebug from '../hooks/use-computation-debug';
4848import { PaginationType } from 'types/custom-aggrid-types' ;
4949import { usePaginationReset } from 'hooks/use-pagination-selector' ;
5050import { useLogsPaginationResetByType } from './report-viewer/use-logs-pagination' ;
51+ import { startPccMin , stopPccMin } from 'services/study/pcc-min' ;
5152
5253const checkDynamicSimulationParameters = ( studyUuid ) => {
5354 return fetchDynamicSimulationParameters ( studyUuid ) . then ( ( params ) => {
@@ -94,6 +95,7 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
9495 ) ;
9596 const voltageInitStatus = useSelector ( ( state ) => state . computingStatus [ ComputingType . VOLTAGE_INITIALIZATION ] ) ;
9697 const stateEstimationStatus = useSelector ( ( state ) => state . computingStatus [ ComputingType . STATE_ESTIMATION ] ) ;
98+ const pccMinStatus = useSelector ( ( state ) => state . computingStatus [ ComputingType . PCC_MIN ] ) ;
9799
98100 const [ showContingencyListSelector , setShowContingencyListSelector ] = useState ( false ) ;
99101
@@ -120,6 +122,7 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
120122 const voltageInitAvailability = useOptionalServiceStatus ( OptionalServicesNames . VoltageInit ) ;
121123 const shortCircuitAvailability = useOptionalServiceStatus ( OptionalServicesNames . ShortCircuit ) ;
122124 const stateEstimationAvailability = useOptionalServiceStatus ( OptionalServicesNames . StateEstimation ) ;
125+ const pccMinAvailability = useOptionalServiceStatus ( OptionalServicesNames . PccMin ) ;
123126
124127 const resetSecurityAnalysisPagination = usePaginationReset ( PaginationType . SecurityAnalysis ) ;
125128 const resetSensitivityAnalysisPagination = usePaginationReset ( PaginationType . SensitivityAnalysis ) ;
@@ -489,6 +492,27 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
489492 ) ;
490493 } ,
491494 } ,
495+
496+ [ ComputingType . PCC_MIN ] : {
497+ messageId : 'PccMin' ,
498+ startComputation ( ) {
499+ startComputationAsync (
500+ ComputingType . PCC_MIN ,
501+ null ,
502+ ( ) => {
503+ return startPccMin ( studyUuid , currentNode ?. id , currentRootNetworkUuid ) ;
504+ } ,
505+ ( ) => { } ,
506+ null ,
507+ 'startPccMinError'
508+ ) ;
509+ } ,
510+ actionOnRunnable ( ) {
511+ actionOnRunnables ( ComputingType . PCC_MIN , ( ) =>
512+ stopPccMin ( studyUuid , currentNode ?. id , currentRootNetworkUuid )
513+ ) ;
514+ } ,
515+ } ,
492516 } ;
493517 } , [
494518 dispatch ,
@@ -524,6 +548,8 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
524548 return voltageInitStatus ;
525549 case ComputingType . STATE_ESTIMATION :
526550 return stateEstimationStatus ;
551+ case ComputingType . PCC_MIN :
552+ return pccMinStatus ;
527553 default :
528554 return null ;
529555 }
@@ -538,6 +564,7 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
538564 dynamicSecurityAnalysisStatus ,
539565 voltageInitStatus ,
540566 stateEstimationStatus ,
567+ pccMinStatus ,
541568 ]
542569 ) ;
543570
@@ -561,16 +588,18 @@ export function RunButtonContainer({ studyUuid, currentNode, currentRootNetworkU
561588 ...( stateEstimationAvailability === OptionalServicesStatus . Up && enableDeveloperMode
562589 ? [ ComputingType . STATE_ESTIMATION ]
563590 : [ ] ) ,
591+ ...( pccMinAvailability === OptionalServicesStatus . Up && enableDeveloperMode ? [ ComputingType . PCC_MIN ] : [ ] ) ,
564592 ] ;
565593 } , [
566- dynamicSimulationAvailability ,
567- dynamicSecurityAnalysisAvailability ,
568594 securityAnalysisAvailability ,
569595 sensitivityAnalysisUnavailability ,
570596 shortCircuitAvailability ,
597+ dynamicSimulationAvailability ,
598+ enableDeveloperMode ,
599+ dynamicSecurityAnalysisAvailability ,
571600 voltageInitAvailability ,
572601 stateEstimationAvailability ,
573- enableDeveloperMode ,
602+ pccMinAvailability ,
574603 ] ) ;
575604
576605 return (
0 commit comments