@jjlmoya/utils-babies 1.5.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 (115) 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/component.astro +40 -40
  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/component.astro +38 -38
  38. package/src/tool/baby-percentile-calculator/i18n/de.ts +245 -0
  39. package/src/tool/baby-percentile-calculator/i18n/id.ts +245 -0
  40. package/src/tool/baby-percentile-calculator/i18n/it.ts +245 -0
  41. package/src/tool/baby-percentile-calculator/i18n/ja.ts +245 -0
  42. package/src/tool/baby-percentile-calculator/i18n/ko.ts +245 -0
  43. package/src/tool/baby-percentile-calculator/i18n/nl.ts +245 -0
  44. package/src/tool/baby-percentile-calculator/i18n/pl.ts +245 -0
  45. package/src/tool/baby-percentile-calculator/i18n/pt.ts +245 -0
  46. package/src/tool/baby-percentile-calculator/i18n/ru.ts +245 -0
  47. package/src/tool/baby-percentile-calculator/i18n/sv.ts +245 -0
  48. package/src/tool/baby-percentile-calculator/i18n/tr.ts +245 -0
  49. package/src/tool/baby-percentile-calculator/i18n/zh.ts +245 -0
  50. package/src/tool/baby-percentile-calculator/index.ts +12 -0
  51. package/src/tool/baby-size-converter/component.astro +42 -42
  52. package/src/tool/baby-size-converter/i18n/de.ts +203 -0
  53. package/src/tool/baby-size-converter/i18n/fr.ts +1 -1
  54. package/src/tool/baby-size-converter/i18n/id.ts +203 -0
  55. package/src/tool/baby-size-converter/i18n/it.ts +203 -0
  56. package/src/tool/baby-size-converter/i18n/ja.ts +203 -0
  57. package/src/tool/baby-size-converter/i18n/ko.ts +203 -0
  58. package/src/tool/baby-size-converter/i18n/nl.ts +203 -0
  59. package/src/tool/baby-size-converter/i18n/pl.ts +203 -0
  60. package/src/tool/baby-size-converter/i18n/pt.ts +203 -0
  61. package/src/tool/baby-size-converter/i18n/ru.ts +203 -0
  62. package/src/tool/baby-size-converter/i18n/sv.ts +203 -0
  63. package/src/tool/baby-size-converter/i18n/tr.ts +203 -0
  64. package/src/tool/baby-size-converter/i18n/zh.ts +203 -0
  65. package/src/tool/baby-size-converter/index.ts +12 -0
  66. package/src/tool/fertile-days-estimator/component.astro +14 -9
  67. package/src/tool/fertile-days-estimator/i18n/de.ts +262 -0
  68. package/src/tool/fertile-days-estimator/i18n/id.ts +262 -0
  69. package/src/tool/fertile-days-estimator/i18n/it.ts +262 -0
  70. package/src/tool/fertile-days-estimator/i18n/ja.ts +262 -0
  71. package/src/tool/fertile-days-estimator/i18n/ko.ts +262 -0
  72. package/src/tool/fertile-days-estimator/i18n/nl.ts +262 -0
  73. package/src/tool/fertile-days-estimator/i18n/pl.ts +262 -0
  74. package/src/tool/fertile-days-estimator/i18n/pt.ts +262 -0
  75. package/src/tool/fertile-days-estimator/i18n/ru.ts +262 -0
  76. package/src/tool/fertile-days-estimator/i18n/sv.ts +262 -0
  77. package/src/tool/fertile-days-estimator/i18n/tr.ts +262 -0
  78. package/src/tool/fertile-days-estimator/i18n/zh.ts +262 -0
  79. package/src/tool/fertile-days-estimator/index.ts +12 -0
  80. package/src/tool/pregnancy-calculator/component.astro +55 -48
  81. package/src/tool/pregnancy-calculator/i18n/de.ts +467 -0
  82. package/src/tool/pregnancy-calculator/i18n/en.ts +140 -0
  83. package/src/tool/pregnancy-calculator/i18n/es.ts +143 -3
  84. package/src/tool/pregnancy-calculator/i18n/fr.ts +143 -3
  85. package/src/tool/pregnancy-calculator/i18n/id.ts +467 -0
  86. package/src/tool/pregnancy-calculator/i18n/it.ts +467 -0
  87. package/src/tool/pregnancy-calculator/i18n/ja.ts +467 -0
  88. package/src/tool/pregnancy-calculator/i18n/ko.ts +467 -0
  89. package/src/tool/pregnancy-calculator/i18n/nl.ts +467 -0
  90. package/src/tool/pregnancy-calculator/i18n/pl.ts +467 -0
  91. package/src/tool/pregnancy-calculator/i18n/pt.ts +467 -0
  92. package/src/tool/pregnancy-calculator/i18n/ru.ts +467 -0
  93. package/src/tool/pregnancy-calculator/i18n/sv.ts +467 -0
  94. package/src/tool/pregnancy-calculator/i18n/tr.ts +467 -0
  95. package/src/tool/pregnancy-calculator/i18n/zh.ts +467 -0
  96. package/src/tool/pregnancy-calculator/index.ts +37 -1
  97. package/src/tool/pregnancy-calculator/milestones.ts +2 -146
  98. package/src/tool/vaccination-calendar/component.astro +26 -24
  99. package/src/tool/vaccination-calendar/i18n/de.ts +194 -0
  100. package/src/tool/vaccination-calendar/i18n/en.ts +20 -0
  101. package/src/tool/vaccination-calendar/i18n/es.ts +20 -0
  102. package/src/tool/vaccination-calendar/i18n/fr.ts +99 -75
  103. package/src/tool/vaccination-calendar/i18n/id.ts +194 -0
  104. package/src/tool/vaccination-calendar/i18n/it.ts +194 -0
  105. package/src/tool/vaccination-calendar/i18n/ja.ts +194 -0
  106. package/src/tool/vaccination-calendar/i18n/ko.ts +194 -0
  107. package/src/tool/vaccination-calendar/i18n/nl.ts +194 -0
  108. package/src/tool/vaccination-calendar/i18n/pl.ts +194 -0
  109. package/src/tool/vaccination-calendar/i18n/pt.ts +194 -0
  110. package/src/tool/vaccination-calendar/i18n/ru.ts +194 -0
  111. package/src/tool/vaccination-calendar/i18n/sv.ts +194 -0
  112. package/src/tool/vaccination-calendar/i18n/tr.ts +194 -0
  113. package/src/tool/vaccination-calendar/i18n/zh.ts +194 -0
  114. package/src/tool/vaccination-calendar/index.ts +33 -1
  115. package/src/tool/vaccination-calendar/logic.ts +39 -13
@@ -0,0 +1,262 @@
1
+ import type { FertileDaysEstimatorLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'kalkulator-dni-plodnych';
5
+ const title = 'Kalkulator Dni Płodnych';
6
+ const description = 'Oblicz swoje okno płodne i datę owulacji na podstawie cyklu menstruacyjnego.';
7
+ const faq = [
8
+ {
9
+ question: 'Jak oblicza się okno płodne?',
10
+ answer: 'Okno płodne oblicza się od pierwszego dnia ostatniej miesiączki. Owulacja następuje około 14 dni przed rozpoczęciem kolejnego cyklu. Dni płodne obejmują 5 dni poprzedzających owulację oraz sam dzień owulacji.',
11
+ },
12
+ {
13
+ question: 'Jaką dokładność ma ten kalkulator?',
14
+ answer: 'Kalkulator stanowi szacunek oparty na standardowym modelu cyklu 28-dniowego (lub takim, jaki wskażesz). Jest to dane orientacyjne i może nie uwzględniać indywidualnych różnic. Dla większej dokładności połącz go z monitorowaniem podstawowej temperatury ciała lub testami owulacyjnymi.',
15
+ },
16
+ {
17
+ question: 'Co jeśli mój cykl jest nieregularny?',
18
+ answer: 'Jeśli Twoje cykle znacznie różnią się z miesiąca na miesiąc, obliczenia mogą być mniej dokładne. W takim przypadku monitorowanie temperatury podstawowej lub testy LH są bardziej wiarygodnymi metodami identyfikacji owulacji.',
19
+ },
20
+ {
21
+ question: 'Jak długo komórka jajowa przeżywa po owulacji?',
22
+ answer: 'Komórka jajowa żyje od 12 do 24 godzin. Jednak plemniki mogą przetrwać w żeńskim układzie rozrodczym do 5 dni, dlatego rzeczywiste okno płodne obejmuje kilka dni przed owulacją.',
23
+ },
24
+ {
25
+ question: 'Czy można używać tego kalkulatora jako metody antykoncepcji?',
26
+ answer: 'Nie zaleca się używania tego kalkulatora jako metody antykoncepcyjnej. Metody kalendarzowe mają znaczny wskaźnik niepowodzeń. Skonsultuj się z lekarzem lub ginekologiem w celu dobrania bezpiecznej i odpowiedniej dla Ciebie metody antykoncepcji.',
27
+ },
28
+ ];
29
+ const howTo = [
30
+ {
31
+ name: 'Wybierz pierwszy dzień ostatniej miesiączki',
32
+ text: 'Kliknij na dzień w kalendarzu odpowiadający rozpoczęciu Twojej ostatniej menstruacji.',
33
+ },
34
+ {
35
+ name: 'Dostosuj długość cyklu',
36
+ text: 'Przesuń suwak, aby wskazać, ile dni zazwyczaj trwa Twój cykl menstruacyjny.',
37
+ },
38
+ {
39
+ name: 'Sprawdź wyniki',
40
+ text: 'Kalkulator automatycznie pokazuje szacowaną datę owulacji, okno płodne oraz początek kolejnej miesiączki.',
41
+ },
42
+ {
43
+ name: 'Nawiguj po kalendarzu',
44
+ text: 'Użyj strzałek nawigacyjnych, aby zobaczyć zaznaczone dni w poprzednich lub kolejnych miesiącach.',
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: 'pl',
77
+ };
78
+
79
+ export const content: FertileDaysEstimatorLocaleContent = {
80
+ slug,
81
+ title,
82
+ description,
83
+ ui: {
84
+ step1Title: 'Kiedy zaczęła się Twoja ostatnia miesiączka?',
85
+ step1Desc: 'Wybierz w kalendarzu pierwszy dzień Twojego ostatniego cyklu menstruacyjnego.',
86
+ pulseHint: 'Kliknij dowolny dzień w kalendarzu, aby kontynuować',
87
+ step1Indicator: 'Data rozpoczęcia',
88
+ step2Indicator: 'Twój kalendarz',
89
+ sidebarTitle: 'Twój cykl',
90
+ sidebarDesc: 'Spersonalizuj wyniki, dostosowując długość cyklu.',
91
+ labelCycleLength: 'Długość cyklu',
92
+ unitDays: 'dni',
93
+ labelOvulation: 'Następna owulacja',
94
+ labelFertileWindow: 'Okno płodne',
95
+ labelNextPeriod: 'Następna miesiączka',
96
+ legendSelection: 'Twój wybór',
97
+ legendPeriod: 'Miesiączka',
98
+ legendFertile: 'Płodne',
99
+ legendOvulation: 'Owulacja',
100
+ faqTitle: 'Często zadawane pytania',
101
+ bibliographyTitle: 'Źródła',
102
+ },
103
+ seo: [
104
+ {
105
+ type: 'title',
106
+ text: 'Kalkulator Dni Płodnych: Kompletny Przewodnik po Cyklu i Owulacji',
107
+ level: 2,
108
+ },
109
+ {
110
+ type: 'summary',
111
+ title: '5 kluczowych faktów o oknie płodnym',
112
+ items: [
113
+ 'Owulacja następuje około 14 dni przed rozpoczęciem kolejnej miesiączki.',
114
+ 'Okno płodne obejmuje 5 dni przed owulacją plus sam dzień owulacji.',
115
+ 'Plemniki mogą przetrwać w żeńskim układzie rozrodczym do 5 dni.',
116
+ 'Nieregularne cykle zmniejszają wiarygodność obliczeń kalendarzowych.',
117
+ 'Połączenie tego narzędzia z pomiarem temperatury lub testami LH zwiększa dokładność.',
118
+ ],
119
+ },
120
+ {
121
+ type: 'title',
122
+ text: 'Jak działają obliczenia okna płodnego',
123
+ level: 3,
124
+ },
125
+ {
126
+ type: 'paragraph',
127
+ html: 'Metoda opiera się na formule Ogino-Knausa i standardowym modelu owulacji. Przy 28-dniowym cyklu owulacja zazwyczaj przypada około 14. dnia. Kalkulator identyfikuje ten moment i wyznacza dni najwyższej płodności wokół niego.',
128
+ },
129
+ {
130
+ type: 'stats',
131
+ columns: 3,
132
+ items: [
133
+ { value: '14 dni', label: 'Przed kolejną miesiączką' },
134
+ { value: '5 dni', label: 'Czas trwania okna płodnego' },
135
+ { value: '12-24 h', label: 'Żywotność komórki jajowej' },
136
+ ],
137
+ },
138
+ {
139
+ type: 'title',
140
+ text: 'Fazy cyklu menstruacyjnego',
141
+ level: 3,
142
+ },
143
+ {
144
+ type: 'comparative',
145
+ columns: 2,
146
+ items: [
147
+ {
148
+ title: 'Faza folikularna',
149
+ description: 'Zaczyna się od miesiączki i trwa do owulacji.',
150
+ points: [
151
+ 'Pęcherzyki jajnikowe dojrzewają pod wpływem hormonu FSH.',
152
+ 'Trwa od 10 do 14 dni w regularnych cyklach.',
153
+ 'Poziom estrogenów progresywnie wzrasta.',
154
+ ],
155
+ },
156
+ {
157
+ title: 'Faza lutealna',
158
+ description: 'Zaczyna się po owulacji i kończy miesiączką.',
159
+ points: [
160
+ 'Ciałko żółte produkuje progesteron, aby przygotować endometrium.',
161
+ 'Trwa około 14 dni w normalnych cyklach.',
162
+ 'Jeśli nie dojdzie do zapłodnienia, ciałko żółte zanika.',
163
+ ],
164
+ },
165
+ ],
166
+ },
167
+ {
168
+ type: 'tip',
169
+ html: 'Chociaż kalkulator korzysta ze standardowego modelu, cykle menstruacyjne mogą się zmieniać z miesiąca na miesiąc. Dla większej dokładności połącz to narzędzie z pomiarem podstawowej temperatury ciała lub testami owulacyjnymi.',
170
+ },
171
+ {
172
+ type: 'title',
173
+ text: 'Biologiczne objawy owulacji',
174
+ level: 3,
175
+ },
176
+ {
177
+ type: 'list',
178
+ items: [
179
+ 'Zmiany w śluzie szyjkowym: w dni płodne staje się przejrzysty i elastyczny, przypominający białko jaja.',
180
+ 'Lekki wzrost podstawowej temperatury ciała (0,2–0,4 °C) tuż po owulacji.',
181
+ 'Lekki ból lub dyskomfort po stronie aktywnego jajnika (Mittelschmerz) podczas owulacji.',
182
+ 'Niewielki wzrost libido w okolicach owulacji, wywołany zmianami hormonalnymi.',
183
+ 'Wzdęcia lub uczucie lekkiego napięcia w podbrzuszu podczas dni płodnych.',
184
+ ],
185
+ },
186
+ {
187
+ type: 'title',
188
+ text: 'Styl życia a płodność',
189
+ level: 3,
190
+ },
191
+ {
192
+ type: 'list',
193
+ items: [
194
+ 'Przewlekły stres może zaburzać owulację oraz wydłużać lub skracać cykl.',
195
+ 'Masa ciała ma bezpośredni wpływ: zarówno niedowaga, jak i nadwaga wpływają na owulację.',
196
+ 'Umiarkowana aktywność fizyczna sprzyja regularności cyklu; ekstremalny wysiłek może go hamować.',
197
+ 'Palenie tytoniu zmniejsza rezerwę jajnikową i przyspiesza menopauzę o kilka lat.',
198
+ 'Dieta bogata w kwas foliowy, żelazo i antyoksydanty wspiera zdrowie reprodukcyjne.',
199
+ ],
200
+ },
201
+ {
202
+ type: 'title',
203
+ text: 'Metody monitorowania cyklu',
204
+ level: 3,
205
+ },
206
+ {
207
+ type: 'table',
208
+ headers: ['Metoda', 'Wiarygodność', 'Koszt'],
209
+ rows: [
210
+ ['Kalkulator kalendarzowy', 'Średnia', 'Bezpłatny'],
211
+ ['Temperatura podstawowa', 'Wysoka przy wprawie', 'Niski'],
212
+ ['Testy LH z moczu', 'Wysoka', 'Umiarkowany'],
213
+ ['Cyfrowy monitor płodności', 'Bardzo wysoka', 'Wysoki'],
214
+ ['Monitoring USG', 'Maksymalna', 'Kliniczny'],
215
+ ],
216
+ },
217
+ {
218
+ type: 'glossary',
219
+ items: [
220
+ {
221
+ term: 'Owulacja (jajeczkowanie)',
222
+ definition: 'Uwolnienie dojrzałej komórki jajowej z pęcherzyka jajnikowego, wywołane skokiem hormonu luteinizującego (LH). Występuje raz w cyklu.',
223
+ },
224
+ {
225
+ term: 'Okno płodne',
226
+ definition: 'Okres najwyższego prawdopodobieństwa poczęcia, obejmujący 5 dni przed owulacją oraz sam dzień owulacji.',
227
+ },
228
+ {
229
+ term: 'Śluz szyjkowy',
230
+ definition: 'Wydzielina szyjki macicy, której tekstura zmienia się w trakcie cyklu. W dni płodne staje się przejrzysty i rozciągliwy, ułatwiając plemnikom drogę.',
231
+ },
232
+ {
233
+ term: 'Podstawowa temperatura ciała',
234
+ definition: 'Temperatura ciała w spoczynku, mierzona rano zaraz po przebudzeniu. Wzrasta nieznacznie (0,2–0,4 °C) po owulacji pod wpływem progesteronu.',
235
+ },
236
+ ],
237
+ },
238
+ ],
239
+ faqTitle: "Często zadawane pytania",
240
+ faq,
241
+ bibliographyTitle: "Źródła",
242
+ bibliography: [
243
+ {
244
+ name: 'WHO - Planowanie rodziny',
245
+ url: 'https://www.who.int/health-topics/family-planning-contraception',
246
+ },
247
+ {
248
+ name: 'American College of Obstetricians and Gynecologists - Fertility Awareness',
249
+ url: 'https://www.acog.org/womens-health/faqs/fertility-awareness-based-methods-of-family-planning',
250
+ },
251
+ {
252
+ name: 'Polskie Towarzystwo Ginekologów i Położników',
253
+ url: 'https://www.ptginp.pl',
254
+ },
255
+ {
256
+ name: 'Wilcox AJ et al. - Timing of Sexual Intercourse in Relation to Ovulation (NEJM, 1995)',
257
+ url: 'https://www.nejm.org/doi/10.1056/NEJM199512073332301',
258
+ },
259
+ ],
260
+ howTo,
261
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
262
+ };
@@ -0,0 +1,262 @@
1
+ import type { FertileDaysEstimatorLocaleContent } from '../index';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+
4
+ const slug = 'calculadora-dias-ferteis';
5
+ const title = 'Calculadora de Dias Férteis';
6
+ const description = 'Calcule a sua janela fértil e a data da ovulação de acordo com o seu ciclo menstrual.';
7
+ const faq = [
8
+ {
9
+ question: 'Como é calculada a janela fértil?',
10
+ answer: 'A janela fértil é calculada a partir do primeiro dia do seu último período. A ovulação ocorre aproximadamente 14 dias antes do início do ciclo seguinte. Os dias férteis incluem os 5 dias anteriores à ovulação e o próprio dia da ovulação.',
11
+ },
12
+ {
13
+ question: 'Qual a precisão desta calculadora?',
14
+ answer: 'A calculadora é uma estimativa baseada no modelo padrão de ciclo de 28 dias (ou o que indicar). É orientativa e pode não refletir variações individuais. Para maior precisão, combine-a com a monitorização da temperatura basal ou testes de ovulação.',
15
+ },
16
+ {
17
+ question: 'O que acontece se o meu ciclo for irregular?',
18
+ answer: 'Se os seus ciclos variarem muito de um mês para o outro, o cálculo pode ser menos preciso. Nesse caso, a monitorização da temperatura basal ou os testes de LH são métodos mais fiáveis para identificar a ovulação.',
19
+ },
20
+ {
21
+ question: 'Quanto tempo sobrevive o óvulo após a ovulação?',
22
+ answer: 'O óvulo tem uma vida útil de 12 a 24 horas. No entanto, os espermatozoides podem sobreviver até 5 dias no trato reprodutor feminino, pelo que a janela fértil real abrange vários dias antes da ovulação.',
23
+ },
24
+ {
25
+ question: 'Pode-se usar esta calculadora para evitar a gravidez?',
26
+ answer: 'Não se recomenda usar esta calculadora como método contracetivo. Os métodos baseados no calendário têm uma taxa de falha significativa. Consulte o seu médico ou ginecologista para métodos contracetivos seguros e adequados para si.',
27
+ },
28
+ ];
29
+ const howTo = [
30
+ {
31
+ name: 'Selecione o primeiro dia do seu último período',
32
+ text: 'Clique no dia do calendário que corresponde ao início da sua última menstruação.',
33
+ },
34
+ {
35
+ name: 'Ajuste a duração do seu ciclo',
36
+ text: 'Mova o seletor para indicar quantos dias dura habitualmente o seu ciclo menstrual.',
37
+ },
38
+ {
39
+ name: 'Consulte os resultados',
40
+ text: 'A calculadora mostra automaticamente a data da ovulação estimada, a janela fértil e o início do período seguinte.',
41
+ },
42
+ {
43
+ name: 'Navegue pelo calendário',
44
+ text: 'Use as setas de navegação para ver os dias marcados em meses anteriores ou posteriores.',
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: 'pt',
77
+ };
78
+
79
+ export const content: FertileDaysEstimatorLocaleContent = {
80
+ slug,
81
+ title,
82
+ description,
83
+ ui: {
84
+ step1Title: 'Quando começou a sua última regra?',
85
+ step1Desc: 'Selecione o primeiro dia do seu último período menstrual no calendário.',
86
+ pulseHint: 'Clique num dia do calendário para continuar',
87
+ step1Indicator: 'Data de Início',
88
+ step2Indicator: 'O Seu Calendário',
89
+ sidebarTitle: 'O Seu Ciclo',
90
+ sidebarDesc: 'Personalize os resultados ajustando a duração do seu ciclo.',
91
+ labelCycleLength: 'Duração do Ciclo',
92
+ unitDays: 'dias',
93
+ labelOvulation: 'Próxima Ovulação',
94
+ labelFertileWindow: 'Janela Fértil',
95
+ labelNextPeriod: 'Próximo Período',
96
+ legendSelection: 'A sua seleção',
97
+ legendPeriod: 'Período',
98
+ legendFertile: 'Fértil',
99
+ legendOvulation: 'Ovulação',
100
+ faqTitle: 'Perguntas frequentes',
101
+ bibliographyTitle: 'Referências',
102
+ },
103
+ seo: [
104
+ {
105
+ type: 'title',
106
+ text: 'Calculadora de Dias Fértiles: Guia Completo sobre o Ciclo e a Ovulação',
107
+ level: 2,
108
+ },
109
+ {
110
+ type: 'summary',
111
+ title: '5 pontos chave sobre a janela fértil',
112
+ items: [
113
+ 'A ovulação ocorre aproximadamente 14 dias antes do início do período seguinte.',
114
+ 'A janela fértil inclui os 5 dias anteriores à ovulação mais o próprio dia da ovulação.',
115
+ 'Os espermatozoides podem sobreviver até 5 dias no trato reprodutor feminino.',
116
+ 'Os ciclos irregulares reduzem a fiabilidade do cálculo baseado no calendário.',
117
+ 'Combinar esta ferramenta com temperatura basal ou testes de LH aumenta a precisão.',
118
+ ],
119
+ },
120
+ {
121
+ type: 'title',
122
+ text: 'Como funciona o cálculo da janela fértil',
123
+ level: 3,
124
+ },
125
+ {
126
+ type: 'paragraph',
127
+ html: 'O método baseia-se na regra de Ogino-Knaus e no modelo padrão de ovulação. Com um ciclo de 28 dias, a ovulação costuma produzir-se por volta do dia 14. A calculadora identifica este ponto e marca os dias de maior fertilidade ao seu redor.',
128
+ },
129
+ {
130
+ type: 'stats',
131
+ columns: 3,
132
+ items: [
133
+ { value: '14 dias', label: 'Antes do período seguinte' },
134
+ { value: '5 dias', label: 'Duração da janela fértil' },
135
+ { value: '12-24 h', label: 'Vida útil do óvulo' },
136
+ ],
137
+ },
138
+ {
139
+ type: 'title',
140
+ text: 'Fases do ciclo menstrual',
141
+ level: 3,
142
+ },
143
+ {
144
+ type: 'comparative',
145
+ columns: 2,
146
+ items: [
147
+ {
148
+ title: 'Fase folicular',
149
+ description: 'Começa com a menstruação e dura até à ovulação.',
150
+ points: [
151
+ 'Os folículos ováricos amadurecem sob a influência da FSH.',
152
+ 'Dura entre 10 e 14 dias em ciclos regulares.',
153
+ 'Os níveis de estrogénios aumentam progressivamente.',
154
+ ],
155
+ },
156
+ {
157
+ title: 'Fase lútea',
158
+ description: 'Começa após a ovulação e termina com a menstruação.',
159
+ points: [
160
+ 'O corpo lúteo produz progesterona para preparar o endométrio.',
161
+ 'Dura aproximadamente 14 dias em ciclos normais.',
162
+ 'Se não houver fertilização, o corpo lúteo degenera.',
163
+ ],
164
+ },
165
+ ],
166
+ },
167
+ {
168
+ type: 'tip',
169
+ html: 'Embora a calculadora utilize um modelo padrão, os ciclos menstruais podem variar mês a mês. Para uma maior precisão, combine esta ferramenta com a monitorização da temperatura basal ou os testes de ovulação.',
170
+ },
171
+ {
172
+ type: 'title',
173
+ text: 'Sinais biológicos da ovulação',
174
+ level: 3,
175
+ },
176
+ {
177
+ type: 'list',
178
+ items: [
179
+ 'Alterações no muco cervical: nos dias férteis torna-se transparente e elástico, semelhante à clara de ovo.',
180
+ 'Aumento ligeiro da temperatura basal corporal (0,2–0,4 °C) logo após a ovulação.',
181
+ 'Dor ou desconforto ligeiro no lado do ovário activo (Mittelschmerz) durante a ovulação.',
182
+ 'Ligeiro aumento da libido perto da ovulação, mediado por alterações hormonais.',
183
+ 'Distensão ou sensação de plenitude abdominal ligeira durante os dias férteis.',
184
+ ],
185
+ },
186
+ {
187
+ type: 'title',
188
+ text: 'Estilo de vida e fertilidade',
189
+ level: 3,
190
+ },
191
+ {
192
+ type: 'list',
193
+ items: [
194
+ 'O stress crónico pode alterar a ovulação e alongar ou encurtar o ciclo menstrual.',
195
+ 'O peso corporal influencia directamente: tanto o baixo peso como o excesso de peso afectam a ovulação.',
196
+ 'O exercício moderado favorece a regularidade do ciclo; o exercício extremo pode suprimi-lo.',
197
+ 'O tabaco reduz a reserva ovárica e antecipa a menopausa em vários anos.',
198
+ 'Uma dieta rica em ácido fólico, ferro e antioxidantes apoia a saúde reprodutiva.',
199
+ ],
200
+ },
201
+ {
202
+ type: 'title',
203
+ text: 'Métodos de monitorização do ciclo',
204
+ level: 3,
205
+ },
206
+ {
207
+ type: 'table',
208
+ headers: ['Método', 'Fiabilidade', 'Custo'],
209
+ rows: [
210
+ ['Calculadora de calendário', 'Média', 'Gratuito'],
211
+ ['Temperatura basal corporal', 'Alta com prática', 'Baixo'],
212
+ ['Teste de LH na urina', 'Alta', 'Moderado'],
213
+ ['Monitor de fertilidade digital', 'Muito alta', 'Alto'],
214
+ ['Ecografia folicular', 'Máxima', 'Clínica'],
215
+ ],
216
+ },
217
+ {
218
+ type: 'glossary',
219
+ items: [
220
+ {
221
+ term: 'Ovulação',
222
+ definition: 'Libertação do óvulo maduro a partir do folículo ovárico, desencadeada por um pico de hormona luteinizante (LH). Ocorre uma vez por ciclo.',
223
+ },
224
+ {
225
+ term: 'Janela fértil',
226
+ definition: 'Período de maior probabilidade de conceção, que abrange os 5 dias anteriores à ovulação mais o dia da ovulação.',
227
+ },
228
+ {
229
+ term: 'Muco cervical',
230
+ definition: 'Secreção do colo uterino cuja textura varia ao longo do ciclo. Nos dias férteis torna-se transparente, elástico e filante, facilitando a passagem dos espermatozoides.',
231
+ },
232
+ {
233
+ term: 'Temperatura basal corporal',
234
+ definition: 'Temperatura corporal em repouso absoluto, medida ao acordar antes de qualquer actividade. Aumenta ligeiramente (0,2–0,4 °C) após a ovulação por efeito da progesterona.',
235
+ },
236
+ ],
237
+ },
238
+ ],
239
+ faqTitle: "Perguntas frequentes",
240
+ faq,
241
+ bibliographyTitle: "Referências",
242
+ bibliography: [
243
+ {
244
+ name: 'OMS - Planeamento familiar',
245
+ url: 'https://www.who.int/pt/health-topics/family-planning-contraception',
246
+ },
247
+ {
248
+ name: 'American College of Obstetricians and Gynecologists - Fertility Awareness',
249
+ url: 'https://www.acog.org/womens-health/faqs/fertility-awareness-based-methods-of-family-planning',
250
+ },
251
+ {
252
+ name: 'Sociedade Portuguesa de Medicina da Reprodução',
253
+ url: 'https://spmr.pt',
254
+ },
255
+ {
256
+ name: 'Wilcox AJ et al. - Timing of Sexual Intercourse in Relation to Ovulation (NEJM, 1995)',
257
+ url: 'https://www.nejm.org/doi/10.1056/NEJM199512073332301',
258
+ },
259
+ ],
260
+ howTo,
261
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
262
+ };