ckplayer-plus 1.0.2 → 1.0.5

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/index.cjs CHANGED
@@ -212,7 +212,7 @@ var require_ckplayer = __commonJS({
212
212
  cdnFallback: true
213
213
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
214
214
  };
215
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
215
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.5/dist/";
216
216
  function ckplayerEmbed(videoObj) {
217
217
  var rightMenu = [
218
218
  {
@@ -375,26 +375,34 @@ var require_ckplayer = __commonJS({
375
375
  } else {
376
376
  return embed(obj2);
377
377
  }
378
+ }, isUnreliablePluginBase = function(base2) {
379
+ if (!base2 || valType(base2) != "string") {
380
+ return true;
381
+ }
382
+ return /\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2);
378
383
  }, resolveAssetPath = function(folder, file) {
379
- var base = "";
384
+ var base2 = "";
380
385
  if (vars && vars["pluginPath"]) {
381
- base = vars["pluginPath"];
386
+ base2 = vars["pluginPath"];
382
387
  } else if (typeof window !== "undefined" && window.ckplayerBasePath) {
383
- base = window.ckplayerBasePath;
388
+ base2 = window.ckplayerBasePath;
389
+ }
390
+ if (base2 && isUnreliablePluginBase(base2)) {
391
+ base2 = "";
384
392
  }
385
- if (base) {
386
- if (base.slice(-1) !== "/") {
387
- base += "/";
393
+ if (base2) {
394
+ if (base2.slice(-1) !== "/") {
395
+ base2 += "/";
388
396
  }
389
- return base + folder + "/" + file;
397
+ return base2 + folder + "/" + file;
390
398
  }
391
399
  var fromScript = getPath(folder) + file;
392
- if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
400
+ if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1 && !isUnreliablePluginBase(getPath())) {
393
401
  return fromScript;
394
402
  }
395
403
  var allowCdn = !vars || vars["cdnFallback"] !== false;
396
404
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
397
- if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
405
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.5") > -1) {
398
406
  return folder + "/" + file;
399
407
  }
400
408
  if (cdn.slice(-1) !== "/") {
@@ -5785,7 +5793,7 @@ var require_ckplayer = __commonJS({
5785
5793
  }
5786
5794
  varsTime += time;
5787
5795
  return language["lookBack"] + date("H:i:s", varsTime);
5788
- }, loadJs = function(file, callback2) {
5796
+ }, loadJs = function(file, callback2, isRetry) {
5789
5797
  var fn2 = function() {
5790
5798
  };
5791
5799
  if (!isUndefined(callback2)) {
@@ -5820,19 +5828,37 @@ var require_ckplayer = __commonJS({
5820
5828
  ;
5821
5829
  }, 10);
5822
5830
  };
5823
- var w3c = function() {
5824
- if (valType(fn2) == "function") {
5825
- fn2();
5831
+ var removeScript = function() {
5832
+ try {
5833
+ if (script.parentNode) {
5834
+ script.parentNode.removeChild(script);
5835
+ }
5836
+ } catch (event2) {
5826
5837
  }
5838
+ };
5839
+ var w3c = function() {
5827
5840
  removeListener(script, "load", w3c);
5828
5841
  removeListener(script, "error", w3cError);
5842
+ doReady();
5829
5843
  };
5830
5844
  var w3cError = function() {
5831
- if (valType(fn2) == "function") {
5832
- fn2();
5833
- }
5834
5845
  removeListener(script, "load", w3c);
5835
5846
  removeListener(script, "error", w3cError);
5847
+ removeScript();
5848
+ if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
5849
+ var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
5850
+ var m2 = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
5851
+ if (cdn && cdn.indexOf("1.0.5") === -1 && m2) {
5852
+ if (cdn.slice(-1) !== "/") {
5853
+ cdn += "/";
5854
+ }
5855
+ var retryUrl = cdn + m2[1] + "/" + m2[2];
5856
+ if (retryUrl !== file) {
5857
+ loadJs(retryUrl, callback2, true);
5858
+ return;
5859
+ }
5860
+ }
5861
+ }
5836
5862
  };
5837
5863
  try {
5838
5864
  addListener(script, "load", w3c);
@@ -6058,14 +6084,19 @@ var require_ckplayer = __commonJS({
6058
6084
  }
6059
6085
  function getPath(siz) {
6060
6086
  if (typeof window !== "undefined" && window.ckplayerBasePath) {
6061
- var base = window.ckplayerBasePath;
6062
- if (base.slice(-1) !== "/") {
6063
- base += "/";
6087
+ var base2 = window.ckplayerBasePath;
6088
+ if (/\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2)) {
6089
+ base2 = "";
6064
6090
  }
6065
- if (!isUndefined(siz)) {
6066
- return base + siz + "/";
6091
+ if (base2) {
6092
+ if (base2.slice(-1) !== "/") {
6093
+ base2 += "/";
6094
+ }
6095
+ if (!isUndefined(siz)) {
6096
+ return base2 + siz + "/";
6097
+ }
6098
+ return base2;
6067
6099
  }
6068
- return base;
6069
6100
  }
6070
6101
  var scriptList = document.scripts || [], thisPath = scriptList.length ? scriptList[scriptList.length - 1].src : "";
6071
6102
  for (var i2 = 0; i2 < scriptList.length; i2++) {
@@ -6583,10 +6614,14 @@ var import_ckplayer = __toESM(require_ckplayer());
6583
6614
  var import_meta = {};
6584
6615
  try {
6585
6616
  if (typeof window !== "undefined" && !window.ckplayerBasePath) {
6586
- window.ckplayerBasePath = new URL("./", import_meta.url).href;
6617
+ base = new URL("./", import_meta.url).href;
6618
+ if (/\/dist\/$/i.test(base) || /\/ckplayer-plus(?:@[^/]+)?\/(?:dist\/)?$/i.test(base) || /\/node_modules\/ckplayer-plus\/(?:dist\/)?$/i.test(base)) {
6619
+ window.ckplayerBasePath = base;
6620
+ }
6587
6621
  }
6588
6622
  } catch (e) {
6589
6623
  }
6624
+ var base;
6590
6625
  function guessPlug2(url) {
6591
6626
  if (!url || typeof url !== "string") return "";
6592
6627
  var path = url.split("?")[0].split("#")[0].toLowerCase();
package/dist/index.js CHANGED
@@ -207,7 +207,7 @@ var require_ckplayer = __commonJS({
207
207
  cdnFallback: true
208
208
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
209
209
  };
210
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
210
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.5/dist/";
211
211
  function ckplayerEmbed(videoObj) {
212
212
  var rightMenu = [
213
213
  {
@@ -370,26 +370,34 @@ var require_ckplayer = __commonJS({
370
370
  } else {
371
371
  return embed(obj2);
372
372
  }
373
+ }, isUnreliablePluginBase = function(base2) {
374
+ if (!base2 || valType(base2) != "string") {
375
+ return true;
376
+ }
377
+ return /\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2);
373
378
  }, resolveAssetPath = function(folder, file) {
374
- var base = "";
379
+ var base2 = "";
375
380
  if (vars && vars["pluginPath"]) {
376
- base = vars["pluginPath"];
381
+ base2 = vars["pluginPath"];
377
382
  } else if (typeof window !== "undefined" && window.ckplayerBasePath) {
378
- base = window.ckplayerBasePath;
383
+ base2 = window.ckplayerBasePath;
384
+ }
385
+ if (base2 && isUnreliablePluginBase(base2)) {
386
+ base2 = "";
379
387
  }
380
- if (base) {
381
- if (base.slice(-1) !== "/") {
382
- base += "/";
388
+ if (base2) {
389
+ if (base2.slice(-1) !== "/") {
390
+ base2 += "/";
383
391
  }
384
- return base + folder + "/" + file;
392
+ return base2 + folder + "/" + file;
385
393
  }
386
394
  var fromScript = getPath(folder) + file;
387
- if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
395
+ if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1 && !isUnreliablePluginBase(getPath())) {
388
396
  return fromScript;
389
397
  }
390
398
  var allowCdn = !vars || vars["cdnFallback"] !== false;
391
399
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
392
- if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
400
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.5") > -1) {
393
401
  return folder + "/" + file;
394
402
  }
395
403
  if (cdn.slice(-1) !== "/") {
@@ -5780,7 +5788,7 @@ var require_ckplayer = __commonJS({
5780
5788
  }
5781
5789
  varsTime += time;
5782
5790
  return language["lookBack"] + date("H:i:s", varsTime);
5783
- }, loadJs = function(file, callback2) {
5791
+ }, loadJs = function(file, callback2, isRetry) {
5784
5792
  var fn2 = function() {
5785
5793
  };
5786
5794
  if (!isUndefined(callback2)) {
@@ -5815,19 +5823,37 @@ var require_ckplayer = __commonJS({
5815
5823
  ;
5816
5824
  }, 10);
5817
5825
  };
5818
- var w3c = function() {
5819
- if (valType(fn2) == "function") {
5820
- fn2();
5826
+ var removeScript = function() {
5827
+ try {
5828
+ if (script.parentNode) {
5829
+ script.parentNode.removeChild(script);
5830
+ }
5831
+ } catch (event2) {
5821
5832
  }
5833
+ };
5834
+ var w3c = function() {
5822
5835
  removeListener(script, "load", w3c);
5823
5836
  removeListener(script, "error", w3cError);
5837
+ doReady();
5824
5838
  };
5825
5839
  var w3cError = function() {
5826
- if (valType(fn2) == "function") {
5827
- fn2();
5828
- }
5829
5840
  removeListener(script, "load", w3c);
5830
5841
  removeListener(script, "error", w3cError);
5842
+ removeScript();
5843
+ if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
5844
+ var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
5845
+ var m2 = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
5846
+ if (cdn && cdn.indexOf("1.0.5") === -1 && m2) {
5847
+ if (cdn.slice(-1) !== "/") {
5848
+ cdn += "/";
5849
+ }
5850
+ var retryUrl = cdn + m2[1] + "/" + m2[2];
5851
+ if (retryUrl !== file) {
5852
+ loadJs(retryUrl, callback2, true);
5853
+ return;
5854
+ }
5855
+ }
5856
+ }
5831
5857
  };
5832
5858
  try {
5833
5859
  addListener(script, "load", w3c);
@@ -6053,14 +6079,19 @@ var require_ckplayer = __commonJS({
6053
6079
  }
6054
6080
  function getPath(siz) {
6055
6081
  if (typeof window !== "undefined" && window.ckplayerBasePath) {
6056
- var base = window.ckplayerBasePath;
6057
- if (base.slice(-1) !== "/") {
6058
- base += "/";
6082
+ var base2 = window.ckplayerBasePath;
6083
+ if (/\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2)) {
6084
+ base2 = "";
6059
6085
  }
6060
- if (!isUndefined(siz)) {
6061
- return base + siz + "/";
6086
+ if (base2) {
6087
+ if (base2.slice(-1) !== "/") {
6088
+ base2 += "/";
6089
+ }
6090
+ if (!isUndefined(siz)) {
6091
+ return base2 + siz + "/";
6092
+ }
6093
+ return base2;
6062
6094
  }
6063
- return base;
6064
6095
  }
6065
6096
  var scriptList = document.scripts || [], thisPath = scriptList.length ? scriptList[scriptList.length - 1].src : "";
6066
6097
  for (var i2 = 0; i2 < scriptList.length; i2++) {
@@ -6571,10 +6602,14 @@ var import_ckplayer = __toESM(require_ckplayer());
6571
6602
  var import_meta = {};
6572
6603
  try {
6573
6604
  if (typeof window !== "undefined" && !window.ckplayerBasePath) {
6574
- window.ckplayerBasePath = new URL("./", import_meta.url).href;
6605
+ base = new URL("./", import_meta.url).href;
6606
+ if (/\/dist\/$/i.test(base) || /\/ckplayer-plus(?:@[^/]+)?\/(?:dist\/)?$/i.test(base) || /\/node_modules\/ckplayer-plus\/(?:dist\/)?$/i.test(base)) {
6607
+ window.ckplayerBasePath = base;
6608
+ }
6575
6609
  }
6576
6610
  } catch (e) {
6577
6611
  }
6612
+ var base;
6578
6613
  function guessPlug2(url) {
6579
6614
  if (!url || typeof url !== "string") return "";
6580
6615
  var path = url.split("?")[0].split("#")[0].toLowerCase();
package/dist/react.cjs CHANGED
@@ -212,7 +212,7 @@ var require_ckplayer = __commonJS({
212
212
  cdnFallback: true
213
213
  // getPath 失败时是否回退到 jsDelivr(内网可设 false,并配置 pluginPath)
214
214
  };
215
- var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.2/dist/";
215
+ var ckplayerPlusDefaultCdn = "https://cdn.jsdelivr.net/npm/ckplayer-plus@1.0.5/dist/";
216
216
  function ckplayerEmbed(videoObj) {
217
217
  var rightMenu = [
218
218
  {
@@ -375,26 +375,34 @@ var require_ckplayer = __commonJS({
375
375
  } else {
376
376
  return embed(obj2);
377
377
  }
378
+ }, isUnreliablePluginBase = function(base2) {
379
+ if (!base2 || valType(base2) != "string") {
380
+ return true;
381
+ }
382
+ return /\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2);
378
383
  }, resolveAssetPath = function(folder, file) {
379
- var base = "";
384
+ var base2 = "";
380
385
  if (vars && vars["pluginPath"]) {
381
- base = vars["pluginPath"];
386
+ base2 = vars["pluginPath"];
382
387
  } else if (typeof window !== "undefined" && window.ckplayerBasePath) {
383
- base = window.ckplayerBasePath;
388
+ base2 = window.ckplayerBasePath;
389
+ }
390
+ if (base2 && isUnreliablePluginBase(base2)) {
391
+ base2 = "";
384
392
  }
385
- if (base) {
386
- if (base.slice(-1) !== "/") {
387
- base += "/";
393
+ if (base2) {
394
+ if (base2.slice(-1) !== "/") {
395
+ base2 += "/";
388
396
  }
389
- return base + folder + "/" + file;
397
+ return base2 + folder + "/" + file;
390
398
  }
391
399
  var fromScript = getPath(folder) + file;
392
- if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1) {
400
+ if (fromScript && fromScript.indexOf(folder + "/") > -1 && fromScript.indexOf("undefined") === -1 && !isUnreliablePluginBase(getPath())) {
393
401
  return fromScript;
394
402
  }
395
403
  var allowCdn = !vars || vars["cdnFallback"] !== false;
396
404
  var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
397
- if (!allowCdn || !cdn || cdn.indexOf("1.0.2") > -1) {
405
+ if (!allowCdn || !cdn || cdn.indexOf("1.0.5") > -1) {
398
406
  return folder + "/" + file;
399
407
  }
400
408
  if (cdn.slice(-1) !== "/") {
@@ -5785,7 +5793,7 @@ var require_ckplayer = __commonJS({
5785
5793
  }
5786
5794
  varsTime += time;
5787
5795
  return language["lookBack"] + date("H:i:s", varsTime);
5788
- }, loadJs = function(file, callback2) {
5796
+ }, loadJs = function(file, callback2, isRetry) {
5789
5797
  var fn2 = function() {
5790
5798
  };
5791
5799
  if (!isUndefined(callback2)) {
@@ -5820,19 +5828,37 @@ var require_ckplayer = __commonJS({
5820
5828
  ;
5821
5829
  }, 10);
5822
5830
  };
5823
- var w3c = function() {
5824
- if (valType(fn2) == "function") {
5825
- fn2();
5831
+ var removeScript = function() {
5832
+ try {
5833
+ if (script.parentNode) {
5834
+ script.parentNode.removeChild(script);
5835
+ }
5836
+ } catch (event2) {
5826
5837
  }
5838
+ };
5839
+ var w3c = function() {
5827
5840
  removeListener(script, "load", w3c);
5828
5841
  removeListener(script, "error", w3cError);
5842
+ doReady();
5829
5843
  };
5830
5844
  var w3cError = function() {
5831
- if (valType(fn2) == "function") {
5832
- fn2();
5833
- }
5834
5845
  removeListener(script, "load", w3c);
5835
5846
  removeListener(script, "error", w3cError);
5847
+ removeScript();
5848
+ if (!isRetry && (!vars || vars["cdnFallback"] !== false)) {
5849
+ var cdn = typeof window !== "undefined" && window.ckplayerPlusCdn ? window.ckplayerPlusCdn : ckplayerPlusDefaultCdn;
5850
+ var m2 = String(file).match(/\/(hls\.js|flv\.js|mpegts\.js|language)\/([^/?#]+)(?:[?#].*)?$/i);
5851
+ if (cdn && cdn.indexOf("1.0.5") === -1 && m2) {
5852
+ if (cdn.slice(-1) !== "/") {
5853
+ cdn += "/";
5854
+ }
5855
+ var retryUrl = cdn + m2[1] + "/" + m2[2];
5856
+ if (retryUrl !== file) {
5857
+ loadJs(retryUrl, callback2, true);
5858
+ return;
5859
+ }
5860
+ }
5861
+ }
5836
5862
  };
5837
5863
  try {
5838
5864
  addListener(script, "load", w3c);
@@ -6058,14 +6084,19 @@ var require_ckplayer = __commonJS({
6058
6084
  }
6059
6085
  function getPath(siz) {
6060
6086
  if (typeof window !== "undefined" && window.ckplayerBasePath) {
6061
- var base = window.ckplayerBasePath;
6062
- if (base.slice(-1) !== "/") {
6063
- base += "/";
6087
+ var base2 = window.ckplayerBasePath;
6088
+ if (/\/(?:assets|\.vite\/deps|_next\/static|chunks?)\/?$/i.test(base2)) {
6089
+ base2 = "";
6064
6090
  }
6065
- if (!isUndefined(siz)) {
6066
- return base + siz + "/";
6091
+ if (base2) {
6092
+ if (base2.slice(-1) !== "/") {
6093
+ base2 += "/";
6094
+ }
6095
+ if (!isUndefined(siz)) {
6096
+ return base2 + siz + "/";
6097
+ }
6098
+ return base2;
6067
6099
  }
6068
- return base;
6069
6100
  }
6070
6101
  var scriptList = document.scripts || [], thisPath = scriptList.length ? scriptList[scriptList.length - 1].src : "";
6071
6102
  for (var i2 = 0; i2 < scriptList.length; i2++) {
@@ -6587,13 +6618,17 @@ var import_ckplayer = __toESM(require_ckplayer());
6587
6618
  var import_meta = {};
6588
6619
  try {
6589
6620
  if (typeof window !== "undefined" && !window.ckplayerBasePath) {
6590
- window.ckplayerBasePath = new URL("./", import_meta.url).href;
6621
+ base = new URL("./", import_meta.url).href;
6622
+ if (/\/dist\/$/i.test(base) || /\/ckplayer-plus(?:@[^/]+)?\/(?:dist\/)?$/i.test(base) || /\/node_modules\/ckplayer-plus\/(?:dist\/)?$/i.test(base)) {
6623
+ window.ckplayerBasePath = base;
6624
+ }
6591
6625
  }
6592
6626
  } catch (e) {
6593
6627
  }
6628
+ var base;
6594
6629
  var index_default = import_ckplayer.default;
6595
6630
 
6596
- // src/react/CkPlayer.js
6631
+ // src/shared.js
6597
6632
  var EVENT_MAP = {
6598
6633
  play: "onPlay",
6599
6634
  pause: "onPause",
@@ -6609,6 +6644,34 @@ var EVENT_MAP = {
6609
6644
  function createUid() {
6610
6645
  return "ckp-" + Math.random().toString(36).slice(2, 10);
6611
6646
  }
6647
+ function buildPlayerConfig(input) {
6648
+ var opts = input.options || {};
6649
+ var config = {
6650
+ container: input.container,
6651
+ video: input.video,
6652
+ poster: input.poster || "",
6653
+ autoplay: !!input.autoplay,
6654
+ live: input.live != null ? input.live : false,
6655
+ plug: input.plug || "",
6656
+ autoPlug: input.autoPlug !== false,
6657
+ volume: input.volume != null ? input.volume : 0.8,
6658
+ cookie: opts.cookie || input.cookie || createUid()
6659
+ };
6660
+ if (input.pluginPath) {
6661
+ config.pluginPath = input.pluginPath;
6662
+ }
6663
+ for (var key in opts) {
6664
+ if (Object.prototype.hasOwnProperty.call(opts, key) && key !== "container") {
6665
+ config[key] = opts[key];
6666
+ }
6667
+ }
6668
+ if (typeof config.loaded === "string") {
6669
+ delete config.loaded;
6670
+ }
6671
+ return config;
6672
+ }
6673
+
6674
+ // src/react/CkPlayer.js
6612
6675
  var CkPlayer = (0, import_react.forwardRef)(function CkPlayer2(props, ref) {
6613
6676
  var containerRef = (0, import_react.useRef)(null);
6614
6677
  var playerRef = (0, import_react.useRef)(null);
@@ -6623,47 +6686,30 @@ var CkPlayer = (0, import_react.forwardRef)(function CkPlayer2(props, ref) {
6623
6686
  var autoPlug = props.autoPlug;
6624
6687
  var volume = props.volume;
6625
6688
  var pluginPath = props.pluginPath;
6626
- var options = props.options;
6627
6689
  var width = props.width != null ? props.width : "100%";
6628
6690
  var height = props.height != null ? props.height : "400px";
6629
6691
  var className = props.className || "";
6630
6692
  var style = props.style;
6631
6693
  (0, import_react.useEffect)(function() {
6632
- var cancelled = false;
6633
6694
  var el = containerRef.current;
6634
6695
  if (typeof window === "undefined" || !el) {
6635
6696
  return void 0;
6636
6697
  }
6637
- var opts = propsRef.current && propsRef.current.options || {};
6638
- var config = {
6698
+ var current = propsRef.current || {};
6699
+ var config = buildPlayerConfig({
6639
6700
  container: el,
6640
- video: propsRef.current.video,
6641
- poster: propsRef.current.poster || "",
6642
- autoplay: !!propsRef.current.autoplay,
6643
- live: propsRef.current.live != null ? propsRef.current.live : false,
6644
- plug: propsRef.current.plug || "",
6645
- autoPlug: propsRef.current.autoPlug !== false,
6646
- volume: propsRef.current.volume != null ? propsRef.current.volume : 0.8,
6647
- cookie: opts.cookie || instanceIdRef.current
6648
- };
6649
- if (propsRef.current.pluginPath) {
6650
- config.pluginPath = propsRef.current.pluginPath;
6651
- }
6652
- Object.keys(opts).forEach(function(key) {
6653
- if (key !== "container") {
6654
- config[key] = opts[key];
6655
- }
6701
+ video: current.video,
6702
+ poster: current.poster,
6703
+ autoplay: current.autoplay,
6704
+ live: current.live,
6705
+ plug: current.plug,
6706
+ autoPlug: current.autoPlug,
6707
+ volume: current.volume,
6708
+ pluginPath: current.pluginPath,
6709
+ options: current.options,
6710
+ cookie: instanceIdRef.current
6656
6711
  });
6657
- if (typeof config.loaded === "string") {
6658
- delete config.loaded;
6659
- }
6660
6712
  var player2 = new index_default(config);
6661
- if (cancelled) {
6662
- if (player2 && typeof player2.remove === "function") {
6663
- player2.remove();
6664
- }
6665
- return void 0;
6666
- }
6667
6713
  playerRef.current = player2;
6668
6714
  Object.keys(EVENT_MAP).forEach(function(name) {
6669
6715
  if (typeof player2[name] === "function") {
@@ -6679,7 +6725,6 @@ var CkPlayer = (0, import_react.forwardRef)(function CkPlayer2(props, ref) {
6679
6725
  propsRef.current.onReady(player2);
6680
6726
  }
6681
6727
  return function cleanup() {
6682
- cancelled = true;
6683
6728
  if (playerRef.current && typeof playerRef.current.remove === "function") {
6684
6729
  try {
6685
6730
  playerRef.current.remove();
@@ -6688,7 +6733,12 @@ var CkPlayer = (0, import_react.forwardRef)(function CkPlayer2(props, ref) {
6688
6733
  }
6689
6734
  playerRef.current = null;
6690
6735
  };
6691
- }, [video2, poster, autoplay, live, plug, autoPlug, volume, pluginPath]);
6736
+ }, [video2, poster, autoplay, live, plug, autoPlug, pluginPath]);
6737
+ (0, import_react.useEffect)(function() {
6738
+ if (playerRef.current && typeof volume === "number" && typeof playerRef.current.volume === "function") {
6739
+ playerRef.current.volume(volume);
6740
+ }
6741
+ }, [volume]);
6692
6742
  (0, import_react.useImperativeHandle)(ref, function() {
6693
6743
  return {
6694
6744
  play: function() {