diff options
author | 2021-09-21 21:53:38 -0700 | |
---|---|---|
committer | 2021-09-21 21:53:38 -0700 | |
commit | 6213a73e6ffb9e0973b659f159db2a5d13f59d6b (patch) | |
tree | fe11a2735815d6dcb5bd11f153226523a02161c4 /src/resolver/package_json.zig | |
parent | 9c109b744f1729d1207f8f38cf1beae815e9690d (diff) | |
download | bun-6213a73e6ffb9e0973b659f159db2a5d13f59d6b.tar.gz bun-6213a73e6ffb9e0973b659f159db2a5d13f59d6b.tar.zst bun-6213a73e6ffb9e0973b659f159db2a5d13f59d6b.zip |
Add "exports" to PackageJSON
Diffstat (limited to 'src/resolver/package_json.zig')
-rw-r--r-- | src/resolver/package_json.zig | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/src/resolver/package_json.zig b/src/resolver/package_json.zig index 056bf345d..b1ac31256 100644 --- a/src/resolver/package_json.zig +++ b/src/resolver/package_json.zig @@ -82,6 +82,8 @@ pub const PackageJSON = struct { // browser_map: BrowserMap, + exports: ?ExportsMap = null, + pub inline fn isAppPackage(this: *const PackageJSON) bool { return this.hash == 0xDEADBEEF; } @@ -593,6 +595,12 @@ pub const PackageJSON = struct { } } + if (json.asProperty("exports")) |exports_prop| { + if (ExportsMap.parse(allocator, source, log, exports_prop)) |exports_map| { + package_json.exports = exports_map; + } + } + // TODO: side effects // TODO: exports map @@ -637,7 +645,10 @@ pub const ExportsMap = struct { return null; } - return ExportsMap{ .root = root, .exports_range = root.first_token }; + return ExportsMap{ + .root = root, + .exports_range = source.rangeOfString(json.loc), + }; } pub const Visitor = struct { |