* Add two properties for groups sorting
1. :logseq.property.table/sort-groups-by
2. :logseq.property.table/sort-groups-desc?
* Add ui for groups sort by and order
* enhance: sort by journal day desc by default
* rename to :*.view/sort-groups-by-property to make it clear that
property type is :property.
* suggested by copilot
* fix: name
* Group by Page instead of "Block Page"
* fix: slow stale embedding check
* fix: mark all blocks for embedding when full embedding
Also, store hnsw index for each batch so that embedding can continue
when aborted by switching graph or closing the app.
* remove embedding/re-embedding-graph-data!
* enhance: mod+c mod+s to rebuild both keyword and semantic search
* enhance(ux): add/remove #Page to toggle page/block
* enhance(ux): "p t" to set tags for selected blocks
Updated "p a" to toggle displaying all properties including hidden ones.
* feat: cmd+k move blocks
* fix: block could be converted to page and create invalid nodes
Pages with block namespace parents is nonsensical and pages in
property values led to multiple validation errors. Also guard
against class and property pages as namespace parents
* fix: warn on failed cut+paste or indent/outdent of page blocks. Better to warn than silent failure which leaves user confused on
what happened.
---------
Co-authored-by: Gabriel Horner <gabriel@logseq.com>
* fix: page references with the same name in one block
* fix: empty :block/name for Library pages
* fix: invalid call to uuid-string?
trace suddenly showing up in multiple CLI calls
---------
Co-authored-by: Gabriel Horner <gabriel@logseq.com>
Don't hide #Task on desktop which is still useful.
Rather default mobile to hiding which has the added benefit
of handling other tags e.g. #Query. Follow up to #11903
* feat: quick add
* enhance(ux): auto open block for editing for quick add
* enhance(ux): show notification after quick add
* add migration for quick add page
1. don't use recursive rule `block-parent`
2. using `:block/path-ref` to get both parent and children
3. run `hidden-ref?` check for refs only (not path-refs)
1. don't use recursive rule `block-parent`
2. using `:block/path-ref` to get both parent and children
3. run `hidden-ref?` check for refs only (not path-refs)
1. don't use recursive rule `block-parent`
2. using `:block/path-ref` to get both parent and children
3. run `hidden-ref?` check for refs only (not path-refs)