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 PetCatalogueEntryData
- type PetDialogueRequestData
- type PetDialogueResponseData
- type PetInteractData
- type PetProfileData
- type PetSelectData
- type PetSessionData
- type PetStateData
- type PetXPData
- 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 ¶
type ActivityDisplayType ¶
type ActivityUpdate ¶
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 ¶
type AiMessageData struct {
Message string `json:"message,omitempty"`
}
type AppInfo ¶
type AppInfo struct {
AppId string `json:"appid"`
ModTime int64 `json:"modtime"`
Manifest *AppManifest `json:"manifest,omitempty"`
}
type AppManifest ¶
type BlockInfoData ¶
type BlockJobStatusData ¶
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 ¶
type BlocksListRequest ¶
type BuilderStatusData ¶
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 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 ¶
type CommandAuthenticateToJobData struct {
JobAccessToken string `json:"jobaccesstoken"`
}
type CommandAuthenticateTokenData ¶
type CommandAuthenticateTokenData struct {
Token string `json:"token"`
}
type CommandBlockInputData ¶
type CommandCaptureBlockScreenshotData ¶
type CommandCaptureBlockScreenshotData struct {
BlockId string `json:"blockid"`
}
type CommandConnServerInitData ¶
type CommandConnServerInitData struct {
ClientId string `json:"clientid"`
}
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 CommandDeleteBlockData ¶
type CommandDeleteBlockData struct {
BlockId string `json:"blockid"`
}
type CommandDeleteFileData ¶
type CommandDisposeData ¶
type CommandDisposeData struct {
RouteId string `json:"routeid"`
}
type CommandElectronDecryptData ¶
type CommandElectronDecryptData struct {
CipherText string `json:"ciphertext"`
}
type CommandElectronEncryptData ¶
type CommandElectronEncryptData struct {
PlainText string `json:"plaintext"`
}
type CommandFileCopyData ¶
type CommandFileCopyData struct {
SrcUri string `json:"srcuri"`
DestUri string `json:"desturi"`
Opts *FileCopyOpts `json:"opts,omitempty"`
}
type CommandGetMetaData ¶
type CommandGetRTInfoData ¶
type CommandGetTempDirData ¶
type CommandGetTempDirData struct {
FileName string `json:"filename,omitempty"`
}
type CommandGetWaveAIChatData ¶
type CommandGetWaveAIChatData struct {
ChatId string `json:"chatid"`
}
type CommandJobCmdExitedData ¶
type CommandJobConnectRtnData ¶
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 CommandJobInputData ¶
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 ¶
type CommandJobPrepareConnectData struct {
StreamMeta StreamMeta `json:"streammeta"`
Seq int64 `json:"seq"`
TermSize waveobj.TermSize `json:"termsize"`
}
type CommandJobStartStreamData ¶
type CommandJobStartStreamData struct {
}
type CommandListAllAppFilesData ¶
type CommandListAllAppFilesData struct {
AppId string `json:"appid"`
}
type CommandListAllAppFilesRtnData ¶
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 ¶
type CommandMakeDraftFromLocalData struct {
LocalAppId string `json:"localappid"`
}
type CommandMakeDraftFromLocalRtnData ¶
type CommandMakeDraftFromLocalRtnData struct {
DraftAppId string `json:"draftappid"`
}
type CommandMessageData ¶
type CommandMessageData struct {
Message string `json:"message"`
}
type CommandPublishAppData ¶
type CommandPublishAppData struct {
AppId string `json:"appid"`
}
type CommandPublishAppRtnData ¶
type CommandPublishAppRtnData struct {
PublishedAppId string `json:"publishedappid"`
}
type CommandReadAppFileData ¶
type CommandRemoteDisconnectFromJobManagerData ¶
type CommandRemoteDisconnectFromJobManagerData struct {
JobId string `json:"jobid"`
}
type CommandRemoteListEntriesData ¶
type CommandRemoteListEntriesData struct {
Path string `json:"path"`
Opts *FileListOpts `json:"opts,omitempty"`
}
type CommandRemoteListEntriesRtnData ¶
type CommandRemoteListEntriesRtnData struct {
FileInfo []*FileInfo `json:"fileinfo,omitempty"`
}
type CommandRemoteStartJobData ¶
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 CommandResolveIdsData ¶
type CommandRestartBuilderAndWaitData ¶
type CommandRestartBuilderAndWaitData struct {
BuilderId string `json:"builderid"`
}
type CommandSetMetaData ¶
type CommandSetMetaData struct {
ORef waveobj.ORef `json:"oref"`
Meta waveobj.MetaMapType `json:"meta"`
}
type CommandSetRTInfoData ¶
type CommandStartBuilderData ¶
type CommandStartBuilderData struct {
BuilderId string `json:"builderid"`
}
type CommandStartJobData ¶
type CommandStartJobRtnData ¶
type CommandStreamAckData ¶
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 ¶
type CommandVarData ¶
type CommandVarResponseData ¶
type CommandWaitForRouteData ¶
type CommandWaveAIAddContextData ¶
type CommandWaveAIAddContextData struct {
Files []AIAttachedFile `json:"files,omitempty"`
Text string `json:"text,omitempty"`
Submit bool `json:"submit,omitempty"`
NewChat bool `json:"newchat,omitempty"`
}
type CommandWaveFileReadStreamData ¶
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 ¶
type CommandWriteAppGoFileRtnData ¶
type CommandWriteAppGoFileRtnData struct {
Data64 string `json:"data64"`
}
type ConnConfigRequest ¶
type ConnConfigRequest struct {
Host string `json:"host"`
MetaMapType waveobj.MetaMapType `json:"metamaptype"`
}
type ConnExtData ¶
type ConnRequest ¶
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 ¶
type FetchSuggestionsData ¶
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 ¶
type FetchSuggestionsResponse struct {
ReqNum int `json:"reqnum"`
Suggestions []SuggestionType `json:"suggestions"`
}
type FileCopyOpts ¶
type FileCreateData ¶
type FileData ¶
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 ¶
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 ¶
type FileListData struct {
Path string `json:"path"`
Opts *FileListOpts `json:"opts,omitempty"`
}
type FileListOpts ¶
type FileListStreamResponse ¶
type FileListStreamResponse <-chan RespOrErrorUnion[CommandRemoteListEntriesRtnData]
type FocusedBlockData ¶
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 ¶
type MetaSettingsType ¶
type MetaSettingsType struct {
waveobj.MetaMapType
}
func (MetaSettingsType) MarshalJSON ¶
func (m MetaSettingsType) MarshalJSON() ([]byte, error)
func (*MetaSettingsType) UnmarshalJSON ¶
func (m *MetaSettingsType) UnmarshalJSON(data []byte) error
type PathCommandData ¶
type PetCatalogueEntryData ¶ added in v0.16.1
type PetDialogueRequestData ¶ added in v0.16.1
type PetDialogueResponseData ¶ added in v0.16.1
type PetInteractData ¶ added in v0.16.1
type PetInteractData struct {
Action string `json:"action"` // "pet", "feed"
}
type PetProfileData ¶ added in v0.16.1
type PetProfileData struct {
ActivePetID string `json:"activePetId"`
CompletedPets []string `json:"completedPets"`
StreakDays int `json:"streakDays"`
LastActiveDate string `json:"lastActiveDate"`
TotalFocusTime int64 `json:"totalFocusTime"`
TotalCommands int `json:"totalCommands"`
Achievements []string `json:"achievements"`
}
type PetSelectData ¶ added in v0.16.1
type PetSelectData struct {
PetID string `json:"petId"`
}
type PetSessionData ¶ added in v0.16.1
type PetStateData ¶ added in v0.16.1
type PetStateData struct {
ID string `json:"id"`
PetID string `json:"petId"`
Name string `json:"name"`
Level int `json:"level"`
XP int `json:"xp"`
XPToNext int `json:"xpToNext"`
Progress float64 `json:"progress"`
Mood string `json:"mood"`
State string `json:"state"`
Hunger float64 `json:"hunger"`
Energy float64 `json:"energy"`
SpawnedAt string `json:"spawnedAt"`
TotalPlaytime int64 `json:"totalPlaytime"`
}
type RemoteInfo ¶
type RespOrErrorUnion ¶
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 ¶
func (rc RpcContext) GenerateRouteId() string
type SecretMeta ¶
type StreamMeta ¶
type SuggestionType ¶
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 ¶
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 ¶
type TabIndicatorEventData struct {
TabId string `json:"tabid"`
Indicator *TabIndicator `json:"indicator"`
}
type TimeSeriesData ¶
type VDomUrlRequestData ¶
type VDomUrlRequestResponse ¶
type WaveAIOptsType ¶
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 ¶
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 ¶
type WaveAIStreamRequest ¶
type WaveAIStreamRequest struct {
ClientId string `json:"clientid,omitempty"`
Opts *WaveAIOptsType `json:"opts"`
Prompt []WaveAIPromptMessageType `json:"prompt"`
}
type WaveAIUsageType ¶
type WaveFileInfo ¶
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 ¶
type WaveNotificationOptions ¶
type WebSelectorOpts ¶
type WorkspaceInfoData ¶
type WshRpcBuilderInterface ¶
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 ¶
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) (any, error)
GetWaveAIRateLimitCommand(ctx context.Context) (any, 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)
// pet
PetGetStateCommand(ctx context.Context) (*PetStateData, error)
PetGetProfileCommand(ctx context.Context) (*PetProfileData, error)
PetGetSessionCommand(ctx context.Context) (*PetSessionData, error)
PetSelectPetCommand(ctx context.Context, data PetSelectData) (*PetStateData, error)
PetInteractCommand(ctx context.Context, data PetInteractData) (*PetStateData, error)
PetAddXPCommand(ctx context.Context, data PetXPData) (*PetStateData, error)
PetGetCatalogueCommand(ctx context.Context) ([]PetCatalogueEntryData, error)
PetGetDialogueCommand(ctx context.Context, data PetDialogueRequestData) (*PetDialogueResponseData, error)
}
type WshRpcMethodDecl ¶
type WshRpcRemoteFileInterface ¶
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.