App: pages
Record pages: how one record is laid out, section by section. Every key here is stable (status). All parts.
import { fields, page, related } from 'tablewalk/app';
pages: { opportunity: page('opportunity', [ fields(['name', 'stage', 'amount'], { presentation: 'summary' }), related('Tasks', 'task', 'opportunity_id', { show: ['subject', 'status', 'due_on'] }), ]),},A page takes its resource and its sections, and optionally path, listTabs,
aside: false (no default aside of the remaining fields), layout and realm.
layout is the page’s archetype, how its regions are arranged:
'conversation' (one timeline, last in the main column, the record beside it),
'showcase' (a gallery first with a panel of 1 to 3 aside sections beside it,
then the rest at full width) or 'article' (one column at a reading measure,
no aside), or 'record', the record’s own main column and aside. Left out,
the page is drawn in the one its sections make: a gallery first is a showcase,
a timeline ending the main column with no list there a conversation, the
record’s long text with its facts alone an article, anything else the record’s
own (tablewalk check --defaults says which and why).
A page’s layout names a shape from that fixed set, where a dashboard’s
areas draws its own grid (dashboard areas). It is called by its resource’s noun, so page('issue', [...])
carries no label of its own. A page may also be a file under pages/.
See Record pages.
| Helper | Says |
|---|---|
header({ status?, facts?, primary?, destructive? }) |
The record’s title row; its buttons are the resource’s actions, primary filled and destructive last. |
fields(show, { presentation? }) |
summary, facts, table or properties; a summary over a machine draws its stepper. |
card(title, 'dealer_id', show), headline(figure, { was?, subfigure?, note?, links? }) |
The record a reference names, and a figure with its facts: sections of their own. |
related(title, from, whose, opts) |
Rows pointing at the record: show, query, sort, limit, create (with its prefill), empty, totals (columns, or the rows’ rollups: ['total_amount', 'refunded']), rowActions: true (each row’s own verbs in a ⋯, so an order’s payment is voided from the order); actions: ['addBuyer'] (the record’s own verbs drawn in the list’s head instead of the record’s); create: false (no Add: where the reader may add a row, a list offers the child’s New form bound to the record); group: { by, show?, sort?, limit? } (a header for each record the rows share, one level deep, with limit then the rows to a group); presentation: 'gallery' or cards(…) with the list view’s keys. |
current(title, from, whose, { query, sort, show }) |
The one current related row as a card: the active lease, the latest visit. |
similar(title, from, { same, near? }) |
Rows like this one; near: { price: 0.25 } is ±25%. |
metric, chart, breakdown with { whose } |
The dashboard helpers, narrowed to this record’s rows. |
timeline(title, [stream(from, whose, at, show)]) |
Dated rows from up to four tables, merged. |
history() |
The record’s own changes. |
note(text, opts), embed(view, { whose }), custom(title, component, opts) |
Guidance, a list narrowed to this record, a custom component. |
A fields section once took more forms. They are refused, and the refusal prints this table:
| Was | Is now |
|---|---|
fields(…, { presentation: 'card' }) |
card(title, 'dealer_id', ['rating', 'city']) |
fields(…, { presentation: 'headline' }) |
headline('price', { was, subfigure, note, links }) |
fields(…, { presentation: 'accordion' }) |
gone: a group of fields is always open |
fields(…, { collapsed }) |
gone with the accordion |
fields(…, { actions }) |
headline(figure, { links }) |
fields(…, { subfigure, was, note }) |
headline(figure, { subfigure, was, note }) |
Every section takes title, region ('aside' for the side panel), tab,
width, hidden and when ('status = converted').
| Key | Type | Status | What it does |
|---|---|---|---|
pages |
object | Stable | Record pages keyed by id, or one file per page under pages/ (its basename the key). Used in examples/apps/tick/app.ts. |
pages.*.$schema
Section titled “pages.*.$schema”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.$schema |
string | Stable |
pages.*.aside
Section titled “pages.*.aside”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.aside |
Stable | A page that declares no aside section gets one: the record’s remaining readable fields, as a property rail titled by the resource’s noun. false leaves it out. One of false. |
pages.*.base
Section titled “pages.*.base”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.base |
string | Stable | The table a root record is chosen from. Every whose starts here. |
pages.*.document
Section titled “pages.*.document”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.document |
object | Stable | The record on paper (document()): an invoice, a packing slip, a payslip, addressed under its record (/orders/12/invoice) and offered as a verb on it. Its sections are fields, related lists and notes; it has no path. |
pages.*.document.description |
string | Stable | The sender’s lines under the letterhead’s logo and name: an address, a registration. Used in examples/apps/lintel/app.ts. |
pages.*.document.label |
string | Stable | What it is, “Invoice”: the verb on the record and the sheet’s heading. |
pages.*.document.number |
string | Stable | A field of the record whose value is the document’s number. Absent: the record’s own name. Used in examples/apps/lintel/resources.ts. |
pages.*.document.size |
"a4" · "letter" |
Stable | The sheet. Absent: the paper of the App’s locale, Letter in North America. One of a4, letter. Used in examples/apps/lintel/blueprint.ts. |
pages.*.empty
Section titled “pages.*.empty”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.empty |
"hide" · "collapse" |
Stable | What a related list that says nothing of its own does while it has no rows: hide leaves it out, collapse says it in one line with the other empty lists beside it. A list’s own empty wins. One of collapse, hide. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.layout
Section titled “pages.*.layout”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.layout |
"record" · "conversation" · "showcase" · "article" |
Stable | The page’s archetype, the arrangement of its regions. Absent is the one its sections make, chosen when the App is read (tablewalk check –defaults says which and why): a gallery first is a showcase, a timeline ending the main column with no list there a conversation, the record’s long text with at most 12 facts and nothing else an article, anything else the record’s own. record: the record’s own written out (a main column, an aside a third of it beside), for a page that would be chosen as another. conversation: one timeline, last in the main column so its composer ends the thread, with the record’s cards beside it and any related list in the aside. showcase: the photos (a gallery, first) at two thirds with a panel of 1 to 3 aside sections beside them, then the rest at full width; on a phone the price follows the photos. article: one column at a reading measure, with no aside and no third-width sections. Not on a document or a tablewalk.json page. A page’s layout names a shape from this fixed set, where a dashboard’s areas draws its own grid (views.*[kind=dashboard].areas). One of article, conversation, record, showcase. Used in examples/apps/tick/app.ts. |
pages.*.listTabs
Section titled “pages.*.listTabs”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.listTabs |
boolean | Stable | Draw each run of adjacent list sections (none with a width) as one tab strip. An App’s page is off unless true; a Workbench page is on unless false. Used in examples/apps/lintel/pages/lease.ts. |
pages.*.path
Section titled “pages.*.path”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.path |
string | Stable | Its address after the App’s, when not its key: for a base no list view shows, or a second page over one. |
pages.*.realm
Section titled “pages.*.realm”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.realm |
"tenant" · "platform" |
Stable | Whose context the page serves: a tenant’s (the default) or the platform realm’s, which needs auth.tenancy.platform. Required when its base is platform-owned. One of platform, tenant. |
pages.*.roles
Section titled “pages.*.roles”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.roles |
array | Stable | The roles that may open the page: a reader holding none is not served it, so a record of its base opens on another page and its own address answers as one that does not exist. Each must be declared in auth.roles. |
pages.*.sections
Section titled “pages.*.sections”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections |
array | Stable | Absent means the record’s fields, full width — the least a page can be. One screen draws at most 24: per region, the sections in no tab and its largest tab’s. |
pages.*.sections[][kind=*]
Section titled “pages.*.sections[][kind=*]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=*].hidden |
boolean | Stable | |
pages.*.sections[][kind=*].offsetLeft |
"quarter" · "third" · "half" · "two-thirds" |
Stable | One of <offset>. |
pages.*.sections[][kind=*].offsetRight |
"quarter" · "third" · "half" · "two-thirds" |
Stable | One of <offset>. |
pages.*.sections[][kind=*].region |
"main" · "aside" |
Stable | Record layout region. Absent means main; aside is the optional side panel. One of <region>. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=*].tab |
Stable | One of <presentationCopy>. |
|
pages.*.sections[][kind=*].title |
string | object | Stable | One of <presentationCopy>. |
pages.*.sections[][kind=*].when |
string | Stable | Shown only when the root record matches this condition, in the query language: “status = converted”. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=*].width |
"full" · "half" · "third" · "two-thirds" |
Stable | One of <width>. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=breakdown]
Section titled “pages.*.sections[][kind=breakdown]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=breakdown].about |
string | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=breakdown].by |
string | Stable | What to group by: a column of from, or a dotted path ending in one. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=breakdown].format |
"percent" · "number" · "money" · "duration" |
Stable | How the figure is said, as a dashboard metric’s: percent (the figure is 0–100, said with %: “avg won_flag * 100” reads “53.8%”), number, money in the App’s currency, or duration (the figure is seconds, said as “10h 2m”). Absent, a measure of one column takes that column’s display rule. One of duration, money, number, percent. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=breakdown].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=breakdown].kind |
Stable | One of breakdown. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=breakdown].limit |
integer | Stable | Groups shown, biggest first. |
pages.*.sections[][kind=breakdown].measure |
string | Stable | What each bar measures, the dashboard’s words: “count” (the default), “sum open_value”. Everything but a count names a column of from, or one of its rollups. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=breakdown].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=breakdown].segment |
string | Stable | One of the table’s segments (resources.<table>.segments), its conditions ANDed with query. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=breakdown].unit |
string | Stable | A word said after the figure (“of 5”, “days”). Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=breakdown].whose |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=card]
Section titled “pages.*.sections[][kind=card]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=card].kind |
Stable | One of card. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=card].show |
array | Stable | The reference column first, then label paths through it (dealer_id, dealer_id.rating). |
pages.*.sections[][kind=chart]
Section titled “pages.*.sections[][kind=chart]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=chart].about |
string | Stable | The record this section is about, when it is not the root: a reference column of the base, like “site_id”. whose then ends at that table. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=chart].by |
string | Stable | What to group by: a bucketed date (“month issued_on”) for a line, categories for a donut, two keys (“month issued_on, status”) for stacked bars. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=chart].format |
"percent" · "number" · "money" · "duration" |
Stable | How the figure is said, as a dashboard metric’s: percent (the figure is 0–100, said with %: “avg won_flag * 100” reads “53.8%”), number, money in the App’s currency, or duration (the figure is seconds, said as “10h 2m”). Absent, a measure of one column takes that column’s display rule. One of duration, money, number, percent. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=chart].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=chart].height |
number | Stable | The drawing’s height in CSS pixels. |
pages.*.sections[][kind=chart].kind |
Stable | One of chart. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=chart].limit |
integer | Stable | A donut’s slices or a stacked chart’s bars, largest kept. |
pages.*.sections[][kind=chart].measure |
string | Stable | The dashboard’s words: “count” (the default), “sum amount”, “avg total as mean”. Everything but a count names a column. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=chart].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=chart].segment |
string | Stable | One of the table’s segments (resources.<table>.segments), its conditions ANDed with query. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=chart].shape |
"line" · "bar" · "donut" · "stacked" |
Stable | “line” (default), “bar” (one series, the current bar marked), “donut”, or “stacked” over a two-key by. One of bar, donut, line, stacked. Used in examples/apps/lintel/blueprint.ts. |
pages.*.sections[][kind=chart].target |
number | Stable | A goal ruled across a line or stacked bars; not on a donut. Used in examples/apps/lintel/commands/leasing.ts. |
pages.*.sections[][kind=chart].unit |
string | Stable | A word said after the figure (“of 5”, “days”). Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=chart].whose |
string | Stable | The from rows whose named column is this record: “customer_id”, or “invoice_id.customer_id” two references away. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=current]
Section titled “pages.*.sections[][kind=current]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=current].empty |
object | Stable | Guidance shown when no row is current. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=current].empty.action |
object | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=current].empty.action.label |
string | object | Stable | One of <presentationCopy>. |
pages.*.sections[][kind=current].empty.action.to |
string | Stable | Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=current].empty.description |
string | object | Stable | A sentence under the title. One of <presentationCopy>. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=current].empty.title |
string | object | Stable | One of <presentationCopy>. |
pages.*.sections[][kind=current].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=current].kind |
Stable | One of current. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=current].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=current].show |
array | Stable | Columns of from to show — a path, or { column, label } to say it in the app’s words. Absent means a sensible default. |
pages.*.sections[][kind=current].show[].column |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=current].show[].label |
string | Stable | |
pages.*.sections[][kind=current].sort |
string | Stable | Written like the query bar: “due_on desc, name”. |
pages.*.sections[][kind=current].whose |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=custom]
Section titled “pages.*.sections[][kind=custom]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=custom].component |
object | Stable | An author’s own React module, referenced by path — component(‘id’, { module }) — and placed through a declared kind: a custom section, a value renderer where a display rule stands, an input where a form draws a field, a list view’s rows (customList) or a free-form page (definePage, in pages/<path>.page.tsx). One of <component>. |
pages.*.sections[][kind=custom].figures |
object | Stable | Named aggregate reads, at most eight; the component receives each as figures.<name>: exact over every row the reader may see, a number with no by, a group for each value with one. |
pages.*.sections[][kind=custom].figures.*.by |
string | Stable | Group the figure: a column, a path or a period and a date column (status, month opened_on). Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=custom].figures.*.from |
string | Stable | The resource it measures. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=custom].figures.*.limit |
integer | Stable | With a by, the most groups returned. Default 100. |
pages.*.sections[][kind=custom].figures.*.measure |
string | Stable | count, or an aggregate and a column: sum amount, avg amount, min due_on, max due_on. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=custom].figures.*.query |
string | Stable | The query language, without the leading table name. |
pages.*.sections[][kind=custom].figures.*.whose |
string | Stable | The from rows whose named column is this record. Absent, the figure is over the resource’s own rows, narrowed by query. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=custom].kind |
Stable | One of custom. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=custom].props |
object | Stable | The component’s declared props; each checked against its declaration, defaults filled. |
pages.*.sections[][kind=custom].record |
array | Stable | The record’s own fields the component reads, label paths welcome. |
pages.*.sections[][kind=custom].rows |
object | Stable | Named reads of rows, at most eight; the component receives each as rows.<name>. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=custom].rows.*.from |
string | Stable | The resource its rows come from. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=custom].rows.*.limit |
integer | Stable | |
pages.*.sections[][kind=custom].rows.*.query |
string | Stable | The query language, without the leading table name. |
pages.*.sections[][kind=custom].rows.*.show |
array | Stable | The columns the component reads, label paths welcome; each row carries exactly these. |
pages.*.sections[][kind=custom].rows.*.sort |
string | Stable | Written like the query bar. |
pages.*.sections[][kind=custom].rows.*.whose |
string | Stable | The from rows whose named column is this record. Absent, the rows are not tied to it. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=diagram]
Section titled “pages.*.sections[][kind=diagram]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=diagram].kind |
Stable | One of diagram. Used in examples/apps/lintel/blueprint.ts. |
pages.*.sections[][kind=fields]
Section titled “pages.*.sections[][kind=fields]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=fields].columns |
1 · 2 · 3 |
Stable | How many columns the group lays out in. Absent fits the width. One of 1, 2, 3. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=fields].editable |
Stable | true edits the properties in place: a choice is a picker, the rest an input, written through the resource’s write grant or, where the reader has none for a column, through an action that sets just that column. The server judges every write as it always does; a reader who may do neither sees the values. For a summary, an accordion or a property rail. One of true. Used in examples/apps/lintel/views.ts. |
|
pages.*.sections[][kind=fields].kind |
Stable | One of fields. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=fields].names |
Stable | false keeps a reference’s bare id. Absent, an App shows the record it names; the Workbench always keeps ids. One of false. Used in examples/apps/lintel/policy.ts. |
|
pages.*.sections[][kind=fields].presentation |
"summary" · "facts" · "table" · "properties" |
Stable | Default: properties in the aside, summary in the main region (a call that says the default is told so by tablewalk check). summary: compact properties. facts: the values alone in one line, a dot between. table: a sheet of caption and value rows in columns columns, empty values left out. properties: a property rail, caption beside value with a hairline between rows, every field kept and editable in place where the record may change. A box for another record is kind card, a figure with buttons kind headline; the record’s head is kind header. One of facts, properties, summary, table. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=fields].show |
array | Stable | The fields to show, in order — a column, or a dotted path like “account_id.name”. Absent means all of them. |
pages.*.sections[][kind=flows]
Section titled “pages.*.sections[][kind=flows]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=flows].kind |
Stable | One of flows. Used in examples/apps/lintel/blueprint.ts. |
pages.*.sections[][kind=header]
Section titled “pages.*.sections[][kind=header]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=header].actions |
array | Stable | The verbs the head draws, by id and in this order: [‘resolve’, ‘reassign’]. The record’s other verbs go into More; they stay granted and reachable from the palette and useCommand. Absent, the head draws up to three and folds the rest. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=header].destructive |
array | Stable | Action ids drawn last and quiet: [‘withdraw’]. Update actions that confirm, or set a value the display tones call bad, are destructive without being named. Used in examples/apps/lintel/pages/lease.ts. |
pages.*.sections[][kind=header].facts |
array | Stable | The facts line: columns or one-hop label paths, each value dressed by its display rule; { column, after } says a word after the value (“3 beds”), agreeing with a count, and { column, before } a word before it (“Born Apr 24, 2017”). Used in examples/apps/lintel/pages/lease.ts. |
pages.*.sections[][kind=header].facts[].after |
string | object | Stable | |
pages.*.sections[][kind=header].facts[].after.many |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=header].facts[].after.one |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=header].facts[].before |
string | Stable | |
pages.*.sections[][kind=header].facts[].column |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=header].kind |
Stable | One of header. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=header].primary |
string | Stable | The filled action, by its id in the resource’s actions (‘renew’). Otherwise the first action that is not destructive is filled; a record whose only verbs are destructive gets none. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=header].status |
string | Stable | One of the record’s own columns, its display tone drawn as a chip beside the name. |
pages.*.sections[][kind=headline]
Section titled “pages.*.sections[][kind=headline]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=headline].kind |
Stable | One of headline. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=headline].links |
array | Stable | One or two calls to action, each opening one of the App’s views by key. Used in examples/apps/lintel/pages/unit.ts. |
pages.*.sections[][kind=headline].links[].defaults |
object | Stable | A public form’s inputs filled with your words: form input → text of at most 500 characters. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=headline].links[].intent |
"primary" · "secondary" |
Stable | One of primary, secondary. |
pages.*.sections[][kind=headline].links[].label |
string | Stable | |
pages.*.sections[][kind=headline].links[].open |
Stable | Draw the public form over this record instead of opening its page. The address still opens the form on its own. One of modal. Used in examples/apps/tick/app.ts. |
|
pages.*.sections[][kind=headline].links[].prefill |
object | Stable | A public form’s inputs filled from this record: form input → field path. Where the form starts, never what it sends. Used in examples/apps/lintel/pages/unit.ts. |
pages.*.sections[][kind=headline].links[].to |
object | Stable | One of <appTarget>. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=headline].note |
string | Stable | Small print under the links: what the figures assume. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=headline].show |
array | Stable | The figure first, then the facts. |
pages.*.sections[][kind=headline].subfigure |
string | Stable | A headline’s second figure, under the first and smaller: an estimate, a unit price. Used in examples/apps/lintel/pages/unit.ts. |
pages.*.sections[][kind=headline].was |
string | Stable | A headline’s earlier value of its figure, a number or money column: struck through beside the figure when it has one above it (a was-price).. |
pages.*.sections[][kind=history]
Section titled “pages.*.sections[][kind=history]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=history].kind |
Stable | One of history. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=history].limit |
integer | Stable | Writes shown before “Show earlier changes”. Default 20. |
pages.*.sections[][kind=list]
Section titled “pages.*.sections[][kind=list]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=list].actions |
array | Stable | The record’s own verbs that add to this list, by id, drawn in the list’s head and not the record’s: [‘addBuyer’]. Each is offered as the record’s head offers it: granted, and while its condition holds. With actions and no create, the list draws no Add of its own. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=list].create |
string | object | Stable | One of false. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].create.defaults |
object | Stable | The values the new row starts with, over the child resource’s form defaults: a literal, or the constant today, now or me ({ “auto”: “today” } in JSON). Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=list].create.defaults.*.auto |
"today" · "now" · "me" |
Stable | One of me, now, today. |
pages.*.sections[][kind=list].create.label |
string | Stable | |
pages.*.sections[][kind=list].create.prefill |
object | Stable | Columns filled from the page’s record: the new row’s column to the record’s column ({ patient_id: ‘patient_id’ }), as a headline action’s prefill maps a form’s input to the record’s field. Used in examples/apps/lintel/pages/unit.ts. |
pages.*.sections[][kind=list].create.show |
array | Stable | |
pages.*.sections[][kind=list].empty |
object | Stable | Guidance for an empty related list, or hide (leave it out while it has no rows) or collapse (say so in one line with the other empty lists). A list that offers an Add collapses rather than hides, and a tab keeps at least one list. One of collapse, hide. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=list].empty.action |
object | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].empty.action.label |
string | object | Stable | One of <presentationCopy>. |
pages.*.sections[][kind=list].empty.action.to |
string | Stable | Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=list].empty.description |
string | object | Stable | A sentence under the title. One of <presentationCopy>. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].empty.title |
string | object | Stable | One of <presentationCopy>. |
pages.*.sections[][kind=list].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].group |
object | Stable | The rows under a header for each record they share, one level deep. limit then counts the rows to a group (at most 50) and group.limit the groups to a page. Tables only: not with a presentation, same or rowActions. Used in examples/apps/lintel/pages/resident.ts. |
pages.*.sections[][kind=list].group.by |
string | Stable | The column, or the path up references to one, the rows are grouped under. A reference makes each group that record: its name, linked to its page. A plain column makes each group its value. It cannot end at the record the page is on. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=list].group.limit |
integer | Stable | Groups to a page. Default 5. |
pages.*.sections[][kind=list].group.show |
array | Stable | Columns of the grouped record, said after its name in the header. Only where by ends at a reference. |
pages.*.sections[][kind=list].group.sort |
string | Stable | The groups’ order, on one column of the grouped record: “created_on desc”. Absent, the largest group first. |
pages.*.sections[][kind=list].kind |
Stable | One of list. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=list].limit |
integer | Stable | Rows to a page; with group, the rows to a group (at most 50). |
pages.*.sections[][kind=list].near |
object | Stable | Number columns kept within ± this fraction of the record’s value (0.25 is ±25%); the first is also the order, closest first. |
pages.*.sections[][kind=list].presentation |
object | Stable | “gallery”: a related list over a resource whose rows are image files, drawn as a lead photo, thumbnails and a lightbox. A cards object: the rows as cards, in the list view’s cards grammar. The one current row as a card is a section of its own, kind current. One of gallery. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].badge |
string | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].description |
string | Stable | A text column said under the title at the card’s full width, without a caption, clamped to three lines. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].facts |
array | Stable | Used in examples/apps/lintel/pages/lease.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].facts[].column |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].facts[].label |
string | object | Stable | |
pages.*.sections[][kind=list].presentation[kind=cards].facts[].label.many |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].facts[].label.one |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].facts[].position |
"before" · "after" |
Stable | Where the word stands: after the value (the default) or before it. One of after, before. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].footer |
array | Stable | Up to four values along the card’s foot under a hairline, written as facts are: a catalog item’s price and how long it takes. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].footer[].column |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].footer[].label |
string | object | Stable | |
pages.*.sections[][kind=list].presentation[kind=cards].footer[].label.many |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].footer[].label.one |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].footer[].position |
"before" · "after" |
Stable | Where the word stands: after the value (the default) or before it. One of after, before. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].icon |
string | Stable | A column whose display rule maps its values to icons: the card wears its value’s icon before the title. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].image |
string | object | Stable | Used in examples/apps/lintel/landing.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].image.about |
string | Stable | A reference column of the card’s row: the files are the record it names. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].image.from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].image.sort |
string | Stable | |
pages.*.sections[][kind=list].presentation[kind=cards].image.whose |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].kind |
Stable | One of cards. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=list].presentation[kind=cards].media |
"cover" · "avatar" · "icon" |
Stable | How the image is framed. Omit or use cover for the existing picture; avatar makes it a circular portrait and falls back to initials from primary. One of avatar, cover, icon. |
pages.*.sections[][kind=list].presentation[kind=cards].primary |
string | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].properties |
array | Stable | Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].presentation[kind=cards].value |
string | Stable | Used in examples/apps/lintel/commands/ledger.ts. |
pages.*.sections[][kind=list].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=list].rowActions |
boolean | Stable | true puts a ⋯ menu at the end of each row with that row’s own actions and machine verbs, as its page offers them. Not with a presentation. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].same |
array | Stable | Instead of whose, rows that share a key with the record: columns a listed row shares with the page’s own record, each a column of both tables; over the page’s own table the record itself is left out. A record with no value there lists nothing. Used in examples/apps/lintel/pages/unit.ts. |
pages.*.sections[][kind=list].segment |
string | Stable | One of the table’s segments (resources.<table>.segments), its conditions ANDed with query. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=list].show |
array | Stable | Columns of from to show — a path, or { column, label } to say it in the app’s words. Absent means a sensible default. |
pages.*.sections[][kind=list].show[].column |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=list].show[].label |
string | Stable | |
pages.*.sections[][kind=list].sizing |
"fit" · "scroll" |
Stable | Fit available width (default), or preserve content widths with horizontal scrolling. One of fit, scroll. |
pages.*.sections[][kind=list].sort |
string | Stable | Written like the query bar: “due_on desc, name”. |
pages.*.sections[][kind=list].totals |
array | Stable | Numeric columns, rollups or computed numbers summed in one ruled footer row, over every row that points at the record through its path. No query or same, no presentation. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=list].whose |
string | Stable | Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=metric]
Section titled “pages.*.sections[][kind=metric]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=metric].about |
string | Stable | The record this section is about, when it is not the root: a reference column of the base, like “site_id”. whose then ends at that table. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=metric].format |
"percent" · "number" · "money" · "duration" |
Stable | How the figure is said, as a dashboard metric’s: percent (the figure is 0–100, said with %: “avg won_flag * 100” reads “53.8%”), number, money in the App’s currency, or duration (the figure is seconds, said as “10h 2m”). Absent, a measure of one column takes that column’s display rule. One of duration, money, number, percent. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=metric].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=metric].kind |
Stable | One of metric. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=metric].measure |
string | Stable | The dashboard’s words: “count” (the default), “sum amount”, “avg total as mean”. Everything but a count names a column. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=metric].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=metric].segment |
string | Stable | One of the table’s segments (resources.<table>.segments), its conditions ANDed with query. Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=metric].unit |
string | Stable | A word said after the figure (“of 5”, “days”). Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=metric].whose |
string | Stable | The from rows whose named column is this record: “customer_id”, or “invoice_id.customer_id” two references away. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=note]
Section titled “pages.*.sections[][kind=note]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=note].action |
object | Stable | A local room or checked cross-App destination. An App page only. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=note].action.label |
string | Stable | |
pages.*.sections[][kind=note].action.to |
string | Stable | One of <appTarget>. Used in examples/apps/lintel/dashboards.ts. |
pages.*.sections[][kind=note].icon |
"house" · "tray" · "list" · "list-checks" · "kanban" · "table" · "calendar" · "calendar-check" · "clock" · "chart-bar" · "chart-line" · "chart-pie" · "gauge" · "target" · "flag" · "user" · "users" · "user-circle" · "address-book" · "handshake" · "buildings" · "storefront" · "briefcase" · "package" · "truck" · "car" · "shopping-cart" · "receipt" · "currency-dollar" · "credit-card" · "wallet" · "bank" · "file" · "file-text" · "folder" · "clipboard-text" · "note" · "archive" · "tag" · "ticket" · "star" · "bookmark-simple" · "bell" · "envelope" · "chat-circle" · "phone" · "headset" · "megaphone" · "globe" · "map-pin" · "magnifying-glass" · "gear" · "sliders" · "wrench" · "bug" · "shield-check" · "lock" · "key" · "database" · "stack" · "lightning" · "check-circle" · "warning" · "info" · "cell-signal-low" · "cell-signal-medium" · "cell-signal-high" · "cell-signal-full" · "fire" · "hourglass" · "circle-dashed" · "x-circle" · "plus-circle" · "pencil-simple" · "paper-plane-tilt" · "arrows-left-right" · "arrow-circle-down" · "arrow-circle-up" · "laptop" · "monitor" · "device-mobile" · "printer" · "stethoscope" · "heartbeat" · "heart" · "pill" · "syringe" · "first-aid-kit" · "thermometer" · "flask" · "test-tube" · "microscope" · "bed" · "hospital" · "ambulance" · "tooth" · "eyeglasses" · "wheelchair" · "baby" · "dna" · "brain" · "bandaids" · "hand-heart" · "graduation-cap" · "book-open" · "student" · "chalkboard-teacher" · "factory" · "warehouse" · "house-line" · "plant" · "leaf" · "sun" · "cloud" · "drop" · "airplane" · "bicycle" · "bus" · "train" · "boat" · "hammer" · "toolbox" · "plug" · "lightbulb" · "cube" · "camera" · "image" · "trophy" · "gift" · "coffee" · "fork-knife" · "shopping-bag" · "basket" · "barcode" · "qr-code" · "scales" · "gavel" · "certificate" · "identification-card" · "fingerprint" · "eye" · "link" · "paperclip" · "scissors" · "palette" · "code" · "terminal" · "users-three" · "user-plus" |
Stable | A curated mark above the words. One of <appIcon>. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=note].kind |
Stable | One of note. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=note].text |
string | Stable | The words. Plain text; blank lines separate paragraphs. |
pages.*.sections[][kind=note].variant |
"quiet" · "callout" |
Stable | quiet: small print, no mark. callout: a ground of its own, for what must be seen. Absent: the plain note. One of callout, quiet. |
pages.*.sections[][kind=timeline]
Section titled “pages.*.sections[][kind=timeline]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=timeline].compact |
object | Stable | Rows drawn as one line by one of their columns’ value: { kind: [‘system’] }. |
pages.*.sections[][kind=timeline].composer |
object | Stable | A conversation’s pinned composer under the rows: a Reply / Internal note toggle running these commands, the text typed becoming the command’s first text input. Not with create. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=timeline].composer.note |
string | Stable | The command an Internal note runs; absent, the composer is a reply box alone. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=timeline].composer.reply |
string | Stable | The command a Reply runs on this record, offered to the reader by an action of the page’s resource. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=timeline].composer.templates |
object | Stable | Canned replies: a Templates menu beside Send; picking one fills the box and sends nothing. |
pages.*.sections[][kind=timeline].composer.templates.from |
string | Stable | The resource whose rows are the canned replies. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=timeline].composer.templates.label |
string | Stable | The column a reader picks a reply by. |
pages.*.sections[][kind=timeline].composer.templates.query |
string | Stable | Which rows are offered, in the query language: ‘active = true’ (me is the reader). Absent, every row the reader may read. |
pages.*.sections[][kind=timeline].composer.templates.text |
string | Stable | The column whose words fill the box. |
pages.*.sections[][kind=timeline].create |
string | object | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=timeline].create.defaults |
object | Stable | The values the new row starts with, over the child resource’s form defaults: a literal, or the constant today, now or me ({ “auto”: “today” } in JSON). Used in examples/apps/tick/app.ts. |
pages.*.sections[][kind=timeline].create.defaults.*.auto |
"today" · "now" · "me" |
Stable | One of me, now, today. |
pages.*.sections[][kind=timeline].create.label |
string | Stable | |
pages.*.sections[][kind=timeline].create.show |
array | Stable | |
pages.*.sections[][kind=timeline].kind |
Stable | One of timeline. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=timeline].limit |
integer | Stable | Per stream, before the merge. |
pages.*.sections[][kind=timeline].newest |
"first" · "last" |
Stable | Where the newest row sits. ‘last’ reads the section as a conversation: oldest first, the newest at the foot, scrolled to on arrival. Absent or ‘first’, newest first. One of first, last. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=timeline].side |
string | Stable | The other party’s rows, drawn against the far edge on a soft surface: a condition over each stream’s rows in the query language, where record.<column> is the page’s record (‘author_id = record.caller_id’). A stream whose table lacks a column it names is never on the far side; a stream’s own side replaces it. |
pages.*.sections[][kind=timeline].streams |
array | Stable | Dated child rows from several tables, merged newest-first into one stream. |
pages.*.sections[][kind=timeline].streams[].about |
string | Stable | A reference column of the page’s table: the stream is about the row it names, and whose leads there. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=timeline].streams[].at |
string | Stable | The date column the stream is ordered and merged by. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=timeline].streams[].author |
string | Stable | Who wrote each row: a column, or a dotted path, said beside its date. Used in examples/apps/lintel/commands/maintenance.ts. |
pages.*.sections[][kind=timeline].streams[].compact |
Stable | Every row of this stream drawn as one line, in place of the timeline’s compact rules. One of true. |
|
pages.*.sections[][kind=timeline].streams[].detail |
string | Stable | A quieter second word — a kind, an author. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=timeline].streams[].from |
string | Stable | Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=timeline].streams[].query |
string | Stable | Extra narrowing, in the query language. |
pages.*.sections[][kind=timeline].streams[].show |
string | Stable | The line each row becomes: a column, or a dotted path. |
pages.*.sections[][kind=timeline].streams[].side |
string | Stable | This stream’s own far side, in place of the timeline’s: a condition over its rows (‘person_id = record.caller_id’). |
pages.*.sections[][kind=timeline].streams[].tone |
"good" · "warn" · "bad" · "info" · "neutral" |
Stable | Every row of this stream on a quiet ground in this tone, in place of the timeline’s tone rules. One of bad, good, info, neutral, warn. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=timeline].streams[].whose |
string | Stable | The path from from back to this record. Used in examples/apps/lintel/resources.ts. |
pages.*.sections[][kind=timeline].tone |
object | Stable | A row’s quiet ground by one of its columns’ value: { kind: { internal: ‘warn’ } }. Read on each stream whose table has the column and that says no tone of its own. Used in examples/apps/lintel/pages/maintenance_request.ts. |
pages.*.sections[][kind=view]
Section titled “pages.*.sections[][kind=view]”| Key | Type | Status | What it does |
|---|---|---|---|
pages.*.sections[][kind=view].about |
string | Stable | The record this section is about, when it is not the root: a reference column of the base, like “site_id”. whose then ends at that table. Used in examples/apps/lintel/views.ts. |
pages.*.sections[][kind=view].kind |
Stable | One of view. Used in examples/apps/lintel/blueprint.ts. |
|
pages.*.sections[][kind=view].limit |
integer | Stable | Rows per page. |
pages.*.sections[][kind=view].view |
string | Stable | A list view’s key. Used in examples/apps/lintel/app.ts. |
pages.*.sections[][kind=view].whose |
string | Stable | The view’s rows whose named column is this record. Used in examples/apps/lintel/resources.ts. |
page file: <appTarget>.app
Section titled “page file: <appTarget>.app”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.app |
string | Stable |
page file: <appTarget>.key
Section titled “page file: <appTarget>.key”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.key |
object | Stable | Used in examples/apps/lintel/jobs.ts. |
<appTarget>.key.*.column |
string | Stable | Used in examples/apps/lintel/app.ts. |
page file: <appTarget>.kind
Section titled “page file: <appTarget>.kind”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.kind |
"home" · "view" · "record" |
Stable | One of home, record, view. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>.resource
Section titled “page file: <appTarget>.resource”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.resource |
string | Stable |
page file: <appTarget>.tenant
Section titled “page file: <appTarget>.tenant”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.tenant |
object | Stable | |
<appTarget>.tenant.kind |
"choose" · "platform" |
Stable | One of choose, platform. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>.tenant[kind=tenant]
Section titled “page file: <appTarget>.tenant[kind=tenant]”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.tenant[kind=tenant].id |
string | integer | object | Stable | |
<appTarget>.tenant[kind=tenant].id.column |
string | Stable | Used in examples/apps/lintel/app.ts. |
<appTarget>.tenant[kind=tenant].kind |
Stable | One of tenant. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>.view
Section titled “page file: <appTarget>.view”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>.view |
string | Stable | Used in examples/apps/lintel/app.ts. |
page file: <appTarget>[kind=home].key
Section titled “page file: <appTarget>[kind=home].key”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=home].key |
Stable | Used in examples/apps/lintel/jobs.ts. |
page file: <appTarget>[kind=home].kind
Section titled “page file: <appTarget>[kind=home].kind”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=home].kind |
Stable | One of home. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>[kind=home].resource
Section titled “page file: <appTarget>[kind=home].resource”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=home].resource |
Stable |
page file: <appTarget>[kind=home].view
Section titled “page file: <appTarget>[kind=home].view”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=home].view |
Stable | Used in examples/apps/lintel/app.ts. |
page file: <appTarget>[kind=record].kind
Section titled “page file: <appTarget>[kind=record].kind”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=record].kind |
Stable | One of record. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>[kind=record].view
Section titled “page file: <appTarget>[kind=record].view”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=record].view |
Stable | Used in examples/apps/lintel/app.ts. |
page file: <appTarget>[kind=view].key
Section titled “page file: <appTarget>[kind=view].key”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=view].key |
Stable | Used in examples/apps/lintel/jobs.ts. |
page file: <appTarget>[kind=view].kind
Section titled “page file: <appTarget>[kind=view].kind”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=view].kind |
Stable | One of view. Used in examples/apps/lintel/blueprint.ts. |
page file: <appTarget>[kind=view].resource
Section titled “page file: <appTarget>[kind=view].resource”| Key | Type | Status | What it does |
|---|---|---|---|
<appTarget>[kind=view].resource |
Stable |
page file: <component>.id
Section titled “page file: <component>.id”| Key | Type | Status | What it does |
|---|---|---|---|
<component>.id |
string | Stable |
page file: <component>.kind
Section titled “page file: <component>.kind”| Key | Type | Status | What it does |
|---|---|---|---|
<component>.kind |
"section" · "value" · "input" · "list" · "page" |
Stable | section (default): a custom section. value: a value renderer. input: a form field’s control. list: a list view’s rows. A free-form page is a file of its own (pages/<path>.page.tsx, definePage), not a component. One of input, list, page, section, value. Used in examples/apps/lintel/blueprint.ts. |
page file: <component>.module
Section titled “page file: <component>.module”| Key | Type | Status | What it does |
|---|---|---|---|
<component>.module |
string | Stable | A path inside the App directory, written from it: ‘./widgets/Thing.tsx’. |
page file: <component>.props
Section titled “page file: <component>.props”| Key | Type | Status | What it does |
|---|---|---|---|
<component>.props |
object | Stable | |
<component>.props.*[type=boolean].default |
boolean | Stable | |
<component>.props.*[type=boolean].type |
Stable | One of boolean. Used in examples/apps/lintel/blueprint.ts. |
|
<component>.props.*[type=choice].default |
string | Stable | |
<component>.props.*[type=choice].options |
array | Stable | |
<component>.props.*[type=choice].type |
Stable | One of choice. Used in examples/apps/lintel/blueprint.ts. |
|
<component>.props.*[type=number].default |
number | Stable | |
<component>.props.*[type=number].max |
number | Stable | Used in examples/apps/lintel/commands/ledger.ts. |
<component>.props.*[type=number].min |
number | Stable | Used in examples/apps/lintel/commands/ledger.ts. |
<component>.props.*[type=number].type |
Stable | One of number. Used in examples/apps/lintel/blueprint.ts. |
|
<component>.props.*[type=text].default |
string | Stable | |
<component>.props.*[type=text].max |
integer | Stable | Used in examples/apps/lintel/commands/ledger.ts. |
<component>.props.*[type=text].type |
Stable | One of text. Used in examples/apps/lintel/blueprint.ts. |
page file: <presentationCopy>.args
Section titled “page file: <presentationCopy>.args”| Key | Type | Status | What it does |
|---|---|---|---|
<presentationCopy>.args |
object | Stable | Each ICU argument’s column path: { “title”: “thread_id.title” }. |
page file: <presentationCopy>.message
Section titled “page file: <presentationCopy>.message”| Key | Type | Status | What it does |
|---|---|---|---|
<presentationCopy>.message |
string | Stable | Used in examples/apps/lintel/commands/leasing.ts. |
page file: page
Section titled “page file: page”| Key | Type | Status | What it does |
|---|---|---|---|
page |
Stable | The same keys as pages.*. |