diff --git a/docs/BACKLOG.md b/docs/BACKLOG.md index 3be8a54..a2bd6b0 100644 --- a/docs/BACKLOG.md +++ b/docs/BACKLOG.md @@ -238,3 +238,4 @@ | 「连接已断开」横幅移除 | 已做:整条顶部红色横幅删除(状态行已有提示,顶部横幅不友好);重连能力保留 | | SQL 高亮 DataGrip 风 | 已做:关键字亮蓝加粗 / 字符串红 / 数字浅绿 / 注释灰斜体 / 标识符浅灰白;light 同构对齐 IntelliJ | | opsxapi 迁移 | 回滚到可用基线 6452026(apps 布局保留)——用户确认只做 opsxdb;迁移半成品已弃 | +| 修复:GUI 样式全丢(白底裸控件) | 已修:根级迁移漏了 tailwind.config.ts / postcss.config.js(content 路径已改 ./src + ./packages/ui)与 index.html/public 资源;CSS 产物 12KB→32KB(Tailwind 全量恢复)。教训:单包迁移 checklist 应含样式链 | diff --git a/postcss.config.js b/postcss.config.js new file mode 100644 index 0000000..2aa7205 --- /dev/null +++ b/postcss.config.js @@ -0,0 +1,6 @@ +export default { + plugins: { + tailwindcss: {}, + autoprefixer: {}, + }, +}; diff --git a/server/bin/opsxdb-server b/server/bin/opsxdb-server index 69100c4..ff372c3 100755 Binary files a/server/bin/opsxdb-server and b/server/bin/opsxdb-server differ diff --git a/tailwind.config.ts b/tailwind.config.ts new file mode 100644 index 0000000..eb531fc --- /dev/null +++ b/tailwind.config.ts @@ -0,0 +1,73 @@ +import type { Config } from "tailwindcss"; + +/** + * 设计令牌 v2 映射:与 apps/web/src/styles.css 的 :root 令牌同源, + * 新增组件样式优先使用 ops-* utility,避免散落硬编码色值。 + */ +export default { + content: [ + "./index.html", + "./src/**/*.{ts,tsx}", + "./packages/ui/src/**/*.{ts,tsx}", + ], + theme: { + extend: { + colors: { + ops: { + bg: "var(--ops-bg)", + surface: "var(--ops-surface)", + "surface-2": "var(--ops-surface-2)", + "editor-bg": "var(--ops-editor-bg)", + border: "var(--ops-border)", + "border-soft": "var(--ops-border-soft)", + text: "var(--ops-text)", + muted: "var(--ops-muted)", + accent: "var(--ops-accent)", + "accent-strong": "var(--ops-accent-strong)", + "accent-soft": "var(--ops-accent-soft)", + danger: "var(--ops-danger)", + warning: "var(--ops-warning)", + success: "var(--ops-success)", + "input-bg": "var(--ops-input-bg)", + "row-alt": "var(--ops-row-alt)", + "bg-active": "var(--ops-bg-active)", + }, + }, + fontSize: { + "ops-xs": "var(--ops-text-xs)", + "ops-sm": "var(--ops-text-sm)", + "ops-md": "var(--ops-text-md)", + "ops-lg": "var(--ops-text-lg)", + }, + spacing: { + "ops-1": "var(--ops-space-1)", + "ops-2": "var(--ops-space-2)", + "ops-3": "var(--ops-space-3)", + "ops-4": "var(--ops-space-4)", + "ops-5": "var(--ops-space-5)", + "ops-6": "var(--ops-space-6)", + }, + borderRadius: { + "ops-sm": "var(--ops-radius-sm)", + "ops-md": "var(--ops-radius-md)", + "ops-lg": "var(--ops-radius-lg)", + }, + boxShadow: { + "ops-pop": "var(--ops-shadow-pop)", + "ops-modal": "var(--ops-shadow-modal)", + }, + zIndex: { + "ops-banner": "var(--ops-z-banner)", + "ops-ctx": "var(--ops-z-ctx)", + "ops-toast": "var(--ops-z-toast)", + "ops-modal": "var(--ops-z-modal)", + "ops-confirm": "var(--ops-z-confirm)", + }, + // 修 V6:删除 JetBrains Mono 声明,等宽栈与 SqlEditor 统一为系统栈 + fontFamily: { + mono: ["ui-monospace", "SFMono-Regular", "Menlo", "Consolas", "monospace"], + }, + }, + }, + plugins: [], +} satisfies Config;