@itwin/itwinui-css 0.63.1 → 1.0.0-dev.2

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 (244) hide show
  1. package/README.md +1 -4
  2. package/css/alert.css +291 -173
  3. package/css/all.css +4355 -6315
  4. package/css/anchor.css +3 -7
  5. package/css/avatar.css +226 -0
  6. package/css/backdrop.css +6 -4
  7. package/css/badge.css +8 -8
  8. package/css/blockquote.css +6 -9
  9. package/css/breadcrumbs.css +94 -156
  10. package/css/button.css +258 -365
  11. package/css/carousel.css +20 -26
  12. package/css/checkbox.css +152 -0
  13. package/css/code.css +14 -23
  14. package/css/color-picker.css +36 -77
  15. package/css/date-picker.css +59 -147
  16. package/css/dialog.css +25 -29
  17. package/css/expandable-block.css +36 -80
  18. package/css/fieldset.css +7 -12
  19. package/css/file-upload.css +15 -44
  20. package/css/footer.css +11 -19
  21. package/css/global.css +49 -671
  22. package/css/header.css +324 -408
  23. package/css/information-panel.css +39 -47
  24. package/css/input.css +170 -0
  25. package/css/keyboard.css +6 -10
  26. package/css/location-marker.css +32 -29
  27. package/css/menu.css +41 -43
  28. package/css/non-ideal-state.css +12 -12
  29. package/css/progress-indicator.css +37 -127
  30. package/css/radio-tile.css +70 -88
  31. package/css/radio.css +159 -0
  32. package/css/select.css +239 -0
  33. package/css/side-navigation.css +33 -57
  34. package/css/skip-to-content.css +11 -14
  35. package/css/slider.css +35 -67
  36. package/css/stepper.css +141 -0
  37. package/css/surface.css +2 -3
  38. package/css/table.css +362 -431
  39. package/css/tabs.css +58 -93
  40. package/css/tag.css +27 -46
  41. package/css/text.css +24 -26
  42. package/css/tile.css +200 -293
  43. package/css/time-picker.css +16 -26
  44. package/css/{toast-notification.css → toast.css} +50 -90
  45. package/css/toggle-switch.css +33 -80
  46. package/css/tooltip.css +6 -9
  47. package/css/tree.css +25 -49
  48. package/css/utils.css +683 -0
  49. package/css/workflow-diagram.css +67 -0
  50. package/package.json +7 -10
  51. package/css/icon.css +0 -177
  52. package/css/inputs.css +0 -1339
  53. package/css/notification-marker.css +0 -293
  54. package/css/popover.css +0 -14
  55. package/css/reset-global-styles.css +0 -50
  56. package/css/user-icon.css +0 -246
  57. package/css/wizard.css +0 -190
  58. package/scss/alert/alert.scss +0 -83
  59. package/scss/alert/classes.scss +0 -13
  60. package/scss/alert/index.scss +0 -3
  61. package/scss/anchor/anchor.scss +0 -3
  62. package/scss/anchor/classes.scss +0 -11
  63. package/scss/anchor/index.scss +0 -3
  64. package/scss/backdrop/backdrop.scss +0 -27
  65. package/scss/backdrop/classes.scss +0 -7
  66. package/scss/backdrop/index.scss +0 -3
  67. package/scss/badge/badge.scss +0 -32
  68. package/scss/badge/classes.scss +0 -7
  69. package/scss/badge/index.scss +0 -3
  70. package/scss/blockquote/blockquote.scss +0 -31
  71. package/scss/blockquote/classes.scss +0 -7
  72. package/scss/blockquote/index.scss +0 -3
  73. package/scss/breadcrumbs/breadcrumbs.scss +0 -124
  74. package/scss/breadcrumbs/classes.scss +0 -31
  75. package/scss/breadcrumbs/index.scss +0 -3
  76. package/scss/button/borderless.scss +0 -48
  77. package/scss/button/button-group.scss +0 -110
  78. package/scss/button/button-icon.scss +0 -12
  79. package/scss/button/button.scss +0 -97
  80. package/scss/button/classes.scss +0 -70
  81. package/scss/button/cta.scss +0 -31
  82. package/scss/button/default.scss +0 -59
  83. package/scss/button/disabled.scss +0 -13
  84. package/scss/button/high-visibility.scss +0 -31
  85. package/scss/button/idea.scss +0 -10
  86. package/scss/button/index.scss +0 -12
  87. package/scss/button/split-menu.scss +0 -66
  88. package/scss/carousel/carousel.scss +0 -124
  89. package/scss/carousel/classes.scss +0 -15
  90. package/scss/carousel/index.scss +0 -3
  91. package/scss/classes.scss +0 -48
  92. package/scss/code/classes.scss +0 -11
  93. package/scss/code/code.scss +0 -18
  94. package/scss/code/codeblock.scss +0 -74
  95. package/scss/code/index.scss +0 -4
  96. package/scss/color-picker/classes.scss +0 -43
  97. package/scss/color-picker/color-picker.scss +0 -274
  98. package/scss/color-picker/index.scss +0 -3
  99. package/scss/date-picker/classes.scss +0 -47
  100. package/scss/date-picker/date-picker.scss +0 -280
  101. package/scss/date-picker/index.scss +0 -3
  102. package/scss/dialog/classes.scss +0 -48
  103. package/scss/dialog/dialog.scss +0 -185
  104. package/scss/dialog/index.scss +0 -3
  105. package/scss/expandable-block/block.scss +0 -193
  106. package/scss/expandable-block/classes.scss +0 -7
  107. package/scss/expandable-block/index.scss +0 -3
  108. package/scss/fieldset/classes.scss +0 -7
  109. package/scss/fieldset/fieldset.scss +0 -35
  110. package/scss/fieldset/index.scss +0 -3
  111. package/scss/file-upload/classes.scss +0 -7
  112. package/scss/file-upload/file-upload.scss +0 -90
  113. package/scss/file-upload/index.scss +0 -3
  114. package/scss/footer/classes.scss +0 -23
  115. package/scss/footer/footer.scss +0 -62
  116. package/scss/footer/index.scss +0 -3
  117. package/scss/header/classes.scss +0 -11
  118. package/scss/header/header.scss +0 -443
  119. package/scss/header/index.scss +0 -3
  120. package/scss/icon/classes.scss +0 -27
  121. package/scss/icon/index.scss +0 -4
  122. package/scss/icon/mixins.scss +0 -78
  123. package/scss/icon/variables.scss +0 -14
  124. package/scss/index.scss +0 -46
  125. package/scss/information-panel/classes.scss +0 -27
  126. package/scss/information-panel/index.scss +0 -3
  127. package/scss/information-panel/information-panel.scss +0 -233
  128. package/scss/inputs/checkbox-radio.scss +0 -73
  129. package/scss/inputs/checkbox.scss +0 -106
  130. package/scss/inputs/classes.scss +0 -87
  131. package/scss/inputs/index.scss +0 -10
  132. package/scss/inputs/input-with-icon.scss +0 -36
  133. package/scss/inputs/input.scss +0 -80
  134. package/scss/inputs/labeled-inputs.scss +0 -382
  135. package/scss/inputs/radio.scss +0 -18
  136. package/scss/inputs/select.scss +0 -132
  137. package/scss/inputs/textarea.scss +0 -14
  138. package/scss/keyboard/classes.scss +0 -7
  139. package/scss/keyboard/index.scss +0 -3
  140. package/scss/keyboard/keyboard.scss +0 -33
  141. package/scss/location-marker/classes.scss +0 -15
  142. package/scss/location-marker/data-rich.scss +0 -58
  143. package/scss/location-marker/default.scss +0 -21
  144. package/scss/location-marker/index.scss +0 -6
  145. package/scss/location-marker/location-marker.scss +0 -13
  146. package/scss/location-marker/me.scss +0 -36
  147. package/scss/menu/classes.scss +0 -21
  148. package/scss/menu/index.scss +0 -3
  149. package/scss/menu/menu.scss +0 -205
  150. package/scss/non-ideal-state/classes.scss +0 -7
  151. package/scss/non-ideal-state/index.scss +0 -3
  152. package/scss/non-ideal-state/non-ideal-state.scss +0 -55
  153. package/scss/notification-marker/classes.scss +0 -9
  154. package/scss/notification-marker/index.scss +0 -3
  155. package/scss/notification-marker/notification-marker.scss +0 -63
  156. package/scss/popover/classes.scss +0 -7
  157. package/scss/popover/index.scss +0 -3
  158. package/scss/popover/popover.scss +0 -22
  159. package/scss/progress-indicator/classes.scss +0 -35
  160. package/scss/progress-indicator/index.scss +0 -5
  161. package/scss/progress-indicator/linear.scss +0 -126
  162. package/scss/progress-indicator/overlay.scss +0 -57
  163. package/scss/progress-indicator/radial.scss +0 -243
  164. package/scss/radio-tile/classes.scss +0 -31
  165. package/scss/radio-tile/index.scss +0 -3
  166. package/scss/radio-tile/radio-tile.scss +0 -209
  167. package/scss/reset-global-styles.scss +0 -33
  168. package/scss/side-navigation/classes.scss +0 -15
  169. package/scss/side-navigation/index.scss +0 -3
  170. package/scss/side-navigation/side-navigation.scss +0 -210
  171. package/scss/skip-to-content/classes.scss +0 -7
  172. package/scss/skip-to-content/index.scss +0 -3
  173. package/scss/skip-to-content/skip-to-content.scss +0 -41
  174. package/scss/slider/classes.scss +0 -40
  175. package/scss/slider/index.scss +0 -3
  176. package/scss/slider/slider.scss +0 -256
  177. package/scss/style/anchor.scss +0 -82
  178. package/scss/style/baseline.scss +0 -4
  179. package/scss/style/color.scss +0 -39
  180. package/scss/style/elevation.scss +0 -11
  181. package/scss/style/global.scss +0 -70
  182. package/scss/style/index.scss +0 -11
  183. package/scss/style/mixins.scss +0 -188
  184. package/scss/style/ripple.scss +0 -18
  185. package/scss/style/space.scss +0 -11
  186. package/scss/style/speed.scss +0 -8
  187. package/scss/style/theme.scss +0 -482
  188. package/scss/style/typography.scss +0 -54
  189. package/scss/style/variables.scss +0 -21
  190. package/scss/surface/classes.scss +0 -7
  191. package/scss/surface/index.scss +0 -3
  192. package/scss/surface/surface.scss +0 -18
  193. package/scss/table/classes.scss +0 -63
  194. package/scss/table/column-filter.scss +0 -37
  195. package/scss/table/condensed.scss +0 -15
  196. package/scss/table/extra-condensed.scss +0 -19
  197. package/scss/table/index.scss +0 -7
  198. package/scss/table/paginator.scss +0 -87
  199. package/scss/table/table.scss +0 -558
  200. package/scss/table/variables.scss +0 -10
  201. package/scss/tabs/borderless.scss +0 -71
  202. package/scss/tabs/classes.scss +0 -44
  203. package/scss/tabs/default.scss +0 -110
  204. package/scss/tabs/index.scss +0 -6
  205. package/scss/tabs/pill.scss +0 -48
  206. package/scss/tabs/tabs.scss +0 -220
  207. package/scss/tag/classes.scss +0 -29
  208. package/scss/tag/index.scss +0 -3
  209. package/scss/tag/tag.scss +0 -99
  210. package/scss/text/classes.scss +0 -40
  211. package/scss/text/index.scss +0 -5
  212. package/scss/text/mixins.scss +0 -42
  213. package/scss/text/muted.scss +0 -9
  214. package/scss/text/skeleton.scss +0 -46
  215. package/scss/tile/classes.scss +0 -51
  216. package/scss/tile/index.scss +0 -3
  217. package/scss/tile/tile.scss +0 -370
  218. package/scss/time-picker/classes.scss +0 -16
  219. package/scss/time-picker/index.scss +0 -3
  220. package/scss/time-picker/time-picker.scss +0 -72
  221. package/scss/toast-notification/categories.scss +0 -26
  222. package/scss/toast-notification/classes.scss +0 -98
  223. package/scss/toast-notification/index.scss +0 -4
  224. package/scss/toast-notification/toast.scss +0 -79
  225. package/scss/toggle-switch/classes.scss +0 -11
  226. package/scss/toggle-switch/index.scss +0 -3
  227. package/scss/toggle-switch/toggle-switch.scss +0 -222
  228. package/scss/tooltip/classes.scss +0 -24
  229. package/scss/tooltip/index.scss +0 -3
  230. package/scss/tooltip/tooltip.scss +0 -41
  231. package/scss/tree/classes.scss +0 -19
  232. package/scss/tree/index.scss +0 -3
  233. package/scss/tree/tree.scss +0 -138
  234. package/scss/user-icon/classes.scss +0 -27
  235. package/scss/user-icon/index.scss +0 -4
  236. package/scss/user-icon/sizes.scss +0 -22
  237. package/scss/user-icon/user-icon.scss +0 -250
  238. package/scss/variables.scss +0 -3
  239. package/scss/wizard/classes.scss +0 -27
  240. package/scss/wizard/index.scss +0 -5
  241. package/scss/wizard/long.scss +0 -19
  242. package/scss/wizard/wizard.scss +0 -160
  243. package/scss/wizard/workflow.scss +0 -43
  244. package/src/index.scss +0 -46
@@ -1,37 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import '../style/index';
4
- @import '../surface/index';
5
-
6
- @mixin iui-column-filter {
7
- @include iui-surface;
8
- padding: $iui-baseline $iui-sm;
9
- display: inline-flex;
10
- flex-direction: column;
11
- align-items: flex-end;
12
-
13
- > .iui-input-container:not(.iui-inline-label) {
14
- width: 100%;
15
- }
16
-
17
- > .iui-input-container,
18
- > .iui-input {
19
- margin-bottom: $iui-baseline;
20
- }
21
-
22
- > .iui-button-bar {
23
- display: flex;
24
- width: 100%;
25
- align-content: center;
26
-
27
- > .iui-button {
28
- &:first-of-type {
29
- margin-left: auto;
30
- }
31
-
32
- &:not(:last-child) {
33
- margin-right: $iui-s;
34
- }
35
- }
36
- }
37
- }
@@ -1,15 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import '../style/index';
4
- @import './variables';
5
-
6
- @mixin iui-table-condensed {
7
- .iui-table-header .iui-cell,
8
- .iui-paginator {
9
- min-height: $iui-baseline * 4;
10
- }
11
-
12
- .iui-row .iui-cell {
13
- min-height: $iui-baseline * 4 + 2px;
14
- }
15
- }
@@ -1,19 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import '../style/index';
4
- @import './variables';
5
-
6
- @mixin iui-table-extra-condensed {
7
- .iui-table-header .iui-cell,
8
- .iui-paginator {
9
- min-height: $iui-baseline * 3;
10
- }
11
-
12
- .iui-row .iui-cell {
13
- min-height: $iui-baseline * 3 + 2px;
14
- }
15
-
16
- .iui-table-header .iui-cell {
17
- padding-block: $iui-baseline * 0.25;
18
- }
19
- }
@@ -1,7 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import './table';
4
- @import './condensed';
5
- @import './extra-condensed';
6
- @import './column-filter';
7
- @import './paginator';
@@ -1,87 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import '../style/index';
4
- @import '../icon/index';
5
- @import '../button/index';
6
- @import '../text/index';
7
- @import './variables';
8
-
9
- @mixin iui-paginator {
10
- @include iui-reset;
11
- display: flex;
12
- justify-content: space-between;
13
- align-items: center;
14
- min-height: $iui-baseline * 5;
15
- padding: 0 $iui-m;
16
- user-select: none;
17
- @include themed {
18
- background-color: t(iui-color-background-3);
19
- }
20
-
21
- > .iui-left,
22
- > .iui-center,
23
- > .iui-right {
24
- display: flex;
25
- align-items: center;
26
- position: relative;
27
- flex: 1;
28
- min-width: 0;
29
- }
30
-
31
- > .iui-center {
32
- justify-content: center;
33
- flex: 2 1;
34
- @include themed {
35
- color: t(iui-text-color);
36
- }
37
- }
38
-
39
- > .iui-right {
40
- justify-content: flex-end;
41
- }
42
-
43
- &-page-size-label {
44
- @include iui-text-muted;
45
- white-space: nowrap;
46
- overflow: hidden;
47
- text-overflow: ellipsis;
48
- }
49
- }
50
-
51
- @mixin iui-paginator-ellipsis {
52
- display: flex;
53
- justify-content: center;
54
- align-items: center;
55
- width: $iui-component-height;
56
- @include themed {
57
- color: t(iui-text-color-muted);
58
- }
59
-
60
- &-small {
61
- width: $iui-component-height-small;
62
- }
63
- }
64
-
65
- @mixin iui-paginator-pages-group {
66
- display: inline-flex;
67
- align-items: center;
68
- margin: 0 $iui-s;
69
- }
70
-
71
- @mixin iui-paginator-page-button {
72
- @include iui-button;
73
- @include iui-button-borderless;
74
- width: $iui-component-height;
75
-
76
- &.iui-active {
77
- @include iui-button-active;
78
- }
79
-
80
- // Adds stripe above active button
81
- --_iui-button-active-stripe-inset: calc(100% - #{$iui-xs}) #{$iui-xxs} #{$iui-xxs};
82
-
83
- &-small {
84
- @include iui-button-size(small);
85
- width: $iui-component-height-small;
86
- }
87
- }
@@ -1,558 +0,0 @@
1
- // Copyright (c) Bentley Systems, Incorporated. All rights reserved.
2
- // See LICENSE.md in the project root for license terms and full copyright notice.
3
- @import '../style/index';
4
- @import '../icon/index';
5
- @import './variables';
6
-
7
- @mixin iui-table {
8
- @include iui-reset;
9
- display: flex;
10
- flex-direction: column;
11
- isolation: isolate;
12
-
13
- * {
14
- box-sizing: border-box;
15
- }
16
-
17
- @include iui-table-cell-icon;
18
- }
19
-
20
- @mixin iui-table-header-wrapper {
21
- overflow: hidden;
22
- // Fix for Firefox columns misalignment
23
- @supports not (overflow: overlay) {
24
- overflow-y: scroll;
25
- }
26
- display: flex;
27
- flex-shrink: 0;
28
- }
29
-
30
- @mixin iui-table-header {
31
- display: flex;
32
- user-select: none;
33
- min-width: 100%;
34
- flex-shrink: 0;
35
-
36
- .iui-row {
37
- display: flex;
38
- flex-grow: 1;
39
- min-width: 100%;
40
- }
41
-
42
- .iui-cell {
43
- min-height: $iui-baseline * 5;
44
- @include themed {
45
- background-color: t(iui-color-background-3);
46
- }
47
- }
48
-
49
- .iui-cell:not(.iui-slot) {
50
- @include iui-focus;
51
- column-gap: $iui-xs;
52
- padding-block: $iui-baseline * 0.5;
53
-
54
- &.iui-actionable {
55
- cursor: pointer;
56
- }
57
-
58
- &.iui-grabbing {
59
- cursor: grabbing;
60
- }
61
-
62
- .iui-filter-button:not(.iui-active) {
63
- visibility: hidden;
64
- }
65
-
66
- > .iui-resizer {
67
- height: 100%;
68
- width: $iui-m;
69
- position: absolute;
70
- top: 0;
71
- right: 0;
72
- transform: translateX(50%);
73
- touch-action: none;
74
- cursor: ew-resize;
75
- z-index: 1;
76
- opacity: 0;
77
-
78
- > .iui-resizer-bar {
79
- height: 100%;
80
- width: $iui-xxs;
81
- margin: 0 auto;
82
- @media (prefers-reduced-motion: no-preference) {
83
- transition: background-color $iui-speed-fast ease-out, width $iui-speed-fast ease-out;
84
- }
85
- @include themed {
86
- background-color: t(iui-color-background-border);
87
- }
88
- }
89
-
90
- &:hover > .iui-resizer-bar {
91
- width: $iui-xs;
92
- @include themed {
93
- background-color: t(iui-color-foreground-primary);
94
- }
95
- }
96
- }
97
-
98
- &:hover > .iui-resizer {
99
- opacity: 1;
100
- }
101
-
102
- &:hover,
103
- &:focus,
104
- &:focus-within {
105
- @include themed {
106
- background-color: t(iui-color-background-4);
107
- }
108
-
109
- .iui-sort,
110
- .iui-filter-button {
111
- visibility: visible;
112
- }
113
- }
114
- }
115
-
116
- .iui-reorder-bar {
117
- position: absolute;
118
- height: 100%;
119
- width: $iui-xxs;
120
- }
121
-
122
- .iui-reorder-column-right {
123
- > .iui-reorder-bar {
124
- right: 0;
125
- }
126
- }
127
-
128
- .iui-reorder-column-left {
129
- > .iui-reorder-bar {
130
- left: 0;
131
- }
132
- }
133
-
134
- .iui-reorder-column-left,
135
- .iui-reorder-column-right {
136
- > .iui-reorder-bar {
137
- @include themed {
138
- background-color: t(iui-color-foreground-primary);
139
- }
140
- }
141
- }
142
-
143
- // Sort icon
144
- .iui-sort {
145
- visibility: hidden;
146
- @include themed {
147
- fill: t(iui-icons-color);
148
- }
149
- }
150
-
151
- // Sorted column
152
- .iui-sorted {
153
- @include themed {
154
- background-color: t(iui-color-background-4);
155
- }
156
-
157
- .iui-sort {
158
- visibility: visible;
159
- @include themed {
160
- fill: t(iui-icons-color-actionable);
161
- }
162
- }
163
- }
164
- }
165
-
166
- @mixin iui-table-header-actions-container {
167
- display: flex;
168
- flex-grow: 1;
169
- align-items: center;
170
- flex-wrap: wrap;
171
- justify-content: flex-end;
172
- margin-right: $iui-sm;
173
-
174
- .iui-cell-end-icon {
175
- // Hardcoded size of the borderless button so that the icons are centered
176
- width: 28px;
177
- height: 28px;
178
- margin-right: initial;
179
- margin-left: auto;
180
- }
181
- }
182
-
183
- @mixin iui-table-body {
184
- overflow-y: scroll;
185
- overflow: overlay;
186
- display: flex;
187
- flex-direction: column;
188
- flex-grow: 1;
189
- // Allows columns with static width to take more space than the table width
190
- align-items: flex-start;
191
- @include iui-scroll-snapping('.iui-row');
192
- @include themed {
193
- background-color: t(iui-color-background-1);
194
- }
195
-
196
- &.iui-zebra-striping .iui-row:nth-child(even):not(.iui-selected) .iui-cell {
197
- @include themed {
198
- background: linear-gradient(
199
- rgba(t(iui-color-foreground-body-rgb), 0.02),
200
- rgba(t(iui-color-foreground-body-rgb), 0.02)
201
- ),
202
- linear-gradient(t(iui-color-background-1), t(iui-color-background-1));
203
- }
204
- }
205
-
206
- .iui-row {
207
- min-width: 100%;
208
- display: flex;
209
-
210
- .iui-cell {
211
- border-top: solid 1px transparent;
212
- border-bottom: solid 1px transparent;
213
- @media (prefers-reduced-motion: no-preference) {
214
- transition: border $iui-speed-fast ease-out;
215
- }
216
-
217
- @include themed {
218
- border-bottom-color: t(iui-color-background-border);
219
- }
220
-
221
- @include themed {
222
- background-color: t(iui-color-background-1);
223
- }
224
- }
225
-
226
- > .iui-slot > .iui-more-options {
227
- visibility: hidden;
228
- }
229
-
230
- &:hover:not(.iui-disabled) {
231
- .iui-cell {
232
- @include themed {
233
- background: linear-gradient(
234
- rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-6)),
235
- rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-6))
236
- ),
237
- linear-gradient(t(iui-color-background-1), t(iui-color-background-1));
238
- }
239
- }
240
-
241
- > .iui-slot:not(.iui-disabled) > .iui-more-options {
242
- visibility: visible;
243
- }
244
- }
245
-
246
- &:focus-within > .iui-slot:not(.iui-disabled) > .iui-more-options {
247
- visibility: visible;
248
- }
249
-
250
- .iui-row-expander > .iui-button-icon {
251
- @media (prefers-reduced-motion: no-preference) {
252
- transition: transform $iui-speed-fast ease-out;
253
- }
254
- }
255
-
256
- &.iui-row-expanded {
257
- overflow: hidden;
258
-
259
- .iui-cell {
260
- @include themed {
261
- border-left-color: t(iui-color-background-4);
262
- border-right-color: t(iui-color-background-4);
263
- }
264
- border-bottom-color: transparent;
265
- }
266
-
267
- .iui-row-expander > .iui-button-icon {
268
- transform: rotate(90deg);
269
- }
270
-
271
- + .iui-expanded-content {
272
- @include themed {
273
- border-left-color: t(iui-color-background-4);
274
- border-right-color: t(iui-color-background-4);
275
- }
276
- }
277
- }
278
-
279
- &.iui-expanded-content {
280
- overflow: hidden;
281
- border-left: 1px solid transparent;
282
- border-right: 1px solid transparent;
283
- @include themed {
284
- border-bottom: 1px solid t(iui-color-background-border);
285
- }
286
- @include iui-transition-group;
287
- }
288
-
289
- // #region Selection
290
- &:not(.iui-selected) + .iui-selected .iui-cell,
291
- &.iui-selected:first-child .iui-cell {
292
- border-bottom-color: transparent;
293
- }
294
-
295
- &.iui-selected {
296
- .iui-cell {
297
- @include themed {
298
- border-color: t(iui-color-foreground-primary);
299
- background: linear-gradient(
300
- rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-6)),
301
- rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-6))
302
- ),
303
- linear-gradient(t(iui-color-background-1), t(iui-color-background-1));
304
- }
305
- }
306
-
307
- + .iui-selected .iui-cell {
308
- border-bottom-color: transparent;
309
- @include themed {
310
- border-top-color: rgba(t(iui-color-foreground-primary-rgb), t(iui-opacity-4));
311
- }
312
- }
313
-
314
- &:last-child .iui-cell {
315
- @include themed {
316
- border-bottom-color: t(iui-color-foreground-primary);
317
- }
318
- }
319
-
320
- + :not(.iui-selected) .iui-cell,
321
- + .iui-expanded-content + .iui-row:not(.iui-selected) .iui-cell {
322
- @include themed {
323
- border-top-color: t(iui-color-foreground-primary);
324
- }
325
- }
326
-
327
- + .iui-expanded-content {
328
- @include themed {
329
- border-color: transparent t(iui-color-foreground-primary);
330
-
331
- &:last-child {
332
- border-bottom-color: t(iui-color-foreground-primary);
333
- }
334
- }
335
- }
336
- }
337
- // #endregion Selection
338
-
339
- // #region Statuses & states
340
- &.iui-new {
341
- font-weight: $iui-font-weight-semibold;
342
-
343
- > .iui-main-column::before {
344
- content: '•';
345
- position: absolute;
346
- left: 0;
347
- font-size: $iui-font-size-title;
348
- @include themed {
349
- color: t(iui-color-foreground-positive);
350
- }
351
- }
352
- }
353
-
354
- .iui-cell.iui-disabled,
355
- &.iui-expanded-content.iui-disabled {
356
- font-style: italic;
357
- cursor: not-allowed;
358
- @include themed {
359
- color: t(iui-text-color-muted);
360
- }
361
-
362
- &.iui-slot:hover > .iui-more-options {
363
- visibility: hidden;
364
- }
365
-
366
- img,
367
- svg:not(.iui-radial),
368
- .iui-user-icon {
369
- filter: $iui-icons-color-multicolor-disabled;
370
- }
371
- }
372
-
373
- &.iui-positive {
374
- @include iui-table-row-status($status: positive);
375
- }
376
-
377
- &.iui-warning {
378
- @include iui-table-row-status($status: warning);
379
- }
380
-
381
- &.iui-negative {
382
- @include iui-table-row-status($status: negative);
383
- }
384
- // #endregion Statuses & states
385
- }
386
-
387
- // Empty & loading states
388
- > .iui-table-empty {
389
- text-align: center;
390
- padding: $iui-xl;
391
- display: flex;
392
- flex-direction: column;
393
- justify-content: center;
394
- align-items: center;
395
- flex-grow: 1;
396
- align-self: center;
397
- @include themed {
398
- color: t(iui-text-color-muted);
399
- background-color: t(iui-color-background-1);
400
- }
401
- }
402
- }
403
-
404
- @mixin iui-table-cell {
405
- align-items: center;
406
- display: flex;
407
- flex-grow: 1;
408
- min-width: $iui-xxl;
409
- min-height: $iui-baseline * 5 + 2px; // +2px for border
410
- padding-left: $iui-m;
411
- flex-basis: $iui-xxl;
412
- position: relative;
413
- word-break: break-word;
414
-
415
- &:first-of-type {
416
- border-left: solid 1px transparent;
417
- }
418
-
419
- &:last-of-type {
420
- border-right: solid 1px transparent;
421
- }
422
-
423
- &.iui-slot {
424
- width: $iui-l * 2;
425
- padding: 0;
426
- flex-grow: 0;
427
- min-width: 0;
428
- display: flex;
429
- justify-content: center;
430
- align-items: center;
431
- flex-basis: $iui-l * 2;
432
- }
433
-
434
- &.iui-cell-sticky {
435
- position: sticky;
436
- z-index: 1;
437
- left: var(--iui-table-sticky-left, initial);
438
- right: var(--iui-table-sticky-right, initial);
439
- }
440
-
441
- &:not(.iui-slot):last-child {
442
- padding-right: $iui-m;
443
- }
444
-
445
- &.iui-positive {
446
- @include iui-table-cell-status($status: positive);
447
- }
448
-
449
- &.iui-warning {
450
- @include iui-table-cell-status($status: warning);
451
- }
452
-
453
- &.iui-negative {
454
- @include iui-table-cell-status($status: negative);
455
- }
456
-
457
- &[contenteditable] {
458
- outline-offset: -1px;
459
-
460
- &:focus,
461
- &:hover {
462
- @include themed {
463
- outline: 1px solid t(iui-color-foreground-primary);
464
- }
465
- }
466
-
467
- &:focus {
468
- @include themed {
469
- background-color: t(iui-color-background-1);
470
- }
471
- }
472
- }
473
- }
474
-
475
- @mixin iui-table-row-status($status) {
476
- .iui-cell:first-of-type,
477
- + .iui-expanded-content {
478
- @include themed {
479
- box-shadow: inset $iui-xxs 0 0 0 t(iui-icons-color-#{$status});
480
- }
481
-
482
- @include iui-text-selection($status);
483
- }
484
-
485
- .iui-cell-end-icon svg {
486
- @include themed {
487
- fill: t(iui-icons-color-#{$status});
488
- }
489
- }
490
- }
491
-
492
- @mixin iui-table-cell-status($status) {
493
- @include themed {
494
- background: linear-gradient(
495
- rgba(t(iui-color-foreground-#{$status}-rgb), t(iui-opacity-6)),
496
- rgba(t(iui-color-foreground-#{$status}-rgb), t(iui-opacity-6))
497
- ),
498
- linear-gradient(t(iui-color-background-1), t(iui-color-background-1));
499
- }
500
-
501
- @include iui-text-selection($status);
502
- }
503
-
504
- @mixin iui-table-cell-icon {
505
- .iui-cell-end-icon,
506
- .iui-cell-start-icon {
507
- flex-shrink: 0;
508
- display: flex;
509
- align-items: center;
510
- justify-content: center;
511
-
512
- svg:not(.iui-radial) {
513
- display: flex; // needed for vertical alignment of webcomponents
514
- width: $iui-icons-default;
515
- height: $iui-icons-default;
516
- }
517
- }
518
-
519
- .iui-cell-start-icon {
520
- margin-right: $iui-s;
521
- }
522
-
523
- .iui-cell-end-icon {
524
- width: $iui-l;
525
- height: $iui-l;
526
- margin-right: $iui-sm;
527
- margin-left: auto;
528
- }
529
- }
530
-
531
- @mixin iui-table-cell-shadow-base {
532
- position: absolute;
533
- top: -1px;
534
- bottom: -1px;
535
- width: $iui-l;
536
- pointer-events: none;
537
-
538
- // Prevents scrollbar from appearing because `top: -1px` and `bottom: -1px`
539
- // makes content to overflow
540
- @at-root .iui-table-header & {
541
- top: 0;
542
- bottom: 0;
543
- }
544
- }
545
-
546
- @mixin iui-table-cell-shadow-left {
547
- @include iui-table-cell-shadow-base;
548
- left: 0;
549
- transform: translate(-100%);
550
- box-shadow: inset -10px 0 5px -10px $iui-elevation-color;
551
- }
552
-
553
- @mixin iui-table-cell-shadow-right {
554
- @include iui-table-cell-shadow-base;
555
- right: 0;
556
- transform: translate(100%);
557
- box-shadow: inset 10px 0 5px -10px $iui-elevation-color;
558
- }