ckplayer-plus 1.1.10 → 1.1.12
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.
- package/README.md +179 -176
- package/dist/ckplayer.js +77 -33
- package/dist/ckplayer.min.js +2 -2
- package/dist/flv.js/LICENSE +201 -201
- package/dist/flv.js/flv.min.js +9 -9
- package/dist/hls.js/LICENSE +28 -28
- package/dist/hls.js/hls.min.js +1 -1
- package/dist/index.cjs +68 -25
- package/dist/index.js +69 -27
- package/dist/mpegts.js/LICENSE +201 -201
- package/dist/mpegts.js/mpegts.min.js +8 -8
- package/dist/react.cjs +71 -25
- package/dist/react.js +72 -27
- package/dist/vue.cjs +71 -25
- package/dist/vue.js +72 -27
- package/package.json +6 -2
- package/types/vue.d.ts +1 -1
package/dist/vue.js
CHANGED
|
@@ -204,7 +204,8 @@ var require_ckplayer = __commonJS({
|
|
|
204
204
|
cdnFallback: true
|
|
205
205
|
// getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
|
|
206
206
|
};
|
|
207
|
-
var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.
|
|
207
|
+
var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.1.12/dist/";
|
|
208
|
+
var ckplayerPlusCdnReady = true;
|
|
208
209
|
function ckplayerEmbed(videoObj) {
|
|
209
210
|
var rightMenu = [
|
|
210
211
|
{
|
|
@@ -402,12 +403,8 @@ var require_ckplayer = __commonJS({
|
|
|
402
403
|
} else {
|
|
403
404
|
return embed(obj2);
|
|
404
405
|
}
|
|
405
|
-
}, isUnreliablePluginBase = function(base) {
|
|
406
|
-
if (!base || valType(base) != "string") {
|
|
407
|
-
return true;
|
|
408
|
-
}
|
|
409
|
-
return /\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base);
|
|
410
406
|
}, resolveAssetPath = function(folder, file) {
|
|
407
|
+
var asset = folder + "/" + file;
|
|
411
408
|
var base = "";
|
|
412
409
|
if (vars && vars["pluginPath"]) {
|
|
413
410
|
base = vars["pluginPath"];
|
|
@@ -421,21 +418,29 @@ var require_ckplayer = __commonJS({
|
|
|
421
418
|
if (base.slice(-1) !== "/") {
|
|
422
419
|
base += "/";
|
|
423
420
|
}
|
|
424
|
-
return base +
|
|
421
|
+
return base + asset;
|
|
425
422
|
}
|
|
426
|
-
var
|
|
427
|
-
|
|
423
|
+
var scriptBase = getPath();
|
|
424
|
+
var fromScript = scriptBase ? getPath(folder) + file : "";
|
|
425
|
+
if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1 && !isUnreliablePluginBase(scriptBase)) {
|
|
428
426
|
return fromScript;
|
|
429
427
|
}
|
|
430
428
|
var allowCdn = !vars || vars["cdnFallback"] !== false;
|
|
431
429
|
var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
|
|
432
|
-
if (
|
|
433
|
-
|
|
430
|
+
if (allowCdn && ckplayerPlusCdnReady && cdn) {
|
|
431
|
+
if (cdn.slice(-1) !== "/") {
|
|
432
|
+
cdn += "/";
|
|
433
|
+
}
|
|
434
|
+
return cdn + asset;
|
|
435
|
+
}
|
|
436
|
+
var npmDist = guessNpmDistBase();
|
|
437
|
+
if (npmDist) {
|
|
438
|
+
return npmDist + asset;
|
|
434
439
|
}
|
|
435
|
-
if (
|
|
436
|
-
|
|
440
|
+
if (typeof console !== "undefined" && console.warn) {
|
|
441
|
+
console.warn("[ckplayer-plus] cannot resolve plugin path for " + asset + ". Set pluginPath / window.ckplayerBasePath, or keep cdnFallback:true.");
|
|
437
442
|
}
|
|
438
|
-
return
|
|
443
|
+
return "";
|
|
439
444
|
}, guessPlug = function(v) {
|
|
440
445
|
var url = "";
|
|
441
446
|
if (valType(v) == "string") {
|
|
@@ -6400,6 +6405,12 @@ var require_ckplayer = __commonJS({
|
|
|
6400
6405
|
if (!isUndefined(callback2)) {
|
|
6401
6406
|
fn = callback2;
|
|
6402
6407
|
}
|
|
6408
|
+
if (!file) {
|
|
6409
|
+
if (typeof console !== "undefined" && console.warn) {
|
|
6410
|
+
console.warn("[ckplayer-plus] loadJs skipped: empty plugin path");
|
|
6411
|
+
}
|
|
6412
|
+
return;
|
|
6413
|
+
}
|
|
6403
6414
|
if (checkJs(file)) {
|
|
6404
6415
|
fn();
|
|
6405
6416
|
return;
|
|
@@ -6448,8 +6459,8 @@ var require_ckplayer = __commonJS({
|
|
|
6448
6459
|
removeScript();
|
|
6449
6460
|
if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
|
|
6450
6461
|
var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
|
|
6451
|
-
var m = String(file).match(
|
|
6452
|
-
if (cdn &&
|
|
6462
|
+
var m = String(file).match(/(?:^|\/)(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
|
|
6463
|
+
if (cdn && ckplayerPlusCdnReady && m) {
|
|
6453
6464
|
if (cdn.slice(-1) !== "/") {
|
|
6454
6465
|
cdn += "/";
|
|
6455
6466
|
}
|
|
@@ -6689,13 +6700,29 @@ var require_ckplayer = __commonJS({
|
|
|
6689
6700
|
}
|
|
6690
6701
|
}
|
|
6691
6702
|
}
|
|
6703
|
+
function guessNpmDistBase() {
|
|
6704
|
+
return "/node_modules/ckplayer-plus/dist/";
|
|
6705
|
+
}
|
|
6706
|
+
function isUnreliablePluginBase(base) {
|
|
6707
|
+
if (!base || typeof base !== "string") {
|
|
6708
|
+
return true;
|
|
6709
|
+
}
|
|
6710
|
+
var b = base.replace(/\\/g, "/");
|
|
6711
|
+
if (/\/(?:assets|\.vite\/deps|_next\/static|chunks?|static\/js|webpack|@fs|@id|@vite)\/?$/i.test(b)) {
|
|
6712
|
+
return true;
|
|
6713
|
+
}
|
|
6714
|
+
if (/\/(?:src|app|pages|views|components)\/?$/i.test(b)) {
|
|
6715
|
+
return true;
|
|
6716
|
+
}
|
|
6717
|
+
if (/^https?:\/\/[^/?#]+\/?$/i.test(b)) {
|
|
6718
|
+
return true;
|
|
6719
|
+
}
|
|
6720
|
+
return false;
|
|
6721
|
+
}
|
|
6692
6722
|
function getPath(siz) {
|
|
6693
6723
|
if (typeof window !== "undefined" && window.ckplayerBasePath) {
|
|
6694
6724
|
var base = window.ckplayerBasePath;
|
|
6695
|
-
if (
|
|
6696
|
-
base = "";
|
|
6697
|
-
}
|
|
6698
|
-
if (base) {
|
|
6725
|
+
if (!isUnreliablePluginBase(base)) {
|
|
6699
6726
|
if (base.slice(-1) !== "/") {
|
|
6700
6727
|
base += "/";
|
|
6701
6728
|
}
|
|
@@ -6705,12 +6732,17 @@ var require_ckplayer = __commonJS({
|
|
|
6705
6732
|
return base;
|
|
6706
6733
|
}
|
|
6707
6734
|
}
|
|
6708
|
-
var scriptList = document.scripts || []
|
|
6735
|
+
var scriptList = document.scripts || [];
|
|
6736
|
+
var thisPath = "";
|
|
6709
6737
|
for (var i = 0; i < scriptList.length; i++) {
|
|
6710
6738
|
var scriptName = scriptList[i].getAttribute("name") || scriptList[i].getAttribute("data-name");
|
|
6711
|
-
var
|
|
6712
|
-
if (
|
|
6713
|
-
|
|
6739
|
+
var srcFull = scriptList[i].src || "";
|
|
6740
|
+
if (!srcFull) {
|
|
6741
|
+
continue;
|
|
6742
|
+
}
|
|
6743
|
+
var src = srcFull.slice(srcFull.lastIndexOf("/") + 1, srcFull.lastIndexOf("."));
|
|
6744
|
+
if (scriptName && (scriptName == "ckplayer" || scriptName == "ckplayer.min" || scriptName == "ckplayer-plus") || (src == "ckplayer" || src == "ckplayer.min" || src.indexOf("ckplayer") === 0)) {
|
|
6745
|
+
thisPath = srcFull;
|
|
6714
6746
|
break;
|
|
6715
6747
|
}
|
|
6716
6748
|
}
|
|
@@ -6720,6 +6752,9 @@ var require_ckplayer = __commonJS({
|
|
|
6720
6752
|
} else if (thisPath && thisPath.lastIndexOf("/") > -1) {
|
|
6721
6753
|
path = thisPath.substring(0, thisPath.lastIndexOf("/") + 1);
|
|
6722
6754
|
}
|
|
6755
|
+
if (!path || isUnreliablePluginBase(path)) {
|
|
6756
|
+
return "";
|
|
6757
|
+
}
|
|
6723
6758
|
if (!isUndefined(siz)) {
|
|
6724
6759
|
path += siz + "/";
|
|
6725
6760
|
}
|
|
@@ -7214,17 +7249,24 @@ import { h, version as vueVersion } from "vue";
|
|
|
7214
7249
|
|
|
7215
7250
|
// src/index.js
|
|
7216
7251
|
var import_ckplayer = __toESM(require_ckplayer());
|
|
7217
|
-
var import_meta = {};
|
|
7218
7252
|
try {
|
|
7219
7253
|
if (typeof window !== "undefined" && !window.ckplayerBasePath) {
|
|
7220
|
-
base = new URL("./",
|
|
7221
|
-
|
|
7254
|
+
base = new URL("./", import.meta.url).href;
|
|
7255
|
+
normalized = String(base).replace(/\\/g, "/");
|
|
7256
|
+
trusted = /\/dist\/$/i.test(normalized) || /\/ckplayer-plus(?:@[^/]+)?\/(?:dist\/)?$/i.test(normalized) || /\/node_modules\/ckplayer-plus\/(?:dist\/)?$/i.test(normalized);
|
|
7257
|
+
untrusted = /\/(?:assets|\.vite\/deps|_next\/static|chunks?|src|app|pages|views|components|@fs|@id|@vite)\/?$/i.test(
|
|
7258
|
+
normalized
|
|
7259
|
+
);
|
|
7260
|
+
if (trusted && !untrusted) {
|
|
7222
7261
|
window.ckplayerBasePath = base;
|
|
7223
7262
|
}
|
|
7224
7263
|
}
|
|
7225
7264
|
} catch (e) {
|
|
7226
7265
|
}
|
|
7227
7266
|
var base;
|
|
7267
|
+
var normalized;
|
|
7268
|
+
var trusted;
|
|
7269
|
+
var untrusted;
|
|
7228
7270
|
var index_default = import_ckplayer.default;
|
|
7229
7271
|
|
|
7230
7272
|
// src/shared.js
|
|
@@ -7242,6 +7284,9 @@ function buildPlayerConfig(input) {
|
|
|
7242
7284
|
live: input.live != null ? input.live : false,
|
|
7243
7285
|
plug: input.plug || "",
|
|
7244
7286
|
autoPlug: input.autoPlug !== false,
|
|
7287
|
+
// Vue/React 经 bundler 引入时无 <script ckplayer>,强制走内置插件 + CDN 回退
|
|
7288
|
+
preferBuiltinPlug: opts.preferBuiltinPlug !== false,
|
|
7289
|
+
cdnFallback: opts.cdnFallback !== false,
|
|
7245
7290
|
volume: input.volume != null ? input.volume : 0.8,
|
|
7246
7291
|
cookie: opts.cookie || input.cookie || createUid()
|
|
7247
7292
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ckplayer-plus",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.12",
|
|
4
4
|
"description": "Enhanced ckplayer X3 packaging with Vue 2/3 and React wrappers — ESM-ready HTML5 video player",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ckplayer",
|
|
@@ -55,6 +55,10 @@
|
|
|
55
55
|
"./ckplayer.css": "./dist/ckplayer.css",
|
|
56
56
|
"./ckplayer.js": "./dist/ckplayer.js",
|
|
57
57
|
"./ckplayer.min.js": "./dist/ckplayer.min.js",
|
|
58
|
+
"./hls.js/*": "./dist/hls.js/*",
|
|
59
|
+
"./flv.js/*": "./dist/flv.js/*",
|
|
60
|
+
"./mpegts.js/*": "./dist/mpegts.js/*",
|
|
61
|
+
"./language/*": "./dist/language/*",
|
|
58
62
|
"./images/*": "./dist/images/*",
|
|
59
63
|
"./package.json": "./package.json"
|
|
60
64
|
},
|
|
@@ -68,7 +72,7 @@
|
|
|
68
72
|
"build": "node scripts/build.mjs",
|
|
69
73
|
"lint": "eslint src scripts",
|
|
70
74
|
"typecheck": "tsc --noEmit",
|
|
71
|
-
"test": "node scripts/smoke.mjs && node scripts/hls-resume-regress.mjs",
|
|
75
|
+
"test": "node scripts/smoke.mjs && node scripts/plugin-path-regress.mjs && node scripts/hls-resume-regress.mjs",
|
|
72
76
|
"check": "npm run lint && npm run typecheck && npm run build && npm run test",
|
|
73
77
|
"prepublishOnly": "npm run build"
|
|
74
78
|
},
|