diff options
Diffstat (limited to 'server/lib/object-storage/urls.ts')
-rw-r--r-- | server/lib/object-storage/urls.ts | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/server/lib/object-storage/urls.ts b/server/lib/object-storage/urls.ts deleted file mode 100644 index 40619cd5a..000000000 --- a/server/lib/object-storage/urls.ts +++ /dev/null | |||
@@ -1,63 +0,0 @@ | |||
1 | import { CONFIG } from '@server/initializers/config' | ||
2 | import { OBJECT_STORAGE_PROXY_PATHS, WEBSERVER } from '@server/initializers/constants' | ||
3 | import { MVideoUUID } from '@server/types/models' | ||
4 | import { BucketInfo, buildKey, getEndpointParsed } from './shared' | ||
5 | |||
6 | function getInternalUrl (config: BucketInfo, keyWithoutPrefix: string) { | ||
7 | return getBaseUrl(config) + buildKey(keyWithoutPrefix, config) | ||
8 | } | ||
9 | |||
10 | // --------------------------------------------------------------------------- | ||
11 | |||
12 | function getWebVideoPublicFileUrl (fileUrl: string) { | ||
13 | const baseUrl = CONFIG.OBJECT_STORAGE.WEB_VIDEOS.BASE_URL | ||
14 | if (!baseUrl) return fileUrl | ||
15 | |||
16 | return replaceByBaseUrl(fileUrl, baseUrl) | ||
17 | } | ||
18 | |||
19 | function getHLSPublicFileUrl (fileUrl: string) { | ||
20 | const baseUrl = CONFIG.OBJECT_STORAGE.STREAMING_PLAYLISTS.BASE_URL | ||
21 | if (!baseUrl) return fileUrl | ||
22 | |||
23 | return replaceByBaseUrl(fileUrl, baseUrl) | ||
24 | } | ||
25 | |||
26 | // --------------------------------------------------------------------------- | ||
27 | |||
28 | function getHLSPrivateFileUrl (video: MVideoUUID, filename: string) { | ||
29 | return WEBSERVER.URL + OBJECT_STORAGE_PROXY_PATHS.STREAMING_PLAYLISTS.PRIVATE_HLS + video.uuid + `/${filename}` | ||
30 | } | ||
31 | |||
32 | function getWebVideoPrivateFileUrl (filename: string) { | ||
33 | return WEBSERVER.URL + OBJECT_STORAGE_PROXY_PATHS.PRIVATE_WEB_VIDEOS + filename | ||
34 | } | ||
35 | |||
36 | // --------------------------------------------------------------------------- | ||
37 | |||
38 | export { | ||
39 | getInternalUrl, | ||
40 | |||
41 | getWebVideoPublicFileUrl, | ||
42 | getHLSPublicFileUrl, | ||
43 | |||
44 | getHLSPrivateFileUrl, | ||
45 | getWebVideoPrivateFileUrl, | ||
46 | |||
47 | replaceByBaseUrl | ||
48 | } | ||
49 | |||
50 | // --------------------------------------------------------------------------- | ||
51 | |||
52 | function getBaseUrl (bucketInfo: BucketInfo, baseUrl?: string) { | ||
53 | if (baseUrl) return baseUrl | ||
54 | |||
55 | return `${getEndpointParsed().protocol}//${bucketInfo.BUCKET_NAME}.${getEndpointParsed().host}/` | ||
56 | } | ||
57 | |||
58 | const regex = new RegExp('https?://[^/]+') | ||
59 | function replaceByBaseUrl (fileUrl: string, baseUrl: string) { | ||
60 | if (!fileUrl) return fileUrl | ||
61 | |||
62 | return fileUrl.replace(regex, baseUrl) | ||
63 | } | ||