domain

package
v0.1.2 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2025 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package domain defines core business types and category enums for the toolkit application.

Index

Constants

This section is empty.

Variables

View Source
var ErrUnknownCategory = errors.New("unknown category")

ErrUnknownCategory is returned when a string cannot be parsed into a known Category.

Functions

func Aliases

func Aliases() []string

Aliases returns all canonical alias strings for autocomplete, etc.

func FilterByFilterable

func FilterByFilterable[T models.NamedFilterable](items []T, filter string) []T

FilterByFilterable returns a filtered slice of items matching the provided filter string. T must implement models.NamedFilterable.

func FilterEnvironments

func FilterEnvironments(envs []models.Environment, filter string) []models.Environment

FilterEnvironments returns a filtered slice of Environment matching the provided filter string.

func FilterServiceTenancies

func FilterServiceTenancies(tenancies []models.ServiceTenancy, filter string) []models.ServiceTenancy

FilterServiceTenancies returns a filtered slice of ServiceTenancy matching the provided filter string.

func FilterTenants

func FilterTenants(tenants []models.Tenant, filter string) []models.Tenant

FilterTenants returns a filtered slice of Tenant matching the provided filter string.

Types

type Category

type Category int

Category represents a logical grouping for toolkit data.

const (
	// CategoryUnknown is the zero value for Category.
	CategoryUnknown Category = iota

	// Tenant is a category for tenant-level data.
	Tenant
	// LimitDefinition is a category for limit definitions.
	LimitDefinition
	// ConsolePropertyDefinition is a category for console property definitions.
	ConsolePropertyDefinition
	// PropertyDefinition is a category for property definitions.
	PropertyDefinition
	// LimitTenancyOverride is a category for limit tenancy overrides.
	LimitTenancyOverride
	// ConsolePropertyTenancyOverride is a category for console property tenancy overrides.
	ConsolePropertyTenancyOverride
	// PropertyTenancyOverride is a category for property tenancy overrides.
	PropertyTenancyOverride
	// LimitRegionalOverride is a category for limit regional overrides.
	LimitRegionalOverride
	// ConsolePropertyRegionalOverride is a category for console property regional overrides.
	ConsolePropertyRegionalOverride
	// PropertyRegionalOverride is a category for property regional overrides.
	PropertyRegionalOverride
	// BaseModel is a category for base models.
	BaseModel
	// ModelArtifact is a category for model artifacts.
	ModelArtifact
	// Environment is a category for environments.
	Environment
	// ServiceTenancy is a category for service tenancies.
	ServiceTenancy
	// GpuPool is a category for GPU pools.
	GpuPool
	// GpuNode is a category for GPU nodes.
	GpuNode
	// DedicatedAICluster is a category for dedicated AI clusters.
	DedicatedAICluster
)

func ParseCategory

func ParseCategory(s string) (Category, error)

ParseCategory parses a string (case-insensitive, with common aliases) into a Category enum.

func (Category) Definition

func (e Category) Definition() Category

Definition returns the definition category for the receiver.

func (Category) IsScope

func (e Category) IsScope() bool

IsScope returns true if the category is a scope category.

func (Category) IsScopeOf

func (e Category) IsScopeOf(o Category) bool

IsScopeOf returns true if the receiver is a scope of the given category.

func (Category) ScopedCategories

func (e Category) ScopedCategories() []Category

ScopedCategories returns the categories that are scoped by the receiver.

func (Category) String

func (i Category) String() string

type ToolkitContext

type ToolkitContext struct {
	Category Category
	Name     string
}

ToolkitContext holds the current scope and name for filtering or scoping operations.

Jump to

Keyboard shortcuts

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