* refactor settings
* refactor constants
* add settings for native/learning language
* setup langugage for transcribe
* use 2 letter code for echogarden
* AI commands support multiple language
* update languages constant
* fix sentry error
* fix context menu
* show camdict when only learning English
* add en-GB
* recording assess support multiple languages
* fix ai command
* refactor
* upgrade deps
* update whisper bin for linux
* update whipser.cpp for win32
* fix ci in linux
* upgrade whisper.cpp for armd darwin
* upgrade whisper.cpp for x64 darwin
* fix undefined error when lookup (#613)
* Fix: use local timezone as default (#615)
* use local timezone as default
* refactor code
* fix time display
* Fix unhandled errors (#617)
* fix undefined
* prevent story preview unless url provided
* refactor
* Fix audible provider & add more YT channel (#618)
* add more youtube channel
* fix audible provider
* fix youtube video card style
* Feat: read & record through the transcription (#619)
* may read & record fulltext of transcription
* may delete & remove recording
* may assess recording
* fix pronunciation assessment result style
* fix style
* fix style
* fix player confit
* update locale & fix warning
* upgrade langchain to v0.2.0
* ci: fix test on linux runner
* may re-generate when "no matching voice found"
* may regenerate if the original text has not-matching voice
* specify language to avoid "no matching voice found"
* may setup gpt ai engine & model
* ai models setting works
* update openai setting
* validate engine setting before save
* fail fast
* clean code
* refactor gpt preset