mirror of
https://github.com/PR0M3TH3AN/bitvid.git
synced 2026-11-01 02:12:26 +00:00
Mirror the upload-modal external-URL webseed for the Edit modal: when the user changes a video's URL to an external link with no magnet, auto-derive the webseed torrent (fetch + hash the remote file → magnet ws=url) so an edited external URL keeps the P2P benefit. Best-effort + size-capped; on CORS / too-large / any error it stays URL-only. Runs before the existing magnet normalization so the derived magnet's ws/xs are extracted the same way a pasted magnet's are. submit() is now async (it was fire-and-forget from the form handler; the pendingSubmit guard already prevents re-entry, so it just stays "pending" during the derivation). Known gap: hosting the tiny .torrent (xs=) on the edit path needs storage- credential plumbing the Edit modal doesn't currently have — so the edit path is ws=-only for now (upload path hosts xs= when storage is unlocked). Tracked as a follow-up. Edit-modal submit-state + upload-field tests green. Lint + build green. Co-Authored-By: Claude Opus 4.8 <[email protected]>