Commit Graph
31 Commits
Author SHA1 Message Date
copilot-swe-agent[bot]and19JVJeffery 36362d3673 Add M4A/FLAC format toggle in download settings
- config.js: add getPreferredFormat/setPreferredFormat (tiddl_preferred_format, default "m4a")
- index.html: add Preferred Format select in Download settings section
- settings.js: import and bind the new setting in loadSettingsForm/saveSettingsForm
- app.js: import getPreferredFormat and upgrade LOW/HIGH to LOSSLESS when FLAC is preferred

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-17 10:44:30 +00:00
copilot-swe-agent[bot]and19JVJeffery fc5050c505 Fix metadata embedding, cover art save, and library date sorting
- Add injectFlacTags() to write VORBIS_COMMENT block into FLAC files
- Add injectM4aTags() to write iTunes ilst text+integer atoms into M4A files
  (trkn/disk use proper binary-packed iTunes integer format, not text)
- Add embedMetadata() dispatcher; call it in all download functions when
  getMetadataEnable() is true (was wired in settings but never called)
- Extend fetchTrackData() to return discNumber, albumTitle, albumArtist
  (preferring track.album?.artist?.name for compilations), year, isrc, copyright
- Fix cover art as separate file: coalesce cover fetch when both embed and
  save are enabled; add cover.jpg to album/playlist ZIP; trigger cover.jpg
  browser download for single tracks
- Fix library date sorting: Tidal favorites API uses 'created', not 'dateAdded'
  — use i.created || i.dateAdded || "" for tracks, albums, and playlists

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-17 09:47:20 +00:00
copilot-swe-agent[bot]and19JVJeffery 8dc3de3d4b feat: add experimental download-in-all-quality-tiers mode
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 23:53:44 +00:00
copilot-swe-agent[bot]and19JVJeffery f0743a44fa Track maxQuality per queue item; disable unavailable quality options in dropdown; cap downloads to item max quality
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 19:29:56 +00:00
copilot-swe-agent[bot]and19JVJeffery a668e0cb9d Quality dropdown: restore detailed descriptions and apply quality-pill styling
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 13:59:29 +00:00
copilot-swe-agent[bot]and19JVJeffery 83d63b134d Remove Dolby Atmos and Sony 360RA features completely
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 13:11:03 +00:00
copilot-swe-agent[bot]and19JVJeffery 7900cba77c Fix library card queue-button visual feedback on toggle and clear
- Add CARD_QUEUE_BTN_PLUS and LIBRARY_TRACK_ADD_TEXT constants to avoid duplication
- removeFromQueue: reset .card-queue-btn icon/class when deselecting result cards
- removeFromQueue: reset .library-track-add button text when deselecting track rows
- clearQueue: same two resets applied when clearing all selected items

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 12:52:00 +00:00
copilot-swe-agent[bot]and19JVJeffery 5d29dbe300 Add experimental quality mode (Dolby Atmos, Sony 360RA) with settings toggle and tooltips
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 09:15:58 +00:00
copilot-swe-agent[bot]and19JVJeffery 2629f33800 Fix album quality display: use best quality from search hint, album meta, and tracks
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 08:38:02 +00:00
copilot-swe-agent[bot]and19JVJeffery 1d3ba6937c fix: use mediaMetadata.tags to detect HI_RES_LOSSLESS quality
Tidal's audioQuality field returns LOSSLESS even for Hi-Res content.
The correct indicator is mediaMetadata.tags containing HIRES_LOSSLESS.
Add effectiveQuality() helper and use it everywhere quality badges are
rendered: search grid, album/playlist detail headers and tracklists,
library tracks/albums, and artist detail album cards.

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-12 08:05:42 +00:00
copilot-swe-agent[bot]and19JVJeffery 2b9b50d8c3 Show album/playlist metadata (year, tracks, duration, quality) in detail panel header
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 23:43:05 +00:00
copilot-swe-agent[bot]and19JVJeffery aaacc708f7 Add quality pill to album/playlist detail panel headers
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 23:21:39 +00:00
copilot-swe-agent[bot]and19JVJeffery b3901cc13c Extract formatTrackTitle helper and clean up audioQuality null coercions
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 22:58:08 +00:00
copilot-swe-agent[bot]and19JVJeffery 4d0a4155c3 Show track version in titles and add quality badges to all UI elements
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 22:46:29 +00:00
copilot-swe-agent[bot]and19JVJeffery 141f29c9dc fix: Chromium login fetch error, complete URL queue enrichment for artist/video
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 14:05:17 +00:00
copilot-swe-agent[bot]and19JVJeffery 05394a8246 feat: add Export log button to download status panel
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 13:46:23 +00:00
copilot-swe-agent[bot]and19JVJeffery 9b0b9f966b Add Classic UI mode option and wire up all effects
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 10:58:01 +00:00
copilot-swe-agent[bot]and19JVJeffery bba3c4fa23 Address code review: rename vars, remove redundant classList.remove, improve CSS specificity
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 10:15:49 +00:00
copilot-swe-agent[bot]and19JVJeffery a8fde73a0a Implement pinned status bar, remove-on-hover for cards, detail view queue state, and URL pill enrichment
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 10:12:46 +00:00
copilot-swe-agent[bot]and19JVJeffery cebd27c479 Add hover tooltip ? icons to every settings field and option
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 09:40:07 +00:00
copilot-swe-agent[bot]and19JVJeffery 0d05dfa321 Add artist link in detail header, Safari dual theme-color meta tags, and expand/collapse progress sub-items
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 09:18:55 +00:00
copilot-swe-agent[bot]and19JVJeffery 62639e3019 wip: commit expand button progress
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 09:11:14 +00:00
copilot-swe-agent[bot]and19JVJeffery 66e084a2af Downloads page: graphical per-item progress, Progress/Log tabs, Clear log, auto-remove completed, README credits
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 08:55:40 +00:00
copilot-swe-agent[bot]and19JVJeffery 4cb1c85c7b feat: URL metadata enrichment, horizontal scroll rows, and View All buttons
- Fetch real title/artist/cover for URL-added queue items via API
- Show library suggestions in horizontal scrollable rows with View All
- Show artist albums/singles in horizontal rows with View All button

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 08:05:50 +00:00
copilot-swe-agent[bot]and19JVJeffery 16192c96be Remove pagination limits and add sorting to library, playlists, and albums
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 07:36:44 +00:00
copilot-swe-agent[bot]and19JVJeffery bdf7694aef Implement quality dropdown, library search, account page, help tabs, search tabs, settings tooltips
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-11 00:14:50 +00:00
copilot-swe-agent[bot]and19JVJeffery a93bfa32b2 feat: smart file import for all major text/binary file types
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-10 23:39:09 +00:00
copilot-swe-agent[bot]and19JVJeffery d97857c630 feat: comprehensive UI overhaul — all requirements implemented
- fix: ZIP timestamps now use real date (was Dec 1979 on macOS)
- feat: dynamic SVG favicon (accent colour + theme) + Safari theme-color meta
- feat: improved auth/login page (hero, features, animated card)
- feat: URL pill input with Enter-to-confirm, multi-line paste, file import
- feat: custom quality picker (Low/High/HiFi/Max with Tidal colour coding)
- feat: advanced mode — per-item quality selector in download queue
- feat: artist/album/playlist cards navigate to detail page
- feat: quick-add button on non-track cards; track cards toggle queue
- feat: detail page — artist albums/singles, album/playlist tracklist
- feat: Go-to-Downloads banner on search page when queue non-empty
- feat: search history dropdown + clear button
- feat: search empty state shows user library content
- feat: Library panel (saved tracks list, albums/playlists grid)
- feat: welcome banner on first login (sessionStorage-gated)
- feat: Help panel with formatted README content
- feat: Connection settings collapsed into Advanced/Developer accordion
- feat: api.js — getArtistSingles, getUserFavorite{Tracks,Albums,Playlists}, getUserPlaylists
- fix: SVG favicon sanitises accent hex before interpolation (security)

Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-10 20:50:28 +00:00
copilot-swe-agent[bot]and19JVJeffery 0033840865 feat: fixed sidebar, ZIP folder downloads, collapsible log, queue visual states
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-10 19:24:36 +00:00
copilot-swe-agent[bot]and19JVJeffery 97deb17e87 feat: UI overhaul, themes, settings, template builder, download queue, 403 fix
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-10 19:00:20 +00:00
copilot-swe-agent[bot]and19JVJeffery 743d79e985 feat: add GitHub Pages web app (tiddl-web)
Co-authored-by: 19JVJeffery <94115228+19JVJeffery@users.noreply.github.com>
2026-03-10 18:23:54 +00:00