{"version":3,"sources":["PaceConverter.js","RunningHelpers.js"],"names":["PaceConverter","constructor","formId","mode","outputId","this","_output","_minutes","_seconds","initializeForm","minutes","value","parsedValue","parseInt","isNaN","seconds","form","document","getElementById","addEventListener","target","event","name","handleInputChange","id","convert","console","error","warn","minutesPerMileToMinutesPerKm","minutesPerKmToMinutesPerMile","printResult","let","totalSeconds","newMinutes","Math","floor","RunningHelpers","MileInKm","newSeconds","round","time","Date","printTime","div","innerHTML","showHours","hours","getHours","getMinutes","getSeconds","result","toString","padStart"],"mappings":"MAAAA,cACAC,YAAAC,EAAAC,EAAAC,GACAC,KAAAH,OAAAA,EACAG,KAAAF,KAAAA,EACAE,KAAAD,SAAAA,EACAC,KAAAC,QAAA,QACAD,KAAAE,SAAA,EACAF,KAAAG,SAAA,EACAH,KAAAI,eAAA,CACA,CACAC,YAAAC,GACAC,EAAAC,SAAAF,EAAA,EAAA,EACAN,KAAAE,SAAAO,MAAAF,CAAA,EAAA,EAAAA,CACA,CACAG,YAAAJ,GACAC,EAAAC,SAAAF,EAAA,EAAA,EACAN,KAAAG,SAAAM,MAAAF,CAAA,EAAA,EAAAA,CACA,CACAH,iBACA,IAAAO,EAAAC,SAAAC,eAAAb,KAAAH,MAAA,EACAc,GAIAA,EAAAG,iBAAA,QAAA,IACAC,EAAAC,EAAAD,OACAA,EAAAE,MACAjB,KAAAkB,kBAAAH,EAAAT,MAAAS,EAAAE,IAAA,CAEA,CAAA,EACAN,EAAAG,iBAAA,QAAA,IAEA,WADAE,EAAAD,OACAI,IACAnB,KAAAoB,QAAA,CAEA,CAAA,GAdAC,QAAAC,MAAA,gBAAA,CAeA,CACAJ,kBAAAZ,EAAAW,GACAA,KAAAjB,KACAA,KAAAiB,GAAAX,EAGAe,QAAAE,KAAA,+BAAAN,CAAA,CAEA,CACAG,UACA,GAAApB,KAAAF,KACAE,KAAAwB,6BAAA,EAGAxB,KAAAyB,6BAAA,EAEAzB,KAAA0B,YAAA,CACA,CACAD,+BACAE,IAAAC,EAAA,GAAA5B,KAAAE,SAAAF,KAAAG,SACA0B,EAAAC,KAAAC,MAAAH,EAAAI,eAAAC,SAAA,EAAA,EACAC,EAAAJ,KAAAK,MAAAP,EAAAI,eAAAC,SAAA,EAAA,EACAG,EAAA,IAAAC,KAAA,EAAA,EAAA,EAAA,EAAAR,EAAAK,CAAA,EACAlC,KAAAC,QAAA+B,eAAAM,UAAAF,EAAA,CAAA,CAAA,CACA,CACAZ,+BACAG,IAAAC,EAAA,GAAA5B,KAAAE,SAAAF,KAAAG,SACA0B,EAAAC,KAAAC,MAAAH,EAAAI,eAAAC,SAAA,EAAA,EACAC,EAAAJ,KAAAK,MAAAP,EAAAI,eAAAC,SAAA,EAAA,EACAG,EAAA,IAAAC,KAAA,EAAA,EAAA,EAAA,EAAAR,EAAAK,CAAA,EACAlC,KAAAC,QAAA+B,eAAAM,UAAAF,EAAA,CAAA,CAAA,CACA,CACAV,cACA,IAAAa,EAAA3B,SAAAC,eAAAb,KAAAD,QAAA,EACAwC,IACAA,EAAAC,UAAAxC,KAAAC,QAEA,CACA,OC1EA+B,eACAM,iBAAAF,EAAAK,GACAd,IAAAe,EAAAN,EAAAO,SAAA,EACAtC,EAAA+B,EAAAQ,WAAA,EACAlC,EAAA0B,EAAAS,WAAA,EACAlB,IAAAmB,EAAA,GAKA,OAJAL,IACAK,GAAAJ,EAAAK,SAAA,EAAAC,SAAA,EAAA,GAAA,EAAA,KAEAF,GAAAzC,EAAA0C,SAAA,EAAAC,SAAA,EAAA,GAAA,EAAA,IAAAtC,EAAAqC,SAAA,EAAAC,SAAA,EAAA,GAAA,CAEA,CACA,CACAhB,eAAAC,SAAA","file":"runtools.min.js","sourcesContent":["class PaceConverter {\n constructor(formId, mode, outputId) {\n this.formId = formId;\n this.mode = mode;\n this.outputId = outputId;\n this._output = \"00:00\";\n this._minutes = 0;\n this._seconds = 0;\n this.initializeForm();\n }\n set minutes(value) {\n const parsedValue = parseInt(value, 10);\n this._minutes = isNaN(parsedValue) ? 0 : parsedValue;\n }\n set seconds(value) {\n const parsedValue = parseInt(value, 10);\n this._seconds = isNaN(parsedValue) ? 0 : parsedValue;\n }\n initializeForm() {\n const form = document.getElementById(this.formId);\n if (!form) {\n console.error(\"Form not found\");\n return;\n }\n form.addEventListener('input', (event) => {\n const target = event.target;\n if (target.name) {\n this.handleInputChange(target.value, target.name);\n }\n });\n form.addEventListener('click', (event) => {\n const target = event.target;\n if (target.id == \"convert\") {\n this.convert();\n }\n });\n }\n handleInputChange(value, name) {\n if (name in this) {\n this[name] = value;\n }\n else {\n console.warn(`No property found for name: ${name}`);\n }\n }\n convert() {\n if (this.mode == 1) {\n this.minutesPerMileToMinutesPerKm();\n }\n else {\n this.minutesPerKmToMinutesPerMile();\n }\n this.printResult();\n }\n minutesPerKmToMinutesPerMile() {\n let totalSeconds = this._minutes * 60 + this._seconds;\n let newMinutes = Math.floor(totalSeconds * RunningHelpers.MileInKm / 60);\n let newSeconds = Math.round((totalSeconds * RunningHelpers.MileInKm) % 60);\n let time = new Date(0, 0, 0, 0, newMinutes, newSeconds);\n this._output = RunningHelpers.printTime(time, false);\n }\n minutesPerMileToMinutesPerKm() {\n let totalSeconds = this._minutes * 60 + this._seconds;\n let newMinutes = Math.floor(totalSeconds / RunningHelpers.MileInKm / 60);\n let newSeconds = Math.round((totalSeconds / RunningHelpers.MileInKm) % 60);\n let time = new Date(0, 0, 0, 0, newMinutes, newSeconds);\n this._output = RunningHelpers.printTime(time, false);\n }\n printResult() {\n var div = document.getElementById(this.outputId);\n if (div) {\n div.innerHTML = this._output;\n }\n }\n}\n//# sourceMappingURL=PaceConverter.js.map","class RunningHelpers {\n static printTime(time, showHours) {\n let hours = time.getHours();\n let minutes = time.getMinutes();\n let seconds = time.getSeconds();\n let result = \"\";\n if (showHours) {\n result += hours.toString().padStart(2, '0') + \":\";\n }\n result += minutes.toString().padStart(2, '0') + \":\" + seconds.toString().padStart(2, '0');\n return result;\n }\n}\nRunningHelpers.MileInKm = 1.609344;\n//# sourceMappingURL=RunningHelpers.js.map"]}