-
Notifications
You must be signed in to change notification settings - Fork 156
Description
The problem:
I've been running into issues using Vime's HLS provider in SvelteKit on a browser that requires the hls.js library to function. My application is bundled with the output being <link rel="modulepreload" href="..."> tags, not <script src="..."></script> tags.
In the loadScript function which loads hls.js, line 62 queries for the first <script> tag on the page:
vime/packages/core/src/utils/network.ts
Line 62 in c1f3119
| const firstScriptTag = document.getElementsByTagName('script')[0]; |
If there isn't one then the library can't be loaded.
A workaround:
You can modify SvelteKit's app.html to add an empty script tag which allows the loadSdk() call to work:
<!DOCTYPE html>
<html lang="en">
<head>
<script>// empty script tag to satisfy conditions for loadSdk();</script>
%sveltekit.head%
</head>
...One potential fix may be that if there aren't any script elements a loaded library could be prepended to the <head> or appended to the <body>.