aboutsummaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/src/meshbay_hub/static/icon.js
diff options
context:
space:
mode:
authorChristophe Besson <cbesson@gmail.com>2026-08-24 19:11:43 +0200
committerChristophe Besson <cbesson@gmail.com>2026-08-24 19:11:43 +0200
commitd053d083627f1f9f010752f8ad67941e22d49f27 (patch)
treea72e5cfd4b80fae79fad66944d3db24d6a1a3547 /packages/meshbay-hub/src/meshbay_hub/static/icon.js
parent251d2c587cad16e2464851b1958203c41e994fb4 (diff)
downloadmeshbay-d053d083627f1f9f010752f8ad67941e22d49f27.tar.gz
feat(hub): draw an actual CD for covers with no art, not a flat icon
The monochrome disc icon from the previous commit read as placeholder UI chrome, not as artwork - too plain for something that is, for most tiles in a real library, the default look of the grid. - DiscPlaceholder (music-app.js): a small inline SVG illustration - dark disc base, an iridescent radial-gradient sheen mimicking the rainbow reflection a real CD's data side has, two faint groove rings, a light label ring, a dark spindle hole. Each instance gets its own gradient id (a module-level counter) rather than one literal id repeated - a grid renders many of these at once, and a shared id would leave every disc after the first pointing at whichever <radialGradient> the browser happened to resolve. - AlbumCard and MusicDetailModal now branch on coverHash directly: MediaThumb (the real chunk-path image) when there is one, DiscPlaceholder when there isn't - rather than routing "no cover" through MediaThumb's own generic small-icon fallback, which is still right for its other callers (list rows, Videos). - icon.js: the flat monochrome "disc" icon this replaces is removed - nothing else used it. - style.css: .music-disc-empty/.music-disc-svg replace the old .video-thumb-empty overrides; still sized relative to the tile (82%) so it scales with .music-grid's auto-fill columns. Client-side only. npm run sync-ui re-run. Full suite: 1129 passed, no regressions. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KBi7ALLGfwcjBXt57yNMcy
Diffstat (limited to 'packages/meshbay-hub/src/meshbay_hub/static/icon.js')
-rw-r--r--packages/meshbay-hub/src/meshbay_hub/static/icon.js2
1 files changed, 0 insertions, 2 deletions
diff --git a/packages/meshbay-hub/src/meshbay_hub/static/icon.js b/packages/meshbay-hub/src/meshbay_hub/static/icon.js
index 87b56ee..0ecbd70 100644
--- a/packages/meshbay-hub/src/meshbay_hub/static/icon.js
+++ b/packages/meshbay-hub/src/meshbay_hub/static/icon.js
@@ -74,8 +74,6 @@ const ICON_PATHS = {
music: ['M9 18V5l12-2v13',
'M4 18a2 2 0 1 0 4 0 2 2 0 1 0 -4 0',
'M16 16a2 2 0 1 0 4 0 2 2 0 1 0 -4 0'],
- disc: ['M3 12a9 9 0 1 0 18 0 9 9 0 1 0 -18 0',
- 'M9 12a3 3 0 1 0 6 0 3 3 0 1 0 -6 0'],
pause: ['M7 5.5v13', 'M17 5.5v13'],
'skip-next': ['M5 4l10 8-10 8z', 'M19 5v14'],
'skip-prev': ['M19 4L9 12l10 8z', 'M5 5v14'],