release v1.7 (#35)

This commit is contained in:
shyallegro
2022-11-01 12:40:14 +02:00
committed by GitHub
parent b96f723af1
commit 94308aaa45
406 changed files with 11934 additions and 9245 deletions

View File

@@ -1,66 +1,58 @@
<nav (smOverflows)="navbarOverflowed($event)" [overflowTrigger]="splitSize" [overflowDelay]="800"
[class.minimized]="minimized">
<span [routerLink]="['execution']" routerLinkActive="active" #rlaExecution="routerLinkActive"
queryParamsHandling="preserve">
<sm-navbar-item header="execution" [active]="rlaExecution.isActive" class="small-nav"></sm-navbar-item>
</span>
<span [routerLink]="['hyper-params/hyper-param/_empty_']" queryParamsHandling="merge">
<sm-navbar-item header="configuration" class="small-nav" [active]="(routerConfig$| async)?.includes('hyper-params')"></sm-navbar-item>
</span>
<span [routerLink]="['artifacts']" routerLinkActive="active" #rlaModel="routerLinkActive" queryParamsHandling="preserve">
<sm-navbar-item header="artifacts" class="small-nav" [active]="rlaModel.isActive"></sm-navbar-item>
</span>
<span [routerLink]="['general']" routerLinkActive="active" #rlaGeneral="routerLinkActive" queryParamsHandling="preserve">
<sm-navbar-item header="info" class="small-nav" [active]="rlaGeneral.isActive"></sm-navbar-item>
</span>
<nav [overflowTrigger]="splitSize" (smOverflows)="navbarOverflowed($event)" [overflowDelay]="800" [class.minimized]="minimized">
<span [routerLink]="['execution']" routerLinkActive #rlaExecution="routerLinkActive" queryParamsHandling="preserve">
<sm-navbar-item header="execution" [active]="rlaExecution.isActive" class="small-nav"></sm-navbar-item>
</span>
<span [routerLink]="['hyper-params/hyper-param/_empty_']" queryParamsHandling="merge">
<sm-navbar-item header="configuration"
class="small-nav"
[active]="(routerConfig$| async)?.includes('hyper-params')"></sm-navbar-item>
</span>
<span [routerLink]="['artifacts']" routerLinkActive #rlaModel="routerLinkActive" queryParamsHandling="preserve">
<sm-navbar-item header="artifacts"
class="small-nav"
[active]="rlaModel.isActive"></sm-navbar-item>
</span>
<span [routerLink]="['general']" routerLinkActive #rlaGeneral="routerLinkActive" queryParamsHandling="preserve">
<sm-navbar-item header="info"
class="small-nav"
[active]="rlaGeneral.isActive"></sm-navbar-item>
</span>
<span [matMenuTriggerFor]="results" *ngIf="overflow">
<sm-navbar-item
header="results" class="small-nav" [multi]="true"
[active]="rlaDebug.isActive || rlaPlots.isActive || rlaScalars.isActive || rlaLog.isActive"
></sm-navbar-item>
<sm-navbar-item header="results"
class="small-nav"
[multi]="true"
[active]="rlaDebug.isActive || rlaPlots.isActive || rlaScalars.isActive || rlaLog.isActive"></sm-navbar-item>
</span>
<div class="d-inline-block" [style.visibility]="overflow ? 'hidden' : 'visible'">
<span
[routerLink]="baseInfoRoute.concat(['log'])"
routerLinkActive="active"
queryParamsHandling="preserve"
#rlaLog="routerLinkActive"
>
<sm-navbar-item class="small-nav" header="console" [active]="rlaLog.isActive"></sm-navbar-item>
</span>
<span
[routerLink]="baseInfoRoute.concat(['metrics','scalar'])"
routerLinkActive="active"
queryParamsHandling="preserve"
#rlaScalars="routerLinkActive"
>
<sm-navbar-item class="small-nav" header="Scalars" [active]="rlaScalars.isActive"></sm-navbar-item>
</span>
<span
[routerLink]="baseInfoRoute.concat(['metrics','plots'])" routerLinkActive="active"
queryParamsHandling="preserve"
#rlaPlots="routerLinkActive"
>
<sm-navbar-item class="small-nav" header="PLOTS" [active]="rlaPlots.isActive"></sm-navbar-item>
</span>
<span
[routerLink]="baseInfoRoute.concat(['debugImages'])"
routerLinkActive="active"
queryParamsHandling="preserve"
#rlaDebug="routerLinkActive"
>
<sm-navbar-item class="small-nav" header="DEBUG SAMPLES" [active]="rlaDebug.isActive"></sm-navbar-item>
</span>
<span [routerLink]="baseInfoRoute.concat(['log'])" routerLinkActive queryParamsHandling="preserve"
#rlaLog="routerLinkActive">
<sm-navbar-item class="small-nav" header="console" [active]="rlaLog.isActive"></sm-navbar-item>
</span>
<span [routerLink]="baseInfoRoute.concat(['metrics','scalar'])" routerLinkActive queryParamsHandling="preserve"
#rlaScalars="routerLinkActive">
<sm-navbar-item class="small-nav" header="Scalars" [active]="rlaScalars.isActive"></sm-navbar-item>
</span>
<span [routerLink]="baseInfoRoute.concat(['metrics','plots'])" routerLinkActive queryParamsHandling="preserve"
#rlaPlots="routerLinkActive">
<sm-navbar-item class="small-nav" header="PLOTS" [active]="rlaPlots.isActive"></sm-navbar-item>
</span>
<span [routerLink]="baseInfoRoute.concat(['debugImages'])" routerLinkActive queryParamsHandling="preserve"
#rlaDebug="routerLinkActive">
<sm-navbar-item class="small-nav" header="DEBUG SAMPLES" [active]="rlaDebug.isActive"></sm-navbar-item>
</span>
</div>
<mat-menu #results="matMenu">
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['log'])" [class.active]="rlaLog.isActive"
>CONSOLE</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['metrics','scalar'])" [class.active]="rlaScalars.isActive"
>SCALARS</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['metrics','plots'])" [class.active]="rlaPlots.isActive"
>PLOTS</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['debugImages'])" [class.active]="rlaDebug.isActive"
>DEBUG SAMPLES</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['log'])" [class.active]="rlaLog.isActive">CONSOLE</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['metrics','scalar'])"
[class.active]="rlaScalars.isActive">SCALARS
</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['metrics','plots'])" [class.active]="rlaPlots.isActive">
PLOTS
</button>
<button mat-menu-item [routerLink]="baseInfoRoute.concat(['debugImages'])" [class.active]="rlaDebug.isActive">DEBUG
SAMPLES
</button>
</mat-menu>
<ng-content select="[refresh]"></ng-content>
</nav>

View File

@@ -6,8 +6,7 @@ nav {
position: relative;
text-align: center;
border-bottom: 1px solid #efefef;
//overflow: hidden;
padding: 0 24px;
padding: 0 48px 0 24px;
.refresh-position {
position: absolute;

View File

@@ -1,8 +1,8 @@
import {Component, Input} from '@angular/core';
import {FeaturesEnum} from '../../../../business-logic/model/users/featuresEnum';
import {selectRouterConfig} from '../../../../webapp-common/core/reducers/router-reducer';
import {FeaturesEnum} from '~/business-logic/model/users/featuresEnum';
import {selectRouterConfig} from '@common/core/reducers/router-reducer';
import {Store} from '@ngrx/store';
import {IExperimentInfoState} from '../../reducers/experiment-info.reducer';
import {ExperimentInfoState} from '../../reducers/experiment-info.reducer';
import {Observable} from 'rxjs';
@@ -22,14 +22,14 @@ export class ExperimentInfoNavbarComponent {
this.baseInfoRoute = minimized ? ['info-output'] : [];
this._minimized = minimized;
}
get minimized(){
get minimized() {
return this._minimized;
}
@Input() splitSize: number;
constructor(private store: Store<IExperimentInfoState>,) {
constructor(private store: Store<ExperimentInfoState>) {
this.routerConfig$ = this.store.select(selectRouterConfig);
}
navbarOverflowed($event: boolean) {

View File

@@ -38,6 +38,7 @@ export const experimentSyncedKeys = [
'view.hiddenProjectTableCols',
'view.metricsCols',
'view.colsOrder',
'output.scalarsHoverMode',
'info.userKnowledge',
'output.settingsList',
];

View File

@@ -1,17 +1,9 @@
import {commonExperimentInfoReducer, ICommonExperimentInfoState, initialCommonExperimentInfoState} from '../../../webapp-common/experiments/reducers/common-experiment-info.reducer';
import {CommonExperimentInfoState} from '@common/experiments/reducers/common-experiment-info.reducer';
export {
commonExperimentInfoReducer as experimentInfoReducer,
initialCommonExperimentInfoState as initialState,
} from '@common/experiments/reducers/common-experiment-info.reducer';
export interface IExperimentInfoState extends ICommonExperimentInfoState {
export interface ExperimentInfoState extends CommonExperimentInfoState {
errors: { [key: string]: any } | null;
}
export const initialState: IExperimentInfoState = {
...initialCommonExperimentInfoState,
};
export function experimentInfoReducer(state: IExperimentInfoState = initialState, action): IExperimentInfoState {
switch (action.type) {
default:
return commonExperimentInfoReducer(state, action) as IExperimentInfoState;
}
}

View File

@@ -1,9 +1,5 @@
import {commonExperimentsInitialState, commonExperimentsViewReducer, ICommonExperimentsViewState} from '../../../webapp-common/experiments/reducers/common-experiments-view.reducer';
export type IExperimentsViewState = ICommonExperimentsViewState;
export const initialState: IExperimentsViewState = {
...commonExperimentsInitialState,
};
export const experimentsViewReducer = commonExperimentsViewReducer;
export {
commonExperimentsInitialState as initialState,
commonExperimentsViewReducer as experimentsViewReducer,
CommonExperimentsViewState as ExperimentsViewState
} from '../../../webapp-common/experiments/reducers/common-experiments-view.reducer';

View File

@@ -1,6 +1,6 @@
import {ActionReducerMap, createSelector} from '@ngrx/store';
import {experimentsViewReducer, IExperimentsViewState, initialState as viewInitialState} from './experiments-view.reducer';
import {experimentInfoReducer, IExperimentInfoState, initialState as infoInitialState} from './experiment-info.reducer';
import {experimentsViewReducer, ExperimentsViewState, initialState as viewInitialState} from './experiments-view.reducer';
import {experimentInfoReducer, ExperimentInfoState, initialState as infoInitialState} from './experiment-info.reducer';
import {experimentOutputReducer, ExperimentOutputState, initialState as outputInitialState} from './experiment-output.reducer';
import {IExperimentInfo} from '../shared/experiment-info.model';
import {TaskStatusEnum} from '~/business-logic/model/tasks/taskStatusEnum';
@@ -9,8 +9,8 @@ import {selectSelectedModel} from '@common/models/reducers';
import {selectCurrentUser} from '@common/core/reducers/users-reducer';
export interface ExperimentState {
view: IExperimentsViewState;
info: IExperimentInfoState;
view: ExperimentsViewState;
info: ExperimentInfoState;
output: ExperimentOutputState;
}
@@ -23,14 +23,14 @@ export const experimentsReducers: ActionReducerMap<ExperimentState, any> = {
export const experiments = state => state.experiments ?? {} as ExperimentState;
// view selectors.
export const experimentsView = createSelector(experiments, state => (state?.view ?? viewInitialState) as IExperimentsViewState);
export const experimentsView = createSelector(experiments, state => (state?.view ?? viewInitialState) as ExperimentsViewState);
export const selectExperimentsMetricsCols = createSelector(experimentsView, state => state.metricsCols);
export const selectMetricVariants = createSelector(experimentsView, state => state.metricVariants);
export const selectMetricsLoading = createSelector(experimentsView, state => state.metricsLoading);
// info selectors
export const experimentInfo = createSelector(experiments, state => (state?.info ?? infoInitialState) as IExperimentInfoState);
export const experimentInfo = createSelector(experiments, state => (state?.info ?? infoInitialState) as ExperimentInfoState);
export const selectSelectedExperiment = createSelector(experimentInfo, state => state?.selectedExperiment);
export const selectExperimentInfoData = createSelector(experimentInfo, state => state.infoData);
export const selectShowExtraDataSpinner = createSelector(experimentInfo, state => state.showExtraDataSpinner);
@@ -48,7 +48,7 @@ export const selectIsSharedAndNotOwner = createSelector(selectSelectedExperiment
);
export const selectExperimentInfoDataFreeze = createSelector(experimentInfo, (state): IExperimentInfo => state.infoDataFreeze);
export const selectExperimentInfoErrors = createSelector(experimentInfo, (state): IExperimentInfoState['errors'] => state.errors);
export const selectExperimentInfoErrors = createSelector(experimentInfo, (state): ExperimentInfoState['errors'] => state.errors);
export const selectExperimentFormValidity = createSelector(selectExperimentInfoData, selectExperimentInfoErrors,
(infoData, errors): boolean => {
if (!infoData || !errors) {