@guiexpert/table 1.1.92 → 1.1.94
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 +13 -0
- package/css/main.css +142 -0
- package/css/table-classes.css +34 -0
- package/css/table-color-vars.css +32 -0
- package/css/table-pivot.css +42 -0
- package/css/table-row-group.css +25 -0
- package/css/table-tree.css +9 -0
- package/index.cjs +44 -36
- package/index.d.ts +39 -0
- package/index.js +6247 -3509
- package/lib/table/aggregation/aggregate-internals.d.ts +30 -0
- package/lib/table/aggregation/aggregate-spec.if.d.ts +51 -0
- package/lib/table/aggregation/aggregate.d.ts +58 -0
- package/lib/table/aggregation/aggregator-name.type.d.ts +39 -0
- package/lib/table/aggregation/aggregator.if.d.ts +51 -0
- package/lib/table/aggregation/aggregators.d.ts +37 -0
- package/lib/table/aggregation/create-value-getter.d.ts +18 -0
- package/lib/table/aggregation/selection-aggregates.if.d.ts +35 -0
- package/lib/table/aggregation/value-accessor.type.d.ts +13 -0
- package/lib/table/data/common/row-number-column-def.d.ts +107 -0
- package/lib/table/data/common/row-number-columns.d.ts +17 -0
- package/lib/table/data/common/row-number-options.d.ts +19 -0
- package/lib/table/data/common/row-number-options.if.d.ts +44 -0
- package/lib/table/data/tablemodel/areamodel/aggregate-footer-options.if.d.ts +73 -0
- package/lib/table/data/tablemodel/areamodel/area-model-aggregate-footer.d.ts +145 -0
- package/lib/table/data/tablemodel/areamodel/area-model-cell-groups.d.ts +18 -1
- package/lib/table/data/tablemodel/areamodel/area-model-pivot-footer.d.ts +47 -0
- package/lib/table/data/tablemodel/areamodel/area-model-pivot.d.ts +250 -0
- package/lib/table/data/tablemodel/areamodel/area-model-row-groups.d.ts +314 -0
- package/lib/table/data/tablemodel/areamodel/area-model-tree.d.ts +14 -0
- package/lib/table/data/tablemodel/areamodel/area-model.if.d.ts +39 -0
- package/lib/table/data/tablemodel/areamodel/derived-values-change.if.d.ts +30 -0
- package/lib/table/factory/pivot-factory.d.ts +63 -0
- package/lib/table/factory/pivot-table-model-para.if.d.ts +44 -0
- package/lib/table/factory/row-group-factory.d.ts +70 -0
- package/lib/table/factory/row-group-table-model-para.if.d.ts +66 -0
- package/lib/table/factory/table-factory.d.ts +45 -1
- package/lib/table/instanceof-workaround.d.ts +143 -6
- package/lib/table/pivot/area-model-pivot-header.d.ts +9 -0
- package/lib/table/pivot/pivot-column-def.d.ts +28 -0
- package/lib/table/pivot/pivot-column-info.if.d.ts +25 -0
- package/lib/table/pivot/pivot-config.if.d.ts +58 -0
- package/lib/table/pivot/pivot-internals.d.ts +13 -0
- package/lib/table/pivot/pivot-layout.d.ts +40 -0
- package/lib/table/pivot/pivot-result.d.ts +157 -0
- package/lib/table/pivot/pivot-table-model.d.ts +86 -0
- package/lib/table/pivot/pivot-value.type.d.ts +67 -0
- package/lib/table/render-scope.d.ts +61 -4
- package/lib/table/renderer/aggregate-cell-renderer.d.ts +27 -0
- package/lib/table/renderer/row-number-cell-renderer.d.ts +27 -0
- package/lib/table/rowgroup/group-rows-internals.d.ts +14 -0
- package/lib/table/rowgroup/group-rows-options.if.d.ts +13 -0
- package/lib/table/rowgroup/group-rows.d.ts +48 -0
- package/lib/table/rowgroup/row-group-column-def.d.ts +26 -0
- package/lib/table/rowgroup/row-group-column-options.if.d.ts +27 -0
- package/lib/table/rowgroup/row-group-detail-row.d.ts +8 -0
- package/lib/table/rowgroup/row-group-field.type.d.ts +56 -0
- package/lib/table/rowgroup/row-group-internals.d.ts +31 -0
- package/lib/table/rowgroup/row-group-layout.d.ts +13 -0
- package/lib/table/rowgroup/row-group-model-options.if.d.ts +39 -0
- package/lib/table/rowgroup/row-group.d.ts +51 -0
- package/lib/table/rowgroup/row-group.if.d.ts +48 -0
- package/lib/table/selection/selection-aggregator.d.ts +37 -0
- package/lib/table/selection/selection-service.d.ts +7 -0
- package/lib/table/service/convenience-dom.service.d.ts +5 -0
- package/lib/table/table-api.d.ts +112 -1
- package/lib/table/table-scope.d.ts +19 -0
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -29,6 +29,19 @@ This is the UI-agnostic table component for your next web app. 😊
|
|
|
29
29
|
sorting, filter and copy) and full keyboard navigation (arrows, Home/End, Page Up/Down, header focus, Enter) – since 1.1.91
|
|
30
30
|
- Overlays "Loading…" (CSS spinner, `tableApi.showLoadingOverlay()`, `loading` prop in the wrappers) and
|
|
31
31
|
"No rows to show" / "No matching rows" (automatic) – plain HTML/CSS, since 1.1.92
|
|
32
|
+
- Row numbers like in a spreadsheet (`rowNumbersVisible: true` or `RowNumberColumnDef`): fixed on the left, width
|
|
33
|
+
fits the largest number, click selects the row, view or original order – since 1.1.93
|
|
34
|
+
- Aggregation: total rows in the footer that follow filter and sorting (`footerAggregates: { quantity: "sum", total: "avg" }`,
|
|
35
|
+
`AreaModelAggregateFooter`), helpers `aggregate()` / `aggregateColumns()` with mergeable aggregators (sum, count, avg,
|
|
36
|
+
min, max, countDistinct, first, last or your own), and count/sum/average of the selected cells for a status bar
|
|
37
|
+
(`tableApi.getSelectionAggregates()`) – since 1.1.94
|
|
38
|
+
- Row grouping with aggregation: flat rows grouped by one or more properties or functions, group rows with arrow,
|
|
39
|
+
label (`"Berlin (12)"`) and sum/average/… per column, total row, filter and sorting by aggregate, regroup at runtime
|
|
40
|
+
(`RowGroupFactory.createTableModel({ rows, groupBy, aggregations })`, `tableApi.setRowGroupBy()`) – since 1.1.94
|
|
41
|
+
- Pivot tables: row fields (a hierarchy with subtotals) × column fields (their values become columns, several fields
|
|
42
|
+
= a multi-row header with collapsible groups) × aggregated values, total column and total row, filter before the
|
|
43
|
+
aggregation, pivot again at runtime (`PivotFactory.createTableModel({ rows, rowFields, columnFields, values })`,
|
|
44
|
+
`tableApi.setPivotConfig()`, engine `pivotRows()`) – since 1.1.94
|
|
32
45
|
- Custom Filtering
|
|
33
46
|
- In-place Cell Editing
|
|
34
47
|
- Userdefined Key and Mouse Events
|
package/css/main.css
CHANGED
|
@@ -46,6 +46,27 @@
|
|
|
46
46
|
padding-right: 10px;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
/* Total rows of AreaModelAggregateFooter (1.1.94) – before the align classes, so a column's footer class wins */
|
|
50
|
+
.ge-table-footer-aggregate {
|
|
51
|
+
text-align: end;
|
|
52
|
+
font-variant-numeric: tabular-nums;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.ge-table-footer-label {
|
|
56
|
+
font-weight: 600;
|
|
57
|
+
text-align: start;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* the next footer cell is empty: the label may run into it instead of being cut off */
|
|
61
|
+
.ge-table-footer-label-overflow {
|
|
62
|
+
z-index: 1;
|
|
63
|
+
white-space: nowrap;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.ge-table-footer-label-overflow .ge-table-label-div {
|
|
67
|
+
overflow: visible;
|
|
68
|
+
}
|
|
69
|
+
|
|
49
70
|
.ge-table-text-align-left {
|
|
50
71
|
text-align: left;
|
|
51
72
|
}
|
|
@@ -154,6 +175,19 @@
|
|
|
154
175
|
}
|
|
155
176
|
|
|
156
177
|
|
|
178
|
+
/* Row numbers (RowNumberColumnDef, since 1.1.93): right aligned, digits of equal width. Before the color classes
|
|
179
|
+
in main.css, so that the selection colors (.ge-table-body-west-selected-range …) still win. */
|
|
180
|
+
.ge-table-row-number {
|
|
181
|
+
background-color: var(--ge-table-row-number-bg);
|
|
182
|
+
color: var(--ge-table-row-number-color);
|
|
183
|
+
}
|
|
184
|
+
.ge-table-row-number .ge-table-label,
|
|
185
|
+
.ge-table-row-number-header .ge-table-label {
|
|
186
|
+
padding-inline: 6px;
|
|
187
|
+
font-variant-numeric: tabular-nums;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
|
|
157
191
|
/* Overlays over the body: "Loading…" with a CSS spinner, "No rows to show", "No matching rows" (since 1.1.92).
|
|
158
192
|
Position and size are set inline by the table (the visible body), display is switched inline (none / flex). */
|
|
159
193
|
.ge-table-overlay {
|
|
@@ -400,6 +434,18 @@
|
|
|
400
434
|
--ge-table-color-star-rating: #a86f00;
|
|
401
435
|
--ge-table-color-progress-bar: #1e874b;
|
|
402
436
|
|
|
437
|
+
/* Row grouping: group rows (since 1.1.94) */
|
|
438
|
+
--ge-table-row-group-bg: rgba(0, 0, 0, 0.045);
|
|
439
|
+
--ge-table-row-group-text: inherit;
|
|
440
|
+
--ge-table-row-group-label-font-weight: 600;
|
|
441
|
+
|
|
442
|
+
/* Pivot tables: subtotals, totals, empty cells (since 1.1.94) */
|
|
443
|
+
--ge-table-pivot-subtotal-bg: rgba(0, 0, 0, 0.035);
|
|
444
|
+
--ge-table-pivot-subtotal-font-weight: 600;
|
|
445
|
+
--ge-table-pivot-total-bg: rgba(0, 0, 0, 0.07);
|
|
446
|
+
--ge-table-pivot-total-font-weight: 600;
|
|
447
|
+
--ge-table-pivot-empty-text: #6b7280;
|
|
448
|
+
|
|
403
449
|
/* Overlays "Loading…" / "No rows" (since 1.1.92) */
|
|
404
450
|
--ge-table-overlay-bg: rgba(255, 255, 255, 0.7);
|
|
405
451
|
--ge-table-overlay-content-bg: #fff;
|
|
@@ -407,6 +453,10 @@
|
|
|
407
453
|
--ge-table-spinner-color: #1a73e8;
|
|
408
454
|
--ge-table-spinner-track-color: rgba(0, 0, 0, 0.12);
|
|
409
455
|
--ge-table-spinner-size: 28px;
|
|
456
|
+
|
|
457
|
+
/* Row numbers (since 1.1.93): like the header, muted digits (#555 on the header gray ≈ 6.9 : 1) */
|
|
458
|
+
--ge-table-row-number-bg: var(--ge-table-header-west-bg);
|
|
459
|
+
--ge-table-row-number-color: #555;
|
|
410
460
|
}
|
|
411
461
|
|
|
412
462
|
|
|
@@ -482,6 +532,18 @@ html[data-theme="dark"] {
|
|
|
482
532
|
--ge-table-color-star-rating: #fcb515;
|
|
483
533
|
--ge-table-color-progress-bar: #36BB6C;
|
|
484
534
|
|
|
535
|
+
/* Row grouping: group rows (since 1.1.94) */
|
|
536
|
+
--ge-table-row-group-bg: rgba(255, 255, 255, 0.06);
|
|
537
|
+
--ge-table-row-group-text: inherit;
|
|
538
|
+
--ge-table-row-group-label-font-weight: 600;
|
|
539
|
+
|
|
540
|
+
/* Pivot tables: subtotals, totals, empty cells (since 1.1.94) */
|
|
541
|
+
--ge-table-pivot-subtotal-bg: rgba(255, 255, 255, 0.05);
|
|
542
|
+
--ge-table-pivot-subtotal-font-weight: 600;
|
|
543
|
+
--ge-table-pivot-total-bg: rgba(255, 255, 255, 0.1);
|
|
544
|
+
--ge-table-pivot-total-font-weight: 600;
|
|
545
|
+
--ge-table-pivot-empty-text: #9ca3af;
|
|
546
|
+
|
|
485
547
|
/* Overlays "Loading…" / "No rows" (since 1.1.92) */
|
|
486
548
|
--ge-table-overlay-bg: rgba(17, 24, 39, 0.7); /* --ge-table-bg of the dark theme */
|
|
487
549
|
--ge-table-overlay-content-bg: #1f2937;
|
|
@@ -489,6 +551,77 @@ html[data-theme="dark"] {
|
|
|
489
551
|
--ge-table-spinner-color: #8ab4f8;
|
|
490
552
|
--ge-table-spinner-track-color: rgba(255, 255, 255, 0.18);
|
|
491
553
|
--ge-table-spinner-size: 28px;
|
|
554
|
+
|
|
555
|
+
/* Row numbers (since 1.1.93) */
|
|
556
|
+
--ge-table-row-number-bg: var(--ge-table-header-west-bg);
|
|
557
|
+
--ge-table-row-number-color: #aaa;
|
|
558
|
+
}
|
|
559
|
+
/* Pivot tables (PivotFactory / AreaModelPivot, since 1.1.94) */
|
|
560
|
+
|
|
561
|
+
/* every value cell: numbers on the end side, same digit widths */
|
|
562
|
+
.ge-table-pivot-value {
|
|
563
|
+
text-align: end;
|
|
564
|
+
font-variant-numeric: tabular-nums;
|
|
565
|
+
}
|
|
566
|
+
|
|
567
|
+
/* the label in the group column ("Nord") */
|
|
568
|
+
.ge-table-pivot-label .ge-table-label-div {
|
|
569
|
+
white-space: nowrap;
|
|
570
|
+
overflow: hidden;
|
|
571
|
+
text-overflow: ellipsis;
|
|
572
|
+
}
|
|
573
|
+
|
|
574
|
+
/* subtotals: group rows and the total columns of column groups */
|
|
575
|
+
.ge-table-col-div.ge-table-pivot-subtotal {
|
|
576
|
+
background-color: var(--ge-table-pivot-subtotal-bg);
|
|
577
|
+
font-weight: var(--ge-table-pivot-subtotal-font-weight);
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
/* totals: the total column(s) and the total row */
|
|
581
|
+
.ge-table-col-div.ge-table-pivot-total {
|
|
582
|
+
background-color: var(--ge-table-pivot-total-bg);
|
|
583
|
+
font-weight: var(--ge-table-pivot-total-font-weight);
|
|
584
|
+
}
|
|
585
|
+
|
|
586
|
+
/* a combination without data (emptyText, e.g. "–") */
|
|
587
|
+
.ge-table-pivot-empty {
|
|
588
|
+
color: var(--ge-table-pivot-empty-text);
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
/* header: a column group ("2026", "Jan") starts at the left of its span, a column label ("Q1", "Revenue") sits above
|
|
592
|
+
its numbers (value columns only – the group column keeps its alignment) */
|
|
593
|
+
.ge-table-pivot-header-group {
|
|
594
|
+
text-align: start;
|
|
595
|
+
padding-inline-start: 6px;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
.ge-table-pivot-header.ge-table-pivot-header-column {
|
|
599
|
+
text-align: end;
|
|
600
|
+
}
|
|
601
|
+
/* Row grouping (RowGroupFactory / AreaModelRowGroups, since 1.1.94) */
|
|
602
|
+
|
|
603
|
+
/* every cell of a group row */
|
|
604
|
+
.ge-table-col-div.ge-table-row-group {
|
|
605
|
+
background-color: var(--ge-table-row-group-bg);
|
|
606
|
+
color: var(--ge-table-row-group-text);
|
|
607
|
+
}
|
|
608
|
+
|
|
609
|
+
/* the label in the group column: "Nord (3)" */
|
|
610
|
+
.ge-table-row-group-label {
|
|
611
|
+
font-weight: var(--ge-table-row-group-label-font-weight);
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
.ge-table-row-group-label .ge-table-label-div {
|
|
615
|
+
white-space: nowrap;
|
|
616
|
+
overflow: hidden;
|
|
617
|
+
text-overflow: ellipsis;
|
|
618
|
+
}
|
|
619
|
+
|
|
620
|
+
/* the aggregates of a group row */
|
|
621
|
+
.ge-table-row-group-aggregate {
|
|
622
|
+
text-align: end;
|
|
623
|
+
font-variant-numeric: tabular-nums;
|
|
624
|
+
font-weight: var(--ge-table-row-group-label-font-weight);
|
|
492
625
|
}
|
|
493
626
|
/* Tree table */
|
|
494
627
|
|
|
@@ -507,6 +640,15 @@ html[data-theme="dark"] {
|
|
|
507
640
|
text-align: left;
|
|
508
641
|
}
|
|
509
642
|
|
|
643
|
+
/* Row numbers (RowNumberColumnDef) in a tree: no tree look – right aligned like in a flat table (since 1.1.93) */
|
|
644
|
+
.ge-table-col-div.ge-table-row-number.ge-table-tree-cell {
|
|
645
|
+
text-align: right;
|
|
646
|
+
}
|
|
647
|
+
.ge-table-row-number.ge-table-tree-cell .ge-table-label-div {
|
|
648
|
+
display: block;
|
|
649
|
+
padding: 0;
|
|
650
|
+
}
|
|
651
|
+
|
|
510
652
|
.ge-padding-property-checkbox {
|
|
511
653
|
padding-left: 0;
|
|
512
654
|
}
|
package/css/table-classes.css
CHANGED
|
@@ -46,6 +46,27 @@
|
|
|
46
46
|
padding-right: 10px;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
/* Total rows of AreaModelAggregateFooter (1.1.94) – before the align classes, so a column's footer class wins */
|
|
50
|
+
.ge-table-footer-aggregate {
|
|
51
|
+
text-align: end;
|
|
52
|
+
font-variant-numeric: tabular-nums;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
.ge-table-footer-label {
|
|
56
|
+
font-weight: 600;
|
|
57
|
+
text-align: start;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/* the next footer cell is empty: the label may run into it instead of being cut off */
|
|
61
|
+
.ge-table-footer-label-overflow {
|
|
62
|
+
z-index: 1;
|
|
63
|
+
white-space: nowrap;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.ge-table-footer-label-overflow .ge-table-label-div {
|
|
67
|
+
overflow: visible;
|
|
68
|
+
}
|
|
69
|
+
|
|
49
70
|
.ge-table-text-align-left {
|
|
50
71
|
text-align: left;
|
|
51
72
|
}
|
|
@@ -154,6 +175,19 @@
|
|
|
154
175
|
}
|
|
155
176
|
|
|
156
177
|
|
|
178
|
+
/* Row numbers (RowNumberColumnDef, since 1.1.93): right aligned, digits of equal width. Before the color classes
|
|
179
|
+
in main.css, so that the selection colors (.ge-table-body-west-selected-range …) still win. */
|
|
180
|
+
.ge-table-row-number {
|
|
181
|
+
background-color: var(--ge-table-row-number-bg);
|
|
182
|
+
color: var(--ge-table-row-number-color);
|
|
183
|
+
}
|
|
184
|
+
.ge-table-row-number .ge-table-label,
|
|
185
|
+
.ge-table-row-number-header .ge-table-label {
|
|
186
|
+
padding-inline: 6px;
|
|
187
|
+
font-variant-numeric: tabular-nums;
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
|
|
157
191
|
/* Overlays over the body: "Loading…" with a CSS spinner, "No rows to show", "No matching rows" (since 1.1.92).
|
|
158
192
|
Position and size are set inline by the table (the visible body), display is switched inline (none / flex). */
|
|
159
193
|
.ge-table-overlay {
|
package/css/table-color-vars.css
CHANGED
|
@@ -84,6 +84,18 @@ html, html[data-theme="light"] {
|
|
|
84
84
|
--ge-table-color-star-rating: #a86f00;
|
|
85
85
|
--ge-table-color-progress-bar: #1e874b;
|
|
86
86
|
|
|
87
|
+
/* Row grouping: group rows (since 1.1.94) */
|
|
88
|
+
--ge-table-row-group-bg: rgba(0, 0, 0, 0.045);
|
|
89
|
+
--ge-table-row-group-text: inherit;
|
|
90
|
+
--ge-table-row-group-label-font-weight: 600;
|
|
91
|
+
|
|
92
|
+
/* Pivot tables: subtotals, totals, empty cells (since 1.1.94) */
|
|
93
|
+
--ge-table-pivot-subtotal-bg: rgba(0, 0, 0, 0.035);
|
|
94
|
+
--ge-table-pivot-subtotal-font-weight: 600;
|
|
95
|
+
--ge-table-pivot-total-bg: rgba(0, 0, 0, 0.07);
|
|
96
|
+
--ge-table-pivot-total-font-weight: 600;
|
|
97
|
+
--ge-table-pivot-empty-text: #6b7280;
|
|
98
|
+
|
|
87
99
|
/* Overlays "Loading…" / "No rows" (since 1.1.92) */
|
|
88
100
|
--ge-table-overlay-bg: rgba(255, 255, 255, 0.7);
|
|
89
101
|
--ge-table-overlay-content-bg: #fff;
|
|
@@ -91,6 +103,10 @@ html, html[data-theme="light"] {
|
|
|
91
103
|
--ge-table-spinner-color: #1a73e8;
|
|
92
104
|
--ge-table-spinner-track-color: rgba(0, 0, 0, 0.12);
|
|
93
105
|
--ge-table-spinner-size: 28px;
|
|
106
|
+
|
|
107
|
+
/* Row numbers (since 1.1.93): like the header, muted digits (#555 on the header gray ≈ 6.9 : 1) */
|
|
108
|
+
--ge-table-row-number-bg: var(--ge-table-header-west-bg);
|
|
109
|
+
--ge-table-row-number-color: #555;
|
|
94
110
|
}
|
|
95
111
|
|
|
96
112
|
|
|
@@ -166,6 +182,18 @@ html[data-theme="dark"] {
|
|
|
166
182
|
--ge-table-color-star-rating: #fcb515;
|
|
167
183
|
--ge-table-color-progress-bar: #36BB6C;
|
|
168
184
|
|
|
185
|
+
/* Row grouping: group rows (since 1.1.94) */
|
|
186
|
+
--ge-table-row-group-bg: rgba(255, 255, 255, 0.06);
|
|
187
|
+
--ge-table-row-group-text: inherit;
|
|
188
|
+
--ge-table-row-group-label-font-weight: 600;
|
|
189
|
+
|
|
190
|
+
/* Pivot tables: subtotals, totals, empty cells (since 1.1.94) */
|
|
191
|
+
--ge-table-pivot-subtotal-bg: rgba(255, 255, 255, 0.05);
|
|
192
|
+
--ge-table-pivot-subtotal-font-weight: 600;
|
|
193
|
+
--ge-table-pivot-total-bg: rgba(255, 255, 255, 0.1);
|
|
194
|
+
--ge-table-pivot-total-font-weight: 600;
|
|
195
|
+
--ge-table-pivot-empty-text: #9ca3af;
|
|
196
|
+
|
|
169
197
|
/* Overlays "Loading…" / "No rows" (since 1.1.92) */
|
|
170
198
|
--ge-table-overlay-bg: rgba(17, 24, 39, 0.7); /* --ge-table-bg of the dark theme */
|
|
171
199
|
--ge-table-overlay-content-bg: #1f2937;
|
|
@@ -173,4 +201,8 @@ html[data-theme="dark"] {
|
|
|
173
201
|
--ge-table-spinner-color: #8ab4f8;
|
|
174
202
|
--ge-table-spinner-track-color: rgba(255, 255, 255, 0.18);
|
|
175
203
|
--ge-table-spinner-size: 28px;
|
|
204
|
+
|
|
205
|
+
/* Row numbers (since 1.1.93) */
|
|
206
|
+
--ge-table-row-number-bg: var(--ge-table-header-west-bg);
|
|
207
|
+
--ge-table-row-number-color: #aaa;
|
|
176
208
|
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/* Pivot tables (PivotFactory / AreaModelPivot, since 1.1.94) */
|
|
2
|
+
|
|
3
|
+
/* every value cell: numbers on the end side, same digit widths */
|
|
4
|
+
.ge-table-pivot-value {
|
|
5
|
+
text-align: end;
|
|
6
|
+
font-variant-numeric: tabular-nums;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
/* the label in the group column ("Nord") */
|
|
10
|
+
.ge-table-pivot-label .ge-table-label-div {
|
|
11
|
+
white-space: nowrap;
|
|
12
|
+
overflow: hidden;
|
|
13
|
+
text-overflow: ellipsis;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/* subtotals: group rows and the total columns of column groups */
|
|
17
|
+
.ge-table-col-div.ge-table-pivot-subtotal {
|
|
18
|
+
background-color: var(--ge-table-pivot-subtotal-bg);
|
|
19
|
+
font-weight: var(--ge-table-pivot-subtotal-font-weight);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/* totals: the total column(s) and the total row */
|
|
23
|
+
.ge-table-col-div.ge-table-pivot-total {
|
|
24
|
+
background-color: var(--ge-table-pivot-total-bg);
|
|
25
|
+
font-weight: var(--ge-table-pivot-total-font-weight);
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/* a combination without data (emptyText, e.g. "–") */
|
|
29
|
+
.ge-table-pivot-empty {
|
|
30
|
+
color: var(--ge-table-pivot-empty-text);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* header: a column group ("2026", "Jan") starts at the left of its span, a column label ("Q1", "Revenue") sits above
|
|
34
|
+
its numbers (value columns only – the group column keeps its alignment) */
|
|
35
|
+
.ge-table-pivot-header-group {
|
|
36
|
+
text-align: start;
|
|
37
|
+
padding-inline-start: 6px;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.ge-table-pivot-header.ge-table-pivot-header-column {
|
|
41
|
+
text-align: end;
|
|
42
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/* Row grouping (RowGroupFactory / AreaModelRowGroups, since 1.1.94) */
|
|
2
|
+
|
|
3
|
+
/* every cell of a group row */
|
|
4
|
+
.ge-table-col-div.ge-table-row-group {
|
|
5
|
+
background-color: var(--ge-table-row-group-bg);
|
|
6
|
+
color: var(--ge-table-row-group-text);
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
/* the label in the group column: "Nord (3)" */
|
|
10
|
+
.ge-table-row-group-label {
|
|
11
|
+
font-weight: var(--ge-table-row-group-label-font-weight);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.ge-table-row-group-label .ge-table-label-div {
|
|
15
|
+
white-space: nowrap;
|
|
16
|
+
overflow: hidden;
|
|
17
|
+
text-overflow: ellipsis;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
/* the aggregates of a group row */
|
|
21
|
+
.ge-table-row-group-aggregate {
|
|
22
|
+
text-align: end;
|
|
23
|
+
font-variant-numeric: tabular-nums;
|
|
24
|
+
font-weight: var(--ge-table-row-group-label-font-weight);
|
|
25
|
+
}
|
package/css/table-tree.css
CHANGED
|
@@ -15,6 +15,15 @@
|
|
|
15
15
|
text-align: left;
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
/* Row numbers (RowNumberColumnDef) in a tree: no tree look – right aligned like in a flat table (since 1.1.93) */
|
|
19
|
+
.ge-table-col-div.ge-table-row-number.ge-table-tree-cell {
|
|
20
|
+
text-align: right;
|
|
21
|
+
}
|
|
22
|
+
.ge-table-row-number.ge-table-tree-cell .ge-table-label-div {
|
|
23
|
+
display: block;
|
|
24
|
+
padding: 0;
|
|
25
|
+
}
|
|
26
|
+
|
|
18
27
|
.ge-padding-property-checkbox {
|
|
19
28
|
padding-left: 0;
|
|
20
29
|
}
|