@samitouri / QOS-React-2 / commits / b15d6e93e7

[Flight] Make PG and FS server-only (#20424)

* Make react-fs server-only * Make react-pg server-only

Dan Abramov committed Dec 10, 2020 at 06:15 UTC b15d6e93e70a50605f9a1187ea104d7e280447e4
18 files changed +66 -43
packages/react-fs/index.browser.server.js renamed
packages/react-fs/index.js
+4 -3
@@ -7,6 +7,7 @@
7 * @flow
8 */
9
10 -'use strict';
11 -
12 -export * from './index.node';
10 +throw new Error(
11 + 'React FS cannot be used outside a react-server environment. ' +
12 + 'You must configure Node.js using the `--conditions react-server` flag.',
13 +);
packages/react-fs/index.node.server.js renamed
packages/react-fs/npm/index.browser.server.js renamed
+2 -2
@@ -1,7 +1,7 @@
1 'use strict';
2
3 if (process.env.NODE_ENV === 'production') {
4 - module.exports = require('./cjs/react-fs.browser.production.min.js');
4 + module.exports = require('./cjs/react-fs.browser.production.min.server.js');
5 } else {
6 - module.exports = require('./cjs/react-fs.browser.development.js');
6 + module.exports = require('./cjs/react-fs.browser.development.server.js');
7 }
packages/react-fs/npm/index.js
+4 -1
@@ -1,3 +1,6 @@
1 'use strict';
2
3 -module.exports = require('./index.node');
3 +throw new Error(
4 + 'React FS cannot be used outside a react-server environment. ' +
5 + 'You must configure Node.js using the `--conditions react-server` flag.'
6 +);
packages/react-fs/npm/index.node.js deleted
-7
@@ -1,7 +0,0 @@
1 -'use strict';
2 -
3 -if (process.env.NODE_ENV === 'production') {
4 - module.exports = require('./cjs/react-fs.node.production.min.js');
5 -} else {
6 - module.exports = require('./cjs/react-fs.node.development.js');
7 -}
packages/react-fs/npm/index.node.server.js new
+7
@@ -0,0 +1,7 @@
1 +'use strict';
2 +
3 +if (process.env.NODE_ENV === 'production') {
4 + module.exports = require('./cjs/react-fs.node.production.min.server.js');
5 +} else {
6 + module.exports = require('./cjs/react-fs.node.development.server.js');
7 +}
packages/react-fs/package.json
+14 -5
@@ -13,14 +13,23 @@
13 "README.md",
14 "build-info.json",
15 "index.js",
16 - "index.node.js",
17 - "index.browser.js",
16 + "index.node.server.js",
17 + "index.browser.server.js",
18 "cjs/"
19 ],
20 + "exports": {
21 + ".": {
22 + "react-server": {
23 + "node": "./index.node.server.js",
24 + "browser": "./index.browser.server.js"
25 + },
26 + "default": "./index.js"
27 + },
28 + "./index.node.server": "./index.node.server.js",
29 + "./index.browser.server": "./index.browser.server.js",
30 + "./package.json": "./package.json"
31 + },
32 "peerDependencies": {
33 "react": "^17.0.0"
22 - },
23 - "browser": {
24 - "./index.js": "./index.browser.js"
34 }
35 }
packages/react-pg/index.browser.server.js renamed
packages/react-pg/index.js
+4 -3
@@ -7,6 +7,7 @@
7 * @flow
8 */
9
10 -'use strict';
11 -
12 -export * from './index.node';
10 +throw new Error(
11 + 'React PG cannot be used outside a react-server environment. ' +
12 + 'You must configure Node.js using the `--conditions react-server` flag.',
13 +);
packages/react-pg/index.node.server.js renamed
packages/react-pg/npm/index.browser.server.js renamed
+2 -2
@@ -1,7 +1,7 @@
1 'use strict';
2
3 if (process.env.NODE_ENV === 'production') {
4 - module.exports = require('./cjs/react-pg.browser.production.min.js');
4 + module.exports = require('./cjs/react-pg.browser.production.min.server.js');
5 } else {
6 - module.exports = require('./cjs/react-pg.browser.development.js');
6 + module.exports = require('./cjs/react-pg.browser.development.server.js');
7 }
packages/react-pg/npm/index.js
+4 -1
@@ -1,3 +1,6 @@
1 'use strict';
2
3 -module.exports = require('./index.node');
3 +throw new Error(
4 + 'React PG cannot be used outside a react-server environment. ' +
5 + 'You must configure Node.js using the `--conditions react-server` flag.'
6 +);
packages/react-pg/npm/index.node.js deleted
-7
@@ -1,7 +0,0 @@
1 -'use strict';
2 -
3 -if (process.env.NODE_ENV === 'production') {
4 - module.exports = require('./cjs/react-pg.node.production.min.js');
5 -} else {
6 - module.exports = require('./cjs/react-pg.node.development.js');
7 -}
packages/react-pg/npm/index.node.server.js new
+7
@@ -0,0 +1,7 @@
1 +'use strict';
2 +
3 +if (process.env.NODE_ENV === 'production') {
4 + module.exports = require('./cjs/react-pg.node.production.min.server.js');
5 +} else {
6 + module.exports = require('./cjs/react-pg.node.development.server.js');
7 +}
packages/react-pg/package.json
+14 -5
@@ -13,15 +13,24 @@
13 "README.md",
14 "build-info.json",
15 "index.js",
16 - "index.node.js",
17 - "index.browser.js",
16 + "index.node.server.js",
17 + "index.browser.server.js",
18 "cjs/"
19 ],
20 + "exports": {
21 + ".": {
22 + "react-server": {
23 + "node": "./index.node.server.js",
24 + "browser": "./index.browser.server.js"
25 + },
26 + "default": "./index.js"
27 + },
28 + "./index.node.server": "./index.node.server.js",
29 + "./index.browser.server": "./index.browser.server.js",
30 + "./package.json": "./package.json"
31 + },
32 "peerDependencies": {
33 "react": "^17.0.0",
34 "pg": "*"
23 - },
24 - "browser": {
25 - "./index.js": "./index.browser.js"
35 }
36 }
packages/react-server-dom-webpack/package.json
-3
@@ -38,9 +38,6 @@
38 "./node-register": "./node-register.js",
39 "./package.json": "./package.json"
40 },
41 - "browser": {
42 - "./writer.js": "./writer.browser.server.js"
43 - },
41 "main": "index.js",
42 "repository": {
43 "type" : "git",
scripts/rollup/bundles.js
+4 -4
@@ -157,7 +157,7 @@ const bundles = [
157 {
158 bundleTypes: [NODE_DEV, NODE_PROD],
159 moduleType: ISOMORPHIC,
160 - entry: 'react-fs/index.browser',
160 + entry: 'react-fs/index.browser.server',
161 global: 'ReactFilesystem',
162 externals: [],
163 },
@@ -166,7 +166,7 @@ const bundles = [
166 {
167 bundleTypes: [NODE_DEV, NODE_PROD],
168 moduleType: ISOMORPHIC,
169 - entry: 'react-fs/index.node',
169 + entry: 'react-fs/index.node.server',
170 global: 'ReactFilesystem',
171 externals: ['react', 'fs/promises', 'path'],
172 },
@@ -175,7 +175,7 @@ const bundles = [
175 {
176 bundleTypes: [NODE_DEV, NODE_PROD],
177 moduleType: ISOMORPHIC,
178 - entry: 'react-pg/index.browser',
178 + entry: 'react-pg/index.browser.server',
179 global: 'ReactPostgres',
180 externals: [],
181 },
@@ -184,7 +184,7 @@ const bundles = [
184 {
185 bundleTypes: [NODE_DEV, NODE_PROD],
186 moduleType: ISOMORPHIC,
187 - entry: 'react-pg/index.node',
187 + entry: 'react-pg/index.node.server',
188 global: 'ReactPostgres',
189 externals: ['react', 'pg'],
190 },