Commit graph

42 commits

Author SHA1 Message Date
WebStreamr
e1f5192f4b
refactor: avoid leaking fetch internals by introducing TimeoutError 2025-06-17 15:42:47 +00:00
WebStreamr
605e88fef4
chore: implement rate-limit detection 2025-06-14 19:51:00 +02:00
WebStreamr
f11c591dc5
chore: do not pass referer through context 2025-06-14 13:44:32 +02:00
WebStreamr
4bc25692a8
refactor: use proper prototype class methods 2025-06-13 21:26:26 +02:00
WebStreamr
15099de798
refactor: introduce helper showExternalUrls() 2025-06-13 10:24:32 +00:00
WebStreamr
bdae1ff346
refactor: define member accessiblity explicitly 2025-06-13 09:42:06 +00:00
WebStreamr
b4b8581383
chore: rename handler to source 2025-06-12 21:05:24 +00:00
WebStreamr
d2d7e84d9b
refactor: separate handlers and extractors 2025-06-12 20:56:50 +00:00
WebStreamr
695bf53262
chore: log error stack 2025-06-10 20:15:36 +00:00
WebStreamr
7b933bfbac
refactor: remove always true conditional 2025-06-10 09:30:03 +00:00
WebStreamr
0446d52e78
refactor: UrlResult[] instead of UrlResult | undefined 2025-06-08 18:55:03 +00:00
WebStreamr
fbae3924e5
refactor: simplify id usage and imdb <-> tmdb transformations 2025-06-08 13:50:53 +00:00
WebStreamr
62f18ece85
refactor: strictly type ContentType 2025-06-08 07:54:17 +00:00
WebStreamr
a56aea56a8
refactor: add custom helper for flags instead of package 2025-06-07 18:59:23 +00:00
WebStreamr
876698825f
chore: add statusText to HttpError and show in result as well 2025-06-06 06:50:31 +00:00
WebStreamr
8e57400c58
fix: always sort external URLs down 2025-06-05 20:02:25 +00:00
WebStreamr
d8f0c4602c
chore: introduce HttpError and show status in result 2025-06-05 19:52:49 +00:00
WebStreamr
7ec7219ed4
chore: do not log headers for known blocking reasons 2025-06-04 12:05:09 +00:00
WebStreamr
77fc20cfff
refactor: extract env access into helpers 2025-06-04 10:29:50 +00:00
WebStreamr
b69c9cde03
chore: cache successful results as long as we safely can 2025-06-04 10:06:24 +00:00
WebStreamr
d78dca3345
chore: log response headers for blocks 2025-06-04 08:45:08 +00:00
WebStreamr
f0817a3dd6
chore: implement queued fetching 2025-06-03 22:44:57 +00:00
WebStreamr
ef2c45e2cb
chore: add more error infos to results 2025-06-03 21:56:19 +00:00
WebStreamr
9d17f5340a
chore: catch handler blocked errors and report the and report themm 2025-06-03 15:02:56 +00:00
WebStreamr
f6967da5cc
chore: try to log error causes 2025-06-03 14:54:05 +00:00
WebStreamr
e4dd16e9d1
chore: improve results format and refactor name/title generation 2025-06-02 15:31:15 +00:00
WebStreamr
2eb09fc65a
chore: generalize forbidden/blocked handling 2025-06-01 19:31:11 +00:00
WebStreamr
0638ce0a8c
fix: detect and report Cloudflare challenge blocks 2025-05-29 17:17:17 +00:00
WebStreamr
d4e402e5c9
feat: add title to meta, restructure result name 2025-05-25 18:46:55 +00:00
WebStreamr
979dddd20c
refactor: move bytes, height and countryCode into meta object
and pass that to the extractors instead. this is a preparation to
support more meta like e.g. title
2025-05-25 19:25:39 +02:00
WebStreamr
8e791bbe24
chore: better handle not found streams/links 2025-05-23 10:40:59 +00:00
WebStreamr
23445c143b
feat(extractor): add external URL support
This could still be a useful fallback on some devices since it indicates
that we found a potential embed URL but could not extract the video URL.
2025-05-21 19:22:32 +00:00
WebStreamr
f635d6c233
chore: create ID per request for logging and error response 2025-05-17 21:06:51 +02:00
WebStreamr
63a79f8758
fix(extractor): do not throw for broken/outdated link 2025-05-16 22:36:20 +02:00
WebStreamr
b790cc7954
refactor: use url.href instead of url.toString() 2025-05-16 22:34:19 +02:00
WebStreamr
07ffe444f3
chore: return stream.behaviorHints.videoSize when possible 2025-05-16 20:48:31 +02:00
WebStreamr
e06b8a2d95
chore: rename behaviourHints to behaviorHints 🤦
This fixes DoodStream by fixing the Referer header usage hint.
2025-05-16 20:36:33 +02:00
WebStreamr
e13ab0c70f
chore: compare by label if both height and bytes are the same 2025-05-16 15:31:54 +00:00
WebStreamr
241e6b0b77
fix: rename behaviourHints.group to behaviourHints.bingeGroup
as stated in 3950d57076/docs/api/responses/stream.md
TS types seem to be quite outdated...
2025-05-16 15:22:39 +00:00
WebStreamr
8740979a80
feat(extractor): try to semi-blindly implement DoodStream support 2025-05-16 15:03:57 +00:00
WebStreamr
956ba68550
refactor(handler): also pass content type to handle() 2025-05-14 12:00:58 +00:00
WebStreamr
5665c6a6ff
refactor: extract stream resolving and add tests 2025-05-13 12:42:10 +00:00