@exmg/exm-grid 1.1.36 → 1.2.0

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.
Files changed (68) hide show
  1. package/.rollup.cache/root/repo/packages/exm-grid/dist/index.d.ts +14 -0
  2. package/.rollup.cache/root/repo/packages/exm-grid/dist/index.js +14 -0
  3. package/.rollup.cache/root/repo/packages/exm-grid/dist/search/exm-toolbar-search.d.ts +25 -0
  4. package/.rollup.cache/root/repo/packages/exm-grid/dist/search/exm-toolbar-search.js +88 -0
  5. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-base-toolbar-styles-css.d.ts +1 -0
  6. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-base-toolbar-styles-css.js +98 -0
  7. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-common-styles-css.d.ts +1 -0
  8. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-common-styles-css.js +104 -0
  9. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-pagination-styles-css.d.ts +1 -0
  10. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-pagination-styles-css.js +104 -0
  11. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-setting-selection-list-styles-css.d.ts +1 -0
  12. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-setting-selection-list-styles-css.js +12 -0
  13. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-styles-css.d.ts +1 -0
  14. package/.rollup.cache/root/repo/packages/exm-grid/dist/styles/exm-grid-styles-css.js +414 -0
  15. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-base-toolbar.d.ts +23 -0
  16. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-base-toolbar.js +94 -0
  17. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-pagination.d.ts +37 -0
  18. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-pagination.js +153 -0
  19. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-setting-selection-list.d.ts +24 -0
  20. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-setting-selection-list.js +124 -0
  21. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-smart-toolbar.d.ts +31 -0
  22. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-smart-toolbar.js +138 -0
  23. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-toolbar-css.d.ts +1 -0
  24. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-toolbar-filters.d.ts +36 -0
  25. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-toolbar-filters.js +77 -0
  26. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-toolbar.d.ts +41 -0
  27. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid-toolbar.js +198 -0
  28. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid.d.ts +130 -0
  29. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/exm-grid.js +333 -0
  30. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-column-sortable.d.ts +12 -0
  31. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-column-sortable.js +50 -0
  32. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-expandable.d.ts +9 -0
  33. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-expandable.js +42 -0
  34. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-selectable.d.ts +20 -0
  35. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-selectable.js +204 -0
  36. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-sortable.d.ts +9 -0
  37. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/featrues/exm-row-sortable.js +50 -0
  38. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/types/exm-grid-smart-toolbar-types.d.ts +17 -0
  39. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/types/exm-grid-smart-toolbar-types.js +6 -0
  40. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/types/exm-grid-toolbar-types.d.ts +55 -0
  41. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/types/exm-grid-toolbar-types.js +16 -0
  42. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/types/exm-grid-types.d.ts +15 -0
  43. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/utils/exm-query-selectors.d.ts +12 -0
  44. package/.rollup.cache/root/repo/packages/exm-grid/dist/table/utils/exm-query-selectors.js +37 -0
  45. package/dist/index.js +3 -3
  46. package/dist/search/exm-toolbar-search.js +6 -5
  47. package/dist/styles/exm-grid-base-toolbar-styles-css.js +5 -2
  48. package/dist/styles/exm-grid-common-styles-css.js +5 -2
  49. package/dist/styles/exm-grid-pagination-styles-css.js +5 -2
  50. package/dist/styles/exm-grid-setting-selection-list-styles-css.js +5 -2
  51. package/dist/styles/exm-grid-styles-css.js +5 -2
  52. package/dist/table/exm-grid-base-toolbar.js +5 -3
  53. package/dist/table/exm-grid-pagination.js +5 -3
  54. package/dist/table/exm-grid-setting-selection-list.js +5 -3
  55. package/dist/table/exm-grid-smart-toolbar.js +8 -6
  56. package/dist/table/exm-grid-toolbar-filters.js +6 -4
  57. package/dist/table/exm-grid-toolbar.js +6 -4
  58. package/dist/table/exm-grid.js +7 -5
  59. package/dist/table/featrues/exm-column-sortable.js +4 -2
  60. package/dist/table/featrues/exm-row-expandable.js +4 -2
  61. package/dist/table/featrues/exm-row-selectable.js +4 -2
  62. package/dist/table/featrues/exm-row-sortable.js +4 -2
  63. package/dist/table/types/exm-grid-smart-toolbar-types.js +5 -3
  64. package/dist/table/types/exm-grid-toolbar-types.js +9 -7
  65. package/dist/table/utils/exm-query-selectors.js +4 -2
  66. package/package.json +4 -4
  67. /package/{dist → .rollup.cache/root/repo/packages/exm-grid/dist}/table/exm-grid-toolbar-css.js +0 -0
  68. /package/{dist → .rollup.cache/root/repo/packages/exm-grid/dist}/table/types/exm-grid-types.js +0 -0
@@ -0,0 +1,414 @@
1
+ import { css } from 'lit';
2
+ export const style = css `
3
+ :host {
4
+ -moz-osx-font-smoothing: grayscale;
5
+ -webkit-font-smoothing: antialiased;
6
+ font-family: Roboto, sans-serif;
7
+ font-family: var(--mdc-typography-font-family, Roboto, sans-serif);
8
+ display: block;
9
+ --exm-arrow-upward-url: url('/node_modules/@exmg/exm-grid/assets/arrow-upward.svg');
10
+ --exm-table-card-width: var(--exm-theme-table-card-width, 100%);
11
+ --exm-table-card-margin-bottom: var(--exm-theme-table-card-margin-bottom, 5px);
12
+ --exm-table-color: var(--exm-theme-table-on-surface, var(--md-sys-color-on-surface));
13
+ --exm-table-card-background-color: var(--exm-theme-table-surface, var(--md-sys-color-surface-container));
14
+ --exm-table-row-divider-color: var(--exm-theme-table-row-divider-color, var(--md-sys-color-surface-variant));
15
+ --exm-table-row-selected-color: var(
16
+ --exm-theme-table-row-selected-color,
17
+ var(--md-sys-color-on-secondary-container)
18
+ );
19
+ --exm-table-row-selected-background-color: var(
20
+ --exm-theme-table-row-selected-background-color,
21
+ var(--md-sys-color-secondary-container)
22
+ );
23
+ --exm-table-row-hover-color: var(--exm-theme-table-row-hover-color, var(--md-sys-color-on-surface));
24
+ --exm-table-row-hover-background-color: var(
25
+ --exm-theme-table-row-hover-background-color,
26
+ var(--md-sys-color-surface-container-highest)
27
+ );
28
+ --exm-table-row-dragged-background-color: var(
29
+ --exm-theme-table-row-dragged-background-color,
30
+ var(--md-sys-color-surface-container-low)
31
+ );
32
+ --exm-table-rows-expanded-divider-border: var(--exm-theme-table-rows-expanded-divider-border, none);
33
+ --exm-table-rows-expanded-border: var(--exm-theme-table-rows-expanded-border, none);
34
+ --exm-table-rows-expanded-background-color: var(
35
+ --exm-theme-table-rows-expanded-background-color,
36
+ var(--md-sys-color-surface-container-low)
37
+ );
38
+ --exm-table-rows-expanded-color: var(--exm-theme-table-rows-expanded-color, var(--md-sys-color-on-surface));
39
+ --exm-table-th-color: var(--exm-theme-table-th-on-surface, var(--md-sys-color-on-surface));
40
+ --exm-table-th-background-color: var(--exm-theme-table-th-surface, var(--md-sys-color-surface-container));
41
+ --exm-table-th-sortable-hover-color: var(--exm-theme-table-th-sortable-hover-color, var(--md-sys-color-on-surface));
42
+ --exm-table-columns-background-color: var(--exm-theme-table-columns-background-color, var(--md-sys-color-surface));
43
+ --exm-table-th-height: var(--exm-theme-table-th-height, 48px);
44
+ --exm-table-th-sort-margin-left: var(--exm-theme-table-th-sort-margin-left, 0px);
45
+ --exm-table-td-height: var(--exm-theme-table-td-height, 48px);
46
+ --exm-table-th-sort-icon-height: var(--exm-theme-table-th-sort-icon-height, 1em);
47
+ --exm-table-th-sort-icon-width: var(--exm-theme-table-th-sort-icon-width, 1em);
48
+ --exm-table-col-number-padding-right: var(--exm-theme-table-col-number-padding-right, 10px);
49
+ --exm-table-checkbox-cell-width: var(--exm-theme-table-checkbox-cell-width, 24px);
50
+ --exm-table-toolbar-setting-position: var(--exm-theme-table-toolbar-setting-position, absolute);
51
+ }
52
+
53
+ ::slotted([slot='pagination']) {
54
+ display: flex;
55
+ align-items: center;
56
+ justify-content: flex-end;
57
+ border-top: 1px solid var(--exm-table-row-divider-color);
58
+ }
59
+
60
+ ::slotted([slot='toolbar']) {
61
+ display: block;
62
+ }
63
+
64
+ .table-card-container {
65
+ -moz-osx-font-smoothing: grayscale;
66
+ -webkit-font-smoothing: antialiased;
67
+ font-family: Roboto, sans-serif;
68
+ font-family: var(--mdc-typography-font-family, Roboto, sans-serif);
69
+ border: none;
70
+ width: var(--exm-table-card-width);
71
+ margin: 0;
72
+ padding: 0;
73
+ box-shadow: var(--exm-theme-table-box-shadow, none);
74
+ }
75
+
76
+ :host([with-toolbar]) .table-card {
77
+ border-top: 1px solid var(--exm-table-row-divider-color);
78
+ }
79
+
80
+ .table-card {
81
+ -moz-osx-font-smoothing: grayscale;
82
+ -webkit-font-smoothing: antialiased;
83
+ font-family: Roboto, sans-serif;
84
+ font-family: var(--mdc-typography-font-family, Roboto, sans-serif);
85
+ border: none;
86
+ border-bottom-left-radius: 4px;
87
+ border-bottom-right-radius: 4px;
88
+ width: var(--exm-table-card-width);
89
+ background-color: var(--exm-table-card-background-color);
90
+ margin-bottom: var(--exm-table-card-margin-bottom);
91
+ border-top-left-radius: var(--exm-theme-table-radius, var(--exm-surface-border-radius, 16px));
92
+ border-top-right-radius: var(--exm-theme-table-radius, var(--exm-surface-border-radius, 16px));
93
+ border-bottom-left-radius: var(--exm-theme-table-radius, var(--exm-surface-border-radius, 16px));
94
+ border-bottom-right-radius: var(--exm-theme-table-radius, var(--exm-surface-border-radius, 16px));
95
+ }
96
+
97
+ .table-container {
98
+ overflow-y: auto;
99
+ }
100
+
101
+ table {
102
+ width: 100%;
103
+ color: var(--exm-table-color);
104
+ border-spacing: 0;
105
+ border: none;
106
+ }
107
+
108
+ table[data-table-layout='fixed'] {
109
+ table-layout: fixed;
110
+ }
111
+
112
+ table[data-table-layout='fixed'] td:not(.grid-checkbox-cell):not(.menu-cell) {
113
+ overflow: hidden;
114
+ white-space: nowrap;
115
+ text-overflow: ellipsis;
116
+ }
117
+
118
+ table[data-table-layout='fixed'] th.grid-checkbox-cell,
119
+ table[data-table-layout='fixed'] td.grid-checkbox-cell {
120
+ width: var(--exm-table-checkbox-cell-width);
121
+ }
122
+
123
+ table[data-table-layout='fixed'] th.no-ellipsis,
124
+ table[data-table-layout='fixed'] td.no-ellipsis {
125
+ text-overflow: initial;
126
+ }
127
+
128
+ table thead tr,
129
+ table thead th {
130
+ -moz-osx-font-smoothing: grayscale;
131
+ -webkit-font-smoothing: antialiased;
132
+ font-family: Roboto, sans-serif;
133
+ font-family: var(--mdc-typography-caption-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));
134
+ font-size: 0.75rem;
135
+ font-size: var(--mdc-typography-caption-font-size, 0.75rem);
136
+ line-height: 1.25rem;
137
+ line-height: var(--mdc-typography-caption-line-height, 1.25rem);
138
+ font-weight: 400;
139
+ font-weight: var(--mdc-typography-caption-font-weight, 400);
140
+ letter-spacing: 0.0333333333em;
141
+ letter-spacing: var(--mdc-typography-caption-letter-spacing, 0.0333333333em);
142
+ text-decoration: inherit;
143
+ text-decoration: var(--mdc-typography-caption-text-decoration, inherit);
144
+ text-transform: inherit;
145
+ text-transform: var(--mdc-typography-caption-text-transform, inherit);
146
+ }
147
+
148
+ table tbody tr,
149
+ table tbody td,
150
+ table tfoot tr,
151
+ table tfoot td {
152
+ -moz-osx-font-smoothing: grayscale;
153
+ -webkit-font-smoothing: antialiased;
154
+ font-family: Roboto, sans-serif;
155
+ font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));
156
+ font-size: 0.875rem;
157
+ font-size: var(--mdc-typography-body2-font-size, 0.875rem);
158
+ line-height: 1.25rem;
159
+ line-height: var(--mdc-typography-body2-line-height, 1.25rem);
160
+ font-weight: 400;
161
+ font-weight: var(--mdc-typography-body2-font-weight, 400);
162
+ letter-spacing: 0.0178571429em;
163
+ letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);
164
+ text-decoration: inherit;
165
+ text-decoration: var(--mdc-typography-body2-text-decoration, inherit);
166
+ text-transform: inherit;
167
+ text-transform: var(--mdc-typography-body2-text-transform, inherit);
168
+ }
169
+
170
+ td {
171
+ height: var(--exm-table-td-height);
172
+ }
173
+
174
+ .grid-toolbar th {
175
+ padding: 0;
176
+ text-align: left;
177
+ }
178
+
179
+ .grid-toolbar th > * {
180
+ overflow-x: auto;
181
+ }
182
+
183
+ .grid-columns th {
184
+ height: var(--exm-table-th-height);
185
+ font-weight: 500;
186
+ font-style: normal;
187
+ font-stretch: normal;
188
+ text-transform: uppercase;
189
+ line-height: 1.33;
190
+ letter-spacing: 2px;
191
+ color: var(--exm-table-th-color);
192
+ background-color: var(--exm-table-th-background-color);
193
+ vertical-align: middle;
194
+ text-align: left;
195
+ user-select: none;
196
+ white-space: nowrap;
197
+ }
198
+
199
+ .grid-columns th > span {
200
+ vertical-align: middle;
201
+ max-width: 100%;
202
+ display: inline-block;
203
+ overflow: hidden;
204
+ white-space: nowrap;
205
+ text-overflow: ellipsis;
206
+ }
207
+
208
+ .grid-columns th svg {
209
+ fill: var(--exm-table-th-color);
210
+ }
211
+
212
+ .grid-columns th,
213
+ tbody td {
214
+ padding-left: 16px;
215
+ }
216
+
217
+ .grid-columns th:last-child,
218
+ tbody td:last-child {
219
+ padding-right: 10px;
220
+ }
221
+
222
+ th,
223
+ td {
224
+ border-top: 1px solid var(--exm-table-row-divider-color);
225
+ }
226
+
227
+ tbody td {
228
+ height: var(--exm-table-td-height);
229
+ -moz-osx-font-smoothing: grayscale;
230
+ -webkit-font-smoothing: antialiased;
231
+ font-family: Roboto, sans-serif;
232
+ font-family: var(--mdc-typography-body2-font-family, var(--mdc-typography-font-family, Roboto, sans-serif));
233
+ font-size: 0.875rem;
234
+ font-size: var(--mdc-typography-body2-font-size, 0.875rem);
235
+ line-height: 1.25rem;
236
+ line-height: var(--mdc-typography-body2-line-height, 1.25rem);
237
+ font-weight: 400;
238
+ font-weight: var(--mdc-typography-body2-font-weight, 400);
239
+ letter-spacing: 0.0178571429em;
240
+ letter-spacing: var(--mdc-typography-body2-letter-spacing, 0.0178571429em);
241
+ text-decoration: inherit;
242
+ text-decoration: var(--mdc-typography-body2-text-decoration, inherit);
243
+ text-transform: inherit;
244
+ text-transform: var(--mdc-typography-body2-text-transform, inherit);
245
+ font-weight: normal;
246
+ font-style: normal;
247
+ font-stretch: normal;
248
+ line-height: 1.43px;
249
+ letter-spacing: 0.3px;
250
+ color: var(--exm-table-color);
251
+ }
252
+
253
+ tbody td svg {
254
+ fill: var(--exm-table-color);
255
+ }
256
+
257
+ th[data-sort] {
258
+ cursor: pointer;
259
+ }
260
+
261
+ th[data-sort]:hover {
262
+ color: var(--exm-table-th-sortable-hover-color);
263
+ }
264
+
265
+ th[data-sort]::after {
266
+ display: inline-block;
267
+ content: '';
268
+ -webkit-mask-image: var(--exm-arrow-upward-url);
269
+ mask-image: var(--exm-arrow-upward-url);
270
+ background-color: currentColor;
271
+ background-size: contain;
272
+ height: var(--exm-table-th-sort-icon-height);
273
+ width: var(--exm-table-th-sort-icon-width);
274
+ margin-left: var(--exm-table-th-sort-margin-left);
275
+ vertical-align: middle;
276
+ opacity: 0;
277
+ }
278
+
279
+ th[data-sort-direction]::after {
280
+ opacity: 1;
281
+ transition: transform 0.1s linear;
282
+ }
283
+
284
+ th[data-sort-direction='ASC']::after {
285
+ transform: rotate(0deg);
286
+ }
287
+
288
+ th[data-sort-direction='DESC']::after {
289
+ transform: rotate(180deg);
290
+ }
291
+
292
+ tbody > tr:not(.grid-row-detail):hover {
293
+ color: var(--exm-table-row-hover-color);
294
+ background-color: var(--exm-table-row-hover-background-color);
295
+ }
296
+
297
+ tbody > tr:not(.grid-row-detail):hover td {
298
+ color: var(--exm-table-row-hover-color);
299
+ }
300
+
301
+ tbody > tr:not(.grid-row-detail):hover svg {
302
+ fill: var(--exm-table-row-hover-color);
303
+ }
304
+
305
+ tr[data-selected] {
306
+ color: var(--exm-table-row-selected-color);
307
+ background-color: var(--exm-table-row-selected-background-color);
308
+ }
309
+
310
+ tr[data-selected] td {
311
+ color: var(--exm-table-row-selected-color);
312
+ }
313
+
314
+ tr[data-selected] svg {
315
+ fill: var(--exm-table-row-selected-color);
316
+ }
317
+
318
+ tbody tr[data-has-expanded-detail],
319
+ tbody tr[data-has-expanded-detail]:hover,
320
+ tbody tr[data-is-row-expanded] {
321
+ background-color: var(--exm-table-rows-expanded-background-color);
322
+ border: var(--exm-table-rows-expanded-border);
323
+ }
324
+
325
+ tbody tr[data-has-expanded-detail] td,
326
+ tbody tr[data-has-expanded-detail]:hover td,
327
+ tbody tr[data-is-row-expanded] td {
328
+ color: var(--exm-table-rows-expanded-color);
329
+ }
330
+
331
+ tbody tr[data-has-expanded-detail] td svg,
332
+ tbody tr[data-has-expanded-detail]:hover td svg,
333
+ tbody tr[data-is-row-expanded] td svg {
334
+ fill: var(--exm-table-rows-expanded-color);
335
+ }
336
+
337
+ tbody tr[data-is-row-expanded] td {
338
+ border-bottom: none;
339
+ }
340
+
341
+ tbody tr[data-has-expanded-detail] td,
342
+ tbody tr[data-has-expanded-detail]:hover td {
343
+ border-bottom: var(--exm-table-rows-expanded-divider-border);
344
+ }
345
+
346
+ tr.grid-row-detail {
347
+ display: none;
348
+ }
349
+
350
+ tr.grid-row-detail[data-is-row-expanded] {
351
+ display: table-row;
352
+ }
353
+
354
+ tr.grid-row-detail td {
355
+ padding: 20px;
356
+ }
357
+
358
+ tr .grid-icon-rotate[data-is-expanded] > * {
359
+ transition: transform 0.1s linear;
360
+ transform: rotate(180deg);
361
+ }
362
+
363
+ tr .grid-icon-rotate[data-is-expandable]:not([data-is-expanded]) > * {
364
+ transition: transform 0.1s linear;
365
+ transform: rotate(0deg);
366
+ }
367
+
368
+ .grid-row-drag-handler {
369
+ cursor: move;
370
+ vertical-align: middle;
371
+ }
372
+
373
+ .grid-row-drag-handler > * {
374
+ vertical-align: middle;
375
+ }
376
+
377
+ tr.dragged {
378
+ background-color: var(--exm-table-row-dragged-background-color);
379
+ opacity: 0.25;
380
+ box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5) inset;
381
+ }
382
+
383
+ tr.cloned {
384
+ background-color: var(--exm-table-row-dragged-background-color);
385
+ width: 100%;
386
+ box-sizing: border-box;
387
+ box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.5);
388
+ opacity: 0.9;
389
+ }
390
+
391
+ tr td.grid-cell-visible-on-hover {
392
+ text-align: center;
393
+ }
394
+
395
+ tr td.grid-cell-visible-on-hover > * {
396
+ visibility: hidden;
397
+ }
398
+
399
+ tr:hover td.grid-cell-visible-on-hover > *,
400
+ tr[data-has-expanded-detail] td.grid-cell-visible-on-hover > * {
401
+ visibility: visible;
402
+ }
403
+
404
+ tr td.grid-col-number,
405
+ tr th.grid-col-number {
406
+ padding-right: var(--exm-table-col-number-padding-right);
407
+ text-align: right;
408
+ }
409
+
410
+ tr th.grid-col-number > span {
411
+ width: 100%;
412
+ }
413
+ `;
414
+ //# sourceMappingURL=exm-grid-styles-css.js.map
@@ -0,0 +1,23 @@
1
+ import { ExmgElement } from '@exmg/lit-base/index.js';
2
+ /**
3
+ * ### Styling
4
+ * The following custom properties are available for styling:
5
+ *
6
+ */
7
+ export declare class ExmGridBaseToolbar extends ExmgElement {
8
+ static styles: import("lit").CSSResult[];
9
+ private actionsCount;
10
+ private settingsCount;
11
+ private active;
12
+ disableSeperator: boolean;
13
+ private observer?;
14
+ private getChildElementCount;
15
+ connectedCallback(): void;
16
+ disconnectedCallback(): void;
17
+ render(): import("lit-html").TemplateResult<1>;
18
+ }
19
+ declare global {
20
+ interface HTMLElementTagNameMap {
21
+ 'exm-grid-base-toolbar': ExmGridBaseToolbar;
22
+ }
23
+ }
@@ -0,0 +1,94 @@
1
+ import { __decorate } from "tslib";
2
+ import { html } from 'lit';
3
+ import { customElement, property, state } from 'lit/decorators.js';
4
+ import { ExmgElement } from '@exmg/lit-base/index.js';
5
+ import { style } from '../styles/exm-grid-base-toolbar-styles-css.js';
6
+ import { classMap } from 'lit/directives/class-map.js';
7
+ /**
8
+ * ### Styling
9
+ * The following custom properties are available for styling:
10
+ *
11
+ */
12
+ let ExmGridBaseToolbar = class ExmGridBaseToolbar extends ExmgElement {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.actionsCount = 0;
16
+ this.settingsCount = 0;
17
+ this.active = false;
18
+ this.disableSeperator = false;
19
+ }
20
+ getChildElementCount(selector) {
21
+ const element = this.querySelector(selector);
22
+ return element ? element.childElementCount : 0;
23
+ }
24
+ connectedCallback() {
25
+ super.connectedCallback();
26
+ this.observer = new MutationObserver((mutationsList) => {
27
+ setTimeout(() => {
28
+ for (const mutation of mutationsList) {
29
+ if (mutation.type === 'childList') {
30
+ this.actionsCount = this.getChildElementCount('div[slot=actions]');
31
+ this.settingsCount = this.getChildElementCount('div[slot=settings]');
32
+ this.active = this.actionsCount > 0;
33
+ }
34
+ }
35
+ }, 60);
36
+ });
37
+ this.actionsCount = this.getChildElementCount('div[slot=actions]');
38
+ this.settingsCount = this.getChildElementCount('div[slot=settings]');
39
+ this.active = this.actionsCount > 0;
40
+ this.observer.observe(this, { attributes: false, childList: true, subtree: true });
41
+ }
42
+ disconnectedCallback() {
43
+ this.observer.disconnect();
44
+ super.disconnectedCallback();
45
+ }
46
+ render() {
47
+ const classNames = { active: this.active, 'has-action': this.actionsCount > 0 };
48
+ return html `
49
+ <div class="wrapper ${classMap(classNames)}">
50
+ ${this.actionsCount > 0
51
+ ? html `
52
+ <div class="actions">
53
+ <slot name="actions"></slot>
54
+ </div>
55
+ <div class="seperator ${this.actionsCount > 0 && !this.disableSeperator ? 'with-action-separator' : ''}">
56
+ &nbsp;
57
+ </div>
58
+ `
59
+ : ''}
60
+
61
+ <div class="description">
62
+ <slot name="description"></slot>
63
+ </div>
64
+ <div class="filters">
65
+ <slot name="filters"></slot>
66
+ </div>
67
+ <div class="settings ${this.settingsCount > 0 ? 'has-settings' : ''}">
68
+ <slot name="settings"></slot>
69
+ </div>
70
+ <div class="extra">
71
+ <slot name="extra"></slot>
72
+ </div>
73
+ </div>
74
+ `;
75
+ }
76
+ };
77
+ ExmGridBaseToolbar.styles = [style];
78
+ __decorate([
79
+ state()
80
+ ], ExmGridBaseToolbar.prototype, "actionsCount", void 0);
81
+ __decorate([
82
+ state()
83
+ ], ExmGridBaseToolbar.prototype, "settingsCount", void 0);
84
+ __decorate([
85
+ state()
86
+ ], ExmGridBaseToolbar.prototype, "active", void 0);
87
+ __decorate([
88
+ property({ type: Boolean })
89
+ ], ExmGridBaseToolbar.prototype, "disableSeperator", void 0);
90
+ ExmGridBaseToolbar = __decorate([
91
+ customElement('exm-grid-base-toolbar')
92
+ ], ExmGridBaseToolbar);
93
+ export { ExmGridBaseToolbar };
94
+ //# sourceMappingURL=exm-grid-base-toolbar.js.map
@@ -0,0 +1,37 @@
1
+ import { ExmgElement } from '@exmg/lit-base/index.js';
2
+ import '@material/web/iconbutton/icon-button.js';
3
+ import '@material/web/icon/icon.js';
4
+ import './exm-grid-toolbar-filters.js';
5
+ /**
6
+ * ### Styling
7
+ * The following custom properties are available for styling:
8
+ *
9
+ * Custom property | Description | Default
10
+ * ----------------|-------------|----------
11
+ * `--exm-theme-table-pagination-bg-color` | pagination background color | `var(--mdc-theme-surface, #ffffff);`
12
+ * `--exm-theme-table-pagination-color` | pagination foreground (mostly text) color | `var(--mdc-theme-on-surface, #02182b);`
13
+ */
14
+ export declare class ExmGridPagination extends ExmgElement {
15
+ static styles: import("lit").CSSResult[];
16
+ pageSizeLabel: string;
17
+ pageSizeOptions: number[];
18
+ pageSize: number;
19
+ pageIndex: number;
20
+ itemCount: number;
21
+ private renderPageSizeLabel;
22
+ private renderPageSizeOptions;
23
+ private renderPageRangeLabel;
24
+ private renderPageRangeActions;
25
+ private renderPrevPage;
26
+ private renderNextPage;
27
+ private fireEventPageChanged;
28
+ private handleOnClickPrev;
29
+ private handleOnClickNext;
30
+ private handleOnPageSizeChanged;
31
+ protected render(): import("lit-html").TemplateResult<1>;
32
+ }
33
+ declare global {
34
+ interface HTMLElementTagNameMap {
35
+ 'exm-grid-pagination': ExmGridPagination;
36
+ }
37
+ }