@jjlmoya/utils-cooking 1.30.0 → 1.32.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 (53) hide show
  1. package/package.json +1 -1
  2. package/src/category/index.ts +2 -0
  3. package/src/entries.ts +3 -1
  4. package/src/index.ts +1 -0
  5. package/src/tests/i18n-titles.test.ts +3 -2
  6. package/src/tests/i18n_coverage.test.ts +1 -0
  7. package/src/tests/locale_completeness.test.ts +2 -2
  8. package/src/tests/tool_validation.test.ts +2 -2
  9. package/src/tool/botulism-canning-safety/bibliography.astro +6 -0
  10. package/src/tool/botulism-canning-safety/bibliography.ts +10 -0
  11. package/src/tool/botulism-canning-safety/botulism-canning-safety.css +545 -0
  12. package/src/tool/botulism-canning-safety/component.astro +296 -0
  13. package/src/tool/botulism-canning-safety/components/AutoclaveDisplay.astro +62 -0
  14. package/src/tool/botulism-canning-safety/components/SporeVisualizer.astro +48 -0
  15. package/src/tool/botulism-canning-safety/components/ThermalControls.astro +60 -0
  16. package/src/tool/botulism-canning-safety/entry.ts +26 -0
  17. package/src/tool/botulism-canning-safety/i18n/de.ts +188 -0
  18. package/src/tool/botulism-canning-safety/i18n/en.ts +188 -0
  19. package/src/tool/botulism-canning-safety/i18n/es.ts +188 -0
  20. package/src/tool/botulism-canning-safety/i18n/fr.ts +188 -0
  21. package/src/tool/botulism-canning-safety/i18n/id.ts +188 -0
  22. package/src/tool/botulism-canning-safety/i18n/it.ts +188 -0
  23. package/src/tool/botulism-canning-safety/i18n/ja.ts +188 -0
  24. package/src/tool/botulism-canning-safety/i18n/ko.ts +188 -0
  25. package/src/tool/botulism-canning-safety/i18n/nl.ts +188 -0
  26. package/src/tool/botulism-canning-safety/i18n/pl.ts +188 -0
  27. package/src/tool/botulism-canning-safety/i18n/pt.ts +188 -0
  28. package/src/tool/botulism-canning-safety/i18n/ru.ts +188 -0
  29. package/src/tool/botulism-canning-safety/i18n/sv.ts +188 -0
  30. package/src/tool/botulism-canning-safety/i18n/tr.ts +188 -0
  31. package/src/tool/botulism-canning-safety/i18n/zh.ts +188 -0
  32. package/src/tool/botulism-canning-safety/index.ts +11 -0
  33. package/src/tool/botulism-canning-safety/logic.ts +47 -0
  34. package/src/tool/botulism-canning-safety/seo.astro +15 -0
  35. package/src/tool/ice-cream-pac-pod/component.astro +39 -0
  36. package/src/tool/spherification-bath-calculator/component.astro +39 -2
  37. package/src/tool/spherification-bath-calculator/components/RecipeSummary.astro +2 -2
  38. package/src/tool/spherification-bath-calculator/i18n/de.ts +3 -0
  39. package/src/tool/spherification-bath-calculator/i18n/en.ts +3 -0
  40. package/src/tool/spherification-bath-calculator/i18n/es.ts +3 -0
  41. package/src/tool/spherification-bath-calculator/i18n/fr.ts +3 -0
  42. package/src/tool/spherification-bath-calculator/i18n/id.ts +3 -0
  43. package/src/tool/spherification-bath-calculator/i18n/it.ts +3 -0
  44. package/src/tool/spherification-bath-calculator/i18n/ja.ts +3 -0
  45. package/src/tool/spherification-bath-calculator/i18n/ko.ts +3 -0
  46. package/src/tool/spherification-bath-calculator/i18n/nl.ts +3 -0
  47. package/src/tool/spherification-bath-calculator/i18n/pl.ts +3 -0
  48. package/src/tool/spherification-bath-calculator/i18n/pt.ts +3 -0
  49. package/src/tool/spherification-bath-calculator/i18n/ru.ts +3 -0
  50. package/src/tool/spherification-bath-calculator/i18n/sv.ts +3 -0
  51. package/src/tool/spherification-bath-calculator/i18n/tr.ts +3 -0
  52. package/src/tool/spherification-bath-calculator/i18n/zh.ts +3 -0
  53. package/src/tools.ts +2 -0
@@ -0,0 +1,188 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
3
+
4
+ const title = "Botulism Konservering Sakerthetskontroll Termisk Dodskalkylator";
5
+ const description = "Berakna termisk sportminskning och F0 steriliseringseffekt for Clostridium botulinum. Bedom omraden for saker konservering av lag- och hogsyrig mat.";
6
+ const faq = [
7
+ {
8
+ question: "Varfor ar Clostridium botulinum ett stort problem vid hemkonservering?",
9
+ answer: "Clostridium botulinum ar en anaerob, sportbildande bakterie som producerar botulinumtoxin, ett av de mest dodliga biologiska amnen som ar kant. Sporerna ar extremt varmetraliga och kan overleva i anaeroba miljoer inuti forslutna burkar om temperaturen ar otillracklig."
10
+ },
11
+ {
12
+ question: "Vilken kritisk betydelse har pH 4.6 vid livsmedelskonservering?",
13
+ answer: "Livsmedel med ett pH under 4.6 klassificeras som syriga. I dessa miljoer kan botulinussporer inte gro eller producera toxiner. For livsmedel med pH 4.6 eller hogre ar tryckkonservering obligatorisk for att na temperaturer over 116 grader Celsius for att forstora sporerna."
14
+ },
15
+ {
16
+ question: "Vad ar F0 steriliseringsvardet?",
17
+ answer: "F0-vardet mater den ekvivalenta steriliseringstiden vid 121.11 grader Celsius. En standardprocess for lagsyriga livsmedel kraver ett F0-varde pa 3.0 minuter eller hogre, vilket motsvarar en tolvfaldig decimalminskning av sportpopulationen."
18
+ },
19
+ {
20
+ question: "Varfar kan jag inte anvanda vattenbad for lagsyrig mat?",
21
+ answer: "Konservering i vattenbad nar bara kokpunkten (100 grader Celsius). Denna temperatur ar otillracklig for att doda varmetraliga sporer av Clostridium botulinum i lagsyrig mat. Sporerna overlever och producerar toxin vid rumstemperatur."
22
+ }
23
+ ];
24
+
25
+ const howTo = [
26
+ {
27
+ name: "Ange livsmedlets syraniva",
28
+ text: "Bestam och mata in pH-vardet for dina ingredienser. Om pH-vardet ar 4.6 eller hogre ar livsmedlet lagsyrigt."
29
+ },
30
+ {
31
+ name: "Valj konserveringsmetod",
32
+ text: "Valj mellan vattenbadskonservering eller tryckkonservering beroende pa din utrustning."
33
+ },
34
+ {
35
+ name: "Ange temperatur och tid",
36
+ text: "Mat in konserveringstemperaturen och tiden i minuter som burkarna haller den temperaturen."
37
+ },
38
+ {
39
+ name: "Utvardera sakerhetsdiagnostik",
40
+ text: "Kontrollera det resulterande F0-vardet, decimal sportminskning och sakerhetszonindikatorn for att bekrlfta overlensstammelse."
41
+ }
42
+ ];
43
+
44
+ const faqSchema = {
45
+ '@context': 'https://schema.org' as const,
46
+ '@type': 'FAQPage' as const,
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question' as const,
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer' as const, text: item.answer },
51
+ })),
52
+ };
53
+
54
+ const howToSchema = {
55
+ '@context': 'https://schema.org' as const,
56
+ '@type': 'HowTo' as const,
57
+ name: title,
58
+ description,
59
+ step: howTo.map((step) => ({
60
+ '@type': 'HowToStep' as const,
61
+ name: step.name,
62
+ text: step.text,
63
+ })),
64
+ };
65
+
66
+ const appSchema = {
67
+ '@context': 'https://schema.org' as const,
68
+ '@type': 'SoftwareApplication' as const,
69
+ name: title,
70
+ description,
71
+ applicationCategory: 'UtilitiesApplication',
72
+ operatingSystem: 'Web',
73
+ offers: { '@type': 'Offer' as const, price: '0', priceCurrency: 'EUR' },
74
+ };
75
+
76
+ export const content: ToolLocaleContent = {
77
+ slug: 'botulism-konservering-sakerhet',
78
+ title: 'Botulism Konservering Sakerthetskontroll',
79
+ description: 'Berakna termisk sportminskning och F0 steriliseringseffekt for Clostridium botulinum. Bedom omraden for saker konservering av lag- och hogsyrig mat.',
80
+ faqTitle: 'Vanliga Fragor',
81
+ ui: {
82
+ title: "Konserveringsautoklavovervakning",
83
+ subtitle: "Termisk doddiagnostik och botulism sakerhetsutvarderare",
84
+ methodLabel: "Konserveringsmetod",
85
+ waterBath: "Vattenbadskonservering",
86
+ pressureCanner: "Tryckkonservering",
87
+ tempLabel: "Konserveringstemperatur",
88
+ timeLabel: "Processingstid",
89
+ phLabel: "Livsmedels pH",
90
+ f0Label: "F0 Effektvarde",
91
+ dLabel: "Beraknat D Varde",
92
+ sporesLabel: "Sportpopulation",
93
+ statusSafe: "Sterilisering klar",
94
+ statusMarginal: "Marginell sterilisering",
95
+ statusUnsafe: "Hog botulismrisk",
96
+ statusSafeDesc: "Termisk effekt overstiger malet F0 pa 3.0 minuter. Sporer ar helt deaktiverade.",
97
+ statusMarginalDesc: "Processen nar partiell deaktivering men ligger under 12D sakerhetsstandarden. Justera tid eller temperatur.",
98
+ statusUnsafeDesc: "Processen misslyckas med att deaktivera Clostridium botulinum. Lagsyrig mat i vattenbad forblir farlig.",
99
+ cLabel: "°C",
100
+ fLabel: "°F",
101
+ minLabel: "min",
102
+ logReductionLabel: "Decimal minskning",
103
+ dValueUnit: "minuter",
104
+ indicatorSectionTitle: "Diagnostiska matare",
105
+ visualizerSectionTitle: "Sportminskning",
106
+ f0Tooltip: "Ekvivalent steriliseringstid i minuter vid 121.11°C. Sakert gransvarde ar 3.0 eller hogre.",
107
+ dTooltip: "Decimal minskningstid: tid i minuter som kravs for att forstora 90% av sporerna vid aktuell temperatur.",
108
+ logReductionTooltip: "Antal decimala (10-faldiga) minskningar. En 12D minskning ar sakerhetsstandarden.",
109
+ },
110
+ faq,
111
+ howTo,
112
+ seo: [
113
+ {
114
+ type: 'title',
115
+ text: 'Vetenskapliga Mekanismer for Termisk Beredning och Sportdeaktiveringskinetik',
116
+ level: 2,
117
+ },
118
+ {
119
+ type: 'paragraph',
120
+ html: 'Termisk beredning vid konservering sakerstaller kommersiell sterilitet genom att forstora patogena och fordarvarande mikroorganismer. Huvudfokus for sakerhetsriktlinjer vid konservering av lagsyrig mat ar Clostridium botulinum. Botulinussporer ar mycket varmetraliga jamfort med vegetativa celler. For att deaktivera dessa sporer kravs en termisk dodtidsprocess som tillampar hog temperatur under en beraknad tid. Det matematiska sambandet mellan temperatur och deaktiveringshastighet uttrycks genom decimal minskningstid (D-varde) och temperaturberoendefaktorn (z-varde).',
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Livsmedelsklassificering och den Kritiska pH 4.6 Sakerhetsgransen',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'Ett pH-varde pa 4.6 ar skiljelinjen for konserveringssakerhet. Syriga livsmedel under pH 4.6 hindrar naturligt groning och toxinproduktion av botulinussporer. For dessa livsmedel racker beredning vid 100 grader Celsius i ett kokande vattenbad. Dock maste lagsyriga livsmedel over pH 4.6 genomga tryckkonservering for att hoga angtemperaturen och na fullstandig termisk sportforstoring. Tabellen nedan visar klassificeringar och konserveringsmetoder for vanliga ingredienser:',
130
+ },
131
+ {
132
+ type: 'table',
133
+ headers: ['Livsmedelsgrupp', 'pH-intervall', 'Kravd konserveringsmetod', 'Vanliga exempel'],
134
+ rows: [
135
+ ['Hogsyrigt', 'Under 4.0', 'Vattenbadskonservering', 'Applen, Bar, Citrus, Persikor, Vinager Inlaggningar'],
136
+ ['Syrad eller medelsyrigt', '4.0 till 4.6', 'Vattenbad med syrajustering', 'Tomater, Fikon, Paron'],
137
+ ['Lagsyrigt', '4.6 och over', 'Obligatorisk tryckkonservering', 'Kott, Skaldjur, Bonor, Majs, Potatis, Soppor'],
138
+ ],
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Hojdjusteringar och Kokpunkt Sakerhetskorrigeringar',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'paragraph',
147
+ html: 'Nar hojden okar minskar atmosfantrycket, vilket gor att vattnets kokpunkt sjunker under 100 grader Celsius. Vid vattenbadskonservering oker denna lagre temperatur D-vardet for sporerna, vilket kraver langre beredningstid. Vid tryckkonservering maste manometer- eller viktventilsinstallningar okas for att uppratthalla den interna malsteriliseringstemperaturen. Nedan finns referensguide for kokpunkter och kravda tryckkonserveringsjusteringar:',
148
+ },
149
+ {
150
+ type: 'table',
151
+ headers: ['Hojdintervall', 'Vattens kokpunkt', 'Kravd manometertryck', 'Kravd viktventilstryck'],
152
+ rows: [
153
+ ['0 till 300 meter', '100.0 °C', '11 PSI (121 °C)', '10 PSI (121 °C)'],
154
+ ['300 till 600 meter', '99.0 °C', '11 PSI (121 °C)', '15 PSI (121 °C)'],
155
+ ['600 till 900 meter', '98.0 °C', '12 PSI (121 °C)', '15 PSI (121 °C)'],
156
+ ['900 till 1200 meter', '97.0 °C', '13 PSI (121 °C)', '15 PSI (121 °C)'],
157
+ ['1200 till 1500 meter', '96.0 °C', '13 PSI (121 °C)', '15 PSI (121 °C)'],
158
+ ['1500 till 2000 meter', '94.5 °C', '14 PSI (121 °C)', '15 PSI (121 °C)'],
159
+ ],
160
+ },
161
+ {
162
+ type: 'title',
163
+ text: 'Varfor 12D Sportminskningskonceptet Forhindrar Botulism',
164
+ level: 3,
165
+ },
166
+ {
167
+ type: 'paragraph',
168
+ html: 'Bakterieforstoring genom varme ar logaritmisk. D-vardet representerar den tid som kravs vid en specifik temperatur for att forstora 90% av sportpopulationen, vilket motsvarar en decimal logminskning. Referensstandarden for Clostridium botulinum ar ett D-varde pa 0.21 minuter vid 121.11 grader Celsius. For att na hoga sakerhetsmarginaler kraver kommersiella standarder en tolvfaldig decimal minskningsprocess (12D), vilket innebar att sportpopulationen minskas med tolv faktorer av tio. Detta ger ett mal F0-varde pa 3.0 minuter, vilket garanterar sakerhet i lagsyriga livsmedel.',
169
+ },
170
+ {
171
+ type: 'title',
172
+ text: 'Praktiska Riktlinjer for Hemkonservering och Sakerhetstips',
173
+ level: 3,
174
+ },
175
+ {
176
+ type: 'list',
177
+ items: [
178
+ 'Syra alltid tomater med citronsaft eller citronsyra innan vattenbadskeredning eftersom deras naturliga pH fluktuerar nara den kritiska gransen 4.6.',
179
+ 'Forkorta aldrig beredningstider eller sank temperaturer. Termisk dodskinetik ar logaritmisk och mindre justeringar kan gora att sporer overlever.',
180
+ 'Sakerstall att manometrar pa tryckkonserveringsutrustning testas arligen for noggrannhet, eftersom felaktiga tryckavlasningar direkt aventyrar interna steriliseringstemperaturer.',
181
+ 'Kompensera for hojdskillnader genom att justera beredningstider i vattenbad eller oka PSI-installningar pa tryckkonserveringsutrustning.',
182
+ 'Undvik att konservera blandade recept som innehaller lagsyriga ingredienser som kott eller bonor i ett vattenbad, aven om hela receptet innehaller syra.',
183
+ ],
184
+ },
185
+ ],
186
+ bibliography,
187
+ schemas: [faqSchema, howToSchema, appSchema],
188
+ };
@@ -0,0 +1,188 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
3
+
4
+ const title = "Botulizm Konserve Guvenligi Denetleyici Termal Olum Hesaplayici";
5
+ const description = "Clostridium botulinum icin termal spor azaltimi ve F0 sterilizasyon letalitesini hesaplayin. Dusuk asitli ve asitli konserve guvenlik bolgelerini degerlendirin.";
6
+ const faq = [
7
+ {
8
+ question: "Clostridium botulinum neden evde konserve yapiminda en buyuk endise kaynagidir?",
9
+ answer: "Clostridium botulinum, botulinum toksini ureten anaerobik, spor olusturan bir bakteridir ve bilinen en olucu biyolojik maddelerden biridir. Sporlar asiri derecede isiya dayanikli olup, sicaklik yetersizse kapali kavanozlar icindeki anaerobik kosullarda hayatta kalabilir."
10
+ },
11
+ {
12
+ question: "Gida muhafazasinda pH 4.6'nin kritik onemi nedir?",
13
+ answer: "pH degeri 4.6'nin altinda olan gidalar asitli olarak siniflandirilir. Bu ortamlarda botulinum sporlari filizlenemez veya toksin uretemez. pH degeri 4.6 veya daha yuksek olan gidalar icin, sporlari yok etmek amaciyla 116 santigrat derecenin uzerinde sicakliklara ulasmak amaciyla basincli konserve yapimi zorunludur."
14
+ },
15
+ {
16
+ question: "F0 sterilizasyon letalite degeri nedir?",
17
+ answer: "F0 degeri, 121.11 santigrat derecede esdeger sterilizasyon suresini olcer. Dusuk asitli gidalar icin standart sterilizasyon prosesi, spor popilasyonunda on iki basamakli bir azalmayi temsil eden 3.0 dakika veya daha yuksek bir F0 degeri gerektirir."
18
+ },
19
+ {
20
+ question: "Dusuk asitli gidalar icin neden su banyosu kullanamam?",
21
+ answer: "Su banyosu konserveciligi yalnizca kaynama noktasina (100 santigrat derece) ulasir. Bu sicaklik, dusuk asitli gidalardaki Clostridium botulinum'un isiya dayanikli sporlarini oldurmek icin yetersizdir. Sporlar hayatta kalir ve oda sicakliginda toksin uretir."
22
+ }
23
+ ];
24
+
25
+ const howTo = [
26
+ {
27
+ name: "Gida asitlik seviyesini girin",
28
+ text: "Malzemelerinizin pH degerini belirleyin ve girin. pH 4.6 veya daha yuksekse, gida dusuk asitlidir."
29
+ },
30
+ {
31
+ name: "Konserve teknigini secin",
32
+ text: "Muhafaza ekipmaniniza bagli olarak su banyosu veya basincli konserve arasinda secim yapin."
33
+ },
34
+ {
35
+ name: "Sicaklik ve sureyi belirleyin",
36
+ text: "Konserve isleme sicakligini ve kavanozlarin bu sicaklikta kaldigi sureyi dakika cinsinden girin."
37
+ },
38
+ {
39
+ name: "Guvenlik teshisini degerlendirin",
40
+ text: "Uygunlugu onaylamak icin ortaya cikan F0 degerini, basamakli spor azaltma sayisini ve guvenlik bolgesi gostergesini kontrol edin."
41
+ }
42
+ ];
43
+
44
+ const faqSchema = {
45
+ '@context': 'https://schema.org' as const,
46
+ '@type': 'FAQPage' as const,
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question' as const,
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer' as const, text: item.answer },
51
+ })),
52
+ };
53
+
54
+ const howToSchema = {
55
+ '@context': 'https://schema.org' as const,
56
+ '@type': 'HowTo' as const,
57
+ name: title,
58
+ description,
59
+ step: howTo.map((step) => ({
60
+ '@type': 'HowToStep' as const,
61
+ name: step.name,
62
+ text: step.text,
63
+ })),
64
+ };
65
+
66
+ const appSchema = {
67
+ '@context': 'https://schema.org' as const,
68
+ '@type': 'SoftwareApplication' as const,
69
+ name: title,
70
+ description,
71
+ applicationCategory: 'UtilitiesApplication',
72
+ operatingSystem: 'Web',
73
+ offers: { '@type': 'Offer' as const, price: '0', priceCurrency: 'EUR' },
74
+ };
75
+
76
+ export const content: ToolLocaleContent = {
77
+ slug: 'botulizm-konserve-guvenligi',
78
+ title: 'Botulizm Konserve Guvenligi Denetleyici',
79
+ description: 'Clostridium botulinum icin termal spor azaltimi ve F0 sterilizasyon letalitesini hesaplayin. Dusuk asitli ve asitli konserve guvenlik bolgelerini degerlendirin.',
80
+ faqTitle: 'Sikca Sorulan Sorular',
81
+ ui: {
82
+ title: "Konserve Otoklav Monitru",
83
+ subtitle: "Termal olum teshisi ve botulizm guvenlik degerlendiricisi",
84
+ methodLabel: "Konserve Yontemi",
85
+ waterBath: "Su Banyosu Konserve",
86
+ pressureCanner: "Basincli Konserve",
87
+ tempLabel: "Konserve Sicakligi",
88
+ timeLabel: "Islem Suresi",
89
+ phLabel: "Gida pH Degeri",
90
+ f0Label: "F0 Letalite Degeri",
91
+ dLabel: "Hesaplanan D Degeri",
92
+ sporesLabel: "Spor Populasyonu",
93
+ statusSafe: "Sterilizasyon Tamamlandi",
94
+ statusMarginal: "Sinirda Sterilizasyon",
95
+ statusUnsafe: "Yuksek Botulizm Riski",
96
+ statusSafeDesc: "Termal letalite, hedef F0 3.0 dakikayi asmaktadir. Sporlar tamamen devre disi birakilmistir.",
97
+ statusMarginalDesc: "Islem kismi deaktivasyona ulasir ancak 12D guvenlik standardinin altinda kalir. Sureyi veya sicakligi ayarlayin.",
98
+ statusUnsafeDesc: "Islem Clostridium botulinum'u devre disi birakamaz. Su banyosundaki dusuk asitli gidalar tehlikeli olmaya devam eder.",
99
+ cLabel: "°C",
100
+ fLabel: "°F",
101
+ minLabel: "dk",
102
+ logReductionLabel: "Basamakli Azaltma",
103
+ dValueUnit: "dakika",
104
+ indicatorSectionTitle: "Teshis Gostergeleri",
105
+ visualizerSectionTitle: "Spor Azaltma",
106
+ f0Tooltip: "121.11°C'de dakika cinsinden esdeger sterilizasyon suresi. Guvenli esik 3.0 veya daha yuksektir.",
107
+ dTooltip: "Basamakli azaltma suresi: mevcut sicaklikta sporlarin %90'ini yok etmek icin gereken dakika cinsinden sure.",
108
+ logReductionTooltip: "Basamakli (10 katli) azaltma sayisi. 12D azaltma guvenlik standardidir.",
109
+ },
110
+ faq,
111
+ howTo,
112
+ seo: [
113
+ {
114
+ type: 'title',
115
+ text: 'Termal Isleme ve Spor Deaktivasyon Kinetiginin Bilimsel Mekanizmalari',
116
+ level: 2,
117
+ },
118
+ {
119
+ type: 'paragraph',
120
+ html: "Konservecilikte termal isleme, patojen ve bozulmaya neden olan mikroorganizmalari yok ederek ticari steriliteyi guvence altina alir. Dusuk asitli gida muhafazasinda guvenlik yonergelerinin temel odagi Clostridium botulinum'dur. Botulinum sporlari, vejetatif hucrelere kiyasla oldukca isiya dayaniklidir. Bu sporlari devre disi birakmak, hesaplanan bir sure boyunca yuksek sicaklik uygulayan bir termal olum prosesini gerektirir. Sicaklik ve deaktivasyon hizi arasindaki matematiksel iliski, basamakli azaltma suresi (D degeri) ve sicaklik bagimlilik faktoru (z degeri) ile ifade edilir.",
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: 'Gida Siniflandirmasi ve Kritik pH 4.6 Guvenlik Esigi',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: "pH 4.6 degeri, muhafaza guvenligi icin sinir cizgisidir. pH 4.6'nin altindaki asitli gidalar, dogal olarak botulinum sporlarinin filizlenmesini ve toksin uretimini engeller. Bu gidalar icin kaynar su banyosunda 100 santigrat derecede isleme yeterlidir. Ancak pH 4.6'nin uzerindeki dusuk asitli gidalar, buhar sicakligini yukseltmek ve tam termal spor yok edilmesini saglamak icin basincli konserve isleminden gecmelidir. Asagidaki tablo, yaygin malzemeler icin siniflandirmalari ve konserve yontemlerini detaylandirmaktadir:",
130
+ },
131
+ {
132
+ type: 'table',
133
+ headers: ['Gida Grubu', 'pH Araligi', 'Gerekli Konserve Yontemi', 'Yaygin Ornekler'],
134
+ rows: [
135
+ ['Yuksek Asitli', '4.0 Altinda', 'Su Banyosu Konserve', 'Elma, Meyveler, Turuncgiller, Seftali, Sirke Tursulari'],
136
+ ['Asitlendirilmis veya Orta Asitli', '4.0 ila 4.6', 'Asit Ayarli Su Banyosu', 'Domates, Incir, Armut'],
137
+ ['Dusuk Asitli', '4.6 ve Uzeri', 'Zorunlu Basincli Konserve', 'Et, Deniz Urunleri, Fasulye, Misir, Patates, Corbalar'],
138
+ ],
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: 'Rakim Ayarlamalari ve Kaynama Noktasi Guvenlik Duzeltmeleri',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'paragraph',
147
+ html: 'Rakim arttikca atmosfer basinci duser ve suyun kaynama noktasi 100 santigrat derecenin altina iner. Su banyosu konserveciliginde bu dusuk sicaklik, sporlarin D degerini arttirir ve daha uzun isleme sureleri gerektirir. Basincli konservecilikte, hedef ic sterilizasyon sicakligini korumak icin kadranli veya agirlikli olcu ayarlari yukseltilmelidir. Asagida kaynama noktalari ve gerekli basincli konserve ayarlamalari icin referans kilavuzu bulunmaktadir:',
148
+ },
149
+ {
150
+ type: 'table',
151
+ headers: ['Rakim Araligi', 'Su Kaynama Noktasi', 'Gerekli Kadranli Olcu Basinci', 'Gerekli Agirlikli Olcu Basinci'],
152
+ rows: [
153
+ ['0 ila 300 metre', '100.0 °C', '11 PSI (121 °C)', '10 PSI (121 °C)'],
154
+ ['300 ila 600 metre', '99.0 °C', '11 PSI (121 °C)', '15 PSI (121 °C)'],
155
+ ['600 ila 900 metre', '98.0 °C', '12 PSI (121 °C)', '15 PSI (121 °C)'],
156
+ ['900 ila 1200 metre', '97.0 °C', '13 PSI (121 °C)', '15 PSI (121 °C)'],
157
+ ['1200 ila 1500 metre', '96.0 °C', '13 PSI (121 °C)', '15 PSI (121 °C)'],
158
+ ['1500 ila 2000 metre', '94.5 °C', '14 PSI (121 °C)', '15 PSI (121 °C)'],
159
+ ],
160
+ },
161
+ {
162
+ type: 'title',
163
+ text: '12D Spor Azaltma Konsepti Botulizmi Nasil Onler',
164
+ level: 3,
165
+ },
166
+ {
167
+ type: 'paragraph',
168
+ html: "Isi ile bakteri yok etme logaritmiktir. D degeri, belirli bir sicaklikta spor popilasyonunun %90'ini yok etmek icin gereken sureyi temsil eder ve bu da bir basamakli log azaltmaya esittir. Clostridium botulinum icin referans standart, 121.11 santigrat derecede 0.21 dakikalik bir D degeridir. Yuksek guvenlik marjlari elde etmek icin ticari standartlar, on iki basamakli bir azaltma prosesi (12D) talep eder, yani spor popilasyonu on iki kat on azaltilir. Bu, dusuk asitli gidalarda guvenligi garanti eden 3.0 dakikalik bir hedef F0 degeri saglar.",
169
+ },
170
+ {
171
+ type: 'title',
172
+ text: 'Pratik Ev Konserve Kilavuzu ve Guvenlik Ipuclari',
173
+ level: 3,
174
+ },
175
+ {
176
+ type: 'list',
177
+ items: [
178
+ 'Domateslerin dogal pH degeri kritik 4.6 sinirina yakin dalgalandigi icin, su banyosu isleminden once her zaman limon suyu veya sitrik asit ile asitlendirin.',
179
+ 'Isleme surelerini asla kisaltmayin veya sicakliklari dusurmeyin. Termal olum kinetigi logaritmiktir ve kucuk ayarlamalar sporlarin hayatta kalmasina izin verebilir.',
180
+ 'Basincli konserve makinelerindeki kadranli olculerin dogrulugu icin yillik test edildiginden emin olun, cunku yanlis basinclik okumalari ic sterilizasyon sicakliklarini dogrudan tehlikeye atar.',
181
+ 'Su banyolarinda isleme surelerini ayarlayarak veya basincli konserve makinelerinde PSI ayarlarini yukselterek rakim farkliliklarini telafi edin.',
182
+ 'Genel tarif asit icerse bile, su banyosunda et veya fasulye gibi dusuk asitli malzemeler iceren karisik tarifleri konservelemekten kacinin.',
183
+ ],
184
+ },
185
+ ],
186
+ bibliography,
187
+ schemas: [faqSchema, howToSchema, appSchema],
188
+ };
@@ -0,0 +1,188 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import { bibliography } from '../bibliography';
3
+
4
+ const title = "Botulism Canning Safety Checker Thermal Death Calculator";
5
+ const description = "计算肉毒杆菌的热孢子 reduction 和 F0 灭菌致死率。评估低酸和酸性罐头食品安全区域。";
6
+ const faq = [
7
+ {
8
+ question: "为什么肉毒梭菌是家庭罐装中的主要担忧?",
9
+ answer: "肉毒梭菌是一种厌氧性芽孢形成细菌,能产生肉毒毒素,这是已知最致命的生物物质之一。芽孢具有极强的耐热性,在温度不足的情况下,可以在密封罐内的厌氧环境中存活。"
10
+ },
11
+ {
12
+ question: "pH值4.6在食品保存中的关键意义是什么?",
13
+ answer: "pH值低于4.6的食品被归类为酸性。在这种环境中,肉毒杆菌芽孢无法萌发或产生毒素。对于pH值为4.6或更高的食品,必须使用压力罐装以达到116摄氏度以上的温度来摧毁芽孢。"
14
+ },
15
+ {
16
+ question: "什么是F0灭菌致死率值?",
17
+ answer: "F0值衡量的是在121.11摄氏度下的等效灭菌时间。标准的低酸性灭菌过程要求F0值达到3.0分钟或更高,相当于芽孢数量的12个十进制减少(12D)。"
18
+ },
19
+ {
20
+ question: "为什么不能在低酸性食品中使用水浴罐装?",
21
+ answer: "水浴罐装只能达到沸点(100摄氏度)。这个温度不足以杀死低酸性食品中肉毒梭菌的耐热芽孢。芽孢会在室温下存活并产生毒素。"
22
+ }
23
+ ];
24
+
25
+ const howTo = [
26
+ {
27
+ name: "输入食材酸度",
28
+ text: "测定并输入食材的pH值。如果pH值等于或大于4.6,则该食品为低酸性。"
29
+ },
30
+ {
31
+ name: "选择罐装方法",
32
+ text: "根据您的保存设备,选择水浴罐装或压力罐装。"
33
+ },
34
+ {
35
+ name: "设定温度和时间",
36
+ text: "输入罐装处理温度以及罐体保持在该温度下的时间(分钟)。"
37
+ },
38
+ {
39
+ name: "评估安全诊断",
40
+ text: "检查得出的F0值、芽孢减少次数和安全区域指示器,以确认是否符合标准。"
41
+ }
42
+ ];
43
+
44
+ const faqSchema = {
45
+ '@context': 'https://schema.org' as const,
46
+ '@type': 'FAQPage' as const,
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question' as const,
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer' as const, text: item.answer },
51
+ })),
52
+ };
53
+
54
+ const howToSchema = {
55
+ '@context': 'https://schema.org' as const,
56
+ '@type': 'HowTo' as const,
57
+ name: title,
58
+ description,
59
+ step: howTo.map((step) => ({
60
+ '@type': 'HowToStep' as const,
61
+ name: step.name,
62
+ text: step.text,
63
+ })),
64
+ };
65
+
66
+ const appSchema = {
67
+ '@context': 'https://schema.org' as const,
68
+ '@type': 'SoftwareApplication' as const,
69
+ name: title,
70
+ description,
71
+ applicationCategory: 'UtilitiesApplication',
72
+ operatingSystem: 'Web',
73
+ offers: { '@type': 'Offer' as const, price: '0', priceCurrency: 'EUR' },
74
+ };
75
+
76
+ export const content: ToolLocaleContent = {
77
+ slug: 'botulism-canning-safety',
78
+ title: 'Botulism Canning Safety Checker',
79
+ description: '计算肉毒杆菌的热孢子 reduction 和 F0 灭菌致死率。评估低酸和酸性罐头食品安全区域。',
80
+ faqTitle: '常见问题',
81
+ ui: {
82
+ title: "罐装高压灭菌监测器",
83
+ subtitle: "热致死诊断和肉毒杆菌安全评估工具",
84
+ methodLabel: "罐装方法",
85
+ waterBath: "水浴罐装",
86
+ pressureCanner: "压力罐装",
87
+ tempLabel: "罐装温度",
88
+ timeLabel: "处理时间",
89
+ phLabel: "食品pH值",
90
+ f0Label: "F0致死率值",
91
+ dLabel: "计算D值",
92
+ sporesLabel: "芽孢数量",
93
+ statusSafe: "灭菌完成",
94
+ statusMarginal: "灭菌不充分",
95
+ statusUnsafe: "肉毒杆菌高风险",
96
+ statusSafeDesc: "热致死率超过目标F0值3.0分钟。芽孢已完全失活。",
97
+ statusMarginalDesc: "处理达到部分失活,但低于12D安全标准。请调整时间或温度。",
98
+ statusUnsafeDesc: "处理未能使肉毒梭菌失活。水浴中的低酸性食品处于危险状态。",
99
+ cLabel: "°C",
100
+ fLabel: "°F",
101
+ minLabel: "分钟",
102
+ logReductionLabel: "对数减少",
103
+ dValueUnit: "分钟",
104
+ indicatorSectionTitle: "诊断仪表",
105
+ visualizerSectionTitle: "芽孢减少",
106
+ f0Tooltip: "在121.11°C下的等效灭菌时间(分钟)。安全阈值为3.0或更高。",
107
+ dTooltip: "对数减少时间:在当前温度下破坏90%芽孢所需的时间(分钟)。",
108
+ logReductionTooltip: "十倍减少的次数。12D减少是安全标准。",
109
+ },
110
+ faq,
111
+ howTo,
112
+ seo: [
113
+ {
114
+ type: 'title',
115
+ text: '热处理和芽孢失活动力学的科学机制',
116
+ level: 2,
117
+ },
118
+ {
119
+ type: 'paragraph',
120
+ html: '罐装中的热处理通过破坏病原菌和腐败微生物来确保商业无菌。低酸性食品保存安全指南的主要焦点是肉毒梭菌。与营养细胞相比,肉毒杆菌芽孢具有极高的耐热性。要使这些芽孢失活,需要在一个计算好的时间内施以高温的热致死过程。温度与失活速率之间的数学关系通过对数减少时间(D值)和温度依赖系数(z值)来表示。',
121
+ },
122
+ {
123
+ type: 'title',
124
+ text: '食品分类和关键的pH 4.6安全阈值',
125
+ level: 3,
126
+ },
127
+ {
128
+ type: 'paragraph',
129
+ html: 'pH值4.6是保存安全的分界线。pH值低于4.6的酸性食品自然抑制肉毒杆菌芽孢的萌发和毒素产生。对于这些食品,在沸水浴中于100摄氏度下处理就足够了。然而,pH值4.6及以上的低酸性食品必须经过压力罐装以提高蒸汽温度,实现完全的热芽孢破坏。下表详细列出了常见食材的分类和罐装方法。',
130
+ },
131
+ {
132
+ type: 'table',
133
+ headers: ['食品组别', 'pH范围', '所需罐装方法', '常见示例'],
134
+ rows: [
135
+ ['高酸性', '低于4.0', '水浴罐装', '苹果、浆果、柑橘、桃子、醋泡菜'],
136
+ ['酸化或中酸性', '4.0至4.6', '酸调整水浴罐装', '番茄、无花果、梨'],
137
+ ['低酸性', '4.6及以上', '必须压力罐装', '肉类、海鲜、豆类、玉米、土豆、汤类'],
138
+ ],
139
+ },
140
+ {
141
+ type: 'title',
142
+ text: '海拔调整和沸点安全修正',
143
+ level: 3,
144
+ },
145
+ {
146
+ type: 'paragraph',
147
+ html: '随着海拔升高,大气压降低,导致水的沸点降至100摄氏度以下。在水浴罐装中,这个较低的温度会增加芽孢的D值,因此需要更长的处理时间。在压力罐装中,必须提高表盘式或重锤式压力表的设置,以维持目标内部灭菌温度。以下是沸点和所需压力罐装调整的参考指南。',
148
+ },
149
+ {
150
+ type: 'table',
151
+ headers: ['海拔范围', '水的沸点', '所需表盘式压力表压力', '所需重锤式压力表压力'],
152
+ rows: [
153
+ ['0至300米', '100.0 °C', '11 PSI(121 °C)', '10 PSI(121 °C)'],
154
+ ['300至600米', '99.0 °C', '11 PSI(121 °C)', '15 PSI(121 °C)'],
155
+ ['600至900米', '98.0 °C', '12 PSI(121 °C)', '15 PSI(121 °C)'],
156
+ ['900至1200米', '97.0 °C', '13 PSI(121 °C)', '15 PSI(121 °C)'],
157
+ ['1200至1500米', '96.0 °C', '13 PSI(121 °C)', '15 PSI(121 °C)'],
158
+ ['1500至2000米', '94.5 °C', '14 PSI(121 °C)', '15 PSI(121 °C)'],
159
+ ],
160
+ },
161
+ {
162
+ type: 'title',
163
+ text: '12D芽孢减少概念如何预防肉毒中毒',
164
+ level: 3,
165
+ },
166
+ {
167
+ type: 'paragraph',
168
+ html: '热对细菌的破坏是对数性的。D值表示在特定温度下摧毁90%芽孢数量所需的时间,这相当于一个十进制的对数减少。肉毒梭菌的参考D值是0.21分钟(在121.11摄氏度下)。为了实现高安全裕度,商业标准要求进行十二个十进制减少的过程(12D),意味着芽孢数量减少10的12次方分之一。这产生了3.0分钟的目标F0值,保证了低酸性食品的安全性。',
169
+ },
170
+ {
171
+ type: 'title',
172
+ text: '实用家庭罐装指南和安全提示',
173
+ level: 3,
174
+ },
175
+ {
176
+ type: 'list',
177
+ items: [
178
+ '番茄的天然pH值在关键4.6阈值附近波动,因此在用水浴处理前务必用柠檬汁或柠檬酸进行酸化处理。',
179
+ '切勿缩短处理时间或降低温度。热致死动力学是对数性的,微小的调整也可能让芽孢存活下来。',
180
+ '确保压力罐上的表盘式压力表每年进行准确度测试,因为错误的压力读数会直接影响内部灭菌温度。',
181
+ '通过调整水浴中的处理时间或增加压力罐的PSI设置来补偿海拔差异。',
182
+ '即使整个食谱含有酸性成分,也要避免在水浴罐中处理含有肉类或豆类等低酸性食材的混合食谱。',
183
+ ],
184
+ },
185
+ ],
186
+ bibliography,
187
+ schemas: [faqSchema, howToSchema, appSchema],
188
+ };
@@ -0,0 +1,11 @@
1
+ import type { ToolDefinition } from '../../types';
2
+ import { botulismCanningSafety } from './entry';
3
+
4
+ export * from './entry';
5
+
6
+ export const BOTULISM_CANNING_SAFETY_TOOL: ToolDefinition = {
7
+ entry: botulismCanningSafety,
8
+ Component: () => import('./component.astro'),
9
+ SEOComponent: () => import('./seo.astro'),
10
+ BibliographyComponent: () => import('./bibliography.astro'),
11
+ };
@@ -0,0 +1,47 @@
1
+ export interface CanningInput {
2
+ temperature: number;
3
+ timeMinutes: number;
4
+ phValue: number;
5
+ method: 'water-bath' | 'pressure-canner';
6
+ }
7
+
8
+ export interface CanningResult {
9
+ dValue: number;
10
+ lethalityRate: number;
11
+ f0Value: number;
12
+ logReduction: number;
13
+ safetyStatus: 'safe' | 'marginal' | 'unsafe';
14
+ }
15
+
16
+ export class BotulismLogic {
17
+ static computeThermal(temp: number, time: number): { dValue: number; lethalityRate: number; f0Value: number; logReduction: number } {
18
+ const lethalityRate = Math.pow(10, (temp - 121.11) / 10);
19
+ const f0Value = parseFloat((lethalityRate * time).toFixed(3));
20
+ const dValue = parseFloat((0.21 * Math.pow(10, (121.11 - temp) / 10)).toFixed(3));
21
+ const logReduction = dValue > 0 ? parseFloat((time / dValue).toFixed(2)) : 0;
22
+ return { dValue, lethalityRate, f0Value, logReduction };
23
+ }
24
+
25
+ static computeSafety(input: { ph: number; method: string; f0Value: number; temp: number; time: number }): 'safe' | 'marginal' | 'unsafe' {
26
+ if (input.ph < 4.6) {
27
+ const minTemp = input.method === 'water-bath' ? 95 : 100;
28
+ return input.temp >= minTemp && input.time >= 10 ? 'safe' : 'marginal';
29
+ }
30
+ if (input.method === 'water-bath') return 'unsafe';
31
+ if (input.f0Value >= 3.0) return 'safe';
32
+ if (input.f0Value >= 1.5) return 'marginal';
33
+ return 'unsafe';
34
+ }
35
+
36
+ static calculate(input: CanningInput): CanningResult {
37
+ const thermal = BotulismLogic.computeThermal(input.temperature, input.timeMinutes);
38
+
39
+ return {
40
+ dValue: thermal.dValue,
41
+ lethalityRate: thermal.lethalityRate,
42
+ f0Value: thermal.f0Value,
43
+ logReduction: thermal.logReduction,
44
+ safetyStatus: BotulismLogic.computeSafety({ ph: input.phValue, method: input.method, f0Value: thermal.f0Value, temp: input.temperature, time: input.timeMinutes }),
45
+ };
46
+ }
47
+ }
@@ -0,0 +1,15 @@
1
+ ---
2
+ import { SEORenderer } from '@jjlmoya/utils-shared';
3
+ import { botulismCanningSafety } from './entry';
4
+ import type { KnownLocale } from '../../types';
5
+
6
+ interface Props {
7
+ locale?: KnownLocale;
8
+ }
9
+
10
+ const { locale = 'en' } = Astro.props;
11
+ const content = await botulismCanningSafety.i18n[locale]?.();
12
+ if (!content) return null;
13
+ ---
14
+
15
+ {content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}