Skip to content

feat(action): add ActionSheet and useActionSheet, plus migration guides for sheets and modals - #87

Merged
elik56a merged 1 commit into
masterfrom
feat/action-sheet
Oct 29, 2026
Merged

elik56a merged 1 commit into
masterfrom
feat/action-sheet

Conversation

@eliyahu-kriel

Copy link
Copy Markdown
Collaborator

What

ActionSheet: a list of actions in a BottomSheet.

  • iOS design: actions in a floating rounded card, Cancel in its own card.
  • Material and web: rows with icons, no Cancel by default (backdrop, swipe or Back closes).
  • Actions: label, onPress, description, icon, selected (✓), destructive (theme danger), disabled.
  • A tap closes the sheet and onPress runs after it has closed, so an action can open another modal (iOS shows one at a time).

useActionSheet(): { show, hide, actionSheet }. Render actionSheet once and call show({ title, actions }) from any handler, like showActionSheetWithOptions. No provider.

Library changes

  • Theme: new colors.danger (light and dark).
  • BottomSheet: new showHandle prop (default true).

Docs

  • New ActionSheet page with a playground and live examples: icons and descriptions, a Sort by with ✓, a delete confirmation, and the hook.
  • Migration guides: @gorhom/bottom-sheet (with what BottomSheet doesn't do), react-native-modal, react-native-actions-sheet, @expo/react-native-action-sheet.
  • Reference, guides, AI cheat sheet, README, home page and SEO updated.
  • Showcase: "Photo albums" (sort sheet with ✓, per-album ⋯ menu via useActionSheet).

Checks

pnpm lint, typecheck, build, 717 tests and the docs build pass locally. Not checked visually in a browser.

🤖 Generated with Claude Code

…es for sheets and modals

ActionSheet lists actions in a BottomSheet: the iOS design floats them in a
rounded card with Cancel in its own card, Material and the web show rows with
icons and no Cancel by default. Actions can be destructive (the theme's new
danger colour), disabled, selected (a ✓ for the current choice) and carry a
description line. A tap closes the sheet and the action runs once it has
closed, so it can open another modal. useActionSheet shows one from a call,
like showActionSheetWithOptions, with no provider: render the returned
actionSheet once and call show().

BottomSheet gains showHandle. New migration guides cover @gorhom/bottom-sheet,
react-native-modal, react-native-actions-sheet and
@expo/react-native-action-sheet. The showcase gains "Photo albums".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@elik56a
elik56a merged commit 3965afc into master Oct 29, 2026
5 checks passed
@github-actions github-actions Bot mentioned this pull request Oct 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants