taskgenius_taskgenius-plugin/jest.config.js
Quorafind f28ea8e9c0 refactor(v10): modularize entry + gantt year-view and project grouping fixes
Decompose the monolithic plugin entry into bootstrap modules and extracted
pure functions (src/bootstrap, src/modules), advance dataflow project
resolution, and reconcile the Phase 0 contract tests.

Fixes bundled in:
- gantt: fix year-zoom timeline so year/month labels render and a full year
  fits on screen. Major-label gate no longer keyed on single-day width; add
  a Year minor-label branch; formatMinorTick('Year') returns a real month
  name; lower MIN_DAY_WIDTH to 2; drop per-render logging; register the
  offscreen-indicator click handlers once to stop a listener leak.
- project: stop the Projects view fragmenting into one task per file.
  determineTgProject() gains an applyDefaultNaming option (default true,
  preserving the public API / File Source / unit tests); the dataflow cache
  and worker-sync paths pass false so they match ProjectData.worker.
- build: restore RegExpCursor in progress-bar-widget (the SearchCursor
  migration was incomplete -- SearchCursor cannot do regex search).

Pre-commit hook (npm run build) verified manually; hook could not spawn on
this Windows Git Bash setup. Tests: 1718 passing; production build green.
2026-06-28 16:09:40 +08:00

39 lines
1.4 KiB
JavaScript

const localMetadataPathIgnorePatterns = [
"<rootDir>/.conductor/",
"<rootDir>/.boncli/",
"<rootDir>/.rebon/",
];
module.exports = {
preset: "ts-jest",
testEnvironment: "jsdom",
roots: ["<rootDir>/src"],
testMatch: ["**/__tests__/**/*.test.ts"],
testPathIgnorePatterns: localMetadataPathIgnorePatterns,
modulePathIgnorePatterns: localMetadataPathIgnorePatterns,
watchPathIgnorePatterns: localMetadataPathIgnorePatterns,
moduleNameMapper: {
"^obsidian$": "<rootDir>/src/__mocks__/obsidian.ts",
"^moment$": "<rootDir>/src/__mocks__/moment.js",
"^localforage$": "<rootDir>/src/__mocks__/localforage.ts",
"^@codemirror/state$": "<rootDir>/src/__mocks__/codemirror-state.ts",
"^@codemirror/view$": "<rootDir>/src/__mocks__/codemirror-view.ts",
"^@codemirror/language$":
"<rootDir>/src/__mocks__/codemirror-language.ts",
"^@codemirror/search$": "<rootDir>/src/__mocks__/codemirror-search.ts",
"^@/.*\\.(css|less|scss|sass)$": "<rootDir>/src/__mocks__/styleMock.js",
"^@/(.*)$": "<rootDir>/src/$1",
"\\.(css|less|scss|sass)$": "<rootDir>/src/__mocks__/styleMock.js",
".*\\.worker$": "<rootDir>/src/__mocks__/ProjectData.worker.ts",
},
transform: {
"^.+\\.tsx?$": [
"ts-jest",
{
tsconfig: "tsconfig.json",
},
],
},
moduleFileExtensions: ["ts", "tsx", "js", "jsx", "json", "node"],
setupFilesAfterEnv: ["<rootDir>/src/test-setup.ts"],
};