refactor(typography): lazy getTypographySettingsStore + fix effect leak

Convert the eager typographySettingsStore singleton to getTypographySettingsStore()
(+ __resetTypographySettingsStore for tests) and update barrels and consumers
(TypographyMenu, FontSampler, SampleList, ComparisonView Line/SliderArea,
comparisonStore + its mock).

Fix a latent leak while here: the store ran $effect.root and discarded the
returned cleanup, so its storage-sync effects outlived every instance. Capture
the disposer and expose destroy(), which __reset now calls.
This commit is contained in:
Ilia Mashkov
2026-06-01 18:44:17 +03:00
parent 3dca11fea8
commit 6877807aaf
10 changed files with 65 additions and 26 deletions
@@ -89,12 +89,14 @@ vi.mock('$features/AdjustTypography', () => ({
})),
}));
const mockTypography = vi.hoisted(() => ({
weight: 400,
renderedSize: 48,
reset: vi.fn(),
}));
vi.mock('$features/AdjustTypography/model', () => ({
typographySettingsStore: {
weight: 400,
renderedSize: 48,
reset: vi.fn(),
},
getTypographySettingsStore: () => mockTypography,
}));
import * as proxyFonts from '$entities/Font/api/proxy/proxyFonts';