@jjlmoya/utils-nature 1.13.0 → 1.15.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.
Files changed (84) hide show
  1. package/package.json +1 -1
  2. package/src/category/i18n/fr.ts +6 -6
  3. package/src/category/i18n/ru.ts +5 -5
  4. package/src/layouts/PreviewLayout.astro +1 -1
  5. package/src/pages/[locale]/[slug].astro +32 -14
  6. package/src/tests/diacritics_density.test.ts +118 -0
  7. package/src/tests/inverted_punctuation.test.ts +84 -0
  8. package/src/tests/locale_completeness.test.ts +1 -31
  9. package/src/tests/no_en_dash.test.ts +71 -0
  10. package/src/tests/script_density.test.ts +94 -0
  11. package/src/tests/shared-test-helpers.ts +56 -0
  12. package/src/tests/tool_exports.test.ts +34 -0
  13. package/src/tool/cricketThermometer/bibliography.ts +12 -0
  14. package/src/tool/cricketThermometer/i18n/de.ts +6 -18
  15. package/src/tool/cricketThermometer/i18n/en.ts +3 -15
  16. package/src/tool/cricketThermometer/i18n/es.ts +3 -15
  17. package/src/tool/cricketThermometer/i18n/fr.ts +9 -21
  18. package/src/tool/cricketThermometer/i18n/id.ts +3 -15
  19. package/src/tool/cricketThermometer/i18n/it.ts +3 -15
  20. package/src/tool/cricketThermometer/i18n/ja.ts +3 -15
  21. package/src/tool/cricketThermometer/i18n/ko.ts +3 -15
  22. package/src/tool/cricketThermometer/i18n/nl.ts +3 -15
  23. package/src/tool/cricketThermometer/i18n/pl.ts +6 -18
  24. package/src/tool/cricketThermometer/i18n/pt.ts +3 -15
  25. package/src/tool/cricketThermometer/i18n/ru.ts +8 -20
  26. package/src/tool/cricketThermometer/i18n/sv.ts +3 -15
  27. package/src/tool/cricketThermometer/i18n/tr.ts +3 -15
  28. package/src/tool/cricketThermometer/i18n/zh.ts +8 -20
  29. package/src/tool/cricketThermometer/seo.astro +1 -1
  30. package/src/tool/cricketThermometer/ui.ts +0 -2
  31. package/src/tool/digitalCarbon/bibliography.ts +8 -0
  32. package/src/tool/digitalCarbon/digital-carbon-footprint-calculator.css +57 -1
  33. package/src/tool/digitalCarbon/i18n/de.ts +4 -10
  34. package/src/tool/digitalCarbon/i18n/en.ts +2 -8
  35. package/src/tool/digitalCarbon/i18n/es.ts +2 -8
  36. package/src/tool/digitalCarbon/i18n/fr.ts +6 -12
  37. package/src/tool/digitalCarbon/i18n/id.ts +2 -8
  38. package/src/tool/digitalCarbon/i18n/it.ts +2 -8
  39. package/src/tool/digitalCarbon/i18n/ja.ts +2 -8
  40. package/src/tool/digitalCarbon/i18n/ko.ts +2 -8
  41. package/src/tool/digitalCarbon/i18n/nl.ts +2 -8
  42. package/src/tool/digitalCarbon/i18n/pl.ts +2 -8
  43. package/src/tool/digitalCarbon/i18n/pt.ts +2 -8
  44. package/src/tool/digitalCarbon/i18n/ru.ts +3 -9
  45. package/src/tool/digitalCarbon/i18n/sv.ts +2 -8
  46. package/src/tool/digitalCarbon/i18n/tr.ts +2 -8
  47. package/src/tool/digitalCarbon/i18n/zh.ts +2 -8
  48. package/src/tool/digitalCarbon/seo.astro +1 -1
  49. package/src/tool/rainHarvester/bibliography.ts +20 -0
  50. package/src/tool/rainHarvester/i18n/de.ts +5 -23
  51. package/src/tool/rainHarvester/i18n/en.ts +2 -20
  52. package/src/tool/rainHarvester/i18n/es.ts +2 -20
  53. package/src/tool/rainHarvester/i18n/fr.ts +3 -21
  54. package/src/tool/rainHarvester/i18n/id.ts +2 -20
  55. package/src/tool/rainHarvester/i18n/it.ts +2 -20
  56. package/src/tool/rainHarvester/i18n/ja.ts +2 -20
  57. package/src/tool/rainHarvester/i18n/ko.ts +2 -20
  58. package/src/tool/rainHarvester/i18n/nl.ts +2 -20
  59. package/src/tool/rainHarvester/i18n/pl.ts +5 -23
  60. package/src/tool/rainHarvester/i18n/pt.ts +2 -20
  61. package/src/tool/rainHarvester/i18n/ru.ts +8 -26
  62. package/src/tool/rainHarvester/i18n/sv.ts +2 -20
  63. package/src/tool/rainHarvester/i18n/tr.ts +2 -20
  64. package/src/tool/rainHarvester/i18n/zh.ts +5 -23
  65. package/src/tool/rainHarvester/seo.astro +1 -1
  66. package/src/tool/seedCalculator/bibliography.ts +16 -0
  67. package/src/tool/seedCalculator/i18n/de.ts +2 -18
  68. package/src/tool/seedCalculator/i18n/en.ts +2 -18
  69. package/src/tool/seedCalculator/i18n/es.ts +2 -18
  70. package/src/tool/seedCalculator/i18n/fr.ts +3 -19
  71. package/src/tool/seedCalculator/i18n/id.ts +2 -18
  72. package/src/tool/seedCalculator/i18n/it.ts +2 -18
  73. package/src/tool/seedCalculator/i18n/ja.ts +2 -18
  74. package/src/tool/seedCalculator/i18n/ko.ts +2 -18
  75. package/src/tool/seedCalculator/i18n/nl.ts +2 -18
  76. package/src/tool/seedCalculator/i18n/pl.ts +3 -19
  77. package/src/tool/seedCalculator/i18n/pt.ts +2 -18
  78. package/src/tool/seedCalculator/i18n/ru.ts +6 -22
  79. package/src/tool/seedCalculator/i18n/sv.ts +2 -18
  80. package/src/tool/seedCalculator/i18n/tr.ts +2 -18
  81. package/src/tool/seedCalculator/i18n/zh.ts +2 -18
  82. package/src/tool/seedCalculator/seo.astro +8 -2
  83. package/src/tool/seedCalculator/ui.ts +0 -2
  84. package/src/types.ts +0 -2
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { RainHarvesterLocaleContent } from '../index';
3
4
 
4
5
  const slug = 'calculadora-agua-da-chuva';
@@ -159,27 +160,8 @@ export const content: RainHarvesterLocaleContent = {
159
160
  html: 'O erro mais comum é comprar um tanque baseando-se apenas no orçamento. Se for demasiado pequeno, desperdiçará milhares de litros devido ao transbordo. Se for demasiado grande, gastará dinheiro desnecessariamente. Uma regra geral é ter capacidade para armazenar <strong>3 meses</strong> da pluviosidade média da sua zona, o que lhe permite atravessar as estações secas.',
160
161
  },
161
162
  ],
162
- faqTitle: 'Perguntas Frequentes',
163
163
  faq: faqData,
164
164
  howTo: howToData,
165
- bibliographyTitle: 'Referências Científicas',
166
- bibliography: [
167
- {
168
- name: 'FAO - Rainwater Harvesting and Storage',
169
- url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
170
- },
171
- {
172
- name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
173
- url: 'https://rainwaterharvesting.tamu.edu/',
174
- },
175
- {
176
- name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
177
- url: 'https://www.harvestingrainwater.com/',
178
- },
179
- {
180
- name: 'European Environment Agency - Water Resources',
181
- url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
182
- },
183
- ],
165
+ bibliography,
184
166
  schemas: [faqSchema, howToSchema, appSchema],
185
167
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { RainHarvesterLocaleContent } from '../index';
3
4
 
4
5
  const slug = 'kalkulyator-dozhdevoy-vody';
@@ -8,11 +9,11 @@ const description = 'Рассчитайте, сколько дождевой в
8
9
  const faqData = [
9
10
  {
10
11
  question: 'Сколько воды я на самом деле могу собрать со своей крыши?',
11
- answer: 'Общее правило гласит, что на каждый квадратный метр крыши и каждый миллиметр дождя можно собрать примерно 1 литр воды. Однако существуют потери на испарение и фильтрацию, корректируемые «коэффициентом стока».',
12
+ answer: 'Общее правило гласит, что на каждый квадратный метр крыши и каждый миллиметр дождя можно собрать примерно 1 литр воды. Однако существуют потери на испарение и фильтрацию, корректируемые "коэффициентом стока".',
12
13
  },
13
14
  {
14
15
  question: 'Что такое коэффициент стока?',
15
- answer: 'Это процент, указывающий, сколько воды теряется в зависимости от материала крыши. Металлическая или черепичная крыша очень эффективна (0,850,95), в то время как гравийная или земляная крыша гораздо менее эффективна (0,10,3).',
16
+ answer: 'Это процент, указывающий, сколько воды теряется в зависимости от материала крыши. Металлическая или черепичная крыша очень эффективна (0,85-0,95), в то время как гравийная или земляная крыша гораздо менее эффективна (0,1-0,3).',
16
17
  },
17
18
  {
18
19
  question: 'Как подобрать размер накопительного бака?',
@@ -39,7 +40,7 @@ const howToData = [
39
40
  },
40
41
  {
41
42
  name: 'Рассчитайте необходимый объем',
42
- text: 'Используйте результат годового сбора в литрах, чтобы выбрать бак, который может хранить не менее 2030% от общего урожая для засушливых периодов.',
43
+ text: 'Используйте результат годового сбора в литрах, чтобы выбрать бак, который может хранить не менее 20-30% от общего урожая для засушливых периодов.',
43
44
  },
44
45
  ];
45
46
 
@@ -90,7 +91,7 @@ export const content: RainHarvesterLocaleContent = {
90
91
  unitM2: 'м²',
91
92
  unitMm: 'мм',
92
93
  unitLiters: 'Литры',
93
- helpRainfall: 'Не знаете? Поищите в Google «среднегодовое количество осадков в [вашем городе]».',
94
+ helpRainfall: 'Не знаете? Поищите в Google "среднегодовое количество осадков в [вашем городе]".',
94
95
  efficiencyTitle: 'Коэффициент эффективности',
95
96
  efficiencyNote: 'Применяется потеря 10% на фильтры и испарение.',
96
97
  resultTitle: 'Годовой потенциал сбора',
@@ -112,7 +113,7 @@ export const content: RainHarvesterLocaleContent = {
112
113
  },
113
114
  {
114
115
  type: 'paragraph',
115
- html: 'Большинство домовладельцев не подозревают о потенциале собственных крыш. Стандартная крыша может собирать тысячи литров бесплатной воды каждый год. Этот инструмент количественно определяет этот потенциал, позволяя вам точно рассчитать, сколько воды вы можете «собрать», и определить идеальный размер бака для хранения.',
116
+ html: 'Большинство домовладельцев не подозревают о потенциале собственных крыш. Стандартная крыша может собирать тысячи литров бесплатной воды каждый год. Этот инструмент количественно определяет этот потенциал, позволяя вам точно рассчитать, сколько воды вы можете "собрать", и определить идеальный размер бака для хранения.',
116
117
  },
117
118
  {
118
119
  type: 'title',
@@ -156,30 +157,11 @@ export const content: RainHarvesterLocaleContent = {
156
157
  },
157
158
  {
158
159
  type: 'paragraph',
159
- html: 'Самая распространенная ошибка покупка бака, исходя только из бюджета. Если он слишком мал, вы будете терять тысячи литров из-за перелива. Если он слишком велик, вы потратите деньги зря. Общее правило иметь емкость для хранения среднего количества осадков за <strong>3 месяца</strong> в вашем районе, что позволит вам пережить засушливые сезоны.',
160
+ html: 'Самая распространенная ошибка - покупка бака, исходя только из бюджета. Если он слишком мал, вы будете терять тысячи литров из-за перелива. Если он слишком велик, вы потратите деньги зря. Общее правило - иметь емкость для хранения среднего количества осадков за <strong>3 месяца</strong> в вашем районе, что позволит вам пережить засушливые сезоны.',
160
161
  },
161
162
  ],
162
- faqTitle: 'Часто задаваемые вопросы',
163
163
  faq: faqData,
164
164
  howTo: howToData,
165
- bibliographyTitle: 'Научные источники',
166
- bibliography: [
167
- {
168
- name: 'FAO - Rainwater Harvesting and Storage',
169
- url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
170
- },
171
- {
172
- name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
173
- url: 'https://rainwaterharvesting.tamu.edu/',
174
- },
175
- {
176
- name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
177
- url: 'https://www.harvestingrainwater.com/',
178
- },
179
- {
180
- name: 'European Environment Agency - Water Resources',
181
- url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
182
- },
183
- ],
165
+ bibliography,
184
166
  schemas: [faqSchema, howToSchema, appSchema],
185
167
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { RainHarvesterLocaleContent } from '../index';
3
4
 
4
5
  const slug = 'regnvatten-kalkylator';
@@ -159,27 +160,8 @@ export const content: RainHarvesterLocaleContent = {
159
160
  html: 'Det vanligaste misstaget är att köpa en tank enbart baserat på budget. Om den är för liten kommer du att slösa bort tusentals liter på grund av överfyllnad. Om den är för stor kommer du att spendera pengar i onödan. En allmän regel är att ha kapacitet att lagra <strong>3 månader</strong> av genomsnittlig nederbörd i ditt område, vilket gör att du kan överbrygga torrperioder.',
160
161
  },
161
162
  ],
162
- faqTitle: 'Vanliga frågor',
163
163
  faq: faqData,
164
164
  howTo: howToData,
165
- bibliographyTitle: 'Vetenskapliga referenser',
166
- bibliography: [
167
- {
168
- name: 'FAO - Rainwater Harvesting and Storage',
169
- url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
170
- },
171
- {
172
- name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
173
- url: 'https://rainwaterharvesting.tamu.edu/',
174
- },
175
- {
176
- name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
177
- url: 'https://www.harvestingrainwater.com/',
178
- },
179
- {
180
- name: 'European Environment Agency - Water Resources',
181
- url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
182
- },
183
- ],
165
+ bibliography,
184
166
  schemas: [faqSchema, howToSchema, appSchema],
185
167
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { RainHarvesterLocaleContent } from '../index';
3
4
 
4
5
  const slug = 'yagmur-suyu-hesaplayici';
@@ -159,27 +160,8 @@ export const content: RainHarvesterLocaleContent = {
159
160
  html: 'En yaygın hata, sadece bütçeye göre tank almaktır. Çok küçükse, taşma nedeniyle binlerce litreyi boşa harcarsınız. Çok büyükse, gereksiz yere para harcarsınız. Genel kural, bölgenizdeki ortalama yağışın <strong>3 aylık</strong> miktarını depolayacak kapasiteye sahip olmaktır; bu da kurak mevsimleri atlatmanızı sağlar.',
160
161
  },
161
162
  ],
162
- faqTitle: 'Sıkça Sorulan Sorular',
163
163
  faq: faqData,
164
164
  howTo: howToData,
165
- bibliographyTitle: 'Bilimsel Referanslar',
166
- bibliography: [
167
- {
168
- name: 'FAO - Rainwater Harvesting and Storage',
169
- url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
170
- },
171
- {
172
- name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
173
- url: 'https://rainwaterharvesting.tamu.edu/',
174
- },
175
- {
176
- name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
177
- url: 'https://www.harvestingrainwater.com/',
178
- },
179
- {
180
- name: 'European Environment Agency - Water Resources',
181
- url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
182
- },
183
- ],
165
+ bibliography,
184
166
  schemas: [faqSchema, howToSchema, appSchema],
185
167
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { RainHarvesterLocaleContent } from '../index';
3
4
 
4
5
  const slug = 'rainwater-calculator';
@@ -8,7 +9,7 @@ const description = '计算您可以从屋顶收集多少雨水,并确定储
8
9
  const faqData = [
9
10
  {
10
11
  question: '我实际上能从屋顶收集多少水?',
11
- answer: '一般规则是,屋顶每平方米面积在每毫米降雨下大约可以收集 1 升水。但由于蒸发和过滤的影响,需要通过“径流系数”进行调整。',
12
+ answer: '一般规则是,屋顶每平方米面积在每毫米降雨下大约可以收集 1 升水。但由于蒸发和过滤的影响,需要通过"径流系数"进行调整。',
12
13
  },
13
14
  {
14
15
  question: '什么是径流系数?',
@@ -90,7 +91,7 @@ export const content: RainHarvesterLocaleContent = {
90
91
  unitM2: 'm²',
91
92
  unitMm: 'mm',
92
93
  unitLiters: '升',
93
- helpRainfall: '不知道?在 Google 上搜索“(您所在的城市)年平均降水量”。',
94
+ helpRainfall: '不知道?在 Google 上搜索"(您所在的城市)年平均降水量"。',
94
95
  efficiencyTitle: '效率系数',
95
96
  efficiencyNote: '考虑到过滤器和蒸发,已应用 10% 的损失率。',
96
97
  resultTitle: '年收集潜力',
@@ -112,7 +113,7 @@ export const content: RainHarvesterLocaleContent = {
112
113
  },
113
114
  {
114
115
  type: 'paragraph',
115
- html: '大多数房主并未意识到自家屋顶的潜力。一个标准屋顶每年可以捕获数千升免费水。此工具将这种潜力具象化,让您能够精确计算可以“收获”多少水,并确定最理想的储水箱尺寸。',
116
+ html: '大多数房主并未意识到自家屋顶的潜力。一个标准屋顶每年可以捕获数千升免费水。此工具将这种潜力具象化,让您能够精确计算可以"收获"多少水,并确定最理想的储水箱尺寸。',
116
117
  },
117
118
  {
118
119
  type: 'title',
@@ -159,27 +160,8 @@ export const content: RainHarvesterLocaleContent = {
159
160
  html: '最常见的错误是仅根据预算购买水箱。如果太小,会因溢出浪费数千升水;如果太大,则会造成不必要的资金支出。一般规则是拥有能储存当地 <strong>3 个月</strong>平均降雨量的容量,以帮助您平稳度过旱季。',
160
161
  },
161
162
  ],
162
- faqTitle: '常见问题',
163
163
  faq: faqData,
164
164
  howTo: howToData,
165
- bibliographyTitle: '科学参考文献',
166
- bibliography: [
167
- {
168
- name: 'FAO - Rainwater Harvesting and Storage',
169
- url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
170
- },
171
- {
172
- name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
173
- url: 'https://rainwaterharvesting.tamu.edu/',
174
- },
175
- {
176
- name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
177
- url: 'https://www.harvestingrainwater.com/',
178
- },
179
- {
180
- name: 'European Environment Agency - Water Resources',
181
- url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
182
- },
183
- ],
165
+ bibliography,
184
166
  schemas: [faqSchema, howToSchema, appSchema],
185
167
  };
@@ -12,4 +12,4 @@ const content = await rainHarvester.i18n[locale]?.();
12
12
  if (!content) return null;
13
13
  ---
14
14
 
15
- <SEORenderer content={{ locale: locale as string, sections: content.seo }} />
15
+ {content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
@@ -0,0 +1,16 @@
1
+ import type { BibliographyEntry } from '../../types';
2
+
3
+ export const bibliography: BibliographyEntry[] = [
4
+ {
5
+ name: 'KWS España',
6
+ url: 'https://www.kws.com/es/es/',
7
+ },
8
+ {
9
+ name: 'Ministerio de Agricultura (MAPA)',
10
+ url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
11
+ },
12
+ {
13
+ name: 'Yara España',
14
+ url: 'https://www.yara.es/nutricion-vegetal/maiz/',
15
+ },
16
+ ];
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Häufig gestellte Fragen',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Wissenschaftliche Referenzen',
93
- bibliography: [
94
- {
95
- name: 'KWS Spanien',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Spanisches Landwirtschaftsministerium (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Spanien',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Hohe Population',
208
194
  noteBeet: 'Kritische flache Aussaat',
209
195
  noteRapeseed: 'Sehr kleiner Samen',
210
- faqTitle: 'Häufig gestellte Fragen',
211
- bibliographyTitle: 'Wissenschaftliche Referenzen',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Frequently Asked Questions',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Scientific References',
93
- bibliography: [
94
- {
95
- name: 'KWS Spain',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Spanish Ministry of Agriculture (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Spain',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'High population',
208
194
  noteBeet: 'Critical shallow sowing',
209
195
  noteRapeseed: 'Very small seed',
210
- faqTitle: 'Frequently Asked Questions',
211
- bibliographyTitle: 'Scientific References',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Preguntas Frecuentes',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Referencias Científicas',
93
- bibliography: [
94
- {
95
- name: 'KWS España',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Ministerio de Agricultura (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara España',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Alta población',
208
194
  noteBeet: 'Siembra crítica superficial',
209
195
  noteRapeseed: 'Semilla muy pequeña',
210
- faqTitle: 'Preguntas Frecuentes',
211
- bibliographyTitle: 'Referencias Científicas',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Questions Fréquentes',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Références Scientifiques',
93
- bibliography: [
94
- {
95
- name: 'KWS Espagne',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Ministère de l\'Agriculture espagnol (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Espagne',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -114,7 +100,7 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
114
100
  },
115
101
  {
116
102
  type: 'paragraph',
117
- html: "Régler la transmission d'un semoir nécessite de savoir exactement combien de graines doivent tomber par mètre linéaire de sillon. Les manuels des machines donnent souvent des tables approximatives, mais des facteurs comme le <strong>patinage de la roue motrice</strong> ou la taille de la semence peuvent modifier la réalité. Cet outil vous donne la valeur théorique parfaite : l'<strong>espacement cible entre graines</strong>.",
103
+ html: "Régler la transmission d'un semoir nécessite de savoir exactement combien de graines doivent tomber par mètre linéaire de sillon. Les manuels des machines donnent souvent des tables approximatives, mais des facteurs comme le <strong>patinage de la roue motrice</strong> ou la taille de la semence peuvent modifier la réalité. Cet outil vous donne la valeur théorique parfaite: l'<strong>espacement cible entre graines</strong>.",
118
104
  },
119
105
  {
120
106
  type: 'tip',
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Haute population',
208
194
  noteBeet: 'Semis superficiel critique',
209
195
  noteRapeseed: 'Très petite graine',
210
- faqTitle: 'Questions Fréquentes',
211
- bibliographyTitle: 'Références Scientifiques',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Pertanyaan yang Sering Diajukan',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Referensi Ilmiah',
93
- bibliography: [
94
- {
95
- name: 'KWS Spanyol',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Kementerian Pertanian Spanyol (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Spanyol',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Populasi tinggi',
208
194
  noteBeet: 'Penaburan dangkal kritis',
209
195
  noteRapeseed: 'Benih sangat kecil',
210
- faqTitle: 'Pertanyaan yang Sering Diajukan',
211
- bibliographyTitle: 'Referensi Ilmiah',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Domande Frequenti',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Riferimenti Scientifici',
93
- bibliography: [
94
- {
95
- name: 'KWS Spagna',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Ministero dell\'Agricoltura Spagnolo (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Spagna',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Alta popolazione',
208
194
  noteBeet: 'Semina superficiale critica',
209
195
  noteRapeseed: 'Seme molto piccolo',
210
- faqTitle: 'Domande Frequenti',
211
- bibliographyTitle: 'Riferimenti Scientifici',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'よくある質問',
91
91
  faq: faqData,
92
- bibliographyTitle: '科学的参考文献',
93
- bibliography: [
94
- {
95
- name: 'KWS スペイン',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'スペイン農林水産省 (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara スペイン',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: '高個体数',
208
194
  noteBeet: '浅播きが重要',
209
195
  noteRapeseed: '非常に小さな種',
210
- faqTitle: 'よくある質問',
211
- bibliographyTitle: '科学的参考文献',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: '자주 묻는 질문',
91
91
  faq: faqData,
92
- bibliographyTitle: '과학적 참고 문헌',
93
- bibliography: [
94
- {
95
- name: 'KWS 스페인',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: '스페인 농림수산부 (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara 스페인',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: '높은 밀도',
208
194
  noteBeet: '얕은 파종이 중요함',
209
195
  noteRapeseed: '매우 작은 종자',
210
- faqTitle: '자주 묻는 질문',
211
- bibliographyTitle: '과학적 참고 문헌',
212
196
  },
213
197
  };
@@ -1,4 +1,5 @@
1
1
  import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
2
+ import { bibliography } from '../bibliography';
2
3
  import type { ToolLocaleContent } from '../../../types';
3
4
  import type { SeedCalculatorUI } from '../ui';
4
5
 
@@ -87,23 +88,8 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
87
88
  slug,
88
89
  title,
89
90
  description,
90
- faqTitle: 'Veelgestelde vragen',
91
91
  faq: faqData,
92
- bibliographyTitle: 'Wetenschappelijke bronnen',
93
- bibliography: [
94
- {
95
- name: 'KWS Spanje',
96
- url: 'https://www.kws.com/es/es/',
97
- },
98
- {
99
- name: 'Spaans Ministerie van Landbouw (MAPA)',
100
- url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
101
- },
102
- {
103
- name: 'Yara Spanje',
104
- url: 'https://www.yara.es/nutricion-vegetal/maiz/',
105
- },
106
- ],
92
+ bibliography,
107
93
  howTo: howToData,
108
94
  schemas: [faqSchema, howToSchema, appSchema],
109
95
  seo: [
@@ -207,7 +193,5 @@ export const content: ToolLocaleContent<SeedCalculatorUI> = {
207
193
  noteSoy: 'Hoge populatie',
208
194
  noteBeet: 'Kritisch ondiep zaaien',
209
195
  noteRapeseed: 'Zeer klein zaad',
210
- faqTitle: 'Veelgestelde vragen',
211
- bibliographyTitle: 'Wetenschappelijke bronnen',
212
196
  },
213
197
  };