Tighten request board layout
This commit is contained in:
parent
db3e080640
commit
496df474b8
3 changed files with 622 additions and 672 deletions
|
|
@ -454,7 +454,11 @@ function createLauncherRequestId() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function normalizeLauncherRequestStatus(value) {
|
function normalizeLauncherRequestStatus(value) {
|
||||||
return String(value || "").trim().toLowerCase() === "active" ? "active" : "pending";
|
const normalized = String(value || "").trim().toLowerCase();
|
||||||
|
if (normalized === "active" || normalized === "implemented") {
|
||||||
|
return normalized;
|
||||||
|
}
|
||||||
|
return "pending";
|
||||||
}
|
}
|
||||||
|
|
||||||
function normalizeLauncherRequestTags(value) {
|
function normalizeLauncherRequestTags(value) {
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load diff
211
src/index.css
211
src/index.css
|
|
@ -234,11 +234,11 @@ body {
|
||||||
min-height: 100%;
|
min-height: 100%;
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-rows: auto minmax(0, 1fr) auto;
|
grid-template-rows: auto minmax(0, 1fr) auto;
|
||||||
gap: 12px;
|
gap: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-splash-hero {
|
.changelog-splash-hero {
|
||||||
padding: 14px 16px;
|
padding: 10px 12px;
|
||||||
border: 1px solid #4f79af;
|
border: 1px solid #4f79af;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background:
|
background:
|
||||||
|
|
@ -249,25 +249,25 @@ body {
|
||||||
|
|
||||||
.changelog-splash-kicker {
|
.changelog-splash-kicker {
|
||||||
color: #ffd166;
|
color: #ffd166;
|
||||||
font-size: 10px;
|
font-size: 9px;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
letter-spacing: 0.08em;
|
letter-spacing: 0.08em;
|
||||||
margin-bottom: 6px;
|
margin-bottom: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-splash-title {
|
.changelog-splash-title {
|
||||||
color: #eef6ff;
|
color: #eef6ff;
|
||||||
font-size: 22px;
|
font-size: 19px;
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
line-height: 1.1;
|
line-height: 1.1;
|
||||||
margin-bottom: 6px;
|
margin-bottom: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-splash-meta {
|
.changelog-splash-meta {
|
||||||
color: #a9c2ec;
|
color: #a9c2ec;
|
||||||
font-size: 12px;
|
font-size: 11px;
|
||||||
line-height: 1.45;
|
line-height: 1.35;
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-splash-list {
|
.changelog-splash-list {
|
||||||
|
|
@ -281,9 +281,9 @@ body {
|
||||||
.launcher-request-hero-actions {
|
.launcher-request-hero-actions {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: minmax(0, 1fr) auto;
|
grid-template-columns: minmax(0, 1fr) auto;
|
||||||
gap: 12px;
|
gap: 10px;
|
||||||
align-items: end;
|
align-items: end;
|
||||||
margin-top: 16px;
|
margin-top: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-toolbar-buttons {
|
.launcher-request-toolbar-buttons {
|
||||||
|
|
@ -325,8 +325,8 @@ body {
|
||||||
|
|
||||||
.launcher-request-admin-panel {
|
.launcher-request-admin-panel {
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 12px;
|
gap: 10px;
|
||||||
padding: 14px;
|
padding: 10px;
|
||||||
border: 1px solid #476d9d;
|
border: 1px solid #476d9d;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background:
|
background:
|
||||||
|
|
@ -402,6 +402,12 @@ body {
|
||||||
gap: 10px;
|
gap: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-sidebar {
|
||||||
|
display: grid;
|
||||||
|
gap: 12px;
|
||||||
|
min-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
.launcher-request-admin-notice {
|
.launcher-request-admin-notice {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
color: #a8e6c2;
|
color: #a8e6c2;
|
||||||
|
|
@ -411,21 +417,21 @@ body {
|
||||||
|
|
||||||
.launcher-request-admin-grid {
|
.launcher-request-admin-grid {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
|
grid-template-columns: 320px minmax(0, 1fr);
|
||||||
gap: 12px;
|
gap: 12px;
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-shell-admin .launcher-request-admin-grid {
|
.launcher-shell-admin .launcher-request-admin-grid {
|
||||||
grid-template-columns: 360px minmax(0, 1fr);
|
grid-template-columns: 320px minmax(0, 1fr);
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-card {
|
.launcher-request-admin-card {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-rows: auto minmax(0, 1fr);
|
grid-template-rows: auto minmax(0, 1fr);
|
||||||
gap: 10px;
|
gap: 8px;
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
padding: 12px;
|
padding: 10px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background: rgba(8, 16, 31, 0.74);
|
background: rgba(8, 16, 31, 0.74);
|
||||||
|
|
@ -447,7 +453,7 @@ body {
|
||||||
|
|
||||||
.launcher-request-admin-card-hint {
|
.launcher-request-admin-card-hint {
|
||||||
color: #9fb8e5;
|
color: #9fb8e5;
|
||||||
font-size: 11px;
|
font-size: 10px;
|
||||||
line-height: 1.4;
|
line-height: 1.4;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -463,14 +469,14 @@ body {
|
||||||
|
|
||||||
.launcher-shell-admin .launcher-request-admin-request-list,
|
.launcher-shell-admin .launcher-request-admin-request-list,
|
||||||
.launcher-shell-admin .launcher-request-admin-log-list {
|
.launcher-shell-admin .launcher-request-admin-log-list {
|
||||||
max-height: 42dvh;
|
max-height: 31dvh;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-request-row,
|
.launcher-request-admin-request-row,
|
||||||
.launcher-request-admin-log-row {
|
.launcher-request-admin-log-row {
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 8px;
|
gap: 6px;
|
||||||
padding: 10px 12px;
|
padding: 8px 10px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
background: rgba(17, 32, 63, 0.82);
|
background: rgba(17, 32, 63, 0.82);
|
||||||
|
|
@ -491,19 +497,13 @@ body {
|
||||||
.launcher-request-admin-request-copy {
|
.launcher-request-admin-request-copy {
|
||||||
min-width: 0;
|
min-width: 0;
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 5px;
|
gap: 4px;
|
||||||
}
|
|
||||||
|
|
||||||
.launcher-request-admin-request-rationale {
|
|
||||||
color: #d7e7ff;
|
|
||||||
font-size: 12px;
|
|
||||||
line-height: 1.45;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-request-title,
|
.launcher-request-admin-request-title,
|
||||||
.launcher-request-admin-log-title {
|
.launcher-request-admin-log-title {
|
||||||
color: #eef6ff;
|
color: #eef6ff;
|
||||||
font-size: 13px;
|
font-size: 12px;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
line-height: 1.35;
|
line-height: 1.35;
|
||||||
}
|
}
|
||||||
|
|
@ -539,26 +539,84 @@ body {
|
||||||
|
|
||||||
.launcher-request-admin-log-detail {
|
.launcher-request-admin-log-detail {
|
||||||
color: #d7e7ff;
|
color: #d7e7ff;
|
||||||
font-size: 12px;
|
font-size: 11px;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
white-space: pre-wrap;
|
white-space: pre-wrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-editor-card {
|
.launcher-request-admin-detail-card {
|
||||||
grid-column: 1 / -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.launcher-request-admin-editor {
|
|
||||||
display: grid;
|
|
||||||
gap: 12px;
|
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
overflow: auto;
|
|
||||||
max-height: 58dvh;
|
|
||||||
padding-right: 4px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-shell-admin .launcher-request-admin-editor {
|
.launcher-request-admin-detail {
|
||||||
max-height: 68dvh;
|
display: grid;
|
||||||
|
gap: 10px;
|
||||||
|
min-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-detail-top {
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: flex-start;
|
||||||
|
gap: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-detail-copy {
|
||||||
|
min-width: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-detail-controls {
|
||||||
|
display: flex;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
justify-content: flex-end;
|
||||||
|
align-items: flex-end;
|
||||||
|
gap: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-field-inline {
|
||||||
|
min-width: 160px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-icon-actions {
|
||||||
|
display: flex;
|
||||||
|
gap: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-icon-btn {
|
||||||
|
width: 42px;
|
||||||
|
height: 42px;
|
||||||
|
display: inline-flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
border: 1px solid #365782;
|
||||||
|
border-radius: 12px;
|
||||||
|
background: rgba(17, 32, 63, 0.9);
|
||||||
|
color: #e7ecf3;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-icon-btn svg {
|
||||||
|
width: 18px;
|
||||||
|
height: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-icon-btn.is-success {
|
||||||
|
border-color: rgba(110, 255, 173, 0.52);
|
||||||
|
background: linear-gradient(135deg, rgba(33, 146, 86, 0.88) 0%, rgba(24, 108, 123, 0.88) 100%);
|
||||||
|
color: #f3fff8;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-icon-btn:disabled {
|
||||||
|
opacity: 0.56;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-query-grid {
|
||||||
|
display: grid;
|
||||||
|
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||||
|
gap: 10px;
|
||||||
|
min-height: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-editor-grid {
|
.launcher-request-admin-editor-grid {
|
||||||
|
|
@ -585,11 +643,12 @@ body {
|
||||||
|
|
||||||
.launcher-request-admin-analysis-item {
|
.launcher-request-admin-analysis-item {
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 10px;
|
gap: 8px;
|
||||||
padding: 12px;
|
padding: 10px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background: rgba(8, 16, 31, 0.72);
|
background: rgba(8, 16, 31, 0.72);
|
||||||
|
align-content: start;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-analysis-head {
|
.launcher-request-admin-analysis-head {
|
||||||
|
|
@ -604,7 +663,11 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-admin-textarea-sm {
|
.launcher-request-admin-textarea-sm {
|
||||||
min-height: 74px;
|
min-height: 58px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-textarea-xs {
|
||||||
|
min-height: 46px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-composer-label {
|
.launcher-request-composer-label {
|
||||||
|
|
@ -635,15 +698,15 @@ body {
|
||||||
min-height: 0;
|
min-height: 0;
|
||||||
overflow: auto;
|
overflow: auto;
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 10px;
|
gap: 8px;
|
||||||
padding-right: 4px;
|
padding-right: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-entry {
|
.launcher-request-entry {
|
||||||
position: relative;
|
position: relative;
|
||||||
display: grid;
|
display: grid;
|
||||||
gap: 10px;
|
gap: 7px;
|
||||||
padding: 12px 14px;
|
padding: 9px 11px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background: rgba(17, 32, 63, 0.84);
|
background: rgba(17, 32, 63, 0.84);
|
||||||
|
|
@ -700,6 +763,12 @@ body {
|
||||||
color: #b7f0d5;
|
color: #b7f0d5;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.launcher-request-status-pill.is-implemented {
|
||||||
|
border-color: #4a8f60;
|
||||||
|
background: rgba(23, 88, 53, 0.86);
|
||||||
|
color: #d6ffe3;
|
||||||
|
}
|
||||||
|
|
||||||
.launcher-request-status-pill.is-pending {
|
.launcher-request-status-pill.is-pending {
|
||||||
border-color: #9c8140;
|
border-color: #9c8140;
|
||||||
background: rgba(93, 70, 19, 0.78);
|
background: rgba(93, 70, 19, 0.78);
|
||||||
|
|
@ -733,21 +802,14 @@ body {
|
||||||
|
|
||||||
.launcher-request-entry-title-block {
|
.launcher-request-entry-title-block {
|
||||||
min-width: 0;
|
min-width: 0;
|
||||||
display: grid;
|
display: block;
|
||||||
gap: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-entry-title {
|
.launcher-request-entry-title {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
color: #eef6ff;
|
color: #eef6ff;
|
||||||
font-size: 14px;
|
font-size: 13px;
|
||||||
line-height: 1.25;
|
line-height: 1.2;
|
||||||
}
|
|
||||||
|
|
||||||
.launcher-request-entry-category {
|
|
||||||
color: #9fb8e5;
|
|
||||||
font-size: 11px;
|
|
||||||
line-height: 1.35;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-delete-btn {
|
.launcher-request-delete-btn {
|
||||||
|
|
@ -771,28 +833,15 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-tag {
|
.launcher-request-tag {
|
||||||
padding: 4px 8px;
|
padding: 3px 7px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 999px;
|
border-radius: 999px;
|
||||||
background: rgba(25, 48, 87, 0.72);
|
background: rgba(25, 48, 87, 0.72);
|
||||||
color: #d7e7ff;
|
color: #d7e7ff;
|
||||||
font-size: 11px;
|
font-size: 10px;
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.launcher-request-entry-text {
|
|
||||||
color: #d7e7ff;
|
|
||||||
font-size: 13px;
|
|
||||||
line-height: 1.5;
|
|
||||||
white-space: pre-wrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
.launcher-request-entry-review-note {
|
|
||||||
color: #ffd5b0;
|
|
||||||
font-size: 12px;
|
|
||||||
line-height: 1.45;
|
|
||||||
}
|
|
||||||
|
|
||||||
.launcher-request-entry-meta,
|
.launcher-request-entry-meta,
|
||||||
.launcher-request-empty {
|
.launcher-request-empty {
|
||||||
color: #9fb8e5;
|
color: #9fb8e5;
|
||||||
|
|
@ -839,7 +888,7 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.changelog-splash-section {
|
.changelog-splash-section {
|
||||||
padding: 12px 14px;
|
padding: 10px 12px;
|
||||||
border: 1px solid #365782;
|
border: 1px solid #365782;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
background: rgba(17, 32, 63, 0.84);
|
background: rgba(17, 32, 63, 0.84);
|
||||||
|
|
@ -887,10 +936,10 @@ body {
|
||||||
|
|
||||||
.launcher-primary-btn,
|
.launcher-primary-btn,
|
||||||
.launcher-secondary-btn {
|
.launcher-secondary-btn {
|
||||||
min-height: 46px;
|
min-height: 40px;
|
||||||
padding: 12px 16px;
|
padding: 10px 14px;
|
||||||
border-radius: 12px;
|
border-radius: 12px;
|
||||||
font-size: 0.96rem;
|
font-size: 0.92rem;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -2034,6 +2083,10 @@ button.danger:not(:disabled):hover {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-query-grid {
|
||||||
|
grid-template-columns: 1fr;
|
||||||
|
}
|
||||||
|
|
||||||
.launcher-request-admin-request-row {
|
.launcher-request-admin-request-row {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
}
|
}
|
||||||
|
|
@ -2042,6 +2095,12 @@ button.danger:not(:disabled):hover {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.launcher-request-admin-detail-top,
|
||||||
|
.launcher-request-admin-detail-controls {
|
||||||
|
display: grid;
|
||||||
|
justify-content: stretch;
|
||||||
|
}
|
||||||
|
|
||||||
.launcher-request-admin-analysis-head {
|
.launcher-request-admin-analysis-head {
|
||||||
grid-template-columns: 1fr;
|
grid-template-columns: 1fr;
|
||||||
display: grid;
|
display: grid;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue