summaryrefslogtreecommitdiff
path: root/internal/actions/actions.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/actions/actions.go')
-rw-r--r--internal/actions/actions.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/internal/actions/actions.go b/internal/actions/actions.go
index 7f707d3..b421047 100644
--- a/internal/actions/actions.go
+++ b/internal/actions/actions.go
@@ -9,8 +9,8 @@ import (
// Actions provides high-level business operations for time tracking
type Actions interface {
// Timer operations
- PunchIn(ctx context.Context, client, project, description string, billableRate *float64) (*TimerSession, error)
- PunchInMostRecent(ctx context.Context, description string, billableRate *float64) (*TimerSession, error)
+ PunchIn(ctx context.Context, client, project, description string, billableRate *float64, autoUnarchive bool) (*TimerSession, error)
+ PunchInMostRecent(ctx context.Context, description string, billableRate *float64, autoUnarchive bool) (*TimerSession, error)
PunchOut(ctx context.Context) (*TimerSession, error)
EditEntry(ctx context.Context, entry queries.TimeEntry) error
@@ -18,11 +18,15 @@ type Actions interface {
CreateClient(ctx context.Context, name, email string, billableRate *float64) (*queries.Client, error)
EditClient(ctx context.Context, id int64, name, email string, billableRate *float64) (*queries.Client, error)
FindClient(ctx context.Context, nameOrID string) (*queries.Client, error)
+ ArchiveClient(ctx context.Context, id int64) error
+ UnarchiveClient(ctx context.Context, id int64) error
// Project operations
CreateProject(ctx context.Context, name, client string, billableRate *float64) (*queries.Project, error)
EditProject(ctx context.Context, id int64, name string, billableRate *float64) (*queries.Project, error)
FindProject(ctx context.Context, nameOrID string) (*queries.Project, error)
+ ArchiveProject(ctx context.Context, id int64) error
+ UnarchiveProject(ctx context.Context, id int64) error
}
// New creates a new Actions instance