Skip to content

Conversation

kirillzyusko
Copy link
Owner

@kirillzyusko kirillzyusko commented Sep 17, 2025

📜 Description

Added compound pattern to KeyboardToolbar component.

💡 Motivation and Context

This component started as a very simple component with limited customization. However, over the time it got many new props, such as onNextCallback etc. and right now we have too many props for customization.

Since I'm planning to add #881 I decided that it'll be a good time to refactor the component and apply compound pattern. So in the end I come up with next API design:

<KeyboardToolbar>
  <KeyboardToolbar.Background />
  <KeyboardToolbar.Prev />
  <KeyboardToolbar.Next />
  <KeyboardToolbar.Content />
  <KeyboardToolbar.Done />
</KeyboardToolbar>

I intentionally changed blur prop to background, because with iOS 26 we may use liquid glass as a container

Closes #1121

📢 Changelog

JS

  • added new compound KeyboardToolbar API;
  • moved props declaration into types.ts file.

Docs

  • added new API reference;
  • added migration guide.

🤔 How Has This Been Tested?

  • tested that old code works with new API and doesn't introduce visual regressions (via e2e tests)
  • started to use new API and assure that it doesn't break e2e tests.

📸 Screenshots (if appropriate):

image

📝 Checklist

  • CI successfully passed
  • I added new mocks and corresponding unit-tests if library API was changed

@kirillzyusko kirillzyusko self-assigned this Sep 17, 2025
@kirillzyusko kirillzyusko added documentation Improvements or additions to documentation enhancement New feature or request KeyboardToolbar Anything related to KeyboardToolbar component 🚨 requires API changes 🚨 Changes that requires changes in library API labels Sep 17, 2025
Copy link
Contributor

github-actions bot commented Sep 17, 2025

📊 Package size report

Current size Target Size Difference
223387 bytes 212978 bytes 10409 bytes 📈

Copy link
Contributor

github-actions bot commented Sep 18, 2025

PR Preview Action v1.6.2
Preview removed because the pull request was closed.
2025-09-23 15:46 UTC

Copy link

argos-ci bot commented Sep 18, 2025

The latest updates on your projects. Learn more about Argos notifications ↗︎

Build Status Details Updated (UTC)
default (Inspect) ✅ No changes detected - Sep 23, 2025, 9:21 AM

@kirillzyusko kirillzyusko force-pushed the feat/keyboard-toolbar-compound-component branch from b4198e7 to 1c0b4d9 Compare September 23, 2025 08:25
@kirillzyusko kirillzyusko marked this pull request as ready for review September 23, 2025 08:28
@kirillzyusko kirillzyusko merged commit ad76c6a into main Sep 23, 2025
17 checks passed
@kirillzyusko kirillzyusko deleted the feat/keyboard-toolbar-compound-component branch September 23, 2025 15:44
@kirillzyusko kirillzyusko restored the feat/keyboard-toolbar-compound-component branch September 24, 2025 14:56
@kirillzyusko kirillzyusko deleted the feat/keyboard-toolbar-compound-component branch September 24, 2025 14:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request KeyboardToolbar Anything related to KeyboardToolbar component 🚨 requires API changes 🚨 Changes that requires changes in library API

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Compound KeyboardToolbar component

1 participant