diff --git a/src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts b/src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts similarity index 99% rename from src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts rename to src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts index 1816218..232b621 100644 --- a/src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts +++ b/src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.svelte.ts @@ -13,8 +13,6 @@ const CHAR_PROXIMITY_RANGE_PCT = 5; /** * Default render size in px when callers omit the `size` arg on `layout()`. - * Kept as a local constant to avoid pulling `$entities/Font` into - * `$shared/lib` (would create an FSD-illegal upward import cycle). */ const DEFAULT_RENDER_SIZE_PX = 16; diff --git a/src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.test.ts b/src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.test.ts similarity index 98% rename from src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.test.ts rename to src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.test.ts index 09a4f5f..43ed97d 100644 --- a/src/shared/lib/helpers/CharacterComparisonEngine/CharacterComparisonEngine.test.ts +++ b/src/entities/Font/lib/CharacterComparisonEngine/CharacterComparisonEngine.test.ts @@ -1,4 +1,5 @@ // @vitest-environment jsdom +import { installCanvasMock } from '$shared/lib/helpers/__mocks__/canvas'; import { clearCache } from '@chenglou/pretext'; import { beforeEach, @@ -6,7 +7,6 @@ import { expect, it, } from 'vitest'; -import { installCanvasMock } from '../__mocks__/canvas'; import { CharacterComparisonEngine } from './CharacterComparisonEngine.svelte'; // FontA: 10px per character. FontB: 15px per character. diff --git a/src/entities/Font/lib/index.ts b/src/entities/Font/lib/index.ts index 161c396..436676c 100644 --- a/src/entities/Font/lib/index.ts +++ b/src/entities/Font/lib/index.ts @@ -1,3 +1,9 @@ +export { + CharacterComparisonEngine, + type ComparisonLine, + type ComparisonResult, +} from './CharacterComparisonEngine/CharacterComparisonEngine.svelte'; + export { getFontUrl } from './getFontUrl/getFontUrl'; // Mock data helpers for Storybook and testing diff --git a/src/shared/lib/helpers/index.ts b/src/shared/lib/helpers/index.ts index ba2bb77..56a185c 100644 --- a/src/shared/lib/helpers/index.ts +++ b/src/shared/lib/helpers/index.ts @@ -7,7 +7,6 @@ * - Virtual scrolling for large lists * - Debounced state for search inputs * - Entity stores with O(1) lookups - * - Character-by-character font comparison * - Persistent localStorage-backed state * - Responsive breakpoint tracking * - 3D perspective animations @@ -116,24 +115,6 @@ export { type EntityStore, } from './createEntityStore/createEntityStore.svelte'; -/** - * Comparison logic - */ -export { - /** - * Character-by-character comparison utility - */ - CharacterComparisonEngine, - /** - * Single line of comparison results - */ - type ComparisonLine, - /** - * Full comparison output - */ - type ComparisonResult, -} from './CharacterComparisonEngine/CharacterComparisonEngine.svelte'; - /** * Text layout */ diff --git a/src/shared/lib/index.ts b/src/shared/lib/index.ts index 42fccfb..81cd249 100644 --- a/src/shared/lib/index.ts +++ b/src/shared/lib/index.ts @@ -5,9 +5,6 @@ */ export { - CharacterComparisonEngine, - type ComparisonLine, - type ComparisonResult, type ControlDataModel, type ControlModel, createDebouncedState, diff --git a/src/widgets/ComparisonView/ui/SliderArea/SliderArea.svelte b/src/widgets/ComparisonView/ui/SliderArea/SliderArea.svelte index a5ae2de..9e3708f 100644 --- a/src/widgets/ComparisonView/ui/SliderArea/SliderArea.svelte +++ b/src/widgets/ComparisonView/ui/SliderArea/SliderArea.svelte @@ -9,6 +9,7 @@ -->