diff --git a/api/js/etemplate/CustomHtmlElements/multi-video.ts b/api/js/etemplate/CustomHtmlElements/multi-video.ts
index bc17f58d03..5e143a5655 100644
--- a/api/js/etemplate/CustomHtmlElements/multi-video.ts
+++ b/api/js/etemplate/CustomHtmlElements/multi-video.ts
@@ -28,6 +28,7 @@ type VideoTagsArray = Array<{
// Create a class for the element
class multi_video extends HTMLElement {
+ private _src : string = '';
/**
* shadow dom container
* @private
@@ -111,7 +112,7 @@ class multi_video extends HTMLElement {
switch(name)
{
case 'src':
- this.__buildVideoTags(newVal);
+ this.src = newVal;
break;
case 'type':
this._videos.forEach(_item => {
@@ -132,25 +133,20 @@ class multi_video extends HTMLElement {
/**
* init/update video tags
- * @param _value
+ * @param array|string _value
* @private
*/
private __buildVideoTags (_value)
{
- let value = _value.split(',');
+ let value = Array.isArray(_value) ? _value : _value.split(',');
let video = null;
let duration = 0;
for (let i=0;i{
+ Array.from(this._wrapper?.children)?.forEach(_ch=>{
_ch.remove();
});
this.__buildVideoTags(value);
@@ -262,7 +259,7 @@ class multi_video extends HTMLElement {
*/
get src ()
{
- return this.src;
+ return this._src;
}
/**