From dc25c4a5354394ef1e01556361672a52410a9f2b Mon Sep 17 00:00:00 2001 From: domakas Date: Wed, 16 Oct 2024 09:50:26 +0300 Subject: [PATCH 1/2] don't setTimeout when eventListener callback is not set --- .../src/components/gallery/proGallery/galleryContainer.js | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/gallery/src/components/gallery/proGallery/galleryContainer.js b/packages/gallery/src/components/gallery/proGallery/galleryContainer.js index efbf86808..e4e4d3f92 100644 --- a/packages/gallery/src/components/gallery/proGallery/galleryContainer.js +++ b/packages/gallery/src/components/gallery/proGallery/galleryContainer.js @@ -709,7 +709,10 @@ export class GalleryContainer extends React.Component { switch (eventName) { case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED: case GALLERY_CONSTS.events.ITEM_CLICKED: - setTimeout(this.props.eventsListener(eventName, eventData, event), 0); + const listenerCallback = this.props.eventsListener(eventName, eventData, event); + if (listenerCallback) { + setTimeout(listenerCallback, 0); + } break; default: this.props.eventsListener(eventName, eventData, event); From 2db65477624b2b3e42e4304ac959443f4259e436 Mon Sep 17 00:00:00 2001 From: domakas Date: Wed, 16 Oct 2024 10:48:28 +0300 Subject: [PATCH 2/2] fix lint --- .../src/components/gallery/proGallery/galleryContainer.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/gallery/src/components/gallery/proGallery/galleryContainer.js b/packages/gallery/src/components/gallery/proGallery/galleryContainer.js index e4e4d3f92..db99334c0 100644 --- a/packages/gallery/src/components/gallery/proGallery/galleryContainer.js +++ b/packages/gallery/src/components/gallery/proGallery/galleryContainer.js @@ -708,12 +708,13 @@ export class GalleryContainer extends React.Component { if (typeof this.props.eventsListener === 'function') { switch (eventName) { case GALLERY_CONSTS.events.ITEM_ACTION_TRIGGERED: - case GALLERY_CONSTS.events.ITEM_CLICKED: + case GALLERY_CONSTS.events.ITEM_CLICKED: { const listenerCallback = this.props.eventsListener(eventName, eventData, event); if (listenerCallback) { setTimeout(listenerCallback, 0); } break; + } default: this.props.eventsListener(eventName, eventData, event); }