f6a0673082
CI Pipeline / test (20) (pull_request) Failing after 1m17s
CI Pipeline / test (18) (pull_request) Failing after 1m28s
CI Pipeline / e2e (chromium) (pull_request) Failing after 1m33s
CI Pipeline / e2e (firefox) (pull_request) Failing after 1m27s
CI Pipeline / e2e (webkit) (pull_request) Failing after 1m34s
CI Pipeline / visual-regression (pull_request) Failing after 2m9s
CI Pipeline / storybook (pull_request) Failing after 1m5s
CI Pipeline / performance (pull_request) Failing after 1m42s
CI Pipeline / lint (pull_request) Failing after 49s
CI Pipeline / build (pull_request) Failing after 1m29s
42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
"use client";
|
|
|
|
import React, { memo } from "react";
|
|
|
|
interface SectionNumberProps {
|
|
number: number;
|
|
}
|
|
|
|
const SectionNumber = memo<SectionNumberProps>(({ number }) => {
|
|
const getImageSrc = (num: number): string => {
|
|
switch (num) {
|
|
case 1:
|
|
return "/assets/SectionNumber_1.png";
|
|
case 2:
|
|
return "/assets/SectionNumber_2.png";
|
|
case 3:
|
|
return "/assets/SectionNumber_3.png";
|
|
default:
|
|
return "/assets/SectionNumber_1.png";
|
|
}
|
|
};
|
|
|
|
return (
|
|
<div className="relative size-[40px] overflow-visible -rotate-[15deg]">
|
|
<img
|
|
src={getImageSrc(number)}
|
|
alt={`Section ${number}`}
|
|
className="absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 size-[47.37px] max-w-none"
|
|
/>
|
|
<div className="absolute inset-0 flex items-center justify-center">
|
|
<span className="text-[var(--font-size-body-small)] font-[var(--font-weight-bold)] text-[var(--color-content-inverse-primary)]">
|
|
{number}
|
|
</span>
|
|
</div>
|
|
</div>
|
|
);
|
|
});
|
|
|
|
SectionNumber.displayName = "SectionNumber";
|
|
|
|
export default SectionNumber;
|