Widget and parameter reference

This reference covers all 43 component declarations in the six packaged component grammars in this checkout. It is regenerated from their effective metadata. Widgets are grouped by purpose; inherited and shared parameters are documented once and linked from each applicable widget. It describes the development checkout; consult the installed package before relying on a feature in a released application. It does not assign a maturity level or imply that every component is production-ready.

How to read this reference

  • T: text; B: Boolean; L: integer; R: real number; other codes are TYTX types.

  • read: a reactive parameter; ^path updates the presentation from Data.

  • twoWay: the component also writes accepted edits/state back through the binding.

  • —: no binding/default declared in component metadata. This is not a claim that the surrounding Source binding system has no behavior for the attribute.

  • None is a declared nullable/default value, not the text "None".

  • Allowed lists only enumerations explicitly present in metadata. Extra semantic validation is explained in the linked family guide and enforced by the runtime.

Ordinary Source attributes (such as id, class_, hidden, datapath, color, padding, width, height, event declarations and bindings) are described in Writing pages and Themes and CSS. The tables below list component parameters, not an exhaustive HTML/CSS whitelist. A parent’s region/panel attributes belong to that parent; they are shown separately. Dynamic families such as lbl_*, box_*, validate_*, resolver_* and condition_* have additional contracts in the narrative guides.

Select the right collection

from gramlot import Page as GramlotPage
from gramlot.collections.inputs import mygramlot as inputs
from gramlot.collections.layout import mygramlot as layout

class Page(GramlotPage):
    gramlots = [inputs, layout]

    def main(self, root):
        root.dataSetter("customer.name", "Ada")
        root.textbox(value="^customer.name", lbl="Customer", live=True)

Buttons, menu, menuline and spacer belong to the built-in buttons grammar. The other families have prepared descriptors at gramlot.collections.<name>. The base HTML/SVG grammar remains available. dialog is the window component; html_dialog explicitly requests the browser’s HTML tag.

Collection loading, generation and overrides explains the complete package lifecycle. Examples and visual tour connects these controls to runnable lessons and screenshots.

Collection

Components

inputs

textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar

buttons

button, toggleButton, dropDownButton, menu, menuline, spacer

layout

transformPane, dialog, floatingPane, framePane, trayPane, formlet, groupBox, contentPane, borderContainer, stackContainer, tabContainer

tree

tree

editors

codeMirror, htmlEditor, htmlPreview, markdownEditor, markdownPreview

typst

typstPreview

Shared parameter contracts

Each widget below links only the shared contracts it supports. A shared name can have different types, defaults or bindings; separate rows preserve those differences.

Values and bindings

The value type and writeback behavior depend on the control. Use a Data pointer for binding; see Data binding.

Applies to: textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar, toggleButton, codeMirror, htmlEditor, htmlPreview, markdownEditor, markdownPreview, typstPreview.

Parameter

Type

Default

Binding

Allowed

Applies to

value

T or None

—

twoWay

—

textbox, radioButtonText, textBoxArea, passwordbox, filteringSelect, callbackSelect, comboBox, dbComboBox, checkBoxText

value

B

—

twoWay

—

checkbox

value

B

False

twoWay

—

radioButton, toggleButton

value

T

‘#000000’

twoWay

—

colorpicker

value

R

0

twoWay

—

horizontalSlider, verticalSlider

value

L / R / N or None

—

twoWay

—

numberTextBox

value

D or None

—

twoWay

—

dateTextBox, dateCalendar

value

H or None

—

twoWay

—

timeTextBox

value

T / L or None

—

twoWay

—

dbSelect

value

T

‘’

twoWay

—

codeMirror, htmlEditor, markdownEditor

value

T

‘’

read

—

htmlPreview, markdownPreview, typstPreview

Disabled, readonly and live updates

Disabled prevents interaction; readonly preserves reading without accepting edits. live controls when edits reach Data. See Field behavior.

Applies to: textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar, button, toggleButton, dropDownButton, menuline, codeMirror, htmlEditor, markdownEditor.

Parameter

Type

Default

Binding

Allowed

Applies to

disabled

B

False

read

—

All listed above

readonly

B

False

read

—

textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar, toggleButton, codeMirror, htmlEditor, markdownEditor

live

B

False

read

—

textbox, checkbox, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox

live

B

True

read

—

codeMirror, htmlEditor, markdownEditor

Labels and field presentation

lbl supplies a field label; lbl_position places it. The lbl_* and box_* style families are described in Themes and CSS.

Applies to: textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar, groupBox, codeMirror, htmlEditor, markdownEditor.

Parameter

Type

Default

Binding

Allowed

Applies to

lbl

T or None

—

read

—

All listed above

lbl_position

T

‘TL’

read

‘TL’, ‘TC’, ‘TR’, ‘L’, ‘R’, ‘BL’, ‘BC’, ‘BR’

All listed above

Placeholders

Placeholder text is a hint, not a value or a replacement for a field label.

Applies to: textbox, textBoxArea, passwordbox, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox.

Parameter

Type

Default

Binding

Allowed

Applies to

placeholder

T

‘’

—

—

All listed above

Validation

The validate_* family belongs to the shared validation contract, not to each widget. See Validation rules, callbacks and messages. Rule conditions and messages use the documented _if, _iswarning, _error and _warning suffixes. For example: root.textbox(value=”^customer.email”, lbl=”Email”, validate_email=True).

Applies to: textbox, checkbox, radioButtonText, textBoxArea, passwordbox, radioButton, colorpicker, horizontalSlider, verticalSlider, numberTextBox, dateTextBox, timeTextBox, filteringSelect, callbackSelect, comboBox, dbSelect, dbComboBox, checkBoxText, dateCalendar, codeMirror, htmlEditor, markdownEditor.

Parameter

Type

Default

Binding

Allowed

Applies to

validate_select

B or None

—

read

—

All listed above

validate_notnull

B or None

False

read

—

All listed above

validate_empty

T / L / N / R / B / D / H / DH / DHZ or None

—

read

—

All listed above

validate_case

T or None

—

read

‘upper’, ‘lower’, ‘title’, ‘capitalize’, ‘u’, ‘l’, ‘t’, ‘c’

All listed above

validate_len

T or None

—

read

—

All listed above

validate_min

T / L / N / R / B / D / H / DH / DHZ or None

—

read

—

All listed above

validate_max

T / L / N / R / B / D / H / DH / DHZ or None

—

read

—

All listed above

validate_email

B or None

—

read

—

All listed above

validate_regex

T or None

—

read

—

All listed above

validate_call

T or None

—

—

—

All listed above

validate_remote

T or None

—

read

—

All listed above

validate_onAccept

T or None

—

—

—

All listed above

validate_onReject

T or None

—

—

—

All listed above

validate__onResult

T or None

—

—

—

All listed above

validate_timeout

L or None

—

read

—

All listed above

validate_select_if

T / B or None

—

—

—

All listed above

validate_select_iswarning

B or None

—

read

—

All listed above

validate_select_error

T or None

—

read

—

All listed above

validate_select_warning

T or None

—

read

—

All listed above

validate_notnull_if

T / B or None

—

—

—

All listed above

validate_notnull_iswarning

B or None

—

read

—

All listed above

validate_notnull_error

T or None

—

read

—

All listed above

validate_notnull_warning

T or None

—

read

—

All listed above

validate_empty_if

T / B or None

—

—

—

All listed above

validate_empty_iswarning

B or None

—

read

—

All listed above

validate_empty_error

T or None

—

read

—

All listed above

validate_empty_warning

T or None

—

read

—

All listed above

validate_case_if

T / B or None

—

—

—

All listed above

validate_case_iswarning

B or None

—

read

—

All listed above

validate_case_error

T or None

—

read

—

All listed above

validate_case_warning

T or None

—

read

—

All listed above

validate_len_if

T / B or None

—

—

—

All listed above

validate_len_iswarning

B or None

—

read

—

All listed above

validate_len_error

T or None

—

read

—

All listed above

validate_len_warning

T or None

—

read

—

All listed above

validate_min_if

T / B or None

—

—

—

All listed above

validate_min_iswarning

B or None

—

read

—

All listed above

validate_min_error

T or None

—

read

—

All listed above

validate_min_warning

T or None

—

read

—

All listed above

validate_max_if

T / B or None

—

—

—

All listed above

validate_max_iswarning

B or None

—

read

—

All listed above

validate_max_error

T or None

—

read

—

All listed above

validate_max_warning

T or None

—

read

—

All listed above

validate_email_if

T / B or None

—

—

—

All listed above

validate_email_iswarning

B or None

—

read

—

All listed above

validate_email_error

T or None

—

read

—

All listed above

validate_email_warning

T or None

—

read

—

All listed above

validate_regex_if

T / B or None

—

—

—

All listed above

validate_regex_iswarning

B or None

—

read

—

All listed above

validate_regex_error

T or None

—

read

—

All listed above

validate_regex_warning

T or None

—

read

—

All listed above

validate_call_if

T / B or None

—

—

—

All listed above

validate_call_iswarning

B or None

—

read

—

All listed above

validate_call_error

T or None

—

read

—

All listed above

validate_call_warning

T or None

—

read

—

All listed above

validate_remote_if

T / B or None

—

—

—

All listed above

validate_remote_iswarning

B or None

—

read

—

All listed above

validate_remote_error

T or None

—

read

—

All listed above

validate_remote_warning

T or None

—

read

—

All listed above

Icons and label presentation

icon holds text or an emoji; iconSrc loads an image such as SVG. iconSize sizes the icon; labelPosition controls label presentation on menus and toolbars. See Menus and toolbars.

Applies to: button, toggleButton, dropDownButton, menu, menuline.

Parameter

Type

Default

Binding

Allowed

Applies to

icon

T

‘’

read

—

button, toggleButton, dropDownButton, menuline

iconSrc

T

‘’

read

—

button, toggleButton, dropDownButton, menuline

labelPosition

T

‘beside’

read

‘beside’, ‘below’, ‘tooltip’

menu

iconSize

R

24

read

—

menu

labelPosition

T or None

—

read

‘beside’, ‘below’, ‘tooltip’

menuline

iconSize

R or None

—

read

—

menuline

Locale and formatting

Data retains its typed value; locale and format affect presentation and parsing. workdate supplies date-editing context. See Typed controls.

Applies to: numberTextBox, dateTextBox, timeTextBox, dateCalendar.

Parameter

Type

Default

Binding

Allowed

Applies to

locale

T or None

—

read

—

All listed above

format

T or None

—

read

—

numberTextBox, dateTextBox, timeTextBox

workdate

T or None

—

read

—

dateTextBox, dateCalendar

Window behavior and geometry

Dialog and floatingPane share controls, geometry and state. Their movement, resize and collapse defaults differ as shown below. Dialog remains modal, including when collapsed or maximized. See Windows.

Applies to: dialog, floatingPane.

Parameter

Type

Default

Binding

Allowed

Applies to

title

T

‘’

read

—

All listed above

open

B

False

twoWay

—

All listed above

collapsed

B

False

twoWay

—

All listed above

closable

B

True

read

—

All listed above

movable

B

False

read

—

dialog

resizable

B

False

read

—

dialog

collapsible

B

False

read

—

dialog

maximizable

B

False

read

—

All listed above

maximized

B

False

twoWay

—

All listed above

beforeClose

T or None

—

—

—

All listed above

width

T or None

—

twoWay

—

All listed above

height

T or None

—

twoWay

—

All listed above

left

T or None

—

twoWay

—

All listed above

top

T or None

—

twoWay

—

All listed above

minWidth

T or None

—

read

—

All listed above

minHeight

T or None

—

read

—

All listed above

movable

B

True

read

—

floatingPane

resizable

B

True

read

—

floatingPane

collapsible

B

True

read

—

floatingPane

Border and frame regions

BorderContainer and framePane share region arrangement and persistence. Child region parameters stay with each parent below. See Containers.

Applies to: framePane, borderContainer.

Parameter

Type

Default

Binding

Allowed

Applies to

design

T

‘headline’

read

‘headline’, ‘sidebar’

All listed above

persist

B

False

read

—

All listed above

Panel selection

StackContainer and tabContainer select one child panel; selectedPage uses its page name and selected its index. See Containers.

Applies to: stackContainer, tabContainer.

Parameter

Type

Default

Binding

Allowed

Applies to

selectedPage

T or None

None

twoWay

—

All listed above

selected

L or None

None

twoWay

—

All listed above

Text fields

textbox

Single-line text with label, validation and optional live updates.

Collection: inputs. Browser element: gramlot-textbox.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

passwordbox

Masked text entry; masking does not encrypt or persist the value.

Collection: inputs. Browser element: gramlot-passwordbox.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

textBoxArea

Multiline plain text with the same field and validation contract.

Collection: inputs. Browser element: gramlot-text-box-area.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

rows

L

4

read

—

cols

L

24

read

—

Choices and selectors

checkbox

Boolean value, displayed as a checkbox or a switch.

Collection: inputs. Browser element: gramlot-checkbox.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

mode

T

‘checkbox’

read

‘checkbox’, ‘switch’

switch_color

T or None

None

read

—

label

T

‘’

—

—

radioButton

One Boolean radio option; the Source-scoped group keeps its members mutually exclusive.

Collection: inputs. Browser element: gramlot-radio-button.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

label

T

‘’

—

—

group

T or None

—

read

—

radioButtonText

A group of local radio choices storing one option code.

Collection: inputs. Browser element: gramlot-radio-button-text.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

values

T

—

read

—

cols

L

1

read

—

checkBoxText

A local multi-choice group storing the selected codes.

Collection: inputs. Browser element: gramlot-check-box-text.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

values

T

—

read

—

cols

L

1

read

—

colorpicker

Browser color input, with a bound color value.

Collection: inputs. Browser element: gramlot-colorpicker.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

filteringSelect

Search a closed set of local choices; Data stores the selected code.

Collection: inputs. Browser element: gramlot-filtering-select.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

values

T

‘’

read

—

separator

T

‘,’

read

—

callbackSelect

Choices supplied by a page callback.

Collection: inputs. Browser element: gramlot-callback-select.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

callback

T

—

—

—

comboBox

Suggestions with free text allowed.

Collection: inputs. Browser element: gramlot-combo-box.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

values

T

‘’

read

—

separator

T

‘,’

read

—

store

X or None

None

read

—

dbSelect

Endpoint-backed choices. Requires an application endpoint implementing the choice response contract; it supplies no database adapter.

Collection: inputs. Browser element: gramlot-db-select.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

dbtable

T

—

read

—

method

T

‘dbSelect’

read

—

columns

T

—

read

—

hiddenColumns

T

—

read

—

order_by

T

—

read

—

limit

L

10

read

—

searchDelay

L

300

read

—

ignoreCase

B

True

read

—

hasDownArrow

B

True

read

—

emptyLabel

T

‘’

read

—

selectedCaption

T

—

—

—

selectedRecord

T

—

—

—

selectedCb

T

—

—

—

autoSelect

B

False

read

—

dbComboBox

Endpoint-backed suggestions with free text; the application owns the endpoint and persistence.

Collection: inputs. Browser element: gramlot-db-combo-box.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation.

Specific parameter

Type

Default

Binding

Allowed

dbtable

T

—

read

—

method

T

‘dbSelect’

read

—

columns

T

—

read

—

hiddenColumns

T

—

read

—

order_by

T

—

read

—

limit

L

10

read

—

searchDelay

L

300

read

—

ignoreCase

B

True

read

—

hasDownArrow

B

True

read

—

emptyLabel

T

‘’

read

—

selectedCaption

T

—

—

—

selectedRecord

T

—

—

—

selectedCb

T

—

—

—

Numbers, dates and time

numberTextBox

Locale-aware numeric editing; Data keeps the declared numeric type.

Collection: inputs. Browser element: gramlot-number-text-box.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation, Locale and formatting.

Specific parameter

Type

Default

Binding

Allowed

dtype

T

‘R’

—

—

min

R or None

—

read

—

max

R or None

—

read

—

horizontalSlider

A bounded numeric range displayed horizontally.

Collection: inputs. Browser element: gramlot-horizontal-slider.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

min

R

0

read

—

max

R

100

read

—

step

R

1

read

—

verticalSlider

A bounded numeric range displayed vertically.

Collection: inputs. Browser element: gramlot-vertical-slider.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

min

R

0

read

—

max

R

100

read

—

step

R

1

read

—

dateTextBox

Civil date editing with an optional calendar popup.

Collection: inputs. Browser element: gramlot-date-text-box.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation, Locale and formatting.

Specific parameter

Type

Default

Binding

Allowed

calendar

B

True

read

—

dateCalendar

An inline civil-date calendar.

Collection: inputs. Browser element: gramlot-date-calendar.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation, Locale and formatting.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

timeTextBox

Civil time editing with locale-aware text parsing.

Collection: inputs. Browser element: gramlot-time-text-box.

Field behavior, typed values, choices and validation.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Placeholders, Validation, Locale and formatting.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Buttons, menus and toolbars

button

An application action button using the existing action/Logic contract.

Collection: buttons. Browser element: gramlot-button.

Commands, hierarchy and toolbar layout.

Shared contracts: Disabled, readonly and live updates, Icons and label presentation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: *. This is a grammar expression, not a list of browser tags.

toggleButton

A command button with a bound Boolean selected state.

Collection: buttons. Browser element: gramlot-toggle-button.

Commands, hierarchy and toolbar layout.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Icons and label presentation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: *. This is a grammar expression, not a list of browser tags.

spacer

Fixed or elastic space in a menu/toolbar; it does not publish a command.

Collection: buttons. Browser element: gramlot-spacer.

Commands, hierarchy and toolbar layout.

Specific parameter

Type

Default

Binding

Allowed

size

R or None

—

—

—

flex

R or None

—

—

—

Forms and containers

formlet

Responsive field layout with shared label alignment.

Collection: layout. Browser element: gramlot-formlet.

Forms, borders, panels and tabs.

Specific parameter

Type

Default

Binding

Allowed

columns

L / T

1

read

—

col_min_width

T or None

—

read

—

Child grammar: *. This is a grammar expression, not a list of browser tags.

groupBox

A labelled content group, optionally collapsible, with an optional Data copy command.

Collection: layout. Browser element: gramlot-group-box.

Forms, borders, panels and tabs.

Shared contracts: Labels and field presentation.

Specific parameter

Type

Default

Binding

Allowed

copy

B

False

read

—

lbl_variant

T

‘bar’

read

‘bar’, ‘underline’, ‘card’

Child grammar: *. This is a grammar expression, not a list of browser tags.

contentPane

A content area or a child region/panel of a layout container.

Collection: layout. Browser element: gramlot-content-pane.

Forms, borders, panels and tabs.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: *. This is a grammar expression, not a list of browser tags.

borderContainer

Five regions with optional splitters, drawers and nested layouts.

Collection: layout. Browser element: gramlot-border-container.

Forms, borders, panels and tabs.

Shared contracts: Border and frame regions.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: *. This is a grammar expression, not a list of browser tags.

Parameters projected by this parent from its children:

Child parameter

Contract

region

{“enum”: [“top”, “bottom”, “left”, “right”, “center”], “required”: true, “unique”: true}

width

Declared by parent

height

Declared by parent

drawer_onclick

{“inline”: [“evt”, “show”]}

framePane

A border composition exposing top, bottom, left, right and center region builders.

Collection: layout. Browser element: gramlot-frame-pane.

Window and frame composition.

Shared contracts: Border and frame regions.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: contentPane. This is a grammar expression, not a list of browser tags.

Parameters projected by this parent from its children:

Child parameter

Contract

region

{“enum”: [“top”, “bottom”, “left”, “right”, “center”], “required”: true, “unique”: true}

width

Declared by parent

height

Declared by parent

drawer_onclick

{“inline”: [“evt”, “show”]}

stackContainer

One selected panel at a time, without a tab strip.

Collection: layout. Browser element: gramlot-stack-container.

Forms, borders, panels and tabs.

Shared contracts: Panel selection.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: *. This is a grammar expression, not a list of browser tags.

Parameters projected by this parent from its children:

Child parameter

Contract

onClose

{“inline”: []}

tabContainer

Selected panels with shaped or underlined tabs on any side.

Collection: layout. Browser element: gramlot-tab-container.

Forms, borders, panels and tabs.

Shared contracts: Panel selection.

Specific parameter

Type

Default

Binding

Allowed

tabMode

T

‘tabs’

read

‘tabs’, ‘underline’

tabPosition

T

‘top’

read

‘top’, ‘bottom’, ‘left’, ‘right’

tabAlign

T

‘start’

read

‘start’, ‘center’, ‘end’

Child grammar: *. This is a grammar expression, not a list of browser tags.

Parameters projected by this parent from its children:

Child parameter

Contract

onClose

{“inline”: []}

detachable

{“dtype”: “B”}

trayPane

Data-owned arrangement of labelled live cards with selection, movement, resize, layers, rotation, zoom and snapping.

Collection: layout. Browser element: gramlot-tray-pane.

Tray workspaces and shared Labelboxes.

Specific parameter

Type

Default

Binding

Allowed

storepath

T

—

—

—

locked

B

False

read

—

gridStep

L

10

read

—

gridVisible

B

False

read

—

rotationStep

N

15

read

—

Child grammar: *. This is a grammar expression, not a list of browser tags.

Parameters projected by this parent from its children:

Child parameter

Contract

minWidth

{“default”: 100, “dtype”: “N”}

minHeight

{“default”: 64, “dtype”: “N”}

transformPane

Applies bound translation, rotation and scale to its retained content.

Collection: layout. Browser element: gramlot-transform-pane.

Forms, borders, panels and tabs.

Specific parameter

Type

Default

Binding

Allowed

x

R

0

read

—

y

R

0

read

—

rotate

R

0

read

—

zoom

R

1

read

—

min

R

0.5

read

—

max

R

3

read

—

step

R

0.01

read

—

onEnd

T or None

—

—

—

Child grammar: *. This is a grammar expression, not a list of browser tags.

Dialogs and floating windows

dialog

A modal window containing a framePane; remains modal when collapsed or maximized.

Collection: layout. Browser element: gramlot-dialog.

Window and frame composition.

Shared contracts: Window behavior and geometry.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: framePane. This is a grammar expression, not a list of browser tags.

floatingPane

A nonmodal window containing a framePane.

Collection: layout. Browser element: gramlot-floating-pane.

Window and frame composition.

Shared contracts: Window behavior and geometry.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

Child grammar: framePane. This is a grammar expression, not a list of browser tags.

Trees

tree

Hierarchical Bag presentation with selection, disclosure and declared drag behavior.

Collection: tree. Browser element: gramlot-tree.

Tree stores, labels and selection.

Specific parameter

Type

Default

Binding

Allowed

storepath

T

—

—

—

draggable

B

False

read

—

labelAttribute

T or None

None

read

—

hideValues

B

False

read

—

labelCb

T or None

None

—

—

getLabel

T or None

None

—

—

getLabelClass

T or None

None

—

—

getIconClass

T or None

None

—

—

selectedLabelClass

T

‘’

read

—

searchText

T

‘’

read

—

autoCollapse

B

False

read

—

selectedPath

T or None

None

twoWay

—

Editors and document previews

codeMirror

Code/text editor with composed language and editor options.

Collection: editors. Browser element: gramlot-code-mirror.

Editor composition and document behavior.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

Specific parameter

Type

Default

Binding

Allowed

language

T

‘text’

read

‘text’, ‘python’, ‘javascript’, ‘typescript’, ‘json’, ‘html’, ‘css’, ‘xml’, ‘markdown’, ‘sql’, ‘typst’

lineNumbers

B

True

read

—

lineWrapping

B

True

read

—

indentUnit

L

4

read

—

fontSize

L

14

read

—

fontFamily

T

‘monospace’

read

—

folding

B

True

read

—

bracketMatching

B

True

read

—

autoCloseBrackets

B

True

read

—

autoIndent

B

True

read

—

autocompletion

B

True

read

—

highlightActiveLine

B

True

read

—

highlightSelectionMatches

B

True

read

—

htmlEditor

Rich HTML editing using the supported engine configuration.

Collection: editors. Browser element: gramlot-html-editor.

Editor composition and document behavior.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

htmlPreview

Read-only HTML preview with the component sanitization contract.

Collection: editors. Browser element: gramlot-html-preview.

Editor composition and document behavior.

Shared contracts: Values and bindings.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

markdownEditor

Markdown editing with the supported editor modes.

Collection: editors. Browser element: gramlot-markdown-editor.

Editor composition and document behavior.

Shared contracts: Values and bindings, Disabled, readonly and live updates, Labels and field presentation, Validation.

No additional component-specific parameters. Use the shared contracts above and ordinary Source/CSS attributes.

markdownPreview

Rendered Markdown preview.

Collection: editors. Browser element: gramlot-markdown-preview.

Editor composition and document behavior.

Shared contracts: Values and bindings.

Specific parameter

Type

Default

Binding

Allowed

allowHtml

B

False

read

—

typstPreview

Typst document preview and optional client PDF compilation; compiler resources are separate from ordinary forms.

Collection: typst. Browser element: gramlot-typst-preview.

Typst compiler and resource ownership.

Shared contracts: Values and bindings.

Specific parameter

Type

Default

Binding

Allowed

filename

T

‘document.pdf’

read

—