-
-
-
+
{LOCKERS_LEFT_SECTIONS.map(renderCard)}
-
-
-
-
-
-
+
+
{/* 가운데 열은 복도다 — 카드가 없고 방향 표시만 있다.
@@ -121,9 +84,7 @@ function LockersFloorMap({
{LOCKERS_RIGHT_SECTIONS.map(renderCard)}
-
-
-
+
{LOCKERS_RIGHT_SECTIONS_BELOW_STAIRS.map(renderCard)}
diff --git a/src/features/lockers/components/LockersLayoutRenderer.tsx b/src/features/lockers/components/LockersLayoutRenderer.tsx
new file mode 100644
index 0000000..57d5f00
--- /dev/null
+++ b/src/features/lockers/components/LockersLayoutRenderer.tsx
@@ -0,0 +1,186 @@
+import { Typography } from "@wanteddev/wds";
+import type { CSSProperties } from "react";
+
+import stairsIcon from "@/assets/icons/lockers/stairs.svg";
+import LockersLockerGrid from "@/features/lockers/components/LockersLockerGrid";
+import LockersMapArea from "@/features/lockers/components/LockersMapArea";
+import LockersMapLabel from "@/features/lockers/components/LockersMapLabel";
+import LockersShelfLabel from "@/features/lockers/components/LockersShelfLabel";
+import type {
+ LockersLayout,
+ LockersLayoutAlign,
+ LockersLayoutAreaBlock,
+ LockersLayoutBlock,
+ LockersLayoutSize,
+ LockersSectionLocker,
+} from "@/features/lockers/constants/lockersSectionDetails";
+
+interface LockersLayoutRendererProps {
+ layout: LockersLayout;
+ lockers: ReadonlyMap