@cowwoc/requirements
Version:
A fluent API for enforcing design contracts with automatic message generation.
35 lines • 1.18 kB
JavaScript
/*
* Copyright (c) 2019 Gili Tzabari
* Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
*/
import { TerminalEncoding, Terminal, internalValueToString, assertThatValueIsNotNull } from "../internal.mjs";
/**
* Default global configuration.
*/
class MainGlobalConfiguration {
terminal;
/**
* @param terminal - the system configuration
* @throws TypeError if `terminal` is not a `Terminal`
*/
constructor(terminal) {
assertThatValueIsNotNull(terminal, "terminal");
this.terminal = terminal;
}
supportedTerminalEncodings() {
return this.terminal.getSupportedTypes();
}
terminalEncoding(encoding) {
if (encoding === undefined)
return this.terminal.getEncoding();
this.terminal.setEncoding(encoding);
return this;
}
toString() {
return `MainGlobalConfiguration[supportedTerminalEncodings=
${internalValueToString(this.supportedTerminalEncodings())}, terminalEncoding=
${internalValueToString(this.terminalEncoding())}]`;
}
}
export { MainGlobalConfiguration };
//# sourceMappingURL=MainGlobalConfiguration.mjs.map