An error occurred while loading the file. Please try again.
-
Mathias Chouet authored7b3b6729
import { Component, Input } from "@angular/core";
import { MatDialog } from "@angular/material";
import { NgParameter } from "../../formulaire/ngparam";
import { ParamCalculability, Structure } from "jalhyd";
import { DialogEditParamComputedComponent } from "../dialog-edit-param-computed/dialog-edit-param-computed.component";
@Component({
selector: "param-computed",
templateUrl: "./param-computed.component.html",
styleUrls: [
"./param-computed.component.scss"
]
})
export class ParamComputedComponent {
@Input()
public param: NgParameter;
@Input()
public title: string;
/**
* id de l'input, utilisé notamment pour les tests
*/
public get inputId() {
let id = "calc_" + this.param.symbol;
// if inside a nested Structure, prefix with Structure position
// to disambiguate
const nub = this.param.paramDefinition.parentNub;
if (nub && nub instanceof Structure) {
id = nub.findPositionInParent() + "_" + id;
}
return id;
}
constructor(
private editInitialValueDialog: MatDialog
) { }
public get isDicho() {
return this.param.paramDefinition.calculability === ParamCalculability.DICHO;
}
public get infoText() {
return NgParameter.preview(this.param.paramDefinition);
}
public openDialog() {
// modification de la valeur initiale, sans avoir à remettre le mode de
// paramètre sur "fixé"
this.editInitialValueDialog.open(
DialogEditParamComputedComponent,
{
data: {
param: this.param
}
}
);
}
}