mirror of
https://github.com/denoland/deno.git
synced 2024-12-22 07:14:47 -05:00
ab0c33ebf8
This commit stabilizes "Deno.consoleSize()" API. There is one change compared to previous unstable API, in that the API doesn't accept any arguments. Console size is established by querying syscalls for stdio streams at fd 0, 1 and 2.
28 lines
603 B
JavaScript
28 lines
603 B
JavaScript
// Copyright 2018-2022 the Deno authors. All rights reserved. MIT license.
|
|
"use strict";
|
|
|
|
((window) => {
|
|
const {
|
|
Uint32Array,
|
|
Uint8Array,
|
|
} = window.__bootstrap.primordials;
|
|
const core = window.Deno.core;
|
|
const ops = core.ops;
|
|
|
|
const size = new Uint32Array(2);
|
|
function consoleSize() {
|
|
ops.op_console_size(size);
|
|
return { columns: size[0], rows: size[1] };
|
|
}
|
|
|
|
const isattyBuffer = new Uint8Array(1);
|
|
function isatty(rid) {
|
|
ops.op_isatty(rid, isattyBuffer);
|
|
return !!isattyBuffer[0];
|
|
}
|
|
|
|
window.__bootstrap.tty = {
|
|
consoleSize,
|
|
isatty,
|
|
};
|
|
})(this);
|