Skip to content

Commit 9ec21db

Browse files
authored
fix: user rejection bug (#1202)
1 parent 0f445ea commit 9ec21db

File tree

3 files changed

+12
-9
lines changed

3 files changed

+12
-9
lines changed

packages/sdk-install-modal-web/src/components.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ export interface MmSelectModalCustomEvent<T> extends CustomEvent<T> {
4747
}
4848
declare global {
4949
interface HTMLMmInstallModalElementEventMap {
50-
"close": any;
50+
"close": { shouldTerminate?: boolean };
5151
"startDesktopOnboarding": any;
5252
"trackAnalytics": { event: TrackingEvents, params?: Record<string, unknown> };
5353
}
@@ -114,7 +114,7 @@ declare namespace LocalJSX {
114114
* The QR code link
115115
*/
116116
"link"?: string;
117-
"onClose"?: (event: MmInstallModalCustomEvent<any>) => void;
117+
"onClose"?: (event: MmInstallModalCustomEvent<{ shouldTerminate?: boolean }>) => void;
118118
"onStartDesktopOnboarding"?: (event: MmInstallModalCustomEvent<any>) => void;
119119
"onTrackAnalytics"?: (event: MmInstallModalCustomEvent<{ event: TrackingEvents, params?: Record<string, unknown> }>) => void;
120120
"preferDesktop"?: boolean;

packages/sdk-install-modal-web/src/components/mm-install-modal/mm-install-modal.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ export class InstallModal {
2929

3030
private i18nInstance: SimpleI18n;
3131

32-
@Event() close: EventEmitter;
32+
@Event() close: EventEmitter<{ shouldTerminate?: boolean }>;
3333

3434
@Event() startDesktopOnboarding: EventEmitter;
3535

@@ -79,8 +79,8 @@ export class InstallModal {
7979
}
8080
}
8181

82-
onClose() {
83-
this.close.emit();
82+
onClose(shouldTerminate = false) {
83+
this.close.emit({ shouldTerminate });
8484
}
8585

8686
onStartDesktopOnboardingHandler() {
@@ -123,11 +123,11 @@ export class InstallModal {
123123

124124
return (
125125
<WidgetWrapper className="install-model">
126-
<div class='backdrop' onClick={() => this.onClose()}></div>
126+
<div class='backdrop' onClick={() => this.onClose(true)}></div>
127127
<div class='modal'>
128128
<div class='closeButtonContainer'>
129129
<div class='right'>
130-
<span class='closeButton' onClick={() => this.onClose()}>
130+
<span class='closeButton' onClick={() => this.onClose(true)}>
131131
<CloseButton />
132132
</span>
133133
</div>

packages/sdk/src/ui/InstallModal/Modal-web.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type { Components } from '@metamask/sdk-install-modal-web';
33

44
export interface InstallWidgetProps extends Components.MmInstallModal {
55
parentElement: Element;
6-
onClose: () => void;
6+
onClose: (shouldTerminate?: boolean) => void;
77
metaMaskInstaller: {
88
startDesktopOnboarding: () => void;
99
};
@@ -80,7 +80,10 @@ export default class ModalLoader {
8080
modal.link = props.link;
8181
modal.preferDesktop = props.preferDesktop;
8282
modal.sdkVersion = props.sdkVersion ?? this.sdkVersion;
83-
modal.addEventListener('close', props.onClose);
83+
modal.addEventListener('close', ({ detail: { shouldTerminate } }) =>
84+
props.onClose(shouldTerminate),
85+
);
86+
8487
modal.addEventListener(
8588
'startDesktopOnboarding',
8689
props.metaMaskInstaller.startDesktopOnboarding,

0 commit comments

Comments
 (0)