# configuration/constants/field.constants.ts

> 21 lines of code and 20 definitions.

Tree: GovLab Context
Language: typescript
Layer: infrastructure
Canonical: https://banes-lab.com/anatomy/context#file-context-configuration-constants-field-constants-ts
Source text: https://banes-lab.com/source/context/configuration/constants/field.constants.ts.txt

Listed in [configuration/constants](https://banes-lab.com/api/source/context/configuration/constants.md), after [configuration/constants/document.constants.ts](https://banes-lab.com/source/context/configuration/constants/document.constants.ts.md) and before [configuration/constants/grammar.constants.ts](https://banes-lab.com/source/context/configuration/constants/grammar.constants.ts.md).

## Definitions

- `ID` (lexical_declaration, line 3, exported)
- `TEXT` (lexical_declaration, line 4, exported)
- `OPTIONAL_TEXT` (lexical_declaration, line 5, exported)
- `LABEL` (lexical_declaration, line 6, exported)
- `OPTIONAL_LABEL` (lexical_declaration, line 7, exported)
- `LABELS` (lexical_declaration, line 8, exported)
- `OPTIONAL_LABELS` (lexical_declaration, line 9, exported)
- `FLAG` (lexical_declaration, line 10, exported)
- `OPTIONAL_FLAG` (lexical_declaration, line 11, exported)
- `CLOSED` (lexical_declaration, line 12, exported)
- `OBJECT` (lexical_declaration, line 13, exported)
- `OPTIONAL_OBJECT` (lexical_declaration, line 14, exported)
- `OPTIONAL_RECORDS` (lexical_declaration, line 15, exported)
- `RECORDS` (lexical_declaration, line 16, exported)
- `PATH_MARK` (lexical_declaration, line 18, exported)
- `ID_FIELD` (lexical_declaration, line 20, exported)
- `NONE_WORD` (lexical_declaration, line 22, exported)
- `NONE_PREFIX` (lexical_declaration, line 24, exported)
- `COMPOSITE_MEDIUM` (lexical_declaration, line 26, exported)
- `DEFAULT_EXEMPLAR_LANG` (lexical_declaration, line 28, exported)

## Contained in

- [configuration/constants](https://banes-lab.com/anatomy/context/folder-context-configuration-constants.md)

## Source

```typescript
import type { FieldSpec } from "#types/field.types";

export const ID: FieldSpec = { required: true, type: "label" };
export const TEXT: FieldSpec = { required: true, type: "text" };
export const OPTIONAL_TEXT: FieldSpec = { required: false, type: "text" };
export const LABEL: FieldSpec = { required: true, type: "label" };
export const OPTIONAL_LABEL: FieldSpec = { required: false, type: "label" };
export const LABELS: FieldSpec = { required: true, type: "labels" };
export const OPTIONAL_LABELS: FieldSpec = { required: false, type: "labels" };
export const FLAG: FieldSpec = { required: true, type: "flag" };
export const OPTIONAL_FLAG: FieldSpec = { required: false, type: "flag" };
export const CLOSED: FieldSpec = { required: true, type: "closed" };
export const OBJECT: FieldSpec = { required: true, type: "object" };
export const OPTIONAL_OBJECT: FieldSpec = { required: false, type: "object" };
export const OPTIONAL_RECORDS: FieldSpec = { required: false, type: "records" };
export const RECORDS: FieldSpec = { required: true, type: "records" };

export const PATH_MARK = ".";

export const ID_FIELD = "id";

export const NONE_WORD = "none";

export const NONE_PREFIX = `${NONE_WORD}:`;

export const COMPOSITE_MEDIUM = "composite";

export const DEFAULT_EXEMPLAR_LANG = "ts";
```
