From f7dd156b45c178b9fbf0f12930a63314ddf10fe1 Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Thu, 23 May 2019 13:02:40 +0200 Subject: [PATCH 1/9] =?UTF-8?q?M=C3=A0J=20jalhyd=5Fbranch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jalhyd_branch | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/jalhyd_branch b/jalhyd_branch index 507bddeeb..94f89b3b0 100644 --- a/jalhyd_branch +++ b/jalhyd_branch @@ -1,2 +1 @@ -33-ajout-du-calcul-d-une-passe-a-bassin - +62-fonctionnalite-plusieurs-parametres-qui-varient-nghyd-126 \ No newline at end of file -- GitLab From da21bbcd5dfcaa7342b3109298e67e061d088923 Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Fri, 24 May 2019 10:01:24 +0200 Subject: [PATCH 2/9] updated package-lock --- package-lock.json | 2180 +-------------------------------------------- 1 file changed, 6 insertions(+), 2174 deletions(-) diff --git a/package-lock.json b/package-lock.json index 21d7266f4..f828b90e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7220,2180 +7220,7 @@ } }, "jalhyd": { - "version": "file:../jalhyd", - "dependencies": { - "@types/jasmine": { - "version": "2.8.8", - "bundled": true - }, - "@types/node": { - "version": "10.5.2", - "bundled": true - }, - "accepts": { - "version": "1.3.5", - "bundled": true, - "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" - } - }, - "after": { - "version": "0.8.2", - "bundled": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true - }, - "ansi-styles": { - "version": "2.2.1", - "bundled": true - }, - "anymatch": { - "version": "2.0.0", - "bundled": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "bundled": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } - } - }, - "argparse": { - "version": "1.0.10", - "bundled": true, - "requires": { - "sprintf-js": "~1.0.2" - } - }, - "arr-diff": { - "version": "4.0.0", - "bundled": true - }, - "arr-flatten": { - "version": "1.1.0", - "bundled": true - }, - "arr-union": { - "version": "3.1.0", - "bundled": true - }, - "array-unique": { - "version": "0.3.2", - "bundled": true - }, - "arraybuffer.slice": { - "version": "0.0.7", - "bundled": true - }, - "assign-symbols": { - "version": "1.0.0", - "bundled": true - }, - "async": { - "version": "2.6.2", - "bundled": true, - "requires": { - "lodash": "^4.17.11" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "bundled": true - } - } - }, - "async-each": { - "version": "1.0.3", - "bundled": true - }, - "async-limiter": { - "version": "1.0.0", - "bundled": true - }, - "atob": { - "version": "2.1.2", - "bundled": true - }, - "babel-code-frame": { - "version": "6.26.0", - "bundled": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "chalk": { - "version": "1.1.3", - "bundled": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - } - } - }, - "backo2": { - "version": "1.0.2", - "bundled": true - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true - }, - "base": { - "version": "0.11.2", - "bundled": true, - "requires": { - "cache-base": "^1.0.1", - "class-utils": "^0.3.5", - "component-emitter": "^1.2.1", - "define-property": "^1.0.0", - "isobject": "^3.0.1", - "mixin-deep": "^1.2.0", - "pascalcase": "^0.1.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "base64-arraybuffer": { - "version": "0.1.5", - "bundled": true - }, - "base64-js": { - "version": "1.3.0", - "bundled": true - }, - "base64id": { - "version": "1.0.0", - "bundled": true - }, - "better-assert": { - "version": "1.0.2", - "bundled": true, - "requires": { - "callsite": "1.0.0" - } - }, - "binary-extensions": { - "version": "1.13.1", - "bundled": true - }, - "blob": { - "version": "0.0.5", - "bundled": true - }, - "bluebird": { - "version": "3.5.4", - "bundled": true - }, - "body-parser": { - "version": "1.18.3", - "bundled": true, - "requires": { - "bytes": "3.0.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", - "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" - } - }, - "brace-expansion": { - "version": "1.1.8", - "bundled": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "2.3.2", - "bundled": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - } - }, - "buffer": { - "version": "5.2.1", - "bundled": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - }, - "buffer-alloc": { - "version": "1.2.0", - "bundled": true, - "requires": { - "buffer-alloc-unsafe": "^1.1.0", - "buffer-fill": "^1.0.0" - } - }, - "buffer-alloc-unsafe": { - "version": "1.1.0", - "bundled": true - }, - "buffer-fill": { - "version": "1.0.0", - "bundled": true - }, - "builtin-modules": { - "version": "1.1.1", - "bundled": true - }, - "bytes": { - "version": "3.0.0", - "bundled": true - }, - "cache-base": { - "version": "1.0.1", - "bundled": true, - "requires": { - "collection-visit": "^1.0.0", - "component-emitter": "^1.2.1", - "get-value": "^2.0.6", - "has-value": "^1.0.0", - "isobject": "^3.0.1", - "set-value": "^2.0.0", - "to-object-path": "^0.3.0", - "union-value": "^1.0.0", - "unset-value": "^1.0.0" - } - }, - "callsite": { - "version": "1.0.0", - "bundled": true - }, - "chalk": { - "version": "2.3.0", - "bundled": true, - "requires": { - "ansi-styles": "^3.1.0", - "escape-string-regexp": "^1.0.5", - "supports-color": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.0", - "bundled": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "supports-color": { - "version": "4.5.0", - "bundled": true, - "requires": { - "has-flag": "^2.0.0" - } - } - } - }, - "chokidar": { - "version": "2.1.5", - "bundled": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "class-utils": { - "version": "0.3.6", - "bundled": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" - } - }, - "coffeescript": { - "version": "2.3.1", - "bundled": true - }, - "collection-visit": { - "version": "1.0.0", - "bundled": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" - } - }, - "color-convert": { - "version": "1.9.1", - "bundled": true, - "requires": { - "color-name": "^1.1.1" - } - }, - "color-name": { - "version": "1.1.3", - "bundled": true - }, - "colors": { - "version": "1.3.3", - "bundled": true - }, - "commander": { - "version": "2.12.2", - "bundled": true - }, - "component-bind": { - "version": "1.0.0", - "bundled": true - }, - "component-emitter": { - "version": "1.3.0", - "bundled": true - }, - "component-inherit": { - "version": "0.0.3", - "bundled": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true - }, - "connect": { - "version": "3.6.6", - "bundled": true, - "requires": { - "debug": "2.6.9", - "finalhandler": "1.1.0", - "parseurl": "~1.3.2", - "utils-merge": "1.0.1" - } - }, - "content-type": { - "version": "1.0.4", - "bundled": true - }, - "cookie": { - "version": "0.3.1", - "bundled": true - }, - "copy-descriptor": { - "version": "0.1.1", - "bundled": true - }, - "core-js": { - "version": "2.6.5", - "bundled": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true - }, - "custom-event": { - "version": "1.0.1", - "bundled": true - }, - "date-format": { - "version": "2.0.0", - "bundled": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - }, - "decode-uri-component": { - "version": "0.2.0", - "bundled": true - }, - "define-property": { - "version": "0.2.5", - "bundled": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "depd": { - "version": "1.1.2", - "bundled": true - }, - "di": { - "version": "0.0.1", - "bundled": true - }, - "diff": { - "version": "3.4.0", - "bundled": true - }, - "dom-serialize": { - "version": "2.2.1", - "bundled": true, - "requires": { - "custom-event": "~1.0.0", - "ent": "~2.2.0", - "extend": "^3.0.0", - "void-elements": "^2.0.0" - } - }, - "ee-first": { - "version": "1.1.1", - "bundled": true - }, - "encodeurl": { - "version": "1.0.2", - "bundled": true - }, - "engine.io": { - "version": "3.2.1", - "bundled": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "1.0.0", - "cookie": "0.3.1", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.1" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "engine.io-client": { - "version": "3.2.1", - "bundled": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.1", - "bundled": true - }, - "debug": { - "version": "3.1.0", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "engine.io-parser": { - "version": "2.1.3", - "bundled": true, - "requires": { - "after": "0.8.2", - "arraybuffer.slice": "~0.0.7", - "base64-arraybuffer": "0.1.5", - "blob": "0.0.5", - "has-binary2": "~1.0.2" - } - }, - "ent": { - "version": "2.2.0", - "bundled": true - }, - "escape-html": { - "version": "1.0.3", - "bundled": true - }, - "escape-string-regexp": { - "version": "1.0.5", - "bundled": true - }, - "esprima": { - "version": "4.0.1", - "bundled": true - }, - "esutils": { - "version": "2.0.2", - "bundled": true - }, - "eventemitter3": { - "version": "3.1.0", - "bundled": true - }, - "expand-brackets": { - "version": "2.1.4", - "bundled": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - } - }, - "extend": { - "version": "3.0.2", - "bundled": true - }, - "extend-shallow": { - "version": "2.0.1", - "bundled": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "extglob": { - "version": "2.0.4", - "bundled": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "fill-range": { - "version": "4.0.0", - "bundled": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - } - }, - "finalhandler": { - "version": "1.1.0", - "bundled": true, - "requires": { - "debug": "2.6.9", - "encodeurl": "~1.0.1", - "escape-html": "~1.0.3", - "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.3.1", - "unpipe": "~1.0.0" - }, - "dependencies": { - "statuses": { - "version": "1.3.1", - "bundled": true - } - } - }, - "flatted": { - "version": "2.0.0", - "bundled": true - }, - "follow-redirects": { - "version": "1.7.0", - "bundled": true, - "requires": { - "debug": "^3.2.6" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "bundled": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true - } - } - }, - "for-in": { - "version": "1.0.2", - "bundled": true - }, - "fragment-cache": { - "version": "0.2.1", - "bundled": true, - "requires": { - "map-cache": "^0.2.2" - } - }, - "fs-access": { - "version": "1.0.1", - "bundled": true, - "requires": { - "null-check": "^1.0.0" - } - }, - "fs-extra": { - "version": "7.0.1", - "bundled": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true - }, - "get-value": { - "version": "2.0.6", - "bundled": true - }, - "glob": { - "version": "7.1.2", - "bundled": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "bundled": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "bundled": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "globule": { - "version": "1.2.1", - "bundled": true, - "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" - } - }, - "graceful-fs": { - "version": "4.1.15", - "bundled": true - }, - "has-ansi": { - "version": "2.0.0", - "bundled": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "has-binary2": { - "version": "1.0.3", - "bundled": true, - "requires": { - "isarray": "2.0.1" - }, - "dependencies": { - "isarray": { - "version": "2.0.1", - "bundled": true - } - } - }, - "has-cors": { - "version": "1.1.0", - "bundled": true - }, - "has-flag": { - "version": "2.0.0", - "bundled": true - }, - "has-value": { - "version": "1.0.0", - "bundled": true, - "requires": { - "get-value": "^2.0.6", - "has-values": "^1.0.0", - "isobject": "^3.0.0" - } - }, - "has-values": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-number": "^3.0.0", - "kind-of": "^4.0.0" - }, - "dependencies": { - "kind-of": { - "version": "4.0.0", - "bundled": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "http-errors": { - "version": "1.6.3", - "bundled": true, - "requires": { - "depd": "~1.1.2", - "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" - } - }, - "http-proxy": { - "version": "1.17.0", - "bundled": true, - "requires": { - "eventemitter3": "^3.0.0", - "follow-redirects": "^1.0.0", - "requires-port": "^1.0.0" - } - }, - "iconv-lite": { - "version": "0.4.23", - "bundled": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ieee754": { - "version": "1.1.13", - "bundled": true - }, - "indexof": { - "version": "0.0.1", - "bundled": true - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "bundled": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-binary-path": { - "version": "1.0.1", - "bundled": true, - "requires": { - "binary-extensions": "^1.0.0" - } - }, - "is-buffer": { - "version": "1.1.6", - "bundled": true - }, - "is-data-descriptor": { - "version": "0.1.4", - "bundled": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-descriptor": { - "version": "0.1.6", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - }, - "dependencies": { - "kind-of": { - "version": "5.1.0", - "bundled": true - } - } - }, - "is-extendable": { - "version": "0.1.1", - "bundled": true - }, - "is-extglob": { - "version": "2.1.1", - "bundled": true - }, - "is-glob": { - "version": "4.0.1", - "bundled": true, - "requires": { - "is-extglob": "^2.1.1" - } - }, - "is-number": { - "version": "3.0.0", - "bundled": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "is-plain-object": { - "version": "2.0.4", - "bundled": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "is-windows": { - "version": "1.0.2", - "bundled": true - }, - "isarray": { - "version": "1.0.0", - "bundled": true - }, - "isbinaryfile": { - "version": "3.0.3", - "bundled": true, - "requires": { - "buffer-alloc": "^1.2.0" - } - }, - "isexe": { - "version": "2.0.0", - "bundled": true - }, - "isobject": { - "version": "3.0.1", - "bundled": true - }, - "jasmine": { - "version": "3.4.0", - "bundled": true, - "requires": { - "glob": "^7.1.3", - "jasmine-core": "~3.4.0" - }, - "dependencies": { - "glob": { - "version": "7.1.3", - "bundled": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "jasmine-core": { - "version": "3.4.0", - "bundled": true - }, - "jasmine-node": { - "version": "1.15.0", - "bundled": true, - "requires": { - "coffeescript": ">=1.0.1", - "gaze": "~1.1.2", - "jasmine-growl-reporter": "~1.0.1", - "jasmine-reporters": "~1.0.0", - "mkdirp": "~0.3.5", - "requirejs": ">=0.27.1", - "underscore": ">= 1.3.1", - "walkdir": ">= 0.0.1" - }, - "dependencies": { - "gaze": { - "version": "1.1.3", - "bundled": true, - "requires": { - "globule": "^1.0.0" - } - }, - "growl": { - "version": "1.10.5", - "bundled": true - }, - "jasmine-growl-reporter": { - "version": "1.0.1", - "bundled": true, - "requires": { - "growl": "^1.10.2" - } - } - } - }, - "jasmine-reporters": { - "version": "1.0.2", - "bundled": true, - "requires": { - "mkdirp": "~0.3.5" - } - }, - "js-tokens": { - "version": "3.0.2", - "bundled": true - }, - "js-yaml": { - "version": "3.13.1", - "bundled": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "jsonfile": { - "version": "4.0.0", - "bundled": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "karma": { - "version": "4.1.0", - "bundled": true, - "requires": { - "bluebird": "^3.3.0", - "body-parser": "^1.16.1", - "braces": "^2.3.2", - "chokidar": "^2.0.3", - "colors": "^1.1.0", - "connect": "^3.6.0", - "core-js": "^2.2.0", - "di": "^0.0.1", - "dom-serialize": "^2.2.0", - "flatted": "^2.0.0", - "glob": "^7.1.1", - "graceful-fs": "^4.1.2", - "http-proxy": "^1.13.0", - "isbinaryfile": "^3.0.0", - "lodash": "^4.17.11", - "log4js": "^4.0.0", - "mime": "^2.3.1", - "minimatch": "^3.0.2", - "optimist": "^0.6.1", - "qjobs": "^1.1.4", - "range-parser": "^1.2.0", - "rimraf": "^2.6.0", - "safe-buffer": "^5.0.1", - "socket.io": "2.1.1", - "source-map": "^0.6.1", - "tmp": "0.0.33", - "useragent": "2.3.0" - }, - "dependencies": { - "lodash": { - "version": "4.17.11", - "bundled": true - } - } - }, - "karma-chrome-launcher": { - "version": "2.2.0", - "bundled": true, - "requires": { - "fs-access": "^1.0.0", - "which": "^1.2.1" - } - }, - "karma-jasmine": { - "version": "2.0.1", - "bundled": true, - "requires": { - "jasmine-core": "^3.3" - }, - "dependencies": { - "jasmine-core": { - "version": "3.4.0", - "bundled": true - } - } - }, - "karma-jasmine-html-reporter": { - "version": "1.4.0", - "bundled": true - }, - "kind-of": { - "version": "3.2.2", - "bundled": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, - "lodash": { - "version": "4.17.11", - "bundled": true - }, - "log4js": { - "version": "4.1.0", - "bundled": true, - "requires": { - "date-format": "^2.0.0", - "debug": "^4.1.1", - "flatted": "^2.0.0", - "rfdc": "^1.1.2", - "streamroller": "^1.0.4" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "bundled": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true - } - } - }, - "lru-cache": { - "version": "4.1.5", - "bundled": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "map-cache": { - "version": "0.2.2", - "bundled": true - }, - "map-visit": { - "version": "1.0.0", - "bundled": true, - "requires": { - "object-visit": "^1.0.0" - } - }, - "media-typer": { - "version": "0.3.0", - "bundled": true - }, - "micromatch": { - "version": "3.1.10", - "bundled": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "bundled": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "mime": { - "version": "2.4.2", - "bundled": true - }, - "mime-db": { - "version": "1.39.0", - "bundled": true - }, - "mime-types": { - "version": "2.1.23", - "bundled": true, - "requires": { - "mime-db": "~1.39.0" - } - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.10", - "bundled": true - }, - "mixin-deep": { - "version": "1.3.1", - "bundled": true, - "requires": { - "for-in": "^1.0.2", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "mkdirp": { - "version": "0.3.5", - "bundled": true - }, - "ms": { - "version": "2.0.0", - "bundled": true - }, - "nanomatch": { - "version": "1.2.13", - "bundled": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "fragment-cache": "^0.2.1", - "is-windows": "^1.0.2", - "kind-of": "^6.0.2", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "bundled": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "negotiator": { - "version": "0.6.1", - "bundled": true - }, - "normalize-path": { - "version": "3.0.0", - "bundled": true - }, - "null-check": { - "version": "1.0.0", - "bundled": true - }, - "object-component": { - "version": "0.0.3", - "bundled": true - }, - "object-copy": { - "version": "0.1.0", - "bundled": true, - "requires": { - "copy-descriptor": "^0.1.0", - "define-property": "^0.2.5", - "kind-of": "^3.0.3" - } - }, - "object-visit": { - "version": "1.0.1", - "bundled": true, - "requires": { - "isobject": "^3.0.0" - } - }, - "object.pick": { - "version": "1.3.0", - "bundled": true, - "requires": { - "isobject": "^3.0.1" - } - }, - "on-finished": { - "version": "2.3.0", - "bundled": true, - "requires": { - "ee-first": "1.1.1" - } - }, - "once": { - "version": "1.4.0", - "bundled": true, - "requires": { - "wrappy": "1" - } - }, - "optimist": { - "version": "0.6.1", - "bundled": true, - "requires": { - "minimist": "~0.0.1", - "wordwrap": "~0.0.2" - } - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true - }, - "parseqs": { - "version": "0.0.5", - "bundled": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseuri": { - "version": "0.0.5", - "bundled": true, - "requires": { - "better-assert": "~1.0.0" - } - }, - "parseurl": { - "version": "1.3.3", - "bundled": true - }, - "pascalcase": { - "version": "0.1.1", - "bundled": true - }, - "path-dirname": { - "version": "1.0.2", - "bundled": true - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true - }, - "path-parse": { - "version": "1.0.5", - "bundled": true - }, - "posix-character-classes": { - "version": "0.1.1", - "bundled": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true - }, - "pseudomap": { - "version": "1.0.2", - "bundled": true - }, - "qjobs": { - "version": "1.2.0", - "bundled": true - }, - "qs": { - "version": "6.5.2", - "bundled": true - }, - "range-parser": { - "version": "1.2.0", - "bundled": true - }, - "raw-body": { - "version": "2.3.3", - "bundled": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", - "unpipe": "1.0.0" - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "readdirp": { - "version": "2.2.1", - "bundled": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - } - }, - "regex-not": { - "version": "1.0.2", - "bundled": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "bundled": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "remove-trailing-separator": { - "version": "1.1.0", - "bundled": true - }, - "repeat-element": { - "version": "1.1.3", - "bundled": true - }, - "repeat-string": { - "version": "1.6.1", - "bundled": true - }, - "requirejs": { - "version": "2.3.6", - "bundled": true - }, - "requires-port": { - "version": "1.0.0", - "bundled": true - }, - "resolve": { - "version": "1.5.0", - "bundled": true, - "requires": { - "path-parse": "^1.0.5" - } - }, - "resolve-url": { - "version": "0.2.1", - "bundled": true - }, - "ret": { - "version": "0.1.15", - "bundled": true - }, - "rfdc": { - "version": "1.1.2", - "bundled": true - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "requires": { - "glob": "^7.1.3" - }, - "dependencies": { - "glob": { - "version": "7.1.3", - "bundled": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true - }, - "safe-regex": { - "version": "1.1.0", - "bundled": true, - "requires": { - "ret": "~0.1.10" - } - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true - }, - "semver": { - "version": "5.4.1", - "bundled": true - }, - "set-value": { - "version": "2.0.0", - "bundled": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.3", - "split-string": "^3.0.1" - } - }, - "setprototypeof": { - "version": "1.1.0", - "bundled": true - }, - "snapdragon": { - "version": "0.8.2", - "bundled": true, - "requires": { - "base": "^0.11.1", - "debug": "^2.2.0", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "map-cache": "^0.2.2", - "source-map": "^0.5.6", - "source-map-resolve": "^0.5.0", - "use": "^3.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "bundled": true - } - } - }, - "snapdragon-node": { - "version": "2.1.1", - "bundled": true, - "requires": { - "define-property": "^1.0.0", - "isobject": "^3.0.0", - "snapdragon-util": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "snapdragon-util": { - "version": "3.0.1", - "bundled": true, - "requires": { - "kind-of": "^3.2.0" - } - }, - "socket.io": { - "version": "2.1.1", - "bundled": true, - "requires": { - "debug": "~3.1.0", - "engine.io": "~3.2.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.1.1", - "socket.io-parser": "~3.2.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "socket.io-adapter": { - "version": "1.1.1", - "bundled": true - }, - "socket.io-client": { - "version": "2.1.1", - "bundled": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "engine.io-client": "~3.2.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.2.0", - "to-array": "0.1.4" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.1", - "bundled": true - }, - "debug": { - "version": "3.1.0", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "socket.io-parser": { - "version": "3.2.0", - "bundled": true, - "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" - }, - "dependencies": { - "component-emitter": { - "version": "1.2.1", - "bundled": true - }, - "debug": { - "version": "3.1.0", - "bundled": true, - "requires": { - "ms": "2.0.0" - } - }, - "isarray": { - "version": "2.0.1", - "bundled": true - } - } - }, - "source-map": { - "version": "0.6.1", - "bundled": true - }, - "source-map-resolve": { - "version": "0.5.2", - "bundled": true, - "requires": { - "atob": "^2.1.1", - "decode-uri-component": "^0.2.0", - "resolve-url": "^0.2.1", - "source-map-url": "^0.4.0", - "urix": "^0.1.0" - } - }, - "source-map-url": { - "version": "0.4.0", - "bundled": true - }, - "split-string": { - "version": "3.1.0", - "bundled": true, - "requires": { - "extend-shallow": "^3.0.0" - }, - "dependencies": { - "extend-shallow": { - "version": "3.0.2", - "bundled": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - } - } - }, - "sprintf-js": { - "version": "1.0.3", - "bundled": true - }, - "static-extend": { - "version": "0.1.2", - "bundled": true, - "requires": { - "define-property": "^0.2.5", - "object-copy": "^0.1.0" - } - }, - "statuses": { - "version": "1.5.0", - "bundled": true - }, - "streamroller": { - "version": "1.0.4", - "bundled": true, - "requires": { - "async": "^2.6.1", - "date-format": "^2.0.0", - "debug": "^3.1.0", - "fs-extra": "^7.0.0", - "lodash": "^4.17.10" - }, - "dependencies": { - "debug": { - "version": "3.2.6", - "bundled": true, - "requires": { - "ms": "^2.1.1" - } - }, - "ms": { - "version": "2.1.1", - "bundled": true - } - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "bundled": true - }, - "tmp": { - "version": "0.0.33", - "bundled": true, - "requires": { - "os-tmpdir": "~1.0.2" - } - }, - "to-array": { - "version": "0.1.4", - "bundled": true - }, - "to-object-path": { - "version": "0.3.0", - "bundled": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "to-regex": { - "version": "3.0.2", - "bundled": true, - "requires": { - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "regex-not": "^1.0.2", - "safe-regex": "^1.1.0" - }, - "dependencies": { - "define-property": { - "version": "2.0.2", - "bundled": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "bundled": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "bundled": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "bundled": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "bundled": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "kind-of": { - "version": "6.0.2", - "bundled": true - } - } - }, - "to-regex-range": { - "version": "2.1.1", - "bundled": true, - "requires": { - "is-number": "^3.0.0", - "repeat-string": "^1.6.1" - } - }, - "tslib": { - "version": "1.8.1", - "bundled": true - }, - "tslint": { - "version": "5.11.0", - "bundled": true, - "requires": { - "babel-code-frame": "^6.22.0", - "builtin-modules": "^1.1.1", - "chalk": "^2.3.0", - "commander": "^2.12.1", - "diff": "^3.2.0", - "glob": "^7.1.1", - "js-yaml": "^3.7.0", - "minimatch": "^3.0.4", - "resolve": "^1.3.2", - "semver": "^5.3.0", - "tslib": "^1.8.0", - "tsutils": "^2.27.2" - }, - "dependencies": { - "tsutils": { - "version": "2.28.0", - "bundled": true, - "requires": { - "tslib": "^1.8.1" - } - } - } - }, - "type-is": { - "version": "1.6.16", - "bundled": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.18" - } - }, - "typescript": { - "version": "2.9.2", - "bundled": true - }, - "ultron": { - "version": "1.1.1", - "bundled": true - }, - "underscore": { - "version": "1.8.3", - "bundled": true - }, - "union-value": { - "version": "1.0.0", - "bundled": true, - "requires": { - "arr-union": "^3.1.0", - "get-value": "^2.0.6", - "is-extendable": "^0.1.1", - "set-value": "^0.4.3" - }, - "dependencies": { - "set-value": { - "version": "0.4.3", - "bundled": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-extendable": "^0.1.1", - "is-plain-object": "^2.0.1", - "to-object-path": "^0.3.0" - } - } - } - }, - "universalify": { - "version": "0.1.2", - "bundled": true - }, - "unpipe": { - "version": "1.0.0", - "bundled": true - }, - "unset-value": { - "version": "1.0.0", - "bundled": true, - "requires": { - "has-value": "^0.3.1", - "isobject": "^3.0.0" - }, - "dependencies": { - "has-value": { - "version": "0.3.1", - "bundled": true, - "requires": { - "get-value": "^2.0.3", - "has-values": "^0.1.4", - "isobject": "^2.0.0" - }, - "dependencies": { - "isobject": { - "version": "2.1.0", - "bundled": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, - "has-values": { - "version": "0.1.4", - "bundled": true - } - } - }, - "upath": { - "version": "1.1.2", - "bundled": true - }, - "urix": { - "version": "0.1.0", - "bundled": true - }, - "use": { - "version": "3.1.1", - "bundled": true - }, - "useragent": { - "version": "2.3.0", - "bundled": true, - "requires": { - "lru-cache": "4.1.x", - "tmp": "0.0.x" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true - }, - "utils-merge": { - "version": "1.0.1", - "bundled": true - }, - "void-elements": { - "version": "2.0.1", - "bundled": true - }, - "walkdir": { - "version": "0.0.12", - "bundled": true - }, - "which": { - "version": "1.3.1", - "bundled": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wordwrap": { - "version": "0.0.3", - "bundled": true - }, - "wrappy": { - "version": "1.0.2", - "bundled": true - }, - "ws": { - "version": "3.3.3", - "bundled": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - }, - "xmlhttprequest-ssl": { - "version": "1.5.5", - "bundled": true - }, - "yallist": { - "version": "2.1.2", - "bundled": true - }, - "yeast": { - "version": "0.1.2", - "bundled": true - } - } + "version": "file:../jalhyd" }, "jasmine": { "version": "2.8.0", @@ -12709,6 +10536,11 @@ "ajv-keywords": "^3.1.0" } }, + "screenfull": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/screenfull/-/screenfull-4.2.0.tgz", + "integrity": "sha512-qpyI9XbwuMJElWRP5vTgxkFAl4k7HpyhIqBFOZEwX9QBXn0MAuRSpn7LOc6/4CeSwoz61oBu1VPV+2fbIWC+5Q==" + }, "scss-tokenizer": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", -- GitLab From 1d9cd6b06d81a025015392b8aaed9290600b44fc Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Fri, 24 May 2019 17:04:36 +0200 Subject: [PATCH 3/9] =?UTF-8?q?Suite=20#213=20:=20suppression=20du=20lissa?= =?UTF-8?q?ge=20sur=20le=20graphique=20de=20param=C3=A8tres=20vari=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dialog-edit-param-values.component.ts | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts index bb9168725..5bc041da5 100644 --- a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts +++ b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts @@ -104,6 +104,11 @@ export class DialogEditParamValuesComponent implements OnInit { } }] }, + elements: { + line: { + tension: 0 + } + }, tooltips: { callbacks: { label: function(tooltipItem) { -- GitLab From 7f206e034e0301f7ad59906ac7b049a9d4646f8f Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Fri, 24 May 2019 17:38:05 +0200 Subject: [PATCH 4/9] =?UTF-8?q?Modale=20de=20param=C3=A8tre=20vari=C3=A9:?= =?UTF-8?q?=20d=C3=A9lection=20de=20la=20strat=C3=A9gie=20d'extension?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dialog-edit-param-values.component.html | 9 +++++++ .../dialog-edit-param-values.component.ts | 27 ++++++++++++++++++- .../param-field-line.component.ts | 2 +- src/locale/messages.en.json | 3 +++ src/locale/messages.fr.json | 3 +++ 5 files changed, 42 insertions(+), 2 deletions(-) diff --git a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.html b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.html index 8fbe604a5..43f8a3a0f 100644 --- a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.html +++ b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.html @@ -105,6 +105,15 @@ </form> </div> + <mat-form-field> + <mat-select [placeholder]="uitextExtensionStrategy" [(value)]="selectedExtensionStrategy" + data-testid="variable-extension-strategy-select"> + <mat-option *ngFor="let e of extensionStrategies" [value]="e.value"> + {{ e.label }} + </mat-option> + </mat-select> + </mat-form-field> + </div> <div mat-dialog-content *ngIf="viewChart"> diff --git a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts index 5bc041da5..803de5b0b 100644 --- a/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts +++ b/src/app/components/dialog-edit-param-values/dialog-edit-param-values.component.ts @@ -3,7 +3,7 @@ import { Inject, Component, OnInit } from "@angular/core"; import { FormBuilder, FormGroup, Validators } from "@angular/forms"; import { I18nService } from "../../services/internationalisation/internationalisation.service"; import { NgParameter } from "../../formulaire/ngparam"; -import { ParamValueMode } from "jalhyd"; +import { ParamValueMode, ExtensionStrategy } from "jalhyd"; import { sprintf } from "sprintf-js"; import { ApplicationSetupService } from "../../services/app-setup/app-setup.service"; @@ -23,6 +23,9 @@ export class DialogEditParamValuesComponent implements OnInit { /** available decimal separators */ public decimalSeparators: { label: string; value: string; }[]; + /** available extension strategies */ + public extensionStrategies: { value: ExtensionStrategy; label: string; }[]; + /** current decimal separator */ public decimalSeparator: string; @@ -76,6 +79,16 @@ export class DialogEditParamValuesComponent implements OnInit { } ]; this.decimalSeparator = this.decimalSeparators[0].value; + this.extensionStrategies = [ + { + value: ExtensionStrategy.REPEAT_LAST, + label: this.intlService.localizeText("INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_REPEAT_LAST") + }, + { + value: ExtensionStrategy.RECYCLE, + label: this.intlService.localizeText("INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_RECYCLE") + } + ]; // chart configuration const nDigits = this.appSetupService.displayDigits; @@ -171,6 +184,14 @@ export class DialogEditParamValuesComponent implements OnInit { this.param.valueMode = v; } + public get selectedExtensionStrategy() { + return this.param.paramDefinition.extensionStrategy; + } + + public set selectedExtensionStrategy(es) { + this.param.paramDefinition.extensionStrategy = es; + } + public get isMinMax() { return this.param.valueMode === ParamValueMode.MINMAX; } @@ -412,6 +433,10 @@ export class DialogEditParamValuesComponent implements OnInit { return this.intlService.localizeText("INFO_PARAMFIELD_PARAMVARIER_IMPORT_FICHIER"); } + public get uitextExtensionStrategy() { + return this.intlService.localizeText("INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY"); + } + public ngOnInit() { this.initVariableValues(); } diff --git a/src/app/components/param-field-line/param-field-line.component.ts b/src/app/components/param-field-line/param-field-line.component.ts index df956b33a..5b105c01f 100644 --- a/src/app/components/param-field-line/param-field-line.component.ts +++ b/src/app/components/param-field-line/param-field-line.component.ts @@ -197,7 +197,7 @@ export class ParamFieldLineComponent implements OnChanges { let ret = true; if (this.param.paramDefinition.isCalculated) { const nub = this.param.paramDefinition.parentNub; - const p = nub.findFirstSingleParameter(this.param.paramDefinition); + const p = nub.findFirstCalculableParameter(this.param.paramDefinition); ret = (p !== undefined); } return ret; diff --git a/src/locale/messages.en.json b/src/locale/messages.en.json index b521d5451..32364c098 100644 --- a/src/locale/messages.en.json +++ b/src/locale/messages.en.json @@ -212,6 +212,9 @@ "INFO_PARAMFIELD_PARAMFIXE": "Fixed", "INFO_PARAMFIELD_PARAMLIE_LABEL": "Linked parameter", "INFO_PARAMFIELD_PARAMLIE": "Link", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY": "Values list extension strategy", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_REPEAT_LAST": "Repeat last value", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_RECYCLE": "Recycle values", "INFO_PARAMFIELD_PARAMVARIER_IMPORT_FICHIER": "Import file", "INFO_PARAMFIELD_PARAMVARIER_MINMAXSTEP": "min: %s, max: %s, step: %s", "INFO_PARAMFIELD_PARAMVARIER_MODE": "Mode", diff --git a/src/locale/messages.fr.json b/src/locale/messages.fr.json index efa2d9ba8..7228186b3 100644 --- a/src/locale/messages.fr.json +++ b/src/locale/messages.fr.json @@ -212,6 +212,9 @@ "INFO_PARAMFIELD_PARAMFIXE": "fixé", "INFO_PARAMFIELD_PARAMLIE_LABEL": "Paramètre lié", "INFO_PARAMFIELD_PARAMLIE": "lié", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY": "Stratégie d'extension de la liste de valeurs", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_REPEAT_LAST": "Répéter la dernière valeur", + "INFO_PARAMFIELD_PARAMVARIER_EXT_STRATEGY_RECYCLE": "Réutiliser les valeurs", "INFO_PARAMFIELD_PARAMVARIER_IMPORT_FICHIER": "Importer un fichier", "INFO_PARAMFIELD_PARAMVARIER_MINMAXSTEP": "min : %s, max : %s, pas : %s", "INFO_PARAMFIELD_PARAMVARIER_MODE": "Mode", -- GitLab From 4359a78290ed6b507fea68b40bd7fc9608d4cb6c Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Mon, 27 May 2019 12:22:40 +0200 Subject: [PATCH 5/9] =?UTF-8?q?R=C3=A9sultats=20des=20param=C3=A8tres=20va?= =?UTF-8?q?riables=20multiples?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../fixedvar-results/var-results.component.ts | 87 +++++++++++------- .../remous-results.component.ts | 2 +- .../definition/form-compute-fixedvar.ts | 28 +++--- .../form-compute-section-parametree.ts | 6 +- .../formulaire/definition/form-def-section.ts | 4 +- src/app/formulaire/ngparam.ts | 8 ++ src/app/results/remous-results.ts | 2 +- src/app/results/var-results.ts | 88 ++++++++++--------- 8 files changed, 130 insertions(+), 95 deletions(-) diff --git a/src/app/components/fixedvar-results/var-results.component.ts b/src/app/components/fixedvar-results/var-results.component.ts index 2151ddd92..f737e1d4c 100644 --- a/src/app/components/fixedvar-results/var-results.component.ts +++ b/src/app/components/fixedvar-results/var-results.component.ts @@ -15,6 +15,9 @@ import { ResultsComponent } from "./results.component"; }) export class VarResultsComponent extends ResultsComponent { + /** size of the longest variated parameter */ + public size: number; + /** résultats non mis en forme */ protected _varResults: VarResults; @@ -33,54 +36,56 @@ export class VarResultsComponent extends ResultsComponent { super(); } + /** Refreshes results and builds the dataset */ public set results(r: VarResults) { this._varResults = r; - this._results = []; this._headers = []; + const nDigits = this.appSetupService.displayDigits; + if (this._varResults) { - const nDigits = this.appSetupService.displayDigits; - let i = 0; - for (const x of this._varResults.variatedParameter.valuesIterator) { - const pval = x.toFixed(nDigits); - this._results.push({ "param": pval, "result": this._varResults.resultElements[i] }); - i++; + // A. build headers + for (let i = 0; i < this._varResults.variatedParameters.length; i++) { + this._headers.push(this._varResults.variableParamHeaders[i]); } - - this._headers.push(this._varResults.variableParamHeader); if (this._varResults.calculatedParameterHeader) { this._headers.push(this._varResults.calculatedParameterHeader); } - this._headers = this._headers.concat(this._varResults.extraResultHeaders); - } - } - public get hasResults(): boolean { - return this._varResults && this._varResults.hasResults; - } - - public get headers() { - return this._headers; - } + // B. pre-extract variable parameters valueslet longest = 0; + const varValues = []; + // find longest list + this.size = 0; + for (let i = 0; i < this._varResults.variatedParameters.length; i++) { + const vs = this._varResults.variatedParameters[i].valuesIterator.count(); + if (vs > this.size) { + this.size = vs; + } + } + // get extended values lists for each variable parameter + for (const v of this._varResults.variatedParameters) { + const vv = []; + const iter = v.getExtendedValuesIterator(this.size); + while (iter.hasNext) { + const nv = iter.next(); + vv.push(nv.value.toFixed(nDigits)); + } + varValues.push(vv); + } - /** - * Returns a combination of and results and extraResults for mat-table - */ - public get dataSet() { - const data = []; - const nDigits = this.appSetupService.displayDigits; - if (this._results) { - for (let i = 0; i < this._results.length; i++) { - const r = this._results[i]; + // C. build dataset + for (let i = 0; i < this._varResults.resultElements.length; i++) { const re: ResultElement = this._varResults.resultElements[i]; - if (re) { - // for each computation step, build ordered list of : variable param value; result; extra results + // build ordered list of : variable params values; result; extra results + const list = []; - // 1. variable param value - const list = [ r.param ]; + // 1. variable params values for this computation step + for (const vv of varValues) { + list.push(vv[i]); + } // 2. result if (re.vCalc) { // sometimes does no exist (ex: Section Parametree) @@ -97,11 +102,25 @@ export class VarResultsComponent extends ResultsComponent { } } - data.push(list); + this._results.push(list); } } } - return data; + } + + public get hasResults(): boolean { + return this._varResults && this._varResults.hasResults; + } + + public get headers() { + return this._headers; + } + + /** + * Returns a combination of results and extraResults for mat-table + */ + public get dataSet() { + return this._results; } public exportAsSpreadsheet() { diff --git a/src/app/components/remous-results/remous-results.component.ts b/src/app/components/remous-results/remous-results.component.ts index f11fa831b..f5328dc13 100644 --- a/src/app/components/remous-results/remous-results.component.ts +++ b/src/app/components/remous-results/remous-results.component.ts @@ -368,7 +368,7 @@ export class RemousResultsComponent extends ResultsComponent implements DoCheck } private get abscisseIterator(): INumberIterator { - return this._remousResults.varResults.variatedParameter.paramDefinition.valuesIterator; + return this._remousResults.varResults.variatedParameters[0].paramDefinition.valuesIterator; } private connectRessaut(lineFlu: LineData, lineTor: LineData) { diff --git a/src/app/formulaire/definition/form-compute-fixedvar.ts b/src/app/formulaire/definition/form-compute-fixedvar.ts index 875a52747..08c12186f 100644 --- a/src/app/formulaire/definition/form-compute-fixedvar.ts +++ b/src/app/formulaire/definition/form-compute-fixedvar.ts @@ -1,4 +1,4 @@ -import { Nub, Result, ComputeNode } from "jalhyd"; +import { Nub } from "jalhyd"; import { FormCompute } from "./form-compute"; import { NgParameter, ParamRadioConfig } from "../ngparam"; @@ -14,18 +14,18 @@ export class FormComputeFixedVar extends FormCompute { return this._formResult as FormResultFixedVar; } - private getVariatedParameter(): NgParameter { - const res = this._formBase.getDisplayedParamFromState(ParamRadioConfig.VAR); - if (res !== undefined) { - return res; - } - - const pms = this._formBase.getDisplayedParamListFromState(ParamRadioConfig.LINK); - for (const p of pms) { - if (p.paramDefinition.hasMultipleValues) { - return p; + private getVariatedParameters(): NgParameter[] { + let res: NgParameter[] = []; + res = this._formBase.getDisplayedParamListFromState(ParamRadioConfig.VAR); + if (res.length === 0) { + const pms = this._formBase.getDisplayedParamListFromState(ParamRadioConfig.LINK); + for (const p of pms) { + if (p.paramDefinition.hasMultipleValues) { + res.push(p); + } } } + return res; } private getComputedParameter(): NgParameter { @@ -42,15 +42,15 @@ export class FormComputeFixedVar extends FormCompute { const computedParam: NgParameter = this.getComputedParameter(); this.formResult.resetResults(); // to avoid adding fixed parameters more than once (see below) this.formResult.addFixedParameters(); - const varParam: NgParameter = this.getVariatedParameter(); + const varParams: NgParameter[] = this.getVariatedParameters(); - if (varParam === undefined) { + if (varParams.length === 0) { // pas de paramètre à varier this.formResult.fixedResults.result = nub.result; this.formResult.fixedResults.calculatedParameter = computedParam; } else { // il y a un paramètre à varier - this.formResult.varResults.variatedParameter = varParam; + this.formResult.varResults.variatedParameters = varParams; this.formResult.varResults.calculatedParameter = computedParam; this.formResult.varResults.result = nub.result; diff --git a/src/app/formulaire/definition/form-compute-section-parametree.ts b/src/app/formulaire/definition/form-compute-section-parametree.ts index d30352a57..3e833eed4 100644 --- a/src/app/formulaire/definition/form-compute-section-parametree.ts +++ b/src/app/formulaire/definition/form-compute-section-parametree.ts @@ -39,10 +39,10 @@ export class FormComputeSectionParametree extends FormCompute { const sect: acSection = sectNub.section; this._sectionResults.section = sect; - const varParam = this._formSection.getSectionVariatedParameter(); - if (varParam) { + const varParams = this._formSection.getSectionVariatedParameters(); + if (varParams.length > 0) { // résultats variés avec tous les résultats complémentaires - this._varResults.variatedParameter = varParam; + this._varResults.variatedParameters = varParams; this._varResults.result = sectNub.result; this._varResults.update(false); } else { diff --git a/src/app/formulaire/definition/form-def-section.ts b/src/app/formulaire/definition/form-def-section.ts index 309a06613..a2c011e8d 100644 --- a/src/app/formulaire/definition/form-def-section.ts +++ b/src/app/formulaire/definition/form-def-section.ts @@ -18,8 +18,8 @@ export class FormDefSection { return this._sectionSourceId !== undefined; } - public getSectionVariatedParameter(): NgParameter { - return this._formBase.getDisplayedParamFromState(ParamRadioConfig.VAR); + public getSectionVariatedParameters(): NgParameter[] { + return this._formBase.getDisplayedParamListFromState(ParamRadioConfig.VAR); } public getSectionComputedParam(): { symbol: string, label: string } { diff --git a/src/app/formulaire/ngparam.ts b/src/app/formulaire/ngparam.ts index 0154d6ae4..679d3b1f3 100644 --- a/src/app/formulaire/ngparam.ts +++ b/src/app/formulaire/ngparam.ts @@ -237,6 +237,10 @@ export class NgParameter extends InputField implements Observer { return this._paramDef.valueList; } + public get inferredValuesList() { + return this._paramDef.getInferredValuesList(); + } + public get isValid() { if (this.radioState === undefined) { return false; @@ -296,6 +300,10 @@ export class NgParameter extends InputField implements Observer { } } + public getExtendedValuesIterator(size: number): INumberIterator { + return this._paramDef.getExtendedValuesIterator(size); + } + /** * notification envoyée après la modification de la valeur du paramètre */ diff --git a/src/app/results/remous-results.ts b/src/app/results/remous-results.ts index 1127bf61f..6d6e1f6e1 100644 --- a/src/app/results/remous-results.ts +++ b/src/app/results/remous-results.ts @@ -137,7 +137,7 @@ export class RemousResults extends CalculatorResults { this._log.addLog(this._result.globalLog); this._varResults = new VarResults(); - this._varResults.variatedParameter = new NgParameter(this._xValues, undefined); + this._varResults.variatedParameters = [ new NgParameter(this._xValues, undefined) ]; this._varResults.calculatedParameter = new NgParameter(new ParamDefinition(null, "Ligne d'eau", ParamDomainValue.POS_NULL), undefined); this._varResults.result = this._result; diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts index 891f7c008..f00cfdabb 100644 --- a/src/app/results/var-results.ts +++ b/src/app/results/var-results.ts @@ -8,14 +8,14 @@ import { GraphType } from "./graph-type"; export class VarResults extends CalculatedParamResults implements PlottableData { /** - * paramètre varié + * paramètres variés */ - private _variatedParam: NgParameter; + private _variatedParams: NgParameter[]; /** - * titre de la 1ère colonne des résultats variés + * titre des colonnes des résultats variés */ - private _variableParamHeader: string; + private _variableParamHeaders: string[]; /** * clés des résultats complémentaires @@ -53,23 +53,25 @@ export class VarResults extends CalculatedParamResults implements PlottableData public reset() { super.reset(); - this._variableParamHeader = undefined; + this._variableParamHeaders = []; this._extraResultHeaders = []; this.extraResultKeys = []; this._yValues = []; } - public get variatedParameter(): NgParameter { - return this._variatedParam; + public get variatedParameters(): NgParameter[] { + return this._variatedParams; } - public set variatedParameter(p: NgParameter) { - this._variatedParam = p; - this._variableParamHeader = CalculatorResults.paramLabel(this._variatedParam, true); + public set variatedParameters(p: NgParameter[]) { + this._variatedParams = p; + this._variableParamHeaders = this._variatedParams.map((v) => { + return CalculatorResults.paramLabel(v, true); + }); } - public get variableParamHeader() { - return this._variableParamHeader; + public get variableParamHeaders() { + return this._variableParamHeaders; } public get yValues() { @@ -88,20 +90,21 @@ export class VarResults extends CalculatedParamResults implements PlottableData // 1. calculated param ? if (this.calculatedParameter && this.calculatedParameter.symbol === symbol) { return this.calculatedParameterHeader; - } else + } // 2. variated param ? - if (this.variatedParameter.symbol === symbol) { - return this.variableParamHeader; - } else { - // 3. Result element ? - // calculator type for translation - const sn = this.result.sourceNub; - let ct = sn.calcType; - if (sn.parent) { - ct = sn.parent.calcType; + for (let i = 0; i < this.variatedParameters.length; i++) { + if (this._variatedParams[i].symbol === symbol) { + return this.variableParamHeaders[i]; } - return ServiceFactory.instance.formulaireService.expandVariableNameAndUnit(ct, symbol); } + // 3. Result element ? + // calculator type for translation + const sn = this.result.sourceNub; + let ct = sn.calcType; + if (sn.parent) { + ct = sn.parent.calcType; + } + return ServiceFactory.instance.formulaireService.expandVariableNameAndUnit(ct, symbol); } /** @@ -117,19 +120,20 @@ export class VarResults extends CalculatedParamResults implements PlottableData series.push(r.vCalc); } } - } else + } // 2. variated param ? - if (this.variatedParameter.symbol === symbol) { - for (const v of this.variatedParameter.valuesIterator) { - series.push(v); + for (let i = 0; i < this.variatedParameters.length; i++) { + if (this._variatedParams[i].symbol === symbol) { + for (const v of this.variatedParameters[i].valuesIterator) { + series.push(v); + } } - } else { - // 3. Result element ? - for (const r of this.result.resultElements) { // re:ResultElement - for (const k in r.extraResults) { - if (k === symbol) { - series.push(r.extraResults[k]); - } + } + // 3. Result element ? + for (const r of this.result.resultElements) { // re:ResultElement + for (const k in r.extraResults) { + if (k === symbol) { + series.push(r.extraResults[k]); } } } @@ -146,7 +150,9 @@ export class VarResults extends CalculatedParamResults implements PlottableData if (this.calculatedParameter) { res.push(this.calculatedParameter.symbol); } - res.push(this.variatedParameter.symbol); + for (const v of this._variatedParams) { + res.push(v.symbol); + } for (const erk of this.extraResultKeys) { res.push(erk); } @@ -154,8 +160,10 @@ export class VarResults extends CalculatedParamResults implements PlottableData } public update(displaySymbol: boolean) { - if (this._variableParamHeader === undefined) { - this._variableParamHeader = CalculatorResults.paramLabel(this.variatedParameter, displaySymbol); + if (this._variableParamHeaders.length === 0) { + this._variableParamHeaders = this._variatedParams.map((v) => { + return CalculatorResults.paramLabel(v, true); + }); } // valeurs du paramètre à calculer @@ -181,7 +189,7 @@ export class VarResults extends CalculatedParamResults implements PlottableData } else if (this.extraResultKeys.length > 0) { defaultY = this.extraResultKeys[0]; } - this.chartX = this.chartX || this.variatedParameter.symbol; + this.chartX = this.chartX || this.variatedParameters[0].symbol; this.chartY = defaultY; // calculator type for translation @@ -202,10 +210,10 @@ export class VarResults extends CalculatedParamResults implements PlottableData // (might be the previous variated parameter, that is not accessible anymore) const aca = this.getAvailableChartAxis(); if (! aca.includes(this.chartX)) { - this.chartX = this.variatedParameter.symbol; + this.chartX = this.variatedParameters[0].symbol; } if (! aca.includes(this.chartY)) { - this.chartY = this.variatedParameter.symbol; + this.chartY = this.variatedParameters[0].symbol; } } } -- GitLab From cb132c956425eaf2d1f9fcb0978aeb8beeba93e2 Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Mon, 27 May 2019 14:13:54 +0200 Subject: [PATCH 6/9] =?UTF-8?q?R=C3=A9sultats=20multivari=C3=A9s:=20correc?= =?UTF-8?q?tion=20nombre=20d'abscisses?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/results/var-results.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts index f00cfdabb..1807b0f02 100644 --- a/src/app/results/var-results.ts +++ b/src/app/results/var-results.ts @@ -41,6 +41,9 @@ export class VarResults extends CalculatedParamResults implements PlottableData */ public chartY: string; + /** size of the longest variated parameter */ + public size: number; + /** * tableau des ordonnées du graphe des résultats variés */ @@ -124,7 +127,8 @@ export class VarResults extends CalculatedParamResults implements PlottableData // 2. variated param ? for (let i = 0; i < this.variatedParameters.length; i++) { if (this._variatedParams[i].symbol === symbol) { - for (const v of this.variatedParameters[i].valuesIterator) { + const iter = this.variatedParameters[i].getExtendedValuesIterator(this.size); + for (const v of iter) { series.push(v); } } @@ -166,6 +170,15 @@ export class VarResults extends CalculatedParamResults implements PlottableData }); } + // liste la plus longue + this.size = 0; + for (const v of this._variatedParams) { + const s = v.valuesIterator.count(); + if (s > this.size) { + this.size = s; + } + } + // valeurs du paramètre à calculer for (const r of this.result.resultElements) { this._yValues.push(r.vCalc); -- GitLab From e1ba75a4da96e9371de1f326ec3f87aefabd8e1a Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Mon, 27 May 2019 14:36:45 +0200 Subject: [PATCH 7/9] =?UTF-8?q?Graphique=20de=20r=C3=A9sultats=20multivari?= =?UTF-8?q?=C3=A9s:=20le=20param=C3=A8tre=20le=20plus=20long=20est=20chois?= =?UTF-8?q?i=20comme=20abscisse=20par=20d=C3=A9faut?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/app/results/var-results.ts | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts index 1807b0f02..4f7fcf28a 100644 --- a/src/app/results/var-results.ts +++ b/src/app/results/var-results.ts @@ -44,6 +44,9 @@ export class VarResults extends CalculatedParamResults implements PlottableData /** size of the longest variated parameter */ public size: number; + /** index of the longest variated parameter */ + public longest: number; + /** * tableau des ordonnées du graphe des résultats variés */ @@ -60,6 +63,7 @@ export class VarResults extends CalculatedParamResults implements PlottableData this._extraResultHeaders = []; this.extraResultKeys = []; this._yValues = []; + this.longest = 0; } public get variatedParameters(): NgParameter[] { @@ -172,11 +176,14 @@ export class VarResults extends CalculatedParamResults implements PlottableData // liste la plus longue this.size = 0; + let i = 0; for (const v of this._variatedParams) { const s = v.valuesIterator.count(); if (s > this.size) { this.size = s; + this.longest = i; } + i++; } // valeurs du paramètre à calculer @@ -202,7 +209,7 @@ export class VarResults extends CalculatedParamResults implements PlottableData } else if (this.extraResultKeys.length > 0) { defaultY = this.extraResultKeys[0]; } - this.chartX = this.chartX || this.variatedParameters[0].symbol; + this.chartX = this.chartX || this.variatedParameters[this.longest].symbol; this.chartY = defaultY; // calculator type for translation -- GitLab From 83a4732e64ea8998da1dd0ac867701b77b6ce915 Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Mon, 27 May 2019 15:02:59 +0200 Subject: [PATCH 8/9] =?UTF-8?q?Axes=20des=20graphiques:=20nom=20complet=20?= =?UTF-8?q?avec=20unit=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../results-graph/results-graph.component.ts | 23 +++++++++++++++---- src/app/results/plottable-data.ts | 8 ++++++- src/app/results/plottable-pab-results.ts | 6 ++++- src/app/results/var-results.ts | 13 +++++++++-- 4 files changed, 41 insertions(+), 9 deletions(-) diff --git a/src/app/components/results-graph/results-graph.component.ts b/src/app/components/results-graph/results-graph.component.ts index efd025288..9cc50d8e7 100644 --- a/src/app/components/results-graph/results-graph.component.ts +++ b/src/app/components/results-graph/results-graph.component.ts @@ -104,7 +104,7 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont /** * Returns a human readable description of any param / result symbol */ - public getChartAxisLabel(symbol: string) { + public getChartAxisLabel(symbol: string): string { return this._results.getChartAxisLabel(symbol); } @@ -135,6 +135,19 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont this._graphTypeComponent.addObserver(this); } + /** + * Calls getChartAxisLabel() and removes the symbol prefix + * (cannot rebuild a clean label here) + */ + private axisLabelWithoutSymbol(symbol: string) { + let l = this._results.getChartAxisLabel(symbol); + const i = l.indexOf(": "); + if (i !== -1) { + l = l.substring(i + 2); + } + return l; + } + /** forces Angular to rebuild the chart @see bug #137 */ private forceRebuild() { this.displayChart = false; @@ -172,13 +185,13 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont }, scaleLabel: { display: true, - labelString: this.chartX + labelString: this.axisLabelWithoutSymbol(this.chartX) } }], yAxes: [{ scaleLabel: { display: true, - labelString: this.chartY + labelString: this.axisLabelWithoutSymbol(this.chartY) } }] }; @@ -224,7 +237,7 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont }, scaleLabel: { display: true, - labelString: this.chartX + labelString: this.axisLabelWithoutSymbol(this.chartX) } }], yAxes: [{ @@ -235,7 +248,7 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont }, scaleLabel: { display: true, - labelString: this.chartY + labelString: this.axisLabelWithoutSymbol(this.chartY) } }] }; diff --git a/src/app/results/plottable-data.ts b/src/app/results/plottable-data.ts index 609c388aa..d750529b7 100644 --- a/src/app/results/plottable-data.ts +++ b/src/app/results/plottable-data.ts @@ -14,7 +14,13 @@ export interface PlottableData { * (usually a variable symbol like "Q", "Z1"…) * @param symbol parameter / result symbol (ex: "Q") */ - getChartAxisLabel(symbol: string); + getChartAxisLabel(symbol: string): string; + + /** + * Returns the translated name of the given symbol (usually an extraResult) + * if available, with its unit, but without the symbol itself + */ + expandLabelFromSymbol(symbol: string): string; /** * Returns a list of plottable parameters / result elements, that can be defined diff --git a/src/app/results/plottable-pab-results.ts b/src/app/results/plottable-pab-results.ts index c8cdd2964..b8bfe90c9 100644 --- a/src/app/results/plottable-pab-results.ts +++ b/src/app/results/plottable-pab-results.ts @@ -29,10 +29,14 @@ export class PlottablePabResults implements PlottableData { * Returns the label to display, for an element of getAvailableChartAxis() * @param symbol parameter / result symbol (ex: "Q") */ - public getChartAxisLabel(symbol: string) { + public getChartAxisLabel(symbol: string): string { return this.pabResults.headers[this.pabResults.columns.indexOf(symbol)]; } + public expandLabelFromSymbol(symbol: string): string { + return symbol; + } + /** * Returns a list of plottable parameters / result elements, that can be defined * as X or Y chart axis diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts index 4f7fcf28a..95898befc 100644 --- a/src/app/results/var-results.ts +++ b/src/app/results/var-results.ts @@ -93,7 +93,7 @@ export class VarResults extends CalculatedParamResults implements PlottableData return this._extraResultHeaders; } - public getChartAxisLabel(symbol: string) { + public getChartAxisLabel(symbol: string): string { // 1. calculated param ? if (this.calculatedParameter && this.calculatedParameter.symbol === symbol) { return this.calculatedParameterHeader; @@ -104,7 +104,16 @@ export class VarResults extends CalculatedParamResults implements PlottableData return this.variableParamHeaders[i]; } } - // 3. Result element ? + // 3. Result element + return this.expandLabelFromSymbol(symbol); + + } + + /** + * Returns the translated name of the given symbol (usually an extraResult) with + * its unit, but without the symbol itself + */ + public expandLabelFromSymbol(symbol: string): string { // calculator type for translation const sn = this.result.sourceNub; let ct = sn.calcType; -- GitLab From 2cadfcac11efb57c34b9864bf689fc8e0b7bf650 Mon Sep 17 00:00:00 2001 From: "mathias.chouet" <mathias.chouet@irstea.fr> Date: Mon, 27 May 2019 15:34:01 +0200 Subject: [PATCH 9/9] =?UTF-8?q?Graphiques:=20am=C3=A9lioration=20des=20inf?= =?UTF-8?q?obulles=20pour=20les=20param=C3=A8tres=20multivari=C3=A9s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../results-graph/results-graph.component.ts | 40 +++++++++++++++++-- src/app/results/plottable-data.ts | 6 +++ src/app/results/plottable-pab-results.ts | 5 +++ src/app/results/var-results.ts | 10 +++++ 4 files changed, 57 insertions(+), 4 deletions(-) diff --git a/src/app/components/results-graph/results-graph.component.ts b/src/app/components/results-graph/results-graph.component.ts index 9cc50d8e7..5cc0a4590 100644 --- a/src/app/components/results-graph/results-graph.component.ts +++ b/src/app/components/results-graph/results-graph.component.ts @@ -195,10 +195,26 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont } }] }; + const that = this; this.graph_options["tooltips"] = { + displayColors: false, callbacks: { - label: function(tooltipItem, data) { - return Number(tooltipItem.yLabel).toFixed(nDigits); + title: (tooltipItems, data) => { + return this.chartY + " = " + Number(tooltipItems[0].yLabel).toFixed(nDigits); + }, + label: (tooltipItem, data) => { + const lines: string[] = []; + for (const v of that._results.getVariatingParametersSymbols()) { + const series = that._results.getValuesSeries(v); + const line = v + " = " + series[tooltipItem.index].toFixed(nDigits); + if (v === this.chartX) { + lines.unshift(""); + lines.unshift(line); + } else { + lines.push(line); + } + } + return lines; } } }; @@ -252,10 +268,26 @@ export class ResultsGraphComponent extends ResultsComponent implements AfterCont } }] }; + const that = this; this.graph_options["tooltips"] = { + displayColors: false, callbacks: { - label: function(tooltipItem, data) { - return "(" + Number(tooltipItem.xLabel).toFixed(nDigits) + ", " + Number(tooltipItem.yLabel).toFixed(nDigits) + ")"; + title: (tooltipItems, data) => { + return this.chartY + " = " + Number(tooltipItems[0].yLabel).toFixed(nDigits); + }, + label: (tooltipItem, data) => { + const lines: string[] = []; + for (const v of that._results.getVariatingParametersSymbols()) { + const series = that._results.getValuesSeries(v); + const line = v + " = " + series[tooltipItem.index].toFixed(nDigits); + if (v === this.chartX) { + lines.unshift(""); + lines.unshift(line); + } else { + lines.push(line); + } + } + return lines; } } }; diff --git a/src/app/results/plottable-data.ts b/src/app/results/plottable-data.ts index d750529b7..a5493b94b 100644 --- a/src/app/results/plottable-data.ts +++ b/src/app/results/plottable-data.ts @@ -33,4 +33,10 @@ export interface PlottableData { * @param symbol parameter / result symbol (ex: "Q") */ getValuesSeries(symbol: string): any[]; + + /** + * Returns the list of variating parameters + * (used by tooltip functions) + */ + getVariatingParametersSymbols(): string[]; } diff --git a/src/app/results/plottable-pab-results.ts b/src/app/results/plottable-pab-results.ts index b8bfe90c9..27e5685d9 100644 --- a/src/app/results/plottable-pab-results.ts +++ b/src/app/results/plottable-pab-results.ts @@ -45,6 +45,11 @@ export class PlottablePabResults implements PlottableData { return this.pabResults.columns; } + // just to implement interface + public getVariatingParametersSymbols(): string[] { + return []; + } + /** * Returns the series of values for the required symbol * @param symbol parameter / result symbol (ex: "Q") diff --git a/src/app/results/var-results.ts b/src/app/results/var-results.ts index 95898befc..b01195b15 100644 --- a/src/app/results/var-results.ts +++ b/src/app/results/var-results.ts @@ -176,6 +176,16 @@ export class VarResults extends CalculatedParamResults implements PlottableData return res; } + /** + * Returns the list of variating parameters + * (used by tooltip functions) + */ + public getVariatingParametersSymbols(): string[] { + return this._variatedParams.map((vp) => { + return vp.symbol; + }); + } + public update(displaySymbol: boolean) { if (this._variableParamHeaders.length === 0) { this._variableParamHeaders = this._variatedParams.map((v) => { -- GitLab