Skip to content

Commit

Permalink
disable resume previews to lower load on server, fixes #1954
Browse files Browse the repository at this point in the history
  • Loading branch information
AmruthPillai committed Jun 13, 2024
1 parent 713ce91 commit 767573c
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 68 deletions.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { t } from "@lingui/macro";
import {
CircleNotch,
CopySimple,
FolderOpen,
Lock,
Expand All @@ -21,7 +20,6 @@ import dayjs from "dayjs";
import { AnimatePresence, motion } from "framer-motion";
import { useNavigate } from "react-router-dom";

import { useResumePreview } from "@/client/services/resume/preview";
import { useDialog } from "@/client/stores/dialog";

import { BaseCard } from "./base-card";
Expand All @@ -35,8 +33,6 @@ export const ResumeCard = ({ resume }: Props) => {
const { open } = useDialog<ResumeDto>("resume");
const { open: lockOpen } = useDialog<ResumeDto>("lock");

const { url, loading } = useResumePreview(resume.id);

const lastUpdated = dayjs().to(resume.updatedAt);

const onOpen = () => {
Expand All @@ -63,36 +59,6 @@ export const ResumeCard = ({ resume }: Props) => {
<ContextMenu>
<ContextMenuTrigger>
<BaseCard className="space-y-0" onClick={onOpen}>
<AnimatePresence presenceAffectsLayout>
{loading && (
<motion.div
layout
initial={{ opacity: 0 }}
animate={{ opacity: 1 }}
exit={{ opacity: 0 }}
>
<CircleNotch
size={64}
weight="thin"
opacity={0.5}
className="animate-spin self-center justify-self-center"
/>
</motion.div>
)}

{!loading && url && (
<motion.img
layout
initial={{ opacity: 0 }}
animate={{ opacity: 1 }}
loading="lazy"
alt={resume.title}
className="size-full object-cover"
src={`${url}?cache=${Date.now()}`}
/>
)}
</AnimatePresence>

<AnimatePresence>
{resume.locked && (
<motion.div
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,10 @@ import {
DropdownMenuContent,
DropdownMenuItem,
DropdownMenuTrigger,
HoverCard,
HoverCardContent,
HoverCardTrigger,
} from "@reactive-resume/ui";
import dayjs from "dayjs";
import { AnimatePresence, motion } from "framer-motion";
import { useNavigate } from "react-router-dom";

import { useResumePreview } from "@/client/services/resume/preview";
import { useDialog } from "@/client/stores/dialog";

import { BaseListItem } from "./base-item";
Expand All @@ -42,8 +37,6 @@ export const ResumeListItem = ({ resume }: Props) => {
const { open } = useDialog<ResumeDto>("resume");
const { open: lockOpen } = useDialog<ResumeDto>("lock");

const { url } = useResumePreview(resume.id);

const lastUpdated = dayjs().to(resume.updatedAt);

const onOpen = () => {
Expand Down Expand Up @@ -140,32 +133,13 @@ export const ResumeListItem = ({ resume }: Props) => {
return (
<ContextMenu>
<ContextMenuTrigger className="even:bg-secondary/20">
<HoverCard>
<HoverCardTrigger>
<BaseListItem
className="group"
title={resume.title}
description={t`Last updated ${lastUpdated}`}
end={dropdownMenu}
onClick={onOpen}
/>
</HoverCardTrigger>
<HoverCardContent align="end" className="p-0" sideOffset={-100} alignOffset={100}>
<AnimatePresence>
{url && (
<motion.img
layout
initial={{ opacity: 0 }}
animate={{ opacity: 1 }}
loading="lazy"
alt={resume.title}
className="aspect-[1/1.4142] w-60 rounded-sm object-cover"
src={`${url}?cache=${Date.now()}`}
/>
)}
</AnimatePresence>
</HoverCardContent>
</HoverCard>
<BaseListItem
className="group"
title={resume.title}
description={t`Last updated ${lastUpdated}`}
end={dropdownMenu}
onClick={onOpen}
/>
</ContextMenuTrigger>

<ContextMenuContent>
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@reactive-resume/source",
"description": "A free and open-source resume builder that simplifies the process of creating, updating, and sharing your resume.",
"version": "4.1.7",
"version": "4.1.8",
"license": "MIT",
"private": true,
"author": {
Expand Down

0 comments on commit 767573c

Please sign in to comment.