ui@0.1.2
📦 remixView on GitHub →
✨ 2 features🐛 7 fixes🔧 6 symbols
Summary
This patch release focuses on numerous bug fixes, including Safari cross-origin navigation, layout animation interruptions, and FOUC issues. It also introduces significant runtime optimizations and improved type inference for the `on` mixin.
Migration Steps
- When defining a wrapper for `on`, use the `target` generic on your handler type, as shown in the improved type inference example.
✨ New Features
- Improved type inference for the `on` mixin when defining wrappers by using the `target` generic on the handler type.
- Documented the `run()` `loadModule` and `resolveFrame` hooks to provide editor hints on hydrating client entries and resolving browser-loaded frames.
🐛 Bug Fixes
- Fixed a bug in Safari where cross-origin links to a new subdomain incorrectly set `event.canIntercept=true` and attempted a failing frame navigation; cross-origin links now correctly fall through to a document navigation.
- Kept streamed frame content in its template when a resolved frame stream starts with a doctype-only chunk.
- Emitted the built-in theme reset in `rmx-reset` to allow generated Remix UI component styles to override it.
- Fixed layout animation interruptions so they restart from their current position instead of restarting entirely for updates that do not change their final position.
- Preserved hydrated client entry instances and nested frame resolution during full-document root frame reloads.
- Fixed a flash of unstyled content when navigating between pages whose hydrated client entries use different `css()` rules by using refcounting for style adoption release.
- Fixed server rendering for `<textarea value>`, `<textarea defaultValue>`, `<input defaultValue>`, and `<input defaultChecked>` to match client rendering, and disallowed textarea children in JSX types.