types

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ActionEventKind

type ActionEventKind string

ActionEventKind enumerates the kinds of structural changes that can be recorded against an Action. Used by ActionEvent to render an audit / change-history feed in the WebUI.

const (
	ActionEventCreated          ActionEventKind = "CREATED"
	ActionEventTitleChanged     ActionEventKind = "TITLE_CHANGED"
	ActionEventStatusChanged    ActionEventKind = "STATUS_CHANGED"
	ActionEventAssigneeChanged  ActionEventKind = "ASSIGNEE_CHANGED"
	ActionEventArchived         ActionEventKind = "ARCHIVED"
	ActionEventUnarchived       ActionEventKind = "UNARCHIVED"
	ActionEventStepAdded        ActionEventKind = "STEP_ADDED"
	ActionEventStepRemoved      ActionEventKind = "STEP_REMOVED"
	ActionEventStepDone         ActionEventKind = "STEP_DONE"
	ActionEventStepReopened     ActionEventKind = "STEP_REOPENED"
	ActionEventStepTitleChanged ActionEventKind = "STEP_TITLE_CHANGED"
)

func (ActionEventKind) IsValid

func (k ActionEventKind) IsValid() bool

func (ActionEventKind) String

func (k ActionEventKind) String() string

type ActionStatus

type ActionStatus string

ActionStatus is the persisted identifier of an Action status. The set of allowed values is no longer fixed at the type layer: it is defined per workspace via TOML configuration and resolved through `pkg/domain/model.ActionStatusSet`. The legacy constants below are kept only as the IDs of the default fallback set so that existing data written before configurable statuses (`"BACKLOG"`, `"TODO"`, ...) keeps working.

const (
	ActionStatusBacklog    ActionStatus = "BACKLOG"
	ActionStatusTodo       ActionStatus = "TODO"
	ActionStatusInProgress ActionStatus = "IN_PROGRESS"
	ActionStatusBlocked    ActionStatus = "BLOCKED"
	ActionStatusCompleted  ActionStatus = "COMPLETED"
)

func (ActionStatus) String

func (s ActionStatus) String() string

String returns the underlying string value.

type CaseStatus

type CaseStatus string

CaseStatus represents the lifecycle state of a case.

Lifecycle: DRAFT → OPEN → CLOSED (CLOSED can return to OPEN via reopenCase). DRAFT can only transition to OPEN (via SubmitDraft) or be deleted entirely (via DiscardDraft); it never goes directly to CLOSED.

const (
	// CaseStatusDraft marks a case that has been saved from an in-progress
	// "Save as Draft" action on the Slack creation modal. Drafts are visible
	// only to their author, do not receive Slack channel binding or
	// notification side effects, and are excluded from default case listings.
	CaseStatusDraft  CaseStatus = "DRAFT"
	CaseStatusOpen   CaseStatus = "OPEN"
	CaseStatusClosed CaseStatus = "CLOSED"
)

func AllCaseStatuses

func AllCaseStatuses() []CaseStatus

AllCaseStatuses returns all valid case statuses.

func ParseCaseStatus

func ParseCaseStatus(s string) (CaseStatus, error)

ParseCaseStatus parses a string into a CaseStatus.

func (CaseStatus) IsDraft

func (s CaseStatus) IsDraft() bool

IsDraft reports whether the case is in the unsubmitted draft state.

func (CaseStatus) IsValid

func (s CaseStatus) IsValid() bool

IsValid checks if the case status is valid.

func (CaseStatus) Normalize

func (s CaseStatus) Normalize() CaseStatus

Normalize returns the status, treating empty as CaseStatusOpen for backward compatibility. Existing Firestore documents predate the DRAFT status and only ever stored OPEN/CLOSED (or the empty default that means OPEN), so this fallback never silently coerces a real DRAFT value.

func (CaseStatus) String

func (s CaseStatus) String() string

String returns the string representation of the case status.

type FieldID

type FieldID string

FieldID represents the unique identifier for a custom field

type FieldType

type FieldType string

FieldType represents the type of a custom field

const (
	FieldTypeText        FieldType = "text"
	FieldTypeNumber      FieldType = "number"
	FieldTypeSelect      FieldType = "select"
	FieldTypeMultiSelect FieldType = "multi-select"
	FieldTypeUser        FieldType = "user"
	FieldTypeMultiUser   FieldType = "multi-user"
	FieldTypeDate        FieldType = "date"
	FieldTypeURL         FieldType = "url"
	// FieldTypeCaseRef references a single Case by its numeric ID in the
	// workspace named by the field definition's ReferenceWorkspace. The stored
	// value is the referenced Case ID as a string (mirrors select / user).
	FieldTypeCaseRef FieldType = "case_ref"
	// FieldTypeMultiCaseRef references multiple Cases by ID. The stored
	// value is a []string of Case IDs (mirrors multi-select / multi-user).
	FieldTypeMultiCaseRef FieldType = "multi_case_ref"
	// FieldTypeMarkdown holds Markdown-formatted text. The stored value is a
	// plain string (same shape as text); the Web UI renders it as Markdown.
	FieldTypeMarkdown FieldType = "markdown"
)

func AllFieldTypes

func AllFieldTypes() []FieldType

AllFieldTypes returns all valid field types

func (FieldType) IsCaseRef

func (t FieldType) IsCaseRef() bool

IsCaseRef reports whether the type references Cases (single or multi).

func (FieldType) IsValid

func (t FieldType) IsValid() bool

IsValid checks if the field type is valid

func (FieldType) String

func (t FieldType) String() string

String returns the string representation of the field type

Jump to

Keyboard shortcuts

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