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