@jjlmoya/utils-cooking 1.24.0 → 1.25.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 (249) hide show
  1. package/package.json +1 -1
  2. package/src/entries.ts +3 -1
  3. package/src/index.ts +1 -0
  4. package/src/pages/[locale]/[slug].astro +56 -19
  5. package/src/tests/i18n-titles.test.ts +5 -17
  6. package/src/tests/locale_completeness.test.ts +2 -13
  7. package/src/tests/shared-test-helpers.ts +56 -0
  8. package/src/tests/tool_exports.test.ts +34 -0
  9. package/src/tests/tool_validation.test.ts +2 -2
  10. package/src/tool/american-kitchen-converter/bibliography.astro +3 -3
  11. package/src/tool/american-kitchen-converter/bibliography.ts +10 -0
  12. package/src/tool/american-kitchen-converter/i18n/de.ts +2 -11
  13. package/src/tool/american-kitchen-converter/i18n/en.ts +2 -11
  14. package/src/tool/american-kitchen-converter/i18n/es.ts +40 -49
  15. package/src/tool/american-kitchen-converter/i18n/fr.ts +2 -21
  16. package/src/tool/american-kitchen-converter/i18n/id.ts +2 -11
  17. package/src/tool/american-kitchen-converter/i18n/it.ts +2 -11
  18. package/src/tool/american-kitchen-converter/i18n/ja.ts +2 -11
  19. package/src/tool/american-kitchen-converter/i18n/ko.ts +2 -11
  20. package/src/tool/american-kitchen-converter/i18n/nl.ts +2 -11
  21. package/src/tool/american-kitchen-converter/i18n/pl.ts +2 -11
  22. package/src/tool/american-kitchen-converter/i18n/pt.ts +2 -11
  23. package/src/tool/american-kitchen-converter/i18n/ru.ts +2 -11
  24. package/src/tool/american-kitchen-converter/i18n/sv.ts +2 -11
  25. package/src/tool/american-kitchen-converter/i18n/tr.ts +2 -11
  26. package/src/tool/american-kitchen-converter/i18n/zh.ts +2 -11
  27. package/src/tool/american-kitchen-converter/seo.astro +11 -4
  28. package/src/tool/banana-ripeness/bibliography.astro +3 -3
  29. package/src/tool/banana-ripeness/bibliography.ts +10 -0
  30. package/src/tool/banana-ripeness/i18n/de.ts +2 -15
  31. package/src/tool/banana-ripeness/i18n/en.ts +36 -49
  32. package/src/tool/banana-ripeness/i18n/es.ts +36 -49
  33. package/src/tool/banana-ripeness/i18n/fr.ts +36 -49
  34. package/src/tool/banana-ripeness/i18n/id.ts +2 -15
  35. package/src/tool/banana-ripeness/i18n/it.ts +2 -15
  36. package/src/tool/banana-ripeness/i18n/ja.ts +2 -15
  37. package/src/tool/banana-ripeness/i18n/ko.ts +2 -15
  38. package/src/tool/banana-ripeness/i18n/nl.ts +2 -15
  39. package/src/tool/banana-ripeness/i18n/pl.ts +2 -15
  40. package/src/tool/banana-ripeness/i18n/pt.ts +2 -15
  41. package/src/tool/banana-ripeness/i18n/ru.ts +2 -15
  42. package/src/tool/banana-ripeness/i18n/sv.ts +2 -15
  43. package/src/tool/banana-ripeness/i18n/tr.ts +2 -15
  44. package/src/tool/banana-ripeness/i18n/zh.ts +2 -15
  45. package/src/tool/banana-ripeness/seo.astro +10 -3
  46. package/src/tool/brine/bibliography.astro +3 -3
  47. package/src/tool/brine/bibliography.ts +6 -0
  48. package/src/tool/brine/i18n/de.ts +4 -19
  49. package/src/tool/brine/i18n/en.ts +3 -17
  50. package/src/tool/brine/i18n/es.ts +4 -19
  51. package/src/tool/brine/i18n/fr.ts +3 -17
  52. package/src/tool/brine/i18n/id.ts +4 -19
  53. package/src/tool/brine/i18n/it.ts +4 -19
  54. package/src/tool/brine/i18n/ja.ts +4 -19
  55. package/src/tool/brine/i18n/ko.ts +4 -19
  56. package/src/tool/brine/i18n/nl.ts +4 -19
  57. package/src/tool/brine/i18n/pl.ts +4 -19
  58. package/src/tool/brine/i18n/pt.ts +4 -19
  59. package/src/tool/brine/i18n/ru.ts +4 -19
  60. package/src/tool/brine/i18n/sv.ts +4 -19
  61. package/src/tool/brine/i18n/tr.ts +4 -19
  62. package/src/tool/brine/i18n/zh.ts +4 -19
  63. package/src/tool/brine/seo.astro +11 -4
  64. package/src/tool/cookware-guide/bibliography.astro +2 -2
  65. package/src/tool/cookware-guide/bibliography.ts +10 -0
  66. package/src/tool/cookware-guide/i18n/de.ts +3 -17
  67. package/src/tool/cookware-guide/i18n/en.ts +3 -17
  68. package/src/tool/cookware-guide/i18n/es.ts +3 -17
  69. package/src/tool/cookware-guide/i18n/fr.ts +3 -17
  70. package/src/tool/cookware-guide/i18n/id.ts +3 -17
  71. package/src/tool/cookware-guide/i18n/it.ts +3 -17
  72. package/src/tool/cookware-guide/i18n/ja.ts +3 -17
  73. package/src/tool/cookware-guide/i18n/ko.ts +3 -17
  74. package/src/tool/cookware-guide/i18n/nl.ts +3 -17
  75. package/src/tool/cookware-guide/i18n/pl.ts +3 -17
  76. package/src/tool/cookware-guide/i18n/pt.ts +3 -17
  77. package/src/tool/cookware-guide/i18n/ru.ts +3 -17
  78. package/src/tool/cookware-guide/i18n/sv.ts +3 -17
  79. package/src/tool/cookware-guide/i18n/tr.ts +3 -17
  80. package/src/tool/cookware-guide/i18n/zh.ts +3 -17
  81. package/src/tool/cookware-guide/seo.astro +11 -4
  82. package/src/tool/egg-timer/bibliography.astro +3 -11
  83. package/src/tool/egg-timer/bibliography.ts +10 -0
  84. package/src/tool/egg-timer/i18n/de.ts +3 -17
  85. package/src/tool/egg-timer/i18n/en.ts +2 -15
  86. package/src/tool/egg-timer/i18n/es.ts +127 -141
  87. package/src/tool/egg-timer/i18n/fr.ts +2 -15
  88. package/src/tool/egg-timer/i18n/id.ts +4 -18
  89. package/src/tool/egg-timer/i18n/it.ts +3 -17
  90. package/src/tool/egg-timer/i18n/ja.ts +3 -17
  91. package/src/tool/egg-timer/i18n/ko.ts +3 -17
  92. package/src/tool/egg-timer/i18n/nl.ts +3 -17
  93. package/src/tool/egg-timer/i18n/pl.ts +3 -17
  94. package/src/tool/egg-timer/i18n/pt.ts +3 -17
  95. package/src/tool/egg-timer/i18n/ru.ts +3 -17
  96. package/src/tool/egg-timer/i18n/sv.ts +3 -17
  97. package/src/tool/egg-timer/i18n/tr.ts +3 -17
  98. package/src/tool/egg-timer/i18n/zh.ts +3 -17
  99. package/src/tool/egg-timer/seo.astro +6 -30
  100. package/src/tool/ingredient-rescaler/bibliography.astro +3 -3
  101. package/src/tool/ingredient-rescaler/bibliography.ts +6 -0
  102. package/src/tool/ingredient-rescaler/i18n/de.ts +3 -17
  103. package/src/tool/ingredient-rescaler/i18n/en.ts +3 -18
  104. package/src/tool/ingredient-rescaler/i18n/es.ts +4 -19
  105. package/src/tool/ingredient-rescaler/i18n/fr.ts +2 -15
  106. package/src/tool/ingredient-rescaler/i18n/id.ts +3 -17
  107. package/src/tool/ingredient-rescaler/i18n/it.ts +3 -17
  108. package/src/tool/ingredient-rescaler/i18n/ja.ts +3 -17
  109. package/src/tool/ingredient-rescaler/i18n/ko.ts +3 -17
  110. package/src/tool/ingredient-rescaler/i18n/nl.ts +3 -17
  111. package/src/tool/ingredient-rescaler/i18n/pl.ts +3 -17
  112. package/src/tool/ingredient-rescaler/i18n/pt.ts +3 -17
  113. package/src/tool/ingredient-rescaler/i18n/ru.ts +3 -17
  114. package/src/tool/ingredient-rescaler/i18n/sv.ts +3 -17
  115. package/src/tool/ingredient-rescaler/i18n/tr.ts +3 -17
  116. package/src/tool/ingredient-rescaler/i18n/zh.ts +3 -17
  117. package/src/tool/ingredient-rescaler/seo.astro +11 -4
  118. package/src/tool/kitchen-timer/bibliography.astro +3 -3
  119. package/src/tool/kitchen-timer/bibliography.ts +10 -0
  120. package/src/tool/kitchen-timer/i18n/de.ts +3 -13
  121. package/src/tool/kitchen-timer/i18n/en.ts +6 -22
  122. package/src/tool/kitchen-timer/i18n/es.ts +6 -22
  123. package/src/tool/kitchen-timer/i18n/fr.ts +6 -22
  124. package/src/tool/kitchen-timer/i18n/id.ts +3 -13
  125. package/src/tool/kitchen-timer/i18n/it.ts +3 -13
  126. package/src/tool/kitchen-timer/i18n/ja.ts +3 -13
  127. package/src/tool/kitchen-timer/i18n/ko.ts +3 -13
  128. package/src/tool/kitchen-timer/i18n/nl.ts +3 -13
  129. package/src/tool/kitchen-timer/i18n/pl.ts +3 -13
  130. package/src/tool/kitchen-timer/i18n/pt.ts +3 -13
  131. package/src/tool/kitchen-timer/i18n/ru.ts +3 -13
  132. package/src/tool/kitchen-timer/i18n/sv.ts +3 -13
  133. package/src/tool/kitchen-timer/i18n/tr.ts +3 -13
  134. package/src/tool/kitchen-timer/i18n/zh.ts +3 -13
  135. package/src/tool/kitchen-timer/seo.astro +10 -3
  136. package/src/tool/meringue-peak/bibliography.astro +3 -3
  137. package/src/tool/meringue-peak/bibliography.ts +14 -0
  138. package/src/tool/meringue-peak/i18n/de.ts +3 -13
  139. package/src/tool/meringue-peak/i18n/en.ts +2 -15
  140. package/src/tool/meringue-peak/i18n/es.ts +135 -149
  141. package/src/tool/meringue-peak/i18n/fr.ts +2 -15
  142. package/src/tool/meringue-peak/i18n/id.ts +3 -13
  143. package/src/tool/meringue-peak/i18n/it.ts +3 -13
  144. package/src/tool/meringue-peak/i18n/ja.ts +3 -13
  145. package/src/tool/meringue-peak/i18n/ko.ts +3 -13
  146. package/src/tool/meringue-peak/i18n/nl.ts +3 -13
  147. package/src/tool/meringue-peak/i18n/pl.ts +3 -13
  148. package/src/tool/meringue-peak/i18n/pt.ts +3 -13
  149. package/src/tool/meringue-peak/i18n/ru.ts +3 -13
  150. package/src/tool/meringue-peak/i18n/sv.ts +3 -13
  151. package/src/tool/meringue-peak/i18n/tr.ts +3 -13
  152. package/src/tool/meringue-peak/i18n/zh.ts +3 -13
  153. package/src/tool/meringue-peak/seo.astro +10 -3
  154. package/src/tool/mold-scaler/bibliography.astro +3 -3
  155. package/src/tool/mold-scaler/bibliography.ts +10 -0
  156. package/src/tool/mold-scaler/i18n/de.ts +5 -17
  157. package/src/tool/mold-scaler/i18n/en.ts +5 -20
  158. package/src/tool/mold-scaler/i18n/es.ts +5 -20
  159. package/src/tool/mold-scaler/i18n/fr.ts +5 -20
  160. package/src/tool/mold-scaler/i18n/id.ts +5 -17
  161. package/src/tool/mold-scaler/i18n/it.ts +5 -17
  162. package/src/tool/mold-scaler/i18n/ja.ts +5 -17
  163. package/src/tool/mold-scaler/i18n/ko.ts +5 -17
  164. package/src/tool/mold-scaler/i18n/nl.ts +5 -17
  165. package/src/tool/mold-scaler/i18n/pl.ts +5 -17
  166. package/src/tool/mold-scaler/i18n/pt.ts +5 -17
  167. package/src/tool/mold-scaler/i18n/ru.ts +5 -17
  168. package/src/tool/mold-scaler/i18n/sv.ts +5 -17
  169. package/src/tool/mold-scaler/i18n/tr.ts +5 -17
  170. package/src/tool/mold-scaler/i18n/zh.ts +5 -17
  171. package/src/tool/mold-scaler/seo.astro +10 -3
  172. package/src/tool/pizza/bibliography.astro +3 -3
  173. package/src/tool/pizza/bibliography.ts +18 -0
  174. package/src/tool/pizza/i18n/de.ts +3 -13
  175. package/src/tool/pizza/i18n/en.ts +58 -75
  176. package/src/tool/pizza/i18n/es.ts +2 -20
  177. package/src/tool/pizza/i18n/fr.ts +58 -75
  178. package/src/tool/pizza/i18n/id.ts +3 -9
  179. package/src/tool/pizza/i18n/it.ts +3 -13
  180. package/src/tool/pizza/i18n/ja.ts +3 -9
  181. package/src/tool/pizza/i18n/ko.ts +3 -9
  182. package/src/tool/pizza/i18n/nl.ts +3 -9
  183. package/src/tool/pizza/i18n/pl.ts +3 -9
  184. package/src/tool/pizza/i18n/pt.ts +3 -9
  185. package/src/tool/pizza/i18n/ru.ts +28 -34
  186. package/src/tool/pizza/i18n/sv.ts +3 -9
  187. package/src/tool/pizza/i18n/tr.ts +3 -9
  188. package/src/tool/pizza/i18n/zh.ts +3 -9
  189. package/src/tool/pizza/seo.astro +11 -4
  190. package/src/tool/roux-guide/bibliography.astro +3 -3
  191. package/src/tool/roux-guide/bibliography.ts +14 -0
  192. package/src/tool/roux-guide/i18n/de.ts +3 -9
  193. package/src/tool/roux-guide/i18n/en.ts +2 -15
  194. package/src/tool/roux-guide/i18n/es.ts +3 -17
  195. package/src/tool/roux-guide/i18n/fr.ts +2 -15
  196. package/src/tool/roux-guide/i18n/id.ts +3 -9
  197. package/src/tool/roux-guide/i18n/it.ts +3 -9
  198. package/src/tool/roux-guide/i18n/ja.ts +3 -9
  199. package/src/tool/roux-guide/i18n/ko.ts +3 -9
  200. package/src/tool/roux-guide/i18n/nl.ts +3 -9
  201. package/src/tool/roux-guide/i18n/pl.ts +3 -9
  202. package/src/tool/roux-guide/i18n/pt.ts +3 -9
  203. package/src/tool/roux-guide/i18n/ru.ts +3 -9
  204. package/src/tool/roux-guide/i18n/sv.ts +3 -9
  205. package/src/tool/roux-guide/i18n/tr.ts +3 -9
  206. package/src/tool/roux-guide/i18n/zh.ts +3 -9
  207. package/src/tool/roux-guide/seo.astro +11 -4
  208. package/src/tool/sourdough-calculator/bibliography.astro +3 -3
  209. package/src/tool/sourdough-calculator/bibliography.ts +14 -0
  210. package/src/tool/sourdough-calculator/i18n/de.ts +3 -9
  211. package/src/tool/sourdough-calculator/i18n/en.ts +3 -17
  212. package/src/tool/sourdough-calculator/i18n/es.ts +4 -18
  213. package/src/tool/sourdough-calculator/i18n/fr.ts +2 -15
  214. package/src/tool/sourdough-calculator/i18n/id.ts +3 -9
  215. package/src/tool/sourdough-calculator/i18n/it.ts +3 -9
  216. package/src/tool/sourdough-calculator/i18n/ja.ts +3 -9
  217. package/src/tool/sourdough-calculator/i18n/ko.ts +3 -9
  218. package/src/tool/sourdough-calculator/i18n/nl.ts +3 -9
  219. package/src/tool/sourdough-calculator/i18n/pl.ts +3 -9
  220. package/src/tool/sourdough-calculator/i18n/pt.ts +3 -9
  221. package/src/tool/sourdough-calculator/i18n/ru.ts +3 -9
  222. package/src/tool/sourdough-calculator/i18n/sv.ts +3 -9
  223. package/src/tool/sourdough-calculator/i18n/tr.ts +3 -9
  224. package/src/tool/sourdough-calculator/i18n/zh.ts +3 -9
  225. package/src/tool/sourdough-calculator/seo.astro +11 -4
  226. package/src/tool/yeast-converter/bibliography.astro +6 -0
  227. package/src/tool/yeast-converter/bibliography.ts +6 -0
  228. package/src/tool/yeast-converter/component.astro +96 -0
  229. package/src/tool/yeast-converter/entry.ts +26 -0
  230. package/src/tool/yeast-converter/i18n/de.ts +235 -0
  231. package/src/tool/yeast-converter/i18n/en.ts +234 -0
  232. package/src/tool/yeast-converter/i18n/es.ts +235 -0
  233. package/src/tool/yeast-converter/i18n/fr.ts +235 -0
  234. package/src/tool/yeast-converter/i18n/id.ts +235 -0
  235. package/src/tool/yeast-converter/i18n/it.ts +235 -0
  236. package/src/tool/yeast-converter/i18n/ja.ts +235 -0
  237. package/src/tool/yeast-converter/i18n/ko.ts +235 -0
  238. package/src/tool/yeast-converter/i18n/nl.ts +235 -0
  239. package/src/tool/yeast-converter/i18n/pl.ts +235 -0
  240. package/src/tool/yeast-converter/i18n/pt.ts +235 -0
  241. package/src/tool/yeast-converter/i18n/ru.ts +235 -0
  242. package/src/tool/yeast-converter/i18n/sv.ts +235 -0
  243. package/src/tool/yeast-converter/i18n/tr.ts +235 -0
  244. package/src/tool/yeast-converter/i18n/zh.ts +235 -0
  245. package/src/tool/yeast-converter/index.ts +11 -0
  246. package/src/tool/yeast-converter/init.ts +277 -0
  247. package/src/tool/yeast-converter/seo.astro +15 -0
  248. package/src/tool/yeast-converter/yeast-converter-fresh-dry-sourdough-starter.css +388 -0
  249. package/src/tools.ts +2 -0
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = "Калькулятор меренги и взбитых белков";
4
5
  const description = "Рассчитайте точное количество сахара для французской, итальянской или швейцарской меренги в зависимости от веса белков. Время взбивания и кулинарные хитрости.";
@@ -76,7 +77,6 @@ export const content: ToolLocaleContent = {
76
77
  title,
77
78
  description,
78
79
  faqTitle: 'Часто задаваемые вопросы',
79
- bibliographyTitle: 'Источники и ссылки',
80
80
  ui: {
81
81
  whitesLabel: 'Вес белков',
82
82
  whitesPlaceholder: 'Напр. 120',
@@ -113,18 +113,7 @@ export const content: ToolLocaleContent = {
113
113
  invalidWeightError: 'Введите корректный вес',
114
114
  },
115
115
  faq,
116
- howTo,
117
- bibliography: [
118
- {
119
- name: 'Ларусс Гастрономик: Типы меренги',
120
- url: 'https://laroussecocina.mx/palabra/merengue/',
121
- },
122
- {
123
- name: 'Exploratorium: Science of Eggs',
124
- url: 'https://www.exploratorium.edu/explore/cooking/egg-science',
125
- },
126
- ],
127
- seo: [
116
+ howTo, seo: [
128
117
  {
129
118
  type: 'title',
130
119
  text: 'Руководство мастера: расчет меренги и взбитых белков',
@@ -206,5 +195,6 @@ export const content: ToolLocaleContent = {
206
195
  html: 'Протрите чашу уксусом или лимоном. Малейшие следы жира не дадут белкам подняться.',
207
196
  },
208
197
  ],
198
+ bibliography,
209
199
  schemas: [faqSchema, howToSchema, appSchema],
210
200
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = "Maräng & Äggvitekalkylator";
4
5
  const description = "Beräkna den exakta mängden socker för fransk, italiensk eller schweizisk maräng baserat på vikten på dina äggvitor. Visptider och konditoritips.";
@@ -76,7 +77,6 @@ export const content: ToolLocaleContent = {
76
77
  title,
77
78
  description,
78
79
  faqTitle: 'Vanliga Frågor',
79
- bibliographyTitle: 'Källor och Referenser',
80
80
  ui: {
81
81
  whitesLabel: 'Vikt på Äggvitorna',
82
82
  whitesPlaceholder: 'Ex. 120',
@@ -113,18 +113,7 @@ export const content: ToolLocaleContent = {
113
113
  invalidWeightError: 'Ange en giltig vikt',
114
114
  },
115
115
  faq,
116
- howTo,
117
- bibliography: [
118
- {
119
- name: 'Larousse Kitchen: Typer av maräng',
120
- url: 'https://laroussecocina.mx/palabra/merengue/',
121
- },
122
- {
123
- name: 'Exploratorium: Egg Science',
124
- url: 'https://www.exploratorium.edu/explore/cooking/egg-science',
125
- },
126
- ],
127
- seo: [
116
+ howTo, seo: [
128
117
  {
129
118
  type: 'title',
130
119
  text: 'Mästarguide för Maräng och Äggvita',
@@ -206,5 +195,6 @@ export const content: ToolLocaleContent = {
206
195
  html: 'Rengör skålen med vinäger eller citron. Minsta spår av fett hindrar äggvitorna från att lyfta.',
207
196
  },
208
197
  ],
198
+ bibliography,
209
199
  schemas: [faqSchema, howToSchema, appSchema],
210
200
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = "Beze ve Kar Beyazı Noktası Hesaplayıcı";
4
5
  const description = "Yumurta aklarınızın ağırlığına göre Fransız, İtalyan veya İsviçre bezesi için gereken tam şeker miktarını hesaplayın. Çırpma süreleri ve pastacılık ipuçları.";
@@ -76,7 +77,6 @@ export const content: ToolLocaleContent = {
76
77
  title,
77
78
  description,
78
79
  faqTitle: 'Sıkça Sorulan Sorular',
79
- bibliographyTitle: 'Kaynaklar ve Referanslar',
80
80
  ui: {
81
81
  whitesLabel: 'Yumurta Akı Ağırlığı',
82
82
  whitesPlaceholder: 'Örn. 120',
@@ -113,18 +113,7 @@ export const content: ToolLocaleContent = {
113
113
  invalidWeightError: 'Geçerli bir ağırlık girin',
114
114
  },
115
115
  faq,
116
- howTo,
117
- bibliography: [
118
- {
119
- name: 'Larousse Mutfak: Beze Türleri',
120
- url: 'https://laroussecocina.mx/palabra/merengue/',
121
- },
122
- {
123
- name: 'Exploratorium: Egg Science',
124
- url: 'https://www.exploratorium.edu/explore/cooking/egg-science',
125
- },
126
- ],
127
- seo: [
116
+ howTo, seo: [
128
117
  {
129
118
  type: 'title',
130
119
  text: 'Beze ve Kar Beyazı Noktası İçin Usta Rehberi',
@@ -206,5 +195,6 @@ export const content: ToolLocaleContent = {
206
195
  html: 'Başlamadan önce kabınızı sirke veya limonla temizleyin. En ufak yağ izi yumurta aklarının kabarmasını engeller.',
207
196
  },
208
197
  ],
198
+ bibliography,
209
199
  schemas: [faqSchema, howToSchema, appSchema],
210
200
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = "蛋白霜与硬性打发计算器";
4
5
  const description = "根据蛋白重量,精准计算法式、意式或瑞士蛋白霜所需的糖量。包含打发时间建议与甜品制作技巧。";
@@ -76,7 +77,6 @@ export const content: ToolLocaleContent = {
76
77
  title,
77
78
  description,
78
79
  faqTitle: '常见问题',
79
- bibliographyTitle: '参考资料',
80
80
  ui: {
81
81
  whitesLabel: '蛋白重量',
82
82
  whitesPlaceholder: '例: 120',
@@ -113,18 +113,7 @@ export const content: ToolLocaleContent = {
113
113
  invalidWeightError: '请输入有效重量',
114
114
  },
115
115
  faq,
116
- howTo,
117
- bibliography: [
118
- {
119
- name: '拉鲁斯美食百科:蛋白霜类型与制作',
120
- url: 'https://laroussecocina.mx/palabra/merengue/',
121
- },
122
- {
123
- name: 'Exploratorium: Egg Science 鸡蛋的科学',
124
- url: 'https://www.exploratorium.edu/explore/cooking/egg-science',
125
- },
126
- ],
127
- seo: [
116
+ howTo, seo: [
128
117
  {
129
118
  type: 'title',
130
119
  text: '蛋白霜与硬性打发大师指南',
@@ -206,5 +195,6 @@ export const content: ToolLocaleContent = {
206
195
  html: '在开始前,用纸巾蘸取少量白醋或柠檬汁擦拭搅拌盆。任何微笑的油脂残留都会导致蛋白无法打发。',
207
196
  },
208
197
  ],
198
+ bibliography,
209
199
  schemas: [faqSchema, howToSchema, appSchema],
210
200
  };
@@ -1,8 +1,15 @@
1
1
  ---
2
2
  import { SEORenderer } from '@jjlmoya/utils-shared';
3
- import { content } from './i18n/es';
3
+ import { MERENGUE_CALCULATOR_TOOL } from './index';
4
+ import type { KnownLocale } from '../../types';
4
5
 
5
- const locale = 'es';
6
+ interface Props {
7
+ locale?: KnownLocale;
8
+ }
9
+
10
+ const { locale = 'es' } = Astro.props;
11
+ const content = await MERENGUE_CALCULATOR_TOOL.i18n[locale]?.();
12
+ if (!content) return null;
6
13
  ---
7
14
 
8
- <SEORenderer content={{ sections: content.seo, locale }} />
15
+ {content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
@@ -1,6 +1,6 @@
1
1
  ---
2
- import { Bibliography } from '@jjlmoya/utils-shared';
3
- import { content } from './i18n/es';
2
+ import { Bibliography as BibliographyComponent } from '@jjlmoya/utils-shared';
3
+ import { bibliography } from './bibliography';
4
4
  ---
5
5
 
6
- <Bibliography links={content.bibliography} />
6
+ <BibliographyComponent links={bibliography} />
@@ -0,0 +1,10 @@
1
+ export const bibliography = [
2
+ {
3
+ name: 'Baking Science and Technology - E.J. Pyler',
4
+ url: 'https://babel.hathitrust.org/cgi/pt?id=mdp.39015006390085&seq=9',
5
+ },
6
+ {
7
+ name: 'The Professional Pastry Chef - Bo Friberg',
8
+ url: 'https://academiepatisserie.com/wp-content/uploads/2019/11/pasrty.pdf',
9
+ },
10
+ ];
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Backform Umrechner Skalierung für Konditorei';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'backform-rechner',
82
83
  title,
83
84
  description,
84
- faqTitle: 'Häufig gestellte Fragen zur Skalierung',
85
- bibliographyTitle: 'Quellen und Referenzen',
86
-
87
- ui: {
85
+ faqTitle: 'Häufig gestellte Fragen zur Skalierung', ui: {
88
86
  originalRecipe: 'Originalrezept',
89
87
  yourMold: 'Ihre Form',
90
88
  round: 'Rund',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: 'Erhöhen',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -179,5 +166,6 @@ export const content: ToolLocaleContent = {
179
166
  html: 'Füllen Sie eine Backform nie mehr als zu 2/3, um ein Überlaufen beim Backen zu verhindern.',
180
167
  },
181
168
  ],
182
- schemas: [appSchema, faqSchema, howToSchema],
169
+ bibliography,
170
+ schemas: [appSchema, faqSchema, howToSchema],
183
171
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Cake Pan Size Converter and Baking Scaler';
4
5
  const description =
@@ -86,10 +87,7 @@ export const content: ToolLocaleContent = {
86
87
  slug: 'cake-pan-size-converter-calculator',
87
88
  title,
88
89
  description,
89
- faqTitle: 'Baking Scaling Frequently Asked Questions',
90
- bibliographyTitle: 'Scientific Baking Resources and References',
91
-
92
- ui: {
90
+ faqTitle: 'Baking Scaling Frequently Asked Questions', ui: {
93
91
  originalRecipe: 'Original Recipe',
94
92
  yourMold: 'Your Pan',
95
93
  round: 'Round',
@@ -118,20 +116,7 @@ export const content: ToolLocaleContent = {
118
116
  increase: 'Increase',
119
117
  },
120
118
 
121
- faq,
122
-
123
- bibliography: [
124
- {
125
- name: 'Baking Science and Technology - E.J. Pyler',
126
- url: 'https://www.bakingbusiness.com/',
127
- },
128
- {
129
- name: 'The Professional Pastry Chef - Bo Friberg',
130
- url: 'https://www.wiley.com/',
131
- },
132
- ],
133
-
134
- howTo,
119
+ faq, howTo,
135
120
 
136
121
  seo: [
137
122
  {
@@ -290,6 +275,6 @@ export const content: ToolLocaleContent = {
290
275
  html: 'Mastering pan scaling gives you total creative freedom in the kitchen. Use this calculator to eliminate guesswork and achieve consistent professional results in every bake.',
291
276
  },
292
277
  ],
293
-
294
- schemas: [appSchema, faqSchema, howToSchema],
278
+ bibliography,
279
+ schemas: [appSchema, faqSchema, howToSchema],
295
280
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Calculadora para Escalar Moldes de Repostería';
4
5
  const description =
@@ -86,10 +87,7 @@ export const content: ToolLocaleContent = {
86
87
  slug: 'moldes',
87
88
  title,
88
89
  description,
89
- faqTitle: 'Preguntas Frecuentes sobre el Escalado',
90
- bibliographyTitle: 'Fuentes y Referencias Científicas',
91
-
92
- ui: {
90
+ faqTitle: 'Preguntas Frecuentes sobre el Escalado', ui: {
93
91
  originalRecipe: 'Receta Original',
94
92
  yourMold: 'Tu Molde',
95
93
  round: 'Redondo',
@@ -118,20 +116,7 @@ export const content: ToolLocaleContent = {
118
116
  increase: 'Aumenta',
119
117
  },
120
118
 
121
- faq,
122
-
123
- bibliography: [
124
- {
125
- name: 'Baking Science and Technology - E.J. Pyler',
126
- url: 'https://www.bakingbusiness.com/',
127
- },
128
- {
129
- name: 'The Professional Pastry Chef - Bo Friberg',
130
- url: 'https://www.wiley.com/',
131
- },
132
- ],
133
-
134
- howTo,
119
+ faq, howTo,
135
120
 
136
121
  seo: [
137
122
  {
@@ -290,6 +275,6 @@ export const content: ToolLocaleContent = {
290
275
  html: 'Dominar el escalado de moldes te permite libertad creativa total en la cocina. Usa esta calculadora para eliminar las suposiciones y obtener resultados profesionales consistentes en cada horneado.',
291
276
  },
292
277
  ],
293
-
294
- schemas: [appSchema, faqSchema, howToSchema],
278
+ bibliography,
279
+ schemas: [appSchema, faqSchema, howToSchema],
295
280
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Adaptateur de Taille de Moule et Calculateur de Cuisson';
4
5
  const description =
@@ -86,10 +87,7 @@ export const content: ToolLocaleContent = {
86
87
  slug: 'adaptateur-taille-moule-patisserie',
87
88
  title,
88
89
  description,
89
- faqTitle: 'Questions Fréquentes sur la Conversion',
90
- bibliographyTitle: 'Ressources Scientifiques et Références',
91
-
92
- ui: {
90
+ faqTitle: 'Questions Fréquentes sur la Conversion', ui: {
93
91
  originalRecipe: 'Recette Originale',
94
92
  yourMold: 'Votre Moule',
95
93
  round: 'Rond',
@@ -118,20 +116,7 @@ export const content: ToolLocaleContent = {
118
116
  increase: 'Augmenter',
119
117
  },
120
118
 
121
- faq,
122
-
123
- bibliography: [
124
- {
125
- name: 'Science et Technologie de la Boulangerie - E.J. Pyler',
126
- url: 'https://www.bakingbusiness.com/',
127
- },
128
- {
129
- name: 'Le Chef Pâtissier Professionnel - Bo Friberg',
130
- url: 'https://www.wiley.com/',
131
- },
132
- ],
133
-
134
- howTo,
119
+ faq, howTo,
135
120
 
136
121
  seo: [
137
122
  {
@@ -299,6 +284,6 @@ export const content: ToolLocaleContent = {
299
284
  html: "Maîtriser l'adaptation des moules vous donne une liberté créative totale. Utilisez cette calculatrice pour éliminer les approximations et obtenir des résultats professionnels constants.",
300
285
  },
301
286
  ],
302
-
303
- schemas: [appSchema, faqSchema, howToSchema],
287
+ bibliography,
288
+ schemas: [appSchema, faqSchema, howToSchema],
304
289
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Kalkulator Skala Loyang Kue';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'skala-loyang',
82
83
  title,
83
84
  description,
84
- faqTitle: 'Pertanyaan Umum tentang Skala',
85
- bibliographyTitle: 'Sumber dan Referensi',
86
-
87
- ui: {
85
+ faqTitle: 'Pertanyaan Umum tentang Skala', ui: {
88
86
  originalRecipe: 'Resep Asli',
89
87
  yourMold: 'Loyang Anda',
90
88
  round: 'Bulat',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: 'Tambah',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -165,5 +152,6 @@ export const content: ToolLocaleContent = {
165
152
  html: 'Jangan pernah mengisi loyang lebih dari 2/3 kapasitasnya, apa pun faktor yang dihitung.',
166
153
  },
167
154
  ],
168
- schemas: [appSchema, faqSchema, howToSchema],
155
+ bibliography,
156
+ schemas: [appSchema, faqSchema, howToSchema],
169
157
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Calcolatore per Adattare Stampi da Pasticceria';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'stampi',
82
83
  title,
83
84
  description,
84
- faqTitle: 'Domande Frequenti sull\'Adattamento',
85
- bibliographyTitle: 'Fonti e Riferimenti',
86
-
87
- ui: {
85
+ faqTitle: 'Domande Frequenti sull\'Adattamento', ui: {
88
86
  originalRecipe: 'Ricetta Originale',
89
87
  yourMold: 'Tuo Stampo',
90
88
  round: 'Rotondo',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: 'Aumenta',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -166,5 +153,6 @@ export const content: ToolLocaleContent = {
166
153
  html: 'Non riempire mai uno stampo oltre i 2/3 della sua capacità, indipendentemente dal fattore calcolato.',
167
154
  },
168
155
  ],
169
- schemas: [appSchema, faqSchema, howToSchema],
156
+ bibliography,
157
+ schemas: [appSchema, faqSchema, howToSchema],
170
158
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'ケーキ型サイズ換算計算機';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'cake-pan-size-converter-calculator',
82
83
  title,
83
84
  description,
84
- faqTitle: 'サイズ換算に関するよくある質問',
85
- bibliographyTitle: '参考文献・資料',
86
-
87
- ui: {
85
+ faqTitle: 'サイズ換算に関するよくある質問', ui: {
88
86
  originalRecipe: '元のレシピ',
89
87
  yourMold: '自分の型',
90
88
  round: '丸型',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: '増やす',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -166,5 +153,6 @@ export const content: ToolLocaleContent = {
166
153
  html: '算出された係数に関わらず、型には容量の2/3以上は入れないようにしてください。',
167
154
  },
168
155
  ],
169
- schemas: [appSchema, faqSchema, howToSchema],
156
+ bibliography,
157
+ schemas: [appSchema, faqSchema, howToSchema],
170
158
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = '베이킹 틀 사이즈 변환 계산기';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'cake-pan-size-converter-calculator',
82
83
  title,
83
84
  description,
84
- faqTitle: '사이즈 조절 관련 자주 묻는 질문',
85
- bibliographyTitle: '참고 문헌 및 자료',
86
-
87
- ui: {
85
+ faqTitle: '사이즈 조절 관련 자주 묻는 질문', ui: {
88
86
  originalRecipe: '원래 레시피',
89
87
  yourMold: '내 틀',
90
88
  round: '원형',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: '확대',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -166,5 +153,6 @@ export const content: ToolLocaleContent = {
166
153
  html: '계산된 계수와 관계없이, 틀의 2/3 이상 내용물을 채우지 않도록 주의하세요.',
167
154
  },
168
155
  ],
169
- schemas: [appSchema, faqSchema, howToSchema],
156
+ bibliography,
157
+ schemas: [appSchema, faqSchema, howToSchema],
170
158
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Bakvorm Umrechner Schalen voor Patisserie';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'bakvormen',
82
83
  title,
83
84
  description,
84
- faqTitle: 'Veelgestelde vragen over Schalen',
85
- bibliographyTitle: 'Bronnen en Referenties',
86
-
87
- ui: {
85
+ faqTitle: 'Veelgestelde vragen over Schalen', ui: {
88
86
  originalRecipe: 'Origineel Recept',
89
87
  yourMold: 'Jouw Bakvorm',
90
88
  round: 'Rond',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: 'Vermeerderen',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -166,5 +153,6 @@ export const content: ToolLocaleContent = {
166
153
  html: 'Vul een bakvorm nooit voor meer dan 2/3, ongeacht de berekende factor.',
167
154
  },
168
155
  ],
169
- schemas: [appSchema, faqSchema, howToSchema],
156
+ bibliography,
157
+ schemas: [appSchema, faqSchema, howToSchema],
170
158
  };
@@ -1,4 +1,5 @@
1
1
  import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
2
3
 
3
4
  const title = 'Kalkulator Skalowania Form do Pieczenia';
4
5
  const description =
@@ -81,10 +82,7 @@ export const content: ToolLocaleContent = {
81
82
  slug: 'formy-do-pieczenia',
82
83
  title,
83
84
  description,
84
- faqTitle: 'Często Zadawane Pytania o Skalowanie',
85
- bibliographyTitle: 'Źródła i Referencje',
86
-
87
- ui: {
85
+ faqTitle: 'Często Zadawane Pytania o Skalowanie', ui: {
88
86
  originalRecipe: 'Oryginalny Przepis',
89
87
  yourMold: 'Twoja Forma',
90
88
  round: 'Okrągła',
@@ -113,18 +111,7 @@ export const content: ToolLocaleContent = {
113
111
  increase: 'Zwiększ',
114
112
  },
115
113
 
116
- faq,
117
- bibliography: [
118
- {
119
- name: 'Baking Science and Technology - E.J. Pyler',
120
- url: 'https://www.bakingbusiness.com/',
121
- },
122
- {
123
- name: 'The Professional Pastry Chef - Bo Friberg',
124
- url: 'https://www.wiley.com/',
125
- },
126
- ],
127
- howTo,
114
+ faq, howTo,
128
115
  seo: [
129
116
  {
130
117
  type: 'title',
@@ -166,5 +153,6 @@ export const content: ToolLocaleContent = {
166
153
  html: 'Nigdy nie napełniaj formy więcej niż do 2/3 jej pojemności, niezależnie od obliczonego współczynnika.',
167
154
  },
168
155
  ],
169
- schemas: [appSchema, faqSchema, howToSchema],
156
+ bibliography,
157
+ schemas: [appSchema, faqSchema, howToSchema],
170
158
  };