Skip to content

Commit 230c01b

Browse files
Merge pull request #693 from maiieul/fix-headless-popover-styles
docs(headless popover): fix examples styles to make them easier to understand
2 parents 4b05a77 + cdaeed6 commit 230c01b

File tree

30 files changed

+327
-680
lines changed

30 files changed

+327
-680
lines changed

.changeset/warm-pans-drum.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'@qwik-ui/styled': patch
3+
---
4+
5+
refactor change CardTitle font-weight to medium

apps/website/src/components/info-popup/info-popup.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ export const InfoPopup = component$((props: InfoProps) => {
1717
opacity: 0;
1818
}
1919
20-
.popover-showing {
20+
.fade-info.popover-showing {
2121
opacity: 1;
2222
}
2323
24-
.popover-closing {
24+
.fade-info.popover-closing {
2525
opacity: 0;
2626
}
2727
`);

apps/website/src/components/navigation-docs/navigation-docs.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ export const DocsNavigation = component$(
6666
(location.url.pathname?.startsWith('/docs/styled/') &&
6767
link.name === 'Styled')
6868
? 'bg-accent font-bold text-accent-foreground'
69-
: '',
69+
: 'font-normal',
7070
)}
7171
href={link.href}
7272
>

apps/website/src/routes/docs/headless/popover/examples/animation.css

Lines changed: 0 additions & 25 deletions
This file was deleted.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import { component$ } from '@builder.io/qwik';
2+
import { Popover, PopoverTrigger } from '@qwik-ui/headless';
3+
export default component$(() => {
4+
return (
5+
<>
6+
<PopoverTrigger popovertarget="animation-id" class="popover-trigger">
7+
Popover Trigger
8+
</PopoverTrigger>
9+
<Popover id="animation-id" class="popover popover-animation">
10+
I'm a popover!
11+
</Popover>
12+
</>
13+
);
14+
});

apps/website/src/routes/docs/headless/popover/examples/auto-placement.tsx

Lines changed: 0 additions & 62 deletions
This file was deleted.

apps/website/src/routes/docs/headless/popover/examples/auto.tsx

Lines changed: 7 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,19 @@
11
import { component$ } from '@builder.io/qwik';
22
import { Popover, PopoverTrigger } from '@qwik-ui/headless';
3-
43
export default component$(() => {
5-
const myPopovers = [
6-
{ id: 'auto-1', content: 'Popover 1' },
7-
{ id: 'auto-2', content: 'Popover 2' },
8-
];
9-
104
return (
115
<>
12-
{myPopovers.map((popover, index) => (
6+
{[0, 1].map((i) => (
137
<>
14-
<PopoverTrigger
15-
popovertarget={popover.id}
16-
class="mb-4 rounded-base border-2 border-slate-300 bg-slate-800 px-3 py-1 text-white"
17-
>
18-
Popover Trigger {index + 1}
8+
<PopoverTrigger popovertarget={`auto-${i}`} class="popover-trigger">
9+
Popover Trigger {i + 1}
1910
</PopoverTrigger>
20-
2111
<Popover
22-
id={popover.id}
23-
class="py- rounded-base border-2 border-slate-300 bg-slate-800 px-3 py-1 shadow-md"
24-
style={{ top: `${index * 20}px` }}
12+
style={{ top: i === 1 ? '25px' : '0' }}
13+
id={`auto-${i}`}
14+
class="popover"
2515
>
26-
{popover.content}
16+
Popover {i + 1}
2717
</Popover>
2818
</>
2919
))}

apps/website/src/routes/docs/headless/popover/examples/backdrop.tsx

Lines changed: 0 additions & 30 deletions
This file was deleted.
Lines changed: 29 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1,35 @@
1-
import {
2-
Combobox,
3-
ComboboxControl,
4-
ComboboxIcon,
5-
ComboboxInput,
6-
ComboboxListbox,
7-
ComboboxOption,
8-
ComboboxPopover,
9-
ComboboxTrigger,
10-
ResolvedOption,
11-
} from '@qwik-ui/headless';
12-
13-
import { component$ } from '@builder.io/qwik';
1+
import { component$, useSignal } from '@builder.io/qwik';
2+
import { Popover, PopoverTrigger } from '@qwik-ui/headless';
143

154
export default component$(() => {
16-
type FlipExample = {
17-
value: string;
18-
label: string;
19-
};
20-
21-
const flipExample: Array<FlipExample> = [
22-
{ value: '0', label: 'Up! ☝️' },
23-
{ value: '1', label: 'Up! ☝️' },
24-
{ value: '2', label: 'Down! 👇' },
25-
{ value: '3', label: 'Up! ☝️' },
26-
{ value: '4', label: 'Down! 👇' },
27-
{ value: '5', label: 'Down! 👇' },
28-
{ value: '6', label: 'Down! 👇' },
29-
{ value: '7', label: 'Up! ☝️' },
30-
];
5+
const triggerRef = useSignal<HTMLButtonElement>();
6+
const popoverRef = useSignal<HTMLElement>();
317

328
return (
33-
<div class="flex flex-col items-center">
34-
<p class="text-center text-white">☝️ Scroll up and down with me open! 👇</p>
35-
<Combobox class="w-fit" options={flipExample} optionDisabledKey="myDisabledKey">
36-
<ComboboxControl class="relative mt-2 flex items-center rounded-base border-[1px] border-slate-400 bg-[#1f2532]">
37-
<ComboboxInput class="px-d2 w-44 rounded-base bg-slate-900 px-2 pr-6 text-white placeholder:text-slate-500" />
38-
<ComboboxTrigger class="group absolute right-0 h-6 w-6">
39-
<ComboboxIcon class="stroke-white transition-transform duration-500 group-aria-expanded:-rotate-180" />
40-
</ComboboxTrigger>
41-
</ComboboxControl>
42-
<ComboboxPopover flip={true} gutter={8}>
43-
<ComboboxListbox
44-
class="w-44 rounded-base border-[1px] border-slate-400 bg-slate-900 px-4 py-2"
45-
optionRenderer$={(option: ResolvedOption, index: number) => (
46-
<ComboboxOption
47-
key={option.key}
48-
class="group rounded-base border-2 border-transparent px-2 text-white hover:bg-slate-500 aria-disabled:text-slate-600 aria-disabled:hover:bg-slate-700 aria-selected:border-slate-200 aria-selected:bg-slate-500"
49-
index={index}
50-
resolved={option}
51-
>
52-
{option.label}
53-
</ComboboxOption>
54-
)}
55-
/>
56-
</ComboboxPopover>
57-
</Combobox>
58-
</div>
9+
<>
10+
<div class="popover-container">
11+
<p>auto placed on scroll 📜</p>
12+
<PopoverTrigger
13+
ref={triggerRef}
14+
popoverTargetAction="show"
15+
popovertarget="popover-id"
16+
class="popover-trigger"
17+
>
18+
Click me
19+
</PopoverTrigger>
20+
</div>
21+
22+
<Popover
23+
ref={popoverRef}
24+
anchorRef={triggerRef}
25+
floating={true}
26+
flip
27+
gutter={4}
28+
id="popover-id"
29+
class="popover"
30+
>
31+
I am anchored to the trigger!
32+
</Popover>
33+
</>
5934
);
6035
});

apps/website/src/routes/docs/headless/popover/examples/floating-intro.tsx

Lines changed: 0 additions & 71 deletions
This file was deleted.

0 commit comments

Comments
 (0)