Skip to content

Commit 50e200d

Browse files
committed
Merge branch 'main' into chore/update-dependencies
2 parents c4124ee + 94fc6c5 commit 50e200d

File tree

7 files changed

+111
-1
lines changed

7 files changed

+111
-1
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# @zenml-io/react-component-library
22

3+
## 0.21.0
4+
5+
### Minor Changes
6+
7+
- 669c43a: add popover component
8+
39
## 0.20.0
410

511
### Minor Changes

package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@zenml-io/react-component-library",
3-
"version": "0.20.0",
3+
"version": "0.21.0",
44
"description": "React Component Library from Zenml.io",
55
"keywords": [
66
"ZenML",
@@ -60,6 +60,7 @@
6060
"@radix-ui/react-dialog": "^1.1.6",
6161
"@radix-ui/react-dropdown-menu": "^2.1.6",
6262
"@radix-ui/react-hover-card": "^1.1.6",
63+
"@radix-ui/react-popover": "^1.1.6",
6364
"@radix-ui/react-progress": "^1.1.2",
6465
"@radix-ui/react-radio-group": "^1.2.3",
6566
"@radix-ui/react-scroll-area": "^1.2.3",

pnpm-lock.yaml

Lines changed: 39 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import { Meta } from "@storybook/react";
2+
import React from "react";
3+
import { Popover, PopoverContent, PopoverTrigger } from "./index";
4+
import { Button } from "../Button";
5+
import { StoryObj } from "@storybook/react";
6+
7+
const meta = {
8+
title: "Elements/Popover",
9+
component: Popover,
10+
argTypes: {},
11+
parameters: {
12+
layout: "centered"
13+
},
14+
15+
tags: ["autodocs"]
16+
} satisfies Meta<typeof Popover>;
17+
18+
export default meta;
19+
20+
type Story = StoryObj<typeof meta>;
21+
22+
export const DefaultVariant: Story = {
23+
name: "Default",
24+
render: () => (
25+
<Popover>
26+
<PopoverTrigger asChild>
27+
<Button>Open Popover</Button>
28+
</PopoverTrigger>
29+
<PopoverContent className="w-[250px]">
30+
<div>Popover Content</div>
31+
</PopoverContent>
32+
</Popover>
33+
)
34+
};

src/components/Popover/Popover.tsx

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import * as PopoverPrimitive from "@radix-ui/react-popover";
2+
import * as React from "react";
3+
import { cn } from "../../utilities";
4+
5+
const Popover = PopoverPrimitive.Root;
6+
7+
const PopoverTrigger = PopoverPrimitive.Trigger;
8+
9+
const PopoverContent = React.forwardRef<
10+
React.ElementRef<typeof PopoverPrimitive.Content>,
11+
React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>
12+
>(({ className, align = "center", sideOffset = 4, ...props }, ref) => (
13+
<PopoverPrimitive.Portal>
14+
<PopoverPrimitive.Content
15+
ref={ref}
16+
align={align}
17+
sideOffset={sideOffset}
18+
className={cn(
19+
"z-50 rounded-md border border-theme-border-minimal bg-theme-surface-primary p-2 shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
20+
className
21+
)}
22+
{...props}
23+
/>
24+
</PopoverPrimitive.Portal>
25+
));
26+
PopoverContent.displayName = PopoverPrimitive.Content.displayName;
27+
28+
export { Popover, PopoverContent, PopoverTrigger };

src/components/Popover/index.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from "./Popover";

src/components/client.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,4 @@ export * from "./ScrollArea";
1818
export * from "./HoverCard";
1919
export * from "./RadioGroup";
2020
export * from "./Command";
21+
export * from "./Popover";

0 commit comments

Comments
 (0)