const XLSX = require('xlsx');
const fs = require('fs');
const path = process.argv[2] || require('path').join(__dirname, 'Act_osmotr_103.xlsx');
const outPath = require('path').join(__dirname, 'act_output.txt');

let out = '';
function log(...args) { const s = args.join(' '); out += s + '\n'; console.log(...args); }

if (!fs.existsSync(path)) {
  log('File not found:', path);
  log('Copy Act_osmotr_103 (1).xlsx to backend folder and run: node read_act_xlsx.js');
  process.exit(1);
}

const wb = XLSX.readFile(path);
log('=== SHEETS ===');
wb.SheetNames.forEach((name, i) => log(i, name));

wb.SheetNames.forEach((name) => {
  log('\n=== SHEET:', name, '===');
  const ws = wb.Sheets[name];
  const ref = ws['!ref'] || 'A1';
  const range = XLSX.utils.decode_range(ref);
  log('Range:', ref, 'rows', range.e.r - range.s.r + 1, 'cols', range.e.c - range.s.c + 1);
  const data = XLSX.utils.sheet_to_json(ws, { header: 1, defval: '' });
  data.slice(0, 150).forEach((row, i) => log(JSON.stringify(row)));
});

fs.writeFileSync(outPath, out, 'utf8');
console.log('Written to', outPath);
