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/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.10/dist/";
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 + folder + "/" + file;
421
+ return base + asset;
425
422
  }
426
- var fromScript = getPath(folder) + file;
427
- if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1 && !isUnreliablePluginBase(getPath())) {
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 (!allowCdn || !cdn || cdn.indexOf("1.1.10") > -1) {
433
- return folder + "/" + file;
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 (cdn.slice(-1) !== "/") {
436
- cdn += "/";
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 cdn + folder + "/" + file;
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(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
6452
- if (cdn && cdn.indexOf("1.1.10") === -1 && m) {
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 (/\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base)) {
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 || [], thisPath = scriptList.length ? scriptList[scriptList.length - 1].src : "";
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 src = scriptList[i].src.slice(scriptList[i].src.lastIndexOf("/") + 1, scriptList[i].src.lastIndexOf("."));
6712
- if (scriptName && (scriptName == "ckplayer" || scriptName == "ckplayer.min" || scriptName == "ckplayer-plus") || scriptList[i].src && (src == "ckplayer" || src == "ckplayer.min" || src.indexOf("ckplayer") === 0)) {
6713
- thisPath = scriptList[i].src;
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("./", import_meta.url).href;
7221
- if (/\/dist\/$/i.test(base) || /\/ckplayer-plus(?:@[^/]+)?\/(?:dist\/)?$/i.test(base) || /\/node_modules\/ckplayer-plus\/(?:dist\/)?$/i.test(base)) {
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.10",
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
  },
package/types/vue.d.ts CHANGED
@@ -36,7 +36,7 @@ declare const CkPlayer: {
36
36
  methods: {
37
37
  play(): void;
38
38
  pause(): void;
39
- seekTo(time: number): void;
39
+ seekTo(time: number): void;
40
40
  setVolume(vol: number): void;
41
41
  muted(): void;
42
42
  exitMuted(): void;