* fix: simplify word zoom card, make all activity buttons stateless
* feat: make it visually clearer which activity type is selected
* fix: give message to user when no token is selected in word zoom card
* feat: don't highlight selected token or speak selected token if message has hidden word activity
* feat: added error widgets to word zoom card
* feat: added x-out badge to word zoom activity buttons, created word zoom activity button widget
* fix: sort morph activity buttons to always have POS as first option, then having unlocked buttons before locked buttons, then alphabetically
* updated toolbar buttons
* initial work for toolbar updates
* Add WordZoomWidget to display word and lemma information (#1214)
---
For more details, open the [Copilot Workspace session](https://copilot-workspace.githubnext.com/pangeachat/client/tree/1179-toolbar-changes?shareId=XXXX-XXXX-XXXX-XXXX).
* word zoom card prototyped, activity generation in progress
* adding copy for new construct uses
* laying down TODOs
* initial work for word zoom card
* Always add part of speech to token's morph list
* Prevent duplicate choices in lemma activity
* Don't play token audio at start of morph activity
* Only grant +1 points for emoji activity
* Uncomment tryToSpeak function
* Always update activity once complete
* Added queuing / UI logic for morph activity buttons
* code cleanup
* added required data argument to logError calls
* fix overflowing practice activity card and audio player on mobile
---------
Co-authored-by: wcjord <32568597+wcjord@users.noreply.github.com>
* Data is required for .logError
* Edit data for readability
* remove commented out breadcrumbs
---------
Co-authored-by: ggurdin <ggurdin@gmail.com>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
* made button same height when loading, added timeout to language settings / avatar page
* fix: make button click always work, shrink inputs and add more space between logo and page content
* fix: don't open keyboard automatically in signup/login pages
* fix: make language dropdown hint text accurate
* feat: if a user logs in with SSO, allow them to set their username in the account setup page
* initial design updates to signup/login process
* feat: added signup/login assets, better button styling and animations
* fix: signup / login updated based on mobile testing
* onPopinvok
* Randomly reset bot animation
* Use user ID to identify bot
* Keeps timer from acting on nonexistent widget
* fix: remove setState call in bot face SVG build function
---------
Co-authored-by: ggurdin <ggurdin@gmail.com>
* improved logging for acceptReplacement index error
* replace flutter_html package with fork with fix for safari regex
* better logging for cast error in PracticeActivityModel.fromJson
* make tts response a warning
* use toString instead of typecast
* made _event without originalSent message a warning
* don't call showFirstMatch if matches is empty
* fixed igc match and implemented cache system
* code cleanup
* remove unused spanDetailsCache
* updated igc request hash function, use igc request hash as cache key
* give both caches their own timer and clear on interval
* made igc data cache entries into futures and removed previous message cache
* clear IGC cache at the right time, restart timer if it's been stopped
---------
Co-authored-by: choreo development <williamjordan-cooley@Williams-MacBook-Pro-3.local>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
Co-authored-by: ggurdin <ggurdin@gmail.com>
* initial work for checking app version
* fix error in version endpoint url
* show dialog on new version available
---------
Co-authored-by: wcjord <32568597+wcjord@users.noreply.github.com>