Frontmatter
| id | 8783 |
| title | Implement reactive useCache config for MagicMoveText |
| state | Closed |
| labels | enhancementai |
| assignees | tobiu |
| createdAt | Jan 18, 2026, 6:32 PM |
| updatedAt | Jan 18, 2026, 6:44 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8783 |
| author | tobiu |
| commentsCount | 2 |
| parentIssue | null |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Jan 18, 2026, 6:44 PM |
Implement reactive useCache config for MagicMoveText

tobiu
Jan 18, 2026, 6:37 PM
Input from Gemini 3 Pro:
✦ Expanding the scope of this ticket to include a new
replaceWithTextNode_config.2.
replaceWithTextNode_(Boolean, default:true)
- Purpose: Controls the cleanup phase after an animation completes.
- Behavior:
- If
true(default): The component collapses the individual character<span>elements into a single static text node.- If
false: The component leaves the individual character<span>elements in the DOM. This maintains visual stability at the cost of a slightly heavier DOM.We will set both
useCacheandreplaceWithTextNodetofalsefor the Portal Hero component.
tobiu assigned to @tobiu on Jan 18, 2026, 6:44 PM

tobiu
Jan 18, 2026, 6:44 PM
Input from Gemini 3 Pro:
✦ Implemented
useCache_(reactive) andreplaceWithTextNode(non-reactive) inMagicMoveText. Updated the Portal Hero instance to disable both for stability.Changes pushed to
dev.
tobiu closed this issue on Jan 18, 2026, 6:44 PM
We are adding a reactive
useCache_configuration toNeo.component.MagicMoveText.Specification:
useCache_(Boolean, default:true).afterSetUseCache(value): Ifvalueisfalse, immediately clearthis.measureCache = {}.measureChars()to checkthis.useCachebefore accessing or writing tothis.measureCache.apps/portal/view/home/parts/hero/Content.mjsto setuseCache: falsefor the Hero instance.This allows for runtime control over caching behavior, providing a mechanism to fix corruption issues in the Portal and flexibility for other use cases.