Current section
Files
Jump to
Current section
Files
src/chrobot@protocol@browser.erl
-module(chrobot@protocol@browser).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch]).
-export([decode__get_version_response/1, reset_permissions/2, close/1, get_version/1, add_privacy_sandbox_enrollment_override/2]).
-export_type([get_version_response/0]).
-type get_version_response() :: {get_version_response,
binary(),
binary(),
binary(),
binary(),
binary()}.
-file("/Users/jonas/Projects/chrobot/src/chrobot/protocol/browser.gleam", 38).
-spec decode__get_version_response(gleam@dynamic:dynamic_()) -> {ok,
get_version_response()} |
{error, list(gleam@dynamic:decode_error())}.
decode__get_version_response(Value__) ->
gleam@result:'try'(
(gleam@dynamic:field(
<<"protocolVersion"/utf8>>,
fun gleam@dynamic:string/1
))(Value__),
fun(Protocol_version) ->
gleam@result:'try'(
(gleam@dynamic:field(
<<"product"/utf8>>,
fun gleam@dynamic:string/1
))(Value__),
fun(Product) ->
gleam@result:'try'(
(gleam@dynamic:field(
<<"revision"/utf8>>,
fun gleam@dynamic:string/1
))(Value__),
fun(Revision) ->
gleam@result:'try'(
(gleam@dynamic:field(
<<"userAgent"/utf8>>,
fun gleam@dynamic:string/1
))(Value__),
fun(User_agent) ->
gleam@result:'try'(
(gleam@dynamic:field(
<<"jsVersion"/utf8>>,
fun gleam@dynamic:string/1
))(Value__),
fun(Js_version) ->
{ok,
{get_version_response,
Protocol_version,
Product,
Revision,
User_agent,
Js_version}}
end
)
end
)
end
)
end
)
end
).
-file("/Users/jonas/Projects/chrobot/src/chrobot/protocol/browser.gleam", 68).
-spec reset_permissions(
fun((binary(), gleam@option:option(gleam@json:json())) -> AMEP),
gleam@option:option(binary())
) -> AMEP.
reset_permissions(Callback__, Browser_context_id) ->
Callback__(
<<"Browser.resetPermissions"/utf8>>,
{some,
gleam@json:object(
begin
_pipe = [],
chrobot@internal@utils:add_optional(
_pipe,
Browser_context_id,
fun(Inner_value__) ->
{<<"browserContextId"/utf8>>,
gleam@json:string(Inner_value__)}
end
)
end
)}
).
-file("/Users/jonas/Projects/chrobot/src/chrobot/protocol/browser.gleam", 85).
-spec close(fun((binary(), gleam@option:option(any())) -> AMEW)) -> AMEW.
close(Callback__) ->
Callback__(<<"Browser.close"/utf8>>, none).
-file("/Users/jonas/Projects/chrobot/src/chrobot/protocol/browser.gleam", 96).
-spec get_version(
fun((binary(), gleam@option:option(any())) -> {ok, gleam@dynamic:dynamic_()} |
{error, chrobot@chrome:request_error()})
) -> {ok, get_version_response()} | {error, chrobot@chrome:request_error()}.
get_version(Callback__) ->
gleam@result:'try'(
Callback__(<<"Browser.getVersion"/utf8>>, none),
fun(Result__) -> _pipe = decode__get_version_response(Result__),
gleam@result:replace_error(_pipe, protocol_error) end
).
-file("/Users/jonas/Projects/chrobot/src/chrobot/protocol/browser.gleam", 111).
-spec add_privacy_sandbox_enrollment_override(
fun((binary(), gleam@option:option(gleam@json:json())) -> AMFL),
binary()
) -> AMFL.
add_privacy_sandbox_enrollment_override(Callback__, Url) ->
Callback__(
<<"Browser.addPrivacySandboxEnrollmentOverride"/utf8>>,
{some, gleam@json:object([{<<"url"/utf8>>, gleam@json:string(Url)}])}
).