- 오픈 카카오톡 연결 추가
- 제품 추가등록
This commit is contained in:
2026-02-08 01:47:28 +09:00
parent 44cfe85d8f
commit 1bdadc84ed
48 changed files with 398 additions and 15 deletions

View File

@@ -1,4 +1,381 @@
const games = [
{
id: 'x4r7p2ds',
createdAt: '2026-02-08',
updatedAt: '2026-02-08',
title: '하지러브 -Making*Lovers-',
price: 70000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/x4r7p2ds_01.jpg',
'/images/games/x4r7p2ds_02.jpg',
'/images/games/x4r7p2ds_03.jpg',
'/images/games/x4r7p2ds_04.jpg',
],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'하지러브 -Making*Lovers- (ハジラブ -Making*Lovers-) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 완전생산한정판 제품입니다.',
'한국어는 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'q8t2mz4k',
createdAt: '2026-02-08',
updatedAt: '2026-02-08',
title: '아이키스3 Cute',
price: 110000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/q8t2mz4k_01.jpg',
'/images/games/q8t2mz4k_02.jpg',
'/images/games/q8t2mz4k_03.jpg',
'/images/games/q8t2mz4k_04.jpg',
'/images/games/q8t2mz4k_05.jpg',
],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'아이키스3 Cute (アイキス3 Cute) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 완전생산한정판 제품입니다.',
'한국어는 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'm7k2v9qp',
createdAt: '2026-02-08',
updatedAt: '2026-02-08',
title: '아이키스2',
price: 80000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/m7k2v9qp_01.jpg',
'/images/games/m7k2v9qp_02.jpg',
'/images/games/m7k2v9qp_03.jpg',
'/images/games/m7k2v9qp_04.jpg',
],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'아이키스2 (アイキス2) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 완전생산한정판 제품입니다.',
'한국어는 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'q8m2x4ra',
createdAt: '2026-02-08',
updatedAt: '2026-02-08',
title: '풀 키스 SS',
price: 80000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/q8m2x4ra_01.jpg',
'/images/games/q8m2x4ra_02.jpg',
'/images/games/q8m2x4ra_03.jpg',
'/images/games/q8m2x4ra_04.jpg',
'/images/games/q8m2x4ra_05.jpg',
],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'풀 키스 SS (フルキスSS) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 완전생산한정판 제품입니다.',
'한국어는 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'k3f8d2qa',
createdAt: '2026-02-08',
updatedAt: '2026-02-08',
title: '하루키스',
price: 80000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/k3f8d2qa_01.jpg',
'/images/games/k3f8d2qa_02.jpg',
'/images/games/k3f8d2qa_03.jpg',
'/images/games/k3f8d2qa_04.jpg',
'/images/games/k3f8d2qa_05.jpg',
],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'하루키스 (ハルキス) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 완전생산한정판 제품입니다.',
'한국어는 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'p4x9t2qa',
createdAt: '2026-02-07',
updatedAt: '2026-02-07',
title: '동방 루나 나이츠',
price: 70000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '디럭스판',
tags: ['Switch', 'JP', 'Limited Edition'],
images: [
'/images/games/p4x9t2qa_01.jpg',
'/images/games/p4x9t2qa_02.jpg',
'/images/games/p4x9t2qa_03.jpg',
'/images/games/p4x9t2qa_04.jpg',
],
description: '미개봉 새제품, 디럭스판, 일본 내수용(JP), 한국어 지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'동방 루나 나이츠 (Touhou Luna Nights / 東方ルナナイツ) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 디럭스판 제품입니다.',
'멀티랭기지 지원으로 한국어 플레이가 가능합니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'k8q3mz7r',
createdAt: '2026-02-07',
updatedAt: '2026-02-07',
title: '하이퍼→하이스피드→지니어스',
price: 40000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '초회 한정판',
tags: ['Switch', 'JP', '한국어미지원', 'Limited Edition'],
images: [
'/images/games/k8q3mz7r_01.jpg',
'/images/games/k8q3mz7r_02.jpg',
'/images/games/k8q3mz7r_03.jpg',
'/images/games/k8q3mz7r_04.jpg',
],
description: '미개봉 새제품, 초회 한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: [
'하이퍼→하이스피드→지니어스 (Hyper→Highspeed→Genius / ハイパーハイスピードジーニアス) 닌텐도 스위치용 패키지입니다.',
'일본 내수용(JP) 초회 한정판 제품입니다.',
'한국어를 지원하지 않습니다.',
'미개봉 새제품 상태입니다.',
'',
'',
'',
'',
],
},
{
id: 'p4x8s2ke',
createdAt: '2026-02-07',
updatedAt: '2026-02-07',
title: '스다마 릴레이션',
price: 65000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '완전생산한정판',
tags: ['Switch', 'JP', '한국어미지원', 'Limited Edition'],
images: ['/images/games/p4x8s2ke_01.jpg', '/images/games/p4x8s2ke_02.jpg', '/images/games/p4x8s2ke_03.jpg', '/images/games/p4x8s2ke_04.jpg', '/images/games/p4x8s2ke_05.jpg', '/images/games/p4x8s2ke_06.jpg'],
description: '미개봉 새제품, 완전생산한정판, 일본 내수용(JP), 한국어 미지원',
specs: {
purchaseDate: '',
condition: 'Brand New (미개봉)',
isVerified: true,
},
fullDescription: ['스다마 릴레이션 (すだまリレイシヨン) 닌텐도 스위치용 패키지입니다.', '일본 내수용(JP) 완전생산한정판 제품입니다.', '한국어를 지원하지 않습니다.', '미개봉 새제품 상태입니다.', '', '클리어 파일은 존재는 하지만 상태는 좋지 않습니다.', '', ''],
},
{
id: 'm7t4q9bx',
createdAt: '2026-02-06',
updatedAt: '2026-02-06',
title: '파이어 엠블렘 무쌍 풍화설월',
price: 50000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '',
tags: ['Switch', 'Nintendo', 'KR'],
images: ['/images/games/m7t4q9bx_01.jpg', '/images/games/m7t4q9bx_02.jpg', '/images/games/m7t4q9bx_03.jpg'],
description: '개봉품, 한국 정식 발매판(KR), 상태 매우 양호',
specs: {
purchaseDate: '',
condition: 'Excellent (개봉품, 상태 매우 양호)',
isVerified: true,
},
fullDescription: ['파이어 엠블렘 무쌍 풍화설월 (ファイアーエムブレム無双 風花雪月) 닌텐도 스위치용 패키지입니다.', '한국 정식 발매판(KR) 제품입니다.', '', '개봉 후 OPP에 넣어 보관·관리했으며', '전체적으로 상태가 매우 좋은 편입니다.', '', '', ''],
},
{
id: 'k3p9x2qa',
createdAt: '2026-02-06',
updatedAt: '2026-02-06',
title: '젤다무쌍 하이랄의 전설들 DX',
price: 50000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '',
tags: ['Switch', 'Nintendo', 'KR'],
images: ['/images/games/k3p9x2qa_01.jpg', '/images/games/k3p9x2qa_02.jpg', '/images/games/k3p9x2qa_03.jpg'],
description: '개봉품, 한국 정식 발매판(KR), 상태 매우 양호',
specs: {
purchaseDate: '',
condition: 'Excellent (개봉품, 상태 매우 양호)',
isVerified: true,
},
fullDescription: ['젤다무쌍 하이랄의 전설들 DX (ゼルダ無双 ハイラルオールスターズ DX) 닌텐도 스위치용 패키지입니다.', '한국 정식 발매판(KR) 제품입니다.', '', '개봉 후 OPP에 넣어 보관·관리했으며', '전체적으로 상태가 매우 좋은 편입니다.', '', '', ''],
},
{
id: 'r8k2v4pd',
createdAt: '2026-02-06',
updatedAt: '2026-02-06',
title: '얼라이언스 얼라이브 HD Remastered',
price: 50000,
currency: '₩',
category: 'Games',
status: '판매중',
customTag: '',
tags: ['Switch', 'KR'],
images: ['/images/games/r8k2v4pd_01.jpg', '/images/games/r8k2v4pd_02.jpg', '/images/games/r8k2v4pd_03.jpg'],
description: '개봉품, 한국 정식 발매판(KR), 상태 매우 양호',
specs: {
purchaseDate: '',
condition: 'Excellent (개봉품, 상태 매우 양호)',
isVerified: true,
},
fullDescription: ['얼라이언스 얼라이브 HD Remastered (アライアンス・アライブ HDリマスター) 닌텐도 스위치용 패키지입니다.', '한국 정식 발매판(KR) 제품입니다.', '', '개봉 후 OPP에 넣어 보관·관리했으며', '전체적으로 상태가 매우 좋은 편입니다.', '', '', ''],
},
{
id: 'a7k3m9q2',
createdAt: '2026-02-05',

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 MiB

View File

@@ -132,13 +132,13 @@
</div>
<section class="px-6 md:px-40 pt-6 -mb-4">
<div class="flex items-center justify-between">
<div class="flex items-center gap-2">
<span class="text-slate-400 dark:text-slate-500 text-xs font-bold uppercase tracking-widest">Total Results</span>
<span id="total-count" class="px-2 py-0.5 rounded bg-primary/10 text-primary text-sm font-bold">0</span>
</div>
</div>
</section>
<div class="flex items-center justify-between">
<div class="flex items-center gap-2">
<span class="text-slate-400 dark:text-slate-500 text-xs font-bold uppercase tracking-widest">Total Results</span>
<span id="total-count" class="px-2 py-0.5 rounded bg-primary/10 text-primary text-sm font-bold">0</span>
</div>
</div>
</section>
<!-- Product Grid -->
<div class="px-6 md:px-40 py-10">
<div id="product-grid" class="grid grid-cols-2 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 2xl:grid-cols-5 gap-8">
@@ -197,7 +197,7 @@
<span id="modal-custom-tag" class="inline-flex shrink-0 px-2 py-0.5 sm:px-2.5 sm:py-1 rounded-md sm:rounded-lg text-[10px] sm:text-[11px] md:text-xs font-bold uppercase tracking-wider whitespace-nowrap"></span>
</div>
<!-- Title: 중간 사이즈까지 단계별 크기 + 자연스러운 줄바꿈 -->
<h1 id="modal-title" class="text-[#111418] dark:text-white text-lg sm:text-xl md:text-2xl lg:text-3xl font-black leading-tight tracking-tight mb-2 wrap-break-word hyphens-auto">Sony WH-1000XM5 Noise Canceling Headphones</h1>
<h1 id="modal-title" class="text-[#111418] dark:text-white text-lg sm:text-xl md:text-2xl lg:text-3xl font-black leading-tight tracking-tight mb-2 wrap-break-word hyphens-auto break-keep">Sony WH-1000XM5 Noise Canceling Headphones</h1>
<!-- Price: 중간 사이즈 대응 -->
<p id="modal-price" class="text-[#111418] dark:text-white text-xl sm:text-2xl md:text-3xl lg:text-4xl font-bold mb-6 sm:mb-8">₩320,000</p>
<!-- Spec List: 라벨/값 줄바꿈 정리 -->
@@ -224,13 +224,19 @@
</div>
</div>
<!-- Footer / CTA: 항상 하단 고정, 버튼이 설명 위로 겹치지 않음 -->
<div class="shrink-0 pt-4 pb-6 px-4 sm:px-6 md:px-8 lg:px-10 border-t border-gray-100 dark:border-gray-800 bg-white dark:bg-background-dark">
<button id="copy-link-btn" class="w-full flex items-center justify-center gap-2 bg-slate-900 dark:bg-white dark:text-slate-900 text-white font-bold py-4 px-6 rounded-xl transition-all shadow-lg">
<span class="material-symbols-outlined">link</span>
<span id="copy-btn-text">상품 링크 복사하기</span>
</button>
<p class="text-center text-xs text-gray-400 dark:text-gray-500 mt-4 font-medium">링크를 복사해 문의 시 전달해주세요.</p>
</div>
<div class="flex flex-col gap-2 shrink-0 pt-4 pb-6 px-4 sm:px-6 md:px-8 lg:px-10 border-t border-gray-100 dark:border-gray-800 bg-white dark:bg-background-dark">
<button id="copy-link-btn" class="w-full flex items-center justify-center gap-2 bg-slate-900 dark:bg-white dark:text-slate-900 text-white font-bold py-4 px-6 rounded-xl transition-all shadow-lg">
<span class="material-symbols-outlined">link</span>
<span id="copy-btn-text">상품 링크 복사하기</span>
</button>
<a href="https://open.kakao.com/o/sPZ3Cnfi" target="_blank" class="w-full flex items-center justify-center gap-2 bg-[#fae100] text-[#3c1e1e] font-bold py-4 px-6 rounded-xl transition-all shadow-lg hover:bg-[#f7d600]">
<span class="material-symbols-outlined">chat_bubble</span>
<span>오픈카톡으로 문의하기</span>
</a>
<p class="text-center text-xs text-gray-400 dark:text-gray-500 mt-2 font-medium">링크를 복사해 문의 시 전달해주세요.</p>
</div>
</div>
</div>
</div>