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 |
|
megayu
|
79c25837cb
|
Migrate from yarn to pnpm (#12529)
* migrate yarn to pnpm
* chore: update pnpm version to 10.33.0 across all package.json files
* chore: update .npmrc and package.json for improved dependency management
* chore: unify Clojure, Node, and Java version in workflow files
* fix: enable shamefully-hoist for now and add electron, keytar to onlyBuiltDependencies
* feat: add cider/piggieback dependency and update nREPL middleware configuration to silence warnings
* ensure pnpm setup prior to node setup
* fix: update logseq/bb-tasks git SHA
* feat: add pnpm configuration for onlyBuiltDependencies in package.json
* feat: add onlyBuiltDependencies configuration for better-sqlite3 in pnpm settings
* chore: update pnpm lockfile
* fix: resolve merge conflicts
* fix: remove invisible characters from markdown headers
* fix: update .npmrc comments for clarity on lockfile usage
* Revert "feat: add cider/piggieback dependency and update nREPL middleware configuration to silence warnings"
This reverts commit 70a111936f.
* fix: remove invisible characters from various README files and add .editorconfig
* fix: clarify lockfile resolution process in SKILL.md
---------
Co-authored-by: Tienson Qin <tiensonqin@gmail.com>
|
2026-04-24 23:40:25 +08:00 |
|