You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
1.9 KiB
TypeScript
85 lines
1.9 KiB
TypeScript
import React from 'react';
|
|
import { connect } from 'react-redux';
|
|
|
|
import ModelRunnerModalComponent from '../../components/model-runner-modal/model-runner-modal';
|
|
import {
|
|
Model,
|
|
CombinedState,
|
|
} from '../../reducers/interfaces';
|
|
import {
|
|
getModelsAsync,
|
|
inferModelAsync,
|
|
closeRunModelDialog,
|
|
} from '../../actions/models-actions';
|
|
|
|
|
|
interface StateToProps {
|
|
modelsFetching: boolean;
|
|
modelsInitialized: boolean;
|
|
models: Model[];
|
|
activeProcesses: {
|
|
[index: string]: string;
|
|
};
|
|
taskInstance: any;
|
|
visible: boolean;
|
|
}
|
|
|
|
interface DispatchToProps {
|
|
runInference(
|
|
taskInstance: any,
|
|
model: Model,
|
|
mapping: {
|
|
[index: string]: string;
|
|
},
|
|
cleanOut: boolean,
|
|
): void;
|
|
getModels(): void;
|
|
closeDialog(): void;
|
|
}
|
|
|
|
function mapStateToProps(state: CombinedState): StateToProps {
|
|
const { models } = state;
|
|
|
|
return {
|
|
modelsFetching: models.fetching,
|
|
modelsInitialized: models.initialized,
|
|
models: models.models,
|
|
activeProcesses: {},
|
|
taskInstance: models.activeRunTask,
|
|
visible: models.visibleRunWindows,
|
|
};
|
|
}
|
|
|
|
function mapDispatchToProps(dispatch: any): DispatchToProps {
|
|
return ({
|
|
runInference(
|
|
taskInstance: any,
|
|
model: Model,
|
|
mapping: {
|
|
[index: string]: string;
|
|
},
|
|
cleanOut: boolean,
|
|
): void {
|
|
dispatch(inferModelAsync(taskInstance, model, mapping, cleanOut));
|
|
},
|
|
getModels(): void {
|
|
dispatch(getModelsAsync());
|
|
},
|
|
closeDialog(): void {
|
|
dispatch(closeRunModelDialog());
|
|
},
|
|
});
|
|
}
|
|
|
|
|
|
function ModelRunnerModalContainer(props: StateToProps & DispatchToProps): JSX.Element {
|
|
return (
|
|
<ModelRunnerModalComponent {...props} />
|
|
);
|
|
}
|
|
|
|
export default connect(
|
|
mapStateToProps,
|
|
mapDispatchToProps,
|
|
)(ModelRunnerModalContainer);
|