feat(modal): add support for custom window settings

Closes #892