import { getPartners } from '../services/partners-service.js';
import { createElement } from '../utils/dom.js';
import { observeReveals } from '../animations/reveal-observer.js';
import { shouldReduceEffects } from '../utils/device-capability.js';
function createPartnerItem(partner) {
const item = createElement('div', 'partner-item');
let imgHTML;
if (partner.logo) {
if (partner.logoSmall) {
imgHTML = `
`;
} else {
imgHTML = `
`;
}
} else {
imgHTML = '';
}
const inner = partner.link
? `${imgHTML}`
: imgHTML;
item.innerHTML = inner;
return item;
}
export async function initPartnersSection() {
const grid = document.getElementById('partners-grid');
if (!grid) return;
try {
const partners = await getPartners();
grid.innerHTML = '';
partners.forEach((partner) => grid.appendChild(createPartnerItem(partner)));
if (shouldReduceEffects()) {
grid.classList.add('in-view');
} else {
observeReveals(grid);
}
} catch (error) {
grid.innerHTML = '';
}
}