@jjlmoya/utils-nature 1.23.0 → 1.24.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/i18n/es.ts +1 -1
- package/src/category/i18n/fr.ts +110 -110
- package/src/category/i18n/it.ts +1 -1
- package/src/category/i18n/pl.ts +1 -1
- package/src/category/i18n/pt.ts +1 -1
- package/src/category/i18n/ru.ts +110 -110
- package/src/category/seo.astro +1 -1
- package/src/components/PreviewNavSidebar.astro +1 -1
- package/src/components/PreviewToolbar.astro +1 -1
- package/src/data.ts +1 -1
- package/src/env.d.ts +1 -1
- package/src/layouts/PreviewLayout.astro +117 -117
- package/src/pages/[locale]/[slug].astro +164 -164
- package/src/pages/index.astro +1 -1
- package/src/tests/category_seo_quality.test.ts +74 -0
- package/src/tests/faq_count.test.ts +19 -19
- package/src/tests/mocks/astro_mock.js +1 -1
- package/src/tests/no_en_dash.test.ts +71 -71
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/seo_length.test.ts +23 -23
- package/src/tests/seo_parity.test.ts +2 -2
- package/src/tests/spanish_leakage.test.ts +175 -175
- package/src/tool/cricketThermometer/i18n/de.ts +169 -169
- package/src/tool/cricketThermometer/i18n/en.ts +169 -169
- package/src/tool/cricketThermometer/i18n/es.ts +169 -169
- package/src/tool/cricketThermometer/i18n/fr.ts +169 -169
- package/src/tool/cricketThermometer/i18n/id.ts +169 -169
- package/src/tool/cricketThermometer/i18n/it.ts +169 -169
- package/src/tool/cricketThermometer/i18n/ja.ts +169 -169
- package/src/tool/cricketThermometer/i18n/ko.ts +169 -169
- package/src/tool/cricketThermometer/i18n/nl.ts +169 -169
- package/src/tool/cricketThermometer/i18n/pl.ts +169 -169
- package/src/tool/cricketThermometer/i18n/pt.ts +169 -169
- package/src/tool/cricketThermometer/i18n/ru.ts +169 -169
- package/src/tool/cricketThermometer/i18n/sv.ts +169 -169
- package/src/tool/cricketThermometer/i18n/tr.ts +169 -169
- package/src/tool/cricketThermometer/i18n/zh.ts +169 -169
- package/src/tool/cricketThermometer/seo.astro +15 -15
- package/src/tool/digitalCarbon/i18n/de.ts +229 -229
- package/src/tool/digitalCarbon/i18n/fr.ts +229 -229
- package/src/tool/digitalCarbon/i18n/ru.ts +229 -229
- package/src/tool/digitalCarbon/seo.astro +15 -15
- package/src/tool/rainHarvester/i18n/de.ts +167 -167
- package/src/tool/rainHarvester/i18n/en.ts +167 -167
- package/src/tool/rainHarvester/i18n/es.ts +167 -167
- package/src/tool/rainHarvester/i18n/fr.ts +167 -167
- package/src/tool/rainHarvester/i18n/id.ts +167 -167
- package/src/tool/rainHarvester/i18n/it.ts +167 -167
- package/src/tool/rainHarvester/i18n/ja.ts +167 -167
- package/src/tool/rainHarvester/i18n/ko.ts +167 -167
- package/src/tool/rainHarvester/i18n/nl.ts +167 -167
- package/src/tool/rainHarvester/i18n/pl.ts +167 -167
- package/src/tool/rainHarvester/i18n/pt.ts +167 -167
- package/src/tool/rainHarvester/i18n/ru.ts +167 -167
- package/src/tool/rainHarvester/i18n/sv.ts +167 -167
- package/src/tool/rainHarvester/i18n/tr.ts +167 -167
- package/src/tool/rainHarvester/i18n/zh.ts +167 -167
- package/src/tool/rainHarvester/seo.astro +15 -15
- package/src/tool/seedCalculator/i18n/fr.ts +197 -197
- package/src/tool/seedCalculator/i18n/pl.ts +197 -197
- package/src/tool/seedCalculator/i18n/ru.ts +197 -197
- package/src/tool/seedCalculator/seo.astro +15 -15
- package/src/types.ts +1 -1
|
@@ -1,167 +1,167 @@
|
|
|
1
|
-
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
-
import { bibliography } from '../bibliography';
|
|
3
|
-
import type { RainHarvesterLocaleContent } from '../index';
|
|
4
|
-
|
|
5
|
-
const slug = 'kalkulyator-dozhdevoy-vody';
|
|
6
|
-
const title = 'Калькулятор сбора дождевой воды';
|
|
7
|
-
const description = 'Рассчитайте, сколько дождевой воды вы можете собрать со своей крыши, и подберите размер накопительного бака.';
|
|
8
|
-
|
|
9
|
-
const faqData = [
|
|
10
|
-
{
|
|
11
|
-
question: 'Сколько воды я на самом деле могу собрать со своей крыши?',
|
|
12
|
-
answer: 'Общее правило гласит, что на каждый квадратный метр крыши и каждый миллиметр дождя можно собрать примерно 1 литр воды. Однако существуют потери на испарение и фильтрацию, корректируемые "коэффициентом стока".',
|
|
13
|
-
},
|
|
14
|
-
{
|
|
15
|
-
question: 'Что такое коэффициент стока?',
|
|
16
|
-
answer: 'Это процент, указывающий, сколько воды теряется в зависимости от материала крыши. Металлическая или черепичная крыша очень эффективна (0,85-0,95), в то время как гравийная или земляная крыша гораздо менее эффективна (0,1-0,3).',
|
|
17
|
-
},
|
|
18
|
-
{
|
|
19
|
-
question: 'Как подобрать размер накопительного бака?',
|
|
20
|
-
answer: 'Вам следует рассчитать максимальный ожидаемый объем дождя в месяц и сопоставить его с вашим расчетным ежемесячным потреблением. Слишком маленький бак будет переполняться во время ливней, а слишком большой будет неоправданно дорогим.',
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
question: 'Безопасно ли пить собранную дождевую воду?',
|
|
24
|
-
answer: 'Не напрямую. Вода переносит пыль, птичий помет и частицы из воздуха. Для употребления человеком она должна пройти через осадочные фильтры, активированный уголь и дезинфекцию с помощью УФ-излучения или хлора.',
|
|
25
|
-
},
|
|
26
|
-
];
|
|
27
|
-
|
|
28
|
-
const howToData = [
|
|
29
|
-
{
|
|
30
|
-
name: 'Измерьте горизонтальную поверхность',
|
|
31
|
-
text: 'Измерьте длину и ширину основания вашей крыши (не наклонную поверхность, а площадь, которая проецирует тень на землю).',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
name: 'Проверьте локальный уровень осадков',
|
|
35
|
-
text: 'Найдите в национальной метеорологической службе среднегодовое или ежемесячное количество осадков в вашем районе в миллиметрах (мм).',
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
name: 'Примените эффективность материала',
|
|
39
|
-
text: 'Выберите материал вашей крыши в нашем калькуляторе, чтобы вычесть воду, которая будет потеряна из-за впитывания или нагрева.',
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
name: 'Рассчитайте необходимый объем',
|
|
43
|
-
text: 'Используйте результат годового сбора в литрах, чтобы выбрать бак, который может хранить не менее 20-30% от общего урожая для засушливых периодов.',
|
|
44
|
-
},
|
|
45
|
-
];
|
|
46
|
-
|
|
47
|
-
const faqSchema: WithContext<FAQPage> = {
|
|
48
|
-
'@context': 'https://schema.org',
|
|
49
|
-
'@type': 'FAQPage',
|
|
50
|
-
mainEntity: faqData.map((item) => ({
|
|
51
|
-
'@type': 'Question',
|
|
52
|
-
name: item.question,
|
|
53
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
54
|
-
})),
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
-
const howToSchema: WithContext<HowTo> = {
|
|
58
|
-
'@context': 'https://schema.org',
|
|
59
|
-
'@type': 'HowTo',
|
|
60
|
-
name: title,
|
|
61
|
-
description,
|
|
62
|
-
step: howToData.map((step, i) => ({
|
|
63
|
-
'@type': 'HowToStep',
|
|
64
|
-
position: i + 1,
|
|
65
|
-
name: step.name,
|
|
66
|
-
text: step.text,
|
|
67
|
-
})),
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
const appSchema: WithContext<SoftwareApplication> = {
|
|
71
|
-
'@context': 'https://schema.org',
|
|
72
|
-
'@type': 'SoftwareApplication',
|
|
73
|
-
name: title,
|
|
74
|
-
description,
|
|
75
|
-
applicationCategory: 'UtilityApplication',
|
|
76
|
-
operatingSystem: 'All',
|
|
77
|
-
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
78
|
-
inLanguage: 'ru',
|
|
79
|
-
};
|
|
80
|
-
|
|
81
|
-
export const content: RainHarvesterLocaleContent = {
|
|
82
|
-
slug,
|
|
83
|
-
title,
|
|
84
|
-
description,
|
|
85
|
-
ui: {
|
|
86
|
-
headInputs: 'Настройки крыши',
|
|
87
|
-
headResults: 'Потенциал сбора',
|
|
88
|
-
labelArea: 'Площадь крыши',
|
|
89
|
-
labelRainfall: 'Годовое количество осадков',
|
|
90
|
-
labelMaterial: 'Материал крыши',
|
|
91
|
-
unitM2: 'м²',
|
|
92
|
-
unitMm: 'мм',
|
|
93
|
-
unitLiters: 'Литры',
|
|
94
|
-
helpRainfall: 'Не знаете? Поищите в Google "среднегодовое количество осадков в [вашем городе]".',
|
|
95
|
-
efficiencyTitle: 'Коэффициент эффективности',
|
|
96
|
-
efficiencyNote: 'Применяется потеря 10% на фильтры и испарение.',
|
|
97
|
-
resultTitle: 'Годовой потенциал сбора',
|
|
98
|
-
equivalenciesTitle: 'Практические эквиваленты',
|
|
99
|
-
labelFlushes: 'Смывы унитаза',
|
|
100
|
-
labelShowers: 'Принятия душа (10 мин)',
|
|
101
|
-
labelGarden: 'Полив сада',
|
|
102
|
-
gardenArea: '(50м²)',
|
|
103
|
-
materialMetal: 'Металл / Глазурованная черепица',
|
|
104
|
-
materialClay: 'Керамическая черепица / Глина',
|
|
105
|
-
materialConcrete: 'Бетон / Асфальт',
|
|
106
|
-
materialGravel: 'Гравий / Зеленая крыша',
|
|
107
|
-
},
|
|
108
|
-
seo: [
|
|
109
|
-
{
|
|
110
|
-
type: 'title',
|
|
111
|
-
text: 'Сбор дождевой воды: Автономия и устойчивое развитие',
|
|
112
|
-
level: 2,
|
|
113
|
-
},
|
|
114
|
-
{
|
|
115
|
-
type: 'paragraph',
|
|
116
|
-
html: 'Большинство домовладельцев не подозревают о потенциале собственных крыш. Стандартная крыша может собирать тысячи литров бесплатной воды каждый год. Этот инструмент количественно определяет этот потенциал, позволяя вам точно рассчитать, сколько воды вы можете "собрать", и определить идеальный размер бака для хранения.',
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
type: 'title',
|
|
120
|
-
text: 'Логика расчета',
|
|
121
|
-
level: 3,
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
type: 'paragraph',
|
|
125
|
-
html: 'Базовая формула для сбора дождевой воды проста, но эффективна:',
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
type: 'paragraph',
|
|
129
|
-
html: '<code style="display:block;padding:1rem;background:var(-bg-alt);border-radius:0.5rem;margin:1rem 0;font-family:monospace;">Объем = Площадь × Осадки × Коэффициент стока × Эффективность фильтра</code>',
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
type: 'list',
|
|
133
|
-
items: [
|
|
134
|
-
'<strong>Площадь:</strong> Основание вашей крыши (проекция длина × ширина).',
|
|
135
|
-
'<strong>Осадки:</strong> Выпадающий дождь в миллиметрах.',
|
|
136
|
-
'<strong>Коэффициент:</strong> Сколько воды теряет ваша крыша (например, впитывание).',
|
|
137
|
-
'<strong>Эффективность:</strong> Потери в фильтрах перед баком (~10%).',
|
|
138
|
-
],
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
type: 'title',
|
|
142
|
-
text: 'Зачем собирать дождевую воду?',
|
|
143
|
-
level: 3,
|
|
144
|
-
},
|
|
145
|
-
{
|
|
146
|
-
type: 'list',
|
|
147
|
-
items: [
|
|
148
|
-
'<strong>Экономия:</strong> Значительно сократите свои счета за воду.',
|
|
149
|
-
'<strong>Садоводство:</strong> Растения любят воду без хлора и извести.',
|
|
150
|
-
'<strong>Устойчивость:</strong> Имейте аварийный запас на случай отключений.',
|
|
151
|
-
],
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
type: 'title',
|
|
155
|
-
text: 'Размер бака',
|
|
156
|
-
level: 2,
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
type: 'paragraph',
|
|
160
|
-
html: 'Самая распространенная ошибка - покупка бака, исходя только из бюджета. Если он слишком мал, вы будете терять тысячи литров из-за перелива. Если он слишком велик, вы потратите деньги зря. Общее правило - иметь емкость для хранения среднего количества осадков за <strong>3 месяца</strong> в вашем районе, что позволит вам пережить засушливые сезоны.',
|
|
161
|
-
},
|
|
162
|
-
],
|
|
163
|
-
faq: faqData,
|
|
164
|
-
howTo: howToData,
|
|
165
|
-
bibliography,
|
|
166
|
-
schemas: [faqSchema, howToSchema, appSchema],
|
|
167
|
-
};
|
|
1
|
+
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { RainHarvesterLocaleContent } from '../index';
|
|
4
|
+
|
|
5
|
+
const slug = 'kalkulyator-dozhdevoy-vody';
|
|
6
|
+
const title = 'Калькулятор сбора дождевой воды';
|
|
7
|
+
const description = 'Рассчитайте, сколько дождевой воды вы можете собрать со своей крыши, и подберите размер накопительного бака.';
|
|
8
|
+
|
|
9
|
+
const faqData = [
|
|
10
|
+
{
|
|
11
|
+
question: 'Сколько воды я на самом деле могу собрать со своей крыши?',
|
|
12
|
+
answer: 'Общее правило гласит, что на каждый квадратный метр крыши и каждый миллиметр дождя можно собрать примерно 1 литр воды. Однако существуют потери на испарение и фильтрацию, корректируемые "коэффициентом стока".',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
question: 'Что такое коэффициент стока?',
|
|
16
|
+
answer: 'Это процент, указывающий, сколько воды теряется в зависимости от материала крыши. Металлическая или черепичная крыша очень эффективна (0,85-0,95), в то время как гравийная или земляная крыша гораздо менее эффективна (0,1-0,3).',
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
question: 'Как подобрать размер накопительного бака?',
|
|
20
|
+
answer: 'Вам следует рассчитать максимальный ожидаемый объем дождя в месяц и сопоставить его с вашим расчетным ежемесячным потреблением. Слишком маленький бак будет переполняться во время ливней, а слишком большой будет неоправданно дорогим.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'Безопасно ли пить собранную дождевую воду?',
|
|
24
|
+
answer: 'Не напрямую. Вода переносит пыль, птичий помет и частицы из воздуха. Для употребления человеком она должна пройти через осадочные фильтры, активированный уголь и дезинфекцию с помощью УФ-излучения или хлора.',
|
|
25
|
+
},
|
|
26
|
+
];
|
|
27
|
+
|
|
28
|
+
const howToData = [
|
|
29
|
+
{
|
|
30
|
+
name: 'Измерьте горизонтальную поверхность',
|
|
31
|
+
text: 'Измерьте длину и ширину основания вашей крыши (не наклонную поверхность, а площадь, которая проецирует тень на землю).',
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
name: 'Проверьте локальный уровень осадков',
|
|
35
|
+
text: 'Найдите в национальной метеорологической службе среднегодовое или ежемесячное количество осадков в вашем районе в миллиметрах (мм).',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
name: 'Примените эффективность материала',
|
|
39
|
+
text: 'Выберите материал вашей крыши в нашем калькуляторе, чтобы вычесть воду, которая будет потеряна из-за впитывания или нагрева.',
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: 'Рассчитайте необходимый объем',
|
|
43
|
+
text: 'Используйте результат годового сбора в литрах, чтобы выбрать бак, который может хранить не менее 20-30% от общего урожая для засушливых периодов.',
|
|
44
|
+
},
|
|
45
|
+
];
|
|
46
|
+
|
|
47
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
48
|
+
'@context': 'https://schema.org',
|
|
49
|
+
'@type': 'FAQPage',
|
|
50
|
+
mainEntity: faqData.map((item) => ({
|
|
51
|
+
'@type': 'Question',
|
|
52
|
+
name: item.question,
|
|
53
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
54
|
+
})),
|
|
55
|
+
};
|
|
56
|
+
|
|
57
|
+
const howToSchema: WithContext<HowTo> = {
|
|
58
|
+
'@context': 'https://schema.org',
|
|
59
|
+
'@type': 'HowTo',
|
|
60
|
+
name: title,
|
|
61
|
+
description,
|
|
62
|
+
step: howToData.map((step, i) => ({
|
|
63
|
+
'@type': 'HowToStep',
|
|
64
|
+
position: i + 1,
|
|
65
|
+
name: step.name,
|
|
66
|
+
text: step.text,
|
|
67
|
+
})),
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
71
|
+
'@context': 'https://schema.org',
|
|
72
|
+
'@type': 'SoftwareApplication',
|
|
73
|
+
name: title,
|
|
74
|
+
description,
|
|
75
|
+
applicationCategory: 'UtilityApplication',
|
|
76
|
+
operatingSystem: 'All',
|
|
77
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
78
|
+
inLanguage: 'ru',
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
export const content: RainHarvesterLocaleContent = {
|
|
82
|
+
slug,
|
|
83
|
+
title,
|
|
84
|
+
description,
|
|
85
|
+
ui: {
|
|
86
|
+
headInputs: 'Настройки крыши',
|
|
87
|
+
headResults: 'Потенциал сбора',
|
|
88
|
+
labelArea: 'Площадь крыши',
|
|
89
|
+
labelRainfall: 'Годовое количество осадков',
|
|
90
|
+
labelMaterial: 'Материал крыши',
|
|
91
|
+
unitM2: 'м²',
|
|
92
|
+
unitMm: 'мм',
|
|
93
|
+
unitLiters: 'Литры',
|
|
94
|
+
helpRainfall: 'Не знаете? Поищите в Google "среднегодовое количество осадков в [вашем городе]".',
|
|
95
|
+
efficiencyTitle: 'Коэффициент эффективности',
|
|
96
|
+
efficiencyNote: 'Применяется потеря 10% на фильтры и испарение.',
|
|
97
|
+
resultTitle: 'Годовой потенциал сбора',
|
|
98
|
+
equivalenciesTitle: 'Практические эквиваленты',
|
|
99
|
+
labelFlushes: 'Смывы унитаза',
|
|
100
|
+
labelShowers: 'Принятия душа (10 мин)',
|
|
101
|
+
labelGarden: 'Полив сада',
|
|
102
|
+
gardenArea: '(50м²)',
|
|
103
|
+
materialMetal: 'Металл / Глазурованная черепица',
|
|
104
|
+
materialClay: 'Керамическая черепица / Глина',
|
|
105
|
+
materialConcrete: 'Бетон / Асфальт',
|
|
106
|
+
materialGravel: 'Гравий / Зеленая крыша',
|
|
107
|
+
},
|
|
108
|
+
seo: [
|
|
109
|
+
{
|
|
110
|
+
type: 'title',
|
|
111
|
+
text: 'Сбор дождевой воды: Автономия и устойчивое развитие',
|
|
112
|
+
level: 2,
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
type: 'paragraph',
|
|
116
|
+
html: 'Большинство домовладельцев не подозревают о потенциале собственных крыш. Стандартная крыша может собирать тысячи литров бесплатной воды каждый год. Этот инструмент количественно определяет этот потенциал, позволяя вам точно рассчитать, сколько воды вы можете "собрать", и определить идеальный размер бака для хранения.',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
type: 'title',
|
|
120
|
+
text: 'Логика расчета',
|
|
121
|
+
level: 3,
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
type: 'paragraph',
|
|
125
|
+
html: 'Базовая формула для сбора дождевой воды проста, но эффективна:',
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
type: 'paragraph',
|
|
129
|
+
html: '<code style="display:block;padding:1rem;background:var(-bg-alt);border-radius:0.5rem;margin:1rem 0;font-family:monospace;">Объем = Площадь × Осадки × Коэффициент стока × Эффективность фильтра</code>',
|
|
130
|
+
},
|
|
131
|
+
{
|
|
132
|
+
type: 'list',
|
|
133
|
+
items: [
|
|
134
|
+
'<strong>Площадь:</strong> Основание вашей крыши (проекция длина × ширина).',
|
|
135
|
+
'<strong>Осадки:</strong> Выпадающий дождь в миллиметрах.',
|
|
136
|
+
'<strong>Коэффициент:</strong> Сколько воды теряет ваша крыша (например, впитывание).',
|
|
137
|
+
'<strong>Эффективность:</strong> Потери в фильтрах перед баком (~10%).',
|
|
138
|
+
],
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'title',
|
|
142
|
+
text: 'Зачем собирать дождевую воду?',
|
|
143
|
+
level: 3,
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
type: 'list',
|
|
147
|
+
items: [
|
|
148
|
+
'<strong>Экономия:</strong> Значительно сократите свои счета за воду.',
|
|
149
|
+
'<strong>Садоводство:</strong> Растения любят воду без хлора и извести.',
|
|
150
|
+
'<strong>Устойчивость:</strong> Имейте аварийный запас на случай отключений.',
|
|
151
|
+
],
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
type: 'title',
|
|
155
|
+
text: 'Размер бака',
|
|
156
|
+
level: 2,
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
type: 'paragraph',
|
|
160
|
+
html: 'Самая распространенная ошибка - покупка бака, исходя только из бюджета. Если он слишком мал, вы будете терять тысячи литров из-за перелива. Если он слишком велик, вы потратите деньги зря. Общее правило - иметь емкость для хранения среднего количества осадков за <strong>3 месяца</strong> в вашем районе, что позволит вам пережить засушливые сезоны.',
|
|
161
|
+
},
|
|
162
|
+
],
|
|
163
|
+
faq: faqData,
|
|
164
|
+
howTo: howToData,
|
|
165
|
+
bibliography,
|
|
166
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
167
|
+
};
|