21 lines
705 B
TypeScript
21 lines
705 B
TypeScript
import { CreateKeyboardListeners } from './input/keyboard'
|
|
import { Wush } from './shell/Wush'
|
|
import { Terminal } from './terminal/Terminal'
|
|
import { EventBroadcaster } from './utils/EventBroadcaster'
|
|
|
|
// Initializes the app
|
|
const init = () => {
|
|
const localBroadcaster = new EventBroadcaster()
|
|
|
|
// creates keyboard listeners for the local event broadcaster
|
|
CreateKeyboardListeners(
|
|
(key: string, isCharacter: boolean) => localBroadcaster.emit('keydown', key, isCharacter),
|
|
(key: string, isCharacter: boolean) => localBroadcaster.emit('keyup', key, isCharacter),
|
|
)
|
|
|
|
const terminal = new Terminal()
|
|
terminal.LoadShell(new Wush(localBroadcaster, terminal))
|
|
}
|
|
|
|
init()
|