Share button

This commit is contained in:
Sebastien Castiel
2023-12-07 19:38:03 -05:00
parent 4bc03002e1
commit fb6cff2fe3
10 changed files with 287 additions and 3054 deletions

View File

@@ -0,0 +1,42 @@
import { CopyButton } from '@/components/copy-button'
import { Button } from '@/components/ui/button'
import { Input } from '@/components/ui/input'
import {
Popover,
PopoverContent,
PopoverTrigger,
} from '@/components/ui/popover'
import { env } from '@/lib/env'
import { Share } from 'lucide-react'
type Props = {
groupId: string
}
export function ShareButton({ groupId }: Props) {
const url = `${env.NEXT_PUBLIC_BASE_URL}/groups/${groupId}`
return (
<Popover>
<PopoverTrigger asChild>
<Button size="icon">
<Share className="w-4 h-4" />
</Button>
</PopoverTrigger>
<PopoverContent align="end" className="[&_p]:text-sm flex flex-col gap-3">
<p>
For other participants to see the group and add expenses, share its
URL with them.
</p>
<div className="flex gap-2">
<Input className="flex-1" defaultValue={url} readOnly />
<CopyButton text={url} />
</div>
<p>
<strong>Warning!</strong> Every person with the group URL will be able
to see and edit expenses. Share with caution!
</p>
</PopoverContent>
</Popover>
)
}