domain

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrNotAuthenticated = errors.New("tick auth login is required")

Functions

func ParseUserTime

func ParseUserTime(value string, loc *time.Location) (time.Time, error)

Types

type CreateHabitInput

type CreateHabitInput struct {
	Name       string
	Goal       float64
	Color      string
	IconRes    string
	RepeatRule string
	TargetDays int
	Unit       string
	Step       float64
}

type CreateHabitPayload

type CreateHabitPayload struct {
	Name       string  `json:"name"`
	Goal       float64 `json:"goal"`
	Color      string  `json:"color,omitempty"`
	IconRes    string  `json:"iconRes,omitempty"`
	RepeatRule string  `json:"repeatRule,omitempty"`
	TargetDays int     `json:"targetDays,omitempty"`
	Unit       string  `json:"unit,omitempty"`
	Step       float64 `json:"step,omitempty"`
	Status     int     `json:"status,omitempty"`
	StatusSet  bool
}

type CreateTaskInput

type CreateTaskInput struct {
	ProjectRef  string
	Title       string
	Content     string
	Description string
	StartRaw    string
	DueRaw      string
	AllDay      bool
	Priority    Priority
}

type CreateTaskPayload

type CreateTaskPayload struct {
	ProjectID   string
	Title       string
	Content     string
	Description string
	StartDate   *time.Time
	DueDate     *time.Time
	AllDay      bool
	Priority    Priority
}

type Focus

type Focus struct {
	ID            string      `json:"id"`
	Mode          FocusMode   `json:"mode"`
	Status        FocusStatus `json:"status"`
	Title         string      `json:"title"`
	Content       string      `json:"content"`
	ProjectID     string      `json:"projectId"`
	TaskID        string      `json:"taskId"`
	StartDate     *time.Time  `json:"startDate"`
	EndDate       *time.Time  `json:"endDate"`
	TimeZone      string      `json:"timezone"`
	AbandonReason string      `json:"abandonReason"`
	Tags          []string    `json:"tags"`
	Creators      []string    `json:"creators"`
	SortOrder     int         `json:"sortOrder"`
}

type FocusMode

type FocusMode int
const (
	FocusModeTimer    FocusMode = 1 // 正计时
	FocusModePomodoro FocusMode = 2 // 番茄钟
)

func FocusModeFromAPIType

func FocusModeFromAPIType(t int) FocusMode

func (FocusMode) APIType

func (m FocusMode) APIType() int

func (FocusMode) String

func (m FocusMode) String() string

type FocusStatus

type FocusStatus int
const (
	FocusStatusActive    FocusStatus = 0 // 进行中
	FocusStatusCompleted FocusStatus = 1 // 已完成
)

func (FocusStatus) String

func (s FocusStatus) String() string

type Habit

type Habit struct {
	ID            string      `json:"id"`
	Name          string      `json:"name"`
	Status        HabitStatus `json:"status"`
	Goal          float64     `json:"goal"`
	Color         string      `json:"color"`
	SectionID     string      `json:"sectionId"`
	IconRes       string      `json:"iconRes"`
	Reminders     []string    `json:"reminders"`
	RepeatRule    string      `json:"repeatRule"`
	TargetDays    int         `json:"targetDays"`
	Unit          string      `json:"unit"`
	Step          float64     `json:"step"`
	TotalCheckins int         `json:"totalCheckins"`
	CurrentStreak int         `json:"currentStreak"`
	CreatedTime   *time.Time  `json:"createdTime"`
	ArchivedTime  *time.Time  `json:"archivedTime"`
}

type HabitCheckin

type HabitCheckin struct {
	HabitID string  `json:"habitId"`
	Year    int     `json:"year"`
	Stamp   int     `json:"stamp"`
	Value   float64 `json:"value"`
	Goal    float64 `json:"goal"`
}

type HabitStatus

type HabitStatus int
const (
	HabitStatusActive   HabitStatus = 0
	HabitStatusArchived HabitStatus = 1
)

func (HabitStatus) String

func (s HabitStatus) String() string

type MoveTaskInput

type MoveTaskInput struct {
	Reference      string
	FromProjectRef string
	ToProjectRef   string
}

type Priority

type Priority int
const (
	PriorityNone   Priority = 0
	PriorityLow    Priority = 1
	PriorityMedium Priority = 3
	PriorityHigh   Priority = 5
)

func (Priority) String

func (p Priority) String() string

type Project

type Project struct {
	ID         string `json:"id"`
	Name       string `json:"name"`
	Color      string `json:"color"`
	SortOrder  int64  `json:"sortOrder"`
	Closed     bool   `json:"closed"`
	GroupID    string `json:"groupId"`
	ViewMode   string `json:"viewMode"`
	Permission string `json:"permission"`
	Kind       string `json:"kind"`
}

type ReferenceError

type ReferenceError struct {
	Kind      string
	Reference string
	Matches   []string
}

func (*ReferenceError) Error

func (e *ReferenceError) Error() string

type Task

type Task struct {
	ID            string     `json:"id"`
	ProjectID     string     `json:"projectId"`
	Title         string     `json:"title"`
	Content       string     `json:"content"`
	Description   string     `json:"description"`
	StartDate     *time.Time `json:"startDate"`
	DueDate       *time.Time `json:"dueDate"`
	TimeZone      string     `json:"timeZone"`
	IsAllDay      bool       `json:"isAllDay"`
	Priority      Priority   `json:"priority"`
	Status        TaskStatus `json:"status"`
	Tags          []string   `json:"tags"`
	Kind          string     `json:"kind"`
	CompletedTime *time.Time `json:"completedTime"`
}

type TaskFilter

type TaskFilter struct {
	ProjectIDs []string
	Tags       []string
	Statuses   []TaskStatus
	Priorities []Priority
	Start      *time.Time
	End        *time.Time
}

func (TaskFilter) PriorityCodes

func (f TaskFilter) PriorityCodes() []int

func (TaskFilter) StatusCodes

func (f TaskFilter) StatusCodes() []int

type TaskStatus

type TaskStatus int
const (
	StatusOpen      TaskStatus = 0
	StatusCompleted TaskStatus = 2
)

func (TaskStatus) String

func (s TaskStatus) String() string

type UpdateHabitInput

type UpdateHabitInput struct {
	Reference  string
	Name       string
	Goal       float64
	Color      string
	IconRes    string
	RepeatRule string
	TargetDays int
	Unit       string
	Step       float64
	Status     *HabitStatus
}

type UpdateTaskInput

type UpdateTaskInput struct {
	Reference   string
	ProjectRef  string
	Title       string
	Content     string
	Description string
	StartRaw    string
	DueRaw      string
	AllDay      *bool
	Priority    *Priority
}

Jump to

Keyboard shortcuts

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