From 3c6c2aec1aedec87abd59d229078c4b1f09ab8ad Mon Sep 17 00:00:00 2001 From: nathan Date: Wed, 4 May 2022 17:27:58 -0600 Subject: [PATCH] Don't break everything if something goes wrong cloning webcomponent for nm row --- .../etemplate/et2_extension_nextmatch_rowProvider.ts | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/api/js/etemplate/et2_extension_nextmatch_rowProvider.ts b/api/js/etemplate/et2_extension_nextmatch_rowProvider.ts index a045559c28..29062f8f82 100644 --- a/api/js/etemplate/et2_extension_nextmatch_rowProvider.ts +++ b/api/js/etemplate/et2_extension_nextmatch_rowProvider.ts @@ -180,6 +180,11 @@ export class et2_nextmatch_rowProvider if(typeof window.customElements.get(widget.localName) != "undefined") { widget = this._cloneWebComponent(entry, row, data); + if(!widget) + { + console.warn("Error cloning ", entry); + continue; + } } else { @@ -274,6 +279,11 @@ export class et2_nextmatch_rowProvider // Use the clone, not the original let widget = entry.nodeFuncs[0](row); + if(!widget || widget.localName !== entry.widget.localName) + { + return null; + } + // Need to set the parent to the nm or egw() (and probably others) will not be as expected, using window instead // of app. arrayMgrs are fine without this though widget._parent = this._context;