* Use system keyboard setting in Learning Settings
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ggurdin <ggurdin@gmail.com>
* chore: move over all fluffychat copy changes, revert any differenced between FluffyChat and Pangea copy
* chore: sort copy between FluffyChat and Pangea, update metadata types for FluffyChat copy
* chore: update metadata type for pangea chat copy
* chore: add placeholders to Pangea vietnamese copy
* Use push instead of go when traversing spaces
* Redirects from space chat page
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
* feat: initial work for level up notification
* feat: initial animation
* feat: level up slide animation, wait for image data to load
* feat: trigger animation on level up
* feat: added sound to level up notificaton
* Highlight text as TTS plays - attempt 1
* Make highlighting actually work
* Fix to minor version of punctuation issue
* Highlights all applicable text
* fix: filter out punctuation tokens in the client side when highlighing audio tokens
* Highlight selection separate from normal selection
* cleanup: further decouple tts highlighting and token selection, renamed temporarySelection => _highlightedTokens
* fix: don't show token highlights for non-overlay messages
---------
Co-authored-by: ggurdin <46800240+ggurdin@users.noreply.github.com>
Co-authored-by: ggurdin <ggurdin@gmail.com>
* fix: don't overflow language options
* fix: match font size of number and text, bold number
* default to send on enter
* fix: don't run mode validation if not enabled
* dev: clean up isActivityBasicallyEligible and shouldDoActivity defs
* feat: bring back locking of tools and highlight words with meaning activities
* fix: exclude tokens that are not relevant for meaning activities from proportionOfActivitiesCompleted computation
* fix: show yellow if token meaning activity has been done but shouldDoActivity is true
---------
Co-authored-by: ggurdin <ggurdin@gmail.com>
* fix: fix dart formatting for CI
* fix: sorted imports, updated deprecated flutter functions
* fix: format files
* fix: format files
* feat: replace syncfusion flutter package with excel flutter package
* fix: don't run enable google services patch in CI
* fix: update iOS supported platforms for enable ios build script
* fix: commented out linux build in integrate CI
* 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>
* 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>