views

package
v0.1.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 4, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const MaxPayloadDisplayRunes = 4096

MaxPayloadDisplayRunes limits how much of a payload we show in the TUI to keep rendering fast.

Variables

This section is empty.

Functions

func FormatPayloadForDisplay added in v0.0.2

func FormatPayloadForDisplay(raw []byte) string

FormatPayloadForDisplay pretty-prints JSON payload and truncates if too long.

Types

type ApprovalResultMsg

type ApprovalResultMsg struct {
	Success bool
	Message string
	Err     error
}

ApprovalResultMsg is sent when approval/rejection is complete

type AuditDataMsg

type AuditDataMsg struct {
	Records      []audit.Record
	Total        int
	NextCursor   *string
	NextCursorID *string
	HasMore      bool
	Err          error
}

AuditDataMsg is sent when audit data is loaded

type AuditDetailRequestMsg added in v0.0.2

type AuditDetailRequestMsg struct {
	Request *evm.RequestStatus
	Err     error
}

AuditDetailRequestMsg is sent when the request for the selected audit record is loaded (detail view).

type AuditModel

type AuditModel struct {
	// contains filtered or unexported fields
}

AuditModel represents the audit logs view

func NewAuditModel

func NewAuditModel(c *client.Client, ctx context.Context) (*AuditModel, error)

NewAuditModel creates a new audit model

func (*AuditModel) Init

func (m *AuditModel) Init() tea.Cmd

Init initializes the audit view

func (*AuditModel) IsCapturingInput added in v0.1.0

func (m *AuditModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (filter active).

func (*AuditModel) Refresh

func (m *AuditModel) Refresh() tea.Cmd

Refresh refreshes the audit data

func (*AuditModel) SetSize

func (m *AuditModel) SetSize(width, height int)

SetSize sets the view size

func (*AuditModel) Update

func (m *AuditModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*AuditModel) View

func (m *AuditModel) View() string

View renders the audit view

type DashboardData

type DashboardData struct {
	Health        *client.HealthResponse
	RequestCounts map[string]int
	TotalRequests int
	TotalRules    int
	LastRefresh   time.Time
}

DashboardData holds the data for the dashboard

type DashboardDataMsg

type DashboardDataMsg struct {
	Data *DashboardData
	Err  error
}

DashboardDataMsg is sent when dashboard data is loaded

type DashboardModel

type DashboardModel struct {
	// contains filtered or unexported fields
}

DashboardModel represents the dashboard view

func NewDashboardModel

func NewDashboardModel(c *client.Client, ctx context.Context) (*DashboardModel, error)

NewDashboardModel creates a new dashboard model

func (*DashboardModel) Init

func (m *DashboardModel) Init() tea.Cmd

Init initializes the dashboard

func (*DashboardModel) Refresh

func (m *DashboardModel) Refresh() tea.Cmd

Refresh refreshes the dashboard data

func (*DashboardModel) SetSize

func (m *DashboardModel) SetSize(width, height int)

SetSize sets the view size

func (*DashboardModel) Update

func (m *DashboardModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*DashboardModel) View

func (m *DashboardModel) View() string

View renders the dashboard

type HDWalletCreateMsg added in v0.1.0

type HDWalletCreateMsg struct {
	Wallet  *evm.HDWalletResponse
	Success bool
	Message string
	Err     error
}

HDWalletCreateMsg is sent when an HD wallet is created or imported.

type HDWalletDeriveMsg added in v0.1.0

type HDWalletDeriveMsg struct {
	Derived []evm.SignerInfo
	Success bool
	Message string
	Err     error
}

HDWalletDeriveMsg is sent when addresses are derived.

type HDWalletDetailDataMsg added in v0.1.0

type HDWalletDetailDataMsg struct {
	Wallet  *evm.HDWalletResponse
	Derived []evm.SignerInfo
	Err     error
	Locked  bool // true when wallet is locked (ListDerived failed)
}

HDWalletDetailDataMsg is sent when HD wallet detail data is loaded.

type HDWalletDetailModel added in v0.1.0

type HDWalletDetailModel struct {
	// contains filtered or unexported fields
}

HDWalletDetailModel represents the HD wallet detail view.

func NewHDWalletDetailModel added in v0.1.0

func NewHDWalletDetailModel(c *client.Client, ctx context.Context) (*HDWalletDetailModel, error)

NewHDWalletDetailModel creates a new HD wallet detail model.

func (*HDWalletDetailModel) Init added in v0.1.0

func (m *HDWalletDetailModel) Init() tea.Cmd

Init initializes the view.

func (*HDWalletDetailModel) IsCapturingInput added in v0.1.0

func (m *HDWalletDetailModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (derive form or unlock form active).

func (*HDWalletDetailModel) LoadWallet added in v0.1.0

func (m *HDWalletDetailModel) LoadWallet(primaryAddr string) tea.Cmd

LoadWallet loads an HD wallet's derived addresses.

func (*HDWalletDetailModel) ResetGoBack added in v0.1.0

func (m *HDWalletDetailModel) ResetGoBack()

ResetGoBack resets the go back flag.

func (*HDWalletDetailModel) SetSize added in v0.1.0

func (m *HDWalletDetailModel) SetSize(width, height int)

SetSize sets the view size.

func (*HDWalletDetailModel) ShouldGoBack added in v0.1.0

func (m *HDWalletDetailModel) ShouldGoBack() bool

ShouldGoBack returns true if the view should go back to the list.

func (*HDWalletDetailModel) Update added in v0.1.0

func (m *HDWalletDetailModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages.

func (*HDWalletDetailModel) View added in v0.1.0

func (m *HDWalletDetailModel) View() string

View renders the HD wallet detail view.

type HDWalletDetailUnlockMsg added in v0.1.8

type HDWalletDetailUnlockMsg struct {
	Success bool
	Message string
	Err     error
}

HDWalletDetailUnlockMsg is sent when an HD wallet unlock completes in detail view.

type HDWalletUnlockMsg added in v0.1.8

type HDWalletUnlockMsg struct {
	PrimaryAddr string
	Success     bool
	Message     string
	Err         error
}

HDWalletUnlockMsg is sent when an HD wallet unlock completes.

type HDWalletsDataMsg added in v0.1.0

type HDWalletsDataMsg struct {
	Wallets []evm.HDWalletResponse
	Err     error
}

HDWalletsDataMsg is sent when HD wallets data is loaded.

type HDWalletsModel added in v0.1.0

type HDWalletsModel struct {
	// contains filtered or unexported fields
}

HDWalletsModel represents the HD wallets list view.

func NewHDWalletsModel added in v0.1.0

func NewHDWalletsModel(c *client.Client, ctx context.Context) (*HDWalletsModel, error)

NewHDWalletsModel creates a new HD wallets model.

func (*HDWalletsModel) GetSelectedPrimaryAddr added in v0.1.0

func (m *HDWalletsModel) GetSelectedPrimaryAddr() string

GetSelectedPrimaryAddr returns the selected wallet's primary address.

func (*HDWalletsModel) Init added in v0.1.0

func (m *HDWalletsModel) Init() tea.Cmd

Init initializes the HD wallets view.

func (*HDWalletsModel) IsCapturingInput added in v0.1.0

func (m *HDWalletsModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (form active).

func (*HDWalletsModel) Refresh added in v0.1.0

func (m *HDWalletsModel) Refresh() tea.Cmd

Refresh refreshes the HD wallets data.

func (*HDWalletsModel) ResetOpenDetail added in v0.1.0

func (m *HDWalletsModel) ResetOpenDetail()

ResetOpenDetail resets the detail navigation flag.

func (*HDWalletsModel) SetSize added in v0.1.0

func (m *HDWalletsModel) SetSize(width, height int)

SetSize sets the view size.

func (*HDWalletsModel) ShouldOpenDetail added in v0.1.0

func (m *HDWalletsModel) ShouldOpenDetail() bool

ShouldOpenDetail returns true if the view should navigate to detail.

func (*HDWalletsModel) Update added in v0.1.0

func (m *HDWalletsModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages.

func (*HDWalletsModel) View added in v0.1.0

func (m *HDWalletsModel) View() string

View renders the HD wallets view.

type MetricsDataMsg added in v0.0.2

type MetricsDataMsg struct {
	Raw string
	Err error
}

type MetricsModel added in v0.0.2

type MetricsModel struct {
	// contains filtered or unexported fields
}

func NewMetricsModel added in v0.0.2

func NewMetricsModel(c *client.Client, ctx context.Context) (*MetricsModel, error)

func (*MetricsModel) Init added in v0.0.2

func (m *MetricsModel) Init() tea.Cmd

func (*MetricsModel) Refresh added in v0.0.2

func (m *MetricsModel) Refresh() tea.Cmd

func (*MetricsModel) SetSize added in v0.0.2

func (m *MetricsModel) SetSize(width, height int)

func (*MetricsModel) Update added in v0.0.2

func (m *MetricsModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

func (*MetricsModel) View added in v0.0.2

func (m *MetricsModel) View() string

type PreviewRuleMsg

type PreviewRuleMsg struct {
	Rule *evm.Rule
	Err  error
}

PreviewRuleMsg is sent when rule preview is loaded

type RequestDetailDataMsg

type RequestDetailDataMsg struct {
	Request *evm.RequestStatus
	Err     error
}

RequestDetailDataMsg is sent when request detail is loaded

type RequestDetailModel

type RequestDetailModel struct {
	// contains filtered or unexported fields
}

RequestDetailModel represents the request detail view

func NewRequestDetailModel

func NewRequestDetailModel(c *client.Client, ctx context.Context) (*RequestDetailModel, error)

NewRequestDetailModel creates a new request detail model

func (*RequestDetailModel) Init

func (m *RequestDetailModel) Init() tea.Cmd

Init initializes the view

func (*RequestDetailModel) LoadRequest

func (m *RequestDetailModel) LoadRequest(requestID string) tea.Cmd

LoadRequest loads a request by ID

func (*RequestDetailModel) ResetGoBack

func (m *RequestDetailModel) ResetGoBack()

ResetGoBack resets the go back flag

func (*RequestDetailModel) SetSize

func (m *RequestDetailModel) SetSize(width, height int)

SetSize sets the view size

func (*RequestDetailModel) ShouldGoBack

func (m *RequestDetailModel) ShouldGoBack() bool

ShouldGoBack returns true if the view should go back to the list

func (*RequestDetailModel) Update

func (m *RequestDetailModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*RequestDetailModel) View

func (m *RequestDetailModel) View() string

View renders the request detail view

type RequestsDataMsg

type RequestsDataMsg struct {
	Requests     []evm.RequestStatus
	Total        int
	NextCursor   *string
	NextCursorID *string
	HasMore      bool
	Err          error
}

RequestsDataMsg is sent when requests data is loaded

type RequestsModel

type RequestsModel struct {
	// contains filtered or unexported fields
}

RequestsModel represents the requests list view

func NewRequestsModel

func NewRequestsModel(c *client.Client, ctx context.Context) (*RequestsModel, error)

NewRequestsModel creates a new requests model

func (*RequestsModel) GetSelectedRequestID

func (m *RequestsModel) GetSelectedRequestID() string

GetSelectedRequestID returns the ID of the selected request

func (*RequestsModel) Init

func (m *RequestsModel) Init() tea.Cmd

Init initializes the requests view

func (*RequestsModel) IsCapturingInput added in v0.1.0

func (m *RequestsModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (filter active).

func (*RequestsModel) Refresh

func (m *RequestsModel) Refresh() tea.Cmd

Refresh refreshes the requests data

func (*RequestsModel) SetSize

func (m *RequestsModel) SetSize(width, height int)

SetSize sets the view size

func (*RequestsModel) Update

func (m *RequestsModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*RequestsModel) View

func (m *RequestsModel) View() string

View renders the requests view

type RuleActionMsg

type RuleActionMsg struct {
	Action  string
	Success bool
	Message string
	Err     error
}

RuleActionMsg is sent when a rule action is complete

type RuleDetailActionMsg

type RuleDetailActionMsg struct {
	Action  string
	Success bool
	Message string
	Err     error
}

RuleDetailActionMsg is sent when a rule action is complete

type RuleDetailDataMsg

type RuleDetailDataMsg struct {
	Rule *evm.Rule
	Err  error
}

RuleDetailDataMsg is sent when rule detail is loaded

type RuleDetailModel

type RuleDetailModel struct {
	// contains filtered or unexported fields
}

RuleDetailModel represents the rule detail view

func NewRuleDetailModel

func NewRuleDetailModel(c *client.Client, ctx context.Context) (*RuleDetailModel, error)

NewRuleDetailModel creates a new rule detail model

func (*RuleDetailModel) Init

func (m *RuleDetailModel) Init() tea.Cmd

Init initializes the view

func (*RuleDetailModel) LoadRule

func (m *RuleDetailModel) LoadRule(ruleID string) tea.Cmd

LoadRule loads a rule by ID

func (*RuleDetailModel) ResetGoBack

func (m *RuleDetailModel) ResetGoBack()

ResetGoBack resets the go back flag

func (*RuleDetailModel) SetSize

func (m *RuleDetailModel) SetSize(width, height int)

SetSize sets the view size

func (*RuleDetailModel) ShouldGoBack

func (m *RuleDetailModel) ShouldGoBack() bool

ShouldGoBack returns true if the view should go back to the list

func (*RuleDetailModel) Update

func (m *RuleDetailModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*RuleDetailModel) View

func (m *RuleDetailModel) View() string

View renders the rule detail view

type RulesDataMsg

type RulesDataMsg struct {
	Rules []evm.Rule
	Total int
	Err   error
}

RulesDataMsg is sent when rules data is loaded

type RulesModel

type RulesModel struct {
	// contains filtered or unexported fields
}

RulesModel represents the rules list view

func NewRulesModel

func NewRulesModel(c *client.Client, ctx context.Context) (*RulesModel, error)

NewRulesModel creates a new rules model

func (*RulesModel) GetSelectedRuleID

func (m *RulesModel) GetSelectedRuleID() string

GetSelectedRuleID returns the ID of the selected rule

func (*RulesModel) Init

func (m *RulesModel) Init() tea.Cmd

Init initializes the rules view

func (*RulesModel) IsCapturingInput added in v0.1.0

func (m *RulesModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (filter active).

func (*RulesModel) Refresh

func (m *RulesModel) Refresh() tea.Cmd

Refresh refreshes the rules data

func (*RulesModel) SetSize

func (m *RulesModel) SetSize(width, height int)

SetSize sets the view size

func (*RulesModel) Update

func (m *RulesModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*RulesModel) View

func (m *RulesModel) View() string

View renders the rules view

type SignerCreateMsg

type SignerCreateMsg struct {
	Signer  *evm.Signer
	Success bool
	Message string
	Err     error
}

SignerCreateMsg is sent when a signer is created

type SignerDetailModel added in v0.1.0

type SignerDetailModel struct {
	// contains filtered or unexported fields
}

SignerDetailModel represents the signer detail view

func NewSignerDetailModel added in v0.1.0

func NewSignerDetailModel(ctx context.Context) (*SignerDetailModel, error)

NewSignerDetailModel creates a new signer detail model

func (*SignerDetailModel) Init added in v0.1.0

func (m *SignerDetailModel) Init() tea.Cmd

Init initializes the view

func (*SignerDetailModel) IsCapturingInput added in v0.1.0

func (m *SignerDetailModel) IsCapturingInput() bool

IsCapturingInput returns false (read-only view, no forms)

func (*SignerDetailModel) LoadSigner added in v0.1.0

func (m *SignerDetailModel) LoadSigner(signer evm.Signer)

LoadSigner sets the signer data to display (no API call needed)

func (*SignerDetailModel) ResetGoBack added in v0.1.0

func (m *SignerDetailModel) ResetGoBack()

ResetGoBack resets the go back flag

func (*SignerDetailModel) SetSize added in v0.1.0

func (m *SignerDetailModel) SetSize(width, height int)

SetSize sets the view size

func (*SignerDetailModel) ShouldGoBack added in v0.1.0

func (m *SignerDetailModel) ShouldGoBack() bool

ShouldGoBack returns true if the view should go back to the list

func (*SignerDetailModel) Update added in v0.1.0

func (m *SignerDetailModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*SignerDetailModel) View added in v0.1.0

func (m *SignerDetailModel) View() string

View renders the signer detail view

type SignerHDDeriveMsg added in v0.1.0

type SignerHDDeriveMsg struct {
	Derived []evm.SignerInfo
	Success bool
	Message string
	Err     error
}

SignerHDDeriveMsg is sent when an HD wallet derive completes in the signers flow.

type SignerHDWalletListMsg added in v0.1.0

type SignerHDWalletListMsg struct {
	Wallets []evm.HDWalletResponse
	Err     error
}

SignerHDWalletListMsg is sent when HD wallet list is loaded for the derive picker.

type SignerLockMsg added in v0.1.0

type SignerLockMsg struct {
	Signer  *evm.Signer
	Success bool
	Message string
	Err     error
}

SignerLockMsg is sent when a signer lock completes.

type SignerUnlockMsg added in v0.1.0

type SignerUnlockMsg struct {
	Address string // address attempted (for rate limiting)
	Signer  *evm.Signer
	Success bool
	Message string
	Err     error
}

SignerUnlockMsg is sent when a signer unlock completes.

type SignersDataMsg

type SignersDataMsg struct {
	Signers []evm.Signer
	Total   int
	HasMore bool
	Err     error
}

SignersDataMsg is sent when signers data is loaded

type SignersModel

type SignersModel struct {
	// contains filtered or unexported fields
}

SignersModel represents the signers list view

func NewSignersModel

func NewSignersModel(c *client.Client, ctx context.Context) (*SignersModel, error)

NewSignersModel creates a new signers model

func (*SignersModel) GetSelectedSigner added in v0.1.0

func (m *SignersModel) GetSelectedSigner() *evm.Signer

GetSelectedSigner returns the currently selected signer, or nil if none selected.

func (*SignersModel) Init

func (m *SignersModel) Init() tea.Cmd

Init initializes the signers view

func (*SignersModel) IsCapturingInput added in v0.1.0

func (m *SignersModel) IsCapturingInput() bool

IsCapturingInput returns true when this view is capturing keyboard input (form/filter active).

func (*SignersModel) Refresh

func (m *SignersModel) Refresh() tea.Cmd

Refresh refreshes the signers data

func (*SignersModel) SetSize

func (m *SignersModel) SetSize(width, height int)

SetSize sets the view size

func (*SignersModel) Update

func (m *SignersModel) Update(msg tea.Msg) (tea.Model, tea.Cmd)

Update handles messages

func (*SignersModel) View

func (m *SignersModel) View() string

View renders the signers view

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL