A screen with Calendar view at the top and Agenda view at bottom.
Similar screen can be easily implemented in any app by just dragging the whole contents of the app, and changing the name of the viewcontroller and its implementation. Demo app has static data provided.
For dynamic data, init ASAgendaDataSource class with dictionary with the required data, and then pass created ASAgendaDataSource instance to ASAgendaView class instance.
Test cases are added for important scenarios.