domain

package
v0.4.0 Latest Latest
Warning

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

Go to latest
Published: Feb 28, 2026 License: BSD-2-Clause Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CheckboxItem

type CheckboxItem struct {
	Line    int
	Checked bool
	Text    string
	RawLine string
}

CheckboxItem represents a checkbox item in markdown content.

type Goal

type Goal struct {
	// Frontmatter fields
	Status     GoalStatus `yaml:"status"`
	PageType   string     `yaml:"page_type"`
	Theme      string     `yaml:"theme,omitempty"`
	Priority   Priority   `yaml:"priority,omitempty"`
	StartDate  *time.Time `yaml:"start_date,omitempty"`
	TargetDate *time.Time `yaml:"target_date,omitempty"`
	Tags       []string   `yaml:"tags,omitempty"`

	// Metadata
	Name     string         // Filename without extension
	Content  string         // Full markdown content including frontmatter
	FilePath string         // Absolute path to file
	Tasks    []CheckboxItem // Parsed checkbox tasks from content
}

Goal represents a goal in the Obsidian vault with YAML frontmatter.

type GoalID

type GoalID string

GoalID represents a goal identifier (filename without .md extension).

func (GoalID) String

func (g GoalID) String() string

type GoalStatus

type GoalStatus string

GoalStatus represents the status of a goal.

const (
	GoalStatusActive    GoalStatus = "active"
	GoalStatusCompleted GoalStatus = "completed"
	GoalStatusOnHold    GoalStatus = "on_hold"
)

type Priority added in v0.4.0

type Priority int

Priority represents a task priority value. Valid values are integers >= 0, or -1 for invalid/unparseable values.

func (*Priority) UnmarshalYAML added in v0.4.0

func (p *Priority) UnmarshalYAML(value *yaml.Node) error

UnmarshalYAML implements custom YAML unmarshaling for Priority. If the value is a valid int, use it. Otherwise, set to -1 (invalid). This makes priority parsing non-fatal - files with string priority values won't cause YAML unmarshal to fail.

type Task

type Task struct {
	// Frontmatter fields
	Status    TaskStatus `yaml:"status"`
	PageType  string     `yaml:"page_type"`
	Goals     []string   `yaml:"goals,omitempty"`
	Priority  Priority   `yaml:"priority,omitempty"`
	Assignee  string     `yaml:"assignee,omitempty"`
	DeferDate *time.Time `yaml:"defer_date,omitempty"`
	Tags      []string   `yaml:"tags,omitempty"`

	// Metadata
	Name     string // Filename without extension
	Content  string // Full markdown content including frontmatter
	FilePath string // Absolute path to file
}

Task represents a task in the Obsidian vault with YAML frontmatter.

type TaskID

type TaskID string

TaskID represents a task identifier (filename without .md extension).

func (TaskID) String

func (t TaskID) String() string

type TaskStatus

type TaskStatus string

TaskStatus represents the status of a task.

const (
	TaskStatusTodo       TaskStatus = "todo"
	TaskStatusInProgress TaskStatus = "in_progress"
	TaskStatusDone       TaskStatus = "done"
	TaskStatusDeferred   TaskStatus = "deferred"
)

type Theme

type Theme struct {
	// Frontmatter fields
	Status     ThemeStatus `yaml:"status"`
	PageType   string      `yaml:"page_type"`
	Priority   Priority    `yaml:"priority,omitempty"`
	StartDate  *time.Time  `yaml:"start_date,omitempty"`
	TargetDate *time.Time  `yaml:"target_date,omitempty"`
	Tags       []string    `yaml:"tags,omitempty"`

	// Metadata
	Name     string // Filename without extension
	Content  string // Full markdown content including frontmatter
	FilePath string // Absolute path to file
}

Theme represents a theme in the Obsidian vault with YAML frontmatter.

type ThemeID

type ThemeID string

ThemeID represents a theme identifier (filename without .md extension).

func (ThemeID) String

func (t ThemeID) String() string

type ThemeStatus

type ThemeStatus string

ThemeStatus represents the status of a theme.

const (
	ThemeStatusActive    ThemeStatus = "active"
	ThemeStatusCompleted ThemeStatus = "completed"
	ThemeStatusArchived  ThemeStatus = "archived"
)

Jump to

Keyboard shortcuts

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