mirror of
https://github.com/denoland/deno.git
synced 2024-12-22 23:34:47 -05:00
b4aa153097
This PR refactors all internal js files (except core) to be written as ES modules. `__bootstrap`has been mostly replaced with static imports in form in `internal:[path to file from repo root]`. To specify if files are ESM, an `esm` method has been added to `Extension`, similar to the `js` method. A new ModuleLoader called `InternalModuleLoader` has been added to enable the loading of internal specifiers, which is used in all situations except when a snapshot is only loaded, and not a new one is created from it. --------- Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
23 lines
542 B
JavaScript
23 lines
542 B
JavaScript
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
|
|
const core = globalThis.Deno.core;
|
|
const ops = core.ops;
|
|
const primordials = globalThis.__bootstrap.primordials;
|
|
const {
|
|
Uint32Array,
|
|
Uint8Array,
|
|
} = primordials;
|
|
|
|
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];
|
|
}
|
|
|
|
export { consoleSize, isatty };
|