Documentation
¶
Overview ¶
types and methods for wsh rpc calls
builder-related types and methods for wsh rpc calls
types and methods for wsh rpc calls
file-related types and methods for wsh rpc calls
Index ¶
- Constants
- func GenerateWshCommandDeclMap() map[string]*WshRpcMethodDecl
- func MakeMethodMapForImpl(impl any, declMap map[string]*WshRpcMethodDecl) map[string]reflect.Method
- type AIAttachedFile
- type ActivityDisplayType
- type ActivityUpdate
- type AiMessageData
- type AppInfo
- type AppManifest
- type AppMeta
- type BlockInfoData
- type BlockJobStatusData
- type BlocksListEntry
- type BlocksListRequest
- type BuilderStatusData
- type CommandAppendIJsonData
- type CommandAuthenticateJobManagerData
- type CommandAuthenticateRtnData
- type CommandAuthenticateToJobData
- type CommandAuthenticateTokenData
- type CommandBlockInputData
- type CommandCaptureBlockScreenshotData
- type CommandCheckGoVersionRtnData
- type CommandConnServerInitData
- type CommandControllerAppendOutputData
- type CommandControllerResyncData
- type CommandCreateBlockData
- type CommandCreateSubBlockData
- type CommandDeleteAppFileData
- type CommandDeleteBlockData
- type CommandDeleteFileData
- type CommandDisposeData
- type CommandElectronDecryptData
- type CommandElectronDecryptRtnData
- type CommandElectronEncryptData
- type CommandElectronEncryptRtnData
- type CommandEventReadHistoryData
- type CommandFileCopyData
- type CommandFileRestoreBackupData
- type CommandGetMetaData
- type CommandGetRTInfoData
- type CommandGetTempDirData
- type CommandGetWaveAIChatData
- type CommandJobCmdExitedData
- type CommandJobConnectRtnData
- type CommandJobControllerAttachJobData
- type CommandJobControllerStartJobData
- type CommandJobInputData
- type CommandJobPrepareConnectData
- type CommandJobStartStreamData
- type CommandListAllAppFilesData
- type CommandListAllAppFilesRtnData
- type CommandMakeDraftFromLocalData
- type CommandMakeDraftFromLocalRtnData
- type CommandMessageData
- type CommandPublishAppData
- type CommandPublishAppRtnData
- type CommandReadAppFileData
- type CommandReadAppFileRtnData
- type CommandRemoteDisconnectFromJobManagerData
- type CommandRemoteListEntriesData
- type CommandRemoteListEntriesRtnData
- type CommandRemoteReconnectToJobManagerData
- type CommandRemoteReconnectToJobManagerRtnData
- type CommandRemoteStartJobData
- type CommandRemoteStreamFileData
- type CommandRemoteTerminateJobManagerData
- type CommandRenameAppFileData
- type CommandResolveIdsData
- type CommandResolveIdsRtnData
- type CommandRestartBuilderAndWaitData
- type CommandSetMetaData
- type CommandSetRTInfoData
- type CommandStartBuilderData
- type CommandStartJobData
- type CommandStartJobRtnData
- type CommandStreamAckData
- type CommandStreamData
- type CommandTermGetScrollbackLinesData
- type CommandTermGetScrollbackLinesRtnData
- type CommandTermUpdateAttachedJobData
- type CommandVarData
- type CommandVarResponseData
- type CommandWaitForRouteData
- type CommandWaveAIAddContextData
- type CommandWaveAIGetToolDiffData
- type CommandWaveAIGetToolDiffRtnData
- type CommandWaveAIToolApproveData
- type CommandWaveFileReadStreamData
- type CommandWebSelectorData
- type CommandWriteAppFileData
- type CommandWriteAppGoFileData
- type CommandWriteAppGoFileRtnData
- type CommandWriteAppSecretBindingsData
- type CommandWriteTempFileData
- type ConnConfigRequest
- type ConnExtData
- type ConnRequest
- type ConnStatus
- type CpuDataRequest
- type CpuDataType
- type DirEntryOut
- type FetchSuggestionsData
- type FetchSuggestionsResponse
- type FileCopyOpts
- type FileCreateData
- type FileData
- type FileDataAt
- type FileInfo
- type FileListData
- type FileListOpts
- type FileListStreamResponse
- type FileMeta
- type FileOpts
- type FocusedBlockData
- type JobManagerStatusUpdate
- type MetaSettingsType
- type PathCommandData
- type RemoteInfo
- type RespOrErrorUnion
- type RestartBuilderAndWaitResult
- type RpcContext
- type RpcOpts
- type SecretMeta
- type StreamMeta
- type SuggestionType
- type TabIndicator
- type TabIndicatorEventData
- type TimeSeriesData
- type VDomUrlRequestData
- type VDomUrlRequestResponse
- type WaveAIOptsType
- type WaveAIPacketType
- type WaveAIPromptMessageType
- type WaveAIStreamRequest
- type WaveAIUsageType
- type WaveFileInfo
- type WaveInfoData
- type WaveNotificationOptions
- type WebSelectorOpts
- type WorkspaceInfoData
- type WshRpcBuilderInterface
- type WshRpcFileInterface
- type WshRpcInterface
- type WshRpcMethodDecl
- type WshRpcRemoteFileInterface
- type WshServerCommandMeta
Constants ¶
View Source
const ( // MaxFileSize is the maximum file size that can be read MaxFileSize = 50 * 1024 * 1024 // 50M // MaxDirSize is the maximum number of entries that can be read in a directory MaxDirSize = 1024 // FileChunkSize is the size of the file chunk to read FileChunkSize = 64 * 1024 // DirChunkSize is the size of the directory chunk to read DirChunkSize = 128 )
View Source
const ( RpcType_Call = "call" // single response (regular rpc) RpcType_ResponseStream = "responsestream" // stream of responses (streaming rpc) RpcType_StreamingRequest = "streamingrequest" // streaming request RpcType_Complex = "complex" // streaming request/response )
View Source
const ( CreateBlockAction_Replace = "replace" CreateBlockAction_SplitUp = "splitup" CreateBlockAction_SplitDown = "splitdown" CreateBlockAction_SplitLeft = "splitleft" CreateBlockAction_SplitRight = "splitright" )
View Source
const ( Command_Authenticate = "authenticate" // $control Command_AuthenticateToken = "authenticatetoken" // $control Command_AuthenticateTokenVerify = "authenticatetokenverify" // $control:root (internal, for token validation only) Command_AuthenticateJobManagerVerify = "authenticatejobmanagerverify" // $control:root (internal, for job auth token validation only) Command_RouteAnnounce = "routeannounce" // $control (for routing) Command_RouteUnannounce = "routeunannounce" // $control (for routing) Command_Ping = "ping" // $control Command_ControllerInput = "controllerinput" Command_EventRecv = "eventrecv" Command_Message = "message" Command_StreamData = "streamdata" Command_StreamDataAck = "streamdataack" )
we only need consts for special commands handled in the router or in the RPC code / WPS code directly. other commands go through the clients
View Source
const LocalConnName = "local"
View Source
const (
TimeSeries_Cpu = "cpu"
)
Variables ¶
This section is empty.
Functions ¶
func GenerateWshCommandDeclMap ¶
func GenerateWshCommandDeclMap() map[string]*WshRpcMethodDecl
func MakeMethodMapForImpl ¶
Types ¶
type AIAttachedFile ¶ added in v0.12.0
type ActivityDisplayType ¶ added in v0.10.0
type ActivityUpdate ¶ added in v0.10.0
type ActivityUpdate struct {
FgMinutes int `json:"fgminutes,omitempty"`
ActiveMinutes int `json:"activeminutes,omitempty"`
OpenMinutes int `json:"openminutes,omitempty"`
WaveAIFgMinutes int `json:"waveaifgminutes,omitempty"`
WaveAIActiveMinutes int `json:"waveaiactiveminutes,omitempty"`
NumTabs int `json:"numtabs,omitempty"`
NewTab int `json:"newtab,omitempty"`
NumBlocks int `json:"numblocks,omitempty"`
NumWindows int `json:"numwindows,omitempty"`
NumWS int `json:"numws,omitempty"`
NumWSNamed int `json:"numwsnamed,omitempty"`
NumSSHConn int `json:"numsshconn,omitempty"`
NumWSLConn int `json:"numwslconn,omitempty"`
NumMagnify int `json:"nummagnify,omitempty"`
TermCommandsRun int `json:"termcommandsrun,omitempty"`
NumPanics int `json:"numpanics,omitempty"`
NumAIReqs int `json:"numaireqs,omitempty"`
Startup int `json:"startup,omitempty"`
Shutdown int `json:"shutdown,omitempty"`
SetTabTheme int `json:"settabtheme,omitempty"`
BuildTime string `json:"buildtime,omitempty"`
Displays []ActivityDisplayType `json:"displays,omitempty"`
Renderers map[string]int `json:"renderers,omitempty"`
Blocks map[string]int `json:"blocks,omitempty"`
WshCmds map[string]int `json:"wshcmds,omitempty"`
Conn map[string]int `json:"conn,omitempty"`
}
type AiMessageData ¶ added in v0.9.2
type AiMessageData struct {
Message string `json:"message,omitempty"`
}
type AppInfo ¶ added in v0.12.3
type AppInfo struct {
AppId string `json:"appid"`
ModTime int64 `json:"modtime"`
Manifest *AppManifest `json:"manifest,omitempty"`
}
type AppManifest ¶ added in v0.12.3
type BlockInfoData ¶
type BlockJobStatusData ¶ added in v0.14.0
type BlockJobStatusData struct {
BlockId string `json:"blockid"`
JobId string `json:"jobid"`
Status string `json:"status,omitempty" tstype:"null | \"init\" | \"connected\" | \"disconnected\" | \"done\""`
VersionTs int64 `json:"versionts"`
DoneReason string `json:"donereason,omitempty"`
StartupError string `json:"startuperror,omitempty"`
CmdExitTs int64 `json:"cmdexitts,omitempty"`
CmdExitCode *int `json:"cmdexitcode,omitempty"`
CmdExitSignal string `json:"cmdexitsignal,omitempty"`
}
type BlocksListEntry ¶ added in v0.12.0
type BlocksListRequest ¶ added in v0.12.0
type BuilderStatusData ¶ added in v0.12.2
type BuilderStatusData struct {
Status string `json:"status"`
Port int `json:"port,omitempty"`
ExitCode int `json:"exitcode,omitempty"`
ErrorMsg string `json:"errormsg,omitempty"`
Version int `json:"version"`
Manifest *AppManifest `json:"manifest,omitempty"`
SecretBindings map[string]string `json:"secretbindings,omitempty"`
SecretBindingsComplete bool `json:"secretbindingscomplete"`
}
type CommandAppendIJsonData ¶
type CommandAuthenticateJobManagerData ¶ added in v0.14.0
type CommandAuthenticateRtnData ¶
type CommandAuthenticateRtnData struct {
RouteId string `json:"routeid"`
// these fields are only set when doing a token swap
Env map[string]string `json:"env,omitempty"`
InitScriptText string `json:"initscripttext,omitempty"`
RpcContext *RpcContext `json:"rpccontext,omitempty"`
}
type CommandAuthenticateToJobData ¶ added in v0.14.0
type CommandAuthenticateToJobData struct {
JobAccessToken string `json:"jobaccesstoken"`
}
type CommandAuthenticateTokenData ¶ added in v0.11.0
type CommandAuthenticateTokenData struct {
Token string `json:"token"`
}
type CommandBlockInputData ¶
type CommandCaptureBlockScreenshotData ¶ added in v0.12.0
type CommandCaptureBlockScreenshotData struct {
BlockId string `json:"blockid"`
}
type CommandCheckGoVersionRtnData ¶ added in v0.12.3
type CommandConnServerInitData ¶ added in v0.14.0
type CommandConnServerInitData struct {
ClientId string `json:"clientid"`
}
type CommandControllerAppendOutputData ¶ added in v0.11.0
type CommandControllerResyncData ¶
type CommandControllerResyncData struct {
ForceRestart bool `json:"forcerestart,omitempty"`
TabId string `json:"tabid"`
BlockId string `json:"blockid"`
RtOpts *waveobj.RuntimeOpts `json:"rtopts,omitempty"`
}
type CommandCreateBlockData ¶
type CommandCreateBlockData struct {
TabId string `json:"tabid"`
BlockDef *waveobj.BlockDef `json:"blockdef"`
RtOpts *waveobj.RuntimeOpts `json:"rtopts,omitempty"`
Magnified bool `json:"magnified,omitempty"`
Ephemeral bool `json:"ephemeral,omitempty"`
Focused bool `json:"focused,omitempty"`
TargetBlockId string `json:"targetblockid,omitempty"`
TargetAction string `json:"targetaction,omitempty"` // "replace", "splitright", "splitdown", "splitleft", "splitup"
}
type CommandCreateSubBlockData ¶ added in v0.9.0
type CommandDeleteAppFileData ¶ added in v0.12.2
type CommandDeleteBlockData ¶
type CommandDeleteBlockData struct {
BlockId string `json:"blockid"`
}
type CommandDeleteFileData ¶ added in v0.11.1
type CommandDisposeData ¶ added in v0.9.0
type CommandDisposeData struct {
RouteId string `json:"routeid"`
}
type CommandElectronDecryptData ¶ added in v0.12.3
type CommandElectronDecryptData struct {
CipherText string `json:"ciphertext"`
}
type CommandElectronDecryptRtnData ¶ added in v0.12.3
type CommandElectronEncryptData ¶ added in v0.12.3
type CommandElectronEncryptData struct {
PlainText string `json:"plaintext"`
}
type CommandElectronEncryptRtnData ¶ added in v0.12.3
type CommandFileCopyData ¶ added in v0.11.0
type CommandFileCopyData struct {
SrcUri string `json:"srcuri"`
DestUri string `json:"desturi"`
Opts *FileCopyOpts `json:"opts,omitempty"`
}
type CommandFileRestoreBackupData ¶ added in v0.12.2
type CommandGetMetaData ¶
type CommandGetRTInfoData ¶ added in v0.12.0
type CommandGetTempDirData ¶ added in v0.12.3
type CommandGetTempDirData struct {
FileName string `json:"filename,omitempty"`
}
type CommandGetWaveAIChatData ¶ added in v0.12.0
type CommandGetWaveAIChatData struct {
ChatId string `json:"chatid"`
}
type CommandJobCmdExitedData ¶ added in v0.14.0
type CommandJobConnectRtnData ¶ added in v0.14.0
type CommandJobConnectRtnData struct {
Seq int64 `json:"seq"`
StreamDone bool `json:"streamdone,omitempty"`
StreamError string `json:"streamerror,omitempty"`
HasExited bool `json:"hasexited,omitempty"`
ExitCode *int `json:"exitcode,omitempty"`
ExitSignal string `json:"exitsignal,omitempty"`
ExitErr string `json:"exiterr,omitempty"`
}
type CommandJobControllerAttachJobData ¶ added in v0.14.0
type CommandJobControllerStartJobData ¶ added in v0.14.0
type CommandJobInputData ¶ added in v0.14.0
type CommandJobInputData struct {
JobId string `json:"jobid"`
InputSessionId string `json:"inputsessionid,omitempty"`
SeqNum int `json:"seqnum,omitempty"`
InputData64 string `json:"inputdata64,omitempty"`
SigName string `json:"signame,omitempty"`
TermSize *waveobj.TermSize `json:"termsize,omitempty"`
}
type CommandJobPrepareConnectData ¶ added in v0.14.0
type CommandJobPrepareConnectData struct {
StreamMeta StreamMeta `json:"streammeta"`
Seq int64 `json:"seq"`
TermSize waveobj.TermSize `json:"termsize"`
}
type CommandJobStartStreamData ¶ added in v0.14.0
type CommandJobStartStreamData struct {
}
type CommandListAllAppFilesData ¶ added in v0.12.2
type CommandListAllAppFilesData struct {
AppId string `json:"appid"`
}
type CommandListAllAppFilesRtnData ¶ added in v0.12.2
type CommandListAllAppFilesRtnData struct {
Path string `json:"path"`
AbsolutePath string `json:"absolutepath"`
ParentDir string `json:"parentdir,omitempty"`
Entries []DirEntryOut `json:"entries"`
EntryCount int `json:"entrycount"`
TotalEntries int `json:"totalentries"`
Truncated bool `json:"truncated,omitempty"`
}
type CommandMakeDraftFromLocalData ¶ added in v0.12.3
type CommandMakeDraftFromLocalData struct {
LocalAppId string `json:"localappid"`
}
type CommandMakeDraftFromLocalRtnData ¶ added in v0.12.3
type CommandMakeDraftFromLocalRtnData struct {
DraftAppId string `json:"draftappid"`
}
type CommandMessageData ¶
type CommandMessageData struct {
Message string `json:"message"`
}
type CommandPublishAppData ¶ added in v0.12.3
type CommandPublishAppData struct {
AppId string `json:"appid"`
}
type CommandPublishAppRtnData ¶ added in v0.12.3
type CommandPublishAppRtnData struct {
PublishedAppId string `json:"publishedappid"`
}
type CommandReadAppFileData ¶ added in v0.12.2
type CommandReadAppFileRtnData ¶ added in v0.12.2
type CommandRemoteDisconnectFromJobManagerData ¶ added in v0.14.0
type CommandRemoteDisconnectFromJobManagerData struct {
JobId string `json:"jobid"`
}
type CommandRemoteListEntriesData ¶ added in v0.11.0
type CommandRemoteListEntriesData struct {
Path string `json:"path"`
Opts *FileListOpts `json:"opts,omitempty"`
}
type CommandRemoteListEntriesRtnData ¶ added in v0.11.0
type CommandRemoteListEntriesRtnData struct {
FileInfo []*FileInfo `json:"fileinfo,omitempty"`
}
type CommandRemoteReconnectToJobManagerData ¶ added in v0.14.0
type CommandRemoteReconnectToJobManagerRtnData ¶ added in v0.14.0
type CommandRemoteStartJobData ¶ added in v0.14.0
type CommandRemoteStartJobData struct {
Cmd string `json:"cmd"`
Args []string `json:"args"`
Env map[string]string `json:"env"`
TermSize waveobj.TermSize `json:"termsize"`
StreamMeta *StreamMeta `json:"streammeta,omitempty"`
JobAuthToken string `json:"jobauthtoken"`
JobId string `json:"jobid"`
MainServerJwtToken string `json:"mainserverjwttoken"`
ClientId string `json:"clientid"`
PublicKeyBase64 string `json:"publickeybase64"`
}
type CommandRemoteTerminateJobManagerData ¶ added in v0.14.0
type CommandRenameAppFileData ¶ added in v0.12.2
type CommandResolveIdsData ¶
type CommandRestartBuilderAndWaitData ¶ added in v0.12.3
type CommandRestartBuilderAndWaitData struct {
BuilderId string `json:"builderid"`
}
type CommandSetMetaData ¶
type CommandSetMetaData struct {
ORef waveobj.ORef `json:"oref"`
Meta waveobj.MetaMapType `json:"meta"`
}
type CommandSetRTInfoData ¶ added in v0.12.0
type CommandStartBuilderData ¶ added in v0.12.2
type CommandStartBuilderData struct {
BuilderId string `json:"builderid"`
}
type CommandStartJobData ¶ added in v0.14.0
type CommandStartJobRtnData ¶ added in v0.14.0
type CommandStreamAckData ¶ added in v0.14.0
type CommandStreamAckData struct {
Id string `json:"id"` // streamid
Seq int64 `json:"seq"` // next expected byte
RWnd int64 `json:"rwnd"` // receive window size
Fin bool `json:"fin,omitempty"` // observed end-of-stream (eof or error)
Delay int64 `json:"delay,omitempty"` // ack delay in microseconds (from when data was received to when we sent out ack -- monotonic clock)
Cancel bool `json:"cancel,omitempty"` // used to cancel the stream
Error string `json:"error,omitempty"` // reason for cancel (may only be set if cancel is true)
}
type CommandStreamData ¶ added in v0.14.0
type CommandTermGetScrollbackLinesData ¶ added in v0.12.0
type CommandTermGetScrollbackLinesRtnData ¶ added in v0.12.0
type CommandTermUpdateAttachedJobData ¶ added in v0.14.0
type CommandVarData ¶ added in v0.9.3
type CommandVarResponseData ¶ added in v0.9.3
type CommandWaitForRouteData ¶ added in v0.9.0
type CommandWaveAIAddContextData ¶ added in v0.12.0
type CommandWaveAIAddContextData struct {
Files []AIAttachedFile `json:"files,omitempty"`
Text string `json:"text,omitempty"`
Submit bool `json:"submit,omitempty"`
NewChat bool `json:"newchat,omitempty"`
}
type CommandWaveAIGetToolDiffData ¶ added in v0.12.2
type CommandWaveAIGetToolDiffRtnData ¶ added in v0.12.2
type CommandWaveAIToolApproveData ¶ added in v0.12.0
type CommandWaveFileReadStreamData ¶ added in v0.14.0
type CommandWaveFileReadStreamData struct {
ZoneId string `json:"zoneid"`
Name string `json:"name"`
StreamMeta StreamMeta `json:"streammeta"`
}
type CommandWebSelectorData ¶
type CommandWebSelectorData struct {
WorkspaceId string `json:"workspaceid"`
BlockId string `json:"blockid"`
TabId string `json:"tabid"`
Selector string `json:"selector"`
Opts *WebSelectorOpts `json:"opts,omitempty"`
}
type CommandWriteAppFileData ¶ added in v0.12.2
type CommandWriteAppGoFileData ¶ added in v0.12.3
type CommandWriteAppGoFileRtnData ¶ added in v0.12.3
type CommandWriteAppGoFileRtnData struct {
Data64 string `json:"data64"`
}
type CommandWriteAppSecretBindingsData ¶ added in v0.12.3
type CommandWriteTempFileData ¶ added in v0.12.3
type ConnConfigRequest ¶ added in v0.10.0
type ConnConfigRequest struct {
Host string `json:"host"`
MetaMapType waveobj.MetaMapType `json:"metamaptype"`
}
type ConnExtData ¶ added in v0.11.0
type ConnRequest ¶ added in v0.10.0
type ConnRequest struct {
Host string `json:"host"`
Keywords wconfig.ConnKeywords `json:"keywords,omitempty"`
LogBlockId string `json:"logblockid,omitempty"`
}
type ConnStatus ¶
type ConnStatus struct {
Status string `json:"status"`
ConnHealthStatus string `json:"connhealthstatus,omitempty"`
WshEnabled bool `json:"wshenabled"`
Connection string `json:"connection"`
Connected bool `json:"connected"`
HasConnected bool `json:"hasconnected"` // true if it has *ever* connected successfully
ActiveConnNum int `json:"activeconnnum"`
Error string `json:"error,omitempty"`
WshError string `json:"wsherror,omitempty"`
NoWshReason string `json:"nowshreason,omitempty"`
WshVersion string `json:"wshversion,omitempty"`
LastActivityBeforeStalledTime int64 `json:"lastactivitybeforestalledtime,omitempty"`
KeepAliveSentTime int64 `json:"keepalivesenttime,omitempty"`
}
type CpuDataRequest ¶
type CpuDataType ¶
type DirEntryOut ¶ added in v0.12.2
type FetchSuggestionsData ¶ added in v0.11.1
type FetchSuggestionsData struct {
SuggestionType string `json:"suggestiontype"`
Query string `json:"query"`
WidgetId string `json:"widgetid"`
ReqNum int `json:"reqnum"`
FileCwd string `json:"file:cwd,omitempty"`
FileDirOnly bool `json:"file:dironly,omitempty"`
FileConnection string `json:"file:connection,omitempty"`
}
type FetchSuggestionsResponse ¶ added in v0.11.1
type FetchSuggestionsResponse struct {
ReqNum int `json:"reqnum"`
Suggestions []SuggestionType `json:"suggestions"`
}
type FileCopyOpts ¶ added in v0.11.0
type FileCreateData ¶ added in v0.11.0
type FileData ¶ added in v0.11.0
type FileData struct {
Info *FileInfo `json:"info,omitempty"`
Data64 string `json:"data64,omitempty"`
Entries []*FileInfo `json:"entries,omitempty"`
At *FileDataAt `json:"at,omitempty"` // if set, this turns read/write ops to ReadAt/WriteAt ops (len is only used for ReadAt)
}
type FileDataAt ¶ added in v0.11.0
type FileInfo ¶
type FileInfo struct {
Path string `json:"path"` // cleaned path (may have "~")
Dir string `json:"dir,omitempty"` // returns the directory part of the path (if this is a a directory, it will be equal to Path). "~" will be expanded, and separators will be normalized to "/"
Name string `json:"name,omitempty"`
NotFound bool `json:"notfound,omitempty"`
Opts *FileOpts `json:"opts,omitempty"`
Size int64 `json:"size,omitempty"`
Meta *FileMeta `json:"meta,omitempty"`
Mode os.FileMode `json:"mode,omitempty"`
ModeStr string `json:"modestr,omitempty"`
ModTime int64 `json:"modtime,omitempty"`
IsDir bool `json:"isdir,omitempty"`
SupportsMkdir bool `json:"supportsmkdir,omitempty"`
MimeType string `json:"mimetype,omitempty"`
ReadOnly bool `json:"readonly,omitempty"` // this is not set for fileinfo's returned from directory listings
}
type FileListData ¶ added in v0.11.0
type FileListData struct {
Path string `json:"path"`
Opts *FileListOpts `json:"opts,omitempty"`
}
type FileListOpts ¶ added in v0.11.0
type FileListStreamResponse ¶ added in v0.11.0
type FileListStreamResponse <-chan RespOrErrorUnion[CommandRemoteListEntriesRtnData]
type FocusedBlockData ¶ added in v0.14.0
type FocusedBlockData struct {
BlockId string `json:"blockid"`
ViewType string `json:"viewtype"`
Controller string `json:"controller"`
ConnName string `json:"connname"`
BlockMeta waveobj.MetaMapType `json:"blockmeta"`
TermJobStatus *BlockJobStatusData `json:"termjobstatus,omitempty"`
ConnStatus *ConnStatus `json:"connstatus,omitempty"`
TermShellIntegrationStatus string `json:"termshellintegrationstatus,omitempty"`
TermLastCommand string `json:"termlastcommand,omitempty"`
}
type JobManagerStatusUpdate ¶ added in v0.14.0
type MetaSettingsType ¶ added in v0.10.0
type MetaSettingsType struct {
waveobj.MetaMapType
}
func (MetaSettingsType) MarshalJSON ¶ added in v0.10.0
func (m MetaSettingsType) MarshalJSON() ([]byte, error)
func (*MetaSettingsType) UnmarshalJSON ¶ added in v0.10.0
func (m *MetaSettingsType) UnmarshalJSON(data []byte) error
type PathCommandData ¶ added in v0.10.2
type RemoteInfo ¶ added in v0.11.0
type RespOrErrorUnion ¶
type RestartBuilderAndWaitResult ¶ added in v0.12.3
type RpcContext ¶
type RpcContext struct {
SockName string `json:"sockname,omitempty"` // the domain socket name
RouteId string `json:"routeid"` // the routeid from the jwt
ProcRoute bool `json:"procroute,omitempty"` // use a random procid for route
BlockId string `json:"blockid,omitempty"` // blockid for this rpc
Conn string `json:"conn,omitempty"` // the conn name
IsRouter bool `json:"isrouter,omitempty"` // if this is for a sub-router
}
func (RpcContext) GenerateRouteId ¶ added in v0.14.0
func (rc RpcContext) GenerateRouteId() string
type SecretMeta ¶ added in v0.12.3
type StreamMeta ¶ added in v0.14.0
type SuggestionType ¶ added in v0.11.1
type SuggestionType struct {
Type string `json:"type"`
SuggestionId string `json:"suggestionid"`
Display string `json:"display"`
SubText string `json:"subtext,omitempty"`
Icon string `json:"icon,omitempty"`
IconColor string `json:"iconcolor,omitempty"`
IconSrc string `json:"iconsrc,omitempty"`
MatchPos []int `json:"matchpos,omitempty"`
SubMatchPos []int `json:"submatchpos,omitempty"`
Score int `json:"score,omitempty"`
FileMimeType string `json:"file:mimetype,omitempty"`
FilePath string `json:"file:path,omitempty"`
FileName string `json:"file:name,omitempty"`
UrlUrl string `json:"url:url,omitempty"`
}
type TabIndicator ¶ added in v0.14.0
type TabIndicator struct {
Icon string `json:"icon"`
Color string `json:"color,omitempty"`
Priority float64 `json:"priority"`
ClearOnFocus bool `json:"clearonfocus,omitempty"`
PersistentIndicator *TabIndicator `json:"persistentindicator,omitempty"`
}
type TabIndicatorEventData ¶ added in v0.14.0
type TabIndicatorEventData struct {
TabId string `json:"tabid"`
Indicator *TabIndicator `json:"indicator"`
}
type TimeSeriesData ¶
type VDomUrlRequestData ¶ added in v0.9.2
type VDomUrlRequestResponse ¶ added in v0.9.2
type WaveAIOptsType ¶ added in v0.11.0
type WaveAIOptsType struct {
Model string `json:"model"`
APIType string `json:"apitype,omitempty"`
APIToken string `json:"apitoken"`
OrgID string `json:"orgid,omitempty"`
APIVersion string `json:"apiversion,omitempty"`
BaseURL string `json:"baseurl,omitempty"`
ProxyURL string `json:"proxyurl,omitempty"`
MaxTokens int `json:"maxtokens,omitempty"`
MaxChoices int `json:"maxchoices,omitempty"`
TimeoutMs int `json:"timeoutms,omitempty"`
}
type WaveAIPacketType ¶ added in v0.11.0
type WaveAIPacketType struct {
Type string `json:"type"`
Model string `json:"model,omitempty"`
Created int64 `json:"created,omitempty"`
FinishReason string `json:"finish_reason,omitempty"`
Usage *WaveAIUsageType `json:"usage,omitempty"`
Index int `json:"index,omitempty"`
Text string `json:"text,omitempty"`
Error string `json:"error,omitempty"`
}
type WaveAIPromptMessageType ¶ added in v0.11.0
type WaveAIStreamRequest ¶ added in v0.11.0
type WaveAIStreamRequest struct {
ClientId string `json:"clientid,omitempty"`
Opts *WaveAIOptsType `json:"opts"`
Prompt []WaveAIPromptMessageType `json:"prompt"`
}
type WaveAIUsageType ¶ added in v0.11.0
type WaveFileInfo ¶ added in v0.9.3
type WaveFileInfo struct {
ZoneId string `json:"zoneid"`
Name string `json:"name"`
Opts FileOpts `json:"opts"`
CreatedTs int64 `json:"createdts"`
Size int64 `json:"size"`
ModTs int64 `json:"modts"`
Meta FileMeta `json:"meta"`
}
see blockstore.go (WaveFile)
type WaveInfoData ¶ added in v0.9.1
type WaveNotificationOptions ¶ added in v0.8.9
type WebSelectorOpts ¶
type WorkspaceInfoData ¶ added in v0.10.0
type WshRpcBuilderInterface ¶ added in v0.14.0
type WshRpcBuilderInterface interface {
ListAllAppsCommand(ctx context.Context) ([]AppInfo, error)
ListAllEditableAppsCommand(ctx context.Context) ([]AppInfo, error)
ListAllAppFilesCommand(ctx context.Context, data CommandListAllAppFilesData) (*CommandListAllAppFilesRtnData, error)
ReadAppFileCommand(ctx context.Context, data CommandReadAppFileData) (*CommandReadAppFileRtnData, error)
WriteAppFileCommand(ctx context.Context, data CommandWriteAppFileData) error
WriteAppGoFileCommand(ctx context.Context, data CommandWriteAppGoFileData) (*CommandWriteAppGoFileRtnData, error)
DeleteAppFileCommand(ctx context.Context, data CommandDeleteAppFileData) error
RenameAppFileCommand(ctx context.Context, data CommandRenameAppFileData) error
WriteAppSecretBindingsCommand(ctx context.Context, data CommandWriteAppSecretBindingsData) error
DeleteBuilderCommand(ctx context.Context, builderId string) error
StartBuilderCommand(ctx context.Context, data CommandStartBuilderData) error
StopBuilderCommand(ctx context.Context, builderId string) error
RestartBuilderAndWaitCommand(ctx context.Context, data CommandRestartBuilderAndWaitData) (*RestartBuilderAndWaitResult, error)
GetBuilderStatusCommand(ctx context.Context, builderId string) (*BuilderStatusData, error)
GetBuilderOutputCommand(ctx context.Context, builderId string) ([]string, error)
CheckGoVersionCommand(ctx context.Context) (*CommandCheckGoVersionRtnData, error)
PublishAppCommand(ctx context.Context, data CommandPublishAppData) (*CommandPublishAppRtnData, error)
MakeDraftFromLocalCommand(ctx context.Context, data CommandMakeDraftFromLocalData) (*CommandMakeDraftFromLocalRtnData, error)
}
type WshRpcFileInterface ¶ added in v0.14.0
type WshRpcFileInterface interface {
FileMkdirCommand(ctx context.Context, data FileData) error
FileCreateCommand(ctx context.Context, data FileData) error
FileDeleteCommand(ctx context.Context, data CommandDeleteFileData) error
FileAppendCommand(ctx context.Context, data FileData) error
FileWriteCommand(ctx context.Context, data FileData) error
FileReadCommand(ctx context.Context, data FileData) (*FileData, error)
FileReadStreamCommand(ctx context.Context, data FileData) <-chan RespOrErrorUnion[FileData]
FileMoveCommand(ctx context.Context, data CommandFileCopyData) error
FileCopyCommand(ctx context.Context, data CommandFileCopyData) error
FileInfoCommand(ctx context.Context, data FileData) (*FileInfo, error)
FileListCommand(ctx context.Context, data FileListData) ([]*FileInfo, error)
FileJoinCommand(ctx context.Context, paths []string) (*FileInfo, error)
FileListStreamCommand(ctx context.Context, data FileListData) <-chan RespOrErrorUnion[CommandRemoteListEntriesRtnData]
}
type WshRpcInterface ¶
type WshRpcInterface interface {
AuthenticateCommand(ctx context.Context, data string) (CommandAuthenticateRtnData, error)
AuthenticateTokenCommand(ctx context.Context, data CommandAuthenticateTokenData) (CommandAuthenticateRtnData, error)
AuthenticateTokenVerifyCommand(ctx context.Context, data CommandAuthenticateTokenData) (CommandAuthenticateRtnData, error) // (special) validates token without binding, root router only
AuthenticateJobManagerCommand(ctx context.Context, data CommandAuthenticateJobManagerData) error
AuthenticateJobManagerVerifyCommand(ctx context.Context, data CommandAuthenticateJobManagerData) error // (special) validates job auth token without binding, root router only
DisposeCommand(ctx context.Context, data CommandDisposeData) error
RouteAnnounceCommand(ctx context.Context) error // (special) announces a new route to the main router
RouteUnannounceCommand(ctx context.Context) error // (special) unannounces a route to the main router
ControlGetRouteIdCommand(ctx context.Context) (string, error) // (special) gets the route for the link that we're on
SetPeerInfoCommand(ctx context.Context, peerInfo string) error
GetJwtPublicKeyCommand(ctx context.Context) (string, error) // (special) gets the public JWT signing key
MessageCommand(ctx context.Context, data CommandMessageData) error
GetMetaCommand(ctx context.Context, data CommandGetMetaData) (waveobj.MetaMapType, error)
SetMetaCommand(ctx context.Context, data CommandSetMetaData) error
ControllerInputCommand(ctx context.Context, data CommandBlockInputData) error
ControllerDestroyCommand(ctx context.Context, blockId string) error
ControllerResyncCommand(ctx context.Context, data CommandControllerResyncData) error
ControllerAppendOutputCommand(ctx context.Context, data CommandControllerAppendOutputData) error
ResolveIdsCommand(ctx context.Context, data CommandResolveIdsData) (CommandResolveIdsRtnData, error)
CreateBlockCommand(ctx context.Context, data CommandCreateBlockData) (waveobj.ORef, error)
CreateSubBlockCommand(ctx context.Context, data CommandCreateSubBlockData) (waveobj.ORef, error)
DeleteBlockCommand(ctx context.Context, data CommandDeleteBlockData) error
DeleteSubBlockCommand(ctx context.Context, data CommandDeleteBlockData) error
WaitForRouteCommand(ctx context.Context, data CommandWaitForRouteData) (bool, error)
EventPublishCommand(ctx context.Context, data wps.WaveEvent) error
EventSubCommand(ctx context.Context, data wps.SubscriptionRequest) error
EventUnsubCommand(ctx context.Context, data string) error
EventUnsubAllCommand(ctx context.Context) error
EventReadHistoryCommand(ctx context.Context, data CommandEventReadHistoryData) ([]*wps.WaveEvent, error)
FileRestoreBackupCommand(ctx context.Context, data CommandFileRestoreBackupData) error
GetTempDirCommand(ctx context.Context, data CommandGetTempDirData) (string, error)
WriteTempFileCommand(ctx context.Context, data CommandWriteTempFileData) (string, error)
StreamTestCommand(ctx context.Context) chan RespOrErrorUnion[int]
StreamWaveAiCommand(ctx context.Context, request WaveAIStreamRequest) chan RespOrErrorUnion[WaveAIPacketType]
StreamCpuDataCommand(ctx context.Context, request CpuDataRequest) chan RespOrErrorUnion[TimeSeriesData]
TestCommand(ctx context.Context, data string) error
SetConfigCommand(ctx context.Context, data MetaSettingsType) error
SetConnectionsConfigCommand(ctx context.Context, data ConnConfigRequest) error
GetFullConfigCommand(ctx context.Context) (wconfig.FullConfigType, error)
GetWaveAIModeConfigCommand(ctx context.Context) (wconfig.AIModeConfigUpdate, error)
BlockInfoCommand(ctx context.Context, blockId string) (*BlockInfoData, error)
BlocksListCommand(ctx context.Context, data BlocksListRequest) ([]BlocksListEntry, error)
WaveInfoCommand(ctx context.Context) (*WaveInfoData, error)
WshActivityCommand(ct context.Context, data map[string]int) error
ActivityCommand(ctx context.Context, data ActivityUpdate) error
RecordTEventCommand(ctx context.Context, data telemetrydata.TEvent) error
GetVarCommand(ctx context.Context, data CommandVarData) (*CommandVarResponseData, error)
GetAllVarsCommand(ctx context.Context, data CommandVarData) ([]CommandVarResponseData, error)
SetVarCommand(ctx context.Context, data CommandVarData) error
PathCommand(ctx context.Context, data PathCommandData) (string, error)
SendTelemetryCommand(ctx context.Context) error
FetchSuggestionsCommand(ctx context.Context, data FetchSuggestionsData) (*FetchSuggestionsResponse, error)
DisposeSuggestionsCommand(ctx context.Context, widgetId string) error
GetTabCommand(ctx context.Context, tabId string) (*waveobj.Tab, error)
GetAllTabIndicatorsCommand(ctx context.Context) (map[string]*TabIndicator, error)
// connection functions
ConnStatusCommand(ctx context.Context) ([]ConnStatus, error)
WslStatusCommand(ctx context.Context) ([]ConnStatus, error)
ConnEnsureCommand(ctx context.Context, data ConnExtData) error
ConnReinstallWshCommand(ctx context.Context, data ConnExtData) error
ConnConnectCommand(ctx context.Context, connRequest ConnRequest) error
ConnDisconnectCommand(ctx context.Context, connName string) error
ConnListCommand(ctx context.Context) ([]string, error)
WslListCommand(ctx context.Context) ([]string, error)
WslDefaultDistroCommand(ctx context.Context) (string, error)
DismissWshFailCommand(ctx context.Context, connName string) error
ConnUpdateWshCommand(ctx context.Context, remoteInfo RemoteInfo) (bool, error)
FindGitBashCommand(ctx context.Context, rescan bool) (string, error)
ConnServerInitCommand(ctx context.Context, data CommandConnServerInitData) error
NotifySystemResumeCommand(ctx context.Context) error
// eventrecv is special, it's handled internally by WshRpc with EventListener
EventRecvCommand(ctx context.Context, data wps.WaveEvent) error
// remotes
WshRpcRemoteFileInterface
RemoteStreamCpuDataCommand(ctx context.Context) chan RespOrErrorUnion[TimeSeriesData]
RemoteGetInfoCommand(ctx context.Context) (RemoteInfo, error)
RemoteInstallRcFilesCommand(ctx context.Context) error
RemoteStartJobCommand(ctx context.Context, data CommandRemoteStartJobData) (*CommandStartJobRtnData, error)
RemoteReconnectToJobManagerCommand(ctx context.Context, data CommandRemoteReconnectToJobManagerData) (*CommandRemoteReconnectToJobManagerRtnData, error)
RemoteDisconnectFromJobManagerCommand(ctx context.Context, data CommandRemoteDisconnectFromJobManagerData) error
RemoteTerminateJobManagerCommand(ctx context.Context, data CommandRemoteTerminateJobManagerData) error
// emain
WebSelectorCommand(ctx context.Context, data CommandWebSelectorData) ([]string, error)
NotifyCommand(ctx context.Context, notificationOptions WaveNotificationOptions) error
FocusWindowCommand(ctx context.Context, windowId string) error
ElectronEncryptCommand(ctx context.Context, data CommandElectronEncryptData) (*CommandElectronEncryptRtnData, error)
ElectronDecryptCommand(ctx context.Context, data CommandElectronDecryptData) (*CommandElectronDecryptRtnData, error)
NetworkOnlineCommand(ctx context.Context) (bool, error)
ElectronSystemBellCommand(ctx context.Context) error
// secrets
GetSecretsCommand(ctx context.Context, names []string) (map[string]string, error)
GetSecretsNamesCommand(ctx context.Context) ([]string, error)
SetSecretsCommand(ctx context.Context, secrets map[string]*string) error
GetSecretsLinuxStorageBackendCommand(ctx context.Context) (string, error)
WorkspaceListCommand(ctx context.Context) ([]WorkspaceInfoData, error)
GetUpdateChannelCommand(ctx context.Context) (string, error)
// terminal
VDomCreateContextCommand(ctx context.Context, data vdom.VDomCreateContext) (*waveobj.ORef, error)
VDomAsyncInitiationCommand(ctx context.Context, data vdom.VDomAsyncInitiationRequest) error
// ai
AiSendMessageCommand(ctx context.Context, data AiMessageData) error
WaveAIEnableTelemetryCommand(ctx context.Context) error
GetWaveAIChatCommand(ctx context.Context, data CommandGetWaveAIChatData) (*uctypes.UIChat, error)
GetWaveAIRateLimitCommand(ctx context.Context) (*uctypes.RateLimitInfo, error)
WaveAIToolApproveCommand(ctx context.Context, data CommandWaveAIToolApproveData) error
WaveAIAddContextCommand(ctx context.Context, data CommandWaveAIAddContextData) error
WaveAIGetToolDiffCommand(ctx context.Context, data CommandWaveAIGetToolDiffData) (*CommandWaveAIGetToolDiffRtnData, error)
// screenshot
CaptureBlockScreenshotCommand(ctx context.Context, data CommandCaptureBlockScreenshotData) (string, error)
// block focus
SetBlockFocusCommand(ctx context.Context, blockId string) error
GetFocusedBlockDataCommand(ctx context.Context) (*FocusedBlockData, error)
// rtinfo
GetRTInfoCommand(ctx context.Context, data CommandGetRTInfoData) (*waveobj.ObjRTInfo, error)
SetRTInfoCommand(ctx context.Context, data CommandSetRTInfoData) error
// terminal
TermGetScrollbackLinesCommand(ctx context.Context, data CommandTermGetScrollbackLinesData) (*CommandTermGetScrollbackLinesRtnData, error)
// file
WshRpcFileInterface
WaveFileReadStreamCommand(ctx context.Context, data CommandWaveFileReadStreamData) (*WaveFileInfo, error)
// builder
WshRpcBuilderInterface
// proc
VDomRenderCommand(ctx context.Context, data vdom.VDomFrontendUpdate) chan RespOrErrorUnion[*vdom.VDomBackendUpdate]
VDomUrlRequestCommand(ctx context.Context, data VDomUrlRequestData) chan RespOrErrorUnion[VDomUrlRequestResponse]
// streams
StreamDataCommand(ctx context.Context, data CommandStreamData) error
StreamDataAckCommand(ctx context.Context, data CommandStreamAckData) error
// jobs
AuthenticateToJobManagerCommand(ctx context.Context, data CommandAuthenticateToJobData) error
StartJobCommand(ctx context.Context, data CommandStartJobData) (*CommandStartJobRtnData, error)
JobPrepareConnectCommand(ctx context.Context, data CommandJobPrepareConnectData) (*CommandJobConnectRtnData, error)
JobStartStreamCommand(ctx context.Context, data CommandJobStartStreamData) error
JobInputCommand(ctx context.Context, data CommandJobInputData) error
JobCmdExitedCommand(ctx context.Context, data CommandJobCmdExitedData) error // this is sent FROM the job manager => main server
// job controller
JobControllerDeleteJobCommand(ctx context.Context, jobId string) error
JobControllerListCommand(ctx context.Context) ([]*waveobj.Job, error)
JobControllerStartJobCommand(ctx context.Context, data CommandJobControllerStartJobData) (string, error)
JobControllerExitJobCommand(ctx context.Context, jobId string) error
JobControllerDisconnectJobCommand(ctx context.Context, jobId string) error
JobControllerReconnectJobCommand(ctx context.Context, jobId string) error
JobControllerReconnectJobsForConnCommand(ctx context.Context, connName string) error
JobControllerConnectedJobsCommand(ctx context.Context) ([]string, error)
JobControllerAttachJobCommand(ctx context.Context, data CommandJobControllerAttachJobData) error
JobControllerDetachJobCommand(ctx context.Context, jobId string) error
JobControllerGetAllJobManagerStatusCommand(ctx context.Context) ([]*JobManagerStatusUpdate, error)
BlockJobStatusCommand(ctx context.Context, blockId string) (*BlockJobStatusData, error)
}
type WshRpcMethodDecl ¶
type WshRpcRemoteFileInterface ¶ added in v0.14.0
type WshRpcRemoteFileInterface interface {
RemoteStreamFileCommand(ctx context.Context, data CommandRemoteStreamFileData) chan RespOrErrorUnion[FileData]
RemoteFileCopyCommand(ctx context.Context, data CommandFileCopyData) (bool, error)
RemoteListEntriesCommand(ctx context.Context, data CommandRemoteListEntriesData) chan RespOrErrorUnion[CommandRemoteListEntriesRtnData]
RemoteFileInfoCommand(ctx context.Context, path string) (*FileInfo, error)
RemoteFileTouchCommand(ctx context.Context, path string) error
RemoteFileMoveCommand(ctx context.Context, data CommandFileCopyData) error
RemoteFileDeleteCommand(ctx context.Context, data CommandDeleteFileData) error
RemoteWriteFileCommand(ctx context.Context, data FileData) error
RemoteFileJoinCommand(ctx context.Context, paths []string) (*FileInfo, error)
RemoteMkdirCommand(ctx context.Context, path string) error
}
type WshServerCommandMeta ¶
type WshServerCommandMeta struct {
CommandType string `json:"commandtype"`
}
for frontend
Source Files
¶
Click to show internal directories.
Click to hide internal directories.