From dbe643fecabe89e28624fce3e4b7128b49a08ef1 Mon Sep 17 00:00:00 2001 From: Pierre Besson Date: Tue, 21 Mar 2017 20:55:35 +0100 Subject: [PATCH 1/2] Add idx in babel-preset Idx is the existential function see https://facebook.github.io/react-native/blog/2017/03/13/idx-the-existential-function.html for more informations about it. --- packages/babel-preset-react-app/index.js | 4 ++++ packages/babel-preset-react-app/package.json | 1 + 2 files changed, 5 insertions(+) diff --git a/packages/babel-preset-react-app/index.js b/packages/babel-preset-react-app/index.js index fbd421beb1e..8270e5b202e 100644 --- a/packages/babel-preset-react-app/index.js +++ b/packages/babel-preset-react-app/index.js @@ -13,6 +13,10 @@ var path = require('path'); const plugins = [ // class { handleClick = () => { } } require.resolve('babel-plugin-transform-class-properties'), + // idx: The existential function. + // (props, _ => _.user.friends[0].friends) + // See https://facebook.github.io/react-native/blog/2017/03/13/idx-the-existential-function.html + require.resolve('babel-plugin-idx'), // The following two plugins use Object.assign directly, instead of Babel's // extends helper. Note that this assumes `Object.assign` is available. // { ...todo, completed: true } diff --git a/packages/babel-preset-react-app/package.json b/packages/babel-preset-react-app/package.json index aa955e43762..f8c0c7fa13a 100644 --- a/packages/babel-preset-react-app/package.json +++ b/packages/babel-preset-react-app/package.json @@ -12,6 +12,7 @@ ], "dependencies": { "babel-plugin-dynamic-import-node": "1.0.0", + "babel-plugin-idx": "1.1.0", "babel-plugin-syntax-dynamic-import": "6.18.0", "babel-plugin-transform-class-properties": "6.23.0", "babel-plugin-transform-object-rest-spread": "6.23.0", From 1aad04b2e1be36c79d7898d51001410b23be77d1 Mon Sep 17 00:00:00 2001 From: Pierre Besson Date: Tue, 21 Mar 2017 21:45:30 +0100 Subject: [PATCH 2/2] Add idx as dependency of react-scripts. This will allow the use of the preset. --- packages/react-scripts/package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/react-scripts/package.json b/packages/react-scripts/package.json index b2cb03bb972..4fd1f9f6c9c 100644 --- a/packages/react-scripts/package.json +++ b/packages/react-scripts/package.json @@ -47,6 +47,7 @@ "fs-extra": "0.30.0", "html-webpack-plugin": "2.28.0", "http-proxy-middleware": "0.17.3", + "idx": "1.1.0", "jest": "18.1.0", "object-assign": "4.1.1", "postcss-loader": "1.3.3",