Home > @polyspec/crudui-generator-core
crudui-generator-core package
Classes
|
Class |
Description |
|---|---|
|
One editable form instance over a shared template. All row operations are scoped to a collection path; no global string replacement touches siblings. Data, undo history and view state (collapsed rows) are separate; view state is never submitted. | |
|
The error of decodeFormRenderOptions() and of the renderers for render options outside the contract of form-runtime.md: a | |
|
The error of decodeFormTemplate() for a value that is no compiled form template. Its | |
|
An unregistered field type reached the renderer (default-throw mode). |
Functions
|
Function |
Description |
|---|---|
|
Evaluate the template's buttons for a record. Text is the declared content or the interface text named by the button type; design classes and styles follow the field design rules against the record data. | |
|
Bind fresh data to a cached structure. No loader, composition or template mutation. | |
|
Compose a detail specification, evaluate one supplied record and return display cells. Detail delegates field composition, conditions, localization and cell formatting to the list engine; it queries no data. | |
|
Compose a list spec and build its | |
|
Build the structure map: the form's rows, nested as in the form. | |
|
Whether a history has a record to restore in the forward direction. | |
|
Whether a history has a record to restore. | |
|
Row paths ( | |
|
Compose and prepare the entire form before any record data exists. | |
|
Browser event delegation for all adapters, including raw leaf controls. | |
|
Connect a rendered structure map: its buttons act on the form, and selecting a row focuses that form row's first control and scrolls it into view clear of the sticky headers and the footer. | |
|
Mark stuck sticky row headers in a browser without scroll-state container queries (Firefox, Safari), and do nothing elsewhere. A header container is stuck while sticky positioning moves it from the top of its row; | |
|
Create an independent mutable instance from a cacheable form template. | |
|
Generate a new row key. This is identity, never a serialization index. | |
|
Decode render options, such as the options that a server wrote into a page with | |
|
Decode the JSON value of a compiled form template, such as a template that a server wrote into a page with | |
|
A history with nothing to undo. Replacing the record returns to it. | |
|
Markup of the form buttons. Every renderer inserts this one string into the footer controls group. The buttons are evaluated buttons: a list of objects whose | |
|
The root description of a template translated for | |
|
Return the interface text for a supported language. | |
|
The initial view: every row expanded. Replacing the record returns to it. | |
|
Replace an element's content with rendered markup while keeping every existing node that the new markup still contains. A string renderer re-renders the whole form after each change; patching keeps the focused control, its text selection and an input method composition, as the framework renderers do. Nodes match by kind and element name, and elements by their identity: a row key, a field path, an id, or a control name with its value for checkboxes and radio buttons. Unkeyed nodes match in order. Attributes are set to those of the new markup; control values and checked states are live properties, which A script runs once, when its markup first appears: each script in inserted markup becomes a new script element once the whole markup is in place, and the browser runs it when it is connected, so a script finds the controls that follow it. A kept script never runs again: a parsed or cloned script never runs, and changing a started script's text does not run it. | |
|
Record the record before a change. A value edit on the same path as the previous value edit shares its entry; every other change adds an entry, dropping the oldest beyond | |
|
Take the next record after the current change. | |
|
Move the collapsed state of a rekeyed row and its descendants to the new row path. | |
|
Drop the collapsed state of a removed row and its descendants. | |
|
Resolve an action target from the values a button declares (CURT-081). A DOM element is read by the browser binding: the action is its | |
|
Run a resolved action. Returns undefined when the target lacks a required path or key. Adding and copying focus the new row, moving focuses the moved row, and removing focuses the previous row, then the next row, then the collection. A name that is none of the eleven actions fails and changes nothing (CURT-091). | |
|
Transport key for an existing database sequence. | |
|
Expand every row, or collapse every collapsible row of the evaluated nodes. | |
|
Expand a collapsed row or collapse an expanded one. | |
|
Take the record before the last change; the next value edit starts a new entry. |
Interfaces
|
Interface |
Description |
|---|---|
|
The values a button declares: its action, collection path and row key (CURT-081). | |
|
The outcome of an action that ran. | |
|
The operation, collection path and row key an action button targets. | |
|
A resolved list or detail action. | |
|
Values and insertion position for a new repeated row. | |
|
A prepend/append affix span (content + optional class/style). | |
|
A badge display: a CSS/variant token plus its translated label. | |
|
Options for evaluating form buttons. | |
|
Per-instance data and presentation; never stored in the shared template. | |
|
A boolean display: the chosen label + the requested form. | |
|
Options for building a list view model. | |
|
Per-build state threaded through the recursive tree builder. | |
|
One evaluated form button. | |
|
A resolved cell format: the catalog type + its isolated dependent keys. | |
|
Inputs the cell renderer needs to produce one cell's display value. | |
|
A resolved cell within one row. | |
|
A standalone checkbox or switcher whose caption is its own label. | |
|
A resolved list column header (markup-free). | |
|
Composition inputs used only when preparing a template. | |
|
The interface messages of the editor controls. | |
|
A group of controls for one row or empty collection. | |
|
One field of a detail view model: a list cell with its key and its translated label. | |
|
Complete evaluated, markup-free detail model. | |
|
The row that receives focus after an action, or the collection itself when | |
|
Browser binding lifecycle. | |
|
A data-independent field blueprint. Repeated children are stored just once. | |
|
Interface labels for row, collection and form controls. | |
|
The submission target of the form element; each member overrides the template's | |
|
One error of a node: a validation result error is accepted unchanged. | |
|
Options of | |
|
Stable subscription snapshot, changed only after a successful operation or view change. | |
|
JSON-serializable, immutable form structure. Safe to share between records. | |
|
Records before earlier changes and records after undone changes, oldest first. | |
|
A raw-html display: passed through unescaped by the adapter. | |
|
An image display: resolved src + alt + size. | |
|
A link display: resolved href + text + target. | |
|
A resolved row: one cell per visible column. | |
|
The fully-evaluated, markup-free description of a list (SPEC §9.3). | |
|
Body slot of a node ( | |
|
Header parts of a node ( | |
|
One evaluated node of the recursive form grammar. | |
|
The group of a select option (docs/spec/form-markup.md, "Choice groups"). | |
|
One static option for select/choice/multichoice/search. | |
|
One row in the structure map. | |
|
What a structure map renders: evaluated nodes and undo availability, such as a form snapshot. | |
|
One pagination button. A renderer chooses the button's text by its role (‹, the page number, ›); | |
|
Resolved pagination declaration with the caller's current page and total. | |
|
The outcome of redoing one change. | |
|
Options for list rendering. | |
|
Fully resolved design for one field at render time. | |
|
Resolved class+style for one DOM node. | |
|
One control button. | |
|
Resolved sort declaration. | |
|
The outcome of undoing one change. | |
|
A surfaced unsupported-type marker (only in 'marker' mode). | |
|
View state kept outside record data; it is never submitted or serialized with the data. | |
|
Inputs every widget evaluator needs for one leaf field. | |
|
The fully-evaluated, markup-free description of one leaf widget. A field adapter renders the element tree from THIS — it computes nothing. |
Type Aliases
|
Type Alias |
Description |
|---|---|
|
A widget the core evaluated, or the marker of a field type the renderers do not support. | |
|
Flat attribute bag (exact HTML attribute names, lowercase). | |
|
Options for building a detail view model: the list options without the list-only | |
|
The display payload a cell renderer emits: a string or a structured value. | |
|
One cell renderer: a function that turns a raw value + the format's isolated dependent keys ( | |
|
The editor of a value that it shows (CUMK-067) or the named error of a value that it does not show (CUMK-068). | |
|
One node of the editor: a group, a field comparison or a judged text. | |
|
Where row controls are rendered. | |
|
Per-instance presentation options. | |
|
Operations a | |
|
Button kinds a spec can declare. A | |
|
Supported content language codes. | |
|
Author-translated content: a string or a per-language map. | |
|
Node kinds of the form grammar; each is a | |
|
Compose, evaluate and render one read-only detail without data access. | |
|
Compose a list specification, evaluate supplied rows and render list HTML. Throws | |
|
Row and collection operations in control order. | |
|
data-source-* descriptor for a dynamic | |
|
Resolve content for the selected language: the text of the language, else English, Korean or the first entry, else | |
|
Behavior when a field |