Commit graph

193 commits

Author SHA1 Message Date
Ava Shilling
4dd64de133 simplify growth animation
remove stream, calculate manually with the analytics feedback for XP, new vocab and new morphs
2026-01-22 16:43:34 -05:00
Ava Shilling
b4f46938cb Merge branch 'main' into 5262-add-seedsproutflower-icons-to-message-xp-burst 2026-01-22 14:18:12 -05:00
Ava Shilling
096ba06367 feat: rise and fade animation for construct levels 2026-01-21 13:47:15 -05:00
ggurdin
529f12e028
5259 bot settings language settings (#5305)
* feat: add voice to user model

* update bot settings on language / learning settings update

* use room summary to determine member count

* translations
2026-01-21 10:44:21 -05:00
ggurdin
819527cbd8
chore: store font size settings per-user 2026-01-20 16:52:37 -05:00
ggurdin
2701f74759
chore: save voice in TTS events and re-request if requested voice doesn't match saved voice 2026-01-20 16:15:32 -05:00
ggurdin
7985214670
chore: reset font size on logout 2026-01-16 12:20:19 -05:00
ggurdin
8a8ca1026a
Vocab practice updates (#5180)
* reorganization, reload on language change

* make choice card widget

* make completed activity view stateless

* use analytics updater mixin to display points gained animation

* simplify animation in game card

* better encapsulate practice session data

* reset session loader instead of dispose

* simplify practice session model

* queue activities

* visually remove duplicate answers without editing activity content

* review updates

* don't shuffle filtered choices
2026-01-14 12:54:27 -05:00
ggurdin
57ecf08801
chore: make emoji choice shimmer background match word card background (#5116) 2026-01-07 12:16:05 -05:00
ggurdin
832533b4f7
feat: Directing to click messages with shimmer (#5106) 2026-01-07 11:04:00 -05:00
ggurdin
af395d0aeb
4825 vocabulary practice (#4826)
* chore: move logic for lastUsedByActivityType into ConstructIdentifier

* feat: vocab practice

* add vocab activity progress bar

* fix: shuffle audio practice choices

* update UI of vocab practice

Added buttons, increased text size and change position, cards flip over and turn red/green on click and respond to hover input

* add xp sparkle, shimmering choice card placeholder

* spacing changes

fix padding, make choice cards spacing/sizing responsive to screen size, replace shimmer cards with stationary circle indicator

* don't include duplicate lemma choices

* use constructID and show lemma/emoji on choice cards

add method to clear cache in case the results was an error, and add a retry button on error

* gain xp immediately and take out continue session

also refactor the choice cards to have separate widgets for each type and a parent widget to give each an id for xp sparkle

* add practice finished page with analytics

* Color tweaks on completed page and time card placeholder

* add timer

* give XP for bonuses and change timer to use stopwatch

* simplify card logic, lock practice when few vocab words

* merge analytics changes and fix bugs

* reload on language change

- derive XP data from new analytics
- Don't allow any clicks after correct answer selected

* small fixes, added tooltip, added copy to l10

* small tweaks and comments

* formatting and import sorting

---------

Co-authored-by: avashilling <165050625+avashilling@users.noreply.github.com>
2026-01-07 10:13:34 -05:00
ggurdin
066517a204
chore: force span card to always go above input bar (#5096) 2026-01-06 15:34:19 -05:00
ggurdin
354e3a14d1
4919 further optimizing message info (#5033)
* remove original sent from message content

* don't add null fields to message content JSON
2026-01-02 14:30:05 -05:00
ggurdin
178003dfa2
fix: add horizontal padding to prevent choice animation cutoff (#5032) 2026-01-02 11:09:37 -05:00
Kelrap
3cd387cc13
Ensure consistency of pressable button height after animation (#5025)
* Ensure consistency of pressable button height after animation

* Use variable instead of hardcoded value
2026-01-02 10:29:35 -05:00
ggurdin
fb2ef4b0a1
chore: Delay until screen darkening (#5009) 2025-12-31 11:18:31 -05:00
Kelrap
711ae38f4a
Model key cleanup (#4983)
* refactor: Group redundant ModelKey entries

* Add python script to find and replace hardcoded ModelKey values

* Edited Python script to not automatically use ModelKey for files not
already using it

* refactor: Ran script and accepted obvious changes

* rename 'duration' model key

---------

Co-authored-by: ggurdin <ggurdin@gmail.com>
2025-12-31 09:26:06 -05:00
ggurdin
1ac9afe141
chore: add feedback response dialog (#4992) 2025-12-30 14:39:58 -05:00
ggurdin
d8caf8e481
feat: analytics database 2025-12-23 14:35:41 -05:00
ggurdin
18c603db92
chore: add content to distinguish system edit from manual edit 2025-12-22 10:02:13 -05:00
ggurdin
1da3ed16f7
add shimmer background to match choices 2025-12-16 16:25:26 -05:00
ggurdin
43fc4f3daf
chore: use builder to style pressable buttons based on height 2025-12-16 11:17:35 -05:00
ggurdin
84737dbca1
update lemma meaning and phonetic transcription repos 2025-12-09 16:20:17 -05:00
Kelrap
7062e42228 Add userGender to requests.dart 2025-12-08 12:17:27 -05:00
Kelrap
d1a2080304 Add a gender value to the user settings 2025-12-05 11:21:07 -05:00
ggurdin
652f5731b4
build: file reorganization 2025-12-04 16:36:04 -05:00
ggurdin
abab3923d9
resolve merge conflicts 2025-12-04 15:07:35 -05:00
ggurdin
06cfc6a271
chore: set locally cached value for if user saw activity menu dropdown to false on logout 2025-12-04 14:18:13 -05:00
ggurdin
1e6cabc5d8
allow users to block constructs from their analytics 2025-12-04 14:07:38 -05:00
ggurdin
5e9840dbe6
remove unreferenced functions from user controller 2025-12-04 11:01:41 -05:00
ggurdin
25bae8baf6
remove matrix widget reference from pangea controller 2025-12-04 10:44:04 -05:00
ggurdin
3ac8339817
split language related and learning settings related folders 2025-12-04 10:06:59 -05:00
ggurdin
16fe7f28e3
move language settings getter into user controller 2025-12-04 09:12:48 -05:00
ggurdin
97bfdb2603
remove space code controller from pangea controller 2025-12-03 16:36:41 -05:00
ggurdin
e184e9a76f
move text to speech controller out of pangea controller 2025-12-03 15:39:29 -05:00
ggurdin
19d11994d6
removed message data controller 2025-12-03 13:58:46 -05:00
ggurdin
a56ba59316
initial work to remove speech to text controller from pangea controller 2025-12-03 12:07:36 -05:00
ggurdin
613a4cce9c
feat: show language mismatch popup on select message not in L2 2025-12-03 11:38:36 -05:00
ggurdin
895654b2b5
refactor: reduce duplicate data-fetching related logic in select mode controller 2025-12-02 15:18:37 -05:00
ggurdin
c70e066e9e
add mixin with function to set lemma emoji and send analytics 2025-12-02 12:33:09 -05:00
ggurdin
8c404758ef
initial work to normalize sending on emoji analytics / settings of user lemma emojis 2025-12-01 15:21:06 -05:00
ggurdin
660b92fdf1
refactor: reorganize / simplify practice mode (#4755)
* refactor: reorganize / simplify practice mode

* cleanup

* remove unreferenced code

* only use content words in emoji activities
2025-12-01 13:33:51 -05:00
ggurdin
a504b8b832
fix: update how top overflow is calculated for overlays (#4718) 2025-11-20 16:10:07 -05:00
avashilling
6e8a6f8332
rain confetti on activity finish (#4715)
* rain confetti on activity finish

also add continue button, and change copy for completed single practice activities

* fix: show confetti popup when finish all activities with grammar activity

* translations

---------

Co-authored-by: ggurdin <ggurdin@gmail.com>
2025-11-20 14:55:27 -05:00
ggurdin
4eebc4b820
return domain-specific models from choreo-related repos, use future builders on async data when possbile 2025-11-12 10:18:58 -05:00
ggurdin
4b9fd02baf
some tweaks 2025-11-11 16:31:09 -05:00
ggurdin
98c373f299
resolve merge conflicts, 2025-11-11 15:16:48 -05:00
ggurdin
0ab91ccb68
feat: display user's subscription end/refresh date 2025-11-11 13:45:22 -05:00
ggurdin
c256388e8b
remove unnecesary choreographer extensions 2025-11-10 15:57:40 -05:00
ggurdin
f681ffa71f
refactor: move all messaging sending logic into the chore controller, reduce full rebuilds of the chat view 2025-11-10 13:56:12 -05:00