Files
taskpile/frontend/node_modules/force-graph/package.json
Alvis f1d51b8cc8 Add side panels, task selection, graph animation, and project docs
- Foldable left panel (user profile) and right panel (task details)
- Clicking a task in the list or graph node selects it and shows details
- Both views (task list + graph) always mounted via absolute inset-0 for
  correct canvas dimensions; tabs toggle visibility with opacity
- Graph node selection animation: other nodes repel outward (charge -600),
  then selected node smoothly slides to center (500ms cubic ease-out),
  then charge restores to -120 and graph stabilizes
- Graph re-fits on tab switch and panel resize via ResizeObserver
- Fix UUID string IDs throughout (backend returns UUIDs, not integers)
- Add TaskDetailPanel, UserPanel components
- Add CLAUDE.md project documentation

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-08 11:23:06 +00:00

85 lines
2.0 KiB
JSON

{
"name": "force-graph",
"version": "1.51.2",
"description": "2D force-directed graph rendered on HTML5 canvas",
"type": "module",
"unpkg": "dist/force-graph.min.js",
"jsdelivr": "dist/force-graph.min.js",
"main": "dist/force-graph.mjs",
"module": "dist/force-graph.mjs",
"types": "src/index.d.ts",
"exports": {
"types": "./dist/force-graph.d.ts",
"umd": "./dist/force-graph.min.js",
"default": "./dist/force-graph.mjs"
},
"sideEffects": [
"./src/*.css"
],
"repository": {
"type": "git",
"url": "git+https://github.com/vasturiano/force-graph.git"
},
"homepage": "https://github.com/vasturiano/force-graph",
"keywords": [
"2d",
"force",
"simulation",
"graph",
"canvas",
"d3"
],
"author": {
"name": "Vasco Asturiano",
"url": "https://github.com/vasturiano"
},
"license": "MIT",
"bugs": {
"url": "https://github.com/vasturiano/force-graph/issues"
},
"scripts": {
"build": "rimraf dist && rollup -c",
"dev": "rollup -w -c rollup.config.dev.js",
"prepare": "npm run build"
},
"files": [
"dist/**/*",
"example/**/*",
"src/**/*"
],
"dependencies": {
"@tweenjs/tween.js": "18 - 25",
"accessor-fn": "1",
"bezier-js": "3 - 6",
"canvas-color-tracker": "^1.3",
"d3-array": "1 - 3",
"d3-drag": "2 - 3",
"d3-force-3d": "2 - 3",
"d3-scale": "1 - 4",
"d3-scale-chromatic": "1 - 3",
"d3-selection": "2 - 3",
"d3-zoom": "2 - 3",
"float-tooltip": "^1.7",
"index-array-by": "1",
"kapsule": "^1.16",
"lodash-es": "4"
},
"devDependencies": {
"@babel/core": "^7.29.0",
"@babel/preset-env": "^7.29.0",
"@rollup/plugin-babel": "^7.0.0",
"@rollup/plugin-commonjs": "^29.0.2",
"@rollup/plugin-node-resolve": "^16.0.3",
"@rollup/plugin-terser": "^1.0.0",
"postcss": "^8.5.8",
"rimraf": "^6.1.3",
"rollup": "^4.59.0",
"rollup-plugin-dts": "^6.4.0",
"rollup-plugin-postcss": "^4.0.2",
"typescript": "^5.9.3"
},
"engines": {
"node": ">=12"
}
}