Commit graph

39 commits

Author SHA1 Message Date
WebStreamr
605e88fef4
chore: implement rate-limit detection 2025-06-14 19:51:00 +02:00
WebStreamr
2853bff284
refactor: use context scoped fixtures 2025-06-13 22:37:50 +02:00
WebStreamr
3a4ff73953
test: hand-rolled, explicit Fetcher mock 2025-06-13 21:53:11 +02:00
WebStreamr
4caf62a367
test: instantiate mocked Fetcher with logger consistently 2025-06-13 13:20:13 +00:00
WebStreamr
9b5943208e
refactor(extractor): introduce parent class for simplifications 2025-06-13 10:04:40 +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
b5067aa0a9
refactor: make BlockedReason an enum 2025-06-12 16:00:34 +00:00
WebStreamr
250d6a1323
refactor: make CountryCode an enum 2025-06-12 15:56:33 +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
876698825f
chore: add statusText to HttpError and show in result as well 2025-06-06 06:50:31 +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
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
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
f27fc6c38a
refactor: introduce type for CountryCode 2025-05-25 19:32:16 +02:00
WebStreamr
8e791bbe24
chore: better handle not found streams/links 2025-05-23 10:40:59 +00:00
WebStreamr
e90c89af89
test: use snapshots, also use fixtures for axios errors 2025-05-21 20:37:35 +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
5b389ada9e
feat: configure languages instead of handlers
just feels more natural and helps maintainence. handlers should be an
internal thing.
2025-05-18 00:00:10 +02:00
WebStreamr
f635d6c233
chore: create ID per request for logging and error response 2025-05-17 21:06:51 +02:00
WebStreamr
4a705ce088
refactor: cleanup url and extractorRegistry variable/prop names 2025-05-17 20:25:51 +02:00
WebStreamr
bb395f0375
revert: "feat(extractor): implement Mixdrop"
This reverts commit 4c53161e98.

Mixdrop seems to be IP-locked.
2025-05-17 01:05:40 +02:00
WebStreamr
4c53161e98
feat(extractor): implement Mixdrop 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
87ec328a66
refactor(extractor): remove embed part from extractor 2025-05-16 15:07:03 +00:00
WebStreamr
8740979a80
feat(extractor): try to semi-blindly implement DoodStream support 2025-05-16 15:03:57 +00:00
WebStreamr
349c26c9b5
chore(extractor): log more infos 2025-05-13 18:19:36 +00:00
WebStreamr
5665c6a6ff
refactor: extract stream resolving and add tests 2025-05-13 12:42:10 +00:00