@vaadin/grid 24.8.0-alpha8 → 25.0.0-alpha1

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 (130) hide show
  1. package/README.md +0 -36
  2. package/package.json +11 -13
  3. package/src/vaadin-grid-column-auto-width-mixin.js +36 -5
  4. package/src/vaadin-grid-column-group.js +3 -3
  5. package/src/vaadin-grid-column-mixin.js +0 -8
  6. package/src/vaadin-grid-column.js +3 -2
  7. package/src/vaadin-grid-data-provider-mixin.js +5 -1
  8. package/src/vaadin-grid-filter-column.d.ts +1 -1
  9. package/src/vaadin-grid-filter-column.js +1 -1
  10. package/src/vaadin-grid-filter-element-mixin.d.ts +1 -2
  11. package/src/vaadin-grid-filter-element-mixin.js +1 -4
  12. package/src/vaadin-grid-filter.js +8 -6
  13. package/src/vaadin-grid-helpers.js +1 -1
  14. package/src/vaadin-grid-mixin.js +1 -3
  15. package/src/vaadin-grid-selection-column.d.ts +1 -1
  16. package/src/vaadin-grid-selection-column.js +1 -1
  17. package/src/vaadin-grid-sort-column.d.ts +1 -1
  18. package/src/vaadin-grid-sort-column.js +1 -1
  19. package/src/vaadin-grid-sorter.js +11 -9
  20. package/src/vaadin-grid-tree-column.d.ts +1 -2
  21. package/src/vaadin-grid-tree-column.js +1 -1
  22. package/src/vaadin-grid-tree-toggle.js +5 -3
  23. package/src/vaadin-grid.d.ts +0 -2
  24. package/src/vaadin-grid.js +27 -18
  25. package/theme/lumo/vaadin-grid-tree-toggle-styles.js +0 -31
  26. package/web-types.json +7 -7
  27. package/web-types.lit.json +7 -7
  28. package/src/lit-all-imports.js +0 -14
  29. package/src/vaadin-lit-grid-column-group.js +0 -28
  30. package/src/vaadin-lit-grid-column.js +0 -30
  31. package/src/vaadin-lit-grid-filter-column.js +0 -28
  32. package/src/vaadin-lit-grid-filter.js +0 -35
  33. package/src/vaadin-lit-grid-selection-column.js +0 -28
  34. package/src/vaadin-lit-grid-sort-column.js +0 -28
  35. package/src/vaadin-lit-grid-sorter.js +0 -42
  36. package/src/vaadin-lit-grid-tree-column.js +0 -28
  37. package/src/vaadin-lit-grid-tree-toggle.js +0 -39
  38. package/src/vaadin-lit-grid.js +0 -78
  39. package/theme/lumo/lit-all-imports.d.ts +0 -11
  40. package/theme/lumo/lit-all-imports.js +0 -11
  41. package/theme/lumo/vaadin-lit-grid-column-group.d.ts +0 -1
  42. package/theme/lumo/vaadin-lit-grid-column-group.js +0 -1
  43. package/theme/lumo/vaadin-lit-grid-column.d.ts +0 -1
  44. package/theme/lumo/vaadin-lit-grid-column.js +0 -1
  45. package/theme/lumo/vaadin-lit-grid-filter-column.d.ts +0 -2
  46. package/theme/lumo/vaadin-lit-grid-filter-column.js +0 -2
  47. package/theme/lumo/vaadin-lit-grid-filter.d.ts +0 -2
  48. package/theme/lumo/vaadin-lit-grid-filter.js +0 -2
  49. package/theme/lumo/vaadin-lit-grid-selection-column.d.ts +0 -2
  50. package/theme/lumo/vaadin-lit-grid-selection-column.js +0 -2
  51. package/theme/lumo/vaadin-lit-grid-sort-column.d.ts +0 -2
  52. package/theme/lumo/vaadin-lit-grid-sort-column.js +0 -2
  53. package/theme/lumo/vaadin-lit-grid-sorter.d.ts +0 -2
  54. package/theme/lumo/vaadin-lit-grid-sorter.js +0 -2
  55. package/theme/lumo/vaadin-lit-grid-tree-column.d.ts +0 -2
  56. package/theme/lumo/vaadin-lit-grid-tree-column.js +0 -2
  57. package/theme/lumo/vaadin-lit-grid-tree-toggle.d.ts +0 -2
  58. package/theme/lumo/vaadin-lit-grid-tree-toggle.js +0 -2
  59. package/theme/lumo/vaadin-lit-grid.d.ts +0 -2
  60. package/theme/lumo/vaadin-lit-grid.js +0 -2
  61. package/theme/material/all-imports.d.ts +0 -11
  62. package/theme/material/all-imports.js +0 -11
  63. package/theme/material/lit-all-imports.d.ts +0 -11
  64. package/theme/material/lit-all-imports.js +0 -11
  65. package/theme/material/vaadin-grid-column-group.d.ts +0 -1
  66. package/theme/material/vaadin-grid-column-group.js +0 -1
  67. package/theme/material/vaadin-grid-column.d.ts +0 -1
  68. package/theme/material/vaadin-grid-column.js +0 -1
  69. package/theme/material/vaadin-grid-filter-column.d.ts +0 -2
  70. package/theme/material/vaadin-grid-filter-column.js +0 -2
  71. package/theme/material/vaadin-grid-filter.d.ts +0 -2
  72. package/theme/material/vaadin-grid-filter.js +0 -2
  73. package/theme/material/vaadin-grid-selection-column.d.ts +0 -2
  74. package/theme/material/vaadin-grid-selection-column.js +0 -2
  75. package/theme/material/vaadin-grid-sort-column.d.ts +0 -2
  76. package/theme/material/vaadin-grid-sort-column.js +0 -2
  77. package/theme/material/vaadin-grid-sorter-styles.d.ts +0 -2
  78. package/theme/material/vaadin-grid-sorter-styles.js +0 -73
  79. package/theme/material/vaadin-grid-sorter.d.ts +0 -2
  80. package/theme/material/vaadin-grid-sorter.js +0 -2
  81. package/theme/material/vaadin-grid-styles.d.ts +0 -2
  82. package/theme/material/vaadin-grid-styles.js +0 -266
  83. package/theme/material/vaadin-grid-tree-column.d.ts +0 -2
  84. package/theme/material/vaadin-grid-tree-column.js +0 -2
  85. package/theme/material/vaadin-grid-tree-toggle-styles.d.ts +0 -3
  86. package/theme/material/vaadin-grid-tree-toggle-styles.js +0 -42
  87. package/theme/material/vaadin-grid-tree-toggle.d.ts +0 -2
  88. package/theme/material/vaadin-grid-tree-toggle.js +0 -2
  89. package/theme/material/vaadin-grid.d.ts +0 -2
  90. package/theme/material/vaadin-grid.js +0 -2
  91. package/theme/material/vaadin-lit-grid-column-group.d.ts +0 -1
  92. package/theme/material/vaadin-lit-grid-column-group.js +0 -1
  93. package/theme/material/vaadin-lit-grid-column.d.ts +0 -1
  94. package/theme/material/vaadin-lit-grid-column.js +0 -1
  95. package/theme/material/vaadin-lit-grid-filter-column.d.ts +0 -2
  96. package/theme/material/vaadin-lit-grid-filter-column.js +0 -2
  97. package/theme/material/vaadin-lit-grid-filter.d.ts +0 -2
  98. package/theme/material/vaadin-lit-grid-filter.js +0 -2
  99. package/theme/material/vaadin-lit-grid-selection-column.d.ts +0 -2
  100. package/theme/material/vaadin-lit-grid-selection-column.js +0 -2
  101. package/theme/material/vaadin-lit-grid-sort-column.d.ts +0 -2
  102. package/theme/material/vaadin-lit-grid-sort-column.js +0 -2
  103. package/theme/material/vaadin-lit-grid-sorter.d.ts +0 -2
  104. package/theme/material/vaadin-lit-grid-sorter.js +0 -2
  105. package/theme/material/vaadin-lit-grid-tree-column.d.ts +0 -2
  106. package/theme/material/vaadin-lit-grid-tree-column.js +0 -2
  107. package/theme/material/vaadin-lit-grid-tree-toggle.d.ts +0 -2
  108. package/theme/material/vaadin-lit-grid-tree-toggle.js +0 -2
  109. package/theme/material/vaadin-lit-grid.d.ts +0 -2
  110. package/theme/material/vaadin-lit-grid.js +0 -2
  111. package/vaadin-lit-grid-column-group.d.ts +0 -1
  112. package/vaadin-lit-grid-column-group.js +0 -3
  113. package/vaadin-lit-grid-column.d.ts +0 -1
  114. package/vaadin-lit-grid-column.js +0 -3
  115. package/vaadin-lit-grid-filter-column.d.ts +0 -1
  116. package/vaadin-lit-grid-filter-column.js +0 -3
  117. package/vaadin-lit-grid-filter.d.ts +0 -1
  118. package/vaadin-lit-grid-filter.js +0 -3
  119. package/vaadin-lit-grid-selection-column.d.ts +0 -1
  120. package/vaadin-lit-grid-selection-column.js +0 -3
  121. package/vaadin-lit-grid-sort-column.d.ts +0 -1
  122. package/vaadin-lit-grid-sort-column.js +0 -3
  123. package/vaadin-lit-grid-sorter.d.ts +0 -1
  124. package/vaadin-lit-grid-sorter.js +0 -3
  125. package/vaadin-lit-grid-tree-column.d.ts +0 -1
  126. package/vaadin-lit-grid-tree-column.js +0 -3
  127. package/vaadin-lit-grid-tree-toggle.d.ts +0 -1
  128. package/vaadin-lit-grid-tree-toggle.js +0 -3
  129. package/vaadin-lit-grid.d.ts +0 -1
  130. package/vaadin-lit-grid.js +0 -3
@@ -1,78 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2017 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import './vaadin-lit-grid-column.js';
7
- import { html, LitElement } from 'lit';
8
- import { ifDefined } from 'lit/directives/if-defined.js';
9
- import { isIOS, isSafari } from '@vaadin/component-base/src/browser-utils.js';
10
- import { defineCustomElement } from '@vaadin/component-base/src/define.js';
11
- import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
12
- import { PolylitMixin } from '@vaadin/component-base/src/polylit-mixin.js';
13
- import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
14
- import { GridMixin } from './vaadin-grid-mixin.js';
15
- import { gridStyles } from './vaadin-grid-styles.js';
16
-
17
- /**
18
- * LitElement based version of `<vaadin-grid>` web component.
19
- *
20
- * ## Disclaimer
21
- *
22
- * This component is an experiment and not yet a part of Vaadin platform.
23
- * There is no ETA regarding specific Vaadin version where it'll land.
24
- * Feel free to try this code in your apps as per Apache 2.0 license.
25
- */
26
- class Grid extends GridMixin(ElementMixin(ThemableMixin(PolylitMixin(LitElement)))) {
27
- static get is() {
28
- return 'vaadin-grid';
29
- }
30
-
31
- static get styles() {
32
- return gridStyles;
33
- }
34
-
35
- /** @protected */
36
- render() {
37
- return html`
38
- <div
39
- id="scroller"
40
- ?safari="${isSafari}"
41
- ?ios="${isIOS}"
42
- ?loading="${this.loading}"
43
- ?column-reordering-allowed="${this.columnReorderingAllowed}"
44
- ?empty-state="${this.__emptyState}"
45
- >
46
- <table
47
- id="table"
48
- role="treegrid"
49
- aria-multiselectable="true"
50
- tabindex="0"
51
- aria-label="${ifDefined(this.accessibleName)}"
52
- >
53
- <caption id="sizer" part="row"></caption>
54
- <thead id="header" role="rowgroup"></thead>
55
- <tbody id="items" role="rowgroup"></tbody>
56
- <tbody id="emptystatebody">
57
- <tr id="emptystaterow">
58
- <td part="empty-state" id="emptystatecell" tabindex="0">
59
- <slot name="empty-state" id="emptystateslot"></slot>
60
- </td>
61
- </tr>
62
- </tbody>
63
- <tfoot id="footer" role="rowgroup"></tfoot>
64
- </table>
65
-
66
- <div part="reorder-ghost"></div>
67
- </div>
68
-
69
- <slot name="tooltip"></slot>
70
-
71
- <div id="focusexit" tabindex="0"></div>
72
- `;
73
- }
74
- }
75
-
76
- defineCustomElement(Grid);
77
-
78
- export { Grid };
@@ -1,11 +0,0 @@
1
- import './vaadin-lit-grid-column-group.js';
2
- import './vaadin-lit-grid-column.js';
3
- import './vaadin-lit-grid-filter.js';
4
- import './vaadin-lit-grid-filter-column.js';
5
- import './vaadin-lit-grid-selection-column.js';
6
- import './vaadin-lit-grid-sorter.js';
7
- import './vaadin-lit-grid-sort-column.js';
8
- import './vaadin-lit-grid-tree-toggle.js';
9
- import './vaadin-lit-grid-tree-column.js';
10
- import './vaadin-lit-grid.js';
11
- import '../../src/lit-all-imports.js';
@@ -1,11 +0,0 @@
1
- import './vaadin-lit-grid-column-group.js';
2
- import './vaadin-lit-grid-column.js';
3
- import './vaadin-lit-grid-filter.js';
4
- import './vaadin-lit-grid-filter-column.js';
5
- import './vaadin-lit-grid-selection-column.js';
6
- import './vaadin-lit-grid-sorter.js';
7
- import './vaadin-lit-grid-sort-column.js';
8
- import './vaadin-lit-grid-tree-toggle.js';
9
- import './vaadin-lit-grid-tree-column.js';
10
- import './vaadin-lit-grid.js';
11
- import '../../src/lit-all-imports.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-lit-grid-column-group.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-lit-grid-column-group.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-lit-grid-column.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-lit-grid-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-filter.js';
2
- import '../../src/vaadin-lit-grid-filter-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-filter.js';
2
- import '../../src/vaadin-lit-grid-filter-column.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/text-field/theme/lumo/vaadin-lit-text-field.js';
2
- import '../../src/vaadin-lit-grid-filter.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/text-field/theme/lumo/vaadin-lit-text-field.js';
2
- import '../../src/vaadin-lit-grid-filter.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/checkbox/theme/lumo/vaadin-lit-checkbox.js';
2
- import '../../src/vaadin-lit-grid-selection-column.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/checkbox/theme/lumo/vaadin-lit-checkbox.js';
2
- import '../../src/vaadin-lit-grid-selection-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-sorter.js';
2
- import '../../src/vaadin-lit-grid-sort-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-sorter.js';
2
- import '../../src/vaadin-lit-grid-sort-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter-styles.js';
2
- import '../../src/vaadin-lit-grid-sorter.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter-styles.js';
2
- import '../../src/vaadin-lit-grid-sorter.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-tree-toggle.js';
2
- import '../../src/vaadin-lit-grid-tree-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-lit-grid-tree-toggle.js';
2
- import '../../src/vaadin-lit-grid-tree-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-tree-toggle-styles.js';
2
- import '../../src/vaadin-lit-grid-tree-toggle.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-tree-toggle-styles.js';
2
- import '../../src/vaadin-lit-grid-tree-toggle.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-styles.js';
2
- import '../../src/vaadin-lit-grid.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-styles.js';
2
- import '../../src/vaadin-lit-grid.js';
@@ -1,11 +0,0 @@
1
- import './vaadin-grid-column-group.js';
2
- import './vaadin-grid-column.js';
3
- import './vaadin-grid-filter.js';
4
- import './vaadin-grid-filter-column.js';
5
- import './vaadin-grid-selection-column.js';
6
- import './vaadin-grid-sorter.js';
7
- import './vaadin-grid-sort-column.js';
8
- import './vaadin-grid-tree-toggle.js';
9
- import './vaadin-grid-tree-column.js';
10
- import './vaadin-grid.js';
11
- import '../../src/all-imports.js';
@@ -1,11 +0,0 @@
1
- import './vaadin-grid-column-group.js';
2
- import './vaadin-grid-column.js';
3
- import './vaadin-grid-filter.js';
4
- import './vaadin-grid-filter-column.js';
5
- import './vaadin-grid-selection-column.js';
6
- import './vaadin-grid-sorter.js';
7
- import './vaadin-grid-sort-column.js';
8
- import './vaadin-grid-tree-toggle.js';
9
- import './vaadin-grid-tree-column.js';
10
- import './vaadin-grid.js';
11
- import '../../src/all-imports.js';
@@ -1,11 +0,0 @@
1
- import './vaadin-lit-grid-column-group.js';
2
- import './vaadin-lit-grid-column.js';
3
- import './vaadin-lit-grid-filter.js';
4
- import './vaadin-lit-grid-filter-column.js';
5
- import './vaadin-lit-grid-selection-column.js';
6
- import './vaadin-lit-grid-sorter.js';
7
- import './vaadin-lit-grid-sort-column.js';
8
- import './vaadin-lit-grid-tree-toggle.js';
9
- import './vaadin-lit-grid-tree-column.js';
10
- import './vaadin-lit-grid.js';
11
- import '../../src/lit-all-imports.js';
@@ -1,11 +0,0 @@
1
- import './vaadin-lit-grid-column-group.js';
2
- import './vaadin-lit-grid-column.js';
3
- import './vaadin-lit-grid-filter.js';
4
- import './vaadin-lit-grid-filter-column.js';
5
- import './vaadin-lit-grid-selection-column.js';
6
- import './vaadin-lit-grid-sorter.js';
7
- import './vaadin-lit-grid-sort-column.js';
8
- import './vaadin-lit-grid-tree-toggle.js';
9
- import './vaadin-lit-grid-tree-column.js';
10
- import './vaadin-lit-grid.js';
11
- import '../../src/lit-all-imports.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-grid-column-group.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-grid-column-group.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-grid-column.js';
@@ -1 +0,0 @@
1
- import '../../src/vaadin-grid-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-filter.js';
2
- import '../../src/vaadin-grid-filter-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-filter.js';
2
- import '../../src/vaadin-grid-filter-column.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/text-field/theme/material/vaadin-text-field.js';
2
- import '../../src/vaadin-grid-filter.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/text-field/theme/material/vaadin-text-field.js';
2
- import '../../src/vaadin-grid-filter.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/checkbox/theme/material/vaadin-checkbox.js';
2
- import '../../src/vaadin-grid-selection-column.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/checkbox/theme/material/vaadin-checkbox.js';
2
- import '../../src/vaadin-grid-selection-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter.js';
2
- import '../../src/vaadin-grid-sort-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter.js';
2
- import '../../src/vaadin-grid-sort-column.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/vaadin-material-styles/color.js';
2
- import '@vaadin/vaadin-material-styles/font-icons.js';
@@ -1,73 +0,0 @@
1
- import '@vaadin/vaadin-material-styles/color.js';
2
- import '@vaadin/vaadin-material-styles/font-icons.js';
3
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
4
-
5
- registerStyles(
6
- 'vaadin-grid-sorter',
7
- css`
8
- :host {
9
- justify-content: flex-start;
10
- height: 100%;
11
- align-items: center;
12
- -webkit-user-select: none;
13
- user-select: none;
14
- }
15
-
16
- :host([direction]) {
17
- color: var(--material-body-text-color);
18
- }
19
-
20
- [part='indicators'] {
21
- order: -1;
22
- }
23
-
24
- [part='indicators']::before {
25
- display: inline-block;
26
- width: 24px;
27
- font-family: 'material-icons';
28
- font-size: 18px;
29
- line-height: 18px;
30
- transition:
31
- 0.1s opacity cubic-bezier(0.4, 0, 0.2, 0.1),
32
- 0.1s width cubic-bezier(0.4, 0, 0.2, 0.1);
33
- opacity: 0.5;
34
- }
35
-
36
- :host(:not([direction])) [part='indicators']::before {
37
- content: var(--material-icons-arrow-upward);
38
- width: 0;
39
- opacity: 0;
40
- }
41
-
42
- :host([direction]) [part='indicators']::before {
43
- opacity: 1;
44
- }
45
-
46
- :host([direction='asc']) [part='indicators']::before {
47
- content: var(--material-icons-arrow-upward);
48
- }
49
-
50
- :host([direction='desc']) [part='indicators']::before {
51
- content: var(--material-icons-arrow-downward);
52
- }
53
-
54
- :host(:hover) [part='indicators']::before {
55
- width: 24px;
56
- opacity: 1;
57
- }
58
-
59
- [part='order'] {
60
- right: 4px;
61
- top: -8px;
62
- font-size: 10px;
63
- }
64
-
65
- /* RTL specific styles */
66
-
67
- :host([dir='rtl']) [part='order'] {
68
- left: 4px;
69
- right: auto;
70
- }
71
- `,
72
- { moduleId: 'material-grid-sorter' },
73
- );
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter-styles.js';
2
- import '../../src/vaadin-grid-sorter.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-sorter-styles.js';
2
- import '../../src/vaadin-grid-sorter.js';
@@ -1,2 +0,0 @@
1
- import '@vaadin/vaadin-material-styles/color.js';
2
- import '@vaadin/vaadin-material-styles/typography.js';
@@ -1,266 +0,0 @@
1
- import '@vaadin/vaadin-material-styles/color.js';
2
- import '@vaadin/vaadin-material-styles/typography.js';
3
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
4
-
5
- registerStyles(
6
- 'vaadin-grid',
7
- css`
8
- :host {
9
- background-color: var(--material-background-color);
10
- font-family: var(--material-font-family);
11
- font-size: var(--material-small-font-size);
12
- line-height: 20px;
13
- color: var(--material-body-text-color);
14
- }
15
-
16
- :host([disabled]) {
17
- opacity: 0.7;
18
- }
19
-
20
- [part~='cell'] {
21
- min-height: 48px;
22
- -webkit-tap-highlight-color: transparent;
23
- --_cell-padding: var(--vaadin-grid-cell-padding, var(--_cell-default-padding));
24
- --_cell-default-padding: 8px 16px;
25
- }
26
-
27
- [part~='cell'] ::slotted(vaadin-grid-cell-content) {
28
- padding: var(--_cell-padding);
29
- }
30
-
31
- [part~='details-cell'] {
32
- --_cell-default-padding: 14px 16px;
33
- }
34
-
35
- [part~='header-cell'],
36
- [part~='footer-cell'] {
37
- background-color: var(--vaadin-grid-cell-background, var(--material-background-color));
38
- color: var(--material-secondary-text-color);
39
- font-size: var(--material-caption-font-size);
40
- font-weight: 500;
41
- }
42
-
43
- /* Header and footer divider between body rows */
44
-
45
- [part~='body-cell'],
46
- [part~='details-cell'],
47
- [part~='row']:last-child > [part~='header-cell'] {
48
- border-bottom: 1px solid var(--material-divider-color);
49
- }
50
-
51
- [part~='row']:first-child > [part~='footer-cell'] {
52
- border-top: 1px solid var(--material-divider-color);
53
- }
54
-
55
- /* Body rows/cells */
56
-
57
- [part~='body-cell'] {
58
- background-color: var(--vaadin-grid-cell-background, var(--material-background-color));
59
- }
60
-
61
- [part~='row']:hover > [part~='body-cell'] {
62
- background: var(
63
- --vaadin-grid-cell-background,
64
- linear-gradient(
65
- var(--_material-grid-row-hover-background-color, rgba(0, 0, 0, 0.04)),
66
- var(--_material-grid-row-hover-background-color, rgba(0, 0, 0, 0.04))
67
- )
68
- var(--material-background-color)
69
- );
70
- }
71
-
72
- @media (hover: none) {
73
- [part~='row']:hover > [part~='body-cell'] {
74
- background: var(--material-background-color);
75
- }
76
- }
77
-
78
- /* Selected row */
79
-
80
- [part~='body-cell']::before {
81
- content: '';
82
- pointer-events: none;
83
- position: absolute;
84
- inset: 0;
85
- background-color: var(--material-primary-color);
86
- opacity: 0;
87
- transition: opacity 0.1s cubic-bezier(0.4, 0, 0.2, 0.1);
88
- }
89
-
90
- :host(:not([reordering])) [part~='row'][selected] > [part~='body-cell']::before {
91
- opacity: var(--_material-grid-row-selected-overlay-opacity, 0.08);
92
- }
93
-
94
- [part~='body-cell'] ::slotted(vaadin-grid-cell-content) {
95
- /* NOTE(platosha): Raise cell content above background cell pseudo elements */
96
- position: relative;
97
- }
98
-
99
- /* Column reordering */
100
-
101
- :host([reordering]) [part~='cell'] {
102
- background: var(--material-secondary-background-color);
103
- }
104
-
105
- :host([reordering]) [part~='cell'][reorder-status='allowed'] {
106
- background: var(--material-background-color);
107
- }
108
-
109
- :host([reordering]) [part~='cell'][reorder-status='dragging'] {
110
- background: var(--material-background-color);
111
- }
112
-
113
- /* Frozen columns */
114
-
115
- [part~='cell'][last-frozen] {
116
- border-right: 1px solid var(--material-divider-color);
117
- }
118
-
119
- [part~='cell'][first-frozen-to-end] {
120
- border-left: 1px solid var(--material-divider-color);
121
- }
122
-
123
- /* Column resizing */
124
-
125
- [part~='cell']:not([last-frozen]) [part='resize-handle'] {
126
- border-right: 1px solid var(--material-divider-color);
127
- }
128
-
129
- /* Keyboard navigation */
130
-
131
- [part~='row'] {
132
- position: relative;
133
- }
134
-
135
- [part~='row']:focus,
136
- [part~='focused-cell']:focus {
137
- outline: none;
138
- }
139
-
140
- :host([navigating]) [part~='row']:focus::before,
141
- :host([navigating]) [part~='focused-cell']:focus {
142
- box-shadow: inset 0 0 0 2px var(--material-primary-color);
143
- }
144
-
145
- :host([navigating]) [part~='row']:focus::before {
146
- content: '';
147
- position: absolute;
148
- inset: 0;
149
- pointer-events: none;
150
- transform: translateX(calc(-1 * var(--_grid-horizontal-scroll-position)));
151
- z-index: 3;
152
- }
153
-
154
- /* Empty state */
155
- [part~='empty-state'] {
156
- padding: 16px;
157
- color: var(--material-secondary-text-color);
158
- }
159
-
160
- /* Drag and Drop styles */
161
- :host([dragover])::after {
162
- content: '';
163
- position: absolute;
164
- z-index: 100;
165
- inset: 0;
166
- pointer-events: none;
167
- box-shadow: inset 0 0 0 2px var(--material-primary-color);
168
- }
169
-
170
- [part~='row'][dragover] {
171
- z-index: 100 !important;
172
- }
173
-
174
- [part~='row'][dragover] [part~='cell'] {
175
- overflow: visible;
176
- }
177
-
178
- [part~='row'][dragover] [part~='cell']::after {
179
- content: '';
180
- position: absolute;
181
- inset: 0;
182
- height: 3px;
183
- pointer-events: none;
184
- background: var(--material-primary-color);
185
- }
186
-
187
- [part~='row'][dragover='below'] [part~='cell']::after {
188
- top: 100%;
189
- bottom: auto;
190
- margin-top: -1px;
191
- }
192
-
193
- :host([all-rows-visible]) [part~='last-row'][dragover='below'] [part~='cell']::after {
194
- height: 1px;
195
- }
196
-
197
- [part~='row'][dragover='above'] [part~='cell']::after {
198
- top: auto;
199
- bottom: 100%;
200
- margin-bottom: -1px;
201
- }
202
-
203
- [part~='row'][details-opened][dragover='below'] [part~='cell']:not([part~='details-cell'])::after,
204
- [part~='row'][details-opened][dragover='above'] [part~='details-cell']::after {
205
- display: none;
206
- }
207
-
208
- [part~='row'][dragover][dragover='on-top'] [part~='cell']::after {
209
- height: 100%;
210
- opacity: 0.5;
211
- }
212
-
213
- [part~='row'][dragstart] {
214
- z-index: 100 !important;
215
- opacity: 0.9;
216
- }
217
-
218
- [part~='row'][dragstart] [part~='cell'] {
219
- border: none !important;
220
- box-shadow: none !important;
221
- }
222
-
223
- #scroller [part~='row'][dragstart]:not([dragstart=''])::after {
224
- display: block;
225
- position: absolute;
226
- left: var(--_grid-drag-start-x);
227
- top: var(--_grid-drag-start-y);
228
- z-index: 100;
229
- content: attr(dragstart);
230
- align-items: center;
231
- justify-content: center;
232
- box-sizing: border-box;
233
- padding: 4px;
234
- color: var(--material-primary-contrast-color);
235
- background-color: var(--material-error-color);
236
- min-width: 24px;
237
- border-radius: 2px;
238
- font-size: var(--material-caption-font-size);
239
- text-align: center;
240
- line-height: 1;
241
- }
242
-
243
- /* RTL specific styles */
244
-
245
- :host([dir='rtl']) [part~='cell'][last-frozen] {
246
- border-right: none;
247
- border-left: 1px solid var(--material-divider-color);
248
- }
249
-
250
- :host([dir='rtl']) [part~='cell'][first-frozen-to-end] {
251
- border-left: none;
252
- border-right: 1px solid var(--material-divider-color);
253
- }
254
-
255
- :host([dir='rtl']) [part~='cell']:not([last-frozen]) [part='resize-handle'] {
256
- border-right: none;
257
- border-left: 1px solid var(--material-divider-color);
258
- }
259
-
260
- :host([dir='rtl']) #scroller [part~='row'][dragstart]:not([dragstart=''])::after {
261
- left: auto;
262
- right: var(--_grid-drag-start-x);
263
- }
264
- `,
265
- { moduleId: 'material-grid' },
266
- );
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-tree-toggle.js';
2
- import '../../src/vaadin-grid-tree-column.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-grid-tree-toggle.js';
2
- import '../../src/vaadin-grid-tree-column.js';
@@ -1,3 +0,0 @@
1
- import '@vaadin/vaadin-material-styles/color.js';
2
- import '@vaadin/vaadin-material-styles/font-icons.js';
3
- import '@vaadin/vaadin-material-styles/typography.js';