Skip to content

Commit 41aaf78

Browse files
(Lookup): manage when to run onComplete()
1 parent 7ddfb0f commit 41aaf78

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

src/scripts/Lookup.tsx

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1131,10 +1131,15 @@ export const Lookup = createFC<LookupProps, { isFormElement: boolean }>(
11311131
}
11321132
}
11331133

1134+
const isComplete = !containerRef.current?.contains(e.relatedTarget);
1135+
11341136
setTimeout(() => {
11351137
setOpened(false);
11361138
onBlur_?.();
1137-
onComplete?.(true);
1139+
1140+
if (isComplete) {
1141+
onComplete?.(true);
1142+
}
11381143
}, 10);
11391144
});
11401145

@@ -1244,6 +1249,7 @@ export const Lookup = createFC<LookupProps, { isFormElement: boolean }>(
12441249

12451250
const hasSelection = selected != null;
12461251

1252+
const containerRef = useRef<HTMLDivElement | null>(null);
12471253
const containerClassNames = classnames(
12481254
'slds-combobox_container',
12491255
{
@@ -1280,7 +1286,7 @@ export const Lookup = createFC<LookupProps, { isFormElement: boolean }>(
12801286
if (hasSelection && selected) {
12811287
return (
12821288
<FormElement {...formElemProps}>
1283-
<div className={containerClassNames}>
1289+
<div ref={containerRef} className={containerClassNames}>
12841290
<LookupSelectedState
12851291
selected={selected}
12861292
disabled={disabled}
@@ -1297,7 +1303,7 @@ export const Lookup = createFC<LookupProps, { isFormElement: boolean }>(
12971303
// Multi Entity Lookup with scope selector
12981304
return (
12991305
<FormElement {...formElemProps}>
1300-
<div className={containerClassNames}>
1306+
<div ref={containerRef} className={containerClassNames}>
13011307
<div className='slds-combobox-group'>
13021308
<LookupScopeSelector
13031309
scopes={scopes}
@@ -1359,7 +1365,7 @@ export const Lookup = createFC<LookupProps, { isFormElement: boolean }>(
13591365
// Render simple search state (no scopes)
13601366
return (
13611367
<FormElement {...formElemProps}>
1362-
<div className={containerClassNames}>
1368+
<div ref={containerRef} className={containerClassNames}>
13631369
<div className={comboboxClassNames} ref={elementRef}>
13641370
<LookupSearchInput
13651371
{...rprops}

0 commit comments

Comments
 (0)