@guiexpert/table 1.1.106 → 1.1.108

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -70,6 +70,9 @@ This is the UI-agnostic table component for your next web app. 😊
70
70
  - Spreadsheet mode: `SpreadsheetFactory.create({ data })` builds column letters, row numbers, a sparse body (a million
71
71
  empty rows cost nothing) and all of the above; `FormulaBar`, insert/delete rows and columns with adjusted references;
72
72
  `spreadsheet: true` for an existing table – since 1.1.99
73
+ - Live data that keeps coming (a log tail, an event stream): `tableApi.appendRows(rows, { follow: "auto", maxRows })` –
74
+ in place, O(k) per update, filter and sort order only for the new rows, selection and focus stay at their rows,
75
+ follow the end or freeze the view, ring buffer; own area models: `rowsAppended(count)` – since 1.1.108
73
76
  - Custom Filtering
74
77
  - In-place Cell Editing
75
78
  - Userdefined Key and Mouse Events
@@ -83,6 +86,27 @@ This is the UI-agnostic table component for your next web app. 😊
83
86
  - Full control over the HTML structure and style
84
87
 
85
88
 
89
+ ## Quick answers
90
+
91
+ - **Hide the scroll bars:** `.my-table .ge-table-scroll-viewport { scrollbar-width: none; }` – the table uses the full
92
+ width and height; wheel, touch, keyboard and the API still scroll.
93
+ - **Rows are appended all the time** (live log, ticker): `tableApi.repaintHard({ py })` counts the rows and shows the
94
+ position in one render pass (`py: Number.MAX_SAFE_INTEGER` follows the end) – since 1.1.107.
95
+ - **Rows arrive all the time (log, stream)?** `tableApi.appendRows(rows, { follow: "auto", maxRows })` – in place, one
96
+ render, selection stays (since 1.1.108); not `addRows()` (copies everything, resets filter and sort).
97
+ - **Clicks lost while the table updates?** Fixed in 1.1.108: a render between `mousedown` and `mouseup` no longer
98
+ swallows `mouseClicked` – the table reports the click for the pressed cell itself.
99
+ - **Own area model with other row heights:** return them from `getRowHeight(i)` and, if all are equal,
100
+ `getConstantRowHeight()` – the scroll height follows them (since 1.1.107; `defaultRowHeights` is only the default).
101
+ - **`repaint()` or `repaintHard()`?** `repaint()` for changed values, `repaintHard()` when rows were added or removed.
102
+ - **Own keys** (Delete, Enter): `keydown` on the host + `tableApi.getActiveCell()` – there is no keyboard event.
103
+ - **Selected rows:** `selectionModel.getMergedRowIndices(n)` → `tableApi.getBodyModel().getRowByIndex(i)` (pass your own
104
+ `SelectionModel` – the default type is `"none"`).
105
+ - **AI assistants:** `llms.txt` in this package – recipes and pitfalls, every snippet compiled against the API.
106
+ - **Nothing visible?** The host div needs a fixed height and the stylesheet `@guiexpert/table/css/main.css`.
107
+
108
+ More: [FAQ in the developer guide](https://github.com/guiexperttable/mono/blob/main/instructions.md#626-faq--quick-answers).
109
+
86
110
  ## Links
87
111
 
88
112
  - [Training: GuiExpert Table step by step](https://gui.expert/training/)