Module
field
github.com/riducms/ridu/field — Type-safe field builders and presentation options. Incompatible options fail at Go compile time; semantic issues are reported by ridu.Resolve.
Field builders 27
field.Text()Define a single-line text field.
field.Slug()Define a required, unique, indexed text slug derived from another string field.
field.Textarea()Define multi-line plain text.
field.Email()Define a string validated as an email address.
field.Code()Define source-code text with an editor language hint.
field.Date()Define a normalized date, time, or timestamp string.
field.Number()Define a numeric field.
field.Checkbox()Define a boolean rendered as an on/off control.
field.JSON()Define arbitrary JSON-compatible stored data.
field.Select()Define a string constrained to configured choices.
field.Radio()Define a choice-constrained string rendered as radios.
field.Point()Define a GeoJSON-style longitude/latitude tuple.
field.Relationship()Define a singular, many, or polymorphic document reference.
field.Upload()Define a reference to an upload-enabled collection.
field.Group()Define a nested stored object.
field.Array()Define a repeatable list of nested objects.
field.Blocks()Define repeatable discriminated layouts.
field.BlockType()Construct one allowed block layout.
field.NamedTab()Define a tab stored beneath name.
field.UnnamedTab()Define a presentation-only tab.
field.Tabs()Group named and unnamed tabs.
field.Row()Arrange fields in a presentation-only admin row.
field.Collapsible()Group fields in a presentation-only disclosure.
field.UI()Declare presentation-only admin content.
field.Join()Define a read-only inverse relationship.
field.Virtual()Declare a computed, non-stored output field.
field.Plugin()Declare a custom field owned by a compiled plugin.
Field helpers 1
field.NormalizeSlug()Normalize a source or manual value with the deterministic server slug contract.
Field options 58
field.AdminComponent()field.Label()field.LabelTranslations()field.Description()field.DescriptionTranslations()field.Placeholder()field.PlaceholderTranslations()field.Required()field.ReadOnly()field.Hidden()field.Sidebar()field.Columns()field.Tab()field.TabTranslations()field.ArrayRowLabels()field.All()field.Any()field.Not()field.Document()field.Sibling()field.ShowWhenCondition()field.ShowWhen()field.Localized()field.Unique()field.Index()field.Default()field.MinLength()field.MaxLength()field.Min()field.Max()field.Step()field.Choices()field.OneOf()field.Multiple()field.DefaultChoices()field.Language()field.PickerAppearance()field.To()field.ToAny()field.HasMany()field.ToMany()field.OnDelete()field.OptionFilter()field.OptionFilterFor()field.OptionFilterValue()field.OptionFilterValueFor()field.FilterOptionRules()field.Fields()field.MinRows()field.MaxRows()field.RowLabel()field.RowLabelComponent()field.BlockTypes()field.JoinLimit()field.JoinColumns()field.JoinDefaultSort()field.JoinAllowCreate()field.CollectionReferenceKeys()
Option contracts 20
interface field.OptionThe sealed base interface for field options.
interface field.StringOptionOptions accepted by Text, Slug, Textarea, Email, Code, and Date.
interface field.NumberOptionOptions accepted by Number.
interface field.CheckboxOptionOptions accepted by Checkbox.
interface field.JSONOptionOptions accepted by JSON and Point.
interface field.SelectOptionOptions accepted by Select and Radio.
interface field.RelationshipOptionOptions accepted by Relationship.
interface field.UploadOptionOptions accepted by Upload.
interface field.GroupOptionOptions accepted by Group.
interface field.ArrayOptionOptions accepted by Array.
interface field.BlocksOptionOptions accepted by Blocks.
interface field.RowLabelComponentOptionOptions accepted by Array and Blocks.
interface field.JoinOptionOptions accepted by Join.
interface field.PluginOptionOptions accepted by Plugin fields.
interface field.CommonOptionOptions accepted by every built-in and plugin field.
interface field.LocalizedOptionOptions accepted by stored field kinds.
interface field.UniqueOptionOptions accepted by indexable scalar and reference fields.
interface field.DefaultOptionOptions accepted by scalar fields with defaults.
interface field.RelationshipOrUploadOptionOptions accepted by relationship and upload references.
interface field.NestedOptionOptions accepted by Group and Array.
Core types 20
type field.DefinitionAn immutable authored field definition.
type field.KindThe built-in field discriminator.
type field.ChoiceOne select or radio value and optional label.
type field.RowLabelsSingular and plural author-facing array-row labels with interface translations.
type field.BlockOne discriminated blocks layout.
type field.TabDefinitionOne named data-bearing or unnamed presentation-only tab.
type field.ValueTypeThe output type promised by a virtual field.
type field.DatePickerAppearanceThe date editor mode.
type field.ReferenceDeleteActionHow a current reference reacts when its target is permanently deleted.
type field.RelationshipFilterRuleA server-enforced relationship picker predicate derived from the current document.
type field.CategoryWhether a field is stored, presentation-only, computed, or plugin-owned.
type field.IssueOne stable field-builder issue found before config resolution.
type field.ConditionAn immutable presentation-only logical or scalar condition.
type field.ConditionKindThe recursive condition-node discriminator.
type field.ConditionScopeThe root used to resolve a condition path.
type field.ConditionOperatorThe finite scalar condition vocabulary.
interface field.ConditionScalarThe string, boolean, integer, or floating-point operands accepted by conditions.
type field.DefaultValueThe immutable typed scalar held by a Default option.
type field.DefaultKindThe typed default-value discriminant.
type field.RelationshipFilterOperatorThe finite operator vocabulary for relationship choices.
Methods 70
Block.WithLabelTranslations()Choice.WithLabelTranslations()Condition.Conditions()Condition.Kind()Condition.Operator()Condition.Path()Condition.Scope()Condition.Values()DefaultValue.Kind()DefaultValue.String()Definition.AdminComponent()Definition.Blocks()Definition.Category()Definition.Choices()Definition.CodeLanguage()Definition.Columns()Definition.Condition()Definition.DatePickerAppearance()Definition.Default()Definition.Description()Definition.DescriptionTranslations()Definition.Fields()Definition.Hidden()Definition.Index()Definition.InitiallyCollapsed()Definition.Issues()Definition.JoinAllowCreate()Definition.JoinCollection()Definition.JoinDefaultColumns()Definition.JoinDefaultSort()Definition.JoinLimit()Definition.JoinOn()Definition.Kind()Definition.Label()Definition.LabelTranslations()Definition.Localized()Definition.Max()Definition.MaxLength()Definition.MaxRows()Definition.Min()Definition.MinLength()Definition.MinRows()Definition.Name()Definition.Placeholder()Definition.PlaceholderTranslations()Definition.PluginConfig()Definition.PluginKey()Definition.PluginReferenceKeys()Definition.ReadOnly()Definition.ReferenceDeleteAction()Definition.RelationshipFilters()Definition.RelationshipHasMany()Definition.RelationshipTarget()Definition.RelationshipTargets()Definition.Required()Definition.RowLabel()Definition.RowLabelComponent()Definition.RowLabels()Definition.SelectDefaults()Definition.SelectHasMany()Definition.Sidebar()Definition.SlugSource()Definition.Step()Definition.Tab()Definition.Tabs()Definition.TabTranslations()Definition.Unique()Definition.ValueType()Definition.WithLabelTranslations()TabDefinition.WithLabelTranslations()
Constants 58
constant field.CategoryNestedconstant field.CategoryPluginconstant field.CategoryPresentationconstant field.CategoryRelationshipconstant field.CategoryScalarconstant field.CategoryUploadconstant field.ConditionEqualsconstant field.ConditionKindAllconstant field.ConditionKindAnyconstant field.ConditionKindNotconstant field.ConditionKindPredicateconstant field.ConditionNotEqualsconstant field.ConditionOneOfconstant field.ConditionScopeDocumentconstant field.ConditionScopeSiblingconstant field.DatePickerDayAndTimeconstant field.DatePickerDayOnlyconstant field.DatePickerTimeOnlyconstant field.DefaultBooleanconstant field.DefaultNumberconstant field.DefaultStringconstant field.FilterContainsconstant field.FilterEqualsconstant field.FilterGreaterThanconstant field.FilterGreaterThanEqualconstant field.FilterLessThanconstant field.FilterLessThanEqualconstant field.FilterLikeconstant field.FilterNotEqualsconstant field.KindArrayconstant field.KindBlocksconstant field.KindCheckboxconstant field.KindCodeconstant field.KindCollapsibleconstant field.KindDateconstant field.KindEmailconstant field.KindGroupconstant field.KindJoinconstant field.KindJSONconstant field.KindNumberconstant field.KindPluginconstant field.KindPointconstant field.KindRadioconstant field.KindRelationshipconstant field.KindRowconstant field.KindSelectconstant field.KindTabsconstant field.KindTextconstant field.KindTextareaconstant field.KindUIconstant field.KindUploadconstant field.KindVirtualconstant field.ReferenceDeleteNullifyconstant field.ReferenceDeleteRestrictconstant field.ValueBooleanconstant field.ValueJSONconstant field.ValueNumberconstant field.ValueString