diff --git a/src/app/components/calculator-list/calculator-list.component.ts b/src/app/components/calculator-list/calculator-list.component.ts
index 39993acec5b5111059a4ffac072ff28b0a39a109..9ce84d292495902ff634fef4cbfbdd05d42ad049 100644
--- a/src/app/components/calculator-list/calculator-list.component.ts
+++ b/src/app/components/calculator-list/calculator-list.component.ts
@@ -1,10 +1,11 @@
 import { Component, OnInit } from "@angular/core";
 import { Router } from '@angular/router';
 
+import { EnumEx } from "jalhyd";
+
 import { CalculatorType, FormulaireDefinition } from "../../formulaire/formulaire-definition";
 import { FormulaireService } from "../../services/formulaire/formulaire.service";
 import { InternationalisationService } from '../../services/internationalisation/internationalisation.service';
-import { EnumEx } from "../../util";
 
 class ListElement {
     private _label: string;
diff --git a/src/app/services/formulaire/formulaire.service.ts b/src/app/services/formulaire/formulaire.service.ts
index 623e46f7298937927fa015a0b51dd40bbaa6ef2b..5c313c89931a990fb48be6395c9543a0caf2cd6c 100644
--- a/src/app/services/formulaire/formulaire.service.ts
+++ b/src/app/services/formulaire/formulaire.service.ts
@@ -3,6 +3,8 @@ import { Response } from "@angular/http";
 import { Observable as rxObservable } from "rxjs/Observable";
 import "rxjs/add/operator/toPromise";
 
+import { EnumEx } from "jalhyd";
+
 import { ParamService } from "../param/param.service";
 import { HttpService } from "../../services/http/http.service";
 import { InternationalisationService } from "../../services/internationalisation/internationalisation.service";
@@ -13,7 +15,6 @@ import { InputField } from "../../formulaire/input-field";
 import { SelectField } from "../../formulaire/select-field";
 import { CheckField } from "../../formulaire/check-field";
 import { StringMap } from "../../stringmap";
-import { EnumEx } from "../../util";
 import { Observable } from "../observer";
 
 @Injectable()
diff --git a/src/app/util.ts b/src/app/util.ts
index 297bda30c95628265de4e338e22e363a23853612..d312650ee1fe5a79090b880b1dd7f3052a1b53c2 100644
--- a/src/app/util.ts
+++ b/src/app/util.ts
@@ -5,34 +5,3 @@ export function logObject(obj: {}, m?: string) {
     else
         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