LearnNewsExamplesServices
Frontmatter
id8783
titleImplement reactive useCache config for MagicMoveText
stateClosed
labels
enhancementai
assigneestobiu
createdAtJan 18, 2026, 6:32 PM
updatedAtJan 18, 2026, 6:44 PM
githubUrlhttps://github.com/neomjs/neo/issues/8783
authortobiu
commentsCount2
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtJan 18, 2026, 6:44 PM

Implement reactive useCache config for MagicMoveText

Closed v11.23.0 enhancementai
tobiu
tobiu commented on Jan 18, 2026, 6:32 PM

We are adding a reactive useCache_ configuration to Neo.component.MagicMoveText.

Specification:

  • Config: useCache_ (Boolean, default: true).
  • Reactivity:
    • Add afterSetUseCache(value): If value is false, immediately clear this.measureCache = {}.
  • Logic:
    • Update measureChars() to check this.useCache before accessing or writing to this.measureCache.
  • Usage:
    • Update apps/portal/view/home/parts/hero/Content.mjs to set useCache: false for 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.

tobiu added the enhancement label on Jan 18, 2026, 6:32 PM
tobiu added the ai label on Jan 18, 2026, 6:32 PM
tobiu
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 useCache and replaceWithTextNode to false for the Portal Hero component.

tobiu referenced in commit 4fbcc9c - "feat: Enhance MagicMoveText with useCache and replaceWithTextNode configs (#8783)" on Jan 18, 2026, 6:43 PM
tobiu assigned to @tobiu on Jan 18, 2026, 6:44 PM
tobiu
tobiu Jan 18, 2026, 6:44 PM

Input from Gemini 3 Pro:

✦ Implemented useCache_ (reactive) and replaceWithTextNode (non-reactive) in MagicMoveText. 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