diff options
author | 2021-05-21 17:55:42 -0700 | |
---|---|---|
committer | 2021-05-21 17:55:42 -0700 | |
commit | c3d3d70ced281a1d7863b2f08f036b3bc83537b9 (patch) | |
tree | 706f2387e81b255a393962daeeebad4e675d8e3b /src/api | |
parent | 8b75f56577abc3ad2479b87fc59b7243add6a29a (diff) | |
download | bun-c3d3d70ced281a1d7863b2f08f036b3bc83537b9.tar.gz bun-c3d3d70ced281a1d7863b2f08f036b3bc83537b9.tar.zst bun-c3d3d70ced281a1d7863b2f08f036b3bc83537b9.zip |
wip
Former-commit-id: 63e622f2f366a30d4432835b1e190191fd04f6df
Diffstat (limited to 'src/api')
-rw-r--r-- | src/api/schema.d.ts | 3 | ||||
-rw-r--r-- | src/api/schema.js | 14 | ||||
-rw-r--r-- | src/api/schema.peechy | 5 | ||||
-rw-r--r-- | src/api/schema.zig | 26 |
4 files changed, 39 insertions, 9 deletions
diff --git a/src/api/schema.d.ts b/src/api/schema.d.ts index c78d7fc6c..23eafa37b 100644 --- a/src/api/schema.d.ts +++ b/src/api/schema.d.ts @@ -126,8 +126,9 @@ type uint32 = number; loader_values?: Loader[]; main_fields?: string[]; platform?: Platform; - watch?: boolean; + serve?: boolean; extension_order?: string[]; + public_dir?: string; } export interface FileHandle { diff --git a/src/api/schema.js b/src/api/schema.js index 43670dff0..0d7d942b3 100644 --- a/src/api/schema.js +++ b/src/api/schema.js @@ -228,7 +228,7 @@ function decodeTransformOptions(bb) { break; case 18: - result["watch"] = !!bb.readByte(); + result["serve"] = !!bb.readByte(); break; case 19: @@ -237,6 +237,10 @@ function decodeTransformOptions(bb) { for (var i = 0; i < length; i++) values[i] = bb.readString(); break; + case 20: + result["public_dir"] = bb.readString(); + break; + default: throw new Error("Attempted to parse invalid message"); } @@ -393,7 +397,7 @@ if (encoded === void 0) throw new Error("Invalid value " + JSON.stringify(value) bb.writeByte(encoded); } - var value = message["watch"]; + var value = message["serve"]; if (value != null) { bb.writeByte(18); bb.writeByte(value); @@ -409,6 +413,12 @@ bb.writeByte(encoded); bb.writeString(value); } } + + var value = message["public_dir"]; + if (value != null) { + bb.writeByte(20); + bb.writeString(value); + } bb.writeByte(0); } diff --git a/src/api/schema.peechy b/src/api/schema.peechy index 6c6889f00..9ba51c3d6 100644 --- a/src/api/schema.peechy +++ b/src/api/schema.peechy @@ -49,6 +49,7 @@ message TransformOptions { string public_url = 4; string absolute_working_dir = 5; + string[] define_keys = 6; string[] define_values = 7; @@ -68,9 +69,11 @@ message TransformOptions { string[] main_fields = 16; Platform platform = 17; - bool watch = 18; + bool serve = 18; string[] extension_order = 19; + + string public_dir = 20; } struct FileHandle { diff --git a/src/api/schema.zig b/src/api/schema.zig index bba5a3c94..262c0d01c 100644 --- a/src/api/schema.zig +++ b/src/api/schema.zig @@ -200,12 +200,15 @@ pub const Api = struct { /// platform platform: ?Platform = null, - /// watch - watch: ?bool = null, + /// serve + serve: ?bool = null, /// extension_order extension_order: []const []const u8, + /// public_dir + public_dir: ?[]const u8 = null, + pub fn decode(allocator: *std.mem.Allocator, reader: anytype) anyerror!TransformOptions { var obj = std.mem.zeroes(TransformOptions); try update(&obj, allocator, reader); @@ -381,7 +384,7 @@ pub const Api = struct { result.platform = try reader.readEnum(Platform, .Little); }, 18 => { - result.watch = (try reader.readByte()) == @as(u8, 1); + result.serve = (try reader.readByte()) == @as(u8, 1); }, 19 => { { @@ -398,6 +401,13 @@ pub const Api = struct { } } }, + 20 => { + length = try reader.readIntNative(u32); + if ((result.public_dir orelse &([_]u8{})).len != length) { + result.public_dir = try allocator.alloc(u8, length); + } + _ = try reader.readAll(result.public_dir.?); + }, else => { return error.InvalidMessage; }, @@ -559,9 +569,9 @@ pub const Api = struct { try writer.writeIntNative(@TypeOf(@enumToInt(result.platform orelse unreachable)), @enumToInt(result.platform orelse unreachable)); } - if (result.watch) |watch| { + if (result.serve) |serve| { try writer.writeByte(18); - try writer.writeByte(@boolToInt(watch)); + try writer.writeByte(@boolToInt(serve)); } if (result.extension_order) |extension_order| { @@ -576,6 +586,12 @@ pub const Api = struct { } } } + + if (result.public_dir) |public_dir| { + try writer.writeByte(20); + try writer.writeIntNative(u32, @intCast(u32, public_dir.len)); + try writer.writeAll(std.mem.sliceAsBytes(public_dir)); + } try writer.writeByte(0); return; } |