- web/: Vue 3 + Vite + UnoCSS + Pinia, dark tactical theme (amber/#0d1117) - AppNav, ListingCard, SearchView with filters/sort, composables (useSnipeMode, useKonamiCode, useMotion), Pinia search store - Steal shimmer, auction countdown, Snipe Mode easter egg all native in Vue - docker/web/: nginx + multi-stage Dockerfile (node build → nginx serve) - compose.yml: api (8510) + web (8509) services - Dockerfile CMD updated to uvicorn for upcoming FastAPI layer - Clean build: 0 TS errors, 380 modules
23 lines
1.7 KiB
TypeScript
23 lines
1.7 KiB
TypeScript
type CodeRangeKey = 'sourceOffsets' | 'generatedOffsets';
|
|
export interface Mapping<Data = unknown> {
|
|
sourceOffsets: number[];
|
|
generatedOffsets: number[];
|
|
lengths: number[];
|
|
generatedLengths?: number[];
|
|
data: Data;
|
|
}
|
|
export declare class SourceMap<Data = unknown> {
|
|
readonly mappings: Mapping<Data>[];
|
|
private sourceCodeOffsetsMemo;
|
|
private generatedCodeOffsetsMemo;
|
|
constructor(mappings: Mapping<Data>[]);
|
|
toSourceRange(generatedStart: number, generatedEnd: number, fallbackToAnyMatch: boolean, filter?: (data: Data) => boolean): Generator<[mappedStart: number, mappedEnd: number, startMapping: Mapping<Data>, endMapping: Mapping<Data>], any, any>;
|
|
toGeneratedRange(sourceStart: number, sourceEnd: number, fallbackToAnyMatch: boolean, filter?: (data: Data) => boolean): Generator<[mappedStart: number, mappedEnd: number, startMapping: Mapping<Data>, endMapping: Mapping<Data>], any, any>;
|
|
toSourceLocation(generatedOffset: number, filter?: (data: Data) => boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
|
|
toGeneratedLocation(sourceOffset: number, filter?: (data: Data) => boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
|
|
findMatchingOffsets(offset: number, fromRange: CodeRangeKey, filter?: (data: Data) => boolean, preferEnd?: boolean): Generator<readonly [number, Mapping<Data>], void, unknown>;
|
|
findMatchingStartEnd(start: number, end: number, fallbackToAnyMatch: boolean, fromRange: CodeRangeKey, filter?: (data: Data) => boolean): Generator<[mappedStart: number, mappedEnd: number, startMapping: Mapping<Data>, endMapping: Mapping<Data>]>;
|
|
private getMemoBasedOnRange;
|
|
private createMemo;
|
|
}
|
|
export {};
|