Align access rows and theme native selects for dark mode (4.9.1-ops.14).

Use a shared three-column grid for admin/member rows, and inherit DSH color-scheme so channel/command dropdowns stay readable.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
oliver 2026-09-05 18:04:25 +08:00
parent 43f082d2e3
commit a59a09e0d2
5 changed files with 45 additions and 25 deletions

View file

@ -571,7 +571,7 @@ var React24 = __toESM(require("react"), 1);
// package.json
var package_default = {
name: "dsh-im-ops",
version: "4.9.1-ops.13",
version: "4.9.1-ops.14",
description: "Ops fork of dsh-im (all channels kept). Based on @xmanrui/dsh-im@4.9.1 \u2014 access/session policies owned here.",
keywords: [
"deepseek-harness",
@ -12810,7 +12810,8 @@ function AdminPhones({
}),
locked ? h2("span", { className: "dim-accessNickname" }, "\u7ED1\u5B9A\u8D26\u53F7\uFF08\u5168\u5C40\u7BA1\u7406\u5458\uFF09") : h2(NicknameHint, { contacts, phone, shortEmpty: true })
),
locked ? null : h2("button", {
h2("span", { className: "dim-accessCompactSelectSlot", "aria-hidden": "true" }),
locked ? h2("span", { className: "dim-accessCompactDeleteSlot", "aria-hidden": "true" }) : h2("button", {
type: "button",
className: "dim-deliveryButton dim-accessCompactDelete",
"data-kind": "danger",
@ -14285,10 +14286,14 @@ var CSS11 = String.raw`
.dim-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; align-items: start; }
.dim-channelPicker { min-width: 0; display: flex; align-items: center; gap: 10px; }
.dim-channelPickerLabel { flex: none; color: var(--dsw-alias-label-secondary, #646a73); font-size: 12px; line-height: 18px; font-weight: 560; white-space: nowrap; }
.dim-channelPickerControl { min-width: 0; flex: 1 1 auto; display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: center; gap: 10px; max-width: 420px; padding: 4px 10px 4px 6px; border: 1px solid var(--dsw-alias-border-l2, #dfe1e5); border-radius: 10px; background: var(--dsw-alias-bg-layer-3, #fff); box-shadow: 0 1px 2px rgb(31 35 41 / 4%); }
.dim-channelPickerSelect { min-width: 0; width: 100%; height: 34px; padding: 0 4px 0 0; border: 0; border-radius: 6px; color: var(--dsw-alias-label-primary, #1f2329); background: transparent; font: inherit; font-size: 14px; font-weight: 650; cursor: pointer; }
.dim-channelPickerControl { min-width: 0; flex: 1 1 auto; display: grid; grid-template-columns: 30px minmax(0, 1fr); align-items: center; gap: 10px; max-width: 420px; padding: 4px 10px 4px 6px; border: 1px solid var(--dsw-alias-border-l2, #dfe1e5); border-radius: 10px; background: var(--dsw-alias-bg-layer-1, #fff); box-shadow: 0 1px 2px rgb(31 35 41 / 4%); }
.dim-channelPickerSelect { min-width: 0; width: 100%; height: 34px; padding: 0 4px 0 0; border: 0; border-radius: 6px; color: var(--dsw-alias-label-primary, #1f2329); background: transparent; font: inherit; font-size: 14px; font-weight: 650; cursor: pointer; color-scheme: inherit; }
.dim-channelPickerSelect:focus { outline: none; }
.dim-channelPickerSelect option, .dim-accessCompactSelect option, .dim-panel select option, .dim-page select option { color: var(--dsw-alias-label-primary, #1f2329); background-color: var(--dsw-alias-bg-layer-1, #fff); }
.dim-channelPickerControl:focus-within { border-color: color-mix(in srgb, var(--dim-blue) 55%, var(--dsw-alias-border-l2, #dfe1e5)); box-shadow: 0 0 0 3px color-mix(in srgb, var(--dim-blue) 16%, transparent); }
.dim-page select, .dim-panel select { color: var(--dsw-alias-label-primary, #1f2329); background-color: var(--dsw-alias-bg-layer-1, #fff); color-scheme: inherit; }
body[data-ds-dark-theme] .dim-page select, body[data-ds-dark-theme] .dim-panel select, body[data-ds-dark-theme] .dim-channelPickerSelect, body[data-ds-dark-theme] .dim-accessCompactSelect { color-scheme: dark; }
body[data-ds-dark-theme] .dim-page select option, body[data-ds-dark-theme] .dim-panel select option, body[data-ds-dark-theme] .dim-channelPickerSelect option, body[data-ds-dark-theme] .dim-accessCompactSelect option { color: var(--dsw-alias-label-primary, #f5f6f7); background-color: var(--dsw-alias-bg-layer-1, #1f2329); }
.dim-logo { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; box-shadow: 0 1px 3px rgb(31 35 41 / 7%); }
.dim-logo svg { display: block; width: 20px; height: 20px; }
.dim-logoWeixin { color: white; background: #07c160; }
@ -14676,14 +14681,18 @@ var CSS11 = String.raw`
.dim-accessUserList { display: grid; gap: 9px; margin: 10px 0 0; padding: 0; list-style: none; }
.dim-accessUserRow { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(145px, 180px) max-content; align-items: end; gap: 10px; padding: 11px; border: 1px solid var(--dsw-alias-border-l1, #eef0f3); border-radius: 9px; background: var(--dsw-alias-bg-module-platform, #f7f8fa); }
.dim-accessCompactList { display: grid; gap: 0; margin: 8px 0 0; padding: 0; list-style: none; border: 1px solid var(--dsw-alias-border-l1, #eef0f3); border-radius: 8px; overflow: visible; background: var(--dsw-alias-bg-layer-1, #fff); }
.dim-accessCompactRow { position: relative; z-index: 0; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 0; padding: 7px 8px; border: 0; border-bottom: 1px solid var(--dsw-alias-border-l1, #eef0f3); border-radius: 0; background: transparent; }
.dim-accessCompactRow { position: relative; z-index: 0; min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr) 140px 64px; align-items: center; gap: 8px; margin: 0; padding: 7px 8px; border: 0; border-bottom: 1px solid var(--dsw-alias-border-l1, #eef0f3); border-radius: 0; background: transparent; }
.dim-accessCompactRow:last-child { border-bottom: 0; }
.dim-accessCompactRow:focus-within { z-index: 5; background: color-mix(in srgb, var(--dsw-alias-bg-module-platform, #f7f8fa) 70%, transparent); }
.dim-accessCompactIdentity { min-width: 0; flex: 1 1 160px; display: grid; gap: 2px; }
.dim-accessCompactIdentity .dim-accessTypeahead > input { height: 32px; font-size: 12px; }
.dim-accessCompactSelect { flex: 0 1 132px; width: auto; min-width: 108px; max-width: 160px; height: 32px; padding: 0 6px; border: 1px solid var(--dsw-alias-border-l2, #dfe1e5); border-radius: 7px; color: var(--dsw-alias-label-primary, #1f2329); background: var(--dsw-alias-bg-layer-1, #fff); font: inherit; font-size: 12px; }
.dim-accessCompactIdentity { min-width: 0; display: grid; gap: 2px; }
.dim-accessCompactIdentity .dim-accessTypeahead > input { height: 32px; font-size: 12px; color: var(--dsw-alias-label-primary, #1f2329); background: var(--dsw-alias-bg-layer-1, #fff); border-color: var(--dsw-alias-border-l2, #dfe1e5); }
.dim-accessCompactSelect, .dim-accessCompactSelectSlot { width: 100%; min-width: 0; height: 32px; }
.dim-accessCompactSelect { padding: 0 6px; border: 1px solid var(--dsw-alias-border-l2, #dfe1e5); border-radius: 7px; color: var(--dsw-alias-label-primary, #1f2329); background: var(--dsw-alias-bg-layer-1, #fff); font: inherit; font-size: 12px; color-scheme: inherit; }
.dim-accessCompactSelect:focus { outline: 2px solid color-mix(in srgb, var(--dsw-alias-state-business-primary, #3370ff) 28%, transparent); border-color: var(--dsw-alias-state-business-primary, #3370ff); }
.dim-accessCompactDelete { flex: 0 0 auto; min-height: 32px; padding-inline: 10px; }
.dim-accessCompactSelectSlot { display: block; }
.dim-accessCompactDelete, .dim-accessCompactDeleteSlot { width: 100%; min-height: 32px; justify-self: stretch; }
.dim-accessCompactDelete { padding-inline: 8px; }
.dim-accessCompactDeleteSlot { display: block; }
.dim-accessDeleteUser { margin-bottom: 1px; }
.dim-accessUnsupported { padding: 18px 14px; border: 1px dashed var(--dsw-alias-border-l2, #dfe1e5); border-radius: 9px; color: var(--dsw-alias-label-secondary, #646a73); background: var(--dsw-alias-bg-module-platform, #f7f8fa); text-align: center; }
.dim-accessUnsupported strong { color: var(--dsw-alias-label-primary, #1f2329); font-size: 13px; line-height: 20px; }

File diff suppressed because one or more lines are too long