-module(utils@misc). -compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]). -define(FILEPATH, "src/utils/misc.gleam"). -export([sleep/1, print_at/3, clear_screen/0, clear_line/0, hide_cursor/0, show_cursor/0, move_cursor_up/1, move_cursor_down/1, overwrite_line/1, read_line/1]). -file("src/utils/misc.gleam", 6). -spec sleep(integer()) -> nil. sleep(Time) -> gleam_erlang_ffi:sleep(Time). -file("src/utils/misc.gleam", 10). -spec print_at(binary(), integer(), integer()) -> nil. print_at(Text, X, Y) -> Escape_seq = <<<<<<<<"\x{001B}["/utf8, (erlang:integer_to_binary(Y))/binary>>/binary, ";"/utf8>>/binary, (erlang:integer_to_binary(X))/binary>>/binary, "H"/utf8>>, gleam_stdlib:print(<>). -file("src/utils/misc.gleam", 16). -spec clear_screen() -> nil. clear_screen() -> gleam_stdlib:print(<<"\x{001B}[2J\x{001B}[H"/utf8>>). -file("src/utils/misc.gleam", 20). -spec clear_line() -> nil. clear_line() -> gleam_stdlib:print(<<"\x{001B}[2K\r"/utf8>>). -file("src/utils/misc.gleam", 24). -spec hide_cursor() -> nil. hide_cursor() -> gleam_stdlib:print(<<"\x{001B}[?25l"/utf8>>). -file("src/utils/misc.gleam", 28). -spec show_cursor() -> nil. show_cursor() -> gleam_stdlib:print(<<"\x{001B}[?25h"/utf8>>). -file("src/utils/misc.gleam", 32). -spec move_cursor_up(integer()) -> nil. move_cursor_up(Lines) -> gleam_stdlib:print( <<<<"\x{001B}["/utf8, (erlang:integer_to_binary(Lines))/binary>>/binary, "A"/utf8>> ). -file("src/utils/misc.gleam", 36). -spec move_cursor_down(integer()) -> nil. move_cursor_down(Lines) -> gleam_stdlib:print( <<<<"\x{001B}["/utf8, (erlang:integer_to_binary(Lines))/binary>>/binary, "B"/utf8>> ). -file("src/utils/misc.gleam", 40). -spec overwrite_line(binary()) -> nil. overwrite_line(New_text) -> clear_line(), gleam_stdlib:print(New_text). -file("src/utils/misc.gleam", 45). -spec read_line(binary()) -> binary(). read_line(Prompt) -> io:get_line(Prompt).