Skip to content

Commit f6c7d85

Browse files
Check for Pause before Invoking resumeMessageStream (#135)
* checks for pause before resuming in-app presentation * sets pause to false when resuming
1 parent d3cae74 commit f6c7d85

File tree

2 files changed

+8
-2
lines changed

2 files changed

+8
-2
lines changed

react-example/src/views/InApp.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ const { request, pauseMessageStream, resumeMessageStream } = getInAppMessages(
3333
count: 20,
3434
packageName: 'my-website',
3535
closeButton: {},
36-
displayInterval: 2000
36+
displayInterval: 10000
3737
},
3838
{ display: 'immediate' }
3939
);

src/inapp/inapp.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,12 @@ import schema from './inapp.schema';
3737
let parsedMessages: InAppMessage[] = [];
3838
let timer: NodeJS.Timeout | null = null;
3939
let messageIndex = 0;
40+
let isPaused = false;
4041

4142
export const clearMessages = () => {
4243
parsedMessages = [];
4344
messageIndex = 0;
45+
isPaused = false;
4446
if (timer) {
4547
clearTimeout(timer);
4648
}
@@ -589,11 +591,15 @@ export function getInAppMessages(
589591
}),
590592
pauseMessageStream: () => {
591593
if (timer) {
594+
isPaused = true;
592595
clearTimeout(timer);
593596
}
594597
},
595598
resumeMessageStream: () => {
596-
return paintMessageToDOM();
599+
if (isPaused) {
600+
isPaused = false;
601+
return paintMessageToDOM();
602+
}
597603
},
598604
...maybeDisplayFn
599605
};

0 commit comments

Comments
 (0)