Documentation ¶
Index ¶
- Constants
- type CmdEdit
- type Config
- type Edit
- type Editor
- type ErrConnectionClosed
- type ErrDuplicateMacro
- type ErrEmptyCommand
- type ErrEmptyMacro
- type ErrEmptyRequest
- type ErrInvalidRepeatCommand
- type ErrInvalidTimeout
- type ErrTimeout
- type ErrUnknownCommand
- type ErrUnsupportedMessageType
- type ErrUnsupportedVersion
- type Executer
- type ExecutionContext
- type Exit
- type InputFileCommand
- type Macro
- type MacroTemplates
- type PrintMsg
- type RepeatCommand
- type Send
- type Sequence
- type SleepCommand
- type WaitForResp
Constants ¶
const ( CommandPartsNumber = 2 LineUp = "\x1b[1A" LineClear = "\x1b[2K" HideCursor = "\x1b[?25l" ShowCursor = "\x1b[?25h" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ErrConnectionClosed ¶
type ErrConnectionClosed struct{}
func (ErrConnectionClosed) Error ¶
func (e ErrConnectionClosed) Error() string
type ErrDuplicateMacro ¶
type ErrDuplicateMacro struct {
MacroName string
}
func (ErrDuplicateMacro) Error ¶
func (e ErrDuplicateMacro) Error() string
type ErrEmptyCommand ¶
type ErrEmptyCommand struct{}
func (ErrEmptyCommand) Error ¶
func (e ErrEmptyCommand) Error() string
type ErrEmptyMacro ¶
type ErrEmptyMacro struct {
MacroName string
}
func (ErrEmptyMacro) Error ¶
func (e ErrEmptyMacro) Error() string
type ErrEmptyRequest ¶
type ErrEmptyRequest struct{}
func (ErrEmptyRequest) Error ¶
func (e ErrEmptyRequest) Error() string
type ErrInvalidRepeatCommand ¶ added in v0.4.0
type ErrInvalidRepeatCommand struct{}
func (ErrInvalidRepeatCommand) Error ¶ added in v0.4.0
func (e ErrInvalidRepeatCommand) Error() string
type ErrInvalidTimeout ¶
type ErrInvalidTimeout struct {
Timeout string
}
func (ErrInvalidTimeout) Error ¶
func (e ErrInvalidTimeout) Error() string
type ErrTimeout ¶
type ErrTimeout struct{}
func (ErrTimeout) Error ¶
func (e ErrTimeout) Error() string
type ErrUnknownCommand ¶
type ErrUnknownCommand struct {
Command string
}
func (ErrUnknownCommand) Error ¶
func (e ErrUnknownCommand) Error() string
type ErrUnsupportedMessageType ¶
type ErrUnsupportedMessageType struct {
MsgType string
}
func (ErrUnsupportedMessageType) Error ¶
func (e ErrUnsupportedMessageType) Error() string
type ErrUnsupportedVersion ¶
type ErrUnsupportedVersion struct {
Version string
}
func (ErrUnsupportedVersion) Error ¶
func (e ErrUnsupportedVersion) Error() string
type Executer ¶
type Executer interface {
Execute(ExecutionContext) (Executer, error)
}
func Factory ¶
Factory returns an Executer and an error. It takes a string and a Macro pointer as input. The string is split into parts and the first part is used to determine which command to execute. Depending on the command, different arguments are passed to the corresponding constructor. If the command is not recognized, an error is returned.
type ExecutionContext ¶
type InputFileCommand ¶ added in v0.4.0
type InputFileCommand struct {
// contains filtered or unexported fields
}
func NewInputFileCommand ¶ added in v0.4.0
func NewInputFileCommand(filePath string) *InputFileCommand
func (*InputFileCommand) Execute ¶ added in v0.4.0
func (c *InputFileCommand) Execute(exCtx ExecutionContext) (Executer, error)
Execute executes the InputFileCommand and returns an Executer and an error. It reads the file and executes the commands in the file.
type Macro ¶
type Macro struct {
// contains filtered or unexported fields
}
func LoadFromFile ¶
LoadFromFile loads a macro configuration from a file at the given path. It returns a Macro instance and an error if the file cannot be read or parsed.
func LoadMacroForDomain ¶
LoadMacroForDomain loads a macro for a given domain from a directory. It takes the directory path and the domain name as input parameters. It returns a pointer to a Macro struct and an error if any.
func NewMacro ¶
NewMacro creates a new Macro instance with the specified domains. The domains parameter is a slice of strings representing the allowed domains for the macro. Returns a pointer to the newly created Macro instance.
func (*Macro) AddCommands ¶
AddCommands adds a new macro with the given name and commands to the Macro instance. If a macro with the same name already exists, it returns an error. If the rawCommands slice is empty, it returns an error. If the rawCommands slice has only one command, it adds the command directly to the macro. Otherwise, it creates a new Sequence with the commands and adds it to the macro.
type MacroTemplates ¶ added in v0.4.0
type MacroTemplates struct {
// contains filtered or unexported fields
}
func NewMacroTemplates ¶ added in v0.4.0
func NewMacroTemplates(templates []string) (*MacroTemplates, error)
func (*MacroTemplates) GetExecuter ¶ added in v0.4.0
func (t *MacroTemplates) GetExecuter(args []string) (Executer, error)
type PrintMsg ¶
type PrintMsg struct {
// contains filtered or unexported fields
}
func NewPrintMsg ¶
type RepeatCommand ¶ added in v0.4.0
type RepeatCommand struct {
// contains filtered or unexported fields
}
func NewRepeatCommand ¶ added in v0.4.0
func NewRepeatCommand(times int, subCommand Executer) *RepeatCommand
func (*RepeatCommand) Execute ¶ added in v0.4.0
func (c *RepeatCommand) Execute(exCtx ExecutionContext) (Executer, error)
Execute executes the RepeatCommand and returns an Executer and an error. It executes the sub-command the specified number of times.
type Sequence ¶
type Sequence struct {
// contains filtered or unexported fields
}
func NewSequence ¶
type SleepCommand ¶ added in v0.4.0
type SleepCommand struct {
// contains filtered or unexported fields
}
func NewSleepCommand ¶ added in v0.4.0
func NewSleepCommand(duration time.Duration) *SleepCommand
func (*SleepCommand) Execute ¶ added in v0.4.0
func (c *SleepCommand) Execute(_ ExecutionContext) (Executer, error)
Execute executes the SleepCommand and returns an Executer and an error. It sleeps for the specified duration.
type WaitForResp ¶
type WaitForResp struct {
// contains filtered or unexported fields
}
func NewWaitForResp ¶
func NewWaitForResp(timeout time.Duration) *WaitForResp
func (*WaitForResp) Execute ¶
func (c *WaitForResp) Execute(exCtx ExecutionContext) (Executer, error)
Execute executes the WaitForResp command and waits for a response from the WebSocket connection. If a timeout is set, it will return an error if no response is received within the specified time. If a response is received, it will return a new PrintMsg command with the received message. If the WebSocket connection is closed, it will return an error.