-module(dagger@dsl@cloud). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/dagger/dsl/cloud.gleam"). -export([cloud/0, id/1, trace_u_r_l/3]). -if(?OTP_RELEASE >= 27). -define(MODULEDOC(Str), -moduledoc(Str)). -define(DOC(Str), -doc(Str)). -else. -define(MODULEDOC(Str), -compile([])). -define(DOC(Str), -compile([])). -endif. -file("src/dagger/dsl/cloud.gleam", 9). -spec cloud() -> dagger@dsl@types:cloud(). cloud() -> Field = {field, <<"cloud"/utf8>>, [], []}, {cloud, {pure, [Field]}}. -file("src/dagger/dsl/cloud.gleam", 15). ?DOC(" A unique identifier for this Cloud.\n"). -spec id(dagger@dsl@types:cloud()) -> dagger@dsl@types:cloud(). id(Parent) -> Field = {field, <<"id"/utf8>>, [], []}, New_op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> {pure, lists:append(Q, [Field])} end ) end, {cloud, New_op}. -file("src/dagger/dsl/cloud.gleam", 25). ?DOC(" The trace URL for the current session\n"). -spec trace_u_r_l( dagger@dsl@types:cloud(), dagger@types:client(), fun(({ok, binary()} | {error, dagger@types:query_error()}) -> HON) ) -> HON. trace_u_r_l(Parent, Client, Handler) -> Field = {field, <<"traceURL"/utf8>>, [], []}, Op = begin dagger@types:bind( erlang:element(2, Parent), fun(Q) -> Full_query = lists:append(Q, [Field]), {fetch, Full_query, {decoder, fun gleam@dynamic@decode:decode_dynamic/1}, fun(Dyn) -> Path = dagger@types:make_path(Full_query), case gleam@dynamic@decode:run( Dyn, gleam@dynamic@decode:at( Path, {decoder, fun gleam@dynamic@decode:decode_string/1} ) ) of {ok, Val} -> {pure, {ok, Val}}; {error, _} -> {pure, {error, {decoding_error, <<"traceURL"/utf8>>}}} end end} end ) end, Handler(dagger@interpreter:run(Op, Client)).