diff options
Diffstat (limited to 'packages/cli/src/utils')
| -rw-r--r-- | packages/cli/src/utils/readStdin.ts | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/packages/cli/src/utils/readStdin.ts b/packages/cli/src/utils/readStdin.ts new file mode 100644 index 00000000..d890aa2c --- /dev/null +++ b/packages/cli/src/utils/readStdin.ts @@ -0,0 +1,27 @@ +/** + * @license + * Copyright 2025 Google LLC + * SPDX-License-Identifier: Apache-2.0 + */ + +export async function readStdin(): Promise<string> { + return new Promise((resolve, reject) => { + let data = ''; + process.stdin.setEncoding('utf8'); + + process.stdin.on('readable', () => { + let chunk; + while ((chunk = process.stdin.read()) !== null) { + data += chunk; + } + }); + + process.stdin.on('end', () => { + resolve(data); + }); + + process.stdin.on('error', (err) => { + reject(err); + }); + }); +} |
