Skip to content

Commit d9f25ec

Browse files
committed
Update in-place exp libs to create exports field
1 parent 1f1b7f4 commit d9f25ec

File tree

3 files changed

+40
-3
lines changed

3 files changed

+40
-3
lines changed

scripts/exp/prepare-database-for-exp-release.ts

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,25 @@ export async function prepare() {
4545
};
4646

4747
packageJson.main = expPackageJson.main.replace('../', '');
48-
packageJson.module = expPackageJson.module.replace('../', '');
49-
packageJson.browser = expPackageJson.browser.replace('../', '');
50-
packageJson.esm2017 = expPackageJson.esm2017.replace('../', '');
48+
49+
// Set esm2017 as default.
50+
// Delete esm2017 field.
51+
// Add esm5 field.
52+
packageJson.module = expPackageJson.esm2017.replace('../', '');
53+
packageJson.browser = expPackageJson.esm2017.replace('../', '');
54+
delete packageJson.esm2017;
55+
packageJson.esm5 = expPackageJson.browser.replace('../', '');
56+
57+
// Add exports field. These need to be relative paths so start with './';
58+
packageJson.exports = {
59+
main: expPackageJson.main.replace('../', './'),
60+
// Again, these are esm2017 now.
61+
module: expPackageJson.esm2017.replace('../', './'),
62+
browser: expPackageJson.esm2017.replace('../', './'),
63+
esm5: expPackageJson.browser.replace('../', './'),
64+
node: expPackageJson.main.replace('../', './'),
65+
default: expPackageJson.esm2017.replace('../', './')
66+
};
5167

5268
packageJson.typings = expPackageJson.typings.replace('../', '');
5369

scripts/exp/prepare-firestore-for-exp-release.ts

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,17 @@ export async function prepare() {
5454
delete packageJson['main-esm2017'];
5555
delete packageJson['esm2017'];
5656

57+
// Add exports field. These need to be relative paths so start with './';
58+
packageJson.exports = {
59+
main: expPackageJson.main.replace('../', './'),
60+
module: expPackageJson.module.replace('../', './'),
61+
browser: expPackageJson.browser.replace('../', './'),
62+
'react-native': expPackageJson['react-native'].replace('../', './'),
63+
node: expPackageJson.main.replace('../', './'),
64+
default: expPackageJson.browser.replace('../', './')
65+
// No esm5 build for Firestore?
66+
};
67+
5768
packageJson.typings = expPackageJson.typings.replace('../', '');
5869

5970
// include files to be published

scripts/exp/prepare-storage-for-exp-release.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,16 @@ export async function prepare() {
5050
packageJson.browser = expPackageJson.browser.replace('./', 'exp/');
5151
delete packageJson['esm2017'];
5252

53+
// Add exports field. These need to be relative paths so start with './';
54+
packageJson.exports = {
55+
main: expPackageJson.main.replace('../', './'),
56+
module: expPackageJson.module.replace('../', './'),
57+
browser: expPackageJson.browser.replace('../', './'),
58+
node: expPackageJson.main.replace('../', './'),
59+
default: expPackageJson.browser.replace('../', './')
60+
// No esm5 build for Storage?
61+
};
62+
5363
packageJson.typings = expPackageJson.typings.replace('./', 'exp/');
5464

5565
// include files to be published

0 commit comments

Comments
 (0)