diff --git a/src/browser/webapi/Blob.zig b/src/browser/webapi/Blob.zig index 19ee0963..43c78b32 100644 --- a/src/browser/webapi/Blob.zig +++ b/src/browser/webapi/Blob.zig @@ -34,7 +34,7 @@ slice: []const u8, /// MIME attached to blob. Can be an empty string. mime: []const u8, -const Type = union(enum) { +pub const Type = union(enum) { generic, file: *@import("File.zig"), }; @@ -76,7 +76,11 @@ pub fn init( break :blk ""; }; - return page._factory.create(Blob{ .slice = slice, .mime = mime }); + return page._factory.create(Blob{ + ._type = .generic, + .slice = slice, + .mime = mime, + }); } const largest_vector = @max(std.simd.suggestVectorLength(u8) orelse 1, 8); diff --git a/src/browser/webapi/File.zig b/src/browser/webapi/File.zig index 980dd5cc..a67a8a6f 100644 --- a/src/browser/webapi/File.zig +++ b/src/browser/webapi/File.zig @@ -28,8 +28,8 @@ const File = @This(); _proto: *Blob, // TODO: Implement File API. -pub fn init() File { - return .{ ._proto = undefined }; +pub fn init(page: *Page) !*File { + return page._factory.blob(File{ ._proto = undefined }); } pub const JsApi = struct {