|
1 | 1 | import React from "react";
|
2 | 2 | import WindowPanel from "@/components/WindowPanel";
|
3 | 3 | import Image from "next/image";
|
| 4 | +import ConstructionRibbon from "./ConstructionRibbon"; |
4 | 5 |
|
5 | 6 | interface WorkDetailPanelProps {
|
6 | 7 | id: string;
|
@@ -35,44 +36,47 @@ const WorkDetailPanel: React.FC<WorkDetailPanelProps> = ({
|
35 | 36 | showBackArrow={false}
|
36 | 37 | showBreadcrumbs={false}
|
37 | 38 | onClose={onClose}
|
38 |
| - className="absolute w-[80vw] max-w-5xl max-h-[75vh]" |
| 39 | + className="absolute w-[80vw] max-w-5xl max-h-[75vh] overflow-hidden" |
39 | 40 | isDraggable={true}
|
40 | 41 | zIndex={zIndex}
|
41 | 42 | onFocus={onFocus}
|
42 | 43 | >
|
43 |
| - <div className="overflow-y-auto max-h-[calc(90vh-4rem)] px-8 py-6"> |
44 |
| - <h1 className="text-4xl font-bold mb-4">{title}</h1> |
45 |
| - <p className="text-lg text-gray-600 dark:text-gray-300 mb-8"> |
46 |
| - {duration} | {location} |
47 |
| - </p> |
48 |
| - <div className="flex items-center mb-8"> |
49 |
| - <Image |
50 |
| - src={imageUrl} |
51 |
| - alt={title} |
52 |
| - width={120} |
53 |
| - height={120} |
54 |
| - className="rounded-lg mr-6" |
55 |
| - /> |
56 |
| - <p className="text-xl leading-relaxed">{description}</p> |
57 |
| - </div> |
58 |
| - <h2 className="text-2xl font-semibold mb-4">Responsibilities</h2> |
59 |
| - <ul className="list-disc pl-5 mb-8 space-y-2"> |
60 |
| - {responsibilities.map((responsibility, index) => ( |
61 |
| - <li key={index} className="text-gray-600 dark:text-gray-300"> |
62 |
| - {responsibility} |
63 |
| - </li> |
64 |
| - ))} |
65 |
| - </ul> |
66 |
| - <h2 className="text-2xl font-semibold mb-4">Technologies Used</h2> |
67 |
| - <div className="flex flex-wrap gap-2 mb-8"> |
68 |
| - {technologies.map((tech, index) => ( |
69 |
| - <span |
70 |
| - key={index} |
71 |
| - className="bg-gray-200 dark:bg-gray-700 px-3 py-1 rounded-full text-sm" |
72 |
| - > |
73 |
| - {tech} |
74 |
| - </span> |
75 |
| - ))} |
| 44 | + <div className="relative"> |
| 45 | + <ConstructionRibbon /> |
| 46 | + <div className="overflow-y-auto max-h-[calc(90vh-4rem)] px-8 py-4 mt-8"> |
| 47 | + <h1 className="text-4xl font-bold mb-4">{title}</h1> |
| 48 | + <p className="text-lg text-gray-600 dark:text-gray-300 mb-8"> |
| 49 | + {duration} | {location} |
| 50 | + </p> |
| 51 | + <div className="flex items-center mb-8"> |
| 52 | + <Image |
| 53 | + src={imageUrl} |
| 54 | + alt={title} |
| 55 | + width={120} |
| 56 | + height={120} |
| 57 | + className="rounded-lg mr-6" |
| 58 | + /> |
| 59 | + <p className="text-xl leading-relaxed">{description}</p> |
| 60 | + </div> |
| 61 | + <h2 className="text-2xl font-semibold mb-4">Responsibilities</h2> |
| 62 | + <ul className="list-disc pl-5 mb-8 space-y-2"> |
| 63 | + {responsibilities.map((responsibility, index) => ( |
| 64 | + <li key={index} className="text-gray-600 dark:text-gray-300"> |
| 65 | + {responsibility} |
| 66 | + </li> |
| 67 | + ))} |
| 68 | + </ul> |
| 69 | + <h2 className="text-2xl font-semibold mb-4">Technologies Used</h2> |
| 70 | + <div className="flex flex-wrap gap-2 mb-8"> |
| 71 | + {technologies.map((tech, index) => ( |
| 72 | + <span |
| 73 | + key={index} |
| 74 | + className="bg-gray-200 dark:bg-gray-700 px-3 py-1 rounded-full text-sm" |
| 75 | + > |
| 76 | + {tech} |
| 77 | + </span> |
| 78 | + ))} |
| 79 | + </div> |
76 | 80 | </div>
|
77 | 81 | </div>
|
78 | 82 | </WindowPanel>
|
|
0 commit comments