* feat(audio): render audio link as component
* refactor frontend/component/block/inline
* fix audio component on mobile
* Fix(iOS): allow clock to replay audio
* feat(mobile): audio record
* add permission request code on record
* rename `editor/recording?` to `editor/record-status`
* move `get-asset-path` into handler/editor.cljs
* add android settings
* support sharing audio file from some apps
* enhance(record): insert audio link in a new block if non-editing
* feat(audio): allow cancelling record
* fix lints
* feat(iOS): add a tab bar
* tweak some css on mobile
* fix lints
* fix https://github.com/logseq/logseq/issues/4798
* enable tab bar on Android
* fix landscape height of tab bar
* add :reuse-last-block? option
* dont't show tab bar when editing mirror code
* tweak code-editor css
* increase width for more functional buttons
* fix card preview css on iPad
* add document-mode to tab bar
* remove tabbar when editing code and tweak textarea resize cursor behavior
* reduce SplashScreen launch screen duration
* don't show tabbar when editing page title
* enhance: float timer
* fix lint
* fix tabbar height on iPhone without notch
* remove .embed-page width
* fix lint
Co-authored-by: Andelf <andelf@gmail.com>
Previously, files are backuped to logseq/bak when logseq detects
there're differences between the db and disk. But it has two problems:
1. Only a few of users know `logseq/bak`, other users think that their
data has been lost.
2. Files in the logseq/bak folder are never truncated.
This PR backups old file in DB with timestamp suffixes instead of
logesq/bak, and only keep the latest 10 versions of any changed file.
* feat: add a secret global flag to load graph from a user defined dir
* fix: use LOGSEQ_OVERWRITE_OPEN_DIR env var to overwrite the openning graph dir
* e2e: add a test for load & check saved graph data
* fix: should also pass in process.env for testing fixtures
* feat: new way to set open dir folder
* fix: e2e
* fix: remove playwright global flag check
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>