Twitch-VOD-Manager/src
xRangerDE 2b09b7868a cleanup: dedupe formatBytes — renderer-stats + renderer-archive copies hoist to renderer-shared
renderer-stats.ts and renderer-archive.ts each had their own byte-size formatter (formatBytesForStats / formatBytesForArchive). The two were textually identical: both handle the B -> KB -> MB -> GB -> TB ladder with the same toFixed precision and return '0 B' for non-finite / zero / negative input.

Hoisted to renderer-shared.ts as plain formatBytes. Removed both per-file copies and renamed all 14 call sites across the two modules. The two narrower variants in renderer-settings.ts (formatBytesForMetrics — caps at GB) and renderer.ts (formatBytesRenderer — caps at GB, less protection) stay file-scoped because they have different scale/protection semantics for their specific contexts (runtime metrics + download progress, which never reach TB).

Continues the renderer-shared consolidation from 4.6.127 (applyHtml/escapeHtml).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 09:45:10 +02:00
..
index.html a11y + i18n: chat viewer filter placeholder + aria-label, status dot aria-hidden 2026-05-11 08:49:17 +02:00
main.ts observability: auto-updater lifecycle events go through appendDebugLog, not console.log 2026-05-11 06:21:35 +02:00
preload.ts perf: trim live-status batch IPC payload + skip empty broadcasts 2026-05-11 02:33:09 +02:00
renderer-archive.ts cleanup: dedupe formatBytes — renderer-stats + renderer-archive copies hoist to renderer-shared 2026-05-11 09:45:10 +02:00
renderer-globals.d.ts perf: trim live-status batch IPC payload + skip empty broadcasts 2026-05-11 02:33:09 +02:00
renderer-locale-de.ts i18n: localize 3 placeholders that stayed in German under English 2026-05-11 08:54:08 +02:00
renderer-locale-en.ts i18n: localize 3 placeholders that stayed in German under English 2026-05-11 08:54:08 +02:00
renderer-profile.ts cleanup: consolidate applyHtml + escapeHtml — 3 file-scoped copies dedupe to renderer-shared 2026-05-11 09:39:43 +02:00
renderer-queue.ts cleanup: .queue-details.expanded modifier replaces inline display toggle 2026-05-11 09:31:44 +02:00
renderer-settings.ts a11y: focus-visible on .streamer-profile-btn + type=button on storage open btn 2026-05-11 08:27:38 +02:00
renderer-shared.ts cleanup: dedupe formatBytes — renderer-stats + renderer-archive copies hoist to renderer-shared 2026-05-11 09:45:10 +02:00
renderer-stats.ts cleanup: dedupe formatBytes — renderer-stats + renderer-archive copies hoist to renderer-shared 2026-05-11 09:45:10 +02:00
renderer-streamers.ts cleanup: .section-title.compact modifier instead of inline marginBottom toggle 2026-05-11 09:26:36 +02:00
renderer-texts.ts i18n: localize 3 placeholders that stayed in German under English 2026-05-11 08:54:08 +02:00
renderer-updates.ts cleanup: centralise localStorage try/catch in renderer-shared — safeLocalStorageGet/Set/Remove 2026-05-11 07:33:23 +02:00
renderer-vod-hover.ts perf: bound the renderer-side VOD storyboard cache (FIFO 100) 2026-05-11 04:08:42 +02:00
renderer.ts a11y: localized aria-label + focus-visible on the 3 merge file-row buttons 2026-05-11 08:42:10 +02:00
styles.css cleanup: .queue-details.expanded modifier replaces inline display toggle 2026-05-11 09:31:44 +02:00
tools.ts refactor: extract tool discovery functions to src/tools.ts 2026-03-20 10:00:51 +01:00
types.ts feat: live recording health indicator (green/amber dot per item) 2026-05-10 22:04:53 +02:00
update-version-utils.ts chore: migrate repository to Codeberg, bump version to 4.2.0, update update logic 2026-03-01 20:23:21 +01:00