This can be verified for example with the project https://stackblitz.com/edit/react-toastify-next-js?file=README.md
When you click the notify button the screen reader (NVDA on Windows 11 for me) reads
馃憢 Hey Next.js!close notification timer
notification 馃憢 Hey Next.js!
close button
馃憢 Hey Next.js!close notification timer
The last line is read when the toast is destroyed.
I assume that the reason for repetition is that the library puts 'role' on the toast instead of the toast container. Setting role implicitly makes an element a live region and live regions within live regions cause problems like this.
This can be verified for example with the project https://stackblitz.com/edit/react-toastify-next-js?file=README.md
When you click the notify button the screen reader (NVDA on Windows 11 for me) reads
馃憢 Hey Next.js!close notification timer
notification 馃憢 Hey Next.js!
close button
馃憢 Hey Next.js!close notification timer
The last line is read when the toast is destroyed.
I assume that the reason for repetition is that the library puts 'role' on the toast instead of the toast container. Setting role implicitly makes an element a live region and live regions within live regions cause problems like this.