---
tagName: 10.2.1
name: housekeeping
publishedAt: '2025-07-30T12:51:16Z'
isPrerelease: false
isDraft: false
---
# housekeeping

# Neo.mjs v10.2.1 Release Notes

## Introduction

Version 10.2.1 is a patch release that addresses a critical layout regression discovered in lazy-loaded tabs and introduces a significant enhancement to the `button.Base` component, improving both its flexibility and security.

## Key Changes

### Enhancements

- **Button Text as VDOM**: The `text` config for `Neo.button.Base` has been enhanced to accept a VDOM `cn` (children) array in addition to a string. This allows for rich, complex button content to be defined in a structured, secure, and performant way, avoiding the need for `innerHTML` and enabling granular delta updates for the button's content. See ticket [#7135](https://github.com/neomjs/neo/issues/7135).

### Bug Fixes

- **Lazy-Loaded Tab Layout Regression**: Fixed a critical regression where the `layout` config of a lazy-loaded tab (e.g., a `Panel`) was being mutated on the class prototype, causing subsequent lazy-loaded tabs to fail with a missing `ntype` error. The fix, implemented in `container.Base`, ensures that each container instance gets a unique, deep-cloned copy of its layout config, preventing prototype pollution. See ticket [#7134](https://github.com/neomjs/neo/issues/7134).

- **Covid App Navigation Rendering**: Fixed a rendering issue in the `GalleryContainer` and `HelixContainer` of the Covid apps where the navigation instructions were not being displayed correctly. The `text` config was changed to `html` on the `BoxLabel` components to ensure the HTML content is rendered as expected. See issue [#7133](https://github.com/neomjs/neo/issues/7133).
