SYMBOL INDEX (7200 symbols across 604 files) FILE: cmd/generatego/main-generatego.go constant WshClientFileName (line 19) | WshClientFileName = "pkg/wshrpc/wshclient/wshclient.go" constant WaveObjMetaConstsFileName (line 20) | WaveObjMetaConstsFileName = "pkg/waveobj/metaconsts.go" constant SettingsMetaConstsFileName (line 21) | SettingsMetaConstsFileName = "pkg/wconfig/metaconsts.go" function GenerateWshClient (line 23) | func GenerateWshClient() error { function GenerateWaveObjMetaConsts (line 56) | func GenerateWaveObjMetaConsts() error { function GenerateSettingsMetaConsts (line 69) | func GenerateSettingsMetaConsts() error { function main (line 82) | func main() { FILE: cmd/generateschema/main-generateschema.go constant WaveSchemaSettingsFileName (line 19) | WaveSchemaSettingsFileName = "schema/settings.json" constant WaveSchemaConnectionsFileName (line 20) | WaveSchemaConnectionsFileName = "schema/connections.json" constant WaveSchemaAiPresetsFileName (line 21) | WaveSchemaAiPresetsFileName = "schema/aipresets.json" constant WaveSchemaWidgetsFileName (line 22) | WaveSchemaWidgetsFileName = "schema/widgets.json" constant WaveSchemaBgPresetsFileName (line 23) | WaveSchemaBgPresetsFileName = "schema/bgpresets.json" constant WaveSchemaWaveAIFileName (line 24) | WaveSchemaWaveAIFileName = "schema/waveai.json" type ViewNameType (line 28) | type ViewNameType method JSONSchema (line 30) | func (ViewNameType) JSONSchema() *jsonschema.Schema { type ControllerNameType (line 45) | type ControllerNameType method JSONSchema (line 47) | func (ControllerNameType) JSONSchema() *jsonschema.Schema { type WidgetsMetaSchemaHints (line 63) | type WidgetsMetaSchemaHints struct function generateSchema (line 108) | func generateSchema(template any, dir string) error { function generateWidgetsSchema (line 125) | func generateWidgetsSchema(dir string) error { function main (line 165) | func main() { FILE: cmd/generatets/main-generatets.go function generateTypesFile (line 20) | func generateTypesFile(tsTypesMap map[reflect.Type]string) error { function generateWaveEventFile (line 66) | func generateWaveEventFile(tsTypesMap map[reflect.Type]string) error { function generateServicesFile (line 84) | func generateServicesFile(tsTypesMap map[reflect.Type]string) error { function generateWshClientApiFile (line 129) | func generateWshClientApiFile(tsTypeMap map[reflect.Type]string) error { function main (line 164) | func main() { FILE: cmd/packfiles/main-packfiles.go function main (line 14) | func main() { FILE: cmd/server/main-server.go constant InitialTelemetryWait (line 58) | InitialTelemetryWait = 10 * time.Second constant TelemetryTick (line 59) | TelemetryTick = 2 * time.Minute constant TelemetryInterval (line 60) | TelemetryInterval = 4 * time.Hour constant TelemetryInitialCountsWait (line 61) | TelemetryInitialCountsWait = 5 * time.Second constant TelemetryCountsInterval (line 62) | TelemetryCountsInterval = 1 * time.Hour constant BackupCleanupTick (line 63) | BackupCleanupTick = 2 * time.Minute constant BackupCleanupInterval (line 64) | BackupCleanupInterval = 4 * time.Hour constant InitialDiagnosticWait (line 65) | InitialDiagnosticWait = 5 * time.Minute constant DiagnosticTick (line 66) | DiagnosticTick = 10 * time.Minute function init (line 70) | func init() { function doShutdown (line 78) | func doShutdown(reason string) { function stdinReadWatch (line 100) | func stdinReadWatch() { function startConfigWatcher (line 114) | func startConfigWatcher() { function telemetryLoop (line 121) | func telemetryLoop() { function diagnosticLoop (line 136) | func diagnosticLoop() { function sendDiagnosticPing (line 157) | func sendDiagnosticPing() bool { function setupTelemetryConfigHandler (line 172) | func setupTelemetryConfigHandler() { function backupCleanupLoop (line 189) | func backupCleanupLoop() { function panicTelemetryHandler (line 206) | func panicTelemetryHandler(panicName string) { function sendTelemetryWrapper (line 217) | func sendTelemetryWrapper() { function updateTelemetryCounts (line 231) | func updateTelemetryCounts(lastCounts telemetrydata.TEventProps) telemet... function updateTelemetryCountsLoop (line 274) | func updateTelemetryCountsLoop() { function beforeSendActivityUpdate (line 290) | func beforeSendActivityUpdate(ctx context.Context) { function startupActivityUpdate (line 305) | func startupActivityUpdate(firstLaunch bool) { function shutdownActivityUpdate (line 366) | func shutdownActivityUpdate() { function createMainWshClient (line 385) | func createMainWshClient() { function grabAndRemoveEnvVars (line 398) | func grabAndRemoveEnvVars() error { function clearTempFiles (line 424) | func clearTempFiles() error { function maybeStartPprofServer (line 435) | func maybeStartPprofServer() { function main (line 458) | func main() { FILE: cmd/test-conn/cliprovider.go type CLIProvider (line 16) | type CLIProvider struct method GetUserInput (line 20) | func (p *CLIProvider) GetUserInput(ctx context.Context, request *useri... FILE: cmd/test-conn/main-test-conn.go function usage (line 19) | func usage() { function main (line 48) | func main() { FILE: cmd/test-conn/testutil.go function setupWaveEnvVars (line 30) | func setupWaveEnvVars() error { function initTestHarness (line 63) | func initTestHarness(autoAccept bool) error { function testBasicConnect (line 107) | func testBasicConnect(connName string, timeout time.Duration) error { function testShellWithCommand (line 142) | func testShellWithCommand(connName string, cmd string, timeout time.Dura... function testWshExec (line 192) | func testWshExec(connName string, cmd string, timeout time.Duration) err... function testInteractiveShell (line 268) | func testInteractiveShell(connName string, timeout time.Duration) error { FILE: cmd/test-streammanager/bridge.go type WriterBridge (line 14) | type WriterBridge struct method StreamDataCommand (line 18) | func (b *WriterBridge) StreamDataCommand(data wshrpc.CommandStreamData... method StreamDataAckCommand (line 23) | func (b *WriterBridge) StreamDataAckCommand(ack wshrpc.CommandStreamAc... type ReaderBridge (line 29) | type ReaderBridge struct method StreamDataCommand (line 33) | func (b *ReaderBridge) StreamDataCommand(data wshrpc.CommandStreamData... method StreamDataAckCommand (line 37) | func (b *ReaderBridge) StreamDataAckCommand(ack wshrpc.CommandStreamAc... FILE: cmd/test-streammanager/deliverypipe.go type DeliveryConfig (line 16) | type DeliveryConfig struct type taggedPacket (line 21) | type taggedPacket struct type DeliveryPipe (line 30) | type DeliveryPipe struct method SetDataTarget (line 68) | func (dp *DeliveryPipe) SetDataTarget(fn func(wshrpc.CommandStreamData... method SetAckTarget (line 74) | func (dp *DeliveryPipe) SetAckTarget(fn func(wshrpc.CommandStreamAckDa... method EnqueueData (line 80) | func (dp *DeliveryPipe) EnqueueData(pkt wshrpc.CommandStreamData) { method EnqueueAck (line 108) | func (dp *DeliveryPipe) EnqueueAck(pkt wshrpc.CommandStreamAckData) { method computeDeliveryTime (line 132) | func (dp *DeliveryPipe) computeDeliveryTime() time.Time { method sortPending (line 145) | func (dp *DeliveryPipe) sortPending(pending *[]taggedPacket) { method Start (line 155) | func (dp *DeliveryPipe) Start() { method dataDeliveryLoop (line 161) | func (dp *DeliveryPipe) dataDeliveryLoop() { method ackDeliveryLoop (line 184) | func (dp *DeliveryPipe) ackDeliveryLoop() { method deliveryLoop (line 203) | func (dp *DeliveryPipe) deliveryLoop( method Close (line 243) | func (dp *DeliveryPipe) Close() { function NewDeliveryPipe (line 59) | func NewDeliveryPipe(config DeliveryConfig, metrics *Metrics) *DeliveryP... FILE: cmd/test-streammanager/generator.go constant Base64Chars (line 11) | Base64Chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234... type TestDataGenerator (line 13) | type TestDataGenerator struct method Read (line 22) | func (g *TestDataGenerator) Read(p []byte) (n int, err error) { function NewTestDataGenerator (line 18) | func NewTestDataGenerator(totalBytes int64) *TestDataGenerator { FILE: cmd/test-streammanager/main-test-streammanager.go type TestConfig (line 19) | type TestConfig struct function init (line 39) | func init() { function main (line 49) | func main() { function runTest (line 55) | func runTest(config TestConfig) error { function runStreamManagerMode (line 162) | func runStreamManagerMode(config TestConfig, writerBroker *streamclient.... function runWriterMode (line 183) | func runWriterMode(config TestConfig, writerBroker *streamclient.Broker,... type BrokerDataSender (line 208) | type BrokerDataSender struct method SendData (line 212) | func (s *BrokerDataSender) SendData(dataPk wshrpc.CommandStreamData) { type MetricsWriter (line 217) | type MetricsWriter struct method Write (line 222) | func (mw *MetricsWriter) Write(p []byte) (n int, err error) { type SlowReader (line 231) | type SlowReader struct method Read (line 243) | func (sr *SlowReader) Read(p []byte) (n int, err error) { function NewSlowReader (line 236) | func NewSlowReader(reader io.Reader, bytesPerSec int) *SlowReader { FILE: cmd/test-streammanager/metrics.go type Metrics (line 12) | type Metrics struct method Start (line 37) | func (m *Metrics) Start() { method End (line 43) | func (m *Metrics) End() { method AddDataPacket (line 49) | func (m *Metrics) AddDataPacket() { method AddAckPacket (line 55) | func (m *Metrics) AddAckPacket() { method AddOOOPacket (line 61) | func (m *Metrics) AddOOOPacket() { method AddBytes (line 67) | func (m *Metrics) AddBytes(n int64) { method UpdatePipeHighWaterMark (line 73) | func (m *Metrics) UpdatePipeHighWaterMark(currentBytes int64) { method GetPipeHighWaterMark (line 81) | func (m *Metrics) GetPipeHighWaterMark() int64 { method Report (line 87) | func (m *Metrics) Report() string { function NewMetrics (line 33) | func NewMetrics() *Metrics { FILE: cmd/test-streammanager/verifier.go type Verifier (line 10) | type Verifier struct method Write (line 25) | func (v *Verifier) Write(p []byte) (n int, err error) { method TotalReceived (line 47) | func (v *Verifier) TotalReceived() int64 { method Mismatches (line 53) | func (v *Verifier) Mismatches() int { method FirstMismatch (line 59) | func (v *Verifier) FirstMismatch() int64 { function NewVerifier (line 18) | func NewVerifier(totalBytes int64) *Verifier { FILE: cmd/test/test-main.go function main (line 6) | func main() { FILE: cmd/testai/main-testai.go constant DefaultAnthropicModel (line 27) | DefaultAnthropicModel = "claude-sonnet-4-5" constant DefaultOpenAIModel (line 28) | DefaultOpenAIModel = "gpt-5.1" constant DefaultOpenRouterModel (line 29) | DefaultOpenRouterModel = "mistralai/mistral-small-3.2-24b-instruct" constant DefaultNanoGPTModel (line 30) | DefaultNanoGPTModel = "zai-org/glm-4.7" constant DefaultGeminiModel (line 31) | DefaultGeminiModel = "gemini-3-pro-preview" type TestResponseWriter (line 35) | type TestResponseWriter struct method Header (line 39) | func (w *TestResponseWriter) Header() http.Header { method Write (line 46) | func (w *TestResponseWriter) Write(data []byte) (int, error) { method WriteHeader (line 51) | func (w *TestResponseWriter) WriteHeader(statusCode int) { method Flush (line 56) | func (w *TestResponseWriter) Flush() { method SetWriteDeadline (line 61) | func (w *TestResponseWriter) SetWriteDeadline(deadline time.Time) error { method SetReadDeadline (line 66) | func (w *TestResponseWriter) SetReadDeadline(deadline time.Time) error { function getToolDefinitions (line 71) | func getToolDefinitions() []uctypes.ToolDefinition { function testOpenAI (line 111) | func testOpenAI(ctx context.Context, model, message string, tools []ucty... function testOpenAIComp (line 161) | func testOpenAIComp(ctx context.Context, model, message string, tools []... function testOpenRouter (line 211) | func testOpenRouter(ctx context.Context, model, message string, tools []... function testNanoGPT (line 261) | func testNanoGPT(ctx context.Context, model, message string, tools []uct... function testAnthropic (line 310) | func testAnthropic(ctx context.Context, model, message string, tools []u... function testGemini (line 360) | func testGemini(ctx context.Context, model, message string, tools []ucty... function testT1 (line 411) | func testT1(ctx context.Context) { function testT2 (line 417) | func testT2(ctx context.Context) { function testT3 (line 423) | func testT3(ctx context.Context) { function testT4 (line 427) | func testT4(ctx context.Context) { function printUsage (line 433) | func printUsage() { function main (line 465) | func main() { FILE: cmd/testopenai/main-testopenai.go function makeOpenAIRequest (line 22) | func makeOpenAIRequest(ctx context.Context, apiKey, model, message strin... function processSSEStream (line 93) | func processSSEStream(reader io.Reader) error { function printUsage (line 111) | func printUsage() { function main (line 124) | func main() { FILE: cmd/testsummarize/main-testsummarize.go function printUsage (line 16) | func printUsage() { function main (line 36) | func main() { FILE: cmd/wsh/cmd/setmeta_test.go function TestParseMetaSets (line 11) | func TestParseMetaSets(t *testing.T) { function TestParseMetaValue (line 136) | func TestParseMetaValue(t *testing.T) { FILE: cmd/wsh/cmd/wshcmd-ai.go function init (line 47) | func init() { function detectMimeType (line 54) | func detectMimeType(data []byte) string { function getMaxFileSize (line 59) | func getMaxFileSize(mimeType string) (int, string) { function aiRun (line 69) | func aiRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-badge.go function init (line 36) | func init() { function badgeRun (line 45) | func badgeRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-blocks.go type BlockDetails (line 30) | type BlockDetails struct function init (line 73) | func init() { function blocksListRun (line 100) | func blocksListRun(cmd *cobra.Command, args []string) error { function matchesViewType (line 259) | func matchesViewType(actual, filter string) bool { function isKnownViewFilter (line 283) | func isKnownViewFilter(f string) bool { FILE: cmd/wsh/cmd/wshcmd-conn.go function init (line 69) | func init() { function validateConnectionName (line 79) | func validateConnectionName(name string) error { function getAllConnStatus (line 89) | func getAllConnStatus() ([]wshrpc.ConnStatus, error) { function connStatusRun (line 104) | func connStatusRun(cmd *cobra.Command, args []string) error { function connReinstallRun (line 125) | func connReinstallRun(cmd *cobra.Command, args []string) error { function connDisconnectRun (line 148) | func connDisconnectRun(cmd *cobra.Command, args []string) error { function connDisconnectAllRun (line 161) | func connDisconnectAllRun(cmd *cobra.Command, args []string) error { function connConnectRun (line 180) | func connConnectRun(cmd *cobra.Command, args []string) error { function connEnsureRun (line 197) | func connEnsureRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-connserver.go constant JobLogRetentionTime (line 42) | JobLogRetentionTime = 48 * time.Hour constant JobLogCleanupDelay (line 43) | JobLogCleanupDelay = 10 * time.Second constant JobLogCleanupInterval (line 44) | JobLogCleanupInterval = 1 * time.Hour function init (line 54) | func init() { function cleanupOldJobLogs (line 62) | func cleanupOldJobLogs() { function startJobLogCleanup (line 98) | func startJobLogCleanup() { function getRemoteDomainSocketName (line 117) | func getRemoteDomainSocketName() string { function MakeRemoteUnixListener (line 122) | func MakeRemoteUnixListener() (net.Listener, error) { function handleNewListenerConn (line 134) | func handleNewListenerConn(conn net.Conn, router *wshutil.WshRouter) { function runListener (line 167) | func runListener(listener net.Listener, router *wshutil.WshRouter) { function setupConnServerRpcClientWithRouter (line 186) | func setupConnServerRpcClientWithRouter(router *wshutil.WshRouter, sockN... function serverRunRouter (line 202) | func serverRunRouter() error { function serverRunRouterDomainSocket (line 287) | func serverRunRouterDomainSocket(jwtToken string) error { function serverRunNormal (line 395) | func serverRunNormal(jwtToken string) error { function askForJwtToken (line 416) | func askForJwtToken() (string, error) { function serverRun (line 436) | func serverRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-createblock.go function init (line 26) | func init() { function createBlockRun (line 31) | func createBlockRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-debug.go function init (line 34) | func init() { function debugSendTelemetryRun (line 40) | func debugSendTelemetryRun(cmd *cobra.Command, args []string) error { function debugBlockIdsRun (line 45) | func debugBlockIdsRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-debugterm.go constant DebugTermModeHex (line 23) | DebugTermModeHex = "hex" constant DebugTermModeDecode (line 24) | DebugTermModeDecode = "decode" function init (line 43) | func init() { function debugTermRun (line 51) | func debugTermRun(cmd *cobra.Command, args []string) (rtnErr error) { function debugTermPreRun (line 119) | func debugTermPreRun(cmd *cobra.Command, args []string) error { function getDebugTermMode (line 126) | func getDebugTermMode() (string, error) { type debugTermStdinEntry (line 134) | type debugTermStdinEntry struct function parseDebugTermStdinData (line 138) | func parseDebugTermStdinData(data []byte) ([]byte, error) { function formatDebugTermHex (line 165) | func formatDebugTermHex(data []byte) string { function parseCursorForwardN (line 169) | func parseCursorForwardN(seq []byte) (int, bool) { function splitOnCRLFRuns (line 186) | func splitOnCRLFRuns(s string) []string { function formatDebugTermDecode (line 211) | func formatDebugTermDecode(data []byte) string { function describeSGR (line 384) | func describeSGR(params string) string { function formatDebugTermCSILine (line 426) | func formatDebugTermCSILine(seq []byte) string { function consumeDebugTermCSI (line 467) | func consumeDebugTermCSI(data []byte, start int) ([]byte, int) { function formatDebugTermOSCLine (line 478) | func formatDebugTermOSCLine(seq []byte) string { function consumeDebugTermOSC (line 497) | func consumeDebugTermOSC(data []byte, start int) ([]byte, int) { function consumeDebugTermST (line 511) | func consumeDebugTermST(data []byte, start int) ([]byte, int) { function isDebugTermC0Control (line 522) | func isDebugTermC0Control(b byte) bool { function consumeDebugTermText (line 526) | func consumeDebugTermText(data []byte, i int) (start, end int) { FILE: cmd/wsh/cmd/wshcmd-debugterm_test.go function TestFormatDebugTermHex (line 11) | func TestFormatDebugTermHex(t *testing.T) { function TestFormatDebugTermDecode (line 18) | func TestFormatDebugTermDecode(t *testing.T) { function TestParseDebugTermStdinData (line 37) | func TestParseDebugTermStdinData(t *testing.T) { function TestParseDebugTermStdinDataStructs (line 56) | func TestParseDebugTermStdinDataStructs(t *testing.T) { function TestFormatDebugTermDecodeCursorForward (line 75) | func TestFormatDebugTermDecodeCursorForward(t *testing.T) { function TestParseDebugTermStdinDataRaw (line 91) | func TestParseDebugTermStdinDataRaw(t *testing.T) { FILE: cmd/wsh/cmd/wshcmd-deleteblock.go function init (line 21) | func init() { function deleteBlockRun (line 25) | func deleteBlockRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-editconfig.go function init (line 26) | func init() { function editConfigRun (line 31) | func editConfigRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-editor.go function init (line 28) | func init() { function editorRun (line 33) | func editorRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-file-util.go function convertNotFoundErr (line 21) | func convertNotFoundErr(err error) error { function ensureFile (line 31) | func ensureFile(fileData wshrpc.FileData) (*wshrpc.FileInfo, error) { function streamWriteToFile (line 51) | func streamWriteToFile(fileData wshrpc.FileData, reader io.Reader) error { function streamReadFromFile (line 93) | func streamReadFromFile(ctx context.Context, fileData wshrpc.FileData, w... function fixRelativePaths (line 98) | func fixRelativePaths(path string) (string, error) { FILE: cmd/wsh/cmd/wshcmd-file.go constant MaxFileSize (line 26) | MaxFileSize = 10 * 1024 * 1024 constant TimeoutYear (line 28) | TimeoutYear = int64(365) * 24 * 60 * 60 * 1000 constant UriHelpText (line 30) | UriHelpText = ` function init (line 64) | func init() { function fileCatRun (line 169) | func fileCatRun(cmd *cobra.Command, args []string) error { function fileInfoRun (line 192) | func fileInfoRun(cmd *cobra.Command, args []string) error { function fileRmRun (line 228) | func fileRmRun(cmd *cobra.Command, args []string) error { function fileWriteRun (line 246) | func fileWriteRun(cmd *cobra.Command, args []string) error { function fileAppendRun (line 272) | func fileAppendRun(cmd *cobra.Command, args []string) error { function checkFileSize (line 330) | func checkFileSize(path string, maxSize int64) (*wshrpc.FileInfo, error) { function fileCpRun (line 352) | func fileCpRun(cmd *cobra.Command, args []string) error { function fileMvRun (line 386) | func fileMvRun(cmd *cobra.Command, args []string) error { function filePrintColumns (line 416) | func filePrintColumns(filesChan <-chan wshrpc.RespOrErrorUnion[wshrpc.Co... function filePrintLong (line 459) | func filePrintLong(filesChan <-chan wshrpc.RespOrErrorUnion[wshrpc.Comma... function fileListRun (line 499) | func fileListRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-focusblock.go function init (line 23) | func init() { function focusBlockRun (line 27) | func focusBlockRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-getmeta.go function init (line 30) | func init() { function filterMetaKeys (line 37) | func filterMetaKeys(meta map[string]interface{}, keys []string) map[stri... function getMetaRun (line 75) | func getMetaRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-getvar.go function init (line 33) | func init() { function shouldPrintNewline (line 43) | func shouldPrintNewline() bool { function getVarRun (line 54) | func getVarRun(cmd *cobra.Command, args []string) error { function getAllVariables (line 110) | func getAllVariables(zoneId string) error { FILE: cmd/wsh/cmd/wshcmd-jobdebug.go function init (line 115) | func init() { function jobDebugListRun (line 163) | func jobDebugListRun(cmd *cobra.Command, args []string) error { function jobDebugDeleteRun (line 242) | func jobDebugDeleteRun(cmd *cobra.Command, args []string) error { function jobDebugDeleteAllRun (line 252) | func jobDebugDeleteAllRun(cmd *cobra.Command, args []string) error { function jobDebugPruneRun (line 277) | func jobDebugPruneRun(cmd *cobra.Command, args []string) error { function jobDebugTerminateRun (line 308) | func jobDebugTerminateRun(cmd *cobra.Command, args []string) error { function jobDebugDisconnectRun (line 318) | func jobDebugDisconnectRun(cmd *cobra.Command, args []string) error { function jobDebugReconnectRun (line 328) | func jobDebugReconnectRun(cmd *cobra.Command, args []string) error { function jobDebugReconnectConnRun (line 338) | func jobDebugReconnectConnRun(cmd *cobra.Command, args []string) error { function jobDebugGetOutputRun (line 348) | func jobDebugGetOutputRun(cmd *cobra.Command, args []string) error { function jobDebugStartRun (line 383) | func jobDebugStartRun(cmd *cobra.Command, args []string) error { function jobDebugAttachJobRun (line 405) | func jobDebugAttachJobRun(cmd *cobra.Command, args []string) error { function jobDebugDetachJobRun (line 420) | func jobDebugDetachJobRun(cmd *cobra.Command, args []string) error { function jobDebugBlockAttachmentRun (line 430) | func jobDebugBlockAttachmentRun(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-jobmanager.go function init (line 31) | func init() { function jobManagerRun (line 39) | func jobManagerRun(cmd *cobra.Command, args []string) error { function readJobAuthToken (line 82) | func readJobAuthToken(ctx context.Context) (string, error) { FILE: cmd/wsh/cmd/wshcmd-launch.go function init (line 24) | func init() { function launchRun (line 29) | func launchRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-notify.go function init (line 26) | func init() { function notifyRun (line 32) | func notifyRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-rcfiles.go function init (line 11) | func init() { FILE: cmd/wsh/cmd/wshcmd-readfile.go function init (line 25) | func init() { function runReadFile (line 29) | func runReadFile(cmd *cobra.Command, args []string) { FILE: cmd/wsh/cmd/wshcmd-root.go type WrappedWriter (line 38) | type WrappedWriter struct method Write (line 42) | func (w *WrappedWriter) Write(p []byte) (n int, err error) { function WriteStderr (line 70) | func WriteStderr(fmtStr string, args ...interface{}) { function WriteStdout (line 74) | func WriteStdout(fmtStr string, args ...interface{}) { function OutputHelpMessage (line 78) | func OutputHelpMessage(cmd *cobra.Command) { function preRunSetupRpcClient (line 84) | func preRunSetupRpcClient(cmd *cobra.Command, args []string) error { function getIsTty (line 96) | func getIsTty() bool { function activityWrap (line 105) | func activityWrap(activityStr string, origRunE RunEFnType) RunEFnType { function resolveBlockArg (line 114) | func resolveBlockArg() (*waveobj.ORef, error) { function setupRpcClientWithToken (line 126) | func setupRpcClientWithToken(swapTokenStr string) (wshrpc.CommandAuthent... function setupRpcClient (line 147) | func setupRpcClient(serverImpl wshutil.ServerImpl, jwtToken string) error { function isFullORef (line 174) | func isFullORef(orefStr string) bool { function resolveSimpleId (line 179) | func resolveSimpleId(id string) (*waveobj.ORef, error) { function getTabIdFromEnv (line 205) | func getTabIdFromEnv() string { function sendActivity (line 214) | func sendActivity(wshCmdName string, success bool) { function Execute (line 227) | func Execute() { FILE: cmd/wsh/cmd/wshcmd-run.go function init (line 28) | func init() { function runRun (line 41) | func runRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-secret.go function init (line 68) | func init() { function secretGetRun (line 78) | func secretGetRun(cmd *cobra.Command, args []string) (rtnErr error) { function secretSetRun (line 102) | func secretSetRun(cmd *cobra.Command, args []string) (rtnErr error) { function secretListRun (line 138) | func secretListRun(cmd *cobra.Command, args []string) (rtnErr error) { function secretDeleteRun (line 154) | func secretDeleteRun(cmd *cobra.Command, args []string) (rtnErr error) { function secretUiRun (line 174) | func secretUiRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-setbg.go function init (line 48) | func init() { function validateHexColor (line 61) | func validateHexColor(color string) error { function setBgRun (line 76) | func setBgRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-setconfig.go function init (line 22) | func init() { function setConfigRun (line 26) | func setConfigRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-setmeta.go function init (line 29) | func init() { function loadJSONFile (line 34) | func loadJSONFile(filepath string) (map[string]interface{}, error) { function parseMetaValue (line 62) | func parseMetaValue(setVal string) (any, error) { function setNestedValue (line 97) | func setNestedValue(meta map[string]any, path []string, value any) { function parseMetaSets (line 128) | func parseMetaSets(metaSets []string) (map[string]any, error) { function simpleMergeMeta (line 148) | func simpleMergeMeta(meta map[string]interface{}, metaUpdate map[string]... function setMetaRun (line 159) | func setMetaRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-setvar.go constant DefaultVarFileName (line 15) | DefaultVarFileName = "var" function init (line 36) | func init() { function parseKeyValue (line 43) | func parseKeyValue(arg string) (key, value string, err error) { function setVarRun (line 59) | func setVarRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-shell-unix.go function init (line 17) | func init() { function shellCmdInner (line 30) | func shellCmdInner() string { FILE: cmd/wsh/cmd/wshcmd-shell-win.go function init (line 12) | func init() { function shellCmdInner (line 25) | func shellCmdInner() { FILE: cmd/wsh/cmd/wshcmd-ssh.go function init (line 32) | func init() { function sshRun (line 40) | func sshRun(cmd *cobra.Command, args []string) (rtnErr error) { function applySSHOverrides (line 112) | func applySSHOverrides(sshArg string, login string, port string) (string... FILE: cmd/wsh/cmd/wshcmd-ssh_test.go function TestApplySSHOverrides (line 8) | func TestApplySSHOverrides(t *testing.T) { FILE: cmd/wsh/cmd/wshcmd-tabindicator.go function init (line 35) | func init() { function tabIndicatorRun (line 44) | func tabIndicatorRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-term.go function init (line 28) | func init() { function termRun (line 33) | func termRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-termscrollback.go function init (line 37) | func init() { function termScrollbackRun (line 46) | func termScrollbackRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-test.go function init (line 19) | func init() { function runTestCmd (line 23) | func runTestCmd(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-token.go function init (line 20) | func init() { function tokenCmdRun (line 24) | func tokenCmdRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-version.go function init (line 27) | func init() { function runVersionCmd (line 33) | func runVersionCmd(cmd *cobra.Command, args []string) error { FILE: cmd/wsh/cmd/wshcmd-view.go function init (line 36) | func init() { function viewRun (line 43) | func viewRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-wavepath.go function init (line 24) | func init() { function wavepathRun (line 31) | func wavepathRun(cmd *cobra.Command, args []string) (rtnErr error) { function tailLogFile (line 86) | func tailLogFile(path string) error { FILE: cmd/wsh/cmd/wshcmd-web.go function init (line 44) | func init() { function webGetRun (line 55) | func webGetRun(cmd *cobra.Command, args []string) error { function webOpenRun (line 98) | func webOpenRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/cmd/wshcmd-workspace.go function init (line 18) | func init() { function workspaceListRun (line 30) | func workspaceListRun(cmd *cobra.Command, args []string) { FILE: cmd/wsh/cmd/wshcmd-wsl.go function init (line 26) | func init() { function wslRun (line 31) | func wslRun(cmd *cobra.Command, args []string) (rtnErr error) { FILE: cmd/wsh/main-wsh.go function main (line 15) | func main() { FILE: db/migrations-filestore/000001_init.up.sql type db_wave_file (line 1) | CREATE TABLE db_wave_file ( type db_file_data (line 12) | CREATE TABLE db_file_data ( FILE: db/migrations-wstore/000001_init.up.sql type db_client (line 1) | CREATE TABLE db_client ( type db_window (line 7) | CREATE TABLE db_window ( type db_workspace (line 13) | CREATE TABLE db_workspace ( type db_tab (line 19) | CREATE TABLE db_tab ( type db_block (line 25) | CREATE TABLE db_block ( FILE: db/migrations-wstore/000002_init.up.sql type db_layout (line 1) | CREATE TABLE db_layout ( FILE: db/migrations-wstore/000003_activity.up.sql type db_activity (line 1) | CREATE TABLE db_activity ( FILE: db/migrations-wstore/000004_history.up.sql type history_migrated (line 1) | CREATE TABLE history_migrated ( FILE: db/migrations-wstore/000007_events.up.sql type db_tevent (line 1) | CREATE TABLE db_tevent ( FILE: db/migrations-wstore/000009_mainserver.up.sql type db_mainserver (line 1) | CREATE TABLE IF NOT EXISTS db_mainserver ( FILE: db/migrations-wstore/000011_job.up.sql type db_job (line 1) | CREATE TABLE IF NOT EXISTS db_job ( FILE: docs/src/components/card.tsx type CardProps (line 4) | interface CardProps { function Card (line 11) | function Card({ icon, title, description, href }: CardProps) { function CardGroup (line 21) | function CardGroup({ children }) { FILE: docs/src/components/kbd.tsx function convertKey (line 7) | function convertKey(platform: Platform, key: string): [any, string, bool... FILE: docs/src/components/platformcontext.tsx type Platform (line 7) | type Platform = "mac" | "linux" | "windows"; type PlatformContextProps (line 9) | interface PlatformContextProps { function getOS (line 16) | function getOS(): Platform { function PlatformProvider (line 46) | function PlatformProvider({ children }: { children: ReactNode }) { function PlatformSelectorButtonInternal (line 62) | function PlatformSelectorButtonInternal() { function PlatformSelectorButton (line 86) | function PlatformSelectorButton() { type PlatformItemProps (line 90) | interface PlatformItemProps { FILE: docs/src/components/versionbadge.tsx type VersionBadgeProps (line 3) | interface VersionBadgeProps { function VersionBadge (line 8) | function VersionBadge({ version, noLeftMargin }: VersionBadgeProps) { FILE: docs/src/renderer/image-renderers.ts function docSectionPath (line 101) | function docSectionPath(slug: string, title: string) { function getTtfFont (line 116) | async function getTtfFont(family: string, axes: string[], value: number[... FILE: docs/src/theme/MDXComponents/Heading.tsx type Props (line 5) | type Props = WrapperProps; function HeadingWrapper (line 7) | function HeadingWrapper(props: Props): JSX.Element { FILE: electron.vite.config.ts constant CHROME (line 12) | const CHROME = "chrome140"; constant NODE (line 13) | const NODE = "node22"; function whoImportsTarget (line 17) | function whoImportsTarget(target: string) { method manualChunks (line 135) | manualChunks(id) { FILE: emain/authkey.ts function configureAuthKeyRequestInjection (line 15) | function configureAuthKeyRequestInjection(session: Electron.Session) { FILE: emain/emain-activity.ts function setWasActive (line 17) | function setWasActive(val: boolean) { function setWasInFg (line 21) | function setWasInFg(val: boolean) { function getActivityState (line 25) | function getActivityState(): { wasActive: boolean; wasInFg: boolean } { function setGlobalIsQuitting (line 29) | function setGlobalIsQuitting(val: boolean) { function getGlobalIsQuitting (line 33) | function getGlobalIsQuitting(): boolean { function setGlobalIsStarting (line 37) | function setGlobalIsStarting(val: boolean) { function getGlobalIsStarting (line 41) | function getGlobalIsStarting(): boolean { function setGlobalIsRelaunching (line 45) | function setGlobalIsRelaunching(val: boolean) { function getGlobalIsRelaunching (line 49) | function getGlobalIsRelaunching(): boolean { function setForceQuit (line 53) | function setForceQuit(val: boolean) { function getForceQuit (line 57) | function getForceQuit(): boolean { function setUserConfirmedQuit (line 61) | function setUserConfirmedQuit(val: boolean) { function getUserConfirmedQuit (line 65) | function getUserConfirmedQuit(): boolean { function incrementTermCommandsRun (line 69) | function incrementTermCommandsRun() { function getAndClearTermCommandsRun (line 73) | function getAndClearTermCommandsRun(): number { function incrementTermCommandsRemote (line 79) | function incrementTermCommandsRemote() { function getAndClearTermCommandsRemote (line 83) | function getAndClearTermCommandsRemote(): number { function incrementTermCommandsWsl (line 89) | function incrementTermCommandsWsl() { function getAndClearTermCommandsWsl (line 93) | function getAndClearTermCommandsWsl(): number { function incrementTermCommandsDurable (line 99) | function incrementTermCommandsDurable() { function getAndClearTermCommandsDurable (line 103) | function getAndClearTermCommandsDurable(): number { FILE: emain/emain-builder.ts type BuilderWindowType (line 14) | type BuilderWindowType = BrowserWindow & { function getBuilderWindowById (line 23) | function getBuilderWindowById(builderId: string): BuilderWindowType { function getBuilderWindowByWebContentsId (line 27) | function getBuilderWindowByWebContentsId(webContentsId: number): Builder... function getAllBuilderWindows (line 31) | function getAllBuilderWindows(): BuilderWindowType[] { function createBuilderWindow (line 35) | async function createBuilderWindow(appId: string): Promise(event: K, ...args: Parameters(event: K, listener: GlobalEvents[K]):... method once (line 19) | once(event: K, listener: GlobalEvents[K]... method off (line 23) | off(event: K, listener: GlobalEvents[K])... FILE: emain/emain-ipc.ts function openBuilderWindow (line 35) | function openBuilderWindow(appId?: string) { type UrlInSessionResult (line 46) | type UrlInSessionResult = { function getSingleHeaderVal (line 52) | function getSingleHeaderVal(headers: Record, ... function cleanMimeType (line 63) | function cleanMimeType(mimeType: string): string { function getFileNameFromUrl (line 71) | function getFileNameFromUrl(url: string): string { function getUrlInSession (line 81) | function getUrlInSession(session: Electron.Session, url: string): Promis... function saveImageFileWithNativeDialog (line 133) | function saveImageFileWithNativeDialog( function initIpcHandlers (line 195) | function initIpcHandlers() { FILE: emain/emain-log.ts function findHighestLogNumber (line 12) | function findHighestLogNumber(logsDir: string): number { function pruneOldLogs (line 30) | function pruneOldLogs(logsDir: string): { pruned: string[]; error: any } { function rotateLogIfNeeded (line 68) | function rotateLogIfNeeded(): string | null { function log (line 121) | function log(...msg: any[]) { FILE: emain/emain-menu.ts type AppMenuCallbacks (line 25) | type AppMenuCallbacks = { function getWindowWebContents (line 30) | function getWindowWebContents(window: electron.BaseWindow): electron.Web... function getWorkspaceMenu (line 48) | async function getWorkspaceMenu(ww?: WaveBrowserWindow): Promise void) { function callWithOriginalXdgCurrentDesktopAsync (line 252) | async function callWithOriginalXdgCurrentDesktopAsync(callback: () => Pr... FILE: emain/emain-tabview.ts function handleWindowsMenuAccelerators (line 24) | function handleWindowsMenuAccelerators( function computeBgColor (line 96) | function computeBgColor(fullConfig: FullConfigType): string { function getWaveTabViewByWebContentsId (line 111) | function getWaveTabViewByWebContentsId(webContentsId: number): WaveTabVi... class WaveTabView (line 118) | class WaveTabView extends WebContentsView { method constructor (line 136) | constructor(fullConfig: FullConfigType) { method waveTabId (line 175) | get waveTabId(): string { method waveTabId (line 179) | set waveTabId(waveTabId: string) { method setKeyboardChordMode (line 183) | setKeyboardChordMode(mode: boolean) { method positionTabOnScreen (line 200) | positionTabOnScreen(winBounds: Rectangle) { method positionTabOffScreen (line 213) | positionTabOffScreen(winBounds: Rectangle) { method isOnScreen (line 222) | isOnScreen() { method destroy (line 227) | destroy() { function setMaxTabCacheSize (line 240) | function setMaxTabCacheSize(size: number) { function getWaveTabView (line 245) | function getWaveTabView(waveTabId: string): WaveTabView | undefined { function tryEvictEntry (line 253) | function tryEvictEntry(waveTabId: string): boolean { function checkAndEvictCache (line 278) | function checkAndEvictCache(): void { function clearTabCache (line 295) | function clearTabCache() { function getOrCreateWebViewForTab (line 304) | async function getOrCreateWebViewForTab(waveWindowId: string, tabId: str... function setWaveTabView (line 360) | function setWaveTabView(waveTabId: string, wcv: WaveTabView): void { function removeWaveTabView (line 368) | function removeWaveTabView(waveTabId: string): void { function ensureHotSpareTab (line 377) | function ensureHotSpareTab(fullConfig: FullConfigType) { function getSpareTab (line 384) | function getSpareTab(fullConfig: FullConfigType): WaveTabView { FILE: emain/emain-util.ts function broadcastZoomFactorChanged (line 21) | function broadcastZoomFactorChanged(newZoomFactor: number): void { function increaseZoomLevel (line 30) | function increaseZoomLevel(webContents: electron.WebContents): void { function decreaseZoomLevel (line 36) | function decreaseZoomLevel(webContents: electron.WebContents): void { function resetZoomLevel (line 42) | function resetZoomLevel(webContents: electron.WebContents): void { function getElectronExecPath (line 47) | function getElectronExecPath(): string { function delay (line 54) | function delay(ms): Promise { function setCtrlShift (line 58) | function setCtrlShift(wc: Electron.WebContents, state: boolean) { function handleCtrlShiftFocus (line 63) | function handleCtrlShiftFocus(sender: Electron.WebContents, focused: boo... function handleCtrlShiftState (line 69) | function handleCtrlShiftState(sender: Electron.WebContents, waveEvent: W... function shNavHandler (line 100) | function shNavHandler(event: Electron.Event { function getWaveSrvProc (line 47) | function getWaveSrvProc(): child_process.ChildProcessWithoutNullStreams ... function getIsWaveSrvDead (line 51) | function getIsWaveSrvDead(): boolean { function runWaveSrv (line 55) | function runWaveSrv(handleWSEvent: (evtMsg: WSEventType) => void): Promi... FILE: emain/emain-web.ts function getWebContentsByBlockId (line 7) | function getWebContentsByBlockId(ww: WaveBrowserWindow, tabId: string, b... function escapeSelector (line 27) | function escapeSelector(selector: string): string { type WebGetOpts (line 37) | type WebGetOpts = { function webGetSelector (line 42) | async function webGetSelector(wc: WebContents, selector: string, opts?: ... FILE: emain/emain-window.ts type WindowOpts (line 27) | type WindowOpts = { function calculateWindowBounds (line 36) | function calculateWindowBounds( function getClientId (line 107) | async function getClientId() { type WindowActionQueueEntry (line 116) | type WindowActionQueueEntry = function isNonEmptyUnsavedWorkspace (line 135) | function isNonEmptyUnsavedWorkspace(workspace: Workspace): boolean { class WaveBrowserWindow (line 139) | class WaveBrowserWindow extends BaseWindow { method constructor (line 148) | constructor(waveWindow: WaveWindow, fullConfig: FullConfigType, opts: ... method removeAllChildViews (line 349) | private removeAllChildViews() { method switchWorkspace (line 358) | async switchWorkspace(workspaceId: string) { method setActiveTab (line 381) | async setActiveTab(tabId: string, setInBackend: boolean, primaryStartu... method initializeTab (line 393) | private async initializeTab(tabView: WaveTabView, primaryStartupTab: b... method awaitWithDevTimeout (line 420) | private async awaitWithDevTimeout(promise: Promise, name: string... method setTabViewIntoWindow (line 446) | private async setTabViewIntoWindow(tabView: WaveTabView, tabInitialize... method repositionTabsSlowly (line 483) | private async repositionTabsSlowly(delayMs: number) { method finalizePositioning (line 512) | private finalizePositioning() { method queueCreateTab (line 526) | async queueCreateTab() { method queueCloseTab (line 530) | async queueCloseTab(tabId: string) { method _queueActionInternal (line 534) | private async _queueActionInternal(entry: WindowActionQueueEntry) { method removeTabViewLater (line 546) | private removeTabViewLater(tabId: string, delayMs: number) { method processActionQueue (line 556) | private async processActionQueue() { method mainResizeHandler (line 629) | private async mainResizeHandler(_: any) { method removeTabView (line 645) | removeTabView(tabId: string, force: boolean) { method destroy (line 661) | destroy() { function getWaveWindowByTabId (line 668) | function getWaveWindowByTabId(tabId: string): WaveBrowserWindow { function getWaveWindowByWebContentsId (line 676) | function getWaveWindowByWebContentsId(webContentsId: number): WaveBrowse... function getWaveWindowById (line 687) | function getWaveWindowById(windowId: string): WaveBrowserWindow { function getWaveWindowByWorkspaceId (line 691) | function getWaveWindowByWorkspaceId(workspaceId: string): WaveBrowserWin... function getAllWaveWindows (line 699) | function getAllWaveWindows(): WaveBrowserWindow[] { function createWindowForWorkspace (line 703) | async function createWindowForWorkspace(workspaceId: string) { function createBrowserWindow (line 717) | async function createBrowserWindow( function createWorkspace (line 795) | async function createWorkspace(window: WaveBrowserWindow) { function createNewWaveWindow (line 847) | async function createNewWaveWindow() { function relaunchBrowserWindows (line 879) | async function relaunchBrowserWindows() { function registerGlobalHotkey (line 926) | function registerGlobalHotkey(rawGlobalHotKey: string) { FILE: emain/emain-wsh.ts class ElectronWshClientType (line 13) | class ElectronWshClientType extends WshClient { method constructor (line 14) | constructor() { method handle_webselector (line 18) | async handle_webselector(rh: RpcResponseHelper, data: CommandWebSelect... method handle_notify (line 34) | async handle_notify(rh: RpcResponseHelper, notificationOptions: WaveNo... method handle_getupdatechannel (line 42) | async handle_getupdatechannel(rh: RpcResponseHelper): Promise { method handle_focuswindow (line 46) | async handle_focuswindow(rh: RpcResponseHelper, windowId: string) { method handle_electronencrypt (line 63) | async handle_electronencrypt( method handle_electrondecrypt (line 84) | async handle_electrondecrypt( method handle_networkonline (line 105) | async handle_networkonline(rh: RpcResponseHelper): Promise { method handle_electronsystembell (line 109) | async handle_electronsystembell(rh: RpcResponseHelper): Promise { function initElectronWshClient (line 126) | function initElectronWshClient() { FILE: emain/emain.ts function handleWSEvent (line 85) | function handleWSEvent(evtMsg: WSEventType) { function getActivityDisplays (line 123) | function getActivityDisplays(): ActivityDisplayType[] { function sendDisplaysTDataEvent (line 143) | async function sendDisplaysTDataEvent() { function logActiveState (line 168) | function logActiveState() { function runActiveTimer (line 236) | function runActiveTimer() { function hideWindowWithCatch (line 241) | function hideWindowWithCatch(window: WaveBrowserWindow) { function appMain (line 372) | async function appMain() { FILE: emain/launchsettings.ts function getLaunchSettings (line 13) | function getLaunchSettings(): SettingsType { FILE: emain/updater.ts function getUpdateChannel (line 19) | function getUpdateChannel(settings: SettingsType): string { class Updater (line 38) | class Updater { method constructor (line 47) | constructor(settings: SettingsType) { method status (line 109) | get status(): UpdaterStatus { method status (line 113) | private set status(value: UpdaterStatus) { method start (line 126) | async start() { method stop (line 139) | stop() { method checkForUpdates (line 151) | async checkForUpdates(userInput: boolean) { method promptToInstallUpdate (line 181) | async promptToInstallUpdate() { method installUpdate (line 203) | async installUpdate() { function getResolvedUpdateChannel (line 213) | function getResolvedUpdateChannel(): string { function configureAutoUpdater (line 230) | async function configureAutoUpdater() { FILE: frontend/app/aipanel/ai-utils.ts type FileSizeError (line 303) | interface FileSizeError { type FilteredAIModeConfigs (line 540) | interface FilteredAIModeConfigs { function getModeDisplayName (line 584) | function getModeDisplayName(config: AIModeConfigType): string { FILE: frontend/app/aipanel/aidroppedfiles.tsx type AIDroppedFilesProps (line 10) | interface AIDroppedFilesProps { FILE: frontend/app/aipanel/aifeedbackbuttons.tsx type AIFeedbackButtonsProps (line 8) | interface AIFeedbackButtonsProps { FILE: frontend/app/aipanel/aimessage.tsx type UserMessageFilesProps (line 62) | interface UserMessageFilesProps { type AIMessagePartProps (line 107) | interface AIMessagePartProps { type AIMessageProps (line 138) | interface AIMessageProps { type MessagePart (line 152) | type MessagePart = FILE: frontend/app/aipanel/aimode.tsx type AIModeMenuItemProps (line 14) | interface AIModeMenuItemProps { type ConfigSection (line 58) | interface ConfigSection { function computeCompatibleSections (line 65) | function computeCompatibleSections( function computeWaveCloudSections (line 114) | function computeWaveCloudSections( type AIModeDropdownProps (line 135) | interface AIModeDropdownProps { FILE: frontend/app/aipanel/aipanel-contextmenu.ts function handleWaveAIContextMenu (line 12) | async function handleWaveAIContextMenu(e: React.MouseEvent, showCopy: bo... FILE: frontend/app/aipanel/aipanel.tsx type AIPanelComponentInnerProps (line 248) | type AIPanelComponentInnerProps = { type AIPanelComponentProps (line 615) | type AIPanelComponentProps = { FILE: frontend/app/aipanel/aipanelinput.tsx type AIPanelInputProps (line 12) | interface AIPanelInputProps { type AIPanelInputRef (line 18) | interface AIPanelInputRef { FILE: frontend/app/aipanel/aipanelmessages.tsx type AIPanelMessagesProps (line 11) | interface AIPanelMessagesProps { FILE: frontend/app/aipanel/airatelimitstrip.tsx function formatTimeRemaining (line 44) | function formatTimeRemaining(expirationEpoch: number): string { FILE: frontend/app/aipanel/aitooluse.tsx type ToolDescLineProps (line 17) | interface ToolDescLineProps { type ToolDescProps (line 59) | interface ToolDescProps { function getEffectiveApprovalStatus (line 80) | function getEffectiveApprovalStatus(baseApproval: string, isStreaming: b... type AIToolApprovalButtonsProps (line 84) | interface AIToolApprovalButtonsProps { type AIToolUseBatchItemProps (line 114) | interface AIToolUseBatchItemProps { type AIToolUseBatchProps (line 142) | interface AIToolUseBatchProps { type AIToolUseProps (line 187) | interface AIToolUseProps { type AIToolProgressProps (line 322) | interface AIToolProgressProps { type AIToolUseGroupProps (line 344) | interface AIToolUseGroupProps { type ToolGroupItem (line 349) | type ToolGroupItem = FILE: frontend/app/aipanel/aitypes.ts type WaveUIDataTypes (line 6) | type WaveUIDataTypes = { type WaveUIMessage (line 35) | type WaveUIMessage = UIMessage; type WaveUIMessagePart (line 36) | type WaveUIMessagePart = UIMessagePart; type UseChatSetMessagesType (line 38) | type UseChatSetMessagesType = ( type UseChatSendMessageType (line 42) | type UseChatSendMessageType = ( FILE: frontend/app/aipanel/restorebackupmodal.tsx type RestoreBackupModalProps (line 11) | interface RestoreBackupModalProps { FILE: frontend/app/aipanel/telemetryrequired.tsx type TelemetryRequiredMessageProps (line 10) | interface TelemetryRequiredMessageProps { FILE: frontend/app/aipanel/waveai-focus-utils.ts function findWaveAIPanel (line 4) | function findWaveAIPanel(element: HTMLElement): HTMLElement | null { function waveAIHasFocusWithin (line 15) | function waveAIHasFocusWithin(focusTarget?: Element | null): boolean { function waveAIHasSelection (line 44) | function waveAIHasSelection(): boolean { FILE: frontend/app/aipanel/waveai-model.tsx type DroppedFile (line 35) | interface DroppedFile { class WaveAIModel (line 44) | class WaveAIModel { method constructor (line 79) | private constructor(orefContext: ORef, inBuilder: boolean) { method getPanelVisibleAtom (line 148) | getPanelVisibleAtom(): jotai.Atom { method getInstance (line 152) | static getInstance(): WaveAIModel { method resetInstance (line 168) | static resetInstance(): void { method getUseChatEndpointUrl (line 172) | getUseChatEndpointUrl(): string { method addFile (line 176) | async addFile(file: File): Promise { method addFileFromRemoteUri (line 202) | async addFileFromRemoteUri(draggedFile: DraggedFile): Promise { method removeFile (line 250) | removeFile(fileId: string) { method clearFiles (line 256) | clearFiles() { method clearChat (line 269) | clearChat() { method setError (line 285) | setError(message: string) { method clearError (line 289) | clearError() { method registerInputRef (line 293) | registerInputRef(ref: React.RefObject) { method registerScrollToBottom (line 297) | registerScrollToBottom(callback: () => void) { method registerUseChatData (line 301) | registerUseChatData( method scrollToBottom (line 313) | scrollToBottom() { method focusInput (line 317) | focusInput() { method reloadChatFromBackend (line 326) | async reloadChatFromBackend(chatIdValue: string): Promise { method getRTInfo (line 441) | async getRTInfo(): Promise> { method loadInitialChat (line 448) | async loadInitialChat(): Promise { method handleSubmit (line 483) | async handleSubmit() { method uiLoadInitialChat (line 550) | async uiLoadInitialChat() { method ensureRateLimitSet (line 560) | async ensureRateLimitSet() { method handleAIFeedback (line 575) | handleAIFeedback(feedback: "good" | "bad") { method requestWaveAIFocus (line 588) | requestWaveAIFocus() { method requestNodeFocus (line 596) | requestNodeFocus() { method getChatId (line 604) | getChatId(): string { method toolUseSendApproval (line 608) | toolUseSendApproval(toolcallid: string, approval: string) { method openDiff (line 615) | async openDiff(fileName: string, toolcallid: string) { method openWaveAIConfig (line 634) | async openWaveAIConfig() { method openRestoreBackupModal (line 644) | openRestoreBackupModal(toolcallid: string) { method closeRestoreBackupModal (line 648) | closeRestoreBackupModal() { method restoreBackup (line 654) | async restoreBackup(toolcallid: string, backupFilePath: string, restor... method canCloseWaveAIPanel (line 672) | canCloseWaveAIPanel(): boolean { method closeWaveAIPanel (line 679) | closeWaveAIPanel() { FILE: frontend/app/app-bg.tsx function AppBackground (line 13) | function AppBackground() { FILE: frontend/app/app.tsx function isContentEditableBeingEdited (line 60) | function isContentEditableBeingEdited(): boolean { function canEnablePaste (line 69) | function canEnablePaste(): boolean { function canEnableCopy (line 74) | function canEnableCopy(): boolean { function canEnableCut (line 79) | function canEnableCut(): boolean { function getClipboardURL (line 87) | async function getClipboardURL(): Promise { function handleContextMenu (line 103) | async function handleContextMenu(e: React.MouseEvent) { function AppSettingsUpdater (line 139) | function AppSettingsUpdater() { function appFocusIn (line 169) | function appFocusIn(e: FocusEvent) { function appFocusOut (line 173) | function appFocusOut(e: FocusEvent) { function appSelectionChange (line 177) | function appSelectionChange(e: Event) { function AppFocusHandler (line 182) | function AppFocusHandler() { FILE: frontend/app/block/block-model.ts type BlockHighlightType (line 7) | interface BlockHighlightType { class BlockModel (line 12) | class BlockModel { method constructor (line 18) | private constructor() { method getBlockHighlightAtom (line 22) | getBlockHighlightAtom(blockId: string): jotai.Atom { function makeMarkdownWaveBlockKey (line 39) | function makeMarkdownWaveBlockKey(block: MarkdownContentBlockType): stri... function transformBlocks (line 43) | function transformBlocks(content: string): { content: string; blocks: Ma... FILE: frontend/app/element/markdown.tsx type CodeBlockProps (line 133) | type CodeBlockProps = { type WaveBlockProps (line 214) | interface WaveBlockProps { function WaveBlock (line 219) | function WaveBlock(props: WaveBlockProps) { type MarkdownProps (line 294) | type MarkdownProps = { FILE: frontend/app/element/modal.tsx type ModalProps (line 9) | interface ModalProps { function Modal (line 15) | function Modal({ children, onClickOut, id = "modal", ...otherProps }: Mo... type ModalContentProps (line 31) | interface ModalContentProps { function ModalContent (line 35) | function ModalContent({ children }: ModalContentProps) { type ModalHeaderProps (line 39) | interface ModalHeaderProps { function ModalHeader (line 44) | function ModalHeader({ title, description }: ModalHeaderProps) { type ModalFooterProps (line 53) | interface ModalFooterProps { function ModalFooter (line 57) | function ModalFooter({ children }: ModalFooterProps) { type WaveModalProps (line 61) | interface WaveModalProps { function WaveModal (line 71) | function WaveModal({ title, description, onSubmit, onCancel, buttonLabel... FILE: frontend/app/element/multilineinput.tsx type MultiLineInputProps (line 9) | interface MultiLineInputProps { FILE: frontend/app/element/popover.tsx type PopoverProps (line 32) | interface PopoverProps { type PopoverButtonProps (line 119) | interface PopoverButtonProps extends React.ButtonHTMLAttributes( function useOnResize (line 62) | function useOnResize( function useDimensionsWithExistingRef (line 107) | function useDimensionsWithExistingRef( FILE: frontend/app/modals/about.tsx type AboutModalVProps (line 15) | interface AboutModalVProps { FILE: frontend/app/modals/conntypeahead.tsx function filterConnections (line 27) | function filterConnections( function sortConnSuggestionItems (line 41) | function sortConnSuggestionItems( function createRemoteSuggestionItems (line 55) | function createRemoteSuggestionItems( function createWslSuggestionItems (line 76) | function createWslSuggestionItems( function createFilteredLocalSuggestionItem (line 97) | function createFilteredLocalSuggestionItem( function getReconnectItem (line 116) | function getReconnectItem( function getLocalSuggestions (line 144) | function getLocalSuggestions( function getRemoteSuggestions (line 182) | function getRemoteSuggestions( function getDisconnectItem (line 203) | function getDisconnectItem( function getConnectionsEditItem (line 230) | function getConnectionsEditItem( function getNewConnectionSuggestionItem (line 259) | function getNewConnectionSuggestionItem( FILE: frontend/app/modals/messagemodal.tsx function closeModal (line 11) | function closeModal() { FILE: frontend/app/modals/modal.tsx type ModalProps (line 12) | interface ModalProps { type ModalContentProps (line 75) | interface ModalContentProps { function ModalContent (line 79) | function ModalContent({ children }: ModalContentProps) { type ModalFooterProps (line 83) | interface ModalFooterProps { type FlexiModalProps (line 116) | interface FlexiModalProps { type FlexiModalComponent (line 122) | interface FlexiModalComponent extends React.ForwardRefExoticComponent< FILE: frontend/app/modals/typeaheadmodal.tsx type SuggestionsProps (line 13) | interface SuggestionsProps { type TypeAheadModalProps (line 74) | interface TypeAheadModalProps { FILE: frontend/app/monaco/monaco-env.ts method getWorker (line 22) | getWorker(_, label) { function loadMonaco (line 42) | function loadMonaco() { FILE: frontend/app/monaco/monaco-react.tsx function createModel (line 10) | function createModel(value: string, path: string, language?: string) { type CodeEditorProps (line 15) | type CodeEditorProps = { function MonacoCodeEditor (line 25) | function MonacoCodeEditor({ text, readonly, language, onChange, onMount,... type DiffViewerProps (line 119) | type DiffViewerProps = { function MonacoDiffViewer (line 127) | function MonacoDiffViewer({ original, modified, language, path, options ... FILE: frontend/app/monaco/schemaendpoints.ts type SchemaInfo (line 11) | type SchemaInfo = { FILE: frontend/app/onboarding/fakechat.tsx type ChatConfig (line 7) | interface ChatConfig { FILE: frontend/app/onboarding/onboarding-command.tsx type CommandRevealProps (line 9) | type CommandRevealProps = { type FakeCommandProps (line 65) | type FakeCommandProps = { FILE: frontend/app/onboarding/onboarding-common.tsx function OnboardingGradientBg (line 6) | function OnboardingGradientBg() { FILE: frontend/app/onboarding/onboarding-features.tsx type FeaturePageName (line 20) | type FeaturePageName = "waveai" | "durable" | "magnify" | "files"; FILE: frontend/app/onboarding/onboarding-layout-term.tsx type FakeTermBlockProps (line 9) | type FakeTermBlockProps = { type OverlayState (line 88) | type OverlayState = null | "disconnected" | "connected"; FILE: frontend/app/onboarding/onboarding-layout.tsx type FakeBlockProps (line 10) | type FakeBlockProps = { FILE: frontend/app/onboarding/onboarding-starask.tsx type StarAskPageProps (line 11) | type StarAskPageProps = { function StarAskPage (line 16) | function StarAskPage({ onClose, page = "upgrade" }: StarAskPageProps) { FILE: frontend/app/onboarding/onboarding-upgrade-minor.tsx type UpgradeMinorWelcomePageProps (line 20) | type UpgradeMinorWelcomePageProps = { FILE: frontend/app/onboarding/onboarding-upgrade-patch.tsx type VersionConfig (line 29) | interface VersionConfig { type UpgradeOnboardingPatchProps (line 36) | interface UpgradeOnboardingPatchProps { type UpgradeOnboardingFooterProps (line 40) | interface UpgradeOnboardingFooterProps { function UpgradeOnboardingFooter (line 50) | function UpgradeOnboardingFooter({ FILE: frontend/app/onboarding/onboarding.tsx type PageName (line 28) | type PageName = "init" | "notelemetrystar" | "features"; FILE: frontend/app/shadcn/lib/utils.ts function cn (line 11) | function cn(...inputs: ClassValue[]) { function formatDate (line 15) | function formatDate(input: string | number): string { function absoluteUrl (line 24) | function absoluteUrl(path: string) { FILE: frontend/app/store/badge.ts type BadgeEnv (line 14) | type BadgeEnv = WaveEnvSubset<{ type LoadBadgesEnv (line 20) | type LoadBadgesEnv = WaveEnvSubset<{ type TabBadgesEnv (line 26) | type TabBadgesEnv = WaveEnvSubset<{ function publishBadgeEvent (line 33) | function publishBadgeEvent(eventData: WaveEvent, env?: BadgeEnv) { function clearBadgeInternal (line 41) | function clearBadgeInternal(oref: string, env?: BadgeEnv) { function clearBadgesForBlockOnFocus (line 53) | function clearBadgesForBlockOnFocus(blockId: string, env?: BadgeEnv) { function clearBadgesForTabOnFocus (line 62) | function clearBadgesForTabOnFocus(tabId: string, env?: BadgeEnv) { function clearAllBadges (line 71) | function clearAllBadges(env?: BadgeEnv) { function clearBadgesForTab (line 83) | function clearBadgesForTab(tabId: string, env?: BadgeEnv) { function getBadgeAtom (line 96) | function getBadgeAtom(oref: string): PrimitiveAtom { function getBlockBadgeAtom (line 108) | function getBlockBadgeAtom(blockId: string): Atom { function getTabBadgeAtom (line 116) | function getTabBadgeAtom(tabId: string, env?: TabBadgesEnv): Atom & { bad... function clearBadgeById (line 180) | function clearBadgeById(blockId: string, badgeId: string, env?: BadgeEnv) { function setupBadgesSubscription (line 193) | function setupBadgesSubscription() { function cmpBadge (line 230) | function cmpBadge(a: Badge, b: Badge): number { function sortBadges (line 240) | function sortBadges(badges: Badge[]): Badge[] { function sortBadgesForTab (line 244) | function sortBadgesForTab(badges: Badge[]): Badge[] { FILE: frontend/app/store/client-model.ts class ClientModel (line 7) | class ClientModel { method constructor (line 13) | private constructor() { method getInstance (line 17) | static getInstance(): ClientModel { method initialize (line 24) | initialize(clientId: string): void { FILE: frontend/app/store/connections-model.ts class ConnectionsModel (line 10) | class ConnectionsModel { method constructor (line 15) | private constructor() { method getInstance (line 26) | static getInstance(): ConnectionsModel { method loadGitBashPath (line 33) | async loadGitBashPath(rescan: boolean = false): Promise { method getGitBashPath (line 46) | getGitBashPath(): string { FILE: frontend/app/store/contextmenu.ts type ShowContextMenuOpts (line 6) | type ShowContextMenuOpts = { class ContextMenuModel (line 12) | class ContextMenuModel { method constructor (line 17) | private constructor() { method getInstance (line 21) | static getInstance(): ContextMenuModel { method handleContextMenuClick (line 28) | handleContextMenuClick(id: string | null): void { method _convertAndRegisterMenu (line 43) | _convertAndRegisterMenu(menu: ContextMenuItem[]): ElectronContextMenuI... method showContextMenu (line 71) | showContextMenu(menu: ContextMenuItem[], ev: React.MouseEvent, op... FILE: frontend/app/store/counters.ts function countersClear (line 6) | function countersClear() { function counterInc (line 10) | function counterInc(name: string, incAmt: number = 1) { function countersPrint (line 16) | function countersPrint() { FILE: frontend/app/store/focusManager.ts type FocusStrType (line 9) | type FocusStrType = "node" | "waveai"; class FocusManager (line 11) | class FocusManager { method constructor (line 17) | private constructor() { method getInstance (line 28) | static getInstance(): FocusManager { method setWaveAIFocused (line 35) | setWaveAIFocused(force: boolean = false) { method setBlockFocus (line 44) | setBlockFocus(force: boolean = false) { method waveAIFocusWithin (line 53) | waveAIFocusWithin(): boolean { method nodeFocusWithin (line 57) | nodeFocusWithin(): boolean { method requestNodeFocus (line 61) | requestNodeFocus(): void { method requestWaveAIFocus (line 65) | requestWaveAIFocus(): void { method getFocusType (line 69) | getFocusType(): FocusStrType { method refocusNode (line 73) | refocusNode() { FILE: frontend/app/store/global-atoms.ts function initGlobalAtoms (line 14) | function initGlobalAtoms(initOpts: GlobalInitOptions) { function getAtoms (line 155) | function getAtoms(): GlobalAtomsType { function getApi (line 162) | function getApi(): ElectronApi { FILE: frontend/app/store/global-model.ts class GlobalModel (line 10) | class GlobalModel { method constructor (line 22) | private constructor() { method getInstance (line 26) | static getInstance(): GlobalModel { method initialize (line 33) | async initialize(initOpts: GlobalInitOptions): Promise { method setIsActive (line 55) | setIsActive(): void { FILE: frontend/app/store/global.ts function initGlobal (line 42) | function initGlobal(initOpts: GlobalInitOptions) { function initGlobalWaveEventSubs (line 55) | function initGlobalWaveEventSubs(initOpts: WaveInitOpts) { function useBlockCache (line 105) | function useBlockCache(blockId: string, name: string, makeFn: () => T... function getBlockMetaKeyAtom (line 119) | function getBlockMetaKeyAtom(blockId: string, ... function getOrefMetaKeyAtom (line 135) | function getOrefMetaKeyAtom(oref: string, key:... function useOrefMetaKeyAtom (line 151) | function useOrefMetaKeyAtom(oref: string, key:... function getConnConfigKeyAtom (line 155) | function getConnConfigKeyAtom(connName: st... function getOverrideConfigAtom (line 173) | function getOverrideConfigAtom(blockId: st... function useOverrideConfigAtom (line 205) | function useOverrideConfigAtom(blockId: st... function getSettingsKeyAtom (line 212) | function getSettingsKeyAtom(key: T): Atom<... function useSettingsKeyAtom (line 228) | function useSettingsKeyAtom(key: T): Setti... function getSettingsPrefixAtom (line 232) | function getSettingsPrefixAtom(prefix: string): Atom { function getSingleBlockAtomCache (line 248) | function getSingleBlockAtomCache(blockId: string): Map> { function getSingleConnAtomCache (line 253) | function getSingleConnAtomCache(connName: string): Map> { function getSingleOrefAtomCache (line 259) | function getSingleOrefAtomCache(oref: string): Map> { function getBlockTermDurableAtom (line 271) | function getBlockTermDurableAtom(blockId: string): Atom { function useBlockAtom (line 316) | function useBlockAtom(blockId: string, name: string, makeFn: () => At... function readAtom (line 330) | function readAtom(atom: Atom): T { function getApi (line 340) | function getApi(): ElectronApi { function createBlockSplitHorizontally (line 344) | async function createBlockSplitHorizontally( function createBlockSplitVertically (line 367) | async function createBlockSplitVertically( function createBlock (line 390) | async function createBlock(blockDef: BlockDef, magnified = false, epheme... function replaceBlock (line 408) | async function replaceBlock(blockId: string, blockDef: BlockDef, focus: ... function fetchWaveFile (line 430) | async function fetchWaveFile( function setNodeFocus (line 460) | function setNodeFocus(nodeId: string) { function getObjectId (line 467) | function getObjectId(obj: any): number { function isDev (line 476) | function isDev() { function getUserName (line 485) | function getUserName(): string { function getHostName (line 494) | function getHostName(): string { function getLocalHostDisplayNameAtom (line 509) | function getLocalHostDisplayNameAtom(): Atom { function openLink (line 518) | async function openLink(uri: string, forceOpenInternally = false) { function registerBlockComponentModel (line 532) | function registerBlockComponentModel(blockId: string, bcm: BlockComponen... function unregisterBlockComponentModel (line 536) | function unregisterBlockComponentModel(blockId: string) { function getBlockComponentModel (line 540) | function getBlockComponentModel(blockId: string): BlockComponentModel { function getAllBlockComponentModels (line 544) | function getAllBlockComponentModels(): BlockComponentModel[] { function getFocusedBlockId (line 548) | function getFocusedBlockId(): string { function refocusNode (line 556) | function refocusNode(blockId: string) { function loadConnStatus (line 577) | async function loadConnStatus() { function subscribeToConnEvents (line 588) | function subscribeToConnEvents() { function makeDefaultConnStatus (line 607) | function makeDefaultConnStatus(conn: string): ConnStatus { function getConnStatusAtom (line 630) | function getConnStatusAtom(conn: string): PrimitiveAtom { function createTab (line 642) | function createTab() { function setActiveTab (line 646) | function setActiveTab(tabId: string) { function recordTEvent (line 650) | function recordTEvent(event: string, props?: TEventProps) { FILE: frontend/app/store/keymodel.ts type KeyHandler (line 34) | type KeyHandler = (event: WaveKeyboardEvent) => boolean; function resetChord (line 45) | function resetChord() { function setActiveChord (line 53) | function setActiveChord(activeChordArg: string) { function keyboardMouseDownHandler (line 62) | function keyboardMouseDownHandler(e: MouseEvent) { function getFocusedBlockInStaticTab (line 68) | function getFocusedBlockInStaticTab(): string { function getSimpleControlShiftAtom (line 74) | function getSimpleControlShiftAtom() { function setControlShift (line 78) | function setControlShift() { function unsetControlShift (line 91) | function unsetControlShift() { function disableGlobalKeybindings (line 96) | function disableGlobalKeybindings() { function enableGlobalKeybindings (line 100) | function enableGlobalKeybindings() { function shouldDispatchToBlock (line 104) | function shouldDispatchToBlock(e: WaveKeyboardEvent): boolean { function getStaticTabBlockCount (line 123) | function getStaticTabBlockCount(): number { function simpleCloseStaticTab (line 131) | function simpleCloseStaticTab() { function uxCloseBlock (line 147) | function uxCloseBlock(blockId: string) { function genericClose (line 182) | function genericClose() { function switchBlockByBlockNum (line 231) | function switchBlockByBlockNum(index: number) { function switchBlockInDirection (line 242) | function switchBlockInDirection(direction: NavigateDirection) { function getAllTabs (line 279) | function getAllTabs(ws: Workspace): string[] { function switchTabAbs (line 283) | function switchTabAbs(index: number) { function switchTab (line 295) | function switchTab(offset: number) { function handleCmdI (line 315) | function handleCmdI() { function globalRefocusWithTimeout (line 319) | function globalRefocusWithTimeout(timeoutVal: number) { function globalRefocus (line 325) | function globalRefocus() { function getDefaultNewBlockDef (line 344) | function getDefaultNewBlockDef(): BlockDef { function handleCmdN (line 378) | async function handleCmdN() { function handleSplitHorizontal (line 383) | async function handleSplitHorizontal(position: "before" | "after") { function handleSplitVertical (line 393) | async function handleSplitVertical(position: "before" | "after") { function checkKeyMap (line 406) | function checkKeyMap(waveEvent: WaveKeyboardEvent, keyMap: Map { method GetControllerStatus (line 29) | GetControllerStatus(arg2: string): Promise { method FocusWindow (line 56) | FocusWindow(arg2: string): Promise { method GetAllConnStatus (line 59) | GetAllConnStatus(): Promise { method GetClientData (line 62) | GetClientData(): Promise { method GetTab (line 65) | GetTab(arg1: string): Promise { method TelemetryUpdate (line 68) | TelemetryUpdate(arg2: boolean): Promise { class ObjectServiceType (line 76) | class ObjectServiceType { method constructor (line 79) | constructor(waveEnv?: WaveEnv) { method CreateBlock (line 84) | CreateBlock(blockDef: BlockDef, rtOpts: RuntimeOpts): Promise { method DeleteBlock (line 89) | DeleteBlock(blockId: string): Promise { method GetObject (line 94) | GetObject(oref: string): Promise { method GetObjects (line 99) | GetObjects(orefs: string[]): Promise { method UpdateObject (line 104) | UpdateObject(waveObj: WaveObj, returnUpdates: boolean): Promise { method UpdateObjectMeta (line 109) | UpdateObjectMeta(oref: string, meta: MetaType): Promise { class UserInputServiceType (line 117) | class UserInputServiceType { method constructor (line 120) | constructor(waveEnv?: WaveEnv) { method SendUserInputResponse (line 124) | SendUserInputResponse(arg1: UserInputResponse): Promise { class WindowServiceType (line 132) | class WindowServiceType { method constructor (line 135) | constructor(waveEnv?: WaveEnv) { method CloseWindow (line 139) | CloseWindow(windowId: string, fromElectron: boolean): Promise { method CreateWindow (line 142) | CreateWindow(winSize: WinSize, workspaceId: string): Promise { method SetWindowPosAndSize (line 151) | SetWindowPosAndSize(windowId: string, pos: Point, size: WinSize): Prom... method SwitchWorkspace (line 154) | SwitchWorkspace(windowId: string, workspaceId: string): Promise { method GetColors (line 190) | GetColors(): Promise { method GetIcons (line 195) | GetIcons(): Promise { method GetWorkspace (line 200) | GetWorkspace(workspaceId: string): Promise { method ListWorkspaces (line 203) | ListWorkspaces(): Promise { method SetActiveTab (line 208) | SetActiveTab(workspaceId: string, tabId: string): Promise { method UpdateWorkspace (line 213) | UpdateWorkspace(workspaceId: string, name: string, icon: string, color... FILE: frontend/app/store/tab-model.ts type TabModelEnv (line 10) | type TabModelEnv = WaveEnvSubset<{ class TabModel (line 17) | class TabModel { method constructor (line 25) | constructor(tabId: string, waveEnv?: TabModelEnv) { method getTabMetaAtom (line 40) | getTabMetaAtom(metaKey: T): Atom { function getTabModelByTabId (line 53) | function getTabModelByTabId(tabId: string, waveEnv?: TabModelEnv): TabMo... function getActiveTabModel (line 71) | function getActiveTabModel(waveEnv?: TabModelEnv): TabModel | null { function useTabModel (line 81) | function useTabModel(): TabModel { function useTabModelMaybe (line 89) | function useTabModelMaybe(): TabModel { FILE: frontend/app/store/tabrpcclient.ts class TabClient (line 13) | class TabClient extends WshClient { method constructor (line 14) | constructor(routeId: string) { method handle_captureblockscreenshot (line 18) | handle_captureblockscreenshot(rh: RpcResponseHelper, data: CommandCapt... method captureBlockScreenshot (line 22) | async captureBlockScreenshot(blockId: string): Promise { method handle_waveaiaddcontext (line 65) | async handle_waveaiaddcontext(rh: RpcResponseHelper, data: CommandWave... method handle_setblockfocus (line 95) | async handle_setblockfocus(rh: RpcResponseHelper, blockId: string): Pr... method handle_getfocusedblockdata (line 109) | async handle_getfocusedblockdata(rh: RpcResponseHelper): Promise = { type WaveObjectValue (line 20) | type WaveObjectValue = { function splitORef (line 25) | function splitORef(oref: string): [string, string] { function isBlank (line 33) | function isBlank(str: string): boolean { function isBlankNum (line 37) | function isBlankNum(num: number): boolean { function isValidWaveObj (line 41) | function isValidWaveObj(val: WaveObj): boolean { function makeORef (line 51) | function makeORef(otype: string, oid: string): string { function mockObjectForPreview (line 60) | function mockObjectForPreview(oref: string, obj: T): ... function GetObject (line 67) | function GetObject(oref: string): Promise { function debugLogBackendCall (line 74) | function debugLogBackendCall(methodName: string, durationStr: string, ar... function wpsSubscribeToObject (line 91) | function wpsSubscribeToObject(oref: string): () => void { function callBackendService (line 101) | function callBackendService(service: string, method: string, args: any[]... function reloadWaveObject (line 151) | function reloadWaveObject(oref: string): Promise { function createWaveValueObject (line 164) | function createWaveValueObject(oref: string, shouldFe... function getWaveObjectValue (line 193) | function getWaveObjectValue(oref: string, createIfMis... function loadAndPinWaveObject (line 202) | function loadAndPinWaveObject(oref: string): Promise<... function getWaveObjectAtom (line 213) | function getWaveObjectAtom(oref: string): Atom { function getWaveObjectLoadingAtom (line 225) | function getWaveObjectLoadingAtom(oref: string): Atom { function isWaveObjectNullAtom (line 240) | function isWaveObjectNullAtom(oref: string): Atom { function useWaveObjectValue (line 251) | function useWaveObjectValue(oref: string): [T, boolea... function updateWaveObject (line 257) | function updateWaveObject(update: WaveObjUpdate) { function updateWaveObjects (line 281) | function updateWaveObjects(vals: WaveObjUpdate[]) { function getObjectValue (line 290) | function getObjectValue(oref: string, getFn?: Getter)... function setObjectValue (line 302) | function setObjectValue(value: T, setFn?: Setter, pus... FILE: frontend/app/store/wps.ts function setWpsRpcClient (line 12) | function setWpsRpcClient(client: WshClient) { type WaveEventSubject (line 16) | type WaveEventSubject = { type WaveEventSubjectContainer (line 21) | type WaveEventSubjectContainer = { type WaveEventSubscription (line 27) | type WaveEventSubscription = Wa... type WaveEventUnsubscribe (line 31) | type WaveEventUnsubscribe = { function wpsReconnectHandler (line 40) | function wpsReconnectHandler() { function updateWaveEventSub (line 46) | function updateWaveEventSub(eventType: string) { function waveEventSubscribeSingle (line 67) | function waveEventSubscribeSingle(subscription:... function waveEventUnsubscribe (line 88) | function waveEventUnsubscribe(...unsubscribes: WaveEventUnsubscribe[]) { function getFileSubject (line 111) | function getFileSubject(zoneId: string, fileName: string): SubjectWithRe... function handleWaveEvent (line 130) | function handleWaveEvent(event: WaveEvent) { FILE: frontend/app/store/ws.ts function addWSReconnectHandler (line 17) | function addWSReconnectHandler(handler: () => void) { function removeWSReconnectHandler (line 21) | function removeWSReconnectHandler(handler: () => void) { type WSEventCallback (line 28) | type WSEventCallback = (arg0: WSEventType) => void; type ElectronOverrideOpts (line 30) | type ElectronOverrideOpts = { class WSControl (line 34) | class WSControl { method constructor (line 51) | constructor( method shutdown (line 65) | shutdown() { method connectNow (line 70) | connectNow(desc: string) { method reconnect (line 98) | reconnect(forceClose?: boolean) { method onclose (line 129) | onclose(event: CloseEvent) { method onopen (line 146) | onopen(e: Event) { method runMsgQueue (line 160) | runMsgQueue() { method onmessage (line 174) | onmessage(event: MessageEvent) { method sendPing (line 199) | sendPing() { method sendMessage (line 206) | sendMessage(data: WSCommandType) { method pushMessage (line 222) | pushMessage(data: WSCommandType) { function initGlobalWS (line 238) | function initGlobalWS( function sendRawRpcMessage (line 247) | function sendRawRpcMessage(msg: RpcMessage) { function sendWSCommand (line 252) | function sendWSCommand(cmd: WSCommandType) { FILE: frontend/app/store/wshclient.ts class RpcResponseHelper (line 9) | class RpcResponseHelper { method constructor (line 14) | constructor(client: WshClient, cmdMsg: RpcMessage) { method getSource (line 21) | getSource(): string { method sendResponse (line 25) | sendResponse(msg: RpcMessage) { class WshClient (line 42) | class WshClient { method constructor (line 46) | constructor(routeId: string) { method wshRpcCall (line 50) | wshRpcCall(command: string, data: any, opts: RpcOpts): Promise { method wshRpcStream (line 75) | wshRpcStream(command: string, data: any, opts: RpcOpts): AsyncGenerato... method handleIncomingCommand (line 95) | async handleIncomingCommand(msg: RpcMessage) { method recvRpcMessage (line 129) | recvRpcMessage(msg: RpcMessage) { method handle_message (line 150) | async handle_message(helper: RpcResponseHelper, data: CommandMessageDa... method handle_default (line 154) | async handle_default(helper: RpcResponseHelper, msg: RpcMessage): Prom... FILE: frontend/app/store/wshclientapi.ts type MockRpcClient (line 8) | interface MockRpcClient { class RpcApiType (line 14) | class RpcApiType { method setMockRpcClient (line 17) | setMockRpcClient(client: MockRpcClient): void { method ActivityCommand (line 22) | ActivityCommand(client: WshClient, data: ActivityUpdate, opts?: RpcOpt... method AiSendMessageCommand (line 28) | AiSendMessageCommand(client: WshClient, data: AiMessageData, opts?: Rp... method AuthenticateCommand (line 34) | AuthenticateCommand(client: WshClient, data: string, opts?: RpcOpts): ... method AuthenticateJobManagerCommand (line 40) | AuthenticateJobManagerCommand(client: WshClient, data: CommandAuthenti... method AuthenticateJobManagerVerifyCommand (line 46) | AuthenticateJobManagerVerifyCommand(client: WshClient, data: CommandAu... method AuthenticateToJobManagerCommand (line 52) | AuthenticateToJobManagerCommand(client: WshClient, data: CommandAuthen... method AuthenticateTokenCommand (line 58) | AuthenticateTokenCommand(client: WshClient, data: CommandAuthenticateT... method AuthenticateTokenVerifyCommand (line 64) | AuthenticateTokenVerifyCommand(client: WshClient, data: CommandAuthent... method BadgeWatchPidCommand (line 70) | BadgeWatchPidCommand(client: WshClient, data: CommandBadgeWatchPidData... method BlockInfoCommand (line 76) | BlockInfoCommand(client: WshClient, data: string, opts?: RpcOpts): Pro... method BlockJobStatusCommand (line 82) | BlockJobStatusCommand(client: WshClient, data: string, opts?: RpcOpts)... method BlocksListCommand (line 88) | BlocksListCommand(client: WshClient, data: BlocksListRequest, opts?: R... method CaptureBlockScreenshotCommand (line 94) | CaptureBlockScreenshotCommand(client: WshClient, data: CommandCaptureB... method CheckGoVersionCommand (line 100) | CheckGoVersionCommand(client: WshClient, opts?: RpcOpts): Promise { method ConnReinstallWshCommand (line 130) | ConnReinstallWshCommand(client: WshClient, data: ConnExtData, opts?: R... method ConnServerInitCommand (line 136) | ConnServerInitCommand(client: WshClient, data: CommandConnServerInitDa... method ConnStatusCommand (line 142) | ConnStatusCommand(client: WshClient, opts?: RpcOpts): Promise { method FetchSuggestionsCommand (line 298) | FetchSuggestionsCommand(client: WshClient, data: FetchSuggestionsData,... method FileAppendCommand (line 304) | FileAppendCommand(client: WshClient, data: FileData, opts?: RpcOpts): ... method FileCopyCommand (line 310) | FileCopyCommand(client: WshClient, data: CommandFileCopyData, opts?: R... method FileCreateCommand (line 316) | FileCreateCommand(client: WshClient, data: FileData, opts?: RpcOpts): ... method FileDeleteCommand (line 322) | FileDeleteCommand(client: WshClient, data: CommandDeleteFileData, opts... method FileInfoCommand (line 328) | FileInfoCommand(client: WshClient, data: FileData, opts?: RpcOpts): Pr... method FileJoinCommand (line 334) | FileJoinCommand(client: WshClient, data: string[], opts?: RpcOpts): Pr... method FileListCommand (line 340) | FileListCommand(client: WshClient, data: FileListData, opts?: RpcOpts)... method FileListStreamCommand (line 346) | FileListStreamCommand(client: WshClient, data: FileListData, opts?: Rp... method FileMkdirCommand (line 352) | FileMkdirCommand(client: WshClient, data: FileData, opts?: RpcOpts): P... method FileMoveCommand (line 358) | FileMoveCommand(client: WshClient, data: CommandFileCopyData, opts?: R... method FileReadCommand (line 364) | FileReadCommand(client: WshClient, data: FileData, opts?: RpcOpts): Pr... method FileReadStreamCommand (line 370) | FileReadStreamCommand(client: WshClient, data: FileData, opts?: RpcOpt... method FileRestoreBackupCommand (line 376) | FileRestoreBackupCommand(client: WshClient, data: CommandFileRestoreBa... method FileStreamCommand (line 382) | FileStreamCommand(client: WshClient, data: CommandFileStreamData, opts... method FileWriteCommand (line 388) | FileWriteCommand(client: WshClient, data: FileData, opts?: RpcOpts): P... method FindGitBashCommand (line 394) | FindGitBashCommand(client: WshClient, data: boolean, opts?: RpcOpts): ... method FocusWindowCommand (line 400) | FocusWindowCommand(client: WshClient, data: string, opts?: RpcOpts): P... method GetAllBadgesCommand (line 406) | GetAllBadgesCommand(client: WshClient, opts?: RpcOpts): Promise { method MakeDraftFromLocalCommand (line 634) | MakeDraftFromLocalCommand(client: WshClient, data: CommandMakeDraftFro... method MessageCommand (line 640) | MessageCommand(client: WshClient, data: CommandMessageData, opts?: Rpc... method NetworkOnlineCommand (line 646) | NetworkOnlineCommand(client: WshClient, opts?: RpcOpts): Promise { method RouteUnannounceCommand (line 826) | RouteUnannounceCommand(client: WshClient, opts?: RpcOpts): Promise { method SetBlockFocusCommand (line 838) | SetBlockFocusCommand(client: WshClient, data: string, opts?: RpcOpts):... method SetConfigCommand (line 844) | SetConfigCommand(client: WshClient, data: SettingsType, opts?: RpcOpts... method SetConnectionsConfigCommand (line 850) | SetConnectionsConfigCommand(client: WshClient, data: ConnConfigRequest... method SetMetaCommand (line 856) | SetMetaCommand(client: WshClient, data: CommandSetMetaData, opts?: Rpc... method SetPeerInfoCommand (line 862) | SetPeerInfoCommand(client: WshClient, data: string, opts?: RpcOpts): P... method SetRTInfoCommand (line 868) | SetRTInfoCommand(client: WshClient, data: CommandSetRTInfoData, opts?:... method SetSecretsCommand (line 874) | SetSecretsCommand(client: WshClient, data: {[key: string]: string}, op... method SetVarCommand (line 880) | SetVarCommand(client: WshClient, data: CommandVarData, opts?: RpcOpts)... method StartBuilderCommand (line 886) | StartBuilderCommand(client: WshClient, data: CommandStartBuilderData, ... method StartJobCommand (line 892) | StartJobCommand(client: WshClient, data: CommandStartJobData, opts?: R... method StopBuilderCommand (line 898) | StopBuilderCommand(client: WshClient, data: string, opts?: RpcOpts): P... method StreamCpuDataCommand (line 904) | StreamCpuDataCommand(client: WshClient, data: CpuDataRequest, opts?: R... method StreamDataCommand (line 910) | StreamDataCommand(client: WshClient, data: CommandStreamData, opts?: R... method StreamDataAckCommand (line 916) | StreamDataAckCommand(client: WshClient, data: CommandStreamAckData, op... method StreamTestCommand (line 922) | StreamTestCommand(client: WshClient, opts?: RpcOpts): AsyncGenerator { method WslStatusCommand (line 1084) | WslStatusCommand(client: WshClient, opts?: RpcOpts): Promise) { function initElectronWshrpc (line 114) | function initElectronWshrpc(electronClient: WshClient, eoOpts: ElectronO... function shutdownWshrpc (line 129) | function shutdownWshrpc() { class UpstreamWshRpcProxy (line 133) | class UpstreamWshRpcProxy implements AbstractWshClient { method recvRpcMessage (line 134) | recvRpcMessage(msg: RpcMessage): void { FILE: frontend/app/store/wshrpcutil.ts function initWshrpc (line 13) | function initWshrpc(routeId: string): WSControl { class UpstreamWshRpcProxy (line 31) | class UpstreamWshRpcProxy implements AbstractWshClient { method recvRpcMessage (line 32) | recvRpcMessage(msg: RpcMessage): void { FILE: frontend/app/suggestion/suggestion.tsx type SuggestionControlProps (line 11) | interface SuggestionControlProps { type BlockHeaderSuggestionControlProps (line 23) | type BlockHeaderSuggestionControlProps = Omit; function SuggestionControlInner (line 170) | function SuggestionControlInner({ FILE: frontend/app/tab/tab.tsx type TabEnv (line 19) | type TabEnv = WaveEnvSubset<{ type TabVProps (line 34) | interface TabVProps { type TabProps (line 222) | interface TabProps { FILE: frontend/app/tab/tabbadges.tsx type TabBadgesProps (line 9) | interface TabBadgesProps { function TabBadges (line 18) | function TabBadges({ badges, flagColor, className }: TabBadgesProps) { FILE: frontend/app/tab/tabbar-model.ts class TabBarModel (line 4) | class TabBarModel { method constructor (line 7) | private constructor() {} method getInstance (line 9) | static getInstance(): TabBarModel { FILE: frontend/app/tab/tabbar.tsx type TabBarProps (line 43) | interface TabBarProps { function strArrayIsEqual (line 78) | function strArrayIsEqual(a: string[], b: string[]) { function onEllipsisClick (line 568) | function onEllipsisClick() { FILE: frontend/app/tab/tabbarenv.ts type TabBarEnv (line 6) | type TabBarEnv = WaveEnvSubset<{ FILE: frontend/app/tab/tabcontent.tsx function onNodeDelete (line 37) | function onNodeDelete(data: TabLayoutData) { FILE: frontend/app/tab/tabcontextmenu.ts function buildTabBarContextMenu (line 20) | function buildTabBarContextMenu(env: TabEnv): ContextMenuItem[] { function buildTabContextMenu (line 39) | function buildTabContextMenu( FILE: frontend/app/tab/updatebanner.tsx type UpdateBannerEnv (line 9) | type UpdateBannerEnv = WaveEnvSubset<{ function getUpdateStatusMessage (line 18) | function getUpdateStatusMessage(status: string): string { FILE: frontend/app/tab/vtab.test.tsx function renderVTab (line 11) | function renderVTab(tab: VTabItem): string { FILE: frontend/app/tab/vtab.tsx type VTabItem (line 11) | interface VTabItem { type VTabProps (line 19) | interface VTabProps { function VTab (line 37) | function VTab({ FILE: frontend/app/tab/vtabbar.tsx type VTabBarProps (line 81) | interface VTabBarProps { type VTabWrapperProps (line 86) | interface VTabWrapperProps { function VTabWrapper (line 104) | function VTabWrapper({ function VTabBar (line 175) | function VTabBar({ workspace, className }: VTabBarProps) { FILE: frontend/app/tab/vtabbarenv.ts type VTabBarEnv (line 6) | type VTabBarEnv = WaveEnvSubset<{ FILE: frontend/app/tab/workspaceeditor.tsx type ColorSelectorProps (line 9) | interface ColorSelectorProps { type IconSelectorProps (line 35) | interface IconSelectorProps { type WorkspaceEditorProps (line 63) | interface WorkspaceEditorProps { FILE: frontend/app/tab/workspaceswitcher.tsx type WorkspaceSwitcherEnv (line 28) | type WorkspaceSwitcherEnv = WaveEnvSubset<{ type WorkspaceListEntry (line 43) | type WorkspaceListEntry = { type WorkspaceList (line 48) | type WorkspaceList = WorkspaceListEntry[]; FILE: frontend/app/treeview/treeview.test.ts function makeNodes (line 7) | function makeNodes(entries: TreeNodeData[]): Map { FILE: frontend/app/treeview/treeview.tsx type TreeNodeChildrenStatus (line 19) | type TreeNodeChildrenStatus = "unloaded" | "loading" | "loaded" | "error... type TreeNodeData (line 21) | interface TreeNodeData { type FetchDirResult (line 37) | interface FetchDirResult { type TreeViewVisibleRow (line 43) | interface TreeViewVisibleRow { type TreeViewProps (line 56) | interface TreeViewProps { type TreeViewRef (line 73) | interface TreeViewRef { function normalizeLabel (line 82) | function normalizeLabel(node: TreeNodeData): string { function sortIdsByNode (line 91) | function sortIdsByNode(nodesById: Map, ids: string... function buildVisibleRows (line 109) | function buildVisibleRows( function getNodeIcon (line 179) | function getNodeIcon(node: TreeNodeData, isExpanded: boolean): string { FILE: frontend/app/view/aifilediff/aifilediff.tsx type DiffData (line 14) | type DiffData = { type AiFileDiffEnv (line 20) | type AiFileDiffEnv = WaveEnvSubset<{ class AiFileDiffViewModel (line 27) | class AiFileDiffViewModel implements ViewModel { method constructor (line 41) | constructor({ blockId, nodeModel, tabModel, waveEnv }: ViewModelInitTy... method viewComponent (line 58) | get viewComponent(): ViewComponent { function AiFileDiffView (line 63) | function AiFileDiffView({ blockId, model }: ViewComponentProps) { FILE: frontend/app/view/launcher/launcher.tsx function sortByDisplayOrder (line 14) | function sortByDisplayOrder(wmap: { [key: string]: WidgetConfigType } | ... type GridLayoutType (line 21) | type GridLayoutType = { columns: number; tileWidth: number; tileHeight: ... class LauncherViewModel (line 23) | class LauncherViewModel implements ViewModel { method constructor (line 38) | constructor({ blockId, nodeModel, tabModel }: ViewModelInitType) { method giveFocus (line 54) | giveFocus(): boolean { method keyDownHandler (line 62) | keyDownHandler(e: WaveKeyboardEvent): boolean { method handleWidgetSelect (line 131) | async handleWidgetSelect(widget: WidgetConfigType) { function LauncherView (line 140) | function LauncherView({ blockId, model }: ViewComponentProps { type DirectoryTableProps (line 85) | interface DirectoryTableProps { function DirectoryTable (line 101) | function DirectoryTable({ type TableBodyProps (line 301) | interface TableBodyProps { function TableBody (line 315) | function TableBody({ type TableRowProps (line 492) | type TableRowProps = { function TableRow (line 502) | function TableRow({ model, row, focusIndex, setFocusIndex, setSearch, id... type DirectoryPreviewProps (line 560) | interface DirectoryPreviewProps { function DirectoryPreview (line 564) | function DirectoryPreview({ model }: DirectoryPreviewProps) { FILE: frontend/app/view/preview/preview-edit.tsx function CodeEditPreview (line 39) | function CodeEditPreview({ model }: SpecializedViewProps) { FILE: frontend/app/view/preview/preview-markdown.tsx function MarkdownPreview (line 11) | function MarkdownPreview({ model }: SpecializedViewProps) { FILE: frontend/app/view/preview/preview-model.tsx constant BOOKMARKS (line 26) | const BOOKMARKS: { label: string; path: string }[] = [ function isTextFile (line 59) | function isTextFile(mimeType: string): boolean { function isStreamingType (line 72) | function isStreamingType(mimeType: string): boolean { function isMarkdownLike (line 84) | function isMarkdownLike(mimeType: string): boolean { function iconForFile (line 91) | function iconForFile(mimeType: string): string { class PreviewModel (line 119) | class PreviewModel implements ViewModel { method constructor (line 173) | constructor({ blockId, nodeModel, tabModel, waveEnv }: ViewModelInitTy... method markdownShowTocToggle (line 494) | markdownShowTocToggle() { method viewComponent (line 498) | get viewComponent(): ViewComponent { method getSpecializedView (line 502) | async getSpecializedView(getFn: Getter): Promise<{ specializedView?: s... method updateOpenFileModalAndError (line 556) | updateOpenFileModalAndError(isOpen, errorMsg = null) { method toggleOpenFileModal (line 571) | toggleOpenFileModal() { method goHistory (line 580) | async goHistory(newPath: string) { method goParentDirectory (line 598) | async goParentDirectory({ fileInfo = null }: { fileInfo?: FileInfo | n... method goHistoryBack (line 618) | async goHistoryBack() { method goHistoryForward (line 630) | async goHistoryForward() { method setEditMode (line 642) | async setEditMode(edit: boolean) { method handleFileSave (line 648) | async handleFileSave() { method handleFileRevert (line 677) | async handleFileRevert() { method handleOpenFile (line 683) | async handleOpenFile(filePath: string) { method isSpecializedView (line 698) | isSpecializedView(sv: string): boolean { method getSettingsMenuItems (line 703) | getSettingsMenuItems(): ContextMenuItem[] { method giveFocus (line 808) | giveFocus(): boolean { method keyDownHandler (line 821) | keyDownHandler(e: WaveKeyboardEvent): boolean { method formatRemoteUri (line 862) | async formatRemoteUri(path: string, get: Getter): Promise { FILE: frontend/app/view/preview/preview-streaming.tsx function ImageZoomControls (line 14) | function ImageZoomControls() { function StreamingImagePreview (line 32) | function StreamingImagePreview({ url }: { url: string }) { function StreamingPreview (line 49) | function StreamingPreview({ model }: SpecializedViewProps) { FILE: frontend/app/view/preview/preview.tsx type SpecializedViewProps (line 21) | type SpecializedViewProps = { function canPreview (line 34) | function canPreview(mimeType: string): boolean { function CSVViewPreview (line 41) | function CSVViewPreview({ model, parentRef }: SpecializedViewProps) { function PreviewView (line 99) | function PreviewView({ FILE: frontend/app/view/preview/previewenv.ts type PreviewEnv (line 6) | type PreviewEnv = WaveEnvSubset<{ FILE: frontend/app/view/quicktipsview/quicktipsview.tsx class QuickTipsViewModel (line 10) | class QuickTipsViewModel implements ViewModel { method constructor (line 18) | constructor({ blockId, nodeModel, tabModel }: ViewModelInitType) { method viewComponent (line 26) | get viewComponent(): ViewComponent { method showTocToggle (line 30) | showTocToggle() { function QuickTipsView (line 35) | function QuickTipsView({ model }: { model: QuickTipsViewModel }) { FILE: frontend/app/view/sysinfo/sysinfo.tsx type SysinfoEnv (line 20) | type SysinfoEnv = WaveEnvSubset<{ type DataItem (line 34) | type DataItem = { function defaultCpuMeta (line 39) | function defaultCpuMeta(name: string): TimeSeriesMeta { function defaultMemMeta (line 50) | function defaultMemMeta(name: string, maxY: string): TimeSeriesMeta { function convertWaveEventToDataItem (line 93) | function convertWaveEventToDataItem(event: Extract) { type TermLinkTooltipProps (line 80) | interface TermLinkTooltipProps { FILE: frontend/app/view/term/term-wsh.tsx class TermWshClient (line 16) | class TermWshClient extends WshClient { method constructor (line 20) | constructor(blockId: string, model: TermViewModel) { method handle_vdomcreatecontext (line 26) | async handle_vdomcreatecontext(rh: RpcResponseHelper, data: VDomCreate... method handle_termgetscrollbacklines (line 108) | async handle_termgetscrollbacklines( FILE: frontend/app/view/term/term.tsx type TerminalViewProps (line 32) | interface TerminalViewProps { FILE: frontend/app/view/term/termsticker.tsx type StickerType (line 13) | type StickerType = { type StickerTermConfig (line 34) | type StickerTermConfig = { function convertWidthDimToPx (line 42) | function convertWidthDimToPx(dim: number, config: StickerTermConfig) { function convertHeightDimToPx (line 49) | function convertHeightDimToPx(dim: number, config: StickerTermConfig) { function TermSticker (line 56) | function TermSticker({ sticker, config }: { sticker: StickerType; config... function TermStickers (line 117) | function TermStickers({ config }: { config: StickerTermConfig }) { FILE: frontend/app/view/term/termtheme.ts type TermThemeProps (line 11) | interface TermThemeProps { FILE: frontend/app/view/term/termutil.ts type GenClipboardItem (line 11) | type GenClipboardItem = { text?: string; image?: Blob }; function normalizeCursorStyle (line 13) | function normalizeCursorStyle(cursorStyle: string): TermTypes.Terminal["... function applyTransparencyToColor (line 20) | function applyTransparencyToColor(hexColor: string, transparency: number... function computeTheme (line 26) | function computeTheme( constant MIME_TO_EXT (line 49) | const MIME_TO_EXT: Record = { function createTempFileFromBlob (line 74) | async function createTempFileFromBlob(blob: Blob): Promise { function extractClipboardData (line 120) | async function extractClipboardData(item: ClipboardItem): Promise void) { method handleNewFileSubjectData (line 508) | handleNewFileSubjectData(msg: WSFileEventData) { method doTerminalWrite (line 525) | doTerminalWrite(data: string | Uint8Array, setPtyOffset?: number): Pro... method loadInitialTerminalData (line 550) | async loadInitialTerminalData(): Promise { method resyncController (line 584) | async resyncController(reason: string) { method setAtBottom (line 598) | setAtBottom(atBottom: boolean) { method wasRecentlyAtBottom (line 608) | wasRecentlyAtBottom(): boolean { method handleViewportScroll (line 615) | handleViewportScroll(viewportElem: HTMLElement) { method handleResize (line 628) | handleResize() { method processAndCacheData (line 663) | processAndCacheData() { method runProcessIdleTimeout (line 676) | runProcessIdleTimeout() { method pasteHandler (line 685) | async pasteHandler(e?: ClipboardEvent): Promise { method getScrollbackContent (line 715) | getScrollbackContent(): string { FILE: frontend/app/view/tsunami/tsunami.tsx class TsunamiViewModel (line 13) | class TsunamiViewModel extends WebViewModel { method constructor (line 22) | constructor(initOpts: ViewModelInitType) { method viewComponent (line 78) | get viewComponent(): ViewComponent { method updateShellProcStatus (line 82) | updateShellProcStatus(fullStatus: BlockControllerRuntimeStatus) { method triggerRestartAtom (line 93) | triggerRestartAtom() { method doControllerResync (line 100) | private doControllerResync(forceRestart: boolean, logContext: string, ... method resyncController (line 115) | resyncController() { method destroyController (line 119) | destroyController() { method restartController (line 124) | async restartController() { method restartAndForceRebuild (line 145) | restartAndForceRebuild() { method forceRestartController (line 149) | forceRestartController() { method remixInBuilder (line 154) | async remixInBuilder() { method dispose (line 172) | dispose() { method getSettingsMenuItems (line 181) | getSettingsMenuItems(): ContextMenuItem[] { FILE: frontend/app/view/vdom/vdom-model.tsx type AtomContainer (line 23) | type AtomContainer = { type RefContainer (line 29) | type RefContainer = { function makeVDomIdMap (line 36) | function makeVDomIdMap(vdom: VDomElem, idMap: Map) { function annotateEvent (line 51) | function annotateEvent(event: VDomEvent, propName: string, reactEvent: R... class VDomWshClient (line 92) | class VDomWshClient extends WshClient { method constructor (line 95) | constructor(model: VDomModel) { method handle_vdomasyncinitiation (line 100) | handle_vdomasyncinitiation(rh: RpcResponseHelper, data: VDomAsyncIniti... class VDomModel (line 106) | class VDomModel { method constructor (line 143) | constructor({ blockId, nodeModel, tabModel }: ViewModelInitType) { method viewComponent (line 191) | get viewComponent(): ViewComponent { method dispose (line 195) | dispose() { method reset (line 200) | reset() { method getBackendRoute (line 225) | getBackendRoute(): string { method transformVDomUrl (line 230) | transformVDomUrl(url: string): string { method makeVDomUrl (line 241) | makeVDomUrl(path: string): string { method keyDownHandler (line 257) | keyDownHandler(e: WaveKeyboardEvent): boolean { method hasRefUpdates (line 279) | hasRefUpdates() { method getRefUpdates (line 288) | getRefUpdates(): VDomRefUpdate[] { method queueUpdate (line 313) | queueUpdate(quick: boolean = false, delay: number = 10) { method _sendRenderRequest (line 356) | async _sendRenderRequest(force: boolean) { method getAtomContainer (line 404) | getAtomContainer(atomName: string): AtomContainer { method getOrCreateRefContainer (line 417) | getOrCreateRefContainer(vdomRef: VDomRef): RefContainer { method tagUseAtoms (line 438) | tagUseAtoms(waveId: string, atomNames: Set) { method tagUnuseAtoms (line 445) | tagUnuseAtoms(waveId: string, atomNames: Set) { method getVDomNodeVersionAtom (line 452) | getVDomNodeVersionAtom(vdom: VDomElem) { method incVDomNodeVersion (line 461) | incVDomNodeVersion(vdom: VDomElem) { method addErrorMessage (line 469) | addErrorMessage(message: string) { method handleRenderUpdates (line 476) | handleRenderUpdates(update: VDomBackendUpdate, idMap: Map... function convertVDomFunc (line 145) | function convertVDomFunc(model: VDomModel, fnDecl: VDomFunc, compId: str... function convertElemToTag (line 170) | function convertElemToTag(elem: VDomElem, model: VDomModel): React.React... function isObject (line 180) | function isObject(v: any): boolean { function isArray (line 184) | function isArray(v: any): boolean { function resolveBinding (line 188) | function resolveBinding(binding: VDomBinding, model: VDomModel): [any, s... type GenericPropsType (line 208) | type GenericPropsType = { [key: string]: any }; function convertProps (line 211) | function convertProps(elem: VDomElem, model: VDomModel): [GenericPropsTy... function convertChildren (line 296) | function convertChildren(elem: VDomElem, model: VDomModel): React.ReactN... function stringSetsEqual (line 313) | function stringSetsEqual(set1: Set, set2: Set): boolean { function useVDom (line 325) | function useVDom(model: VDomModel, elem: VDomElem): GenericPropsType { function WaveMarkdown (line 345) | function WaveMarkdown({ elem, model }: { elem: VDomElem; model: VDomMode... function StyleTag (line 358) | function StyleTag({ elem, model }: { elem: VDomElem; model: VDomModel }) { function WaveStyle (line 372) | function WaveStyle({ src, model, onMount }: { src: string; model: VDomMo... function VDomTag (line 410) | function VDomTag({ elem, model }: { elem: VDomElem; model: VDomModel }) { function vdomText (line 439) | function vdomText(text: string): VDomElem { function VDomRoot (line 463) | function VDomRoot({ model }: { model: VDomModel }) { type VDomViewProps (line 477) | type VDomViewProps = { function VDomInnerView (line 482) | function VDomInnerView({ blockId, model }: VDomViewProps) { function VDomView (line 497) | function VDomView({ blockId, model }: VDomViewProps) { FILE: frontend/app/view/waveai/waveai.tsx type ChatMessageType (line 28) | interface ChatMessageType { type ChatItemProps (line 38) | interface ChatItemProps { function promptToMsg (line 43) | function promptToMsg(prompt: WaveAIPromptMessageType): ChatMessageType { class AiWshClient (line 51) | class AiWshClient extends WshClient { method constructor (line 55) | constructor(blockId: string, model: WaveAiModel) { method handle_aisendmessage (line 61) | handle_aisendmessage(rh: RpcResponseHelper, data: AiMessageData) { class WaveAiModel (line 69) | class WaveAiModel implements ViewModel { method constructor (line 96) | constructor({ blockId, nodeModel, tabModel }: ViewModelInitType) { method viewComponent (line 307) | get viewComponent(): ViewComponent { method dispose (line 311) | dispose() { method populateMessages (line 315) | async populateMessages(): Promise { method fetchAiData (line 320) | async fetchAiData(): Promise> { method giveFocus (line 329) | giveFocus(): boolean { method getAiName (line 337) | getAiName(): string { method setLocked (line 344) | setLocked(locked: boolean) { method sendMessage (line 348) | sendMessage(text: string, user: string = "user") { method useWaveAi (line 437) | useWaveAi() { method clearMessages (line 443) | async clearMessages() { method keyDownHandler (line 448) | keyDownHandler(waveEvent: WaveKeyboardEvent): boolean { type ChatWindowProps (line 526) | interface ChatWindowProps { type ChatInputProps (line 632) | interface ChatInputProps { FILE: frontend/app/view/waveconfig/secretscontent.tsx type ErrorDisplayProps (line 9) | interface ErrorDisplayProps { type SecretListViewProps (line 78) | interface SecretListViewProps { type AddSecretFormProps (line 117) | interface AddSecretFormProps { type SecretDetailViewProps (line 201) | interface SecretDetailViewProps { type SecretsContentProps (line 310) | interface SecretsContentProps { FILE: frontend/app/view/waveconfig/waveaivisual.tsx type WaveAIVisualContentProps (line 7) | interface WaveAIVisualContentProps { FILE: frontend/app/view/waveconfig/waveconfig-model.ts type ValidationResult (line 17) | type ValidationResult = { success: true } | { error: string }; type ConfigValidator (line 18) | type ConfigValidator = (parsed: any) => ValidationResult; type ConfigFile (line 20) | type ConfigFile = { function validateBgJson (line 35) | function validateBgJson(parsed: any): ValidationResult { function validateAiJson (line 45) | function validateAiJson(parsed: any): ValidationResult { function validateWaveAiJson (line 55) | function validateWaveAiJson(parsed: any): ValidationResult { function makeConfigFiles (line 68) | function makeConfigFiles(isWindows: boolean): ConfigFile[] { class WaveConfigViewModel (line 139) | class WaveConfigViewModel implements ViewModel { method constructor (line 176) | constructor({ blockId, nodeModel, tabModel, waveEnv }: ViewModelInitTy... method checkPresetsJsonExists (line 219) | async checkPresetsJsonExists() { method initialize (line 233) | initialize() { method getConfigFiles (line 259) | getConfigFiles(): ConfigFile[] { method getDeprecatedConfigFiles (line 263) | getDeprecatedConfigFiles(): ConfigFile[] { method hasChanges (line 273) | hasChanges(): boolean { method markAsEdited (line 277) | markAsEdited() { method loadFile (line 281) | async loadFile(file: ConfigFile) { method saveFile (line 324) | async saveFile() { method clearError (line 399) | clearError() { method clearValidationError (line 403) | clearValidationError() { method checkStorageBackend (line 407) | async checkStorageBackend() { method refreshSecrets (line 423) | async refreshSecrets() { method viewSecret (line 437) | async viewSecret(name: string) { method closeSecretView (line 444) | closeSecretView() { method showSecret (line 450) | async showSecret() { method saveSecret (line 475) | async saveSecret() { method deleteSecret (line 506) | async deleteSecret() { method startAddingSecret (line 527) | startAddingSecret() { method cancelAddingSecret (line 534) | cancelAddingSecret() { method addNewSecret (line 541) | async addNewSecret() { method giveFocus (line 590) | giveFocus(): boolean { FILE: frontend/app/view/waveconfig/waveconfig.tsx type ConfigSidebarProps (line 17) | interface ConfigSidebarProps { FILE: frontend/app/view/waveconfig/waveconfigenv.ts type WaveConfigEnv (line 6) | type WaveConfigEnv = WaveEnvSubset<{ FILE: frontend/app/view/webview/webview.tsx constant USER_AGENT_IPHONE (line 29) | const USER_AGENT_IPHONE = constant USER_AGENT_ANDROID (line 31) | const USER_AGENT_ANDROID = function getWebviewPreloadUrl (line 36) | function getWebviewPreloadUrl(env: WebViewEnv) { class WebViewModel (line 47) | class WebViewModel implements ViewModel { method constructor (line 78) | constructor({ blockId, nodeModel, tabModel, waveEnv }: ViewModelInitTy... method viewComponent (line 214) | get viewComponent(): ViewComponent { method shouldDisableBackButton (line 222) | shouldDisableBackButton() { method shouldDisableForwardButton (line 233) | shouldDisableForwardButton() { method shouldDisableHomeButton (line 244) | shouldDisableHomeButton() { method handleHome (line 252) | handleHome(e?: React.MouseEvent) { method setMediaPlaying (line 260) | setMediaPlaying(isPlaying: boolean) { method handleMuteChange (line 264) | handleMuteChange(e: React.ChangeEvent) { method setTypeaheadOpen (line 278) | setTypeaheadOpen(open: boolean) { method fetchBookmarkSuggestions (line 282) | async fetchBookmarkSuggestions( method handleUrlWrapperMouseOver (line 295) | handleUrlWrapperMouseOver(e: React.MouseEvent) { method handleForward (line 317) | handleForward(e?: React.MouseEvent) { method handleRefresh (line 325) | handleRefresh(e: React.MouseEvent) { method handleUrlChange (line 341) | handleUrlChange(event: React.ChangeEvent) { method handleKeyDown (line 345) | handleKeyDown(event: React.KeyboardEvent) { method handleFocus (line 358) | handleFocus(event: React.FocusEvent) { method handleBlur (line 365) | handleBlur(event: React.FocusEvent) { method handleNavigate (line 374) | handleNavigate(url: string) { method ensureUrlScheme (line 387) | ensureUrlScheme(url: string, searchTemplate: string) { method loadUrl (line 425) | loadUrl(newUrl: string, reason: string) { method loadUrlPromise (line 447) | loadUrlPromise(newUrl: string, reason: string): Promise { method getUrl (line 472) | getUrl() { method setRefreshIcon (line 476) | setRefreshIcon(refreshIcon: string) { method setIsLoading (line 480) | setIsLoading(isLoading: boolean) { method setHomepageUrl (line 484) | async setHomepageUrl(url: string, scope: "global" | "block") { method giveFocus (line 504) | giveFocus(): boolean { method copyUrlToClipboard (line 529) | copyUrlToClipboard() { method clearHistory (line 536) | clearHistory() { method clearCookiesAndStorage (line 544) | async clearCookiesAndStorage() { method keyDownHandler (line 555) | keyDownHandler(e: WaveKeyboardEvent): boolean { method setZoomFactor (line 581) | setZoomFactor(factor: number | null) { method getSettingsMenuItems (line 600) | getSettingsMenuItems(): ContextMenuItem[] { type WebViewProps (line 806) | interface WebViewProps { function getWebPreviewDisplayUrl (line 815) | function getWebPreviewDisplayUrl(url?: string | null): string { function WebViewPreviewFallback (line 819) | function WebViewPreviewFallback({ url }: { url?: string | null }) { function setBgColor (line 921) | function setBgColor() { FILE: frontend/app/view/webview/webviewenv.ts type WebViewEnv (line 6) | type WebViewEnv = WaveEnvSubset<{ FILE: frontend/app/waveenv/mockboundary.tsx type MockBoundaryProps (line 7) | type MockBoundaryProps = { function MockBoundary (line 12) | function MockBoundary({ fallback, children }: MockBoundaryProps) { FILE: frontend/app/waveenv/waveenv.ts type BlockMetaKeyAtomFnType (line 9) | type BlockMetaKeyAtomFnType = { type Subset (line 27) | type Subset = OmitNever<{ type ComplexWaveEnvKeys (line 31) | type ComplexWaveEnvKeys = { type WaveEnvMockFields (line 39) | type WaveEnvMockFields = { type WaveEnvSubset (line 45) | type WaveEnvSubset = WaveEnvMockFields & type WaveEnv (line 55) | type WaveEnv = { type EnvContract (line 87) | type EnvContract = { function useWaveEnv (line 91) | function useWaveEnv = WaveEnv>(): T { FILE: frontend/app/waveenv/waveenvimpl.ts function makeWaveEnvImpl (line 21) | function makeWaveEnvImpl(): WaveEnv { FILE: frontend/app/workspace/widgetfilter.ts function shouldIncludeWidgetForWorkspace (line 4) | function shouldIncludeWidgetForWorkspace(widget: WidgetConfigType, works... FILE: frontend/app/workspace/widgets.tsx type WidgetsEnv (line 23) | type WidgetsEnv = WaveEnvSubset<{ function sortByDisplayOrder (line 41) | function sortByDisplayOrder(wmap: { [key: string]: WidgetConfigType }): ... type WidgetPropsType (line 52) | type WidgetPropsType = { function handleWidgetSelect (line 58) | async function handleWidgetSelect(widget: WidgetConfigType, env: Widgets... function calculateGridSize (line 103) | function calculateGridSize(appCount: number): number { function SettingsTooltipContent (line 111) | function SettingsTooltipContent({ hasConfigErrors }: { hasConfigErrors: ... type FloatingWindowPropsType (line 126) | type FloatingWindowPropsType = { FILE: frontend/app/workspace/workspace-layout-model.ts function clampVTabWidth (line 28) | function clampVTabWidth(w: number): number { function clampAIPanelWidth (line 32) | function clampAIPanelWidth(w: number, windowWidth: number): number { class WorkspaceLayoutModel (line 38) | class WorkspaceLayoutModel { method constructor (line 61) | private constructor() { method getInstance (line 103) | static getInstance(): WorkspaceLayoutModel { method getTabId (line 112) | private getTabId(): string { method getWorkspaceId (line 116) | private getWorkspaceId(): string { method getPanelOpenAtom (line 120) | private getPanelOpenAtom(): jotai.Atom { method getPanelWidthAtom (line 124) | private getPanelWidthAtom(): jotai.Atom { method getVTabBarWidthAtom (line 128) | private getVTabBarWidthAtom(): jotai.Atom { method initializeFromMeta (line 132) | private initializeFromMeta(): void { method getResolvedAIWidth (line 156) | private getResolvedAIWidth(windowWidth: number): number { method getResolvedVTabWidth (line 166) | private getResolvedVTabWidth(): number { method computeLayout (line 176) | private computeLayout(windowWidth: number): { outer: number[]; inner: ... method commitLayouts (line 199) | private commitLayouts(windowWidth: number): void { method handleOuterPanelLayout (line 213) | handleOuterPanelLayout(sizes: number[]): void { method handleInnerPanelLayout (line 237) | handleInnerPanelLayout(sizes: number[]): void { method handleWindowResize (line 262) | handleWindowResize(): void { method syncVTabWidthFromMeta (line 268) | syncVTabWidthFromMeta(): void { method registerRefs (line 276) | registerRefs( method syncPanelCollapse (line 297) | private syncPanelCollapse(): void { method enableTransitions (line 316) | enableTransitions(duration: number): void { method updateWrapperWidth (line 336) | updateWrapperWidth(): void { method getAIPanelVisible (line 344) | getAIPanelVisible(): boolean { method getAIPanelWidth (line 349) | getAIPanelWidth(): number { method getLeftGroupInitialPercentage (line 355) | getLeftGroupInitialPercentage(windowWidth: number, showLeftTabBar: boo... method getInnerVTabInitialPercentage (line 362) | getInnerVTabInitialPercentage(windowWidth: number, showLeftTabBar: boo... method getInnerAIPanelInitialPercentage (line 372) | getInnerAIPanelInitialPercentage(windowWidth: number, showLeftTabBar: ... method setAIPanelVisible (line 383) | setAIPanelVisible(visible: boolean, opts?: { nofocus?: boolean }): void { method setShowLeftTabBar (line 424) | setShowLeftTabBar(showLeftTabBar: boolean): void { FILE: frontend/builder/app-selection-modal.tsx function CreateNewWaveApp (line 16) | function CreateNewWaveApp({ onCreateApp }: { onCreateApp: (appName: stri... function AppSelectionModal (line 101) | function AppSelectionModal() { FILE: frontend/builder/builder-app.tsx type BuilderAppProps (line 17) | type BuilderAppProps = { function BuilderAppInner (line 34) | function BuilderAppInner() { function BuilderApp (line 62) | function BuilderApp({ initOpts, onFirstRender }: BuilderAppProps) { FILE: frontend/builder/builder-apppanel.tsx type TabButtonProps (line 51) | type TabButtonProps = { FILE: frontend/builder/builder-buildpanel.tsx function handleBuildPanelContextMenu (line 13) | function handleBuildPanelContextMenu(e: React.MouseEvent, selectedText: ... FILE: frontend/builder/store/builder-apppanel-model.ts type TabType (line 14) | type TabType = "preview" | "files" | "code" | "secrets" | "configdata"; type EnvVar (line 16) | type EnvVar = { class BuilderAppPanelModel (line 22) | class BuilderAppPanelModel { method constructor (line 43) | private constructor() { method getInstance (line 52) | static getInstance(): BuilderAppPanelModel { method setActiveTab (line 59) | setActiveTab(tab: TabType) { method getActiveTab (line 63) | getActiveTab(): TabType { method setCodeContent (line 67) | setCodeContent(content: string) { method initialize (line 71) | async initialize() { method updateSecretsLatch (line 117) | updateSecretsLatch(status: BuilderStatusData) { method updateSecretBindings (line 125) | updateSecretBindings(newBindings: { [key: string]: string }) { method loadEnvVars (line 135) | async loadEnvVars(builderId: string) { method saveEnvVars (line 149) | async saveEnvVars(builderId: string) { method getEnvVarIndexAtom (line 176) | getEnvVarIndexAtom(index: number): Atom { method addEnvVar (line 186) | addEnvVar() { method removeEnvVar (line 192) | removeEnvVar(index: number) { method setEnvVarAtIndex (line 199) | setEnvVarAtIndex(index: number, envVar: EnvVar, dirty: boolean) { method startBuilder (line 209) | async startBuilder() { method restartBuilder (line 221) | async restartBuilder() { method switchBuilderApp (line 226) | async switchBuilderApp() { method loadAppFile (line 244) | async loadAppFile(appId: string) { method saveAppFile (line 277) | async saveAppFile(appId: string) { method clearError (line 296) | clearError() { method giveFocus (line 300) | giveFocus() { method setFocusElemRef (line 309) | setFocusElemRef(ref: HTMLInputElement | null) { method setMonacoEditorRef (line 313) | setMonacoEditorRef(ref: MonacoTypes.editor.IStandaloneCodeEditor | nul... method dispose (line 317) | dispose() { FILE: frontend/builder/store/builder-buildpanel-model.ts class BuilderBuildPanelModel (line 11) | class BuilderBuildPanelModel { method constructor (line 19) | private constructor() {} method getInstance (line 21) | static getInstance(): BuilderBuildPanelModel { method initialize (line 28) | async initialize() { method clearOutput (line 62) | clearOutput() { method dispose (line 66) | dispose() { FILE: frontend/builder/store/builder-focusmanager.ts type BuilderFocusType (line 7) | type BuilderFocusType = "waveai" | "app"; class BuilderFocusManager (line 9) | class BuilderFocusManager { method constructor (line 14) | private constructor() {} method getInstance (line 16) | static getInstance(): BuilderFocusManager { method setWaveAIFocused (line 23) | setWaveAIFocused() { method setAppFocused (line 27) | setAppFocused() { method getFocusType (line 31) | getFocusType(): BuilderFocusType { FILE: frontend/builder/tabs/builder-configdatatab.tsx type ConfigDataState (line 61) | type ConfigDataState = { FILE: frontend/builder/tabs/builder-filestab.tsx type FileEntry (line 18) | type FileEntry = { FILE: frontend/builder/tabs/builder-secrettab.tsx type SecretRowProps (line 16) | type SecretRowProps = { type SetSecretDialogProps (line 74) | type SetSecretDialogProps = { FILE: frontend/builder/utils/builder-focus-utils.ts function findBuilderAppPanel (line 4) | function findBuilderAppPanel(element: HTMLElement): HTMLElement | null { function builderAppHasFocusWithin (line 15) | function builderAppHasFocusWithin(focusTarget?: Element | null): boolean { function builderAppHasSelection (line 44) | function builderAppHasSelection(): boolean { FILE: frontend/layout/lib/TileLayout.tsx type TileLayoutProps (line 36) | interface TileLayoutProps { function TileLayoutComponent (line 57) | function TileLayoutComponent({ tabAtom, contents, getCursorPoint }: Tile... function NodeBackdrops (line 139) | function NodeBackdrops({ layoutModel }: { layoutModel: LayoutModel }) { type DisplayNodesWrapperProps (line 194) | interface DisplayNodesWrapperProps { type DisplayNodeProps (line 213) | interface DisplayNodeProps { type OverlayNodeWrapperProps (line 321) | interface OverlayNodeWrapperProps { type OverlayNodeProps (line 344) | interface OverlayNodeProps { type ResizeHandleWrapperProps (line 410) | interface ResizeHandleWrapperProps { type ResizeHandleComponentProps (line 422) | interface ResizeHandleComponentProps { function onPointerDown (line 446) | function onPointerDown(event: React.PointerEvent) { function onPointerCapture (line 451) | function onPointerCapture(event: React.PointerEvent) { type PlaceholderProps (line 479) | interface PlaceholderProps { FILE: frontend/layout/lib/layoutAtom.ts function getLayoutStateAtomFromTab (line 7) | function getLayoutStateAtomFromTab(tabAtom: Atom, get: Getter): Ato... FILE: frontend/layout/lib/layoutModel.ts type ResizeContext (line 61) | interface ResizeContext { class LayoutModel (line 76) | class LayoutModel { method constructor (line 240) | constructor( method initializeFromWaveObject (line 357) | private initializeFromWaveObject() { method onBackendUpdate (line 379) | onBackendUpdate() { method processPendingBackendActions (line 387) | private async processPendingBackendActions() { method cleanupOrphanedBlocks (line 411) | private async cleanupOrphanedBlocks() { method handleBackendAction (line 435) | private async handleBackendAction(action: LayoutActionData) { method persistToBackend (line 576) | private persistToBackend() { method registerTileLayout (line 600) | registerTileLayout(contents: TileLayoutContents) { method treeReducer (line 615) | treeReducer(action: LayoutTreeAction, setState = true) { method onTreeStateAtomUpdated (line 708) | async onTreeStateAtomUpdated(force = false) { method updateTree (line 724) | updateTree(balanceTree = true) { method updateTreeHelper (line 785) | private updateTreeHelper( method focusedNodeId (line 900) | get focusedNodeId(): string { method validateFocusedNode (line 908) | private validateFocusedNode(leafOrder: LeafOrderEntry[]) { method validateMagnifiedNode (line 936) | private validateMagnifiedNode(leafOrder: LeafOrderEntry[], addlProps: ... method getPlaceholderTransform (line 954) | private getPlaceholderTransform(pendingAction: LayoutTreeAction): CSSP... method getNodeModel (line 1042) | getNodeModel(node: LayoutNode): NodeModel { method cleanupNodeModels (line 1104) | private cleanupNodeModels(leafOrder: LeafOrderEntry[]) { method switchNodeFocusInDirection (line 1117) | switchNodeFocusInDirection(direction: NavigateDirection, inWaveAI: boo... method switchNodeFocusByBlockNum (line 1216) | switchNodeFocusByBlockNum(newBlockNum: number) { method focusNode (line 1230) | focusNode(nodeId: string) { method focusFirstNode (line 1250) | focusFirstNode() { method getFirstBlockId (line 1257) | getFirstBlockId(): string | undefined { method magnifyNodeToggle (line 1269) | magnifyNodeToggle(nodeId: string, setState = true) { method closeNode (line 1285) | async closeNode(nodeId: string) { method closeFocusedNode (line 1317) | async closeFocusedNode() { method newEphemeralNode (line 1321) | newEphemeralNode(blockId: string) { method addEphemeralNodeToLayout (line 1338) | addEphemeralNodeToLayout() { method updateEphemeralNodeProps (line 1356) | updateEphemeralNodeProps( method onDrop (line 1385) | onDrop() { method onResizeMove (line 1415) | onResizeMove(resizeHandle: ResizeHandleProps, x: number, y: number) { method onResizeEnd (line 1483) | onResizeEnd() { method getNodeByBlockId (line 1495) | getNodeByBlockId(blockId: string): LayoutNode { method getNodeAdditionalPropertiesAtom (line 1509) | getNodeAdditionalPropertiesAtom(nodeId: string): Atom): LayoutModel { function getLayoutModelForTabById (line 39) | function getLayoutModelForTabById(tabId: string) { function getLayoutModelForStaticTab (line 45) | function getLayoutModelForStaticTab() { function deleteLayoutModelForTab (line 50) | function deleteLayoutModelForTab(tabId: string) { function useLayoutModel (line 54) | function useLayoutModel(tabAtom: Atom): LayoutModel { function useTileLayout (line 58) | function useTileLayout(tabAtom: Atom, tileContent: TileLayoutConten... function useNodeModel (line 72) | function useNodeModel(layoutModel: LayoutModel, layoutNode: LayoutNode):... function useDebouncedNodeInnerRect (line 76) | function useDebouncedNodeInnerRect(nodeModel: NodeModel): CSSProperties { FILE: frontend/layout/lib/layoutNode.ts function newLayoutNode (line 16) | function newLayoutNode( function addChildAt (line 43) | function addChildAt(node: LayoutNode, idx: number, ...children: LayoutNo... function addIntermediateNode (line 75) | function addIntermediateNode(node: LayoutNode): LayoutNode { function removeChild (line 100) | function removeChild(parent: LayoutNode, childToRemove: LayoutNode, star... function findNode (line 113) | function findNode(node: LayoutNode, id: string): LayoutNode | undefined { function findParent (line 130) | function findParent(node: LayoutNode, id: string): LayoutNode | undefined { function validateNode (line 145) | function validateNode(node: LayoutNode): boolean { function walkNodes (line 164) | function walkNodes( function balanceNode (line 182) | function balanceNode( function findNextInsertLocation (line 227) | function findNextInsertLocation( function findInsertLocationFromIndexArr (line 241) | function findInsertLocationFromIndexArr( function findNextInsertLocationHelper (line 263) | function findNextInsertLocationHelper( function totalChildrenSize (line 283) | function totalChildrenSize(node: LayoutNode): number { FILE: frontend/layout/lib/layoutTree.ts constant DEFAULT_MAX_CHILDREN (line 35) | const DEFAULT_MAX_CHILDREN = 5; function computeMoveNode (line 43) | function computeMoveNode(layoutState: LayoutTreeState, computeInsertActi... function moveNode (line 230) | function moveNode(layoutState: LayoutTreeState, action: LayoutTreeMoveNo... function insertNode (line 279) | function insertNode(layoutState: LayoutTreeState, action: LayoutTreeInse... function insertNodeAtIndex (line 299) | function insertNodeAtIndex(layoutState: LayoutTreeState, action: LayoutT... function swapNode (line 323) | function swapNode(layoutState: LayoutTreeState, action: LayoutTreeSwapNo... function deleteNode (line 354) | function deleteNode(layoutState: LayoutTreeState, action: LayoutTreeDele... function resizeNode (line 379) | function resizeNode(layoutState: LayoutTreeState, action: LayoutTreeResi... function focusNode (line 393) | function focusNode(layoutState: LayoutTreeState, action: LayoutTreeFocus... function magnifyNodeToggle (line 402) | function magnifyNodeToggle(layoutState: LayoutTreeState, action: LayoutT... function clearTree (line 419) | function clearTree(layoutState: LayoutTreeState) { function replaceNode (line 426) | function replaceNode(layoutState: LayoutTreeState, action: LayoutTreeRep... function splitHorizontal (line 454) | function splitHorizontal(layoutState: LayoutTreeState, action: LayoutTre... function splitVertical (line 497) | function splitVertical(layoutState: LayoutTreeState, action: LayoutTreeS... FILE: frontend/layout/lib/nodeRefMap.ts class NodeRefMap (line 4) | class NodeRefMap { method set (line 8) | set(id: string, ref: React.RefObject) { method delete (line 13) | delete(id: string) { method get (line 20) | get(id: string): React.RefObject { FILE: frontend/layout/lib/types.ts type NavigateDirection (line 7) | enum NavigateDirection { function navigateDirectionToString (line 14) | function navigateDirectionToString(dir: NavigateDirection): string { type DropDirection (line 29) | enum DropDirection { type FlexDirection (line 41) | enum FlexDirection { type MoveOperation (line 49) | type MoveOperation = { type LayoutTreeActionType (line 74) | enum LayoutTreeActionType { type LayoutTreeAction (line 96) | interface LayoutTreeAction { type LayoutTreeComputeMoveNodeAction (line 106) | interface LayoutTreeComputeMoveNodeAction extends LayoutTreeAction { type LayoutTreeMoveNodeAction (line 118) | interface LayoutTreeMoveNodeAction extends LayoutTreeAction, MoveOperati... type LayoutTreeSwapNodeAction (line 126) | interface LayoutTreeSwapNodeAction extends LayoutTreeAction { type InsertNodeOperation (line 139) | interface InsertNodeOperation { type LayoutTreeInsertNodeAction (line 158) | interface LayoutTreeInsertNodeAction extends LayoutTreeAction, InsertNod... type LayoutTreeInsertNodeAtIndexAction (line 165) | interface LayoutTreeInsertNodeAtIndexAction extends LayoutTreeAction, In... type LayoutTreeDeleteNodeAction (line 177) | interface LayoutTreeDeleteNodeAction extends LayoutTreeAction { type LayoutTreeSetPendingAction (line 185) | interface LayoutTreeSetPendingAction extends LayoutTreeAction { type LayoutTreeCommitPendingAction (line 197) | interface LayoutTreeCommitPendingAction extends LayoutTreeAction { type LayoutTreeClearPendingAction (line 204) | interface LayoutTreeClearPendingAction extends LayoutTreeAction { type LayoutTreeReplaceNodeAction (line 209) | interface LayoutTreeReplaceNodeAction extends LayoutTreeAction { type LayoutTreeSplitHorizontalAction (line 219) | interface LayoutTreeSplitHorizontalAction extends LayoutTreeAction { type LayoutTreeSplitVerticalAction (line 228) | interface LayoutTreeSplitVerticalAction extends LayoutTreeAction { type ResizeNodeOperation (line 239) | interface ResizeNodeOperation { type LayoutTreeResizeNodeAction (line 253) | interface LayoutTreeResizeNodeAction extends LayoutTreeAction { type LayoutTreeFocusNodeAction (line 265) | interface LayoutTreeFocusNodeAction extends LayoutTreeAction { type LayoutTreeMagnifyNodeToggleAction (line 277) | interface LayoutTreeMagnifyNodeToggleAction extends LayoutTreeAction { type LayoutTreeClearTreeAction (line 289) | interface LayoutTreeClearTreeAction extends LayoutTreeAction { type LayoutNode (line 296) | interface LayoutNode { type LayoutTreeStateSetter (line 304) | type LayoutTreeStateSetter = (value: LayoutState) => void; type LayoutTreeState (line 306) | type LayoutTreeState = { type WritableLayoutTreeStateAtom (line 317) | type WritableLayoutTreeStateAtom = WritableAtom React.ReactNode; type PreviewRenderer (line 321) | type PreviewRenderer = (nodeModel: NodeModel) => React.ReactElement; type TileLayoutContents (line 329) | interface TileLayoutContents { type ResizeHandleProps (line 365) | interface ResizeHandleProps { type LayoutNodeAdditionalProps (line 374) | interface LayoutNodeAdditionalProps { type NodeModel (line 382) | interface NodeModel { type NavigationResult (line 408) | interface NavigationResult { FILE: frontend/layout/lib/utils.ts function reverseFlexDirection (line 8) | function reverseFlexDirection(flexDirection: FlexDirection): FlexDirecti... function determineDropDirection (line 12) | function determineDropDirection(dimensions?: Dimensions, offset?: XYCoor... function setTransform (line 61) | function setTransform( function getCenter (line 84) | function getCenter(dimensions: Dimensions): Point { function navigateDirectionToOffset (line 91) | function navigateDirectionToOffset(direction: NavigateDirection): Point { FILE: frontend/layout/tests/model.ts function newLayoutTreeState (line 6) | function newLayoutTreeState(rootNode: LayoutNode): LayoutTreeState { FILE: frontend/preview/mock/mock-node-model.ts type MockNodeModelOpts (line 8) | type MockNodeModelOpts = { function makeMockNodeModel (line 15) | function makeMockNodeModel(opts: MockNodeModelOpts): NodeModel { FILE: frontend/preview/mock/mockfilesystem.ts type MockFsEntry (line 33) | type MockFsEntry = { type MockFsEntryInput (line 47) | type MockFsEntryInput = { type MockFilesystem (line 55) | type MockFilesystem = { function normalizeMockPath (line 68) | function normalizeMockPath(path: string, basePath = MockHomePath): string { function getDirName (line 100) | function getDirName(path: string): string { function getBaseName (line 111) | function getBaseName(path: string): string { function getMimeType (line 119) | function getMimeType(path: string, isdir: boolean): string { function makeContentBytes (line 165) | function makeContentBytes(content: string | Uint8Array): Uint8Array { function makeMockFsInput (line 172) | function makeMockFsInput(path: string, content?: string | Uint8Array, mi... function createMockFilesystemEntries (line 176) | function createMockFilesystemEntries(): MockFsEntryInput[] { function buildEntries (line 326) | function buildEntries(): Map { function toFileInfo (line 375) | function toFileInfo(entry: MockFsEntry): FileInfo { function makeNotFoundInfo (line 390) | function makeNotFoundInfo(path: string): FileInfo { function sliceEntries (line 401) | function sliceEntries(entries: FileInfo[], opts?: FileListOpts): FileInf... function joinPaths (line 411) | function joinPaths(paths: string[]): string { function getReadRange (line 422) | function getReadRange(data: FileData, size: number): { offset: number; e... function makeMockFilesystem (line 428) | function makeMockFilesystem(): MockFilesystem { FILE: frontend/preview/mock/mockwaveenv.ts type RpcHandlerType (line 50) | type RpcHandlerType = (...args: any[]) => Promise; type RpcStreamHandlerType (line 51) | type RpcStreamHandlerType = (...args: any[]) => AsyncGenerator(base: Record, overrides: Record): Wave... function makeMockGlobalAtoms (line 140) | function makeMockGlobalAtoms( type MockWosFns (line 199) | type MockWosFns = { function makeMockRpc (line 206) | function makeMockRpc( function applyMockEnvOverrides (line 369) | function applyMockEnvOverrides(env: WaveEnv, newOverrides: MockEnv): Moc... function makeMockWaveEnv (line 375) | function makeMockWaveEnv(mockEnv?: MockEnv): MockWaveEnv { FILE: frontend/preview/mock/preview-electron-api.ts function installPreviewElectronApi (line 64) | function installPreviewElectronApi() { FILE: frontend/preview/mock/tabbar-mock.tsx type PreviewTabEntry (line 11) | type PreviewTabEntry = { function badgeBlockId (line 18) | function badgeBlockId(tabId: string, badgeId: string): string { function makeTabWaveObj (line 22) | function makeTabWaveObj(tab: PreviewTabEntry): Tab { function makeMockBadgeEvents (line 34) | function makeMockBadgeEvents(): BadgeEvent[] { function makeMockWorkspace (line 80) | function makeMockWorkspace(tabIds: string[]): Workspace { function makeTabBarMockEnv (line 92) | function makeTabBarMockEnv( type TabBarMockEnvProviderProps (line 163) | type TabBarMockEnvProviderProps = { function TabBarMockEnvProvider (line 167) | function TabBarMockEnvProvider({ children }: TabBarMockEnvProviderProps) { FILE: frontend/preview/mock/use-rpc-override.ts function useRpcOverride (line 8) | function useRpcOverride(command: K, handle... function useRpcStreamOverride (line 17) | function useRpcStreamOverride(comman... FILE: frontend/preview/preview-contextmenu.tsx type PreviewContextMenuState (line 17) | type PreviewContextMenuState = { type PreviewContextMenuPanelProps (line 23) | type PreviewContextMenuPanelProps = { type PreviewContextMenuItemProps (line 35) | type PreviewContextMenuItemProps = { function makeVirtualElement (line 48) | function makeVirtualElement(x: number, y: number): VirtualElement { function isPathOpen (line 66) | function isPathOpen(openPath: number[], path: number[]): boolean { function getVisibleItems (line 73) | function getVisibleItems(items: ContextMenuItem[]): ContextMenuItem[] { function activateItem (line 77) | function activateItem(item: ContextMenuItem, closeMenu: () => void): void { function getPreviewContextMenuItemId (line 82) | function getPreviewContextMenuItemId(item: ContextMenuItem): string { function showPreviewContextMenu (line 243) | function showPreviewContextMenu(menu: ContextMenuItem[], e: React.MouseE... FILE: frontend/preview/preview.tsx function pathToKey (line 35) | function pathToKey(path: string): string { function PreviewIndex (line 50) | function PreviewIndex() { function PreviewHeader (line 78) | function PreviewHeader({ previewName }: { previewName: string }) { function PreviewRoot (line 96) | function PreviewRoot() { function PreviewApp (line 110) | function PreviewApp() { function initPreview (line 146) | function initPreview() { FILE: frontend/preview/previews/aifilediff.preview-util.ts function makeMockAiFileDiffResponse (line 29) | function makeMockAiFileDiffResponse( FILE: frontend/preview/previews/aifilediff.preview.tsx function AiFileDiffPreview (line 18) | function AiFileDiffPreview() { FILE: frontend/preview/previews/modal-about.preview.tsx function AboutModalPreview (line 6) | function AboutModalPreview() { FILE: frontend/preview/previews/onboarding.preview.tsx function OnboardingModalWrapper (line 13) | function OnboardingModalWrapper({ width, children }: { width: string; ch... function OnboardingFeaturesV (line 22) | function OnboardingFeaturesV() { function UpgradeOnboardingPatchV (line 48) | function UpgradeOnboardingPatchV() { function UpgradeOnboardingMinorV (line 82) | function UpgradeOnboardingMinorV() { function StarAskV (line 91) | function StarAskV() { function OnboardingPreview (line 100) | function OnboardingPreview() { FILE: frontend/preview/previews/sysinfo.preview-util.ts function clamp (line 10) | function clamp(value: number, minValue: number, maxValue: number): number { function round1 (line 14) | function round1(value: number): number { function makeMockSysinfoEvent (line 18) | function makeMockSysinfoEvent( function makeMockSysinfoHistory (line 49) | function makeMockSysinfoHistory( FILE: frontend/preview/previews/sysinfo.preview.tsx function SysinfoPreview (line 19) | function SysinfoPreview() { FILE: frontend/preview/previews/tab.preview.tsx constant TAB_WIDTH (line 7) | const TAB_WIDTH = 130; constant TAB_HEIGHT (line 8) | const TAB_HEIGHT = 26; type PreviewTabEntry (line 10) | interface PreviewTabEntry { function TabPreview (line 60) | function TabPreview() { FILE: frontend/preview/previews/tabbar.preview.tsx function TabBarPreview (line 19) | function TabBarPreview() { type TabBarPreviewInnerProps (line 33) | type TabBarPreviewInnerProps = { function TabBarPreviewInner (line 38) | function TabBarPreviewInner({ platform, setPlatform }: TabBarPreviewInne... FILE: frontend/preview/previews/treeview.preview.tsx function TreeViewPreview (line 52) | function TreeViewPreview() { FILE: frontend/preview/previews/vtabbar.preview.tsx function VTabBarPreview (line 14) | function VTabBarPreview() { type VTabBarPreviewInnerProps (line 28) | type VTabBarPreviewInnerProps = { function VTabBarPreviewInner (line 33) | function VTabBarPreviewInner({ platform, setPlatform }: VTabBarPreviewIn... FILE: frontend/preview/previews/web.preview.tsx function WebPreview (line 11) | function WebPreview() { FILE: frontend/preview/previews/widgets.preview.tsx function makeMockApp (line 15) | function makeMockApp(name: string, icon: string, iconcolor: string): App... function makeWidgetsEnv (line 90) | function makeWidgetsEnv( function WidgetsScenario (line 108) | function WidgetsScenario({ function WidgetsResizable (line 147) | function WidgetsResizable({ isDev }: { isDev: boolean }) { function PreviewControls (line 183) | function PreviewControls() { function WidgetsPreview (line 218) | function WidgetsPreview() { FILE: frontend/types/custom.d.ts type GlobalAtomsType (line 10) | type GlobalAtomsType = { type ThrottledValueAtom (line 34) | type ThrottledValueAtom = jotai.WritableAtom = { type DebouncedValueAtom (line 41) | type DebouncedValueAtom = jotai.WritableAtom = { type SplitAtom (line 48) | type SplitAtom = Atom[]>; type WritableSplitAtom (line 49) | type WritableSplitAtom = WritableAtom[], [Spli... type TabLayoutData (line 51) | type TabLayoutData = { type GlobalInitOptions (line 55) | type GlobalInitOptions = { type WaveInitOpts (line 66) | type WaveInitOpts = { type BuilderInitOpts (line 74) | type BuilderInitOpts = { type ElectronApi (line 80) | type ElectronApi = { type ElectronContextMenuItem (line 140) | type ElectronContextMenuItem = { type ContextMenuItem (line 152) | type ContextMenuItem = { type KeyPressDecl (line 164) | type KeyPressDecl = { type SubjectWithRef (line 177) | type SubjectWithRef = rxjs.Subject & { refCount: number; release: ... type HeaderElem (line 179) | type HeaderElem = type IconButtonCommon (line 189) | type IconButtonCommon = { type IconButtonDecl (line 199) | type IconButtonDecl = IconButtonCommon & { type ToggleIconButtonDecl (line 205) | type ToggleIconButtonDecl = IconButtonCommon & { type HeaderTextButton (line 210) | type HeaderTextButton = { type HeaderText (line 218) | type HeaderText = { type HeaderInput (line 227) | type HeaderInput = { type HeaderDiv (line 239) | type HeaderDiv = { type ConnectionButton (line 248) | type ConnectionButton = { type MenuItem (line 257) | type MenuItem = { type MenuButtonProps (line 264) | type MenuButtonProps = { type MenuButton (line 272) | type MenuButton = { type SearchAtoms (line 276) | type SearchAtoms = { type ViewComponentProps (line 287) | type ViewComponentProps = { type ViewComponent (line 294) | type ViewComponent = React.FC; type ViewModelInitType (line 296) | type ViewModelInitType = { type ViewModelClass (line 303) | type ViewModelClass = new (initOpts: ViewModelInitType) => ViewModel; type ViewModel (line 305) | interface ViewModel { type UpdaterStatus (line 367) | type UpdaterStatus = "up-to-date" | "checking" | "downloading" | "ready"... type Loadable (line 370) | type Loadable = { state: "loading" } | { state: "hasData"; data: T } ... type Dimensions (line 372) | interface Dimensions { type TypeAheadModalType (line 379) | type TypeAheadModalType = { [key: string]: boolean }; type AboutModalDetails (line 381) | interface AboutModalDetails { type BlockComponentModel (line 386) | type BlockComponentModel = { type ConnStatusType (line 391) | type ConnStatusType = "connected" | "connecting" | "disconnected" | "err... type SuggestionBaseItem (line 393) | interface SuggestionBaseItem { type SuggestionConnectionItem (line 399) | interface SuggestionConnectionItem extends SuggestionBaseItem { type SuggestionConnectionScope (line 406) | interface SuggestionConnectionScope { type SuggestionsType (line 411) | type SuggestionsType = SuggestionConnectionItem | SuggestionConnectionSc... type MarkdownResolveOpts (line 413) | type MarkdownResolveOpts = { type AbstractWshClient (line 418) | interface AbstractWshClient { type ClientRpcEntry (line 422) | type ClientRpcEntry = { type TimeSeriesMeta (line 429) | type TimeSeriesMeta = { type SuggestionRequestContext (line 438) | interface SuggestionRequestContext { type SuggestionsFnType (line 444) | type SuggestionsFnType = (query: string, reqContext: SuggestionRequestCo... type DraggedFile (line 446) | type DraggedFile = { type ErrorButtonDef (line 453) | type ErrorButtonDef = { type ErrorMsg (line 458) | type ErrorMsg = { type AIMessage (line 467) | type AIMessage = { type AIMessagePart (line 472) | type AIMessagePart = type AIModeConfigWithMode (line 487) | type AIModeConfigWithMode = { mode: string } & AIModeConfigType; FILE: frontend/types/gotypes.d.ts type AIAttachedFile (line 9) | type AIAttachedFile = { type AIModeConfigType (line 17) | type AIModeConfigType = { type AIModeConfigUpdate (line 41) | type AIModeConfigUpdate = { type ActivityDisplayType (line 46) | type ActivityDisplayType = { type ActivityUpdate (line 54) | type ActivityUpdate = { type AiMessageData (line 84) | type AiMessageData = { type AppInfo (line 89) | type AppInfo = { type AppManifest (line 96) | type AppManifest = { type AppMeta (line 104) | type AppMeta = { type Badge (line 112) | type Badge = { type BadgeEvent (line 121) | type BadgeEvent = { type Block (line 130) | type Block = WaveObj & { type BlockControllerRuntimeStatus (line 139) | type BlockControllerRuntimeStatus = { type BlockDef (line 149) | type BlockDef = { type BlockInfoData (line 155) | type BlockInfoData = { type BlockJobStatusData (line 164) | type BlockJobStatusData = { type BlocksListEntry (line 177) | type BlocksListEntry = { type BlocksListRequest (line 186) | type BlocksListRequest = { type BuilderStatusData (line 192) | type BuilderStatusData = { type Client (line 204) | type Client = WaveObj & { type CloseTabRtnType (line 213) | type CloseTabRtnType = { type CommandAuthenticateJobManagerData (line 219) | type CommandAuthenticateJobManagerData = { type CommandAuthenticateRtnData (line 225) | type CommandAuthenticateRtnData = { type CommandAuthenticateToJobData (line 233) | type CommandAuthenticateToJobData = { type CommandAuthenticateTokenData (line 238) | type CommandAuthenticateTokenData = { type CommandBadgeWatchPidData (line 243) | type CommandBadgeWatchPidData = { type CommandBlockInputData (line 250) | type CommandBlockInputData = { type CommandCaptureBlockScreenshotData (line 258) | type CommandCaptureBlockScreenshotData = { type CommandCheckGoVersionRtnData (line 263) | type CommandCheckGoVersionRtnData = { type CommandConnServerInitData (line 271) | type CommandConnServerInitData = { type CommandControllerAppendOutputData (line 276) | type CommandControllerAppendOutputData = { type CommandControllerResyncData (line 282) | type CommandControllerResyncData = { type CommandCreateBlockData (line 290) | type CommandCreateBlockData = { type CommandCreateSubBlockData (line 302) | type CommandCreateSubBlockData = { type CommandDebugTermData (line 308) | type CommandDebugTermData = { type CommandDebugTermRtnData (line 314) | type CommandDebugTermRtnData = { type CommandDeleteAppFileData (line 320) | type CommandDeleteAppFileData = { type CommandDeleteBlockData (line 326) | type CommandDeleteBlockData = { type CommandDeleteFileData (line 331) | type CommandDeleteFileData = { type CommandDisposeData (line 337) | type CommandDisposeData = { type CommandElectronDecryptData (line 342) | type CommandElectronDecryptData = { type CommandElectronDecryptRtnData (line 347) | type CommandElectronDecryptRtnData = { type CommandElectronEncryptData (line 353) | type CommandElectronEncryptData = { type CommandElectronEncryptRtnData (line 358) | type CommandElectronEncryptRtnData = { type CommandEventReadHistoryData (line 364) | type CommandEventReadHistoryData = { type CommandFileCopyData (line 371) | type CommandFileCopyData = { type CommandFileRestoreBackupData (line 378) | type CommandFileRestoreBackupData = { type CommandFileStreamData (line 384) | type CommandFileStreamData = { type CommandGetMetaData (line 391) | type CommandGetMetaData = { type CommandGetRTInfoData (line 396) | type CommandGetRTInfoData = { type CommandGetTempDirData (line 401) | type CommandGetTempDirData = { type CommandGetWaveAIChatData (line 406) | type CommandGetWaveAIChatData = { type CommandJobCmdExitedData (line 411) | type CommandJobCmdExitedData = { type CommandJobConnectRtnData (line 420) | type CommandJobConnectRtnData = { type CommandJobControllerAttachJobData (line 431) | type CommandJobControllerAttachJobData = { type CommandJobControllerStartJobData (line 437) | type CommandJobControllerStartJobData = { type CommandJobInputData (line 447) | type CommandJobInputData = { type CommandJobPrepareConnectData (line 457) | type CommandJobPrepareConnectData = { type CommandJobStartStreamData (line 464) | type CommandJobStartStreamData = object; type CommandListAllAppFilesData (line 467) | type CommandListAllAppFilesData = { type CommandListAllAppFilesRtnData (line 472) | type CommandListAllAppFilesRtnData = { type CommandMakeDraftFromLocalData (line 483) | type CommandMakeDraftFromLocalData = { type CommandMakeDraftFromLocalRtnData (line 488) | type CommandMakeDraftFromLocalRtnData = { type CommandMessageData (line 493) | type CommandMessageData = { type CommandPublishAppData (line 498) | type CommandPublishAppData = { type CommandPublishAppRtnData (line 503) | type CommandPublishAppRtnData = { type CommandReadAppFileData (line 508) | type CommandReadAppFileData = { type CommandReadAppFileRtnData (line 514) | type CommandReadAppFileRtnData = { type CommandRemoteDisconnectFromJobManagerData (line 521) | type CommandRemoteDisconnectFromJobManagerData = { type CommandRemoteFileMultiInfoData (line 526) | type CommandRemoteFileMultiInfoData = { type CommandRemoteFileStreamData (line 532) | type CommandRemoteFileStreamData = { type CommandRemoteListEntriesData (line 539) | type CommandRemoteListEntriesData = { type CommandRemoteListEntriesRtnData (line 545) | type CommandRemoteListEntriesRtnData = { type CommandRemoteReconnectToJobManagerData (line 550) | type CommandRemoteReconnectToJobManagerData = { type CommandRemoteReconnectToJobManagerRtnData (line 559) | type CommandRemoteReconnectToJobManagerRtnData = { type CommandRemoteStartJobData (line 566) | type CommandRemoteStartJobData = { type CommandRemoteStreamFileData (line 580) | type CommandRemoteStreamFileData = { type CommandRemoteTerminateJobManagerData (line 586) | type CommandRemoteTerminateJobManagerData = { type CommandRenameAppFileData (line 593) | type CommandRenameAppFileData = { type CommandResolveIdsData (line 600) | type CommandResolveIdsData = { type CommandResolveIdsRtnData (line 606) | type CommandResolveIdsRtnData = { type CommandRestartBuilderAndWaitData (line 611) | type CommandRestartBuilderAndWaitData = { type CommandSetMetaData (line 616) | type CommandSetMetaData = { type CommandSetRTInfoData (line 622) | type CommandSetRTInfoData = { type CommandStartBuilderData (line 629) | type CommandStartBuilderData = { type CommandStartJobData (line 634) | type CommandStartJobData = { type CommandStartJobRtnData (line 643) | type CommandStartJobRtnData = { type CommandStreamAckData (line 651) | type CommandStreamAckData = { type CommandStreamData (line 662) | type CommandStreamData = { type CommandTermGetScrollbackLinesData (line 671) | type CommandTermGetScrollbackLinesData = { type CommandTermGetScrollbackLinesRtnData (line 678) | type CommandTermGetScrollbackLinesRtnData = { type CommandVarData (line 686) | type CommandVarData = { type CommandVarResponseData (line 695) | type CommandVarResponseData = { type CommandWaitForRouteData (line 702) | type CommandWaitForRouteData = { type CommandWaveAIAddContextData (line 708) | type CommandWaveAIAddContextData = { type CommandWaveAIGetToolDiffData (line 716) | type CommandWaveAIGetToolDiffData = { type CommandWaveAIGetToolDiffRtnData (line 722) | type CommandWaveAIGetToolDiffRtnData = { type CommandWaveAIToolApproveData (line 728) | type CommandWaveAIToolApproveData = { type CommandWaveFileReadStreamData (line 734) | type CommandWaveFileReadStreamData = { type CommandWebSelectorData (line 741) | type CommandWebSelectorData = { type CommandWriteAppFileData (line 750) | type CommandWriteAppFileData = { type CommandWriteAppGoFileData (line 757) | type CommandWriteAppGoFileData = { type CommandWriteAppGoFileRtnData (line 763) | type CommandWriteAppGoFileRtnData = { type CommandWriteAppSecretBindingsData (line 768) | type CommandWriteAppSecretBindingsData = { type CommandWriteTempFileData (line 774) | type CommandWriteTempFileData = { type ConfigError (line 780) | type ConfigError = { type ConnConfigRequest (line 786) | type ConnConfigRequest = { type ConnExtData (line 792) | type ConnExtData = { type ConnKeywords (line 798) | type ConnKeywords = { type ConnRequest (line 837) | type ConnRequest = { type ConnStatus (line 844) | type ConnStatus = { type CpuDataRequest (line 861) | type CpuDataRequest = { type DirEntryOut (line 867) | type DirEntryOut = { type DomRect (line 878) | type DomRect = { type FetchSuggestionsData (line 888) | type FetchSuggestionsData = { type FetchSuggestionsResponse (line 899) | type FetchSuggestionsResponse = { type FileCopyOpts (line 905) | type FileCopyOpts = { type FileData (line 913) | type FileData = { type FileDataAt (line 921) | type FileDataAt = { type FileDef (line 927) | type FileDef = { type FileInfo (line 933) | type FileInfo = { type FileListData (line 952) | type FileListData = { type FileListOpts (line 958) | type FileListOpts = { type FileOpts (line 965) | type FileOpts = { type FocusedBlockData (line 975) | type FocusedBlockData = { type FullConfigType (line 988) | type FullConfigType = { type Job (line 1002) | type Job = WaveObj & { type JobManagerStatusUpdate (line 1029) | type JobManagerStatusUpdate = { type LayoutActionData (line 1035) | type LayoutActionData = { type LayoutState (line 1049) | type LayoutState = WaveObj & { type LeafOrderEntry (line 1058) | type LeafOrderEntry = { type MetaType (line 1064) | type MetaType = { type MethodMeta (line 1188) | type MethodMeta = { type MimeTypeConfigType (line 1195) | type MimeTypeConfigType = { type ORef (line 1201) | type ORef = string; type ObjRTInfo (line 1204) | type ObjRTInfo = { type PathCommandData (line 1227) | type PathCommandData = { type Point (line 1235) | type Point = { type RateLimitInfo (line 1241) | type RateLimitInfo = { type RemoteInfo (line 1251) | type RemoteInfo = { type RestartBuilderAndWaitResult (line 1260) | type RestartBuilderAndWaitResult = { type RpcContext (line 1267) | type RpcContext = { type RpcMessage (line 1277) | type RpcMessage = { type RpcOpts (line 1292) | type RpcOpts = { type RuntimeOpts (line 1299) | type RuntimeOpts = { type SecretMeta (line 1305) | type SecretMeta = { type SettingsType (line 1311) | type SettingsType = { type StickerClickOptsType (line 1421) | type StickerClickOptsType = { type StickerDisplayOptsType (line 1427) | type StickerDisplayOptsType = { type StickerType (line 1434) | type StickerType = { type StreamMeta (line 1442) | type StreamMeta = { type SubscriptionRequest (line 1450) | type SubscriptionRequest = { type SuggestionType (line 1457) | type SuggestionType = { type TEvent (line 1475) | type TEvent = { type TEventProps (line 1484) | type TEventProps = { type TEventUserProps (line 1584) | type TEventUserProps = { type Tab (line 1610) | type Tab = WaveObj & { type TermSize (line 1617) | type TermSize = { type TermThemeType (line 1623) | type TermThemeType = { type TimeSeriesData (line 1651) | type TimeSeriesData = { type UIChat (line 1657) | type UIChat = { type UIContext (line 1666) | type UIContext = { type UIMessage (line 1672) | type UIMessage = { type UIMessagePart (line 1680) | type UIMessagePart = { type UserInputRequest (line 1700) | type UserInputRequest = { type UserInputResponse (line 1714) | type UserInputResponse = { type VDomAsyncInitiationRequest (line 1724) | type VDomAsyncInitiationRequest = { type VDomBackendOpts (line 1731) | type VDomBackendOpts = { type VDomBackendUpdate (line 1738) | type VDomBackendUpdate = { type VDomBinding (line 1752) | type VDomBinding = { type VDomCreateContext (line 1758) | type VDomCreateContext = { type VDomElem (line 1767) | type VDomElem = { type VDomEvent (line 1776) | type VDomEvent = { type VDomFrontendUpdate (line 1789) | type VDomFrontendUpdate = { type VDomFunc (line 1804) | type VDomFunc = { type VDomMessage (line 1813) | type VDomMessage = { type VDomRef (line 1821) | type VDomRef = { type VDomRefOperation (line 1830) | type VDomRefOperation = { type VDomRefPosition (line 1838) | type VDomRefPosition = { type VDomRefUpdate (line 1848) | type VDomRefUpdate = { type VDomRenderContext (line 1855) | type VDomRenderContext = { type VDomRenderUpdate (line 1865) | type VDomRenderUpdate = { type VDomStateSync (line 1874) | type VDomStateSync = { type VDomTarget (line 1880) | type VDomTarget = { type VDomTargetToolbar (line 1887) | type VDomTargetToolbar = { type VDomTransferElem (line 1893) | type VDomTransferElem = { type VDomUrlRequestData (line 1902) | type VDomUrlRequestData = { type VDomUrlRequestResponse (line 1910) | type VDomUrlRequestResponse = { type WSCommandType (line 1916) | type WSCommandType = { type WSEventType (line 1921) | type WSEventType = { type WSFileEventData (line 1928) | type WSFileEventData = { type WSRpcCommand (line 1936) | type WSRpcCommand = { type WatcherUpdate (line 1942) | type WatcherUpdate = { type WaveAIOptsType (line 1947) | type WaveAIOptsType = { type WaveAIPacketType (line 1961) | type WaveAIPacketType = { type WaveAIPromptMessageType (line 1973) | type WaveAIPromptMessageType = { type WaveAIStreamRequest (line 1980) | type WaveAIStreamRequest = { type WaveAIUsageType (line 1987) | type WaveAIUsageType = { type WaveFile (line 1995) | type WaveFile = { type WaveFileInfo (line 2006) | type WaveFileInfo = { type WaveInfoData (line 2017) | type WaveInfoData = { type WaveKeyboardEvent (line 2026) | type WaveKeyboardEvent = { type WaveNotificationOptions (line 2041) | type WaveNotificationOptions = { type WaveObj (line 2048) | type WaveObj = { type WaveObjUpdate (line 2056) | type WaveObjUpdate = { type WavePointerData (line 2064) | type WavePointerData = { type WaveWindow (line 2084) | type WaveWindow = WaveObj & { type WebBookmark (line 2093) | type WebBookmark = { type WebCallType (line 2103) | type WebCallType = { type WebReturnType (line 2111) | type WebReturnType = { type WebSelectorOpts (line 2119) | type WebSelectorOpts = { type WidgetConfigType (line 2125) | type WidgetConfigType = { type WinSize (line 2138) | type WinSize = { type Workspace (line 2144) | type Workspace = WaveObj & { type WorkspaceInfoData (line 2153) | type WorkspaceInfoData = { type WorkspaceListEntry (line 2159) | type WorkspaceListEntry = { type WshServerCommandMeta (line 2165) | type WshServerCommandMeta = { FILE: frontend/types/media.d.ts type CSSModuleClasses (line 5) | type CSSModuleClasses = { readonly [key: string]: string }; type VitePreloadErrorEvent (line 262) | interface VitePreloadErrorEvent extends Event { type WindowEventMap (line 266) | interface WindowEventMap { type ImportMeta (line 271) | interface ImportMeta { FILE: frontend/types/waveevent.d.ts type WaveEventName (line 9) | type WaveEventName = type WaveEvent (line 31) | type WaveEvent = { FILE: frontend/util/color-validator.ts function isValidCssColor (line 8) | function isValidCssColor(color: string): boolean { function getCssColorType (line 15) | function getCssColorType(color: string): string { function validateCssColor (line 45) | function validateCssColor(color: string): string { FILE: frontend/util/fetchutil.ts function fetch (line 16) | function fetch(input: string | GlobalRequest | URL, init?: RequestInit):... FILE: frontend/util/focusutil.ts function findBlockId (line 6) | function findBlockId(element: HTMLElement): string | null { function getElemAsStr (line 17) | function getElemAsStr(elem: EventTarget) { function hasSelection (line 43) | function hasSelection() { function focusedBlockId (line 48) | function focusedBlockId(): string { FILE: frontend/util/fontutil.ts function addToFontFaceSet (line 9) | function addToFontFaceSet(fontFaceSet: FontFaceSet, fontFace: FontFace) { function loadJetBrainsMonoFont (line 14) | function loadJetBrainsMonoFont() { function loadHackNerdFont (line 39) | function loadHackNerdFont() { function loadInterFont (line 70) | function loadInterFont() { function loadFonts (line 83) | function loadFonts() { FILE: frontend/util/getenv.ts function getWindow (line 4) | function getWindow(): Window { function getProcess (line 8) | function getProcess(): NodeJS.Process { function getApi (line 12) | function getApi(): ElectronApi { function getEnv (line 21) | function getEnv(paramName: string): string { FILE: frontend/util/historyutil.ts function getParentDirectory (line 9) | function getParentDirectory(path: string): string { function goHistoryBack (line 26) | function goHistoryBack(curValKey: "url" | "file", curVal: string, meta: ... function goHistoryForward (line 50) | function goHistoryForward(curValKey: "url" | "file", curVal: string, met... function goHistory (line 65) | function goHistory(curValKey: "url" | "file", curVal: string, newVal: st... FILE: frontend/util/ijson.ts type PathType (line 7) | type PathType = (string | number)[]; function formatPath (line 11) | function formatPath(path: PathType): string { function isArray (line 32) | function isArray(obj: any): boolean { function isObject (line 36) | function isObject(obj: any): boolean { function getPath (line 40) | function getPath(obj: any, path: PathType): any { type SetPathOpts (line 65) | type SetPathOpts = { function combineFn_arrayAppend (line 71) | function combineFn_arrayAppend(oldVal: any, newVal: any, opts: SetPathOp... function checkPath (line 85) | function checkPath(path: PathType): boolean { function setPath (line 97) | function setPath(obj: any, path: PathType, value: any, opts: SetPathOpts) { function isEmpty (line 113) | function isEmpty(obj: any): boolean { function removeFromArr (line 129) | function removeFromArr(arr: any[], idx: number): any[] { function setPathInternal (line 145) | function setPathInternal(obj: any, path: PathType, value: any, opts: Set... function getCommandPath (line 215) | function getCommandPath(command: object): PathType { function applyCommand (line 222) | function applyCommand(data: any, command: any): any { FILE: frontend/util/keyutil.ts constant PLATFORM (line 10) | let PLATFORM: NodeJS.Platform = "darwin"; function setKeyUtilPlatform (line 13) | function setKeyUtilPlatform(platform: NodeJS.Platform) { function getKeyUtilPlatform (line 17) | function getKeyUtilPlatform(): NodeJS.Platform { function keydownWrapper (line 21) | function keydownWrapper( function waveEventToKeyDesc (line 34) | function waveEventToKeyDesc(waveEvent: WaveKeyboardEvent): string { function parseKey (line 63) | function parseKey(key: string): { key: string; type: string } { function parseKeyDescription (line 74) | function parseKeyDescription(keyDescription: string): KeyPressDecl { function notMod (line 130) | function notMod(keyPressMod: boolean, eventMod: boolean) { function isCharacterKeyEvent (line 134) | function isCharacterKeyEvent(event: WaveKeyboardEvent): boolean { function isInputEvent (line 177) | function isInputEvent(event: WaveKeyboardEvent): boolean { function checkKeyPressed (line 188) | function checkKeyPressed(event: WaveKeyboardEvent, keyDescription: strin... function adaptFromReactOrNativeKeyEvent (line 231) | function adaptFromReactOrNativeKeyEvent(event: React.KeyboardEvent | Key... function adaptFromElectronKeyEvent (line 252) | function adaptFromElectronKeyEvent(event: any): WaveKeyboardEvent { function keyboardEventToASCII (line 291) | function keyboardEventToASCII(event: WaveKeyboardEvent): string { FILE: frontend/util/platformutil.ts constant PLATFORM (line 7) | let PLATFORM: NodeJS.Platform = PlatformMacOS; function setPlatform (line 10) | function setPlatform(platform: NodeJS.Platform) { function setMacOSVersion (line 14) | function setMacOSVersion(version: string) { function isMacOSTahoeOrLater (line 18) | function isMacOSTahoeOrLater(): boolean { function isMacOS (line 26) | function isMacOS(): boolean { function isWindows (line 30) | function isWindows(): boolean { function makeNativeLabel (line 34) | function makeNativeLabel(isDirectory: boolean) { FILE: frontend/util/previewutil.ts function addOpenMenuItems (line 6) | function addOpenMenuItems(menu: ContextMenuItem[], conn: string, finfo: ... FILE: frontend/util/sharedconst.ts constant CHORD_TIMEOUT (line 4) | const CHORD_TIMEOUT = 2000; FILE: frontend/util/util.ts function isBlank (line 11) | function isBlank(str: string): boolean { function isLocalConnName (line 15) | function isLocalConnName(connName: string): boolean { function isWslConnName (line 22) | function isWslConnName(connName: string): boolean { function isSshConnName (line 26) | function isSshConnName(connName: string): boolean { function base64ToString (line 30) | function base64ToString(b64: string): string { function stringToBase64 (line 41) | function stringToBase64(input: string): string { function arrayToBase64 (line 46) | function arrayToBase64(input: Uint8Array): string { function base64ToArray (line 50) | function base64ToArray(b64: string): Uint8Array { function base64ToArrayBuffer (line 55) | function base64ToArrayBuffer(b64: string): ArrayBuffer { function boundNumber (line 62) | function boundNumber(num: number, min: number, max: number): number { function deepCompareReturnPrev (line 71) | function deepCompareReturnPrev(key: any, newValue: any): any { function jsonDeepEqual (line 84) | function jsonDeepEqual(v1: any, v2: any): boolean { function makeIconClass (line 122) | function makeIconClass(icon: string, fw: boolean, opts?: { spin?: boolea... function fireAndForget (line 177) | function fireAndForget(f: () => Promise) { type ResolvedValue (line 185) | type ResolvedValue = { function getPromiseState (line 192) | function getPromiseState(promise: Promise): [T, boolean, any] { function getPromiseValue (line 221) | function getPromiseValue(promise: Promise, def: T): T { function jotaiLoadableValue (line 229) | function jotaiLoadableValue(value: Loadable, def: T): T { function useAtomValueSafe (line 238) | function useAtomValueSafe(atom: Atom | Atom>): T { function makeExternLink (line 267) | function makeExternLink(url: string): string { function atomWithThrottle (line 271) | function atomWithThrottle(initialValue: T, delayMilliseconds = 500): ... function atomWithDebounce (line 294) | function atomWithDebounce(initialValue: T, delayMilliseconds = 500): ... function getPrefixedSettings (line 317) | function getPrefixedSettings(settings: SettingsType, prefix: string): Se... function countGraphemes (line 330) | function countGraphemes(str: string): number { function makeConnRoute (line 339) | function makeConnRoute(conn: string): string { function sleep (line 346) | function sleep(ms: number): Promise { function mergeMeta (line 350) | function mergeMeta(meta: MetaType, metaUpdate: MetaType, prefix?: string... function escapeBytes (line 421) | function escapeBytes(str: string): string { function cn (line 442) | function cn(...inputs: ClassValue[]) { type ParsedDataUrl (line 446) | type ParsedDataUrl = { function parseDataUrl (line 451) | function parseDataUrl(dataUrl: string): ParsedDataUrl { function formatRelativeTime (line 474) | function formatRelativeTime(timestamp: number): string { function sortByDisplayOrder (line 503) | function sortByDisplayOrder & { FILE: tsunami/frontend/src/input.tsx type Props (line 6) | type Props = { function OptimisticInput (line 43) | function OptimisticInput({ value, onChange, onInput, ttlMs = 100, ref: f... FILE: tsunami/frontend/src/model/model-utils.ts function getTextChildren (line 9) | function getTextChildren(elem: VDomElem): string { function restoreVDomElems (line 22) | function restoreVDomElems(backendUpdate: VDomBackendUpdate) { function isTsunamiTermElem (line 84) | function isTsunamiTermElem(elem: HTMLElement): elem is TsunamiTermElem { function applyTermOp (line 88) | function applyTermOp(elem: TsunamiTermElem, termOp: VDomRefOperation) { function applyCanvasOp (line 100) | function applyCanvasOp(canvas: HTMLCanvasElement, canvasOp: VDomRefOpera... FILE: tsunami/frontend/src/model/tsunami-model.tsx type RefContainer (line 16) | type RefContainer = { function makeVDomIdMap (line 23) | function makeVDomIdMap(vdom: VDomElem, idMap: Map) { function isBlank (line 38) | function isBlank(v: string): boolean { function fileToVDomFileData (line 42) | async function fileToVDomFileData(file: File, fieldname: string): Promis... function annotateEvent (line 64) | function annotateEvent(event: VDomEvent, propName: string, reactEvent: R... function asyncAnnotateEvent (line 105) | async function asyncAnnotateEvent(event: VDomEvent, propName: string, re... class TsunamiModel (line 168) | class TsunamiModel { method constructor (line 200) | constructor() { method dispose (line 209) | dispose() { method setupServerEventSource (line 216) | setupServerEventSource() { method reset (line 267) | reset() { method keyDownHandler (line 297) | keyDownHandler(e: VDomKeyboardEvent): boolean { method hasRefUpdates (line 314) | hasRefUpdates() { method getRefUpdates (line 323) | getRefUpdates(): VDomRefUpdate[] { method mergeReasons (line 354) | mergeReasons(newReason: string): string { method queueUpdate (line 368) | queueUpdate(quick: boolean = false, reason: string | null) { method _sendRenderRequest (line 415) | async _sendRenderRequest(force: boolean) { method getOrCreateRefContainer (line 469) | getOrCreateRefContainer(vdomRef: VDomRef): RefContainer { method getVDomNodeVersionAtom (line 490) | getVDomNodeVersionAtom(vdom: VDomElem) { method incVDomNodeVersion (line 499) | incVDomNodeVersion(vdom: VDomElem) { method addErrorMessage (line 507) | addErrorMessage(message: string) { method logTsunamiMeta (line 514) | logTsunamiMeta(opts: any) { method handleRenderUpdates (line 541) | handleRenderUpdates(update: VDomBackendUpdate, idMap: Map { function base64ToArrayBuffer (line 27) | function base64ToArrayBuffer(b64: string): ArrayBuffer { function arrayBufferToBase64 (line 34) | function arrayBufferToBase64(buffer: ArrayBuffer): string { FILE: tsunami/frontend/src/util/clientid.ts constant CLIENT_ID_KEY (line 4) | const CLIENT_ID_KEY = "tsunami:clientid"; function getOrCreateClientId (line 11) | function getOrCreateClientId(): string { function clearClientId (line 32) | function clearClientId(): void { FILE: tsunami/frontend/src/util/keyutil.ts constant PLATFORM (line 8) | let PLATFORM: NodeJS.Platform = "darwin"; function setKeyUtilPlatform (line 11) | function setKeyUtilPlatform(platform: NodeJS.Platform) { function getKeyUtilPlatform (line 15) | function getKeyUtilPlatform(): NodeJS.Platform { function keydownWrapper (line 19) | function keydownWrapper( function waveEventToKeyDesc (line 32) | function waveEventToKeyDesc(waveEvent: VDomKeyboardEvent): string { function parseKey (line 61) | function parseKey(key: string): { key: string; type: string } { function parseKeyDescription (line 72) | function parseKeyDescription(keyDescription: string): KeyPressDecl { function notMod (line 128) | function notMod(keyPressMod: boolean, eventMod: boolean) { function countGraphemes (line 132) | function countGraphemes(str: string): number { function isCharacterKeyEvent (line 141) | function isCharacterKeyEvent(event: VDomKeyboardEvent): boolean { function isInputEvent (line 184) | function isInputEvent(event: VDomKeyboardEvent): boolean { function checkKeyPressed (line 195) | function checkKeyPressed(event: VDomKeyboardEvent, keyDescription: strin... function adaptFromReactOrNativeKeyEvent (line 238) | function adaptFromReactOrNativeKeyEvent(event: React.KeyboardEvent | Key... function adaptFromElectronKeyEvent (line 258) | function adaptFromElectronKeyEvent(event: any): VDomKeyboardEvent { function keyboardEventToASCII (line 297) | function keyboardEventToASCII(event: VDomKeyboardEvent): string { FILE: tsunami/frontend/src/util/platformutil.ts constant PLATFORM (line 6) | let PLATFORM: NodeJS.Platform = PlatformMacOS; function setPlatform (line 8) | function setPlatform(platform: NodeJS.Platform) { function isMacOS (line 12) | function isMacOS(): boolean { function isWindows (line 16) | function isWindows(): boolean { FILE: tsunami/frontend/src/vdom.tsx type VDomReactTagType (line 30) | type VDomReactTagType = (props: { elem: VDomElem; model: TsunamiModel })... function convertVDomFunc (line 173) | function convertVDomFunc(model: TsunamiModel, fnDecl: VDomFunc, compId: ... function convertElemToTag (line 198) | function convertElemToTag(elem: VDomElem, model: TsunamiModel): React.Re... function isObject (line 208) | function isObject(v: any): boolean { function isArray (line 212) | function isArray(v: any): boolean { type GenericPropsType (line 216) | type GenericPropsType = { [key: string]: any }; function convertProps (line 218) | function convertProps(elem: VDomElem, model: TsunamiModel): GenericProps... function convertChildren (line 253) | function convertChildren(elem: VDomElem, model: TsunamiModel): React.Rea... function useVDom (line 270) | function useVDom(model: TsunamiModel, elem: VDomElem): GenericPropsType { function WaveMarkdown (line 276) | function WaveMarkdown({ elem, model }: { elem: VDomElem; model: TsunamiM... function sendTermInputEvent (line 283) | async function sendTermInputEvent(event: VDomEvent) { function WaveTerm (line 296) | function WaveTerm({ elem, model }: { elem: VDomElem; model: TsunamiModel... function StyleTag (line 323) | function StyleTag({ elem, model }: { elem: VDomElem; model: TsunamiModel... function VDomTag (line 331) | function VDomTag({ elem, model }: { elem: VDomElem; model: TsunamiModel ... function VDomRoot (line 374) | function VDomRoot({ model }: { model: TsunamiModel }) { type VDomViewProps (line 388) | type VDomViewProps = { function VDomInnerView (line 392) | function VDomInnerView({ model }: VDomViewProps) { function VDomView (line 405) | function VDomView({ model }: VDomViewProps) { FILE: tsunami/rpctypes/protocoltypes.go type RenderedElem (line 13) | type RenderedElem struct type VDomUrlRequestResponse (line 21) | type VDomUrlRequestResponse struct type VDomFrontendUpdate (line 27) | type VDomFrontendUpdate struct type VDomBackendUpdate (line 42) | type VDomBackendUpdate struct method CreateTransferElems (line 70) | func (beUpdate *VDomBackendUpdate) CreateTransferElems() { type VDomTransferElem (line 57) | type VDomTransferElem struct type VDomText (line 65) | type VDomText struct function ConvertElemsToTransferElems (line 86) | func ConvertElemsToTransferElems(elems []RenderedElem) ([]VDomTransferEl... function DedupTransferElems (line 139) | func DedupTransferElems(elems []VDomTransferElem) []VDomTransferElem { type VDomRenderContext (line 157) | type VDomRenderContext struct type VDomRefUpdate (line 165) | type VDomRefUpdate struct type VDomBackendOpts (line 172) | type VDomBackendOpts struct type VDomRenderUpdate (line 179) | type VDomRenderUpdate struct type VDomMessage (line 187) | type VDomMessage struct type ModalConfig (line 195) | type ModalConfig struct type ModalResult (line 206) | type ModalResult struct type TermWritePacket (line 211) | type TermWritePacket struct FILE: tsunami/ui/table.go type CellContext (line 14) | type CellContext struct type RowContext (line 22) | type RowContext struct type HeaderContext (line 27) | type HeaderContext struct type TableColumn (line 34) | type TableColumn struct type TableProps (line 47) | type TableProps struct type PaginationConfig (line 61) | type PaginationConfig struct function getFieldValueWithReflection (line 68) | func getFieldValueWithReflection(item any, key string) any { function getFieldValue (line 95) | func getFieldValue[T any](row T, rowIdx int, col TableColumn[T]) any { function findColumnByKey (line 106) | func findColumnByKey[T any](columns []TableColumn[T], key string) *Table... function sortData (line 116) | func sortData[T any](data []T, col TableColumn[T], direction string) []T { function paginateData (line 153) | func paginateData[T any](data []T, config *PaginationConfig) []T { function defaultCellRenderer (line 172) | func defaultCellRenderer[T any](ctx CellContext[T]) any { function defaultHeaderRenderer (line 183) | func defaultHeaderRenderer(ctx HeaderContext) any { function makeRowClassName (line 197) | func makeRowClassName[T any](rowClassNameFunc func(ctx RowContext[T]) st... function MakeTableComponent (line 204) | func MakeTableComponent[T any](componentName string) vdom.Component[Tabl... function genTableRenderFunc (line 208) | func genTableRenderFunc[T any](props TableProps[T]) any { function renderPagination (line 462) | func renderPagination(totalRows int, config *PaginationConfig, onPageCha... FILE: tsunami/util/compare.go function JsonValEqual (line 14) | func JsonValEqual(a, b any) bool { function IsNumericType (line 43) | func IsNumericType(val any) bool { function CompareAsFloat64 (line 55) | func CompareAsFloat64(a, b any) bool { function ToFloat64 (line 62) | func ToFloat64(val any) (float64, bool) { function ToInt64 (line 96) | func ToInt64(val any) (int64, bool) { function ToInt (line 130) | func ToInt(val any) (int, bool) { function NumToString (line 138) | func NumToString[T any](value T) (string, bool) { function FromFloat64 (line 171) | func FromFloat64[T any](val float64) (T, bool) { FILE: tsunami/util/marshal.go function MapToStruct (line 12) | func MapToStruct(in map[string]any, out any) error { function StructToMap (line 48) | func StructToMap(in any) (map[string]any, error) { function getJSONName (line 81) | func getJSONName(field reflect.StructField) string { function setValue (line 90) | func setValue(field reflect.Value, value any) error { FILE: tsunami/util/streamtolines.go type LineOutput (line 13) | type LineOutput struct type lineBuf (line 18) | type lineBuf struct constant maxLineLength (line 23) | maxLineLength = 128 * 1024 function ReadLineWithTimeout (line 25) | func ReadLineWithTimeout(ch chan LineOutput, timeout time.Duration) (str... function streamToLines_processBuf (line 37) | func streamToLines_processBuf(lineBuf *lineBuf, readBuf []byte, lineFn f... function StreamToLines (line 59) | func StreamToLines(input io.Reader, lineFn func([]byte)) error { function StreamToLinesChan (line 73) | func StreamToLinesChan(input io.Reader) chan LineOutput { type LineWriter (line 89) | type LineWriter struct method Write (line 102) | func (lw *LineWriter) Write(p []byte) (n int, err error) { method Flush (line 109) | func (lw *LineWriter) Flush() { function NewLineWriter (line 95) | func NewLineWriter(lineFn func([]byte)) *LineWriter { FILE: tsunami/util/util.go function PanicHandler (line 25) | func PanicHandler(debugStr string, recoverVal any) error { function GetHomeDir (line 37) | func GetHomeDir() string { function ExpandHomeDir (line 45) | func ExpandHomeDir(pathStr string) (string, error) { function ExpandHomeDirSafe (line 61) | func ExpandHomeDirSafe(pathStr string) string { function ChunkSlice (line 66) | func ChunkSlice[T any](slice []T, chunkSize int) [][]T { function OpenBrowser (line 81) | func OpenBrowser(url string, delay time.Duration) { function GetTypedAtomValue (line 104) | func GetTypedAtomValue[T any](rawVal any, atomName string) T { function implementsJSON (line 130) | func implementsJSON(t reflect.Type) bool { function ValidateAtomType (line 141) | func ValidateAtomType(t reflect.Type, atomName string) error { function makeAtomError (line 146) | func makeAtomError(atomName string, parentName string, message string) e... function validateAtomTypeRecursive (line 153) | func validateAtomTypeRecursive(t reflect.Type, seen map[reflect.Type]boo... type JsonFieldInfo (line 242) | type JsonFieldInfo struct function ParseJSONTag (line 249) | func ParseJSONTag(field reflect.StructField) (JsonFieldInfo, bool) { function TruncateString (line 289) | func TruncateString(s string, maxLen int) string { FILE: tsunami/vdom/vdom.go type Component (line 14) | type Component method WithKey (line 19) | func (e *VDomElem) WithKey(key any) *VDomElem { function textElem (line 30) | func textElem(text string) VDomElem { function partToClasses (line 34) | func partToClasses(class any) []string { function Classes (line 78) | func Classes(classes ...any) string { function H (line 91) | func H(tag string, props map[string]any, children ...any) *VDomElem { function If (line 104) | func If(cond bool, part any) any { function IfElse (line 114) | func IfElse(cond bool, part any, elsePart any) any { function Ternary (line 123) | func Ternary[T any](cond bool, trueRtn T, falseRtn T) T { function ForEach (line 133) | func ForEach[T any](items []T, fn func(T, int) any) []any { function ToElems (line 147) | func ToElems(part any) []VDomElem { FILE: tsunami/vdom/vdom_test.go function TestH (line 12) | func TestH(t *testing.T) { function TestJsonH (line 36) | func TestJsonH(t *testing.T) { FILE: tsunami/vdom/vdom_types.go constant TextTag (line 11) | TextTag = "#text" constant WaveTextTag (line 12) | WaveTextTag = "wave:text" constant WaveNullTag (line 13) | WaveNullTag = "wave:null" constant FragmentTag (line 14) | FragmentTag = "#fragment" constant KeyPropKey (line 16) | KeyPropKey = "key" constant ObjectType_Ref (line 18) | ObjectType_Ref = "ref" constant ObjectType_Func (line 19) | ObjectType_Func = "func" type VDomElem (line 22) | type VDomElem struct type VDomFunc (line 30) | type VDomFunc struct type VDomRef (line 40) | type VDomRef struct method MarshalJSON (line 49) | func (r *VDomRef) MarshalJSON() ([]byte, error) { method UnmarshalJSON (line 64) | func (r *VDomRef) UnmarshalJSON(data []byte) error { type VDomSimpleRef (line 82) | type VDomSimpleRef struct type DomRect (line 86) | type DomRect struct type VDomRefPosition (line 95) | type VDomRefPosition struct type VDomTermInputData (line 104) | type VDomTermInputData struct type VDomTermSize (line 109) | type VDomTermSize struct type VDomEvent (line 114) | type VDomEvent struct type VDomKeyboardEvent (line 129) | type VDomKeyboardEvent struct type VDomPointerData (line 145) | type VDomPointerData struct type VDomFormData (line 167) | type VDomFormData struct method GetField (line 177) | func (f *VDomFormData) GetField(fieldName string) string { type VDomFileData (line 188) | type VDomFileData struct type VDomRefOperation (line 197) | type VDomRefOperation struct FILE: version.cjs constant VERSION (line 25) | const VERSION = `${packageJson.version}`;