Views (ViewDecl)
Generated from the doc schema (CatalogDocSchema, @canonify/kernel-catalog/doc): each field’s type, default and description are the schema’s own, and each example is a bundle file that readBundle decodes. A field’s Example is its value in one of those examples.
ViewDecl
A view: a SpringML page source and its schema version (pages).
Not yet typed (owner: pages K6-P page pipeline (epic 4p3)). Until its owner types it, the doc checks the fields below and keeps every other field as JSON.
The views slot of the doc holds these, keyed by id. In a bundle each is one file, views/<name>.json, named by its name, which the file then leaves out.
| Field | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
id |
ViewId | yes (propose assigns it; a new declaration leaves it out) | — | — | A view id (vw_…); renames keep it. |
name |
Ident | yes | — | — | The declaration name. |
Any other field: JSON.
TypePresentation
How the type is shown (pages, C33); it never produces a migration.
| Field | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
noun |
TypePresentation.noun | no | — | {"one":"order","other":"orders"} |
What one record and several records are called. |
code |
PropId | no | — | "pr_4p6r8t0v2x" |
The property that holds the record’s code. |
statusProp |
PropId | no | — | "pr_4p6r8t0v2x" |
The property whose value is the status. |
recordView |
ViewId | no | — | "vw_3c5e7g9k2m" |
The view that shows one record. |
conditions |
Record<PropId, ConditionPresentation> | no | — | {"pr_8b2f4h6j0k":{"meaning":"critical","level":"critical"}} |
The named conditions, by the derived boolean property that holds each. |
props |
Record<string, JSON> | no | — | {"pr_8b2f4h6j0k":{"better":"down"}} |
How a property is read and judged (better, thresholds, importance); typed by the bind task that reads it. |
The presentation of a type file.
{
"noun": { "one": "order", "other": "orders" },
"statusProp": "pr_4p6r8t0v2x",
"conditions": {
"pr_8b2f4h6j0k": { "meaning": "critical", "level": "critical" }
}
}
The presentation of a type file.
{
"code": "pr_4p6r8t0v2x",
"recordView": "vw_3c5e7g9k2m",
"props": { "pr_8b2f4h6j0k": { "better": "down" } }
}
TypePresentation.noun
What one record and several records are called.
| Field | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
one |
Text | yes | — | "order" |
The noun for one record. |
other |
Text | yes | — | "orders" |
The noun for several records. |
ConditionPresentation
A named condition of a type: what it means, its tone and what fixes it.
| Field | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
meaning |
"critical" | "warn" | "good" |
no | — | "critical" |
What a row holding the condition means: critical, warn or good. |
level |
"critical" | "warn" | "good" | "info" | "neutral" |
yes | — | "critical" |
The tone a mark of the condition is shown in. |
on |
PropId | no | — | "pr_6w8y0a2c4e" |
The date, time or number property the condition is about; a flag shows its distance. |
amount |
PropId | no | — | "pr_8b2f4h6j0k" |
The number property that says how much (“Short 2”). |
fix |
ActionId | no | — | "ac_3h5k7n9q1s" |
The action that fixes the condition: a row holding it offers it first. |
An entry of presentation.conditions in a type file, under the id of the derived boolean property that holds it.
{ "level": "neutral", "amount": "pr_8b2f4h6j0k" }
An entry of presentation.conditions in a type file, under the id of the derived boolean property that holds it.
{
"meaning": "warn",
"level": "warn",
"on": "pr_6w8y0a2c4e",
"fix": "ac_3h5k7n9q1s"
}
PresentationOverrides
The presentation keys this declaration overrides (pages, C33).
Not yet typed (owner: pages K6-P page pipeline (epic 4p3)). Until its owner types it, the doc checks the fields below and keeps every other field as JSON.
| Field | Type | Required | Default | Example | Description |
|---|---|---|---|---|---|
inputs |
Record<Ident, PresentationOverrides.inputs> | no | — | (see the example) | Per input (by input name): the label and help the form shows. |
Any other field: JSON.
PresentationOverrides.inputs
How one input is worded in the action’s form.