@stackoverflow/stacks 1.9.0 → 1.9.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 (132) hide show
  1. package/README.md +161 -153
  2. package/dist/components/table/table.d.ts +26 -4
  3. package/dist/css/stacks.css +21 -6
  4. package/dist/css/stacks.min.css +1 -1
  5. package/dist/js/stacks.js +93 -64
  6. package/dist/js/stacks.min.js +1 -1
  7. package/lib/atomic/border.less +397 -397
  8. package/lib/atomic/color.less +210 -210
  9. package/lib/atomic/flex.less +426 -426
  10. package/lib/atomic/gap.less +44 -44
  11. package/lib/atomic/grid.less +139 -139
  12. package/lib/atomic/misc.less +343 -343
  13. package/lib/atomic/spacing.less +342 -342
  14. package/lib/atomic/typography.less +267 -267
  15. package/lib/atomic/width-height.less +194 -194
  16. package/lib/base/body.less +44 -44
  17. package/lib/base/configuration-static.less +61 -61
  18. package/lib/base/fieldset.less +5 -5
  19. package/lib/base/icon.less +11 -11
  20. package/lib/base/internal.less +220 -220
  21. package/lib/base/reset-meyer.less +64 -64
  22. package/lib/base/reset-normalize.less +449 -449
  23. package/lib/base/reset.less +20 -20
  24. package/lib/components/activity-indicator/activity-indicator.a11y.test.ts +21 -21
  25. package/lib/components/activity-indicator/activity-indicator.less +40 -40
  26. package/lib/components/activity-indicator/activity-indicator.visual.test.ts +23 -23
  27. package/lib/components/anchor/anchor.less +61 -61
  28. package/lib/components/avatar/avatar.a11y.test.ts +36 -36
  29. package/lib/components/avatar/avatar.less +108 -108
  30. package/lib/components/avatar/avatar.visual.test.ts +54 -54
  31. package/lib/components/award-bling/award-bling.a11y.test.ts +17 -0
  32. package/lib/components/award-bling/award-bling.less +31 -31
  33. package/lib/components/award-bling/award-bling.visual.test.ts +26 -0
  34. package/lib/components/badge/badge.less +251 -251
  35. package/lib/components/banner/banner.a11y.test.ts +37 -0
  36. package/lib/components/banner/banner.less +51 -51
  37. package/lib/components/banner/banner.test.ts +73 -77
  38. package/lib/components/banner/banner.ts +149 -149
  39. package/lib/components/banner/banner.visual.test.ts +37 -36
  40. package/lib/components/block-link/block-link.a11y.test.ts +68 -0
  41. package/lib/components/block-link/block-link.less +80 -80
  42. package/lib/components/block-link/block-link.visual.test.ts +61 -0
  43. package/lib/components/breadcrumbs/breadcrumbs.a11y.test.ts +37 -0
  44. package/lib/components/breadcrumbs/breadcrumbs.less +41 -41
  45. package/lib/components/breadcrumbs/breadcrumbs.visual.test.ts +37 -0
  46. package/lib/components/button/button.a11y.test.ts +32 -32
  47. package/lib/components/button/button.less +502 -502
  48. package/lib/components/button/button.visual.test.ts +52 -52
  49. package/lib/components/button-group/button-group.less +83 -83
  50. package/lib/components/card/card.a11y.test.ts +13 -0
  51. package/lib/components/card/card.less +29 -29
  52. package/lib/components/card/card.visual.test.ts +54 -0
  53. package/lib/components/check-control/check-control.less +17 -17
  54. package/lib/components/check-group/check-group.less +19 -19
  55. package/lib/components/checkbox_radio/checkbox_radio.less +158 -158
  56. package/lib/components/code-block/code-block.less +116 -116
  57. package/lib/components/description/description.less +9 -9
  58. package/lib/components/empty-state/empty-state.less +16 -16
  59. package/lib/components/expandable/expandable.less +118 -118
  60. package/lib/components/expandable/expandable.test.ts +51 -53
  61. package/lib/components/expandable/expandable.ts +238 -238
  62. package/lib/components/input-fill/input-fill.less +35 -35
  63. package/lib/components/input-icon/input-icon.less +45 -45
  64. package/lib/components/input-message/input-message.less +48 -48
  65. package/lib/components/input_textarea/input_textarea.less +166 -166
  66. package/lib/components/label/label.less +111 -111
  67. package/lib/components/link/link.less +119 -119
  68. package/lib/components/link-preview/link-preview.less +139 -139
  69. package/lib/components/menu/menu.less +41 -41
  70. package/lib/components/modal/modal.less +113 -113
  71. package/lib/components/modal/modal.ts +379 -379
  72. package/lib/components/navigation/navigation.less +134 -134
  73. package/lib/components/navigation/navigation.ts +128 -128
  74. package/lib/components/notice/notice.less +203 -203
  75. package/lib/components/page-title/page-title.less +51 -51
  76. package/lib/components/pagination/pagination.less +52 -52
  77. package/lib/components/popover/popover.less +148 -148
  78. package/lib/components/popover/popover.ts +651 -651
  79. package/lib/components/popover/tooltip.test.ts +62 -66
  80. package/lib/components/popover/tooltip.ts +343 -343
  81. package/lib/components/popover/tooltip.visual.test.ts +31 -31
  82. package/lib/components/post-summary/post-summary.less +415 -415
  83. package/lib/components/progress-bar/progress-bar.less +291 -291
  84. package/lib/components/prose/prose.less +452 -452
  85. package/lib/components/select/select.less +148 -148
  86. package/lib/components/sidebar-widget/sidebar-widget.less +257 -258
  87. package/lib/components/spinner/spinner.less +103 -103
  88. package/lib/components/table/table.less +307 -292
  89. package/lib/components/table/table.test.ts +366 -0
  90. package/lib/components/table/table.ts +296 -263
  91. package/lib/components/table-container/table-container.less +4 -4
  92. package/lib/components/tag/tag.less +213 -213
  93. package/lib/components/toast/toast.less +35 -35
  94. package/lib/components/toast/toast.test.ts +63 -67
  95. package/lib/components/toast/toast.ts +357 -357
  96. package/lib/components/toast/toast.visual.test.ts +27 -27
  97. package/lib/components/toggle-switch/toggle-switch.less +110 -110
  98. package/lib/components/topbar/topbar.less +436 -435
  99. package/lib/components/uploader/uploader.less +195 -195
  100. package/lib/components/uploader/uploader.ts +205 -205
  101. package/lib/components/user-card/user-card.less +129 -129
  102. package/lib/controllers.ts +33 -33
  103. package/lib/exports/constants-colors.less +1112 -1111
  104. package/lib/exports/constants-helpers.less +108 -108
  105. package/lib/exports/constants-type.less +153 -153
  106. package/lib/exports/exports.less +15 -15
  107. package/lib/exports/mixins.less +299 -299
  108. package/lib/index.ts +32 -32
  109. package/lib/input-utils.less +44 -44
  110. package/lib/stacks-dynamic.less +24 -24
  111. package/lib/stacks-static.less +93 -93
  112. package/lib/stacks.less +13 -13
  113. package/lib/stacks.ts +113 -113
  114. package/lib/test/open-wc-testing-patch.d.ts +26 -0
  115. package/lib/test/test-utils.ts +466 -444
  116. package/lib/tsconfig.build.json +4 -0
  117. package/lib/tsconfig.json +16 -13
  118. package/package.json +106 -105
  119. package/dist/components/activity-indicator/activity-indicator.a11y.test.d.ts +0 -1
  120. package/dist/components/activity-indicator/activity-indicator.visual.test.d.ts +0 -1
  121. package/dist/components/avatar/avatar.a11y.test.d.ts +0 -1
  122. package/dist/components/avatar/avatar.visual.test.d.ts +0 -1
  123. package/dist/components/banner/banner.test.d.ts +0 -1
  124. package/dist/components/banner/banner.visual.test.d.ts +0 -1
  125. package/dist/components/button/button.a11y.test.d.ts +0 -1
  126. package/dist/components/button/button.visual.test.d.ts +0 -1
  127. package/dist/components/expandable/expandable.test.d.ts +0 -1
  128. package/dist/components/popover/tooltip.test.d.ts +0 -1
  129. package/dist/components/popover/tooltip.visual.test.d.ts +0 -1
  130. package/dist/components/toast/toast.test.d.ts +0 -1
  131. package/dist/components/toast/toast.visual.test.d.ts +0 -1
  132. package/dist/test/test-utils.d.ts +0 -136
@@ -1,292 +1,307 @@
1
- .s-table {
2
- @ta-cell-border: var(--su-static1) solid var(--bc-medium);
3
- @ta-columns: (100% / 12);
4
-
5
- --_ta-tbody-tbody-bc: var(--bc-medium);
6
- --_ta-tbody-tbody-bw: var(--su-static2);
7
- --_ta-tbody-tr-even-bg: unset;
8
- --_ta-td-bbw: 0;
9
- --_ta-td-bc: var(--bc-medium);
10
- --_ta-td-fs: unset;
11
- --_ta-td-fw: unset;
12
- --_ta-td-p: var(--su8);
13
- --_ta-td-ta: left;
14
- --_ta-td-va: middle;
15
- --_ta-td-w: unset;
16
- --_ta-thead-th-bg: var(--black-025);
17
- --_ta-th-bbw: 0;
18
- --_ta-th-bc: var(--bc-medium);
19
- --_ta-th-fs: unset;
20
- --_ta-th-p: var(--su8);
21
- --_ta-th-ta: left;
22
- --_ta-th-va: middle;
23
- --_ta-th-w: unset;
24
-
25
- // VARIANTS
26
- &&__stripes {
27
- --_ta-tbody-tr-even-bg: var(--black-025);
28
- --_ta-thead-th-bg: var(--black-050);
29
- }
30
-
31
- // MODIFIERS
32
- &.ta-center {
33
- --_ta-td-ta: center;
34
- --_ta-th-ta: center;
35
- }
36
-
37
- &.ta-left {
38
- --_ta-td-ta: left;
39
- --_ta-th-ta: left;
40
- }
41
-
42
- &.ta-justify {
43
- --_ta-td-ta: justify;
44
- --_ta-th-ta: justify;
45
- }
46
-
47
- &.ta-right {
48
- --_ta-td-ta: right;
49
- --_ta-th-ta: right;
50
- }
51
-
52
- &.va-bottom {
53
- --_ta-td-va: bottom;
54
- --_ta-th-va: bottom;
55
- }
56
-
57
- &.va-middle {
58
- --_ta-td-va: middle;
59
- --_ta-th-va: middle;
60
- }
61
-
62
- &.va-top {
63
- --_ta-td-va: top;
64
- --_ta-th-va: top;
65
- }
66
-
67
- &&__b0 {
68
- --_ta-td-bc: transparent;
69
- --_ta-th-bc: transparent;
70
- --_ta-tbody-tbody-bc: transparent; // [1]
71
- --_ta-tbody-tbody-bw: var(--su-static12); // [1]
72
- --_ta-thead-th-bg: transparent;
73
-
74
- thead th {
75
- font-size: inherit;
76
- text-transform: initial;
77
- letter-spacing: initial;
78
- }
79
- }
80
-
81
- &&__bx {
82
- tr {
83
- > *:not(:first-child) {
84
- border-left-color: transparent;
85
- }
86
- > *:not(:last-child) {
87
- border-right-color: transparent;
88
- }
89
- }
90
- }
91
-
92
- &&__bx-simple {
93
- --_ta-thead-th-bg: transparent;
94
- --_ta-foot-td-bc: transparent;
95
- --_ta-foot-th-bc: transparent;
96
-
97
- td,
98
- th {
99
- border-left-color: transparent;
100
- border-right-color: transparent;
101
- }
102
-
103
- tbody tr {
104
- &:first-of-type th,
105
- &:first-of-type td {
106
- border-top-color: transparent;
107
- }
108
- &:last-of-type th,
109
- &:last-of-type td {
110
- border-bottom-color: transparent;
111
- }
112
- }
113
-
114
- thead th {
115
- border-top-color: transparent;
116
- border-bottom-color: var(--bc-darker);
117
- font-size: inherit;
118
- text-transform: initial;
119
- letter-spacing: initial;
120
- }
121
- }
122
-
123
- &&__sortable {
124
- thead th {
125
- a { // If an anchor is used, it should appear like a normal header
126
- color: inherit;
127
- }
128
-
129
- &.is-sorted { // Selected state
130
- color: var(--black-900);
131
- }
132
-
133
- color: var(--fc-light);
134
- cursor: pointer;
135
- }
136
- }
137
-
138
- // Sizes
139
- &&__sm {
140
- --_ta-td-p: var(--su4);
141
- --_ta-th-p: var(--su4);
142
- }
143
-
144
- &&__lg {
145
- --_ta-td-p: var(--su12);
146
- --_ta-th-p: var(--su12);
147
- }
148
-
149
- // CHILD ELEMENTS
150
- & &--cell {
151
- .generate-cell-widths-classes(@n, @i: 1) when (@i =< @n) {
152
- &@{i} { // generates iterated cell classes
153
- @ta-cell-w: @ta-columns * @i;
154
- --_ta-td-w: @ta-cell-w;
155
- --_ta-th-w: @ta-cell-w;
156
- }
157
- .generate-cell-widths-classes(@n, (@i + 1));
158
- }
159
-
160
- .generate-cell-widths-classes(12);
161
- }
162
-
163
- & &--totals {
164
- --_ta-td-fs: var(--fs-subheading);
165
- --_ta-td-pt: var(--su12);
166
- --_ta-td-fw: bold;
167
- --_ta-th-fs: var(--fs-subheading);
168
- --_ta-th-pt: var(--su12);
169
- }
170
-
171
- tbody {
172
- + tbody { // If two table bodies are next to each other, visually separate them
173
- border-top: var(--_ta-tbody-tbody-bw) solid var(--_ta-tbody-tbody-bc);
174
- }
175
-
176
- th {
177
- font-weight: normal;
178
- }
179
-
180
- tr {
181
- &:nth-child(2n) {
182
- background-color: var(--_ta-tbody-tr-even-bg);
183
- }
184
- }
185
- }
186
-
187
- td {
188
- .s-checkbox {
189
- display: block;
190
- }
191
-
192
- &.s-table--bulk {
193
- --_ta-td-w: calc(var(--su32) - var(--su2)); // 30px;
194
- }
195
-
196
- &.s-table--progress {
197
- --_ta-td-ta: right;
198
- --_ta-td-brw: 0;
199
- }
200
-
201
- &.s-table--progress-bar {
202
- --_ta-td-blw: 0;
203
- --_ta-td-pl: 0;
204
- --_ta-td-w: 120px;
205
- }
206
-
207
- border: var(--su-static1) solid var(--_ta-td-bc);
208
- border-bottom-width: var(--_ta-td-bbw, var(--su-static1));
209
- border-left-width: var(--_ta-td-blw, var(--su-static1));
210
- border-right-width: var(--_ta-td-brw, var(--su-static1));
211
- border-top-width: var(--_ta-td-btw, var(--su-static1));
212
- font-size: var(--_ta-td-fs);
213
- font-weight: var(--_ta-td-fw);
214
- padding: var(--_ta-td-p);
215
- padding-left: var(--_ta-td-pl, var(--_ta-td-p));
216
- padding-top: var(--_ta-td-pt, var(--_ta-td-p));
217
- text-align: var(--_ta-td-ta);
218
- vertical-align: var(--_ta-td-va);
219
- width: var(--_ta-td-w);
220
-
221
- color: var(--fc-medium);
222
- }
223
-
224
- tfoot {
225
- td {
226
- border-bottom-color: var(--_ta-foot-td-bc, var(--_ta-td-bc));
227
- }
228
-
229
- th {
230
- border-bottom-color: var(--_ta-foot-th-bc, var(--_ta-td-bc));
231
- }
232
- }
233
-
234
- th {
235
- .s-checkbox {
236
- display: block;
237
- }
238
-
239
- &.s-table--bulk {
240
- --_ta-th-w: calc(var(--su32) - var(--su2)); // 30px;
241
- }
242
-
243
- border: var(--su-static1) solid var(--_ta-th-bc);
244
- border-width: var(--su-static1) var(--su-static1) var(--_ta-th-bbw);
245
- font-size: var(--_ta-th-fs);
246
- padding: var(--_ta-th-p);
247
- padding-top: var(--_ta-th-pt, var(--_ta-th-p));
248
- text-align: var(--_ta-th-ta);
249
- vertical-align: var(--_ta-th-va);
250
- width: var(--_ta-th-w);
251
-
252
- color: var(--fc-dark);
253
- font-weight: bold;
254
- }
255
-
256
- thead {
257
- th {
258
- background-color: var(--_ta-thead-th-bg);
259
-
260
- line-height: var(--lh-sm);
261
- vertical-align: bottom;
262
- white-space: nowrap;
263
- }
264
- }
265
-
266
- tr {
267
- &:last-of-type {
268
- --_ta-td-bbw: var(--su-static1);
269
- --_ta-th-bbw: var(--su-static1);
270
- }
271
-
272
- &.is-disabled {
273
- background-color: var(--black-025);
274
- --_ta-tbody-tr-even-bg: var(--black-025);
275
-
276
- th:not(.is-enabled),
277
- td:not(.is-enabled) {
278
- opacity: calc(var(--_o-disabled) * 0.6); // 0.5 * 0.6 = 0.3
279
- }
280
- }
281
- }
282
-
283
- border-collapse: collapse;
284
- border-spacing: 0;
285
- display: table;
286
- font-size: var(--fs-body1);
287
- max-width: 100%;
288
- width: 100%;
289
- }
290
-
291
- // [1] This makes the border transparent, so we need to use whitespace
292
- // to achieve the same effect a 2px gray border achieves.
1
+ .s-table {
2
+ @ta-cell-border: var(--su-static1) solid var(--bc-medium);
3
+ @ta-columns: (100% / 12);
4
+
5
+ --_ta-tbody-tbody-bc: var(--bc-medium);
6
+ --_ta-tbody-tbody-bw: var(--su-static2);
7
+ --_ta-tbody-tr-even-bg: unset;
8
+ --_ta-td-bbw: 0;
9
+ --_ta-td-bc: var(--bc-medium);
10
+ --_ta-td-fs: unset;
11
+ --_ta-td-fw: unset;
12
+ --_ta-td-p: var(--su8);
13
+ --_ta-td-ta: left;
14
+ --_ta-td-va: middle;
15
+ --_ta-td-w: unset;
16
+ --_ta-thead-th-bg: var(--black-025);
17
+ --_ta-th-bbw: 0;
18
+ --_ta-th-bc: var(--bc-medium);
19
+ --_ta-th-fs: unset;
20
+ --_ta-th-p: var(--su8);
21
+ --_ta-th-ta: left;
22
+ --_ta-th-va: middle;
23
+ --_ta-th-w: unset;
24
+
25
+ // VARIANTS
26
+ &&__stripes {
27
+ --_ta-tbody-tr-even-bg: var(--black-025);
28
+ --_ta-thead-th-bg: var(--black-050);
29
+ }
30
+
31
+ // MODIFIERS
32
+ &.ta-center {
33
+ --_ta-td-ta: center;
34
+ --_ta-th-ta: center;
35
+ }
36
+
37
+ &.ta-left {
38
+ --_ta-td-ta: left;
39
+ --_ta-th-ta: left;
40
+ }
41
+
42
+ &.ta-justify {
43
+ --_ta-td-ta: justify;
44
+ --_ta-th-ta: justify;
45
+ }
46
+
47
+ &.ta-right {
48
+ --_ta-td-ta: right;
49
+ --_ta-th-ta: right;
50
+ }
51
+
52
+ &.va-bottom {
53
+ --_ta-td-va: bottom;
54
+ --_ta-th-va: bottom;
55
+ }
56
+
57
+ &.va-middle {
58
+ --_ta-td-va: middle;
59
+ --_ta-th-va: middle;
60
+ }
61
+
62
+ &.va-top {
63
+ --_ta-td-va: top;
64
+ --_ta-th-va: top;
65
+ }
66
+
67
+ &&__b0 {
68
+ --_ta-td-bc: transparent;
69
+ --_ta-th-bc: transparent;
70
+ --_ta-tbody-tbody-bc: transparent; // [1]
71
+ --_ta-tbody-tbody-bw: var(--su-static12); // [1]
72
+ --_ta-thead-th-bg: transparent;
73
+
74
+ thead th {
75
+ font-size: inherit;
76
+ text-transform: initial;
77
+ letter-spacing: initial;
78
+ }
79
+ }
80
+
81
+ &&__bx {
82
+ tr {
83
+ > *:not(:first-child) {
84
+ border-left-color: transparent;
85
+ }
86
+ > *:not(:last-child) {
87
+ border-right-color: transparent;
88
+ }
89
+ }
90
+ }
91
+
92
+ &&__bx-simple {
93
+ --_ta-thead-th-bg: transparent;
94
+ --_ta-foot-td-bc: transparent;
95
+ --_ta-foot-th-bc: transparent;
96
+
97
+ td,
98
+ th {
99
+ border-left-color: transparent;
100
+ border-right-color: transparent;
101
+ }
102
+
103
+ tbody tr {
104
+ &:first-of-type th,
105
+ &:first-of-type td {
106
+ border-top-color: transparent;
107
+ }
108
+ &:last-of-type th,
109
+ &:last-of-type td {
110
+ border-bottom-color: transparent;
111
+ }
112
+ }
113
+
114
+ thead th {
115
+ border-top-color: transparent;
116
+ border-bottom-color: var(--bc-darker);
117
+ font-size: inherit;
118
+ text-transform: initial;
119
+ letter-spacing: initial;
120
+ }
121
+ }
122
+
123
+ &&__sortable {
124
+ thead th {
125
+ a,
126
+ button { // If an anchor is used, it should appear like a normal header
127
+ color: inherit;
128
+ }
129
+
130
+ button {
131
+ appearance: none;
132
+ background-color: transparent;
133
+ border: 0;
134
+ cursor: pointer;
135
+ display: flex;
136
+ gap: var(--su-static4);
137
+ font-weight: inherit;
138
+ margin: calc(var(--_ta-th-p) * -1);
139
+ padding: var(--_ta-th-p);
140
+ text-align: left;
141
+ width: calc(100% + calc(var(--_ta-th-p) * 2));
142
+ }
143
+
144
+ &.is-sorted { // Selected state
145
+ color: var(--black-900);
146
+ }
147
+
148
+ color: var(--fc-light);
149
+ cursor: pointer;
150
+ }
151
+ }
152
+
153
+ // Sizes
154
+ &&__sm {
155
+ --_ta-td-p: var(--su4);
156
+ --_ta-th-p: var(--su4);
157
+ }
158
+
159
+ &&__lg {
160
+ --_ta-td-p: var(--su12);
161
+ --_ta-th-p: var(--su12);
162
+ }
163
+
164
+ // CHILD ELEMENTS
165
+ & &--cell {
166
+ .generate-cell-widths-classes(@n, @i: 1) when (@i =< @n) {
167
+ &@{i} { // generates iterated cell classes
168
+ @ta-cell-w: @ta-columns * @i;
169
+ --_ta-td-w: @ta-cell-w;
170
+ --_ta-th-w: @ta-cell-w;
171
+ }
172
+ .generate-cell-widths-classes(@n, (@i + 1));
173
+ }
174
+
175
+ .generate-cell-widths-classes(12);
176
+ }
177
+
178
+ & &--totals {
179
+ --_ta-td-fs: var(--fs-subheading);
180
+ --_ta-td-pt: var(--su12);
181
+ --_ta-td-fw: bold;
182
+ --_ta-th-fs: var(--fs-subheading);
183
+ --_ta-th-pt: var(--su12);
184
+ }
185
+
186
+ tbody {
187
+ + tbody { // If two table bodies are next to each other, visually separate them
188
+ border-top: var(--_ta-tbody-tbody-bw) solid var(--_ta-tbody-tbody-bc);
189
+ }
190
+
191
+ th {
192
+ font-weight: normal;
193
+ }
194
+
195
+ tr {
196
+ &:nth-child(2n) {
197
+ background-color: var(--_ta-tbody-tr-even-bg);
198
+ }
199
+ }
200
+ }
201
+
202
+ td {
203
+ .s-checkbox {
204
+ display: block;
205
+ }
206
+
207
+ &.s-table--bulk {
208
+ --_ta-td-w: calc(var(--su32) - var(--su2)); // 30px;
209
+ }
210
+
211
+ &.s-table--progress {
212
+ --_ta-td-ta: right;
213
+ --_ta-td-brw: 0;
214
+ }
215
+
216
+ &.s-table--progress-bar {
217
+ --_ta-td-blw: 0;
218
+ --_ta-td-pl: 0;
219
+ --_ta-td-w: 120px;
220
+ }
221
+
222
+ border: var(--su-static1) solid var(--_ta-td-bc);
223
+ border-bottom-width: var(--_ta-td-bbw, var(--su-static1));
224
+ border-left-width: var(--_ta-td-blw, var(--su-static1));
225
+ border-right-width: var(--_ta-td-brw, var(--su-static1));
226
+ border-top-width: var(--_ta-td-btw, var(--su-static1));
227
+ font-size: var(--_ta-td-fs);
228
+ font-weight: var(--_ta-td-fw);
229
+ padding: var(--_ta-td-p);
230
+ padding-left: var(--_ta-td-pl, var(--_ta-td-p));
231
+ padding-top: var(--_ta-td-pt, var(--_ta-td-p));
232
+ text-align: var(--_ta-td-ta);
233
+ vertical-align: var(--_ta-td-va);
234
+ width: var(--_ta-td-w);
235
+
236
+ color: var(--fc-medium);
237
+ }
238
+
239
+ tfoot {
240
+ td {
241
+ border-bottom-color: var(--_ta-foot-td-bc, var(--_ta-td-bc));
242
+ }
243
+
244
+ th {
245
+ border-bottom-color: var(--_ta-foot-th-bc, var(--_ta-td-bc));
246
+ }
247
+ }
248
+
249
+ th {
250
+ .s-checkbox {
251
+ display: block;
252
+ }
253
+
254
+ &.s-table--bulk {
255
+ --_ta-th-w: calc(var(--su32) - var(--su2)); // 30px;
256
+ }
257
+
258
+ border: var(--su-static1) solid var(--_ta-th-bc);
259
+ border-width: var(--su-static1) var(--su-static1) var(--_ta-th-bbw);
260
+ font-size: var(--_ta-th-fs);
261
+ padding: var(--_ta-th-p);
262
+ padding-top: var(--_ta-th-pt, var(--_ta-th-p));
263
+ text-align: var(--_ta-th-ta);
264
+ vertical-align: var(--_ta-th-va);
265
+ width: var(--_ta-th-w);
266
+
267
+ color: var(--fc-dark);
268
+ font-weight: bold;
269
+ }
270
+
271
+ thead {
272
+ th {
273
+ background-color: var(--_ta-thead-th-bg);
274
+
275
+ line-height: var(--lh-sm);
276
+ vertical-align: bottom;
277
+ white-space: nowrap;
278
+ }
279
+ }
280
+
281
+ tr {
282
+ &:last-of-type {
283
+ --_ta-td-bbw: var(--su-static1);
284
+ --_ta-th-bbw: var(--su-static1);
285
+ }
286
+
287
+ &.is-disabled {
288
+ background-color: var(--black-025);
289
+ --_ta-tbody-tr-even-bg: var(--black-025);
290
+
291
+ th:not(.is-enabled),
292
+ td:not(.is-enabled) {
293
+ opacity: calc(var(--_o-disabled) * 0.6); // 0.5 * 0.6 = 0.3
294
+ }
295
+ }
296
+ }
297
+
298
+ border-collapse: collapse;
299
+ border-spacing: 0;
300
+ display: table;
301
+ font-size: var(--fs-body1);
302
+ max-width: 100%;
303
+ width: 100%;
304
+ }
305
+
306
+ // [1] This makes the border transparent, so we need to use whitespace
307
+ // to achieve the same effect a 2px gray border achieves.