Fix : 프랍 페이지 수정

This commit is contained in:
68893236+KINDNICK@users.noreply.github.com 2026-01-08 21:07:41 +09:00
parent 77662aefa6
commit 3ed9b52b81
3 changed files with 27 additions and 10 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -185,6 +185,22 @@
border-radius: var(--border-radius-sm); border-radius: var(--border-radius-sm);
} }
.card-folder {
position: absolute;
bottom: var(--spacing-sm);
left: var(--spacing-sm);
padding: var(--spacing-xs) var(--spacing-sm);
background: rgba(0, 0, 0, 0.7);
color: rgba(255, 255, 255, 0.9);
font-size: var(--font-xs);
font-weight: 500;
border-radius: var(--border-radius-sm);
max-width: calc(100% - var(--spacing-md));
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.card-content { .card-content {
padding: var(--spacing-md); padding: var(--spacing-md);
} }

View File

@ -106,9 +106,9 @@
function filterAndRender() { function filterAndRender() {
// 필터링 // 필터링
filteredData = propsData.filter(prop => { filteredData = propsData.filter(prop => {
// 검색 필터 // 검색 필터 - 프리펩 이름과 폴더 이름 모두 검색
if (searchQuery) { if (searchQuery) {
const searchTarget = prop.name.toLowerCase(); const searchTarget = `${prop.name} ${prop.folderName || ''}`.toLowerCase();
if (!searchTarget.includes(searchQuery)) { if (!searchTarget.includes(searchQuery)) {
return false; return false;
} }
@ -171,21 +171,22 @@
? `<img src="${escapeHtml(prop.thumbnailUrl)}" alt="${escapeHtml(prop.name)}" loading="lazy">` ? `<img src="${escapeHtml(prop.thumbnailUrl)}" alt="${escapeHtml(prop.name)}" loading="lazy">`
: `<div class="no-thumbnail">🎁</div>`; : `<div class="no-thumbnail">🎁</div>`;
const prefabBadge = prop.prefabCount > 1 // 폴더 이름이 프리펩 이름과 다르면 폴더 배지 표시
? `<span class="card-badge">${prop.prefabCount} variants</span>` const folderBadge = (prop.folderName && prop.folderName !== prop.name)
? `<span class="card-folder">${escapeHtml(prop.folderName)}</span>`
: ''; : '';
return ` return `
<div class="prop-card" data-prop="${escapeHtml(prop.name)}"> <div class="prop-card" data-prop="${escapeHtml(prop.name)}">
<div class="card-thumbnail"> <div class="card-thumbnail">
${thumbnailHtml} ${thumbnailHtml}
${prefabBadge} ${folderBadge}
</div> </div>
<div class="card-content"> <div class="card-content">
<h3 class="card-title">${escapeHtml(prop.name)}</h3> <h3 class="card-title">${escapeHtml(prop.name)}</h3>
<div class="card-info"> <div class="card-info">
${prop.prefabCount > 0 ? `<span class="card-info-item"><span class="icon">📦</span>${prop.prefabCount}</span>` : ''}
${prop.modelCount > 0 ? `<span class="card-info-item"><span class="icon">🎨</span>${prop.modelCount}</span>` : ''} ${prop.modelCount > 0 ? `<span class="card-info-item"><span class="icon">🎨</span>${prop.modelCount}</span>` : ''}
${prop.textureCount > 0 ? `<span class="card-info-item"><span class="icon">🖼️</span>${prop.textureCount}</span>` : ''}
</div> </div>
</div> </div>
</div> </div>
@ -215,11 +216,11 @@
// 상세 정보 표시 // 상세 정보 표시
elements.modalDetails.innerHTML = ` elements.modalDetails.innerHTML = `
${prop.prefabCount > 0 ? ` ${(prop.folderName && prop.folderName !== prop.name) ? `
<div class="modal-detail-item"> <div class="modal-detail-item">
<span class="icon">📦</span> <span class="icon">📁</span>
<span>프리펩</span> <span>폴더</span>
<strong>${prop.prefabCount}</strong> <strong>${escapeHtml(prop.folderName)}</strong>
</div> </div>
` : ''} ` : ''}
${prop.modelCount > 0 ? ` ${prop.modelCount > 0 ? `