@wwtdev/bsds-css 2.16.0 → 2.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/_buttons.scss +16 -16
- package/dist/components/_pills.scss +1 -1
- package/dist/components/_table.scss +328 -0
- package/dist/components/_tooltip.scss +27 -11
- package/dist/components/buttons.css +16 -16
- package/dist/components/pills.css +1 -1
- package/dist/components/table.css +324 -0
- package/dist/components/tooltip.css +27 -11
- package/dist/wwt-bsds-preset.js +7 -0
- package/dist/wwt-bsds-wc-base.css +33 -23
- package/dist/wwt-bsds.css +338 -51
- package/dist/wwt-bsds.min.css +1 -1
- package/package.json +1 -1
package/dist/wwt-bsds.css
CHANGED
|
@@ -64,6 +64,9 @@
|
|
|
64
64
|
--bs-gray-300: #a3a4b7;
|
|
65
65
|
--bs-gray-400: #4e4f5f;
|
|
66
66
|
--bs-gray-500: #292940;
|
|
67
|
+
--bs-slate-400: #22222e;
|
|
68
|
+
--bs-slate-500: #17171f;
|
|
69
|
+
--bs-slate-600: #0b0b10;
|
|
67
70
|
--bs-gradient-dark: linear-gradient(
|
|
68
71
|
90deg,
|
|
69
72
|
#1c0087 0%,
|
|
@@ -285,10 +288,13 @@ button {
|
|
|
285
288
|
--bs-bg-base-to-medium: var(--bs-white);
|
|
286
289
|
--bs-bg-light: var(--bs-gray-50);
|
|
287
290
|
--bs-bg-light-to-base: var(--bs-gray-50);
|
|
291
|
+
--bs-bg-light-to-medium: var(--bs-gray-50);
|
|
288
292
|
--bs-bg-medium: var(--bs-gray-100);
|
|
289
293
|
--bs-bg-medium-to-light: var(--bs-gray-100);
|
|
290
|
-
--bs-bg-
|
|
291
|
-
--bs-bg-invert-to-
|
|
294
|
+
--bs-bg-medium-to-base: var(--bs-gray-100);
|
|
295
|
+
--bs-bg-invert-to-light: var(--bs-slate-500);
|
|
296
|
+
--bs-bg-invert-to-base: var(--bs-slate-600);
|
|
297
|
+
--bs-bg-invert-to-medium: var(--bs-slate-400);
|
|
292
298
|
--bs-bg-disabled: var(--bs-gray-200);
|
|
293
299
|
|
|
294
300
|
--bs-hyperlink: var(--bs-purple-400);
|
|
@@ -376,8 +382,8 @@ button {
|
|
|
376
382
|
/* deprecate / phase out.. */
|
|
377
383
|
--bs-bg-base-elevated: var(--bs-white); /* now --bs-bg-base-to-light */
|
|
378
384
|
--bs-bg-subtle: var(--bs-gray-100);
|
|
379
|
-
--bs-bg-invert: var(--bs-
|
|
380
|
-
--bs-bg-invert-subtle: var(--bs-
|
|
385
|
+
--bs-bg-invert: var(--bs-slate-500);
|
|
386
|
+
--bs-bg-invert-subtle: var(--bs-slate-400);
|
|
381
387
|
--bs-border: var(--bs-gray-200);
|
|
382
388
|
--bs-ink-invert: var(--bs-gray-100);
|
|
383
389
|
--bs-orange-warning: var(--bs-orange-500);
|
|
@@ -388,27 +394,30 @@ button {
|
|
|
388
394
|
}
|
|
389
395
|
.dark,
|
|
390
396
|
.dark :where(:host) {
|
|
391
|
-
--bs-bg-base: var(--bs-
|
|
392
|
-
--bs-bg-base-to-light: var(--bs-
|
|
393
|
-
--bs-bg-base-to-medium: var(--bs-
|
|
394
|
-
--bs-bg-light: var(--bs-
|
|
395
|
-
--bs-bg-light-to-base: var(--bs-
|
|
396
|
-
--bs-bg-medium: var(--bs-
|
|
397
|
-
--bs-bg-medium
|
|
398
|
-
--bs-bg-
|
|
399
|
-
--bs-bg-
|
|
400
|
-
--bs-bg-
|
|
397
|
+
--bs-bg-base: var(--bs-slate-600);
|
|
398
|
+
--bs-bg-base-to-light: var(--bs-slate-500);
|
|
399
|
+
--bs-bg-base-to-medium: var(--bs-slate-400);
|
|
400
|
+
--bs-bg-light: var(--bs-slate-500);
|
|
401
|
+
--bs-bg-light-to-base: var(--bs-slate-600);
|
|
402
|
+
--bs-bg-light-to-medium: var(--bs-slate-400);
|
|
403
|
+
--bs-bg-medium: var(--bs-slate-400);
|
|
404
|
+
--bs-bg-medium-to-light: var(--bs-slate-500);
|
|
405
|
+
--bs-bg-medium-to-base: var(--bs-slate-600);
|
|
406
|
+
--bs-bg-invert-to-light: var(--bs-gray-50);
|
|
407
|
+
--bs-bg-invert-to-base: var(--bs-white);
|
|
408
|
+
--bs-bg-invert-to-medium: var(--bs-gray-100);
|
|
409
|
+
--bs-bg-disabled: rgba(78, 79, 95, 0.3); /* --bs-gray-400 at .3 opacity */
|
|
401
410
|
|
|
402
411
|
--bs-hyperlink: var(--bs-purple-200);
|
|
403
412
|
|
|
404
413
|
--bs-ink-accent: var(--bs-gray-100);
|
|
405
|
-
--bs-ink-base: var(--bs-
|
|
406
|
-
--bs-ink-disabled: rgba(163, 164, 183, 0.
|
|
414
|
+
--bs-ink-base: var(--bs-white);
|
|
415
|
+
--bs-ink-disabled: rgba(163, 164, 183, 0.5); /* --bs-gray-300 at .5 opacity */
|
|
407
416
|
--bs-ink-invert-base: var(--bs-black);
|
|
408
417
|
--bs-ink-invert-medium: var(--bs-gray-500);
|
|
409
418
|
--bs-ink-invert-light: var(--bs-gray-400);
|
|
410
|
-
--bs-ink-light: var(--bs-gray-
|
|
411
|
-
--bs-ink-medium: var(--bs-gray-
|
|
419
|
+
--bs-ink-light: var(--bs-gray-200);
|
|
420
|
+
--bs-ink-medium: var(--bs-gray-100);
|
|
412
421
|
|
|
413
422
|
--bs-ink-blue: var(--bs-blue-200);
|
|
414
423
|
--bs-ink-orange: var(--bs-orange-200);
|
|
@@ -424,6 +433,7 @@ button {
|
|
|
424
433
|
--bs-orange-base: var(--bs-orange-300);
|
|
425
434
|
--bs-pink-base: var(--bs-pink-300);
|
|
426
435
|
--bs-plum-base: var(--bs-plum-300);
|
|
436
|
+
--bs-plum-medium: var(--bs-plum-200);
|
|
427
437
|
--bs-purple-base: var(--bs-purple-300);
|
|
428
438
|
--bs-red-base: var(--bs-red-300);
|
|
429
439
|
--bs-royal-base: var(--bs-royal-300);
|
|
@@ -437,10 +447,10 @@ button {
|
|
|
437
447
|
|
|
438
448
|
--bs-warning: var(--bs-orange-400);
|
|
439
449
|
|
|
440
|
-
--bs-border-dark: var(--bs-gray-
|
|
441
|
-
--bs-border-base:
|
|
442
|
-
--bs-border-medium: var(--bs-gray-
|
|
443
|
-
--bs-border-light:
|
|
450
|
+
--bs-border-dark: var(--bs-gray-300);
|
|
451
|
+
--bs-border-base: rgba(163, 164, 183, 0.7); /* --bs-gray-300 at .7 opacity */
|
|
452
|
+
--bs-border-medium: var(--bs-gray-400);
|
|
453
|
+
--bs-border-light: rgba(78, 79, 95, 0.5); /* --bs-gray-400 at .5 opacity */
|
|
444
454
|
|
|
445
455
|
--bs-shadow-base: rgba(0, 0, 0, 0.06);
|
|
446
456
|
--bs-shadow-invert: rgba(10, 11, 25, 0.60);
|
|
@@ -460,7 +470,7 @@ button {
|
|
|
460
470
|
16px 16px 32px var(--bs-shadow-invert);
|
|
461
471
|
|
|
462
472
|
/* deprecate / phase out.. */
|
|
463
|
-
--bs-bg-base-elevated: var(--bs-
|
|
473
|
+
--bs-bg-base-elevated: var(--bs-slate-500); /* now --bs-bg-base-to-light. See notes above in light mode. */
|
|
464
474
|
--bs-bg-subtle: #2F2F51;
|
|
465
475
|
--bs-bg-invert: var(--bs-white);
|
|
466
476
|
--bs-bg-invert-subtle: var(--bs-gray-100);
|
|
@@ -3084,10 +3094,10 @@ text color:
|
|
|
3084
3094
|
transition: all 100ms ease-in-out;
|
|
3085
3095
|
vertical-align: middle;
|
|
3086
3096
|
}
|
|
3087
|
-
.bs-button:hover {
|
|
3097
|
+
.bs-button:where(:not(:disabled):not([aria-disabled="true"]):hover) {
|
|
3088
3098
|
background-color: var(--btn-secondary);
|
|
3089
3099
|
}
|
|
3090
|
-
.bs-button:active {
|
|
3100
|
+
.bs-button:where(:not(:disabled):not([aria-disabled="true"]):active) {
|
|
3091
3101
|
background-color: var(--btn-secondary);
|
|
3092
3102
|
box-shadow: inset 0px 0px 4px 1px var(--btn-main);
|
|
3093
3103
|
transform-origin: center;
|
|
@@ -3106,14 +3116,14 @@ text color:
|
|
|
3106
3116
|
transition: border-color 0.125s ease-in-out;
|
|
3107
3117
|
width: var(--btn-focus-pseudo-width);
|
|
3108
3118
|
}
|
|
3109
|
-
.bs-button:focus::before {
|
|
3119
|
+
.bs-button:where(:focus:not(:disabled):not([aria-disabled="true"]))::before {
|
|
3110
3120
|
border-color: var(--btn-main);
|
|
3111
3121
|
}
|
|
3112
|
-
.bs-button:focus-visible::before {
|
|
3122
|
+
.bs-button:where(:focus-visible:not(:disabled):not([aria-disabled="true"]))::before {
|
|
3113
3123
|
border-color: var(--btn-main);
|
|
3114
3124
|
box-shadow: none;
|
|
3115
3125
|
}
|
|
3116
|
-
.bs-button:focus:not(:focus-visible)::before {
|
|
3126
|
+
.bs-button:where(:focus:not(:focus-visible):not(:disabled):not([aria-disabled="true"]))::before {
|
|
3117
3127
|
border-color: transparent;
|
|
3118
3128
|
box-shadow: none;
|
|
3119
3129
|
}
|
|
@@ -3128,11 +3138,11 @@ text color:
|
|
|
3128
3138
|
.bs-button:where([data-ghost]:not([data-ghost="false"]))::before {
|
|
3129
3139
|
border-radius: 0.4375rem;
|
|
3130
3140
|
}
|
|
3131
|
-
.bs-button:where([data-ghost]:not([data-ghost="false"])):hover,
|
|
3132
|
-
.bs-button:where([data-ghost]:not([data-ghost="false"])):focus {
|
|
3141
|
+
.bs-button:where([data-ghost]:not([data-ghost="false"]):not(:disabled):not([aria-disabled="true"]):hover),
|
|
3142
|
+
.bs-button:where([data-ghost]:not([data-ghost="false"]):not(:disabled):not([aria-disabled="true"]):focus) {
|
|
3133
3143
|
background-color: var(--btn-light);
|
|
3134
3144
|
}
|
|
3135
|
-
.bs-button:where([data-ghost]:not([data-ghost="false"])):active {
|
|
3145
|
+
.bs-button:where([data-ghost]:not([data-ghost="false"]):not(:disabled):not([aria-disabled="true"]):active) {
|
|
3136
3146
|
box-shadow:
|
|
3137
3147
|
inset 0 0 0 1px var(--btn-main),
|
|
3138
3148
|
inset 0px 0px 4px 1px var(--btn-highlight);
|
|
@@ -3142,14 +3152,12 @@ text color:
|
|
|
3142
3152
|
--btn-ghost-ink: var(--bs-ink-plum);
|
|
3143
3153
|
--btn-highlight: var(--bs-plum-100);
|
|
3144
3154
|
--btn-light: var(--bs-plum-10);
|
|
3145
|
-
--btn-main: var(--bs-plum-
|
|
3155
|
+
--btn-main: var(--bs-plum-base);
|
|
3146
3156
|
--btn-secondary: var(--bs-plum-medium);
|
|
3147
3157
|
}
|
|
3148
3158
|
.dark .bs-button:where([data-variant^='secondary']) {
|
|
3149
3159
|
--btn-highlight: var(--bs-plum-400);
|
|
3150
3160
|
--btn-light: var(--bs-navy-400);
|
|
3151
|
-
--btn-main: var(--bs-plum-200);
|
|
3152
|
-
--btn-secondary: var(--bs-plum-300);
|
|
3153
3161
|
}
|
|
3154
3162
|
.bs-button:where([data-variant^='positive']) {
|
|
3155
3163
|
--btn-ghost-ink: var(--bs-ink-purple);
|
|
@@ -3209,24 +3217,24 @@ text color:
|
|
|
3209
3217
|
cursor: pointer;
|
|
3210
3218
|
line-height: 150%;
|
|
3211
3219
|
}
|
|
3212
|
-
.bs-button:where([data-text]:not([data-text="false"])):hover {
|
|
3220
|
+
.bs-button:where([data-text]:not([data-text="false"]):not(:disabled):not([aria-disabled="true"]):hover) {
|
|
3213
3221
|
--btn-ink: var(--bs-blue-base);
|
|
3214
3222
|
background-color: transparent;
|
|
3215
3223
|
text-decoration: underline;
|
|
3216
3224
|
}
|
|
3217
|
-
.bs-button:where([data-text]:not([data-text="false"])):has(svg)
|
|
3225
|
+
.bs-button:where([data-text]:not([data-text="false"]):not(:disabled):not([aria-disabled="true"]):hover):has(svg) {
|
|
3218
3226
|
text-decoration: none;
|
|
3219
3227
|
}
|
|
3220
|
-
.bs-button:where([data-text]:not([data-text="false"])):active {
|
|
3228
|
+
.bs-button:where([data-text]:not([data-text="false"]):not(:disabled):not([aria-disabled="true"]):active) {
|
|
3221
3229
|
box-shadow: none;
|
|
3222
3230
|
transform: none;
|
|
3223
3231
|
}
|
|
3224
3232
|
.bs-button:where([data-variant^='negative'][data-text]:not([data-text="false"])),
|
|
3225
|
-
.bs-button:where([data-variant^='negative'][data-text]:not([data-text="false"])):hover {
|
|
3233
|
+
.bs-button:where([data-variant^='negative'][data-text]:not([data-text="false"]):not(:disabled):not([aria-disabled="true"]):hover) {
|
|
3226
3234
|
--btn-ink: var(--bs-ink-red);
|
|
3227
3235
|
}
|
|
3228
3236
|
.bs-button:where([data-variant^='white'][data-text]:not([data-text="false"])),
|
|
3229
|
-
.bs-button:where([data-variant^='white'][data-text]:not([data-text="false"])):hover {
|
|
3237
|
+
.bs-button:where([data-variant^='white'][data-text]:not([data-text="false"]):not(:disabled):not([aria-disabled="true"]):hover) {
|
|
3230
3238
|
--btn-ink: var(--bs-ink-white);
|
|
3231
3239
|
--btn-main: var(--bs-ink-white);
|
|
3232
3240
|
}
|
|
@@ -3273,6 +3281,8 @@ text color:
|
|
|
3273
3281
|
.bs-button:where([aria-disabled="true"]) {
|
|
3274
3282
|
--btn-ink: var(--bs-ink-disabled);
|
|
3275
3283
|
--btn-main: var(--bs-bg-disabled);
|
|
3284
|
+
box-shadow: none;
|
|
3285
|
+
transform: none;
|
|
3276
3286
|
}
|
|
3277
3287
|
.bs-button:where([data-ghost]:not([data-ghost="false"])):disabled,
|
|
3278
3288
|
.bs-button:where([data-ghost]:not([data-ghost="false"]))[aria-disabled="true"] {
|
|
@@ -4083,7 +4093,7 @@ button:where(.bs-filter-button) {
|
|
|
4083
4093
|
}
|
|
4084
4094
|
/* ------------------------------ Variant: "Live Now" Styles ------------------------------ */
|
|
4085
4095
|
.bs-pill:where([data-variant^="live"]) {
|
|
4086
|
-
--pill-background: var(--bs-
|
|
4096
|
+
--pill-background: var(--bs-plum-base);
|
|
4087
4097
|
--pill-text: var(--bs-white);
|
|
4088
4098
|
--pill-gap: var(--bs-space-1);
|
|
4089
4099
|
text-transform: uppercase;
|
|
@@ -4422,6 +4432,270 @@ a.bs-profile:where([data-layout]):hover {
|
|
|
4422
4432
|
:where(.bs-tab-panel, bs-tab-panel):where([role="tabpanel"][data-active]:not([data-active="false"])) {
|
|
4423
4433
|
display: block;
|
|
4424
4434
|
}
|
|
4435
|
+
/* ------ WRAPPER ------ */
|
|
4436
|
+
.bs-table-wrap {
|
|
4437
|
+
display: flex;
|
|
4438
|
+
flex-direction: column;
|
|
4439
|
+
overflow: hidden;
|
|
4440
|
+
}
|
|
4441
|
+
:where(.bs-table-wrap) {
|
|
4442
|
+
font-size: var(--bs-text-sm);
|
|
4443
|
+
color: var(--bs-table-cell-ink, var(--bs-ink-light));
|
|
4444
|
+
border-radius: var(--bs-space-2);
|
|
4445
|
+
border: 1px solid var(--bs-border-base);
|
|
4446
|
+
}
|
|
4447
|
+
:where(.bs-table-wrap-header, .bs-table-wrap-footer) {
|
|
4448
|
+
padding-block: var(--bs-space-3);
|
|
4449
|
+
padding-inline: var(--bs-table-cell-padding);
|
|
4450
|
+
background: var(--bs-bg-medium);
|
|
4451
|
+
border-color: inherit;
|
|
4452
|
+
}
|
|
4453
|
+
:where(.bs-table-wrap-header) {
|
|
4454
|
+
border-bottom-width: 1px;
|
|
4455
|
+
}
|
|
4456
|
+
:where(.bs-table-wrap-footer) {
|
|
4457
|
+
border-top-width: 1px;
|
|
4458
|
+
}
|
|
4459
|
+
/* ------ TABLE ------ */
|
|
4460
|
+
.bs-table-scroll-wrap {
|
|
4461
|
+
flex: 1;
|
|
4462
|
+
border-color: inherit;
|
|
4463
|
+
overflow: auto;
|
|
4464
|
+
overscroll-behavior: none;
|
|
4465
|
+
}
|
|
4466
|
+
.bs-table {
|
|
4467
|
+
display: grid;
|
|
4468
|
+
grid-template-columns: var(--bs-table-col-widths);
|
|
4469
|
+
}
|
|
4470
|
+
:where(.bs-table) {
|
|
4471
|
+
border-color: inherit;
|
|
4472
|
+
}
|
|
4473
|
+
/* ------ HEADER ROWGROUP ------ */
|
|
4474
|
+
.bs-table-header-rowgroup {
|
|
4475
|
+
grid-column: 1 / -1;
|
|
4476
|
+
grid-row: span var(--bs-table-header-row-count);
|
|
4477
|
+
display: grid;
|
|
4478
|
+
grid-template-columns: subgrid;
|
|
4479
|
+
grid-template-rows: subgrid;
|
|
4480
|
+
border-color: inherit;
|
|
4481
|
+
}
|
|
4482
|
+
.bs-table-header-rowgroup-freeze {
|
|
4483
|
+
position: sticky;
|
|
4484
|
+
top: 0;
|
|
4485
|
+
z-index: 1;
|
|
4486
|
+
|
|
4487
|
+
.bs-table:not(.bs-table-border-none) & {
|
|
4488
|
+
box-shadow: 0 3px 0 rgba(0, 0, 0, .03);
|
|
4489
|
+
}
|
|
4490
|
+
}
|
|
4491
|
+
/* ------ BODY ROWGROUP ------ */
|
|
4492
|
+
.bs-table-body-rowgroup {
|
|
4493
|
+
grid-column: 1 / -1;
|
|
4494
|
+
grid-row: span var(--bs-table-body-row-count);
|
|
4495
|
+
display: grid;
|
|
4496
|
+
grid-template-columns: subgrid;
|
|
4497
|
+
grid-template-rows: subgrid;
|
|
4498
|
+
border-color: inherit;
|
|
4499
|
+
}
|
|
4500
|
+
/* ------ FOOTER ROWGROUP ------ */
|
|
4501
|
+
.bs-table-footer-rowgroup {
|
|
4502
|
+
grid-column: 1 / -1;
|
|
4503
|
+
grid-row: span var(--bs-table-footer-row-count);
|
|
4504
|
+
display: grid;
|
|
4505
|
+
grid-template-columns: subgrid;
|
|
4506
|
+
grid-template-rows: subgrid;
|
|
4507
|
+
border-color: inherit;
|
|
4508
|
+
}
|
|
4509
|
+
.bs-table-footer-rowgroup-freeze {
|
|
4510
|
+
position: sticky;
|
|
4511
|
+
bottom: 0;
|
|
4512
|
+
|
|
4513
|
+
.bs-table:not(.bs-table-border-none) & {
|
|
4514
|
+
box-shadow: 0 -3px 0 rgba(0, 0, 0, .03);
|
|
4515
|
+
}
|
|
4516
|
+
}
|
|
4517
|
+
/* ------ ROWS ------ */
|
|
4518
|
+
.bs-table-row {
|
|
4519
|
+
grid-column: 1 / -1;
|
|
4520
|
+
}
|
|
4521
|
+
:where(.bs-table-row) {
|
|
4522
|
+
background: var(--bs-bg-base);
|
|
4523
|
+
border-color: inherit;
|
|
4524
|
+
}
|
|
4525
|
+
:where(.bs-table-header-rowgroup .bs-table-row) {
|
|
4526
|
+
background: var(--bs-bg-light);
|
|
4527
|
+
}
|
|
4528
|
+
:where(.bs-table-row:has(.bs-table-head-cell, .bs-table-cell)) {
|
|
4529
|
+
display: grid;
|
|
4530
|
+
grid-template-columns: subgrid;
|
|
4531
|
+
}
|
|
4532
|
+
/* ------ FROZEN COLS ------ */
|
|
4533
|
+
.bs-table-cols-frozen-left {
|
|
4534
|
+
position: sticky;
|
|
4535
|
+
left: 0;
|
|
4536
|
+
grid-column: span var(--bs-table-frozen-left-count);
|
|
4537
|
+
display: grid;
|
|
4538
|
+
grid-template-columns: subgrid;
|
|
4539
|
+
background: inherit;
|
|
4540
|
+
border-color: inherit;
|
|
4541
|
+
|
|
4542
|
+
.bs-table:not(.bs-table-border-none) & {
|
|
4543
|
+
box-shadow: 3px 0 0 rgba(0, 0, 0, .03);
|
|
4544
|
+
}
|
|
4545
|
+
}
|
|
4546
|
+
.bs-table-cols-frozen-right {
|
|
4547
|
+
position: sticky;
|
|
4548
|
+
right: 0;
|
|
4549
|
+
grid-column: span var(--bs-table-frozen-right-count);
|
|
4550
|
+
display: grid;
|
|
4551
|
+
grid-template-columns: subgrid;
|
|
4552
|
+
background: inherit;
|
|
4553
|
+
border-color: inherit;
|
|
4554
|
+
|
|
4555
|
+
.bs-table:not(.bs-table-border-none) & {
|
|
4556
|
+
box-shadow: -3px 0 0 rgba(0, 0, 0, .03);
|
|
4557
|
+
}
|
|
4558
|
+
}
|
|
4559
|
+
/* ------ CELLS ------ */
|
|
4560
|
+
:where(.bs-table-head-cell) {
|
|
4561
|
+
color: var(--bs-table-head-cell-ink, var(--bs-ink-base));
|
|
4562
|
+
font-weight: var(--bs-font-bold);
|
|
4563
|
+
border-color: inherit;
|
|
4564
|
+
}
|
|
4565
|
+
/* Couldn't use :where due to Blue Steel reset styles on <button> imposing font-size.
|
|
4566
|
+
Adding inherit in case consumer does custom header cell styles */
|
|
4567
|
+
.bs-table-head-cell .bs-sort-toggle {
|
|
4568
|
+
font-size: inherit;
|
|
4569
|
+
font-weight: var(--bs-font-bold);
|
|
4570
|
+
color: inherit;
|
|
4571
|
+
line-height: inherit;
|
|
4572
|
+
letter-spacing: inherit;
|
|
4573
|
+
}
|
|
4574
|
+
:where(.bs-table-cell) {
|
|
4575
|
+
border-color: inherit;
|
|
4576
|
+
}
|
|
4577
|
+
/* ------ PROP: CELL-PADDING ------ */
|
|
4578
|
+
:root {
|
|
4579
|
+
--bs-table-cell-padding-xs: var(--bs-space-2);
|
|
4580
|
+
--bs-table-cell-padding-sm: var(--bs-space-3);
|
|
4581
|
+
--bs-table-cell-padding-md: var(--bs-space-4);
|
|
4582
|
+
--bs-table-cell-padding-lg: var(--bs-space-6);
|
|
4583
|
+
--bs-table-cell-padding-xl: var(--bs-space-8);
|
|
4584
|
+
}
|
|
4585
|
+
:where(.bs-table-head-cell, .bs-table-cell) {
|
|
4586
|
+
padding: var(--bs-table-cell-padding);
|
|
4587
|
+
}
|
|
4588
|
+
/* ------ PROP: TRUNCATE ------ */
|
|
4589
|
+
:where(.bs-table-truncate):where(.bs-table-head-cell, .bs-table-cell) {
|
|
4590
|
+
overflow: hidden;
|
|
4591
|
+
text-overflow: ellipsis;
|
|
4592
|
+
white-space: nowrap;
|
|
4593
|
+
}
|
|
4594
|
+
/* ------ PROP: STRIPED ROWS ------ */
|
|
4595
|
+
:where(.bs-table-striped .bs-table-body-rowgroup .bs-table-row:nth-child(even)) {
|
|
4596
|
+
background: var(--bs-bg-light);
|
|
4597
|
+
}
|
|
4598
|
+
/* ------ PROP: ROW HOVER ------ */
|
|
4599
|
+
:where(.bs-table-row-hover .bs-table-body-rowgroup .bs-table-row:hover) {
|
|
4600
|
+
background: var(--bs-table-row-hover, var(--bs-bg-light));
|
|
4601
|
+
transition: background-color 200ms;
|
|
4602
|
+
}
|
|
4603
|
+
/* ------ PROP: BORDERS ------ */
|
|
4604
|
+
/* -- borders="rows" -- */
|
|
4605
|
+
:where(.bs-table-border-rows) :where(.bs-table-row) {
|
|
4606
|
+
border-bottom-width: 1px;
|
|
4607
|
+
}
|
|
4608
|
+
/* -- borders="cols" -- */
|
|
4609
|
+
/* setting following cell's left border instead of each cell's right, so Table's left/right border is easier for consumer to override with utility classes */
|
|
4610
|
+
:where(.bs-table-border-cols) :where(.bs-table-head-cell + .bs-table-head-cell, .bs-table-cell + .bs-table-cell) {
|
|
4611
|
+
border-left-width: 1px;
|
|
4612
|
+
}
|
|
4613
|
+
.bs-table-border-cols .bs-table-header-rowgroup {
|
|
4614
|
+
border-bottom-width: 1px;
|
|
4615
|
+
}
|
|
4616
|
+
/* -- borders="grid" -- */
|
|
4617
|
+
:where(.bs-table-border-grid) :where(.bs-table-row) {
|
|
4618
|
+
border-bottom-width: 1px;
|
|
4619
|
+
}
|
|
4620
|
+
/* setting following cell's left border instead of each cell's right, so Table's left/right border is easier for consumer to override with utility classes */
|
|
4621
|
+
:where(.bs-table-border-grid) :where(.bs-table-head-cell + .bs-table-head-cell, .bs-table-cell + .bs-table-cell) {
|
|
4622
|
+
border-left-width: 1px;
|
|
4623
|
+
}
|
|
4624
|
+
/* -- borders="frozen" -- */
|
|
4625
|
+
.bs-table-border-frozen .bs-table-header-rowgroup-freeze {
|
|
4626
|
+
border-bottom-width: 1px;
|
|
4627
|
+
}
|
|
4628
|
+
/* -- frozen col and footer-rowgroup sections will always show border, unless borders="none" -- */
|
|
4629
|
+
/* (header-rowgroup is not included below since TableRow bottom border covers most cases) */
|
|
4630
|
+
.bs-table:not(.bs-table-border-none) .bs-table-cols-frozen-left {
|
|
4631
|
+
border-right-width: 1px;
|
|
4632
|
+
}
|
|
4633
|
+
.bs-table:not(.bs-table-border-none) .bs-table-cols-frozen-right {
|
|
4634
|
+
border-left-width: 1px;
|
|
4635
|
+
}
|
|
4636
|
+
.bs-table:not(.bs-table-border-none) .bs-table-footer-rowgroup-freeze {
|
|
4637
|
+
border-top-width: 1px;
|
|
4638
|
+
}
|
|
4639
|
+
/* turn off last row's bottom border, since it would double-up with Table's border */
|
|
4640
|
+
:where(.bs-table-body-rowgroup, .bs-table-footer-rowgroup) .bs-table-row:last-of-type {
|
|
4641
|
+
border-bottom-width: 0;
|
|
4642
|
+
}
|
|
4643
|
+
/* ------ TABLE COLUMN RESIZER ------ */
|
|
4644
|
+
.bs-table-col-resizer {
|
|
4645
|
+
position: fixed; /* fixed instead of absolute, due to using coordinates from .getBoundingClientRect() */
|
|
4646
|
+
top: 0;
|
|
4647
|
+
left: -8px;
|
|
4648
|
+
bottom: 0;
|
|
4649
|
+
width: 15px; /* includes 5px resizer handle width + 5px of extra hover target area on left and right of handle */
|
|
4650
|
+
cursor: col-resize;
|
|
4651
|
+
touch-action: none;
|
|
4652
|
+
z-index: var(--bs-table-col-resizer-z, 10);
|
|
4653
|
+
transform: translate(var(--bs-table-col-resizer-x), var(--bs-table-col-resizer-y));
|
|
4654
|
+
|
|
4655
|
+
/* resizer handle and vertical line set-up */
|
|
4656
|
+
&:before,
|
|
4657
|
+
&::after {
|
|
4658
|
+
content: "";
|
|
4659
|
+
position: absolute;
|
|
4660
|
+
top: 0;
|
|
4661
|
+
left: 0;
|
|
4662
|
+
background: var(--bs-table-col-resizer-color, var(--bs-blue-base));
|
|
4663
|
+
}
|
|
4664
|
+
|
|
4665
|
+
/* resizer handle */
|
|
4666
|
+
&::after {
|
|
4667
|
+
left: 5px;
|
|
4668
|
+
width: 5px;
|
|
4669
|
+
height: var(--bs-table-col-resizer-handle-height);
|
|
4670
|
+
}
|
|
4671
|
+
|
|
4672
|
+
/* resizer vertical line/tail */
|
|
4673
|
+
&::before {
|
|
4674
|
+
left: 7px;
|
|
4675
|
+
width: 1px;
|
|
4676
|
+
height: var(--bs-table-col-resizer-tail-height);
|
|
4677
|
+
display: none;
|
|
4678
|
+
}
|
|
4679
|
+
|
|
4680
|
+
&.bs-table-col-resizer-active::before {
|
|
4681
|
+
display: block;
|
|
4682
|
+
}
|
|
4683
|
+
}
|
|
4684
|
+
/* ------ SORT TOGGLE ------ */
|
|
4685
|
+
/* Override Blue Steel CSS: It adds "relative" to buttons by default, which was causing an overlap issue when a Table with frozen, sortable cols scrolled horizontally */
|
|
4686
|
+
.bs-sort-toggle {
|
|
4687
|
+
position: static;
|
|
4688
|
+
}
|
|
4689
|
+
/* Using :where to lower specificity so consumers can use utility classes to override */
|
|
4690
|
+
:where(.bs-sort-toggle) {
|
|
4691
|
+
display: inline-flex;
|
|
4692
|
+
align-items: center;
|
|
4693
|
+
gap: var(--bs-space-2);
|
|
4694
|
+
cursor: pointer;
|
|
4695
|
+
}
|
|
4696
|
+
:where(.bs-sort-toggle .bs-icon) {
|
|
4697
|
+
flex-shrink: 0;
|
|
4698
|
+
}
|
|
4425
4699
|
table {
|
|
4426
4700
|
border-collapse: collapse;
|
|
4427
4701
|
border-spacing: 0;
|
|
@@ -4769,8 +5043,8 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
4769
5043
|
/* Active States */
|
|
4770
5044
|
:where(.bs-tooltip:not([data-position])):hover :where(.bs-tooltip-text),
|
|
4771
5045
|
:where(.bs-tooltip[data-position="top"]):hover :where(.bs-tooltip-text),
|
|
4772
|
-
:where(.bs-tooltip:not([data-position])):focus-
|
|
4773
|
-
:where(.bs-tooltip[data-position="top"]):focus-
|
|
5046
|
+
:where(.bs-tooltip:not([data-position])):has(:focus-visible) :where(.bs-tooltip-text),
|
|
5047
|
+
:where(.bs-tooltip[data-position="top"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
4774
5048
|
:where(.bs-tooltip:not([data-position]))[data-shown] :where(.bs-tooltip-text),
|
|
4775
5049
|
:where(.bs-tooltip[data-position="top"])[data-shown] :where(.bs-tooltip-text) {
|
|
4776
5050
|
opacity: 1;
|
|
@@ -4785,7 +5059,7 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
4785
5059
|
}
|
|
4786
5060
|
/* Active States */
|
|
4787
5061
|
:where(.bs-tooltip[data-position="bottom"]):hover :where(.bs-tooltip-text),
|
|
4788
|
-
:where(.bs-tooltip[data-position="bottom"]):focus-
|
|
5062
|
+
:where(.bs-tooltip[data-position="bottom"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
4789
5063
|
:where(.bs-tooltip[data-position="bottom"])[data-shown] :where(.bs-tooltip-text) {
|
|
4790
5064
|
opacity: 1;
|
|
4791
5065
|
transform: translateX(-50%) scale(1);
|
|
@@ -4799,7 +5073,7 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
4799
5073
|
}
|
|
4800
5074
|
/* Active States */
|
|
4801
5075
|
:where(.bs-tooltip[data-position="left"]):hover :where(.bs-tooltip-text),
|
|
4802
|
-
:where(.bs-tooltip[data-position="left"]):focus-
|
|
5076
|
+
:where(.bs-tooltip[data-position="left"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
4803
5077
|
:where(.bs-tooltip[data-position="left"])[data-shown] :where(.bs-tooltip-text) {
|
|
4804
5078
|
opacity: 1;
|
|
4805
5079
|
transform: translateY(-50%) scale(1);
|
|
@@ -4812,7 +5086,7 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
4812
5086
|
transform: translateY(-50%) scale(0);
|
|
4813
5087
|
}
|
|
4814
5088
|
:where(.bs-tooltip[data-position="right"]):hover :where(.bs-tooltip-text),
|
|
4815
|
-
:where(.bs-tooltip[data-position="right"]):focus-
|
|
5089
|
+
:where(.bs-tooltip[data-position="right"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
4816
5090
|
:where(.bs-tooltip[data-position="right"])[data-shown] :where(.bs-tooltip-text) {
|
|
4817
5091
|
opacity: 1;
|
|
4818
5092
|
transform: translateY(-50%) scale(1);
|
|
@@ -4847,10 +5121,10 @@ table:where([data-sticky^="left"]) :is(td:first-child, th:first-child) {
|
|
|
4847
5121
|
:where(.bs-tooltip[data-position="top-right"]):hover :where(.bs-tooltip-text),
|
|
4848
5122
|
:where(.bs-tooltip[data-position="bottom-left"]):hover :where(.bs-tooltip-text),
|
|
4849
5123
|
:where(.bs-tooltip[data-position="bottom-right"]):hover :where(.bs-tooltip-text),
|
|
4850
|
-
:where(.bs-tooltip[data-position="top-left"]):focus-
|
|
4851
|
-
:where(.bs-tooltip[data-position="top-right"]):focus-
|
|
4852
|
-
:where(.bs-tooltip[data-position="bottom-left"]):focus-
|
|
4853
|
-
:where(.bs-tooltip[data-position="bottom-right"]):focus-
|
|
5124
|
+
:where(.bs-tooltip[data-position="top-left"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
5125
|
+
:where(.bs-tooltip[data-position="top-right"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
5126
|
+
:where(.bs-tooltip[data-position="bottom-left"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
5127
|
+
:where(.bs-tooltip[data-position="bottom-right"]):has(:focus-visible) :where(.bs-tooltip-text),
|
|
4854
5128
|
:where(.bs-tooltip[data-position="top-left"]:not([data-shown="false"]))[data-shown] :where(.bs-tooltip-text),
|
|
4855
5129
|
:where(.bs-tooltip[data-position="top-right"]:not([data-shown="false"]))[data-shown] :where(.bs-tooltip-text),
|
|
4856
5130
|
:where(.bs-tooltip[data-position="bottom-left"]:not([data-shown="false"]))[data-shown] :where(.bs-tooltip-text),
|
|
@@ -4864,12 +5138,25 @@ Don't display unless data-shown is present
|
|
|
4864
5138
|
This must go last to properly override the other classes
|
|
4865
5139
|
*/
|
|
4866
5140
|
:where(.bs-tooltip[data-disabled]:not([data-disabled="false"]):not([data-shown])):hover :where(.bs-tooltip-text),
|
|
4867
|
-
:where(.bs-tooltip[data-disabled]:not([data-disabled="false"]):not([data-shown])):focus-
|
|
5141
|
+
:where(.bs-tooltip[data-disabled]:not([data-disabled="false"]):not([data-shown])):has(:focus-visible) :where(.bs-tooltip-text) {
|
|
4868
5142
|
opacity: 0;
|
|
4869
5143
|
transform: scale(0);
|
|
4870
5144
|
}
|
|
4871
5145
|
:where(.bs-tooltip[data-shown="false"][data-disabled]:not([data-disabled="false"])):hover :where(.bs-tooltip-text),
|
|
4872
|
-
:where(.bs-tooltip[data-shown="false"][data-disabled]:not([data-disabled="false"])):focus-
|
|
5146
|
+
:where(.bs-tooltip[data-shown="false"][data-disabled]:not([data-disabled="false"])):has(:focus-visible) :where(.bs-tooltip-text) {
|
|
4873
5147
|
opacity: 0;
|
|
4874
5148
|
transform: scale(0);
|
|
4875
5149
|
}
|
|
5150
|
+
/* -------------------- COMPONENT-SPECIFIC STYLES -------------------- */
|
|
5151
|
+
.bs-tooltip :where(.bs-tooltip-text.escaped) {
|
|
5152
|
+
opacity: 0;
|
|
5153
|
+
transform: scale(0.5);
|
|
5154
|
+
}
|
|
5155
|
+
.bs-tooltip :where(.bs-tooltip-text.escaped-x) {
|
|
5156
|
+
opacity: 0;
|
|
5157
|
+
transform: translateX(-50%) scale(0.5);
|
|
5158
|
+
}
|
|
5159
|
+
.bs-tooltip :where(.bs-tooltip-text.escaped-y) {
|
|
5160
|
+
opacity: 0;
|
|
5161
|
+
transform: translateY(-50%) scale(0.5);
|
|
5162
|
+
}
|