feat(18-01): money list column, danger record actions, preview Edit rule and table kit (task 2)
- columns.yaml type: money with currency or currencyFrom (exactly one), never searchable, not sortable by default; every list row carries the currencyFrom column's value under its own key; the schema serves currency and currencyFrom on the column - pact.AdminRecordAction.Danger, served as danger on cabana.RecordAction (absent when false); RecordActions.vue passes it to the confirm dialog - CellValue money kind through formatMoney with the row's code, the em dash when empty and the amount alone without a code; DataTable aligns money headers and cells to the right - PreviewView renders Edit only when a registered value field allows update (F6) - main.css .summer-table* and .summer-stat__note kit classes (F7) over --c-* variables; cabana README kit rows - fixture record actions void (danger) and resend; TestMoneyListCompile, TestMoneyListSmoke and TestRecordActionDangerSmoke; regenerated OpenAPI and TS types; rebuilt dist; lists-and-filters and admin-controllers docs
This commit is contained in:
@@ -384,6 +384,77 @@
|
||||
font-variant-numeric: tabular-nums;
|
||||
}
|
||||
|
||||
/* A note under a stat value (Phase 18, UI-SPEC F7): placed inside
|
||||
.summer-stat__value after the value text, because .summer-stat is
|
||||
column-reverse. */
|
||||
.summer-stat__note {
|
||||
display: block;
|
||||
margin-top: 4px;
|
||||
font-size: 13px;
|
||||
font-weight: 400;
|
||||
line-height: 1.5;
|
||||
color: var(--c-muted);
|
||||
}
|
||||
|
||||
/* Table kit (Phase 18, UI-SPEC F7): a native-looking table inside a
|
||||
partial card. The wrapper scrolls horizontally inside the card. */
|
||||
.summer-table-wrap {
|
||||
overflow-x: auto;
|
||||
max-width: 100%;
|
||||
}
|
||||
|
||||
.summer-table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
font-size: 14px;
|
||||
line-height: 1.5;
|
||||
color: var(--c-text);
|
||||
}
|
||||
|
||||
.summer-table th {
|
||||
height: var(--spacing-row-head);
|
||||
padding: 0 14px;
|
||||
font-size: 12px;
|
||||
font-weight: 600;
|
||||
color: var(--c-muted);
|
||||
text-align: start;
|
||||
border-bottom: 1px solid var(--c-border);
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.summer-table td {
|
||||
padding: 12px 14px;
|
||||
vertical-align: top;
|
||||
border-bottom: 1px solid var(--c-border);
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
|
||||
.summer-table :where(th, td):first-child {
|
||||
padding-inline-start: 0;
|
||||
}
|
||||
|
||||
.summer-table :where(th, td):last-child {
|
||||
padding-inline-end: 0;
|
||||
}
|
||||
|
||||
.summer-table__num {
|
||||
text-align: end;
|
||||
font-variant-numeric: tabular-nums;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.summer-table__sub {
|
||||
display: block;
|
||||
font-size: 13px;
|
||||
color: var(--c-muted);
|
||||
}
|
||||
|
||||
.summer-table tfoot td {
|
||||
padding-top: 16px;
|
||||
border-bottom: 0;
|
||||
font-weight: 600;
|
||||
}
|
||||
|
||||
/* Callout (Phase 12.1, UI-SPEC): a status hint above a preview screen. */
|
||||
.summer-callout {
|
||||
display: flex;
|
||||
|
||||
Reference in New Issue
Block a user