talbe definition web

This commit is contained in:
Priec
2026-08-06 17:47:53 +02:00
parent f13def52c1
commit 5f4b026624
14 changed files with 870 additions and 273 deletions

View File

@@ -14,6 +14,37 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
### Added
- **`TableDefinition.ListColumnTypes`** — called by the add-table and
table-definition loaders. The whole response is consumed: `name`, `group`,
`declarable`, `compound`, `spelling`, `requires_currency`, `creation_only`,
`allows_quantity_ledger` and `sql_type` are each read by a rule that used to
be hardcoded in `crate::schema`. The column vocabulary is now the backend's,
so a type it adds is offered by both screens without a change here.
### Changed
- **The column-type picker is the server's list** — it no longer carries its
own. Types the web crate never offered are now reachable: `numeric` and the
`ACCOUNTING_TRANSFER` compound column. Server-generated companion types
(`phone_country`, `iban_bban`, the transfer connectors) are listed by the
endpoint but never offered, and are refused if one is posted anyway.
- **Creation-only types are refused on the append panel by rule, not by name** —
`POST /admin/table-definition/columns` used to exclude `accounting` alone;
it now excludes every type the response marks `creation_only`, which is what
`AddTableColumns` rejects.
- **Compound columns are staged as the backend expands them** — a compound
column takes its type's name, cannot be indexed, and is not offered as a row
display column, since no column of that name survives the expansion.
- **Currency and quantity-ledger rules come from the response** —
`requires_currency` decides which types carry a currency (previously MONEY
and ACCOUNTING by name), and `allows_quantity_ledger` both validates the
choice and writes the hint under the input.
- **`GetProfileDetails` columns show the SQL type behind them** — the
workspace's column list renders `sql_type` from the catalog beside each
logical type, including for the companion columns the backend generates.
## [v0.8.38] — 2026-08-05
The web crate wires up seven gRPC services and calls the following endpoints.