What's Changed
New Features
- [GlossWithSuggestions] Use ... for all but last word by @imnasnainaec in #3226
- [DataEntryTable] Improve submit/note/exit clarity by @imnasnainaec in #3245
- [DataEntryTable] Use current analysis lang with sense glosses by @imnasnainaec in #3239
- [TreeView] Improve ENTER key behavior by @imnasnainaec in #3221
- [TreeView] Make the search textbox more recognizable by @imnasnainaec in #3228
- [NewEntry] When vern dialog closed sans choice, select text by @imnasnainaec in #3306
- Add user setting for turning gloss suggestion on/off by @imnasnainaec in #3229
- [SummarySenseCard] Add glosses and bg color by @imnasnainaec in #3109
- Don't make button text all-caps by @imnasnainaec in #3231
- [ProjectSettings] Refactor with Accordian component by @imnasnainaec in #3233
- [MergeDupsCompleted] Give different display for deletions by @imnasnainaec in #3186
Defect Fixes
- Prevent cross-entry recording interference by @imnasnainaec in #3157
- [CreateProject] Improve empty name handling by @imnasnainaec in #3184
- Alter user feedback when mic access permission denied by @imnasnainaec in #3247
- [DataEntryTable] Fix NewEntry vernacular focus issues by @imnasnainaec in #3297
- Don't check mic permission on Firefox by @imnasnainaec in #3298
- Only disable page-index-reset for edits by @imnasnainaec in #3160
- [DataEntryTable] Distinguish between new and updated words by @imnasnainaec in #3307
- [TreeView] Allow editing mid-id digits by @imnasnainaec in #3300
- [DataEntry] Let arrows to move out of vern/gloss suggestions by @imnasnainaec in #3321
- Clear duplicate selection when user returns to vernacular input by @imnasnainaec in #3290
- Clear spell-checker if new lang has no dictionary by @imnasnainaec in #3185
Documentation
- [README] Add Id (Indonesian) to sem-dom badge by @imnasnainaec in #3219
- [README] Add 'Getting Started' step to load sem doms by @imnasnainaec in #3230
- [README] Remove unhelpful action badges by @imnasnainaec in #3225
- [Tutorial Videos] Add transcripts and subtitles script by @imnasnainaec in #3251
- [UserGuide > Projects > Semantic Domains] Update example; Add images by @imnasnainaec in #3248
- Update README links, manifest name, tsconfig targets by @imnasnainaec in #3308
- Update all translations from Crowdin by @imnasnainaec in #3312
- [User Guide] Fix displaced note by @imnasnainaec in #3325
Code Maintenance
- Update TS target to ES6 (which we already use) by @imnasnainaec in #3232
- Fix fetch_wordlist script by @imnasnainaec in #3250
- Update prettier and parentheses by @imnasnainaec in #3303
- Add AnnouncementBanner tests; Fix defaultState location by @imnasnainaec in #3311
- Remove act from around userEvent actions by @imnasnainaec in #3295
- Move EntryCellComponents tests to testing-library by @imnasnainaec in #3304
Deployment
- [CAPTCHA] Replace ReCAPTCHA with Turnstile by @imnasnainaec in #3249
- Package container images with the self-extracting installer for The Combine by @jmgrady in #3240
- Update shell error handling for make-combine-installer.sh by @jmgrady in #3291
- Make Dockerfiles architecture neutral by @jmgrady in #3310
Other Changes
- Dependabot updates for July 2024 by @imnasnainaec in #3222
- [GHA] Update OSSF URL in Harden Runner by @imnasnainaec in #3224
- [GHA] Add StepSecurity workflow updates by @imnasnainaec in #3242
- Dependabot updates for August 2024 by @imnasnainaec in #3289
- Increase login expire from 4 to 12 hours by @imnasnainaec in #3314
Full Changelog: v2.1.0...v2.2.0