@jjlmoya/utils-diy 1.15.0 → 1.17.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 (112) hide show
  1. package/package.json +1 -1
  2. package/src/category/i18n/fr.ts +5 -5
  3. package/src/entries.ts +3 -1
  4. package/src/index.ts +2 -0
  5. package/src/layouts/PreviewLayout.astro +1 -0
  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 +2 -2
  9. package/src/tests/no_en_dash.test.ts +70 -0
  10. package/src/tests/script_density.test.ts +94 -0
  11. package/src/tests/tool_validation.test.ts +2 -2
  12. package/src/tool/balusterCalculator/i18n/de.ts +7 -7
  13. package/src/tool/balusterCalculator/i18n/en.ts +4 -4
  14. package/src/tool/balusterCalculator/i18n/es.ts +2 -2
  15. package/src/tool/balusterCalculator/i18n/fr.ts +3 -3
  16. package/src/tool/balusterCalculator/i18n/it.ts +16 -16
  17. package/src/tool/balusterCalculator/i18n/ru.ts +14 -14
  18. package/src/tool/balusterCalculator/i18n/tr.ts +5 -5
  19. package/src/tool/clayCalculator/i18n/fr.ts +3 -3
  20. package/src/tool/clayCalculator/i18n/ru.ts +3 -3
  21. package/src/tool/concreteCalculator/i18n/en.ts +4 -4
  22. package/src/tool/concreteCalculator/i18n/fr.ts +2 -2
  23. package/src/tool/concreteCalculator/i18n/ko.ts +2 -2
  24. package/src/tool/concreteCalculator/i18n/ru.ts +3 -3
  25. package/src/tool/cutOptimizer/i18n/en.ts +4 -4
  26. package/src/tool/cutOptimizer/i18n/fr.ts +2 -2
  27. package/src/tool/cutOptimizer/i18n/ru.ts +2 -2
  28. package/src/tool/drillCalculator/bibliography.ts +2 -2
  29. package/src/tool/drillCalculator/i18n/ru.ts +5 -5
  30. package/src/tool/drillCalculator/i18n/zh.ts +2 -2
  31. package/src/tool/drillSharpener/i18n/ru.ts +3 -3
  32. package/src/tool/epoxyCalculator/epoxy-resin-calculator.css +81 -1
  33. package/src/tool/epoxyCalculator/i18n/de.ts +2 -2
  34. package/src/tool/epoxyCalculator/i18n/en.ts +2 -2
  35. package/src/tool/epoxyCalculator/i18n/es.ts +2 -2
  36. package/src/tool/epoxyCalculator/i18n/fr.ts +3 -3
  37. package/src/tool/epoxyCalculator/i18n/id.ts +2 -2
  38. package/src/tool/epoxyCalculator/i18n/it.ts +2 -2
  39. package/src/tool/epoxyCalculator/i18n/ja.ts +2 -2
  40. package/src/tool/epoxyCalculator/i18n/ko.ts +2 -2
  41. package/src/tool/epoxyCalculator/i18n/nl.ts +2 -2
  42. package/src/tool/epoxyCalculator/i18n/pl.ts +2 -2
  43. package/src/tool/epoxyCalculator/i18n/pt.ts +2 -2
  44. package/src/tool/epoxyCalculator/i18n/ru.ts +5 -5
  45. package/src/tool/epoxyCalculator/i18n/sv.ts +2 -2
  46. package/src/tool/epoxyCalculator/i18n/tr.ts +2 -2
  47. package/src/tool/epoxyCalculator/i18n/zh.ts +4 -4
  48. package/src/tool/furnitureFit/i18n/de.ts +2 -2
  49. package/src/tool/furnitureFit/i18n/en.ts +4 -4
  50. package/src/tool/furnitureFit/i18n/es.ts +2 -2
  51. package/src/tool/furnitureFit/i18n/fr.ts +3 -3
  52. package/src/tool/furnitureFit/i18n/id.ts +2 -2
  53. package/src/tool/furnitureFit/i18n/it.ts +2 -2
  54. package/src/tool/furnitureFit/i18n/ja.ts +2 -2
  55. package/src/tool/furnitureFit/i18n/ko.ts +2 -2
  56. package/src/tool/furnitureFit/i18n/nl.ts +2 -2
  57. package/src/tool/furnitureFit/i18n/pl.ts +2 -2
  58. package/src/tool/furnitureFit/i18n/pt.ts +2 -2
  59. package/src/tool/furnitureFit/i18n/ru.ts +6 -6
  60. package/src/tool/furnitureFit/i18n/sv.ts +2 -2
  61. package/src/tool/furnitureFit/i18n/tr.ts +2 -2
  62. package/src/tool/furnitureFit/i18n/zh.ts +2 -2
  63. package/src/tool/mortarCalculator/i18n/en.ts +3 -3
  64. package/src/tool/mortarCalculator/i18n/ru.ts +6 -6
  65. package/src/tool/mortarCalculator/i18n/zh.ts +3 -3
  66. package/src/tool/passepartoutCalculator/i18n/en.ts +4 -4
  67. package/src/tool/passepartoutCalculator/i18n/ru.ts +7 -7
  68. package/src/tool/passepartoutCalculator/i18n/zh.ts +6 -6
  69. package/src/tool/passepartoutCalculator/passepartout-calculator.css +99 -3
  70. package/src/tool/pythagoreanRightAngleCalculator/i18n/fr.ts +3 -3
  71. package/src/tool/pythagoreanRightAngleCalculator/i18n/pl.ts +2 -2
  72. package/src/tool/pythagoreanRightAngleCalculator/i18n/ru.ts +5 -5
  73. package/src/tool/stairCalculator/i18n/ru.ts +6 -6
  74. package/src/tool/stairCalculator/stair-calculator.css +76 -5
  75. package/src/tool/thermalExpansionCalculator/bibliography.ts +4 -4
  76. package/src/tool/thermalExpansionCalculator/i18n/en.ts +2 -2
  77. package/src/tool/thermalExpansionCalculator/i18n/fr.ts +3 -3
  78. package/src/tool/thermalExpansionCalculator/i18n/ru.ts +4 -4
  79. package/src/tool/twoStrokeMixtureCalculator/bibliography.astro +6 -0
  80. package/src/tool/twoStrokeMixtureCalculator/bibliography.ts +12 -0
  81. package/src/tool/twoStrokeMixtureCalculator/component.astro +266 -0
  82. package/src/tool/twoStrokeMixtureCalculator/entry.ts +24 -0
  83. package/src/tool/twoStrokeMixtureCalculator/i18n/de.ts +194 -0
  84. package/src/tool/twoStrokeMixtureCalculator/i18n/en.ts +194 -0
  85. package/src/tool/twoStrokeMixtureCalculator/i18n/es.ts +194 -0
  86. package/src/tool/twoStrokeMixtureCalculator/i18n/fr.ts +194 -0
  87. package/src/tool/twoStrokeMixtureCalculator/i18n/id.ts +194 -0
  88. package/src/tool/twoStrokeMixtureCalculator/i18n/it.ts +194 -0
  89. package/src/tool/twoStrokeMixtureCalculator/i18n/ja.ts +194 -0
  90. package/src/tool/twoStrokeMixtureCalculator/i18n/ko.ts +194 -0
  91. package/src/tool/twoStrokeMixtureCalculator/i18n/nl.ts +194 -0
  92. package/src/tool/twoStrokeMixtureCalculator/i18n/pl.ts +194 -0
  93. package/src/tool/twoStrokeMixtureCalculator/i18n/pt.ts +194 -0
  94. package/src/tool/twoStrokeMixtureCalculator/i18n/ru.ts +194 -0
  95. package/src/tool/twoStrokeMixtureCalculator/i18n/sv.ts +194 -0
  96. package/src/tool/twoStrokeMixtureCalculator/i18n/tr.ts +194 -0
  97. package/src/tool/twoStrokeMixtureCalculator/i18n/zh.ts +194 -0
  98. package/src/tool/twoStrokeMixtureCalculator/index.ts +11 -0
  99. package/src/tool/twoStrokeMixtureCalculator/logic.ts +92 -0
  100. package/src/tool/twoStrokeMixtureCalculator/seo.astro +15 -0
  101. package/src/tool/twoStrokeMixtureCalculator/two-stroke-fuel-mixture-calculator.css +405 -0
  102. package/src/tool/twoStrokeMixtureCalculator/ui.ts +81 -0
  103. package/src/tool/voltageDropCalculator/i18n/en.ts +2 -2
  104. package/src/tool/voltageDropCalculator/i18n/es.ts +4 -4
  105. package/src/tool/voltageDropCalculator/i18n/ru.ts +4 -4
  106. package/src/tool/workshopFractionConverter/bibliography.ts +2 -2
  107. package/src/tool/workshopFractionConverter/i18n/de.ts +2 -2
  108. package/src/tool/workshopFractionConverter/i18n/es.ts +2 -2
  109. package/src/tool/workshopFractionConverter/i18n/fr.ts +2 -2
  110. package/src/tool/workshopFractionConverter/i18n/ru.ts +9 -9
  111. package/src/tool/workshopFractionConverter/i18n/zh.ts +6 -6
  112. package/src/tools.ts +2 -1
@@ -0,0 +1,194 @@
1
+ import type { WithContext, FAQPage, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { TwoStrokeMixtureCalculatorUI } from '../ui';
4
+ import { bibliography } from '../bibliography';
5
+
6
+ const slug = 'two-stroke-fuel-mixture-calculator';
7
+ const title = '2サイクル混合油計算機:正確なオイル混合比率を算出';
8
+ const description = '2サイクルエンジン用の正確な混合比を瞬時に計算。チェーンソー、原付、バイク、小型エンジンに必須のツール。1:25、1:33、1:40、1:50の比率に対応。';
9
+
10
+ const faqData = [
11
+ {
12
+ question: '2サイクルエンジンとは何ですか?',
13
+ answer: '2サイクルエンジンは、ピストンの2往復で吸気と燃焼を行う仕組みで、4サイクルよりも構造が単純で軽量です。チェーンソーや草刈機、原付、一部のバイクに使用されます。潤滑のために燃料にオイルを混ぜる必要があります。',
14
+ },
15
+ {
16
+ question: '一般的な混合比率はどのくらいですか?',
17
+ answer: '一般的な比率は1:25(濃いめ、保護優先)、1:33(古い機械)、1:40(標準)、1:50(薄め、現代のエンジン)です。必ずエンジンの取扱説明書を確認してください。比率を間違えるとエンジン故障の原因になります。',
18
+ },
19
+ {
20
+ question: '混合比を間違えるとどうなりますか?',
21
+ answer: 'オイルが多すぎる(濃い)と、煙が多くなり、プラグの汚れや性能低下を招きます。オイルが少なすぎる(薄い)と、焼き付きやピストン損傷、エンジンの再起不能な故障につながります。',
22
+ },
23
+ {
24
+ question: 'どのようなオイルを使えばよいですか?',
25
+ answer: 'お使いの機械に適合した2サイクル専用オイルを使用してください。高性能な化学合成油は、鉱物油よりも保護性能が高く、燃焼もクリーンです。4サイクル用オイルは絶対に使用しないでください。',
26
+ },
27
+ {
28
+ question: '燃料とオイルを混ぜる方法は?',
29
+ answer: '清潔な容器にガソリンの一部を入れ、計算された量のオイルを加え、残りのガソリンを足します。1〜2分間しっかりと振って完全に混ぜ合わせてください。容器には混合日を明記しておきましょう。',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ { name: '比率を確認する', text: '取扱説明書や機械の表示を確認します。一般的例:チェーンソー(1:40または1:50)、古いバイク(1:25)。間違った比率はエンジンを壊します。' },
35
+ { name: 'ガソリン量を測る', text: '必要なガソリンの量を決めます。このツールはリットル単位で計算可能です。正確な計量が正確なオイル量につながります。' },
36
+ { name: 'オイル量を計算する', text: 'ガソリン量と比率を入力します。計算機が完璧な混合油を作るために必要なオイル量(mlまたはL)を正確に表示します。' },
37
+ { name: '丁寧に混ぜる', text: '清潔な容器にガソリンとオイルを入れ、1〜2分間よく振ります。完全に混ざり合うことが潤滑には不可欠です。' },
38
+ { name: 'ラベルを貼って使用', text: '容器に日付と比率を記入します。混合燃料は劣化しやすいため、30日以内に使い切るようにしてください(特に合成油の場合)。' },
39
+ ];
40
+
41
+ const faqSchema: WithContext<FAQPage> = {
42
+ '@context': 'https://schema.org',
43
+ '@type': 'FAQPage',
44
+ mainEntity: faqData.map((item) => ({
45
+ '@type': 'Question',
46
+ name: item.question,
47
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
48
+ })),
49
+ };
50
+
51
+ const howToSchema: WithContext<any> = {
52
+ '@context': 'https://schema.org',
53
+ '@type': 'HowTo',
54
+ name: title,
55
+ description,
56
+ step: howToData.map((step, i) => ({
57
+ '@type': 'HowToStep',
58
+ position: i + 1,
59
+ name: step.name,
60
+ text: step.text,
61
+ })),
62
+ };
63
+
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilityApplication',
70
+ operatingSystem: 'All',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'ja',
73
+ };
74
+
75
+ export const content: ToolLocaleContent<TwoStrokeMixtureCalculatorUI> = {
76
+ slug,
77
+ title,
78
+ description,
79
+ faqTitle: 'よくある質問',
80
+ faq: faqData,
81
+ bibliography,
82
+ howTo: howToData,
83
+ schemas: [faqSchema, howToSchema, appSchema],
84
+ seo: [
85
+ { type: 'title', text: '2サイクル混合燃料計算機:チェーンソーや原付のための正確な混合比算出', level: 2 },
86
+ { type: 'paragraph', html: '2サイクルエンジンを長く使うためには、正確な混合燃料が不可欠です。比率を間違えると、わずか数分でエンジンを破壊してしまう可能性があります。この計算機は、燃料量とエンジンタイプに応じた正確なオイル量を瞬時に算出し、作業場での勘に頼った作業を排除します。' },
87
+
88
+ { type: 'title', text: 'なぜ2サイクルエンジンには燃料にオイルが必要なのか', level: 3 },
89
+ { type: 'card', icon: 'mdi:engine', title: '決定的な違い', html: 'オイルタンクが独立している4サイクルエンジンとは異なり、2サイクルエンジンは燃料に直接オイルを混ぜます。燃焼のたびに、混合油がエネルギーを生むと同時に潤滑も行います。オイルポンプがないため、この混合燃料だけがピストンの寿命を守っています。' },
90
+
91
+ { type: 'title', text: '2サイクル混合比クイックリファレンス', level: 3 },
92
+ { type: 'table', headers: ['比率', 'オイル%', '用途', 'エンジンタイプ', '特徴'], rows: [
93
+ ['1:25', '3.85%', '最大保護', '1980年代以前の機械、高負荷使用、旧車バイク', '濃い混合比:煙とカーボンは増えるが、焼き付きに対する保護性能は最大'],
94
+ ['1:33', '2.94%', 'クラシック機材', '80〜90年代の小型エンジン、古いチェーンソー', '適度な濃度:保護と効率のバランスが良い'],
95
+ ['1:40', '2.44%', '業界標準', 'ほとんどの現代的なチェーンソー、原付、小型エンジン', '標準的な推奨比率:現代の化学合成油向けに設計'],
96
+ ['1:50', '1.96%', '現代的な効率', '最新のチェーンソー、高性能バイク', '薄い混合比:煙が少なく燃焼がクリーン。高品質な合成油専用']
97
+ ] },
98
+
99
+ { type: 'title', text: '間違った比率がもたらす結果', level: 3 },
100
+ { type: 'proscons', items: [
101
+ { pro: 'オイル過多(濃い混合比)', con: '白い煙が大量に出る、プラグが被る、カーボンが蓄積する、加速が悪くなる、故障の原因' },
102
+ { pro: 'オイル不足(薄い混合比)', con: '数秒でピストンが焼き付く、シリンダー壁の損傷、致命的なエンジン故障' },
103
+ { pro: '正しい比率', con: 'スムーズな動作、適切な潤滑、最適な燃焼、エンジン寿命の延長、確実な始動' }
104
+ ] },
105
+
106
+ { type: 'title', text: '主な機器の混合比', level: 3 },
107
+ { type: 'card', icon: 'mdi:tree', title: 'チェーンソー', html: '<strong>スチール、ハスクバーナ、共立:</strong> 現代のモデルは通常1:40または1:50を推奨しています。必ずマニュアルを確認してください。現代機に1:25を使うとプラグ被りや性能低下を招きます。90年代以前の古い機械は1:25や1:33を指定している場合があります。' },
108
+ { type: 'card', icon: 'mdi:motorcycle', title: '原付・バイク', html: '<strong>ベスパ、ホンダ、ヤマハ:</strong> 古いモデルは1:33、現代版は1:40〜1:50が多いです。高性能なスポーツモデルは1:50を指定することが一般的です。サービスマニュアルが唯一の正解です。' },
109
+ { type: 'card', icon: 'mdi:tools', title: 'ブロワー・刈払機', html: '<strong>マキタ、ゼノア:</strong> 通常は1:50(現代機)または1:40です。これらは季節的な使用が多いため、薄めの比率にすることで信頼性を損なわず煙を抑える設計になっています。' },
110
+
111
+ { type: 'title', text: 'オイルの種類も比率と同じくらい重要', level: 3 },
112
+ { type: 'comparative', items: [
113
+ { title: '鉱物油(2サイクル用)', description: '時々使用する場合の安価な選択肢。灰分が多く、煙も多め。標準的な比率では十分な保護性能。', icon: 'mdi:beaker', points: ['低コスト', '煙が目立つ', 'カーボンの蓄積が多い', '1:40比率に適する'] },
114
+ { title: '化学合成油(2サイクル用)', description: '頻繁に使用する場合のプレミアムな選択。燃焼がクリーンで保護性能が高く、薄い比率も可能。', icon: 'mdi:flame', points: ['煙が非常に少ない', '最高のエンジン保護', '1:50比率でも安全', '保管時の安定性が高い'], highlight: true },
115
+ { title: '半合成油(部分合成油)', description: '鉱物油と合成油の中間。手頃な価格で良好な保護性能。多くのメーカーが推奨。', icon: 'mdi:beaker-outline', points: ['バランスの取れた性能', '中程度のコスト', '1:40比率に最適', '鉱物油より煙が少ない'] }
116
+ ], columns: 3 },
117
+
118
+ { type: 'title', text: '混合手順ステップバイステップ', level: 3 },
119
+ { type: 'card', icon: 'mdi:check-circle', title: '正しい混ぜ方', html: '<ol style="margin: 1rem 0; padding-left: 1.5rem;"><li><strong>混合専用の容器を使用する</strong>:燃料混合専用の清潔で乾燥したもの。</li><li><strong>まずガソリンの半分を入れる</strong>:容器にガソリンを先に入れます。</li><li><strong>計算されたオイル量を加える</strong>:この計算機で正確な量を確認してください。</li><li><strong>残りのガソリンを加える</strong>:目標の総量までガソリンを足します。</li><li><strong>1〜2分間激しく振る</strong>:色が均一になるまで。均質な混合が均一な潤滑を生みます。</li><li><strong>ラベルを貼る</strong>:日付、比率、燃料の種類を明記します。</li><li><strong>30日以内に使い切る</strong>:合成油でも最大60日程度が目安です。</li></ol>' },
120
+
121
+ { type: 'title', text: 'マニュアルの比率に疑問を感じたら', level: 3 },
122
+ { type: 'tip', html: '<strong>常に、機械の取扱説明書の比率を最優先してください。</strong> 見当たらない場合は、メーカーのサイトで確認するかサポートに問い合わせてください。勘で混ぜることは絶対にやめてください。間違った比率は保証対象外となり、エンジン焼き付きのリスクを高めます。' },
123
+
124
+ { type: 'title', text: '用語解説:2サイクルの専門用語', level: 3 },
125
+ { type: 'glossary', items: [
126
+ { term: '薄い混合比(リーン)', definition: 'オイルが少なすぎる状態(1:50など)。潤滑不足による焼き付きのリスクがあります。' },
127
+ { term: '濃い混合比(リッチ)', definition: 'オイルが多すぎる状態(1:25など)。煙が多くなり、プラグの汚れやカーボン蓄積を招きます。' },
128
+ { term: '均質な混合', definition: '燃料とオイルが全体にムラなく混ざった状態。しっかり振ることで達成され、均一な潤滑に不可欠です。' },
129
+ { term: '焼き付き(Seizure)', definition: '潤滑不足と摩擦熱により、ピストンがシリンダー内で固着すること。エンジンの致命的な故障です。' },
130
+ { term: '化学合成油', description: 'ラボで配合された高性能オイル。鉱物油よりも保護性能、燃焼のクリーンさ、温度安定性に優れます。' },
131
+ { term: '2サイクルエンジン', definition: 'ピストンの1往復(2動作)で1回の燃焼を行うエンジン。軽量で単純な構造が特徴。' },
132
+ { term: '4サイクルエンジン', definition: '独立したオイル回路を持つエンジン。オイルは燃料に混ぜず、エンジン内を循環します。' }
133
+ ] },
134
+
135
+ { type: 'title', text: 'この計算機が役立つ理由', level: 3 },
136
+ { type: 'stats', items: [
137
+ { value: '100%', label: '正確な計算、計量ミスなし', icon: 'mdi:check-circle' },
138
+ { value: '一瞬', label: '暗算不要、数秒で正確な量を確認', icon: 'mdi:flash' },
139
+ { value: '4つの比率', label: '1:25から1:50まで主要比率を網羅', icon: 'mdi:counter', trend: { value: 'カスタム比率も可能', positive: true } },
140
+ { value: '共有可能', label: '混合設定をURLでコピーして共有', icon: 'mdi:share-variant' }
141
+ ], columns: 2 },
142
+
143
+ { type: 'title', text: 'エンジンを壊すよくある間違い', level: 3 },
144
+ { type: 'diagnostic', variant: 'error', title: '4サイクル用オイルの使用', icon: 'mdi:alert', badge: 'エンジン故障確定', html: '4サイクルオイルは循環用であり、燃焼を前提としていません。2サイクル機で使うと大量のカーボンが発生し、数時間でエンジンを破壊します。' },
145
+ { type: 'diagnostic', variant: 'warning', title: '混ぜ方が不十分', icon: 'mdi:alert', badge: '焼き付きリスク', html: '混合が不完全で分離してしまうと、エンジンの一部が潤滑なしで作動してしまいます。使用前に必ず1〜2分は振りましょう。' },
146
+ { type: 'diagnostic', variant: 'warning', title: '古い燃料の使用(60日以上経過)', icon: 'mdi:alert', badge: '詰まりの原因', html: 'ガソリンは時間とともに劣化します。古い混合燃料はキャブレター内にガム状の残留物を作り、故障の原因になります。30日以内に使う分だけ作りましょう。' },
147
+
148
+ { type: 'title', text: 'まとめ', level: 3 },
149
+ { type: 'summary', title: '混ぜる前に確認', items: [
150
+ '取扱説明書で、メーカー指定の正確な比率を確認する。',
151
+ '必ず2サイクル専用オイルを使用する(4サイクル用は不可)。',
152
+ '燃料専用の清潔な容器を使用する。',
153
+ '新しいガソリンと適合するオイルを使用する。',
154
+ 'しっかりと混ぜ、容器に日付と比率を記入する。',
155
+ '作った混合燃料は30日以内に使い切る。'
156
+ ] },
157
+ ],
158
+ ui: {
159
+ titleMain: '2サイクル混合油計算機',
160
+ labelFuelVolume: 'ガソリン量',
161
+ labelRatio: '混合比率',
162
+ labelOilRequired: '必要なオイル量',
163
+ labelTotalMixture: '合計混合量',
164
+ labelRichness: '混合の濃度',
165
+ labelPresets: '主な比率',
166
+ labelCustomRatio: 'カスタム比率 (1:X)',
167
+ btnClear: 'クリア',
168
+ btnCopyResults: '結果をコピー',
169
+ btnSwitchMode: 'モード切替',
170
+ unitLiters: 'L',
171
+ unitMilliliters: 'ml',
172
+ richLean: '薄い(オイル少なめ、焼き付きリスクあり)',
173
+ richBalanced: 'バランス(標準的な混合)',
174
+ richRich: '濃い(オイル多め、煙増加、エンジン保護)',
175
+ msgReady: '準備完了',
176
+ msgMixtureReady: '計算完了',
177
+ tooltipFuelVolume: 'ガソリンの量をリットルで入力',
178
+ tooltipRatio: '比率の数字(25、50など)を入力',
179
+ recipientLabel: '混合容器',
180
+ oilPercentage: 'オイル%',
181
+ labelVolume: '容量',
182
+ labelRatioShort: '比率',
183
+ labelOilTip: '2%オイル混合 = 1:50比率',
184
+ labelMixingTips: '混ぜ方のコツ',
185
+ labelMixingTipsDesc: '清潔な容器で混ぜる:まずガソリン、次にオイル、最後に残りのガソリンの順。1-2分よく振って均一にします。日付と比率を忘れずに記入。',
186
+ recipePrefix: '条件:',
187
+ recipeAt: 'のガソリンに対し',
188
+ recipeAdd: 'オイルを正確に',
189
+ recipeOfOil: '加えてください。',
190
+ copyTextPrefix: '2サイクル混合',
191
+ copyTextFuel: 'ガソリン',
192
+ copyTextOil: 'オイル',
193
+ },
194
+ };
@@ -0,0 +1,194 @@
1
+ import type { WithContext, FAQPage, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { TwoStrokeMixtureCalculatorUI } from '../ui';
4
+ import { bibliography } from '../bibliography';
5
+
6
+ const slug = 'two-stroke-fuel-mixture-calculator';
7
+ const title = '2행정 연료 혼합 계산기: 정확한 오일 혼합 비율 산출';
8
+ const description = '2행정 엔진용 정확한 연료 혼합 비율을 즉시 계산하세요. 전기톱, 예초기, 오토바이 및 소형 엔진 필수 도구. 1:25, 1:33, 1:40, 1:50 비율 지원.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: '2행정 엔진이란 무엇인가요?',
13
+ answer: '2행정 엔진은 피스톤의 2회 움직임으로 흡기와 폭발을 완료하는 방식으로, 4행정보다 단순하고 가볍습니다. 전기톱, 예초기, 소형 오토바이 등에 사용되며 윤활을 위해 연료에 오일을 직접 섞어야 합니다.',
14
+ },
15
+ {
16
+ question: '일반적인 연료와 오일 혼합 비율은 얼마인가요?',
17
+ answer: '일반적인 비율은 1:25(진함, 보호 우선), 1:33(구형 기기), 1:40(표준), 1:50(연함, 현대적 엔진)입니다. 반드시 기기 매뉴얼을 확인하세요. 잘못된 비율은 엔진 고장의 원인이 됩니다.',
18
+ },
19
+ {
20
+ question: '혼합 비율을 틀리면 어떻게 되나요?',
21
+ answer: '오일이 너무 많으면(진함) 연기가 많이 나고 점화 플러그가 오염되어 성능이 떨어집니다. 오일이 너무 적으면(연함) 엔진 내부가 마찰로 눌러붙는 \'焼き付き\'(소치) 현상이 발생하여 엔진이 영구적으로 손상됩니다.',
22
+ },
23
+ {
24
+ question: '어떤 오일을 사용해야 하나요?',
25
+ answer: '기기에 적합한 2행정 전용 엔진 오일을 사용하세요. 고성능 합성유는 일반 광유보다 보호 성능이 뛰어나고 연소 시 찌꺼기가 적습니다. 4행정 엔진 오일은 절대 사용하지 마세요.',
26
+ },
27
+ {
28
+ question: '연료와 오일을 어떻게 섞나요?',
29
+ answer: '깨끗한 용기에 휘발유를 일부 넣고 계산된 양의 오일을 추가한 뒤, 남은 휘발유를 채웁니다. 1~2분간 충분히 흔들어 완전히 섞어주세요. 용기에는 혼합한 날짜를 기록해 두는 것이 좋습니다.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ { name: '비율 확인', text: '기기 매뉴얼이나 기계 본체의 표시를 확인하세요. 예: 전기톱(1:40 또는 1:50), 예초기(1:50). 잘못된 비율은 엔진을 파괴합니다.' },
35
+ { name: '휘발유 양 측정', text: '필요한 휘발유 양을 결정합니다. 이 도구는 리터 단위로 정확하게 계산합니다. 정확한 휘발유 양 측정이 정확한 오일량 계산의 핵심입니다.' },
36
+ { name: '필요 오일량 계산', text: '휘발유 양과 비율을 입력하세요. 계산기가 완벽한 혼합유를 위해 필요한 정확한 오일량(ml 또는 L)을 표시합니다.' },
37
+ { name: '충분히 섞기', text: '용기에 연료와 오일을 넣고 1~2분간 강하게 흔들어 줍니다. 완전히 균일하게 섞여야 엔진 내부가 골고루 윤활됩니다.' },
38
+ { name: '기록 및 사용', text: '용기에 날짜와 비율을 적어둡니다. 혼합유는 변질되기 쉬우므로 최상의 결과를 위해 30일 이내에 사용하는 것이 좋습니다.' },
39
+ ];
40
+
41
+ const faqSchema: WithContext<FAQPage> = {
42
+ '@context': 'https://schema.org',
43
+ '@type': 'FAQPage',
44
+ mainEntity: faqData.map((item) => ({
45
+ '@type': 'Question',
46
+ name: item.question,
47
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
48
+ })),
49
+ };
50
+
51
+ const howToSchema: WithContext<any> = {
52
+ '@context': 'https://schema.org',
53
+ '@type': 'HowTo',
54
+ name: title,
55
+ description,
56
+ step: howToData.map((step, i) => ({
57
+ '@type': 'HowToStep',
58
+ position: i + 1,
59
+ name: step.name,
60
+ text: step.text,
61
+ })),
62
+ };
63
+
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilityApplication',
70
+ operatingSystem: 'All',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'ko',
73
+ };
74
+
75
+ export const content: ToolLocaleContent<TwoStrokeMixtureCalculatorUI> = {
76
+ slug,
77
+ title,
78
+ description,
79
+ faqTitle: '자주 묻는 질문',
80
+ faq: faqData,
81
+ bibliography,
82
+ howTo: howToData,
83
+ schemas: [faqSchema, howToSchema, appSchema],
84
+ seo: [
85
+ { type: 'title', text: '2행정 엔진 혼합유 계산기: 전기톱 및 예초기를 위한 정확한 오일 비율 산출', level: 2 },
86
+ { type: 'paragraph', html: '2행정 엔진의 수명을 유지하려면 정확한 연료 혼합이 필수적입니다. 비율이 틀리면 단 몇 분 만에 엔진이 망가질 수 있습니다. 이 계산기는 연료량과 엔진 타입에 따른 정확한 오일량을 즉시 산출하여, 작업장에서의 짐작에 의한 실수를 방지합니다.' },
87
+
88
+ { type: 'title', text: '왜 2행정 엔진은 연료에 오일을 섞어야 할까요?', level: 3 },
89
+ { type: 'card', icon: 'mdi:engine', title: '결정적인 차이', html: '오일 탱크가 따로 있는 4행정 엔진과 달리, 2행정 엔진은 오일을 연료에 직접 섞습니다. 폭발 시마다 혼합유가 연소되면서 동시에 윤활 작용도 수행합니다. 별도의 오일 펌프가 없으므로 오직 이 혼합 연료만이 피스톤의 생명을 지켜줍니다.' },
90
+
91
+ { type: 'title', text: '2행정 비율 퀵 레퍼런스', level: 3 },
92
+ { type: 'table', headers: ['비율', '오일 %', '용도', '엔진 타입', '특징'], rows: [
93
+ ['1:25', '3.85%', '최대 보호', '1980년대 이전 기기, 고부하 작업, 올드 바이크', '진한 혼합비: 연기와 카본은 늘어나지만, 엔진 눌러붙음 방지 성능은 최대'],
94
+ ['1:33', '2.94%', '클래식 장비', '80~90년대 소형 엔진, 구형 전기톱', '적당한 농도: 보호 성능과 효율성 사이의 균형'],
95
+ ['1:40', '2.44%', '업계 표준', '대부분의 현대식 전기톱, 예초기, 소형 엔진', '표준 권장 비율: 최신 합성유 사용에 최적화'],
96
+ ['1:50', '1.96%', '현대적 효율성', '최신형 전기톱, 고성능 오토바이', '연한 혼합비: 연기가 적고 연소가 깔끔함. 고급 합성유 전용']
97
+ ] },
98
+
99
+ { type: 'title', text: '잘못된 혼합 비율의 결과', level: 3 },
100
+ { type: 'proscons', items: [
101
+ { pro: '오일 과다 (진한 혼합)', con: '흰 연기 과다 발생, 점화 플러그 오염, 엔진 내부 카본 축적, 가속 성능 저하' },
102
+ { pro: '오일 부족 (연한 혼합)', con: '수 초 내에 피스톤 눌러붙음 발생, 실린더 벽 손상, 엔진 복구 불능 상태' },
103
+ { pro: '정확한 비율', con: '부드러운 작동, 적절한 윤활, 최적의 연소, 엔진 수명 연장, 안정적인 시동' }
104
+ ] },
105
+
106
+ { type: 'title', text: '장비별 일반적인 비율', level: 3 },
107
+ { type: 'card', icon: 'mdi:tree', title: '전기톱', html: '<strong>스틸, 허스크바나, 에코:</strong> 현대식 모델은 보통 1:40 또는 1:50을 권장합니다. 반드시 매뉴얼을 확인하세요. 최신 기기에 1:25를 쓰면 플러그가 오염될 수 있습니다. 90년대 이전 구형 기계는 1:25나 1:33을 지정할 수 있습니다.' },
108
+ { type: 'card', icon: 'mdi:motorcycle', title: '소형 오토바이 및 스쿠터', html: '<strong>베스파, 혼다, 야마하:</strong> 구형 모델은 1:33, 현대식은 1:40~1:50이 많습니다. 고성능 모델은 보통 1:50을 지정합니다. 서비스 매뉴얼이 가장 정확한 정보원입니다.' },
109
+ { type: 'card', icon: 'mdi:tools', title: '예초기 및 송풍기', html: '<strong>스틸, 마키타, 계양:</strong> 일반적으로 1:50(현대식) 또는 1:40입니다. 이 기기들은 시즌별로 사용되므로 연한 비율을 통해 성능 저하 없이 연기를 줄이도록 설계되었습니다.' },
110
+
111
+ { type: 'title', text: '비율만큼 중요한 오일의 종류', level: 3 },
112
+ { type: 'comparative', items: [
113
+ { title: '광유계 2행정 오일', description: '가끔 사용할 때 경제적인 선택. 재 성분이 많고 연기가 발생하나 표준 비율에서 충분한 보호.', icon: 'mdi:beaker', points: ['낮은 가격', '눈에 띄는 연기', '카본 축적 높음', '1:40 비율에 적합'] },
114
+ { title: '합성 2행정 오일', description: '자주 사용하는 유저를 위한 프리미엄 선택. 깔끔한 연소, 뛰어난 보호, 더 연한 비율 가능.', icon: 'mdi:flame', points: ['연기 발생 적음', '최고의 엔진 보호', '1:50 비율도 안전하게 지원', '장기 보관 시 안정성 높음'], highlight: true },
115
+ { title: '반합성유 (Semi synthetic)', description: '광유와 합성유의 중간. 적절한 가격에 우수한 보호 성능. 많은 제조사 권장 사항.', icon: 'mdi:beaker-outline', points: ['균형 잡힌 성능', '합리적인 가격', '1:40 비율에 최적', '광유보다 연기 적음'] }
116
+ ], columns: 3 },
117
+
118
+ { type: 'title', text: '단계별 혼합 과정', level: 3 },
119
+ { type: 'card', icon: 'mdi:check-circle', title: '올바르게 섞는 방법', html: '<ol style="margin: 1rem 0; padding-left: 1.5rem;"><li><strong>전용 용기 사용</strong>: 연료 혼합만을 위한 깨끗하고 건조한 전용 용기를 사용하세요.</li><li><strong>먼저 휘발유 절반 넣기</strong>: 용기에 휘발유를 먼저 채웁니다.</li><li><strong>계산된 오일량 추가</strong>: 이 계산기를 통해 정확한 용량을 확인하세요.</li><li><strong>나머지 휘발유 추가</strong>: 목표 총량까지 휘발유를 채웁니다.</li><li><strong>1~2분간 강하게 흔들기</strong>: 색상이 균일해질 때까지 섞습니다. 균일한 혼합이 균일한 윤활을 보장합니다.</li><li><strong>용기에 라벨 부착</strong>: 날짜, 비율, 연료 종류를 적어둡니다.</li><li><strong>30일 이내 사용</strong>: 합성유의 경우 최대 60일까지도 가능하나 신선할수록 좋습니다.</li></ol>' },
120
+
121
+ { type: 'title', text: '매뉴얼의 비율이 의심될 때', level: 3 },
122
+ { type: 'tip', html: '<strong>항상 기기 매뉴얼의 비율을 최우선으로 하세요.</strong> 찾을 수 없다면 제조사 홈페이지를 방문하거나 지원팀에 문의하세요. 짐작으로 섞지 마세요. 잘못된 비율은 보증을 무효화하고 엔진 고장 위험을 높입니다.' },
123
+
124
+ { type: 'title', text: '용어 설명: 2행정 주요 용어', level: 3 },
125
+ { type: 'glossary', items: [
126
+ { term: '연한 혼합 (Lean)', definition: '오일이 너무 적은 상태(1:50 등). 윤활 부족으로 엔진 눌러붙음 위험이 큼.' },
127
+ { term: '진한 혼합 (Rich)', definition: '오일이 너무 많은 상태(1:25 등). 연기 발생, 플러그 오염, 카본 축적 유발.' },
128
+ { term: '균일한 혼합', definition: '연료와 오일이 전체적으로 고르게 섞인 상태. 충분히 흔들어야 하며 균등한 윤활에 필수.' },
129
+ { term: '눌러붙음 (Seizure)', definition: '윤활 부족과 마찰열로 인해 피스톤이 실린더 내부에서 굳어버리는 치명적 고장.' },
130
+ { term: '합성유', definition: '광유보다 뛰어난 보호, 청정 연소, 온도 안정성을 위해 실험실에서 제조된 고성능 오일.' },
131
+ { term: '2행정 엔진', definition: '피스톤의 1왕복(2단계)으로 한 번의 연소 주기를 완료하는 단순하고 가벼운 엔진.' },
132
+ { term: '4행정 엔진', definition: '별도의 오일 순환 계통을 가진 엔진. 오일은 연료와 섞이지 않고 내부를 순환함.' }
133
+ ] },
134
+
135
+ { type: 'title', text: '이 계산기가 유용한 이유', level: 3 },
136
+ { type: 'stats', items: [
137
+ { value: '100%', label: '정확한 계산, 계량 실수 방지', icon: 'mdi:check-circle' },
138
+ { value: '즉시', label: '암산 없이 수 초 만에 정확한 양 확인', icon: 'mdi:flash' },
139
+ { value: '4가지 비율', label: '1:25부터 1:50까지 주요 비율 완벽 지원', icon: 'mdi:counter', trend: { value: '커스텀 비율 지원', positive: true } },
140
+ { value: '공유 가능', label: '혼합 설정을 URL로 복사하여 쉽게 공유', icon: 'mdi:share-variant' }
141
+ ], columns: 2 },
142
+
143
+ { type: 'title', text: '엔진을 망치는 흔한 실수', level: 3 },
144
+ { type: 'diagnostic', variant: 'error', title: '2행정 엔진에 4행정 오일 사용', icon: 'mdi:alert', badge: '엔진 고장 확정', html: '4행정 오일은 순환용이며 연소 시 찌꺼기가 많이 남습니다. 2행정 기기에 쓰면 수 시간 내에 엔진을 망가뜨립니다.' },
145
+ { type: 'diagnostic', variant: 'warning', title: '충분히 섞지 않음', icon: 'mdi:alert', badge: '엔진 손상 위험', html: '혼합이 불완전하여 오일이 분리되면 엔진 일부가 윤활 없이 작동하게 됩니다. 반드시 1~2분간 충분히 흔드세요.' },
146
+ { type: 'diagnostic', variant: 'warning', title: '오래된 연료 사용 (60일 경과)', icon: 'mdi:alert', badge: '카뷰레터 막힘', html: '휘발유는 시간이 지나면 변질됩니다. 오래된 혼합유는 카뷰레터 내부에 끈적한 잔여물을 남겨 고장을 일으킵니다.' },
147
+
148
+ { type: 'title', text: '요약', level: 3 },
149
+ { type: 'summary', title: '섞기 전에 확인하세요', items: [
150
+ '매뉴얼에서 제조사가 지정한 정확한 비율을 확인합니다.',
151
+ '반드시 2행정 전용 오일을 사용하세요(4행정용 불가).',
152
+ '연료 전용의 깨끗한 용기를 사용하세요.',
153
+ '신선한 휘발유와 호환되는 오일을 사용하세요.',
154
+ '충분히 섞고 용기에 날짜와 비율을 적어둡니다.',
155
+ '혼합한 연료는 30일 이내에 사용하세요.'
156
+ ] },
157
+ ],
158
+ ui: {
159
+ titleMain: '2행정 엔진 혼합유 계산기',
160
+ labelFuelVolume: '휘발유 양',
161
+ labelRatio: '혼합 비율',
162
+ labelOilRequired: '필요 오일량',
163
+ labelTotalMixture: '총 혼합량',
164
+ labelRichness: '혼합 농도',
165
+ labelPresets: '주요 비율',
166
+ labelCustomRatio: '직접 입력 (1:X)',
167
+ btnClear: '초기화',
168
+ btnCopyResults: '결과 복사',
169
+ btnSwitchMode: '모드 전환',
170
+ unitLiters: 'L',
171
+ unitMilliliters: 'ml',
172
+ richLean: '연함 (오일 적음, 소치 위험)',
173
+ richBalanced: '균형 (표준 혼합)',
174
+ richRich: '진함 (오일 많음, 연기 증가, 엔진 보호)',
175
+ msgReady: '준비됨',
176
+ msgMixtureReady: '계산 완료',
177
+ tooltipFuelVolume: '휘발유 양을 리터 단위로 입력하세요',
178
+ tooltipRatio: '비율 숫자(25, 50 등)를 입력하세요',
179
+ recipientLabel: '혼합 용기',
180
+ oilPercentage: '오일 %',
181
+ labelVolume: '용량',
182
+ labelRatioShort: '비율',
183
+ labelOilTip: '2% 오일 혼합 = 1:50 비율',
184
+ labelMixingTips: '혼합 팁',
185
+ labelMixingTipsDesc: '깨끗한 용기에 휘발유 먼저, 그다음 오일, 마지막으로 남은 휘발유 순으로 넣으세요. 1-2분 잘 흔들어 균일하게 섞고 날짜와 비율을 적어두세요.',
186
+ recipePrefix: '조건:',
187
+ recipeAt: '휘발유에',
188
+ recipeAdd: '오일을 정확히',
189
+ recipeOfOil: '추가하세요.',
190
+ copyTextPrefix: '2행정 혼합유',
191
+ copyTextFuel: '휘발유',
192
+ copyTextOil: '오일',
193
+ },
194
+ };
@@ -0,0 +1,194 @@
1
+ import type { WithContext, FAQPage, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { TwoStrokeMixtureCalculatorUI } from '../ui';
4
+ import { bibliography } from '../bibliography';
5
+
6
+ const slug = 'tweetakt-mengverhouding-calculator';
7
+ const title = 'Tweetakt Mengverhouding Calculator: Nauwkeurige Olie en Benzine Ratios';
8
+ const description = 'Bereken direct de exacte mengverhouding voor uw tweetaktmotor. Onmisbaar voor kettingzagen, bromfietsen, motorfietsen en klein materieel. Ondersteunt 1:25, 1:33, 1:40 en 1:50.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Wat is een tweetaktmotor?',
13
+ answer: 'Een tweetaktmotor combineert inlaat en compressie in slechts twee zuigerslagen, waardoor deze eenvoudiger en lichter is dan viertaktmotoren. Ze worden gebruikt in kettingzagen, bladblazers, bromfietsen en sommige motorfietsen. Voor de smering moet er olie door de brandstof gemengd worden.',
14
+ },
15
+ {
16
+ question: 'Wat zijn veelvoorkomende mengverhoudingen?',
17
+ answer: 'Veelvoorkomende verhoudingen zijn 1:25 (rijk, beschermend), 1:33 (ouder materieel), 1:40 (standaard) en 1:50 (mager, moderne motoren). Raadpleeg altijd de handleiding van uw motor; een verkeerde verhouding kan schade veroorzaken.',
18
+ },
19
+ {
20
+ question: 'Wat gebeurt er bij een verkeerde mengverhouding?',
21
+ answer: 'Te veel olie (rijk mengsel) zorgt voor overmatige rook, vette bougies en mindere prestaties. Te weinig olie (mager mengsel) leidt tot een vastloper, schade aan de zuiger en motorstoring.',
22
+ },
23
+ {
24
+ question: 'Welke olie moet ik gebruiken?',
25
+ answer: 'Gebruik tweetaktolie die geschikt is voor uw materieel. Premium synthetische tweetaktoliën bieden betere bescherming en verbranden schoner dan minerale oliën. Gebruik nooit viertaktmotorolie; dit veroorzaakt motorschade.',
26
+ },
27
+ {
28
+ question: 'Hoe meng ik benzine en olie?',
29
+ answer: 'Giet een deel van de benzine in een schone jerrycan, voeg de berekende hoeveelheid olie toe en vul aan met de rest van de benzine. Meng grondig door 1-2 minuten krachtig te schudden. Noteer de mengdatum op de jerrycan.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ { name: 'Bepaal de ratio', text: 'Zoek de handleiding van uw motor of apparatuur. Veelvoorkomende ratios: kettingzagen (1:40 of 1:50), bromfietsen (1:33), oude motorfietsen (1:25). Een verkeerde ratio beschadigt uw motor.' },
35
+ { name: 'Meet het benzinevolume', text: 'Bepaal hoeveel benzine u nodig heeft. Deze tool werkt met liters, gallons of elke andere eenheid. Nauwkeurige benzine-meting = nauwkeurige oliehoeveelheid.' },
36
+ { name: 'Bereken de benodigde olie', text: 'Voer het benzinevolume en de ratio in. De calculator toont exact hoeveel olie (in ml of liter) u nodig heeft voor een perfect mengsel.' },
37
+ { name: 'Meng zorgvuldig', text: 'Giet benzine in een schone jerrycan, voeg de berekende olie toe en vul aan met de resterende benzine. Schud 1-2 minuten om goed te mengen.' },
38
+ { name: 'Label en gebruik', text: 'Noteer datum en ratio op de jerrycan. Gebruik de mengsmering binnen 30 dagen voor de beste resultaten (vooral bij synthetische oliën).' },
39
+ ];
40
+
41
+ const faqSchema: WithContext<FAQPage> = {
42
+ '@context': 'https://schema.org',
43
+ '@type': 'FAQPage',
44
+ mainEntity: faqData.map((item) => ({
45
+ '@type': 'Question',
46
+ name: item.question,
47
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
48
+ })),
49
+ };
50
+
51
+ const howToSchema: WithContext<any> = {
52
+ '@context': 'https://schema.org',
53
+ '@type': 'HowTo',
54
+ name: title,
55
+ description,
56
+ step: howToData.map((step, i) => ({
57
+ '@type': 'HowToStep',
58
+ position: i + 1,
59
+ name: step.name,
60
+ text: step.text,
61
+ })),
62
+ };
63
+
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilityApplication',
70
+ operatingSystem: 'All',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'nl',
73
+ };
74
+
75
+ export const content: ToolLocaleContent<TwoStrokeMixtureCalculatorUI> = {
76
+ slug,
77
+ title,
78
+ description,
79
+ faqTitle: 'Veelgestelde Vragen',
80
+ faq: faqData,
81
+ bibliography,
82
+ howTo: howToData,
83
+ schemas: [faqSchema, howToSchema, appSchema],
84
+ seo: [
85
+ { type: 'title', text: 'Tweetakt Mengverhouding Calculator: Precieze Olie-Benzine Ratios voor Kettingzagen en Bromfietsen', level: 2 },
86
+ { type: 'paragraph', html: 'Tweetaktmotoren hebben een exact mengsel van benzine en olie nodig om te overleven. Een verkeerd mengsel kan uw motor binnen enkele minuten vernielen. Deze calculator bepaalt direct de exacte hoeveelheid olie voor uw brandstofvolume en motortype - geen giswerk meer in de schuur.' },
87
+
88
+ { type: 'title', text: 'Waarom tweetaktmotoren olie in de brandstof nodig hebben', level: 3 },
89
+ { type: 'card', icon: 'mdi:engine', title: 'Het cruciale verschil', html: 'In tegenstelling tot viertaktmotoren met een apart carter, mengen tweetaktmotoren olie direct door de brandstof. Bij elke arbeidsslag verbrandt de motor het mengsel voor zowel energie als smering. Er is geen oliepomp; alleen de mengsmering houdt de zuigers in leven.' },
90
+
91
+ { type: 'title', text: 'Snelgids tweetakt ratios', level: 3 },
92
+ { type: 'table', headers: ['Ratio', 'Olie %', 'Gebruik', 'Motortype', 'Kenmerken'], rows: [
93
+ ['1:25', '3,85%', 'Maximale bescherming', 'Apparatuur van vóór 1980, zware belasting, oldtimers', 'Rijk mengsel: meer rook, meer koolafzetting, maximale bescherming tegen vastlopen'],
94
+ ['1:33', '2,94%', 'Klassiek materieel', 'Kleine motoren uit de jaren 80-90, oudere kettingzagen', 'Matige rijkheid: balans tussen bescherming en efficiëntie'],
95
+ ['1:40', '2,44%', 'Industriestandaard', 'Meeste moderne kettingzagen en bromfietsen', 'Standaard aanbeveling: ontworpen voor moderne synthetische oliën'],
96
+ ['1:50', '1,96%', 'Moderne efficiëntie', 'Nieuwste kettingzagen, high-performance bromfietsen', 'Mager mengsel: minder rook, schonere verbranding, voor premium synthetische oliën']
97
+ ] },
98
+
99
+ { type: 'title', text: 'Gevolgen van verkeerde ratios', level: 3 },
100
+ { type: 'proscons', items: [
101
+ { pro: 'Te veel olie (Rijk mengsel)', con: 'Overmatige witte rook, vette bougies, koolafzetting, trage acceleratie, motorstoring' },
102
+ { pro: 'Te weinig olie (Mager mengsel)', con: 'Zuiger loopt binnen seconden vast, krassen in cilinderwand, catastrofale motorschade' },
103
+ { pro: 'Correcte ratio', con: 'Soepele loop, juiste smering, optimale verbranding, langere levensduur, betrouwbare start' }
104
+ ] },
105
+
106
+ { type: 'title', text: 'Veelvoorkomende ratios per apparaat', level: 3 },
107
+ { type: 'card', icon: 'mdi:tree', title: 'Kettingzagen', html: '<strong>Stihl, Husqvarna, Echo:</strong> Moderne modellen vereisen meestal 1:40 of 1:50. Check altijd uw handleiding - 1:25 op een moderne zaag geeft risico op vette bougies. Oudere Stihl-machines (jaren 90 en ouder) kunnen 1:25 of 1:33 voorschrijven.' },
108
+ { type: 'card', icon: 'mdi:motorcycle', title: 'Bromfietsen & Motoren', html: '<strong>Vespa, Honda, Yamaha:</strong> De meeste vereisen 1:33 voor oude modellen, 1:40-1:50 voor moderne versies. High-performance brommers schrijven vaak 1:50 voor. De handleiding is de enige bron van waarheid.' },
109
+ { type: 'card', icon: 'mdi:tools', title: 'Bladblazers & Trimmers', html: '<strong>Stihl, Husqvarna, DeWalt:</strong> Meestal 1:50 (modern) of 1:40 (iets ouder). Dit materieel is voor kort seizoensgebruik; magere ratios sparen rook zonder de betrouwbaarheid op te offeren.' },
110
+
111
+ { type: 'title', text: 'Oliesoort is net zo belangrijk als de ratio', level: 3 },
112
+ { type: 'comparative', items: [
113
+ { title: 'Minerale tweetaktolie', description: 'Budgetoptie voor incidenteel gebruik. Hoger asgehalte, meer rook, voldoende bescherming voor standaard ratios.', icon: 'mdi:beaker', points: ['Lagere kosten', 'Zichtbare rook', 'Meer koolafzetting', 'Werkt voor 1:40 ratios'] },
114
+ { title: 'Synthetische tweetaktolie', description: 'Premium keuze voor intensief gebruik. Schonere verbranding, betere bescherming, maakt magere ratios mogelijk. Temperatuurstabiel.', icon: 'mdi:flame', points: ['Minimale rook', 'Beste motorbescherming', 'Maakt 1:50 veilig mogelijk', 'Langer houdbaar'], highlight: true },
115
+ { title: 'Semi synthetische olie', description: 'Middenweg tussen mineraal en vol-synthetisch. Goede bescherming tegen gemiddelde kosten. Veelgebruikte aanbeveling.', icon: 'mdi:beaker-outline', points: ['Gebalanceerde prestaties', 'Gemiddelde kosten', 'Goed voor 1:40 ratios', 'Minder rook dan mineraal'] }
116
+ ], columns: 3 },
117
+
118
+ { type: 'title', text: 'Stappenplan voor het mengen', level: 3 },
119
+ { type: 'card', icon: 'mdi:check-circle', title: 'De juiste manier van mengen', html: '<ol style="margin: 1rem 0; padding-left: 1.5rem;"><li><strong>Gebruik een aparte jerrycan</strong> die alleen voor mengsmering is. Schoon, droog en gelabeld.</li><li><strong>Giet eerst de helft van de benzine</strong> in de jerrycan.</li><li><strong>Voeg de berekende olie toe</strong> (gebruik deze calculator voor precisie).</li><li><strong>Voeg de rest van de benzine toe</strong> tot het gewenste volume.</li><li><strong>Schud krachtig gedurende 1-2 minuten</strong> tot de kleur egaal is. Een homogeen mengsel = gelijkmatige smering.</li><li><strong>Label de jerrycan</strong> met datum, ratio en brandstoftype.</li><li><strong>Gebruik binnen 30 dagen</strong> (synthetische oliën tot 60 dagen).</li></ol>' },
120
+
121
+ { type: 'title', text: 'Wanneer de handleiding in twijfel trekken', level: 3 },
122
+ { type: 'tip', html: '<strong>Controleer altijd eerst de ratio in de originele handleiding.</strong> Kunt u deze niet vinden, kijk dan op de website van de fabrikant. Gok nooit - een verkeerde ratio doet de garantie vervallen en riskeert een vastloper. Bij oldtimers zonder handleiding: zoek online op modelnummer.' },
123
+
124
+ { type: 'title', text: 'Begrippenlijst tweetakt termen', level: 3 },
125
+ { type: 'glossary', items: [
126
+ { term: 'Mager mengsel', definition: 'Brandstof met te weinig olie (hoge ratio zoals 1:50). Risico op vastloper door gebrek aan smering.' },
127
+ { term: 'Rijk mengsel', definition: 'Brandstof met te veel olie (lage ratio zoals 1:25). Zorgt voor veel rook, vette bougies en koolafzetting.' },
128
+ { term: 'Homogeen mengsel', definition: 'Gelijkmatige verdeling van benzine en olie, bereikt door goed schudden. Cruciaal voor smering en verbranding.' },
129
+ { term: 'Vastloper (Seizure)', definition: 'Wanneer de zuiger vastslaat in de cilinder door hitte en gebrek aan smering. Betekent einde motor.' },
130
+ { term: 'Synthetische olie', definition: 'In het lab ontwikkelde olie met superieure bescherming, schonere verbranding en hittebestendigheid.' },
131
+ { term: 'Tweetaktmotor', definition: 'Motor die de cyclus in twee zuigerslagen voltooit. Lichter en eenvoudiger dan viertakt.' },
132
+ { term: 'Viertaktmotor', definition: 'Motor met apart oliecarter en vier fasen. Olie wordt niet gemengd maar circuleert door de motor.' }
133
+ ] },
134
+
135
+ { type: 'title', text: 'Waarom deze calculator u helpt', level: 3 },
136
+ { type: 'stats', items: [
137
+ { value: '100%', label: 'Foutloze berekening, geen meetfouten', icon: 'mdi:check-circle' },
138
+ { value: 'Direct', label: 'Exacte hoeveelheden in seconden', icon: 'mdi:flash' },
139
+ { value: '4 Ratios', label: '1:25, 1:33, 1:40 en 1:50 gedekt', icon: 'mdi:counter', trend: { value: 'Plus eigen ratios', positive: true } },
140
+ { value: 'Deelbaar', label: 'Kopieer en deel uw instellingen via URL', icon: 'mdi:share-variant' }
141
+ ], columns: 2 },
142
+
143
+ { type: 'title', text: 'Veelgemaakte fouten', level: 3 },
144
+ { type: 'diagnostic', variant: 'error', title: 'Viertaktolie gebruiken in tweetaktmotoren', icon: 'mdi:alert', badge: 'Motorsloop', html: 'Viertaktolie is bedoeld om te circuleren, niet om te verbranden. In een tweetakter vervuilt het de motor en vernielt het de boel binnen uren.' },
145
+ { type: 'diagnostic', variant: 'warning', title: 'Niet goed schudden', icon: 'mdi:alert', badge: 'Vastlooprisico', html: 'Als olie en benzine scheiden door slecht mengen, loopt de motor delen van de tijd zonder smering. Schud altijd 1-2 minuten.' },
146
+ { type: 'diagnostic', variant: 'warning', title: 'Oude benzine gebruiken (>60 dagen)', icon: 'mdi:alert', badge: 'Gomvorming', html: 'Benzine met ethanol veroudert snel. Oude mengsmering laat gom achter in de carburateur. Meng alleen wat u binnen 30 dagen opmaakt.' },
147
+
148
+ { type: 'title', text: 'Samenvatting', level: 3 },
149
+ { type: 'summary', title: 'Voor u gaat mengen', items: [
150
+ 'Check de handleiding voor de exacte ratio van de fabrikant.',
151
+ 'Gebruik tweetaktolie, geen viertakt- of andere olie.',
152
+ 'Gebruik een schone jerrycan, alleen bedoeld voor mengsmering.',
153
+ 'Gebruik verse benzine en compatibele olie.',
154
+ 'Schud krachtig en label met datum en ratio.',
155
+ 'Maak het mengsel binnen 30 dagen op.'
156
+ ] },
157
+ ],
158
+ ui: {
159
+ titleMain: 'Tweetakt Mengverhouding Calculator',
160
+ labelFuelVolume: 'Benzine Volume',
161
+ labelRatio: 'Mengverhouding',
162
+ labelOilRequired: 'Benodigde Olie',
163
+ labelTotalMixture: 'Totaal Mengsel',
164
+ labelRichness: 'Rijkheid Mengsel',
165
+ labelPresets: 'Veelvoorkomende Ratios',
166
+ labelCustomRatio: 'Eigen Ratio (1:X)',
167
+ btnClear: 'Wissen',
168
+ btnCopyResults: 'Resultaten kopiëren',
169
+ btnSwitchMode: 'Modus wisselen',
170
+ unitLiters: 'L',
171
+ unitMilliliters: 'ml',
172
+ richLean: 'Mager (minder olie, risico op vastloper)',
173
+ richBalanced: 'Gebalanceerd (standaard mix)',
174
+ richRich: 'Rijk (meer olie, meer rook, motorbescherming)',
175
+ msgReady: 'Klaar',
176
+ msgMixtureReady: 'Verhouding berekend',
177
+ tooltipFuelVolume: 'Voer het aantal liters benzine in',
178
+ tooltipRatio: 'Voer de ratio in als 25, 33, 40 of 50 (voor 1:25, 1:33, etc.)',
179
+ recipientLabel: 'Jerrycan / Mixbak',
180
+ oilPercentage: 'Olie %',
181
+ labelVolume: 'Volume',
182
+ labelRatioShort: 'Ratio',
183
+ labelOilTip: '2% olie-mix = 1:50 ratio',
184
+ labelMixingTips: 'Mengtips',
185
+ labelMixingTipsDesc: 'Meng in een schone jerrycan: eerst benzine, dan de afgemeten olie, dan de rest van de benzine. Schud goed (1-2 min) voor een egaal mengsel. Label met datum en ratio.',
186
+ recipePrefix: 'Voor',
187
+ recipeAt: 'benzine op',
188
+ recipeAdd: 'voeg exact',
189
+ recipeOfOil: 'tweetaktolie toe.',
190
+ copyTextPrefix: '2-Takt Mix',
191
+ copyTextFuel: 'benzine',
192
+ copyTextOil: 'olie',
193
+ },
194
+ };