Welcome to the site !!
Are you getting any blink codes on the switch when you do have it running ???
My first guess would be a loose ground somewhere , or a plug connection I personally take all plug-ins , and use Dielectric Grease
, it keeps moisture out and keeps connections from corroding ........ You did not dump it in a stream did you ??? , there was (not sure if they fixed it) a lot of issues with the kill/map switch getting wet and grounding out/failing , but usually with that , the bike would not run at all until it was replaced ......... so back to my first guess , (not a guarantee) is that a ground or plugged connection has worked its way loose somewhere within the starter circuit .....that is where I would start my search , unless as mentioned , it is throwing a code ..... The Owners Manual you got with the bike has a wiring diagram in the back pages , follow the start circuit and check each connection and ground ...... the only other possibilities that come to mind , is the starter solenoid or starter brushes have gone bad for some reason (sometimes a starter brush will break and you will not get a good enough connection to turn the starter , but usually the starter works but is dragging bad) .... but the focus should be in the start circuit ..... from the button , to the starter itself and everything in between , including the battery and all connections and grounds , the battery should have minimum 12.4 volts just sitting and if you crank the engine it should not drop below 11 volts at worst , if not , a cell could have gone bad and it won't have enough juice to turn the starter ........................ Report back with findings .....