pages

package
v0.99.0 Latest Latest
Warning

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

Go to latest
Published: Aug 14, 2026 License: GPL-3.0 Imports: 20 Imported by: 0

Documentation

Overview

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

Package pages provides full-page Templ views.

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

templ: version: v0.3.1020

Index

Constants

View Source
const (
	LifeHistoryAnchor        = "life-history"
	LifeHistoryTabCompleted  = "completed"
	LifeHistoryTabActionLogs = "logs"
)

History section anchor and tab ids on the Life quests page.

View Source
const (
	LifeRewardsArchiveAnchor  = "life-rewards-archive"
	LifeRewardsTabRedemptions = "redemptions"
	LifeRewardsTabDeactivated = "deactivated"
)

Archive section anchor and tab ids on the Life rewards page.

View Source
const LifeBackpackAnchor = "life-backpack"

LifeBackpackAnchor is the backpack section fragment on the inventory page.

View Source
const LifeDefaultListPerPage = 10

LifeDefaultListPerPage is the default page size for Life list sections.

Variables

This section is empty.

Functions

func AboutPage added in v0.98.3

func AboutPage(data AboutData) templ.Component

func AccountSecurityPage added in v0.99.0

func AccountSecurityPage(username string, totpEnabled bool, backupRemaining int, flash string, errorMsg string, csrfToken string) templ.Component

func AgentChatPage added in v0.95.0

func AgentChatPage(session model.AgentSession, messages []model.AgentChatMessage, todos []model.AgentTodo, endpoints partials.ChatAgentEndpoints, pending *partials.ChatAgentPendingConfirm) templ.Component

func AgentKnowledgePage added in v0.98.1

func AgentKnowledgePage(items []model.AgentKnowledge, q string) templ.Component

func AgentMemoryPage added in v0.98.1

func AgentMemoryPage(items []model.AgentMemoryFact, scope string) templ.Component

func AgentScheduledTaskDetailPage added in v0.95.0

func AgentScheduledTaskDetailPage(task model.AgentScheduledTask, runs []model.AgentScheduledTaskRun) templ.Component

func AgentScheduledTasksPage added in v0.95.0

func AgentScheduledTasksPage(items []model.AgentScheduledTask) templ.Component

func AgentSessionDetailPage added in v0.93.0

func AgentSessionDetailPage(session model.AgentSession, entries []model.AgentSessionEntry, plans []model.AgentPlan, todos []model.AgentTodo, pending *partials.ChatAgentPendingConfirm) templ.Component

func AgentSessionSummariesPage added in v0.98.1

func AgentSessionSummariesPage(items []model.AgentSessionSummary, q string) templ.Component

func AgentSessionsPage added in v0.93.0

func AgentSessionsPage(items []model.AgentSession, nextCursor string) templ.Component

func AgentSkillsPage added in v0.93.0

func AgentSkillsPage(items []model.AgentSkill) templ.Component

func AgentSubagentsPage added in v0.93.0

func AgentSubagentsPage(items []model.AgentSubagent) templ.Component

func AgentsPage added in v0.95.0

func AgentsPage(items []model.AgentSession, nextCursor string, endpoints partials.ChatAgentEndpoints, chatEnabled bool) templ.Component

func BackupCodesAckPage added in v0.99.0

func BackupCodesAckPage(csrfToken string) templ.Component

func BackupCodesPage added in v0.99.0

func BackupCodesPage(codes []string, csrfToken string) templ.Component

func CapabilitiesPage

func CapabilitiesPage(descriptors []hub.Descriptor, types []string, providers []string) templ.Component

func ChatAgentPermissionsPage added in v0.93.0

func ChatAgentPermissionsPage(data partials.PermissionFormPageData) templ.Component

func ClipPage added in v0.97.0

func ClipPage(d ClipPageData) templ.Component

ClipPage renders a shareable markdown clip with gated body for anonymous visitors.

func ClipsPage added in v0.97.0

func ClipsPage(items []partials.ClipListItem) templ.Component

func ConfigsPage

func ConfigsPage(items []model.ConfigItem) templ.Component

func Enroll2FAPage added in v0.99.0

func Enroll2FAPage(secret string, otpauthURI string, errorMsg string, csrfToken string) templ.Component

func EventsPage

func EventsPage(p EventsPageParams) templ.Component

func FunctionEditorPage added in v0.99.0

func FunctionEditorPage(draft partials.FunctionDraftData) templ.Component

func FunctionListPage added in v0.99.0

func FunctionListPage(entries []partials.FunctionListEntry) templ.Component

func HealthzPage

func HealthzPage(data partials.HealthzData) templ.Component

func HomelabDetailPage

func HomelabDetailPage(app homelab.App, status homelab.AppStatus, version string, scannedAt string) templ.Component

func HomelabDetailStatusBadge

func HomelabDetailStatusBadge(status homelab.AppStatus) templ.Component

func HomelabPage

func HomelabPage(apps []homelab.App, scannedAt string) templ.Component

func HubAppDetailPage

func HubAppDetailPage(app homelab.App, status homelab.AppStatus, permissions homelab.Permissions) templ.Component

func HubAppStatusBadge

func HubAppStatusBadge(status homelab.AppStatus) templ.Component

func HubAppsPage

func HubAppsPage(apps []homelab.App, updatedAts map[string]string) templ.Component

func InboxPage added in v0.99.0

func InboxPage(filter string) templ.Component

InboxPage renders the user notification inbox.

func LifeAchievementsPage added in v0.99.0

func LifeAchievementsPage(data LifeAchievementsData) templ.Component

func LifeActionLogSourceLabel added in v0.99.0

func LifeActionLogSourceLabel(sourceType string) string

LifeActionLogSourceLabel returns a concise label for one audit source.

func LifeCharacterPage added in v0.99.0

func LifeCharacterPage(data LifeCharacterData) templ.Component

func LifeClassStrength added in v0.99.0

func LifeClassStrength(classType string) string

LifeClassStrength maps class to a strength label.

func LifeClassWeakness added in v0.99.0

func LifeClassWeakness(classType string) string

LifeClassWeakness maps class to a mild weakness label.

func LifeDashboardPage added in v0.99.0

func LifeDashboardPage(data LifeCharacterData) templ.Component

func LifeDisplayName added in v0.99.0

func LifeDisplayName(nickname, uid string) string

LifeDisplayName picks a short display name from nickname or uid.

func LifeFormatBuffText added in v0.99.0

func LifeFormatBuffText(statBuffs map[string]any) string

LifeFormatBuffText formats equipment stat buffs for UI chips.

func LifeFormatPerkText added in v0.99.0

func LifeFormatPerkText(privileges map[string]any) string

LifeFormatPerkText formats AI unlocked privileges for UI chips.

func LifeGoalGroupTestID added in v0.99.0

func LifeGoalGroupTestID(group LifeGoalGroup) string

LifeGoalGroupTestID returns a stable test id for a goals group section.

func LifeGoalStatusClass added in v0.99.0

func LifeGoalStatusClass(status string) string

LifeGoalStatusClass maps goal status to a life-meta-chip modifier.

func LifeGoalsPage added in v0.99.0

func LifeGoalsPage(data LifeGoalsData) templ.Component

func LifeHPFromStats added in v0.99.0

func LifeHPFromStats(stats []LifeStatRow, profileLevel int) (current, maxHP, heartsFilled, heartsTotal int)

LifeHPFromStats derives a soft HP pool from Willpower (or average level).

func LifeHistoryTabClass added in v0.99.0

func LifeHistoryTabClass(activeTab, tab string) string

LifeHistoryTabClass returns the CSS class for one history tab control.

func LifeIndentStyle added in v0.99.0

func LifeIndentStyle(depth int) string

LifeIndentStyle returns a simple indent style for tree rows.

func LifeInventoryListURL added in v0.99.0

func LifeInventoryListURL(backpackPage int, anchor string) string

LifeInventoryListURL builds the inventory page URL with optional backpack page and fragment.

func LifeInventoryPage added in v0.99.0

func LifeInventoryPage(data LifeInventoryData) templ.Component

func LifeMarshalRadar added in v0.99.0

func LifeMarshalRadar(stats []LifeStatRow) (labelsJSON, valuesJSON string)

LifeMarshalRadar encodes radar chart labels/values as JSON arrays.

func LifeNormalizeHistoryTab added in v0.99.0

func LifeNormalizeHistoryTab(tab string) string

LifeNormalizeHistoryTab returns a valid history tab id.

func LifeNormalizeRewardsArchiveTab added in v0.99.0

func LifeNormalizeRewardsArchiveTab(tab string) string

LifeNormalizeRewardsArchiveTab returns a valid rewards archive tab id.

func LifeOccurrenceKindLabel added in v0.99.0

func LifeOccurrenceKindLabel(kind string) string

LifeOccurrenceKindLabel returns a human label for one occurrence kind.

func LifePlanNodeTypeLabel added in v0.99.0

func LifePlanNodeTypeLabel(nodeType string) string

LifePlanNodeTypeLabel returns a human label for one node type.

func LifePlanPage added in v0.99.0

func LifePlanPage(data LifePlanData) templ.Component

func LifeQuestsListURL added in v0.99.0

func LifeQuestsListURL(completedPage, logsPage int, tab, anchor string) string

LifeQuestsListURL builds the quests page URL with optional page/tab query params and fragment.

func LifeQuestsPage added in v0.99.0

func LifeQuestsPage(data LifeQuestsData) templ.Component

func LifeRarityClass added in v0.99.0

func LifeRarityClass(rarity string) string

LifeRarityClass maps equipment rarity to a CSS modifier class.

func LifeRewardsArchiveTabClass added in v0.99.0

func LifeRewardsArchiveTabClass(activeTab, tab string) string

LifeRewardsArchiveTabClass returns the CSS class for one rewards archive tab control.

func LifeRewardsListURL added in v0.99.0

func LifeRewardsListURL(redemptionsPage, inactivePage int, tab, anchor string) string

LifeRewardsListURL builds the rewards page URL with optional page/tab query params and fragment.

func LifeRewardsPage added in v0.99.0

func LifeRewardsPage(data LifeRewardsData) templ.Component

func LifeSegmentIndexes added in v0.99.0

func LifeSegmentIndexes(n int) []int

LifeSegmentIndexes returns 0..n-1 for templ loops.

func LifeSkillMonogram added in v0.99.0

func LifeSkillMonogram(title string) string

LifeSkillMonogram returns a short badge label for one skill node title.

func LifeSkillStatusClass added in v0.99.0

func LifeSkillStatusClass(status string) string

LifeSkillStatusClass maps skill activity status to a chip modifier class.

func LifeSkillTreeBranchOpen added in v0.99.0

func LifeSkillTreeBranchOpen(node LifeSkillTreeNodeRow) bool

LifeSkillTreeBranchOpen reports whether a skill-tree branch should start expanded so the path to a selected descendant stays visible.

func LifeSkillsPage added in v0.99.0

func LifeSkillsPage(data LifeSkillTreeData) templ.Component

func LifeSlotRarityClass added in v0.99.0

func LifeSlotRarityClass(slot LifeEquipSlot) string

LifeSlotRarityClass returns the rarity CSS class for a filled equip slot.

func LifeStatsPage added in v0.99.0

func LifeStatsPage(data LifeStatsShellData) templ.Component

func LifeTaskTypeLabel added in v0.99.0

func LifeTaskTypeLabel(taskType string) string

LifeTaskTypeLabel returns a concise label for one action type.

func LifeVerdictChipClass added in v0.99.0

func LifeVerdictChipClass(verdict string) string

LifeVerdictChipClass maps an adjudication verdict to a meta-chip modifier.

func Login2FAForm added in v0.99.0

func Login2FAForm(nextURL string, errorMsg string, csrfToken string) templ.Component

func Login2FAPage added in v0.99.0

func Login2FAPage(nextURL string, errorMsg string, csrfToken string) templ.Component

func LoginForm

func LoginForm(nextURL string, errorMsg string, csrfToken string) templ.Component

LoginForm renders the login form without the base layout. Used for HTMX responses where only the form fragment should be swapped. csrfToken is embedded so login works even when JS cannot attach X-CSRF-Token (common behind Cloudflare Rocket Loader / WAF).

func LoginPage

func LoginPage(nextURL string, errorMsg string, csrfToken string) templ.Component

func NotifySettingsPage

func NotifySettingsPage(activeTab, focusChannel, focusRuleID string) templ.Component

NotifySettingsPage renders the Notifications page with channels, templates, rules, history, and playground tabs. activeTab selects the initial tab: channels (default), templates, rules, history, or playground. focusChannel / focusRuleID deep-link highlight a row after jumping from History.

func PipelineEditorPage

func PipelineEditorPage(name string) templ.Component

func PipelineListPage

func PipelineListPage(entries []partials.PipelineListEntry) templ.Component

func PipelineRunLivePage

func PipelineRunLivePage(p PipelineRunLiveParams) templ.Component

PipelineRunLivePage renders the live run dashboard.

func PipelineRunsPage

func PipelineRunsPage(name string, runs []model.PipelineRun) templ.Component

func RegeneratedBackupCodesPage added in v0.99.0

func RegeneratedBackupCodesPage(codes []string) templ.Component

func RelationsPage

func RelationsPage(p RelationsPageParams) templ.Component

func SettingsPage added in v0.99.0

func SettingsPage(data SettingsPageData) templ.Component

func SetupForm added in v0.99.0

func SetupForm(errorMsg string, csrfToken string) templ.Component

func SetupPage added in v0.99.0

func SetupPage(errorMsg string, csrfToken string) templ.Component

func TokensPage

func TokensPage(items []model.TokenItem) templ.Component

func ViewPage

func ViewPage(title string, body templ.Component, expired bool) templ.Component

func WorkflowDetailPage added in v0.98.0

func WorkflowDetailPage(meta *types.WorkflowMetadata, triggers []model.WorkflowTrigger, recentRuns []model.WorkflowRun, yamlText string, publicOrigin string) templ.Component

func WorkflowListPage added in v0.98.0

func WorkflowListPage(entries []partials.WorkflowListEntry) templ.Component

func WorkflowRunsPage added in v0.98.0

func WorkflowRunsPage(name string, runs []model.WorkflowRun) templ.Component

Types

type AboutData added in v0.98.3

type AboutData struct {
	Version    string
	Buildstamp string
	GoVersion  string
	Platform   string
}

AboutData holds version and build metadata for the About page.

type ClipPageData added in v0.97.0

type ClipPageData struct {
	// Slug is the public short identifier.
	Slug string
	// Title is the display and Open Graph title.
	Title string
	// Description is the preview text for meta tags and gated view.
	Description string
	// CreatedAt is when the clip was created.
	CreatedAt time.Time
	// WordCount is a rough word count of the markdown body.
	WordCount int
	// Authed is true when the visitor has a valid web session cookie.
	Authed bool
	// BodyHTML is sanitized HTML rendered from markdown (authed only).
	BodyHTML string
	// ContentMD is the raw markdown used by Copy MD.
	ContentMD string
	// LoginURL is the web login URL with next redirect.
	LoginURL string
	// NotFound marks a missing clip.
	NotFound bool
}

ClipPageData carries fields for the clip reader page.

type EventsPageParams

type EventsPageParams struct {
	Sources       []string
	EventTypes    []string
	PipelineNames []string
}

type LifeAchievementRow added in v0.99.0

type LifeAchievementRow struct {
	Flag         string
	Name         string
	Description  string
	Unlocked     bool
	UnlockedAt   string
	ShowProgress bool
	Current      int
	Target       int
	Retired      bool
}

LifeAchievementRow is one memorial achievement on the achievements page.

type LifeAchievementsData added in v0.99.0

type LifeAchievementsData struct {
	Items         []LifeAchievementRow
	UnlockedCount int
	PendingCount  int
}

LifeAchievementsData is the achievements page model.

type LifeActionLogRow added in v0.99.0

type LifeActionLogRow struct {
	Flag       string
	SourceType string
	QuestTitle string
	GainedExp  int
	GainedGold int
	Dice       float64
	HasDice    bool
	Dropped    bool
	When       string
}

LifeActionLogRow is one completion audit row.

type LifeBreakdownPreviewData added in v0.99.0

type LifeBreakdownPreviewData struct {
	RootTitle   string
	Description string
	PayloadJSON string
	Tree        *LifeBreakdownSuggestionRow
}

LifeBreakdownPreviewData is the UI state for an AI suggestion preview.

type LifeBreakdownSuggestionRow added in v0.99.0

type LifeBreakdownSuggestionRow struct {
	NodeType         string
	Title            string
	Description      string
	TaskType         string
	SuggestedCadence string
	Difficulty       string
	Exp              int
	Gold             int
	Children         []LifeBreakdownSuggestionRow
}

LifeBreakdownSuggestionRow is one suggested AI tree node.

type LifeCharacterData added in v0.99.0

type LifeCharacterData struct {
	Nickname         string
	ClassType        string
	Level            int
	Exp              int64
	ExpToNext        int64
	LevelFilledSegs  int
	LevelTotalSegs   int
	Gold             int
	HPCurrent        int
	HPMax            int
	HeartsFilled     int
	HeartsTotal      int
	MasterObjective  string
	MinorObjective   string
	Strength         string
	Weakness         string
	Characteristics  []LifeStatRow
	Skills           []LifeSkillRow
	DropRateBonus    float64
	GoldMult         float64
	PendingCount     int
	RadarLabelsJSON  string
	RadarValuesJSON  string
	ShowClassForm    bool
	Goals            []LifeGoalRow
	PlanTree         []LifePlanNodeRow
	PlanParents      []LifePlanParentOption
	BreakdownPreview *LifeBreakdownPreviewData
}

LifeCharacterData is the Life character / dashboard page model.

type LifeDashboardData added in v0.99.0

type LifeDashboardData = LifeCharacterData

LifeDashboardData is the Life home dashboard model.

type LifeEquipSlot added in v0.99.0

type LifeEquipSlot struct {
	Label     string
	SlotField string
	Item      *LifeInventoryRow
}

LifeEquipSlot is one wear-position cell on the inventory equipment board.

func LifeBuildEquipSlots added in v0.99.0

func LifeBuildEquipSlots(items []LifeInventoryRow) []LifeEquipSlot

LifeBuildEquipSlots builds the six wear-position cells from backpack rows. Empty positions keep a labeled empty cell; equipped items fill their slot.

type LifeGoalGroup added in v0.99.0

type LifeGoalGroup struct {
	Area     *LifeGoalRow
	Children []LifeGoalRow
}

LifeGoalGroup is one Area section (or the ungrouped section when Area is nil).

func LifeGroupGoals added in v0.99.0

func LifeGroupGoals(goals []LifeGoalRow) []LifeGoalGroup

LifeGroupGoals groups Project/Resource rows under their Area; ungrouped items follow.

type LifeGoalRow added in v0.99.0

type LifeGoalRow struct {
	Flag      string
	Title     string
	Category  string
	Status    string
	AreaFlag  string
	AreaTitle string
}

LifeGoalRow is one PARA goal for Goals / Quests UI.

func LifeGoalAreaOptions added in v0.99.0

func LifeGoalAreaOptions(active []LifeGoalRow, currentFlag, currentTitle string) []LifeGoalRow

LifeGoalAreaOptions returns Active Areas for a picker, keeping the current Area if missing.

type LifeGoalsData added in v0.99.0

type LifeGoalsData struct {
	Goals         []LifeGoalRow
	Groups        []LifeGoalGroup
	ActiveAreas   []LifeGoalRow
	DropRateBonus float64
	GoldMult      float64
	PendingCount  int
}

LifeGoalsData is the Goals page model.

type LifeInventoryData added in v0.99.0

type LifeInventoryData struct {
	Slots        []LifeEquipSlot
	Items        []LifeInventoryRow
	BackpackPage LifePageInfo
	PendingCount int
}

LifeInventoryData is the inventory page model.

type LifeInventoryRow added in v0.99.0

type LifeInventoryRow struct {
	Flag       string
	Name       string
	Rarity     string
	Slot       string
	SlotField  string
	BuffText   string
	PerkText   string
	Lore       string
	LoreStatus string
	Equipped   bool
	Tarnished  bool
}

LifeInventoryRow is one backpack row.

type LifePageInfo added in v0.99.0

type LifePageInfo struct {
	Page       int
	PerPage    int
	Total      int
	TotalPages int
	HasPrev    bool
	HasNext    bool
	PrevURL    string
	NextURL    string
}

LifePageInfo holds pagination state for one Life list section.

func LifeBuildPageInfo added in v0.99.0

func LifeBuildPageInfo(page, perPage, total int) LifePageInfo

LifeBuildPageInfo builds pagination state for a list section.

func LifeWithActionLogsPager added in v0.99.0

func LifeWithActionLogsPager(info LifePageInfo, completedPage int) LifePageInfo

LifeWithActionLogsPager attaches prev/next URLs for the action log tab.

func LifeWithBackpackPager added in v0.99.0

func LifeWithBackpackPager(info LifePageInfo) LifePageInfo

LifeWithBackpackPager attaches prev/next URLs for the backpack section.

func LifeWithCompletedPager added in v0.99.0

func LifeWithCompletedPager(info LifePageInfo, logsPage int) LifePageInfo

LifeWithCompletedPager attaches prev/next URLs for the completed quests tab.

func LifeWithInactiveRewardsPager added in v0.99.0

func LifeWithInactiveRewardsPager(info LifePageInfo, redemptionsPage int) LifePageInfo

LifeWithInactiveRewardsPager attaches prev/next URLs for the deactivated tab.

func LifeWithRedemptionsPager added in v0.99.0

func LifeWithRedemptionsPager(info LifePageInfo, inactivePage int) LifePageInfo

LifeWithRedemptionsPager attaches prev/next URLs for the redemptions tab.

type LifePlanData added in v0.99.0

type LifePlanData struct {
	PlanTree         []LifePlanNodeRow
	PlanParents      []LifePlanParentOption
	BreakdownPreview *LifeBreakdownPreviewData
	PendingCount     int
}

LifePlanData is the Plan Tree page model.

type LifePlanNodeRow added in v0.99.0

type LifePlanNodeRow struct {
	Flag              string
	ParentFlag        string
	NodeType          string
	Title             string
	Description       string
	Status            string
	TaskType          string
	TrackingMode      string
	SuggestedCadence  string
	Difficulty        string
	Exp               int
	Gold              int
	NeedsConfirmation bool
	Children          []LifePlanNodeRow
}

LifePlanNodeRow is one rendered plan node.

type LifePlanParentOption added in v0.99.0

type LifePlanParentOption struct {
	Flag      string
	Label     string
	NodeType  string
	Depth     int
	AllowText string
}

LifePlanParentOption is one valid parent choice in the create form.

type LifeQuestAdjudicationRow added in v0.99.0

type LifeQuestAdjudicationRow struct {
	Flag               string
	Status             string
	Verdict            string
	Reason             string
	SuggestedExp       int
	SuggestedGold      int
	SuggestedNextSteps []string
	When               string
}

LifeQuestAdjudicationRow is one AI ruling shown on the quests page.

type LifeQuestEvidenceRow added in v0.99.0

type LifeQuestEvidenceRow struct {
	Flag       string
	SourceType string
	Content    string
	SourceURL  string
	Summary    string
	When       string
}

LifeQuestEvidenceRow is one submitted evidence item.

type LifeQuestRow added in v0.99.0

type LifeQuestRow struct {
	Flag         string
	Title        string
	Prompt       string
	Type         string
	Difficulty   string
	Fear         int
	Exp          int
	Gold         int
	DropTier     string
	DropChance   float64
	Status       string
	Evidence     []LifeQuestEvidenceRow
	Adjudication *LifeQuestAdjudicationRow
}

LifeQuestRow is one quest list row.

type LifeQuestsData added in v0.99.0

type LifeQuestsData struct {
	Pending        []LifeQuestRow
	Completed      []LifeQuestRow
	Goals          []LifeGoalRow
	TodayActions   []LifeTodayActionRow
	TodayHabits    []LifeTodayHabitRow
	ActionLogs     []LifeActionLogRow
	CompletedPage  LifePageInfo
	ActionLogsPage LifePageInfo
	HistoryTab     string
	PendingCount   int
}

LifeQuestsData is the quests page model.

type LifeRedemptionRow added in v0.99.0

type LifeRedemptionRow struct {
	Flag       string
	RewardName string
	PricePaid  int
	RedeemedAt string
}

LifeRedemptionRow is one redemption history entry.

type LifeRewardRow added in v0.99.0

type LifeRewardRow struct {
	Flag           string
	Name           string
	Notes          string
	Price          int
	CooldownHours  int
	OnCooldown     bool
	CooldownEndsAt string
	CanAfford      bool
	CanRedeem      bool
}

LifeRewardRow is one player-defined reward on the Rewards page.

type LifeRewardsData added in v0.99.0

type LifeRewardsData struct {
	Gold            int
	Active          []LifeRewardRow
	Inactive        []LifeRewardRow
	Redemptions     []LifeRedemptionRow
	RedemptionsPage LifePageInfo
	InactivePage    LifePageInfo
	ArchiveTab      string
	PendingCount    int
}

LifeRewardsData is the Rewards market page model.

type LifeSkillEvidenceRow added in v0.99.0

type LifeSkillEvidenceRow struct {
	Title      string
	SourceType string
	Detail     string
	When       string
}

LifeSkillEvidenceRow is one recent training record linked to a tree node.

type LifeSkillRow added in v0.99.0

type LifeSkillRow struct {
	Name  string
	Level int
	Exp   int64
}

LifeSkillRow is one skill row.

type LifeSkillTreeData added in v0.99.0

type LifeSkillTreeData struct {
	PendingCount     int
	Roots            []LifeSkillTreeNodeRow
	SelectedNode     *LifeSkillTreeNodeDetail
	ActiveLeafCount  int
	TrackedLeafCount int
}

LifeSkillTreeData is the skills tree page model.

type LifeSkillTreeNodeDetail added in v0.99.0

type LifeSkillTreeNodeDetail struct {
	Title             string
	Subtitle          string
	Status            string
	PracticeCount     int
	SkillCount        int
	LastActivityLabel string
	Evidence          []LifeSkillEvidenceRow
}

LifeSkillTreeNodeDetail is the evidence panel for one selected node.

type LifeSkillTreeNodeRow added in v0.99.0

type LifeSkillTreeNodeRow struct {
	Key               string
	Title             string
	Subtitle          string
	Status            string
	PracticeCount     int
	SkillCount        int
	LastActivityLabel string
	IsSelected        bool
	Children          []LifeSkillTreeNodeRow
}

LifeSkillTreeNodeRow is one rendered tree node.

type LifeStatRow added in v0.99.0

type LifeStatRow struct {
	Code       string
	Name       string
	Level      int
	Exp        int64
	ExpToNext  int64
	FilledSegs int
	TotalSegs  int
	RadarValue float64
}

LifeStatRow is one characteristic row with progress for segmented bars.

func LifeBuildStatRow added in v0.99.0

func LifeBuildStatRow(code, name string, level int, exp int64) LifeStatRow

LifeBuildStatRow builds a characteristic row with segment fill. Bar fill and "exp / need" are within the current level (levels have no cap). RadarValue is absolute progress (level + in-level fraction) with no upper bound.

type LifeStatsShellData added in v0.99.0

type LifeStatsShellData struct {
	PendingCount int
}

LifeStatsShellData is the Stats page shell before the HTMX panel loads.

type LifeTodayActionRow added in v0.99.0

type LifeTodayActionRow struct {
	Flag             string
	Title            string
	NodeFlag         string
	ContextPath      string
	Description      string
	Kind             string
	State            string
	DueLabel         string
	TaskType         string
	TrackingMode     string
	SuggestedCadence string
	Difficulty       string
	Exp              int
	Gold             int
}

LifeTodayActionRow is one pending todo/recurring occurrence.

type LifeTodayHabitRow added in v0.99.0

type LifeTodayHabitRow struct {
	NodeFlag         string
	Title            string
	CheckedIn        bool
	TaskType         string
	SuggestedCadence string
}

LifeTodayHabitRow is one habit plus today check-in state.

type PipelineRunLiveParams

type PipelineRunLiveParams struct {
	RunID        int64
	PipelineName string
	Trigger      string
	TotalSteps   int
	RunStatus    string
	Steps        []StepState
}

PipelineRunLiveParams holds all data for the live dashboard page.

type RelationsPageParams

type RelationsPageParams struct {
	Query    string
	Pipeline string
	Since    string
}

type SettingsPageData added in v0.99.0

type SettingsPageData struct {
	Sections []SettingsSection
}

SettingsPageData holds redacted runtime config sections for the Settings page.

func NewSettingsPageData added in v0.99.0

func NewSettingsPageData(groups []config.SettingGroup) SettingsPageData

NewSettingsPageData maps a config settings catalog into page view models.

type SettingsRow added in v0.99.0

type SettingsRow struct {
	Path        string
	Value       string
	Description string
	Sensitive   bool
	FilterText  string
	ValueKind   SettingsValueKind
}

SettingsRow is one display row on the Runtime Settings page.

type SettingsSection added in v0.99.0

type SettingsSection struct {
	Name    string
	Title   string
	Entries []SettingsRow
}

SettingsSection is a top-level group of settings rows.

type SettingsValueKind added in v0.99.0

type SettingsValueKind string

SettingsValueKind selects how a settings value cell is rendered.

const (
	// SettingsValueText is a plain scalar value.
	SettingsValueText SettingsValueKind = "text"
	// SettingsValueSecret is a redacted secret.
	SettingsValueSecret SettingsValueKind = "secret"
	// SettingsValueEmpty is an empty or unset placeholder.
	SettingsValueEmpty SettingsValueKind = "empty"
	// SettingsValueCode is JSON / multi-line structured text.
	SettingsValueCode SettingsValueKind = "code"
)

type StepState

type StepState struct {
	Name      string         `json:"name"`
	Status    string         `json:"status"`
	ElapsedMs int64          `json:"elapsed_ms"`
	Output    map[string]any `json:"output"`
	Error     string         `json:"error"`
	Input     map[string]any `json:"input"`
}

StepState represents the initial state of one pipeline step for Alpine.js.

Jump to

Keyboard shortcuts

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