Hello, Ameritrade team. Thank you for your time and consideration. I hope you enjoy my app. It is based on the description you provided.
This application has two models: Month and Year. Month contains a few basic attributes: name (the name of the month), number (the number of the month), and selected (boolean which tells if this is the current birthday month). Year is a Collection which holds Month modules.
Based on your specifications I also included a BirthdayMonth API.
There are two buttons on the screen which fulfill the desired sorting patterns.
If you click the name of the month, it will become the new Birthday month. It will turn red and the BirthdayMonth will send a message via the console of the new selection.
There is one bug that I know of. When the App starts, you will be able to select the top most month, January. If you select another month, that month will turn red. If you then click January, it will become the BirthdayMonth but it won't turn red. Similarly, if you sort the values and select the top most value, it will not turn red.
Please let me know if you have any questions.
I look forward to speaking with you and, hopefully, working with you.
Thanks again.