mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-07-14 18:15:56 -04:00
- Fix updateRating invalidation in native app — was only invalidating title queries, now calls invalidateTitleQueries() to also refresh tracking.userInfo (drives the rating UI) - Make unwatchMovie status revert consistent with unwatchSeries — revert any non-watchlist status, not just "completed" - Add sync invariant comment on handleWatch/handleUnwatch loops - Remove unused queryClient import in native use-title-actions Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
92 lines
2.5 KiB
TypeScript
92 lines
2.5 KiB
TypeScript
import { os } from "./context";
|
|
import * as account from "./procedures/account";
|
|
import * as admin from "./procedures/admin";
|
|
import * as discover from "./procedures/discover";
|
|
import * as imports from "./procedures/imports";
|
|
import * as library from "./procedures/library";
|
|
import * as people from "./procedures/people";
|
|
import * as system from "./procedures/system";
|
|
import * as titles from "./procedures/titles";
|
|
import * as tracking from "./procedures/tracking";
|
|
|
|
export const implementedRouter = {
|
|
titles: {
|
|
get: titles.get,
|
|
similar: titles.similar,
|
|
},
|
|
tracking: {
|
|
watch: tracking.watch,
|
|
unwatch: tracking.unwatch,
|
|
updateStatus: tracking.updateStatus,
|
|
rate: tracking.rate,
|
|
userInfo: tracking.userInfo,
|
|
stats: tracking.stats,
|
|
},
|
|
library: {
|
|
list: library.list,
|
|
genres: library.genres,
|
|
stats: library.stats,
|
|
continueWatching: library.continueWatching,
|
|
upcoming: library.upcoming,
|
|
},
|
|
discover: {
|
|
trending: discover.trending,
|
|
popular: discover.popular,
|
|
search: discover.search,
|
|
browse: discover.browse,
|
|
genres: discover.genres,
|
|
platforms: discover.platforms,
|
|
recommendations: discover.recommendations,
|
|
},
|
|
people: {
|
|
get: people.get,
|
|
},
|
|
account: {
|
|
updateName: account.updateName,
|
|
uploadAvatar: account.uploadAvatar,
|
|
removeAvatar: account.removeAvatar,
|
|
platforms: account.platforms,
|
|
updatePlatforms: account.updatePlatformsHandler,
|
|
integrations: {
|
|
list: account.integrationsList,
|
|
create: account.integrationsCreate,
|
|
delete: account.integrationsDelete,
|
|
regenerateToken: account.integrationsRegenerateToken,
|
|
},
|
|
},
|
|
system: {
|
|
publicInfo: system.publicInfo,
|
|
status: system.status,
|
|
},
|
|
admin: {
|
|
settings: {
|
|
get: admin.settingsGet,
|
|
update: admin.settingsUpdate,
|
|
},
|
|
backups: {
|
|
list: admin.backupsList,
|
|
create: admin.backupsCreate,
|
|
delete: admin.backupsDelete,
|
|
restore: admin.backupsRestore,
|
|
schedule: admin.backupsSchedule,
|
|
updateSchedule: admin.backupsUpdateSchedule,
|
|
},
|
|
triggerJob: admin.triggerJob,
|
|
purgeMetadataCache: admin.purgeMetadataCache,
|
|
purgeImageCache: admin.purgeImageCache,
|
|
systemHealth: admin.systemHealth,
|
|
},
|
|
imports: {
|
|
parseFile: imports.parseFile,
|
|
parsePayload: imports.parsePayload,
|
|
createJob: imports.createJob,
|
|
getJob: imports.getJob,
|
|
cancelJob: imports.cancelJob,
|
|
jobEvents: imports.jobEvents,
|
|
},
|
|
};
|
|
|
|
export const router = os.router(implementedRouter);
|
|
|
|
export type Router = typeof router;
|