Skip to content

Commit f34add9

Browse files
committed
Merge branch 'main' into pr-fluffy-experiment
2 parents 7412cac + 4939005 commit f34add9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

59 files changed

+4981
-1168
lines changed

.vscode/settings.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,8 @@
33
"conventionalCommits.scopes": ["fluffy", "headless", "docs"],
44
"tailwindCSS.experimental.classRegex": [
55
["cva\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"]
6-
]
6+
],
7+
"editor.codeActionsOnSave": {
8+
"source.removeUnusedImports": true
9+
}
710
}
42.9 KB
Binary file not shown.

apps/website/public/images/morphing-diamonds.svg

Loading
23.8 KB
Binary file not shown.

apps/website/src/_state/component-statuses.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export const statusByComponent: ComponentKitsStatuses = {
4141
headless: {
4242
Accordion: ComponentStatus.Beta,
4343
Carousel: ComponentStatus.Planned,
44-
Combobox: ComponentStatus.Draft,
44+
Combobox: ComponentStatus.Beta,
4545
Popover: ComponentStatus.Draft,
4646
Select: ComponentStatus.Draft,
4747
Separator: ComponentStatus.Beta,

apps/website/src/global.css

Lines changed: 94 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -91,49 +91,91 @@
9191
--light-color-bg: rgb(203 213 225);
9292
--light-color-text: #333;
9393

94-
--shadow-color: 0deg 0% 63%;
95-
--shadow-elevation-low: 0.5px 0.6px 0.9px hsl(var(--shadow-color) / 0.34),
96-
0.9px 1px 1.5px -1.2px hsl(var(--shadow-color) / 0.34),
97-
2.1px 2.3px 3.5px -2.5px hsl(var(--shadow-color) / 0.34);
98-
--shadow-elevation-medium: 0.5px 0.6px 0.9px hsl(var(--shadow-color) / 0.36),
99-
1.7px 1.9px 2.9px -0.8px hsl(var(--shadow-color) / 0.36),
100-
4.3px 4.8px 7.2px -1.7px hsl(var(--shadow-color) / 0.36),
101-
10.4px 11.6px 17.5px -2.5px hsl(var(--shadow-color) / 0.36);
102-
--shadow-elevation-high: 0.5px 0.6px 0.9px hsl(var(--shadow-color) / 0.34),
103-
3px 3.4px 5.1px -0.4px hsl(var(--shadow-color) / 0.34),
104-
5.6px 6.3px 9.5px -0.7px hsl(var(--shadow-color) / 0.34),
105-
9.3px 10.4px 15.7px -1.1px hsl(var(--shadow-color) / 0.34),
106-
14.8px 16.6px 25px -1.4px hsl(var(--shadow-color) / 0.34),
107-
23.1px 26px 39.1px -1.8px hsl(var(--shadow-color) / 0.34),
108-
35.1px 39.5px 59.4px -2.1px hsl(var(--shadow-color) / 0.34),
109-
51.8px 58.2px 87.7px -2.5px hsl(var(--shadow-color) / 0.34);
110-
94+
/* primary colors */
95+
--qwikui-purple-50: #f9f5ff;
96+
--qwikui-purple-100: #f2e8ff;
97+
--qwikui-purple-200: #e7d6fe;
98+
--qwikui-purple-300: #d4b5fd;
99+
--qwikui-purple-400: #b37bfa;
100+
--qwikui-purple-500: #9f57f5;
101+
--qwikui-purple-600: #8835e8;
102+
--qwikui-purple-700: #7424cc;
103+
--qwikui-purple-800: #6323a6;
104+
--qwikui-purple-900: #521d86;
105+
--qwikui-purple-950: #360863;
106+
107+
--qwikui-blue-50: #effaff;
108+
--qwikui-blue-100: #def3ff;
109+
--qwikui-blue-200: #b6eaff;
110+
--qwikui-blue-300: #76dbff;
111+
--qwikui-blue-400: #2dcaff;
112+
--qwikui-blue-500: #02b9fc;
113+
--qwikui-blue-600: #0090d2;
114+
--qwikui-blue-700: #0073aa;
115+
--qwikui-blue-800: #00618c;
116+
--qwikui-blue-900: #075073;
117+
--qwikui-blue-950: #04334d;
118+
119+
/* neutrals */
120+
--qwikui-slate-50: #f8fafc;
121+
--qwikui-slate-100: #f1f5f9;
122+
--qwikui-slate-200: #e2e8f0;
123+
--qwikui-slate-300: #cbd5e1;
124+
--qwikui-slate-400: #94a3b8;
125+
--qwikui-slate-500: #64748b;
126+
--qwikui-slate-600: #475569;
127+
--qwikui-slate-700: #334155;
128+
--qwikui-slate-800: #1e293b;
129+
--qwikui-slate-900: #0f172a;
130+
--qwikui-slate-950: #020617;
131+
132+
/* light themed shadows */
133+
--light-shadow-color: 0deg 0% 63%;
134+
--light-shadow-elevation-low: 0.3px 0.5px 0.7px hsl(var(--light-shadow-color) / 0.34),
135+
0.4px 0.8px 1px -1.2px hsl(var(--light-shadow-color) / 0.34),
136+
1px 2px 2.5px -2.5px hsl(var(--light-shadow-color) / 0.34);
137+
--light-shadow-elevation-medium: 0.3px 0.5px 0.7px hsl(var(--light-shadow-color) / 0.36),
138+
0.8px 1.6px 2px -0.8px hsl(var(--light-shadow-color) / 0.36),
139+
2.1px 4.1px 5.2px -1.7px hsl(var(--light-shadow-color) / 0.36),
140+
5px 10px 12.6px -2.5px hsl(var(--light-shadow-color) / 0.36);
141+
--light-shadow-elevation-high: 0.3px 0.5px 0.7px hsl(var(--light-shadow-color) / 0.3),
142+
1.3px 2.6px 3.3px -0.3px hsl(var(--light-shadow-color) / 0.3),
143+
2.4px 4.8px 6px -0.6px hsl(var(--light-shadow-color) / 0.3),
144+
3.7px 7.5px 9.4px -0.9px hsl(var(--light-shadow-color) / 0.3),
145+
5.7px 11.3px 14.2px -1.2px hsl(var(--light-shadow-color) / 0.3),
146+
8.5px 16.9px 21.3px -1.6px hsl(var(--light-shadow-color) / 0.3),
147+
12.4px 24.9px 31.3px -1.9px hsl(var(--light-shadow-color) / 0.3),
148+
17.8px 35.7px 44.9px -2.2px hsl(var(--light-shadow-color) / 0.3),
149+
25px 50px 62.9px -2.5px hsl(var(--light-shadow-color) / 0.3);
150+
151+
/* dark themed shadows */
111152
--dark-shadow-color: 218deg 49% 7%;
112-
--dark-shadow-elevation-low: 0.5px 0.6px 0.9px hsl(var(--shadow-color) / 0.34),
113-
0.9px 1.1px 1.6px -1.2px hsl(var(--dark-shadow-color) / 0.34),
114-
2.2px 2.6px 3.8px -2.5px hsl(var(--dark-shadow-color) / 0.34);
115-
--dark-shadow-elevation-medium: 0.5px 0.6px 0.9px hsl(var(--dark-shadow-color) / 0.36),
116-
1.8px 2.1px 3.1px -0.8px hsl(var(--dark-shadow-color) / 0.36),
117-
4.4px 5.3px 7.7px -1.7px hsl(var(--dark-shadow-color) / 0.36),
118-
10.8px 12.8px 18.8px -2.5px hsl(var(--dark-shadow-color) / 0.36);
119-
--dark-shadow-elevation-high: 0.5px 0.6px 0.9px hsl(var(--dark-shadow-color) / 0.34),
120-
3.1px 3.7px 5.4px -0.4px hsl(var(--dark-shadow-color) / 0.34),
121-
5.9px 7px 10.3px -0.7px hsl(var(--dark-shadow-color) / 0.34),
122-
9.6px 11.5px 16.9px -1.1px hsl(var(--dark-shadow-color) / 0.34),
123-
15.4px 18.3px 26.9px -1.4px hsl(var(--dark-shadow-color) / 0.34),
124-
24.1px 28.6px 42.1px -1.8px hsl(var(--dark-shadow-color) / 0.34),
125-
36.6px 43.5px 64px -2.1px hsl(var(--dark-shadow-color) / 0.34),
126-
53.9px 64.1px 94.2px -2.5px hsl(var(--dark-shadow-color) / 0.34);
153+
--dark-shadow-elevation-low: 0.4px 0.6px 0.8px hsl(var(--dark-shadow-color) / 0.34),
154+
0.7px 1px 1.4px -1.2px hsl(var(--dark-shadow-color) / 0.34),
155+
1.7px 2.5px 3.4px -2.5px hsl(var(--dark-shadow-color) / 0.34);
156+
--dark-shadow-elevation-medium: 0.4px 0.6px 0.8px hsl(var(--dark-shadow-color) / 0.36),
157+
1.4px 2px 2.7px -0.8px hsl(var(--dark-shadow-color) / 0.36),
158+
3.5px 5.1px 7px -1.7px hsl(var(--dark-shadow-color) / 0.36),
159+
8.6px 12.3px 16.9px -2.5px hsl(var(--dark-shadow-color) / 0.36);
160+
--dark-shadow-elevation-high: 0.4px 0.6px 0.8px hsl(var(--dark-shadow-color) / 0.3),
161+
2.3px 3.2px 4.4px -0.3px hsl(var(--dark-shadow-color) / 0.3),
162+
4.1px 5.8px 8px -0.6px hsl(var(--dark-shadow-color) / 0.3),
163+
6.4px 9.2px 12.6px -0.9px hsl(var(--dark-shadow-color) / 0.3),
164+
9.8px 13.9px 19.1px -1.2px hsl(var(--dark-shadow-color) / 0.3),
165+
14.6px 20.8px 28.6px -1.6px hsl(var(--dark-shadow-color) / 0.3),
166+
21.4px 30.6px 42px -1.9px hsl(var(--dark-shadow-color) / 0.3),
167+
30.8px 43.9px 60.3px -2.2px hsl(var(--dark-shadow-color) / 0.3),
168+
43.1px 61.5px 84.5px -2.5px hsl(var(--dark-shadow-color) / 0.3);
127169
}
128170

129171
.light {
130172
--color-bg: rgb(255, 255, 255);
131-
--color-text: #333;
173+
--color-text: var(--qwikui-slate-950);
132174
}
133175

134176
.dark {
135-
--color-bg: rgb(30 41 59);
136-
--color-text: rgb(243, 243, 243);
177+
--color-bg: var(--qwikui-slate-800);
178+
--color-text: #fff;
137179
}
138180

139181
html {
@@ -147,6 +189,23 @@ html {
147189

148190
body {
149191
min-height: 100%;
192+
font-family: 'Inter Variable', sans-serif;
193+
}
194+
195+
h1,
196+
h2,
197+
h3,
198+
h4,
199+
h5,
200+
h6 {
201+
overflow-wrap: break-word;
202+
line-height: 1.2;
203+
}
204+
205+
p,
206+
ul,
207+
ol {
208+
line-height: 1.75;
150209
}
151210

152211
.layout {

apps/website/src/routes/_components/footer/footer.tsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,20 +5,20 @@ import { DiscordIcon } from '../icons/discord';
55
export const Footer = component$(() => {
66
return (
77
<footer class="bg-gray-300 dark:bg-gray-900">
8-
<div class="max-w-7xl mx-auto py-12 px-4 overflow-hidden sm:px-6 lg:px-8">
8+
<div class="mx-auto max-w-7xl overflow-hidden px-4 py-12 sm:px-6 lg:px-8">
99
<nav class="-mx-5 -my-2 flex flex-wrap justify-center" aria-label="Footer">
1010
<div class="px-5 py-2">
1111
<a
1212
href="/about"
13-
class="text-base text-gray-500 hover:text-gray-900 dark:hover:text-gray-300"
13+
class="text-base text-gray-800 hover:text-gray-900 dark:text-white dark:hover:text-gray-300"
1414
>
1515
About
1616
</a>
1717
</div>
1818
<div class="px-5 py-2">
1919
<a
2020
href="/docs/headless/introduction"
21-
class="text-base text-gray-500 hover:text-gray-900 dark:hover:text-gray-300"
21+
class="text-base text-gray-800 hover:text-gray-900 dark:text-white dark:hover:text-gray-300"
2222
>
2323
Headless Kit
2424
</a>
@@ -28,7 +28,7 @@ export const Footer = component$(() => {
2828
<a
2929
href="https://discord.gg/PVWUUejrez"
3030
target="_blank"
31-
class="text-base text-gray-500 hover:text-gray-900 dark:hover:text-gray-300"
31+
class="text-base text-gray-800 hover:text-gray-900 dark:text-white dark:hover:text-gray-300"
3232
>
3333
Community
3434
</a>
@@ -38,7 +38,7 @@ export const Footer = component$(() => {
3838
<a
3939
href="https://www.w3.org/standards/webdesign/accessibility"
4040
target="_blank"
41-
class="text-base text-gray-500 hover:text-gray-900 dark:hover:text-gray-300"
41+
class="text-base text-gray-800 hover:text-gray-900 dark:text-white dark:hover:text-gray-300"
4242
>
4343
Accessibility
4444
</a>
@@ -47,7 +47,7 @@ export const Footer = component$(() => {
4747
<a
4848
href="https://qwik.builder.io/docs"
4949
target="_blank"
50-
class="text-base text-gray-500 hover:text-gray-900 dark:hover:text-gray-300"
50+
class="text-base text-gray-800 hover:text-gray-900 dark:text-white dark:hover:text-gray-300"
5151
>
5252
Qwik Documentation
5353
</a>
@@ -58,20 +58,20 @@ export const Footer = component$(() => {
5858
target="_blank"
5959
href="https://github.com/qwikifiers/qwik-ui"
6060
aria-label="Qwik-UI GitHub repository"
61-
class="text-gray-400 hover:text-gray-500"
61+
class="text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-white"
6262
>
6363
<GitHubIcon />
6464
</a>
6565
<a
6666
target="_blank"
6767
href="https://discord.gg/PVWUUejrez"
6868
aria-label="Qwik-UI Discord server"
69-
class="text-gray-400 hover:text-gray-500"
69+
class="text-gray-600 hover:text-gray-800 dark:text-gray-400 dark:hover:text-white"
7070
>
7171
<DiscordIcon />
7272
</a>
7373
</div>
74-
<p class="mt-8 text-center text-base dark:text-gray-400 text-gray-600">
74+
<p class="mt-8 text-center text-base text-gray-600 dark:text-gray-400">
7575
&copy; 2023 Qwik UI. All rights reserved.
7676
</p>
7777
</div>

apps/website/src/routes/_components/header/header.tsx

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { $, component$, useComputed$ } from '@builder.io/qwik';
2-
import { useLocation } from '@builder.io/qwik-city';
32
// eslint-disable-next-line @nx/enforce-module-boundaries
43
import { version as headlessVersion } from '../../../../../../packages/kit-headless/package.json';
54
// eslint-disable-next-line @nx/enforce-module-boundaries
@@ -22,7 +21,6 @@ export interface HeaderProps {
2221
export default component$(
2322
({ showVersion = false, showBottomBorder = false }: HeaderProps) => {
2423
const rootStore = useRootStore();
25-
const location = useLocation();
2624
const selectedKitSig = useSelectedKit();
2725

2826
const kitSignal = useComputed$(() => {
@@ -44,19 +42,20 @@ export default component$(
4442
rootStore.mode = rootStore.mode === 'light' ? 'dark' : 'light';
4543
});
4644

45+
// we can add back the header animation if you'd like. Maybe something springy with motion?
4746
return (
4847
<header
4948
class={[
5049
`fixed top-0 z-20 flex h-20 w-full items-center gap-8 p-4 md:h-20 md:bg-[var(--color-bg)]`,
51-
`duration-300 ease-in-out`,
50+
`shadow-light-medium dark:shadow-dark-medium`,
5251
rootStore.isSidebarOpened
5352
? 'bg-blue-200 brightness-75 dark:bg-indigo-900'
5453
: 'bg-[var(--color-bg)]',
55-
showBottomBorder ? `border-b-[1px] border-slate-300 dark:border-slate-600` : ``,
54+
showBottomBorder ? `shadow-light-medium dark:shadow-dark-medium` : ``,
5655
]}
5756
>
5857
<section class="mr-auto flex flex-col gap-1 md:flex-row md:gap-8">
59-
<a href="/" class="lg:ml-8">
58+
<a href="/" aria-label="Qwik UI Logo" class="lg:ml-8">
6059
<Logo />
6160
</a>
6261

apps/website/src/routes/_components/kit-selection-cta/kit-selection-cta.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,18 @@ export default component$(({ kit }: Kit) => {
77
return (
88
<a
99
href={`/docs/${kit}/introduction`}
10-
class="rounded-3xl border-2 overflow-hidden
11-
hover:-outline-offset-4 hover:outline-4 hover:outline hover:outline-[var(--qwik-light-blue)] hover:scale-[1.025]
12-
focus:-outline-offset-4 focus:outline-4 focus:outline focus:outline-[var(--qwik-light-blue)] focus:scale-[1.025] duration-150"
10+
class="overflow-hidden rounded-3xl border-2
11+
duration-150 hover:scale-[1.025] hover:outline hover:outline-4 hover:-outline-offset-4
12+
hover:outline-[var(--qwik-light-blue)] focus:scale-[1.025] focus:outline focus:outline-4 focus:-outline-offset-4 focus:outline-[var(--qwik-light-blue)]"
1313
>
1414
<Card>
1515
<CardImage
16-
src={`/images/kit-cta-${kit}.png`}
16+
src={`/images/fluffy-hero.webp`}
1717
width="611"
1818
height="408"
1919
alt={`${kit} kit`}
20-
class="bg-gradient-to-r from-[var(--qwik-light-blue)]
21-
to-[var(--qwik-light-purple)] h-64 w-full object-cover"
20+
class="h-64 w-full
21+
bg-gradient-to-r from-[var(--qwik-light-blue)] to-[var(--qwik-light-purple)] object-cover"
2222
/>
2323
<CardBody class={`px-8 py-6`}>
2424
<CardTitle class="text-xl font-bold">

apps/website/src/routes/_components/router-head/router-head.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,16 @@ export const RouterHead = component$(() => {
2424
<meta name="twitter:site" content="@QwikDev" />
2525
<meta name="twitter:title" content="Qwik" />
2626

27-
{head.meta.map((m) => (
28-
<meta {...m} />
27+
{head.meta.map((m, i) => (
28+
<meta key={i} {...m} />
2929
))}
3030

31-
{head.links.map((l) => (
32-
<link {...l} />
31+
{head.links.map((l, i) => (
32+
<link key={i} {...l} />
3333
))}
3434

35-
{head.styles.map((s) => (
36-
<style {...s.props} dangerouslySetInnerHTML={s.style} />
35+
{head.styles.map((s, i) => (
36+
<style key={i} {...s.props} dangerouslySetInnerHTML={s.style} />
3737
))}
3838

3939
<CSSThemeScript />

0 commit comments

Comments
 (0)