An open-source framework for fluid--structure interaction analysis of heart valves