Files
taskpile/frontend/node_modules/next/dist/build/webpack/plugins/next-trace-entrypoints-plugin.d.ts
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

57 lines
2.4 KiB
TypeScript

import type { Span } from '../../../trace';
import type { NodeFileTraceReasons } from 'next/dist/compiled/@vercel/nft';
import { webpack } from 'next/dist/compiled/webpack/webpack';
import type { NextConfigComplete } from '../../../server/config-shared';
export declare const TRACE_IGNORES: string[];
export declare function getFilesMapFromReasons(fileList: Set<string>, reasons: NodeFileTraceReasons, ignoreFn?: (file: string, parent?: string) => Boolean): Map<string, Set<string>>;
export interface TurbotraceAction {
action: 'print' | 'annotate';
input: string[];
contextDirectory: string;
processCwd: string;
logLevel?: NonNullable<NextConfigComplete['experimental']['turbotrace']>['logLevel'];
showAll?: boolean;
memoryLimit?: number;
}
export interface BuildTraceContext {
entriesTrace?: {
action: TurbotraceAction;
appDir: string;
outputPath: string;
depModArray: string[];
entryNameMap: Record<string, string>;
};
chunksTrace?: {
action: TurbotraceAction;
outputPath: string;
entryNameFilesMap: Record<string, Array<string>>;
};
}
export declare class TraceEntryPointsPlugin implements webpack.WebpackPluginInstance {
buildTraceContext: BuildTraceContext;
private rootDir;
private appDir;
private pagesDir;
private optOutBundlingPackages;
private appDirEnabled?;
private tracingRoot;
private entryTraces;
private traceIgnores;
private esmExternals?;
private turbotrace?;
constructor({ rootDir, appDir, pagesDir, optOutBundlingPackages, appDirEnabled, traceIgnores, esmExternals, outputFileTracingRoot, turbotrace, }: {
rootDir: string;
appDir: string | undefined;
pagesDir: string | undefined;
optOutBundlingPackages: string[];
appDirEnabled?: boolean;
traceIgnores?: string[];
outputFileTracingRoot?: string;
esmExternals?: NextConfigComplete['experimental']['esmExternals'];
turbotrace?: NextConfigComplete['experimental']['turbotrace'];
});
createTraceAssets(compilation: any, assets: any, span: Span): Promise<void>;
tapfinishModules(compilation: webpack.Compilation, traceEntrypointsPluginSpan: Span, doResolve: (request: string, parent: string, job: import('@vercel/nft/out/node-file-trace').Job, isEsmRequested: boolean) => Promise<string>, readlink: any, stat: any): void;
apply(compiler: webpack.Compiler): void;
}