@pipelex/mthds-ui 0.6.5 → 0.7.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/graph/react/detail/DetailPanel.css +64 -8
- package/dist/graph/react/index.css +40 -8
- package/dist/graph/react/index.css.map +1 -1
- package/dist/graph/react/index.d.ts +9 -1
- package/dist/graph/react/index.js +141 -67
- package/dist/graph/react/index.js.map +1 -1
- package/dist/shiki/index.d.ts +16 -3
- package/dist/shiki/index.js +226 -15
- package/dist/shiki/index.js.map +1 -1
- package/dist/standalone/graph-standalone.html +73 -17
- package/dist/standalone/graph-viewer.css +64 -8
- package/dist/standalone/graph-viewer.js +9 -9
- package/package.json +1 -1
|
@@ -1583,12 +1583,24 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
1583
1583
|
pointer-events: none;
|
|
1584
1584
|
}
|
|
1585
1585
|
|
|
1586
|
+
/* ─── Close row — scrolls away with the content (intentionally NOT pinned) ─ */
|
|
1587
|
+
/* The close button is part of the content's top, not panel chrome: it
|
|
1588
|
+
* scrolls out of view with the content, and closing the panel means
|
|
1589
|
+
* scrolling back up. The negative margin tucks the following section up
|
|
1590
|
+
* beside it so the row doesn't cost a full line of vertical space. */
|
|
1591
|
+
|
|
1592
|
+
.detail-panel-close-row {
|
|
1593
|
+
display: flex;
|
|
1594
|
+
justify-content: flex-end;
|
|
1595
|
+
/* Pull the next section up by exactly this row's height + the column
|
|
1596
|
+
* gap, so the close button sits ON the first content line (concept /
|
|
1597
|
+
* pipe header), right-aligned — not on its own line above it. */
|
|
1598
|
+
margin-bottom: -40px;
|
|
1599
|
+
}
|
|
1600
|
+
|
|
1586
1601
|
.detail-panel-close {
|
|
1587
1602
|
all: unset;
|
|
1588
1603
|
cursor: pointer;
|
|
1589
|
-
position: absolute;
|
|
1590
|
-
top: 12px;
|
|
1591
|
-
right: 12px;
|
|
1592
1604
|
width: 24px;
|
|
1593
1605
|
height: 24px;
|
|
1594
1606
|
display: flex;
|
|
@@ -1598,7 +1610,10 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
1598
1610
|
color: var(--text-dim);
|
|
1599
1611
|
font-size: 18px;
|
|
1600
1612
|
line-height: 1;
|
|
1601
|
-
z
|
|
1613
|
+
/* Above the sticky pipe header (z 1) so the X is visible at rest while
|
|
1614
|
+
* sharing its line; on scroll it briefly slides over the stuck header's
|
|
1615
|
+
* empty right side before leaving the viewport. */
|
|
1616
|
+
z-index: 2;
|
|
1602
1617
|
}
|
|
1603
1618
|
|
|
1604
1619
|
.detail-panel-close:hover {
|
|
@@ -1609,7 +1624,7 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
1609
1624
|
.detail-panel-content {
|
|
1610
1625
|
flex: 1;
|
|
1611
1626
|
overflow-y: auto;
|
|
1612
|
-
padding:
|
|
1627
|
+
padding: 12px 16px 20px;
|
|
1613
1628
|
display: flex;
|
|
1614
1629
|
flex-direction: column;
|
|
1615
1630
|
gap: 16px;
|
|
@@ -1619,11 +1634,11 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
1619
1634
|
|
|
1620
1635
|
.detail-sticky-header {
|
|
1621
1636
|
position: sticky;
|
|
1622
|
-
top: -
|
|
1637
|
+
top: -12px; /* must mirror .detail-panel-content's top padding */
|
|
1623
1638
|
z-index: 1;
|
|
1624
1639
|
background: var(--surface-panel);
|
|
1625
|
-
padding-top:
|
|
1626
|
-
margin-top: -
|
|
1640
|
+
padding-top: 12px;
|
|
1641
|
+
margin-top: -12px;
|
|
1627
1642
|
display: flex;
|
|
1628
1643
|
flex-direction: column;
|
|
1629
1644
|
gap: 16px;
|
|
@@ -1994,6 +2009,47 @@ button.stuff-viewer-local-file--button:focus-visible {
|
|
|
1994
2009
|
font-family: var(--font-mono);
|
|
1995
2010
|
}
|
|
1996
2011
|
|
|
2012
|
+
/* ─── Detail tabs (Data / Structure) ────────────────────────────────────── */
|
|
2013
|
+
|
|
2014
|
+
.detail-tabs {
|
|
2015
|
+
display: flex;
|
|
2016
|
+
gap: 2px;
|
|
2017
|
+
border-bottom: 1px solid var(--border-default);
|
|
2018
|
+
}
|
|
2019
|
+
|
|
2020
|
+
.detail-tab {
|
|
2021
|
+
all: unset;
|
|
2022
|
+
cursor: pointer;
|
|
2023
|
+
font-size: 11px;
|
|
2024
|
+
font-weight: 600;
|
|
2025
|
+
color: var(--text-dim);
|
|
2026
|
+
padding: 5px 10px;
|
|
2027
|
+
border-radius: 4px 4px 0 0;
|
|
2028
|
+
border-bottom: 2px solid transparent;
|
|
2029
|
+
margin-bottom: -1px;
|
|
2030
|
+
transition:
|
|
2031
|
+
color 0.15s,
|
|
2032
|
+
border-color 0.15s;
|
|
2033
|
+
}
|
|
2034
|
+
|
|
2035
|
+
.detail-tab:hover {
|
|
2036
|
+
color: var(--text-muted);
|
|
2037
|
+
}
|
|
2038
|
+
|
|
2039
|
+
.detail-tab--active {
|
|
2040
|
+
color: var(--text-default);
|
|
2041
|
+
border-bottom-color: var(--color-accent);
|
|
2042
|
+
}
|
|
2043
|
+
|
|
2044
|
+
/* `all: unset` strips the UA focus ring — restore a visible indicator for
|
|
2045
|
+
* keyboard users (WCAG 2.4.7) on every unset button in the panel. */
|
|
2046
|
+
.detail-tab:focus-visible,
|
|
2047
|
+
.detail-panel-close:focus-visible,
|
|
2048
|
+
.detail-prompt-expand-btn:focus-visible {
|
|
2049
|
+
outline: 2px solid var(--color-accent);
|
|
2050
|
+
outline-offset: 2px;
|
|
2051
|
+
}
|
|
2052
|
+
|
|
1997
2053
|
/* ─── Concept panel header ──────────────────────────────────────────────── */
|
|
1998
2054
|
|
|
1999
2055
|
.detail-concept-code {
|