Commit Graph

8879 Commits

Author SHA1 Message Date
cc
60f5c38c8c fix: polish platform card layout
- Add rom count as detail table row aligned with metadata/region chips
- Use standard chip style for fs_slug matching PlatformListItem
- Size and percentage on two lines for readability
- Adjust platform icon vertical alignment

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:52:14 -04:00
cc
837046d4c1 fix: use String() for numeric key lookups on string-keyed Records
JSON serializes object keys as strings, so explicitly convert platform
IDs to strings when accessing metadataCoverage and regionBreakdown maps.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:40:06 -04:00
cc
8e568780e8 chore: use existing locale keys for metadata/region labels
Reuse rom.metadata and platform.region instead of adding new keys.
Remove orphaned platforms-size key from all 16 locale files.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:39:13 -04:00
cc
d0c33e31bc chore: remove unused platforms-size locale key
Fallback locale (en_US) covers the two new keys for other languages.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:32:18 -04:00
cc
52c53505a1 refactor: address review feedback
- Derive metadata source columns from Rom model instead of hardcoded list
- Replace getOrderedCoverage() function calls with a computed map to avoid
  redundant sorting on each render

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-10 19:27:50 -04:00
cc
c8fd7fedde fix: section header, card spacing polish
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 22:25:40 -04:00
cc
778097f4a0 feat: add per-platform metadata coverage and region breakdown to server stats
Enhances the server stats page with two new per-platform statistics:
- Metadata coverage: shows which sources matched ROMs (ordered by user's scan priority config)
- Region breakdown: shows ROM counts per region with flag emojis

Backend adds two new efficient queries (single GROUP BY for metadata, Python-side aggregation for regions).
Frontend redesigns platform cards with a tabular detail layout, size bar visualization, and expandable region chips.

> This PR was developed with AI assistance (Claude Code) per CONTRIBUTING.md disclosure requirements.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 22:15:08 -04:00
Georges-Antoine Assi
da09f6c81c Merge pull request #3100 from rommapp/copilot/fix-multifile-download-m3u
Fix M3U generation to exclude raw .bin tracks when .cue files are present
2026-03-09 18:44:47 -04:00
Georges-Antoine Assi
fe0191dab7 Merge pull request #3103 from pacnpal/master
Fix OIDC login role downgrading for users without claims
2026-03-09 18:21:57 -04:00
Georges-Antoine Assi
8a76391935 do code once 2026-03-09 18:21:01 -04:00
Georges-Antoine Assi
9a9d15da75 Merge pull request #3099 from rommapp/copilot/fix-oidc-login-google
Add OIDC_SERVER_METADATA_URL to support providers with non-standard discovery URLs (e.g. Google)
2026-03-09 18:19:34 -04:00
pacnpal
cf6f69ba9f Merge pull request #1 from pacnpal/copilot/fix-admin-role-claim-issues
Fix OIDC login downgrading existing user roles when provider sends no role claims
2026-03-09 14:35:19 -04:00
copilot-swe-agent[bot]
2a7c86e304 Fix OIDC login downgrading existing user roles when no claims provided
Co-authored-by: pacnpal <183241239+pacnpal@users.noreply.github.com>
2026-03-09 18:26:49 +00:00
copilot-swe-agent[bot]
ce60cdd76e Initial plan 2026-03-09 18:19:21 +00:00
copilot-swe-agent[bot]
b07e647c40 Fix M3U generation to only include .cue files when present in bin/cue ROM packages
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 17:42:32 +00:00
copilot-swe-agent[bot]
ff1c8b680e Fix OIDC login with Google by adding OIDC_SERVER_METADATA_URL config option
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 17:39:43 +00:00
copilot-swe-agent[bot]
3f76ef86de Initial plan 2026-03-09 17:39:20 +00:00
copilot-swe-agent[bot]
3a7ef20045 Initial plan 2026-03-09 17:35:17 +00:00
Georges-Antoine Assi
e651cfcf4a Merge pull request #3097 from rommapp/copilot/add-filter-results-number
Show filtered ROM count in the gallery AppBar and filter drawer
2026-03-09 09:20:59 -04:00
Georges-Antoine Assi
8e0ebad956 Merge pull request #3098 from Drarox/master
Add more plateforms to cover styles
2026-03-09 09:20:42 -04:00
Georges-Antoine Assi
b2abf776f2 hide on 0 2026-03-09 09:18:04 -04:00
Georges-Antoine Assi
3286fd970e ill do it myself 2026-03-09 09:13:14 -04:00
Yannick
9e529caa74 Add more plateforms 2026-03-09 11:25:59 +01:00
copilot-swe-agent[bot]
5a2fb7a395 feat: move ROM count to filter drawer and AppBar chip, remove from button
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 03:20:58 +00:00
copilot-swe-agent[bot]
462b3aaf9e feat: show filtered ROM count below the filter button in gallery AppBar
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 03:07:46 +00:00
copilot-swe-agent[bot]
0211b9900d Initial plan 2026-03-09 03:05:23 +00:00
Georges-Antoine Assi
115fad85e9 Merge pull request #3093 from rommapp/copilot/add-click-to-zoom-feature
feat: Click to zoom game cover image
2026-03-08 23:03:16 -04:00
Georges-Antoine Assi
b7d6edc756 Merge pull request #3094 from rommapp/copilot/feature-configurable-invite-token-expiration
Make invite token expiration configurable
2026-03-08 23:01:30 -04:00
copilot-swe-agent[bot]
89c482c7fa fix: only show zoom button on non-clickable covers (when pointerOnHover is false)
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 02:59:43 +00:00
Georges-Antoine Assi
84ff48e725 run fmt 2026-03-08 22:56:19 -04:00
Georges-Antoine Assi
e2ece6b938 run fmt 2026-03-08 22:54:58 -04:00
Georges-Antoine Assi
422b967ce5 Merge pull request #3096 from rommapp/access-token-exp-seconds
Switch ACCESS_TOKEN_EXPIRE_MINUTES to SECONDS
2026-03-08 22:53:39 -04:00
copilot-swe-agent[bot]
53b0b9021b Switch invite token expiration unit from minutes to seconds
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 02:48:21 +00:00
Georges-Antoine Assi
1f64e8437b Switch ACCESS_TOKEN_EXPIRE_MINUTES to SECONDS 2026-03-08 22:46:54 -04:00
copilot-swe-agent[bot]
5f309639af Make invite token expiration configurable via env var and UI
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 01:43:53 +00:00
copilot-swe-agent[bot]
413f6a68ab Initial plan 2026-03-09 01:38:25 +00:00
copilot-swe-agent[bot]
554845bd56 feat: move click-to-zoom to common game card Base.vue
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 00:52:48 +00:00
copilot-swe-agent[bot]
61540b5ceb feat: click to zoom game cover in console Game view
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-09 00:42:07 +00:00
copilot-swe-agent[bot]
95a8a0b18c Initial plan 2026-03-09 00:38:55 +00:00
Georges-Antoine Assi
4d54673f39 Merge pull request #3091 from rommapp/copilot/fix-saturn-platform-error
Fix 500 error when loading platforms with ROMs whose filenames start with region tags
2026-03-08 20:26:56 -04:00
Georges-Antoine Assi
e3d9bfe9fa fix migration 2026-03-08 20:14:14 -04:00
copilot-swe-agent[bot]
ae73da7c27 Fix 500 error from empty fs_name_no_tags causing mass sibling matching and incorrect ROM grouping
- Add migration 0071 to fix sibling_roms view: add guard against empty string matching for fs_name_no_tags
- Fix group_by_meta_id in filter_roms: use func.nullif to treat empty fs_name_no_tags as NULL in grouping key
- Add group_by_meta_id support to get_roms_scalar
- Add tests for sibling matching behavior with empty/non-empty fs_name_no_tags

Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-08 23:17:51 +00:00
copilot-swe-agent[bot]
531d0010bf Initial plan 2026-03-08 22:45:16 +00:00
Georges-Antoine Assi
38b311d1ca Merge pull request #3089 from rommapp/copilot/scrape-age-rating-data
Scrape and store age rating data from ScreenScraper.fr
2026-03-08 18:44:42 -04:00
Georges-Antoine Assi
64f2360958 Merge pull request #3090 from rommapp/romm-3067
[ROMM-3067] Always sub dash with colon for launchbox matching
2026-03-08 18:44:16 -04:00
Georges-Antoine Assi
c89753c3c1 display otehr categoies 2026-03-08 18:40:36 -04:00
Georges-Antoine Assi
80e78a8fe3 fix literally everything about age ratings 2026-03-08 18:34:58 -04:00
Georges-Antoine Assi
207f8a3c85 [ROMM-3067] Always sub dash with colon for launchbox matching 2026-03-08 17:26:53 -04:00
copilot-swe-agent[bot]
7d103f48a8 Add age rating support from ScreenScraper classifications
Co-authored-by: gantoine <3247106+gantoine@users.noreply.github.com>
2026-03-08 21:20:14 +00:00
copilot-swe-agent[bot]
0bc0af8128 Initial plan 2026-03-08 21:09:13 +00:00