diff options
author | Chocobozzz <me@florianbigard.com> | 2022-12-02 14:47:21 +0100 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2022-12-02 15:25:20 +0100 |
commit | 71e3e879c0616882ee82a0e44f8c2e5ee9698a3e (patch) | |
tree | 14452d26d240eb6d44178b76fc2dabda4cfc9428 /shared/core-utils | |
parent | 04509c43254dc232c61681ac4bb98e09fd126115 (diff) | |
download | PeerTube-71e3e879c0616882ee82a0e44f8c2e5ee9698a3e.tar.gz PeerTube-71e3e879c0616882ee82a0e44f8c2e5ee9698a3e.tar.zst PeerTube-71e3e879c0616882ee82a0e44f8c2e5ee9698a3e.zip |
Support reinjecting token in private m3u8 playlist
Diffstat (limited to 'shared/core-utils')
-rw-r--r-- | shared/core-utils/common/url.ts | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/shared/core-utils/common/url.ts b/shared/core-utils/common/url.ts index d1c399f7b..33fc5ee3a 100644 --- a/shared/core-utils/common/url.ts +++ b/shared/core-utils/common/url.ts | |||
@@ -11,6 +11,14 @@ function addQueryParams (url: string, params: { [ id: string ]: string }) { | |||
11 | return objUrl.toString() | 11 | return objUrl.toString() |
12 | } | 12 | } |
13 | 13 | ||
14 | function removeQueryParams (url: string) { | ||
15 | const objUrl = new URL(url) | ||
16 | |||
17 | objUrl.searchParams.forEach((_v, k) => objUrl.searchParams.delete(k)) | ||
18 | |||
19 | return objUrl.toString() | ||
20 | } | ||
21 | |||
14 | function buildPlaylistLink (playlist: Pick<VideoPlaylist, 'shortUUID'>, base?: string) { | 22 | function buildPlaylistLink (playlist: Pick<VideoPlaylist, 'shortUUID'>, base?: string) { |
15 | return (base ?? window.location.origin) + buildPlaylistWatchPath(playlist) | 23 | return (base ?? window.location.origin) + buildPlaylistWatchPath(playlist) |
16 | } | 24 | } |
@@ -114,6 +122,7 @@ function decoratePlaylistLink (options: { | |||
114 | 122 | ||
115 | export { | 123 | export { |
116 | addQueryParams, | 124 | addQueryParams, |
125 | removeQueryParams, | ||
117 | 126 | ||
118 | buildPlaylistLink, | 127 | buildPlaylistLink, |
119 | buildVideoLink, | 128 | buildVideoLink, |