@vantagecompute/docusaurus-theme 0.4.8 → 0.4.9
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vantagecompute/docusaurus-theme",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.9",
|
|
4
4
|
"description": "Shared Vantage Compute Docusaurus theme: design system, brand assets, and common theme overrides for all vantagecompute documentation sites.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "lib/index.cjs",
|
package/src/css/custom.css
CHANGED
|
@@ -366,20 +366,49 @@ div[class^='codeBlockTitle'] {
|
|
|
366
366
|
}
|
|
367
367
|
|
|
368
368
|
/* ── Tables ────────────────────────────────────────────────────────── */
|
|
369
|
+
/* Every markdown table renders inside `.table-scroll` (src/theme/MDXComponents),
|
|
370
|
+
which carries the rounded frame and scrolls horizontally. The table itself
|
|
371
|
+
keeps its natural width. The old `display: table; overflow: hidden` on the
|
|
372
|
+
table removed Docusaurus's own overflow scrolling, and a four-column
|
|
373
|
+
reference table on a 345px phone column squeezed to 61px columns with
|
|
374
|
+
171px rows. Cells are capped at 60ch so one long description cannot force
|
|
375
|
+
a 3000px scroll. */
|
|
376
|
+
.markdown .table-scroll,
|
|
377
|
+
article .table-scroll {
|
|
378
|
+
margin: 14px 0;
|
|
379
|
+
overflow-x: auto;
|
|
380
|
+
-webkit-overflow-scrolling: touch;
|
|
381
|
+
background: var(--ifm-background-surface-color);
|
|
382
|
+
border: 1px solid var(--ink-100);
|
|
383
|
+
border-radius: 8px;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
.markdown .table-scroll:focus-visible,
|
|
387
|
+
article .table-scroll:focus-visible {
|
|
388
|
+
outline: 2px solid var(--ifm-color-primary);
|
|
389
|
+
outline-offset: 2px;
|
|
390
|
+
}
|
|
391
|
+
|
|
369
392
|
.markdown table,
|
|
370
393
|
article table {
|
|
371
394
|
display: table;
|
|
372
395
|
width: 100%;
|
|
396
|
+
min-width: max-content;
|
|
373
397
|
border-collapse: collapse;
|
|
374
398
|
font-size: 13px;
|
|
375
|
-
margin:
|
|
399
|
+
margin: 0;
|
|
376
400
|
background: var(--ifm-background-surface-color);
|
|
377
|
-
border:
|
|
378
|
-
border-radius: 8px;
|
|
379
|
-
overflow: hidden;
|
|
401
|
+
border: 0;
|
|
380
402
|
box-shadow: none;
|
|
381
403
|
}
|
|
382
404
|
|
|
405
|
+
.markdown table td,
|
|
406
|
+
.markdown table th,
|
|
407
|
+
article table td,
|
|
408
|
+
article table th {
|
|
409
|
+
max-width: 60ch;
|
|
410
|
+
}
|
|
411
|
+
|
|
383
412
|
.markdown table th,
|
|
384
413
|
article table th {
|
|
385
414
|
font-weight: 600;
|
|
@@ -441,7 +470,11 @@ article table td code {
|
|
|
441
470
|
}
|
|
442
471
|
|
|
443
472
|
.markdown li::marker {
|
|
444
|
-
|
|
473
|
+
/* ink-300 was 2.5:1 against the page in both modes. ink-400 is the ramp's
|
|
474
|
+
fixed point (#6b7494 in both modes) and clears the 3:1 non-text floor:
|
|
475
|
+
4.6:1 light, 4.1:1 dark. It stays decoration-only; see the note on
|
|
476
|
+
.sidebar-section-label for why it is not used for text. */
|
|
477
|
+
color: var(--ink-400);
|
|
445
478
|
}
|
|
446
479
|
|
|
447
480
|
/* Tab lists should have no left padding (override .markdown ul) */
|
|
@@ -450,6 +483,17 @@ article table td code {
|
|
|
450
483
|
margin-bottom: 0;
|
|
451
484
|
}
|
|
452
485
|
|
|
486
|
+
/* Infima scrolls the strip, and a strip that ends flush with the edge hides
|
|
487
|
+
the tabs past it with nothing to say they exist: two of six on a phone.
|
|
488
|
+
Wrap instead, so every tab is on screen in at most two rows. */
|
|
489
|
+
@media (max-width: 996px) {
|
|
490
|
+
.markdown .tabs {
|
|
491
|
+
flex-wrap: wrap;
|
|
492
|
+
overflow-x: visible;
|
|
493
|
+
row-gap: 2px;
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
|
|
453
497
|
/* ── Provider showcase (On-Premises clusters) ───────────────────────── */
|
|
454
498
|
.provider-showcase {
|
|
455
499
|
display: grid;
|
|
@@ -645,7 +689,7 @@ html[data-theme='dark'] .provider-showcase-item {
|
|
|
645
689
|
.guide-meta-label {
|
|
646
690
|
display: block;
|
|
647
691
|
margin-bottom: 0.25rem;
|
|
648
|
-
color: var(--ink-
|
|
692
|
+
color: var(--ink-500);
|
|
649
693
|
font-size: 0.75rem;
|
|
650
694
|
font-weight: 700;
|
|
651
695
|
letter-spacing: 0.08em;
|
|
@@ -877,8 +921,66 @@ html[data-theme='dark'] .provider-showcase-item {
|
|
|
877
921
|
color: var(--vantage-navbar-link-hover) !important;
|
|
878
922
|
}
|
|
879
923
|
|
|
880
|
-
|
|
881
|
-
|
|
924
|
+
/* The logo used to be hidden at <=1024px, which with an empty navbar.title
|
|
925
|
+
left every phone and tablet with no brand at all. Keep it; shrink it a
|
|
926
|
+
little where the hamburger shares the row. */
|
|
927
|
+
@media (max-width: 996px) {
|
|
928
|
+
.navbar__logo {
|
|
929
|
+
height: 28px;
|
|
930
|
+
}
|
|
931
|
+
}
|
|
932
|
+
|
|
933
|
+
/* Touch targets below the layout break. WCAG 2.5.8 asks for 24px minimum;
|
|
934
|
+
44px is the comfortable size. The drawer close button measured 21px,
|
|
935
|
+
sidebar rows and carets 30px, the hamburger 30px. Padding, not larger
|
|
936
|
+
glyphs, so the visuals do not change. Infima's drawer is also 83vw, which
|
|
937
|
+
on a 768px tablet is a 637px menu for a list of 14px rows. */
|
|
938
|
+
@media (max-width: 996px) {
|
|
939
|
+
:root {
|
|
940
|
+
--ifm-navbar-sidebar-width: min(83vw, 360px);
|
|
941
|
+
}
|
|
942
|
+
|
|
943
|
+
.navbar__toggle {
|
|
944
|
+
padding: 7px;
|
|
945
|
+
margin: -7px 0;
|
|
946
|
+
}
|
|
947
|
+
|
|
948
|
+
.navbar-sidebar__close {
|
|
949
|
+
padding: 12px;
|
|
950
|
+
margin-right: -12px;
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
.navbar-sidebar .menu__link {
|
|
954
|
+
padding: 10px 12px;
|
|
955
|
+
}
|
|
956
|
+
|
|
957
|
+
.navbar-sidebar .menu__caret {
|
|
958
|
+
padding: 12px 10px;
|
|
959
|
+
}
|
|
960
|
+
|
|
961
|
+
.breadcrumbs__link {
|
|
962
|
+
display: inline-flex;
|
|
963
|
+
align-items: center;
|
|
964
|
+
min-height: 32px;
|
|
965
|
+
}
|
|
966
|
+
|
|
967
|
+
.theme-doc-toc-mobile > button {
|
|
968
|
+
min-height: 44px;
|
|
969
|
+
}
|
|
970
|
+
}
|
|
971
|
+
|
|
972
|
+
/* Two 165px pagination cards side by side on a phone truncate their titles.
|
|
973
|
+
Infima pins the next card to `grid-column: 2 / 3`, which would open an
|
|
974
|
+
implicit second track even with one column declared, so it is reset too. */
|
|
975
|
+
@media (max-width: 600px) {
|
|
976
|
+
.pagination-nav {
|
|
977
|
+
grid-template-columns: 1fr;
|
|
978
|
+
}
|
|
979
|
+
|
|
980
|
+
.pagination-nav__link--next {
|
|
981
|
+
grid-column: auto;
|
|
982
|
+
text-align: left;
|
|
983
|
+
}
|
|
882
984
|
}
|
|
883
985
|
|
|
884
986
|
/* ── Sidebar (left) ────────────────────────────────────────────────── */
|
|
@@ -1029,7 +1131,7 @@ html[data-theme='dark'] .provider-showcase-item {
|
|
|
1029
1131
|
font-weight: 700;
|
|
1030
1132
|
text-transform: uppercase;
|
|
1031
1133
|
letter-spacing: 0.08em;
|
|
1032
|
-
color: var(--ink-
|
|
1134
|
+
color: var(--ink-500);
|
|
1033
1135
|
margin-bottom: 10px;
|
|
1034
1136
|
content: 'On this page';
|
|
1035
1137
|
}
|
|
@@ -1085,7 +1187,7 @@ html[data-theme='dark'] .provider-showcase-item {
|
|
|
1085
1187
|
}
|
|
1086
1188
|
|
|
1087
1189
|
.breadcrumbs__link {
|
|
1088
|
-
color: var(--ink-
|
|
1190
|
+
color: var(--ink-500);
|
|
1089
1191
|
font-weight: 500;
|
|
1090
1192
|
border-bottom: 0 !important;
|
|
1091
1193
|
}
|
|
@@ -1210,7 +1312,7 @@ a.button--secondary:focus {
|
|
|
1210
1312
|
}
|
|
1211
1313
|
|
|
1212
1314
|
.pagination-nav__sublabel {
|
|
1213
|
-
color: var(--ink-
|
|
1315
|
+
color: var(--ink-500);
|
|
1214
1316
|
font-size: 11px;
|
|
1215
1317
|
text-transform: uppercase;
|
|
1216
1318
|
letter-spacing: 0.06em;
|
|
@@ -1378,7 +1480,7 @@ details summary[onclick]:hover {
|
|
|
1378
1480
|
--docsearch-spacing: 12px;
|
|
1379
1481
|
--docsearch-icon-stroke-width: 1.4;
|
|
1380
1482
|
--docsearch-highlight-color: var(--iris-700);
|
|
1381
|
-
--docsearch-muted-color: var(--ink-
|
|
1483
|
+
--docsearch-muted-color: var(--ink-500);
|
|
1382
1484
|
/* Backdrop */
|
|
1383
1485
|
--docsearch-container-background: rgba(11, 16, 32, 0.48);
|
|
1384
1486
|
/* Modal */
|
|
@@ -1407,7 +1509,7 @@ details summary[onclick]:hover {
|
|
|
1407
1509
|
--docsearch-primary-color: #818cf8;
|
|
1408
1510
|
--docsearch-text-color: var(--ink-700);
|
|
1409
1511
|
--docsearch-highlight-color: #818cf8;
|
|
1410
|
-
--docsearch-muted-color: var(--ink-
|
|
1512
|
+
--docsearch-muted-color: var(--ink-500);
|
|
1411
1513
|
/* Backdrop */
|
|
1412
1514
|
--docsearch-container-background: rgba(0, 0, 0, 0.65);
|
|
1413
1515
|
/* Modal */
|
|
@@ -1501,7 +1603,8 @@ button.DocSearch-Button {
|
|
|
1501
1603
|
.DocSearch-Button-Key {
|
|
1502
1604
|
background: transparent !important;
|
|
1503
1605
|
box-shadow: none !important;
|
|
1504
|
-
|
|
1606
|
+
/* .7 measured 3.91:1 on the keys' doubly tinted background; .85 is 5.1:1. */
|
|
1607
|
+
color: rgba(255, 255, 255, 0.85) !important;
|
|
1505
1608
|
font-family: var(--ifm-font-family-monospace) !important;
|
|
1506
1609
|
font-size: 10px !important;
|
|
1507
1610
|
font-weight: 500 !important;
|
|
@@ -1510,30 +1613,6 @@ button.DocSearch-Button {
|
|
|
1510
1613
|
line-height: 1 !important;
|
|
1511
1614
|
}
|
|
1512
1615
|
|
|
1513
|
-
/* Medium: hide AskAI, shrink search pill */
|
|
1514
|
-
@media (max-width: 1050px) {
|
|
1515
|
-
.navbar__items [data-navbar-ask-ai] { display: none !important; }
|
|
1516
|
-
|
|
1517
|
-
.DocSearch-Button {
|
|
1518
|
-
min-width: 180px !important;
|
|
1519
|
-
}
|
|
1520
|
-
}
|
|
1521
|
-
|
|
1522
|
-
/* Small: search pill drops to icon-only */
|
|
1523
|
-
@media (max-width: 800px) {
|
|
1524
|
-
.DocSearch-Button {
|
|
1525
|
-
min-width: 0 !important;
|
|
1526
|
-
width: 36px !important;
|
|
1527
|
-
padding: 0 !important;
|
|
1528
|
-
justify-content: center !important;
|
|
1529
|
-
}
|
|
1530
|
-
.DocSearch-Button-Placeholder,
|
|
1531
|
-
.DocSearch-Button-Keys { display: none !important; }
|
|
1532
|
-
.DocSearch-Button .DocSearch-Search-Icon {
|
|
1533
|
-
color: rgba(255, 255, 255, 0.9) !important;
|
|
1534
|
-
}
|
|
1535
|
-
}
|
|
1536
|
-
|
|
1537
1616
|
/* Dark mode: same squared style */
|
|
1538
1617
|
[data-theme='dark'] .DocSearch-Button,
|
|
1539
1618
|
[data-theme='dark'] button.DocSearch-Button {
|
|
@@ -1558,9 +1637,103 @@ button.DocSearch-Button {
|
|
|
1558
1637
|
}
|
|
1559
1638
|
|
|
1560
1639
|
[data-theme='dark'] .DocSearch-Button-Key {
|
|
1561
|
-
|
|
1640
|
+
/* Same 3.91:1 to 5.1:1 lift as the light rule above. */
|
|
1641
|
+
color: rgba(255, 255, 255, 0.85) !important;
|
|
1642
|
+
}
|
|
1643
|
+
|
|
1644
|
+
|
|
1645
|
+
/* ── Search below 1200: a bare magnifying glass ─────────────────────── */
|
|
1646
|
+
/* The 400px pill above is a desktop design. Below 1200 the navbar also holds
|
|
1647
|
+
the hamburger or the logo, Ask AI and the theme toggle, and below 997
|
|
1648
|
+
Docusaurus parks the search container in a zero-width absolute box at the
|
|
1649
|
+
right edge, which centred the pill on that edge and hung it 185px off
|
|
1650
|
+
screen. Here search is a 44px transparent box with an 18px white icon at
|
|
1651
|
+
85% opacity, the same treatment the Ask AI sparkle uses, so the two read
|
|
1652
|
+
as one row of icon controls. Selectors are (0,3,1) so they outrank the
|
|
1653
|
+
dark-mode rules above, which are (0,2,1). */
|
|
1654
|
+
@media (max-width: 1199px) {
|
|
1655
|
+
.navbar .navbar__items button.DocSearch-Button {
|
|
1656
|
+
width: 44px !important;
|
|
1657
|
+
min-width: 0 !important;
|
|
1658
|
+
height: 44px !important;
|
|
1659
|
+
padding: 0 !important;
|
|
1660
|
+
justify-content: center !important;
|
|
1661
|
+
position: static !important;
|
|
1662
|
+
left: auto !important;
|
|
1663
|
+
top: auto !important;
|
|
1664
|
+
transform: none !important;
|
|
1665
|
+
background: transparent !important;
|
|
1666
|
+
border: 0 !important;
|
|
1667
|
+
border-radius: 0 !important;
|
|
1668
|
+
box-shadow: none !important;
|
|
1669
|
+
color: rgba(255, 255, 255, 0.85) !important;
|
|
1670
|
+
}
|
|
1671
|
+
|
|
1672
|
+
.navbar .navbar__items button.DocSearch-Button:hover,
|
|
1673
|
+
.navbar .navbar__items button.DocSearch-Button:focus-visible {
|
|
1674
|
+
background: transparent !important;
|
|
1675
|
+
border-color: transparent !important;
|
|
1676
|
+
color: #ffffff !important;
|
|
1677
|
+
}
|
|
1678
|
+
|
|
1679
|
+
.navbar .navbar__items button.DocSearch-Button .DocSearch-Button-Container {
|
|
1680
|
+
flex: 0 0 auto;
|
|
1681
|
+
}
|
|
1682
|
+
|
|
1683
|
+
.navbar .navbar__items button.DocSearch-Button .DocSearch-Button-Placeholder,
|
|
1684
|
+
.navbar .navbar__items button.DocSearch-Button .DocSearch-Button-Keys {
|
|
1685
|
+
display: none !important;
|
|
1686
|
+
}
|
|
1687
|
+
|
|
1688
|
+
.navbar .navbar__items button.DocSearch-Button .DocSearch-Search-Icon {
|
|
1689
|
+
width: 18px !important;
|
|
1690
|
+
height: 18px !important;
|
|
1691
|
+
color: inherit !important;
|
|
1692
|
+
}
|
|
1693
|
+
|
|
1694
|
+
/* Let the container flow with the other right-hand items instead of
|
|
1695
|
+
Docusaurus's `position: absolute; right: 15px`. */
|
|
1696
|
+
.navbar .navbar__items--right [class*="navbarSearchContainer"] {
|
|
1697
|
+
position: static !important;
|
|
1698
|
+
right: auto !important;
|
|
1699
|
+
}
|
|
1700
|
+
|
|
1701
|
+
/* A site's Ask AI navbar item (data-navbar-ask-ai) takes the same box. It
|
|
1702
|
+
used to be hidden at <=1050px, which below 997 left phones with no
|
|
1703
|
+
persistent entry point to the assistant. */
|
|
1704
|
+
.navbar .navbar__items [data-navbar-ask-ai] {
|
|
1705
|
+
display: inline-flex !important;
|
|
1706
|
+
}
|
|
1707
|
+
|
|
1708
|
+
.navbar .navbar__items [data-navbar-ask-ai] button {
|
|
1709
|
+
width: 44px;
|
|
1710
|
+
height: 44px;
|
|
1711
|
+
}
|
|
1562
1712
|
}
|
|
1563
1713
|
|
|
1714
|
+
/* DocSearch goes full screen below 768. The modal keeps no radius there, the
|
|
1715
|
+
input is 16px so iOS does not zoom on focus, and the Cancel control and the
|
|
1716
|
+
result rows reach touch size. */
|
|
1717
|
+
@media (max-width: 768px) {
|
|
1718
|
+
.DocSearch-Container .DocSearch-Modal {
|
|
1719
|
+
border-radius: 0 !important;
|
|
1720
|
+
max-width: none !important;
|
|
1721
|
+
}
|
|
1722
|
+
|
|
1723
|
+
.DocSearch-Container .DocSearch-Input {
|
|
1724
|
+
font-size: 16px !important;
|
|
1725
|
+
}
|
|
1726
|
+
|
|
1727
|
+
.DocSearch-Container .DocSearch-Close {
|
|
1728
|
+
min-width: 44px;
|
|
1729
|
+
min-height: 44px;
|
|
1730
|
+
justify-content: center;
|
|
1731
|
+
}
|
|
1732
|
+
|
|
1733
|
+
.DocSearch-Container .DocSearch-Hit a {
|
|
1734
|
+
min-height: 48px;
|
|
1735
|
+
}
|
|
1736
|
+
}
|
|
1564
1737
|
/* ── Search modal ───────────────────────────────────────────────────── */
|
|
1565
1738
|
.DocSearch-Modal {
|
|
1566
1739
|
border-radius: 12px !important;
|
|
@@ -1583,7 +1756,7 @@ button.DocSearch-Button {
|
|
|
1583
1756
|
}
|
|
1584
1757
|
|
|
1585
1758
|
[data-theme='dark'] .DocSearch-Hit-source {
|
|
1586
|
-
color:
|
|
1759
|
+
color: var(--ink-500) !important;
|
|
1587
1760
|
}
|
|
1588
1761
|
|
|
1589
1762
|
.DocSearch-Form {
|
|
@@ -1733,7 +1906,7 @@ button.DocSearch-Button {
|
|
|
1733
1906
|
box-shadow: none !important;
|
|
1734
1907
|
border: 1px solid var(--ink-300) !important;
|
|
1735
1908
|
border-radius: 4px !important;
|
|
1736
|
-
color: var(--ink-
|
|
1909
|
+
color: var(--ink-500) !important;
|
|
1737
1910
|
font-family: var(--ifm-font-family-monospace) !important;
|
|
1738
1911
|
font-size: 10px !important;
|
|
1739
1912
|
padding: 2px 5px !important;
|
|
@@ -1744,12 +1917,12 @@ button.DocSearch-Button {
|
|
|
1744
1917
|
|
|
1745
1918
|
[data-theme='dark'] .DocSearch-Commands-Key {
|
|
1746
1919
|
border-color: #2a3157 !important;
|
|
1747
|
-
color:
|
|
1920
|
+
color: var(--ink-500) !important;
|
|
1748
1921
|
}
|
|
1749
1922
|
|
|
1750
1923
|
.DocSearch-Label {
|
|
1751
1924
|
font-size: 11px !important;
|
|
1752
|
-
color: var(--ink-
|
|
1925
|
+
color: var(--ink-500) !important;
|
|
1753
1926
|
}
|
|
1754
1927
|
|
|
1755
1928
|
/* Empty / no results state */
|
|
@@ -1846,12 +2019,18 @@ article {
|
|
|
1846
2019
|
*::-webkit-scrollbar-thumb:hover { background: var(--ink-300); }
|
|
1847
2020
|
|
|
1848
2021
|
/* ── Sidebar section labels (Products / Platform / Reference / About) ─ */
|
|
2022
|
+
/* ink-500, not ink-400, for every muted label in the theme. ink-400 is the
|
|
2023
|
+
ramp's fixed point, #6b7494 in both modes, and as text it measures 4.46:1
|
|
2024
|
+
on the light page, 4.24:1 on a light ink-50 surface and 3.68 to 4.10:1
|
|
2025
|
+
everywhere in dark, all under the 4.5:1 floor. ink-500 is mirrored
|
|
2026
|
+
(#4a5375 light, #9aa1bd dark) and clears 6.6:1 on every surface it is
|
|
2027
|
+
used on. ink-400 stays for decoration only: markers, separators, chevrons. */
|
|
1849
2028
|
.sidebar-section-label {
|
|
1850
2029
|
font-size: 14px;
|
|
1851
2030
|
font-weight: 700;
|
|
1852
2031
|
text-transform: uppercase;
|
|
1853
2032
|
letter-spacing: 0.08em;
|
|
1854
|
-
color: var(--ink-
|
|
2033
|
+
color: var(--ink-500);
|
|
1855
2034
|
padding: 14px 0 6px;
|
|
1856
2035
|
margin-top: 8px;
|
|
1857
2036
|
border-top: 1px solid var(--ink-100);
|
|
@@ -1863,7 +2042,7 @@ article {
|
|
|
1863
2042
|
padding: 10px 0 4px;
|
|
1864
2043
|
text-transform: uppercase;
|
|
1865
2044
|
letter-spacing: 0.06em;
|
|
1866
|
-
color: var(--ink-
|
|
2045
|
+
color: var(--ink-500);
|
|
1867
2046
|
text-align: left;
|
|
1868
2047
|
}
|
|
1869
2048
|
.menu > .menu__list > li:first-child .sidebar-section-label,
|
|
@@ -1937,17 +2116,55 @@ article {
|
|
|
1937
2116
|
}
|
|
1938
2117
|
}
|
|
1939
2118
|
|
|
1940
|
-
/*
|
|
1941
|
-
.
|
|
1942
|
-
|
|
2119
|
+
/* A site with no navbar.title still gets the version badge, alone in the
|
|
2120
|
+
centre. Between 997 and 1024 that is a bare git hash beside the logo on a
|
|
2121
|
+
tablet; hide it there. On wider screens the lone centred badge stays. */
|
|
2122
|
+
@media (max-width: 1024px) {
|
|
2123
|
+
.navbar__center-title:not(:has(.navbar__center-title-text)) {
|
|
2124
|
+
display: none;
|
|
2125
|
+
}
|
|
1943
2126
|
}
|
|
1944
2127
|
|
|
1945
|
-
|
|
1946
|
-
|
|
2128
|
+
/* ── Tablet landscape (997 to 1199) ────────────────────────────────── */
|
|
2129
|
+
/* Docusaurus treats this band as desktop: a 300px sidebar, a right-hand TOC
|
|
2130
|
+
column and the article between them. At 1024 the article is 505px and the
|
|
2131
|
+
TOC has about 60px of text, so headings break letter by letter. Treat the
|
|
2132
|
+
band as a wide tablet: a narrower sidebar, and the collapsible TOC in the
|
|
2133
|
+
article instead of the right column. The column is hidden through :has so
|
|
2134
|
+
the article regains the 25% it held. */
|
|
2135
|
+
@media (min-width: 997px) and (max-width: 1199px) {
|
|
2136
|
+
.theme-doc-sidebar-container,
|
|
2137
|
+
[class*="docsWrapper"] {
|
|
2138
|
+
--doc-sidebar-width: 260px;
|
|
2139
|
+
}
|
|
2140
|
+
|
|
2141
|
+
.row > .col.col--3:has(.theme-doc-toc-desktop) {
|
|
2142
|
+
display: none;
|
|
2143
|
+
}
|
|
2144
|
+
|
|
2145
|
+
[class*="docItemCol"] {
|
|
2146
|
+
max-width: 100% !important;
|
|
2147
|
+
}
|
|
2148
|
+
|
|
2149
|
+
/* theme-classic hides the collapsible TOC from 997 up (tocMobile module).
|
|
2150
|
+
It is server-rendered on every page, so showing it here costs nothing. */
|
|
2151
|
+
article .theme-doc-toc-mobile {
|
|
2152
|
+
display: block;
|
|
2153
|
+
}
|
|
1947
2154
|
}
|
|
1948
2155
|
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
2156
|
+
/* ── Phone rhythm ──────────────────────────────────────────────────── */
|
|
2157
|
+
/* The 3rem h2 and 2rem h3 top margins above are sized for a wide screen. On
|
|
2158
|
+
a 375px phone a 45px gap before every section reads as a page break. */
|
|
2159
|
+
@media (max-width: 600px) {
|
|
2160
|
+
.theme-doc-markdown .markdown h2,
|
|
2161
|
+
.theme-doc-markdown article h2 {
|
|
2162
|
+
margin-top: 2.25rem;
|
|
2163
|
+
font-size: 1.45rem;
|
|
2164
|
+
}
|
|
2165
|
+
|
|
2166
|
+
.theme-doc-markdown .markdown h3,
|
|
2167
|
+
.theme-doc-markdown article h3 {
|
|
2168
|
+
margin-top: 1.5rem;
|
|
1952
2169
|
}
|
|
1953
2170
|
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A markdown table inside a horizontal scroll region.
|
|
3
|
+
*
|
|
4
|
+
* The theme frames tables with a border and a radius. Doing that on the table
|
|
5
|
+
* itself needed `overflow: hidden`, which removed the `display: block;
|
|
6
|
+
* overflow-x: auto` Docusaurus ships for wide tables, and on a 345px phone
|
|
7
|
+
* column a four-column reference table squeezed to 61px columns and 171px
|
|
8
|
+
* rows. The wrapper carries the frame now (see `.table-scroll` in
|
|
9
|
+
* src/css/custom.css); the table keeps its natural width and scrolls.
|
|
10
|
+
*
|
|
11
|
+
* `role="region"` plus `tabIndex` so a keyboard user can reach and scroll it.
|
|
12
|
+
*/
|
|
13
|
+
export default function TableScroll(props) {
|
|
14
|
+
return (
|
|
15
|
+
<div className="table-scroll" role="region" aria-label="Table, scrolls horizontally" tabIndex={0}>
|
|
16
|
+
<table {...props} />
|
|
17
|
+
</div>
|
|
18
|
+
);
|
|
19
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Routes every markdown `table` through TableScroll. Docusaurus's own map has
|
|
2
|
+
// no `table` entry, so this adds one rather than replacing anything.
|
|
3
|
+
//
|
|
4
|
+
// @theme-init, not @theme-original: this file ships inside a theme package that
|
|
5
|
+
// sits in the theme stack, so @theme-original/MDXComponents would resolve back
|
|
6
|
+
// to this same module and recurse. See src/theme/Navbar/Logo for the same note.
|
|
7
|
+
//
|
|
8
|
+
// A site that already wraps `table` itself (vantage-docs did, before this
|
|
9
|
+
// shipped) must drop its own wrapper, or every table renders in two scroll
|
|
10
|
+
// regions. MIGRATION.md, Part 3.
|
|
11
|
+
import MDXComponents from '@theme-init/MDXComponents';
|
|
12
|
+
import TableScroll from './TableScroll';
|
|
13
|
+
|
|
14
|
+
export default {
|
|
15
|
+
...MDXComponents,
|
|
16
|
+
table: TableScroll,
|
|
17
|
+
};
|