@oddin-gg/havik-player 1.8.2 → 1.8.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,31 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <meta name="referrer" content="no-referrer" />
7
+ <title>Havik Player</title>
8
+ </head>
9
+ <body>
10
+ <!--
11
+ Reference hosted iframe embed page (Mode C) — this file is a TEMPLATE, not a
12
+ production page. Before deploying:
13
+ 1) PIN a version + add Subresource Integrity on the script below, e.g.
14
+ src=".../@oddin-gg/havik-player@X.Y.Z/dist/havik-player.global.js"
15
+ integrity="sha384-…" crossorigin="anonymous"
16
+ (the unpinned URL below tracks `latest` and auto-upgrades — do not ship it).
17
+ Done for you in the published copies: the copy inside each npm release
18
+ (node_modules/@oddin-gg/havik-player/embed/index.html) and the copy
19
+ attached to each GitHub release are pinned to that release, with the
20
+ integrity hash computed from the exact published bundle. Only this
21
+ repo copy is unpinned.
22
+ 2) INJECT config server-side as window.HAVIK_EMBED_CONFIG (baseUrl, matchUrn,
23
+ apiKey, parentOrigin). When injected, the URL query string is IGNORED for
24
+ security; the api-key must NOT travel in the query in production.
25
+ -->
26
+ <script src="https://cdn.jsdelivr.net/npm/@oddin-gg/havik-player@1.8.3/dist/havik-player.global.js" integrity="sha384-A11YCQWq/mFKKcKOSAMkGXO1IRXkDxGXJvKLdXywEybTAOdk22p5k1Lo26bknt+i" crossorigin="anonymous"></script>
27
+ <script>
28
+ HavikPlayer.bootEmbed();
29
+ </script>
30
+ </body>
31
+ </html>
@@ -8,8 +8,11 @@
8
8
  <body>
9
9
  <video id="player" controls playsinline muted style="width: 100%; max-width: 960px; background: #000"></video>
10
10
 
11
- <!-- In production, pin a version + add Subresource Integrity (see README). -->
12
- <script src="https://cdn.jsdelivr.net/npm/@oddin-gg/havik-player/dist/havik-player.global.js"></script>
11
+ <!-- The repo copy of this file tracks `latest` for convenience; the copy
12
+ shipped in each npm release is pinned to that release with Subresource
13
+ Integrity, injected at publish time (scripts/inject-sri.mjs). In
14
+ production, always use a pinned + SRI'd tag like the released copy. -->
15
+ <script src="https://cdn.jsdelivr.net/npm/@oddin-gg/havik-player@1.8.3/dist/havik-player.global.js" integrity="sha384-A11YCQWq/mFKKcKOSAMkGXO1IRXkDxGXJvKLdXywEybTAOdk22p5k1Lo26bknt+i" crossorigin="anonymous"></script>
13
16
  <script>
14
17
  (async () => {
15
18
  const player = await HavikPlayer.createPlayer({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oddin-gg/havik-player",
3
- "version": "1.8.2",
3
+ "version": "1.8.3",
4
4
  "description": "Havik HTML5 player SDK — LL-HLS + DRM playback for Oddin live streams (managed, bring-your-own-player, and iframe-embed modes).",
5
5
  "type": "module",
6
6
  "sideEffects": false,
@@ -45,6 +45,7 @@
45
45
  "dist/index.d.cts",
46
46
  "dist/havik-player.global.js",
47
47
  "dist/havik-player.global.js.map",
48
+ "embed",
48
49
  "examples",
49
50
  "README.md",
50
51
  "LICENSE",
@@ -67,6 +68,8 @@
67
68
  "test:watch": "vitest",
68
69
  "test:coverage": "vitest run --coverage",
69
70
  "test:conformance": "playwright test -c conformance/playwright.config.ts",
71
+ "build:crossbrowser": "vite build --config crossbrowser/vite.config.ts",
72
+ "test:crossbrowser": "npm run build:crossbrowser && playwright test -c crossbrowser/playwright.config.ts",
70
73
  "verify:ssr": "node scripts/verify-ssr.mjs",
71
74
  "publint": "publint",
72
75
  "size": "size-limit",