Skip to content

Latest commit

 

History

History
1668 lines (1429 loc) · 208 KB

File metadata and controls

1668 lines (1429 loc) · 208 KB

0.43.0 (2026-04-12)

Bug Fixes

  • scanner: sanitize filenames before parsing (2c877b3)
  • session: return new object in resetFilter (5b78e44)
  • ui: correct each block syntax (9404aef)
  • update pnpm-lock.yaml to match package.json (f72bdff)

Features

  • auth: add autocomplete attributes (00ac204)
  • tv: sync watched state across episodes (a8f8cb9)

0.42.0 (2026-04-07)

Bug Fixes

  • add-page: correct modal logic and typing (4d58538)
  • deps: add pnpm overrides for handlebars to package.json (cd0869f)
  • deps: update @seenivers/api to version 1.0.6 (9b2b0ef)
  • deps: update @sveltejs/kit to ^2.53.3 (47654d0)
  • deps: update dependency @sentry/sveltekit to ^10.44.0 (09e8288)
  • deps: update dependency @sentry/sveltekit to ^10.45.0 (3497a4b)
  • deps: update non-breaking updates (62c6b3e)
  • deps: update non-breaking updates (254528d)
  • episode-ui: update trailer link format (673de5d)
  • eslint: resolve gitignore path and ts config (b8f695e)
  • movie: guard watchlist actions for auth state (b56f61f)
  • tauri: update CSP endpoints (d079563)
  • tmdb: skip sync when user not logged in (41aade8)
  • tv: prevent watchlist updates if not logged in (e3008a2)
  • update @seenivers/api version from workspace to 1.0.1 (8d01e84)
  • update pnpm-lock.yaml to match package.json (256a213)
  • update prepare script to handle sync errors gracefully (84cf7ea)
  • watchlist: handle errors and clear session on failure (8bf9729)

Features

  • add: improve media detection and dedup logic (35744ea)
  • add: introduce media service API layer (13c0242)
  • api: add trpc client instance (22b917d)
  • auth: add local session management (7fcdf75)
  • auth: add login page with session handling (46a7678)
  • i18n: add auth and login translations (dd6f1a9)
  • player: sync watched status remotely (23e663e)
  • settings: add login tab (fd10c98)

0.41.0 (2026-02-15)

Bug Fixes

  • deps: update non-breaking updates (19292ac)
  • update pnpm-lock.yaml to match package.json (6cd44a8)

Features

  • actor: add social links and enrich actor details UI (310cf83)
  • i18n: add selectMoviesFolder key (8f07e50)
  • i18n: add selectMoviesFolder translation (d50cf26)
  • i18n: add selectMoviesFolder translation (8e1883f)
  • i18n: add selectMoviesFolder translation (32a0658)
  • i18n: add selectMoviesFolder translation (e9ffa32)
  • i18n: add selectMoviesFolder translation (b7b942e)
  • i18n: add selectMoviesFolder translation (ebb9dd1)
  • i18n: add selectMoviesFolder translation (5b17ad4)
  • i18n: add selectMoviesFolder translation (ab44152)
  • i18n: add selectMoviesFolder translation (6d60835)
  • i18n: add selectMoviesFolder translation (30c2f18)
  • i18n: add selectMoviesFolder translation (d98e92a)
  • i18n: add selectMoviesFolder translation (bc52d79)
  • i18n: add selectMoviesFolder translation (624b0fd)
  • i18n: add selectMoviesFolder translation (652605b)
  • i18n: add selectMoviesFolder translation (a452a89)
  • i18n: add selectMoviesFolder translation (9a1df0c)
  • i18n: add selectMoviesFolder translation (3d715b7)
  • i18n: add selectMoviesFolder translation (cc3d076)
  • i18n: add selectMoviesFolder translation (a8fe7dd)
  • i18n: add selectMoviesFolder translation (ccf4a2b)
  • i18n: add selectMoviesFolder translation (958124c)
  • i18n: add selectMoviesFolder translation (3c2dfde)
  • i18n: add selectMoviesFolder translation (28fc1f0)
  • i18n: add selectMoviesFolder translation (1da1d7b)
  • i18n: add selectMoviesFolder translation (f7e1b13)
  • i18n: add selectMoviesFolder translation (b6c0700)
  • i18n: add selectMoviesFolder translation (310059e)
  • main: add loadBatch utility for unified movie, series and collection loading (14fc103)
  • media_type: add Planned and Ended to Status enum (a9126b5)
  • search: add centralized Fuse index builder for main view (dcd9f32)
  • telemetry: integrate Sentry for enhanced session tracking (d38f6e6)
  • watchlist: return synced watchlist items from syncWatchlist (ed955bf)
  • watchlist: update UI state from sync result without reload (5fb80a4)

0.40.0 (2026-01-18)

Bug Fixes

  • collection-sort: correct release date sorting logic for newest/oldest (e0dacff)
  • collection: refresh collection after fetching from TMDB (89993aa)
  • collection: use data.result.parts directly and remove redundant store (4deafbf)
  • config: update certificate thumbprint in tauri.windows.conf.json (356ee63)
  • i18n: update HTML lang attribute to use dynamic language variable (be1da78)
  • movie: skip 'Rumored' movies when updating TMDB watchlist (dcc8d38)
  • sentry: hardcode Sentry config for client telemetry with privacy defaults (020f72e)
  • telemetry: guard prod execution and improve request error handling (b93b629)
  • tmdb: skip 'Rumored' media in watchlist sync to prevent 404 errors (a7f5feb)
  • tv: skip 'Rumored' series when updating TMDB watchlist (14992df)
  • update pnpm-lock.yaml to match package.json (3bd301e)

Features

  • app: prevent right-click context menu in production (3e5e43a)
  • collection: auto-update collection watched status (01e3a04)
  • collection: pass 'watched' state to collection items (6afa4ce)
  • i18n: add inlang project configuration (bd8f8b7)
  • i18n: integrate paraglide Vite plugin for inlang (d2174dc)
  • layout: initialize paraglide locale in browser (82b4d9a)
  • types: add 'Rumored' status to Status type (ec19d76)
  • watchlist: show success toast after manual sync (68c498c)

0.39.0 (2026-01-15)

Bug Fixes

  • actor: use stable credit_id as keyed each identifier (5ec1e1e)
  • app: handle Tauri close event and properly end client session (5c8634a)
  • csp: allow YouTube thumbnail domain i.ytimg.com (1bd9013)
  • deps: update non-breaking updates (e6e981e)
  • deps: update non-breaking updates (2feac31)
  • episode: pass updated rating to episode.update (8124047)
  • episode: prevent referrer leakage on YouTube thumbnails (6890c87)
  • episode: switch YouTube thumbnails to i.ytimg.com (6c38752)
  • image: add no-referrer policy to Img component (ad13fb2)
  • layout: replace console.error with error function (9fdefae)
  • movie: pass updated rating to movie.update (c0e03d5)
  • movie: prevent referrer leakage on YouTube thumbnails (a804c31)
  • movie: remove two-way binding from Rating component (02078f9)
  • movie: switch YouTube thumbnails to i.ytimg.com (866d80c)
  • package: add zod dependency to package.json (fd4ed7d)
  • settings: add 'Default' option to theme schema (bf9c88f)
  • settings: correct default theme value to lowercase 'default' (ba080ba)
  • telemetry: skip session calls when offline (394d4e6)
  • tmdb: ignore placeholder tmdbAccountID in watchlist request (b545bb9)
  • toast: correct Tailwind class names for min/max width and word wrapping (febc9a2)
  • tv: prevent referrer leakage on YouTube thumbnails (587d48c)
  • tv: switch YouTube thumbnails to i.ytimg.com (73e8aa6)

Features

  • app: integrate telemetry session start and end (4d7ced1)
  • backup: add centralized backup utilities (d5e18a4)
  • discord: add Discord Rich Presence integration module (f516ceb)
  • discord: add Discord Rich Presence utility (49e5811)
  • load: add shared URL ID parsing utilities (a3aaf9e)
  • migrations: refactor settings table to key-value schema (3b253f9)
  • sentry: derive release name dynamically from cargo package metadata (ce9343c)
  • sentry: initialize sentry from persisted user settings (3003ced)
  • settings: add settings state initialization and update logic (943fe59)
  • settings: add zod-based settings schema with defaults (04b8f03)
  • settings: initialize settings state during client startup (705c0e0)
  • settings: persist settings to database with upsert support (3aa7ce3)
  • tauri: initialize tauri-plugin-os (a868566)
  • telemetry: add client environment session tracking (4b1a3e9)
  • telemetry: persist clientId/sessionId and use API response for session start/end (a5dcd86)

Performance Improvements

  • load: parallelize DB queries and add performance marks (2ed1ac0)

0.38.0 (2025-11-30)

Bug Fixes

  • bind rating component value directly instead of using bind:value (ab89650)
  • correct 'title' translation formatting in German locale (1e3721f)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.3.3 (60441ca)
  • deps: update dependency better-sqlite3 to v12 (0286c05)
  • deps: update dependency hls.js to ^1.6.10 (f2245aa)
  • deps: update dependency hls.js to ^1.6.9 (32a18d8)
  • deps: update non-breaking updates (2178cb2)
  • deps: update non-breaking updates (d0d6f76)
  • deps: update non-breaking updates (74117fc)
  • deps: update non-breaking updates (1296c2f)
  • deps: update non-breaking updates (2a1a49f)
  • deps: update rust crate serde_json to 1.0.143 (ed716a0)
  • improve series, season, and episode addition logic with uniqueness checks and path updates (fe28e7e)

Features

  • initialize Sentry in client with error handling and replay integration (568816f)

0.37.0 (2025-08-16)

Bug Fixes

  • deps: update dependency @tauri-apps/plugin-dialog to ^2.3.0 (95e1b65)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.3.1 (2bdfa0a)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.3.2 (308a38e)
  • deps: update dependency @tauri-apps/plugin-process to ^2.2.2 (27d2366)
  • deps: update dependency @tauri-apps/plugin-sql to ^2.2.1 (d2369b9)
  • deps: update dependency @tauri-apps/plugin-sql to ^2.3.0 (b314818)
  • deps: update dependency drizzle-orm to ^0.44.3 (c57e405)
  • deps: update dependency drizzle-orm to ^0.44.4 (d4a3861)
  • deps: update dependency hls.js to ^1.6.6 (3e64002)
  • deps: update dependency hls.js to ^1.6.7 (80124fc)
  • deps: update dependency hls.js to ^1.6.8 (807d41c)
  • deps: update rust crate serde_json to 1.0.142 (59ddcb2)
  • deps: update rust crate tauri-plugin-dialog to 2.3.1 (5d9f560)
  • deps: update rust crate tauri-plugin-dialog to 2.3.2 (13677e2)
  • deps: update rust crate tauri-plugin-fs to 2.4.1 (307f4b2)
  • deps: update rust crate tauri-plugin-log to 2.6.0 (37ad8cf)
  • deps: update rust crate tauri-plugin-opener to 2.4.0 (43e3af1)
  • deps: update rust crate tauri-plugin-process to 2.3.0 (727d9c8)
  • deps: update rust crate tauri-plugin-sql to 2.3.0 (a9a7005)
  • ensure watchlist sync updates UI immediately after action (cf39bd7)
  • optimize file addition logic by using folderList in selectTvFolder function (50710eb)
  • remove key from each loop in series cast rendering for improved readability (847a027)
  • remove unnecessary key from each loop in movie cast rendering (636d476)

Features

  • add: integrate filename parsing for improved media type detection and filename cleanup (ffca0a9)
  • dependencies: add @ctrl/video-filename-parser package (7199d37)

0.36.0 (2025-06-20)

Features

  • i18n: add TMDB access token requirement message and update watchlist sync button behavior (a5d3cb4)

0.35.0 (2025-06-20)

Bug Fixes

  • add Authorization header to fetchData for TMDB API requests (4978852)
  • adjust badge styling for release date display (a466b20)
  • deps: update dependency drizzle-orm to ^0.44.2 (d4202fa)
  • deps: update dependency hls.js to ^1.6.5 (803c92f)
  • ensure correct type assertion for JSON response in parseResponse function (750ce32)
  • move watched status button to the correct position in episode and movie pages (bcc4a50)
  • refactor getAll method to accept only IDs and simplify missing items retrieval (ba35df5)
  • remove wantsToWatch field from collections schema (a967b73)
  • remove wantsToWatch property from collection retrieval (24a2efd)
  • rename tmdbSessionId to tmdbAccountID in settings schema (3ce76ef)
  • replace console.error with error handling in postToken and postAccessToken functions (a745b7f)
  • update guest stars display in episode page and add translations (67a4023)
  • update serie.getAll call to accept remote series IDs directly (3b49dd5)
  • update settingsDB and settings with tmdbAccountID during authentication (7811ddc)
  • update TMDB authentication handling to store access token and account ID (a6f971a)
  • update wantsToWatch status using movie.update instead of collection.update (e500e7b)

Features

  • add 'Aqua' theme to the themes list in app configuration (aeb78ac)
  • add 'Bumblebee' theme to the themes list in app configuration (745d9c7)
  • add 'Corporate' theme to the themes list in app configuration (edcd0f0)
  • add 'Cupcake' theme to the themes list in app configuration (b0eac44)
  • add 'Cyberpunk' theme to the themes list in app configuration (a5767b1)
  • add 'Dim' theme to the themes list in app configuration (723274a)
  • add 'Dracula' theme to the themes list in app configuration (be06749)
  • add 'Emerald' theme to the themes list in app configuration (7f98e0a)
  • add 'Forest' theme to the themes list in app configuration (5701b2c)
  • add 'Halloween' theme to the themes list in app configuration (70e0f29)
  • add 'Night' theme to the themes list in app configuration (59b0365)
  • add 'Nord' theme to the themes list in app configuration (85adf73)
  • add 'Retro' theme to the themes list in app configuration (4c1e770)
  • add 'Sunset' theme to the themes list in app configuration (c5c90ab)
  • add 'Synthwave' theme to the themes list in app configuration (fc1df76)
  • add 'Valentine' theme to the themes list in app configuration (6977ad3)
  • add 'Wireframe' theme to the themes list in app configuration (f278a35)
  • add card component for displaying media items (fd9aff3)
  • add folder existence check and error message for watch paths input (f2338b4)
  • add getToken function to fetch TMDB token (2b84038)
  • add link to watchlist in the navbar (cc9cd4c)
  • add Navbar, ProgressBar, and Updater components with routing updates (aac681a)
  • add postWatchlist function to handle adding/removing items from the user's watchlist (a22431f)
  • add postWatchlist functionality to movie and tv routes for updating watchlist status (6854beb)
  • add rating columns to episode, movies, and series tables; update settings and collection schema (d1271e2)
  • add rating field to episode, movie, and serie schemas (2d10429)
  • add success toast notification for TMDB authentication completion (be6690f)
  • add TMDB authentication button in settings with session tracking (71eb66d)
  • add TMDB authentication route with error handling and session management (a000568)
  • add TMDBPostResult interface and create watchlist type definitions (c411087)
  • add tooltip for double-click delete action in watchlist (164351b)
  • add user rating functionality to episode, movie, and TV pages (1ea9800)
  • add warning kind to reauthentication confirmation dialog (1730d68)
  • add watchlist and sync watchlist translations to locale files (ce3096e)
  • call syncWatchlist function during component mount to ensure watchlist is up-to-date (4f834aa)
  • define Token and Session interfaces for authentication (fb8a527)
  • disable TMDB authentication button when session ID is present (c88f3cf)
  • enhance logging setup for main window in layout component (8218ba8)
  • extend the interfaces for RequestToken and AccessToken in authentication (9145fb1)
  • implement getWatchlist function to fetch user's watchlist (fe712a9)
  • implement postSession function to create TMDB session (4a5d43e)
  • implement rating component with dynamic star inputs (7bd63bb)
  • implement syncWatchlist function to synchronize local watchlist with TMDB (b1391b6)
  • implement TMDB authentication flow using Webview (80f834d)
  • implement watchlist page with movie and series retrieval (3a8293c)
  • replace remove button with Close SVG icon and adjust styles (ec7e022)
  • track changes in watch paths input and add dirty state on add button click (fc4d223)
  • update authentication types and refactor token handling in TMDB API (cb8cdad)
  • update serie watched status to reset wantsToWatch when marked as watched (229f2c2)
  • update TMDB authentication button and add reauthentication confirmation (26ce683)
  • update TMDB authentication labels in settings and localization files (66b872b)
  • update TMDB authentication to use access token instead of session ID (13987bc)

0.34.0 (2025-06-01)

Bug Fixes

  • change order of backups retrieval to use ID instead of createdAt (5a29e24)
  • close SQLite connection before moving backup file (d25def0)
  • comment out unused modal state in +page.svelte files (24df256)
  • correct white spaces in comments in ProgressBar.svelte and +page.svelte (02391fc)
  • deps: update dependency @tauri-apps/plugin-log to ^2.4.0 (0e066bb)
  • discord: simplify discord activity calls by removing details and state parameters (ed715bf)
  • episode: update trailer display condition to show when no path exists and videos are available (4bb0f54)
  • refactor backupConfig field definition for improved readability (b1750fd)
  • remove value attribute from theme selection options (e91b8ef)
  • set default value for size in backups schema to 0 (bf35662)
  • set default value for tmdbSessionId field in settings schema (96a44b6)
  • simplify filter functions in +page.svelte and tv/+page.svelte (b61ce5e)
  • update development profile settings for better optimization and debugging (8e1eba2)

Features

  • add backup configuration options for max age, max backups, and max size (d3facce)
  • add backup size tracking and enhance backup schema (5d5b346)
  • add Bookmark and BookmarkSlash SVG components (3f2b3d4)
  • add bookmark functionality with localized labels for adding and removing from bookmarks (5750563)
  • add DaisyUI plugin to Tailwind CSS integration (10591cb)
  • add localization for tabs in settings and backup sections (964856e)
  • add new settings migration with tmdbSessionId and updated schema (da253ab)
  • add reset SVG component for improved iconography (f405842)
  • add size column to backups table and improve action button layout (227804d)
  • add SVG components for Close, FolderAdd, and FolderOpen icons (26db041)
  • add tmdbSessionId field to settings schema for storing TMDB session information (52ecb93)
  • add updatedSize message for backup size updates in localization files (0c0e6ba)
  • add wantsToWatch field to collections, movies, and series schemas for tracking watch preferences (ca7dec3)
  • add watched field to collections schema for tracking watched status (83f5691)
  • add watchPaths and size labels to settings in localization files (89c4da3)
  • add watchPaths configuration to backup settings (e32b5c9)
  • add watchPaths configuration to settings with folder selection (99ae5e1)
  • add watchPathsHint localization to settings and backup sections (eb8191e)
  • enhance DaisyUI integration and update toast component styles (e2a9f40)
  • ensure backup directory is created if it does not exist (bd1b820)
  • implement cleanupBackups function to manage backup retention and size (4a4293b)
  • implement collectAndProcessWatchedFiles function to handle new files (14a8423)
  • implement formatBytes function for human-readable byte sizes (571ada8)
  • implement reset filters functionality with reset button (32591b0)
  • implement sorting functionality for backup list (bc8aba2)
  • implement toggleWatchedStatus function to update watched status of collection (66f3699)
  • mark series as watched if all episodes have been seen (c1a5b85)
  • set theme option values to lowercase for consistency (2287f06)
  • update icon colors to use theme variable for consistency (e3db14a)
  • Update localization strings and enhance reset button functionality (7ef7b13)
  • update validateBackups to fill missing size entries in the database (76492e1)

0.33.0 (2025-05-10)

Bug Fixes

  • backup: add createdAt timestamp when inserting new backup entries (ca44e6a)
  • backup: change new database button to use double-click for activation (eb5eaec)
  • backup: move backup file instead of removing it immediately (b3dfe5e)
  • format: enable pull request trigger and improve comments in workflow (2723a86)
  • i18n: simplify locale initialization by removing default fallback and using 'en' for both fallback and initial locales (c86de35)
  • image: improve error handling for invalid image dimensions (10f8ff3)
  • layout: conditionally update database only when online in production (4ff57bc)
  • layout: ensure trace logging occurs after cleanup on app close (c0a382f)
  • layout: update language setting logic to use user preferences (be70d08)
  • movie: update trailer display condition to check for video availability (9814e74)
  • navbar: add ondblclick handler to button for navigation (6919a17)
  • player: ensure proper cleanup and save watch time on destroy (e5a75d6)
  • settings: change default theme value to lowercase 'default' (04489b2)
  • settings: ensure changes are saved only if modified (99a9821)
  • settings: standardize theme default value to title case (f382eeb)
  • settings: update language change handler to set locale and mark as dirty (acede53)
  • themes: standardize theme names to title case (f260abf)
  • workflow: remove pull_request trigger from formatting workflow (62fd534)

Features

  • autoBackup: implement automatic backup functionality based on user settings (941c7b8)
  • i18n: add additional language registrations for localization (c161348)
  • i18n: add new sorting options and filters for media display (156879a)
  • i18n: update language selection to use available locales (3a80815)
  • search: integrate Fuse.js for enhanced filtering and sorting of media items (b8b9b32)
  • settings: add auto backup options to settings (ca8aa87)

0.32.0 (2025-05-07)

Bug Fixes

  • actor: improve biography section layout and conditional rendering (f6f6e12)
  • backup: conditionally render 'Neue Daten Bank' button in DEV environment (9ce3601)
  • nextEpisode: remove debug logging for next episode URL generation (735f005)
  • settings: ensure settings are saved and toast notification is displayed (50940b8)

Features

  • actor: add movie and TV icons to filmography list (3d0062e)
  • i18n: add 'leadActor' translation and update movie page to use it (24811cc)
  • i18n: add German localization for player and application strings (82f8320)
  • i18n: add new localization keys for sorting and next episode functionality (0d02ad5)
  • i18n: extend the localization (9fa9716)
  • i18n: implement localization for various components and update default locale structure (1134b4b)
  • i18n: update German translations to English for improved clarity and consistency (7881419)
  • i18n: update translations and add new keys for improved localization (ada84ee)
  • layout: add ProgressBar component for navigation feedback (00e68bd)
  • progress-bar: implement visibility control for navigation progress indicator (553694b)
  • svg: add movie and tv SVG components (21bcb37)

0.31.2 (2025-05-03)

Bug Fixes

  • episode, tv: pass additional parameters to episode and series retrieval functions (a20f23a)
  • episode: remove unused external IDs and credits sections from episode details (671ce30)
  • episode: update nextEpisode function to return URL and adjust navigation logic (937ec73)
  • layout: adjust main section padding and add margin for search input (a320984)
  • print view: hide elements in print view for Navbar, Toast, and main page (20d00d9)
  • season: remove unused season page and related load function (5b2a1d1)
  • styles: remove redundant active class styles from app.css (a898cc8)
  • tv: improve episode list styling and handle missing episode names (bb7670c)
  • tv: update selectedSeason logic to retrieve the last unwatched season (7f82523)

0.31.1 (2025-05-03)

Bug Fixes

  • correct condition for starting Discord RPC (322a75d)
  • correct the path for the migration directory in the compile time (1e2ccec)
  • deps: update dependency @tauri-apps/plugin-updater to ^2.7.1 (41c9a43)
  • deps: update dependency hls.js to ^1.6.2 (37c5171)
  • deps: update rust crate tauri-plugin-drpc to 0.1.6 (ce1dadd)
  • deps: update rust crate tauri-plugin-updater to 2.7.1 (c28b299)
  • deps: update tauri monorepo (f3354a1)
  • discord: ensure Discord RPC stops when not active (5a6a246)
  • logging: set log file name based on build type (63608f0)
  • settings: restore settingsDB update on component destruction (f4086a0)
  • update fetch-depth in checkout steps to 1 for better history access (e839a9f)

0.31.0 (2025-04-17)

Bug Fixes

  • add IF NOT EXISTS clause to table and index creation statements in migration script (5b5f67c)
  • correct syntax errors in SQL migration script for table creation (687ecf5)
  • disable filters for movies, series, and collections when no data is available (3fbe3f2)
  • reload page after removing series path (2b42702)
  • Remove obsolete migration snapshots and journal files to clean up the database schema history. (e29fae7)
  • remove unnecessary spaces in SQL migration scripts (803c23f)
  • set status to "downloading" for new series and ensure ID uniqueness check (397c486)
  • update badge text to improve user clarity (e535d6d)
  • update release name in Tauri workflow to 'Test vVERSION' (66a9cb5)
  • update removeElementById to use data.episodeID for correct path removal (d15a5f6)

Features

  • add badge for episodes in collection when path is not null (8be4636)
  • add debug option to tauri build script (e3766e8)
  • add GitHub Actions workflow for Tauri release on Windows (4d200ea)
  • add IF NOT EXISTS clause to new actors table creation (04fdb89)
  • add IF NOT EXISTS clause to table creation statements in migration scripts (71ec45a)
  • add include_dir dependency version 0.7.4 to Cargo.toml (b6f0971)
  • add initial migration files for database schema including tables and indexes (cadc1ae)
  • add navigation to next episode and update load function to include nextEpisodeID (ec67c6e)
  • add tagName to Tauri release configuration for versioning (9ec3177)
  • add Tauri configuration for Windows portable build (c480681)
  • add watched badge to episodes list and improve styling (10846d5)
  • ensure bundle is active in Tauri Windows configuration (70e969b)
  • implement migration loading functionality for database (d8b5592)
  • implement nextEpisode function to retrieve the ID of the next episode (f0ec1d9)
  • implement session storage for search criteria management (82f1ad3)
  • remove migration functionality from settings and layout components (f60c7f4)
  • remove migrations resource from Tauri configuration (0a50fac)
  • remove obsolete Tauri Windows configuration file (6c26a4b)
  • remove tagName from Tauri release configuration (4a53268)
  • rename workflow and job for clarity in test release process (70b7b6d)
  • serialize settings data in logging for better debugging (74a5a32)
  • set database path dynamically based on build type (6f5b38d)
  • update add methods to check ID uniqueness before inserting or updating records (d12b34b)
  • update addNewSerie to handle missing entries by setting search status to "notFound" (2f2f797)
  • update addNewSerie to handle non-unique IDs by updating search status (b9da11f)
  • update navigation to next episode with state invalidation and enhance load function to depend on episode data (c4f8b5b)
  • update pnpm version to 10 and remove unused signing keys from Tauri action (e66e5c2)
  • update release configuration for Tauri app with correct tagName and release details (1f31771)
  • update release settings for Tauri Test Release to draft and non-prerelease (e5e92bf)
  • update Tauri configuration for Windows test release (8fe11c2)

0.30.0 (2025-04-11)

Bug Fixes

  • add undefined checks for IDs in actor, collection, episode, movie, season, and serie retrieval functions (1381928)
  • add watched filter to movies and series display (c5aa1a8)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.2.1 (051ff9f)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.2.1 (72019d1)
  • deps: update dependency @tauri-apps/plugin-process to ^2.2.1 (4ea5b5f)
  • deps: update dependency @tauri-apps/plugin-updater to ^2.7.0 (008a781)
  • deps: update rust crate tauri-plugin-dialog to 2.2.1 (c5c294d)
  • deps: update rust crate tauri-plugin-fs to 2.2.1 (7917306)
  • deps: update rust crate tauri-plugin-process to 2.2.1 (3472839)
  • deps: update rust crate tauri-plugin-updater to 2.7.0 (f048089)
  • deps: update tauri monorepo (32f95d6)
  • enhance actor and movie data structure with additional fields (94c4bff)
  • improve error handling and data retrieval for series, seasons, and episodes in load function (8b2184f)
  • make seriesId and seasonNumber optional in getAll method parameters for episode, season, and serie (5692d19)
  • remove primary key constraint from id field in actors, collections, episode, movies, season, and serie tables (00f18b1)
  • update button disabled state logic for season selection (7d4c559)
  • update condition to display main content when movies, collections, or series are available (ef35fed)
  • update episode insertion logic to use fetched ID instead of provided ID (6b4c9ae)
  • update getAll method to handle optional items parameter and improve ID filtering (74c6149)
  • update select logic in collection, episode, movie, season, and serie to return results instead of void (e5bb036)

Features

  • add delete button disable logic for development mode (9e15972)
  • add newDB function for database backup and reload functionality (93ab76f)
  • adjust sidebar styling for actor details page (154ff2f)
  • enhance getAll methods to support filtering by multiple IDs for actor, collection, episode, movie, season, and serie (1fbab32)
  • extend loadImages function to support Season and Episode types (58e2ac7)
  • filter backups based on environment mode in validateBackups function (a4c1693)
  • filter backups based on environment mode in validateBackups function (aa3c8f9)
  • implement online fetching for actors, collections, episodes, movies, seasons, and series (469d0bf)
  • improve backup management UI and function naming for clarity (0f07481)
  • improve layout and styling of actor details page for better readability (ce9ad7f)
  • refactor settings management into a separate component (152164c)
  • update removal logic for episode, movie, season, and series to set path to null (7799744)
  • update validateBackups function to create DB entries for unreferenced backup files (dae9529)

0.29.0 (2025-04-07)

Bug Fixes

  • remove redundant overview section from series details (e51b63d)

Features

  • add isFile utility function to validate file paths (551db0f)
  • enhance movie display with watched and downloaded badges in collection view (aef0c70)
  • implement sorting functionality for movie collection with toggle option (f111ce3)
  • improve file validation in addNewFiles function and enhance isFile utility (cd0ace2)
  • refactor fetchData and parseResponse functions for improved error handling and parameter management (f505343)
  • update addSeasonToDatabase to accept season details and process each season correctly (911ddfa)

0.28.0 (2025-04-06)

Bug Fixes

  • add YouTube trailer check for online series data (e9b5bf1)
  • correct browser check in layout load function (5da425d)
  • dependencies: remove outdated node_modules and regenerate package-lock.json (33454a9)
  • deps: update dependency @tauri-apps/plugin-log to ^2.3.1 (7213320)
  • deps: update dependency better-sqlite3 to ^11.9.1 (fde363f)
  • deps: update dependency drizzle-orm to ^0.41.0 (623d52e)
  • deps: update dependency hls.js to ^1.6.0 (42b97a3)
  • deps: update tauri monorepo (9734698)
  • enhance default settings creation with retry logic and migration fallback (06f3ab1)
  • ensure tmdb property is defined in isMovieEntry function (b777fb3)
  • handle missing backdrop image and provide default overview text (e578cf5)
  • settings: enforce not null constraint on keywords and ignoredKeywords fields (e101736)
  • settings: simplify unsaved changes confirmation logic (f40f35b)
  • update condition to check for non-empty movie, collection, and series data (5803745)
  • vscode: remove duplicate Svelte extension recommendation (85e9b2f)

Features

  • add card component with dynamic scaling and image support (a00e9cd)
  • add genre extraction and return genres in load function (9bbca2b)
  • add link to open collection on TMDB (2aedd38)
  • add placeholders for TMDB titles to movies with path (b9f9943)
  • add search SVG icon component (044d2b8)
  • add watched badge to movie card component (c859835)
  • add watched property to movie and TV card components (7fee49b)
  • enhance user experience by adding a link to add movies when none are added (f5d8177)
  • implement genre filtering and sorting options for movies, series, and collections (2f15c6a)
  • implement isMovieEntry utility function and refactor movie filtering logic (b5767a5)
  • implement search functionality for collections, movies, and series (ca094a7)
  • layout: update settings in database on app close (d3f840a)
  • optimize card component scaling logic for improved readability and maintainability (08288b9)
  • optimize data retrieval and filtering for movies, series, and collections (a09ff6c)
  • refactor card scaling logic and introduce scaleClasses utility (b47ed0c)
  • refactor movie display logic and improve search functionality (bcde742)
  • replace anchor elements with Card component for improved UI consistency (5709d2d)
  • replace inline search SVG with reusable Search component (3bd960d)
  • settings: implement default settings creation and retrieval logic (82d9ec5)
  • settings: initialize settings state from database (908698a)
  • settings: refactor settings handling with temporary state for improved user experience (f141dda)
  • tv: implement async image loading for backdrop and enhance layout (25dfdf1)
  • update button styling for grid/list view toggle (bb51680)
  • update search input styling and SVG icon for improved UI (87ecfde)

0.27.0 (2025-03-30)

Bug Fixes

  • deps: update dependency @tauri-apps/plugin-updater to ^2.6.1 (8e5056f)
  • deps: update rust crate tauri-plugin-log to 2.3.1 (a72060a)
  • update copyright notice from Seenivers.net to Seenivers.com (26554be)

Features

  • updater: enhance update handling with download progress tracking and improved UI (f7740f4)

0.26.1 (2025-03-29)

Bug Fixes

  • tv: update condition to check for empty movies, collections, and series (7ec363a)

0.26.0 (2025-03-29)

Bug Fixes

  • await movie.add() to ensure proper asynchronous handling when saving movie to database (ad91e2c)
  • await serie.add() to ensure proper asynchronous handling when saving series to database (ea16961)
  • correct season and episode indexing in addNewSerie and addSeasonToDatabase functions (5803344)
  • deps: update rust crate serde to 1.0.219 (bcd024d)
  • deps: update rust crate serde_json to 1.0.140 (2c04f71)
  • deps: update rust crate tauri-plugin-updater to 2.6.1 (03cdec6)
  • enhance update functions for episode, season, and serie to handle empty updates and improve error logging (78aae90)
  • enhance updateMovie function to handle empty updates and improve error handling (bc724d1)
  • ensure movie data is re-fetched if not found locally (a73f025)
  • episode: update trailer display logic to ensure path existence check before showing trailers (2e5ab33)
  • improve entry validation in addNewMovies function (9ca2d0a)
  • improve input handling by simplifying null check for keywords (cfa55a8)
  • movie: improve layout and structure of movie details page for better readability (58be92a)
  • optimize collection loading by removing unnecessary updated timestamp (92dabac)
  • optimize layout and structure of episode, movie, season, and TV pages for improved readability (a36075e)
  • page: simplify href construction for movie and TV links (a0b777f)
  • refactor movie loading logic to streamline database storage process (65cdf5b)
  • remove duplicate keywords in settings input handling (4984b56)
  • remove includeAdult option from SearchOptions interface (7e1086c)
  • remove unnecessary console log from season page load function (99084cb)
  • remove unnecessary series ID uniqueness check in addNewMovies function (c761dfd)
  • remove unnecessary updated timestamp from database entries (92a9366)
  • remove unused imports from episode, season, and tv page components (1d1db2e)
  • rename addEpisodesToDatabase function to addSeasonToDatabase for clarity (c173da0)
  • rename addNewFilesToStatus to addNewPathsToStatus for consistency (d74d7dc)
  • rename isPathUnique to isMoviePathUnique for clarity (4ee7241)
  • replace addNewFilesToStatus with addNewFiles in selectTvFolder function (7a42686)
  • season: update header from 'Serienbesetzung' to 'Staffelbesetzung' for improved localization (0ab0f1e)
  • settings: enhance language option display with localized names (96be5f9)
  • settings: improve layout and localization of settings page components (0578c54)
  • simplify filtering of wait entries in add page (682cb06)
  • tv: improve layout and structure of season and episode sections for better readability (f7154a5)
  • tv: improve layout and structure of TV series and seasons sections for better readability (21c76ec)
  • tv: optimize image handling for season posters to enhance loading performance (70cac5d)
  • update addNewFiles function to handle both movies and series (dd5a716)
  • update default timestamp to current date for database schema (fd3bd35)
  • update episode link to use correct route for episode details (408ac63)
  • update error message for missing series in load function (05237fc)
  • update error messages and variable names for season data retrieval (a9b38eb)
  • update load function to directly add new files from data.paths (8b86bbf)
  • update loadImages function to accept both Movie and Serie types (b236029)
  • update parameter names for clarity in addNewFiles functions (3043c2e)
  • update query parameter name from 'seasonNumber' to 'seasonID' in parseSeasonId function (cd29bd8)
  • update return types in getSerie, getSerieSeason, and getSerieSeasonEpisode functions (a0b2a67)
  • update season link to include tvShowID for proper routing (1253d70)
  • update season link to use season_number for proper routing (35b4af8)
  • use isSeriePathUnique for series path uniqueness check in filterNewFiles (9da41ca)

Features

  • add isSerieIDUnique function to check for unique series ID in the database (7e8def4)
  • add isSeriePathUnique function to check for unique series paths (91fa560)
  • add media type to Plyr and Vidstack components for movie playback (a708c76)
  • add parseEpisodeId function to retrieve and validate episode ID from URL (aff268b)
  • add parseSeasonId function to retrieve and validate season ID from URL (e9c80d3)
  • add parseSeasonNumber function to retrieve and validate season number from URL (116e598)
  • add parseSerieId function to extract and validate tvShowID from URL (a19e9df)
  • add seasonID and episodeID to URLs for improved routing and data retrieval (5e925f5)
  • add selectTvFolder function to enable TV folder selection in the add page (474b029)
  • add support for media types to video utilities and player components (3bf31e0)
  • add TV series page with functionality to toggle watched status, remove series, and open file path (e1de1d8)
  • allow selection of multiple TV folders in selectTvFolder function (3aa46f6)
  • discord: add isRunning check for Discord activity status (6b6d14f)
  • enhance addNewMovies function to check for unique series ID (dd22482)
  • enhance load function to handle TV series separately in movieIds processing (ce43e97)
  • episode: add episode page (6c3d30f)
  • episode: improve episode details display with enhanced localization and additional information (37c3f4b)
  • export MediaType type for broader accessibility (f6acb75)
  • filter: implement isMovie function for movie type checking (56f80c5)
  • implement actor utility functions for database operations (0fc5917)
  • implement addEpisodesToDatabase function to add seasons for a serie (7f669d2)
  • implement addEpisodeToDatabase function to add episodes for a season (8189984)
  • implement addNewSerie function for adding series to the database (5fd8474)
  • implement collection management functions for adding, retrieving, updating, and deleting collections (3011cf1)
  • implement episode utility functions for CRUD operations and uniqueness checks (3f02384)
  • implement function to find seasons and episodes from directory structure (18225d4)
  • implement getSerie function to retrieve series from the database (851a248)
  • implement load function to manage file loading and searching process (ab71f81)
  • implement movie management functions for adding, retrieving, updating, and deleting movies (1594eff)
  • implement season page with data loading and management functions (d4b1df7)
  • implement season utility functions for CRUD operations and uniqueness checks (53001a2)
  • implement serie utility functions for CRUD operations and uniqueness checks (05684a0)
  • implement series retrieval logic with local and TMDB fallback (fa9d170)
  • links: update TMDB links to include season and episode details (2061380)
  • page: enhance movie and series handling in page load (df33310)
  • season: enhance season details display with additional information and improved localization (f921bac)
  • streamline addNewSerie function by integrating episode addition and image loading (dd40742)
  • trailer: add online check before displaying trailers in episode, movie, season, and tv pages (490ae89)
  • trailer: update trailer display logic to check for path existence before showing trailers (881c636)
  • tv: update TV details display with additional information and improved formatting (8da4be0)
  • update addSeasonToDatabase and addEpisodeToDatabase functions to handle season and episode paths (e6b109e)
  • update movie path during addition of new movies for better tracking (8bcecac)

0.25.0 (2025-03-07)

Bug Fixes

  • backup: close DB connection and reload app after restore (6248a90)
  • backup: ensure backup validation returns a boolean value (a735e8d)
  • backup: rename restoreBackup to validateBackup and update button functionality (c5a4499)
  • backup: replace 'on:click' with 'onclick' for backup button event handling (bc1f0be)
  • backup: update get method to retrieve backup by ID (0c9fb8d)
  • backup: use platform-specific path separator in extractFileName function (8cca32c)
  • backup: validate backups before restoring and move backup files instead of copying (884db6e)
  • correct typo in destroy function import from tauri-plugin-drpc (76a4d5e)
  • deps: update dependency @tauri-apps/plugin-log to ^2.2.3 (692496e)
  • deps: update dependency @tauri-apps/plugin-opener to ^2.2.6 (8045363)
  • deps: update dependency @tauri-apps/plugin-updater to ^2.5.1 (a8dc53a)
  • deps: update dependency tauri-plugin-drpc to ^1.0.3 (64e1e32)
  • deps: update rust crate serde to 1.0.218 (edfd407)
  • deps: update rust crate tauri-plugin-drpc to 0.1.4 (d08095c)
  • deps: update rust crate tauri-plugin-log to 2.2.3 (898b86f)
  • deps: update rust crate tauri-plugin-opener to 2.2.6 (7f22b57)
  • deps: update rust crate tauri-plugin-updater to 2.5.1 (c478159)
  • deps: update tauri monorepo (3ea4923)

Features

  • backup: add backup validation button to the backup settings (41437f1)
  • backup: implement backup management interface with create, restore, and delete functionalities (6ea9130)
  • backup: implement backup validation to clean up missing or unused entries (8d20553)
  • backup: implement delete functionality for backups (55e8c04)
  • backup: implement restore functionality for backups (cf8b16e)
  • settings: add backup tab to settings page (fa5fac5)

0.24.1 (2025-03-01)

Bug Fixes

  • backup: adjust backup file naming for development environment (0fa171c)

0.24.0 (2025-03-01)

Bug Fixes

  • add: comment out button for selecting TV folder (a69a9be)
  • add: handle potential null settings.keywords in file name cleanup (1bc1415)
  • backup: remove trailing hyphen from development database filename (8650d4c)
  • change Date types to string for TV show data structure (78ed626)
  • deps: update dependency tauri-plugin-drpc to ^1.0.2 (cacb814)
  • deps: update dependency vidstack to ^1.12.13 (a4cdd60)
  • settings: update handleInput function to support multiple input types for keywords (ecf8285)
  • types: add ISO3166_1 type to tv.ts for improved country code handling (d9c74c4)
  • types: update tmdb type in episode schema to use Episode type (9bc4f0d)
  • types: update tmdb type in season schema to use Season type (d9e986b)
  • types: update type declarations in tv.ts for consistency (9a7c42f)

Features

  • add 'discordAktiv' setting to manage Discord RPC activation (1c80b07)
  • add button to select TV show folder in add page (541716c)
  • add episode schema to database with relevant fields (18b844f)
  • add function to search for TV programs in the TMDB (49fee00)
  • add ignoredKeywords and theme properties to Settings interface (3beb73c)
  • add ignoredKeywords property to settings schema and implement UI for keyword input (1c9d40b)
  • add light and dark themes to daisyUI configuration (99bc628)
  • add mediaType to SearchList for distinguishing between movies and TV shows (3758e95)
  • add OldData interface and related OldMovie structure to types.ts (171227a)
  • add schema for series in the database (697201f)
  • add season schema to database with relevant fields (6dce9f2)
  • add selectTvFolder function for selecting TV show directories (1a09a15)
  • add serie, season, and episode to the database schema exports (ec5b32e)
  • add theme property to settings schema and implement theme selection in settings page (98b55a6)
  • add themes array to support multiple UI themes (ff1c441)
  • add TV interface to searchMovie.ts for improved type definitions (1ee8938)
  • add TypeScript types for TV show data structure (9a5540b)
  • api: add getSerie function to fetch TV show details (551ff86)
  • api: add getSerieSeason function to fetch season details for a TV show (38061e1)
  • api: add getSerieSeasonEpisode function to fetch episode details for a TV show (7d64659)
  • backup: implement backup utility functions for database management (3674dc9)
  • backup: improve backup utility with error handling and directory management (07afee9)
  • capabilities: add permission to allow file copying (0b4ff37)
  • check Discord activity status against settings before updating presence (0801a1a)
  • db: add backup schema for managing backup records (0f8a898)
  • db: add backups to the database schema (76f6001)
  • erweitere Suchfunktionalität zur Unterstützung von TV-Serien in SearchList (66a347d)
  • export addNewFilesToStatus function for external usage (934ba48)
  • extended search functionality to support movies and TV series in searchMovieStatus (3f16cde)
  • implement isMovie utility function for file type detection (4a3d9c3)
  • implement setTheme function to manage theme selection and fallback (78511cc)
  • improve title and year display in the search results list (1b6d32d)
  • integrate setTheme function in settings initialization (4e7e998)
  • mark themes array as readonly (619638d)
  • migrations: add new migration with backup table creation (9e8a131)
  • migrations: enhance settings migration to handle default values for theme and discordAktiv (fab00ff)
  • migrations: update settings migration to handle null ignoredKeywords (5889c81)
  • move updateMovieStatus function to utils for better organization (76de5b6)
  • rename searchMovieStatus to searchMediaStatus for improved clarity (e3bc059)
  • rename Tv type to Serie and update schema accordingly (b8d8a47)
  • replace 'watchTime' field with 'season' in serie schema (512d87b)
  • set default theme to 'default' in HTML document (c878da1)
  • settings: add backupInterval setting to manage backup frequency (86c966c)
  • streamline settings update function in settings page (771caed)
  • types: add Episode type for media structure enhancement (3f9df29)
  • types: add Season type for improved media structure (3d8a27d)
  • types: rename tv.ts to serie.ts (0bfb65f)
  • types: reorganize TV types into a dedicated directory and update imports (55390ba)
  • update 'updated' field in database schemas to use $defaultFn for default value (4f91e5b)
  • update default value for 'episode' and 'season' fields to 1 in database schemas (471fd47)
  • update movies table schema to auto-increment id and handle conflicts (4be0fad)
  • updater: integrate backup creation during update process (cf3dd79)
  • utils: add utility folder for theme management, network status, session storage, logging, and element handling (7c98519)
  • utils: reorganize utility imports to use the new directory structure (c7b8bf9)

0.23.0 (2025-02-16)

Bug Fixes

  • deps: update borsh and tauri-plugin-log to latest versions (0bcbd61)
  • deps: update dependency hls.js to ^1.5.20 (8c61826)
  • deps: update rust crate serde_json to 1.0.138 (48d8c31)
  • deps: update rust crate tauri-plugin-drpc to 0.1.3 (e64a663)
  • deps: update rust crate tauri-plugin-log to 2.2.1 (747b8a1)
  • deps: update rust crate tauri-plugin-updater to 2.5.0 (a0963d6)
  • deps: update tauri monorepo (c2bfeb9)
  • improve movie addition logic and handle duplicate IDs (5c463de)
  • optimize movie addition logic to handle existing IDs and improve error handling (68d81da)
  • refactor addNewMovies function to handle entries with IDs and indices for improved processing (cdff646)
  • refactor getMovies function to structure movie data with IDs for better error tracking (6d56ace)
  • refactor movie addition to handle multiple IDs and improve batch processing (e466708)
  • refactor movie addition to handle multiple IDs and improve status updates (dfb3d68)
  • refactor movie ID handling to include indices for improved data processing (89d8917)
  • simplify dirty tracking logic (07ba9b9)
  • update movie status on download error (c4b9200)
  • update seeniversURL for development environment (ebd500b)
  • workflow: improve cache cleanup logic to avoid deleting already removed caches (1931af8)

Features

  • implement getMovies function to fetch multiple movies with error handling (3b48a71)

0.22.0 (2025-02-08)

Bug Fixes

  • dependencies: add tauri-plugin-drpc and update related packages (1ed29a4)
  • dependencies: update Svelte version to 5.19.9 in package.json and pnpm-lock.yaml (d063e12)
  • deps: update dependency @tauri-apps/plugin-log to ^2.2.1 (0112ebd)
  • deps: update dependency drizzle-orm to ^0.38.4 (5312412)
  • desktop: add DRPC permissions to desktop capabilities (6289f8e)
  • discord: add Discord activity details for adding new movies (da6889a)
  • discord: add initial Discord activity details for movie collection viewing (d9bf511)
  • discord: add small images and timestamps to Discord activity options (326835c)
  • discord: enhance Discord activity management with customizable options (cee16af)
  • discord: implement Discord RPC activity management (f642968)
  • discord: make 'state' optional in Discord activity and update activity creation logic (e0e9d7b)
  • discord: remove async from onMount in multiple pages for Discord integration (05c88f4)
  • discord: remove timestamp setting from Discord RPC activity (ded777c)
  • discord: update activity type to 'Watching' for improved clarity (e9cff9b)
  • discord: update Discord activity details on movie collection view (bc0e16c)
  • discord: update Discord activity details on movie page load (f772425)
  • discord: update Discord activity details with current movie title and rating (204cc62)
  • discord: validate timestamps as integers before setting in Discord activity (e5eeaf1)
  • index: add Discord client ID to the library exports (9c3a157)
  • layout: initialize RPC connection in layout component (17bf4dd)
  • layout: properly destroy DRPC connection on component unmount (d237526)
  • lib: add Plyr and Vidstack formats to video file selection filters (262ef16)
  • lib: update video format extensions to include plyr and vidstack formats (480b983)
  • migrations: create new movies and settings tables with data migration (0f607a2)
  • migrations: update settings migration to use default values for player and castImages (8a9eebf)
  • movie: correct spelling mistakes in the money formatting and prevent trailer thumbnails from being pulled (09fbdd2)
  • movie: remove openUrl usage and update link to open in a new tab (238eb0f)
  • page: simplify collection filtering using optional chaining and nullish coalescing (6627a31)
  • player: conditionally render Plyr or Vidstack based on player settings in movie route (516b97e)
  • player: rename Videoplayer component to Plyr in movie route (1f8fd2f)
  • sessionStorage: change SearchCriteria type to interface for better extensibility (9fd3bb2)
  • settings: add onchange event to video player select for dirty state tracking (7ad716d)
  • settings: add range input for number of cast images to download (a415a95)
  • settings: add video player selection to settings page (2c7289c)
  • settings: change textarea input event from oninput to onchange for better handling (3195f2e)
  • settings: improve dirty state tracking for settings form (52a0cb2)
  • settings: improve unsaved changes confirmation logic (62f6453)
  • settings: replace castImages constant with settings.castImages in image loading logic (a1eec87)
  • settings: track form changes and prompt on unsaved changes (e9ac6a6)
  • settings: update labels and layout for better clarity and consistency (810bb32)
  • settings: update navigation logic to use history back or redirect to home (076e86b)
  • tauri: add tauri_plugin_drpc to the Tauri builder (af597e6)
  • tv: improve readability by adding braces to setTimeout callback (7ff34af)
  • types: add castImages property to Settings interface and schema (b69b62a)
  • types: add player property to Settings interface for Plyr and Vidstack (bc5bf7c)
  • types: add player property to settings schema with default value 'Plyr' (e6fb606)
  • videoUtils: use optional chaining for safer watchTime access (aa54df4)
  • workflow: add repository checkout to cleanup job to fix cache deletion (43c13a5)
  • workflows: enhance cache cleanup to delete caches for non-existent branches and retain only the newest two for active branches (ca26c65)
  • workflows: improve cache cleanup logic to retain the newest two caches for pull requests (24b4444)
  • workflows: improve cache cleanup script to enhance branch existence checks and retain only the newest two caches (32b6423)
  • workflows: update cleanup script to delete multiple caches for pull requests (9799bfe)
  • workflows: update permissions for cleanup job to allow read and write access (397a457)
  • workflow: update fetch-depth in format.yml to improve checkout efficiency (0e8631c)

Features

  • discord: add button support to Discord activity for enhanced interaction (584ea8b)
  • discord: add development Discord activity details for improved presence (67f3c84)
  • discord: add Discord activity details for actor viewing (802ab34)
  • discord: initialize Discord integration on settings page (052531a)
  • utils: add handleLinks function to manage external links with Tauri's openUrl (99a2a61)
  • utils: rename handleLinks to handleLinksAndImages and add functionality to make images non-draggable (cba4095)
  • utils: rename handleLinksAndImages to handleElements and enhance functionality to make links non-draggable (4333696)
  • workflows: add workflow_dispatch trigger for cache cleanup on pull request closure (7cc1811)

0.21.0 (2025-01-29)

Bug Fixes

  • actor: improve error handling messages for browser and data validation (0b38989)
  • collection: add badge to indicate movies in the collection (174e441)
  • collection: ensure safe access to movie properties in class bindings (c09e847)
  • collection: update preload data behavior based on movie download status (e6844f0)
  • dependencies: remove tauri-plugin-single-instance from Cargo files (b2a6c74)
  • movie: conditionally render Hauptdarsteller section based on cast availability (ac7c5ae)
  • movie: ensure release date displays correctly or shows fallback message (0fc7c34)
  • routes: increase timeout duration before navigating back to improve user experience (28415c9)
  • routes: move navigation logic to ensure it executes after URL opening (5c6ab89)
  • routes: optimize error handling for actor and movie loading logic (b2e2746)
  • routes: refine movie and collection handling with type guards and improved filtering logic (2ba01d1)
  • routes: replace throw with error for better error handling in browser checks (93679e6)

Features

  • actor: add functionality to save actor data to the database upon loading (6ecf314)
  • collection: add movies array to collection load function (a3df176)
  • collection: add movies array to collection page for enhanced movie display (3c20c60)
  • collection: add updated timestamp to collection details (ed9abb7)
  • collection: optimize collection loading with modular imports and error handling (1a33ba9)
  • image: implement lazy loading for images using Intersection Observer (c437378)
  • image: refactor image loading to use async/await for improved performance (65615a3)
  • movie: enhance movie page layout with trailer and main cast sections (3c4f281)
  • movie: improve movie loading logic with error handling and local fallback (f90a86f)
  • movie: initialize movie path as null and add movie to module (2f7a52d)
  • routes: replace navigator.onLine with online.current for improved online status handling (2e9452a)
  • workflow: add cleanup workflow for cache on closed pull requests (4695d4b)
  • workflow: improve cache cleanup workflow for pull requests (80c8543)

0.20.0 (2025-01-28)

Bug Fixes

  • correct film status check logic before opening modal (a369a29)
  • security: update Content Security Policy to include seenivers.com (c333ca6)
  • security: update img-src in Content Security Policy to allow YouTube images (ce5278f)

Features

  • add WEEKS constant for film update duration in database logic (8d2201a)
  • extended castImages logic to control the actor images to be downloaded (53d4367)
  • implement fallback to TMDB for collection data retrieval when offline (10f2ccd)
  • update WEEKS constant to extend film update duration to 4 weeks (f153a74)

0.19.0 (2025-01-25)

Bug Fixes

  • deps: update dependency @tauri-apps/plugin-opener to ^2.2.5 (855505c)
  • deps: update rust crate serde_json to 1.0.137 (ea3bed4)
  • deps: update rust crate tauri-plugin-opener to 2.2.5 (0bb8d5c)
  • deps: update rust crate tauri-plugin-single-instance to 2.2.1 (8e8bfbf)
  • deps: update tauri monorepo (1d661b8)
  • movie: ensure movieData.path is checked before opening external player (da37ab8)
  • movie: replace form with button for closing modal (aa24c10)
  • movies: make 'path' field nullable in movies schema (9280124)

Features

  • db: add deleteActor function to remove actors by ID (4b3bad4)
  • db: add deleteCollection function to remove collections by ID (5956613)
  • db: add isActorIDUnique function to check for unique actor IDs (e01837d)
  • db: add updateActor function to modify actor details by ID (b2595e2)
  • db: add updateCollection function to modify collections by ID (4f2330c)
  • plugins: add tauri-plugin-single-instance for single instance application support (bc6528d)
  • plugins: enhance single instance plugin to focus main window on launch (52df561)

0.18.2 (2025-01-20)

Bug Fixes

  • movie: use openPath instead of openUrl for opening video files (11acb19)
  • tauri: add permissions for opener to allow opening URLs and paths (4c6b8d4)
  • tauri: update media-src to allow assets from http://asset.localhost (f326ad7)

0.18.1 (2025-01-18)

Bug Fixes

  • add dependency on format job for semantic release (db9e863)
  • deps: update dependency @tauri-apps/plugin-opener to ^2.2.3 (c7fe647)
  • deps: update dependency @tauri-apps/plugin-opener to ^2.2.4 (3d58c1a)
  • deps: update dependency @tauri-apps/plugin-updater to ^2.3.1 (a663243)
  • deps: update dependency better-sqlite3 to ^11.7.2 (8692417)
  • deps: update dependency better-sqlite3 to ^11.8.1 (8db3174)
  • deps: update dependency hls.js to ^1.5.19 (f29394f)
  • deps: update rust crate serde_json to 1.0.135 (da292b4)
  • deps: update rust crate tauri-plugin-opener to 2.2.3 (f3c5ac2)
  • deps: update rust crate tauri-plugin-opener to 2.2.4 (5035b68)
  • deps: update rust crate tauri-plugin-updater to 2.3.1 (8d04945)
  • deps: update tauri monorepo (c680f0a)
  • deps: update tauri monorepo (b39f7b7)
  • deps: update zbus to version 5.2.0 and tauri-plugin-opener to version 2.2.4 (9ca3df1)
  • improve actor age calculation by handling death date (c291616)
  • open media links in a new tab (b2c346c)
  • refactor actor filmography and crew display for improved readability (9a3f450)
  • remove automergeSchedule from Renovate configuration (227ab27)
  • remove tauri-plugin-shell dependency and related configurations (4a08ff7)
  • remove unused type imports from actor page component (7765e5a)
  • remove updaterJsonPreferNsis from release workflow (4a0fb0b)
  • replace deprecated open function with openUrl for external links (7c8db34)
  • swap gender labels for actor representation (651eb81)
  • update actor filmography links to use correct media type URLs (b50eea2)
  • update target formats in tauri configuration (f981cad)
  • update VSCode settings to ignore additional files and directories (1a0f14e)
  • workflows: adjust job dependencies for code formatting and semantic release (5d06201)
  • workflows: update job dependency for Tauri release to depend on format (0faf883)

0.18.0 (2025-01-13)

Bug Fixes

  • add write permissions for content in the release workflow (37328cb)
  • layout: prevent context menu in production environment (7293861)
  • macOS: add signingIdentity to Tauri config for self-signing (1fedd00)
  • update Renovate schedule to run before 5 a.m. and set timezone to Europe/Berlin (bcfc28d)

Features

  • add error handling and actor details localization in German and English (c8fb6c8)
  • add network status localization in German (4c945af)
  • add network status messages and enhance add page localization in English (486d332)
  • add support for German, French, and Spanish translations (c17492c)
  • dependencies: add svelte-i18n for internationalization support (bf7fe35)
  • docs: add Crowdin badge to README (06372b2)
  • enhance German localization for add page and modal components (74856ec)
  • i18n: add internationalization support for title in the main page (82eef02)
  • i18n: configure i18n-ally settings for locale paths and key style (58b4c8f)
  • i18n: extended German translations for navigation and loading displays (5f9a448)
  • i18n: extended German translations for search filters and loading displays (e88eb7b)
  • i18n: implement internationalization with German locale support (cc94b73)
  • implement localization for navigation buttons in German (bb2b1f0)
  • movie: display YouTube trailers when available (3105b66)
  • update i18n-ally settings for improved localization management (8625cf5)
  • workflow: add code formatting job to release workflow (76a5e37)

0.17.0 (2025-01-07)

Bug Fixes

  • docs: update GitHub License badge link in README.md (1543250)
  • enable updaterJsonPreferNsis in release workflow for improved installer handling (265b1d2)
  • renovate: remove unnecessary npm label from automerge configuration (fba2583)
  • tsconfig: add vidstack types for improved type checking in Svelte (76ac22b)
  • update migration file path handling to use join for better compatibility (783a10d)
  • update targets in tauri configuration to 'all' for broader compatibility (398652e)

Features

  • add SECURITY.md to outline security policy and reporting procedures (72685fb)
  • add vidstack dependency for enhanced video handling (706d62b)
  • csp: add media-src directive to tauri configuration (f83f9b9)
  • dependencies: add hls.js version 1.5.18 to package.json and pnpm-lock.yaml (6100b73)
  • dependencies: update schedule to run on Sundays and Saturdays for better automation (7b76591)
  • i18n: add Vidstack URL for documentation reference (1f48bac)
  • implement Vidstack player component for video playback and tracking (8935775)
  • movie: display genres as badges for improved visual clarity (cdcd4f5)
  • movie: enhance movie details display with additional information (289aaf4)
  • movie: improve movie details layout and format monetary values (e687192)
  • movie: remove homepage section for cleaner movie details display (6e9847b)
  • movie: remove unnecessary text-base class for improved layout consistency (5783013)
  • readme: add GitHub badges for stars, forks, issues, contributors, downloads, and latest release (77715b6)
  • renovate: add 'dependencies' label to update configurations for better categorization (994dc4a)
  • renovate: add automergeSchedule for improved dependency management (af54132)
  • renovate: update schedule and automergeSchedule to run on weekends during early hours (f43b49b)
  • search: implement session storage for search criteria management (960b887)
  • settings: add 'Trailer' option to default keywords (8cb4b24)
  • types: replace string types with ISO3166_1 and ISO639_1 for better type safety (5503e93)
  • Vidstack: save component state on destroy (1c19ad7)
  • vite: add vidstack plugin for enhanced video capabilities (f6d6320)
  • vscode: add custom HTML data for vidstack in settings (437d8a6)
  • workflow: add code formatting workflow using Prettier for consistent style (6e2314a)
  • workflow: update format workflow to include write permissions and simplify push command (eabf548)
  • workflow: update Node.js setup to use latest LTS version for improved compatibility (2b4d82a)

0.16.1 (2024-12-30)

Bug Fixes

  • deps: remove unnecessary devtools feature from tauri dependency (c0dc5e9)

0.16.0 (2024-12-30)

Bug Fixes

  • add type annotation to drizzle configuration (42c6300)
  • dependabot: change package ecosystem from pnpm to npm (3ed2e38)
  • deps: update dependency drizzle-orm to ^0.38.2 (4b0bc42)
  • improve error handling for image dimension fetching and downloading (5a208b7)
  • integrate tauri-plugin-opener and update main function to use seenivers_lib (89ca289)
  • movie: ensure collection display only when path is available (621c144)
  • player: update event listener to 'loadedmetadata' and correct currentTime assignment (a56b2ca)
  • update default.json to enhance main window capabilities and add opener and process permissions (47923b6)
  • update dependabot configuration to use pnpm as the package ecosystem (16ff862)
  • update documentation links and improve type assertion in configuration files (d2cb9ef)
  • update GitHub Actions workflow to use pnpm for dependency management and installation (11fb87a)
  • update package name and library name for consistency; add tauri-plugin-opener dependency (5a2cc86)
  • update renovate configuration to use pnpm and adjust package rules (878d080)
  • update tauri configuration for consistent identifier and switch to pnpm commands (b347beb)
  • update VSCode settings to ignore pnpm-lock.yaml instead of package-lock.json (2d90e27)
  • use nullish coalescing operator for error message in image download (21ba866)

Features

  • add Android configuration for Tauri application (5472ed8)
  • add conditional updater plugin for desktop platforms (94b3d10)
  • add iOS configuration for Tauri application (937a60f)
  • add Linux configuration for Tauri application (5b4aa7f)
  • add macOS configuration for Tauri application (3a501db)
  • add SVG icons for Plyr player and update iconUrl in Plyr.svelte (0666aed)
  • add Windows configuration for Tauri application (1ce3033)
  • i18n: add URL for Plyr internationalization documentation (12540ef)
  • integrate Plyr for enhanced video playback controls and state management (85d1b43)

0.15.0 (2024-12-22)

Bug Fixes

  • add-page: correct movie search logic to trigger only when ID is missing (11e2b90)
  • add-page: correct movie status assignment logic based on user selection (18de5d8)
  • add-page: enhance error logging and validate movie search status before proceeding (73b8998)
  • adjust video player controls timeout and update onDestroy behavior (5f86048)
  • change 'status' to const as it is never reassigned (91f3c1f)
  • collection: ensure browser-only operation and improve error handling for collection loading (303ab9c)
  • data-fetch: ensure fetch always makes a request and handles DB content as JSON (a87bd75)
  • deps: update dependency @tauri-apps/plugin-sql to ^2.2.0 (7168364)
  • deps: update dependency drizzle-orm to ^0.38.1 (3d21ce6)
  • download: ensure online status is checked before processing download queue (4ab85e0)
  • error page: replace link with button for improved navigation handling (792bd77)
  • error page: update import from '$app/stores' to '$app/state' for correct state management (e3e719e)
  • filter: adjust movie filtering logic and improve UI feedback for no results (419ff37)
  • imports: update settings import path to '$lib/db/funktion' (8b282f5)
  • migrations: resolve type error for ArrayBuffer conversion and improve error handling (d21198b)
  • movie: improve error handling and fetch movie data from TMDB if not found locally (6d2429a)
  • movie: remove unused file system import in movie page load function (e4b87f9)
  • openModal: add validation to ensure modal is only opened for valid film states (d149ce0)
  • resolve dependency conflict by upgrading vite version to ^6.0.3 (5418dc9)
  • selectMovie: add validation to prevent invalid movie selection and handle errors (8e5c073)

Features

  • actor schema: simplify actor schema by removing unused fields and adding TMDB reference (4755b23)
  • actor types: add Actor interface and related types for improved type safety (49d78c6)
  • actor types: update Actor interface to include Gender type and nullable fields (90aa289)
  • actor: add functions to get, add, and retrieve all actors from the database (a52950c)
  • actor: add getActor function to fetch actor data by ID (98aa5a1)
  • actor: implement actor detail page with data fetching and display (66d4388)
  • add back button functionality to Navbar component for improved navigation (6cbcb7b)
  • add Img component for optimized image handling across multiple pages (53fe9fb)
  • add reusable Navbar component with customizable slots for left, middle, and right sections (d8e55ff)
  • collection: add preload data attribute for movie links to enhance navigation performance (2900c63)
  • collection: add toggle button for grid/list view in Navbar (5f5db32)
  • collection: remove unused file system import from collection page (3f8df68)
  • database: refactor getDb function to remove async and improve initialization (08607c9)
  • db: change loadedSettings to a local variable in funktion.ts (c899bad)
  • db: optimize updateEntity function to streamline entity updates and improve error handling (091d423)
  • db: remove loadedSettings import and use settings.language in updateOldDB function (9a3954d)
  • dependencies: expand features for tauri-plugin-http to enhance functionality (1036bde)
  • docs: add developer documentation for Svelte CLI with usage instructions and options (62ea561)
  • load-utils: extract ID parsing logic into a separate utility function (4938ce1)
  • migrations: add migration for restructuring actors, collections, and movies tables with unique indexes (8e74f4f)
  • movie page: implement data loading in separate load function and initialize matchedMovies with page data (70dec5a)
  • movie: add link to TMDB for movie details and improve button visibility based on data availability (18f914c)
  • movie: replace cast button with link to actor detail page for improved navigation (79bd56e)
  • replace inline Navbar implementation with reusable Navbar component across multiple pages (ff083c3)
  • types/add.ts: add optional id field to SearchOptions interface (5d8e89f)
  • types: export Cast and Crew interfaces for improved accessibility (0dce2d4)
  • ui: reset filter when clearing all movies (37b23a4)
  • update: extend update functions to include actors and process actor data (2a0267c)
  • update: implement functions to update movies and collections, and migrate old database entries (3283baa)
  • update: include updateActors function in the update process and optimize actor image loading (db71f61)

0.14.0 (2024-12-12)

Bug Fixes

  • add-files: replace logical OR with nullish coalescing operator (4b1f438)
  • add-files: use RegExp.exec for extracting year from file name (3b6e0a1)
  • add: validate path parameter in addNewMovie function (fbaba58)
  • collection: handle missing release date gracefully (f66d4e2)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.2.0 (384d3f3)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.2.0 (f806b1b)
  • deps: update dependency @tauri-apps/plugin-http to ^2.2.0 (96ce18e)
  • deps: update dependency @tauri-apps/plugin-log to ^2.2.0 (e60ff70)
  • deps: update dependency @tauri-apps/plugin-process to ^2.2.0 (c2b7bb4)
  • deps: update dependency @tauri-apps/plugin-shell to ^2.2.0 (dd48e35)
  • deps: update dependency @tauri-apps/plugin-updater to ^2.3.0 (a7a1b6e)
  • deps: update rust crate serde to 1.0.216 (11db995)
  • deps: update rust crate tauri-plugin-dialog to 2.2.0 (70e3e9f)
  • deps: update rust crate tauri-plugin-fs to 2.2.0 (5ad1a39)
  • deps: update rust crate tauri-plugin-http to 2.2.0 (38fe03b)
  • deps: update rust crate tauri-plugin-log to 2.2.0 (61f6767)
  • deps: update rust crate tauri-plugin-process to 2.2.0 (6efea91)
  • deps: update rust crate tauri-plugin-shell to 2.2.0 (da3c405)
  • deps: update rust crate tauri-plugin-sql to 2.2.0 (65cacca)
  • deps: update rust crate tauri-plugin-updater to 2.3.0 (c1a7489)
  • dnd-component: refactor and improve drag-and-drop functionality (b48a4c0)
  • dnd: correctly handle files and directories by checking extensions before directory reading (fc5bbbd)
  • dnd: ensure event listeners are cleaned up correctly (1c7477c)
  • drag-drop: fix file path handling for directory entries (e1cafba)
  • ensure SQLite is loaded before initializing dbInstance (edf15b2)
  • fetchImageDimensions: remove unnecessary console.log statement (f19d847)
  • icon: swap icons for 'notStarted' and 'searching' states (88f4ccc)
  • image: improve image handling logic for offline and download scenarios (739eff9)
  • image: use join for path construction in image function (ea45bde)
  • layout: improve readability of "not started" message (34c46c6)
  • modal movie selection: make selectMovie function async and update button to await selection (478d16b)
  • modal: prevent opening modal for downloading or already found films (ee37fc0)
  • movie: ensure all actor images are loaded regardless of castImages setting (5ebcb7b)
  • movie: ensure collection uniqueness check before adding to database (910b2e6)
  • navbar: improve condition for clearing results on leave (7bb4ca6)
  • navbar: improve navigation logic, disable buttons based on conditions, and adjust tooltip visibility (ac98184)
  • navbar: replace "Hinzufügen" button with "Zurück" button for better navigation (c1c59fc)
  • navbar: reset filter state when navigating back to homepage (b34fe34)
  • online-status: initialize isOnline store with current navigator.onLine status (e20fdb5)
  • optimize regex to prevent super-linear runtime in file name cleaning (ee24922)
  • refactor function to reduce Cognitive Complexity. (29c403e)
  • regex: optimize regex to prevent super-linear runtime and DoS vulnerability (5ea7fa2)
  • remove unused import of 'debug' (9c2726c)
  • search: add status check and ensure correct state transitions (9cb311e)
  • search: move internet connection check before search status check (dbcce99)
  • searchMovieStatus: correct state update order before adding new movie (154f7f5)
  • search: prevent infinite loop by adding check for results length (009ed2c)
  • search: prevent search input from disappearing when typing (70d4ec7)
  • search: update movie status after manual selection in modal (77a9850)
  • select: disable select when offline or status is empty (8b528e3)
  • settings: store only language code (e.g., 'de', 'en') without region part (fcf00bd)
  • types: explicitly define function parameters and return types in searchMovieStatus (9bb5afd)
  • types: prefer nullish coalescing over logical OR (00af689)
  • ui: add gap classes to navbar div elements for improved spacing (41daf1a)
  • ui: remove redundant state update in selectMovie function (54ed7ff)
  • use an interface instead of a type for DropPayload. Best practice (1d8a5ea)
  • use optional chaining for collection ID check (93788e5)
  • use optional chaining to simplify response check (7b9fcba)

Features

  • add page: implement drag-and-drop support for adding movies with file filtering and event listeners (d000fda)
  • add-page: add getValidFileNames function to filter file paths by valid extensions (8cbd5ce)
  • add/page: refactor file handling with new helper functions (411dea0)
  • addNewMovie: update status during movie processing (f59e34f)
  • add: refactor movie search handling to use writable store (86af62a)
  • collection: improve text readability on collection page (eaa231f)
  • db/functions: add isCollectionIDUnique function to check collection uniqueness by ID (98435e2)
  • db: add function to check if movie name is unique in database (d393ab1)
  • dependencies: enable HTTP/2 support for tauri-plugin-http (4cc48d3)
  • dnd: handle drag and drop of files and directories with supported extensions (b44c59a)
  • download: implement download queue for movies (99904df)
  • downloading: Add support for downloading in buttonClass (a7e28ac)
  • drag-drop: update drag-and-drop logic to use file metadata checks (24d3655)
  • fetchImageDimensions: handle invalid image dimensions by removing image and returning default size (53e2eb6)
  • icons: add '📥' icon for 'downloading' search status (72022df)
  • keyboard shortcuts: add Ctrl++ and Ctrl+- handlers to adjust card scale (55990b2)
  • keyboard shortcuts: add Ctrl+P handler and improve shortcut functionality (c054f15)
  • load function: allow adding multiple files concurrently and avoid duplicate entries (0de48eb)
  • modal: add message for unstarted search state (8d33757)
  • navbar: clear search results on leave (661b6b3)
  • network-status: add isOnline store to track online status (c6cbfd4)
  • page load: add paths from query params and update +page.svelte to handle page data (69ca098)
  • page: add movie state counters and use them in filter dropdown (1e832ea)
  • page: enhance UI with additional file information (8f3350d)
  • search: add MovieSearchState type for search status handling (cb3879c)
  • settings: generate language options from navigator.languages and set default language (a5ef4b9)
  • stores: create writable store for movie search status (06b7bff)
  • styles: update text color to use neutral-content for better theme consistency (d3c2b46)
  • tailwind: add unset values for minHeight and minWidth in theme extension (8464b0f)
  • toast: add backdrop blur effect and keep Info-Panel open by default (50f0d58)
  • toast: enable collapse-plus for expandable info panel with toggle icon (e7d1486)
  • toast: enhance toast container with collapse info panel and custom styling (25ec1e5)
  • types: add 'downloading' status to SearchStatus type (4b02761)
  • types: add Cardscale interface for scaling functionality (e9bbc76)
  • ui: add card scaling with mouse wheel and refactor key handling (d74e9fa)
  • ui: add dynamic highlighting for active scale buttons (f7b442f)
  • ui: add filtering and reset functionality for movie search status (10af380)
  • ui: enhance button styles with neutral background for scaling options (4ffd2fd)
  • ui: enhance scaling system with dynamic Cardscale model (3442ef7)
  • ui: improve text and button labels for better clarity in movie selection flow (d9e221b)

0.13.0 (2024-12-08)

Bug Fixes

  • add <title> tag to ensure title is present on page (09bfa6c)
  • add braces to arrow function to resolve void expression issue (7e62617)
  • add eslint-disable-line to ignore 'any' type warning in database.ts (c365eeb)
  • add SonarLint project configuration to .vscode/settings.json (9fe09d6)
  • change Promise rejection to use Error object for better error handling (d8be583)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.0.2 (5e42c04)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.0.3 (d134721)
  • deps: update dependency drizzle-orm to ^0.36.4 (0f3b066)
  • deps: update dependency drizzle-orm to ^0.37.0 (311939b)
  • deps: update rust crate tauri-plugin-fs to 2.1.0 (60a8fca)
  • deps: update rust crate tauri-plugin-shell to 2.0.2 (705d978)
  • disable Svelte XSS warning for safe HTML rendering (331acbc)
  • ensure movie data is updated only if new result is available (ba11f80)
  • ensure proper type conversion for unsafe arguments in searchMovies (6a9f03d)
  • handle error object properly in image fetch by stringifying non-Error objects (4167f53)
  • refactor class names to follow naming convention (typescript:S101) (143663a)
  • remove redundant cast and non-null assertion in dbMigrations assignment (e7cba21)
  • remove redundant union type overriding in getMovieDetails (c7adeb0)
  • remove unnecessary import of Movie type from '$lib/types/movie' (c814618)
  • remove unused 'readTextFile' import to resolve linting error (58d714d)
  • remove unused assignment of 'rows' in getDb function (typescript:S1854) (15e6a53)
  • resolved migration execution issue caused by ArrayBuffer instead of string (cfb2487)
  • update dependabot.yml to conform with specification by using update groups (93aeafa)
  • update import for Movie type to reflect changes in type location (9d90983)
  • update modal: update German text for update modal and download progress (eaafcd5)
  • update: improve update modal and download process logic (172645b)

Features

  • db: update drizzle schema and apply database migrations (3cc66d6)
  • deps: add marked for markdown parsing (63308ca)
  • getAllCollections: add function to retrieve all collections from the database (4091592)
  • homepage: add scalable elements with adjustable sizes for optimal space usage (e681dfc)
  • modal: improve responsiveness and layout for smaller screens (bd14c86)
  • update-modal: open external links in browser from changelog (58f628c)
  • updateCollection: add function to update collections based on the defined time span (72974de)
  • updateMovies: extend update logic for movies to include collections (5f87d7c)
  • updater: add Markdown support for update descriptions (72f2dc5)

0.12.1 (2024-12-06)

Bug Fixes

  • ci: remove signing of migration files to avoid errors with .sql files (f4d5de6)
  • windows: update certificate thumbprint for signing (3747195)

0.12.0 (2024-12-06)

Bug Fixes

  • add missing 'await' to handle Promises properly in movie data processing (27407f4)
  • api: improve error handling and URL creation for getMovie function (d8101d3)
  • avoid unsafe call of error type by properly typing config object (0e29050)
  • deps: update dependency @tauri-apps/plugin-log to ^2.0.1 (ca49e00)
  • deps: update rust crate tauri-plugin-dialog to 2.0.4 (a4ebd5f)
  • deps: update rust crate tauri-plugin-http to 2.0.4 (2111224)
  • deps: update rust crate tauri-plugin-log to 2.0.3 (fdc20d0)
  • extract duplicate error handling into a single function to avoid redundancy (3e4549b)
  • getIcon: return '❓' as default icon instead of '🔍' (f5536c9)
  • improve error handling by checking if the error is an instance of Error (59f36ab)
  • player: resolve unsafe error call by explicitly typing the error function (73e2cf8)
  • remove 'async' from 'getDb' function as it doesn't contain 'await' expressions (80b9393)
  • remove unused matchCurrentAge property from Renovate config (709a58e)
  • replace logical OR with nullish coalescing operator for safer fallback handling (db7e69e)
  • replace non-null assertion with runtime error check for settings initialization (9ac0408)
  • resolve invalid 'never' type in template literal expression (2bc2e4b)
  • search: set status to 'notFound' when an error occurs during search (a266b44)
  • tauri: remove year from copyright statement (3565e6e)
  • tauri: update Windows configuration with certificate and timestamp URL (2d22af1)
  • use unknown for catch variable and handle errors safely in fullscreen toggle (0108f32)
  • videoplayer: ensure watchTime is not negative when saving progress (a8ccb0e)

Features

  • api: add getCollection function to fetch collection details (e817334)
  • ci: add Windows certificate import and resource signing to CI pipeline (a13cd9a)
  • collection: add toggle for grid/list view and improve layout (3fa47d6)
  • collections: add collection handling when adding a new movie (90d4880)
  • collections: implement collection page with movie details (4c2fedc)
  • db: add collection handling functions (47d2d2f)
  • db: update collections schema and add Movie type (ba46662)
  • images: return image dimensions alongside source for optimized rendering (e317a0a)
  • movie-detail: add movie collection section and improve layout (e6cb7c2)
  • renovate: add automerge schedule for dependency updates (78def08)
  • renovate: update package rules and improve automerge configuration (bc4bd8e)
  • tauri: update bundle targets to include app, appimage, deb, dmg, msi, and rpm (6a93bd6)
  • types: add Collection and CollectionDetails types for TMDB collection data (6486135)
  • ui: improve movie detail layout for better readability and structure (e5185fc)

0.11.0 (2024-12-01)

Bug Fixes

  • db: remove empty block to resolve no-empty linting error (644870e)
  • dependencies: update tauri-plugin-sql to v2.0.1 in Cargo.toml (96c5833)
  • gender: declare enum to avoid unused variable warning (54dadad)
  • loader: remove unnecessary async modifier to comply with require-await rule (f539691)
  • page: avoid window undefined error by moving movie data loading to page.svelte (43ea851)
  • resolve floating promises by using void to ignore unhandled promises in timeout function (91639e8)
  • schema: replace @ts-ignore with @ts-expect-error to comply with linting rules (e1d1d36)
  • toast-duration: increase default duration of new messages to 30 seconds (5b509b3)

Features

  • add-movie: add 'updated' timestamp when adding a new movie (3325290)
  • config: enable automerge for Renovate and adjust stability days (7e744ef)
  • db: add updated timestamp column to movies table (8dbbb55)
  • filters: add name attributes to input and select fields for better identification (d8bf7eb)
  • image: improve image processing with enhanced error handling and flexible download options (29a6e29)
  • movie-update: add periodic movie updates based on 'updated' field (8922377)
  • movie: add image loading for movie poster and cast profiles when adding a new movie (ade1379)
  • ui: add app version to settings footer (2d09885)
  • ui: improve datalist behavior by adding null checks for search input and datalist items (8475bef)

0.10.0 (2024-11-22)

Bug Fixes

  • csp: allow inline styles by adding 'unsafe-inline' to style-src (c1caf1f)
  • deps: update tauri monorepo (4fb880f)

Features

  • config: add schedule to Renovate configuration and adjust automerge settings (a450dad)
  • logging: add console and logger integration in Svelte layout (51e23d6)
  • logging: integrate advanced logging with @tauri-apps/plugin-log (6301d3f)
  • video-player: add save function on component destroy to update playback state (fe5d260)

0.9.0 (2024-11-20)

Bug Fixes

  • config: enhance window properties and update installer languages in Tauri config (e8575bc)
  • image: resolve invalid template literal type for error handling (5a2a746)
  • image: resolve type error in error handling message (3ae7c7b)
  • prerender: adjust prerender entries to include all routes and handle missing IDs (142df43)
  • release: fetch latest commit to ensure correct version is used (99b18fd)
  • toast: remove redundant type annotation for duration parameter (a57e7bd)
  • types: convert Settings type to interface for consistency (7409279)

Features

  • layout: disable default context menu (0f32310)
  • settings: add settings page and integrate it into the main navigation (c72e08b)
  • toast: add animations and optimize toast rendering (23002b8)
  • toast: increase default duration to 30 seconds (e80309a)

0.8.0 (2024-11-18)

Bug Fixes

  • cors: resolve CORS issue by switching to Tauri's HTTP fetch (9c8fad1)
  • images: replace placeholder URL with inline NoImage SVG (eb1aa31)
  • search: add check to prevent errors when matchedMovies is empty (ca3516d)

Features

  • images: add NoImage SVG placeholder for missing images (09d5000)
  • search: show search filters only when movies are matched (922de4f)

0.7.0 (2024-11-18)

Bug Fixes

  • image-function: handle null or undefined paths and return placeholder URL (3d093cc)
  • init: handle errors when fetching movie data during settings initialization (ba86b25)
  • parsing: specify radix parameter for parseInt to avoid unexpected results (8fb42e7)

Features

  • cast: add clickable cast items with character names and links to TMDb profiles (4368a37)
  • images: implement image downloading and caching mechanism (2bb233c)
  • movie-details: add cast carousel and placeholder for missing images (85f7829)
  • navbar: add dynamic image fetching for video player poster (6a8e2d6)
  • network: add condition to hide updater in development environment (19c2a42)
  • permission: extend file system permissions and allow write access (ab27774)
  • security: enhance CSP configuration and disable asset CSP modification (dedd82f)
  • tauri: update config for improved window positioning and bundle details (fa24d0a)
  • types: add searchMovie.ts to define Search and Movie interfaces (9dedcb3)
  • urls: add seeniversURL constant for app's base URL (1ef8344)

0.6.1 (2024-11-15)

Bug Fixes

  • sqlite: correct database file naming for DEV environment (a19fd1c)

0.6.0 (2024-11-15)

Bug Fixes

  • api: add error handling to getMovie function for failed requests (1934e22)
  • cleanup: add unsubscribe call to cleanupData function (3625843)
  • cleanup: remove unused imports (98e31dc)
  • db: set path as unique in movies schema to prevent duplicate entries (794a0ed)
  • db: set default value of 1 for id in settings table to ensure single instance (17ef2f2)
  • errors: resolve unused expressions and add error handling for isPathUnique (f4d882b)
  • migration: remove optional chaining in hasBeenRun function for hash comparison (f7ea86b)
  • online status: remove async from addCustomEventListener as it doesn't use await (49420a5)
  • optimization: use 'const' for sqlite initialization (f1eb789)
  • permissions: add sql:allow-execute to desktop permission config (7243ecd)
  • player: improve controls visibility handling when video is paused (d84e82a)
  • schema: export schema components explicitly for drizzle-kit compatibility (d2fc5e9)
  • store: ensure type compatibility for saved data and default settings (db11ce5)
  • toast: update settings import and handle null values for toast position (ac182ec)
  • types: replace 'any' with 'string[]' in newToast function (971df07)
  • types: replace 'any' with precise type using schema inference in filterMovies (a7f8f67)
  • update language retrieval to check for data validity (fa52c98)
  • update: improve update check on internet connectivity (28f7465)
  • updater: improve error handling for offline status and replace alert with toast notification (25c89cf)
  • vite.config.ts: replace || with ?? for better nullish coalescing (ff281a8)

Features

  • api: add function to fetch movie details by ID (4c728e7)
  • database: add CRUD functions for movies (150cf01)
  • database: add SQLite with @tauri-apps/plugin-sql (ff851ae)
  • db: add database connection and migration setup (84a9b2d)
  • db: add database schemas (9cd7183)
  • db: add Drizzle config and migration resources to Tauri config (6526445)
  • db: add Drizzle scripts and dependencies for database migrations (5021c11)
  • db: implement centralized database operations and settings initialization (ee6802f)
  • db: integrate Tauri FS for initial movie import and settings initialization (c94d2ee)
  • file-management: refactor movie addition and filtering logic with async path checks (a292170)
  • migrations: generate migration files (3c3936b)
  • movie-details: refactor movie details page with DB integration and external player support (7dfb6fa)
  • online-status: add toast notifications for online/offline status changes (0655678)
  • search: refactor movie search with database integration and Fuse.js (a98036a)
  • settings: add default language initialization based on browser locale (883c771)
  • tauri: add category and homepage to bundle configuration in tauri.config.json (21540db)
  • tauri: add shell plugin (65c724d)
  • toast: allow additional arguments for flexible message formatting (6ea7624)
  • types: add new Movie type in types folder (f060fde)
  • ui: add migration call on app load (b5098c7)
  • ui: conditionally render Updater component based on online status (582c304)
  • video: implement database integration for movie watch time and status (a163978)

0.5.0 (2024-10-31)

Bug Fixes

  • accessibility: adjust svelte-ignore comment placement for a11y-media-has-caption issue (83a1e58)
  • accessibility: adjust svelte-ignore comment placement for a11y-media-has-caption issue (29e92bb)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.0.1 (e72dd62)
  • deps: update dependency @tauri-apps/plugin-dialog to ^2.0.1 (ed1de57)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.0.1 (aec0973)
  • deps: update dependency @tauri-apps/plugin-fs to ^2.0.1 (7b6091a)
  • deps: update dependency @tauri-apps/plugin-http to ^2.0.1 (54f6769)
  • deps: update dependency @tauri-apps/plugin-http to ^2.0.1 (694e657)
  • deps: update rust crate log to 0.4.22 (abb6e18)
  • deps: update rust crate log to 0.4.22 (d002197)
  • deps: update rust crate serde to 1.0.213 (d996a3b)
  • deps: update rust crate serde to 1.0.213 (44fae04)
  • deps: update rust crate serde to 1.0.214 (c71e24e)
  • deps: update rust crate serde to 1.0.214 (e8fd66a)
  • deps: update rust crate serde_json to 1.0.132 (628ad63)
  • deps: update rust crate serde_json to 1.0.132 (38337f6)
  • deps: update rust crate tauri-plugin-dialog to 2.0.3 (5d15603)
  • deps: update rust crate tauri-plugin-dialog to 2.0.3 (71e8824)
  • deps: update rust crate tauri-plugin-fs to 2.0.3 (ab6bf2c)
  • deps: update rust crate tauri-plugin-fs to 2.0.3 (91e1804)
  • deps: update rust crate tauri-plugin-http to 2.0.3 (856dc3c)
  • deps: update rust crate tauri-plugin-http to 2.0.3 (c130333)
  • deps: update rust crate tauri-plugin-log to 2.0.1 (2584981)
  • deps: update rust crate tauri-plugin-log to 2.0.1 (9441abf)
  • deps: update rust crate tauri-plugin-process to 2.0.1 (b74b619)
  • deps: update rust crate tauri-plugin-process to 2.0.1 (b493b6e)
  • deps: update rust crate tauri-plugin-store to 2.1.0 (fab307e)
  • deps: update rust crate tauri-plugin-store to 2.1.0 (c58856e)
  • deps: update rust crate tauri-plugin-store to v2.1.0 (680a334)
  • deps: update rust crate tauri-plugin-updater to 2.0.2 (6eb1de1)
  • deps: update rust crate tauri-plugin-updater to 2.0.2 (4b01e0c)
  • deps: update tauri monorepo (faa3d5e)
  • download: add internet connection check with early return in download function (0e4acc5)
  • download: add internet connection check with early return in download function (bebfd11)
  • download: remove "@ts-ignore" by ensuring "contentLength" is always defined (a2e77d6)
  • download: remove "@ts-ignore" by ensuring "contentLength" is always defined (77ac00a)
  • release: correct asset count check in Tauri Release workflow (d3fe762)
  • release: correct release details formatting in environment variables (df353c2)
  • release: include asset count in message when skipping Tauri Release (edc0370)
  • release: manually bump version to 0.5.0 due to semantic-release issue (b928ef3)
  • release: remove unnecessary escape sequence from body processing (2d61cab)
  • release: remove unnecessary escape sequence in release body processing (bf3073f)
  • release: revert asset count retrieval to gh release view for accuracy (d700626)
  • release: store asset_count in environment and update condition check (502b221)
  • remove unnecessary try/catch wrapper in file creation (870a9ba)
  • replace double quotes with single quotes in body escaping (924cdb0)
  • types: remove unused player parameter from elemente function (2762b81)
  • types: remove unused player parameter from elemente function (391b731)
  • types: replace any with generics in Store class for better type safety (f9d0459)
  • types: replace any with generics in Store class for better type safety (6de55de)
  • workflow: add GitHub token to log release details step (9280eea)
  • workflow: correct syntax in Check Asset Count step (6bc569a)
  • workflow: escape newlines in release body for artifact upload (f16b999)
  • workflow: remove extra 'v' from release name to avoid 'vv...' issue (3819e9c)
  • workflow: replace sed with awk and printf for better cross-platform compatibility (e212fc2)
  • workflows: escape line breaks in release body for JSON compatibility (7da6563)
  • workflow: update sed command for cross-platform compatibility on macOS and Linux (b931532)

Features

  • action: add custom GitHub Action for automating releases with Changesets (8b47706)
  • ci: add asset count check to semantic-release job and streamline release workflows (e4a8fae)
  • ci: update release workflow to include asset count check before Tauri release (f899b07)
  • release: add asset count check to skip Tauri Release if more than 3 assets found (43a6c96)
  • release: add bump and release scripts with changeset integration (914b76a)
  • release: add conditional execution for Tauri Release based on successful Semantic Release (6a218f1)
  • release: add release check and conditional Tauri release steps (6291656)
  • release: add shell: bash to Read Release Details step for improved compatibility (733a1ec)
  • release: add support for tag-based releases (a7f0320)
  • release: create reusable Tauri Release action for publishing Tauri app (8788a8f)
  • release: escape newlines and quotes in release body for consistent formatting (2a13f31)
  • release: improve release workflow by dynamically passing release details between steps (80002ff)
  • release: integrate semantic-release with configuration for main and next branches (225e751)
  • release: remove carriage returns and escape newlines and quotes in release body (9e310bb)
  • release: update GitHub Actions workflow to include asset count check for Tauri Release (d946f7e)
  • release: update Read Release Details step to use environment variables (de3b82f)
  • release: update Tauri release workflow to use environment variables for release details (bb115ae)
  • workflow: add GH_TOKEN to Semantic Release for output variable extraction (450bd9a)
  • workflow: change Tauri Release trigger to workflow_call (1e94eef)
  • workflow: enable Tauri Release for workflow_dispatch triggers (d9b2bac)
  • workflow: implement artifact download and clean-up in Tauri release job (921ae12)
  • workflow: integrate Tauri workflow call after semantic release (06be567)
  • workflow: merge Semantic Release and Tauri workflows into a single release process (f8ca7f2)
  • workflow: refactor Tauri Release to use inputs for release details (7ad079a)
  • workflow: remove release.yml from GitHub Actions (b0cf262)
  • workflow: simplify output handling and log release details (b2c9008)
  • workflows: pass secrets as inputs to Tauri Release workflow (c68d291)
  • workflow: update Semantic Release to trigger on push and set output variables (ae6fba8)

0.4.1

Patch Changes

  • 13afa10: simplify workflow by removing versioning step in Changesets Release
  • f992d7c: update Changesets configuration to disable automatic commits and add private packages support
  • a547285: exit fullscreen mode at the end of the movie or video

0.4.0

Minor Changes

  • c3cd412: switch to Changesets action for creating release pull requests
  • 582af72: generate release notes and update release creation step

0.3.0

Minor Changes

  • d69b614: rename release workflow to 'Tauri Release' and update release name to 'Tauri'

0.2.0

Minor Changes

  • 8cd8005: add permissions for handling pull requests in Changesets workflow
  • 270ad0e: add Changesets workflow for automated releases
  • e0bfa2d: enable commit and set access to public
  • 6004c67: add Changesets CLI for versioning