diff --git a/package-lock.json b/package-lock.json index 0dec823..7c58ad8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -324,15 +324,6 @@ "@babel/helper-plugin-utils": "^7.0.0" } }, - "@babel/plugin-transform-react-display-name": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.2.0.tgz", - "integrity": "sha512-Htf/tPa5haZvRMiNSQSFifK12gtr/8vwfr+A9y69uF0QcU77AVu4K7MiHEkTxF7lQoHOL0F9ErqgfNEAKgXj7A==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" - } - }, "@babel/plugin-transform-react-jsx": { "version": "7.3.0", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.3.0.tgz", @@ -344,26 +335,6 @@ "@babel/plugin-syntax-jsx": "^7.2.0" } }, - "@babel/plugin-transform-react-jsx-self": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.2.0.tgz", - "integrity": "sha512-v6S5L/myicZEy+jr6ielB0OR8h+EH/1QFx/YJ7c7Ua+7lqsjj/vW6fD5FR9hB/6y7mGbfT4vAURn3xqBxsUcdg==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, - "@babel/plugin-transform-react-jsx-source": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.2.0.tgz", - "integrity": "sha512-A32OkKTp4i5U6aE88GwwcuV4HAprUgHcTq0sSafLxjr6AW0QahrCRCjxogkbbcdtpbXkuTOlgpjophCxb6sh5g==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.2.0" - } - }, "@babel/plugin-transform-typescript": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.4.4.tgz", @@ -374,19 +345,6 @@ "@babel/plugin-syntax-typescript": "^7.2.0" } }, - "@babel/preset-react": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.0.0.tgz", - "integrity": "sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-react-jsx-self": "^7.0.0", - "@babel/plugin-transform-react-jsx-source": "^7.0.0" - } - }, "@babel/preset-typescript": { "version": "7.3.3", "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.3.3.tgz", @@ -2326,6 +2284,15 @@ "source-map": "^0.5.7" } }, + "babel-plugin-jsx-pragmatic": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jsx-pragmatic/-/babel-plugin-jsx-pragmatic-1.0.2.tgz", + "integrity": "sha1-QeK+uGQiNfNLKnqxLKOeByAbjlk=", + "dev": true, + "requires": { + "babel-plugin-syntax-jsx": "^6.0.0" + } + }, "babel-plugin-macros": { "version": "2.5.1", "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.5.1.tgz", @@ -2376,6 +2343,12 @@ "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" }, + "babel-plugin-transform-inline-environment-variables": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-environment-variables/-/babel-plugin-transform-inline-environment-variables-0.4.3.tgz", + "integrity": "sha1-o7CYgzU76LXiM24/8e+KXZP5xIk=", + "dev": true + }, "babel-register": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", diff --git a/package.json b/package.json index 7ae65f3..392ef89 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,7 @@ "@babel/plugin-proposal-class-properties": "^7.4.4", "@babel/plugin-proposal-object-rest-spread": "^7.4.4", "@babel/plugin-syntax-dynamic-import": "^7.2.0", - "@babel/preset-react": "^7.0.0", + "@babel/plugin-transform-react-jsx": "^7.3.0", "@babel/preset-typescript": "^7.3.3", "@graphql-codegen/cli": "^1.1.3", "@graphql-codegen/fragment-matcher": "^1.1.3", @@ -71,6 +71,8 @@ "babel-core": "^6.26.3", "babel-loader": "^8.0.6", "babel-plugin-emotion": "^10.0.9", + "babel-plugin-jsx-pragmatic": "^1.0.2", + "babel-plugin-transform-inline-environment-variables": "^0.4.3", "brotli-webpack-plugin": "^1.1.0", "compression-webpack-plugin": "^2.0.0", "css-hot-loader": "^1.4.4", diff --git a/src/webpack/common.ts b/src/webpack/common.ts index f55624d..63bc6c9 100644 --- a/src/webpack/common.ts +++ b/src/webpack/common.ts @@ -69,12 +69,25 @@ export default (_ssr: boolean /* <-- not currently used */) => { loader: "babel-loader", options: { cacheDirectory: true, - presets: ["@babel/typescript", "@babel/react"], + presets: ["@babel/typescript"], plugins: [ ["@babel/proposal-class-properties", { loose: true }], "@babel/proposal-object-rest-spread", "@babel/plugin-syntax-dynamic-import", "react-hot-loader/babel", + "transform-inline-environment-variables", + [ + "babel-plugin-jsx-pragmatic", + { + export: "jsx", + module: "@emotion/core", + import: "___EmotionJSX" + } + ], + [ + "@babel/plugin-transform-react-jsx", + { pragma: "___EmotionJSX", pragmaFrag: "React.Fragment" } + ], "emotion" ] }