fixup! wip: refactor: API

This commit is contained in:
Rob Watson 2025-05-10 21:18:42 +02:00
parent 116623f386
commit 59b0a060ba
3 changed files with 25 additions and 27 deletions

View File

@ -51,18 +51,16 @@ func run() error {
return fmt.Errorf("read build info: %w", err) return fmt.Errorf("read build info: %w", err)
} }
app := client.NewApp( app := client.New(client.NewParams{
clipboardAvailable, ClipboardAvailable: clipboardAvailable,
domain.BuildInfo{ BuildInfo: domain.BuildInfo{
GoVersion: buildInfo.GoVersion, GoVersion: buildInfo.GoVersion,
Version: version, Version: version,
Commit: commit, Commit: commit,
Date: date, Date: date,
}, },
nil, Logger: logger,
logger, })
)
if err := app.Run(ctx); err != nil { if err := app.Run(ctx); err != nil {
return fmt.Errorf("run app: %w", err) return fmt.Errorf("run app: %w", err)
} }

View File

@ -52,17 +52,16 @@ func buildClientServer(
logger *slog.Logger, logger *slog.Logger,
) (*client.App, *app.App) { ) (*client.App, *app.App) {
buildInfo := domain.BuildInfo{Version: "0.0.1", GoVersion: "go1.16.3"} buildInfo := domain.BuildInfo{Version: "0.0.1", GoVersion: "go1.16.3"}
clientApp := client.NewApp( clientApp := client.New(client.NewParams{
false, BuildInfo: buildInfo,
buildInfo, Screen: &terminal.Screen{
&terminal.Screen{
Screen: screen, Screen: screen,
Width: 160, Width: 160,
Height: 25, Height: 25,
CaptureC: screenCaptureC, CaptureC: screenCaptureC,
}, },
logger, Logger: logger,
) })
// TODO: use buildAppParams // TODO: use buildAppParams
srvApp := app.New(app.Params{ srvApp := app.New(app.Params{

View File

@ -24,21 +24,22 @@ type App struct {
logger *slog.Logger logger *slog.Logger
} }
// NewApp creates a new App instance. // NewParams contains the parameters for the App.
// type NewParams struct {
// TODO: params ClipboardAvailable bool
func NewApp( BuildInfo domain.BuildInfo
clipboardAvailable bool, Screen *terminal.Screen
buildInfo domain.BuildInfo, Logger *slog.Logger
screen *terminal.Screen, }
logger *slog.Logger,
) *App { // New creates a new App instance.
func New(params NewParams) *App {
return &App{ return &App{
bus: event.NewBus(logger), bus: event.NewBus(params.Logger),
clipboardAvailable: clipboardAvailable, clipboardAvailable: params.ClipboardAvailable,
buildInfo: buildInfo, buildInfo: params.BuildInfo,
screen: screen, screen: params.Screen,
logger: logger, logger: params.Logger,
} }
} }