#43 b318703 Thanks @santi020k! - Attach Compose date and phone validation errors directly to their actionable controls so TalkBack announces invalid context when users focus the date button or editable phone field. Dismiss open date, picker, and phone-country overlays when their controls become disabled, and keep empty pickers unavailable so disabled state cannot leak later selection callbacks.
#43 b318703 Thanks @santi020k! - Make the authored Lumen light palette the canonical default across web, React Native, SwiftUI, and Compose, keep semantic theme overrides intact, and allow built-in web themes on nested boundaries.
#43 b318703 Thanks @santi020k! - Keep the Lumen v2 source migrator out of generated, cached, and vendored dependency trees, including SwiftPM and Xcode build checkouts, CocoaPods, framework build output, and common web-tool caches.
#43 b318703 Thanks @santi020k! - Align native text-field validation semantics so an error message implies an invalid Compose field, while SwiftUI preserves the entered accessibility value and announces validation separately.
#43 b318703 Thanks @santi020k! - Expose meaningful required-field labels and exact validation context across native grouped, multiline, and date-range controls without replacing consumer-supplied accessibility guidance.
#43 b318703 Thanks @santi020k! - Expose disabled accessibility state consistently from React Native text fields, textareas, search fields, chip removal actions, and phone inputs, including country selectors with an empty allow-list. Preserve caller-supplied accessibility state and prevent buttons from being assigned a non-button accessibility role. Run rendered TSX component behavior tests in the standard React Native package suite so these semantics remain covered in CI. Announce validation context from React Native date, phone, and multiline controls without dropping consumer accessibility props, and keep SwiftUI textarea values distinct from their validation hints. Dismiss React Native date, generic, and phone-country pickers when their controls become disabled, keep them closed after re-enabling until the next user action, and disable generic pickers with no available options.
#43 b318703 Thanks @santi020k! - Graduate the React Native phone contract and the Compose phone and Wear compositions into the supported Lumen 2 surface. Remove obsolete Kotlin opt-in annotations, publish accurate React Native peer-install guidance, document the separate Wear OS artifact, and replace the incompatible public Expo Go launch link with supported browser and local-native playground paths. Restart the two-release stability soak from the newly frozen stable baselines.
Declare visionOS 1 support for the SwiftUI application product, include visionOS in API-baseline and clean-consumer verification, and keep the WidgetKit product on its accurate iOS, iPadOS, macOS, and watchOS contract until its visionOS 26 rendering dependency can be adopted deliberately.
#43 b318703 Thanks @santi020k! - Harden external registry loading and installation with bounded manifest reads, strict manifest metadata, relative inline-file paths, duplicate-path rejection, and symbolic-link escape protection. Keep self-hosted and Worker MCP transports behind safe JSON error boundaries, expose catalog readiness, and fail closed when abuse protection is unavailable. Freeze the MCP, React Hook Form, and brand-icon public exports in the reviewed web API baseline alongside the rendering packages.
#43 b318703 Thanks @santi020k! - Add the canonical ToastViewport contract across web adapters, retain Sonner as a deprecated 1.x compatibility alias, and teach the Lumen 2 migrator to rename imports and custom elements without losing viewport configuration or children.
#40 909483d Thanks @santi020k! - Correct the SwiftUI tvOS availability contract so the package builds from its declared tvOS 16 baseline, with platform-native exclusions documented for textarea, share, and menu controls.
#40 909483d Thanks @santi020k! - Freeze the consumer-validated Wear OS theme, tone, action, progress, and status contracts as Supported. Mark the metric and list-row evaluation APIs with an explicit opt-in, and remove implementation-only sizing and progress helpers from the public Wear ABI before native stability.
#41 9b1542a Thanks @santi020k! - Deliver native date selections through the platform picker's supported event contract, keep invalid controlled dates from reaching formatters, and ignore invalid optional date bounds. Keep restricted phone inputs within their configured country allow-list across native adapters, including externally supplied values, and exclude invalid scatter coordinates, non-finite numeric categories, and negative bubble sizes from rendered charts and disclosures. Keep pie disclosures aligned with positive rendered slices and exclude incomplete ranges from Compose chart domains. Preserve typed range categories in React fallback keys, and generate Swift-safe illustration case identifiers from kebab-case catalog names. Allow SwiftUI consumers to derive a product palette by overriding only selected semantic colors.
#41 9b1542a Thanks @santi020k! - Add cross-platform phone input contracts for web, React Native, SwiftUI, and Jetpack Compose with localized country metadata, supplementary flags, calling codes, as-you-type formatting, metadata-backed validation, and E.164 output.