mirror of
https://github.com/AmruthPillai/Reactive-Resume.git
synced 2026-07-24 08:54:05 +10:00
5a1cc6585c
prefer-module-scope-pure-function: hoist buildSubtitle, getDecimalPlaces, handleLocaleChange, onLocaleChange, stop, listContent/groupedListContent to module scope so they aren't rebuilt on every render. react-compiler-todo (??=): rewrite draft.metadata.styleRules ??= [] to the non-assignment form to unblock auto-memoization. set-state-in-effect: derive updatedAtLabel at render time instead of syncing it through useState + useEffect. query-destructure-result: destructure useQuery results at call site in resume-analysis and resume-thumbnail to follow TanStack Query v5 convention. only-export-components: extract non-component exports to sibling .ts files so Fast Refresh can preserve component state: - getNextWeights → typography/get-next-weights.ts - detectJsonImportType + ImportType → dialogs/resume/import.utils.ts - getLocaleOptions → features/locale/locale-options.tsx - preview helpers + DEFAULT_PDF_PAGE_SIZE → preview.shared.utils.ts - resolveHighlightToolbarState + defaultHighlightColor → rich-input.utils.ts - computeDelta + getSparklinePoints → statistics.utils.ts no-multi-comp: split multi-component files into focused companions: - ResumePane + ToolbarButton → routes/agent/-components/resume-pane.tsx - DesktopBuilderShell → builder/$resumeId/-components/desktop-builder-shell.tsx - MobileBuilderShell + helpers → builder/$resumeId/-components/mobile-builder-shell.tsx - setBuilderLayout/getBuilderLayout moved to -store/sidebar.ts fix(tests): add Resume type import to section-builder mocks and cast partial mock data as unknown as Resume to satisfy stricter type checking; fix noExplicitAny Biome errors in the same mocks.
19 lines
622 B
TypeScript
19 lines
622 B
TypeScript
import { describe, expect, it } from "vitest";
|
|
import { resolveHighlightToolbarState } from "./rich-input.utils";
|
|
|
|
describe("resolveHighlightToolbarState", () => {
|
|
it("shows legacy colorless highlights as default yellow and clearable", () => {
|
|
expect(resolveHighlightToolbarState(true, null)).toEqual({
|
|
visibleHighlightColor: "rgba(255, 255, 0, 1)",
|
|
canClearHighlight: true,
|
|
});
|
|
});
|
|
|
|
it("does not show or clear a highlight when no highlight mark is active", () => {
|
|
expect(resolveHighlightToolbarState(false, null)).toEqual({
|
|
visibleHighlightColor: undefined,
|
|
canClearHighlight: false,
|
|
});
|
|
});
|
|
});
|