@jjlmoya/utils-motor 1.3.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/category/index.ts +3 -1
- package/src/entries.ts +5 -1
- package/src/index.ts +10 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/evChargingTimeCostPlanner/bibliography.astro +6 -0
- package/src/tool/evChargingTimeCostPlanner/bibliography.ts +16 -0
- package/src/tool/evChargingTimeCostPlanner/component.astro +147 -0
- package/src/tool/evChargingTimeCostPlanner/controller.ts +214 -0
- package/src/tool/evChargingTimeCostPlanner/dom-views.ts +124 -0
- package/src/tool/evChargingTimeCostPlanner/entry.ts +30 -0
- package/src/tool/evChargingTimeCostPlanner/ev-charging-time-cost-planner.css +598 -0
- package/src/tool/evChargingTimeCostPlanner/evaluator.ts +10 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/de.ts +22 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/en.ts +161 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/es.ts +16 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/factory.ts +113 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/fr.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/id.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/it.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/ja.ts +13 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/ko.ts +13 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/nl.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/pl.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/pt.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/ru.ts +13 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/sv.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/tr.ts +9 -0
- package/src/tool/evChargingTimeCostPlanner/i18n/zh.ts +13 -0
- package/src/tool/evChargingTimeCostPlanner/index.ts +10 -0
- package/src/tool/evChargingTimeCostPlanner/logic.test.ts +71 -0
- package/src/tool/evChargingTimeCostPlanner/logic.ts +174 -0
- package/src/tool/evChargingTimeCostPlanner/seo.astro +15 -0
- package/src/tool/evChargingTimeCostPlanner/storage.ts +27 -0
- package/src/tool/evChargingTimeCostPlanner/ui.ts +50 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/bibliography.astro +6 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/bibliography.ts +12 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/component.astro +166 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/controller.ts +207 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/dom-views.ts +101 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/entry.ts +30 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/evaluator.ts +7 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/de.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/en.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/es.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/fr.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/id.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/it.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ja.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ko.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/nl.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/pl.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/pt.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ru.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/sv.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/tr.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/zh.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/index.ts +10 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/logic.test.ts +229 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/logic.ts +179 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/motorcycle-skid-mark-speed-estimator.css +523 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/seo.astro +15 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/storage.ts +49 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/ui.ts +46 -0
- package/src/tools.ts +5 -1
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
import type { EVChargingTimeCostPlannerUI } from '../ui';
|
|
5
|
+
|
|
6
|
+
const ui: EVChargingTimeCostPlannerUI = {
|
|
7
|
+
defaultCurrency: 'USD',
|
|
8
|
+
currencyLabel: 'Currency',
|
|
9
|
+
currencyHint: 'Choose the currency for the local price and total cost.',
|
|
10
|
+
currencyMenuLabel: 'Select currency',
|
|
11
|
+
currencyFactorTemplate: 'Approximate offline factor: 1 EUR = {factor} {currency}. Update the price for your tariff.',
|
|
12
|
+
presetMetaTemplate: '{power} kW at {symbol}{price} / kWh',
|
|
13
|
+
presetLabel: 'Start with a charging scene',
|
|
14
|
+
homePreset: 'Home',
|
|
15
|
+
publicPreset: 'Public',
|
|
16
|
+
fastPreset: 'Fast',
|
|
17
|
+
resetLabel: 'Reset plan',
|
|
18
|
+
setupLabel: 'Set the charge window',
|
|
19
|
+
setupHint: 'Tell the planner how much usable battery energy you want to add and what the charger costs.',
|
|
20
|
+
chargeWindowLabel: 'Charge window',
|
|
21
|
+
chargeWindowHint: 'The battery percentage before and after this session',
|
|
22
|
+
startSocLabel: 'Start charge',
|
|
23
|
+
startSocHint: 'Battery level now',
|
|
24
|
+
endSocLabel: 'Target charge',
|
|
25
|
+
endSocHint: 'Battery level when you unplug',
|
|
26
|
+
capacityLabel: 'Usable battery capacity',
|
|
27
|
+
capacityHint: 'The energy available to the vehicle, not the advertised gross pack size',
|
|
28
|
+
chargerPowerLabel: 'Charger power',
|
|
29
|
+
chargerPowerHint: 'Use the sustained power you expect, not the connector maximum',
|
|
30
|
+
efficiencyLabel: 'Charging efficiency',
|
|
31
|
+
efficiencyHint: 'Energy that reaches the battery after charging losses',
|
|
32
|
+
priceLabel: 'Electricity price',
|
|
33
|
+
priceHint: 'Approximate local price per kilowatt hour. Edit it for your tariff.',
|
|
34
|
+
consumptionLabel: 'Vehicle consumption',
|
|
35
|
+
consumptionHint: 'Energy used by the vehicle per 100 kilometres',
|
|
36
|
+
resultKicker: 'Energy runway',
|
|
37
|
+
resultTitle: 'A clear plan for this session',
|
|
38
|
+
batterySceneLabel: 'Battery charge scene showing held and added energy',
|
|
39
|
+
startingChargeLabel: 'Already stored',
|
|
40
|
+
targetChargeLabel: 'Target charge',
|
|
41
|
+
batteryEnergyLabel: 'Energy into battery',
|
|
42
|
+
gridEnergyLabel: 'Energy from grid',
|
|
43
|
+
lossesLabel: 'Charging losses',
|
|
44
|
+
timeLabel: 'Estimated time',
|
|
45
|
+
costLabel: 'Estimated cost',
|
|
46
|
+
rangeLabel: 'Range recovered',
|
|
47
|
+
statusEmpty: 'No energy added yet',
|
|
48
|
+
statusShort: 'Quick top up',
|
|
49
|
+
statusStandard: 'Balanced charge',
|
|
50
|
+
statusLong: 'Long charge window',
|
|
51
|
+
summaryTemplate: 'Add {battery} kWh to recover about {range} km. At {power} kW, the estimate is {time} and the session costs {cost}.',
|
|
52
|
+
formulaLabel: 'How the estimate works',
|
|
53
|
+
formulaText: 'Battery energy = usable capacity × charge window. The local price starts from an approximate EUR price multiplied by the currency factor. Grid energy includes charging losses, so time uses grid energy / charger power and cost uses grid energy × local price.',
|
|
54
|
+
rangeUnit: 'km',
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const faq = [
|
|
58
|
+
{
|
|
59
|
+
question: 'How does the EV charging time calculator estimate the session?',
|
|
60
|
+
answer: 'It multiplies usable battery capacity by the difference between the target and starting state of charge. It then accounts for charging efficiency and divides grid energy by the charger power you enter.',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
question: 'Why is grid energy higher than energy stored in the battery?',
|
|
64
|
+
answer: 'Charging is not perfectly efficient. The efficiency input represents the share of electricity that reaches the battery, so the planner includes the remainder as charging losses.',
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
question: 'Does the result include the charging curve of my car?',
|
|
68
|
+
answer: 'No. The estimate uses the sustained charger power you enter. Real vehicles may reduce power near a high state of charge, and the charger or installation may also limit power.',
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
question: 'How is recovered range calculated?',
|
|
72
|
+
answer: 'The planner divides battery energy added by vehicle consumption in kilowatt hours per 100 kilometres. It is an estimate of usable driving range, not a promise about a route or weather conditions.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
question: 'How does the currency selector change the price?',
|
|
76
|
+
answer: 'Each currency has an offline reference factor against the euro. Switching currency converts the visible electricity price and total cost while keeping the same approximate tariff. Update the price if your local rate differs because exchange rates and electricity tariffs change.',
|
|
77
|
+
},
|
|
78
|
+
];
|
|
79
|
+
|
|
80
|
+
const howTo = [
|
|
81
|
+
{ name: 'Choose a charging scene', text: 'Start with Home, Public, or Fast to load a realistic power and price example.' },
|
|
82
|
+
{ name: 'Set the charge window', text: 'Enter the usable battery capacity and the starting and target state of charge.' },
|
|
83
|
+
{ name: 'Tune the charging conditions', text: 'Adjust sustained charger power, charging efficiency, electricity price, and vehicle consumption.' },
|
|
84
|
+
{ name: 'Read the energy runway', text: 'Use the visual battery and result metrics to see stored energy, grid energy, time, cost, losses, and recovered range.' },
|
|
85
|
+
];
|
|
86
|
+
|
|
87
|
+
const schemas: ToolLocaleContent<EVChargingTimeCostPlannerUI>['schemas'] = [
|
|
88
|
+
{
|
|
89
|
+
'@context': 'https://schema.org',
|
|
90
|
+
'@type': 'FAQPage',
|
|
91
|
+
mainEntity: faq.map((item) => ({
|
|
92
|
+
'@type': 'Question',
|
|
93
|
+
name: item.question,
|
|
94
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
95
|
+
})),
|
|
96
|
+
} as WithContext<FAQPage>,
|
|
97
|
+
{
|
|
98
|
+
'@context': 'https://schema.org',
|
|
99
|
+
'@type': 'HowTo',
|
|
100
|
+
name: 'Plan an electric vehicle charging session',
|
|
101
|
+
description: 'Estimate energy, time, cost, losses, and recovered range for an EV charging session.',
|
|
102
|
+
step: howTo.map((step, index) => ({
|
|
103
|
+
'@type': 'HowToStep',
|
|
104
|
+
position: index + 1,
|
|
105
|
+
name: step.name,
|
|
106
|
+
text: step.text,
|
|
107
|
+
})),
|
|
108
|
+
} as WithContext<HowTo>,
|
|
109
|
+
{
|
|
110
|
+
'@context': 'https://schema.org',
|
|
111
|
+
'@type': 'SoftwareApplication',
|
|
112
|
+
name: 'EV Charging Time and Cost Planner',
|
|
113
|
+
description: 'Estimate electric vehicle charging time, electricity cost, charging losses, and recovered range locally in your browser.',
|
|
114
|
+
applicationCategory: 'UtilitiesApplication',
|
|
115
|
+
operatingSystem: 'All',
|
|
116
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
117
|
+
inLanguage: 'en',
|
|
118
|
+
} as WithContext<SoftwareApplication>,
|
|
119
|
+
];
|
|
120
|
+
|
|
121
|
+
export const content: ToolLocaleContent<EVChargingTimeCostPlannerUI> = {
|
|
122
|
+
slug: 'ev-charging-time-cost-planner',
|
|
123
|
+
title: 'EV Charging Time and Cost Planner',
|
|
124
|
+
description: 'Estimate electric vehicle charging time, electricity cost, charging losses, and recovered range from your battery and charger settings.',
|
|
125
|
+
ui,
|
|
126
|
+
faqTitle: 'Frequently asked questions',
|
|
127
|
+
faq,
|
|
128
|
+
howTo,
|
|
129
|
+
bibliographyTitle: 'Bibliographic references',
|
|
130
|
+
bibliography: bibliographyEntries,
|
|
131
|
+
schemas,
|
|
132
|
+
seo: [
|
|
133
|
+
{ type: 'title', text: 'Plan the Energy Behind an EV Charging Session', level: 2 },
|
|
134
|
+
{ type: 'paragraph', html: 'This planner turns a charge window into a practical estimate. Enter the usable battery capacity, starting and target charge, sustained charger power, efficiency, price, and vehicle consumption to see what the grid supplies, how long the session may take, what it costs, and how much range the battery can recover.' },
|
|
135
|
+
{
|
|
136
|
+
type: 'stats',
|
|
137
|
+
columns: 3,
|
|
138
|
+
items: [
|
|
139
|
+
{ value: 'kWh', label: 'Battery and grid energy' },
|
|
140
|
+
{ value: 'Minutes', label: 'Estimated session time' },
|
|
141
|
+
{ value: 'Local', label: 'Cost at your tariff' },
|
|
142
|
+
],
|
|
143
|
+
},
|
|
144
|
+
{ type: 'title', text: 'Battery Energy and Grid Energy Are Different', level: 2 },
|
|
145
|
+
{ type: 'paragraph', html: 'The battery receives only part of the electricity drawn from the grid. The calculator divides energy added to the battery by charging efficiency to account for losses in the onboard charger, cable, battery temperature management, and related equipment. Use a realistic sustained power value because a connector rating is not always the power a vehicle can hold.' },
|
|
146
|
+
{
|
|
147
|
+
type: 'table',
|
|
148
|
+
headers: ['What you enter', 'What the planner does', 'What you get'],
|
|
149
|
+
rows: [
|
|
150
|
+
['Usable capacity and charge window', 'Capacity × (target charge − starting charge)', 'Energy stored in the battery'],
|
|
151
|
+
['Battery energy and efficiency', 'Battery energy ÷ efficiency', 'Energy drawn from the grid'],
|
|
152
|
+
['Grid energy and charger power', 'Grid energy ÷ charger power', 'Estimated charging time'],
|
|
153
|
+
['Grid energy and electricity price', 'Grid energy × price', 'Estimated session cost'],
|
|
154
|
+
],
|
|
155
|
+
},
|
|
156
|
+
{ type: 'title', text: 'Read the Estimate as a Planning Range', level: 2 },
|
|
157
|
+
{ type: 'paragraph', html: 'A simple power estimate is most useful for comparing scenarios and deciding whether a session fits your parking window. It does not model the vehicle specific charging curve, battery temperature, queue time, demand charges, taxes, subscriptions, or a charger that is shared with another vehicle.' },
|
|
158
|
+
{ type: 'tip', title: 'Use sustained power for a more honest estimate', html: 'If your car reaches a high peak only briefly, enter the power it can maintain through most of the charge window. For a conservative plan, slightly reduce the power or add time after reading the result.' },
|
|
159
|
+
{ type: 'paragraph', html: 'Use the estimate as a planning guide: real sessions can vary when charging power tapers, temperatures change, or the vehicle shares a connection.' },
|
|
160
|
+
],
|
|
161
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
const content = createLocalizedContent({
|
|
4
|
+
locale: 'es', currency: 'EUR', slug: 'calculadora-tiempo-coste-carga-coche-electrico', title: 'Calculadora de tiempo y coste de carga del coche electrico', description: 'Calcula el tiempo de carga, el coste de electricidad, las perdidas y la autonomia recuperada en una sesion.', faqTitle: 'Preguntas frecuentes', bibliographyTitle: 'Referencias bibliograficas',
|
|
5
|
+
ui: { defaultCurrency: 'EUR', currencyLabel: 'Moneda', currencyHint: 'Elige la moneda del precio local y del coste total.', currencyMenuLabel: 'Seleccionar moneda', currencyFactorTemplate: 'Factor aproximado sin conexion: 1 EUR = {factor} {currency}. Actualiza el precio para tu tarifa.', presetLabel: 'Empieza con una escena de carga', homePreset: 'Casa', publicPreset: 'Publica', fastPreset: 'Rapida', resetLabel: 'Reiniciar plan', setupLabel: 'Define la ventana de carga', setupHint: 'Indica cuanta energia util quieres anadir y cuanto cuesta el cargador.', chargeWindowLabel: 'Ventana de carga', chargeWindowHint: 'Porcentaje de bateria antes y despues de esta sesion', startSocLabel: 'Carga inicial', startSocHint: 'Nivel actual de bateria', endSocLabel: 'Carga objetivo', endSocHint: 'Nivel de bateria al desconectar', capacityLabel: 'Capacidad util de la bateria', chargerPowerLabel: 'Potencia del cargador', efficiencyLabel: 'Eficiencia de carga', priceLabel: 'Precio de la electricidad', priceHint: 'Precio local aproximado por kilovatio hora. Editalo para tu tarifa.', consumptionLabel: 'Consumo del vehiculo', resultKicker: 'Autonomia energetica', resultTitle: 'Un plan claro para esta sesion', startingChargeLabel: 'Ya almacenada', targetChargeLabel: 'Carga objetivo', batteryEnergyLabel: 'Energia en bateria', gridEnergyLabel: 'Energia de la red', lossesLabel: 'Perdidas de carga', timeLabel: 'Tiempo estimado', costLabel: 'Coste estimado', rangeLabel: 'Autonomia recuperada', statusEmpty: 'Aun no se anade energia', statusShort: 'Recarga rapida', statusStandard: 'Carga equilibrada', statusLong: 'Ventana de carga larga', summaryTemplate: 'Anade {battery} kWh para recuperar unos {range} km. A {power} kW, tardara {time} y costara {cost}.', formulaLabel: 'Como funciona la estimacion', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: '¿Como estima la sesion la calculadora?', answer: 'Multiplica la capacidad util por la diferencia entre la carga objetivo y la inicial. Despues tiene en cuenta la eficiencia y divide la energia de red entre la potencia del cargador.' }, { question: '¿Por que la energia de red es mayor que la energia guardada?', answer: 'La carga no es perfectamente eficiente. La eficiencia representa la parte de electricidad que llega a la bateria y el resto se muestra como perdidas.' }, { question: '¿Incluye la curva de carga de mi coche?', answer: 'No. Usa la potencia sostenida que introduzcas. El vehiculo puede reducirla cerca de un nivel alto de carga.' }, { question: '¿Como se calcula la autonomia recuperada?', answer: 'Divide la energia anadida a la bateria entre el consumo en kilovatios hora por cada 100 kilometros.' }, { question: '¿Como cambia el precio el selector de moneda?', answer: 'Aplica un factor aproximado sin conexion frente al euro y convierte el precio y el coste total. Ajusta el precio si tu tarifa local es diferente.' } ],
|
|
7
|
+
howTo: [ { name: 'Elige una escena de carga', text: 'Selecciona Casa, Publica o Rapida para cargar un ejemplo realista.' }, { name: 'Define la ventana de carga', text: 'Introduce la capacidad y los niveles inicial y objetivo.' }, { name: 'Ajusta las condiciones', text: 'Modifica potencia, eficiencia, moneda, precio y consumo.' }, { name: 'Lee la autonomia energetica', text: 'Consulta energia de bateria, red, tiempo, coste, perdidas y autonomia.' } ],
|
|
8
|
+
seo: { introTitle: 'Planifica la energia de una sesion de carga', introText: 'Esta calculadora convierte una ventana de carga en una estimacion practica. Introduce capacidad, niveles de bateria, potencia, eficiencia, precio y consumo para conocer la energia de red, el tiempo, el coste y los kilometros recuperados.', formulaTitle: 'Formulas utilizadas', formulaText: 'La energia de bateria es la capacidad util multiplicada por la ventana de carga. La energia de red es la energia de bateria dividida por la eficiencia. El tiempo usa energia de red dividida por potencia y el coste usa energia de red multiplicada por el precio local.', tableHeaders: ['Dato introducido', 'Transformacion', 'Resultado'], tableRows: [['Capacidad y ventana', 'Capacidad × ventana', 'Energia almacenada'], ['Energia y eficiencia', 'Energia ÷ eficiencia', 'Energia de red'], ['Energia de red y potencia', 'Energia ÷ potencia', 'Tiempo estimado'], ['Energia de red y precio', 'Energia × precio', 'Coste estimado']], limitsTitle: 'El resultado es una guia de planificacion', limitsText: 'No modela la curva de carga, la temperatura de la bateria, las colas, los impuestos, las suscripciones ni un cargador compartido. Usa una potencia sostenida realista.', tipTitle: 'Usa la potencia sostenida', tipText: 'Si el coche alcanza su pico solo durante unos minutos, introduce la potencia que puede mantener durante la mayor parte de la sesion.', energyStat: 'Energia de bateria y red', timeStat: 'Tiempo estimado de sesion', costStat: 'Coste con tu tarifa' },
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
content.title = 'Calculadora de tiempo y coste de carga del coche eléctrico';
|
|
12
|
+
content.ui.currencyHint = 'Elige la moneda del precio local y del coste total.';
|
|
13
|
+
content.ui.setupLabel = 'Define la ventana de carga';
|
|
14
|
+
content.ui.priceHint = 'Precio local aproximado por kilovatio hora. Edítalo para tu tarifa.';
|
|
15
|
+
|
|
16
|
+
export { content };
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import type { FAQItem, HowToStep, ToolLocaleContent } from '../../../types';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
import type { EVChargingTimeCostPlannerUI } from '../ui';
|
|
5
|
+
|
|
6
|
+
export interface LocalizedSEO {
|
|
7
|
+
introTitle: string;
|
|
8
|
+
introText: string;
|
|
9
|
+
formulaTitle: string;
|
|
10
|
+
formulaText: string;
|
|
11
|
+
tableHeaders: [string, string, string];
|
|
12
|
+
tableRows: [string, string, string][];
|
|
13
|
+
limitsTitle: string;
|
|
14
|
+
limitsText: string;
|
|
15
|
+
tipTitle: string;
|
|
16
|
+
tipText: string;
|
|
17
|
+
energyStat: string;
|
|
18
|
+
timeStat: string;
|
|
19
|
+
costStat: string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export interface LocalizedContent {
|
|
23
|
+
locale: string;
|
|
24
|
+
currency: string;
|
|
25
|
+
slug: string;
|
|
26
|
+
title: string;
|
|
27
|
+
description: string;
|
|
28
|
+
faqTitle: string;
|
|
29
|
+
bibliographyTitle: string;
|
|
30
|
+
ui: Partial<EVChargingTimeCostPlannerUI>;
|
|
31
|
+
faq: FAQItem[];
|
|
32
|
+
howTo: HowToStep[];
|
|
33
|
+
seo: LocalizedSEO;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const baseUi: EVChargingTimeCostPlannerUI = {
|
|
37
|
+
defaultCurrency: 'EUR', currencyLabel: 'Currency', currencyHint: 'Choose the currency for the local price and total cost.', currencyMenuLabel: 'Select currency', currencyFactorTemplate: 'Approximate offline factor: 1 EUR = {factor} {currency}. Update the price for your tariff.', presetMetaTemplate: '{power} kW at {symbol}{price} / kWh', presetLabel: 'Start with a charging scene', homePreset: 'Home', publicPreset: 'Public', fastPreset: 'Fast', resetLabel: 'Reset plan', setupLabel: 'Set the charge window', setupHint: 'Tell the planner how much usable battery energy you want to add and what the charger costs.', chargeWindowLabel: 'Charge window', chargeWindowHint: 'The battery percentage before and after this session', startSocLabel: 'Start charge', startSocHint: 'Battery level now', endSocLabel: 'Target charge', endSocHint: 'Battery level when you unplug', capacityLabel: 'Usable battery capacity', capacityHint: 'The energy available to the vehicle, not the advertised gross pack size', chargerPowerLabel: 'Charger power', chargerPowerHint: 'Use the sustained power you expect, not the connector maximum', efficiencyLabel: 'Charging efficiency', efficiencyHint: 'Energy that reaches the battery after charging losses', priceLabel: 'Electricity price', priceHint: 'Approximate local price per kilowatt hour. Edit it for your tariff.', consumptionLabel: 'Vehicle consumption', consumptionHint: 'Energy used by the vehicle per 100 kilometres', resultKicker: 'Energy runway', resultTitle: 'A clear plan for this session', batterySceneLabel: 'Battery charge scene showing held and added energy', startingChargeLabel: 'Already stored', targetChargeLabel: 'Target charge', batteryEnergyLabel: 'Energy into battery', gridEnergyLabel: 'Energy from grid', lossesLabel: 'Charging losses', timeLabel: 'Estimated time', costLabel: 'Estimated cost', rangeLabel: 'Range recovered', statusEmpty: 'No energy added yet', statusShort: 'Quick top up', statusStandard: 'Balanced charge', statusLong: 'Long charge window', summaryTemplate: 'Add {battery} kWh to recover about {range} km. At {power} kW, the estimate is {time} and the session costs {cost}.', formulaLabel: 'How the estimate works', formulaText: 'Battery energy = usable capacity × charge window. The local price starts from an approximate EUR price multiplied by the currency factor. Grid energy includes charging losses, so time uses grid energy / charger power and cost uses grid energy × local price.', rangeUnit: 'km',
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
function localizedUi(ui: Partial<EVChargingTimeCostPlannerUI>): EVChargingTimeCostPlannerUI {
|
|
41
|
+
return { ...baseUi, ...ui } as EVChargingTimeCostPlannerUI;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
function createSchemas(data: LocalizedContent): ToolLocaleContent<EVChargingTimeCostPlannerUI>['schemas'] {
|
|
45
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
46
|
+
'@context': 'https://schema.org',
|
|
47
|
+
'@type': 'FAQPage',
|
|
48
|
+
mainEntity: data.faq.map((item) => ({
|
|
49
|
+
'@type': 'Question',
|
|
50
|
+
name: item.question,
|
|
51
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
52
|
+
})),
|
|
53
|
+
};
|
|
54
|
+
const howToSchema: WithContext<HowTo> = {
|
|
55
|
+
'@context': 'https://schema.org',
|
|
56
|
+
'@type': 'HowTo',
|
|
57
|
+
name: data.title,
|
|
58
|
+
description: data.description,
|
|
59
|
+
step: data.howTo.map((step, index) => ({
|
|
60
|
+
'@type': 'HowToStep',
|
|
61
|
+
position: index + 1,
|
|
62
|
+
name: step.name,
|
|
63
|
+
text: step.text,
|
|
64
|
+
})),
|
|
65
|
+
};
|
|
66
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
67
|
+
'@context': 'https://schema.org',
|
|
68
|
+
'@type': 'SoftwareApplication',
|
|
69
|
+
name: data.title,
|
|
70
|
+
description: data.description,
|
|
71
|
+
applicationCategory: 'UtilitiesApplication',
|
|
72
|
+
operatingSystem: 'All',
|
|
73
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: data.currency },
|
|
74
|
+
inLanguage: data.locale,
|
|
75
|
+
};
|
|
76
|
+
return [faqSchema, howToSchema, appSchema];
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
export function createLocalizedContent(data: LocalizedContent): ToolLocaleContent<EVChargingTimeCostPlannerUI> {
|
|
80
|
+
const seo = data.seo;
|
|
81
|
+
return {
|
|
82
|
+
slug: data.slug,
|
|
83
|
+
title: data.title,
|
|
84
|
+
description: data.description,
|
|
85
|
+
ui: localizedUi({ ...data.ui, formulaText: data.seo.formulaText }),
|
|
86
|
+
faqTitle: data.faqTitle,
|
|
87
|
+
faq: data.faq,
|
|
88
|
+
howTo: data.howTo,
|
|
89
|
+
bibliographyTitle: data.bibliographyTitle,
|
|
90
|
+
bibliography: bibliographyEntries,
|
|
91
|
+
schemas: createSchemas(data),
|
|
92
|
+
seo: [
|
|
93
|
+
{ type: 'title', text: seo.introTitle, level: 2 },
|
|
94
|
+
{ type: 'paragraph', html: seo.introText },
|
|
95
|
+
{
|
|
96
|
+
type: 'stats',
|
|
97
|
+
columns: 3,
|
|
98
|
+
items: [
|
|
99
|
+
{ value: 'kWh', label: seo.energyStat },
|
|
100
|
+
{ value: 'Min', label: seo.timeStat },
|
|
101
|
+
{ value: data.currency, label: seo.costStat },
|
|
102
|
+
],
|
|
103
|
+
},
|
|
104
|
+
{ type: 'title', text: seo.formulaTitle, level: 2 },
|
|
105
|
+
{ type: 'paragraph', html: seo.formulaText },
|
|
106
|
+
{ type: 'table', headers: seo.tableHeaders, rows: seo.tableRows },
|
|
107
|
+
{ type: 'title', text: seo.limitsTitle, level: 2 },
|
|
108
|
+
{ type: 'paragraph', html: seo.limitsText },
|
|
109
|
+
{ type: 'tip', title: seo.tipTitle, html: seo.tipText },
|
|
110
|
+
{ type: 'paragraph', html: `${seo.tipText} ${seo.limitsText}` },
|
|
111
|
+
],
|
|
112
|
+
};
|
|
113
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'fr', currency: 'EUR', slug: 'calculateur-temps-cout-recharge-vehicule-electrique', title: 'Calculateur de temps et de coût de recharge électrique', description: 'Estimez le temps de recharge, le coût de l électricité, les pertes et l autonomie récupérée.', faqTitle: 'Questions fréquentes', bibliographyTitle: 'Références bibliographiques',
|
|
5
|
+
ui: { defaultCurrency: 'EUR', currencyLabel: 'Devise', currencyHint: 'Choisissez la devise du prix local et du coût total.', currencyMenuLabel: 'Choisir une devise', currencyFactorTemplate: 'Facteur hors ligne approximatif: 1 EUR = {factor} {currency}. Ajustez le prix selon votre tarif.', presetLabel: 'Commencer avec une scène de recharge', homePreset: 'Domicile', publicPreset: 'Public', fastPreset: 'Rapide', resetLabel: 'Réinitialiser le plan', setupLabel: 'Définir la fenêtre de recharge', setupHint: 'Indiquez la quantité d énergie utile à ajouter et le coût de la recharge.', chargeWindowLabel: 'Fenêtre de recharge', chargeWindowHint: 'Pourcentage de batterie avant et après cette session', startSocLabel: 'Charge initiale', startSocHint: 'Niveau actuel de la batterie', endSocLabel: 'Charge cible', endSocHint: 'Niveau au débranchement', capacityLabel: 'Capacité utile de la batterie', chargerPowerLabel: 'Puissance du chargeur', efficiencyLabel: 'Rendement de recharge', priceLabel: 'Prix de l électricité', priceHint: 'Prix local approximatif par kilowattheure. Modifiez-le selon votre tarif.', consumptionLabel: 'Consommation du véhicule', resultKicker: 'Autonomie énergétique', resultTitle: 'Un plan clair pour cette session', startingChargeLabel: 'Déjà stockée', targetChargeLabel: 'Charge cible', batteryEnergyLabel: 'Énergie dans la batterie', gridEnergyLabel: 'Énergie du réseau', lossesLabel: 'Pertes de recharge', timeLabel: 'Temps estimé', costLabel: 'Coût estimé', rangeLabel: 'Autonomie récupérée', statusEmpty: 'Aucune énergie ajoutée', statusShort: 'Appoint rapide', statusStandard: 'Recharge équilibrée', statusLong: 'Longue fenêtre de recharge', summaryTemplate: 'Ajoutez {battery} kWh pour récupérer environ {range} km. À {power} kW, cela prend {time} et coûte {cost}.', formulaLabel: 'Comment fonctionne l estimation', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Comment le calculateur estime-t-il la session ?', answer: 'Il multiplie la capacité utile par la différence entre la charge cible et la charge initiale. Il tient ensuite compte du rendement et divise l énergie du réseau par la puissance saisie.' }, { question: 'Pourquoi l énergie du réseau est-elle supérieure ?', answer: 'La recharge n est pas parfaitement efficace. Le rendement indique la part qui atteint la batterie, le reste étant compté comme pertes.' }, { question: 'La courbe de recharge de mon véhicule est-elle incluse ?', answer: 'Non. Le calcul utilise la puissance soutenue indiquée. Un véhicule peut la réduire lorsque la batterie est très chargée.' }, { question: 'Comment l autonomie récupérée est-elle calculée ?', answer: 'L énergie ajoutée à la batterie est divisée par la consommation en kilowattheures pour 100 kilomètres.' }, { question: 'Comment le sélecteur de devise change-t-il le prix ?', answer: 'Il applique un facteur approximatif hors ligne par rapport à l euro et convertit le prix et le coût total. Modifiez le prix si votre tarif local diffère.' } ],
|
|
7
|
+
howTo: [ { name: 'Choisir une scène de recharge', text: 'Sélectionnez Domicile, Public ou Rapide pour charger un exemple réaliste.' }, { name: 'Définir la fenêtre', text: 'Saisissez la capacité et les niveaux initial et cible.' }, { name: 'Ajuster les conditions', text: 'Modifiez la puissance, le rendement, la devise, le prix et la consommation.' }, { name: 'Lire l autonomie énergétique', text: 'Comparez énergie de batterie, énergie réseau, durée, coût, pertes et autonomie.' } ],
|
|
8
|
+
seo: { introTitle: 'Planifier l énergie d une session de recharge', introText: 'Ce calculateur transforme une fenêtre de recharge en estimation pratique. Saisissez la capacité, les niveaux de batterie, la puissance, le rendement, le prix et la consommation pour connaître l énergie réseau, la durée, le coût et les kilomètres récupérés.', formulaTitle: 'Formules utilisées', formulaText: 'L énergie de batterie correspond à la capacité utile multipliée par la fenêtre de charge. L énergie réseau correspond à cette énergie divisée par le rendement. La durée utilise énergie réseau divisée par puissance et le coût utilise énergie réseau multipliée par le prix local.', tableHeaders: ['Donnée saisie', 'Transformation', 'Résultat'], tableRows: [['Capacité et fenêtre', 'Capacité × fenêtre', 'Énergie stockée'], ['Énergie et rendement', 'Énergie ÷ rendement', 'Énergie réseau'], ['Énergie réseau et puissance', 'Énergie ÷ puissance', 'Temps estimé'], ['Énergie réseau et prix', 'Énergie × prix', 'Coût estimé']], limitsTitle: 'Le résultat aide à planifier', limitsText: 'Il ne modélise pas la courbe de recharge, la température de la batterie, les files, les taxes, les abonnements ni un chargeur partagé. Utilisez une puissance soutenue réaliste.', tipTitle: 'Utiliser une puissance soutenue', tipText: 'Si le véhicule n atteint sa puissance maximale que brièvement, saisissez la puissance qu il peut maintenir pendant la majeure partie de la session.', energyStat: 'Énergie batterie et réseau', timeStat: 'Durée estimée de la session', costStat: 'Coût selon votre tarif' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'id', currency: 'IDR', slug: 'kalkulator-waktu-biaya-pengisian-mobil-listrik', title: 'Kalkulator waktu dan biaya pengisian mobil listrik', description: 'Perkirakan waktu pengisian, biaya listrik, kehilangan energi, dan jarak tempuh yang pulih.', faqTitle: 'Pertanyaan umum', bibliographyTitle: 'Referensi bibliografi',
|
|
5
|
+
ui: { defaultCurrency: 'IDR', currencyLabel: 'Mata uang', currencyHint: 'Pilih mata uang untuk harga listrik lokal dan total biaya.', currencyMenuLabel: 'Pilih mata uang', currencyFactorTemplate: 'Faktor offline perkiraan: 1 EUR = {factor} {currency}. Sesuaikan harga dengan tarif Anda.', presetLabel: 'Mulai dengan skenario pengisian', homePreset: 'Rumah', publicPreset: 'Publik', fastPreset: 'Cepat', resetLabel: 'Atur ulang rencana', setupLabel: 'Atur jendela pengisian', setupHint: 'Tentukan energi baterai yang ingin ditambahkan dan biaya pengisiannya.', chargeWindowLabel: 'Jendela pengisian', chargeWindowHint: 'Persentase baterai sebelum dan sesudah sesi ini', startSocLabel: 'Muatan awal', startSocHint: 'Tingkat baterai saat ini', endSocLabel: 'Muatan target', endSocHint: 'Tingkat baterai saat selesai', capacityLabel: 'Kapasitas baterai yang dapat digunakan', chargerPowerLabel: 'Daya pengisi daya', efficiencyLabel: 'Efisiensi pengisian', priceLabel: 'Harga listrik', priceHint: 'Perkiraan harga lokal per kilowatt jam. Ubah sesuai tarif Anda.', consumptionLabel: 'Konsumsi kendaraan', resultKicker: 'Jangkauan energi', resultTitle: 'Rencana yang jelas untuk sesi ini', startingChargeLabel: 'Sudah tersimpan', targetChargeLabel: 'Muatan target', batteryEnergyLabel: 'Energi ke baterai', gridEnergyLabel: 'Energi dari jaringan', lossesLabel: 'Kehilangan pengisian', timeLabel: 'Waktu perkiraan', costLabel: 'Biaya perkiraan', rangeLabel: 'Jarak pulih', statusEmpty: 'Belum ada energi yang ditambahkan', statusShort: 'Isi cepat', statusStandard: 'Pengisian seimbang', statusLong: 'Jendela pengisian panjang', summaryTemplate: 'Tambahkan {battery} kWh untuk memulihkan sekitar {range} km. Pada {power} kW, waktunya {time} dan biayanya {cost}.', formulaLabel: 'Cara kerja perkiraan', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Bagaimana kalkulator memperkirakan sesi ini?', answer: 'Kalkulator mengalikan kapasitas baterai yang dapat digunakan dengan selisih muatan target dan awal. Setelah itu efisiensi diperhitungkan dan energi jaringan dibagi dengan daya pengisi.' }, { question: 'Mengapa energi jaringan lebih besar daripada energi tersimpan?', answer: 'Pengisian tidak sepenuhnya efisien. Efisiensi menunjukkan bagian listrik yang sampai ke baterai, sedangkan sisanya dihitung sebagai kehilangan.' }, { question: 'Apakah kurva pengisian kendaraan disertakan?', answer: 'Tidak. Perkiraan memakai daya berkelanjutan yang Anda masukkan. Kendaraan dapat menurunkan daya saat muatan tinggi.' }, { question: 'Bagaimana jarak pulih dihitung?', answer: 'Energi yang masuk ke baterai dibagi konsumsi dalam kilowatt jam per 100 kilometer.' }, { question: 'Bagaimana pemilih mata uang mengubah harga?', answer: 'Pemilih menggunakan faktor offline perkiraan terhadap euro untuk mengubah harga listrik dan total biaya. Sesuaikan harga jika tarif lokal Anda berbeda.' } ],
|
|
7
|
+
howTo: [ { name: 'Pilih skenario pengisian', text: 'Pilih Rumah, Publik, atau Cepat untuk memuat contoh yang realistis.' }, { name: 'Atur jendela pengisian', text: 'Masukkan kapasitas dan tingkat muatan awal serta target.' }, { name: 'Sesuaikan kondisi', text: 'Ubah daya, efisiensi, mata uang, harga, dan konsumsi.' }, { name: 'Baca jangkauan energi', text: 'Lihat energi baterai, jaringan, waktu, biaya, kehilangan, dan jarak.' } ],
|
|
8
|
+
seo: { introTitle: 'Rencanakan energi untuk sesi pengisian', introText: 'Kalkulator ini mengubah jendela pengisian menjadi perkiraan praktis. Masukkan kapasitas, tingkat baterai, daya, efisiensi, harga, dan konsumsi untuk melihat kebutuhan jaringan, waktu, biaya, dan jarak yang pulih.', formulaTitle: 'Rumus yang digunakan', formulaText: 'Energi baterai adalah kapasitas yang dapat digunakan dikalikan jendela pengisian. Energi jaringan adalah energi baterai dibagi efisiensi. Waktu memakai energi jaringan dibagi daya dan biaya memakai energi jaringan dikalikan harga lokal.', tableHeaders: ['Input', 'Perubahan', 'Hasil'], tableRows: [['Kapasitas dan jendela', 'Kapasitas × jendela', 'Energi tersimpan'], ['Energi dan efisiensi', 'Energi ÷ efisiensi', 'Energi jaringan'], ['Energi jaringan dan daya', 'Energi ÷ daya', 'Waktu perkiraan'], ['Energi jaringan dan harga', 'Energi × harga', 'Biaya perkiraan']], limitsTitle: 'Hasil ini adalah panduan perencanaan', limitsText: 'Kalkulator tidak memodelkan kurva pengisian, suhu baterai, antrean, pajak, langganan, atau pengisi daya bersama. Gunakan daya berkelanjutan yang realistis.', tipTitle: 'Gunakan daya berkelanjutan', tipText: 'Jika kendaraan hanya mencapai daya puncak sebentar, masukkan daya yang dapat dipertahankan selama sebagian besar sesi.', energyStat: 'Energi baterai dan jaringan', timeStat: 'Waktu sesi perkiraan', costStat: 'Biaya sesuai tarif Anda' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'it', currency: 'EUR', slug: 'calcolatore-tempo-costo-ricarica-auto-elettrica', title: 'Calcolatore del tempo e del costo di ricarica elettrica', description: 'Stima tempo di ricarica, costo dell elettricità, perdite e autonomia recuperata durante una sessione.', faqTitle: 'Domande frequenti', bibliographyTitle: 'Riferimenti bibliografici',
|
|
5
|
+
ui: { defaultCurrency: 'EUR', currencyLabel: 'Valuta', currencyHint: 'Scegli la valuta del prezzo locale e del costo totale.', currencyMenuLabel: 'Scegli valuta', currencyFactorTemplate: 'Fattore offline approssimativo: 1 EUR = {factor} {currency}. Aggiorna il prezzo per la tua tariffa.', presetLabel: 'Inizia con uno scenario di ricarica', homePreset: 'Casa', publicPreset: 'Pubblica', fastPreset: 'Rapida', resetLabel: 'Reimposta piano', setupLabel: 'Imposta la finestra di ricarica', setupHint: 'Indica quanta energia utile vuoi aggiungere e quanto costa la ricarica.', chargeWindowLabel: 'Finestra di ricarica', chargeWindowHint: 'Percentuale della batteria prima e dopo questa sessione', startSocLabel: 'Carica iniziale', startSocHint: 'Livello attuale della batteria', endSocLabel: 'Carica obiettivo', endSocHint: 'Livello della batteria allo scollegamento', capacityLabel: 'Capacità utile della batteria', chargerPowerLabel: 'Potenza del caricatore', efficiencyLabel: 'Efficienza di ricarica', priceLabel: 'Prezzo dell elettricità', priceHint: 'Prezzo locale approssimativo per kilowattora. Modificalo secondo la tua tariffa.', consumptionLabel: 'Consumo del veicolo', resultKicker: 'Autonomia energetica', resultTitle: 'Un piano chiaro per questa sessione', startingChargeLabel: 'Già immagazzinata', targetChargeLabel: 'Carica obiettivo', batteryEnergyLabel: 'Energia nella batteria', gridEnergyLabel: 'Energia dalla rete', lossesLabel: 'Perdite di ricarica', timeLabel: 'Tempo stimato', costLabel: 'Costo stimato', rangeLabel: 'Autonomia recuperata', statusEmpty: 'Nessuna energia aggiunta', statusShort: 'Rabbocco rapido', statusStandard: 'Ricarica equilibrata', statusLong: 'Finestra di ricarica lunga', summaryTemplate: 'Aggiungi {battery} kWh per recuperare circa {range} km. A {power} kW servono {time} e il costo è {cost}.', formulaLabel: 'Come funziona la stima', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Come stima la sessione il calcolatore?', answer: 'Moltiplica la capacità utile per la differenza tra carica obiettivo e iniziale. Poi considera l efficienza e divide l energia di rete per la potenza inserita.' }, { question: 'Perché l energia di rete è maggiore?', answer: 'La ricarica non è perfettamente efficiente. L efficienza indica la parte che raggiunge la batteria, mentre il resto è conteggiato come perdita.' }, { question: 'Include la curva di ricarica del veicolo?', answer: 'No. Usa la potenza sostenuta indicata. Il veicolo può ridurla con un livello di carica elevato.' }, { question: 'Come si calcola l autonomia recuperata?', answer: 'L energia aggiunta alla batteria viene divisa per il consumo in kilowattora ogni 100 chilometri.' }, { question: 'Come cambia il prezzo il selettore della valuta?', answer: 'Applica un fattore offline approssimativo rispetto all euro e converte prezzo e costo totale. Modifica il prezzo se la tariffa locale è diversa.' } ],
|
|
7
|
+
howTo: [ { name: 'Scegli uno scenario di ricarica', text: 'Seleziona Casa, Pubblica o Rapida per caricare un esempio realistico.' }, { name: 'Imposta la finestra', text: 'Inserisci capacità e livelli iniziale e obiettivo.' }, { name: 'Regola le condizioni', text: 'Modifica potenza, efficienza, valuta, prezzo e consumo.' }, { name: 'Leggi l autonomia energetica', text: 'Confronta energia della batteria, rete, durata, costo, perdite e autonomia.' } ],
|
|
8
|
+
seo: { introTitle: 'Pianifica l energia di una sessione di ricarica', introText: 'Questo calcolatore trasforma una finestra di ricarica in una stima pratica. Inserisci capacità, livelli della batteria, potenza, efficienza, prezzo e consumo per conoscere energia di rete, durata, costo e chilometri recuperati.', formulaTitle: 'Formule utilizzate', formulaText: 'L energia della batteria è la capacità utile moltiplicata per la finestra di carica. L energia di rete è l energia della batteria divisa per l efficienza. Il tempo usa energia di rete divisa per potenza e il costo usa energia di rete moltiplicata per il prezzo locale.', tableHeaders: ['Dato inserito', 'Trasformazione', 'Risultato'], tableRows: [['Capacità e finestra', 'Capacità × finestra', 'Energia immagazzinata'], ['Energia ed efficienza', 'Energia ÷ efficienza', 'Energia di rete'], ['Energia di rete e potenza', 'Energia ÷ potenza', 'Tempo stimato'], ['Energia di rete e prezzo', 'Energia × prezzo', 'Costo stimato']], limitsTitle: 'Il risultato aiuta a pianificare', limitsText: 'Non modella curva di ricarica, temperatura della batteria, code, tasse, abbonamenti o un caricatore condiviso. Usa una potenza sostenuta realistica.', tipTitle: 'Usa la potenza sostenuta', tipText: 'Se l auto raggiunge il picco solo per poco, inserisci la potenza che può mantenere per la maggior parte della sessione.', energyStat: 'Energia batteria e rete', timeStat: 'Durata stimata della sessione', costStat: 'Costo secondo la tua tariffa' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
const content = createLocalizedContent({
|
|
4
|
+
locale: 'ja', currency: 'JPY', slug: 'ev充電時間と料金計算', title: '電気自動車の充電時間と料金計算ツール', description: 'EV充電の時間、電気料金、充電ロス、回復する走行距離を見積もります。', faqTitle: 'よくある質問', bibliographyTitle: '参考文献',
|
|
5
|
+
ui: { defaultCurrency: 'JPY', currencyLabel: '通貨', currencyHint: '電気料金と合計費用に使う通貨を選択します。', currencyMenuLabel: '通貨を選択', currencyFactorTemplate: 'オフラインの概算係数: 1 EUR = {factor} {currency}。地域の料金に合わせて価格を更新してください。', presetLabel: '充電シーンから始める', homePreset: '自宅', publicPreset: '公共', fastPreset: '急速', resetLabel: 'プランをリセット', setupLabel: '充電範囲を設定', setupHint: '追加したいバッテリーエネルギーと充電料金を入力します。', chargeWindowLabel: '充電範囲', chargeWindowHint: 'このセッションの前後のバッテリー残量', startSocLabel: '開始充電量', startSocHint: '現在のバッテリー残量', endSocLabel: '目標充電量', endSocHint: '接続を外すときの残量', capacityLabel: '使用可能なバッテリー容量', chargerPowerLabel: '充電器の出力', efficiencyLabel: '充電効率', priceLabel: '電気料金', priceHint: '1キロワット時あたりの地域料金の概算です。実際の料金に合わせて編集してください。', consumptionLabel: '車両消費電力', resultKicker: 'エネルギー航続距離', resultTitle: 'このセッションの明確な計画', startingChargeLabel: '充電済み', targetChargeLabel: '目標充電量', batteryEnergyLabel: 'バッテリーへのエネルギー', gridEnergyLabel: '系統からのエネルギー', lossesLabel: '充電ロス', timeLabel: '推定時間', costLabel: '推定料金', rangeLabel: '回復する走行距離', statusEmpty: '追加エネルギーなし', statusShort: '短時間の補充', statusStandard: 'バランスのよい充電', statusLong: '長い充電範囲', summaryTemplate: '{battery} kWhを追加すると約{range} km走行できます。{power} kWでは{time}かかり、料金は{cost}です。', formulaLabel: '見積もりの仕組み', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: '充電セッションはどのように見積もりますか?', answer: '使用可能容量に目標充電量と開始充電量の差を掛けます。充電効率を考慮し、系統エネルギーを入力した充電出力で割ります。' }, { question: 'なぜ系統のエネルギーは保存量より多いのですか?', answer: '充電は完全に効率的ではありません。効率はバッテリーに届く電力の割合で、残りは充電ロスになります。' }, { question: '車両の充電曲線は含まれますか?', answer: '含まれません。入力した持続出力を使います。充電量が高いと車両が出力を下げることがあります。' }, { question: '回復する走行距離はどう計算しますか?', answer: 'バッテリーに追加されるエネルギーを、100 kmあたりの消費電力量で割ります。' }, { question: '通貨セレクターで料金はどう変わりますか?', answer: 'ユーロに対するオフラインの概算係数で価格と合計料金を換算します。地域の料金が異なる場合は価格を編集してください。' } ],
|
|
7
|
+
howTo: [ { name: '充電シーンを選ぶ', text: '自宅、公共、急速から現実的な例を読み込みます。' }, { name: '充電範囲を設定する', text: '容量と開始および目標の充電量を入力します。' }, { name: '条件を調整する', text: '出力、効率、通貨、料金、消費電力を調整します。' }, { name: 'エネルギー航続距離を読む', text: 'バッテリー、系統、時間、料金、ロス、走行距離を確認します。' } ],
|
|
8
|
+
seo: { introTitle: 'EV充電セッションのエネルギーを計画する', introText: 'このツールは充電範囲を実用的な見積もりに変換します。容量、充電量、出力、効率、料金、消費電力を入力して、系統エネルギー、時間、費用、回復距離を確認できます。', formulaTitle: '使用する計算式', formulaText: 'バッテリーエネルギーは使用可能容量と充電範囲の積です。系統エネルギーはバッテリーエネルギーを効率で割った値です。時間は系統エネルギーを出力で割り、料金は系統エネルギーに地域料金を掛けます。', tableHeaders: ['入力', '変換', '結果'], tableRows: [['容量と充電範囲', '容量 × 範囲', '保存エネルギー'], ['エネルギーと効率', 'エネルギー ÷ 効率', '系統エネルギー'], ['系統エネルギーと出力', 'エネルギー ÷ 出力', '推定時間'], ['系統エネルギーと料金', 'エネルギー × 料金', '推定費用']], limitsTitle: '結果は計画の目安です', limitsText: '車両の充電曲線、バッテリー温度、待ち時間、税金、契約料金、共有充電器は計算しません。現実的な持続出力を使ってください。', tipTitle: '持続出力を使う', tipText: '最大出力が短時間だけの場合は、セッションの大部分で維持できる出力を入力します。', energyStat: 'バッテリーと系統のエネルギー', timeStat: 'セッション推定時間', costStat: '地域料金での費用' },
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
content.slug = 'ev-charging-time-cost-planner';
|
|
12
|
+
|
|
13
|
+
export { content };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
const content = createLocalizedContent({
|
|
4
|
+
locale: 'ko', currency: 'KRW', slug: '전기차-충전시간-비용-계산기', title: '전기차 충전 시간 및 비용 계산기', description: '전기차 충전 시간, 전기 요금, 충전 손실, 회복되는 주행거리를 추정합니다.', faqTitle: '자주 묻는 질문', bibliographyTitle: '참고 자료',
|
|
5
|
+
ui: { defaultCurrency: 'KRW', currencyLabel: '통화', currencyHint: '현지 전기 요금과 총비용에 사용할 통화를 선택하세요.', currencyMenuLabel: '통화 선택', currencyFactorTemplate: '오프라인 예상 환산 계수: 1 EUR = {factor} {currency}. 실제 요금에 맞게 가격을 수정하세요.', presetLabel: '충전 장면으로 시작', homePreset: '집', publicPreset: '공용', fastPreset: '급속', resetLabel: '계획 초기화', setupLabel: '충전 구간 설정', setupHint: '추가할 배터리 에너지와 충전 요금을 입력하세요.', chargeWindowLabel: '충전 구간', chargeWindowHint: '이번 세션의 시작과 종료 배터리 비율', startSocLabel: '시작 충전량', startSocHint: '현재 배터리 잔량', endSocLabel: '목표 충전량', endSocHint: '플러그를 뽑을 때의 배터리 잔량', capacityLabel: '사용 가능한 배터리 용량', chargerPowerLabel: '충전기 출력', efficiencyLabel: '충전 효율', priceLabel: '전기 요금', priceHint: '킬로와트시당 현지 요금의 예상값입니다. 실제 요금에 맞게 수정하세요.', consumptionLabel: '차량 소비량', resultKicker: '에너지 주행거리', resultTitle: '이번 세션을 위한 명확한 계획', startingChargeLabel: '기존 저장량', targetChargeLabel: '목표 충전량', batteryEnergyLabel: '배터리에 들어간 에너지', gridEnergyLabel: '전력망에서 가져온 에너지', lossesLabel: '충전 손실', timeLabel: '예상 시간', costLabel: '예상 비용', rangeLabel: '회복 주행거리', statusEmpty: '추가된 에너지 없음', statusShort: '빠른 보충', statusStandard: '균형 충전', statusLong: '긴 충전 구간', summaryTemplate: '{battery} kWh를 추가하면 약 {range} km를 주행할 수 있습니다. {power} kW에서는 {time}이 걸리고 비용은 {cost}입니다.', formulaLabel: '예상 계산 방식', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: '충전 세션은 어떻게 계산하나요?', answer: '사용 가능한 배터리 용량에 목표 충전량과 시작 충전량의 차이를 곱합니다. 충전 효율을 반영한 뒤 전력망 에너지를 입력한 충전기 출력으로 나눕니다.' }, { question: '전력망 에너지가 저장 에너지보다 많은 이유는 무엇인가요?', answer: '충전은 완전히 효율적이지 않습니다. 효율은 배터리에 도달하는 전기의 비율이며 나머지는 충전 손실입니다.' }, { question: '차량의 충전 곡선도 포함되나요?', answer: '아닙니다. 입력한 지속 출력을 사용합니다. 배터리 잔량이 높아지면 차량이 출력을 낮출 수 있습니다.' }, { question: '회복 주행거리는 어떻게 계산하나요?', answer: '배터리에 추가된 에너지를 100 km당 킬로와트시 단위의 차량 소비량으로 나눕니다.' }, { question: '통화를 바꾸면 가격은 어떻게 변하나요?', answer: '유로 기준 오프라인 예상 환산 계수를 사용해 전기 요금과 총비용을 변환합니다. 현지 요금이 다르면 가격을 직접 수정하세요.' } ],
|
|
7
|
+
howTo: [ { name: '충전 장면 선택', text: '집, 공용, 급속 중에서 현실적인 예시를 불러옵니다.' }, { name: '충전 구간 설정', text: '배터리 용량과 시작 및 목표 충전량을 입력합니다.' }, { name: '조건 조정', text: '출력, 효율, 통화, 요금, 소비량을 조정합니다.' }, { name: '에너지 주행거리 확인', text: '배터리 에너지, 전력망 에너지, 시간, 비용, 손실, 주행거리를 확인합니다.' } ],
|
|
8
|
+
seo: { introTitle: '전기차 충전 세션의 에너지 계획하기', introText: '이 계산기는 충전 구간을 실용적인 예상값으로 바꿉니다. 배터리 용량, 충전량, 출력, 효율, 요금, 소비량을 입력하면 전력망 에너지, 시간, 비용, 회복 주행거리를 확인할 수 있습니다.', formulaTitle: '사용하는 공식', formulaText: '배터리 에너지는 사용 가능한 용량과 충전 구간의 곱입니다. 전력망 에너지는 배터리 에너지를 효율로 나눈 값입니다. 시간은 전력망 에너지를 출력으로 나누고 비용은 전력망 에너지에 현지 요금을 곱합니다.', tableHeaders: ['입력', '변환', '결과'], tableRows: [['용량과 충전 구간', '용량 × 구간', '저장 에너지'], ['에너지와 효율', '에너지 ÷ 효율', '전력망 에너지'], ['전력망 에너지와 출력', '에너지 ÷ 출력', '예상 시간'], ['전력망 에너지와 요금', '에너지 × 요금', '예상 비용']], limitsTitle: '결과는 계획을 위한 참고값입니다', limitsText: '차량 충전 곡선, 배터리 온도, 대기 시간, 세금, 구독료, 공유 충전기는 계산하지 않습니다. 현실적인 지속 출력을 사용하세요.', tipTitle: '지속 출력을 사용하세요', tipText: '최대 출력이 잠시만 유지된다면 세션 대부분에서 유지할 수 있는 출력을 입력하세요.', energyStat: '배터리 및 전력망 에너지', timeStat: '세션 예상 시간', costStat: '현지 요금 기준 비용' },
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
content.slug = 'ev-charging-time-cost-planner';
|
|
12
|
+
|
|
13
|
+
export { content };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'nl', currency: 'EUR', slug: 'calculator-laadtijd-kosten-elektrische-auto', title: 'Calculator voor laadtijd en kosten van een elektrische auto', description: 'Schat laadtijd, elektriciteitskosten, laadverlies en herwonnen actieradius voor een laadsessie.', faqTitle: 'Veelgestelde vragen', bibliographyTitle: 'Bronnen',
|
|
5
|
+
ui: { defaultCurrency: 'EUR', currencyLabel: 'Valuta', currencyHint: 'Kies de valuta voor de lokale stroomprijs en totale kosten.', currencyMenuLabel: 'Valuta kiezen', currencyFactorTemplate: 'Geschatte offline factor: 1 EUR = {factor} {currency}. Pas de prijs aan voor jouw tarief.', presetLabel: 'Begin met een laadscenario', homePreset: 'Thuis', publicPreset: 'Publiek', fastPreset: 'Snel', resetLabel: 'Plan resetten', setupLabel: 'Laadvenster instellen', setupHint: 'Geef aan hoeveel bruikbare batterij-energie je wilt toevoegen en wat het laden kost.', chargeWindowLabel: 'Laadvenster', chargeWindowHint: 'Batterijpercentage voor en na deze sessie', startSocLabel: 'Startlading', startSocHint: 'Huidig batterijniveau', endSocLabel: 'Doellading', endSocHint: 'Batterijniveau bij loskoppelen', capacityLabel: 'Bruikbare batterijcapaciteit', chargerPowerLabel: 'Laadvermogen', efficiencyLabel: 'Laadefficiëntie', priceLabel: 'Elektriciteitsprijs', priceHint: 'Geschatte lokale prijs per kilowattuur. Pas deze aan voor jouw tarief.', consumptionLabel: 'Verbruik van het voertuig', resultKicker: 'Energie-actieradius', resultTitle: 'Een duidelijk plan voor deze sessie', startingChargeLabel: 'Al opgeslagen', targetChargeLabel: 'Doellading', batteryEnergyLabel: 'Energie in batterij', gridEnergyLabel: 'Energie uit het net', lossesLabel: 'Laadverlies', timeLabel: 'Geschatte tijd', costLabel: 'Geschatte kosten', rangeLabel: 'Herwonnen actieradius', statusEmpty: 'Nog geen energie toegevoegd', statusShort: 'Snel bijladen', statusStandard: 'Gebalanceerd laden', statusLong: 'Lang laadvenster', summaryTemplate: 'Voeg {battery} kWh toe voor ongeveer {range} km actieradius. Bij {power} kW duurt dit {time} en kost het {cost}.', formulaLabel: 'Zo werkt de schatting', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Hoe schat de calculator de laadsessie?', answer: 'De calculator vermenigvuldigt de bruikbare capaciteit met het verschil tussen doel- en startlading. Daarna wordt efficiëntie meegenomen en deelt hij netenergie door laadvermogen.' }, { question: 'Waarom is netenergie hoger dan opgeslagen energie?', answer: 'Laden is niet volledig efficiënt. Efficiëntie geeft aan welk deel de batterij bereikt; de rest wordt als laadverlies geteld.' }, { question: 'Bevat het resultaat de laadcurve van mijn auto?', answer: 'Nee. De schatting gebruikt het opgegeven aanhoudende laadvermogen. De auto kan dit bij een hoge lading verlagen.' }, { question: 'Hoe wordt de herwonnen actieradius berekend?', answer: 'De toegevoegde batterij-energie wordt gedeeld door het verbruik in kilowattuur per 100 kilometer.' }, { question: 'Hoe verandert de valutakiezer de prijs?', answer: 'De prijs en totale kosten worden met een geschatte offline factor ten opzichte van de euro omgerekend. Pas de prijs aan als jouw lokale tarief anders is.' } ],
|
|
7
|
+
howTo: [ { name: 'Kies een laadscenario', text: 'Selecteer Thuis, Publiek of Snel voor een realistisch voorbeeld.' }, { name: 'Stel het laadvenster in', text: 'Voer capaciteit en begin- en doellading in.' }, { name: 'Pas de omstandigheden aan', text: 'Wijzig vermogen, efficiëntie, valuta, prijs en verbruik.' }, { name: 'Lees de energie-actieradius', text: 'Bekijk batterij- en netenergie, tijd, kosten, verlies en actieradius.' } ],
|
|
8
|
+
seo: { introTitle: 'Plan de energie van een laadsessie', introText: 'Deze calculator zet een laadvenster om in een praktische schatting. Voer capaciteit, batterijniveaus, vermogen, efficiëntie, prijs en verbruik in voor netenergie, tijd, kosten en herwonnen kilometers.', formulaTitle: 'Gebruikte formules', formulaText: 'Batterij-energie is bruikbare capaciteit maal het laadvenster. Netenergie is batterij-energie gedeeld door efficiëntie. Tijd is netenergie gedeeld door vermogen en kosten zijn netenergie maal de lokale prijs.', tableHeaders: ['Invoer', 'Bewerking', 'Resultaat'], tableRows: [['Capaciteit en venster', 'Capaciteit × venster', 'Opgeslagen energie'], ['Energie en efficiëntie', 'Energie ÷ efficiëntie', 'Netenergie'], ['Netenergie en vermogen', 'Energie ÷ vermogen', 'Geschatte tijd'], ['Netenergie en prijs', 'Energie × prijs', 'Geschatte kosten']], limitsTitle: 'Het resultaat is een planningshulp', limitsText: 'De calculator modelleert geen laadcurve, batterijtemperatuur, wachtrij, belastingen, abonnementen of gedeelde lader. Gebruik realistisch aanhoudend vermogen.', tipTitle: 'Gebruik aanhoudend vermogen', tipText: 'Als de auto piekvermogen maar kort haalt, voer dan het vermogen in dat hij het grootste deel van de sessie kan vasthouden.', energyStat: 'Batterij- en netenergie', timeStat: 'Geschatte sessieduur', costStat: 'Kosten volgens jouw tarief' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'pl', currency: 'PLN', slug: 'kalkulator-czasu-i-kosztu-ladowania-auta-elektrycznego', title: 'Kalkulator czasu i kosztu ładowania samochodu elektrycznego', description: 'Oszacuj czas ładowania, koszt energii, straty ładowania i odzyskany zasięg podczas sesji.', faqTitle: 'Najczęściej zadawane pytania', bibliographyTitle: 'Źródła bibliograficzne',
|
|
5
|
+
ui: { defaultCurrency: 'PLN', currencyLabel: 'Waluta', currencyHint: 'Wybierz walutę dla lokalnej ceny prądu i całkowitego kosztu.', currencyMenuLabel: 'Wybierz walutę', currencyFactorTemplate: 'Przybliżony współczynnik offline: 1 EUR = {factor} {currency}. Dostosuj cenę do swojej taryfy.', presetLabel: 'Zacznij od scenariusza ładowania', homePreset: 'Dom', publicPreset: 'Publiczna', fastPreset: 'Szybka', resetLabel: 'Zresetuj plan', setupLabel: 'Ustaw zakres ładowania', setupHint: 'Podaj ilość użytecznej energii baterii i koszt ładowania.', chargeWindowLabel: 'Zakres ładowania', chargeWindowHint: 'Poziom baterii przed i po tej sesji', startSocLabel: 'Ładowanie początkowe', startSocHint: 'Aktualny poziom baterii', endSocLabel: 'Ładowanie docelowe', endSocHint: 'Poziom baterii przy odłączeniu', capacityLabel: 'Użyteczna pojemność baterii', chargerPowerLabel: 'Moc ładowarki', efficiencyLabel: 'Sprawność ładowania', priceLabel: 'Cena energii elektrycznej', priceHint: 'Przybliżona lokalna cena za kilowatogodzinę. Dostosuj ją do swojej taryfy.', consumptionLabel: 'Zużycie pojazdu', resultKicker: 'Zasięg energetyczny', resultTitle: 'Jasny plan dla tej sesji', startingChargeLabel: 'Już zgromadzona', targetChargeLabel: 'Ładowanie docelowe', batteryEnergyLabel: 'Energia w baterii', gridEnergyLabel: 'Energia z sieci', lossesLabel: 'Straty ładowania', timeLabel: 'Szacowany czas', costLabel: 'Szacowany koszt', rangeLabel: 'Odzyskany zasięg', statusEmpty: 'Nie dodano jeszcze energii', statusShort: 'Szybkie doładowanie', statusStandard: 'Zrównoważone ładowanie', statusLong: 'Długi zakres ładowania', summaryTemplate: 'Dodaj {battery} kWh, aby odzyskać około {range} km. Przy {power} kW potrwa to {time} i będzie kosztować {cost}.', formulaLabel: 'Jak działa szacunek', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Jak kalkulator szacuje sesję ładowania?', answer: 'Mnoży użyteczną pojemność baterii przez różnicę między poziomem docelowym i początkowym. Następnie uwzględnia sprawność i dzieli energię z sieci przez podaną moc.' }, { question: 'Dlaczego energia z sieci jest większa od zgromadzonej?', answer: 'Ładowanie nie jest całkowicie sprawne. Sprawność określa część prądu docierającą do baterii, a reszta jest stratą ładowania.' }, { question: 'Czy wynik uwzględnia krzywą ładowania auta?', answer: 'Nie. Szacunek korzysta z podanej mocy ciągłej. Pojazd może ją zmniejszyć przy wysokim poziomie baterii.' }, { question: 'Jak obliczany jest odzyskany zasięg?', answer: 'Energia dodana do baterii jest dzielona przez zużycie w kilowatogodzinach na 100 kilometrów.' }, { question: 'Jak zmiana waluty wpływa na cenę?', answer: 'Cena energii i koszt całkowity są przeliczane przez przybliżony współczynnik offline względem euro. Zmień cenę, jeśli lokalna taryfa jest inna.' } ],
|
|
7
|
+
howTo: [ { name: 'Wybierz scenariusz ładowania', text: 'Wybierz Dom, Publiczna lub Szybka, aby wczytać realistyczny przykład.' }, { name: 'Ustaw zakres ładowania', text: 'Wpisz pojemność oraz początkowy i docelowy poziom baterii.' }, { name: 'Dostosuj warunki', text: 'Zmień moc, sprawność, walutę, cenę i zużycie.' }, { name: 'Odczytaj zasięg energetyczny', text: 'Sprawdź energię baterii i sieci, czas, koszt, straty oraz zasięg.' } ],
|
|
8
|
+
seo: { introTitle: 'Zaplanuj energię sesji ładowania', introText: 'Ten kalkulator zamienia zakres ładowania w praktyczny szacunek. Podaj pojemność, poziomy baterii, moc, sprawność, cenę i zużycie, aby zobaczyć energię z sieci, czas, koszt i odzyskane kilometry.', formulaTitle: 'Używane wzory', formulaText: 'Energia baterii to użyteczna pojemność pomnożona przez zakres ładowania. Energia z sieci to energia baterii podzielona przez sprawność. Czas to energia z sieci podzielona przez moc, a koszt to energia z sieci pomnożona przez cenę lokalną.', tableHeaders: ['Dane', 'Przekształcenie', 'Wynik'], tableRows: [['Pojemność i zakres', 'Pojemność × zakres', 'Zgromadzona energia'], ['Energia i sprawność', 'Energia ÷ sprawność', 'Energia z sieci'], ['Energia z sieci i moc', 'Energia ÷ moc', 'Szacowany czas'], ['Energia z sieci i cena', 'Energia × cena', 'Szacowany koszt']], limitsTitle: 'Wynik służy do planowania', limitsText: 'Kalkulator nie modeluje krzywej ładowania, temperatury baterii, kolejek, podatków, abonamentów ani wspólnej ładowarki. Użyj realistycznej mocy ciągłej podczas planowania czasu sesji i kosztu.', tipTitle: 'Używaj mocy ciągłej', tipText: 'Jeśli auto osiąga moc szczytową tylko przez chwilę, wpisz moc utrzymywaną przez większą część sesji.', energyStat: 'Energia baterii i sieci', timeStat: 'Szacowany czas sesji', costStat: 'Koszt według taryfy' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'pt', currency: 'BRL', slug: 'calculadora-tempo-custo-recarga-carro-eletrico', title: 'Calculadora de tempo e custo de recarga de carro elétrico', description: 'Estime o tempo de recarga, o custo da eletricidade, as perdas e a autonomia recuperada em uma sessão.', faqTitle: 'Perguntas frequentes', bibliographyTitle: 'Referências bibliográficas',
|
|
5
|
+
ui: { defaultCurrency: 'BRL', currencyLabel: 'Moeda', currencyHint: 'Escolha a moeda do preço local e do custo total.', currencyMenuLabel: 'Escolher moeda', currencyFactorTemplate: 'Fator offline aproximado: 1 EUR = {factor} {currency}. Atualize o preço para a sua tarifa.', presetLabel: 'Comece com uma cena de recarga', homePreset: 'Casa', publicPreset: 'Pública', fastPreset: 'Rápida', resetLabel: 'Redefinir plano', setupLabel: 'Defina a janela de recarga', setupHint: 'Informe quanta energia útil da bateria deseja adicionar e quanto custa a recarga.', chargeWindowLabel: 'Janela de recarga', chargeWindowHint: 'Percentual da bateria antes e depois desta sessão', startSocLabel: 'Carga inicial', startSocHint: 'Nível atual da bateria', endSocLabel: 'Carga alvo', endSocHint: 'Nível da bateria ao desconectar', capacityLabel: 'Capacidade útil da bateria', chargerPowerLabel: 'Potência do carregador', efficiencyLabel: 'Eficiência de recarga', priceLabel: 'Preço da eletricidade', priceHint: 'Preço local aproximado por quilowatt-hora. Edite conforme a sua tarifa.', consumptionLabel: 'Consumo do veículo', resultKicker: 'Autonomia energética', resultTitle: 'Um plano claro para esta sessão', startingChargeLabel: 'Já armazenada', targetChargeLabel: 'Carga alvo', batteryEnergyLabel: 'Energia na bateria', gridEnergyLabel: 'Energia da rede', lossesLabel: 'Perdas de recarga', timeLabel: 'Tempo estimado', costLabel: 'Custo estimado', rangeLabel: 'Autonomia recuperada', statusEmpty: 'Nenhuma energia adicionada', statusShort: 'Recarga rápida', statusStandard: 'Recarga equilibrada', statusLong: 'Janela de recarga longa', summaryTemplate: 'Adicione {battery} kWh para recuperar cerca de {range} km. A {power} kW, leva {time} e custa {cost}.', formulaLabel: 'Como funciona a estimativa', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Como a calculadora estima a sessão?', answer: 'Ela multiplica a capacidade útil pela diferença entre a carga alvo e a inicial. Depois considera a eficiência e divide a energia da rede pela potência informada.' }, { question: 'Por que a energia da rede é maior que a energia armazenada?', answer: 'A recarga não é perfeitamente eficiente. A eficiência representa a parte da eletricidade que chega à bateria e o restante aparece como perda.' }, { question: 'A curva de recarga do carro está incluída?', answer: 'Não. A estimativa usa a potência contínua informada. O veículo pode reduzi-la quando a bateria está muito carregada.' }, { question: 'Como a autonomia recuperada é calculada?', answer: 'A energia adicionada à bateria é dividida pelo consumo em quilowatts-hora por 100 quilômetros.' }, { question: 'Como o seletor de moeda altera o preço?', answer: 'Ele aplica um fator offline aproximado em relação ao euro e converte o preço e o custo total. Ajuste o preço se a sua tarifa local for diferente.' } ],
|
|
7
|
+
howTo: [ { name: 'Escolha uma cena de recarga', text: 'Selecione Casa, Pública ou Rápida para carregar um exemplo realista.' }, { name: 'Defina a janela de recarga', text: 'Informe a capacidade e os níveis inicial e alvo.' }, { name: 'Ajuste as condições', text: 'Altere potência, eficiência, moeda, preço e consumo.' }, { name: 'Leia a autonomia energética', text: 'Confira energia da bateria, rede, tempo, custo, perdas e autonomia.' } ],
|
|
8
|
+
seo: { introTitle: 'Planeje a energia de uma sessão de recarga', introText: 'Esta calculadora transforma uma janela de recarga em uma estimativa prática. Informe capacidade, níveis da bateria, potência, eficiência, preço e consumo para ver a energia da rede, o tempo, o custo e os quilômetros recuperados.', formulaTitle: 'Fórmulas usadas', formulaText: 'A energia da bateria é a capacidade útil multiplicada pela janela de recarga. A energia da rede é a energia da bateria dividida pela eficiência. O tempo usa energia da rede dividida pela potência e o custo usa energia da rede multiplicada pelo preço local.', tableHeaders: ['Dado informado', 'Transformação', 'Resultado'], tableRows: [['Capacidade e janela', 'Capacidade × janela', 'Energia armazenada'], ['Energia e eficiência', 'Energia ÷ eficiência', 'Energia da rede'], ['Energia da rede e potência', 'Energia ÷ potência', 'Tempo estimado'], ['Energia da rede e preço', 'Energia × preço', 'Custo estimado']], limitsTitle: 'O resultado é uma orientação de planejamento', limitsText: 'A calculadora não modela curva de recarga, temperatura da bateria, filas, impostos, assinaturas ou carregador compartilhado. Use uma potência contínua realista.', tipTitle: 'Use a potência contínua', tipText: 'Se o carro atinge o pico apenas por pouco tempo, informe a potência que consegue manter durante a maior parte da sessão.', energyStat: 'Energia da bateria e da rede', timeStat: 'Tempo estimado da sessão', costStat: 'Custo conforme a tarifa' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
const content = createLocalizedContent({
|
|
4
|
+
locale: 'ru', currency: 'EUR', slug: 'kalkulyator-vremeni-i-stoimosti-zaryadki-elektromobilya', title: 'Калькулятор времени и стоимости зарядки электромобиля', description: 'Рассчитайте время зарядки, стоимость электроэнергии, потери и восстановленный запас хода.', faqTitle: 'Часто задаваемые вопросы', bibliographyTitle: 'Библиографические источники',
|
|
5
|
+
ui: { defaultCurrency: 'RUB', currencyLabel: 'Валюта', currencyHint: 'Выберите валюту для местной цены электроэнергии и общей стоимости.', currencyMenuLabel: 'Выбрать валюту', currencyFactorTemplate: 'Приблизительный офлайн-коэффициент: 1 EUR = {factor} {currency}. Измените цену в соответствии с вашим тарифом.', presetLabel: 'Начните со сценария зарядки', homePreset: 'Дома', publicPreset: 'Общественная', fastPreset: 'Быстрая', resetLabel: 'Сбросить план', setupLabel: 'Настройте диапазон зарядки', setupHint: 'Укажите, сколько полезной энергии добавить в батарею и сколько стоит зарядка.', chargeWindowLabel: 'Диапазон зарядки', chargeWindowHint: 'Уровень батареи до и после этой сессии', startSocLabel: 'Начальный заряд', startSocHint: 'Текущий уровень батареи', endSocLabel: 'Целевой заряд', endSocHint: 'Уровень батареи при отключении', capacityLabel: 'Полезная ёмкость батареи', chargerPowerLabel: 'Мощность зарядки', efficiencyLabel: 'Эффективность зарядки', priceLabel: 'Цена электроэнергии', priceHint: 'Приблизительная местная цена за киловатт-час. Измените её под свой тариф.', consumptionLabel: 'Расход автомобиля', resultKicker: 'Энергетический запас хода', resultTitle: 'Понятный план для этой сессии', startingChargeLabel: 'Уже сохранено', targetChargeLabel: 'Целевой заряд', batteryEnergyLabel: 'Энергия в батарее', gridEnergyLabel: 'Энергия из сети', lossesLabel: 'Потери при зарядке', timeLabel: 'Расчётное время', costLabel: 'Расчётная стоимость', rangeLabel: 'Восстановленный запас хода', statusEmpty: 'Энергия ещё не добавлена', statusShort: 'Быстрая подзарядка', statusStandard: 'Сбалансированная зарядка', statusLong: 'Длительный диапазон зарядки', summaryTemplate: 'Добавьте {battery} кВт·ч, чтобы восстановить около {range} км. При мощности {power} кВт это займёт {time} и будет стоить {cost}.', formulaLabel: 'Как работает расчёт', rangeUnit: 'км' },
|
|
6
|
+
faq: [ { question: 'Как калькулятор оценивает сессию зарядки?', answer: 'Он умножает полезную ёмкость батареи на разницу между целевым и начальным зарядом. Затем учитывает эффективность и делит энергию из сети на заданную мощность.' }, { question: 'Почему энергия из сети больше сохранённой энергии?', answer: 'Зарядка не бывает полностью эффективной. Эффективность показывает долю электричества, поступившую в батарею, а остальное считается потерями.' }, { question: 'Учитывается ли кривая зарядки автомобиля?', answer: 'Нет. Расчёт использует указанную постоянную мощность. При высоком уровне заряда автомобиль может снизить её.' }, { question: 'Как рассчитывается восстановленный запас хода?', answer: 'Энергия, добавленная в батарею, делится на расход в киловатт-часах на 100 километров.' }, { question: 'Как выбор валюты меняет цену?', answer: 'Цена электроэнергии и общая стоимость пересчитываются по приблизительному офлайн-коэффициенту относительно евро. Измените цену, если местный тариф отличается.' } ],
|
|
7
|
+
howTo: [ { name: 'Выберите сценарий зарядки', text: 'Выберите Дома, Общественная или Быстрая, чтобы загрузить реалистичный пример.' }, { name: 'Настройте диапазон зарядки', text: 'Введите ёмкость, начальный и целевой уровни батареи.' }, { name: 'Измените условия', text: 'Настройте мощность, эффективность, валюту, цену и расход.' }, { name: 'Прочитайте запас хода', text: 'Сравните энергию батареи и сети, время, стоимость, потери и запас хода.' } ],
|
|
8
|
+
seo: { introTitle: 'Планируйте энергию сессии зарядки', introText: 'Этот калькулятор превращает диапазон зарядки в практическую оценку. Введите ёмкость, уровни батареи, мощность, эффективность, цену и расход, чтобы увидеть энергию из сети, время, стоимость и восстановленный пробег.', formulaTitle: 'Используемые формулы', formulaText: 'Энергия батареи равна полезной ёмкости, умноженной на диапазон зарядки. Энергия из сети равна энергии батареи, делённой на эффективность. Время равно энергии из сети, делённой на мощность, а стоимость равна энергии из сети, умноженной на местную цену.', tableHeaders: ['Ввод', 'Преобразование', 'Результат'], tableRows: [['Ёмкость и диапазон', 'Ёмкость × диапазон', 'Сохранённая энергия'], ['Энергия и эффективность', 'Энергия ÷ эффективность', 'Энергия из сети'], ['Энергия из сети и мощность', 'Энергия ÷ мощность', 'Расчётное время'], ['Энергия из сети и цена', 'Энергия × цена', 'Расчётная стоимость']], limitsTitle: 'Результат помогает планировать', limitsText: 'Калькулятор не моделирует кривую зарядки, температуру батареи, очереди, налоги, подписки или общий зарядный модуль. Используйте реалистичную постоянную мощность.', tipTitle: 'Используйте постоянную мощность', tipText: 'Если автомобиль достигает пиковой мощности ненадолго, укажите мощность, которую он может поддерживать большую часть сессии.', energyStat: 'Энергия батареи и сети', timeStat: 'Расчётное время сессии', costStat: 'Стоимость по вашему тарифу' },
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
content.ui.defaultCurrency = 'EUR';
|
|
12
|
+
|
|
13
|
+
export { content };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'sv', currency: 'SEK', slug: 'kalkylator-for-laddtid-och-kostnad-elbil', title: 'Kalkylator för laddtid och kostnad för elbil', description: 'Beräkna laddtid, elkostnad, laddförluster och återvunnen räckvidd för en laddsession.', faqTitle: 'Vanliga frågor', bibliographyTitle: 'Bibliografiska källor',
|
|
5
|
+
ui: { defaultCurrency: 'SEK', currencyLabel: 'Valuta', currencyHint: 'Välj valuta för lokalt elpris och total kostnad.', currencyMenuLabel: 'Välj valuta', currencyFactorTemplate: 'Ungefärlig offlinefaktor: 1 EUR = {factor} {currency}. Ändra priset efter ditt elavtal.', presetLabel: 'Börja med ett laddscenario', homePreset: 'Hemma', publicPreset: 'Publik', fastPreset: 'Snabb', resetLabel: 'Återställ plan', setupLabel: 'Ställ in laddfönstret', setupHint: 'Ange hur mycket användbar batterienergi du vill lägga till och vad laddningen kostar.', chargeWindowLabel: 'Laddfönster', chargeWindowHint: 'Batteriprocent före och efter sessionen', startSocLabel: 'Startladdning', startSocHint: 'Batteriets nivå nu', endSocLabel: 'Målladdning', endSocHint: 'Batterinivå när du kopplar ur', capacityLabel: 'Användbar batterikapacitet', chargerPowerLabel: 'Laddarens effekt', efficiencyLabel: 'Laddningseffektivitet', priceLabel: 'Elpris', priceHint: 'Ungefärligt lokalt pris per kilowattimme. Ändra det efter ditt avtal.', consumptionLabel: 'Fordonets förbrukning', resultKicker: 'Energi och räckvidd', resultTitle: 'En tydlig plan för sessionen', startingChargeLabel: 'Redan lagrad', targetChargeLabel: 'Målladdning', batteryEnergyLabel: 'Energi till batteriet', gridEnergyLabel: 'Energi från elnätet', lossesLabel: 'Laddförluster', timeLabel: 'Beräknad tid', costLabel: 'Beräknad kostnad', rangeLabel: 'Återvunnen räckvidd', statusEmpty: 'Ingen energi tillagd ännu', statusShort: 'Snabb påfyllning', statusStandard: 'Balanserad laddning', statusLong: 'Långt laddfönster', summaryTemplate: 'Lägg till {battery} kWh för att återfå ungefär {range} km. Vid {power} kW tar det {time} och kostar {cost}.', formulaLabel: 'Så fungerar uppskattningen', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Hur uppskattar kalkylatorn laddsessionen?', answer: 'Den multiplicerar användbar batterikapacitet med skillnaden mellan mål- och startladdning. Sedan tas effektiviteten med och elnätsenergin delas med den angivna effekten.' }, { question: 'Varför är energin från elnätet större?', answer: 'Laddning är inte helt effektiv. Effektiviteten visar hur stor del som når batteriet och resten räknas som laddförlust.' }, { question: 'Ingår bilens laddkurva?', answer: 'Nej. Uppskattningen använder den angivna kontinuerliga effekten. Bilen kan sänka den vid hög laddnivå.' }, { question: 'Hur beräknas återvunnen räckvidd?', answer: 'Energin som läggs till batteriet delas med förbrukningen i kilowattimmar per 100 kilometer.' }, { question: 'Hur ändrar valutaväljaren priset?', answer: 'Pris och total kostnad räknas om med en ungefärlig offlinefaktor mot euron. Ändra priset om ditt lokala avtal skiljer sig.' } ],
|
|
7
|
+
howTo: [ { name: 'Välj ett laddscenario', text: 'Välj Hemma, Publik eller Snabb för att läsa in ett realistiskt exempel.' }, { name: 'Ställ in laddfönstret', text: 'Ange kapacitet samt start- och målnivå.' }, { name: 'Justera villkoren', text: 'Ändra effekt, effektivitet, valuta, pris och förbrukning.' }, { name: 'Läs energi och räckvidd', text: 'Se batteri- och nätenergi, tid, kostnad, förluster och räckvidd.' } ],
|
|
8
|
+
seo: { introTitle: 'Planera energin i en laddsession', introText: 'Den här kalkylatorn gör om ett laddfönster till en praktisk uppskattning. Ange kapacitet, batterinivåer, effekt, effektivitet, pris och förbrukning för att se nätenergi, tid, kostnad och återvunna kilometer.', formulaTitle: 'Formler som används', formulaText: 'Batterienergi är användbar kapacitet multiplicerad med laddfönstret. Nätenergi är batterienergi delad med effektiviteten. Tid är nätenergi delad med effekt och kostnad är nätenergi multiplicerad med lokalt pris.', tableHeaders: ['Inmatning', 'Omvandling', 'Resultat'], tableRows: [['Kapacitet och fönster', 'Kapacitet × fönster', 'Lagrad energi'], ['Energi och effektivitet', 'Energi ÷ effektivitet', 'Nätenergi'], ['Nätenergi och effekt', 'Energi ÷ effekt', 'Beräknad tid'], ['Nätenergi och pris', 'Energi × pris', 'Beräknad kostnad']], limitsTitle: 'Resultatet är ett planeringsstöd', limitsText: 'Kalkylatorn modellerar inte laddkurva, batteritemperatur, köer, skatter, abonnemang eller delad laddare. Använd en realistisk kontinuerlig effekt när du planerar sessionens tid och kostnad.', tipTitle: 'Använd kontinuerlig effekt', tipText: 'Om bilen bara når toppeffekten kort, ange den effekt den kan hålla under större delen av sessionen.', energyStat: 'Batteri- och nätenergi', timeStat: 'Beräknad sessionstid', costStat: 'Kostnad enligt ditt avtal' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
export const content = createLocalizedContent({
|
|
4
|
+
locale: 'tr', currency: 'TRY', slug: 'elektrikli-arac-sarj-suresi-maliyet-hesaplayici', title: 'Elektrikli araç şarj süresi ve maliyeti hesaplayıcı', description: 'Bir şarj oturumu için şarj süresini, elektrik maliyetini, kayıpları ve geri kazanılan menzili tahmin edin.', faqTitle: 'Sık sorulan sorular', bibliographyTitle: 'Kaynakça',
|
|
5
|
+
ui: { defaultCurrency: 'TRY', currencyLabel: 'Para birimi', currencyHint: 'Yerel elektrik fiyatı ve toplam maliyet için para birimini seçin.', currencyMenuLabel: 'Para birimi seç', currencyFactorTemplate: 'Yaklaşık çevrimdışı katsayı: 1 EUR = {factor} {currency}. Fiyatı tarifenize göre güncelleyin.', presetLabel: 'Bir şarj senaryosuyla başlayın', homePreset: 'Ev', publicPreset: 'Halka açık', fastPreset: 'Hızlı', resetLabel: 'Planı sıfırla', setupLabel: 'Şarj aralığını ayarla', setupHint: 'Eklemek istediğiniz kullanılabilir pil enerjisini ve şarj maliyetini belirtin.', chargeWindowLabel: 'Şarj aralığı', chargeWindowHint: 'Bu oturumdan önceki ve sonraki pil yüzdesi', startSocLabel: 'Başlangıç şarjı', startSocHint: 'Pil seviyesi şimdi', endSocLabel: 'Hedef şarj', endSocHint: 'Fişi çekerken pil seviyesi', capacityLabel: 'Kullanılabilir pil kapasitesi', chargerPowerLabel: 'Şarj gücü', efficiencyLabel: 'Şarj verimliliği', priceLabel: 'Elektrik fiyatı', priceHint: 'Kilovat saat başına yaklaşık yerel fiyat. Tarifenize göre düzenleyin.', consumptionLabel: 'Araç tüketimi', resultKicker: 'Enerji menzili', resultTitle: 'Bu oturum için net bir plan', startingChargeLabel: 'Zaten depolanmış', targetChargeLabel: 'Hedef şarj', batteryEnergyLabel: 'Pile giden enerji', gridEnergyLabel: 'Şebekeden gelen enerji', lossesLabel: 'Şarj kayıpları', timeLabel: 'Tahmini süre', costLabel: 'Tahmini maliyet', rangeLabel: 'Geri kazanılan menzil', statusEmpty: 'Henüz enerji eklenmedi', statusShort: 'Hızlı tamamlama', statusStandard: 'Dengeli şarj', statusLong: 'Uzun şarj aralığı', summaryTemplate: 'Yaklaşık {range} km kazanmak için {battery} kWh ekleyin. {power} kW ile süre {time}, maliyet {cost} olur.', formulaLabel: 'Tahmin nasıl çalışır', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: 'Hesaplayıcı şarj oturumunu nasıl tahmin eder?', answer: 'Kullanılabilir pil kapasitesini hedef ve başlangıç şarjı arasındaki farkla çarpar. Ardından verimliliği hesaba katar ve şebeke enerjisini girilen şarj gücüne böler.' }, { question: 'Şebeke enerjisi neden depolanan enerjiden fazla?', answer: 'Şarj tamamen verimli değildir. Verimlilik, elektriğin pile ulaşan kısmını gösterir; kalan bölüm şarj kaybıdır.' }, { question: 'Aracımın şarj eğrisi hesaba katılır mı?', answer: 'Hayır. Tahmin, girdiğiniz sürekli gücü kullanır. Pil seviyesi yükseldiğinde araç gücü azaltabilir.' }, { question: 'Geri kazanılan menzil nasıl hesaplanır?', answer: 'Pile eklenen enerji, 100 kilometrede kilovat saat cinsinden araç tüketimine bölünür.' }, { question: 'Para birimi seçici fiyatı nasıl değiştirir?', answer: 'Elektrik fiyatını ve toplam maliyeti euroya göre yaklaşık çevrimdışı katsayıyla dönüştürür. Yerel tarifeniz farklıysa fiyatı düzenleyin.' } ],
|
|
7
|
+
howTo: [ { name: 'Şarj senaryosu seçin', text: 'Gerçekçi bir örnek yüklemek için Ev, Halka açık veya Hızlı seçin.' }, { name: 'Şarj aralığını ayarlayın', text: 'Kapasiteyi ve başlangıç ile hedef pil seviyelerini girin.' }, { name: 'Koşulları düzenleyin', text: 'Gücü, verimliliği, para birimini, fiyatı ve tüketimi değiştirin.' }, { name: 'Enerji menzilini okuyun', text: 'Pil ve şebeke enerjisini, süreyi, maliyeti, kayıpları ve menzili inceleyin.' } ],
|
|
8
|
+
seo: { introTitle: 'Bir elektrikli araç şarj oturumunun enerjisini planlayın', introText: 'Bu hesaplayıcı bir şarj aralığını pratik bir tahmine dönüştürür. Şebeke enerjisini, süreyi, maliyeti ve kazanılan kilometreyi görmek için kapasiteyi, pil seviyelerini, gücü, verimliliği, fiyatı ve tüketimi girin.', formulaTitle: 'Kullanılan formüller', formulaText: 'Pil enerjisi, kullanılabilir kapasite ile şarj aralığının çarpımıdır. Şebeke enerjisi, pil enerjisinin verimliliğe bölünmesidir. Süre, şebeke enerjisinin güce bölünmesiyle; maliyet ise şebeke enerjisinin yerel fiyatla çarpılmasıyla bulunur.', tableHeaders: ['Girdi', 'Dönüşüm', 'Sonuç'], tableRows: [['Kapasite ve aralık', 'Kapasite × aralık', 'Depolanan enerji'], ['Enerji ve verimlilik', 'Enerji ÷ verimlilik', 'Şebeke enerjisi'], ['Şebeke enerjisi ve güç', 'Enerji ÷ güç', 'Tahmini süre'], ['Şebeke enerjisi ve fiyat', 'Enerji × fiyat', 'Tahmini maliyet']], limitsTitle: 'Sonuç bir planlama rehberidir', limitsText: 'Hesaplayıcı şarj eğrisini, pil sıcaklığını, kuyrukları, vergileri, abonelikleri veya paylaşılan şarj cihazını modellemez. Gerçekçi sürekli güç kullanın ve oturum süresi ile maliyetini planlarken bu değeri temel alın.', tipTitle: 'Sürekli gücü kullanın', tipText: 'Araç en yüksek güce yalnızca kısa süre ulaşıyorsa oturumun çoğunda koruyabildiği gücü girin.', energyStat: 'Pil ve şebeke enerjisi', timeStat: 'Tahmini oturum süresi', costStat: 'Tarifenize göre maliyet' },
|
|
9
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createLocalizedContent } from './factory';
|
|
2
|
+
|
|
3
|
+
const content = createLocalizedContent({
|
|
4
|
+
locale: 'zh', currency: 'CNY', slug: '电动汽车充电时间和费用计算器', title: '电动汽车充电时间和费用计算器', description: '估算一次充电所需的时间、电费、充电损耗以及恢复的续航里程。', faqTitle: '常见问题', bibliographyTitle: '参考资料',
|
|
5
|
+
ui: { defaultCurrency: 'CNY', currencyLabel: '货币', currencyHint: '选择本地电价和总费用使用的货币。', currencyMenuLabel: '选择货币', currencyFactorTemplate: '离线近似换算系数:1 EUR = {factor} {currency}。请根据实际电价更新价格。', presetLabel: '从充电场景开始', homePreset: '家用', publicPreset: '公共', fastPreset: '快速', resetLabel: '重置计划', setupLabel: '设置充电区间', setupHint: '输入本次希望增加的可用电池能量以及充电费用。', chargeWindowLabel: '充电区间', chargeWindowHint: '本次充电前后的电池百分比', startSocLabel: '开始电量', startSocHint: '当前电池电量', endSocLabel: '目标电量', endSocHint: '拔下充电器时的电量', capacityLabel: '可用电池容量', chargerPowerLabel: '充电功率', efficiencyLabel: '充电效率', priceLabel: '电价', priceHint: '每千瓦时的本地电价估算。请根据实际电价编辑。', consumptionLabel: '车辆能耗', resultKicker: '能量续航', resultTitle: '清晰的本次充电计划', startingChargeLabel: '已有电量', targetChargeLabel: '目标电量', batteryEnergyLabel: '进入电池的能量', gridEnergyLabel: '来自电网的能量', lossesLabel: '充电损耗', timeLabel: '预计时间', costLabel: '预计费用', rangeLabel: '恢复的续航', statusEmpty: '尚未增加能量', statusShort: '快速补电', statusStandard: '均衡充电', statusLong: '长充电区间', summaryTemplate: '增加 {battery} kWh 可恢复约 {range} km 续航。使用 {power} kW 时需要 {time},费用为 {cost}。', formulaLabel: '估算方式', rangeUnit: 'km' },
|
|
6
|
+
faq: [ { question: '计算器如何估算充电时间?', answer: '它将可用电池容量乘以目标电量和开始电量的差值,再考虑充电效率,并用电网能量除以输入的充电功率。' }, { question: '为什么电网能量高于电池储存能量?', answer: '充电不是百分之百高效。效率表示到达电池的电量比例,其余部分计为充电损耗。' }, { question: '是否包含车辆的充电曲线?', answer: '不包含。估算使用输入的持续功率。电量较高时,车辆可能会降低功率。' }, { question: '恢复的续航如何计算?', answer: '将进入电池的能量除以车辆每 100 公里的千瓦时能耗。' }, { question: '切换货币后价格如何变化?', answer: '计算器使用相对于欧元的离线近似系数换算电价和总费用。如果本地电价不同,请手动更新价格。' } ],
|
|
7
|
+
howTo: [ { name: '选择充电场景', text: '选择家用、公共或快速以加载一个现实示例。' }, { name: '设置充电区间', text: '输入电池容量以及开始和目标电量。' }, { name: '调整充电条件', text: '修改充电功率、效率、货币、价格和能耗。' }, { name: '查看能量续航', text: '查看电池能量、电网能量、时间、费用、损耗和续航。' } ],
|
|
8
|
+
seo: { introTitle: '规划一次电动汽车充电的能量', introText: '这个计算器会把充电区间转换为实用估算。输入容量、电量、功率、效率、电价和能耗,即可查看电网能量、时间、费用以及恢复的续航里程。它适合比较不同充电方案,并帮助判断充电时间是否符合停车安排,便于提前安排充电计划。', formulaTitle: '使用的公式', formulaText: '电池能量等于可用容量乘以充电区间。电网能量等于电池能量除以效率。时间等于电网能量除以充电功率,费用等于电网能量乘以本地电价。', tableHeaders: ['输入', '转换', '结果'], tableRows: [['容量和充电区间', '容量 × 区间', '储存能量'], ['能量和效率', '能量 ÷ 效率', '电网能量'], ['电网能量和功率', '能量 ÷ 功率', '预计时间'], ['电网能量和电价', '能量 × 电价', '预计费用']], limitsTitle: '结果用于辅助规划', limitsText: '计算器不会模拟车辆充电曲线、电池温度、排队、税费、订阅或共享充电器。请使用现实的持续功率,并将结果作为时间和费用的参考。', tipTitle: '使用持续功率', tipText: '如果车辆只能短时间达到峰值功率,请输入它在大部分充电过程中能够保持的功率。', energyStat: '电池和电网能量', timeStat: '预计充电时间', costStat: '按本地电价计算的费用' },
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
content.slug = 'ev-charging-time-cost-planner';
|
|
12
|
+
|
|
13
|
+
export { content };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { evChargingTimeCostPlanner } from './entry';
|
|
2
|
+
|
|
3
|
+
export * from './entry';
|
|
4
|
+
|
|
5
|
+
export const EV_CHARGING_TIME_COST_PLANNER_TOOL = {
|
|
6
|
+
entry: evChargingTimeCostPlanner,
|
|
7
|
+
Component: () => import('./component.astro'),
|
|
8
|
+
SEOComponent: () => import('./seo.astro'),
|
|
9
|
+
BibliographyComponent: () => import('./bibliography.astro'),
|
|
10
|
+
};
|