Bettern cmap handling. Lots of changes.

This commit is contained in:
2026-08-17 23:06:23 +02:00
parent 8997f7f94a
commit 12f1ed2764
27 changed files with 10351 additions and 217 deletions
+283 -4
View File
@@ -9,6 +9,17 @@ body { margin: 0; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.visually-hidden {
position: absolute !important;
width: 1px !important;
height: 1px !important;
padding: 0 !important;
margin: -1px !important;
overflow: hidden !important;
clip: rect(0, 0, 0, 0) !important;
white-space: nowrap !important;
border: 0 !important;
}
.muted { color: #6b7280; font-size: 0.9rem; }
.error { color: #b42318; margin-top: .75rem; }
.danger { color: #b42318; }
@@ -91,6 +102,14 @@ button { cursor: pointer; }
background: #e5e7eb;
}
.EasyMDEContainer .editor-toolbar button.rw-mde-button svg {
width: 17px;
height: 17px;
vertical-align: middle;
stroke-width: 1.9;
pointer-events: none;
}
.EasyMDEContainer .editor-toolbar button.rw-mde-bold {
font-weight: 750;
}
@@ -207,6 +226,40 @@ body {
text-decoration: underline;
}
.sidebar-icon-nav {
display: flex;
align-items: center;
justify-content: center;
margin: -2px 0 14px;
}
.sidebar-icon-link {
position: relative;
display: grid;
width: 38px;
height: 32px;
place-items: center;
color: var(--wiki-link);
text-decoration: none;
}
.sidebar-icon-link + .sidebar-icon-link {
border-left: 1px solid #c8cbd0;
}
.sidebar-icon-link:hover,
.sidebar-icon-link:focus-visible {
background: #fff;
color: #24356f;
outline: 0;
}
.sidebar-icon-link svg {
width: 19px;
height: 19px;
stroke-width: 1.8;
}
#user-box,
#sidebar .muted {
color: var(--wiki-muted);
@@ -452,10 +505,6 @@ body {
color: #333;
}
.EasyMDEContainer .editor-toolbar button.fa::before {
font-family: FontAwesome;
}
@media (max-width: 900px) {
#app { grid-template-columns: 1fr; }
#sidebar {
@@ -565,10 +614,45 @@ body {
}
.search-result h2 {
display: flex;
gap: 8px;
align-items: center;
flex-wrap: wrap;
margin: 0 0 5px;
font-size: 1.08rem;
}
.search-result-type {
display: inline-block;
padding: 2px 7px;
border: 1px solid #b7c0ca;
border-radius: 999px;
background: #f3f5f7;
color: #536273;
font-size: .72rem;
font-weight: 650;
line-height: 1.35;
}
.search-result[data-result-type="cmap"] .search-result-type {
border-color: #86a77c;
background: #edf7e8;
color: #35672c;
}
.special-page-heading {
display: flex;
gap: 8px;
align-items: center;
flex-wrap: wrap;
}
.special-page-row[data-result-type="cmap"] .search-result-type {
border-color: #86a77c;
background: #edf7e8;
color: #35672c;
}
.search-result h2 a {
color: var(--wiki-link);
text-decoration: none;
@@ -1057,6 +1141,16 @@ body.editor-mode .editor-metadata-row {
stroke: #1e2f6d;
}
.wiki-graph-node-cmap circle {
fill: #57834a;
}
.wiki-graph-node-cmap:hover circle,
.wiki-graph-node-cmap:focus circle {
fill: #315f2b;
stroke: #315f2b;
}
/* 0.2.15 context navigation and sticky-anchor correction ---------------- */
.context-link {
@@ -1218,3 +1312,188 @@ body.editor-mode .editor-metadata-row {
font-size: 1rem;
font-weight: 600;
}
/* Rename and alias administration */
.rename-form { max-width: 48rem; }
.rename-form label { display: block; margin: 0 0 1rem; }
.rename-form input { display: block; width: 100%; margin-top: .3rem; }
.admin-version { margin: 0 0 1rem; }
.alias-row { padding: .75rem 0; border-bottom: 1px solid #d9d9d9; }
.alias-row .alias-address { font-family: monospace; }
.alias-references { margin: .35rem 0 0 1.25rem; }
.alias-summary { margin-top: .35rem; }
.alias-history { color: #666; }
.alias-actions { display: flex; gap: .5rem; margin-top: .6rem; }
.alias-actions button { font: inherit; }
/* 0.2.36 context graph overlay and docking ------------------------------ */
.page-reading-layout {
min-width: 0;
}
.page-reading-layout.context-dock-right {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(360px, 42%);
gap: 1rem;
align-items: start;
}
.page-reading-layout.context-dock-top {
display: flex;
flex-direction: column;
gap: 1rem;
}
.page-reading-layout.context-dock-top .context-dock {
order: -1;
}
.context-dock {
border: 1px solid var(--wiki-border);
background: #fafafa;
padding: .75rem;
position: sticky;
top: 84px;
max-height: calc(100vh - 100px);
overflow: auto;
}
.context-dock-header,
.context-overlay-header {
display: flex;
justify-content: space-between;
gap: 1rem;
align-items: flex-start;
}
.context-graph-actions {
display: flex;
gap: .7rem;
flex-wrap: wrap;
font-size: .82rem;
}
.context-graph-actions a {
color: var(--wiki-link);
text-decoration: none;
}
.context-graph-actions a:hover {
text-decoration: underline;
}
.context-graph-small {
min-width: 0;
min-height: 320px;
max-height: 520px;
}
.context-overlay {
position: fixed;
inset: 0;
z-index: 500;
background: rgb(0 0 0 / 35%);
display: grid;
place-items: center;
padding: 2rem;
}
.context-overlay-panel {
width: min(1180px, 96vw);
max-height: 92vh;
overflow: auto;
background: white;
border: 1px solid var(--wiki-border);
box-shadow: 0 14px 44px rgb(0 0 0 / 24%);
padding: 1rem;
}
.context-overlay-header h2 {
margin: 0 0 .2rem;
}
.context-overlay-graph-shell {
margin-top: .8rem;
}
.wiki-graph-edges marker path {
fill: #9a9a9a;
}
.wiki-graph-edge-incoming {
stroke: #7a5d9e !important;
}
.wiki-graph-edge-outgoing {
stroke: #46639b !important;
}
@media (max-width: 1100px) {
.page-reading-layout.context-dock-right {
display: flex;
flex-direction: column;
}
.page-reading-layout.context-dock-right .context-dock {
order: -1;
width: 100%;
position: static;
max-height: none;
}
}
@media (max-width: 700px) {
.context-overlay {
padding: .5rem;
}
.context-overlay-panel {
width: 100%;
max-height: 96vh;
}
.context-overlay-header {
display: block;
}
.context-graph-actions {
margin-top: .5rem;
}
}
/* Keep the established document width and use otherwise empty desktop
space for the docked context view. */
#page-view:has(.context-dock-right) {
max-width: none;
}
.page-reading-layout.context-dock-right {
grid-template-columns: minmax(0, 900px) minmax(420px, 520px);
justify-content: start;
gap: 1.5rem;
}
.page-reading-layout.context-dock-right .markdown-body {
width: 100%;
}
.page-reading-layout.context-dock-right .context-dock {
width: 100%;
}
.context-dock .wiki-graph-node text {
font-size: 20px;
font-weight: 600;
}
.context-dock .wiki-graph-node-focus text {
font-size: 22px;
}
@media (max-width: 1450px) {
.page-reading-layout.context-dock-right {
grid-template-columns: minmax(0, 760px) minmax(360px, 440px);
}
}