From 9ce574a1f06f747939676c7723cffbbcf58188a9 Mon Sep 17 00:00:00 2001 From: Francis Bouvier Date: Thu, 18 Apr 2024 21:57:31 +0200 Subject: [PATCH] Add Page.createIsolatedWorld Signed-off-by: Francis Bouvier --- src/cdp/page.zig | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/cdp/page.zig b/src/cdp/page.zig index 6fcd815a..c79d2afb 100644 --- a/src/cdp/page.zig +++ b/src/cdp/page.zig @@ -12,6 +12,7 @@ const PageMethods = enum { getFrameTree, setLifecycleEventsEnabled, addScriptToEvaluateOnNewDocument, + createIsolatedWorld, }; pub fn page( @@ -28,6 +29,7 @@ pub fn page( .getFrameTree => getFrameTree(alloc, id, scanner, ctx), .setLifecycleEventsEnabled => setLifecycleEventsEnabled(alloc, id, scanner, ctx), .addScriptToEvaluateOnNewDocument => addScriptToEvaluateOnNewDocument(alloc, id, scanner, ctx), + .createIsolatedWorld => createIsolatedWorld(alloc, id, scanner, ctx), }; } @@ -123,3 +125,21 @@ fn addScriptToEvaluateOnNewDocument( }; return result(alloc, id, Res, Res{}, sessionID); } + +fn createIsolatedWorld( + alloc: std.mem.Allocator, + id: u64, + scanner: *std.json.Scanner, + _: *Ctx, +) ![]const u8 { + + // input + const content = try cdp.getContent(alloc, void, scanner); + + // output + const Resp = struct { + executionContextId: u8 = 2, + }; + + return result(alloc, id, Resp, .{}, content.sessionID); +}