Skip to content

Commit

Permalink
feat(menu): change popover position as designed
Browse files Browse the repository at this point in the history
  • Loading branch information
anitavincent committed Nov 29, 2023
1 parent c10e64c commit a15e8b9
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 33 deletions.
10 changes: 8 additions & 2 deletions packages/components/src/menu/menu-provider.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
import { MenuProvider } from '@ariakit/react'
import type { MenuProviderProps } from '@ariakit/react'
import { MenuProvider as Provider } from '@ariakit/react'
import React from 'react'

export { MenuProvider }
export function MenuProvider(props: MenuProviderProps) {
const { placement = 'bottom-end', ...otherProps } = props

return <Provider placement={placement} {...otherProps} />
}
69 changes: 38 additions & 31 deletions packages/components/src/menu/stories/menu.stories.tsx
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
import '../../../dist/styles.min.css'
import '../menu.css'
import './style.css'
import React from 'react'
import {
IconCaretDown,
Expand All @@ -24,45 +27,49 @@ export default {

export function Default() {
return (
<MenuProvider>
<MenuTrigger>Open</MenuTrigger>
<Menu>
<MenuItem>New Tab</MenuItem>
<MenuItem>New Item</MenuItem>
<MenuSeparator />
<MenuItem>Downloads</MenuItem>
</Menu>
</MenuProvider>
<div className="base-story">
<MenuProvider>
<MenuTrigger>Open</MenuTrigger>
<Menu>
<MenuItem>New Tab</MenuItem>
<MenuItem>New Item</MenuItem>
<MenuSeparator />
<MenuItem>Downloads</MenuItem>
</Menu>
</MenuProvider>
</div>
)
}

export function Composition() {
return (
<MenuProvider>
<MenuTrigger asChild>
<Button>
Open <IconCaretDown />
</Button>
</MenuTrigger>
<Menu asChild>
<div style={{ border: '5px solid red' }}>
<MenuItem>New Tab</MenuItem>
<MenuItem>New Item</MenuItem>
<MenuSeparator />
<MenuItem asChild>
<a href="htpps://vtex.com" target="_blank" rel="noreferrer">
Downloads
</a>
</MenuItem>
</div>
</Menu>
</MenuProvider>
<div className="base-story">
<MenuProvider placement="bottom-end">
<MenuTrigger asChild>
<Button>
Open <IconCaretDown />
</Button>
</MenuTrigger>
<Menu asChild>
<div style={{ border: '5px solid red' }}>
<MenuItem>New Tab</MenuItem>
<MenuItem>New Item</MenuItem>
<MenuSeparator />
<MenuItem asChild>
<a href="htpps://vtex.com" target="_blank" rel="noreferrer">
Downloads
</a>
</MenuItem>
</div>
</Menu>
</MenuProvider>
</div>
)
}

export function MoreActions() {
return (
<Stack>
<Stack className="base-story">
<Stack direction="row" space="5rem">
<MenuProvider>
<MenuTrigger asChild>
Expand Down Expand Up @@ -204,7 +211,7 @@ export function MoreActions() {

export function CustomLabel() {
return (
<Stack>
<Stack className="base-story">
<MenuProvider>
<MenuTrigger asChild>
<Button variant="primary">
Expand Down Expand Up @@ -237,7 +244,7 @@ export function CustomLabel() {

export function ItemVariants() {
return (
<Stack>
<Stack className="base-story">
<MenuProvider>
<MenuTrigger asChild>
<Button variant="primary">
Expand Down
3 changes: 3 additions & 0 deletions packages/components/src/menu/stories/style.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.base-story {
padding: 2rem;
}

0 comments on commit a15e8b9

Please sign in to comment.