mirror of
https://github.com/lightpanda-io/browser.git
synced 2025-10-28 22:53:28 +00:00
support object as HeadersInit
This commit is contained in:
@@ -63,6 +63,8 @@ headers: HeaderHashMap = .empty,
|
||||
pub const HeadersInit = union(enum) {
|
||||
// List of Pairs of []const u8
|
||||
strings: []const [2][]const u8,
|
||||
// Mappings
|
||||
mappings: Env.JsObject,
|
||||
headers: *Headers,
|
||||
};
|
||||
|
||||
@@ -80,6 +82,19 @@ pub fn constructor(_init: ?HeadersInit, page: *Page) !Headers {
|
||||
try headers.put(arena, key, value);
|
||||
}
|
||||
},
|
||||
.mappings => |obj| {
|
||||
var iter = obj.nameIterator();
|
||||
while (try iter.next()) |name_value| {
|
||||
const name = try name_value.toString(arena);
|
||||
const value = Env.Value{
|
||||
.js_context = page.main_context,
|
||||
.value = name_value.value,
|
||||
};
|
||||
const value_string = try value.toString(arena);
|
||||
|
||||
try headers.put(arena, name, value_string);
|
||||
}
|
||||
},
|
||||
.headers => |hdrs| {
|
||||
var iter = hdrs.headers.iterator();
|
||||
while (iter.next()) |entry| {
|
||||
|
||||
Reference in New Issue
Block a user