Thanks @Svetoslav for the updates, But its not what’s creating issue.
Here is my forked version of the example,
https://github-j7yyej-hcwtjs.stackblitz.io
I just create 1000 records so the scrollbar is enabled for the grid. Now try to scroll down and check or uncheck any of the checkboxes and check the printed ID in the console. Which is the same id loaded as you see for the first time on screen.
So technically when I scrolled down the grid and try to check and uncheck it shows the wrong id in the console. even the sequence of input it checked is not even based on value I pass. It keeps repeating the same pattern as it loaded the first time (on viewport) on screen.
I hope now you are clear about the issue I’m facing.