- 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>
34 lines
1.7 KiB
JavaScript
34 lines
1.7 KiB
JavaScript
export { default as attempt } from './attempt.js';
|
|
export { default as bindAll } from './bindAll.js';
|
|
export { default as cond } from './cond.js';
|
|
export { default as conforms } from './conforms.js';
|
|
export { default as constant } from './constant.js';
|
|
export { default as defaultTo } from './defaultTo.js';
|
|
export { default as flow } from './flow.js';
|
|
export { default as flowRight } from './flowRight.js';
|
|
export { default as identity } from './identity.js';
|
|
export { default as iteratee } from './iteratee.js';
|
|
export { default as matches } from './matches.js';
|
|
export { default as matchesProperty } from './matchesProperty.js';
|
|
export { default as method } from './method.js';
|
|
export { default as methodOf } from './methodOf.js';
|
|
export { default as mixin } from './mixin.js';
|
|
export { default as noop } from './noop.js';
|
|
export { default as nthArg } from './nthArg.js';
|
|
export { default as over } from './over.js';
|
|
export { default as overEvery } from './overEvery.js';
|
|
export { default as overSome } from './overSome.js';
|
|
export { default as property } from './property.js';
|
|
export { default as propertyOf } from './propertyOf.js';
|
|
export { default as range } from './range.js';
|
|
export { default as rangeRight } from './rangeRight.js';
|
|
export { default as stubArray } from './stubArray.js';
|
|
export { default as stubFalse } from './stubFalse.js';
|
|
export { default as stubObject } from './stubObject.js';
|
|
export { default as stubString } from './stubString.js';
|
|
export { default as stubTrue } from './stubTrue.js';
|
|
export { default as times } from './times.js';
|
|
export { default as toPath } from './toPath.js';
|
|
export { default as uniqueId } from './uniqueId.js';
|
|
export { default } from './util.default.js';
|