Great article Dewaun!

This line of code:

table$: Observable<Table["table"]>;

made me wonder why you didn't just define it: table$: Observable<Array<Row>>;

as it's basically an array of rows. I'm a big fan of accessing properties as Table.table because if you refactor the name, you will get the errors in compile time instead of run time. Friendly review :)

Senior Front End Software Engineer focused on Angular. Passionate about learning new skills and sharing my knowledge. Blog in progress.