-
Notifications
You must be signed in to change notification settings - Fork 8
refactor(web-ui): brand redesign and time format simplification v0.0.36 #173
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
c2c1736
0853892
2cc7d8b
58262a2
fa93e54
af054e2
0827494
8fc7d1c
c9a1c58
2e22f1b
add4361
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -425,58 +425,97 @@ body::after { | |
| display: flex; | ||
| flex-direction: column; | ||
| align-items: flex-start; | ||
| gap: 10px; | ||
| margin-bottom: 0; | ||
| padding: 14px 10px 16px; | ||
| border-bottom: 1px solid rgba(137, 111, 94, 0.10); | ||
| padding: 16px 12px 20px; | ||
| border-bottom: 0.5px solid rgba(0, 0, 0, 0.06); | ||
| background: linear-gradient(180deg, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%); | ||
| } | ||
|
|
||
| .brand-block:focus-visible { | ||
| outline: 2px solid rgba(0, 122, 255, 0.5); | ||
| outline-offset: -2px; | ||
| border-radius: 4px; | ||
| } | ||
|
|
||
| .brand-block:focus:not(:focus-visible) { | ||
| outline: none; | ||
| } | ||
|
|
||
| .brand-head { | ||
| display: flex; | ||
| align-items: center; | ||
| gap: 12px; | ||
| gap: 10px; | ||
| } | ||
|
|
||
| .brand-logo { | ||
| width: 38px; | ||
| height: 38px; | ||
| border-radius: 13px; | ||
| width: 28px; | ||
| height: 28px; | ||
| border-radius: 6px; | ||
|
Comment on lines
+451
to
+453
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Check test file for logo dimension assertions
rg -n -A2 -B2 'brand-logo.*38px' tests/Repository: SakuraByteCore/codexmate Length of output: 738 🏁 Script executed: #!/bin/bash
set -euo pipefail
# 1) Inspect the CSS around the referenced lines
echo "---- web-ui/styles/layout-shell.css: around 430-460 ----"
nl -ba web-ui/styles/layout-shell.css | sed -n '420,470p'
# 2) Find all .brand-logo blocks and any width/height assertions involving 38px/28px
echo "---- occurrences in layout-shell.css ----"
rg -n "\.brand-logo" -S web-ui/styles/layout-shell.css
echo "---- width/height values near brand-logo in layout-shell.css ----"
rg -n -S "brand-logo|width:\s*(38|28)px|height:\s*(38|28)px" web-ui/styles/layout-shell.css -n || true
# 3) Search all tests for explicit 38x38 expectations
echo "---- tests with brand-logo 38px expectations ----"
rg -n -A3 -B3 "brand-logo.*38px|\.brand-logo\\s*\\{[\\s\\S]*width:\\s*38px|height:\\s*38px" tests/ || true
# 4) Search all tests for 28px expectations
echo "---- tests with brand-logo 28px expectations ----"
rg -n -A3 -B3 "brand-logo.*28px|\.brand-logo\\s*\\{[\\s\\S]*width:\\s*28px|height:\\s*28px" tests/ || trueRepository: SakuraByteCore/codexmate Length of output: 186 🏁 Script executed: #!/bin/bash
set -euo pipefail
# 1) Inspect the CSS around the referenced lines
echo "---- web-ui/styles/layout-shell.css: around 430-470 ----"
nl -ba web-ui/styles/layout-shell.css | sed -n '420,470p'
# 2) Find all .brand-logo blocks and any width/height values near them
echo "---- occurrences in layout-shell.css ----"
rg -n "\.brand-logo" -S web-ui/styles/layout-shell.css
echo "---- width/height values in layout-shell.css (38/28) ----"
rg -n -S "width:\s*(38|28)px|height:\s*(38|28)px" web-ui/styles/layout-shell.css || true
# 3) Search all tests for explicit 38x38 expectations
echo "---- tests with brand-logo 38px expectations ----"
rg -n -A3 -B3 "brand-logo.*38px|\.brand-logo\\s*\\{[\\s\\S]*width:\\s*38px|height:\\s*38px" tests/ || true
# 4) Search all tests for 28x28 expectations
echo "---- tests with brand-logo 28px expectations ----"
rg -n -A3 -B3 "brand-logo.*28px|\.brand-logo\\s*\\{[\\s\\S]*width:\\s*28px|height:\\s*28px" tests/ || trueRepository: SakuraByteCore/codexmate Length of output: 186 🏁 Script executed: #!/bin/bash
set -euo pipefail
# 1) Inspect CSS around the referenced lines (use cat -n since nl isn't available)
echo "---- web-ui/styles/layout-shell.css: around 430-470 ----"
cat -n web-ui/styles/layout-shell.css | sed -n '420,470p'
# 2) Find all .brand-logo blocks and any 38/28px width/height occurrences in that file
echo "---- occurrences in layout-shell.css ----"
rg -n "\\.brand-logo" -S web-ui/styles/layout-shell.css || true
echo "---- width/height values in layout-shell.css (38/28) ----"
rg -n -S "width:\\s*(38|28)px|height:\\s*(38|28)px" web-ui/styles/layout-shell.css || true
# 3) Search all tests for explicit 38x38 expectations for .brand-logo
echo "---- tests with brand-logo 38px expectations ----"
rg -n -A3 -B3 "brand-logo.*38px|\\.brand-logo\\s*\\{[\\s\\S]*width:\\s*38px|\\.brand-logo\\s*\\{[\\s\\S]*height:\\s*38px" tests/ || true
# 4) Search all tests for explicit 28x28 expectations for .brand-logo
echo "---- tests with brand-logo 28px expectations ----"
rg -n -A3 -B3 "brand-logo.*28px|\\.brand-logo\\s*\\{[\\s\\S]*width:\\s*28px|\\.brand-logo\\s*\\{[\\s\\S]*height:\\s*28px" tests/ || trueRepository: SakuraByteCore/codexmate Length of output: 3079 Fix unit test for updated
🤖 Prompt for AI Agents |
||
| object-fit: cover; | ||
| flex-shrink: 0; | ||
| box-shadow: | ||
| 0 8px 20px rgba(92, 68, 52, 0.10), | ||
| 0 0 0 1px rgba(200, 121, 99, 0.08); | ||
| box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.5); | ||
| transition: width 0.24s var(--ease-smooth), height 0.24s var(--ease-smooth), box-shadow 0.24s var(--ease-smooth); | ||
| position: relative; | ||
| } | ||
|
|
||
| .brand-logo::after { | ||
| content: ""; | ||
| position: absolute; | ||
| inset: -4px; | ||
| background: radial-gradient(circle, rgba(0, 122, 255, 0.12), transparent 70%); | ||
| opacity: 0; | ||
| transition: opacity 0.3s var(--ease-smooth); | ||
| pointer-events: none; | ||
| } | ||
|
|
||
| .brand-block:hover .brand-logo { | ||
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.6); | ||
| } | ||
|
|
||
| .brand-block:hover .brand-logo::after { | ||
| opacity: 1; | ||
| } | ||
|
|
||
| .brand-copy { | ||
| display: flex; | ||
| flex-direction: column; | ||
| gap: 4px; | ||
| gap: 0; | ||
| min-width: 0; | ||
| } | ||
|
|
||
| .brand-kicker { | ||
| font-size: 18px; | ||
| line-height: 1.15; | ||
| font-family: var(--font-family-display); | ||
| color: var(--color-text-primary); | ||
| letter-spacing: -0.02em; | ||
| font-weight: 700; | ||
| font-size: 13px; | ||
| line-height: 1.2; | ||
| font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", system-ui, sans-serif; | ||
| color: #1d1d1f; | ||
| letter-spacing: -0.01em; | ||
| font-weight: 500; | ||
| } | ||
|
|
||
| .brand-version { | ||
| font-size: 11px; | ||
| font-weight: 500; | ||
| color: var(--color-text-muted); | ||
| vertical-align: middle; | ||
| margin-left: 4px; | ||
| @supports (-webkit-background-clip: text) or (background-clip: text) { | ||
| .brand-kicker { | ||
| background: linear-gradient(180deg, #1d1d1f 0%, #2d2d2f 100%); | ||
| -webkit-background-clip: text; | ||
| -webkit-text-fill-color: transparent; | ||
| background-clip: text; | ||
| } | ||
| } | ||
|
coderabbitai[bot] marked this conversation as resolved.
|
||
|
|
||
| .brand-subtitle { | ||
| .brand-version { | ||
| font-size: 12px; | ||
| line-height: 1.45; | ||
| color: var(--color-text-secondary); | ||
| max-width: 22ch; | ||
| font-weight: 400; | ||
| color: #8e8e93; | ||
| vertical-align: baseline; | ||
| } | ||
|
|
||
| .brand-version-fade-enter-active, | ||
| .brand-version-fade-leave-active { | ||
| transition: opacity 0.2s var(--ease-smooth); | ||
| } | ||
|
|
||
| .brand-version-fade-enter-from, | ||
| .brand-version-fade-leave-to { | ||
| opacity: 0; | ||
| } | ||
|
|
||
| .github-badge { | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Avoid unconditional fallback directory scan when
targetCountis already met.This now always traverses
claudeProjectsDir, even ifsessions.lengthhas already reachedtargetCount. On large trees, that adds avoidable synchronous I/O and slows session list responses.⚡ Suggested fix
🤖 Prompt for AI Agents