@jjlmoya/utils-home 1.16.0 → 1.17.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 +1 -1
- package/src/pages/[locale]/[slug].astro +28 -12
- package/src/tests/locale_completeness.test.ts +2 -20
- package/src/tests/shared-test-helpers.ts +56 -0
- package/src/tests/tool_exports.test.ts +34 -0
- package/src/tool/dewPointCalculator/bibliography.ts +10 -0
- package/src/tool/dewPointCalculator/i18n/de.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/en.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/es.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/fr.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/id.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/it.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/ja.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/ko.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/nl.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/pl.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/pt.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/ru.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/sv.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/tr.ts +2 -12
- package/src/tool/dewPointCalculator/i18n/zh.ts +2 -12
- package/src/tool/dewPointCalculator/seo.astro +2 -1
- package/src/tool/heatingComparator/bibliography.ts +14 -0
- package/src/tool/heatingComparator/i18n/de.ts +2 -16
- package/src/tool/heatingComparator/i18n/en.ts +2 -12
- package/src/tool/heatingComparator/i18n/es.ts +2 -16
- package/src/tool/heatingComparator/i18n/fr.ts +2 -12
- package/src/tool/heatingComparator/i18n/id.ts +2 -16
- package/src/tool/heatingComparator/i18n/it.ts +2 -16
- package/src/tool/heatingComparator/i18n/ja.ts +296 -310
- package/src/tool/heatingComparator/i18n/ko.ts +296 -306
- package/src/tool/heatingComparator/i18n/nl.ts +2 -16
- package/src/tool/heatingComparator/i18n/pl.ts +2 -16
- package/src/tool/heatingComparator/i18n/pt.ts +2 -16
- package/src/tool/heatingComparator/i18n/ru.ts +2 -12
- package/src/tool/heatingComparator/i18n/sv.ts +2 -16
- package/src/tool/heatingComparator/i18n/tr.ts +2 -16
- package/src/tool/heatingComparator/i18n/zh.ts +296 -306
- package/src/tool/heatingComparator/seo.astro +3 -3
- package/src/tool/ledSavingCalculator/bibliography.ts +14 -0
- package/src/tool/ledSavingCalculator/i18n/de.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/en.ts +2 -16
- package/src/tool/ledSavingCalculator/i18n/es.ts +2 -16
- package/src/tool/ledSavingCalculator/i18n/fr.ts +2 -16
- package/src/tool/ledSavingCalculator/i18n/id.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/it.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/ja.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/ko.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/nl.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/pl.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/pt.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/ru.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/sv.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/tr.ts +2 -12
- package/src/tool/ledSavingCalculator/i18n/zh.ts +2 -12
- package/src/tool/ledSavingCalculator/seo.astro +2 -1
- package/src/tool/projectorCalculator/bibliography.ts +5 -0
- package/src/tool/projectorCalculator/i18n/de.ts +2 -6
- package/src/tool/projectorCalculator/i18n/en.ts +2 -7
- package/src/tool/projectorCalculator/i18n/es.ts +2 -7
- package/src/tool/projectorCalculator/i18n/fr.ts +2 -7
- package/src/tool/projectorCalculator/i18n/id.ts +2 -7
- package/src/tool/projectorCalculator/i18n/it.ts +2 -6
- package/src/tool/projectorCalculator/i18n/ja.ts +175 -179
- package/src/tool/projectorCalculator/i18n/ko.ts +175 -179
- package/src/tool/projectorCalculator/i18n/nl.ts +2 -6
- package/src/tool/projectorCalculator/i18n/pl.ts +2 -6
- package/src/tool/projectorCalculator/i18n/pt.ts +2 -6
- package/src/tool/projectorCalculator/i18n/ru.ts +2 -6
- package/src/tool/projectorCalculator/i18n/sv.ts +2 -6
- package/src/tool/projectorCalculator/i18n/tr.ts +2 -6
- package/src/tool/projectorCalculator/i18n/zh.ts +175 -179
- package/src/tool/projectorCalculator/seo.astro +2 -1
- package/src/tool/qrGenerator/bibliography.ts +14 -0
- package/src/tool/qrGenerator/i18n/de.ts +192 -202
- package/src/tool/qrGenerator/i18n/en.ts +2 -16
- package/src/tool/qrGenerator/i18n/es.ts +2 -16
- package/src/tool/qrGenerator/i18n/fr.ts +2 -16
- package/src/tool/qrGenerator/i18n/id.ts +146 -150
- package/src/tool/qrGenerator/i18n/it.ts +169 -173
- package/src/tool/qrGenerator/i18n/ja.ts +146 -150
- package/src/tool/qrGenerator/i18n/ko.ts +146 -150
- package/src/tool/qrGenerator/i18n/nl.ts +146 -150
- package/src/tool/qrGenerator/i18n/pl.ts +146 -150
- package/src/tool/qrGenerator/i18n/pt.ts +146 -150
- package/src/tool/qrGenerator/i18n/ru.ts +146 -150
- package/src/tool/qrGenerator/i18n/sv.ts +146 -150
- package/src/tool/qrGenerator/i18n/tr.ts +146 -150
- package/src/tool/qrGenerator/i18n/zh.ts +146 -150
- package/src/tool/qrGenerator/seo.astro +2 -1
- package/src/tool/solarCalculator/bibliography.ts +5 -0
- package/src/tool/solarCalculator/i18n/de.ts +141 -145
- package/src/tool/solarCalculator/i18n/en.ts +2 -7
- package/src/tool/solarCalculator/i18n/es.ts +2 -7
- package/src/tool/solarCalculator/i18n/fr.ts +2 -7
- package/src/tool/solarCalculator/i18n/id.ts +2 -6
- package/src/tool/solarCalculator/i18n/it.ts +2 -6
- package/src/tool/solarCalculator/i18n/ja.ts +121 -125
- package/src/tool/solarCalculator/i18n/ko.ts +116 -120
- package/src/tool/solarCalculator/i18n/nl.ts +2 -5
- package/src/tool/solarCalculator/i18n/pl.ts +2 -6
- package/src/tool/solarCalculator/i18n/pt.ts +2 -6
- package/src/tool/solarCalculator/i18n/ru.ts +2 -5
- package/src/tool/solarCalculator/i18n/sv.ts +2 -5
- package/src/tool/solarCalculator/i18n/tr.ts +2 -5
- package/src/tool/solarCalculator/i18n/zh.ts +116 -120
- package/src/tool/solarCalculator/seo.astro +2 -1
- package/src/tool/tariffComparator/bibliography.ts +7 -0
- package/src/tool/tariffComparator/i18n/de.ts +129 -132
- package/src/tool/tariffComparator/i18n/en.ts +2 -9
- package/src/tool/tariffComparator/i18n/es.ts +2 -9
- package/src/tool/tariffComparator/i18n/fr.ts +2 -9
- package/src/tool/tariffComparator/i18n/id.ts +2 -5
- package/src/tool/tariffComparator/i18n/it.ts +2 -5
- package/src/tool/tariffComparator/i18n/ja.ts +129 -132
- package/src/tool/tariffComparator/i18n/ko.ts +129 -132
- package/src/tool/tariffComparator/i18n/nl.ts +2 -5
- package/src/tool/tariffComparator/i18n/pl.ts +2 -5
- package/src/tool/tariffComparator/i18n/pt.ts +2 -5
- package/src/tool/tariffComparator/i18n/ru.ts +2 -5
- package/src/tool/tariffComparator/i18n/sv.ts +2 -5
- package/src/tool/tariffComparator/i18n/tr.ts +2 -5
- package/src/tool/tariffComparator/i18n/zh.ts +129 -132
- package/src/tool/tariffComparator/seo.astro +2 -1
- package/src/types.ts +0 -2
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
2
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
3
|
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
4
5
|
|
|
5
6
|
const slug = 'perbandingan-tarif-listrik';
|
|
6
7
|
const title = 'Perbandingan Tarif Listrik: Pasar Bebas vs Teratur';
|
|
@@ -77,12 +78,8 @@ export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
|
77
78
|
slug,
|
|
78
79
|
title,
|
|
79
80
|
description,
|
|
80
|
-
faqTitle: 'Pertanyaan Umum',
|
|
81
81
|
faq: faqData,
|
|
82
|
-
|
|
83
|
-
bibliography: [
|
|
84
|
-
{ name: 'Portal Energi Nasional', url: 'https://www.esdm.go.id' },
|
|
85
|
-
],
|
|
82
|
+
bibliography,
|
|
86
83
|
howTo: howToData,
|
|
87
84
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
88
85
|
seo: [
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
2
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
3
|
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
4
5
|
|
|
5
6
|
const slug = 'confronto-tariffe-luce';
|
|
6
7
|
const title = 'Confrontatore Tariffe Luce: Mercato Libero vs Tutelato';
|
|
@@ -77,12 +78,8 @@ export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
|
77
78
|
slug,
|
|
78
79
|
title,
|
|
79
80
|
description,
|
|
80
|
-
faqTitle: 'Domande Frequenti',
|
|
81
81
|
faq: faqData,
|
|
82
|
-
|
|
83
|
-
bibliography: [
|
|
84
|
-
{ name: 'ARERA — Portale Offerte', url: 'https://www.arera.it' },
|
|
85
|
-
],
|
|
82
|
+
bibliography,
|
|
86
83
|
howTo: howToData,
|
|
87
84
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
88
85
|
seo: [
|
|
@@ -1,133 +1,130 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
-
import type { TariffComparatorUI } from '../ui';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
'@
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
'@
|
|
56
|
-
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'electricity-tariff-comparator';
|
|
7
|
+
const title = '電気料金比較:自由市場 vs 規制料金';
|
|
8
|
+
const description =
|
|
9
|
+
'どちらの電気料金プランがあなたに最適かを見つけましょう。消費電力に基づいて自由市場プランと規制プランを比較します。';
|
|
10
|
+
|
|
11
|
+
const faqData = [
|
|
12
|
+
{
|
|
13
|
+
question: '固定料金プランと市場連動型プラン、どちらが良いですか?',
|
|
14
|
+
answer:
|
|
15
|
+
'固定料金は価格の安定性を提供します。市場連動型は市場価格が安い時に有利ですが、高騰するリスクもあります。このツールでシミュレーションを行ってください。',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: '年間消費電力はどこでわかりますか?',
|
|
19
|
+
answer:
|
|
20
|
+
'検針票や電力会社のマイページに記載されている年間使用量(kWh)を確認してください。',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: '契約電力とは何ですか?',
|
|
24
|
+
answer:
|
|
25
|
+
'一度に使える電気の上限(kWまたはA)です。高すぎると基本料金が無駄になり、低すぎるとブレーカーが落ちやすくなります。',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
const howToData = [
|
|
30
|
+
{
|
|
31
|
+
name: '検針票を確認',
|
|
32
|
+
text: '前年1年間の消費量(kWh)と現在の契約容量を確認します。',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: '値を入力',
|
|
36
|
+
text: 'スライダーをご自身の実際のデータに合わせます。',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: '結果を比較',
|
|
40
|
+
text: '2つのプランの年間推定金額を確認します。',
|
|
41
|
+
},
|
|
42
|
+
];
|
|
43
|
+
|
|
44
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
45
|
+
'@context': 'https://schema.org',
|
|
46
|
+
'@type': 'FAQPage',
|
|
47
|
+
mainEntity: faqData.map((item) => ({
|
|
48
|
+
'@type': 'Question',
|
|
49
|
+
name: item.question,
|
|
50
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
51
|
+
})),
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const howToSchema: WithContext<HowTo> = {
|
|
55
|
+
'@context': 'https://schema.org',
|
|
56
|
+
'@type': 'HowTo',
|
|
57
|
+
name: title,
|
|
58
|
+
description,
|
|
59
|
+
step: howToData.map((step) => ({
|
|
60
|
+
'@type': 'HowToStep',
|
|
61
|
+
name: step.name,
|
|
62
|
+
text: step.text,
|
|
63
|
+
})),
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
67
|
+
'@context': 'https://schema.org',
|
|
68
|
+
'@type': 'SoftwareApplication',
|
|
69
|
+
name: title,
|
|
70
|
+
description,
|
|
71
|
+
applicationCategory: 'UtilityApplication',
|
|
72
|
+
operatingSystem: 'All',
|
|
73
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'JPY' },
|
|
74
|
+
inLanguage: 'ja',
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
78
|
+
slug,
|
|
79
|
+
title,
|
|
57
80
|
description,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
ui: {
|
|
109
|
-
labelConsumption: '年間消費電力',
|
|
110
|
-
unitKwhYear: 'kWh/年',
|
|
111
|
-
labelPower: '契約容量',
|
|
112
|
-
unitKw: 'kW/A',
|
|
113
|
-
labelMarket: '市場連動・規制プラン',
|
|
114
|
-
labelFree: '固定料金プラン',
|
|
115
|
-
labelAnnualEst: '年間推定金額',
|
|
116
|
-
labelPowerTerm: '基本料金 (固定分)',
|
|
117
|
-
labelEnergyTerm: '電力量料金 (従量分)',
|
|
118
|
-
labelDashboard: 'エネルギーダッシュボード',
|
|
119
|
-
labelMaxPower: '最大使用電力',
|
|
120
|
-
labelMaxPowerEst: '推定ピーク',
|
|
121
|
-
labelCo2: 'CO₂排出量',
|
|
122
|
-
labelCo2Est: '年間推定',
|
|
123
|
-
labelSimulator: 'シナリオシミュレーター',
|
|
124
|
-
labelSolar: '太陽光自己消費',
|
|
125
|
-
labelSolarDesc: 'パネル設置時の節約(30%削減と仮定)',
|
|
126
|
-
labelShift: 'ピークシフト',
|
|
127
|
-
labelShiftDesc: '安い時間帯への移行割合:',
|
|
128
|
-
badgeBetter: 'よりお得な選択肢',
|
|
129
|
-
badgeWorseYear: '年',
|
|
130
|
-
currencySign: '¥',
|
|
131
|
-
monthLabels: '1月,2月,3月,4月,5月,6月,7月,8月,9月,10月,11月,12月',
|
|
132
|
-
},
|
|
133
|
-
};
|
|
81
|
+
faq: faqData,
|
|
82
|
+
bibliography,
|
|
83
|
+
howTo: howToData,
|
|
84
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
85
|
+
seo: [
|
|
86
|
+
{
|
|
87
|
+
type: 'title',
|
|
88
|
+
text: '電気代を節約するために',
|
|
89
|
+
level: 2,
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
type: 'paragraph',
|
|
93
|
+
html: '適切なプランを選択することで、年間で大きな節約が可能になります。',
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
type: 'summary',
|
|
97
|
+
title: '節約のヒント',
|
|
98
|
+
items: [
|
|
99
|
+
'定期的に他社のプランと比較する。',
|
|
100
|
+
'無理のない範囲で契約容量を適正化する。',
|
|
101
|
+
'可能であれば安い時間帯に電力をシフトする。',
|
|
102
|
+
],
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
ui: {
|
|
106
|
+
labelConsumption: '年間消費電力',
|
|
107
|
+
unitKwhYear: 'kWh/年',
|
|
108
|
+
labelPower: '契約容量',
|
|
109
|
+
unitKw: 'kW/A',
|
|
110
|
+
labelMarket: '市場連動・規制プラン',
|
|
111
|
+
labelFree: '固定料金プラン',
|
|
112
|
+
labelAnnualEst: '年間推定金額',
|
|
113
|
+
labelPowerTerm: '基本料金 (固定分)',
|
|
114
|
+
labelEnergyTerm: '電力量料金 (従量分)',
|
|
115
|
+
labelDashboard: 'エネルギーダッシュボード',
|
|
116
|
+
labelMaxPower: '最大使用電力',
|
|
117
|
+
labelMaxPowerEst: '推定ピーク',
|
|
118
|
+
labelCo2: 'CO₂排出量',
|
|
119
|
+
labelCo2Est: '年間推定',
|
|
120
|
+
labelSimulator: 'シナリオシミュレーター',
|
|
121
|
+
labelSolar: '太陽光自己消費',
|
|
122
|
+
labelSolarDesc: 'パネル設置時の節約(30%削減と仮定)',
|
|
123
|
+
labelShift: 'ピークシフト',
|
|
124
|
+
labelShiftDesc: '安い時間帯への移行割合:',
|
|
125
|
+
badgeBetter: 'よりお得な選択肢',
|
|
126
|
+
badgeWorseYear: '年',
|
|
127
|
+
currencySign: '¥',
|
|
128
|
+
monthLabels: '1月,2月,3月,4月,5月,6月,7月,8月,9月,10月,11月,12月',
|
|
129
|
+
},
|
|
130
|
+
};
|
|
@@ -1,133 +1,130 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
-
import type { TariffComparatorUI } from '../ui';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
'@
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
'@
|
|
56
|
-
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
5
|
+
|
|
6
|
+
const slug = 'electricity-tariff-comparator';
|
|
7
|
+
const title = '전기 요금 비교: 고정 요금 vs 변동 요금';
|
|
8
|
+
const description =
|
|
9
|
+
'나에게 어떤 전기 요금제가 가장 유리한지 확인해 보세요. 연간 사용량을 기준으로 고정 요금제와 변동 요금제를 비교합니다.';
|
|
10
|
+
|
|
11
|
+
const faqData = [
|
|
12
|
+
{
|
|
13
|
+
question: '고정 요금과 변동 요금 중 무엇이 더 좋나요?',
|
|
14
|
+
answer:
|
|
15
|
+
'고정 요금은 가격 예측이 가능합니다. 변동 요금은 시장 가격이 낮을 때 매우 저렴할 수 있지만 변동성이 큽니다. 시뮬레이터를 통해 결정해 보세요.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: '연간 소비량은 어떻게 확인하나요?',
|
|
19
|
+
answer:
|
|
20
|
+
'최근 전기 요금 고지서의 "연간 사용량"(kWh) 항목에서 확인할 수 있습니다.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: '계약 전력이란 무엇인가요?',
|
|
24
|
+
answer:
|
|
25
|
+
'동시에 사용할 수 있는 최대 전기 부하(kW)를 말합니다.',
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
|
|
29
|
+
const howToData = [
|
|
30
|
+
{
|
|
31
|
+
name: '고지서 확인',
|
|
32
|
+
text: '연간 소비량(kWh)과 계약 전력(kW)을 확인합니다.',
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
name: '수치 설정',
|
|
36
|
+
text: '실제 데이터에 맞게 슬라이더를 조정합니다.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: '결과 비교',
|
|
40
|
+
text: '두 방식의 연간 예상 비용 차이를 확인합니다.',
|
|
41
|
+
},
|
|
42
|
+
];
|
|
43
|
+
|
|
44
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
45
|
+
'@context': 'https://schema.org',
|
|
46
|
+
'@type': 'FAQPage',
|
|
47
|
+
mainEntity: faqData.map((item) => ({
|
|
48
|
+
'@type': 'Question',
|
|
49
|
+
name: item.question,
|
|
50
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
51
|
+
})),
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
const howToSchema: WithContext<HowTo> = {
|
|
55
|
+
'@context': 'https://schema.org',
|
|
56
|
+
'@type': 'HowTo',
|
|
57
|
+
name: title,
|
|
58
|
+
description,
|
|
59
|
+
step: howToData.map((step) => ({
|
|
60
|
+
'@type': 'HowToStep',
|
|
61
|
+
name: step.name,
|
|
62
|
+
text: step.text,
|
|
63
|
+
})),
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
67
|
+
'@context': 'https://schema.org',
|
|
68
|
+
'@type': 'SoftwareApplication',
|
|
69
|
+
name: title,
|
|
70
|
+
description,
|
|
71
|
+
applicationCategory: 'UtilityApplication',
|
|
72
|
+
operatingSystem: 'All',
|
|
73
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'KRW' },
|
|
74
|
+
inLanguage: 'ko',
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
78
|
+
slug,
|
|
79
|
+
title,
|
|
57
80
|
description,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
ui: {
|
|
109
|
-
labelConsumption: '연간 소비량',
|
|
110
|
-
unitKwhYear: 'kWh/년',
|
|
111
|
-
labelPower: '계약 전력',
|
|
112
|
-
unitKw: 'kW',
|
|
113
|
-
labelMarket: '변동/규제 요금제',
|
|
114
|
-
labelFree: '고정 요금제',
|
|
115
|
-
labelAnnualEst: '연간 예상 비용',
|
|
116
|
-
labelPowerTerm: '기본 요금 (고정분)',
|
|
117
|
-
labelEnergyTerm: '전력량 요금 (사용분)',
|
|
118
|
-
labelDashboard: '에너지 대시보드',
|
|
119
|
-
labelMaxPower: '최대 전력 피크',
|
|
120
|
-
labelMaxPowerEst: '예상 피크',
|
|
121
|
-
labelCo2: '탄소 발자국',
|
|
122
|
-
labelCo2Est: '연간 예상치',
|
|
123
|
-
labelSimulator: '시나리오 시뮬레이터',
|
|
124
|
-
labelSolar: '태양광 자가소비',
|
|
125
|
-
labelSolarDesc: '패널 설치 시 절감 시뮬레이션 (30% 감소 가정)',
|
|
126
|
-
labelShift: '부하 이동 (피크 시프트)',
|
|
127
|
-
labelShiftDesc: '저렴한 시간대로 옮긴 비율:',
|
|
128
|
-
badgeBetter: '더 저렴한 선택',
|
|
129
|
-
badgeWorseYear: '년',
|
|
130
|
-
currencySign: '₩',
|
|
131
|
-
monthLabels: '1월,2月,3월,4월,5월,6월,7월,8월,9월,10월,11월,12월',
|
|
132
|
-
},
|
|
133
|
-
};
|
|
81
|
+
faq: faqData,
|
|
82
|
+
bibliography,
|
|
83
|
+
howTo: howToData,
|
|
84
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
85
|
+
seo: [
|
|
86
|
+
{
|
|
87
|
+
type: 'title',
|
|
88
|
+
text: '전기 요금 절약하기',
|
|
89
|
+
level: 2,
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
type: 'paragraph',
|
|
93
|
+
html: '나에게 맞는 요금제를 선택하면 연간 수십만 원을 절약할 수 있습니다.',
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
type: 'summary',
|
|
97
|
+
title: '절약 팁',
|
|
98
|
+
items: [
|
|
99
|
+
'정기적으로 새로운 요금제를 비교해 보세요.',
|
|
100
|
+
'불필요하게 높은 계약 전력을 조정하여 기본료를 줄이세요.',
|
|
101
|
+
'가능하다면 요금이 저렴한 시간대에 가전제품을 사용하세요.',
|
|
102
|
+
],
|
|
103
|
+
},
|
|
104
|
+
],
|
|
105
|
+
ui: {
|
|
106
|
+
labelConsumption: '연간 소비량',
|
|
107
|
+
unitKwhYear: 'kWh/년',
|
|
108
|
+
labelPower: '계약 전력',
|
|
109
|
+
unitKw: 'kW',
|
|
110
|
+
labelMarket: '변동/규제 요금제',
|
|
111
|
+
labelFree: '고정 요금제',
|
|
112
|
+
labelAnnualEst: '연간 예상 비용',
|
|
113
|
+
labelPowerTerm: '기본 요금 (고정분)',
|
|
114
|
+
labelEnergyTerm: '전력량 요금 (사용분)',
|
|
115
|
+
labelDashboard: '에너지 대시보드',
|
|
116
|
+
labelMaxPower: '최대 전력 피크',
|
|
117
|
+
labelMaxPowerEst: '예상 피크',
|
|
118
|
+
labelCo2: '탄소 발자국',
|
|
119
|
+
labelCo2Est: '연간 예상치',
|
|
120
|
+
labelSimulator: '시나리오 시뮬레이터',
|
|
121
|
+
labelSolar: '태양광 자가소비',
|
|
122
|
+
labelSolarDesc: '패널 설치 시 절감 시뮬레이션 (30% 감소 가정)',
|
|
123
|
+
labelShift: '부하 이동 (피크 시프트)',
|
|
124
|
+
labelShiftDesc: '저렴한 시간대로 옮긴 비율:',
|
|
125
|
+
badgeBetter: '더 저렴한 선택',
|
|
126
|
+
badgeWorseYear: '년',
|
|
127
|
+
currencySign: '₩',
|
|
128
|
+
monthLabels: '1월,2月,3월,4월,5월,6월,7월,8월,9월,10월,11월,12월',
|
|
129
|
+
},
|
|
130
|
+
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
2
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
3
|
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
4
5
|
|
|
5
6
|
const slug = 'energietarief-vergelijker';
|
|
6
7
|
const title = 'Energietarief Vergelijker: Vast vs. Variabel';
|
|
@@ -77,12 +78,8 @@ export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
|
77
78
|
slug,
|
|
78
79
|
title,
|
|
79
80
|
description,
|
|
80
|
-
faqTitle: 'Veelgestelde Vragen',
|
|
81
81
|
faq: faqData,
|
|
82
|
-
|
|
83
|
-
bibliography: [
|
|
84
|
-
{ name: 'ACM ConsuWijzer', url: 'https://www.consuwijzer.nl' },
|
|
85
|
-
],
|
|
82
|
+
bibliography,
|
|
86
83
|
howTo: howToData,
|
|
87
84
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
88
85
|
seo: [
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
2
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
3
|
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
4
5
|
|
|
5
6
|
const slug = 'porownanie-taryf-pradu';
|
|
6
7
|
const title = 'Porównywarka Taryf Prądu: Rynek Wolny vs Regulowany';
|
|
@@ -77,12 +78,8 @@ export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
|
77
78
|
slug,
|
|
78
79
|
title,
|
|
79
80
|
description,
|
|
80
|
-
faqTitle: 'Często Zadawane Pytania',
|
|
81
81
|
faq: faqData,
|
|
82
|
-
|
|
83
|
-
bibliography: [
|
|
84
|
-
{ name: 'URE — Urząd Regulacji Energetyki', url: 'https://www.ure.gov.pl' },
|
|
85
|
-
],
|
|
82
|
+
bibliography,
|
|
86
83
|
howTo: howToData,
|
|
87
84
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
88
85
|
seo: [
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
2
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
3
|
import type { TariffComparatorUI } from '../ui';
|
|
4
|
+
import { bibliography } from '../bibliography';
|
|
4
5
|
|
|
5
6
|
const slug = 'comparador-tarifas-eletricidade';
|
|
6
7
|
const title = 'Comparador de Tarifas de Eletricidade: Mercado Livre vs Regulado';
|
|
@@ -77,12 +78,8 @@ export const content: ToolLocaleContent<TariffComparatorUI> = {
|
|
|
77
78
|
slug,
|
|
78
79
|
title,
|
|
79
80
|
description,
|
|
80
|
-
faqTitle: 'Perguntas Frequentes',
|
|
81
81
|
faq: faqData,
|
|
82
|
-
|
|
83
|
-
bibliography: [
|
|
84
|
-
{ name: 'ERSE — Simulador de Preços', url: 'https://www.erse.pt' },
|
|
85
|
-
],
|
|
82
|
+
bibliography,
|
|
86
83
|
howTo: howToData,
|
|
87
84
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
88
85
|
seo: [
|