v0.14.0 76d1892

interfaces.go RawHistoryFolder

1package db
2
3import (
4	"context"
5	"database/sql"
6)
7
8//go:generate mockgen -source=interfaces.go -destination=mocks/mock_db.go
9
10// ZoomQuerier defines the interface for zoom-related database operations
11type ZoomQuerier interface {
12	GetZoomLevel(ctx context.Context, domain string) (float64, error)
13	SetZoomLevel(ctx context.Context, domain string, zoomLevel float64) error
14	DeleteZoomLevel(ctx context.Context, domain string) error
15	ListZoomLevels(ctx context.Context) ([]ZoomLevel, error)
16}
17
18// HistoryQuerier defines the interface for history-related database operations
19type HistoryQuerier interface {
20	GetHistory(ctx context.Context, limit int64) ([]History, error)
21	GetHistoryEntry(ctx context.Context, url string) (History, error)
22	GetHistoryWithOffset(ctx context.Context, limit int64, offset int64) ([]History, error)
23	SearchHistory(ctx context.Context, column1 sql.NullString, column2 sql.NullString, limit int64) ([]History, error)
24	AddOrUpdateHistory(ctx context.Context, url string, title sql.NullString) error
25	UpdateHistoryFavicon(ctx context.Context, faviconUrl sql.NullString, url string) error
26	DeleteHistory(ctx context.Context, id int64) error
27}
28
29// CertificateQuerier defines the interface for certificate validation-related database operations
30type CertificateQuerier interface {
31	ListCertificateValidations(ctx context.Context) ([]CertificateValidation, error)
32	GetCertificateValidation(ctx context.Context, hostname string, certificateHash string) (CertificateValidation, error)
33	GetCertificateValidationByHostname(ctx context.Context, hostname string) (CertificateValidation, error)
34	StoreCertificateValidation(ctx context.Context, hostname string, certificateHash string, userDecision string, expiresAt sql.NullTime) error
35	DeleteCertificateValidation(ctx context.Context, hostname string, certificateHash string) error
36	DeleteExpiredCertificateValidations(ctx context.Context) error
37}
38
39// FavoritesQuerier defines the interface for favorites-related database operations
40type FavoritesQuerier interface {
41	GetAllFavorites(ctx context.Context) ([]Favorite, error)
42	GetFavoriteByURL(ctx context.Context, url string) (Favorite, error)
43	CreateFavorite(ctx context.Context, url string, title sql.NullString, faviconUrl sql.NullString) error
44	UpdateFavorite(ctx context.Context, title sql.NullString, faviconUrl sql.NullString, url string) error
45	DeleteFavorite(ctx context.Context, url string) error
46	IsFavorite(ctx context.Context, url string) (int64, error)
47	UpdateFavoritePosition(ctx context.Context, position int64, url string) error
48	GetFavoriteCount(ctx context.Context) (int64, error)
49}
50
51// DatabaseQuerier combines all database operation interfaces
52type DatabaseQuerier interface {
53	ZoomQuerier
54	HistoryQuerier
55	CertificateQuerier
56	FavoritesQuerier
57}
58
59// Ensure that *Queries implements DatabaseQuerier interface
60var _ DatabaseQuerier = (*Queries)(nil)

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close