diff options
Diffstat (limited to 'src/bun.js/api/JSBundler.zig')
| -rw-r--r-- | src/bun.js/api/JSBundler.zig | 41 |
1 files changed, 26 insertions, 15 deletions
diff --git a/src/bun.js/api/JSBundler.zig b/src/bun.js/api/JSBundler.zig index 50160f1dc..eae4da646 100644 --- a/src/bun.js/api/JSBundler.zig +++ b/src/bun.js/api/JSBundler.zig @@ -167,23 +167,34 @@ pub const JSBundler = struct { this.public_path.appendSliceExact(slice.slice()) catch unreachable; } - if (try config.getObject(globalThis, "naming")) |naming| { - if (try naming.getOptional(globalThis, "entrypoint", ZigString.Slice)) |slice| { - defer slice.deinit(); - this.names.owned_entry_point.appendSliceExact(slice.slice()) catch unreachable; - this.names.entry_point.data = this.names.owned_entry_point.list.items; - } + if (config.getTruthy(globalThis, "naming")) |naming| { + if (naming.isString()) { + if (try config.getOptional(globalThis, "naming", ZigString.Slice)) |slice| { + defer slice.deinit(); + this.names.owned_entry_point.appendSliceExact(slice.slice()) catch unreachable; + this.names.entry_point.data = this.names.owned_entry_point.list.items; + } + } else if (naming.isObject()) { + if (try naming.getOptional(globalThis, "entrypoint", ZigString.Slice)) |slice| { + defer slice.deinit(); + this.names.owned_entry_point.appendSliceExact(slice.slice()) catch unreachable; + this.names.entry_point.data = this.names.owned_entry_point.list.items; + } - if (try naming.getOptional(globalThis, "chunk", ZigString.Slice)) |slice| { - defer slice.deinit(); - this.names.owned_chunk.appendSliceExact(slice.slice()) catch unreachable; - this.names.chunk.data = this.names.owned_chunk.list.items; - } + if (try naming.getOptional(globalThis, "chunk", ZigString.Slice)) |slice| { + defer slice.deinit(); + this.names.owned_chunk.appendSliceExact(slice.slice()) catch unreachable; + this.names.chunk.data = this.names.owned_chunk.list.items; + } - if (try naming.getOptional(globalThis, "asset", ZigString.Slice)) |slice| { - defer slice.deinit(); - this.names.owned_asset.appendSliceExact(slice.slice()) catch unreachable; - this.names.asset.data = this.names.owned_asset.list.items; + if (try naming.getOptional(globalThis, "asset", ZigString.Slice)) |slice| { + defer slice.deinit(); + this.names.owned_asset.appendSliceExact(slice.slice()) catch unreachable; + this.names.asset.data = this.names.owned_asset.list.items; + } + } else { + globalThis.throwInvalidArguments("Expected naming to be a string or an object", .{}); + return error.JSException; } } |
