- 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>
64 lines
1.3 KiB
TypeScript
64 lines
1.3 KiB
TypeScript
declare namespace camelcase {
|
|
interface Options {
|
|
/**
|
|
Uppercase the first character: `foo-bar` → `FooBar`.
|
|
|
|
@default false
|
|
*/
|
|
readonly pascalCase?: boolean;
|
|
}
|
|
}
|
|
|
|
declare const camelcase: {
|
|
/**
|
|
Convert a dash/dot/underscore/space separated string to camelCase or PascalCase: `foo-bar` → `fooBar`.
|
|
|
|
@param input - String to convert to camel case.
|
|
|
|
@example
|
|
```
|
|
import camelCase = require('camelcase');
|
|
|
|
camelCase('foo-bar');
|
|
//=> 'fooBar'
|
|
|
|
camelCase('foo_bar');
|
|
//=> 'fooBar'
|
|
|
|
camelCase('Foo-Bar');
|
|
//=> 'fooBar'
|
|
|
|
camelCase('Foo-Bar', {pascalCase: true});
|
|
//=> 'FooBar'
|
|
|
|
camelCase('--foo.bar', {pascalCase: false});
|
|
//=> 'fooBar'
|
|
|
|
camelCase('foo bar');
|
|
//=> 'fooBar'
|
|
|
|
console.log(process.argv[3]);
|
|
//=> '--foo-bar'
|
|
camelCase(process.argv[3]);
|
|
//=> 'fooBar'
|
|
|
|
camelCase(['foo', 'bar']);
|
|
//=> 'fooBar'
|
|
|
|
camelCase(['__foo__', '--bar'], {pascalCase: true});
|
|
//=> 'FooBar'
|
|
```
|
|
*/
|
|
(input: string | ReadonlyArray<string>, options?: camelcase.Options): string;
|
|
|
|
// TODO: Remove this for the next major release, refactor the whole definition to:
|
|
// declare function camelcase(
|
|
// input: string | ReadonlyArray<string>,
|
|
// options?: camelcase.Options
|
|
// ): string;
|
|
// export = camelcase;
|
|
default: typeof camelcase;
|
|
};
|
|
|
|
export = camelcase;
|