When you delete data like this, the files are not automatically rewritten to reflect the new size of the data (which is potentially a massive operation). Instead, the free space in those files is marked as free and will be re-used when you insert new data.
As you have found, the only way to reclaim that space on disk at the moment is a repair - that is not "just compacting data". In fact a repair rewrites your data files from scratch, essentially creating a brand new copy of them on another part of the disk before removing the old ones. Depending on how large the current data set is, how much data is left, and how fast your disk is, this can take a long time.
If you removed all data in a database, a faster and more efficient method to remove the data is to simply drop the database, which would not have this issue.