+ {/* The sidebar: the map's icon rail (App.css .icon-rail, .rail-*), widening over the page + to show each name while the pointer or keyboard focus is in it. */} + + + {/* The open page, beside the rail at its narrow width: the wide rail lies over it. */} +
+
+ + {name.toUpperCase() || '…'} + {system && (system.published + ? PUBLISHED v{system.version} + : NEVER PUBLISHED)} + {problems.length > 0 && ( + {problems.length} PROBLEM{problems.length === 1 ? '' : 'S'} + )} + + / +

{current.label}

+ {current.what} +
+ +
+ {loadError &&

{loadError}

} + {!system && !loadError &&

LOADING…

} + {system && page === 'problems' && (problems.length === 0 + ?

No problems. It can be published.

+ : ( +
    + {problems.map((p, i) =>
  • {p.where}: {p.message}
  • )} +
+ ))} + {system && page === 'systems' && ( +
+ {library.error &&

{library.error}

} + {!library.systems && !library.error &&

LOADING…

} + {library.systems && ( +
+ {library.systems.map((s) => { + const here = s.id === systemId; + return ( + + ); + })} +
+ )} +

+ To rename, copy, share or install a system, use SYSTEMS.EXE on the map. +

+
+ +
+
+ )} + {system && page !== 'problems' && page !== 'systems' && ( +
+

{current.label}

+

{current.what} This page arrives in a coming update.

+
+ )} +
+ +
+ PROBLEMS: {problems.length} + + {status?.text ?? ''} + + + {saveLine && {saveLine.text}} +
+
+ + {exitError && (() => { + const w = exitWarning(name, exitError.error); + return ( +
+
+
+ {w.title} +
+
+
{w.text}
+
{w.hint}
+
+ + + + +
+
+
+
+ ); + })()} +