diff --git a/package.json b/package.json index d84be80ded05c..fdaa45d12ff1c 100644 --- a/package.json +++ b/package.json @@ -204,6 +204,7 @@ "topojson-client": "3.0.0", "trunc-html": "1.0.2", "trunc-text": "1.0.2", + "tslib": "^1.9.3", "type-detect": "^4.0.8", "uglifyjs-webpack-plugin": "^1.2.7", "ui-select": "0.19.6", diff --git a/packages/kbn-datemath/package.json b/packages/kbn-datemath/package.json index 5338b65d83f2d..a424d97f8ca80 100644 --- a/packages/kbn-datemath/package.json +++ b/packages/kbn-datemath/package.json @@ -16,6 +16,7 @@ "babel-preset-env": "^1.6.1" }, "dependencies": { - "moment": "^2.13.0" + "moment": "^2.13.0", + "tslib": "^1.9.3" } } diff --git a/packages/kbn-datemath/yarn.lock b/packages/kbn-datemath/yarn.lock index 802e6b00e31f0..cf6ea88561976 100644 --- a/packages/kbn-datemath/yarn.lock +++ b/packages/kbn-datemath/yarn.lock @@ -1557,6 +1557,10 @@ trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" +tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" + tunnel-agent@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" diff --git a/packages/kbn-dev-utils/package.json b/packages/kbn-dev-utils/package.json index 1b3de419647d8..9ce518746009f 100644 --- a/packages/kbn-dev-utils/package.json +++ b/packages/kbn-dev-utils/package.json @@ -14,7 +14,8 @@ "execa": "^0.10.0", "moment": "^2.20.1", "rxjs": "^6.2.1", - "tree-kill": "^1.2.0" + "tree-kill": "^1.2.0", + "tslib": "^1.9.3" }, "devDependencies": { "@kbn/babel-preset": "link:../kbn-babel-preset", diff --git a/packages/kbn-dev-utils/yarn.lock b/packages/kbn-dev-utils/yarn.lock index 84f3763d0adec..49960242a058d 100644 --- a/packages/kbn-dev-utils/yarn.lock +++ b/packages/kbn-dev-utils/yarn.lock @@ -1797,9 +1797,9 @@ trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -tslib@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" +tslib@^1.9.0, tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" tunnel-agent@^0.6.0: version "0.6.0" diff --git a/packages/kbn-es/yarn.lock b/packages/kbn-es/yarn.lock index e8714b00c3d3c..6af6283be222a 100644 --- a/packages/kbn-es/yarn.lock +++ b/packages/kbn-es/yarn.lock @@ -424,7 +424,7 @@ tree-kill@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/tree-kill/-/tree-kill-1.2.0.tgz#5846786237b4239014f05db156b643212d4c6f36" -tslib@^1.9.0: +tslib@^1.9.0, tslib@^1.9.3: version "1.9.3" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" diff --git a/packages/kbn-pm/package.json b/packages/kbn-pm/package.json index 44987c7f7ffb4..d74f92ad7dbc8 100644 --- a/packages/kbn-pm/package.json +++ b/packages/kbn-pm/package.json @@ -64,5 +64,8 @@ "webpack": "^3.11.0", "wrap-ansi": "^3.0.1", "write-pkg": "^3.1.0" + }, + "dependencies": { + "tslib": "^1.9.3" } } diff --git a/packages/kbn-pm/yarn.lock b/packages/kbn-pm/yarn.lock index ee0ada41949d0..a2cac4290bcc0 100644 --- a/packages/kbn-pm/yarn.lock +++ b/packages/kbn-pm/yarn.lock @@ -3570,9 +3570,9 @@ ts-loader@^3.5.0: micromatch "^3.1.4" semver "^5.0.1" -tslib@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" +tslib@^1.9.0, tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" tty-browserify@0.0.0: version "0.0.0" diff --git a/packages/kbn-system-loader/package.json b/packages/kbn-system-loader/package.json index 5a169283edb77..10f66254cb9ca 100644 --- a/packages/kbn-system-loader/package.json +++ b/packages/kbn-system-loader/package.json @@ -12,5 +12,8 @@ "devDependencies": { "@types/jest": "^22.2.2", "typescript": "^2.9.2" + }, + "dependencies": { + "tslib": "^1.9.3" } } diff --git a/packages/kbn-system-loader/yarn.lock b/packages/kbn-system-loader/yarn.lock index 5e55ff3b0318a..c8865ca70abfc 100644 --- a/packages/kbn-system-loader/yarn.lock +++ b/packages/kbn-system-loader/yarn.lock @@ -3,8 +3,12 @@ "@types/jest@^22.2.2": - version "22.2.2" - resolved "https://registry.yarnpkg.com/@types/jest/-/jest-22.2.2.tgz#afe5dacbd00d65325f52da0ed3e76e259629ac9d" + version "22.2.3" + resolved "http://registry.npmjs.org/@types/jest/-/jest-22.2.3.tgz#0157c0316dc3722c43a7b71de3fdf3acbccef10d" + +tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" typescript@^2.9.2: version "2.9.2" diff --git a/packages/kbn-test/yarn.lock b/packages/kbn-test/yarn.lock index 29c2664da1de2..ee50382197b38 100644 --- a/packages/kbn-test/yarn.lock +++ b/packages/kbn-test/yarn.lock @@ -1638,9 +1638,9 @@ trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" -tslib@^1.9.0: - version "1.9.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.1.tgz#a5d1f0532a49221c87755cfcc89ca37197242ba7" +tslib@^1.9.0, tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" user-home@^1.1.1: version "1.1.1" diff --git a/tsconfig.json b/tsconfig.json index 663fd48239dd0..aa815c23cbee7 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -42,7 +42,13 @@ "forceConsistentCasingInFileNames": true, // Disable the breaking keyof behaviour introduced in TS 2.9.2 until EUI is updated to support that too - "keyofStringsOnly": true + "keyofStringsOnly": true, + + // Provide full support for iterables in for..of, spread and destructuring when targeting ES5 or ES3. + "downlevelIteration": true, + + // import tslib helpers rather than inlining helpers for iteration or spreading, for instance + "importHelpers": true }, "include": [ "src/**/*" diff --git a/x-pack/package.json b/x-pack/package.json index 038e2216edac6..dd2fbf7bca3c8 100644 --- a/x-pack/package.json +++ b/x-pack/package.json @@ -160,6 +160,7 @@ "styled-components": "3.3.3", "tar-fs": "1.13.0", "tinycolor2": "1.3.0", + "tslib": "^1.9.3", "ui-select": "0.19.4", "unbzip2-stream": "1.0.9", "uuid": "3.0.1", diff --git a/x-pack/yarn.lock b/x-pack/yarn.lock index 117069f738abd..cc80298c48b19 100644 --- a/x-pack/yarn.lock +++ b/x-pack/yarn.lock @@ -8176,9 +8176,9 @@ trim-right@^1.0.1: dependencies: glob "^6.0.4" -tslib@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" +tslib@^1.9.0, tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" tunnel-agent@^0.6.0: version "0.6.0" diff --git a/yarn.lock b/yarn.lock index 369c484222049..7299454d56381 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13598,13 +13598,9 @@ ts-node@^6.0.3: source-map-support "^0.5.3" yn "^2.0.0" -tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1: - version "1.9.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.1.tgz#a5d1f0532a49221c87755cfcc89ca37197242ba7" - -tslib@^1.9.0: - version "1.9.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" +tslib@^1.7.1, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: + version "1.9.3" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286" tslint-config-prettier@^1.12.0: version "1.12.0"