Commit Graph

104 Commits

Author SHA1 Message Date
Sam Chau
bb5d4af476 refactor: reorganise shared folder structure 2026-01-28 02:19:56 +10:30
Sam Chau
d0defd941e chore: rename queries folder to entities 2026-01-28 02:09:43 +10:30
Sam Chau
81a9ecfc05 refactor(pcd): reorganise qualityProfiles to CRUD pattern, split into route based structure, remove dead langauges code and combine with general queries 2026-01-28 02:08:41 +10:30
Sam Chau
83e19f93fd refactor(pcd): reorganise customFormats to CRUD pattern, cleanup duped types in evaluator, split into similar route based file structure 2026-01-28 01:35:00 +10:30
Sam Chau
ec5946428d refactor(pcd): reorganise entityTests/releases to CRUD pattern 2026-01-28 01:04:02 +10:30
Sam Chau
bb64b9ba9a refactor(pcd): mediaManagement now uses generated types, removed a fair bit of dead code 2026-01-28 00:31:51 +10:30
Sam Chau
1c7e063b9b fix(pcd): fix up temp types until i refactor them properly 2026-01-27 22:52:59 +10:30
Sam Chau
8a75f718b6 refactor(pcd): reorganize delayProfiles to CRUD pattern 2026-01-27 22:35:04 +10:30
Sam Chau
dc837a5254 refactor(pcd): reorganize regularExpressions to CRUD pattern 2026-01-27 22:12:01 +10:30
Sam Chau
2e36df30e5 refactor: media management can now contain multiple configs for each setting 2026-01-27 07:47:31 +10:30
Sam Chau
f89ba67899 refactor: move arr settings page into tabbed layout 2026-01-26 01:57:38 +10:30
Sam Chau
d2133aa457 feat(auth): implement authentication system
- Username/password login with bcrypt and session cookies
- API key authentication (X-Api-Key header or ?apikey query param)
- AUTH env var modes: on, local, off, oidc
- Generic OIDC support for external providers
- Session metadata tracking (IP, browser, device)
- Security settings page (password, sessions, API key)
- Login analysis with typo and attack detection
- Auth event logging throughout
2026-01-26 00:22:05 +10:30
Sam Chau
7815dd7813 refactor: improved sync module 2026-01-22 20:02:48 +10:30
Sam Chau
97c21b9572 feat: condition improvements
- refactor cards into unified component with modes
- add placeholders to dropdown selects
- style autocomplete similar to other ui components
- add placeholders to number inputs
- show any in language conditions
- add boolean for except langauge
2026-01-22 15:17:18 +10:30
Sam Chau
4efefe63ca feat: simplify language support in quality profiles
- moved language field in quality profile general page
- simplify transformation for sonarr by making languages optional
2026-01-22 14:02:43 +10:30
Sam Chau
7ad2da8739 feat: github caching with tll, improves loading times on databases/changes/about pages 2026-01-22 12:13:04 +10:30
Sam Chau
6577174a22 feat: implement basic cooldown, remove old time based one 2026-01-22 11:37:05 +10:30
Sam Chau
46c4c4e4ff feat: add tag to filter options in upgrades 2026-01-22 09:56:15 +10:30
Sam Chau
e6d16d76be feat: apply default delay profile to arrs when adding a new one 2026-01-22 09:05:30 +10:30
Sam Chau
14cfbdc60c fix: add FKs to sync tables, remove dangling references 2026-01-22 06:22:34 +10:30
Sam Chau
0db641e6ed fix: qp sync debugging. also disabling arm build until stable release 2026-01-22 06:07:37 +10:30
Sam Chau
ebced3e5b6 style: add better default sorting to custom format conditions 2026-01-21 10:00:56 +10:30
Sam Chau
353fe3832f refactor: delay profile handling. remove tags, only allow 1 delay profile to be synced at once. simplified dp sync config 2026-01-21 09:30:48 +10:30
Sam Chau
64a4656b1c fix: qp name instead of qp id for sync. Fixes mm and qp sync 2026-01-21 09:29:54 +10:30
Sam Chau
51d382754a feat(upgrades): add digital and physical release fields, introduce ordinal operators and availability order for (better) minimum availability filtering 2026-01-21 00:04:56 +10:30
Sam Chau
fd20cd84e8 feat: add Docker deployment support 2026-01-19 20:23:10 +10:30
Sam Chau
dd77d1af35 refactor: replace PowerShell regex testing with parser service integration 2026-01-19 20:21:15 +10:30
Sam Chau
c476775bc2 feat: add SQL validation method to PCDCache and integrate it into writeOperation as final lod 2026-01-19 10:41:21 +10:30
Sam Chau
221d0fffb4 chore: formatting 2026-01-19 09:54:41 +10:30
Sam Chau
6ffc9cd5ce refactor: the great ID purge of 2026 2026-01-19 07:45:03 +10:30
Sam Chau
4f565ebd6f fix: use name+tmdbid primary key instead of auto incmremented id 2026-01-19 04:12:37 +10:30
Sam Chau
95930edc53 feat(conditions): add per-condition arr_type support 2026-01-19 03:37:26 +10:30
Sam Chau
9b2f0d393c feat(arr): add logs page for viewing Radarr/Sonarr logs 2026-01-19 02:39:59 +10:30
Sam Chau
d11e060c91 feat: flexible response parsing in HTTP client (allows text now) 2026-01-19 02:28:32 +10:30
Sam Chau
8d3e20d3c3 refactor: use base http client for notifications, parser, autocomp 2026-01-19 02:26:12 +10:30
Sam Chau
f6d99bc267 feat: run history for rename jobs 2026-01-19 01:52:26 +10:30
Sam Chau
99c5046ed8 feat: upgrade improvements - more compact settings page, improved filter builder, clearer buttons, searching / filtering, improved run history, notifications 2026-01-19 01:27:28 +10:30
Sam Chau
0ab315d4a9 feat: add summary notifs for rename jobs, rename original to rich notifs 2026-01-18 02:24:18 +10:30
Sam Chau
de39481d4d feat: renaminatorr logic, jobs, long notif support 2026-01-18 02:06:51 +10:30
Sam Chau
47ba9dd7e9 feat: manual incoming changes handling
- Enhanced Git class to include method for fetching incoming changes from remote repository.
- Implemented logic to retrieve and display incoming commits in the changes page.
- Updated API routes to handle incoming changes and pull requests.
- Modified UI components to show incoming changes and allow users to pull updates.
- Improved actions bar to disable commit actions when there are incoming changes.
- Added sync button to refresh repository status and check for updates.
2026-01-17 15:25:24 +10:30
Sam Chau
b13ec91e32 fix: set last sync after *every* sync, not just when changes are pulled 2026-01-17 14:33:46 +10:30
Sam Chau
3d1e55e46c feat: backend support for manifest/readme updates 2026-01-17 00:40:03 +10:30
Sam Chau
656a3e3114 feat: enhance entity testing with auto import releases functionality 2026-01-16 19:05:57 +10:30
Sam Chau
55c5886125 feat: remove 'none' trigger from sync strategies, add dirty tracking / unsaved changes to sync page 2026-01-15 15:39:55 +10:30
Sam Chau
cabf1ff815 fix: handle empty response body in HTTP client 2026-01-15 15:20:02 +10:30
Sam Chau
f35a01f111 feat: sync transformers and quality profile handling
- Introduced new sync transformers for custom formats and quality profiles.
- Implemented the `transformQualityProfile` function to convert PCD quality profile data to ARR API format.
- Added functions to fetch quality profiles and custom formats from PCD cache.
- Enhanced `BaseArrClient` with methods for managing custom formats and quality profiles.
- Updated types to include custom format specifications and quality profile payloads.
- Modified sync page server logic to calculate next run time for scheduled syncs.
2026-01-15 15:14:54 +10:30
Sam Chau
27835c3426 feat: add next_run_at column to sync config tables and update job schedules to cron expressions 2026-01-15 15:14:21 +10:30
Sam Chau
74b38df686 feat: add entity and release management components
- Created EntityTable component for displaying test entities with expandable rows for releases.
- Implemented ReleaseTable component to manage and display test releases with actions for editing and deleting.
- Added ReleaseModal component for creating and editing releases
- Introduced types for TestEntity, TestRelease, and related evaluations
- Enhanced general settings page to include TMDB API configuration with connection testing functionality.
- Added TMDBSettings component for managing TMDB API access token with reset and test connection features.
2026-01-14 23:50:20 +10:30
Sam Chau
aec6d79695 feat: updateLanguages, updateQualities functionality 2026-01-14 16:03:14 +10:30
Sam Chau
f4b531b61a feat: Refactor quality profile management and scoring
- Removed unsaved changes modal and related logic from qualities page.
- Enhanced scoring page with improved state management and save functionality.
- Introduced a new GeneralForm component for creating and editing quality profiles.
- Added server-side validation for duplicate quality profile names.
- Implemented delete confirmation modals for both quality profiles and regular expressions.
- Improved handling of custom format scores and enabled states in scoring table.
- Added new page for creating quality profiles with appropriate server-side logic.
- Updated regular expressions to check for duplicate names during creation and editing.
2026-01-05 01:40:23 +10:30