@jjlmoya/utils-alcohol 1.14.0 → 1.16.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 -1
- package/src/category/i18n/id.ts +28 -0
- package/src/category/i18n/sv.ts +19 -0
- package/src/category/index.ts +2 -0
- package/src/tests/faq_count.test.ts +12 -10
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +42 -0
- package/src/tests/no_h1_in_components.test.ts +48 -0
- package/src/tests/seo_length.test.ts +3 -34
- package/src/tests/slug_uniqueness.test.ts +81 -0
- package/src/tests/tool_validation.test.ts +4 -4
- package/src/tool/alcoholClearance/i18n/de.ts +205 -0
- package/src/tool/alcoholClearance/i18n/id.ts +205 -0
- package/src/tool/alcoholClearance/i18n/it.ts +180 -0
- package/src/tool/alcoholClearance/i18n/ja.ts +205 -0
- package/src/tool/alcoholClearance/i18n/ko.ts +205 -0
- package/src/tool/alcoholClearance/i18n/nl.ts +205 -0
- package/src/tool/alcoholClearance/i18n/pl.ts +205 -0
- package/src/tool/alcoholClearance/i18n/pt.ts +205 -0
- package/src/tool/alcoholClearance/i18n/ru.ts +205 -0
- package/src/tool/alcoholClearance/i18n/sv.ts +205 -0
- package/src/tool/alcoholClearance/i18n/tr.ts +180 -0
- package/src/tool/alcoholClearance/i18n/zh.ts +205 -0
- package/src/tool/alcoholClearance/index.ts +13 -1
- package/src/tool/beerCooler/i18n/de.ts +197 -0
- package/src/tool/beerCooler/i18n/id.ts +197 -0
- package/src/tool/beerCooler/i18n/it.ts +197 -0
- package/src/tool/beerCooler/i18n/ja.ts +197 -0
- package/src/tool/beerCooler/i18n/ko.ts +197 -0
- package/src/tool/beerCooler/i18n/nl.ts +197 -0
- package/src/tool/beerCooler/i18n/pl.ts +197 -0
- package/src/tool/beerCooler/i18n/pt.ts +197 -0
- package/src/tool/beerCooler/i18n/ru.ts +197 -0
- package/src/tool/beerCooler/i18n/sv.ts +197 -0
- package/src/tool/beerCooler/i18n/tr.ts +197 -0
- package/src/tool/beerCooler/i18n/zh.ts +197 -0
- package/src/tool/beerCooler/index.ts +13 -1
- package/src/tool/carbonationCalculator/i18n/de.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/id.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/it.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/ja.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/ko.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/nl.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/pl.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/pt.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/ru.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/sv.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/tr.ts +200 -0
- package/src/tool/carbonationCalculator/i18n/zh.ts +200 -0
- package/src/tool/carbonationCalculator/index.ts +13 -1
- package/src/tool/cocktailBalancer/i18n/de.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/id.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/it.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/ja.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/ko.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/nl.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/pl.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/pt.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/ru.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/sv.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/tr.ts +222 -0
- package/src/tool/cocktailBalancer/i18n/zh.ts +222 -0
- package/src/tool/cocktailBalancer/index.ts +13 -1
- package/src/tool/partyKeg/i18n/de.ts +187 -0
- package/src/tool/partyKeg/i18n/id.ts +187 -0
- package/src/tool/partyKeg/i18n/it.ts +187 -0
- package/src/tool/partyKeg/i18n/ja.ts +187 -0
- package/src/tool/partyKeg/i18n/ko.ts +187 -0
- package/src/tool/partyKeg/i18n/nl.ts +187 -0
- package/src/tool/partyKeg/i18n/pl.ts +187 -0
- package/src/tool/partyKeg/i18n/pt.ts +187 -0
- package/src/tool/partyKeg/i18n/ru.ts +187 -0
- package/src/tool/partyKeg/i18n/sv.ts +187 -0
- package/src/tool/partyKeg/i18n/tr.ts +187 -0
- package/src/tool/partyKeg/i18n/zh.ts +187 -0
- package/src/tool/partyKeg/index.ts +13 -1
- package/src/types.ts +1 -1
- package/src/tests/content_mandatory.test.ts +0 -32
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
|
|
2
|
+
import type { BeerCoolerUI, BeerCoolerLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'pendingin-bir';
|
|
5
|
+
const title = 'Kalkulator Pendingin Bir dengan Hukum Newton';
|
|
6
|
+
const description = 'Hitung dengan termodinamika nyata — Hukum Pendinginan Newton — berapa lama tepat bir Anda memerlukan untuk mencapai suhu penyajian yang sempurna di lemari es atau freezer.';
|
|
7
|
+
|
|
8
|
+
const ui: BeerCoolerUI = {
|
|
9
|
+
step1Title: 'Apa yang Anda dinginkan?',
|
|
10
|
+
canLabel: 'Kaleng',
|
|
11
|
+
aluminumLabel: 'Aluminium',
|
|
12
|
+
bottleLabel: 'Botol',
|
|
13
|
+
glassLabel: 'Gelas',
|
|
14
|
+
step2Title: 'Di mana Anda meletakkannya?',
|
|
15
|
+
fridgeLabel: 'Lemari Es',
|
|
16
|
+
freezerLabel: 'Freezer',
|
|
17
|
+
step3Title: 'Sesuaikan Suhu',
|
|
18
|
+
initialTempLabel: 'Suhu Awal',
|
|
19
|
+
targetTempLabel: 'Target Dingin',
|
|
20
|
+
glacialLabel: 'Glasial',
|
|
21
|
+
perfectLabel: 'Sempurna',
|
|
22
|
+
bodegaLabel: 'Bodega',
|
|
23
|
+
readyTitle: 'Siap',
|
|
24
|
+
readyDescription: 'Pilih wadah dan lokasi untuk menghitung.',
|
|
25
|
+
estimatedTimeLabel: 'Waktu Estimasi',
|
|
26
|
+
methodLabel: 'Metode',
|
|
27
|
+
containerLabel: 'Wadah',
|
|
28
|
+
alreadyColdLabel: 'Sudah dingin!',
|
|
29
|
+
neverColdLabel: 'Tidak pernah dingin'
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const faqTitle = 'Pertanyaan yang Sering Diajukan';
|
|
33
|
+
const bibliographyTitle = 'Bibliografi & Sumber';
|
|
34
|
+
|
|
35
|
+
const faq: BeerCoolerLocaleContent['faq'] = [
|
|
36
|
+
{
|
|
37
|
+
question: 'Bagaimana alat ini menghitung waktu pendinginan?',
|
|
38
|
+
answer: 'Ini menerapkan Hukum Pendinginan Newton: T(t) = T_env + (T₀ - T_env) × e^(-kt). Konstanta k bervariasi berdasarkan material wadah dan medium pendingin. Kaleng aluminium di lemari es memiliki k yang sangat berbeda dengan botol gelas di freezer. Nilai yang digunakan di sini dikalibrasi terhadap eksperimen dunia nyata untuk setiap kombinasi.',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
question: 'Apakah trik handuk kertas basah dengan garam benar-benar berhasil?',
|
|
42
|
+
answer: 'Ya, dan cukup terlihat. Membungkus wadah dengan handuk kertas lembab berisi garam mempercepat pendinginan karena dua alasan: penguapan air mengeluarkan panas tambahan (pendinginan evaporatif), dan garam menurunkan titik beku air, menjaga kontak lembab tetap aktif lebih lama. Anda bisa mendapatkan penurunan 2–4°C ekstra dalam beberapa menit pertama dibandingkan dengan menempatkan kaleng kering di freezer.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
question: 'Berapa suhu penyajian ideal untuk gaya bir yang berbeda?',
|
|
46
|
+
answer: 'Itu tergantung pada gayanya. Lager dan Pilsner disajikan terbaik antara 3°C dan 7°C. IPA dan Pale Ale bersinar pada 7°C hingga 10°C. Stout, Porter, dan ale kompleks harus disajikan lebih hangat, antara 12°C dan 14°C, sehingga senyawa aromatik mereka — kopi, cokelat, kacang — dapat mengekspresikan diri sepenuhnya.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
question: 'Dapatkah bir saya meledak jika saya meninggalkannya di freezer?',
|
|
50
|
+
answer: 'Ya. Alkohol dan gula terlarut menurunkan titik beku bir di bawah air murni: lager standar 5% membeku sekitar -3°C. Saat air mengkristal, volume meningkat dan CO2 terlarut meningkatkan tekanan internal hingga wadah terberi. Lebih dari 60 menit di freezer — terutama botol gelas — adalah zona bahaya nyata. Gunakan kalkulator ini untuk menghindarinya.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
question: 'Apakah bir "terbakar" jika didinginkan terlalu cepat?',
|
|
54
|
+
answer: 'Tidak. Mitos "heat shock" yang merusak bir adalah salah. Apa yang benar-benar dapat mempengaruhinya adalah pembekuan dan pencairan berulang — yang memecah protein dan mengkeruhkan cairan — atau paparan cahaya UV langsung. Pendinginan cepat di freezer atau air es tidak merusak rasa.',
|
|
55
|
+
},
|
|
56
|
+
];
|
|
57
|
+
|
|
58
|
+
const howTo: BeerCoolerLocaleContent['howTo'] = [
|
|
59
|
+
{
|
|
60
|
+
name: 'Pilih wadah',
|
|
61
|
+
text: 'Pilih antara kaleng aluminium atau botol gelas. Material drastis mempengaruhi kecepatan perpindahan panas.',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: 'Pilih metode pendinginan',
|
|
65
|
+
text: 'Tunjukkan apakah Anda menggunakan lemari es konvensional (4°C) atau freezer (-18°C) untuk proses ultra-cepat.',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: 'Sesuaikan suhu',
|
|
69
|
+
text: 'Tentukan suhu minuman saat ini (suhu ruangan) dan suhu target dingin yang Anda inginkan.',
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
|
|
73
|
+
const bibliography: BeerCoolerLocaleContent['bibliography'] = [
|
|
74
|
+
{
|
|
75
|
+
name: 'Hukum Pendinginan Newton - Wikipedia',
|
|
76
|
+
url: 'https://en.wikipedia.org/wiki/Newton%27s_law_of_cooling',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: 'Kimia Lanjut Bir dan Pembuatan - American Chemical Society',
|
|
80
|
+
url: 'https://www.acs.org/acs-webinars/library/advanced-chemistry-of-beer-and-brewing.html',
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
|
|
84
|
+
const seo: BeerCoolerLocaleContent['seo'] = [
|
|
85
|
+
{
|
|
86
|
+
type: 'title',
|
|
87
|
+
text: 'Sains Dingin dan Termodinamika',
|
|
88
|
+
level: 2
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
type: 'paragraph',
|
|
92
|
+
html: 'Mengapa kaleng mendingin sebelum botol? Apakah itu sihir? Tidak, itu <strong>Hukum Pendinginan Newton</strong> dalam aksi. Alat ini secara matematis menghitung momen persis ketika minuman Anda mencapai kesempurnaan termodinamik. Setiap material, setiap lingkungan, setiap suhu awal memberi makan ke dalam persamaan diferensial yang sama yang digunakan fisikawan dan insinyur untuk memodelkan perpindahan panas dalam sistem industri.'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'diagnostic',
|
|
96
|
+
title: 'Formula Utama',
|
|
97
|
+
icon: 'mdi:function-variant',
|
|
98
|
+
variant: 'info',
|
|
99
|
+
badge: 'Fisika',
|
|
100
|
+
html: 'T(t) = T_env + (T_0 - T_env) * e^(-kt). Persamaan diferensial ini menjelaskan bagaimana suhu objek berubah secara proporsional dengan perbedaan antara suhunya dan lingkungan. Konstanta k tergantung pada material dan geometri wadah, itulah mengapa kaleng mendingin lebih cepat dari botol dengan volume yang sama.'
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
type: 'title',
|
|
104
|
+
text: 'Perang Material: Aluminium vs. Gelas',
|
|
105
|
+
level: 2
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'paragraph',
|
|
109
|
+
html: '<strong>Aluminium</strong> memiliki konduktivitas termal ~205 W/(m·K), sementara <strong>gelas</strong> hampir mencapai 0,8 W/(m·K). Logam mentransfer dingin dengan sangat cepat, menjadikannya wadah ideal untuk keadaan darurat. Namun, gelas memberikan isolasi yang lebih baik setelah dingin, mempertahankan suhu ideal lebih lama selama konsumsi. Kompromi ini adalah mengapa budaya bir berbeda telah mengembangkan preferensi untuk setiap material.'
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'stats',
|
|
113
|
+
items: [
|
|
114
|
+
{ label: 'Pilsner & Lager', value: '3°C - 7°C', icon: 'mdi:snowflake' },
|
|
115
|
+
{ label: 'IPA & Pale Ale', value: '7°C - 10°C', icon: 'mdi:hops' },
|
|
116
|
+
{ label: 'Stout & Porter', value: '12°C - 14°C', icon: 'mdi:beer' }
|
|
117
|
+
],
|
|
118
|
+
columns: 3
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'card',
|
|
122
|
+
title: 'Zona Bahaya Freezer',
|
|
123
|
+
icon: 'mdi:snowflake-alert',
|
|
124
|
+
html: 'Karena alkohol dan gula terlarut, bir membeku di bawah 0°C — lager standar 5% membeku sekitar -3°C. Saat air mengkristal, volume meningkat, sementara tekanan CO2 meningkat secara bersamaan. Hasilnya adalah wadah yang dapat pecah dengan keras. Jangan pernah biarkan bir di freezer lebih dari 45 menit tanpa menetapkan timer.'
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'proscons',
|
|
128
|
+
title: 'Trik Pendinginan Darurat',
|
|
129
|
+
items: [
|
|
130
|
+
{ pro: 'Trik Handuk Basah: Bungkus kaleng dengan handuk kertas basah, lalu bekukan — penguapan mempercepat pendinginan.', con: '' },
|
|
131
|
+
{ pro: 'Garam Arktik: Isi ember dengan air, es, dan 2 sendok makan garam untuk mencapai garam -5°C.', con: '' },
|
|
132
|
+
{ pro: 'Metode Putar: Putar botol dalam air es untuk memaksa konveksi dan memperpendek waktu pendinginan.', con: '' },
|
|
133
|
+
{ pro: '', con: 'Jangan letakkan kaleng langsung di rak freezer tanpa timer — kaleng yang pecah berbahaya dan berbahaya.' }
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'tip',
|
|
138
|
+
title: 'Tip Pro: Prapandingin Gelas',
|
|
139
|
+
html: 'Gelas tempat Anda menuangkan bir memiliki massa termal yang signifikan. Gelas hangat dapat meningkatkan suhu bir yang sempurna dingin sebesar 2-3°C secara instan saat kontak. Letakkan gelas penyajian Anda di freezer selama 5 menit sebelum menuangkan, atau bilas dengan air dingin. Langkah sederhana ini memperpanjang jendela di mana bir Anda terasa persis seperti yang dimaksudkan.'
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'title',
|
|
143
|
+
text: 'Memahami Konstanta Pendinginan',
|
|
144
|
+
level: 2
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'paragraph',
|
|
148
|
+
html: 'Konstanta pendinginan k dalam persamaan Newton bukan nilai universal yang tetap — ini adalah properti empiris dari setiap wadah spesifik dan medium. Kaleng aluminium tipis dalam air es memiliki k yang sangat berbeda dari botol gelas tebal dalam udara lemari es yang diam. Kalkulator kami menggunakan nilai terukur yang dikalibrasi terhadap eksperimen dunia nyata untuk setiap jenis wadah, memberi Anda prediksi akurat dalam beberapa menit untuk skenario pendinginan rumah tangga yang khas.'
|
|
149
|
+
}
|
|
150
|
+
];
|
|
151
|
+
|
|
152
|
+
const schemas: BeerCoolerLocaleContent['schemas'] = [
|
|
153
|
+
{
|
|
154
|
+
'@context': 'https://schema.org',
|
|
155
|
+
'@type': 'FAQPage',
|
|
156
|
+
mainEntity: faq.map((item) => ({
|
|
157
|
+
'@type': 'Question',
|
|
158
|
+
name: item.question,
|
|
159
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
160
|
+
})),
|
|
161
|
+
} as WithContext<FAQPage>,
|
|
162
|
+
{
|
|
163
|
+
'@context': 'https://schema.org',
|
|
164
|
+
'@type': 'HowTo',
|
|
165
|
+
name: title,
|
|
166
|
+
description: description,
|
|
167
|
+
step: howTo.map((step, i) => ({
|
|
168
|
+
'@type': 'HowToStep',
|
|
169
|
+
position: i + 1,
|
|
170
|
+
name: step.name,
|
|
171
|
+
text: step.text,
|
|
172
|
+
})),
|
|
173
|
+
} as WithContext<HowTo>,
|
|
174
|
+
{
|
|
175
|
+
'@context': 'https://schema.org',
|
|
176
|
+
'@type': 'SoftwareApplication',
|
|
177
|
+
name: title,
|
|
178
|
+
description: description,
|
|
179
|
+
applicationCategory: 'UtilityApplication',
|
|
180
|
+
operatingSystem: 'Web',
|
|
181
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
182
|
+
} as WithContext<SoftwareApplication>,
|
|
183
|
+
];
|
|
184
|
+
|
|
185
|
+
export const content: BeerCoolerLocaleContent = {
|
|
186
|
+
slug,
|
|
187
|
+
title,
|
|
188
|
+
description,
|
|
189
|
+
ui,
|
|
190
|
+
seo,
|
|
191
|
+
faqTitle,
|
|
192
|
+
faq,
|
|
193
|
+
bibliographyTitle,
|
|
194
|
+
bibliography,
|
|
195
|
+
howTo,
|
|
196
|
+
schemas,
|
|
197
|
+
};
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
|
|
2
|
+
import type { BeerCoolerUI, BeerCoolerLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'raffreddatore-birra';
|
|
5
|
+
const title = 'Calcolatore di Raffreddamento della Birra con la Legge di Newton';
|
|
6
|
+
const description = 'Calcola con vera termodinamica — Legge di Raffreddamento di Newton — esattamente quanto tempo hai bisogno affinché la tua birra raggiunga la temperatura di servizio perfetta in frigorifero o congelatore.';
|
|
7
|
+
|
|
8
|
+
const ui: BeerCoolerUI = {
|
|
9
|
+
step1Title: 'Cosa stai raffreddando?',
|
|
10
|
+
canLabel: 'Lattina',
|
|
11
|
+
aluminumLabel: 'Alluminio',
|
|
12
|
+
bottleLabel: 'Bottiglia',
|
|
13
|
+
glassLabel: 'Vetro',
|
|
14
|
+
step2Title: 'Dove lo metti?',
|
|
15
|
+
fridgeLabel: 'Frigorifero',
|
|
16
|
+
freezerLabel: 'Congelatore',
|
|
17
|
+
step3Title: 'Regola le Temperature',
|
|
18
|
+
initialTempLabel: 'Temp. Iniziale',
|
|
19
|
+
targetTempLabel: 'Obiettivo Freddo',
|
|
20
|
+
glacialLabel: 'Glaciale',
|
|
21
|
+
perfectLabel: 'Perfetto',
|
|
22
|
+
bodegaLabel: 'Bodega',
|
|
23
|
+
readyTitle: 'Pronto',
|
|
24
|
+
readyDescription: 'Seleziona contenitore e luogo per calcolare.',
|
|
25
|
+
estimatedTimeLabel: 'Tempo stimato',
|
|
26
|
+
methodLabel: 'Metodo',
|
|
27
|
+
containerLabel: 'Contenitore',
|
|
28
|
+
alreadyColdLabel: 'Già freddo!',
|
|
29
|
+
neverColdLabel: 'Mai freddo'
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const faqTitle = 'Domande Frequenti';
|
|
33
|
+
const bibliographyTitle = 'Bibliografia & Fonti';
|
|
34
|
+
|
|
35
|
+
const faq: BeerCoolerLocaleContent['faq'] = [
|
|
36
|
+
{
|
|
37
|
+
question: 'Come calcola questo strumento il tempo di raffreddamento?',
|
|
38
|
+
answer: 'Applica la Legge di Raffreddamento di Newton: T(t) = T_env + (T₀ - T_env) × e^(-kt). La costante k varia a seconda del materiale del contenitore e del mezzo di raffreddamento. Una lattina di alluminio in frigorifero ha un k molto diverso da una bottiglia di vetro in congelatore. I valori qui utilizzati sono calibrati su esperimenti reali per ogni combinazione.',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
question: 'Il trucco del tovagliolo bagnato con sale funziona davvero?',
|
|
42
|
+
answer: 'Sì, molto notevolmente. Avvolgere il contenitore in un tovagliolo di carta umido con sale accelera il raffreddamento per due motivi: l\'evaporazione dell\'acqua estrae calore aggiuntivo (raffreddamento evaporativo), e il sale abbassa il punto di congelamento dell\'acqua, mantenendo il contatto umido più attivo. Puoi guadagnare un ulteriore calo di 2–4°C nei primi minuti rispetto a una lattina asciutta nel congelatore.',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
question: 'Qual è la temperatura di servizio ideale per diversi stili di birra?',
|
|
46
|
+
answer: 'Dipende dallo stile. Le Lager e le Pilsner si servono meglio tra 3°C e 7°C. Le IPA e le Pale Ale brillano a 7°C-10°C. Gli Stout, Porter e ale complesse dovrebbero essere serviti più caldi, tra 12°C e 14°C, così i loro composti aromatici — caffè, cioccolato, noci — possono esprimersi pienamente.',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
question: 'La mia birra può esplodere se la lascio nel congelatore?',
|
|
50
|
+
answer: 'Sì. L\'alcol e gli zuccheri disciolti abbassano il punto di congelamento della birra sotto quello dell\'acqua pura: una lager standard al 5% congela intorno a -3°C. Mentre l\'acqua cristallizza, il volume aumenta e l\'anidride carbonica disciolta aumenta la pressione interna finché il contenitore cede. Più di 60 minuti nel congelatore — soprattutto bottiglie di vetro — è davvero pericoloso. Usa questo calcolatore per evitarlo.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
question: 'La birra "brucia" se raffreddata troppo velocemente?',
|
|
54
|
+
answer: 'No. Il mito dello "shock termico" che rovina la birra è falso. Quello che può genuinamente danneggiarla è il ripetuto congelamento e scongelamento — che rompe le proteine e intorbida il liquido — o l\'esposizione diretta alla luce UV. Un raffreddamento veloce nel congelatore o in acqua ghiacciata non danneggia il sapore.',
|
|
55
|
+
},
|
|
56
|
+
];
|
|
57
|
+
|
|
58
|
+
const howTo: BeerCoolerLocaleContent['howTo'] = [
|
|
59
|
+
{
|
|
60
|
+
name: 'Seleziona il contenitore',
|
|
61
|
+
text: 'Scegli tra una lattina di alluminio o una bottiglia di vetro. Il materiale influisce drasticamente sulla velocità del trasferimento di calore.',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: 'Scegli il metodo di raffreddamento',
|
|
65
|
+
text: 'Indica se stai usando un frigorifero convenzionale (4°C) o un congelatore (-18°C) per un processo ultra-veloce.',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: 'Regola le temperature',
|
|
69
|
+
text: 'Definisci la temperatura attuale della bevanda (temperatura ambiente) e la tua temperatura di raffreddamento desiderata.',
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
|
|
73
|
+
const bibliography: BeerCoolerLocaleContent['bibliography'] = [
|
|
74
|
+
{
|
|
75
|
+
name: 'Legge di Raffreddamento di Newton - Wikipedia',
|
|
76
|
+
url: 'https://en.wikipedia.org/wiki/Newton%27s_law_of_cooling',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: 'Chimica Avanzata della Birra e della Produzione - American Chemical Society',
|
|
80
|
+
url: 'https://www.acs.org/acs-webinars/library/advanced-chemistry-of-beer-and-brewing.html',
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
|
|
84
|
+
const seo: BeerCoolerLocaleContent['seo'] = [
|
|
85
|
+
{
|
|
86
|
+
type: 'title',
|
|
87
|
+
text: 'La Scienza del Freddo e della Termodinamica',
|
|
88
|
+
level: 2
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
type: 'paragraph',
|
|
92
|
+
html: 'Perché la lattina si raffredda prima della bottiglia? È magia? No, è la <strong>Legge di Raffreddamento di Newton</strong> in azione. Questo strumento calcola matematicamente il momento esatto in cui la tua bevanda raggiunge la perfezione termodinamica. Ogni materiale, ogni ambiente, ogni temperatura iniziale si inserisce nella stessa equazione differenziale che i fisici e gli ingegneri usano per modellare il trasferimento di calore nei sistemi industriali.'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'diagnostic',
|
|
96
|
+
title: 'La Formula Principale',
|
|
97
|
+
icon: 'mdi:function-variant',
|
|
98
|
+
variant: 'info',
|
|
99
|
+
badge: 'Fisica',
|
|
100
|
+
html: 'T(t) = T_env + (T_0 - T_env) * e^(-kt). Questa equazione differenziale descrive come la temperatura di un oggetto cambia proporzionalmente alla differenza tra la sua temperatura e quella dell\'ambiente. La costante k dipende dal materiale e dalla geometria del contenitore, motivo per cui una lattina si raffredda più velocemente di una bottiglia dello stesso volume.'
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
type: 'title',
|
|
104
|
+
text: 'Guerra dei Materiali: Alluminio vs. Vetro',
|
|
105
|
+
level: 2
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'paragraph',
|
|
109
|
+
html: 'L\'<strong>alluminio</strong> ha una conduttività termica di ~205 W/(m·K), mentre il <strong>vetro</strong> appena raggiunge 0,8 W/(m·K). Il metallo trasferisce il freddo violentemente veloce, rendendolo il contenitore ideale per le emergenze. Tuttavia, il vetro fornisce un migliore isolamento una volta freddo, mantenendo la temperatura ideale più a lungo durante il consumo. Questo compromesso è il motivo per cui diverse culture birrarie hanno sviluppato preferenze diverse per ogni materiale.'
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'stats',
|
|
113
|
+
items: [
|
|
114
|
+
{ label: 'Pilsner & Lager', value: '3°C - 7°C', icon: 'mdi:snowflake' },
|
|
115
|
+
{ label: 'IPA & Pale Ale', value: '7°C - 10°C', icon: 'mdi:hops' },
|
|
116
|
+
{ label: 'Stout & Porter', value: '12°C - 14°C', icon: 'mdi:beer' }
|
|
117
|
+
],
|
|
118
|
+
columns: 3
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'card',
|
|
122
|
+
title: 'La Zona Pericolo Congelatore',
|
|
123
|
+
icon: 'mdi:snowflake-alert',
|
|
124
|
+
html: 'A causa dell\'alcol e degli zuccheri disciolti, la birra congela sotto 0°C — una lager standard al 5% congela intorno a -3°C. Quando l\'acqua cristallizza si espande, mentre la pressione di CO2 aumenta simultaneamente. Il risultato è un contenitore che può rompersi violentemente. Non lasciare mai una birra nel congelatore per più di 45 minuti senza impostare un timer.'
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'proscons',
|
|
128
|
+
title: 'Trucchi di Raffreddamento d\'Emergenza',
|
|
129
|
+
items: [
|
|
130
|
+
{ pro: 'Trucco del Tovagliolo: Avvolgi la lattina in tovagliolo di carta bagnato, poi congela — l\'evaporazione accelera il raffreddamento.', con: '' },
|
|
131
|
+
{ pro: 'Salamoia Artica: Riempi un secchio con acqua, ghiaccio e 2 cucchiai di sale per raggiungere salamoia a -5°C.', con: '' },
|
|
132
|
+
{ pro: 'Metodo di Rotazione: Ruota la bottiglia in acqua ghiacciata per forzare convezione e accorciare il tempo di raffreddamento.', con: '' },
|
|
133
|
+
{ pro: '', con: 'Non mettere una lattina direttamente su uno scaffale del congelatore senza un timer — le lattine rotte sono disastrose e pericolose.' }
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'tip',
|
|
138
|
+
title: 'Consiglio Pro: Prereffreddare il Bicchiere',
|
|
139
|
+
html: 'Il bicchiere in cui versi la birra ha una massa termica significativa. Un bicchiere caldo può aumentare la temperatura di una birra perfettamente fredda di 2-3°C istantaneamente al contatto. Metti il tuo bicchiere di servizio nel congelatore per 5 minuti prima di versare, o risciacqualo con acqua fredda. Questo semplice passaggio estende la finestra in cui la tua birra ha esattamente il sapore previsto.'
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'title',
|
|
143
|
+
text: 'Comprendere la Costante di Raffreddamento',
|
|
144
|
+
level: 2
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'paragraph',
|
|
148
|
+
html: 'La costante di raffreddamento k nell\'equazione di Newton non è un valore universale fisso — è una proprietà empirica di ogni contenitore specifico e mezzo. Una lattina di alluminio sottile in acqua ghiacciata ha un k drasticamente diverso da una bottiglia di vetro spessa in aria del frigorifero ferma. Il nostro calcolatore utilizza valori misurati calibrati contro esperimenti reali per ogni tipo di contenitore, dandoti previsioni accurate entro pochi minuti per tipici scenari di raffreddamento domestico.'
|
|
149
|
+
}
|
|
150
|
+
];
|
|
151
|
+
|
|
152
|
+
const schemas: BeerCoolerLocaleContent['schemas'] = [
|
|
153
|
+
{
|
|
154
|
+
'@context': 'https://schema.org',
|
|
155
|
+
'@type': 'FAQPage',
|
|
156
|
+
mainEntity: faq.map((item) => ({
|
|
157
|
+
'@type': 'Question',
|
|
158
|
+
name: item.question,
|
|
159
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
160
|
+
})),
|
|
161
|
+
} as WithContext<FAQPage>,
|
|
162
|
+
{
|
|
163
|
+
'@context': 'https://schema.org',
|
|
164
|
+
'@type': 'HowTo',
|
|
165
|
+
name: title,
|
|
166
|
+
description: description,
|
|
167
|
+
step: howTo.map((step, i) => ({
|
|
168
|
+
'@type': 'HowToStep',
|
|
169
|
+
position: i + 1,
|
|
170
|
+
name: step.name,
|
|
171
|
+
text: step.text,
|
|
172
|
+
})),
|
|
173
|
+
} as WithContext<HowTo>,
|
|
174
|
+
{
|
|
175
|
+
'@context': 'https://schema.org',
|
|
176
|
+
'@type': 'SoftwareApplication',
|
|
177
|
+
name: title,
|
|
178
|
+
description: description,
|
|
179
|
+
applicationCategory: 'UtilityApplication',
|
|
180
|
+
operatingSystem: 'Web',
|
|
181
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
182
|
+
} as WithContext<SoftwareApplication>,
|
|
183
|
+
];
|
|
184
|
+
|
|
185
|
+
export const content: BeerCoolerLocaleContent = {
|
|
186
|
+
slug,
|
|
187
|
+
title,
|
|
188
|
+
description,
|
|
189
|
+
ui,
|
|
190
|
+
seo,
|
|
191
|
+
faqTitle,
|
|
192
|
+
faq,
|
|
193
|
+
bibliographyTitle,
|
|
194
|
+
bibliography,
|
|
195
|
+
howTo,
|
|
196
|
+
schemas,
|
|
197
|
+
};
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
|
|
2
|
+
import type { BeerCoolerUI, BeerCoolerLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'beer-cooler';
|
|
5
|
+
const title = 'ニュートンの冷却法則を用いたビール冷却計算機';
|
|
6
|
+
const description = '真の熱力学で計算します — ニュートンの冷却法則 — ビールが冷蔵庫または冷凍庫で完璧なサービング温度に達するまでに正確にどのくらい時間がかかるかを確認してください。';
|
|
7
|
+
|
|
8
|
+
const ui: BeerCoolerUI = {
|
|
9
|
+
step1Title: '何を冷やしていますか?',
|
|
10
|
+
canLabel: 'リング缶',
|
|
11
|
+
aluminumLabel: 'アルミニウム',
|
|
12
|
+
bottleLabel: 'ボトル',
|
|
13
|
+
glassLabel: 'ガラス',
|
|
14
|
+
step2Title: 'どこに入れますか?',
|
|
15
|
+
fridgeLabel: '冷蔵庫',
|
|
16
|
+
freezerLabel: '冷凍庫',
|
|
17
|
+
step3Title: '温度を微調整',
|
|
18
|
+
initialTempLabel: '初期温度',
|
|
19
|
+
targetTempLabel: '目標温度',
|
|
20
|
+
glacialLabel: '氷のように冷たい',
|
|
21
|
+
perfectLabel: 'パーフェクト',
|
|
22
|
+
bodegaLabel: 'ボデガ',
|
|
23
|
+
readyTitle: '準備完了',
|
|
24
|
+
readyDescription: '容器と場所を選択して計算します。',
|
|
25
|
+
estimatedTimeLabel: '推定時間',
|
|
26
|
+
methodLabel: 'メソッド',
|
|
27
|
+
containerLabel: 'コンテナ',
|
|
28
|
+
alreadyColdLabel: 'もう冷たい!',
|
|
29
|
+
neverColdLabel: '冷えない'
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
const faqTitle = 'よくあるご質問';
|
|
33
|
+
const bibliographyTitle = '参考文献 & 情報源';
|
|
34
|
+
|
|
35
|
+
const faq: BeerCoolerLocaleContent['faq'] = [
|
|
36
|
+
{
|
|
37
|
+
question: 'このツールは冷却時間をどのように計算しますか?',
|
|
38
|
+
answer: 'ニュートンの冷却法則を適用します: T(t) = T_env + (T₀ - T_env) × e^(-kt)。定数kは容器の素材と冷却媒体によって異なります。冷蔵庫のアルミニウム缶は、冷凍庫のガラスボトルとは大きく異なるkを持っています。ここで使用される値は、各組み合わせについて実世界の実験に対して校正されています。',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
question: '塩を入れた湿ったペーパータオルのトリックは実際に機能しますか?',
|
|
42
|
+
answer: 'はい、かなり顕著です。容器を塩を含む湿ったペーパータオルで包むと、2つの理由で冷却が加速されます。水の蒸発が追加の熱を放出し(蒸発冷却)、塩が水の融点を低下させ、湿った接触をより長く活発に保ちます。冷凍庫に乾いた缶を置くのと比べて、最初の数分間に追加で2~4°Cの低下を得ることができます。',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
question: 'さまざまなビールスタイルの理想的なサービング温度は何ですか?',
|
|
46
|
+
answer: 'それはスタイルによって異なります。ラガーとピルスナーは3~7°Cが最適です。IPAとペールエールは7~10°Cで輝きます。スタウト、ポーター、複雑なエールはより温かく、12~14°Cでサービスする必要があります。そうすることで、コーヒー、チョコレート、ナッツなどの香りの化合物を完全に表現できます。',
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
question: '冷凍庫に入れたままにするとビールが爆発しますか?',
|
|
50
|
+
answer: 'はい。アルコールと溶解糖はビールの融点を純水より下げます。標準的な5%ラガーは約-3°Cで凍ります。水が結晶化するにつれて体積が増加し、溶解したCO2が内部圧力を上げ、容器が破裂するまで。冷凍庫に60分以上 — 特にガラスボトル — は本当に危険なゾーンです。このカリキュレーターを使用してそれを回避してください。',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
question: '冷却が速すぎるとビールが「焦げ」ますか?',
|
|
54
|
+
answer: 'いいえ。ビールを台無しにする「ヒートショック」の神話は誤りです。実際に影響を与える可能性があるのは、繰り返された凍結と解凍です。これはタンパク質を破壊し、液体を曇らせます。または直接紫外線への暴露です。冷凍庫での急速冷却または氷水では風味は損なわれません。',
|
|
55
|
+
},
|
|
56
|
+
];
|
|
57
|
+
|
|
58
|
+
const howTo: BeerCoolerLocaleContent['howTo'] = [
|
|
59
|
+
{
|
|
60
|
+
name: 'コンテナを選択',
|
|
61
|
+
text: 'アルミニウム缶またはガラスボトルから選択します。素材は熱伝達速度に大きく影響します。',
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
name: '冷却方法を選択',
|
|
65
|
+
text: '従来の冷蔵庫(4°C)を使用しているか、超高速プロセス用の冷凍庫(-18°C)を使用しているかを示します。',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: '温度を調整',
|
|
69
|
+
text: '飲料の現在の温度(室温)と、希望の目標冷却温度を定義します。',
|
|
70
|
+
},
|
|
71
|
+
];
|
|
72
|
+
|
|
73
|
+
const bibliography: BeerCoolerLocaleContent['bibliography'] = [
|
|
74
|
+
{
|
|
75
|
+
name: 'ニュートンの冷却法則 - Wikipedia',
|
|
76
|
+
url: 'https://en.wikipedia.org/wiki/Newton%27s_law_of_cooling',
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: 'ビールおよび醸造の高度な化学 - American Chemical Society',
|
|
80
|
+
url: 'https://www.acs.org/acs-webinars/library/advanced-chemistry-of-beer-and-brewing.html',
|
|
81
|
+
},
|
|
82
|
+
];
|
|
83
|
+
|
|
84
|
+
const seo: BeerCoolerLocaleContent['seo'] = [
|
|
85
|
+
{
|
|
86
|
+
type: 'title',
|
|
87
|
+
text: '冷感と熱力学の科学',
|
|
88
|
+
level: 2
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
type: 'paragraph',
|
|
92
|
+
html: '缶がボトルの前に冷えるのはなぜですか? 魔法ですか? いいえ、これは実際の<strong>ニュートンの冷却法則</strong>です。このツールは、飲料が熱力学的完璧性に到達する正確な瞬間を数学的に計算します。あらゆる材料、あらゆる環境、あらゆる開始温度は、物理学者とエンジニアが産業システムの熱伝達をモデル化するために使用する同じ微分方程式に組み込まれます。'
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
type: 'diagnostic',
|
|
96
|
+
title: 'マスターフォーミュラ',
|
|
97
|
+
icon: 'mdi:function-variant',
|
|
98
|
+
variant: 'info',
|
|
99
|
+
badge: '物理学',
|
|
100
|
+
html: 'T(t) = T_env + (T_0 - T_env) * e^(-kt)。この微分方程式は、物体の温度がその温度と環境の温度の差に比例してどのように変化するかを説明しています。定数kは容器の素材と形状に依存します。これが缶が同じ体積のボトルよりも速く冷却される理由です。'
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
type: 'title',
|
|
104
|
+
text: '素材戦争:アルミニウム対ガラス',
|
|
105
|
+
level: 2
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
type: 'paragraph',
|
|
109
|
+
html: '<strong>アルミニウム</strong>の熱伝導率は約205 W/(m·K)ですが、<strong>ガラス</strong>はわずか0.8 W/(m·K)に達します。金属は非常に速く冷たさを伝え、緊急時に理想的な容器です。しかし、ガラスは冷えた後、より良い断熱性を提供し、消費中に理想的な温度をより長く保ちます。この妥協案は、異なるビール文化が各素材に異なる好みを発展させた理由を説明しています。'
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
type: 'stats',
|
|
113
|
+
items: [
|
|
114
|
+
{ label: 'ピルスナー & ラガー', value: '3°C - 7°C', icon: 'mdi:snowflake' },
|
|
115
|
+
{ label: 'IPA & ペールエール', value: '7°C - 10°C', icon: 'mdi:hops' },
|
|
116
|
+
{ label: 'スタウト & ポーター', value: '12°C - 14°C', icon: 'mdi:beer' }
|
|
117
|
+
],
|
|
118
|
+
columns: 3
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
type: 'card',
|
|
122
|
+
title: '冷凍庫危険ゾーン',
|
|
123
|
+
icon: 'mdi:snowflake-alert',
|
|
124
|
+
html: 'アルコールと溶解糖のため、ビールは0°C以下で凍ります。標準的な5%ラガーは約-3°Cで凍ります。水が結晶化すると体積が増加し、CO2圧力が同時に上昇します。その結果は激しく破裂する可能性がある容器です。冷凍庫にビールを45分以上置かないでください。タイマーを設定せずに。'
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'proscons',
|
|
128
|
+
title: '緊急冷却ハック',
|
|
129
|
+
items: [
|
|
130
|
+
{ pro: 'ウェットペーパートリック:湿ったペーパータオルで缶を包んで冷凍します。蒸発により冷却が加速します。', con: '' },
|
|
131
|
+
{ pro: '北極ソルト水:バケットに水、氷、塩大さじ2杯を入れて-5°C塩水に到達します。', con: '' },
|
|
132
|
+
{ pro: '回転方法:氷水で瓶を回して対流を強制し、冷却時間を短縮します。', con: '' },
|
|
133
|
+
{ pro: '', con: 'タイマーなしでフリーザーシェルフに缶を直接置かないでください。破裂した缶は邪魔で危険です。' }
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'tip',
|
|
138
|
+
title: 'プロのコツ:グラスを事前冷却',
|
|
139
|
+
html: 'ビールを注ぐグラスには、かなりの熱容量があります。温かいグラスは、完璧に冷えたビールの温度を接触時に2~3°C上げることができます。注ぐ前に5分間グラスを冷凍庫に入れるか、冷水で洗ってください。この簡単なステップは、ビールが意図したとおりに正確に味わう時間を延長します。'
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
type: 'title',
|
|
143
|
+
text: '冷却定数の理解',
|
|
144
|
+
level: 2
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'paragraph',
|
|
148
|
+
html: 'ニュートン方程式の冷却定数kは、固定された普遍値ではありません。これは、各特定の容器と媒体の経験的特性です。薄いアルミニウム缶は氷水に静かな冷蔵庫の空気の中に厚いガラスボトルとは劇的に異なるkを持っています。私たちの計算機は、各容器タイプの実世界の実験に対して校正された測定値を使用し、典型的な家庭用冷却シナリオの予測精度は数分以内です。'
|
|
149
|
+
}
|
|
150
|
+
];
|
|
151
|
+
|
|
152
|
+
const schemas: BeerCoolerLocaleContent['schemas'] = [
|
|
153
|
+
{
|
|
154
|
+
'@context': 'https://schema.org',
|
|
155
|
+
'@type': 'FAQPage',
|
|
156
|
+
mainEntity: faq.map((item) => ({
|
|
157
|
+
'@type': 'Question',
|
|
158
|
+
name: item.question,
|
|
159
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
160
|
+
})),
|
|
161
|
+
} as WithContext<FAQPage>,
|
|
162
|
+
{
|
|
163
|
+
'@context': 'https://schema.org',
|
|
164
|
+
'@type': 'HowTo',
|
|
165
|
+
name: title,
|
|
166
|
+
description: description,
|
|
167
|
+
step: howTo.map((step, i) => ({
|
|
168
|
+
'@type': 'HowToStep',
|
|
169
|
+
position: i + 1,
|
|
170
|
+
name: step.name,
|
|
171
|
+
text: step.text,
|
|
172
|
+
})),
|
|
173
|
+
} as WithContext<HowTo>,
|
|
174
|
+
{
|
|
175
|
+
'@context': 'https://schema.org',
|
|
176
|
+
'@type': 'SoftwareApplication',
|
|
177
|
+
name: title,
|
|
178
|
+
description: description,
|
|
179
|
+
applicationCategory: 'UtilityApplication',
|
|
180
|
+
operatingSystem: 'Web',
|
|
181
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
182
|
+
} as WithContext<SoftwareApplication>,
|
|
183
|
+
];
|
|
184
|
+
|
|
185
|
+
export const content: BeerCoolerLocaleContent = {
|
|
186
|
+
slug,
|
|
187
|
+
title,
|
|
188
|
+
description,
|
|
189
|
+
ui,
|
|
190
|
+
seo,
|
|
191
|
+
faqTitle,
|
|
192
|
+
faq,
|
|
193
|
+
bibliographyTitle,
|
|
194
|
+
bibliography,
|
|
195
|
+
howTo,
|
|
196
|
+
schemas,
|
|
197
|
+
};
|