Skip to content

Commit

Permalink
FIX: remove JSDoc in build process (#379)
Browse files Browse the repository at this point in the history
* Remove jsdoc in build files

* Update module and module resolution options in tsconfig.node.json files

* Make demo use minified files to test

* Don't remove comments if minify isn't enabled

* Improve Hls with Shaka demo

---------

Co-authored-by: Andriy Lysnevych <andriy.lysnevych@novage.com.ua>
  • Loading branch information
DimaDemchenko and mrlika authored Jun 26, 2024
1 parent 7c6007c commit ef0de12
Show file tree
Hide file tree
Showing 13 changed files with 148 additions and 40 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@
<script type="importmap">
{
"imports": {
"p2p-media-loader-core": "./core/p2p-media-loader-core.es.js",
"p2p-media-loader-shaka": "./shaka/p2p-media-loader-shaka.es.js",
"p2p-media-loader-hlsjs": "./hlsjs/p2p-media-loader-hlsjs.es.js"
"p2p-media-loader-core": "./core/p2p-media-loader-core.es.min.js",
"p2p-media-loader-shaka": "./shaka/p2p-media-loader-shaka.es.min.js",
"p2p-media-loader-hlsjs": "./hlsjs/p2p-media-loader-hlsjs.es.min.js"
}
}
</script>

<script src="https://cdn.jsdelivr.net/npm/shaka-player@~4/dist/shaka-player.compiled.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/hls.js@~1/dist/hls.min.js"></script>

<script type="module" src="./demo.js"></script>
<script type="module" src="./hls-with-shaka.js"></script>
</head>
<body>
<video id="video1" width="640" controls autoplay></video>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,40 +5,37 @@ const manifestUri = "https://test-streams.mux.dev/x36xhzz/x36xhzz.m3u8";

async function initApp() {
if (shaka.Player.isBrowserSupported()) {
initHlsPlayer();
await initShakaPlayer();
initHlsPlayer("video1");
await initShakaPlayer("video2");
} else {
console.error("Browser not supported!");
}
}

function initHlsPlayer() {
const p2pEngine = new HlsJsP2PEngine();

const hls = new Hls({ ...p2pEngine.getHlsJsConfig() });
hls.attachMedia(document.getElementById("video1"));
function initHlsPlayer(videoId) {
const HlsWithP2P = HlsJsP2PEngine.injectMixin(window.Hls);
const hls = new HlsWithP2P();
hls.attachMedia(document.getElementById(videoId));
hls.on(Hls.Events.ERROR, function (event, data) {
console.error("Error code", data.details, "object", data);
});

p2pEngine.setHls(hls);

try {
hls.loadSource(manifestUri);
} catch (e) {
onError(e);
}
}

async function initShakaPlayer() {
async function initShakaPlayer(videoId) {
ShakaP2PEngine.registerPlugins();
const engine = new ShakaP2PEngine();

const player = new shaka.Player();
await player.attach(document.getElementById("video2"));
await player.attach(document.getElementById(videoId));
player.addEventListener("error", onErrorEvent);

engine.configureAndInitShakaPlayer(player);
engine.bindShakaPlayer(player);

try {
await player.load(manifestUri);
Expand Down
4 changes: 2 additions & 2 deletions demo/public/modules-demo/player-vime.html
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
<script type="importmap">
{
"imports": {
"p2p-media-loader-core": "./core/p2p-media-loader-core.es.js",
"p2p-media-loader-hlsjs": "./hlsjs/p2p-media-loader-hlsjs.es.js"
"p2p-media-loader-core": "./core/p2p-media-loader-core.es.min.js",
"p2p-media-loader-hlsjs": "./hlsjs/p2p-media-loader-hlsjs.es.min.js"
}
}
</script>
Expand Down
1 change: 1 addition & 0 deletions packages/p2p-media-loader-core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
"nano-md5": "^1.0.5"
},
"devDependencies": {
"@rollup/plugin-terser": "^0.4.4",
"@types/streamx": "^2.9.5",
"vite-plugin-node-polyfills": "^0.21.0",
"vitest": "^1.6.0"
Expand Down
4 changes: 2 additions & 2 deletions packages/p2p-media-loader-core/tsconfig.node.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"module": "NodeNext",
"moduleResolution": "NodeNext"
"module": "ESNext",
"moduleResolution": "Bundler"
},
"include": ["vite.config.ts"]
}
12 changes: 11 additions & 1 deletion packages/p2p-media-loader-core/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import { defineConfig } from "vite";
import type { UserConfig } from "vite";
import { nodePolyfills } from "vite-plugin-node-polyfills";
import terser from "@rollup/plugin-terser";

const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
return {
Expand All @@ -16,7 +17,16 @@ const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
entry: "src/index.ts",
},
},
plugins: [nodePolyfills()],
plugins: [
nodePolyfills(),
minify
? terser({
format: {
comments: false,
},
})
: undefined,
],
};
};

Expand Down
1 change: 1 addition & 0 deletions packages/p2p-media-loader-hlsjs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
"p2p-media-loader-core": "workspace:*"
},
"devDependencies": {
"@rollup/plugin-terser": "^0.4.4",
"hls.js": "^1.5.7"
}
}
4 changes: 2 additions & 2 deletions packages/p2p-media-loader-hlsjs/tsconfig.node.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"module": "NodeNext",
"moduleResolution": "NodeNext"
"module": "ESNext",
"moduleResolution": "Bundler"
},
"include": ["vite.config.ts"]
}
10 changes: 10 additions & 0 deletions packages/p2p-media-loader-hlsjs/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { defineConfig } from "vite";
import type { UserConfig } from "vite";
import terser from "@rollup/plugin-terser";

const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
return {
Expand All @@ -18,6 +19,15 @@ const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
external: ["p2p-media-loader-core"],
},
},
plugins: [
minify
? terser({
format: {
comments: false,
},
})
: undefined,
],
};
};

Expand Down
1 change: 1 addition & 0 deletions packages/p2p-media-loader-shaka/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@
"p2p-media-loader-core": "workspace:*"
},
"devDependencies": {
"@rollup/plugin-terser": "^0.4.4",
"shaka-player": "^4.9.9"
}
}
4 changes: 2 additions & 2 deletions packages/p2p-media-loader-shaka/tsconfig.node.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"extends": "../../tsconfig.base.json",
"compilerOptions": {
"module": "NodeNext",
"moduleResolution": "NodeNext"
"module": "ESNext",
"moduleResolution": "Bundler"
},
"include": ["vite.config.ts"]
}
11 changes: 11 additions & 0 deletions packages/p2p-media-loader-shaka/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import { defineConfig } from "vite";
import type { UserConfig } from "vite";
import terser from "@rollup/plugin-terser";

const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
return {
Expand All @@ -18,6 +19,16 @@ const getESMConfig = ({ minify }: { minify: boolean }): UserConfig => {
external: ["p2p-media-loader-core"],
},
},
plugins: [
minify
? terser({
format: {
comments: false,
},
})
: undefined,
,
],
};
};

Expand Down
Loading

0 comments on commit ef0de12

Please sign in to comment.