mirror of
https://github.com/rowboatlabs/rowboat.git
synced 2026-06-03 19:25:19 +02:00
housekeeping
This commit is contained in:
parent
5802964932
commit
ef3b49e94f
5 changed files with 28 additions and 866 deletions
|
|
@ -1,57 +0,0 @@
|
|||
'use client';
|
||||
import { Project } from "@/app/lib/types/project_types";
|
||||
import { default as NextLink } from "next/link";
|
||||
import { z } from "zod";
|
||||
import clsx from 'clsx';
|
||||
import { ChevronRightIcon } from "@heroicons/react/24/outline";
|
||||
import { formatDistanceToNow } from "date-fns";
|
||||
import { tokens } from "@/app/styles/design-tokens";
|
||||
|
||||
interface ProjectCardProps {
|
||||
project: z.infer<typeof Project>;
|
||||
}
|
||||
|
||||
export function ProjectCard({ project }: ProjectCardProps) {
|
||||
return (
|
||||
<NextLink
|
||||
href={`/projects/${project._id}`}
|
||||
className={clsx(
|
||||
"block px-4 py-3",
|
||||
tokens.transitions.default,
|
||||
tokens.colors.light.surfaceHover,
|
||||
tokens.colors.dark.surfaceHover,
|
||||
"group"
|
||||
)}
|
||||
>
|
||||
<div className="flex justify-between items-start">
|
||||
<div className="space-y-1">
|
||||
<h3 className={clsx(
|
||||
tokens.typography.sizes.base,
|
||||
tokens.typography.weights.medium,
|
||||
tokens.colors.light.text.primary,
|
||||
tokens.colors.dark.text.primary,
|
||||
"group-hover:text-indigo-600 dark:group-hover:text-indigo-400",
|
||||
tokens.transitions.default
|
||||
)}>
|
||||
{project.name}
|
||||
</h3>
|
||||
<p className={clsx(
|
||||
tokens.typography.sizes.xs,
|
||||
tokens.colors.light.text.muted,
|
||||
tokens.colors.dark.text.muted
|
||||
)}>
|
||||
Created {formatDistanceToNow(new Date(project.createdAt))} ago
|
||||
</p>
|
||||
</div>
|
||||
<ChevronRightIcon
|
||||
className={clsx(
|
||||
"w-5 h-5",
|
||||
tokens.colors.light.text.muted,
|
||||
tokens.colors.dark.text.muted,
|
||||
"transform transition-transform group-hover:translate-x-0.5"
|
||||
)}
|
||||
/>
|
||||
</div>
|
||||
</NextLink>
|
||||
);
|
||||
}
|
||||
|
|
@ -6,7 +6,7 @@ import clsx from 'clsx';
|
|||
import { tokens } from "@/app/styles/design-tokens";
|
||||
import { ChevronLeftIcon, ChevronRightIcon } from "lucide-react";
|
||||
import Link from "next/link";
|
||||
import { formatDistanceToNow } from "date-fns";
|
||||
import { RelativeTime } from "@primer/react";
|
||||
|
||||
interface ProjectListProps {
|
||||
projects: z.infer<typeof Project>[];
|
||||
|
|
@ -75,7 +75,7 @@ export function ProjectList({ projects, isLoading, searchQuery }: ProjectListPro
|
|||
tokens.colors.light.text.muted,
|
||||
tokens.colors.dark.text.muted
|
||||
)}>
|
||||
Created {formatDistanceToNow(new Date(project.createdAt))} ago
|
||||
Created <RelativeTime date={new Date(project.createdAt)} />
|
||||
</p>
|
||||
</div>
|
||||
<ChevronRightIcon className={clsx(
|
||||
|
|
|
|||
|
|
@ -1,37 +0,0 @@
|
|||
import * as React from "react"
|
||||
import { cva, type VariantProps } from "class-variance-authority"
|
||||
import { cn } from "@/lib/utils"
|
||||
|
||||
const badgeVariants = cva(
|
||||
"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
||||
{
|
||||
variants: {
|
||||
variant: {
|
||||
default:
|
||||
"border-transparent bg-primary text-primary-foreground hover:bg-primary/80",
|
||||
secondary:
|
||||
"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
||||
destructive:
|
||||
"border-transparent bg-destructive text-destructive-foreground hover:bg-destructive/80",
|
||||
outline: "text-foreground",
|
||||
success: "border-transparent bg-green-500 text-white hover:bg-green-600",
|
||||
warning: "border-transparent bg-yellow-500 text-white hover:bg-yellow-600",
|
||||
},
|
||||
},
|
||||
defaultVariants: {
|
||||
variant: "default",
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
export interface BadgeProps
|
||||
extends React.HTMLAttributes<HTMLDivElement>,
|
||||
VariantProps<typeof badgeVariants> {}
|
||||
|
||||
function Badge({ className, variant, ...props }: BadgeProps) {
|
||||
return (
|
||||
<div className={cn(badgeVariants({ variant }), className)} {...props} />
|
||||
)
|
||||
}
|
||||
|
||||
export { Badge, badgeVariants }
|
||||
784
apps/rowboat/package-lock.json
generated
784
apps/rowboat/package-lock.json
generated
File diff suppressed because it is too large
Load diff
|
|
@ -40,14 +40,8 @@
|
|||
"@qdrant/js-client-rest": "^1.13.0",
|
||||
"ai": "^4.3.13",
|
||||
"awilix": "^12.0.5",
|
||||
"cheerio": "^1.0.0",
|
||||
"class-variance-authority": "^0.7.1",
|
||||
"clsx": "^2.1.1",
|
||||
"date-fns": "^4.1.0",
|
||||
"dotenv": "^16.4.5",
|
||||
"eventsource-parser": "^3.0.2",
|
||||
"framer-motion": "^12.19.1",
|
||||
"fuse.js": "^7.1.0",
|
||||
"immer": "^10.1.1",
|
||||
"ioredis": "^5.6.1",
|
||||
"jose": "^5.9.6",
|
||||
|
|
@ -56,7 +50,6 @@
|
|||
"mongodb": "^6.8.0",
|
||||
"nanoid": "^5.1.5",
|
||||
"next": "15.3.4",
|
||||
"openai": "^4.67.2",
|
||||
"quill": "^2.0.3",
|
||||
"quill-mention": "^6.0.2",
|
||||
"react": "19.1.0",
|
||||
|
|
@ -67,12 +60,7 @@
|
|||
"react-resizable-panels": "^2.1.7",
|
||||
"remark-gfm": "^4.0.1",
|
||||
"rowboat-shared": "github:rowboatlabs/shared",
|
||||
"sharp": "^0.33.4",
|
||||
"styled-components": "^5.3.11",
|
||||
"swr": "^2.2.5",
|
||||
"tailwind-merge": "^2.5.5",
|
||||
"tailwindcss-animate": "^1.0.7",
|
||||
"tiktoken": "^1.0.17",
|
||||
"twilio": "^5.7.3",
|
||||
"zod": "^3.23.8",
|
||||
"zod-to-json-schema": "^3.23.5"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue