Commit graph

14 commits

Author SHA1 Message Date
Christian Benincasa
769b05d201
refactor: add media_source_id to relevant entities (#1106)
We should be referencing media_sources by their ID on programs,
external_ids, etc. This enables us to use proper foreign keys for
referential integrity at the DB level, not worry about unique names for
media sources, and simplifies a lot of the code relating to media source
deletion and the cleanup thereafter.

This change also introduces the DBContext, which should allow for
arbitrarily calling other DB accessor functions when within transactions
and not deadlocking the connection to the DB.
2025-02-28 15:53:29 -05:00
Christian Benincasa
ea78d1c1dd
fix: allow scheduling custom shows that contain the same programs (#1102)
This was an oversight in how we de-duplicate programs before save. We
need to de-dupe based on the (custom show, program id) pair for custom
programs. Additionally, this change adds the ability to send "persisted"
programs as part of the lineup update request, removing the need to send
full program details for every program in the lineup.
2025-02-26 09:47:25 -05:00
Christian Benincasa
846ed27498
feat: support Emby as a media source (#1101) 2025-02-18 13:21:32 -05:00
Christian Benincasa
491fc2e2dc
Revert "feat: support Emby as a media source (#1085)" (#1099)
This reverts commit a918176a3b.
2025-02-17 07:54:44 -05:00
Christian Benincasa
a918176a3b
feat: support Emby as a media source (#1085) 2025-02-17 07:22:15 -05:00
Christian Benincasa
2aecc71da9 perf: fix channel lineup update performance regression from bun conversion
Fixes #1093
2025-02-14 13:33:52 -05:00
Christian Benincasa
2b37fe0304
fix: disable limit on update/delete queries (#1077)
This is necessary until Bun enables the feature in sqlite:
https://github.com/oven-sh/bun/issues/16909 and https://github.com/oven-sh/bun/pull/16884
2025-01-30 10:57:31 -05:00
Christian Benincasa
c9c3130d70
refactor: use bun for runtime and packaging (#1063) 2025-01-29 13:42:34 -05:00
Christian Benincasa
cfc31271e0 fix: properly inject program converter to programdb 2025-01-27 07:40:46 -05:00
Christian Benincasa
c192ec1c1b
refactor: introduce inversify to server (#1059) 2025-01-22 15:02:48 -05:00
Christian Benincasa
3a96d3d91b
refactor: mint programs on the frontend (#910) 2025-01-21 13:55:15 -05:00
Christian Benincasa
0e01e2a38d
chore: change build process + update core deps (#1057)
* Updates Typescript to latest version
* Changes server Typescript config to actually emit JS files. We were
  already running a full tsc invocation against the server for
typechecking anyway... and we use tsx for fast dev iteration w/o
typechecking, so we may as well just emit the actual JS files so that we
can take advantage of thinks like decorator metadata (upcoming inversify
PR...)
* Updates better-sqlite version to latest
* Bumps node version requirement to 22 and codifies it in package.json
  engines
2025-01-19 13:15:44 -05:00
Christian Benincasa
820282daaa chore: add plex debug api endpoint for stream details 2024-12-27 09:04:58 -05:00
Christian Benincasa
86cdb721da
refactor: massive backend refactoring (#965)
* refactor: massive backend refactoring

I've been putting off this refactor for a while, but now that the
mikro-orm removal and ffmpeg builder PRs are in, it is time.

* refactor: use ts import paths on server
2024-11-19 10:26:20 -05:00
Renamed from server/src/dao/programDB.ts (Browse further)