import { showModal, closeModal, stepperHtml } from './modal-base.js';
import { formatShortDate, formatSet } from '../utils.js';
let _data = {};
let _cb = null;
export function showSetDialog(existingSet, history, callback) {
_cb = callback;
const isEdit = !!existingSet;
const isDropset = existingSet?.isDropset || false;
let historyHtml = '';
if (history?.length) {
const rows = history.map(h => `
${isEdit ? 'Редактировать' : 'Новый'} подход
${historyHtml}
${stepperHtml('m-set-weight', existingSet?.weight ?? '', 0.5, 'Вес')}
${stepperHtml('m-set-reps', existingSet?.reps ?? '', 1, 'Повт.', 'numeric')}
${[1,2,3,4,5].map(r => ``).join('')}
`);
_data = {
isDropset, rating: existingSet?.rating || 3,
subSets: existingSet?.subSets ? JSON.parse(JSON.stringify(existingSet.subSets)) : [],
};
if (isDropset) { if (!_data.subSets.length) addSubset(); else renderSubsets(); }
rating(_data.rating);
}
export function toggleDropset() {
_data.isDropset = document.getElementById('m-set-dropset').checked;
document.getElementById('m-set-normal').classList.toggle('hidden', _data.isDropset);
document.getElementById('m-set-dropset-block').classList.toggle('hidden', !_data.isDropset);
if (_data.isDropset && !_data.subSets.length) addSubset();
else if (_data.isDropset) renderSubsets();
}
export function addSubset() {
const last = _data.subSets[_data.subSets.length - 1];
_data.subSets.push({ weight: last?.weight || '', reps: last?.reps || '' });
renderSubsets();
}
export function renderSubsets() {
document.getElementById('m-subsets-list').innerHTML = _data.subSets.map((s, i) => `