@itwin/itwinui-css 0.63.0 → 1.0.0-dev.1

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 (243) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +1 -4
  3. package/css/alert.css +263 -145
  4. package/css/all.css +5470 -6944
  5. package/css/anchor.css +0 -4
  6. package/css/{user-icon.css → avatar.css} +52 -72
  7. package/css/badge.css +1 -1
  8. package/css/blockquote.css +2 -5
  9. package/css/breadcrumbs.css +68 -135
  10. package/css/button.css +237 -348
  11. package/css/carousel.css +10 -17
  12. package/css/checkbox.css +152 -0
  13. package/css/code.css +3 -10
  14. package/css/color-picker.css +9 -47
  15. package/css/date-picker.css +1 -60
  16. package/css/dialog.css +11 -13
  17. package/css/expandable-block.css +8 -55
  18. package/css/fieldset.css +2 -7
  19. package/css/file-upload.css +6 -36
  20. package/css/footer.css +2 -10
  21. package/css/global.css +73 -128
  22. package/css/header.css +318 -403
  23. package/css/information-panel.css +13 -22
  24. package/css/input.css +170 -0
  25. package/css/keyboard.css +1 -5
  26. package/css/location-marker.css +8 -13
  27. package/css/menu.css +14 -23
  28. package/css/non-ideal-state.css +5 -5
  29. package/css/progress-indicator.css +11 -99
  30. package/css/radio-tile.css +56 -74
  31. package/css/radio.css +159 -0
  32. package/css/select.css +236 -0
  33. package/css/side-navigation.css +15 -40
  34. package/css/skip-to-content.css +2 -5
  35. package/css/slider.css +11 -70
  36. package/css/stepper.css +141 -0
  37. package/css/surface.css +0 -1
  38. package/css/table.css +266 -353
  39. package/css/tabs.css +22 -58
  40. package/css/tag.css +8 -26
  41. package/css/text.css +7 -9
  42. package/css/tile.css +119 -231
  43. package/css/time-picker.css +3 -15
  44. package/css/{toast-notification.css → toast.css} +14 -54
  45. package/css/toggle-switch.css +17 -64
  46. package/css/tooltip.css +0 -3
  47. package/css/tree.css +9 -35
  48. package/css/utils.css +669 -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/wizard.css +0 -190
  57. package/scss/alert/alert.scss +0 -83
  58. package/scss/alert/classes.scss +0 -13
  59. package/scss/alert/index.scss +0 -3
  60. package/scss/anchor/anchor.scss +0 -3
  61. package/scss/anchor/classes.scss +0 -11
  62. package/scss/anchor/index.scss +0 -3
  63. package/scss/backdrop/backdrop.scss +0 -27
  64. package/scss/backdrop/classes.scss +0 -7
  65. package/scss/backdrop/index.scss +0 -3
  66. package/scss/badge/badge.scss +0 -32
  67. package/scss/badge/classes.scss +0 -7
  68. package/scss/badge/index.scss +0 -3
  69. package/scss/blockquote/blockquote.scss +0 -31
  70. package/scss/blockquote/classes.scss +0 -7
  71. package/scss/blockquote/index.scss +0 -3
  72. package/scss/breadcrumbs/breadcrumbs.scss +0 -124
  73. package/scss/breadcrumbs/classes.scss +0 -31
  74. package/scss/breadcrumbs/index.scss +0 -3
  75. package/scss/button/borderless.scss +0 -48
  76. package/scss/button/button-group.scss +0 -110
  77. package/scss/button/button-icon.scss +0 -12
  78. package/scss/button/button.scss +0 -97
  79. package/scss/button/classes.scss +0 -70
  80. package/scss/button/cta.scss +0 -31
  81. package/scss/button/default.scss +0 -59
  82. package/scss/button/disabled.scss +0 -13
  83. package/scss/button/high-visibility.scss +0 -31
  84. package/scss/button/idea.scss +0 -10
  85. package/scss/button/index.scss +0 -12
  86. package/scss/button/split-menu.scss +0 -66
  87. package/scss/carousel/carousel.scss +0 -124
  88. package/scss/carousel/classes.scss +0 -15
  89. package/scss/carousel/index.scss +0 -3
  90. package/scss/classes.scss +0 -48
  91. package/scss/code/classes.scss +0 -11
  92. package/scss/code/code.scss +0 -18
  93. package/scss/code/codeblock.scss +0 -73
  94. package/scss/code/index.scss +0 -4
  95. package/scss/color-picker/classes.scss +0 -43
  96. package/scss/color-picker/color-picker.scss +0 -274
  97. package/scss/color-picker/index.scss +0 -3
  98. package/scss/date-picker/classes.scss +0 -47
  99. package/scss/date-picker/date-picker.scss +0 -280
  100. package/scss/date-picker/index.scss +0 -3
  101. package/scss/dialog/classes.scss +0 -48
  102. package/scss/dialog/dialog.scss +0 -183
  103. package/scss/dialog/index.scss +0 -3
  104. package/scss/expandable-block/block.scss +0 -193
  105. package/scss/expandable-block/classes.scss +0 -7
  106. package/scss/expandable-block/index.scss +0 -3
  107. package/scss/fieldset/classes.scss +0 -7
  108. package/scss/fieldset/fieldset.scss +0 -35
  109. package/scss/fieldset/index.scss +0 -3
  110. package/scss/file-upload/classes.scss +0 -7
  111. package/scss/file-upload/file-upload.scss +0 -90
  112. package/scss/file-upload/index.scss +0 -3
  113. package/scss/footer/classes.scss +0 -23
  114. package/scss/footer/footer.scss +0 -62
  115. package/scss/footer/index.scss +0 -3
  116. package/scss/header/classes.scss +0 -11
  117. package/scss/header/header.scss +0 -443
  118. package/scss/header/index.scss +0 -3
  119. package/scss/icon/classes.scss +0 -27
  120. package/scss/icon/index.scss +0 -4
  121. package/scss/icon/mixins.scss +0 -78
  122. package/scss/icon/variables.scss +0 -14
  123. package/scss/index.scss +0 -46
  124. package/scss/information-panel/classes.scss +0 -27
  125. package/scss/information-panel/index.scss +0 -3
  126. package/scss/information-panel/information-panel.scss +0 -233
  127. package/scss/inputs/checkbox-radio.scss +0 -73
  128. package/scss/inputs/checkbox.scss +0 -106
  129. package/scss/inputs/classes.scss +0 -87
  130. package/scss/inputs/index.scss +0 -10
  131. package/scss/inputs/input-with-icon.scss +0 -36
  132. package/scss/inputs/input.scss +0 -80
  133. package/scss/inputs/labeled-inputs.scss +0 -382
  134. package/scss/inputs/radio.scss +0 -18
  135. package/scss/inputs/select.scss +0 -132
  136. package/scss/inputs/textarea.scss +0 -14
  137. package/scss/keyboard/classes.scss +0 -7
  138. package/scss/keyboard/index.scss +0 -3
  139. package/scss/keyboard/keyboard.scss +0 -33
  140. package/scss/location-marker/classes.scss +0 -15
  141. package/scss/location-marker/data-rich.scss +0 -58
  142. package/scss/location-marker/default.scss +0 -21
  143. package/scss/location-marker/index.scss +0 -6
  144. package/scss/location-marker/location-marker.scss +0 -13
  145. package/scss/location-marker/me.scss +0 -36
  146. package/scss/menu/classes.scss +0 -21
  147. package/scss/menu/index.scss +0 -3
  148. package/scss/menu/menu.scss +0 -205
  149. package/scss/non-ideal-state/classes.scss +0 -7
  150. package/scss/non-ideal-state/index.scss +0 -3
  151. package/scss/non-ideal-state/non-ideal-state.scss +0 -55
  152. package/scss/notification-marker/classes.scss +0 -9
  153. package/scss/notification-marker/index.scss +0 -3
  154. package/scss/notification-marker/notification-marker.scss +0 -63
  155. package/scss/popover/classes.scss +0 -7
  156. package/scss/popover/index.scss +0 -3
  157. package/scss/popover/popover.scss +0 -22
  158. package/scss/progress-indicator/classes.scss +0 -35
  159. package/scss/progress-indicator/index.scss +0 -5
  160. package/scss/progress-indicator/linear.scss +0 -126
  161. package/scss/progress-indicator/overlay.scss +0 -57
  162. package/scss/progress-indicator/radial.scss +0 -243
  163. package/scss/radio-tile/classes.scss +0 -31
  164. package/scss/radio-tile/index.scss +0 -3
  165. package/scss/radio-tile/radio-tile.scss +0 -209
  166. package/scss/reset-global-styles.scss +0 -33
  167. package/scss/side-navigation/classes.scss +0 -15
  168. package/scss/side-navigation/index.scss +0 -3
  169. package/scss/side-navigation/side-navigation.scss +0 -210
  170. package/scss/skip-to-content/classes.scss +0 -7
  171. package/scss/skip-to-content/index.scss +0 -3
  172. package/scss/skip-to-content/skip-to-content.scss +0 -41
  173. package/scss/slider/classes.scss +0 -40
  174. package/scss/slider/index.scss +0 -3
  175. package/scss/slider/slider.scss +0 -256
  176. package/scss/style/anchor.scss +0 -82
  177. package/scss/style/baseline.scss +0 -4
  178. package/scss/style/color.scss +0 -39
  179. package/scss/style/elevation.scss +0 -11
  180. package/scss/style/global.scss +0 -70
  181. package/scss/style/index.scss +0 -11
  182. package/scss/style/mixins.scss +0 -188
  183. package/scss/style/ripple.scss +0 -18
  184. package/scss/style/space.scss +0 -11
  185. package/scss/style/speed.scss +0 -8
  186. package/scss/style/theme.scss +0 -482
  187. package/scss/style/typography.scss +0 -54
  188. package/scss/style/variables.scss +0 -21
  189. package/scss/surface/classes.scss +0 -7
  190. package/scss/surface/index.scss +0 -3
  191. package/scss/surface/surface.scss +0 -18
  192. package/scss/table/classes.scss +0 -63
  193. package/scss/table/column-filter.scss +0 -37
  194. package/scss/table/condensed.scss +0 -15
  195. package/scss/table/extra-condensed.scss +0 -19
  196. package/scss/table/index.scss +0 -7
  197. package/scss/table/paginator.scss +0 -87
  198. package/scss/table/table.scss +0 -558
  199. package/scss/table/variables.scss +0 -10
  200. package/scss/tabs/borderless.scss +0 -71
  201. package/scss/tabs/classes.scss +0 -44
  202. package/scss/tabs/default.scss +0 -102
  203. package/scss/tabs/index.scss +0 -6
  204. package/scss/tabs/pill.scss +0 -48
  205. package/scss/tabs/tabs.scss +0 -220
  206. package/scss/tag/classes.scss +0 -29
  207. package/scss/tag/index.scss +0 -3
  208. package/scss/tag/tag.scss +0 -99
  209. package/scss/text/classes.scss +0 -40
  210. package/scss/text/index.scss +0 -5
  211. package/scss/text/mixins.scss +0 -42
  212. package/scss/text/muted.scss +0 -9
  213. package/scss/text/skeleton.scss +0 -46
  214. package/scss/tile/classes.scss +0 -51
  215. package/scss/tile/index.scss +0 -3
  216. package/scss/tile/tile.scss +0 -370
  217. package/scss/time-picker/classes.scss +0 -16
  218. package/scss/time-picker/index.scss +0 -3
  219. package/scss/time-picker/time-picker.scss +0 -72
  220. package/scss/toast-notification/categories.scss +0 -26
  221. package/scss/toast-notification/classes.scss +0 -98
  222. package/scss/toast-notification/index.scss +0 -4
  223. package/scss/toast-notification/toast.scss +0 -79
  224. package/scss/toggle-switch/classes.scss +0 -11
  225. package/scss/toggle-switch/index.scss +0 -3
  226. package/scss/toggle-switch/toggle-switch.scss +0 -222
  227. package/scss/tooltip/classes.scss +0 -24
  228. package/scss/tooltip/index.scss +0 -3
  229. package/scss/tooltip/tooltip.scss +0 -41
  230. package/scss/tree/classes.scss +0 -19
  231. package/scss/tree/index.scss +0 -3
  232. package/scss/tree/tree.scss +0 -138
  233. package/scss/user-icon/classes.scss +0 -27
  234. package/scss/user-icon/index.scss +0 -4
  235. package/scss/user-icon/sizes.scss +0 -22
  236. package/scss/user-icon/user-icon.scss +0 -250
  237. package/scss/variables.scss +0 -3
  238. package/scss/wizard/classes.scss +0 -27
  239. package/scss/wizard/index.scss +0 -5
  240. package/scss/wizard/long.scss +0 -19
  241. package/scss/wizard/wizard.scss +0 -160
  242. package/scss/wizard/workflow.scss +0 -43
  243. 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
- }