@alaarab/ogrid-angular-material 2.0.11 → 2.0.13
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/dist/esm/column-chooser/column-chooser.component.js +15 -8
- package/dist/esm/column-header-filter/column-header-filter.component.js +27 -21
- package/dist/esm/column-header-menu/column-header-menu.component.js +3 -3
- package/dist/esm/datagrid-table/datagrid-table.component.js +123 -54
- package/dist/esm/datagrid-table/popover-cell-editor.component.js +3 -2
- package/dist/esm/ogrid/ogrid.component.js +1 -0
- package/dist/esm/pagination-controls/pagination-controls.component.js +9 -5
- package/package.json +13 -4
|
@@ -67,20 +67,24 @@ ColumnChooserComponent = __decorate([
|
|
|
67
67
|
.ogrid-column-chooser { position: relative; }
|
|
68
68
|
.ogrid-column-chooser__trigger {
|
|
69
69
|
display: inline-flex; align-items: center; gap: 6px;
|
|
70
|
-
padding: 6px 12px; border: 1px solid rgba(0,0,0,0.23); border-radius: 4px;
|
|
70
|
+
padding: 6px 12px; border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.23)); border-radius: 4px;
|
|
71
71
|
background: transparent; cursor: pointer; font-size: 14px; font-weight: 600;
|
|
72
72
|
text-transform: none; white-space: nowrap;
|
|
73
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
73
74
|
}
|
|
75
|
+
.ogrid-column-chooser__trigger:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
74
76
|
.ogrid-column-chooser__caret { font-size: 10px; }
|
|
75
77
|
.ogrid-column-chooser__dropdown {
|
|
76
78
|
position: absolute; top: 100%; right: 0; z-index: 10;
|
|
77
79
|
min-width: 220px; margin-top: 4px;
|
|
78
|
-
background: #
|
|
79
|
-
box-shadow: 0 2px 8px rgba(0,0,0,0.15);
|
|
80
|
+
background: var(--ogrid-bg, #ffffff); border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12)); border-radius: 4px;
|
|
81
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
|
|
80
82
|
}
|
|
81
83
|
.ogrid-column-chooser__header {
|
|
82
84
|
padding: 8px 12px; font-size: 14px; font-weight: 600;
|
|
83
|
-
border-bottom: 1px solid rgba(0,0,0,0.12);
|
|
85
|
+
border-bottom: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
86
|
+
background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04));
|
|
87
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
84
88
|
}
|
|
85
89
|
.ogrid-column-chooser__list {
|
|
86
90
|
max-height: 320px; overflow-y: auto; padding: 4px 0;
|
|
@@ -88,22 +92,25 @@ ColumnChooserComponent = __decorate([
|
|
|
88
92
|
.ogrid-column-chooser__item {
|
|
89
93
|
display: flex; align-items: center; gap: 8px;
|
|
90
94
|
padding: 4px 12px; min-height: 32px; cursor: pointer; font-size: 14px;
|
|
95
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
91
96
|
}
|
|
92
|
-
.ogrid-column-chooser__item:hover { background: rgba(0,0,0,0.04); }
|
|
97
|
+
.ogrid-column-chooser__item:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
93
98
|
.ogrid-column-chooser__footer {
|
|
94
99
|
display: flex; justify-content: flex-end; gap: 8px;
|
|
95
|
-
padding: 8px 12px; border-top: 1px solid rgba(0,0,0,0.12);
|
|
100
|
+
padding: 8px 12px; border-top: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
101
|
+
background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04));
|
|
96
102
|
}
|
|
97
103
|
.ogrid-column-chooser__btn {
|
|
98
104
|
padding: 4px 12px; border: none; border-radius: 4px;
|
|
99
105
|
background: transparent; cursor: pointer; font-size: 13px; text-transform: none;
|
|
106
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
100
107
|
}
|
|
101
|
-
.ogrid-column-chooser__btn:hover { background: rgba(0,0,0,0.04); }
|
|
108
|
+
.ogrid-column-chooser__btn:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
102
109
|
.ogrid-column-chooser__btn--primary {
|
|
103
110
|
background: var(--mat-sys-primary, #1976d2); color: #fff;
|
|
104
111
|
}
|
|
105
112
|
.ogrid-column-chooser__btn--primary:hover {
|
|
106
|
-
|
|
113
|
+
opacity: 0.9;
|
|
107
114
|
}
|
|
108
115
|
`],
|
|
109
116
|
host: {
|
|
@@ -232,9 +232,9 @@ ColumnHeaderFilterComponent = __decorate([
|
|
|
232
232
|
width: 24px; height: 24px; padding: 2px; border: none; border-radius: 4px;
|
|
233
233
|
background: transparent; cursor: pointer; font-size: 12px; line-height: 1;
|
|
234
234
|
display: inline-flex; align-items: center; justify-content: center; position: relative;
|
|
235
|
-
color: rgba(0,0,0,0.54);
|
|
235
|
+
color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.54));
|
|
236
236
|
}
|
|
237
|
-
.ogrid-header-filter__btn:hover { background: rgba(0,0,0,0.08); }
|
|
237
|
+
.ogrid-header-filter__btn:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.08)); }
|
|
238
238
|
.ogrid-header-filter__btn--active { color: var(--mat-sys-primary, #1976d2); }
|
|
239
239
|
.ogrid-header-filter__filter-btn {
|
|
240
240
|
width: 24px; height: 24px; padding: 2px; border: none; border-radius: 4px;
|
|
@@ -243,17 +243,17 @@ ColumnHeaderFilterComponent = __decorate([
|
|
|
243
243
|
opacity: 0.6; transition: opacity 0.15s;
|
|
244
244
|
}
|
|
245
245
|
.ogrid-header-filter:hover .ogrid-header-filter__filter-btn { opacity: 0.8; }
|
|
246
|
-
.ogrid-header-filter__filter-btn:hover { background: rgba(0,0,0,0.08); opacity: 1 !important; }
|
|
246
|
+
.ogrid-header-filter__filter-btn:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.08)); opacity: 1 !important; }
|
|
247
247
|
.ogrid-header-filter__filter-btn--active { opacity: 1 !important; }
|
|
248
248
|
.ogrid-header-filter__funnel {
|
|
249
249
|
display: block; width: 0; height: 0;
|
|
250
250
|
border-left: 5px solid transparent; border-right: 5px solid transparent;
|
|
251
|
-
border-top: 6px solid rgba(0,0,0,0.65);
|
|
251
|
+
border-top: 6px solid var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.65));
|
|
252
252
|
position: relative;
|
|
253
253
|
}
|
|
254
254
|
.ogrid-header-filter__funnel::after {
|
|
255
255
|
content: ''; display: block; width: 2px; height: 4px;
|
|
256
|
-
background: rgba(0,0,0,0.65); position: absolute;
|
|
256
|
+
background: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.65)); position: absolute;
|
|
257
257
|
top: -1px; left: -1px;
|
|
258
258
|
}
|
|
259
259
|
.ogrid-header-filter__filter-btn--active .ogrid-header-filter__funnel {
|
|
@@ -269,24 +269,26 @@ ColumnHeaderFilterComponent = __decorate([
|
|
|
269
269
|
}
|
|
270
270
|
.ogrid-header-filter__popover {
|
|
271
271
|
position: fixed; z-index: 10000;
|
|
272
|
-
background: #ffffff; border: 1px solid rgba(0,0,0,0.2);
|
|
273
|
-
border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,0.2), 0 1px 4px rgba(0,0,0,0.1);
|
|
274
|
-
margin-top: 4px;
|
|
272
|
+
background: var(--ogrid-bg, #ffffff); border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.2));
|
|
273
|
+
border-radius: 8px; box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2), 0 1px 4px rgba(0, 0, 0, 0.1);
|
|
274
|
+
margin-top: 4px; color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
275
275
|
}
|
|
276
276
|
.ogrid-header-filter__popover-header {
|
|
277
277
|
padding: 8px 12px; font-size: 14px; font-weight: 600;
|
|
278
|
-
border-bottom: 1px solid rgba(0,0,0,0.12);
|
|
278
|
+
border-bottom: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
279
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
279
280
|
}
|
|
280
281
|
.ogrid-header-filter__popover-body { }
|
|
281
282
|
.ogrid-header-filter__popover-actions {
|
|
282
283
|
display: flex; justify-content: flex-end; gap: 8px; padding: 8px 12px;
|
|
283
284
|
}
|
|
284
285
|
.ogrid-header-filter__input {
|
|
285
|
-
width: 100%; padding: 8px 12px; border: 1px solid rgba(0,0,0,0.23);
|
|
286
|
+
width: 100%; padding: 8px 12px; border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.23));
|
|
286
287
|
border-radius: 4px; font-size: 14px; box-sizing: border-box;
|
|
288
|
+
background: var(--ogrid-bg, #ffffff); color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
287
289
|
}
|
|
288
290
|
.ogrid-header-filter__input:focus { outline: 2px solid var(--mat-sys-primary, #1976d2); outline-offset: -1px; }
|
|
289
|
-
.ogrid-header-filter__options-info { margin-top: 4px; font-size: 12px; color: rgba(0,0,0,0.6); }
|
|
291
|
+
.ogrid-header-filter__options-info { margin-top: 4px; font-size: 12px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
290
292
|
.ogrid-header-filter__select-actions {
|
|
291
293
|
display: flex; justify-content: space-between; padding: 4px 12px;
|
|
292
294
|
}
|
|
@@ -294,40 +296,44 @@ ColumnHeaderFilterComponent = __decorate([
|
|
|
294
296
|
.ogrid-header-filter__option {
|
|
295
297
|
display: flex; align-items: center; gap: 8px;
|
|
296
298
|
padding: 4px 8px; cursor: pointer; font-size: 14px;
|
|
299
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
297
300
|
}
|
|
298
|
-
.ogrid-header-filter__option:hover { background: rgba(0,0,0,0.04); }
|
|
301
|
+
.ogrid-header-filter__option:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
299
302
|
.ogrid-header-filter__loading, .ogrid-header-filter__empty {
|
|
300
|
-
padding: 16px; text-align: center; font-size: 14px; color: rgba(0,0,0,0.6);
|
|
303
|
+
padding: 16px; text-align: center; font-size: 14px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6));
|
|
301
304
|
}
|
|
302
305
|
.ogrid-header-filter__action-btn {
|
|
303
306
|
padding: 4px 12px; border: none; border-radius: 4px;
|
|
304
307
|
background: transparent; cursor: pointer; font-size: 13px;
|
|
308
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
305
309
|
}
|
|
306
|
-
.ogrid-header-filter__action-btn:hover { background: rgba(0,0,0,0.04); }
|
|
310
|
+
.ogrid-header-filter__action-btn:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
307
311
|
.ogrid-header-filter__action-btn:disabled { opacity: 0.38; cursor: default; }
|
|
308
312
|
.ogrid-header-filter__action-btn--primary {
|
|
309
313
|
background: var(--mat-sys-primary, #1976d2); color: #fff;
|
|
310
314
|
}
|
|
311
|
-
.ogrid-header-filter__action-btn--primary:hover {
|
|
315
|
+
.ogrid-header-filter__action-btn--primary:hover { opacity: 0.9; }
|
|
312
316
|
.ogrid-header-filter__people-selected {
|
|
313
|
-
padding: 12px; border-bottom: 1px solid rgba(0,0,0,0.12);
|
|
317
|
+
padding: 12px; border-bottom: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
314
318
|
}
|
|
315
|
-
.ogrid-header-filter__people-info-label { font-size: 12px; color: rgba(0,0,0,0.6); }
|
|
319
|
+
.ogrid-header-filter__people-info-label { font-size: 12px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
316
320
|
.ogrid-header-filter__people-card {
|
|
317
321
|
display: flex; align-items: center; gap: 8px; margin-top: 4px;
|
|
318
322
|
}
|
|
319
323
|
.ogrid-header-filter__people-avatar {
|
|
320
|
-
width: 32px; height: 32px; border-radius: 50%; background: rgba(0,0,0,0.08);
|
|
324
|
+
width: 32px; height: 32px; border-radius: 50%; background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.08));
|
|
321
325
|
display: flex; align-items: center; justify-content: center;
|
|
322
326
|
font-size: 14px; font-weight: 600; flex-shrink: 0;
|
|
327
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
323
328
|
}
|
|
324
|
-
.ogrid-header-filter__people-details { flex: 1; min-width: 0; font-size: 14px; }
|
|
329
|
+
.ogrid-header-filter__people-details { flex: 1; min-width: 0; font-size: 14px; color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)); }
|
|
325
330
|
.ogrid-header-filter__people-details > div { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
|
|
326
|
-
.ogrid-header-filter__people-email { font-size: 12px; color: rgba(0,0,0,0.6); }
|
|
331
|
+
.ogrid-header-filter__people-email { font-size: 12px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
327
332
|
.ogrid-header-filter__people-option {
|
|
328
333
|
display: flex; align-items: center; gap: 8px; padding: 8px 12px; cursor: pointer;
|
|
334
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
329
335
|
}
|
|
330
|
-
.ogrid-header-filter__people-option:hover { background: rgba(0,0,0,0.04); }
|
|
336
|
+
.ogrid-header-filter__people-option:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
331
337
|
`],
|
|
332
338
|
host: {
|
|
333
339
|
'(document:click)': 'onDocumentClickWrapper($event)',
|
|
@@ -121,12 +121,12 @@ ColumnHeaderMenuComponent = __decorate([
|
|
|
121
121
|
display: inline-flex;
|
|
122
122
|
align-items: center;
|
|
123
123
|
justify-content: center;
|
|
124
|
-
color: rgba(0,0,0,0.54);
|
|
124
|
+
color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.54));
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
.column-header-menu-trigger:hover {
|
|
128
|
-
background: rgba(0,0,0,0.08);
|
|
129
|
-
color: rgba(0,0,0,0.87);
|
|
128
|
+
background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.08));
|
|
129
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
130
130
|
}
|
|
131
131
|
`],
|
|
132
132
|
})
|
|
@@ -4,8 +4,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { Component, ChangeDetectionStrategy, Input, ViewChild, signal } from '@angular/core';
|
|
8
|
-
import { BaseDataGridTableComponent, DataGridStateService, MarchingAntsOverlayComponent, StatusBarComponent, GridContextMenuComponent, CHECKBOX_COLUMN_WIDTH, ROW_NUMBER_COLUMN_WIDTH, } from '@alaarab/ogrid-angular';
|
|
7
|
+
import { Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ViewChild, signal } from '@angular/core';
|
|
8
|
+
import { BaseDataGridTableComponent, DataGridStateService, MarchingAntsOverlayComponent, StatusBarComponent, GridContextMenuComponent, EmptyStateComponent, CHECKBOX_COLUMN_WIDTH, ROW_NUMBER_COLUMN_WIDTH, } from '@alaarab/ogrid-angular';
|
|
9
9
|
import { ColumnHeaderFilterComponent } from '../column-header-filter/column-header-filter.component';
|
|
10
10
|
import { ColumnHeaderMenuComponent } from '../column-header-menu/column-header-menu.component';
|
|
11
11
|
import { InlineCellEditorComponent } from './inline-cell-editor.component';
|
|
@@ -40,7 +40,7 @@ let DataGridTableComponent = class DataGridTableComponent extends BaseDataGridTa
|
|
|
40
40
|
onUnpin: () => this.onUnpinColumn(columnId),
|
|
41
41
|
onSortAsc: () => this.onSortAsc(columnId),
|
|
42
42
|
onSortDesc: () => this.onSortDesc(columnId),
|
|
43
|
-
onClearSort: () => this.onClearSort(),
|
|
43
|
+
onClearSort: () => this.onClearSort(columnId),
|
|
44
44
|
onAutosizeThis: () => this.onAutosizeColumn(columnId),
|
|
45
45
|
onAutosizeAll: () => this.onAutosizeAllColumns(),
|
|
46
46
|
onClose: () => { }
|
|
@@ -61,7 +61,8 @@ DataGridTableComponent = __decorate([
|
|
|
61
61
|
selector: 'ogrid-datagrid-table',
|
|
62
62
|
standalone: true,
|
|
63
63
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
64
|
-
|
|
64
|
+
encapsulation: ViewEncapsulation.None,
|
|
65
|
+
imports: [ColumnHeaderFilterComponent, ColumnHeaderMenuComponent, StatusBarComponent, GridContextMenuComponent, MarchingAntsOverlayComponent, EmptyStateComponent, InlineCellEditorComponent, PopoverCellEditorComponent],
|
|
65
66
|
providers: [DataGridStateService],
|
|
66
67
|
template: `
|
|
67
68
|
<div class="ogrid-datagrid-root">
|
|
@@ -70,6 +71,7 @@ DataGridTableComponent = __decorate([
|
|
|
70
71
|
class="ogrid-datagrid-wrapper"
|
|
71
72
|
[class.ogrid-datagrid-wrapper--fit]="layoutModeFit()"
|
|
72
73
|
[class.ogrid-datagrid-wrapper--overflow-x]="allowOverflowX()"
|
|
74
|
+
[class.ogrid-datagrid-wrapper--loading-empty]="isLoading() && items().length === 0"
|
|
73
75
|
tabindex="0"
|
|
74
76
|
role="region"
|
|
75
77
|
[attr.aria-label]="ariaLabel()"
|
|
@@ -226,6 +228,7 @@ DataGridTableComponent = __decorate([
|
|
|
226
228
|
@for (colLayout of columnLayouts(); track colLayout.col.columnId; let colIdx = $index) {
|
|
227
229
|
<td
|
|
228
230
|
class="ogrid-datagrid-td"
|
|
231
|
+
[attr.data-column-id]="colLayout.col.columnId"
|
|
229
232
|
[class.ogrid-datagrid-td--pinned-left]="colLayout.pinnedLeft"
|
|
230
233
|
[class.ogrid-datagrid-td--pinned-right]="colLayout.pinnedRight"
|
|
231
234
|
[style.minWidth.px]="colLayout.minWidth"
|
|
@@ -315,15 +318,12 @@ DataGridTableComponent = __decorate([
|
|
|
315
318
|
<div class="ogrid-datagrid-empty">
|
|
316
319
|
<div class="ogrid-datagrid-empty__title">No results found</div>
|
|
317
320
|
<div class="ogrid-datagrid-empty__message">
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
} @else {
|
|
325
|
-
There are no items available at this time.
|
|
326
|
-
}
|
|
321
|
+
<ogrid-empty-state
|
|
322
|
+
[message]="emptyState()?.message"
|
|
323
|
+
[hasActiveFilters]="emptyState()?.hasActiveFilters ?? false"
|
|
324
|
+
[render]="emptyState()?.render"
|
|
325
|
+
(clearAll)="emptyState()?.onClearAll()"
|
|
326
|
+
></ogrid-empty-state>
|
|
327
327
|
</div>
|
|
328
328
|
</div>
|
|
329
329
|
}
|
|
@@ -381,44 +381,95 @@ DataGridTableComponent = __decorate([
|
|
|
381
381
|
</div>
|
|
382
382
|
`,
|
|
383
383
|
styles: [`
|
|
384
|
+
/* ─── OGrid Theme Variables ─── */
|
|
385
|
+
:root {
|
|
386
|
+
--ogrid-bg: #ffffff;
|
|
387
|
+
--ogrid-fg: rgba(0, 0, 0, 0.87);
|
|
388
|
+
--ogrid-fg-secondary: rgba(0, 0, 0, 0.6);
|
|
389
|
+
--ogrid-fg-muted: rgba(0, 0, 0, 0.5);
|
|
390
|
+
--ogrid-border: rgba(0, 0, 0, 0.12);
|
|
391
|
+
--ogrid-header-bg: rgba(0, 0, 0, 0.04);
|
|
392
|
+
--ogrid-hover-bg: rgba(0, 0, 0, 0.04);
|
|
393
|
+
--ogrid-selected-row-bg: #e6f0fb;
|
|
394
|
+
--ogrid-active-cell-bg: rgba(0, 0, 0, 0.02);
|
|
395
|
+
--ogrid-range-bg: rgba(33, 115, 70, 0.12);
|
|
396
|
+
--ogrid-accent: #0078d4;
|
|
397
|
+
--ogrid-selection-color: #217346;
|
|
398
|
+
--ogrid-loading-overlay: rgba(255, 255, 255, 0.7);
|
|
399
|
+
}
|
|
400
|
+
@media (prefers-color-scheme: dark) {
|
|
401
|
+
:root:not([data-theme="light"]) {
|
|
402
|
+
--ogrid-bg: #1e1e1e;
|
|
403
|
+
--ogrid-fg: rgba(255, 255, 255, 0.87);
|
|
404
|
+
--ogrid-fg-secondary: rgba(255, 255, 255, 0.6);
|
|
405
|
+
--ogrid-fg-muted: rgba(255, 255, 255, 0.5);
|
|
406
|
+
--ogrid-border: rgba(255, 255, 255, 0.12);
|
|
407
|
+
--ogrid-header-bg: rgba(255, 255, 255, 0.06);
|
|
408
|
+
--ogrid-hover-bg: rgba(255, 255, 255, 0.08);
|
|
409
|
+
--ogrid-selected-row-bg: #1a3a5c;
|
|
410
|
+
--ogrid-active-cell-bg: rgba(255, 255, 255, 0.06);
|
|
411
|
+
--ogrid-range-bg: rgba(46, 160, 67, 0.15);
|
|
412
|
+
--ogrid-accent: #4da6ff;
|
|
413
|
+
--ogrid-selection-color: #2ea043;
|
|
414
|
+
--ogrid-loading-overlay: rgba(0, 0, 0, 0.7);
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
[data-theme="dark"] {
|
|
418
|
+
--ogrid-bg: #1e1e1e;
|
|
419
|
+
--ogrid-fg: rgba(255, 255, 255, 0.87);
|
|
420
|
+
--ogrid-fg-secondary: rgba(255, 255, 255, 0.6);
|
|
421
|
+
--ogrid-fg-muted: rgba(255, 255, 255, 0.5);
|
|
422
|
+
--ogrid-border: rgba(255, 255, 255, 0.12);
|
|
423
|
+
--ogrid-header-bg: rgba(255, 255, 255, 0.06);
|
|
424
|
+
--ogrid-hover-bg: rgba(255, 255, 255, 0.08);
|
|
425
|
+
--ogrid-selected-row-bg: #1a3a5c;
|
|
426
|
+
--ogrid-active-cell-bg: rgba(255, 255, 255, 0.06);
|
|
427
|
+
--ogrid-range-bg: rgba(46, 160, 67, 0.15);
|
|
428
|
+
--ogrid-accent: #4da6ff;
|
|
429
|
+
--ogrid-selection-color: #2ea043;
|
|
430
|
+
--ogrid-loading-overlay: rgba(0, 0, 0, 0.7);
|
|
431
|
+
}
|
|
384
432
|
:host { display: block; }
|
|
385
433
|
.ogrid-datagrid-root { position: relative; flex: 1; min-height: 0; display: flex; flex-direction: column; }
|
|
386
434
|
.ogrid-datagrid-wrapper {
|
|
387
435
|
position: relative; flex: 1; min-height: 0; width: 100%; max-width: 100%;
|
|
388
|
-
overflow-x: hidden; overflow-y: auto; background: #
|
|
436
|
+
overflow-x: hidden; overflow-y: auto; background: var(--ogrid-bg, #ffffff);
|
|
437
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
389
438
|
will-change: scroll-position; outline: none;
|
|
390
439
|
}
|
|
391
|
-
.ogrid-datagrid-wrapper [data-drag-range] { background: rgba(33, 115, 70, 0.12) !important; }
|
|
440
|
+
.ogrid-datagrid-wrapper [data-drag-range] { background: var(--ogrid-range-bg, rgba(33, 115, 70, 0.12)) !important; }
|
|
392
441
|
.ogrid-datagrid-wrapper--fit { width: fit-content; }
|
|
393
442
|
.ogrid-datagrid-wrapper--overflow-x { overflow-x: auto; }
|
|
443
|
+
.ogrid-datagrid-wrapper--loading-empty { min-height: 200px; }
|
|
394
444
|
.ogrid-datagrid-scroll-wrapper { display: flex; flex-direction: column; min-height: 100%; }
|
|
395
445
|
.ogrid-datagrid-table-wrapper--loading { position: relative; opacity: 0.6; }
|
|
396
446
|
.ogrid-datagrid-table {
|
|
397
447
|
width: 100%; border-collapse: collapse; table-layout: fixed;
|
|
398
448
|
}
|
|
399
449
|
.ogrid-datagrid-thead {
|
|
400
|
-
z-index: 8; background: rgba(0,0,0,0.04);
|
|
450
|
+
z-index: 8; background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04));
|
|
401
451
|
}
|
|
402
|
-
.ogrid-datagrid-thead th { background: rgba(0,0,0,0.04); }
|
|
403
|
-
.ogrid-datagrid-header-row { background: rgba(0,0,0,0.04); }
|
|
452
|
+
.ogrid-datagrid-thead th { background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); }
|
|
453
|
+
.ogrid-datagrid-header-row { background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); }
|
|
404
454
|
.ogrid-datagrid-th {
|
|
405
455
|
font-weight: 600; position: sticky; top: 0; padding: 6px 10px; text-align: left;
|
|
406
|
-
font-size: 14px; border-bottom: 1px solid rgba(0,0,0,0.12);
|
|
407
|
-
background: rgba(0,0,0,0.04); z-index: 8;
|
|
456
|
+
font-size: 14px; border-bottom: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
457
|
+
background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); z-index: 8;
|
|
458
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
408
459
|
}
|
|
409
460
|
.ogrid-datagrid-th:focus-visible {
|
|
410
|
-
outline: 2px solid #1976d2; outline-offset: -2px; z-index: 11;
|
|
461
|
+
outline: 2px solid var(--mat-sys-primary, #1976d2); outline-offset: -2px; z-index: 11;
|
|
411
462
|
}
|
|
412
463
|
.ogrid-datagrid-th--pinned-left {
|
|
413
|
-
position: sticky; top: 0; left: 0; z-index: 10; background: rgba(0,0,0,0.04); will-change: transform;
|
|
414
|
-
border-right: 2px solid rgba(0,0,0,0.12);
|
|
464
|
+
position: sticky; top: 0; left: 0; z-index: 10; background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); will-change: transform;
|
|
465
|
+
border-right: 2px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
415
466
|
}
|
|
416
467
|
.ogrid-datagrid-th--pinned-right {
|
|
417
|
-
position: sticky; top: 0; right: 0; z-index: 10; background: rgba(0,0,0,0.04); will-change: transform;
|
|
418
|
-
border-left: 2px solid rgba(0,0,0,0.12);
|
|
468
|
+
position: sticky; top: 0; right: 0; z-index: 10; background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); will-change: transform;
|
|
469
|
+
border-left: 2px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
419
470
|
}
|
|
420
471
|
.ogrid-datagrid-group-header {
|
|
421
|
-
text-align: center; font-weight: 600; border-bottom: 2px solid rgba(0,0,0,0.12); padding: 6px;
|
|
472
|
+
text-align: center; font-weight: 600; border-bottom: 2px solid var(--ogrid-border, rgba(0, 0, 0, 0.12)); padding: 6px;
|
|
422
473
|
}
|
|
423
474
|
.ogrid-datagrid-checkbox-col {
|
|
424
475
|
width: ${CHECKBOX_COLUMN_WIDTH}px; min-width: ${CHECKBOX_COLUMN_WIDTH}px;
|
|
@@ -428,8 +479,8 @@ DataGridTableComponent = __decorate([
|
|
|
428
479
|
.ogrid-row-number-header, .ogrid-row-number-cell {
|
|
429
480
|
width: ${ROW_NUMBER_COLUMN_WIDTH}px; min-width: ${ROW_NUMBER_COLUMN_WIDTH}px;
|
|
430
481
|
max-width: ${ROW_NUMBER_COLUMN_WIDTH}px; text-align: center;
|
|
431
|
-
background: rgba(0,0,0,0.04); font-weight: 600;
|
|
432
|
-
font-variant-numeric: tabular-nums; color: rgba(0,0,0,0.6);
|
|
482
|
+
background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04)); font-weight: 600;
|
|
483
|
+
font-variant-numeric: tabular-nums; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6));
|
|
433
484
|
position: sticky; left: 0; z-index: 3;
|
|
434
485
|
}
|
|
435
486
|
.ogrid-row-number-header { z-index: 4; }
|
|
@@ -437,51 +488,53 @@ DataGridTableComponent = __decorate([
|
|
|
437
488
|
display: flex; align-items: center; justify-content: center;
|
|
438
489
|
}
|
|
439
490
|
.ogrid-datagrid-row { }
|
|
440
|
-
.ogrid-datagrid-row:hover { background: rgba(0,0,0,0.04); }
|
|
441
|
-
.ogrid-datagrid-row--selected { background:
|
|
442
|
-
.ogrid-datagrid-td { position: relative; padding: 0; height: 1px; border-bottom: 1px solid rgba(0,0,0,0.06); }
|
|
491
|
+
.ogrid-datagrid-row:hover { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
492
|
+
.ogrid-datagrid-row--selected { background: var(--ogrid-selected-row-bg, #e6f0fb); }
|
|
493
|
+
.ogrid-datagrid-td { position: relative; padding: 0; height: 1px; border-bottom: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.06)); }
|
|
443
494
|
.ogrid-datagrid-td--pinned-left {
|
|
444
|
-
position: sticky; left: 0; z-index: 6; background: #
|
|
445
|
-
border-right: 2px solid rgba(0,0,0,0.12);
|
|
495
|
+
position: sticky; left: 0; z-index: 6; background: var(--ogrid-bg, #ffffff); will-change: transform;
|
|
496
|
+
border-right: 2px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
446
497
|
}
|
|
447
498
|
.ogrid-datagrid-td--pinned-right {
|
|
448
|
-
position: sticky; right: 0; z-index: 6; background: #
|
|
449
|
-
border-left: 2px solid rgba(0,0,0,0.12);
|
|
499
|
+
position: sticky; right: 0; z-index: 6; background: var(--ogrid-bg, #ffffff); will-change: transform;
|
|
500
|
+
border-left: 2px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
450
501
|
}
|
|
451
502
|
.ogrid-datagrid-cell {
|
|
452
503
|
width: 100%; height: 100%; display: flex; align-items: center; min-width: 0;
|
|
453
504
|
padding: 6px 10px; box-sizing: border-box; overflow: hidden;
|
|
454
505
|
text-overflow: ellipsis; white-space: nowrap; user-select: none; outline: none;
|
|
455
|
-
font-size: 14px;
|
|
506
|
+
font-size: 14px; color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
456
507
|
}
|
|
457
508
|
.ogrid-datagrid-cell:focus-visible {
|
|
458
|
-
outline: 2px solid #1976d2; outline-offset: -2px; z-index: 3;
|
|
509
|
+
outline: 2px solid var(--mat-sys-primary, #1976d2); outline-offset: -2px; z-index: 3;
|
|
459
510
|
}
|
|
460
511
|
.ogrid-datagrid-cell--numeric { justify-content: flex-end; text-align: right; }
|
|
461
512
|
.ogrid-datagrid-cell--boolean { justify-content: center; text-align: center; }
|
|
462
513
|
.ogrid-datagrid-cell--editable { cursor: cell; }
|
|
463
514
|
.ogrid-datagrid-cell--active {
|
|
464
|
-
outline: 2px solid var(--ogrid-selection, #217346); outline-offset: -1px;
|
|
515
|
+
outline: 2px solid var(--ogrid-selection-color, #217346); outline-offset: -1px;
|
|
465
516
|
z-index: 2; position: relative; overflow: visible;
|
|
466
517
|
}
|
|
467
|
-
.ogrid-datagrid-cell--in-range { background: var(--ogrid-bg
|
|
468
|
-
.ogrid-datagrid-cell--in-cut-range { background: rgba(0,0,0,0.04); opacity: 0.7; }
|
|
518
|
+
.ogrid-datagrid-cell--in-range { background: var(--ogrid-range-bg, rgba(33, 115, 70, 0.12)); }
|
|
519
|
+
.ogrid-datagrid-cell--in-cut-range { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); opacity: 0.7; }
|
|
469
520
|
.ogrid-datagrid-cell--editing { padding: 0; }
|
|
470
521
|
.ogrid-datagrid-editor-input {
|
|
471
|
-
width: 100%; height: 100%; padding: 6px 10px; border: 2px solid var(--ogrid-selection, #217346);
|
|
522
|
+
width: 100%; height: 100%; padding: 6px 10px; border: 2px solid var(--ogrid-selection-color, #217346);
|
|
472
523
|
box-sizing: border-box; font-size: 14px; outline: none; font-family: inherit; line-height: inherit;
|
|
524
|
+
background: var(--ogrid-bg, #ffffff); color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
473
525
|
}
|
|
474
526
|
.ogrid-datagrid-cell--numeric .ogrid-datagrid-editor-input {
|
|
475
527
|
text-align: right;
|
|
476
528
|
}
|
|
477
529
|
.ogrid-datagrid-editor-select {
|
|
478
|
-
width: 100%; height: 100%; padding: 4px 8px; border: 2px solid var(--ogrid-selection, #217346);
|
|
530
|
+
width: 100%; height: 100%; padding: 4px 8px; border: 2px solid var(--ogrid-selection-color, #217346);
|
|
479
531
|
box-sizing: border-box; font-size: 14px;
|
|
532
|
+
background: var(--ogrid-bg, #ffffff); color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
480
533
|
}
|
|
481
534
|
.ogrid-datagrid-fill-handle {
|
|
482
535
|
position: absolute; right: -3px; bottom: -3px; width: 7px; height: 7px;
|
|
483
|
-
background: var(--ogrid-selection, #217346);
|
|
484
|
-
border: 1px solid var(--ogrid-bg, #
|
|
536
|
+
background: var(--ogrid-selection-color, #217346);
|
|
537
|
+
border: 1px solid var(--ogrid-bg, #ffffff); border-radius: 1px;
|
|
485
538
|
cursor: crosshair; pointer-events: auto; z-index: 3;
|
|
486
539
|
}
|
|
487
540
|
.ogrid-datagrid-resize-handle {
|
|
@@ -490,16 +543,16 @@ DataGridTableComponent = __decorate([
|
|
|
490
543
|
}
|
|
491
544
|
.ogrid-datagrid-resize-handle::after {
|
|
492
545
|
content: ''; position: absolute; top: 4px; right: 3px; bottom: 4px; width: 2px;
|
|
493
|
-
background: rgba(0,0,0,0.12); border-radius: 1px; transition: background 0.15s;
|
|
546
|
+
background: var(--ogrid-border, rgba(0, 0, 0, 0.12)); border-radius: 1px; transition: background 0.15s;
|
|
494
547
|
}
|
|
495
|
-
.ogrid-datagrid-resize-handle:hover::after { background: rgba(0,0,0,0.4); }
|
|
548
|
+
.ogrid-datagrid-resize-handle:hover::after { background: var(--ogrid-fg-muted, rgba(0, 0, 0, 0.4)); }
|
|
496
549
|
.ogrid-datagrid-resize-handle:active::after { background: var(--mat-sys-primary, #1976d2); }
|
|
497
550
|
.ogrid-datagrid-empty {
|
|
498
|
-
padding: 32px 16px; text-align: center; border-top: 1px solid rgba(0,0,0,0.12);
|
|
499
|
-
background: rgba(0,0,0,0.04);
|
|
551
|
+
padding: 32px 16px; text-align: center; border-top: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
552
|
+
background: var(--ogrid-header-bg, rgba(0, 0, 0, 0.04));
|
|
500
553
|
}
|
|
501
|
-
.ogrid-datagrid-empty__title { font-size: 18px; font-weight: 600; margin-bottom: 8px; }
|
|
502
|
-
.ogrid-datagrid-empty__message { font-size: 14px; color: rgba(0,0,0,0.6); }
|
|
554
|
+
.ogrid-datagrid-empty__title { font-size: 18px; font-weight: 600; margin-bottom: 8px; color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)); }
|
|
555
|
+
.ogrid-datagrid-empty__message { font-size: 14px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
503
556
|
.ogrid-datagrid-empty__clear {
|
|
504
557
|
background: none; border: none; color: var(--mat-sys-primary, #1976d2);
|
|
505
558
|
cursor: pointer; font-size: inherit; text-decoration: underline; padding: 0;
|
|
@@ -507,26 +560,42 @@ DataGridTableComponent = __decorate([
|
|
|
507
560
|
.ogrid-datagrid-loading-overlay {
|
|
508
561
|
position: absolute; inset: 0; z-index: 2;
|
|
509
562
|
display: flex; align-items: center; justify-content: center;
|
|
510
|
-
background: rgba(255,255,255,0.7);
|
|
563
|
+
background: var(--ogrid-loading-overlay, rgba(255, 255, 255, 0.7));
|
|
511
564
|
}
|
|
512
565
|
.ogrid-datagrid-loading-inner {
|
|
513
566
|
display: flex; flex-direction: column; align-items: center; gap: 8px;
|
|
514
|
-
padding: 16px; background: #
|
|
567
|
+
padding: 16px; background: var(--ogrid-bg, #ffffff); border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.12)); border-radius: 4px;
|
|
568
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
515
569
|
}
|
|
516
570
|
.ogrid-datagrid-spinner {
|
|
517
|
-
width: 24px; height: 24px; border: 3px solid rgba(0,0,0,0.12);
|
|
571
|
+
width: 24px; height: 24px; border: 3px solid var(--ogrid-border, rgba(0, 0, 0, 0.12));
|
|
518
572
|
border-top-color: var(--mat-sys-primary, #1976d2);
|
|
519
573
|
border-radius: 50%; animation: ogrid-spin 0.8s linear infinite;
|
|
520
574
|
}
|
|
521
575
|
@keyframes ogrid-spin { to { transform: rotate(360deg); } }
|
|
522
576
|
.ogrid-datagrid-drop-indicator {
|
|
523
577
|
position: absolute; top: 0; bottom: 0; width: 3px;
|
|
524
|
-
background: var(--ogrid-
|
|
578
|
+
background: var(--ogrid-selection-color, #217346);
|
|
525
579
|
pointer-events: none; z-index: 100; transition: left 0.05s;
|
|
526
580
|
}
|
|
527
581
|
.ogrid-datagrid-context-menu-overlay {
|
|
528
582
|
position: fixed; inset: 0; z-index: 1000;
|
|
529
583
|
}
|
|
584
|
+
|
|
585
|
+
/* Angular Material Menu popup dark mode overrides */
|
|
586
|
+
.mat-mdc-menu-panel {
|
|
587
|
+
background: var(--ogrid-bg, #ffffff) !important;
|
|
588
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)) !important;
|
|
589
|
+
}
|
|
590
|
+
.mat-mdc-menu-item {
|
|
591
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)) !important;
|
|
592
|
+
}
|
|
593
|
+
.mat-mdc-menu-item:hover:not([disabled]) {
|
|
594
|
+
background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)) !important;
|
|
595
|
+
}
|
|
596
|
+
.mat-mdc-menu-item .mat-mdc-menu-item-text {
|
|
597
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)) !important;
|
|
598
|
+
}
|
|
530
599
|
`],
|
|
531
600
|
})
|
|
532
601
|
], DataGridTableComponent);
|
|
@@ -109,9 +109,10 @@ PopoverCellEditorComponent = __decorate([
|
|
|
109
109
|
display: flex; align-items: center; justify-content: center;
|
|
110
110
|
}
|
|
111
111
|
.ogrid-popover-editor-content {
|
|
112
|
-
background: #
|
|
113
|
-
box-shadow: 0 4px 12px rgba(0,0,0,0.15);
|
|
112
|
+
background: var(--ogrid-bg, #ffffff); border-radius: 4px; padding: 16px;
|
|
113
|
+
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
114
114
|
max-width: 90vw; max-height: 90vh; overflow: auto;
|
|
115
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
115
116
|
}
|
|
116
117
|
`],
|
|
117
118
|
})
|
|
@@ -97,25 +97,29 @@ PaginationControlsComponent = __decorate([
|
|
|
97
97
|
.ogrid-pagination {
|
|
98
98
|
display: flex; align-items: center; justify-content: space-between;
|
|
99
99
|
flex-wrap: wrap; gap: 8px; padding: 6px 12px; font-size: 14px;
|
|
100
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
100
101
|
}
|
|
101
|
-
.ogrid-pagination__info { color: rgba(0,0,0,0.6); }
|
|
102
|
+
.ogrid-pagination__info { color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
102
103
|
.ogrid-pagination__pages { display: flex; align-items: center; gap: 2px; }
|
|
103
104
|
.ogrid-pagination__btn {
|
|
104
105
|
min-width: 32px; height: 32px; padding: 0 6px;
|
|
105
|
-
border: 1px solid rgba(0,0,0,0.23); border-radius: 4px;
|
|
106
|
+
border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.23)); border-radius: 4px;
|
|
106
107
|
background: transparent; cursor: pointer; font-size: 14px;
|
|
108
|
+
color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
107
109
|
}
|
|
110
|
+
.ogrid-pagination__btn:hover:not(:disabled) { background: var(--ogrid-hover-bg, rgba(0, 0, 0, 0.04)); }
|
|
108
111
|
.ogrid-pagination__btn:disabled { opacity: 0.38; cursor: default; }
|
|
109
112
|
.ogrid-pagination__btn--active {
|
|
110
113
|
background: var(--mat-sys-primary, #1976d2); color: #fff;
|
|
111
114
|
border-color: var(--mat-sys-primary, #1976d2);
|
|
112
115
|
}
|
|
113
|
-
.ogrid-pagination__ellipsis { margin: 0 4px; color: rgba(0,0,0,0.6); }
|
|
114
|
-
.ogrid-pagination__size { display: flex; align-items: center; gap: 8px; }
|
|
116
|
+
.ogrid-pagination__ellipsis { margin: 0 4px; color: var(--ogrid-fg-secondary, rgba(0, 0, 0, 0.6)); }
|
|
117
|
+
.ogrid-pagination__size { display: flex; align-items: center; gap: 8px; color: var(--ogrid-fg, rgba(0, 0, 0, 0.87)); }
|
|
115
118
|
.ogrid-pagination__size select {
|
|
116
119
|
min-width: 60px; height: 32px; padding: 4px 8px;
|
|
117
|
-
border: 1px solid rgba(0,0,0,0.23); border-radius: 4px;
|
|
120
|
+
border: 1px solid var(--ogrid-border, rgba(0, 0, 0, 0.23)); border-radius: 4px;
|
|
118
121
|
font-size: 14px; margin-left: 8px;
|
|
122
|
+
background: var(--ogrid-bg, #ffffff); color: var(--ogrid-fg, rgba(0, 0, 0, 0.87));
|
|
119
123
|
}
|
|
120
124
|
`],
|
|
121
125
|
})
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alaarab/ogrid-angular-material",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.13",
|
|
4
4
|
"description": "OGrid Angular Material – MatTable-based data grid with sorting, filtering, pagination, column chooser, and CSV export.",
|
|
5
5
|
"main": "dist/esm/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -14,7 +14,9 @@
|
|
|
14
14
|
},
|
|
15
15
|
"scripts": {
|
|
16
16
|
"build": "rimraf dist && tsc -p tsconfig.build.json",
|
|
17
|
-
"test": "jest --passWithNoTests"
|
|
17
|
+
"test": "jest --passWithNoTests",
|
|
18
|
+
"storybook": "ng run angular-material:storybook",
|
|
19
|
+
"build-storybook": "ng run angular-material:build-storybook"
|
|
18
20
|
},
|
|
19
21
|
"keywords": [
|
|
20
22
|
"ogrid",
|
|
@@ -35,7 +37,7 @@
|
|
|
35
37
|
"node": ">=18"
|
|
36
38
|
},
|
|
37
39
|
"dependencies": {
|
|
38
|
-
"@alaarab/ogrid-angular": "2.0.
|
|
40
|
+
"@alaarab/ogrid-angular": "2.0.13"
|
|
39
41
|
},
|
|
40
42
|
"peerDependencies": {
|
|
41
43
|
"@angular/cdk": "^21.0.0",
|
|
@@ -54,7 +56,14 @@
|
|
|
54
56
|
"@angular/platform-browser-dynamic": "^21.1.4",
|
|
55
57
|
"rxjs": "^7.8.2",
|
|
56
58
|
"typescript": "^5.9.3",
|
|
57
|
-
"zone.js": "^0.15.0"
|
|
59
|
+
"zone.js": "^0.15.0",
|
|
60
|
+
"@angular/cli": "^21.1.4",
|
|
61
|
+
"@angular/compiler-cli": "^21.1.4",
|
|
62
|
+
"@angular-devkit/core": "^21.1.4",
|
|
63
|
+
"@angular-devkit/architect": "^0.2101.4",
|
|
64
|
+
"@angular-devkit/build-angular": "^21.1.4",
|
|
65
|
+
"@storybook/angular": "^10.2.8",
|
|
66
|
+
"storybook": "^10.2.8"
|
|
58
67
|
},
|
|
59
68
|
"sideEffects": false,
|
|
60
69
|
"publishConfig": {
|