Merge pull request #1787 from lightpanda-io/dummy-filelist
Some checks failed
e2e-test / zig build release (push) Has been cancelled
e2e-test / demo-scripts (push) Has been cancelled
e2e-test / cdp-and-hyperfine-bench (push) Has been cancelled
e2e-test / perf-fmt (push) Has been cancelled
e2e-test / browser fetch (push) Has been cancelled
zig-test / zig test using v8 in debug mode (push) Has been cancelled
zig-test / zig test (push) Has been cancelled
zig-test / perf-fmt (push) Has been cancelled
nightly build / build-linux-x86_64 (push) Has been cancelled
nightly build / build-linux-aarch64 (push) Has been cancelled
nightly build / build-macos-aarch64 (push) Has been cancelled
nightly build / build-macos-x86_64 (push) Has been cancelled
wpt / zig build release (push) Has been cancelled
wpt / build wpt runner (push) Has been cancelled
wpt / web platform tests json output (push) Has been cancelled
wpt / perf-fmt (push) Has been cancelled
e2e-integration-test / zig build release (push) Has been cancelled
e2e-integration-test / demo-integration-scripts (push) Has been cancelled

Add FileList Web API stub
This commit is contained in:
Karl Seguin
2026-03-12 06:37:00 +08:00
committed by GitHub
2 changed files with 29 additions and 0 deletions

View File

@@ -885,6 +885,7 @@ pub const JsApis = flattenTypes(&.{
@import("../webapi/IdleDeadline.zig"), @import("../webapi/IdleDeadline.zig"),
@import("../webapi/Blob.zig"), @import("../webapi/Blob.zig"),
@import("../webapi/File.zig"), @import("../webapi/File.zig"),
@import("../webapi/FileList.zig"),
@import("../webapi/FileReader.zig"), @import("../webapi/FileReader.zig"),
@import("../webapi/Screen.zig"), @import("../webapi/Screen.zig"),
@import("../webapi/VisualViewport.zig"), @import("../webapi/VisualViewport.zig"),

View File

@@ -0,0 +1,28 @@
const js = @import("../js/js.zig");
const FileList = @This();
/// Padding to avoid zero-size struct, which causes identity_map pointer collisions.
_pad: bool = false,
pub fn getLength(_: *const FileList) u32 {
return 0;
}
pub fn item(_: *const FileList, _: u32) ?*@import("File.zig") {
return null;
}
pub const JsApi = struct {
pub const bridge = js.Bridge(FileList);
pub const Meta = struct {
pub const name = "FileList";
pub const prototype_chain = bridge.prototypeChain();
pub var class_id: bridge.ClassId = undefined;
pub const empty_with_no_proto = true;
};
pub const length = bridge.accessor(FileList.getLength, null, .{});
pub const item = bridge.function(FileList.item, .{});
};