PhotonVision / photonvision

PhotonVision is the free, fast, and easy-to-use computer vision solution for the FIRST Robotics Competition.
https://photonvision.org
GNU General Public License v3.0
278 stars 201 forks source link

Update PhotonClient to use Vue@3 #885

Open srimanachanta opened 1 year ago

srimanachanta commented 1 year ago

Currently, PhotonVision uses Vue2.7 (following #767), a middle ground between Vue2 and Vue3 that helps devs quickly transfer between versions. The main issue is that Vue2.7 misses some features and has annoying quirks that worsen the entire development experience (Custom Vite plugins, intermediate docs / no docs for things, etc.). Much of the work required for this wap is handled by #884 (Updating everything to the Composition API and using many of the new Vue3 APIs. This process should be completed with a complete update to Vue3 and Vuetify3 along with other peer dependencies.

srimanachanta commented 1 year ago

Stalled by #884

srimanachanta commented 1 year ago

Also reimplement vue-tsc as all issues pertaining to it should be resolved upon updating Vue to v3 and the rest of the required APIs

srimanachanta commented 1 year ago

All photon-client common input fields should be updated to use generic types for the values. This would fix many of the typing errors that TS can't pick up on. Types can also now use imported types so we can utilize those for the app component props