Commit Graph

22 Commits

Author SHA1 Message Date
Tienson Qin
1f9c017998 refactor: graph view V2 (#12604)
* feat(graph): rebuild global graph view with Pixi

Summary:

- Replace /graph route with a new Pixi-based global graph implementation in ClojureScript.

- Build graph data from db-worker only (no UI DB writeback) and default to tags+objects with a toggle for all pages.

- Add fast scene rendering for large graphs with indexed hit-testing, zoom/pan, node dragging, and click/shift+click node actions.

- Introduce dynamic label management (zoom hysteresis, viewport culling, overlap control, hover-emphasis) and fix hook lifecycle cleanup issues.

- Refresh graph UI styling to full-container layout, dot-first settings control, and Logseq button usage.

- Add/expand tests for global graph modes, node actions, and Pixi label/visibility logic.

- Update graph-related dependencies/lockfile as part of the new implementation.

* enhance(graph): improve drag exploration and label visibility

- Dragging a node now pulls connected nodes with depth-based weights for easier structure exploration.

- Labels are rendered only for currently visible node dots; hover no longer reveals hidden-node titles.

- Hovered node title remains promoted in foreground while respecting visibility constraints.

- Add logic/test coverage for connected drag weights and updated label text behavior.

* enhance(graph): use d3 force layout

Summary:
- Move Graph V2 node layout into graph pixi logic.
- Use d3-force link, charge, center, collision, and y forces instead of the hand-written ring/spiral layout.
- Add coverage that linked graph nodes settle closer than an unlinked island.

Dependency:
- Verified d3-force is already latest at 3.0.0.

Tests:
- bb dev:test -v frontend.extensions.graph-pixi-logic-test
- bb dev:test -v frontend.common.graph-view-v2-test
- pnpm install --frozen-lockfile --lockfile-only

* fix: graph view interactions

* enhance: speed up large graph view

* enhance: speed up tags graph

* enhance: speed up tags layout

* enhance: bound tags force layout

* enhance: speed up graph opening

* fix: keep graph objects visible when zoomed out

* fix: resize graph with sidebars

* enhance: select graph nodes

* fix: refine graph selection controls

* support icons

* fix: sharpen graph node icons

* enhance(graph): update graph v2 settings

* fix: re-render graph when theme changes

* enhance(graph): remove legacy graph view

* fix: typo

* fix: improve graph view

* test: cover graph view improvements

* enhance: improve graph view

* test: cover graph time travel behavior

* enhance: refine graph time travel

* test: cover graph layout controls

* enhance: add graph layout controls

* test: cover graph highlight controls

* fix: refine graph highlight controls

* test: cover edge label alignment

* fix: align graph edge labels

* test: keep graph lines visible on highlight

* fix: keep graph lines visible on highlight

* fix: show graph lines by default

* test: filter graph lines on highlight

* fix: filter graph lines on highlight

* test: keep graph depth incremental

* fix: update graph depth incrementally

* test: cover graph label link occlusion

* fix: occlude graph links behind labels

* test: cover graph edge visibility defaults

* fix: smooth graph edges on highlight

* test: cover graph arrow toggle

* fix: toggle graph arrows

* test: cover reciprocal graph edge offsets

* fix: separate reciprocal graph edges

* test: cover duplicate graph edge runs

* fix: dedupe graph edge render runs

* test: cover graph tag clusters

* enhance: cluster graph tags layout

* test: cover graph tag cluster colors

* fix: color graph tag clusters by title

* test: cover subdued graph node colors

* fix: mute graph node colors

* feat: grid layout

* add more options

* enhance(graph): drill into tags on zoom

* map-like navigation

* mod+click to preview node

* edge enhancements

* more tweaks

* fix: block preview

* enhance(graph): speed up large graph layout

* fix: improve graph mode switching ux

* fix: speed up graph view switching

* fix: optimize large all-pages graph render

* fix: speed up graph data build

* fix: collapse graph tag settings on mode switch

* enhance: refine graph panel width

* fix: improve graph zoom performance

* fix: satisfy graph lint

* fix: open graph nodes by uuid

---------

Co-authored-by: rcmerci <rcmerci@gmail.com>
2026-05-10 23:26:32 +08:00
Tienson Qin
e048996880 Merge branch 'master' into feat/cliable 2026-04-22 21:07:00 +08:00
rcmerci
4b13d67a88 Merge remote-tracking branch 'origin/master' into feat/cliable 2026-04-18 10:25:32 +08:00
Mega Yu
26d807d0d6 fix typos 2026-04-15 22:49:11 +08:00
Tienson Qin
174fd15c8e fix(sync): stabilize incremental checksum updates 2026-04-12 19:27:05 +08:00
Gabriel Horner
d19069021f fix: lints and typos 2026-03-31 12:12:05 -04:00
megayu
d6403b7746 dependencies upgrade (#12460) 2026-03-23 21:32:28 +08:00
Tienson Qin
cbece9e29f fix: lint 2026-01-22 00:52:47 +08:00
rcmerci
99dea608f9 fix(ci): update typos.toml 2026-01-01 17:04:05 +08:00
Tienson Qin
453ee3b3b4 fix: ensure website build doesn't rely on new mobile components
this commit also removes js e2e-tests
2025-07-02 22:38:32 +08:00
Tienson Qin
be66270a49 fix: filters not work for linked references (#11937)
* fix: linked references

* Using datascript query for linked references

* don't render blocks children that have excluded refs

* fix: set persistent width for reference filter

* fix: duplicated refs

* fix: separate queries for children refs and non-children refs

* refactor: move reference fns to logseq.db.common.reference

* fix: set matched children ids even if it's empty

* add tests

* add unlinked reference test

* add transit files to typos ignore

* don't memoize on node

* add comment
2025-06-12 01:56:13 +08:00
Gabriel Horner
c9ba357a90 fix multiple lints 2024-01-22 09:17:38 -05:00
Gabriel Horner
5b99078d6a fix typos 2023-09-08 09:08:53 -04:00
Gabriel Horner
41bd76a704 Merge branch 'master' into feat/db 2023-09-07 17:52:25 -04:00
Gabriel Horner
22d1cb54c5 fix: schema.org classes missing from tree
also fix typos
2023-09-01 15:08:11 -04:00
Zhizhen He
4cb23ab193 ci: upgrade typos to 1.16.8 2023-08-24 10:29:51 -04:00
Gabriel Horner
ef03f12da7 Fix typos and get fn back to a reasonable size 2023-08-22 08:55:29 -04:00
Gabriel Horner
5f44d9bdf2 Cleanup remaining clj(s) resources
* Move template files into a more organized resources templates dir
  except for zotero-items.edn which isn't a template
* Remove unused favorites templates
* Move grammar file which should be in a resource path and not a
  standard source path
2023-05-30 15:07:30 +08:00
Gabriel Horner
ad3eda7c25 Tutorial fix and refactor. Update docs
* Some langs like es didn't have tutorials translated and were
  pretending to
* it lang had tutorials but they weren't being used
* Moved tutorials to the more appropriate src/resources/tutorials
* Also fixed typos and bb task
2023-05-24 16:57:48 -04:00
Gabriel Horner
0434a2b7f8 Fix app not loading correctly and most CI failures
-Most frontend.modules.shortcut.core requires shouldn't have been
changed
- Revert back pt-BR and ru langs which had changes caught by bb lang:list
- Fix typos CI failing by updating config
2023-05-18 18:05:22 -04:00
Gabriel Horner
b78c689458 Fix remaining todos and add a section to practices about this new action 2023-02-21 12:01:58 -05:00
Zhizhen He
25c15053d6 feat: add typos to GitHub action
Signed-off-by: Zhizhen He <hezhizhen.yi@gmail.com>
2023-02-21 12:01:58 -05:00