2024-01-01 14:58:21 -05:00
|
|
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
2024-09-04 04:12:11 -04:00
|
|
|
import { core, primordials } from "ext:core/mod.js";
|
2024-03-06 18:08:10 -05:00
|
|
|
import { op_console_size } from "ext:core/ops";
|
2023-02-07 14:22:46 -05:00
|
|
|
const {
|
|
|
|
Uint32Array,
|
|
|
|
} = primordials;
|
2024-03-06 18:08:10 -05:00
|
|
|
const {
|
|
|
|
isTerminal,
|
|
|
|
} = core;
|
2020-07-19 13:49:44 -04:00
|
|
|
|
2023-02-07 14:22:46 -05:00
|
|
|
const size = new Uint32Array(2);
|
2020-07-19 13:49:44 -04:00
|
|
|
|
2023-02-07 14:22:46 -05:00
|
|
|
function consoleSize() {
|
2024-01-10 17:37:25 -05:00
|
|
|
op_console_size(size);
|
2023-02-07 14:22:46 -05:00
|
|
|
return { columns: size[0], rows: size[1] };
|
|
|
|
}
|
2020-07-19 13:49:44 -04:00
|
|
|
|
2024-09-04 04:12:11 -04:00
|
|
|
// Note: This function was soft-removed in Deno 2. Its types have been removed,
|
|
|
|
// but its implementation has been kept to avoid breaking changes.
|
2023-02-07 14:22:46 -05:00
|
|
|
function isatty(rid) {
|
2024-03-06 18:08:10 -05:00
|
|
|
return isTerminal(rid);
|
2023-02-07 14:22:46 -05:00
|
|
|
}
|
2020-07-19 13:49:44 -04:00
|
|
|
|
2023-02-07 14:22:46 -05:00
|
|
|
export { consoleSize, isatty };
|