feat(docs): a11y and performance optimizations on landing page

This commit is contained in:
Junior Garcia 2023-06-14 23:46:12 -03:00
parent 3406c29911
commit e70819ec7b
165 changed files with 2514 additions and 267 deletions

315
apps/docs/.sponsorsrc Normal file
View File

@ -0,0 +1,315 @@
[
{
"MemberId": 275354,
"createdAt": "2022-02-18 11:57",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 5,
"currency": "USD",
"lastTransactionAt": "2022-02-18 11:57",
"lastTransactionAmount": 5,
"profile": "https://opencollective.com/guest-7dc076fb",
"name": "jorge",
"company": null,
"description": null,
"image": "/sponsors/undefined",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 277819,
"createdAt": "2022-03-01 09:13",
"type": "USER",
"role": "BACKER",
"isActive": true,
"totalAmountDonated": 10,
"currency": "USD",
"lastTransactionAt": "2022-03-01 09:13",
"lastTransactionAmount": 10,
"profile": "https://opencollective.com/dhananjay-senday",
"name": "Dhananjay Senday",
"company": null,
"description": null,
"image": "/sponsors/undefined",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 292380,
"createdAt": "2022-04-22 07:47",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 10,
"currency": "USD",
"lastTransactionAt": "2022-04-22 07:47",
"lastTransactionAmount": 10,
"profile": "https://opencollective.com/manuel5",
"name": "manuel-rw",
"company": null,
"description": null,
"image": "/sponsors/292380.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 327844,
"createdAt": "2022-08-26 21:32",
"type": "ORGANIZATION",
"role": "BACKER",
"tier": "Gold Sponsor 🥇",
"isActive": true,
"totalAmountDonated": 200,
"currency": "USD",
"lastTransactionAt": "2022-12-22 07:19",
"lastTransactionAmount": 100,
"profile": "https://opencollective.com/lowdefy",
"name": "Lowdefy",
"company": null,
"description": "Create custom web apps in minutes",
"image": "/sponsors/327844.jpg",
"email": null,
"twitter": "https://twitter.com/lowdefy",
"github": "https://github.com/lowdefy",
"website": "https://lowdefy.com"
},
{
"MemberId": 347048,
"createdAt": "2022-10-30 06:25",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2022-10-30 06:25",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/william-frank-monroy-mamani",
"name": "William Frank Monroy Mamani",
"company": null,
"description": null,
"image": "/sponsors/347048.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 374896,
"createdAt": "2022-12-22 05:28",
"type": "ORGANIZATION",
"role": "BACKER",
"tier": "bronze sponsor 🥉",
"isActive": true,
"totalAmountDonated": 60,
"currency": "USD",
"lastTransactionAt": "2023-06-02 06:09",
"lastTransactionAmount": 10,
"profile": "https://opencollective.com/chartbrew",
"name": "Chartbrew",
"company": null,
"description": "Open source visualization and reporting platform",
"image": "/sponsors/374896.jpg",
"email": null,
"twitter": null,
"github": null,
"website": "https://chartbrew.com"
},
{
"MemberId": 375034,
"createdAt": "2022-12-22 13:16",
"type": "USER",
"role": "BACKER",
"isActive": true,
"totalAmountDonated": 50,
"currency": "USD",
"lastTransactionAt": "2022-12-22 13:16",
"lastTransactionAmount": 50,
"profile": "https://opencollective.com/jan-wagebach",
"name": "PRISMA European Capacity Platform GmbH",
"company": "PRISMA European Capacity Platform GmbH",
"description": null,
"image": "/sponsors/375034.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 395990,
"createdAt": "2023-02-11 13:12",
"type": "ORGANIZATION",
"role": "BACKER",
"tier": "Gold Sponsor 🥇",
"isActive": true,
"totalAmountDonated": 100,
"currency": "USD",
"lastTransactionAt": "2023-02-11 13:12",
"lastTransactionAmount": 100,
"profile": "https://opencollective.com/likn",
"name": "LIKN",
"company": null,
"description": "LIKN is a powerful, but simple Web3 component and protocol. Connect Web2 content to Web3, and solely mint content NFTs by URL. Share and Trade in different platforms and marketplaces. OpenAI empowers LIKN which can automatically generate NFT metadata. ",
"image": "/sponsors/395990.jpg",
"email": null,
"twitter": "https://twitter.com/oxlikn",
"github": "https://github.com/0xLIKN",
"website": "https://www.likn.co/?ref=opencollective"
},
{
"MemberId": 404415,
"createdAt": "2023-03-01 16:22",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2023-03-01 16:22",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/rharison-lucas-moreira-abreu",
"name": "Rharison Lucas Moreira Abreu",
"company": null,
"description": null,
"image": "/sponsors/404415.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 407510,
"createdAt": "2023-03-07 22:27",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2023-03-07 22:27",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/higherror",
"name": "HighError",
"company": null,
"description": null,
"image": "/sponsors/407510.jpg",
"email": null,
"twitter": null,
"github": "https://github.com/HighError",
"website": "https://higherror.github.io/"
},
{
"MemberId": 409558,
"createdAt": "2023-03-12 21:41",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2023-03-12 21:41",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/guest-6133a45c",
"name": "Kristof",
"company": null,
"description": null,
"image": "/sponsors/undefined",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 438158,
"createdAt": "2023-05-31 22:44",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 5,
"currency": "USD",
"lastTransactionAt": "2023-05-31 22:44",
"lastTransactionAmount": 5,
"profile": "https://opencollective.com/elektrnik",
"name": "ELEKTRNIK",
"company": null,
"description": null,
"image": "/sponsors/438158.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 438877,
"createdAt": "2023-06-02 17:56",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2023-06-02 17:56",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/guest-425370ea",
"name": "Gabriel Jiménez",
"company": null,
"description": null,
"image": "/sponsors/undefined",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 439182,
"createdAt": "2023-06-03 15:15",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 1,
"currency": "USD",
"lastTransactionAt": "2023-06-03 15:15",
"lastTransactionAmount": 1,
"profile": "https://opencollective.com/jay-thanawut1",
"name": "Jay Thanawut",
"company": null,
"description": null,
"image": "/sponsors/439182.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
},
{
"MemberId": 442878,
"createdAt": "2023-06-13 13:51",
"type": "USER",
"role": "BACKER",
"tier": "Backer 🖤",
"isActive": true,
"totalAmountDonated": 5,
"currency": "USD",
"lastTransactionAt": "2023-06-13 13:51",
"lastTransactionAmount": 5,
"profile": "https://opencollective.com/jefferson-fonseca",
"name": "Jefferson Fonseca",
"company": null,
"description": null,
"image": "/sponsors/442878.jpg",
"email": null,
"twitter": null,
"github": null,
"website": null
}
]

View File

@ -1,15 +1,14 @@
import "@/styles/globals.css";
import {Metadata} from "next";
import {clsx} from "@nextui-org/shared-utils";
import {Link} from "@nextui-org/react";
import {Providers} from "./providers";
import {VercelCallout} from "@/components/vercel-callout";
import manifest from "@/content/docs/manifest.json";
import {siteConfig} from "@/config/site";
import {fontSans} from "@/config/fonts";
import {Navbar} from "@/components/navbar";
import {Footer} from "@/components/footer";
export const metadata: Metadata = {
title: {
@ -63,17 +62,7 @@ export default function RootLayout({children}: {children: React.ReactNode}) {
<div className="relative flex flex-col">
<Navbar routes={manifest.routes} />
<main className="container mx-auto max-w-7xl px-6 flex-grow">{children}</main>
<footer className="container mx-auto max-w-7xl pb-12 px-12">
<div className="flex flex-col justify-center items-center gap-1">
<p className="text-sm text-default-400">
Created&nbsp;by&nbsp;
<Link isExternal className="text-sm" href={siteConfig.links.portfolio}>
Junior Garcia
</Link>
</p>
<VercelCallout />
</div>
</footer>
<Footer />
</div>
</Providers>
</body>

View File

@ -1,6 +1,5 @@
import {Spacer} from "@nextui-org/react";
import {getSponsors} from "@/libs/docs/sponsors";
import {Hero} from "@/components/marketing/hero";
import {FeaturesGrid} from "@/components/marketing/features-grid";
import {CustomThemes} from "@/components/marketing/custom-themes";
@ -12,10 +11,11 @@ import {InstallBanner} from "@/components/marketing/install-banner";
import {Community} from "@/components/marketing/community";
import {Support} from "@/components/marketing/support";
import landingContent from "@/content/landing";
import {getAllSponsors} from "@/utils/get-all-sponsors";
async function getData() {
try {
const sponsors = await getSponsors();
const sponsors = await getAllSponsors();
return {
sponsors,

View File

@ -2,12 +2,11 @@
import {useRef} from "react";
import {Button} from "@nextui-org/react";
import confetti from "canvas-confetti";
export const CustomButton = () => {
const buttonRef = useRef<HTMLButtonElement | null>(null);
const handleConfetti = () => {
const handleConfetti = async () => {
const {clientWidth, clientHeight} = document.documentElement;
const boundingBox = buttonRef.current?.getBoundingClientRect?.();
@ -16,6 +15,7 @@ export const CustomButton = () => {
const targetWidth = boundingBox?.width ?? 0;
const targetCenterX = targetX + targetWidth / 2;
const confetti = (await import("canvas-confetti")).default;
confetti({
zIndex: 999,

View File

@ -3,6 +3,7 @@
import {Card, CardBody, Button, Image, Progress, CardProps} from "@nextui-org/react";
import {useState, FC} from "react";
import {clsx} from "@nextui-org/shared-utils";
import NextImage from "next/image";
import {
PauseCircleBoldIcon,
@ -31,26 +32,28 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
<div className="relative col-span-6 md:col-span-4">
<Image
alt="Album cover"
as={NextImage}
className="object-cover"
classNames={{
wrapper: "shadow-black/20",
}}
height={200}
height={300}
shadow="lg"
src="/images/album-cover.png"
width="100%"
width={240}
/>
</div>
<div className="flex flex-col col-span-6 md:col-span-8">
<div className="flex justify-between items-start">
<div className="flex flex-col gap-0">
<h3 className="font-semibold text-foreground/90">Daily Mix</h3>
<p className="font-semibold text-foreground/90">Daily Mix</p>
<p className="text-sm text-foreground/80">12 Tracks</p>
<h1 className="text-lg font-medium mt-2">Frontend Radio</h1>
<p className="text-lg font-medium mt-2">Frontend Radio</p>
</div>
<Button
isIconOnly
aria-label="Like"
className="text-default-900/60 data-[hover]:bg-foreground/10 -translate-y-2 translate-x-2"
radius="full"
variant="light"
@ -83,6 +86,7 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
<div className="flex w-full items-center justify-center">
<Button
isIconOnly
aria-label="Repeat"
className="data-[hover]:bg-foreground/10"
radius="full"
variant="light"
@ -91,6 +95,7 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
</Button>
<Button
isIconOnly
aria-label="Previous"
className="data-[hover]:bg-foreground/10"
radius="full"
variant="light"
@ -99,6 +104,7 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
</Button>
<Button
isIconOnly
aria-label="Play"
className="w-auto h-auto data-[hover]:bg-foreground/10"
radius="full"
variant="light"
@ -107,6 +113,7 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
</Button>
<Button
isIconOnly
aria-label="Next"
className="data-[hover]:bg-foreground/10"
radius="full"
variant="light"
@ -115,6 +122,7 @@ export const MusicPlayer: FC<MusicPlayerProps> = ({className, ...otherProps}) =>
</Button>
<Button
isIconOnly
aria-label="Shuffle"
className="data-[hover]:bg-foreground/10"
radius="full"
variant="light"

View File

@ -3,6 +3,7 @@
import {useState, FC} from "react";
import {Card, CardHeader, Button, Avatar, CardBody, CardFooter} from "@nextui-org/react";
import {clsx} from "@nextui-org/shared-utils";
import NextImage from "next/image";
interface UserTwitterCardProps {
className?: string;
@ -15,7 +16,17 @@ export const UserTwitterCard: FC<UserTwitterCardProps> = ({className}) => {
<Card className={clsx("max-w-[300px]", className)}>
<CardHeader className="justify-between">
<div className="flex gap-5">
<Avatar isBordered radius="full" size="md" src="/avatars/avatar-1.png" />
<Avatar
isBordered
ImgComponent={NextImage}
imgProps={{
width: 40,
height: 40,
}}
radius="full"
size="md"
src="/avatars/avatar-1.webp"
/>
<div className="flex flex-col items-start justify-center">
<h4 className="text-sm font-semibold leading-none text-default-600">Zoey Lang</h4>
<h5 className="text-sm tracking-tight text-default-400">@zoeylang</h5>

View File

@ -0,0 +1,24 @@
"use client";
import dynamic from "next/dynamic";
import {siteConfig} from "@/config/site";
const Link = dynamic(() => import("@nextui-org/react").then((mod) => mod.Link));
const VercelCallout = dynamic(() => import("./vercel-callout").then((mod) => mod.VercelCallout));
export const Footer = () => {
return (
<footer className="container mx-auto max-w-7xl pb-12 px-12">
<div className="flex flex-col justify-center items-center gap-1">
<p className="text-sm text-default-400">
Created&nbsp;by&nbsp;
<Link isExternal className="text-sm" href={siteConfig.links.portfolio}>
Junior Garcia
</Link>
</p>
<VercelCallout />
</div>
</footer>
);
};

View File

@ -21,12 +21,13 @@ import {
DeleteDocumentBulkIcon,
} from "@nextui-org/shared-icons";
import Link from "next/link";
import dynamic from "next/dynamic";
import {useEffect, useRef, useState} from "react";
import {FeaturesGrid} from "./features-grid";
import landingContent from "@/content/landing";
import {GradientBox, DemoCodeModal} from "@/components";
import {GradientBox} from "@/components";
import {
KeyboardBoldIcon,
MouseCircleBoldIcon,
@ -39,6 +40,10 @@ import {
import {title, subtitle, titleWrapper, sectionWrapper} from "@/components/primitives";
import {useIsMobile} from "@/hooks/use-media-query";
const DemoCodeModal = dynamic(() => import("../demo-code-modal").then((mod) => mod.DemoCodeModal), {
ssr: false,
});
const a11yItems = [
{
title: "Keyboard navigation",
@ -119,6 +124,7 @@ export const A11yOtb = () => {
features={a11yItems}
/>
<Button
aria-label="Learn more about accessibility"
as={Link}
className="max-w-fit"
color="success"
@ -139,6 +145,7 @@ export const A11yOtb = () => {
<Tooltip className="text-xs px-2" content="Show code" placement="top">
<Button
isIconOnly
aria-label="Show code"
className="absolute top-1 right-1 text-success-50 data-[hover]:bg-foreground/10"
radius="full"
variant="light"

View File

@ -5,6 +5,7 @@ import {useMemo, useState} from "react";
import {Tabs, Tab, Card, CardBody, Image, Button, RadioGroup, Radio} from "@nextui-org/react";
import get from "lodash/get";
import NextLink from "next/link";
import NextImage from "next/image";
import {shopCartStyles} from "./styles";
@ -120,9 +121,12 @@ const CustomThemesExample = ({
<CardBody className="relative flex-col md:flex-row md:items-center gap-4 md:gap-9 overflow-visible">
<div className={slots.imageWrapper()}>
<Image
fill
removeWrapper
alt="Shoes theme example"
as={NextImage}
className={slots.img()}
sizes="100vw"
src="/images/shoes-1.png"
/>
</div>
@ -177,6 +181,7 @@ const CustomThemesExample = ({
</div>
<Button
isIconOnly
aria-label="like"
className={slots.starButton()}
data-liked={liked}
radius="full"
@ -188,6 +193,7 @@ const CustomThemesExample = ({
</CardBody>
</Card>
<Button
aria-label="Learn more about theme customization"
as={NextLink}
className="max-w-fit"
color="primary"

View File

@ -25,7 +25,7 @@ export const shopCartStyles = tv({
"before:transition-all",
],
img: [
"overflow-visible",
"object-[45%_50%]",
"sm:scale-125",
"absolute",
"z-10",

View File

@ -55,6 +55,7 @@ export const Customization = () => {
</div>
<div className="flex w-1/2 justify-start">
<Button
aria-label="Learn more about customization"
as={NextLink}
className="max-w-fit bg-pink-100 text-pink-500 dark:bg-pink-900 dark:text-pink-300"
href="/docs/theme/customize-theme"

View File

@ -4,15 +4,20 @@
import {Code, Button, Tooltip} from "@nextui-org/react";
import {useState} from "react";
import NextLink from "next/link";
import dynamic from "next/dynamic";
import {MusicPlayer} from "@/components/demos";
import {title, subtitle, titleWrapper, sectionWrapper} from "@/components/primitives";
import {ThemeSwitch} from "@/components/theme-switch";
import {CodeWindow} from "@/components/code-window";
import landingContent from "@/content/landing";
import {GradientBox, DemoCodeModal} from "@/components";
import {GradientBox} from "@/components";
import {InfoBoldIcon} from "@/components/icons";
const DemoCodeModal = dynamic(() => import("../demo-code-modal").then((mod) => mod.DemoCodeModal), {
ssr: false,
});
export const DarkMode = () => {
const [isModalOpen, setIsModalOpen] = useState(false);
@ -40,6 +45,7 @@ export const DarkMode = () => {
<Tooltip className="text-xs px-2" content="Show code" placement="top">
<Button
isIconOnly
aria-label="Show code"
className="text-white/70 dark:text-black/70 data-[hover]:bg-foreground/10"
radius="full"
variant="light"
@ -68,6 +74,7 @@ export const DarkMode = () => {
</div>
<div className="flex w-1/2 justify-start">
<Button
aria-label="Learn more about dark mode"
as={NextLink}
className="max-w-fit"
color="warning"

View File

@ -1,26 +1,30 @@
"use client";
import {
Button,
Input,
Tooltip,
Image,
CardFooter,
Card,
CardBody,
Switch,
Spinner,
Pagination,
Tabs,
Tab,
} from "@nextui-org/react";
import dynamic from "next/dynamic";
import {Button, Tooltip} from "@nextui-org/react";
import {MoonFilledIcon, SunFilledIcon} from "@nextui-org/shared-icons";
import {useTheme} from "next-themes";
import NextImage from "next/image";
import {NextUILogo} from "@/components";
import {UserTwitterCard} from "@/components/demos";
import {useIsMounted} from "@/hooks/use-is-mounted";
import {useMediaQuery} from "@/hooks/use-media-query";
import {NextUILogo} from "@/components/nextui-logo";
const Input = dynamic(() => import("@nextui-org/react").then((mod) => mod.Input));
const Image = dynamic(() => import("@nextui-org/react").then((mod) => mod.Image));
const Card = dynamic(() => import("@nextui-org/react").then((mod) => mod.Card));
const CardBody = dynamic(() => import("@nextui-org/react").then((mod) => mod.CardBody));
const CardFooter = dynamic(() => import("@nextui-org/react").then((mod) => mod.CardFooter));
const Switch = dynamic(() => import("@nextui-org/react").then((mod) => mod.Switch));
const Spinner = dynamic(() => import("@nextui-org/react").then((mod) => mod.Spinner));
const Pagination = dynamic(() => import("@nextui-org/react").then((mod) => mod.Pagination));
const UserTwitterCard = dynamic(() =>
import("../../demos/user-twitter-card").then((mod) => mod.UserTwitterCard),
);
const FloatingTabs = dynamic(() => import("./floating-tabs").then((mod) => mod.FloatingTabs), {
ssr: false,
});
export const FloatingComponents: React.FC<{}> = () => {
const {theme, setTheme} = useTheme();
@ -69,8 +73,10 @@ export const FloatingComponents: React.FC<{}> = () => {
>
<Image
alt="Professional camera"
as={NextImage}
className="object-cover -translate-y-12 h-[100%]"
src="/images/card-example-6.jpeg"
height={120}
src="/images/card-example-6.webp"
width={120}
/>
<CardFooter className="before:bg-black/10 before:border before:border-white/20 overflow-hidden justify-between py-2 absolute before:rounded-xl rounded-xl bottom-1 w-[calc(100%_-_8px)] shadow-lg ml-1 z-10">
@ -79,20 +85,7 @@ export const FloatingComponents: React.FC<{}> = () => {
</CardFooter>
</Card>
<Tabs
aria-label="Floating tabs example"
className=""
classNames={{
base: "absolute left-[170px] -top-[160px] h-10 animate-[levitate_17s_ease_infinite_1s]",
tabList: "max-w-[200px] bg-content1 shadow-sm",
}}
radius="full"
size="xs"
>
<Tab key="notes" title="Notes" />
<Tab key="tasks" title="Tasks" />
<Tab key="files" title="Files" />
</Tabs>
<FloatingTabs />
<UserTwitterCard className="absolute left-[80px] -top-[80px] animate-[levitate_16s_ease_infinite] border-none" />
@ -151,9 +144,10 @@ export const FloatingComponents: React.FC<{}> = () => {
>
<Image
alt="Woman listing to music"
as={NextImage}
className="object-cover"
height={200}
src="/images/hero-card.jpeg"
src="/images/hero-card.webp"
width={200}
/>
<CardFooter className="before:bg-white/10 overflow-hidden justify-between py-2 absolute before:rounded-xl rounded-xl bottom-1 w-[calc(100%_-_8px)] shadow-lg ml-1 z-10">

View File

@ -0,0 +1,22 @@
"use client";
import {Tab, Tabs} from "@nextui-org/react";
export const FloatingTabs: React.FC<{}> = () => {
return (
<Tabs
aria-label="Floating tabs example"
className=""
classNames={{
base: "absolute left-[170px] -top-[160px] h-10 animate-[levitate_17s_ease_infinite_1s]",
tabList: "max-w-[200px] bg-content1 shadow-sm",
}}
radius="full"
size="xs"
>
<Tab key="notes" title="Notes" />
<Tab key="tasks" title="Tasks" />
<Tab key="files" title="Files" />
</Tabs>
);
};

View File

@ -1,13 +1,19 @@
import {ArrowRightIcon} from "@nextui-org/shared-icons";
import {Button, Link} from "@nextui-org/react";
"use client";
import NextLink from "next/link";
import {Button, Link} from "@nextui-org/react";
import {ArrowRightIcon} from "@nextui-org/shared-icons";
import dynamic from "next/dynamic";
import {FloatingComponents} from "./floating-components";
import {BgLooper} from "./bg-looper";
import {title, subtitle} from "@/components/primitives";
import {GithubIcon} from "@/components/icons";
const BgLooper = dynamic(() => import("./bg-looper").then((mod) => mod.BgLooper), {
ssr: false,
});
export const Hero = () => {
return (
<section className="flex relative overflow-hidden lg:overflow-visible w-full flex-nowrap justify-between items-center h-[calc(100vh_-_64px)] 2xl:h-[calc(84vh_-_64px)]">
@ -19,9 +25,9 @@ export const Hero = () => {
</div>
<h1 className={title()}>websites regardless of your design experience.</h1>
</div>
<h4 className={subtitle({fullWidth: true, class: "text-center md:text-left"})}>
<h2 className={subtitle({fullWidth: true, class: "text-center md:text-left"})}>
Beautiful, fast and modern React UI library.
</h4>
</h2>
<div className="flex flex-col md:flex-row items-center gap-4">
<Button
as={NextLink}

View File

@ -42,10 +42,10 @@ export const InstallBanner = () => {
<div className=" w-full max-w-7xl py-10 grid grid-cols-12 gap-6 md:gap-0 z-20">
<div className="flex flex-col gap-2 col-span-12 md:col-span-6">
<div className="flex flex-col">
<h3 className={title({size: "md", class: "inline"})}>Let&apos;s make the</h3>
<h1 className={title({size: "md", class: "inline"})}>Let&apos;s make the</h1>
<div>
<h3 className={title({size: "md"})}>Web&nbsp;</h3>
<h3 className={title({size: "md", color: "violet", class: "inline"})}>Prettier</h3>
<h1 className={title({size: "md"})}>Web&nbsp;</h1>
<h1 className={title({size: "md", color: "violet", class: "inline"})}>Prettier</h1>
</div>
</div>
<p className={subtitle({class: "md:w-full text-base lg:text-lg"})}>

View File

@ -115,6 +115,7 @@ export const Support: FC<SupportProps> = ({sponsors = []}) => {
<Avatar
key={`${sponsor.MemberId}-${index}`}
isBordered
showFallback
className="absolute cursor-pointer bg-transparent before:bg-white/10 before:content-[''] before:block before:z-[-1] before:absolute before:inset-0 before:backdrop-blur-md before:backdrop-saturate-200"
color={getSponsorColor(sponsor) as AvatarProps["color"]}
name={getSponsorName(sponsor)}
@ -176,6 +177,7 @@ export const Support: FC<SupportProps> = ({sponsors = []}) => {
>
<Button
isIconOnly
aria-label="Become a sponsor"
className="z-50 w-auto h-auto bg-gradient-to-b from-[#FF1CF7] to-[#7928CA]"
radius="full"
onPress={() => handleExternalLinkClick(supportAccounts[0].href)}

View File

@ -26,13 +26,13 @@ import {usePathname} from "next/navigation";
import {includes} from "lodash";
import {SearchIcon} from "@nextui-org/shared-icons";
import {motion, AnimatePresence} from "framer-motion";
import {useEffect} from "react";
import {siteConfig} from "@/config/site";
import {Route} from "@/libs/docs/page";
import {LargeLogo, ThemeSwitch} from "@/components";
import {TwitterIcon, GithubIcon, DiscordIcon, HeartFilledIcon} from "@/components/icons";
import {useIsMounted} from "@/hooks/use-is-mounted";
import RouterEvents from "@/libs/router-events";
export interface NavbarProps {
routes: Route[];
@ -54,6 +54,12 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
const pathname = usePathname();
useEffect(() => {
if (isMenuOpen) {
setIsMenuOpen(false);
}
}, [pathname]);
const docsPaths = [
"/docs/guide/introduction",
"/docs/guide/installation",
@ -80,10 +86,6 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
/>
);
RouterEvents.on("routeChangeStart", () => {
if (isMenuOpen) setIsMenuOpen(false);
});
return (
<NextUINavbar
ref={ref}
@ -96,8 +98,8 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
onMenuOpenChange={setIsMenuOpen}
>
<NavbarContent className="basis-1/5 sm:basis-full" justify="start">
<NavbarBrand className="gap-3 max-w-fit">
<NextLink className="flex justify-start items-center gap-3" href="/">
<NavbarBrand as="li" className="gap-3 max-w-fit">
<NextLink aria-label="Home" className="flex justify-start items-center gap-3" href="/">
<LargeLogo className="h-5 md:h-6" />
</NextLink>
{ref.current ? (
@ -134,7 +136,7 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
<div className="w-[80px]" />
)}
</NavbarBrand>
<div className="hidden lg:flex gap-4 justify-start">
<ul className="hidden lg:flex gap-4 justify-start">
<NavbarItem>
<NextLink
className={clsx(
@ -144,6 +146,7 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
color="foreground"
data-active={includes(docsPaths, pathname)}
href="/docs/guide/introduction"
prefetch={false}
>
Docs
</NextLink>
@ -157,6 +160,7 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
color="foreground"
data-active={includes(pathname, "components")}
href="/docs/components/avatar"
prefetch={false}
>
Components
</NextLink>
@ -174,25 +178,29 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
Figma
</NextLink>
</NavbarItem>
</div>
</ul>
</NavbarContent>
<NavbarContent className="flex w-full gap-3 sm:hidden" justify="end">
<Link isExternal href="https://github.com/nextui-org/nextui">
<GithubIcon className="text-default-600 dark:text-default-500" />
</Link>
<ThemeSwitch />
<NavbarItem>
<Link isExternal aria-label="Github" href="https://github.com/nextui-org/nextui">
<GithubIcon className="text-default-600 dark:text-default-500" />
</Link>
</NavbarItem>
<NavbarItem>
<ThemeSwitch />
</NavbarItem>
</NavbarContent>
<NavbarContent className="basis-1/5 sm:basis-full" justify="end">
<NavbarItem className="hidden sm:flex gap-2">
<Link isExternal href={siteConfig.links.twitter}>
<Link isExternal aria-label="Twitter" href={siteConfig.links.twitter}>
<TwitterIcon className="text-default-600 dark:text-default-500" />
</Link>
<Link isExternal href={siteConfig.links.discord}>
<Link isExternal aria-label="Discord" href={siteConfig.links.discord}>
<DiscordIcon className="text-default-600 dark:text-default-500" />
</Link>
<Link isExternal href={siteConfig.links.github}>
<Link isExternal aria-label="Github" href={siteConfig.links.github}>
<GithubIcon className="text-default-600 dark:text-default-500" />
</Link>
<ThemeSwitch />
@ -212,10 +220,12 @@ export const Navbar: FC<NavbarProps> = ({children, routes, slug, tag}) => {
Sponsor
</Button>
</NavbarItem>
<NavbarMenuToggle
aria-label={isMenuOpen ? "Close menu" : "Open menu"}
className="sm:hidden"
/>
<NavbarItem>
<NavbarMenuToggle
aria-label={isMenuOpen ? "Close menu" : "Open menu"}
className="sm:hidden"
/>
</NavbarItem>
</NavbarContent>
<NavbarMenu disableAnimation>

View File

@ -20,6 +20,7 @@ export const ThemeSwitch: FC<ThemeSwitchProps> = ({className, classNames}) => {
const {Component, slots, isSelected, getBaseProps, getInputProps, getWrapperProps} = useSwitch({
isSelected: theme === "light",
"aria-label": `Switch to ${theme === "light" ? "dark" : "light"} mode`,
onChange,
});

View File

@ -4,7 +4,9 @@ export function useIsMounted() {
const [isMounted, setIsMounted] = useState(false);
useEffect(() => {
setIsMounted(true);
setTimeout(() => {
setIsMounted(true);
});
}, []);
return isMounted;

View File

@ -1,8 +1,4 @@
import {uniqBy} from "lodash";
import {__PROD__} from "@/utils";
export type SponsorType = "USER" | "ORGANIZATION" | "COLLECTIVE";
export type SponsorRole = "ADMIN" | "BACKER" | "CONTRIBUTOR" | "HOST" | "MEMBER" | "FUNDRAISER";
export const SPONSOR_TIERS = {
@ -275,25 +271,6 @@ export const mockData: Sponsor[] = [
},
];
export const getSponsors = async () => {
try {
if (!__PROD__) {
return mockData;
}
const res = await fetch("https://opencollective.com/nextui/members/all.json");
const data = await res.json();
// filter out repeated sponsors
const sponsors = uniqBy<Sponsor>(data, "profile").filter(
(sponsor) => sponsor.role !== "ADMIN" && sponsor.role !== "HOST",
);
return sponsors as Sponsor[];
} catch (error) {
return __PROD__ ? [] : mockData;
}
};
export const getTier = (amount: number) => {
return (
Object.keys(SPONSOR_TIER_BY_AMOUNT).find((tier) => amount >= SPONSOR_TIER_BY_AMOUNT[tier]) ??

View File

@ -1,9 +1,9 @@
/** @type {import('next').NextConfig} */
const nextConfig = {
transpilePackages: ['@nextui-org/react', '@nextui-org/theme'],
transpilePackages: ["@nextui-org/react", "@nextui-org/theme"],
swcMinify: true,
reactStrictMode: true, // Recommended for the `pages` directory, default in `app`.
redirects: require("./next-redirect"),
redirects: require("./next-redirect"),
eslint: {
ignoreDuringBuilds: true,
},
@ -11,6 +11,14 @@ const nextConfig = {
// ignoreBuildErrors: process.env.IS_VERCEL_ENV === "true",
ignoreBuildErrors: true,
},
images: {
domains: [
"opencollective-production.s3.us-west-1.amazonaws.com",
"avatars.githubusercontent.com",
"logo.clearbit.com",
"i.pravatar.cc",
],
},
};
module.exports = nextConfig;

View File

@ -7,7 +7,8 @@
"build": "next build",
"start": "next start",
"lint": "next lint",
"preinstall": "node preinstall.js"
"preinstall": "node preinstall.js",
"build:sponsors": "tsx scripts/build-sponsors.ts"
},
"dependencies": {
"@codesandbox/sandpack-react": "^2.6.4",
@ -16,9 +17,9 @@
"@nextui-org/react": "workspace:*",
"@nextui-org/shared-icons": "workspace:*",
"@nextui-org/shared-utils": "workspace:*",
"@nextui-org/theme": "workspace:*",
"@nextui-org/use-clipboard": "workspace:*",
"@nextui-org/use-is-mobile": "workspace:*",
"@nextui-org/theme": "workspace:*",
"@react-aria/focus": "^3.12.1",
"@react-aria/interactions": "^3.15.1",
"@react-aria/selection": "^3.15.0",
@ -37,15 +38,15 @@
"lodash": "^4.17.21",
"mini-svg-data-uri": "^1.4.3",
"mitt": "3.0.0",
"next": "13.4.1",
"next": "13.4.4",
"next-mdx-remote": "^3.0.2",
"next-themes": "^0.2.1",
"nprogress": "^0.2.0",
"parse-numeric-range": "1.2.0",
"prism-react-renderer": "^1.2.1",
"querystring": "^0.2.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-live": "^2.3.0",
"refractor": "3.3.1",
"rehype": "11.0.0",
@ -54,6 +55,7 @@
"remark-autolink-headings": "^6.0.1",
"remark-slug": "^6.0.0",
"scroll-into-view-if-needed": "2.2.29",
"sharp": "^0.32.1",
"shelljs": "^0.8.4",
"tailwind-scrollbar-hide": "^1.1.7",
"tailwind-variants": "^0.1.6",
@ -65,18 +67,20 @@
"@tailwindcss/typography": "^0.5.9",
"@types/canvas-confetti": "^1.4.2",
"@types/lodash": "^4.14.194",
"@types/node": "18.16.0",
"@types/node": "20.2.5",
"@types/nprogress": "^0.2.0",
"@types/parse-numeric-range": "^0.0.1",
"@types/react": "^18.0.1",
"@types/react-dom": "^18.0.0",
"@types/react": "18.2.8",
"@types/react-dom": "18.2.4",
"@types/refractor": "^3.0.2",
"@types/shelljs": "^0.8.9",
"autoprefixer": "^10.4.14",
"eslint-config-next": "^11.0.0",
"next-sitemap": "^4.0.7",
"node-fetch": "^3.2.10",
"postcss": "^8.4.21",
"tailwindcss": "^3.2.7",
"tsx": "^3.8.2",
"typescript": "^4.9.5"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -0,0 +1,62 @@
/**
* This module was inspired by chakra-ui
*/
import {promises as fs} from 'fs'
import path from 'path'
import ImageSharp from './image-sharp'
import { getSponsors } from '@/utils/get-sponsors'
const publicDir = path.join(process.cwd(), 'public')
const sponsorsDir = path.join(publicDir, 'sponsors')
async function buildSponsors() {
const sponsors = await getSponsors()
// cache sponsor image
const sponsorCache = new ImageSharp({
outputDirectory: sponsorsDir,
})
// update the image property from open-collective to use the cached image
const allSponsors = await Promise.all(
sponsors.map(async (s) => {
const filename = await sponsorCache.urlToFile(
s.image,
s.MemberId.toString(),
)
return {
...s,
image: `/sponsors/${filename}`,
}
}),
)
await fs.writeFile('.sponsorsrc', JSON.stringify(allSponsors, null, 2))
}
async function build() {
// make sure the sponsors directory exists
try {
await fs.access(sponsorsDir);
} catch (error) {
await fs.mkdir(sponsorsDir, { recursive: true });
}
await Promise.all([buildSponsors()])
}
try {
build()
} catch (err) {
// eslint-disable-next-line no-console
console.log(err)
}

View File

@ -0,0 +1,71 @@
import fetch from 'node-fetch'
import sharp from 'sharp'
/**
* This module was inspired by Zach Leatherman's `avatar-local-cache` library.
* Check out https://github.com/zachleat/avatar-local-cache for a similar,
* pre-packaged solution.
*/
export interface AvatarCacheOptions {
/** The path to write the images to. */
outputDirectory: string
/** The max width of the avatars. */
width?: number
}
export class AvatarCache {
outputDirectory: string
width: number
constructor({ outputDirectory, width = 120 }: AvatarCacheOptions) {
this.outputDirectory = outputDirectory
this.width = width
}
async urlToFile(url: string, outputFileSlug: string) {
try {
const response = await fetch(url)
if (!response.ok) {
throw new Error(
`Bad status code for ${url}. ${response.status}: ${response.statusText}`,
)
}
const body = await response.arrayBuffer()
return this.processImage(body, outputFileSlug)
} catch (error) {
// eslint-disable-next-line no-console
console.error(`Error processing ${url}\nError: ${error}`)
}
}
private async processImage(body: ArrayBuffer, outputFileSlug: string) {
const { width, outputDirectory } = this
const output = `${outputDirectory}/${outputFileSlug}`
const img = sharp(Buffer.from(body)).resize({
width: width,
withoutEnlargement: true,
})
const metadata = await img.metadata()
await this.toJpeg(img, metadata, `${output}.jpg`)
return `${outputFileSlug}.jpg`
}
private async toJpeg(
img: sharp.Sharp,
metadata: sharp.Metadata,
slug: string,
) {
const jpeg = metadata.format !== 'jpeg' ? img.jpeg() : img
await jpeg.toFile(slug)
}
}
export default AvatarCache

View File

@ -0,0 +1,12 @@
import path from "path";
import fs from "fs";
/**
* Read the information for each sponsor from `.all-sponsorsrc` file
*/
export function getAllSponsors() {
const sponsorsRcPath = path.resolve(".sponsorsrc");
const sponsors = JSON.parse(fs.readFileSync(sponsorsRcPath, "utf-8"));
return sponsors;
}

View File

@ -0,0 +1,25 @@
import {uniqBy} from "lodash";
import fetch from "node-fetch";
import {__PROD__} from "./env";
import {mockData, Sponsor} from "@/libs/docs/sponsors";
export const getSponsors = async () => {
try {
// if (!__PROD__) {
// return mockData;
// }
const res = await fetch("https://opencollective.com/nextui/members/all.json");
const data = (await res.json()) as Sponsor[];
// filter out repeated sponsors
const sponsors = uniqBy<Sponsor>(data, "profile").filter(
(sponsor) => sponsor.role !== "ADMIN" && sponsor.role !== "HOST",
);
return sponsors as Sponsor[];
} catch (error) {
return __PROD__ ? [] : mockData;
}
};

View File

@ -1,5 +1,35 @@
# @nextui-org/accordion
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/use-aria-accordion-item@0.0.0-dev-v2-20230615024440
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/aria-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/use-aria-accordion-item@0.0.0-dev-v2-20230614225402
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/aria-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/accordion",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Collapse display a list of high-level options that can expand/collapse to reveal more information.",
"keywords": [
"react",

View File

@ -1,5 +1,29 @@
# @nextui-org/avatar
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-image@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-image@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/avatar",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "The Avatar component is used to represent a user, and displays the profile picture, initials or fallback icon.",
"keywords": [
"avatar"

View File

@ -9,6 +9,7 @@ export interface AvatarProps extends Omit<UseAvatarProps, "ref"> {}
const Avatar = forwardRef<AvatarProps, "span">((props, ref) => {
const {
Component,
ImgComponent,
src,
icon = <AvatarIcon />,
alt,
@ -55,7 +56,7 @@ const Avatar = forwardRef<AvatarProps, "span">((props, ref) => {
return (
<Component {...getAvatarProps()}>
{src && <img {...getImageProps()} alt={alt} />}
{src && <ImgComponent {...getImageProps()} alt={alt} />}
{fallback}
</Component>
);

View File

@ -70,6 +70,15 @@ export interface UseAvatarProps
* Function called when image failed to load
*/
onError?: () => void;
/**
* The component used to render the image.
* @default "img"
*/
ImgComponent?: React.ElementType;
/**
* Props to pass to the image component.
*/
imgProps?: React.ImgHTMLAttributes<HTMLImageElement>;
/**
* Classname or List of classes to change the classNames of the avatar.
* if `className` is passed, it will be added to the base slot.
@ -111,6 +120,8 @@ export function useAvatar(props: UseAvatarProps = {}) {
getInitials = safeText,
ignoreFallback = false,
showFallback: showFallbackProp = false,
ImgComponent = "img",
imgProps,
className,
onError,
...otherProps
@ -173,17 +184,19 @@ export function useAvatar(props: UseAvatarProps = {}) {
);
const getImageProps = useCallback<PropGetter>(
() => ({
(props = {}) => ({
ref: imgRef,
src: src,
"data-loaded": dataAttr(isImgLoaded),
className: slots.img({class: classNames?.img}),
...mergeProps(imgProps, props),
}),
[slots, isImgLoaded, src, imgRef],
[slots, isImgLoaded, imgProps, src, imgRef],
);
return {
Component,
ImgComponent,
src,
alt,
icon,

View File

@ -1,5 +1,27 @@
# @nextui-org/badge
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/badge",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Badges are used as a small numerical value or status descriptor for UI elements.",
"keywords": [
"badge"

View File

@ -1,5 +1,33 @@
# @nextui-org/button
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/spinner@0.0.0-dev-v2-20230615024440
- @nextui-org/drip@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/spinner@0.0.0-dev-v2-20230614225402
- @nextui-org/drip@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/button",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Buttons allow users to perform actions and choose with a single tap.",
"keywords": [
"button"

View File

@ -1,5 +1,31 @@
# @nextui-org/card
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/drip@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/drip@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/card",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Card is a container for text, photos, and actions in the context of a single subject.",
"keywords": [
"card"

View File

@ -141,7 +141,6 @@ export function useCard(originalProps: UseCardProps) {
return {
ref: domRef,
className: slots.base({class: baseStyles}),
role: originalProps.isPressable ? "button" : "section",
tabIndex: originalProps.isPressable ? 0 : -1,
"data-hover": dataAttr(isHovered),
"data-pressed": dataAttr(isPressed),
@ -149,7 +148,7 @@ export function useCard(originalProps: UseCardProps) {
"data-focus-visible": dataAttr(isFocusVisible),
"data-disabled": dataAttr(originalProps.isDisabled),
...mergeProps(
originalProps.isPressable ? {...buttonProps, ...focusProps} : {},
originalProps.isPressable ? {...buttonProps, ...focusProps, role: "button"} : {},
originalProps.isHoverable ? hoverProps : {},
otherProps,
props,

View File

@ -1,5 +1,27 @@
# @nextui-org/checkbox
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/checkbox",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Checkboxes allow users to select multiple items from a list of individual items, or to mark one individual item as selected.",
"keywords": [
"checkbox"

View File

@ -1,5 +1,29 @@
# @nextui-org/chip
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/chip",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Chips help people enter information, make selections, filter content, or trigger actions.",
"keywords": [
"chip"

View File

@ -1,5 +1,27 @@
# @nextui-org/code
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/code",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Code is a component used to display inline code.",
"keywords": [
"code"

View File

@ -1,5 +1,27 @@
# @nextui-org/divider
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/divider",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": ". A separator is a visual divider between two groups of content",
"keywords": [
"divider"

View File

@ -1,5 +1,25 @@
# @nextui-org/drip
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/drip",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A ripple effect for ensuring that the user fells the system is reacting instantaneously",
"keywords": [
"drip"

View File

@ -1,5 +1,33 @@
# @nextui-org/dropdown
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/aria-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-is-mobile@0.0.0-dev-v2-20230615024440
- @nextui-org/popover@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/aria-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-is-mobile@0.0.0-dev-v2-20230614225402
- @nextui-org/popover@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/dropdown",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A dropdown displays a list of actions or options that a user can choose.",
"keywords": [
"dropdown"

View File

@ -1,5 +1,29 @@
# @nextui-org/image
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-image@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-image@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/image",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A simple image component",
"keywords": [
"image"

View File

@ -1,5 +1,31 @@
# @nextui-org/input
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-field@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-field@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/input",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "The input component is designed for capturing user input within a text field.",
"keywords": [
"input"

View File

@ -1,5 +1,27 @@
# @nextui-org/kbd
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/kbd",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "The keyboard key components indicates which key or set of keys used to execute a specificv action",
"keywords": [
"kbd"

View File

@ -1,5 +1,29 @@
# @nextui-org/link
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/link",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Links allow users to click their way from page to page. This component is styled to resemble a hyperlink and semantically renders an &lt;a&gt;",
"keywords": [
"link"

View File

@ -1,5 +1,35 @@
# @nextui-org/modal
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-disclosure@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-disclosure@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/modal",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Displays a dialog with a custom content that requires attention or provides additional information.",
"keywords": [
"modal"

View File

@ -1,5 +1,33 @@
# @nextui-org/navbar
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/use-aria-toggle-button@0.0.0-dev-v2-20230615024440
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230615024440
- @nextui-org/use-scroll-position@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/use-aria-toggle-button@0.0.0-dev-v2-20230614225402
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230614225402
- @nextui-org/use-scroll-position@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/navbar",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A responsive navigation header positioned on top side of your page that includes support for branding, links, navigation, collapse and more.",
"keywords": [
"navbar"

View File

@ -1,5 +1,31 @@
# @nextui-org/pagination
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-pagination@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-pagination@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/pagination",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "The Pagination component allows you to display active page and navigate between multiple pages.",
"keywords": [
"pagination"

View File

@ -1,5 +1,35 @@
# @nextui-org/popover
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/aria-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/button@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-button@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/aria-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/button@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/popover",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A popover is an overlay element positioned relative to a trigger.",
"keywords": [
"popover"

View File

@ -1,5 +1,31 @@
# @nextui-org/progress
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-aria-label@0.0.0-dev-v2-20230615024440
- @nextui-org/use-is-mounted@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-aria-label@0.0.0-dev-v2-20230614225402
- @nextui-org/use-is-mounted@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/progress",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Progress bars show either determinate or indeterminate progress of an operation over time.",
"keywords": [
"progress"

View File

@ -1,5 +1,27 @@
# @nextui-org/radio
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/radio",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Radios allow users to select a single option from a list of mutually exclusive options.",
"keywords": [
"radio"

View File

@ -1,5 +1,27 @@
# @nextui-org/skeleton
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/skeleton",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Skeleton is used to display the loading state of some component.",
"keywords": [
"skeleton"

View File

@ -1,5 +1,35 @@
# @nextui-org/snippet
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-clipboard@0.0.0-dev-v2-20230615024440
- @nextui-org/tooltip@0.0.0-dev-v2-20230615024440
- @nextui-org/button@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-clipboard@0.0.0-dev-v2-20230614225402
- @nextui-org/tooltip@0.0.0-dev-v2-20230614225402
- @nextui-org/button@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/snippet",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Display a snippet of copyable code for the command line.",
"keywords": [
"snippet"

View File

@ -1,5 +1,27 @@
# @nextui-org/spacer
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/spacer",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A flexible spacer component designed to create consistent spacing and maintain alignment in your layout.",
"keywords": [
"spacer"

View File

@ -1,5 +1,27 @@
# @nextui-org/spinner
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/spinner",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Loaders express an unspecified wait time or display the length of a process.",
"keywords": [
"loading",

View File

@ -1,5 +1,27 @@
# @nextui-org/switch
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/switch",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "A switch is similar to a checkbox, but represents on/off values as opposed to selection.",
"keywords": [
"switch"

View File

@ -1,5 +1,33 @@
# @nextui-org/table
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/checkbox@0.0.0-dev-v2-20230615024440
- @nextui-org/spacer@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/shared-icons@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/checkbox@0.0.0-dev-v2-20230614225402
- @nextui-org/spacer@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

View File

@ -1,6 +1,6 @@
{
"name": "@nextui-org/table",
"version": "0.0.0-dev-v2-20230614044324",
"version": "0.0.0-dev-v2-20230615024440",
"description": "Tables are used to display tabular data using rows and columns. ",
"keywords": [
"table"

View File

@ -1,5 +1,33 @@
# @nextui-org/tabs
## 0.0.0-dev-v2-20230615024440
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230615024440
- @nextui-org/shared-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/react-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/use-is-mounted@0.0.0-dev-v2-20230615024440
- @nextui-org/aria-utils@0.0.0-dev-v2-20230615024440
- @nextui-org/system@0.0.0-dev-v2-20230615024440
- @nextui-org/theme@0.0.0-dev-v2-20230615024440
## 0.0.0-dev-v2-20230614225402
### Patch Changes
- Avatar API improved
- Updated dependencies
- @nextui-org/framer-transitions@0.0.0-dev-v2-20230614225402
- @nextui-org/shared-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/react-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/use-is-mounted@0.0.0-dev-v2-20230614225402
- @nextui-org/aria-utils@0.0.0-dev-v2-20230614225402
- @nextui-org/system@0.0.0-dev-v2-20230614225402
- @nextui-org/theme@0.0.0-dev-v2-20230614225402
## 0.0.0-dev-v2-20230614044324
### Patch Changes

Some files were not shown because too many files have changed in this diff Show More