@jjlmoya/utils-babies 1.6.0 → 1.8.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 (103) hide show
  1. package/package.json +67 -66
  2. package/src/category/i18n/de.ts +48 -0
  3. package/src/category/i18n/en.ts +10 -10
  4. package/src/category/i18n/fr.ts +10 -10
  5. package/src/category/i18n/id.ts +48 -0
  6. package/src/category/i18n/it.ts +48 -0
  7. package/src/category/i18n/ja.ts +48 -0
  8. package/src/category/i18n/ko.ts +48 -0
  9. package/src/category/i18n/nl.ts +48 -0
  10. package/src/category/i18n/pl.ts +48 -0
  11. package/src/category/i18n/pt.ts +48 -0
  12. package/src/category/i18n/ru.ts +48 -0
  13. package/src/category/i18n/sv.ts +48 -0
  14. package/src/category/i18n/tr.ts +48 -0
  15. package/src/category/i18n/zh.ts +48 -0
  16. package/src/category/index.ts +13 -1
  17. package/src/tests/faq_count.test.ts +1 -1
  18. package/src/tests/i18n_coverage.test.ts +36 -0
  19. package/src/tests/locale_completeness.test.ts +1 -1
  20. package/src/tests/schemas_fulfillment.test.ts +23 -0
  21. package/src/tests/seo_length.test.ts +1 -2
  22. package/src/tests/slug_uniqueness.test.ts +81 -0
  23. package/src/tests/title_quality.test.ts +55 -0
  24. package/src/tool/baby-feeding-calculator/i18n/de.ts +162 -0
  25. package/src/tool/baby-feeding-calculator/i18n/id.ts +162 -0
  26. package/src/tool/baby-feeding-calculator/i18n/it.ts +162 -0
  27. package/src/tool/baby-feeding-calculator/i18n/ja.ts +162 -0
  28. package/src/tool/baby-feeding-calculator/i18n/ko.ts +162 -0
  29. package/src/tool/baby-feeding-calculator/i18n/nl.ts +162 -0
  30. package/src/tool/baby-feeding-calculator/i18n/pl.ts +162 -0
  31. package/src/tool/baby-feeding-calculator/i18n/pt.ts +162 -0
  32. package/src/tool/baby-feeding-calculator/i18n/ru.ts +162 -0
  33. package/src/tool/baby-feeding-calculator/i18n/sv.ts +162 -0
  34. package/src/tool/baby-feeding-calculator/i18n/tr.ts +162 -0
  35. package/src/tool/baby-feeding-calculator/i18n/zh.ts +162 -0
  36. package/src/tool/baby-feeding-calculator/index.ts +12 -0
  37. package/src/tool/baby-percentile-calculator/i18n/de.ts +245 -0
  38. package/src/tool/baby-percentile-calculator/i18n/id.ts +245 -0
  39. package/src/tool/baby-percentile-calculator/i18n/it.ts +245 -0
  40. package/src/tool/baby-percentile-calculator/i18n/ja.ts +245 -0
  41. package/src/tool/baby-percentile-calculator/i18n/ko.ts +245 -0
  42. package/src/tool/baby-percentile-calculator/i18n/nl.ts +245 -0
  43. package/src/tool/baby-percentile-calculator/i18n/pl.ts +245 -0
  44. package/src/tool/baby-percentile-calculator/i18n/pt.ts +245 -0
  45. package/src/tool/baby-percentile-calculator/i18n/ru.ts +245 -0
  46. package/src/tool/baby-percentile-calculator/i18n/sv.ts +245 -0
  47. package/src/tool/baby-percentile-calculator/i18n/tr.ts +245 -0
  48. package/src/tool/baby-percentile-calculator/i18n/zh.ts +245 -0
  49. package/src/tool/baby-percentile-calculator/index.ts +12 -0
  50. package/src/tool/baby-size-converter/i18n/de.ts +203 -0
  51. package/src/tool/baby-size-converter/i18n/fr.ts +1 -1
  52. package/src/tool/baby-size-converter/i18n/id.ts +203 -0
  53. package/src/tool/baby-size-converter/i18n/it.ts +203 -0
  54. package/src/tool/baby-size-converter/i18n/ja.ts +203 -0
  55. package/src/tool/baby-size-converter/i18n/ko.ts +203 -0
  56. package/src/tool/baby-size-converter/i18n/nl.ts +203 -0
  57. package/src/tool/baby-size-converter/i18n/pl.ts +203 -0
  58. package/src/tool/baby-size-converter/i18n/pt.ts +203 -0
  59. package/src/tool/baby-size-converter/i18n/ru.ts +203 -0
  60. package/src/tool/baby-size-converter/i18n/sv.ts +203 -0
  61. package/src/tool/baby-size-converter/i18n/tr.ts +203 -0
  62. package/src/tool/baby-size-converter/i18n/zh.ts +203 -0
  63. package/src/tool/baby-size-converter/index.ts +12 -0
  64. package/src/tool/fertile-days-estimator/i18n/de.ts +262 -0
  65. package/src/tool/fertile-days-estimator/i18n/id.ts +262 -0
  66. package/src/tool/fertile-days-estimator/i18n/it.ts +262 -0
  67. package/src/tool/fertile-days-estimator/i18n/ja.ts +262 -0
  68. package/src/tool/fertile-days-estimator/i18n/ko.ts +262 -0
  69. package/src/tool/fertile-days-estimator/i18n/nl.ts +262 -0
  70. package/src/tool/fertile-days-estimator/i18n/pl.ts +262 -0
  71. package/src/tool/fertile-days-estimator/i18n/pt.ts +262 -0
  72. package/src/tool/fertile-days-estimator/i18n/ru.ts +262 -0
  73. package/src/tool/fertile-days-estimator/i18n/sv.ts +262 -0
  74. package/src/tool/fertile-days-estimator/i18n/tr.ts +262 -0
  75. package/src/tool/fertile-days-estimator/i18n/zh.ts +262 -0
  76. package/src/tool/fertile-days-estimator/index.ts +12 -0
  77. package/src/tool/pregnancy-calculator/i18n/de.ts +467 -0
  78. package/src/tool/pregnancy-calculator/i18n/id.ts +467 -0
  79. package/src/tool/pregnancy-calculator/i18n/it.ts +467 -0
  80. package/src/tool/pregnancy-calculator/i18n/ja.ts +467 -0
  81. package/src/tool/pregnancy-calculator/i18n/ko.ts +467 -0
  82. package/src/tool/pregnancy-calculator/i18n/nl.ts +467 -0
  83. package/src/tool/pregnancy-calculator/i18n/pl.ts +467 -0
  84. package/src/tool/pregnancy-calculator/i18n/pt.ts +467 -0
  85. package/src/tool/pregnancy-calculator/i18n/ru.ts +467 -0
  86. package/src/tool/pregnancy-calculator/i18n/sv.ts +467 -0
  87. package/src/tool/pregnancy-calculator/i18n/tr.ts +467 -0
  88. package/src/tool/pregnancy-calculator/i18n/zh.ts +467 -0
  89. package/src/tool/pregnancy-calculator/index.ts +13 -1
  90. package/src/tool/vaccination-calendar/i18n/de.ts +194 -0
  91. package/src/tool/vaccination-calendar/i18n/fr.ts +99 -95
  92. package/src/tool/vaccination-calendar/i18n/id.ts +194 -0
  93. package/src/tool/vaccination-calendar/i18n/it.ts +194 -0
  94. package/src/tool/vaccination-calendar/i18n/ja.ts +194 -0
  95. package/src/tool/vaccination-calendar/i18n/ko.ts +194 -0
  96. package/src/tool/vaccination-calendar/i18n/nl.ts +194 -0
  97. package/src/tool/vaccination-calendar/i18n/pl.ts +194 -0
  98. package/src/tool/vaccination-calendar/i18n/pt.ts +194 -0
  99. package/src/tool/vaccination-calendar/i18n/ru.ts +194 -0
  100. package/src/tool/vaccination-calendar/i18n/sv.ts +194 -0
  101. package/src/tool/vaccination-calendar/i18n/tr.ts +194 -0
  102. package/src/tool/vaccination-calendar/i18n/zh.ts +194 -0
  103. package/src/tool/vaccination-calendar/index.ts +13 -1
@@ -0,0 +1,203 @@
1
+ import type { BabySizeConverterLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'baby-size-converter';
5
+ const title = 'ベビー服サイズ変換機';
6
+ const description = 'Zara, H&M, Primark, Carter\'s, Kiabi, Mango, Mayoralなどのブランド間でベビー服のサイズを変換します。身長と体重を入力するだけで、各ブランドの最適なサイズが表示されます。';
7
+ const faq = [
8
+ {
9
+ question: '赤ちゃんにぴったりの服のサイズはどうやって選べばいいですか?',
10
+ answer: '最も信頼できるのは、赤ちゃんの身長を基準にすることです。ヨーロッパサイズ(50, 56, 62...)は、そのままセンチメートル単位の身長に対応しています。身長と体重を入力すれば、各ブランドが推奨するサイズが表示されます。',
11
+ },
12
+ {
13
+ question: 'ブランドによってサイズが大きく違うのはなぜですか?',
14
+ answer: 'ブランドごとに独自の型紙(パターン)を使用しているためです。H&MやPrimarkは大きめ、Carter\'sやMayoralは細身に作られる傾向があります。月齢だけでなく、実際の赤ちゃんのサイズを参考にしてください。',
15
+ },
16
+ {
17
+ question: '2つのサイズで迷ったときはどうすればいいですか?',
18
+ answer: '常に大きい方のサイズを選んでください。赤ちゃんは成長が早いため、大きめを選ぶことで長く快適に着せることができます。',
19
+ },
20
+ {
21
+ question: 'インチ単位のサイズも同じように計算できますか?',
22
+ answer: 'Carter\'sなどのアメリカのブランドは、インチとポンドを基準にしています。単位設定を「インペリアル」に切り替えることで、自動的に換算されます。',
23
+ },
24
+ ];
25
+ const howTo = [
26
+ {
27
+ name: '赤ちゃんの身長を入力',
28
+ text: 'スライダーまたはボタンを使って、赤ちゃんの現在の身長(cmまたはインチ)を入力します。',
29
+ },
30
+ {
31
+ name: '赤ちゃんの体重を入力',
32
+ text: 'kgまたはポンドで体重を入力します。一部のブランドでは体重もサイズ選定の基準になります。',
33
+ },
34
+ {
35
+ name: 'ブランドを選択',
36
+ text: '特定のブランドを選択すると、推奨サイズと衣服の推定寸法が表示されます。',
37
+ },
38
+ {
39
+ name: 'サイズ対応表を確認',
40
+ text: '右側のパネルで、対応する全ブランドのサイズ一覧をひと目で確認できます。',
41
+ },
42
+ ];
43
+
44
+ const faqSchema: WithContext<FAQPage> = {
45
+ '@context': 'https://schema.org',
46
+ '@type': 'FAQPage',
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question',
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
+ })),
52
+ };
53
+ const howToSchema: WithContext<HowTo> = {
54
+ '@context': 'https://schema.org',
55
+ '@type': 'HowTo',
56
+ name: title,
57
+ description,
58
+ step: howTo.map((step) => ({
59
+ '@type': 'HowToStep',
60
+ name: step.name,
61
+ text: step.text,
62
+ })),
63
+ };
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilitiesApplication',
70
+ operatingSystem: 'Web',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'ja',
73
+ };
74
+
75
+ export const content: BabySizeConverterLocaleContent = {
76
+ slug,
77
+ title,
78
+ description,
79
+ ui: {
80
+ labelInput: '赤ちゃんのサイズ',
81
+ labelResults: '推定対応サイズ',
82
+ labelHeight: '身長',
83
+ labelWeight: '現在の体重',
84
+ labelPresets: '月齢別プリセット',
85
+ unitMetric: 'メートル法 (cm/kg)',
86
+ unitImperial: 'ヤード・ポンド法 (in/lb)',
87
+ labelCm: 'cm',
88
+ labelKg: 'kg',
89
+ labelIn: 'in',
90
+ labelLb: 'lb',
91
+ labelBrandFit: 'ブランドとフィット感',
92
+ labelSuggested: '推奨サイズ',
93
+ labelChest: '胸囲',
94
+ labelWaist: '胴囲',
95
+ labelGarmentMeasures: '衣服の推定寸法',
96
+ fitRegular: '標準的',
97
+ fitLarge: 'ゆったりめ',
98
+ fitSmall: '細身',
99
+ tipTitle: '専門家のアドバイス',
100
+ tipText: '赤ちゃんは急激に成長します。もしサイズ選びで境界線上にいる場合は、長く着られ、赤ちゃんの動きを妨げない大きい方のサイズを選ぶことをお勧めします。',
101
+ shareAriaLabel: 'サイズを共有',
102
+ faqTitle: 'よくある質問',
103
+ bibliographyTitle: '参考文献',
104
+ },
105
+ seo: [
106
+ { type: 'title', text: 'ベビー服サイズガイド:Zara, H&M, Primarkなど海外ブランド対応', level: 2 },
107
+ { type: 'stats', columns: 3, items: [
108
+ { value: '2.5 cm', label: '月間成長目安' },
109
+ { value: '3 ヶ月', label: '1サイズの着用期間' },
110
+ { value: '95%', label: '身長基準の信頼度' },
111
+ ]},
112
+ { type: 'tip', html: 'サイズ選びには月齢ではなく、常に身長を基準にしてください。同じ月齢でも身長が8〜10cm異なることがあり、それは1サイズ分の差に相当します。' },
113
+ { type: 'title', text: '月齢・身長・体重別サイズ一覧', level: 3 },
114
+ { type: 'table', headers: ['月齢目安', '身長 (cm)', '体重 (kg)', '一般的サイズ', '着用期間'], rows: [
115
+ ['新生児', '50–56', '3–4.5', '50 / RN', '4–6 週間'],
116
+ ['1–3 ヶ月', '56–62', '4.5–6', '56–62', '6–8 週間'],
117
+ ['3–6 ヶ月', '62–68', '6–8', '62–68', '6–8 週間'],
118
+ ['6–9 ヶ月', '68–74', '8–9.5', '68–74', '6–8 週間'],
119
+ ['9–12 ヶ月', '74–80', '9.5–11', '74–80', '6–8 週間'],
120
+ ['12–18 ヶ月', '80–86', '11–13', '80–86', '3–4 ヶ月'],
121
+ ['18–24 ヶ月', '86–92', '13–15', '86–92', '3–4 ヶ月'],
122
+ ]},
123
+ { type: 'title', text: 'ブランド別のサイズ感(大きめ vs 小さめ)', level: 3 },
124
+ { type: 'comparative', columns: 2, items: [
125
+ {
126
+ title: 'サイズ感:大きめ(小さめを選択)',
127
+ description: 'ゆったりした作りのため、通常より1つ下のサイズが適している場合があります。',
128
+ points: [
129
+ 'H&M:1サイズ分大きいことが多い',
130
+ 'Primark:全体的にゆったりめ',
131
+ 'Lupilu (Lidl):余裕のある作り',
132
+ '成長曲線が緩やかな赤ちゃんにおすすめ',
133
+ ],
134
+ },
135
+ {
136
+ title: 'サイズ感:小さめ(大きめを選択)',
137
+ description: 'フィット感重視のため、通常より1つ上のサイズが適している場合があります。',
138
+ points: [
139
+ "Carter's:アメリカ仕様で細身",
140
+ 'Mayoral:ヨーロッパ仕様でタイト目',
141
+ 'Neck & Neck:全体的に小さめ',
142
+ '成長曲線が急な赤ちゃんにおすすめ',
143
+ ],
144
+ },
145
+ ]},
146
+ { type: 'title', text: '失敗しないサイズ選びのコツ', level: 3 },
147
+ { type: 'list', items: [
148
+ '購入前に必ず実際に測り、月齢だけで判断しない',
149
+ '2つのサイズの中間なら、迷わず大きい方を選ぶ',
150
+ 'ロンパースなどの繋ぎ服は、おむつの厚みも考慮する',
151
+ 'ヨーロッパサイズ(50, 56, 62...)はcm単位の身長に対応',
152
+ '洗濯後の縮みを考慮する(綿素材は最大5%程度縮むことがあります)',
153
+ ]},
154
+ { type: 'glossary', items: [
155
+ {
156
+ term: 'サイズ50 / 新生児用 (RN)',
157
+ definition: '身長50cm、体重3.5kgまでの赤ちゃん用。多くの赤ちゃんが最初の数週間でサイズアウトしてしまいます。',
158
+ },
159
+ {
160
+ term: '股上の寸法',
161
+ definition: '股からウエストまでの長さ。ボディスーツやカバーオールでは重要で、股上が短いと動きが制限されてしまいます。',
162
+ },
163
+ {
164
+ term: '体重基準',
165
+ definition: "Carter'sなどの米国ブランドでよく使われる基準。平均的な成長曲線とは異なる体格の赤ちゃんに役立ちます。",
166
+ },
167
+ {
168
+ term: 'エンベロープネック(合わせ襟)',
169
+ definition: '襟ぐりが広く開くデザイン。頭から通さず、足の方へスライドさせて脱ぎ着させることができるため、新生児期に非常に便利です。',
170
+ },
171
+ ]},
172
+ { type: 'summary', title: 'サイズ選びの基本', items: [
173
+ '月齢よりも身長が最も信頼できる判断基準です。',
174
+ "H&MとPrimarkは大きめ、Carter'sとMayoralは小さめの作りです。",
175
+ '欧州表記(50, 56, 62...)は身長に直結しています。',
176
+ '境界線では大きめを選ぶのが鉄則です。',
177
+ '合わせ襟や股上の余裕が快適さのポイントです。',
178
+ ]},
179
+ ],
180
+ faqTitle: "よくある質問",
181
+ faq,
182
+ bibliographyTitle: "参考文献",
183
+ bibliography: [
184
+ {
185
+ name: 'Zara - キッズサイズガイド',
186
+ url: 'https://www.zara.com/jp/ja/size-guide.html',
187
+ },
188
+ {
189
+ name: 'H&M - ベビーサイズガイド',
190
+ url: 'https://www2.hm.com/ja_jp/customer-service/sizeguide.html',
191
+ },
192
+ {
193
+ name: 'WHO - 乳幼児成長基準',
194
+ url: 'https://www.who.int/tools/child-growth-standards',
195
+ },
196
+ {
197
+ name: 'Mayoral - サイズガイド',
198
+ url: 'https://www.mayoral.com/int/guia-tallas',
199
+ },
200
+ ],
201
+ howTo,
202
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
203
+ };
@@ -0,0 +1,203 @@
1
+ import type { BabySizeConverterLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'baby-size-converter';
5
+ const title = '아기 옷 사이즈 변환기';
6
+ const description = 'Zara, H&M, Primark, Carter\'s, Kiabi, Mango, Mayoral 등 주요 브랜드의 아기 옷 사이즈를 변환합니다. 키와 몸무게를 입력하여 브랜드별 정확한 사이즈를 확인하세요.';
7
+ const faq = [
8
+ {
9
+ question: '아기에게 맞는 옷 사이즈를 어떻게 알 수 있나요?',
10
+ answer: '가장 신뢰할 수 있는 방법은 아기의 키를 기준으로 삼는 것입니다. 유럽 사이즈(50, 56, 62...)는 아기의 키(cm)와 직접 대응됩니다. 변환기에 키와 몸무게를 입력하면 브랜드별 추천 사이즈를 바로 확인할 수 있습니다.',
11
+ },
12
+ {
13
+ question: '브랜드마다 사이즈가 왜 이렇게 다른가요?',
14
+ answer: '브랜드별로 사용하는 패턴(본)이 다르기 때문입니다. H&M과 Primark는 크게 나오는 편이며, Carter\'s와 Mayoral은 다소 타이트하게 나오는 경향이 있습니다. 월령보다는 실제 아기의 치수를 기준으로 선택하세요.',
15
+ },
16
+ {
17
+ question: '두 사이즈 사이에 걸쳐있을 때는 어떤 것을 선택해야 하나요?',
18
+ answer: '항상 큰 사이즈를 선택하는 것이 좋습니다. 아기는 매우 빠르게 성장하며, 넉넉한 사이즈가 아기에게 더 편안하고 오래 입힐 수 있습니다.',
19
+ },
20
+ {
21
+ question: '인치 단위 사이즈도 변환 가능한가요?',
22
+ answer: 'Carter\'s와 같은 미국 브랜드는 인치(in)와 파운드(lb)를 기준으로 합니다. 설정에서 단위를 \'임페리얼\'로 변경하면 자동으로 정확하게 변환됩니다.',
23
+ },
24
+ ];
25
+ const howTo = [
26
+ {
27
+ name: '아기의 키 입력',
28
+ text: '슬라이더나 버튼을 사용하여 아기의 현재 키(cm 또는 in)를 입력합니다.',
29
+ },
30
+ {
31
+ name: '아기의 몸무게 입력',
32
+ text: '아기의 현재 몸무게(kg 또는 lb)를 입력합니다. 일부 브랜드는 몸무게를 기준으로 사이즈를 권장하기도 합니다.',
33
+ },
34
+ {
35
+ name: '브랜드 선택',
36
+ text: '특정 의류 브랜드를 선택하면 추천 사이즈와 의류 상세 치수를 확인할 수 있습니다.',
37
+ },
38
+ {
39
+ name: '사이즈 대조 확인',
40
+ text: '우측 패널에서 모든 가용 브랜드의 대응 사이즈를 한눈에 비교할 수 있습니다.',
41
+ },
42
+ ];
43
+
44
+ const faqSchema: WithContext<FAQPage> = {
45
+ '@context': 'https://schema.org',
46
+ '@type': 'FAQPage',
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question',
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
+ })),
52
+ };
53
+ const howToSchema: WithContext<HowTo> = {
54
+ '@context': 'https://schema.org',
55
+ '@type': 'HowTo',
56
+ name: title,
57
+ description,
58
+ step: howTo.map((step) => ({
59
+ '@type': 'HowToStep',
60
+ name: step.name,
61
+ text: step.text,
62
+ })),
63
+ };
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilitiesApplication',
70
+ operatingSystem: 'Web',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'ko',
73
+ };
74
+
75
+ export const content: BabySizeConverterLocaleContent = {
76
+ slug,
77
+ title,
78
+ description,
79
+ ui: {
80
+ labelInput: '아기 신체 치수',
81
+ labelResults: '추천 대응 사이즈',
82
+ labelHeight: '아기의 키',
83
+ labelWeight: '아기의 몸무게',
84
+ labelPresets: '연령별 권장값',
85
+ unitMetric: '미터법 (cm/kg)',
86
+ unitImperial: '야드 파운드법 (in/lb)',
87
+ labelCm: 'cm',
88
+ labelKg: 'kg',
89
+ labelIn: 'in',
90
+ labelLb: 'lb',
91
+ labelBrandFit: '브랜드 및 핏',
92
+ labelSuggested: '추천 사이즈',
93
+ labelChest: '가슴 둘레',
94
+ labelWaist: '허리 둘레',
95
+ labelGarmentMeasures: '의류 예상 치수',
96
+ fitRegular: '일반 핏',
97
+ fitLarge: '루즈 핏',
98
+ fitSmall: '슬림 핏',
99
+ tipTitle: '전문가 조언',
100
+ tipText: '아기는 급격히 성장합니다. 사이즈가 중간에 걸려 있다면, 아기의 활동성을 보장하고 더 오래 입힐 수 있도록 큰 사이즈를 선택하세요.',
101
+ shareAriaLabel: '사이즈 공유',
102
+ faqTitle: '자주 묻는 질문',
103
+ bibliographyTitle: '참고 자료',
104
+ },
105
+ seo: [
106
+ { type: 'title', text: '아기 옷 사이즈 가이드: Zara, H&M, Primark 등 해외 브랜드 총정리', level: 2 },
107
+ { type: 'stats', columns: 3, items: [
108
+ { value: '2.5 cm', label: '월평균 성장 예상' },
109
+ { value: '3 개월', label: '한 사이즈 착용 기간' },
110
+ { value: '95%', label: '키 기준 정확도' },
111
+ ]},
112
+ { type: 'tip', html: '월령이 아닌 키를 기준으로 사이즈를 선택하는 것이 가장 정확합니다. 같은 월령이라도 키 차이가 최대 8~10cm까지 날 수 있으며, 이는 한 단계 이상의 사이즈 차이를 의미합니다.' },
113
+ { type: 'title', text: '연령, 키, 몸무게별 사이즈표', level: 3 },
114
+ { type: 'table', headers: ['예상 연령', '키 (cm)', '몸무게 (kg)', '일반 사이즈', '착용 기간'], rows: [
115
+ ['신생아', '50–56', '3–4.5', '50 / RN', '4–6 주'],
116
+ ['1–3 개월', '56–62', '4.5–6', '56–62', '6–8 주'],
117
+ ['3–6 개월', '62–68', '6–8', '62–68', '6–8 주'],
118
+ ['6–9 개월', '68–74', '8–9.5', '68–74', '6–8 주'],
119
+ ['9–12 개월', '74–80', '9.5–11', '74–80', '6–8 주'],
120
+ ['12–18 개월', '80–86', '11–13', '80–86', '3–4 개월'],
121
+ ['18–24 개월', '86–92', '13–15', '86–92', '3–4 개월'],
122
+ ]},
123
+ { type: 'title', text: '브랜드별 사이즈 경향 (크게 vs 작게)', level: 3 },
124
+ { type: 'comparative', columns: 2, items: [
125
+ {
126
+ title: '사이즈가 큰 브랜드 (한 단계 작게 선택)',
127
+ description: '여유 있게 제작되는 브랜드로 보통보다 작게 선택하는 것이 맞을 수 있습니다.',
128
+ points: [
129
+ 'H&M: 보통 한 사이즈 정도 크게 나옴',
130
+ 'Primark: 전체적으로 넉넉한 루즈 핏',
131
+ 'Lupilu (Lidl): 편안하고 헐렁한 스타일',
132
+ '성장 곡선이 완만한 아기에게 추천',
133
+ ],
134
+ },
135
+ {
136
+ title: '사이즈가 작은 브랜드 (한 단계 크게 선택)',
137
+ description: '다소 타이트하게 제작되는 브랜드로 보통보다 크게 선택하는 것이 좋습니다.',
138
+ points: [
139
+ "Carter's: 미국식 슬림 핏",
140
+ 'Mayoral: 유럽식 슬림 핏',
141
+ 'Neck & Neck: 전체적으로 피트되는 사이즈',
142
+ '성장 곡선이 가파른 아기에게 추천',
143
+ ],
144
+ },
145
+ ]},
146
+ { type: 'title', text: '아기 옷 사이즈 실패하지 않는 방법', level: 3 },
147
+ { type: 'list', items: [
148
+ '구매 전 반드시 실제 치수를 측정하고, 월령만 믿지 말 것',
149
+ '사이즈 경계에 있다면 무조건 큰 사이즈를 선택할 것',
150
+ '바디수트 등은 기저귀 공간을 충분히 고려할 것',
151
+ '유럽 사이즈(50, 56, 62...)는 키(cm)와 동일함',
152
+ '세탁 후 수축을 고려할 것 (면 소재는 최대 5%까지 줄어들 수 있음)',
153
+ ]},
154
+ { type: 'glossary', items: [
155
+ {
156
+ term: '사이즈 50 / 신생아용 (RN)',
157
+ definition: '키 50cm, 몸무게 3.5kg까지의 신생아를 위한 사이즈입니다. 대부분의 아기가 첫 며칠 만에 작아질 만큼 매우 작게 나옵니다.',
158
+ },
159
+ {
160
+ term: '밑위 길이',
161
+ definition: '사타구니에서 허리까지의 길이입니다. 바디수트 등에서 매우 중요하며, 밑위가 짧으면 아기의 움직임이 불편해집니다.',
162
+ },
163
+ {
164
+ term: '몸무게 기준 선택',
165
+ definition: "Carter's 등 미국 브랜드에서 주로 사용하는 기준입니다. 키와 몸무게의 비율이 표준과 다른 아기들에게 유용한 기준입니다.",
166
+ },
167
+ {
168
+ term: '백 스트레치 (어깨 겹침 디자인)',
169
+ definition: '머리로 입히지 않고 아래로 내려서 입힐 수 있도록 설계된 목 부분 디자인입니다. 목을 가누지 못하는 초기 개월 수에 필수적입니다.',
170
+ },
171
+ ]},
172
+ { type: 'summary', title: '꼭 기억할 점', items: [
173
+ '월령보다는 키가 사이즈 선택의 가장 정확한 기준입니다.',
174
+ 'H&M, Primark는 크게, Carter\'s, Mayoral은 작게 나옵니다.',
175
+ '숫자로 된 유럽 사이즈(50, 56...)는 아기의 키(cm)를 뜻합니다.',
176
+ '사이즈 경계에서는 무조건 크게 사는 것이 아기에게 더 좋습니다.',
177
+ '어깨 겹침 디자인과 넉넉한 밑위 길이는 아기 옷의 핵심 체크 포인트입니다.',
178
+ ]},
179
+ ],
180
+ faqTitle: "자주 묻는 질문",
181
+ faq,
182
+ bibliographyTitle: "참고 자료",
183
+ bibliography: [
184
+ {
185
+ name: 'Zara - 키즈 사이즈 가이드',
186
+ url: 'https://www.zara.com/kr/ko/size-guide.html',
187
+ },
188
+ {
189
+ name: 'H&M - 베이비 사이즈 가이드',
190
+ url: 'https://www2.hm.com/ko_kr/customer-service/sizeguide.html',
191
+ },
192
+ {
193
+ name: 'WHO - 아동 성장 표준',
194
+ url: 'https://www.who.int/tools/child-growth-standards',
195
+ },
196
+ {
197
+ name: 'Mayoral - 사이즈 가이드',
198
+ url: 'https://www.mayoral.com/int/guia-tallas',
199
+ },
200
+ ],
201
+ howTo,
202
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
203
+ };
@@ -0,0 +1,203 @@
1
+ import type { BabySizeConverterLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'baby-maat-omzetter';
5
+ const title = 'Baby Maat Omzetter';
6
+ const description = 'Reken babykledingmaten om tussen Zara, H&M, Primark, Carter\'s, Kiabi, Mango en Mayoral. Voer de lengte und het gewicht in om de exacte maat van elk merk te krijgen.';
7
+ const faq = [
8
+ {
9
+ question: 'Hoe weet ik welke kledingmaat mijn baby heeft?',
10
+ answer: 'Het meest betrouwbaar is om de lengte van de baby als belangrijkste referentie te gebruiken. Europese maten (50, 56, 62...) komen direct overeen met de lengte in centimeters. Voer de lengte en het gewicht van de baby in de omzetter in om de aanbevolen maat voor elk merk te krijgen.',
11
+ },
12
+ {
13
+ question: 'Waarom variëren de maten per merk zo sterk?',
14
+ answer: 'Elk merk heeft zijn eigen snit. H&M en Primark vallen meestal groter uit, terwijl Carter\'s und Mayoral een strakkere snit hebben. Gebruik altijd de maten van de baby, niet alleen de leeftijd.',
15
+ },
16
+ {
17
+ question: 'Welke maat moet ik nemen als het tussen twee maten in zit?',
18
+ answer: 'Kies altijd de grotere maat. Baby\'s groeien erg snel en een grotere maat garandeert een langere levensduur en meer comfort.',
19
+ },
20
+ {
21
+ question: 'Werken de maten in inches op dezelfde manier?',
22
+ answer: 'Amerikaanse merken zoals Carter\'s gebruiken inches en het gewicht als referentie. De omzetter toont je automatisch de equivalenten in het imperiale systeem als je dit activeert.',
23
+ },
24
+ ];
25
+ const howTo = [
26
+ {
27
+ name: 'Voer de lengte van de baby in',
28
+ text: 'Gebruik de schuifregelaar of de knoppen om de huidige lengte van de baby in centimeters of inches aan te passen.',
29
+ },
30
+ {
31
+ name: 'Voer het gewicht van de baby in',
32
+ text: 'Pas het gewicht aan in kg of lbs om de resultaten te verfijnen, aangezien sommige merken het gewicht als aanvullende referentie gebruiken.',
33
+ },
34
+ {
35
+ name: 'Selecteer een merk',
36
+ text: 'Kies het kledingmerk om de voorgestelde maat en de geschatte afmetingen van het kledingstuk te zien.',
37
+ },
38
+ {
39
+ name: 'Bekijk de equivalenten',
40
+ text: 'In het rechterpaneel zie je in één oogopslag de equivalente maten van alle beschikbare merken.',
41
+ },
42
+ ];
43
+
44
+ const faqSchema: WithContext<FAQPage> = {
45
+ '@context': 'https://schema.org',
46
+ '@type': 'FAQPage',
47
+ mainEntity: faq.map((item) => ({
48
+ '@type': 'Question',
49
+ name: item.question,
50
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
51
+ })),
52
+ };
53
+ const howToSchema: WithContext<HowTo> = {
54
+ '@context': 'https://schema.org',
55
+ '@type': 'HowTo',
56
+ name: title,
57
+ description,
58
+ step: howTo.map((step) => ({
59
+ '@type': 'HowToStep',
60
+ name: step.name,
61
+ text: step.text,
62
+ })),
63
+ };
64
+ const appSchema: WithContext<SoftwareApplication> = {
65
+ '@context': 'https://schema.org',
66
+ '@type': 'SoftwareApplication',
67
+ name: title,
68
+ description,
69
+ applicationCategory: 'UtilitiesApplication',
70
+ operatingSystem: 'Web',
71
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
72
+ inLanguage: 'nl',
73
+ };
74
+
75
+ export const content: BabySizeConverterLocaleContent = {
76
+ slug,
77
+ title,
78
+ description,
79
+ ui: {
80
+ labelInput: 'Maten van de baby',
81
+ labelResults: 'Geschatte equivalenten',
82
+ labelHeight: 'Lengte van de baby',
83
+ labelWeight: 'Huidig gewicht van de baby',
84
+ labelPresets: 'Voorinstellingen per typische leeftijd',
85
+ unitMetric: 'Metrisch (cm/kg)',
86
+ unitImperial: 'Imperiaal (in/lb)',
87
+ labelCm: 'cm',
88
+ labelKg: 'kg',
89
+ labelIn: 'in',
90
+ labelLb: 'lb',
91
+ labelBrandFit: 'Merk en Snit',
92
+ labelSuggested: 'Voorgestelde maat',
93
+ labelChest: 'Borst',
94
+ labelWaist: 'Taille',
95
+ labelGarmentMeasures: 'Geschatte afmetingen van het kledingstuk',
96
+ fitRegular: 'Reguliere snit',
97
+ fitLarge: 'Ruime snit',
98
+ fitSmall: 'Strakke snit',
99
+ tipTitle: 'Tip van de expert',
100
+ tipText: 'Baby\'s groeien in zeer snelle ontwikkelingspieken. Als het resultaat op de grens van een maat ligt, kies dan altijd de grotere maat om de levensduur en het comfort van de baby te garanderen.',
101
+ shareAriaLabel: 'Maat delen',
102
+ faqTitle: 'Veelgestelde vragen',
103
+ bibliographyTitle: 'Referenties',
104
+ },
105
+ seo: [
106
+ { type: 'title', text: 'Gids voor babymaten: Zara, H&M, Primark en internationale merken', level: 2 },
107
+ { type: 'stats', columns: 3, items: [
108
+ { value: '2.5 cm', label: 'Maandelijkse groei' },
109
+ { value: '3 maanden', label: 'Duur van elke maat' },
110
+ { value: '95%', label: 'Betrouwbaarheid per lengte' },
111
+ ]},
112
+ { type: 'tip', html: 'Gebruik altijd de lengte als belangrijkste referentie voor het kiezen van een maat, niet de leeftijd. Twee baby\'s van dezelfde maand kunnen wel 8–10 cm in lengte verschillen, wat neerkomt op het overslaan van een volledige maat.' },
113
+ { type: 'title', text: 'Maten naar leeftijd, lengte en gewicht', level: 3 },
114
+ { type: 'table', headers: ['Ca. leeftijd', 'Lengte (cm)', 'Gewicht (kg)', 'Gebruikelijke maat', 'Geschatte duur'], rows: [
115
+ ['Pasgeboren', '50–56', '3–4.5', '50 / RN', '4–6 weken'],
116
+ ['1–3 maanden', '56–62', '4.5–6', '56–62', '6–8 weken'],
117
+ ['3–6 maanden', '62–68', '6–8', '62–68', '6–8 weken'],
118
+ ['6–9 maanden', '68–74', '8–9.5', '68–74', '6–8 weken'],
119
+ ['9–12 maanden', '74–80', '9.5–11', '74–80', '6–8 weken'],
120
+ ['12–18 maanden', '80–86', '11–13', '80–86', '3–4 maanden'],
121
+ ['18–24 maanden', '86–92', '13–15', '86–92', '3–4 maanden'],
122
+ ]},
123
+ { type: 'title', text: 'Merken die groot vs strak vallen', level: 3 },
124
+ { type: 'comparative', columns: 2, items: [
125
+ {
126
+ title: 'Vallen groot (kies een maat kleiner)',
127
+ description: 'Deze merken gebruiken ruimere snitten; neem een maat kleiner dan normaal.',
128
+ points: [
129
+ 'H&M: valt vaak een maat groter uit',
130
+ 'Primark: algemeen ruime snit',
131
+ 'Lupilu (Lidl): losse snit',
132
+ 'Aanbevolen voor baby\'s in een laag percentiel',
133
+ ],
134
+ },
135
+ {
136
+ title: 'Vallen strak (kies een maat groter)',
137
+ description: 'Deze merken gebruiken strakkere snitten; neem een maat groter dan normaal.',
138
+ points: [
139
+ "Carter's: strakke Amerikaanse snit",
140
+ 'Mayoral: strakke Europese snit',
141
+ 'Neck & Neck: kleine maten',
142
+ 'Aanbevolen voor baby\'s in een hoog percentiel',
143
+ ],
144
+ },
145
+ ]},
146
+ { type: 'title', text: 'Tips voor de juiste maat', level: 3 },
147
+ { type: 'list', items: [
148
+ 'Meet de baby altijd voordat je iets koopt, vertrouw niet alleen op de leeftijd',
149
+ 'Bij een grensgeval tussen twee maten, kies de grotere maat',
150
+ 'Houd bij eendelige kleding rekening met ruimte voor de luier',
151
+ 'Europese maten (50, 56, 62...) komen overeen met de lengte in cm',
152
+ 'Altijd wassen voor gebruik: katoen kan tot 5% krimpen',
153
+ ]},
154
+ { type: 'glossary', items: [
155
+ {
156
+ term: 'Maat 50 / Pasgeboren',
157
+ definition: 'Bedoeld voor baby\'s tot 50 cm lang en ongeveer 3,5 kg. Veel baby\'s ontgroeien dit erg snel, zelfs in de eerste weken.',
158
+ },
159
+ {
160
+ term: 'Binnenbeenlengte',
161
+ definition: 'Afstand van het kruis tot de taille. Essentieel bij rompertjes en boxpakjes: een kort kruis beperkt de bewegingsvrijheid van de baby, zelfs als de rest goed past.',
162
+ },
163
+ {
164
+ term: 'Referentie naar gewicht',
165
+ definition: "Sommige Amerikaanse merken zoals Carter's gebruiken het gewicht als primaire referentie. Handig voor baby's met verhoudingen buiten het standaardpercentiel.",
166
+ },
167
+ {
168
+ term: 'Enveloppehals',
169
+ definition: 'Ontwerp van de halsopening bij rompertjes en shirts waarbij het kledingstuk naar beneden kan worden geschoven in plaats van over het hoofd getrokken. Onmisbaar in de eerste maanden.',
170
+ },
171
+ ]},
172
+ { type: 'summary', title: 'Wat je moet onthouden', items: [
173
+ 'Lengte is de meest betrouwbare indicator voor de maat, belangrijker dan leeftijd.',
174
+ "H&M en Primark vallen vaak groot; Carter's en Mayoral vallen strak.",
175
+ 'Numerieke Europese maten (50, 56, 62...) komen overeen met de lengte in cm.',
176
+ 'Kies bij twijfel de grotere maat voor een langere gebruiksduur.',
177
+ 'Enveloppehalsjes en een ruim kruis zijn de belangrijkste comfortkenmerken.',
178
+ ]},
179
+ ],
180
+ faqTitle: "Veelgestelde vragen",
181
+ faq,
182
+ bibliographyTitle: "Referenties",
183
+ bibliography: [
184
+ {
185
+ name: 'Zara - Maattabel voor kinderen',
186
+ url: 'https://www.zara.com/nl/nl/size-guide.html',
187
+ },
188
+ {
189
+ name: 'H&M - Maattabel voor baby\'s',
190
+ url: 'https://www2.hm.com/nl_nl/customer-service/sizeguide.html',
191
+ },
192
+ {
193
+ name: 'WHO - Groeistandaarden bij kinderen',
194
+ url: 'https://www.who.int/tools/child-growth-standards',
195
+ },
196
+ {
197
+ name: 'Mayoral - Maattabel',
198
+ url: 'https://www.mayoral.com/nl-be/guia-tallas',
199
+ },
200
+ ],
201
+ howTo,
202
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
203
+ };