@jjlmoya/utils-astronomy 1.24.0 → 1.26.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 (70) hide show
  1. package/package.json +2 -2
  2. package/src/category/i18n/de.ts +57 -57
  3. package/src/category/i18n/en.ts +1 -1
  4. package/src/category/i18n/es.ts +1 -1
  5. package/src/category/i18n/fr.ts +58 -58
  6. package/src/category/i18n/it.ts +1 -1
  7. package/src/category/i18n/nl.ts +57 -57
  8. package/src/category/i18n/pl.ts +57 -57
  9. package/src/category/i18n/pt.ts +1 -1
  10. package/src/category/i18n/ru.ts +57 -57
  11. package/src/category/i18n/sv.ts +57 -57
  12. package/src/category/i18n/zh.ts +57 -57
  13. package/src/category/index.ts +30 -30
  14. package/src/category/seo.astro +15 -15
  15. package/src/components/PreviewNavSidebar.astro +116 -116
  16. package/src/components/PreviewToolbar.astro +143 -143
  17. package/src/data.ts +16 -16
  18. package/src/env.d.ts +5 -5
  19. package/src/index.ts +22 -22
  20. package/src/layouts/PreviewLayout.astro +122 -122
  21. package/src/pages/[locale].astro +251 -251
  22. package/src/pages/index.astro +4 -4
  23. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  24. package/src/tests/category_seo_quality.test.ts +74 -0
  25. package/src/tests/faq_count.test.ts +1 -1
  26. package/src/tests/mocks/astro_mock.js +2 -2
  27. package/src/tests/no_h1_in_components.test.ts +1 -1
  28. package/src/tests/seo_length.test.ts +1 -1
  29. package/src/tests/seo_parity.test.ts +2 -2
  30. package/src/tests/seo_translation_completeness.test.ts +75 -0
  31. package/src/tests/seo_wellformed_export.test.ts +65 -0
  32. package/src/tests/tool_structure.test.ts +71 -71
  33. package/src/tests/tool_validation.test.ts +146 -146
  34. package/src/tool/bortleVisualizer/bibliography.astro +14 -14
  35. package/src/tool/bortleVisualizer/bibliography.ts +8 -8
  36. package/src/tool/bortleVisualizer/i18n/pl.ts +159 -159
  37. package/src/tool/bortleVisualizer/i18n/ru.ts +159 -159
  38. package/src/tool/deepSpaceScope/bibliography.astro +14 -14
  39. package/src/tool/deepSpaceScope/component.astro +382 -382
  40. package/src/tool/deepSpaceScope/i18n/de.ts +172 -172
  41. package/src/tool/deepSpaceScope/i18n/ko.ts +172 -172
  42. package/src/tool/deepSpaceScope/i18n/pl.ts +172 -172
  43. package/src/tool/deepSpaceScope/i18n/ru.ts +172 -172
  44. package/src/tool/deepSpaceScope/i18n/zh.ts +172 -172
  45. package/src/tool/smartEyepieceCalculator/component.astro +125 -125
  46. package/src/tool/smartEyepieceCalculator/i18n/fr.ts +165 -165
  47. package/src/tool/smartEyepieceCalculator/i18n/ru.ts +165 -165
  48. package/src/tool/smartEyepieceCalculator/i18n/zh.ts +165 -165
  49. package/src/tool/starExposureCalculator/bibliography.astro +14 -14
  50. package/src/tool/starExposureCalculator/bibliography.ts +7 -7
  51. package/src/tool/starExposureCalculator/component.astro +249 -249
  52. package/src/tool/starExposureCalculator/i18n/pl.ts +156 -156
  53. package/src/tool/starExposureCalculator/i18n/ru.ts +156 -156
  54. package/src/tool/telescopeResolution/bibliography.astro +14 -14
  55. package/src/tool/telescopeResolution/component.astro +222 -222
  56. package/src/tool/telescopeResolution/i18n/de.ts +169 -169
  57. package/src/tool/telescopeResolution/i18n/en.ts +169 -169
  58. package/src/tool/telescopeResolution/i18n/es.ts +169 -169
  59. package/src/tool/telescopeResolution/i18n/fr.ts +169 -169
  60. package/src/tool/telescopeResolution/i18n/id.ts +169 -169
  61. package/src/tool/telescopeResolution/i18n/it.ts +169 -169
  62. package/src/tool/telescopeResolution/i18n/ja.ts +169 -169
  63. package/src/tool/telescopeResolution/i18n/ko.ts +169 -169
  64. package/src/tool/telescopeResolution/i18n/nl.ts +169 -169
  65. package/src/tool/telescopeResolution/i18n/pl.ts +169 -169
  66. package/src/tool/telescopeResolution/i18n/pt.ts +169 -169
  67. package/src/tool/telescopeResolution/i18n/ru.ts +169 -169
  68. package/src/tool/telescopeResolution/i18n/sv.ts +169 -169
  69. package/src/tool/telescopeResolution/i18n/tr.ts +169 -169
  70. package/src/tool/telescopeResolution/i18n/zh.ts +169 -169
@@ -1,169 +1,169 @@
1
- import { bibliography } from '../bibliography';
2
- import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
- import type { TelescopeResolutionUI, TelescopeResolutionLocaleContent } from '../index';
4
-
5
- const slug = 'kalkulator-rozdzielczosci-teleskopu';
6
- const title = 'Kalkulator zdolności rozdzielczej teleskopu (granica Dawesa)';
7
- const description = 'Oblicz zdolność rozdzielczą swojego teleskopu za pomocą granicy Dawesa i kryterium Rayleigha. Sprawdź maksymalne użyteczne powiększenie i wpływ seeingu atmosferycznego.';
8
-
9
- const ui: TelescopeResolutionUI = {
10
- toolTitle: 'Rozdzielczość teleskopu',
11
- apertureLabel: 'Apertura teleskopu',
12
- unitLabel: 'Jednostka',
13
- mmUnit: 'Milimetry (mm)',
14
- inUnit: 'Cale (in)',
15
- presetsLabel: 'Popularne modele',
16
- presetsPlaceholder: '- Wybierz model -',
17
- seeingLabel: 'Jakość nieba (Seeing)',
18
- dawesLabel: 'Użyteczna rozdzielczość (Dawes)',
19
- arcsecUnit: 'sekund łuku',
20
- rayleighLabel: 'Kryterium Rayleigha',
21
- maxMagLabel: 'Maks. użyteczne powiększenie',
22
- seeingAlertPrefix: 'Atmosfera ogranicza: Dzisiejszy seeing',
23
- seeingAlertSuffix: 'uniemożliwi Ci wykorzystanie pełnego potencjału teleskopu',
24
- simLabel: 'Symulacja: Gwiazdy podwójne',
25
- simExplanation: 'Dawes rozdziela punktowe gwiazdy; Rayleigh definiuje szczegóły planetarne.',
26
- presets: [
27
- { value: '70', label: '70mm (Refraktor dla początkujących)' },
28
- { value: '114', label: '114mm (4.5") Newton' },
29
- { value: '150', label: '150mm (6") Dobsonian' },
30
- { value: '200', label: '200mm (8") Dobsonian' },
31
- { value: '254', label: '254mm (10") Dobsonian' },
32
- { value: '304', label: '304mm (12") Profesjonalny' },
33
- ],
34
- };
35
-
36
- const faq: TelescopeResolutionLocaleContent['faq'] = [
37
- {
38
- question: 'Co to jest granica Dawesa?',
39
- answer: 'Granica Dawesa to empiryczne kryterium zdolności rozdzielczej teleskopu, obliczane jako 116/D (gdzie D to apertura w mm). Reprezentuje minimalną separację w sekundach łuku między dwiema gwiazdami o podobnej jasności, które doświadczony obserwator może odróżnić jako dwa osobne punkty. Została zaproponowana przez brytyjskiego astronoma Williama Dawesa w XIX wieku.',
40
- },
41
- {
42
- question: 'Jaka jest różnica między granicą Dawesa a kryterium Rayleigha?',
43
- answer: 'Granica Dawesa (116/D) jest empiryczna i oparta na ludzkim wzroku w obserwacjach gwiazd podwójnych. Kryterium Rayleigha (138/D) jest fizyczne, oparte na falowej naturze światła. Rayleigh jest bardziej rygorystyczny i lepiej opisuje detale na powierzchniach planet (pasy Jowisza, kratery księżycowe). Dawes jest bardziej użyteczny przy rozdzielaniu gwiazd podwójnych.',
44
- },
45
- {
46
- question: 'Co to jest seeing i jak na mnie wpływa?',
47
- answer: 'Seeing to miara turbulencji atmosferycznych, które zniekształcają światło przechodzące przez powietrze. W przeciętną noc seeing ogranicza rozdzielczość do 1-2 sekund łuku, co oznacza, że teleskopy większe niż ok. 115 mm nie mogą przekroczyć tego limitu atmosferycznego. Doskonały seeing (0.5") zdarza się rzadko i występuje głównie w wysokich górach.',
48
- },
49
- {
50
- question: 'Jakie jest maksymalne użyteczne powiększenie teleskopu?',
51
- answer: 'Złota zasada to 2x apertura w mm (lub 50x na cal). Teleskop 150 mm ma użyteczne maksimum 300x. Przekroczenie tego limitu sprawia, że obraz jest większy, ale bez dodatkowych detali - staje się jedynie ciemniejszy i bardziej rozmazany. Seeing często ogranicza tę wartość do 100-150x w przeciętne noce.',
52
- },
53
- ];
54
-
55
- const howTo: TelescopeResolutionLocaleContent['howTo'] = [
56
- { name: '1. Wprowadź aperturę', text: 'Wpisz średnicę lustra głównego lub soczewki swojego teleskopu. Możesz wybrać popularny model z listy.' },
57
- { name: '2. Dostosuj seeing', text: 'Przesuń suwak seeingu, aby zasymulować turbulencje atmosferyczne podczas nocy obserwacyjnej.' },
58
- { name: '3. Interpretuj wyniki', text: 'Obserwuj granice Dawesa i Rayleigha w sekundach łuku. Im niższa wartość, tym wyższa rozdzielczość.' },
59
- { name: '4. Sprawdź ograniczenia seeingu', text: 'Jeśli pojawi się alert seeingu, oznacza to, że tej nocy atmosfera ogranicza możliwości Twojego teleskopu.' },
60
- ];
61
-
62
- const seo: TelescopeResolutionLocaleContent['seo'] = [
63
- {
64
- type: 'summary',
65
- title: 'Kluczowe punkty dotyczące rozdzielczości teleskopu',
66
- items: [
67
- 'Granica Dawesa (116/D mm) określa minimalną separację między dwiema gwiazdami podwójnymi.',
68
- 'Kryterium Rayleigha (138/D mm) definiuje najmniejszy widoczny detal na powierzchniach planet.',
69
- 'Seeing atmosferyczny (typowo 1-2") zazwyczaj przewyższa teoretyczny limit teleskopów większych niż 115 mm.',
70
- 'Maksymalne użyteczne powiększenie to 2x apertura w mm; przekroczenie go tylko przyciemnia obraz.',
71
- ],
72
- },
73
- { type: 'title', text: 'Rozdzielczość astronomiczna: Przewodnik po granicy Dawesa i Rayleigha', level: 2 },
74
- {
75
- type: 'paragraph',
76
- html: 'Moc teleskopu nie mierzy się tym, jak bardzo potrafi on powiększyć obraz, ale tym, jak wiele szczegółów potrafi rozdzielić. Ta zdolność, znana jako <strong>zdolność rozdzielcza</strong>, zależy niemal wyłącznie od średnicy apertury. Im większe lustro lub soczewka, tym mniejsze detale można rozróżnić.',
77
- },
78
- {
79
- type: 'paragraph',
80
- html: 'Istnieją dwa główne kryteria określające tę rozdzielczość. <strong>Granica Dawesa</strong> (116/D sek łuku) jest empiryczna, zdefiniowana przez astronoma Williama Dawesa na podstawie obserwacji gwiazd podwójnych. <strong>Kryterium Rayleigha</strong> (138/D sek łuku) jest teoretyczne, wywodzące się z fizyki falowej dyfrakcji światła. Oba potwierdzają, że apertura jest czynnikiem decydującym.',
81
- },
82
- { type: 'title', text: 'Seeing: Bariera atmosferyczna', level: 2 },
83
- {
84
- type: 'paragraph',
85
- html: 'Możesz posiadać największy teleskop na świecie, ale jeśli atmosfera jest niestabilna, nie zobaczysz drobnych szczegółów. <strong>Seeing</strong> to miara turbulencji atmosferycznych. W przeciętną noc atmosfera ogranicza rozdzielczość do około 1-1,5 sekundy łuku. Dla teleskopów większych niż 115 mm wąskim gardłem jest seeing, a nie optyka.',
86
- },
87
- {
88
- type: 'table',
89
- headers: ['Apertura', 'Dawes (")', 'Rayleigh (")', 'Maks. Pow.', 'Wymagany Seeing'],
90
- rows: [
91
- ['70mm', '1.66"', '1.97"', '140x', '< 1.7"'],
92
- ['100mm', '1.16"', '1.38"', '200x', '< 1.2"'],
93
- ['150mm', '0.77"', '0.92"', '300x', '< 0.8"'],
94
- ['200mm', '0.58"', '0.69"', '400x', '< 0.6"'],
95
- ['300mm', '0.39"', '0.46"', '600x', '< 0.4"'],
96
- ['400mm', '0.29"', '0.35"', '800x', '< 0.3"'],
97
- ],
98
- },
99
- {
100
- type: 'tip',
101
- title: 'Aklimatyzacja termiczna: Sekret szczegółowego obrazu',
102
- html: 'Największym wrogiem rozdzielczości nie jest seeing zewnętrzny, lecz <strong>seeing lokalny</strong> wewnątrz tubusu teleskopu. Ciepłe powietrze pozostające w środku tworzy prądy konwekcyjne niszczące detal. Pozwól teleskopowi aklimatyzować się do temperatury zewnętrznej przez co najmniej 30-60 minut przed obserwacjami w dużym powiększeniu.',
103
- },
104
- { type: 'title', text: 'Kolimacja: Ustawienie uwalniające potencjał', level: 2 },
105
- {
106
- type: 'paragraph',
107
- html: 'Źle skolimowany teleskop (z nierównoległymi lustrami) nigdy nie osiągnie granicy Dawesa. <strong>Kolimacja</strong> to proces idealnego ustawienia luster względem wyciągu okularowego. W teleskopach zwierciadlanych (Newtony, Dobsony) jest to kluczowe zadanie okresowe. Wykonaj "test na gwiazdę", aby sprawdzić poprawność.',
108
- },
109
- { type: 'title', text: 'Praktyczne wskazówki dla maksymalnej rozdzielczości', level: 2 },
110
- {
111
- type: 'paragraph',
112
- html: 'Zawsze czekaj na równowagę termiczną instrumentu. Unikaj obserwacji nad dachami lub asfaltem oddającym ciepło. Wybieraj noce po przejściu frontów chłodnych dla stabilniejszego powietrza. Używaj najwyższego powiększenia, które daje jeszcze stabilny obraz. Pamiętaj o <strong>adaptacji do ciemności</strong>: daj oczom 20 minut na maksymalizację czułości na detale planetarne.',
113
- },
114
- {
115
- type: 'stats',
116
- columns: 2,
117
- items: [
118
- { label: 'Dawes 150mm', value: '0.77"', icon: 'mdi:flare' },
119
- { label: 'Dawes 300mm', value: '0.39"', icon: 'mdi:flare' },
120
- { label: 'Dobry Seeing', value: '0.5 - 1.0"', icon: 'mdi:weather-windy' },
121
- { label: 'Średni Seeing', value: '1.0 - 2.0"', icon: 'mdi:weather-cloudy' },
122
- ],
123
- },
124
- ];
125
-
126
- const faqSchema: WithContext<FAQPage> = {
127
- '@context': 'https://schema.org',
128
- '@type': 'FAQPage',
129
- mainEntity: faq.map((item) => ({
130
- '@type': 'Question',
131
- name: item.question,
132
- acceptedAnswer: { '@type': 'Answer', text: item.answer },
133
- })),
134
- };
135
-
136
- const howToSchema: WithContext<HowTo> = {
137
- '@context': 'https://schema.org',
138
- '@type': 'HowTo',
139
- name: title,
140
- description,
141
- step: howTo.map((step) => ({
142
- '@type': 'HowToStep',
143
- name: step.name,
144
- text: step.text,
145
- })),
146
- };
147
-
148
- const appSchema: WithContext<SoftwareApplication> = {
149
- '@context': 'https://schema.org',
150
- '@type': 'SoftwareApplication',
151
- name: title,
152
- description,
153
- applicationCategory: 'UtilitiesApplication',
154
- operatingSystem: 'Web',
155
- offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
156
- inLanguage: 'pl',
157
- };
158
-
159
- export const content: TelescopeResolutionLocaleContent = {
160
- slug,
161
- title,
162
- description,
163
- ui,
164
- seo,
165
- faq,
166
- bibliography,
167
- howTo,
168
- schemas: [faqSchema as any, howToSchema as any, appSchema],
169
- };
1
+ import { bibliography } from '../bibliography';
2
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
3
+ import type { TelescopeResolutionUI, TelescopeResolutionLocaleContent } from '../index';
4
+
5
+ const slug = 'kalkulator-rozdzielczosci-teleskopu';
6
+ const title = 'Kalkulator zdolności rozdzielczej teleskopu (granica Dawesa)';
7
+ const description = 'Oblicz zdolność rozdzielczą swojego teleskopu za pomocą granicy Dawesa i kryterium Rayleigha. Sprawdź maksymalne użyteczne powiększenie i wpływ seeingu atmosferycznego.';
8
+
9
+ const ui: TelescopeResolutionUI = {
10
+ toolTitle: 'Rozdzielczość teleskopu',
11
+ apertureLabel: 'Apertura teleskopu',
12
+ unitLabel: 'Jednostka',
13
+ mmUnit: 'Milimetry (mm)',
14
+ inUnit: 'Cale (in)',
15
+ presetsLabel: 'Popularne modele',
16
+ presetsPlaceholder: '- Wybierz model -',
17
+ seeingLabel: 'Jakość nieba (Seeing)',
18
+ dawesLabel: 'Użyteczna rozdzielczość (Dawes)',
19
+ arcsecUnit: 'sekund łuku',
20
+ rayleighLabel: 'Kryterium Rayleigha',
21
+ maxMagLabel: 'Maks. użyteczne powiększenie',
22
+ seeingAlertPrefix: 'Atmosfera ogranicza: Dzisiejszy seeing',
23
+ seeingAlertSuffix: 'uniemożliwi Ci wykorzystanie pełnego potencjału teleskopu',
24
+ simLabel: 'Symulacja: Gwiazdy podwójne',
25
+ simExplanation: 'Dawes rozdziela punktowe gwiazdy; Rayleigh definiuje szczegóły planetarne.',
26
+ presets: [
27
+ { value: '70', label: '70mm (Refraktor dla początkujących)' },
28
+ { value: '114', label: '114mm (4.5") Newton' },
29
+ { value: '150', label: '150mm (6") Dobsonian' },
30
+ { value: '200', label: '200mm (8") Dobsonian' },
31
+ { value: '254', label: '254mm (10") Dobsonian' },
32
+ { value: '304', label: '304mm (12") Profesjonalny' },
33
+ ],
34
+ };
35
+
36
+ const faq: TelescopeResolutionLocaleContent['faq'] = [
37
+ {
38
+ question: 'Co to jest granica Dawesa?',
39
+ answer: 'Granica Dawesa to empiryczne kryterium zdolności rozdzielczej teleskopu, obliczane jako 116/D (gdzie D to apertura w mm). Reprezentuje minimalną separację w sekundach łuku między dwiema gwiazdami o podobnej jasności, które doświadczony obserwator może odróżnić jako dwa osobne punkty. Została zaproponowana przez brytyjskiego astronoma Williama Dawesa w XIX wieku.',
40
+ },
41
+ {
42
+ question: 'Jaka jest różnica między granicą Dawesa a kryterium Rayleigha?',
43
+ answer: 'Granica Dawesa (116/D) jest empiryczna i oparta na ludzkim wzroku w obserwacjach gwiazd podwójnych. Kryterium Rayleigha (138/D) jest fizyczne, oparte na falowej naturze światła. Rayleigh jest bardziej rygorystyczny i lepiej opisuje detale na powierzchniach planet (pasy Jowisza, kratery księżycowe). Dawes jest bardziej użyteczny przy rozdzielaniu gwiazd podwójnych.',
44
+ },
45
+ {
46
+ question: 'Co to jest seeing i jak na mnie wpływa?',
47
+ answer: 'Seeing to miara turbulencji atmosferycznych, które zniekształcają światło przechodzące przez powietrze. W przeciętną noc seeing ogranicza rozdzielczość do 1-2 sekund łuku, co oznacza, że teleskopy większe niż ok. 115 mm nie mogą przekroczyć tego limitu atmosferycznego. Doskonały seeing (0.5") zdarza się rzadko i występuje głównie w wysokich górach.',
48
+ },
49
+ {
50
+ question: 'Jakie jest maksymalne użyteczne powiększenie teleskopu?',
51
+ answer: 'Złota zasada to 2x apertura w mm (lub 50x na cal). Teleskop 150 mm ma użyteczne maksimum 300x. Przekroczenie tego limitu sprawia, że obraz jest większy, ale bez dodatkowych detali - staje się jedynie ciemniejszy i bardziej rozmazany. Seeing często ogranicza tę wartość do 100-150x w przeciętne noce.',
52
+ },
53
+ ];
54
+
55
+ const howTo: TelescopeResolutionLocaleContent['howTo'] = [
56
+ { name: '1. Wprowadź aperturę', text: 'Wpisz średnicę lustra głównego lub soczewki swojego teleskopu. Możesz wybrać popularny model z listy.' },
57
+ { name: '2. Dostosuj seeing', text: 'Przesuń suwak seeingu, aby zasymulować turbulencje atmosferyczne podczas nocy obserwacyjnej.' },
58
+ { name: '3. Interpretuj wyniki', text: 'Obserwuj granice Dawesa i Rayleigha w sekundach łuku. Im niższa wartość, tym wyższa rozdzielczość.' },
59
+ { name: '4. Sprawdź ograniczenia seeingu', text: 'Jeśli pojawi się alert seeingu, oznacza to, że tej nocy atmosfera ogranicza możliwości Twojego teleskopu.' },
60
+ ];
61
+
62
+ const seo: TelescopeResolutionLocaleContent['seo'] = [
63
+ {
64
+ type: 'summary',
65
+ title: 'Kluczowe punkty dotyczące rozdzielczości teleskopu',
66
+ items: [
67
+ 'Granica Dawesa (116/D mm) określa minimalną separację między dwiema gwiazdami podwójnymi.',
68
+ 'Kryterium Rayleigha (138/D mm) definiuje najmniejszy widoczny detal na powierzchniach planet.',
69
+ 'Seeing atmosferyczny (typowo 1-2") zazwyczaj przewyższa teoretyczny limit teleskopów większych niż 115 mm.',
70
+ 'Maksymalne użyteczne powiększenie to 2x apertura w mm; przekroczenie go tylko przyciemnia obraz.',
71
+ ],
72
+ },
73
+ { type: 'title', text: 'Rozdzielczość astronomiczna: Przewodnik po granicy Dawesa i Rayleigha', level: 2 },
74
+ {
75
+ type: 'paragraph',
76
+ html: 'Moc teleskopu nie mierzy się tym, jak bardzo potrafi on powiększyć obraz, ale tym, jak wiele szczegółów potrafi rozdzielić. Ta zdolność, znana jako <strong>zdolność rozdzielcza</strong>, zależy niemal wyłącznie od średnicy apertury. Im większe lustro lub soczewka, tym mniejsze detale można rozróżnić.',
77
+ },
78
+ {
79
+ type: 'paragraph',
80
+ html: 'Istnieją dwa główne kryteria określające tę rozdzielczość. <strong>Granica Dawesa</strong> (116/D sek łuku) jest empiryczna, zdefiniowana przez astronoma Williama Dawesa na podstawie obserwacji gwiazd podwójnych. <strong>Kryterium Rayleigha</strong> (138/D sek łuku) jest teoretyczne, wywodzące się z fizyki falowej dyfrakcji światła. Oba potwierdzają, że apertura jest czynnikiem decydującym.',
81
+ },
82
+ { type: 'title', text: 'Seeing: Bariera atmosferyczna', level: 2 },
83
+ {
84
+ type: 'paragraph',
85
+ html: 'Możesz posiadać największy teleskop na świecie, ale jeśli atmosfera jest niestabilna, nie zobaczysz drobnych szczegółów. <strong>Seeing</strong> to miara turbulencji atmosferycznych. W przeciętną noc atmosfera ogranicza rozdzielczość do około 1-1,5 sekundy łuku. Dla teleskopów większych niż 115 mm wąskim gardłem jest seeing, a nie optyka.',
86
+ },
87
+ {
88
+ type: 'table',
89
+ headers: ['Apertura', 'Dawes (")', 'Rayleigh (")', 'Maks. Pow.', 'Wymagany Seeing'],
90
+ rows: [
91
+ ['70mm', '1.66"', '1.97"', '140x', '< 1.7"'],
92
+ ['100mm', '1.16"', '1.38"', '200x', '< 1.2"'],
93
+ ['150mm', '0.77"', '0.92"', '300x', '< 0.8"'],
94
+ ['200mm', '0.58"', '0.69"', '400x', '< 0.6"'],
95
+ ['300mm', '0.39"', '0.46"', '600x', '< 0.4"'],
96
+ ['400mm', '0.29"', '0.35"', '800x', '< 0.3"'],
97
+ ],
98
+ },
99
+ {
100
+ type: 'tip',
101
+ title: 'Aklimatyzacja termiczna: Sekret szczegółowego obrazu',
102
+ html: 'Największym wrogiem rozdzielczości nie jest seeing zewnętrzny, lecz <strong>seeing lokalny</strong> wewnątrz tubusu teleskopu. Ciepłe powietrze pozostające w środku tworzy prądy konwekcyjne niszczące detal. Pozwól teleskopowi aklimatyzować się do temperatury zewnętrznej przez co najmniej 30-60 minut przed obserwacjami w dużym powiększeniu.',
103
+ },
104
+ { type: 'title', text: 'Kolimacja: Ustawienie uwalniające potencjał', level: 2 },
105
+ {
106
+ type: 'paragraph',
107
+ html: 'Źle skolimowany teleskop (z nierównoległymi lustrami) nigdy nie osiągnie granicy Dawesa. <strong>Kolimacja</strong> to proces idealnego ustawienia luster względem wyciągu okularowego. W teleskopach zwierciadlanych (Newtony, Dobsony) jest to kluczowe zadanie okresowe. Wykonaj "test na gwiazdę", aby sprawdzić poprawność.',
108
+ },
109
+ { type: 'title', text: 'Praktyczne wskazówki dla maksymalnej rozdzielczości', level: 2 },
110
+ {
111
+ type: 'paragraph',
112
+ html: 'Zawsze czekaj na równowagę termiczną instrumentu. Unikaj obserwacji nad dachami lub asfaltem oddającym ciepło. Wybieraj noce po przejściu frontów chłodnych dla stabilniejszego powietrza. Używaj najwyższego powiększenia, które daje jeszcze stabilny obraz. Pamiętaj o <strong>adaptacji do ciemności</strong>: daj oczom 20 minut na maksymalizację czułości na detale planetarne.',
113
+ },
114
+ {
115
+ type: 'stats',
116
+ columns: 2,
117
+ items: [
118
+ { label: 'Dawes 150mm', value: '0.77"', icon: 'mdi:flare' },
119
+ { label: 'Dawes 300mm', value: '0.39"', icon: 'mdi:flare' },
120
+ { label: 'Dobry Seeing', value: '0.5 - 1.0"', icon: 'mdi:weather-windy' },
121
+ { label: 'Średni Seeing', value: '1.0 - 2.0"', icon: 'mdi:weather-cloudy' },
122
+ ],
123
+ },
124
+ ];
125
+
126
+ const faqSchema: WithContext<FAQPage> = {
127
+ '@context': 'https://schema.org',
128
+ '@type': 'FAQPage',
129
+ mainEntity: faq.map((item) => ({
130
+ '@type': 'Question',
131
+ name: item.question,
132
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
133
+ })),
134
+ };
135
+
136
+ const howToSchema: WithContext<HowTo> = {
137
+ '@context': 'https://schema.org',
138
+ '@type': 'HowTo',
139
+ name: title,
140
+ description,
141
+ step: howTo.map((step) => ({
142
+ '@type': 'HowToStep',
143
+ name: step.name,
144
+ text: step.text,
145
+ })),
146
+ };
147
+
148
+ const appSchema: WithContext<SoftwareApplication> = {
149
+ '@context': 'https://schema.org',
150
+ '@type': 'SoftwareApplication',
151
+ name: title,
152
+ description,
153
+ applicationCategory: 'UtilitiesApplication',
154
+ operatingSystem: 'Web',
155
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
156
+ inLanguage: 'pl',
157
+ };
158
+
159
+ export const content: TelescopeResolutionLocaleContent = {
160
+ slug,
161
+ title,
162
+ description,
163
+ ui,
164
+ seo,
165
+ faq,
166
+ bibliography,
167
+ howTo,
168
+ schemas: [faqSchema as any, howToSchema as any, appSchema],
169
+ };