* feat: fetch features and store locally for offline users
* feat: handle success and error cases
* refactor: move offline activation code reading/validation to snjs
* chore: update after renaming snjs function
* fix: correct condition for checking offline users
* feat: let users remove their previous offline keys (WIP)
* refactor: handle setOfflineFeatures function response accordingly
* feat: remove corresponding local data when removing offline key
* fix: use snjs' confirm dialog instead of custom one
* feat: show warning before installing extension from untrusted source
* refactor: move functions for validating external feature url and checking if custom server host was used to snjs
* chore: put correct snjs version
* chore: make `eslint-plugin-react-hooks` in yarn.lock to match the `develop` branch
* chore: deps update
* chore: deps update
* feat: toggleable extensions
* fix: return all themes for quick settings
* chore: bump snjs deps
* feat: Use Switch component for toggle in Quick Settings Menu
* feat: Add toggleableComponents to footer_view
* refactor: Change "components" to "toggleableComponents"
* feat: Add checked state to component toggle in quick settings menu
* feat: implement UI for logging out
* feat: use old style dialogs for logout confirmation
* feat: implement manage sessions
* feat: implement session logout success dialog
* feat: use snjs alert for revoking sessions confirmation
* fix: make OtherSessionsLogout easier to read
* feat: improve 2fa styles based on feedback
* fix: preferences panes and dialogs electron compatibility
* fix: no horizontal line when opening two factor activation
* feat: improve two factor activation styles
* feat: further 2fa style improvements
* feat: padding 2fa widgets
* feat: add padding between QR code and content
* feat: refresh 2fa after passcode confirmation
* feat: don't autocomplete passwords for DecoratedInput
* feat: store web version in local storage
* feat: pass web app version to snjs application when creating WebApplication
* refactor: pass version in application constructor, remove unnecessary method
* refactor: move global variables declarations to separate files to avoid declaring them in all places where they are used
* refactor: better way to use global variables
* chore: add comment
* chore: make global constants pascal case
* chore: version bump for snjs
* chore: yarn.lock with correct snjs version
* chore: bump snjs version
* feat: add "sync" pane to preferences -> account tab
* chore: configure eslint to add new line at the end of file and remove trailing spaces
* chore: add newline at the end of file