Commit 2d5ad174 authored by Grand Francois's avatar Grand Francois
Browse files

#64 : déplacement de la classe EnumEx vers jalhyd

Showing with 4 additions and 33 deletions
+4 -33
import { Component, OnInit } from "@angular/core"; import { Component, OnInit } from "@angular/core";
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { EnumEx } from "jalhyd";
import { CalculatorType, FormulaireDefinition } from "../../formulaire/formulaire-definition"; import { CalculatorType, FormulaireDefinition } from "../../formulaire/formulaire-definition";
import { FormulaireService } from "../../services/formulaire/formulaire.service"; import { FormulaireService } from "../../services/formulaire/formulaire.service";
import { InternationalisationService } from '../../services/internationalisation/internationalisation.service'; import { InternationalisationService } from '../../services/internationalisation/internationalisation.service';
import { EnumEx } from "../../util";
class ListElement { class ListElement {
private _label: string; private _label: string;
......
...@@ -3,6 +3,8 @@ import { Response } from "@angular/http"; ...@@ -3,6 +3,8 @@ import { Response } from "@angular/http";
import { Observable as rxObservable } from "rxjs/Observable"; import { Observable as rxObservable } from "rxjs/Observable";
import "rxjs/add/operator/toPromise"; import "rxjs/add/operator/toPromise";
import { EnumEx } from "jalhyd";
import { ParamService } from "../param/param.service"; import { ParamService } from "../param/param.service";
import { HttpService } from "../../services/http/http.service"; import { HttpService } from "../../services/http/http.service";
import { InternationalisationService } from "../../services/internationalisation/internationalisation.service"; import { InternationalisationService } from "../../services/internationalisation/internationalisation.service";
...@@ -13,7 +15,6 @@ import { InputField } from "../../formulaire/input-field"; ...@@ -13,7 +15,6 @@ import { InputField } from "../../formulaire/input-field";
import { SelectField } from "../../formulaire/select-field"; import { SelectField } from "../../formulaire/select-field";
import { CheckField } from "../../formulaire/check-field"; import { CheckField } from "../../formulaire/check-field";
import { StringMap } from "../../stringmap"; import { StringMap } from "../../stringmap";
import { EnumEx } from "../../util";
import { Observable } from "../observer"; import { Observable } from "../observer";
@Injectable() @Injectable()
......
...@@ -5,34 +5,3 @@ export function logObject(obj: {}, m?: string) { ...@@ -5,34 +5,3 @@ export function logObject(obj: {}, m?: string) {
else else
console.log(m + " " + JSON.stringify(obj)); console.log(m + " " + JSON.stringify(obj));
} }
/**
* classe d'itérateurs pour les enums
* cf. https://stackoverflow.com/questions/21293063/how-to-programmatically-enumerate-an-enum-type-in-typescript-0-9-5#21294925
*/
export class EnumEx {
/**
* retourne les noms et les valeurs d'un enum
*/
static getNamesAndValues<T extends number>(e: any) {
return EnumEx.getNames(e).map(n => ({ name: n, value: e[n] as T }));
}
/**
* retourne les noms d'un enum
*/
static getNames(e: any) {
return EnumEx.getObjValues(e).filter(v => typeof v === "string") as string[];
}
/**
* retourne les valeurs d'un enum
*/
static getValues<T extends number>(e: any) {
return EnumEx.getObjValues(e).filter(v => typeof v === "number") as T[];
}
private static getObjValues(e: any): (number | string)[] {
return Object.keys(e).map(k => e[k]);
}
}
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment