/**
 * spinNormalize.cjs
 * Reine Spin-Normalisierung: [0, 360) ohne I/O.
 * CommonJS damit Jest (CJS) und ESM-Server dieselbe Funktion nutzen.
 */

/**
 * Normalisiert einen Spin-Winkel auf [0, 360).
 * Negative Werte und Werte ≥ 360 werden korrekt behandelt.
 *
 * @param {number|string} spin  Spin in Grad (kann negativ oder > 360 sein)
 * @returns {number}  Spin in Grad, 0 ≤ result < 360
 */
function normalizeSpinDeg(spin) {
  return ((Number(spin) % 360) + 360) % 360;
}

module.exports = { normalizeSpinDeg };
