/** 상품 그리드·페이지네이션 렌더링 */ import { state } from './state.js'; import { ITEMS_PER_PAGE, STATUS_META } from './config.js'; export function renderProducts(page) { const grid = document.getElementById('product-grid'); if (!grid) return; grid.innerHTML = ''; const startIndex = (page - 1) * ITEMS_PER_PAGE; const pagedProducts = state.visibleProducts.slice(startIndex, startIndex + ITEMS_PER_PAGE); pagedProducts.forEach((product) => { const isSold = STATUS_META[product.status]?.soldOut === true; const cardHtml = `
${product.currency}${product.price.toLocaleString()}
${product.description}