Screen design
Arranging the record where it is read — boxes that move on a board, fields that move in a list, and a keyboard equivalent for every drag.
A Screen design button sits at the top of every record. Pressing it turns the record itself into the editor: the real values stay on screen, and a palette of field kinds appears beside them to drag from.
This is the near half of custom fields. The settings screen is the deep tool — option sets, conditions, computed fields, the source precedence chain and restoring removed fields — and it is one Advanced design button away from here.
Two levels, and only the outer one is a board
| Level | How it behaves |
|---|---|
| Groups (the boxes) | A real two-dimensional arrangement: drag a box to a free cell, pull its corner to resize |
| Fields (inside a box) | A list: up and down, by drag or by button, and across to another box — including a box on another tab |
The split is not a compromise. A record is a form, and its rows are read in order — label, value, label, value. Scattering the fields freely would destroy the reading order while looking like added power: the board fills with empty cells that mean nothing, and the finished record comes out taller and harder to scan than the plain list it replaced. What genuinely is two-dimensional is the arrangement of the boxes — which heading sits beside which — because that is how a person reads a record: box by box, list inside each.
The box grid is the dashboard's grid, deliberately: six columns, a grip to move and a corner to stretch. Anyone who has arranged a dashboard already knows how to arrange a record.
The boxes
- Width between two columns and six, height up to six rows. A box too narrow to hold a label beside a value does not exist, and a box taller than a screen stops being part of an arrangement you can see.
- A box shorter than its content scrolls inside itself, says how many rows are out of view, and offers "Fit to content" in one click. It does not hide quietly.
- A group that has never been moved flows at full width in its existing order — that is the normal state, so an upgrade rearranges nobody's record. A box is pinned to the board only once somebody drags it, and "Return to flow" puts it back.
- A group marked built-in is one the module ships. You can rename it (clearing the box restores the original name) and move and resize it, but its tab and its order in the strip are set in code, and it cannot be deleted.
- Deleting a group you created moves its fields to "No group". It does not delete them.
Tabs
A tab is simply the name a group sits on. Moving a group to a new tab is how a tab is added, and a tab exists for as long as a group is on it.
Not every tab can host fields. Some are fed by another module — vulnerabilities, requests, documents, history — and never ask for groups at all. The tab picker offers exactly the tabs that do, so a group cannot be filed somewhere it would vanish.
Inventory fields
Host name, IP and system are not fields defined here — they come from the inventory. They render with a lock and a reason, rather than with a handle a drag would ignore.
Keyboard
Every drag has an equivalent, and that is the rule rather than a fallback:
- Arrow keys nudge a focused box by one cell. In Hebrew, ← decreases the column number, because column 1 is the rightmost.
- Size and position on every box sets width, height, column and row from selects.
- Every field has up/down buttons and a Group selector that moves it to any group on any tab.
- Every field kind in the palette has a + that opens the same dialog a drop opens.
Saving
A structural edit saves immediately. There is no draft, no Save button and no intermediate state — the record claims to be the record, and a record showing a layout that has not been saved is showing something that is not true. A failure appears as a banner, never as an action that quietly did not happen.
The field form itself is the exception and has its own Save button: it carries a version check, and a change to Required first states how many existing records do not meet the condition.
Updated
This page is the file content/docs/en/v1/assets/screen-designer.mdx