import { NInputGroup, NInputGroupLabel, NInputNumber } from 'naive-ui'; import { defineComponent, reactive, unref, withCtx, createTextVNode, toDisplayString, createVNode, useSSRContext } from 'vue'; import { ssrRenderAttrs, ssrRenderList, ssrRenderComponent, ssrInterpolate } from 'vue/server-renderer'; import _ from 'lodash'; const convertCelsiusToKelvin = (temperature) => temperature + 273.15; const convertKelvinToCelsius = (temperature) => temperature - 273.15; const convertFahrenheitToKelvin = (temperature) => (temperature + 459.67) * (5 / 9); const convertKelvinToFahrenheit = (temperature) => temperature * (9 / 5) - 459.67; const convertRankineToKelvin = (temperature) => temperature * (5 / 9); const convertKelvinToRankine = (temperature) => temperature * (9 / 5); const convertDelisleToKelvin = (temperature) => 373.15 - 2 / 3 * temperature; const convertKelvinToDelisle = (temperature) => 3 / 2 * (373.15 - temperature); const convertNewtonToKelvin = (temperature) => temperature * (100 / 33) + 273.15; const convertKelvinToNewton = (temperature) => (temperature - 273.15) * (33 / 100); const convertReaumurToKelvin = (temperature) => temperature * (5 / 4) + 273.15; const convertKelvinToReaumur = (temperature) => (temperature - 273.15) * (4 / 5); const convertRomerToKelvin = (temperature) => (temperature - 7.5) * (40 / 21) + 273.15; const convertKelvinToRomer = (temperature) => (temperature - 273.15) * (21 / 40) + 7.5; const _sfc_main = /* @__PURE__ */ defineComponent({ __name: "temperature-converter", __ssrInlineRender: true, setup(__props) { const units = reactive({ kelvin: { title: "Kelvin", unit: "K", ref: 0, toKelvin: _.identity, fromKelvin: _.identity }, celsius: { title: "Celsius", unit: "°C", ref: 0, toKelvin: convertCelsiusToKelvin, fromKelvin: convertKelvinToCelsius }, fahrenheit: { title: "Fahrenheit", unit: "°F", ref: 0, toKelvin: convertFahrenheitToKelvin, fromKelvin: convertKelvinToFahrenheit }, rankine: { title: "Rankine", unit: "°R", ref: 0, toKelvin: convertRankineToKelvin, fromKelvin: convertKelvinToRankine }, delisle: { title: "Delisle", unit: "°De", ref: 0, toKelvin: convertDelisleToKelvin, fromKelvin: convertKelvinToDelisle }, newton: { title: "Newton", unit: "°N", ref: 0, toKelvin: convertNewtonToKelvin, fromKelvin: convertKelvinToNewton }, reaumur: { title: "Réaumur", unit: "°Ré", ref: 0, toKelvin: convertReaumurToKelvin, fromKelvin: convertKelvinToReaumur }, romer: { title: "Rømer", unit: "°Rø", ref: 0, toKelvin: convertRomerToKelvin, fromKelvin: convertKelvinToRomer } }); function update(key) { const { ref: value, toKelvin } = units[key]; const kelvins = toKelvin(value) ?? 0; _.chain(units).omit(key).forEach(({ fromKelvin }, index) => { units[index].ref = Math.floor((fromKelvin(kelvins) ?? 0) * 100) / 100; }).value(); } update("kelvin"); return (_ctx, _push, _parent, _attrs) => { const _component_n_input_group = NInputGroup; const _component_n_input_group_label = NInputGroupLabel; const _component_n_input_number = NInputNumber; _push(`