@jjlmoya/utils-babies 1.6.0 → 1.7.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 (102) 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/title_quality.test.ts +55 -0
  23. package/src/tool/baby-feeding-calculator/i18n/de.ts +162 -0
  24. package/src/tool/baby-feeding-calculator/i18n/id.ts +162 -0
  25. package/src/tool/baby-feeding-calculator/i18n/it.ts +162 -0
  26. package/src/tool/baby-feeding-calculator/i18n/ja.ts +162 -0
  27. package/src/tool/baby-feeding-calculator/i18n/ko.ts +162 -0
  28. package/src/tool/baby-feeding-calculator/i18n/nl.ts +162 -0
  29. package/src/tool/baby-feeding-calculator/i18n/pl.ts +162 -0
  30. package/src/tool/baby-feeding-calculator/i18n/pt.ts +162 -0
  31. package/src/tool/baby-feeding-calculator/i18n/ru.ts +162 -0
  32. package/src/tool/baby-feeding-calculator/i18n/sv.ts +162 -0
  33. package/src/tool/baby-feeding-calculator/i18n/tr.ts +162 -0
  34. package/src/tool/baby-feeding-calculator/i18n/zh.ts +162 -0
  35. package/src/tool/baby-feeding-calculator/index.ts +12 -0
  36. package/src/tool/baby-percentile-calculator/i18n/de.ts +245 -0
  37. package/src/tool/baby-percentile-calculator/i18n/id.ts +245 -0
  38. package/src/tool/baby-percentile-calculator/i18n/it.ts +245 -0
  39. package/src/tool/baby-percentile-calculator/i18n/ja.ts +245 -0
  40. package/src/tool/baby-percentile-calculator/i18n/ko.ts +245 -0
  41. package/src/tool/baby-percentile-calculator/i18n/nl.ts +245 -0
  42. package/src/tool/baby-percentile-calculator/i18n/pl.ts +245 -0
  43. package/src/tool/baby-percentile-calculator/i18n/pt.ts +245 -0
  44. package/src/tool/baby-percentile-calculator/i18n/ru.ts +245 -0
  45. package/src/tool/baby-percentile-calculator/i18n/sv.ts +245 -0
  46. package/src/tool/baby-percentile-calculator/i18n/tr.ts +245 -0
  47. package/src/tool/baby-percentile-calculator/i18n/zh.ts +245 -0
  48. package/src/tool/baby-percentile-calculator/index.ts +12 -0
  49. package/src/tool/baby-size-converter/i18n/de.ts +203 -0
  50. package/src/tool/baby-size-converter/i18n/fr.ts +1 -1
  51. package/src/tool/baby-size-converter/i18n/id.ts +203 -0
  52. package/src/tool/baby-size-converter/i18n/it.ts +203 -0
  53. package/src/tool/baby-size-converter/i18n/ja.ts +203 -0
  54. package/src/tool/baby-size-converter/i18n/ko.ts +203 -0
  55. package/src/tool/baby-size-converter/i18n/nl.ts +203 -0
  56. package/src/tool/baby-size-converter/i18n/pl.ts +203 -0
  57. package/src/tool/baby-size-converter/i18n/pt.ts +203 -0
  58. package/src/tool/baby-size-converter/i18n/ru.ts +203 -0
  59. package/src/tool/baby-size-converter/i18n/sv.ts +203 -0
  60. package/src/tool/baby-size-converter/i18n/tr.ts +203 -0
  61. package/src/tool/baby-size-converter/i18n/zh.ts +203 -0
  62. package/src/tool/baby-size-converter/index.ts +12 -0
  63. package/src/tool/fertile-days-estimator/i18n/de.ts +262 -0
  64. package/src/tool/fertile-days-estimator/i18n/id.ts +262 -0
  65. package/src/tool/fertile-days-estimator/i18n/it.ts +262 -0
  66. package/src/tool/fertile-days-estimator/i18n/ja.ts +262 -0
  67. package/src/tool/fertile-days-estimator/i18n/ko.ts +262 -0
  68. package/src/tool/fertile-days-estimator/i18n/nl.ts +262 -0
  69. package/src/tool/fertile-days-estimator/i18n/pl.ts +262 -0
  70. package/src/tool/fertile-days-estimator/i18n/pt.ts +262 -0
  71. package/src/tool/fertile-days-estimator/i18n/ru.ts +262 -0
  72. package/src/tool/fertile-days-estimator/i18n/sv.ts +262 -0
  73. package/src/tool/fertile-days-estimator/i18n/tr.ts +262 -0
  74. package/src/tool/fertile-days-estimator/i18n/zh.ts +262 -0
  75. package/src/tool/fertile-days-estimator/index.ts +12 -0
  76. package/src/tool/pregnancy-calculator/i18n/de.ts +467 -0
  77. package/src/tool/pregnancy-calculator/i18n/id.ts +467 -0
  78. package/src/tool/pregnancy-calculator/i18n/it.ts +467 -0
  79. package/src/tool/pregnancy-calculator/i18n/ja.ts +467 -0
  80. package/src/tool/pregnancy-calculator/i18n/ko.ts +467 -0
  81. package/src/tool/pregnancy-calculator/i18n/nl.ts +467 -0
  82. package/src/tool/pregnancy-calculator/i18n/pl.ts +467 -0
  83. package/src/tool/pregnancy-calculator/i18n/pt.ts +467 -0
  84. package/src/tool/pregnancy-calculator/i18n/ru.ts +467 -0
  85. package/src/tool/pregnancy-calculator/i18n/sv.ts +467 -0
  86. package/src/tool/pregnancy-calculator/i18n/tr.ts +467 -0
  87. package/src/tool/pregnancy-calculator/i18n/zh.ts +467 -0
  88. package/src/tool/pregnancy-calculator/index.ts +13 -1
  89. package/src/tool/vaccination-calendar/i18n/de.ts +194 -0
  90. package/src/tool/vaccination-calendar/i18n/fr.ts +99 -95
  91. package/src/tool/vaccination-calendar/i18n/id.ts +194 -0
  92. package/src/tool/vaccination-calendar/i18n/it.ts +194 -0
  93. package/src/tool/vaccination-calendar/i18n/ja.ts +194 -0
  94. package/src/tool/vaccination-calendar/i18n/ko.ts +194 -0
  95. package/src/tool/vaccination-calendar/i18n/nl.ts +194 -0
  96. package/src/tool/vaccination-calendar/i18n/pl.ts +194 -0
  97. package/src/tool/vaccination-calendar/i18n/pt.ts +194 -0
  98. package/src/tool/vaccination-calendar/i18n/ru.ts +194 -0
  99. package/src/tool/vaccination-calendar/i18n/sv.ts +194 -0
  100. package/src/tool/vaccination-calendar/i18n/tr.ts +194 -0
  101. package/src/tool/vaccination-calendar/i18n/zh.ts +194 -0
  102. package/src/tool/vaccination-calendar/index.ts +13 -1
@@ -0,0 +1,194 @@
1
+ import type { VaccinationCalendarLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'kalender-vaksinasi-spanyol-bayi';
5
+ const title = 'Kalender Vaksinasi di Spanyol';
6
+ const description = 'Hitung tanggal pasti vaksinasi bayi Anda sesuai dengan kalender AEP 2026.';
7
+ const faq = [
8
+ {
9
+ question: 'Apa itu kalender vaksinasi AEP 2026?',
10
+ answer: 'Ini adalah kalender vaksinasi yang direkomendasikan oleh Asosiasi Pediatri Spanyol (AEP) untuk tahun 2026. Mencakup semua vaksin sistematis dan opsional untuk bayi dan anak-anak dari lahir hingga usia 14 tahun.',
11
+ },
12
+ {
13
+ question: 'Apakah wajib memvaksinasi bayi saya sesuai kalender ini?',
14
+ answer: 'Di Spanyol, vaksinasi tidak diwajibkan secara hukum, namun sangat direkomendasikan. Vaksin dalam kalender sistematis gratis dan diberikan di pusat kesehatan masyarakat.',
15
+ },
16
+ {
17
+ question: 'Apa yang terjadi jika kita melewatkan satu dosis?',
18
+ answer: 'Jika dosis terlambat, tidak perlu mengulang dari awal. Dokter anak Anda akan memberi tahu cara melanjutkan kalender dari tempat yang terhenti. Yang penting adalah melengkapi jadwal sesegera mungkin.',
19
+ },
20
+ {
21
+ question: 'Dapatkah saya memberikan beberapa vaksin pada hari yang sama?',
22
+ answer: 'Ya, memberikan beberapa vaksin dalam satu kunjungan adalah hal yang umum dan aman. Vaksin kombinasi seperti hexavalent sudah melindungi terhadap enam penyakit dalam satu suntikan.',
23
+ },
24
+ {
25
+ question: 'Apakah vaksin aman untuk bayi prematur?',
26
+ answer: 'Bayi prematur harus divaksinasi sesuai dengan usia kronologis mereka (sejak lahir), bukan usia koreksi, kecuali ada instruksi khusus dari neonatologis. Mereka memiliki prioritas karena lebih rentan.',
27
+ },
28
+ ];
29
+ const howTo = [
30
+ {
31
+ name: 'Masukkan tanggal lahir',
32
+ text: 'Tuliskan hari, bulan, dan tahun kelahiran bayi Anda pada kolom yang tersedia.',
33
+ },
34
+ {
35
+ name: 'Cek jadwal berikutnya',
36
+ text: 'Kalkulator akan secara otomatis menunjukkan kapan vaksinasi berikutnya dan vaksin apa yang sesuai.',
37
+ },
38
+ {
39
+ name: 'Tinjau kalender lengkap',
40
+ text: 'Buka bagian jadwal masa lalu dan masa depan untuk melihat seluruh kalender vaksinasi.',
41
+ },
42
+ {
43
+ name: 'Ekspor pengingat',
44
+ text: 'Tekan tombol untuk mengunduh file .ics berisi semua jadwal mendatang dan tambahkan ke kalender ponsel Anda.',
45
+ },
46
+ ];
47
+
48
+ const faqSchema: WithContext<FAQPage> = {
49
+ '@context': 'https://schema.org',
50
+ '@type': 'FAQPage',
51
+ mainEntity: faq.map((item) => ({
52
+ '@type': 'Question',
53
+ name: item.question,
54
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
55
+ })),
56
+ };
57
+ const howToSchema: WithContext<HowTo> = {
58
+ '@context': 'https://schema.org',
59
+ '@type': 'HowTo',
60
+ name: title,
61
+ description,
62
+ step: howTo.map((step) => ({
63
+ '@type': 'HowToStep',
64
+ name: step.name,
65
+ text: step.text,
66
+ })),
67
+ };
68
+ const appSchema: WithContext<SoftwareApplication> = {
69
+ '@context': 'https://schema.org',
70
+ '@type': 'SoftwareApplication',
71
+ name: title,
72
+ description,
73
+ applicationCategory: 'UtilitiesApplication',
74
+ operatingSystem: 'Web',
75
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
76
+ inLanguage: 'id',
77
+ };
78
+
79
+ export const content: VaccinationCalendarLocaleContent = {
80
+ slug,
81
+ title,
82
+ description,
83
+ ui: {
84
+ labelBirthDate: 'Tanggal lahir bayi',
85
+ placeholderDD: 'HH',
86
+ placeholderMM: 'BB',
87
+ placeholderAAAA: 'TTTT',
88
+ emptyMsg: 'Masukkan hari, bulan, dan tahun lahir bayi Anda untuk melihat kalender vaksinasi.',
89
+ invalidMsg: 'Tanggal yang dimasukkan tidak valid.',
90
+ futureMsg: 'Seorang bayi tidak bisa lahir di masa depan.',
91
+ labelNextAppointment: 'Jadwal berikutnya yang dihitung',
92
+ btnAddReminder: 'Tambah pengingat ke ponsel',
93
+ btnToday: 'Hari ini saatnya! Jangan lupa buku kesehatan',
94
+ labelPassed: 'Jadwal masa lalu',
95
+ labelFuture: 'Kalender masa depan',
96
+ labelStatusOk: 'OK',
97
+ labelStatusPending: 'TUNDA',
98
+ labelSource: 'Sumber: AEP 2026',
99
+ labelShare: 'Bagikan tanggal ini',
100
+ faqTitle: 'Pertanyaan yang sering diajukan',
101
+ bibliographyTitle: 'Referensi',
102
+ labelMonth: 'bulan',
103
+ labelMonths: 'bulan',
104
+ labelYear: 'tahun',
105
+ labelYears: 'tahun',
106
+ labelDay: 'hari',
107
+ labelDays: 'hari',
108
+ labelAnd: 'dan',
109
+ labelVaccination: 'Vaksinasi',
110
+ labelAppointment: 'Janji temu vaksinasi',
111
+ vac_hexavalente: 'Heksavalen',
112
+ vac_neumococo: 'Pneumokokus (VCN15/20)',
113
+ vac_meningococo_b: 'Meningokokus B (Bexsero)',
114
+ vac_rotavirus: 'Rotavirus',
115
+ vac_meningococo_acwy: 'Meningokokus ACWY',
116
+ vac_triple_virica: 'Campak, Gondongan, Rubela (MMR)',
117
+ vac_varicela: 'Cacar air',
118
+ vac_gripe: 'Flu (Musiman)',
119
+ vac_vph: 'HPV (Papiloma)',
120
+ vac_tdpa: 'Tdpa (Tetanus, Difteri, Pertusis)',
121
+ vac_polio_booster: 'Polio (Penguat)',
122
+ },
123
+ seo: [
124
+ { type: 'title', text: 'Kalkulator Vaksin: Kapan jadwal berikutnya untuk anak saya?', level: 2 },
125
+ { type: 'stats', columns: 4, items: [
126
+ { value: '+95%', label: 'Efektivitas' },
127
+ { value: '14', label: 'Total dosis' },
128
+ { value: 'Gratis', label: 'Biaya AEP' },
129
+ { value: 'Tinggi', label: 'Keamanan' },
130
+ ]},
131
+ { type: 'tip', html: 'Kalender AEP 2026 mencakup pembaruan penting seperti perluasan vaksin meningokokus B dan pembaruan rekomendasi untuk HPV pada kedua jenis kelamin mulai usia 12 tahun.' },
132
+ { type: 'title', text: 'Pembaruan Kalender AEP 2026', level: 3 },
133
+ { type: 'list', items: [
134
+ 'Meningokokus B (Bexsero): jadwal 2+1 terkonsolidasi dengan dosis pada usia 2, 4, dan 12 bulan.',
135
+ 'HPV diperluas ke semua remaja mulai usia 12 tahun, tanpa memandang jenis kelamin.',
136
+ 'Pneumokokus: rekomendasi terbaru dengan VCN15 atau VCN20 tergantung ketersediaan wilayah.',
137
+ 'Rotavirus: vaksin oral termasuk dalam kalender sistematis di seluruh wilayah Spanyol.',
138
+ 'Tdpa: penguat direkomendasikan pada usia 6 dan 12 tahun untuk menjaga imunitas terhadap pertusis.',
139
+ ]},
140
+ { type: 'title', text: 'Perbedaan antar wilayah otonom', level: 3 },
141
+ { type: 'list', items: [
142
+ 'Beberapa wilayah menyertakan vaksin tambahan yang tidak tercantum dalam kalender nasional.',
143
+ 'Pembiayaan vaksin rotavirus bervariasi menurut wilayah, meskipun trennya mengarah pada cakupan universal.',
144
+ 'Meningokokus ACWY dapat diberikan pada usia yang sedikit berbeda tergantung pada protokol wilayah.',
145
+ 'Selalu berkonsultasi dengan dokter anak atau pusat kesehatan di wilayah Anda untuk mengonfirmasi kalender yang berlaku.',
146
+ ]},
147
+ { type: 'title', text: 'Cara mengekspor kalender ke ponsel Anda', level: 3 },
148
+ { type: 'list', items: [
149
+ 'Masukkan tanggal lahir bayi Anda ke dalam kalkulator.',
150
+ 'Tekan tombol "Tambah pengingat ke ponsel" untuk mengunduh file .ics.',
151
+ 'Buka file dengan aplikasi kalender Anda (Google Calendar, Apple Calendar, dll).',
152
+ 'Semua jadwal vaksinasi akan disimpan dengan tanggal dan vaksin yang sesuai.',
153
+ ]},
154
+ { type: 'title', text: 'Efek samping umum', level: 3 },
155
+ { type: 'list', items: [
156
+ 'Kemerahan atau bengkak di lokasi suntikan: hilang dalam 1-2 hari.',
157
+ 'Demam ringan (37.5–38.5 °C): normal dalam 24-48 jam pertama.',
158
+ 'Rewel atau menangis: sering terjadi pada bayi setelah dosis pertama.',
159
+ 'Mengantuk atau kurang nafsu makan sementara: tidak memerlukan perawatan khusus.',
160
+ 'Reaksi serius seperti anafilaksis sangat jarang terjadi (kurang dari 1 per sejuta dosis).',
161
+ ]},
162
+ { type: 'tip', html: 'Membawa bayi dalam keadaan kenyang dan mengenakan pakaian yang nyaman memudahkan kunjungan. Setelah vaksin, kontak kulit ke kulit atau menyusui membantu meredakan nyeri dan peradangan secara alami.' },
163
+ { type: 'summary', title: 'Yang harus Anda ingat', items: [
164
+ 'Kalender AEP 2026 mencakup 14 dosis hingga usia 12 tahun untuk perlindungan lengkap.',
165
+ 'Vaksin di tahun pertama melindungi terhadap hingga 9 penyakit serius secara bersamaan.',
166
+ 'Efek samping ringan adalah normal dan hilang dalam 1-2 hari.',
167
+ 'Anda dapat mengekspor semua jadwal vaksinasi ke kalender ponsel Anda dengan satu klik.',
168
+ 'Selalu berkonsultasi dengan dokter anak Anda jika Anda memiliki pertanyaan tentang kalender di wilayah Anda.',
169
+ ]},
170
+ ],
171
+ faqTitle: "Pertanyaan yang sering diajukan",
172
+ faq,
173
+ bibliographyTitle: "Referensi",
174
+ bibliography: [
175
+ {
176
+ name: 'Asociación Española de Pediatría - Kalender Vaksinasi 2026',
177
+ url: 'https://www.aeped.es/comite-vacunas/calendario-vacunaciones',
178
+ },
179
+ {
180
+ name: 'Kementerian Kesehatan Spanyol - Kalender Vaksinasi',
181
+ url: 'https://www.sanidad.gob.es/areas/promocionPrevencion/vacunaciones/calendario/home.htm',
182
+ },
183
+ {
184
+ name: 'WHO - Imunisasi',
185
+ url: 'https://www.who.int/id/health-topics/vaccines-and-immunization',
186
+ },
187
+ {
188
+ name: 'CDC - Jadwal Imunisasi yang Direkomendasikan untuk Anak dan Remaja',
189
+ url: 'https://www.cdc.gov/vaccines/schedules/hcp/imz/child-adolescent.html',
190
+ },
191
+ ],
192
+ howTo,
193
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
194
+ };
@@ -0,0 +1,194 @@
1
+ import type { VaccinationCalendarLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'calendario-vaccinazione-spagna-neonati';
5
+ const title = 'Calendario Vaccinale in Spagna';
6
+ const description = 'Calcola le date esatte delle vaccinazioni del tuo bambino secondo il calendario AEP 2026.';
7
+ const faq = [
8
+ {
9
+ question: 'Cos\'è il calendario vaccinale AEP 2026?',
10
+ answer: 'È il calendario delle vaccinazioni raccomandato dall\'Associazione Spagnola di Pediatria per l\'anno 2026. Include tutti i vaccini sistematici e opzionali per neonati e bambini dalla nascita fino ai 14 anni.',
11
+ },
12
+ {
13
+ question: 'È obbligatorio vaccinare il mio bambino secondo questo calendario?',
14
+ answer: 'In Spagna la vaccinazione non è legalmente obbligatoria, ma è fortemente raccomandata. I vaccini del calendario sistematico sono gratuiti e vengono somministrati nei centri sanitari pubblici.',
15
+ },
16
+ {
17
+ question: 'Cosa succede se saltiamo una dose?',
18
+ answer: 'Se una dose viene ritardata non è necessario ricominciare da capo. Il tuo pediatra ti indicherà come riprendere il calendario da dove era stato interrotto. L\'importante è completare il ciclo il prima possibile.',
19
+ },
20
+ {
21
+ question: 'Posso somministrare più vaccini lo stesso giorno?',
22
+ answer: 'Sì, è comune e sicuro somministrare più vaccini nella stessa visita. I vaccini combinati come l\'esavalente proteggono già contro sei malattie in un\'unica iniezione.',
23
+ },
24
+ {
25
+ question: 'I vaccini sono sicuri per i nati prematuri?',
26
+ answer: 'I neonati prematuri devono essere vaccinati secondo la loro età cronologica (dalla nascita), non l\'età corretta, salvo indicazione specifica del neonatologo. Hanno priorità in quanto più vulnerabili.',
27
+ },
28
+ ];
29
+ const howTo = [
30
+ {
31
+ name: 'Inserisci la data di nascita',
32
+ text: 'Scrivi il giorno, il mese e l\'anno di nascita del tuo bambino nei campi corrispondenti.',
33
+ },
34
+ {
35
+ name: 'Consulta il prossimo appuntamento',
36
+ text: 'Il calcolatore ti mostra automaticamente quando sarà la prossima vaccinazione e quali vaccini corrispondono.',
37
+ },
38
+ {
39
+ name: 'Controlla il calendario completo',
40
+ text: 'Apri le sezioni degli appuntamenti passati e futuri per vedere tutto il calendario vaccinale.',
41
+ },
42
+ {
43
+ name: 'Esporta i promemoria',
44
+ text: 'Premi il pulsante per scaricare un file .ics con tutti i prossimi appuntamenti e aggiungerli al calendario del tuo cellulare.',
45
+ },
46
+ ];
47
+
48
+ const faqSchema: WithContext<FAQPage> = {
49
+ '@context': 'https://schema.org',
50
+ '@type': 'FAQPage',
51
+ mainEntity: faq.map((item) => ({
52
+ '@type': 'Question',
53
+ name: item.question,
54
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
55
+ })),
56
+ };
57
+ const howToSchema: WithContext<HowTo> = {
58
+ '@context': 'https://schema.org',
59
+ '@type': 'HowTo',
60
+ name: title,
61
+ description,
62
+ step: howTo.map((step) => ({
63
+ '@type': 'HowToStep',
64
+ name: step.name,
65
+ text: step.text,
66
+ })),
67
+ };
68
+ const appSchema: WithContext<SoftwareApplication> = {
69
+ '@context': 'https://schema.org',
70
+ '@type': 'SoftwareApplication',
71
+ name: title,
72
+ description,
73
+ applicationCategory: 'UtilitiesApplication',
74
+ operatingSystem: 'Web',
75
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
76
+ inLanguage: 'it',
77
+ };
78
+
79
+ export const content: VaccinationCalendarLocaleContent = {
80
+ slug,
81
+ title,
82
+ description,
83
+ ui: {
84
+ labelBirthDate: 'Data di nascita del bambino',
85
+ placeholderDD: 'GG',
86
+ placeholderMM: 'MM',
87
+ placeholderAAAA: 'AAAA',
88
+ emptyMsg: 'Inserisci il giorno, il mese e l\'anno di nascita del tuo bambino per vedere il calendario vaccinale.',
89
+ invalidMsg: 'La data inserita non è valida.',
90
+ futureMsg: 'Un bambino non può essere nato nel futuro.',
91
+ labelNextAppointment: 'Prossimo appuntamento calcolato',
92
+ btnAddReminder: 'Aggiungi promemoria al cellulare',
93
+ btnToday: 'È oggi! Non dimenticare il libretto',
94
+ labelPassed: 'Appuntamenti passati',
95
+ labelFuture: 'Calendario futuro',
96
+ labelStatusOk: 'OK',
97
+ labelStatusPending: 'PEND.',
98
+ labelSource: 'Fonte: AEP 2026',
99
+ labelShare: 'Condividi queste date',
100
+ faqTitle: 'Domande frequenti',
101
+ bibliographyTitle: 'Riferimenti',
102
+ labelMonth: 'mese',
103
+ labelMonths: 'mesi',
104
+ labelYear: 'anno',
105
+ labelYears: 'anni',
106
+ labelDay: 'giorno',
107
+ labelDays: 'giorni',
108
+ labelAnd: 'e',
109
+ labelVaccination: 'Vaccinazione',
110
+ labelAppointment: 'Appuntamento vaccinale',
111
+ vac_hexavalente: 'Esavalente',
112
+ vac_neumococo: 'Pneumococco (VCN15/20)',
113
+ vac_meningococo_b: 'Meningococco B (Bexsero)',
114
+ vac_rotavirus: 'Rotavirus',
115
+ vac_meningococo_acwy: 'Meningococco ACWY',
116
+ vac_triple_virica: 'MPR (Morbillo, Parotite, Rosolia)',
117
+ vac_varicela: 'Varicella',
118
+ vac_gripe: 'Influenza (Stagionale)',
119
+ vac_vph: 'HPV (Papilloma)',
120
+ vac_tdpa: 'dTpa (Tetano, Difterite, Pertosse)',
121
+ vac_polio_booster: 'Polio (Richiamo)',
122
+ },
123
+ seo: [
124
+ { type: 'title', text: 'Calcolatore Vaccini: Quando tocca il prossimo a mio figlio?', level: 2 },
125
+ { type: 'stats', columns: 4, items: [
126
+ { value: '+95%', label: 'Efficacia' },
127
+ { value: '14', label: 'Dosi totali' },
128
+ { value: 'Pubblico', label: 'Costo AEP' },
129
+ { value: 'Alta', label: 'Sicurezza' },
130
+ ]},
131
+ { type: 'tip', html: 'Il calendario AEP 2026 include novità importanti come l\'estensione del vaccino contro il meningococco B e l\'aggiornamento delle raccomandazioni per l\'HPV in entrambi i sessi dai 12 anni.' },
132
+ { type: 'title', text: 'Novità del Calendario AEP 2026', level: 3 },
133
+ { type: 'list', items: [
134
+ 'Meningococco B (Bexsero): ciclo 2+1 consolidato con dosi a 2, 4 e 12 mesi.',
135
+ 'HPV esteso a tutti gli adolescenti dai 12 anni, indipendentemente dal sesso.',
136
+ 'Pneumococco: raccomandazione aggiornata con VCN15 o VCN20 a seconda della disponibilità regionale.',
137
+ 'Rotavirus: vaccino orale incluso nel calendario sistematico in tutte le comunità.',
138
+ 'dTpa: richiamo raccomandato a 6 e 12 anni per mantenere l\'immunità contro la pertosse.',
139
+ ]},
140
+ { type: 'title', text: 'Differenze tra le comunità autonome', level: 3 },
141
+ { type: 'list', items: [
142
+ 'Alcune comunità includono vaccini aggiuntivi non previsti dal calendario nazionale.',
143
+ 'Il finanziamento del rotavirus varia a seconda della comunità, sebbene la tendenza sia la copertura universale.',
144
+ 'Il meningococco ACWY può essere somministrato a età leggermente diverse a seconda del protocollo autonomo.',
145
+ 'Consulta sempre il tuo pediatra o il centro sanitario della tua comunità per confermare il calendario vigente.',
146
+ ]},
147
+ { type: 'title', text: 'Come esportare il calendario sul tuo cellulare', level: 3 },
148
+ { type: 'list', items: [
149
+ 'Inserisci la data di nascita del tuo bambino nel calcolatore.',
150
+ 'Premi il pulsante "Aggiungi promemoria al cellulare" per scaricare il file .ics.',
151
+ 'Apri il file con la tua applicazione di calendario (Google Calendar, Apple Calendar, ecc.).',
152
+ 'Tutti gli eventi vaccinali verranno salvati con la data e i vaccini corrispondenti.',
153
+ ]},
154
+ { type: 'title', text: 'Effetti collaterali comuni', level: 3 },
155
+ { type: 'list', items: [
156
+ 'Arrossamento o gonfiore nel punto di iniezione: scompare in 1-2 giorni.',
157
+ 'Febbre lieve (37.5–38.5 °C): normale nelle prime 24-48 ore.',
158
+ 'Irritabilità o pianto: frequente nei neonati dopo le prime dosi.',
159
+ 'Sonnolenza o mancanza di appetito transitoria: non richiede trattamento.',
160
+ 'Reazioni gravi come l\'anafilassi sono estremamente rare (meno di 1 su un milione di dosi).',
161
+ ]},
162
+ { type: 'tip', html: 'Portare il bambino ben nutrito e con vestiti comodi agevola la visita. Dopo il vaccino, il contatto pelle a pelle o l\'allattamento al seno aiutano a calmare il dolore e l\'infiammazione in modo naturale.' },
163
+ { type: 'summary', title: 'Cosa ricordare', items: [
164
+ 'Il calendario AEP 2026 include 14 dosi fino ai 12 anni per una protezione completa.',
165
+ 'I vaccini del primo anno proteggono simultaneamente contro fino a 9 malattie gravi.',
166
+ 'Gli effetti collaterali lievi sono normali e scompaiono in 1-2 giorni.',
167
+ 'Puoi esportare tutti gli appuntamenti vaccinali nel calendario del tuo cellulare con un solo clic.',
168
+ 'Consulta sempre il tuo pediatra in caso di dubbi sul calendario della tua comunità.',
169
+ ]},
170
+ ],
171
+ faqTitle: "Domande frequenti",
172
+ faq,
173
+ bibliographyTitle: "Riferimenti",
174
+ bibliography: [
175
+ {
176
+ name: 'Asociación Española de Pediatría - Calendario Vaccinale 2026',
177
+ url: 'https://www.aeped.es/comite-vacunas/calendario-vacunaciones',
178
+ },
179
+ {
180
+ name: 'Ministero della Salute Spagnolo - Calendario Vaccinale',
181
+ url: 'https://www.sanidad.gob.es/areas/promocionPrevencion/vacunaciones/calendario/home.htm',
182
+ },
183
+ {
184
+ name: 'OMS - Immunizzazione',
185
+ url: 'https://www.who.int/it/health-topics/vaccines-and-immunization',
186
+ },
187
+ {
188
+ name: 'CDC - Programma di immunizzazione raccomandato per bambini e adolescenti',
189
+ url: 'https://www.cdc.gov/vaccines/schedules/hcp/imz/child-adolescent.html',
190
+ },
191
+ ],
192
+ howTo,
193
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
194
+ };
@@ -0,0 +1,194 @@
1
+ import type { VaccinationCalendarLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'supein-yobo-sesshu-karenda-bebi';
5
+ const title = 'スペインの予防接種スケジュール計算';
6
+ const description = 'AEP 2026スケジュールに基づき、お子様の予防接種日を正確に計算します。';
7
+ const faq = [
8
+ {
9
+ question: 'AEP 2026予防接種スケジュールとは何ですか?',
10
+ answer: 'スペイン小児科学会(AEP)が2026年に推奨する予防接種スケジュールです。出生から14歳までの赤ちゃんや子供を対象とした、すべての定期および任意の予防接種が含まれています。',
11
+ },
12
+ {
13
+ question: 'このスケジュール通りに接種させるのは義務ですか?',
14
+ answer: 'スペインでは予防接種は法的な義務ではありませんが、強く推奨されています。定期接種のワクチンは無料であり、公的な保健センターで接種を受けられます。',
15
+ },
16
+ {
17
+ question: '接種を1回逃してしまった場合はどうすればいいですか?',
18
+ answer: '接種が遅れても、最初からやり直す必要はありません。かかりつけの小児科医が、中断したところからどのように再開するかを指示してくれます。重要なのは、できるだけ早く規定の回数を完了することです。',
19
+ },
20
+ {
21
+ question: '同じ日に複数のワクチンを接種できますか?',
22
+ answer: 'はい、同じ日に複数のワクチンを接種することは一般的であり、安全です。6種混合ワクチンのように、1回の注射で6つの病気を防ぐことができる混合ワクチンもあります。',
23
+ },
24
+ {
25
+ question: '早産児にとっても予防接種は安全ですか?',
26
+ answer: '早産児は、新生児科医から特定の指示がない限り、修正月齢ではなく暦年齢(出生からの日数)に基づいて接種を受ける必要があります。感染症のリスクが高いため、優先的に接種を受けるべきです。',
27
+ },
28
+ ];
29
+ const howTo = [
30
+ {
31
+ name: '生年月日を入力する',
32
+ text: 'お子様の生年月日(日、月、年)を対応するフィールドに入力します。',
33
+ },
34
+ {
35
+ name: '次の接種予定を確認する',
36
+ text: '計算機が自動的に次の予防接種の時期と、対象となるワクチンを表示します。',
37
+ },
38
+ {
39
+ name: '全スケジュールを確認する',
40
+ text: '「過去」および「将来」のセクションを開くと、全予防接種スケジュールを確認できます。',
41
+ },
42
+ {
43
+ name: 'リマインダーを書き出す',
44
+ text: 'ボタンを押して.icsファイルをダウンロードすると、将来のすべての予定をスマホのカレンダーに追加できます。',
45
+ },
46
+ ];
47
+
48
+ const faqSchema: WithContext<FAQPage> = {
49
+ '@context': 'https://schema.org',
50
+ '@type': 'FAQPage',
51
+ mainEntity: faq.map((item) => ({
52
+ '@type': 'Question',
53
+ name: item.question,
54
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
55
+ })),
56
+ };
57
+ const howToSchema: WithContext<HowTo> = {
58
+ '@context': 'https://schema.org',
59
+ '@type': 'HowTo',
60
+ name: title,
61
+ description,
62
+ step: howTo.map((step) => ({
63
+ '@type': 'HowToStep',
64
+ name: step.name,
65
+ text: step.text,
66
+ })),
67
+ };
68
+ const appSchema: WithContext<SoftwareApplication> = {
69
+ '@context': 'https://schema.org',
70
+ '@type': 'SoftwareApplication',
71
+ name: title,
72
+ description,
73
+ applicationCategory: 'UtilitiesApplication',
74
+ operatingSystem: 'Web',
75
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
76
+ inLanguage: 'ja',
77
+ };
78
+
79
+ export const content: VaccinationCalendarLocaleContent = {
80
+ slug,
81
+ title,
82
+ description,
83
+ ui: {
84
+ labelBirthDate: 'お子様の生年月日',
85
+ placeholderDD: '日',
86
+ placeholderMM: '月',
87
+ placeholderAAAA: '年',
88
+ emptyMsg: '予防接種スケジュールを表示するには、お子様の生年月日を入力してください。',
89
+ invalidMsg: '入力された日付は無効です。',
90
+ futureMsg: '未来の生年月日は入力できません。',
91
+ labelNextAppointment: '計算された次の予定日',
92
+ btnAddReminder: 'スマホのカレンダーに追加',
93
+ btnToday: '今日です!母子手帳を忘れずに',
94
+ labelPassed: '過去の予定',
95
+ labelFuture: '将来のスケジュール',
96
+ labelStatusOk: '完了',
97
+ labelStatusPending: '予定',
98
+ labelSource: '出典: AEP 2026',
99
+ labelShare: 'この日程を共有する',
100
+ faqTitle: 'よくある質問',
101
+ bibliographyTitle: '参考文献・出典',
102
+ labelMonth: 'ヶ月',
103
+ labelMonths: 'ヶ月',
104
+ labelYear: '歳',
105
+ labelYears: '歳',
106
+ labelDay: '日',
107
+ labelDays: '日',
108
+ labelAnd: 'と',
109
+ labelVaccination: '予防接種',
110
+ labelAppointment: '接種予定',
111
+ vac_hexavalente: '6種混合',
112
+ vac_neumococo: '肺炎球菌 (VCN15/20)',
113
+ vac_meningococo_b: '髄膜炎菌B型 (Bexsero)',
114
+ vac_rotavirus: 'ロタウイルス',
115
+ vac_meningococo_acwy: '髄膜炎菌ACWY型',
116
+ vac_triple_virica: 'MR (麻疹・風疹) / おたふくかぜ混合',
117
+ vac_varicela: '水痘 (水ぼうそう)',
118
+ vac_gripe: 'インフルエンザ (季節性)',
119
+ vac_vph: 'HPV (ヒトパピローマウイルス)',
120
+ vac_tdpa: '三種混合 (百日咳・ジフテリア・破傷風)',
121
+ vac_polio_booster: 'ポリオ (追加接種)',
122
+ },
123
+ seo: [
124
+ { type: 'title', text: '予防接種計算機:次の接種はいつ?', level: 2 },
125
+ { type: 'stats', columns: 4, items: [
126
+ { value: '95%以上', label: '有効性' },
127
+ { value: '14回', label: '合計接種回数' },
128
+ { value: '公費', label: 'AEP 費用' },
129
+ { value: '高', label: '安全性' },
130
+ ]},
131
+ { type: 'tip', html: 'AEP 2026スケジュールには、髄膜炎菌B型ワクチンの対象拡大や、12歳以降の男女両方を対象としたHPVワクチンの推奨事項の更新など、重要な変更が含まれています。' },
132
+ { type: 'title', text: 'AEP 2026 スケジュールの新着情報', level: 3 },
133
+ { type: 'list', items: [
134
+ '髄膜炎菌B型 (Bexsero): 2、4、12ヶ月での「2+1回」接種が定着。',
135
+ 'HPVワクチン: 性別を問わず、12歳以上のすべての思春期男女に対象を拡大。',
136
+ '肺炎球菌: 地域の在庫状況に応じ、VCN15またはVCN20を使用するよう推奨を更新。',
137
+ 'ロタウイルス: スペイン全州で定期接種のカレンダーに経口ワクチンが導入。',
138
+ '三種混合 (Tdpa): 百日咳への免疫を維持するため、6歳と12歳での追加接種を推奨。',
139
+ ]},
140
+ { type: 'title', text: 'スペイン自治州による違い', level: 3 },
141
+ { type: 'list', items: [
142
+ '一部の州では、全国的なスケジュールに含まれていない追加のワクチンを実施している場合があります。',
143
+ 'ロタウイルスワクチンの公費負担については州によって異なりますが、全域でカバーされる傾向にあります。',
144
+ '髄膜炎菌ACWY型は、州のプロトコルにより接種年齢が若干異なる場合があります。',
145
+ '常に小児科医またはお住まいの地域の保健センターで最新のスケジュールを確認してください。',
146
+ ]},
147
+ { type: 'title', text: 'カレンダーをスマホに書き出す方法', level: 3 },
148
+ { type: 'list', items: [
149
+ '計算機にお子様の生年月日を入力します。',
150
+ '「スマホのカレンダーに追加」ボタンを押して.icsファイルをダウンロードします。',
151
+ 'GoogleカレンダーやAppleカレンダーなどのアプリでファイルを開きます。',
152
+ '日付とワクチン名が記載された予定がカレンダーに保存されます。',
153
+ ]},
154
+ { type: 'title', text: '一般的な副反応', level: 3 },
155
+ { type: 'list', items: [
156
+ '接種部位の赤みや腫れ:通常1〜2日で消失します。',
157
+ '微熱 (37.5〜38.5 °C):接種後24〜48時間は一般的です。',
158
+ '不機嫌や泣き:初期の接種後の赤ちゃんによく見られます。',
159
+ '一時的な眠気や食欲不振:特別な治療は必要ありません。',
160
+ 'アナフィラキシーなどの重篤な反応は極めて稀です(100万回に1回未満)。',
161
+ ]},
162
+ { type: 'tip', html: '接種前にお腹を満たし、着脱しやすい服を着せておくとスムーズです。接種後は抱っこや授乳をすることで、痛みを和らげ心を落ち着かせることができます。' },
163
+ { type: 'summary', title: 'ポイント', items: [
164
+ 'AEP 2026スケジュールでは、12歳までに計14回の接種を受けることで完全な保護を目指します。',
165
+ '生後1年間のワクチンは、同時に最大9つの重大な病気から赤ちゃんを守ります。',
166
+ '軽度の副反応は一般的で、1〜2日で治まります。',
167
+ 'ワンクリックですべての予定をスマホのカレンダーに書き出すことができます。',
168
+ 'お住まいの地域のスケジュールに不明点がある場合は、必ず小児科医に相談してください。',
169
+ ]},
170
+ ],
171
+ faqTitle: "よくある質問",
172
+ faq,
173
+ bibliographyTitle: "参考文献・出典",
174
+ bibliography: [
175
+ {
176
+ name: 'スペイン小児科学会 (AEP) - 2026年予防接種スケジュール',
177
+ url: 'https://www.aeped.es/comite-vacunas/calendario-vacunaciones',
178
+ },
179
+ {
180
+ name: 'スペイン保健省 - 予防接種カレンダー',
181
+ url: 'https://www.sanidad.gob.es/areas/promocionPrevencion/vacunaciones/calendario/home.htm',
182
+ },
183
+ {
184
+ name: 'WHO - 予防接種について',
185
+ url: 'https://www.who.int/ja/health-topics/vaccines-and-immunization',
186
+ },
187
+ {
188
+ name: 'CDC - 子供と思春期の推奨予防接種スケジュール',
189
+ url: 'https://www.cdc.gov/vaccines/schedules/hcp/imz/child-adolescent.html',
190
+ },
191
+ ],
192
+ howTo,
193
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
194
+ };