@jjlmoya/utils-science 1.50.0 → 1.52.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.
- package/package.json +2 -2
- package/src/category/i18n/es.ts +3 -4
- package/src/category/i18n/fr.ts +2 -2
- package/src/category/i18n/it.ts +2 -2
- package/src/category/i18n/pt.ts +2 -2
- package/src/category/index.ts +25 -25
- package/src/components/PreviewNavSidebar.astro +1 -1
- package/src/components/PreviewToolbar.astro +1 -1
- package/src/data.ts +1 -1
- package/src/env.d.ts +1 -1
- package/src/layouts/PreviewLayout.astro +1 -1
- package/src/pages/index.astro +1 -1
- package/src/tests/bibliography_wellformed_export.test.ts +46 -0
- package/src/tests/category_seo_quality.test.ts +76 -0
- package/src/tests/faq_count.test.ts +19 -19
- package/src/tests/i18n_coverage.test.ts +36 -36
- package/src/tests/mocks/astro_mock.js +1 -1
- package/src/tests/no_h1_in_components.test.ts +1 -1
- package/src/tests/script_density.test.ts +94 -94
- package/src/tests/seo_length.test.ts +24 -24
- package/src/tests/seo_parity.test.ts +5 -5
- package/src/tests/seo_translation_completeness.test.ts +76 -0
- package/src/tests/seo_wellformed_export.test.ts +65 -0
- package/src/tests/spanish_leakage.test.ts +175 -153
- package/src/tool/asteroid-impact/component.astro +251 -251
- package/src/tool/asteroid-impact/helpers.ts +17 -17
- package/src/tool/asteroid-impact/i18n/de.ts +2 -2
- package/src/tool/asteroid-impact/i18n/en.ts +2 -2
- package/src/tool/asteroid-impact/i18n/es.ts +2 -2
- package/src/tool/asteroid-impact/i18n/fr.ts +2 -2
- package/src/tool/asteroid-impact/i18n/id.ts +2 -2
- package/src/tool/asteroid-impact/i18n/it.ts +2 -2
- package/src/tool/asteroid-impact/i18n/ja.ts +2 -2
- package/src/tool/asteroid-impact/i18n/ko.ts +2 -2
- package/src/tool/asteroid-impact/i18n/nl.ts +2 -2
- package/src/tool/asteroid-impact/i18n/pl.ts +2 -2
- package/src/tool/asteroid-impact/i18n/pt.ts +2 -2
- package/src/tool/asteroid-impact/i18n/ru.ts +2 -2
- package/src/tool/asteroid-impact/i18n/sv.ts +2 -2
- package/src/tool/asteroid-impact/i18n/tr.ts +2 -2
- package/src/tool/asteroid-impact/i18n/zh.ts +2 -2
- package/src/tool/asteroid-impact/script.ts +262 -262
- package/src/tool/asteroid-impact/seo.astro +15 -15
- package/src/tool/asteroid-impact/ui.ts +69 -69
- package/src/tool/black-hole-event-horizon-simulator/i18n/de.ts +249 -241
- package/src/tool/black-hole-event-horizon-simulator/i18n/fr.ts +252 -247
- package/src/tool/black-hole-event-horizon-simulator/i18n/id.ts +259 -259
- package/src/tool/black-hole-event-horizon-simulator/i18n/it.ts +255 -252
- package/src/tool/black-hole-event-horizon-simulator/i18n/ja.ts +254 -252
- package/src/tool/black-hole-event-horizon-simulator/i18n/ko.ts +258 -258
- package/src/tool/black-hole-event-horizon-simulator/i18n/nl.ts +256 -252
- package/src/tool/black-hole-event-horizon-simulator/i18n/pl.ts +258 -258
- package/src/tool/black-hole-event-horizon-simulator/i18n/pt.ts +256 -252
- package/src/tool/black-hole-event-horizon-simulator/i18n/ru.ts +258 -258
- package/src/tool/black-hole-event-horizon-simulator/i18n/sv.ts +257 -252
- package/src/tool/black-hole-event-horizon-simulator/i18n/tr.ts +256 -251
- package/src/tool/black-hole-event-horizon-simulator/i18n/zh.ts +261 -252
- package/src/tool/cellular-renewal/component.astro +126 -126
- package/src/tool/cellular-renewal/i18n/de.ts +1 -1
- package/src/tool/cellular-renewal/i18n/en.ts +1 -1
- package/src/tool/cellular-renewal/i18n/es.ts +1 -1
- package/src/tool/cellular-renewal/i18n/fr.ts +1 -1
- package/src/tool/cellular-renewal/i18n/id.ts +1 -1
- package/src/tool/cellular-renewal/i18n/it.ts +1 -1
- package/src/tool/cellular-renewal/i18n/ja.ts +1 -1
- package/src/tool/cellular-renewal/i18n/ko.ts +1 -1
- package/src/tool/cellular-renewal/i18n/nl.ts +1 -1
- package/src/tool/cellular-renewal/i18n/pl.ts +1 -1
- package/src/tool/cellular-renewal/i18n/pt.ts +1 -1
- package/src/tool/cellular-renewal/i18n/ru.ts +1 -1
- package/src/tool/cellular-renewal/i18n/sv.ts +1 -1
- package/src/tool/cellular-renewal/i18n/tr.ts +1 -1
- package/src/tool/cellular-renewal/i18n/zh.ts +1 -1
- package/src/tool/cellular-renewal/seo.astro +15 -15
- package/src/tool/colony-counter/i18n/de.ts +1 -1
- package/src/tool/colony-counter/i18n/en.ts +1 -1
- package/src/tool/colony-counter/i18n/es.ts +1 -1
- package/src/tool/colony-counter/i18n/fr.ts +1 -1
- package/src/tool/colony-counter/i18n/id.ts +1 -1
- package/src/tool/colony-counter/i18n/it.ts +1 -1
- package/src/tool/colony-counter/i18n/ja.ts +1 -1
- package/src/tool/colony-counter/i18n/ko.ts +1 -1
- package/src/tool/colony-counter/i18n/nl.ts +1 -1
- package/src/tool/colony-counter/i18n/pl.ts +1 -1
- package/src/tool/colony-counter/i18n/pt.ts +1 -1
- package/src/tool/colony-counter/i18n/ru.ts +1 -1
- package/src/tool/colony-counter/i18n/sv.ts +1 -1
- package/src/tool/colony-counter/i18n/tr.ts +1 -1
- package/src/tool/colony-counter/i18n/zh.ts +1 -1
- package/src/tool/colony-counter/seo.astro +15 -15
- package/src/tool/conway-life-rule-lab/component.astro +1 -1
- package/src/tool/conway-life-rule-lab/i18n/de.ts +145 -141
- package/src/tool/conway-life-rule-lab/i18n/es.ts +146 -142
- package/src/tool/conway-life-rule-lab/i18n/fr.ts +146 -142
- package/src/tool/conway-life-rule-lab/i18n/id.ts +146 -145
- package/src/tool/conway-life-rule-lab/i18n/it.ts +146 -145
- package/src/tool/conway-life-rule-lab/i18n/ja.ts +146 -145
- package/src/tool/conway-life-rule-lab/i18n/ko.ts +146 -145
- package/src/tool/conway-life-rule-lab/i18n/nl.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/pl.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/pt.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/ru.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/sv.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/tr.ts +147 -145
- package/src/tool/conway-life-rule-lab/i18n/zh.ts +147 -145
- package/src/tool/conway-life-rule-lab/logic/LifeLabRuntime.ts +2 -2
- package/src/tool/cosmic-inflation/i18n/ru.ts +105 -105
- package/src/tool/crystal-lattice-structure-finder/i18n/de.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/en.ts +1 -1
- package/src/tool/crystal-lattice-structure-finder/i18n/es.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/fr.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/id.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/it.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/ja.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/ko.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/nl.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/pl.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/pt.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/ru.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/sv.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/tr.ts +217 -217
- package/src/tool/crystal-lattice-structure-finder/i18n/zh.ts +217 -217
- package/src/tool/double-slit-decoherence/i18n/de.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/fr.ts +180 -180
- package/src/tool/double-slit-decoherence/i18n/id.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/it.ts +180 -180
- package/src/tool/double-slit-decoherence/i18n/ja.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/ko.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/nl.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/pl.ts +181 -181
- package/src/tool/double-slit-decoherence/i18n/pt.ts +178 -174
- package/src/tool/double-slit-decoherence/i18n/ru.ts +180 -180
- package/src/tool/double-slit-decoherence/i18n/sv.ts +176 -172
- package/src/tool/double-slit-decoherence/i18n/tr.ts +180 -180
- package/src/tool/double-slit-decoherence/i18n/zh.ts +181 -181
- package/src/tool/dyson-sphere-energy-capture/component.astro +253 -253
- package/src/tool/dyson-sphere-energy-capture/i18n/de.ts +194 -194
- package/src/tool/dyson-sphere-energy-capture/i18n/en.ts +6 -6
- package/src/tool/dyson-sphere-energy-capture/i18n/es.ts +6 -6
- package/src/tool/dyson-sphere-energy-capture/i18n/fr.ts +194 -194
- package/src/tool/dyson-sphere-energy-capture/i18n/id.ts +195 -195
- package/src/tool/dyson-sphere-energy-capture/i18n/it.ts +194 -194
- package/src/tool/dyson-sphere-energy-capture/i18n/ja.ts +194 -190
- package/src/tool/dyson-sphere-energy-capture/i18n/ko.ts +194 -193
- package/src/tool/dyson-sphere-energy-capture/i18n/nl.ts +197 -197
- package/src/tool/dyson-sphere-energy-capture/i18n/pl.ts +168 -166
- package/src/tool/dyson-sphere-energy-capture/i18n/pt.ts +194 -193
- package/src/tool/dyson-sphere-energy-capture/i18n/ru.ts +195 -193
- package/src/tool/dyson-sphere-energy-capture/i18n/sv.ts +195 -193
- package/src/tool/dyson-sphere-energy-capture/i18n/tr.ts +168 -166
- package/src/tool/dyson-sphere-energy-capture/i18n/zh.ts +194 -193
- package/src/tool/epidemic-sir-simulator/i18n/de.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/es.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/fr.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/it.ts +346 -346
- package/src/tool/epidemic-sir-simulator/i18n/nl.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/ru.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/sv.ts +347 -347
- package/src/tool/epidemic-sir-simulator/i18n/zh.ts +347 -347
- package/src/tool/exoplanet-biosignature-detector/i18n/de.ts +186 -186
- package/src/tool/exoplanet-biosignature-detector/i18n/en.ts +195 -195
- package/src/tool/exoplanet-biosignature-detector/i18n/es.ts +194 -194
- package/src/tool/exoplanet-biosignature-detector/i18n/fr.ts +183 -183
- package/src/tool/exoplanet-biosignature-detector/i18n/id.ts +193 -193
- package/src/tool/exoplanet-biosignature-detector/i18n/it.ts +194 -194
- package/src/tool/exoplanet-biosignature-detector/i18n/ja.ts +194 -194
- package/src/tool/exoplanet-biosignature-detector/i18n/ko.ts +194 -194
- package/src/tool/exoplanet-biosignature-detector/i18n/nl.ts +194 -194
- package/src/tool/exoplanet-biosignature-detector/i18n/pl.ts +144 -144
- package/src/tool/exoplanet-biosignature-detector/i18n/pt.ts +146 -146
- package/src/tool/exoplanet-biosignature-detector/i18n/ru.ts +143 -143
- package/src/tool/exoplanet-biosignature-detector/i18n/sv.ts +144 -144
- package/src/tool/exoplanet-biosignature-detector/i18n/tr.ts +145 -145
- package/src/tool/exoplanet-biosignature-detector/i18n/zh.ts +194 -194
- package/src/tool/global-albedo-snowball-simulator/component.astro +1 -1
- package/src/tool/global-albedo-snowball-simulator/i18n/de.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/fr.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/id.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/it.ts +87 -87
- package/src/tool/global-albedo-snowball-simulator/i18n/ja.ts +87 -87
- package/src/tool/global-albedo-snowball-simulator/i18n/ko.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/nl.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/pl.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/pt.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/ru.ts +165 -161
- package/src/tool/global-albedo-snowball-simulator/i18n/sv.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/tr.ts +169 -169
- package/src/tool/global-albedo-snowball-simulator/i18n/zh.ts +169 -169
- package/src/tool/lorenz-attractor/i18n/de.ts +144 -143
- package/src/tool/lorenz-attractor/i18n/fr.ts +144 -144
- package/src/tool/lorenz-attractor/i18n/id.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/it.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/ja.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/ko.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/nl.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/pl.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/pt.ts +142 -141
- package/src/tool/lorenz-attractor/i18n/ru.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/sv.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/tr.ts +149 -149
- package/src/tool/lorenz-attractor/i18n/zh.ts +149 -149
- package/src/tool/mandelbrot-fractal/i18n/de.ts +158 -158
- package/src/tool/mandelbrot-fractal/i18n/fr.ts +158 -158
- package/src/tool/mandelbrot-fractal/i18n/id.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/it.ts +155 -151
- package/src/tool/mandelbrot-fractal/i18n/ja.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/ko.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/nl.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/pl.ts +157 -153
- package/src/tool/mandelbrot-fractal/i18n/pt.ts +158 -158
- package/src/tool/mandelbrot-fractal/i18n/ru.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/sv.ts +159 -150
- package/src/tool/mandelbrot-fractal/i18n/tr.ts +159 -159
- package/src/tool/mandelbrot-fractal/i18n/zh.ts +159 -159
- package/src/tool/microwave-detector/component.astro +238 -238
- package/src/tool/microwave-detector/i18n/de.ts +1 -1
- package/src/tool/microwave-detector/i18n/en.ts +1 -1
- package/src/tool/microwave-detector/i18n/es.ts +1 -1
- package/src/tool/microwave-detector/i18n/fr.ts +1 -1
- package/src/tool/microwave-detector/i18n/id.ts +1 -1
- package/src/tool/microwave-detector/i18n/it.ts +1 -1
- package/src/tool/microwave-detector/i18n/ja.ts +1 -1
- package/src/tool/microwave-detector/i18n/ko.ts +1 -1
- package/src/tool/microwave-detector/i18n/nl.ts +1 -1
- package/src/tool/microwave-detector/i18n/pl.ts +1 -1
- package/src/tool/microwave-detector/i18n/pt.ts +1 -1
- package/src/tool/microwave-detector/i18n/ru.ts +1 -1
- package/src/tool/microwave-detector/i18n/sv.ts +1 -1
- package/src/tool/microwave-detector/i18n/tr.ts +1 -1
- package/src/tool/microwave-detector/i18n/zh.ts +1 -1
- package/src/tool/microwave-detector/seo.astro +15 -15
- package/src/tool/natural-selection-drift/component.astro +135 -135
- package/src/tool/natural-selection-drift/i18n/de.ts +164 -160
- package/src/tool/natural-selection-drift/i18n/fr.ts +204 -204
- package/src/tool/natural-selection-drift/i18n/id.ts +156 -154
- package/src/tool/natural-selection-drift/i18n/it.ts +197 -193
- package/src/tool/natural-selection-drift/i18n/ja.ts +155 -154
- package/src/tool/natural-selection-drift/i18n/ko.ts +155 -154
- package/src/tool/natural-selection-drift/i18n/nl.ts +164 -163
- package/src/tool/natural-selection-drift/i18n/pl.ts +168 -166
- package/src/tool/natural-selection-drift/i18n/pt.ts +200 -195
- package/src/tool/natural-selection-drift/i18n/ru.ts +186 -184
- package/src/tool/natural-selection-drift/i18n/sv.ts +157 -154
- package/src/tool/natural-selection-drift/i18n/tr.ts +186 -184
- package/src/tool/natural-selection-drift/i18n/zh.ts +160 -154
- package/src/tool/natural-selection-drift/natural-selection-drift.css +563 -563
- package/src/tool/phase-diagram-critical-points/i18n/de.ts +178 -178
- package/src/tool/phase-diagram-critical-points/i18n/fr.ts +178 -178
- package/src/tool/phase-diagram-critical-points/i18n/id.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/it.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/ja.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/ko.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/nl.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/pl.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/pt.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/ru.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/sv.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/tr.ts +179 -179
- package/src/tool/phase-diagram-critical-points/i18n/zh.ts +179 -179
- package/src/tool/planet-atmosphere-survival/i18n/de.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/fr.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/id.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/it.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/ja.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/ko.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/nl.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/pl.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/pt.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/ru.ts +227 -223
- package/src/tool/planet-atmosphere-survival/i18n/sv.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/tr.ts +255 -255
- package/src/tool/planet-atmosphere-survival/i18n/zh.ts +255 -255
- package/src/tool/radioactive-decay/i18n/de.ts +168 -164
- package/src/tool/radioactive-decay/i18n/fr.ts +76 -75
- package/src/tool/radioactive-decay/i18n/id.ts +169 -165
- package/src/tool/radioactive-decay/i18n/it.ts +76 -74
- package/src/tool/radioactive-decay/i18n/ja.ts +168 -167
- package/src/tool/radioactive-decay/i18n/ko.ts +168 -167
- package/src/tool/radioactive-decay/i18n/nl.ts +170 -168
- package/src/tool/radioactive-decay/i18n/pl.ts +170 -168
- package/src/tool/radioactive-decay/i18n/pt.ts +169 -167
- package/src/tool/radioactive-decay/i18n/ru.ts +170 -168
- package/src/tool/radioactive-decay/i18n/sv.ts +170 -168
- package/src/tool/radioactive-decay/i18n/tr.ts +171 -168
- package/src/tool/radioactive-decay/i18n/zh.ts +171 -167
- package/src/tool/roche-limit-satellite-disruption/i18n/de.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/fr.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/id.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/it.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/ja.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/ko.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/nl.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/pl.ts +237 -229
- package/src/tool/roche-limit-satellite-disruption/i18n/pt.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/ru.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/sv.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/tr.ts +241 -241
- package/src/tool/roche-limit-satellite-disruption/i18n/zh.ts +241 -241
- package/src/tool/simulation-probability/component.astro +138 -138
- package/src/tool/simulation-probability/i18n/de.ts +1 -1
- package/src/tool/simulation-probability/i18n/en.ts +1 -1
- package/src/tool/simulation-probability/i18n/es.ts +1 -1
- package/src/tool/simulation-probability/i18n/fr.ts +1 -1
- package/src/tool/simulation-probability/i18n/id.ts +1 -1
- package/src/tool/simulation-probability/i18n/it.ts +1 -1
- package/src/tool/simulation-probability/i18n/ja.ts +1 -1
- package/src/tool/simulation-probability/i18n/ko.ts +1 -1
- package/src/tool/simulation-probability/i18n/nl.ts +1 -1
- package/src/tool/simulation-probability/i18n/pl.ts +1 -1
- package/src/tool/simulation-probability/i18n/pt.ts +1 -1
- package/src/tool/simulation-probability/i18n/ru.ts +1 -1
- package/src/tool/simulation-probability/i18n/sv.ts +1 -1
- package/src/tool/simulation-probability/i18n/tr.ts +1 -1
- package/src/tool/simulation-probability/i18n/zh.ts +1 -1
- package/src/tool/simulation-probability/seo.astro +15 -15
- package/src/tool/stellar-habitability-zone/i18n/ru.ts +189 -189
- package/src/tool/temperature-timeline/i18n/de.ts +2 -1
- package/src/tool/temperature-timeline/i18n/fr.ts +177 -177
- package/src/tool/temperature-timeline/i18n/it.ts +142 -141
- package/src/tool/temperature-timeline/i18n/pt.ts +3 -1
- package/src/tool/temperature-timeline/i18n/ru.ts +116 -114
- package/src/tool/three-body-problem/app.ts +4 -4
- package/src/tool/three-body-problem/component.astro +6 -6
- package/src/tool/twin-paradox-visualizer/i18n/de.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/es.ts +165 -165
- package/src/tool/twin-paradox-visualizer/i18n/fr.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/id.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/it.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/ja.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/ko.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/nl.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/pl.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/pt.ts +164 -160
- package/src/tool/twin-paradox-visualizer/i18n/ru.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/sv.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/tr.ts +168 -168
- package/src/tool/twin-paradox-visualizer/i18n/zh.ts +168 -168
- package/src/types.ts +1 -1
|
@@ -1,168 +1,170 @@
|
|
|
1
|
-
import { bibliography } from '../bibliography';
|
|
2
|
-
import type { NaturalSelectionLocaleContent } from '../entry';
|
|
3
|
-
|
|
4
|
-
const slug = 'symulator-doboru-naturalnego-dryfu-genetycznego';
|
|
5
|
-
const title = 'Symulator doboru naturalnego i dryfu genetycznego';
|
|
6
|
-
const description =
|
|
7
|
-
'Zobacz w czasie rzeczywistym, jak presja selekcyjna, mutacje, dryf i rozmnażanie zmieniają częstość alleli.';
|
|
8
|
-
|
|
9
|
-
const howTo = [
|
|
10
|
-
{ name: 'Ustaw populację', text: 'Wybierz małą lub dużą populację, aby zobaczyć wpływ wielkości próbki.' },
|
|
11
|
-
{ name: 'Dostosuj dobór i dryf', text: 'Zwiększ presję selekcyjną lub dryf, aby zobaczyć inne ścieżki ewolucyjne.' },
|
|
12
|
-
{ name: 'Obserwuj pokolenia', text: 'Uruchom symulację i porównaj cechę dominującą, dostosowanie i różnorodność w czasie.' },
|
|
13
|
-
{ name: 'Interpretuj wyniki', text: 'Użyj wskaźników, aby zrozumieć, kiedy wygrywa adaptacja, a kiedy dominuje przypadek.' },
|
|
14
|
-
];
|
|
15
|
-
|
|
16
|
-
const faq = [
|
|
17
|
-
{ question: 'Jaka jest różnica między doborem naturalnym a dryfem genetycznym?', answer: 'Dobór naturalny nie jest losowy. Korzystne cechy stają się częstsze. Dryf genetyczny to losowa zmiana częstości alleli.' },
|
|
18
|
-
{ question: 'Dlaczego małe populacje zmieniają się szybciej?', answer: 'Przy niewielkiej liczbie osobników przypadek ma większy wpływ na następne pokolenie.' },
|
|
19
|
-
{ question: 'Czy dryf może przeważyć nad doborem?', answer: 'Tak. Korzystna cecha może zniknąć przez przypadek, jeśli dryf jest wystarczająco silny.' },
|
|
20
|
-
{ question: 'Co oznacza dostosowanie (fitness) w tym symulatorze?', answer: 'Dostosowanie to uproszczony wskaźnik pokazujący, jak dobrze populacja jest przystosowana do środowiska.' },
|
|
21
|
-
{ question: 'Dlaczego wielkość populacji jest tak ważna?', answer: 'Określa, jak silnie losowe wahania wpływają na częstość alleli.' },
|
|
22
|
-
{ question: 'Kiedy należy używać tego symulatora?', answer: 'Gdy chcesz zrozumieć intuicję stojącą za ewolucją, zwłaszcza różnicę między doborem a dryfem.' },
|
|
23
|
-
];
|
|
24
|
-
|
|
25
|
-
export const content: NaturalSelectionLocaleContent = {
|
|
26
|
-
slug,
|
|
27
|
-
title,
|
|
28
|
-
description,
|
|
29
|
-
ui: {
|
|
30
|
-
population: 'Wielkość populacji',
|
|
31
|
-
generations: 'Pokolenia',
|
|
32
|
-
mutationRate: 'Tempo mutacji',
|
|
33
|
-
selectionPressure: 'Presja selekcyjna',
|
|
34
|
-
driftIntensity: 'Intensywność dryfu',
|
|
35
|
-
alleleCount: 'Początkowe allele',
|
|
36
|
-
innovationRate: 'Tempo innowacji',
|
|
37
|
-
run: 'Uruchom symulację',
|
|
38
|
-
dominantTrait: 'Dominująca cecha',
|
|
39
|
-
fitness: 'Fitness końcowy',
|
|
40
|
-
diversity: 'Różnorodność genetyczna',
|
|
41
|
-
evolutionConsole: 'Konsola ewolucji',
|
|
42
|
-
populationLabel: 'Populacja',
|
|
43
|
-
aliveLabel: 'żywych',
|
|
44
|
-
alleleCountsLabel: 'Liczba alleli',
|
|
45
|
-
alleleDefault: 'Allel 1',
|
|
46
|
-
populationValueLabel: 'Populacja',
|
|
47
|
-
},
|
|
48
|
-
seo: [
|
|
49
|
-
{
|
|
50
|
-
type: 'title',
|
|
51
|
-
text: 'Dobór naturalny vs. Dryf genetyczny: Zrozum ewolucję dzięki żywej populacji',
|
|
52
|
-
level: 2,
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
type: 'paragraph',
|
|
56
|
-
html:
|
|
57
|
-
'Jeśli chcesz zrozumieć różnicę między doborem naturalnym a dryfem genetycznym, ten symulator zapewnia warstwę wizualną. Zamiast czytać statyczną definicję, obserwujesz populację w czasie rzeczywistym.',
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
type: 'title',
|
|
61
|
-
text: 'Co oznaczają suwaki i dlaczego są ważne',
|
|
62
|
-
level: 3,
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
type: 'paragraph',
|
|
66
|
-
html:
|
|
67
|
-
'Dobór naturalny to nielosowa część ewolucji. Zwiększa częstość cech poprawiających przeżywalność lub rozmnażanie. Dryf genetyczny to część losowa.',
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
type: 'paragraph',
|
|
71
|
-
html:
|
|
72
|
-
'Obie siły działają jednocześnie. W dużych populacjach zazwyczaj dominuje dobór, podczas gdy w małych populacjach przypadek może wyeliminować pożyteczne cechy.',
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'title',
|
|
76
|
-
text: 'Jak odczytywać wyniki symulacji',
|
|
77
|
-
level: 3,
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
type: 'paragraph',
|
|
81
|
-
html:
|
|
82
|
-
'Wskaźniki na żywo pokazują cechę dominującą, różnorodność genetyczną, dostosowanie końcowe oraz to, czy populacja rośnie, czy spada.',
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
type: 'title',
|
|
86
|
-
text: 'Dlaczego wielkość populacji zmienia przebieg ewolucji',
|
|
87
|
-
level: 3,
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
type: 'list',
|
|
91
|
-
items: [
|
|
92
|
-
'<strong>Presja selekcyjna:</strong> Jak silnie środowisko faworyzuje daną cechę.',
|
|
93
|
-
'<strong>Intensywność dryfu:</strong> Jak duży szum losowy wpływa na populację.',
|
|
94
|
-
'<strong>Tempo mutacji:</strong> Jak często powstają nowe warianty.',
|
|
95
|
-
'<strong>Liczba alleli:</strong> Początkowa różnorodność w systemie.',
|
|
96
|
-
'<strong>Różnorodność genetyczna:</strong> Dlaczego zmienność jest surowcem ewolucji.',
|
|
97
|
-
],
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
type: 'paragraph',
|
|
101
|
-
html:
|
|
102
|
-
'Praktyczne narzędzie do zrozumienia doboru, dryfu i mutacji w systemach biologicznych.',
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
type: 'title',
|
|
106
|
-
text: 'Szybkie przykłady do wypróbowania',
|
|
107
|
-
level: 3,
|
|
108
|
-
},
|
|
109
|
-
{
|
|
110
|
-
type: 'table',
|
|
111
|
-
headers: ['Cel', 'Zmiana', 'Oczekiwany rezultat'],
|
|
112
|
-
rows: [
|
|
113
|
-
[
|
|
114
|
-
'Pokaż wygraną doboru',
|
|
115
|
-
'Zwiększ presję selekcyjną i zmniejsz dryf',
|
|
116
|
-
'Jeden allel stopniowo dominuje',
|
|
117
|
-
],
|
|
118
|
-
[
|
|
119
|
-
'Pokaż dominację przypadku',
|
|
120
|
-
'Zmniejsz populację i zwiększ dryf',
|
|
121
|
-
'Losowe wahania częstości alleli',
|
|
122
|
-
],
|
|
123
|
-
[
|
|
124
|
-
'Pokaż mutacje',
|
|
125
|
-
'Zwiększ tempo mutacji',
|
|
126
|
-
'Regularnie pojawiają się nowe allele',
|
|
127
|
-
],
|
|
128
|
-
],
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
type: 'paragraph',
|
|
132
|
-
html:
|
|
133
|
-
'Połączenie wizualizacji i wskaźników w czasie rzeczywistym ułatwia zrozumienie procesów ewolucyjnych.',
|
|
134
|
-
},
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
2
|
+
import type { NaturalSelectionLocaleContent } from '../entry';
|
|
3
|
+
|
|
4
|
+
const slug = 'symulator-doboru-naturalnego-dryfu-genetycznego';
|
|
5
|
+
const title = 'Symulator doboru naturalnego i dryfu genetycznego';
|
|
6
|
+
const description =
|
|
7
|
+
'Zobacz w czasie rzeczywistym, jak presja selekcyjna, mutacje, dryf i rozmnażanie zmieniają częstość alleli.';
|
|
8
|
+
|
|
9
|
+
const howTo = [
|
|
10
|
+
{ name: 'Ustaw populację', text: 'Wybierz małą lub dużą populację, aby zobaczyć wpływ wielkości próbki.' },
|
|
11
|
+
{ name: 'Dostosuj dobór i dryf', text: 'Zwiększ presję selekcyjną lub dryf, aby zobaczyć inne ścieżki ewolucyjne.' },
|
|
12
|
+
{ name: 'Obserwuj pokolenia', text: 'Uruchom symulację i porównaj cechę dominującą, dostosowanie i różnorodność w czasie.' },
|
|
13
|
+
{ name: 'Interpretuj wyniki', text: 'Użyj wskaźników, aby zrozumieć, kiedy wygrywa adaptacja, a kiedy dominuje przypadek.' },
|
|
14
|
+
];
|
|
15
|
+
|
|
16
|
+
const faq = [
|
|
17
|
+
{ question: 'Jaka jest różnica między doborem naturalnym a dryfem genetycznym?', answer: 'Dobór naturalny nie jest losowy. Korzystne cechy stają się częstsze. Dryf genetyczny to losowa zmiana częstości alleli.' },
|
|
18
|
+
{ question: 'Dlaczego małe populacje zmieniają się szybciej?', answer: 'Przy niewielkiej liczbie osobników przypadek ma większy wpływ na następne pokolenie.' },
|
|
19
|
+
{ question: 'Czy dryf może przeważyć nad doborem?', answer: 'Tak. Korzystna cecha może zniknąć przez przypadek, jeśli dryf jest wystarczająco silny.' },
|
|
20
|
+
{ question: 'Co oznacza dostosowanie (fitness) w tym symulatorze?', answer: 'Dostosowanie to uproszczony wskaźnik pokazujący, jak dobrze populacja jest przystosowana do środowiska.' },
|
|
21
|
+
{ question: 'Dlaczego wielkość populacji jest tak ważna?', answer: 'Określa, jak silnie losowe wahania wpływają na częstość alleli.' },
|
|
22
|
+
{ question: 'Kiedy należy używać tego symulatora?', answer: 'Gdy chcesz zrozumieć intuicję stojącą za ewolucją, zwłaszcza różnicę między doborem a dryfem.' },
|
|
23
|
+
];
|
|
24
|
+
|
|
25
|
+
export const content: NaturalSelectionLocaleContent = {
|
|
26
|
+
slug,
|
|
27
|
+
title,
|
|
28
|
+
description,
|
|
29
|
+
ui: {
|
|
30
|
+
population: 'Wielkość populacji',
|
|
31
|
+
generations: 'Pokolenia',
|
|
32
|
+
mutationRate: 'Tempo mutacji',
|
|
33
|
+
selectionPressure: 'Presja selekcyjna',
|
|
34
|
+
driftIntensity: 'Intensywność dryfu',
|
|
35
|
+
alleleCount: 'Początkowe allele',
|
|
36
|
+
innovationRate: 'Tempo innowacji',
|
|
37
|
+
run: 'Uruchom symulację',
|
|
38
|
+
dominantTrait: 'Dominująca cecha',
|
|
39
|
+
fitness: 'Fitness końcowy',
|
|
40
|
+
diversity: 'Różnorodność genetyczna',
|
|
41
|
+
evolutionConsole: 'Konsola ewolucji',
|
|
42
|
+
populationLabel: 'Populacja',
|
|
43
|
+
aliveLabel: 'żywych',
|
|
44
|
+
alleleCountsLabel: 'Liczba alleli',
|
|
45
|
+
alleleDefault: 'Allel 1',
|
|
46
|
+
populationValueLabel: 'Populacja',
|
|
47
|
+
},
|
|
48
|
+
seo: [
|
|
49
|
+
{
|
|
50
|
+
type: 'title',
|
|
51
|
+
text: 'Dobór naturalny vs. Dryf genetyczny: Zrozum ewolucję dzięki żywej populacji',
|
|
52
|
+
level: 2,
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
type: 'paragraph',
|
|
56
|
+
html:
|
|
57
|
+
'Jeśli chcesz zrozumieć różnicę między doborem naturalnym a dryfem genetycznym, ten symulator zapewnia warstwę wizualną. Zamiast czytać statyczną definicję, obserwujesz populację w czasie rzeczywistym.',
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
type: 'title',
|
|
61
|
+
text: 'Co oznaczają suwaki i dlaczego są ważne',
|
|
62
|
+
level: 3,
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
type: 'paragraph',
|
|
66
|
+
html:
|
|
67
|
+
'Dobór naturalny to nielosowa część ewolucji. Zwiększa częstość cech poprawiających przeżywalność lub rozmnażanie. Dryf genetyczny to część losowa.',
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
type: 'paragraph',
|
|
71
|
+
html:
|
|
72
|
+
'Obie siły działają jednocześnie. W dużych populacjach zazwyczaj dominuje dobór, podczas gdy w małych populacjach przypadek może wyeliminować pożyteczne cechy.',
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
type: 'title',
|
|
76
|
+
text: 'Jak odczytywać wyniki symulacji',
|
|
77
|
+
level: 3,
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'paragraph',
|
|
81
|
+
html:
|
|
82
|
+
'Wskaźniki na żywo pokazują cechę dominującą, różnorodność genetyczną, dostosowanie końcowe oraz to, czy populacja rośnie, czy spada.',
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
type: 'title',
|
|
86
|
+
text: 'Dlaczego wielkość populacji zmienia przebieg ewolucji',
|
|
87
|
+
level: 3,
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
type: 'list',
|
|
91
|
+
items: [
|
|
92
|
+
'<strong>Presja selekcyjna:</strong> Jak silnie środowisko faworyzuje daną cechę.',
|
|
93
|
+
'<strong>Intensywność dryfu:</strong> Jak duży szum losowy wpływa na populację.',
|
|
94
|
+
'<strong>Tempo mutacji:</strong> Jak często powstają nowe warianty.',
|
|
95
|
+
'<strong>Liczba alleli:</strong> Początkowa różnorodność w systemie.',
|
|
96
|
+
'<strong>Różnorodność genetyczna:</strong> Dlaczego zmienność jest surowcem ewolucji.',
|
|
97
|
+
],
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
type: 'paragraph',
|
|
101
|
+
html:
|
|
102
|
+
'Praktyczne narzędzie do zrozumienia doboru, dryfu i mutacji w systemach biologicznych.',
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
type: 'title',
|
|
106
|
+
text: 'Szybkie przykłady do wypróbowania',
|
|
107
|
+
level: 3,
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
type: 'table',
|
|
111
|
+
headers: ['Cel', 'Zmiana', 'Oczekiwany rezultat'],
|
|
112
|
+
rows: [
|
|
113
|
+
[
|
|
114
|
+
'Pokaż wygraną doboru',
|
|
115
|
+
'Zwiększ presję selekcyjną i zmniejsz dryf',
|
|
116
|
+
'Jeden allel stopniowo dominuje',
|
|
117
|
+
],
|
|
118
|
+
[
|
|
119
|
+
'Pokaż dominację przypadku',
|
|
120
|
+
'Zmniejsz populację i zwiększ dryf',
|
|
121
|
+
'Losowe wahania częstości alleli',
|
|
122
|
+
],
|
|
123
|
+
[
|
|
124
|
+
'Pokaż mutacje',
|
|
125
|
+
'Zwiększ tempo mutacji',
|
|
126
|
+
'Regularnie pojawiają się nowe allele',
|
|
127
|
+
],
|
|
128
|
+
],
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'paragraph',
|
|
132
|
+
html:
|
|
133
|
+
'Połączenie wizualizacji i wskaźników w czasie rzeczywistym ułatwia zrozumienie procesów ewolucyjnych.',
|
|
134
|
+
},
|
|
135
|
+
{ type: 'paragraph', html: 'To wyjaśnienie porządkuje założenia modelu i pokazuje, jak parametry zmieniają wynik. Zmieniaj jedną wartość naraz i porównuj kilka uruchomień, aby każdą różnicę można było połączyć z rozpoznawalną przyczyną. Wizualizacja jest przybliżeniem dydaktycznym: rzeczywisty system ma więcej zmiennych, niepewności pomiarowych i warunków brzegowych. Używaj wyniku do poznawania skal, formułowania pytań i porównywania scenariuszy. Przed decyzją praktyczną lub analizą naukową sprawdź dane pierwotne, jednostki i specjalistyczne źródła. Zapisz ustawienia, aby powtórzyć obliczenie i omówić ograniczenia modelu.' },
|
|
136
|
+
{ type: 'paragraph', html: 'Powtórz obliczenie z tymi samymi ustawieniami, a następnie zmieniaj jedną wartość naraz. Zapisz wartości początkowe, reguły obliczeń i użyte ograniczenia, aby odróżnić prawidłowość modelu od zmiany numerycznej lub przypadku. Wynik ma charakter dydaktyczny i należy go czytać razem z założeniami oraz ograniczeniami. Rzeczywisty pomiar lub projekt wymaga dodatkowych danych i kontroli specjalisty.' },
|
|
135
137
|
],
|
|
136
138
|
faq,
|
|
137
|
-
bibliography,
|
|
138
|
-
howTo,
|
|
139
|
-
schemas: [
|
|
140
|
-
{
|
|
141
|
-
'@context': 'https://schema.org',
|
|
142
|
-
'@type': 'SoftwareApplication',
|
|
143
|
-
name: title,
|
|
144
|
-
description,
|
|
145
|
-
applicationCategory: 'EducationalApplication',
|
|
146
|
-
operatingSystem: 'Any',
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
'@context': 'https://schema.org',
|
|
150
|
-
'@type': 'FAQPage',
|
|
151
|
-
mainEntity: faq.map((item) => ({
|
|
152
|
-
'@type': 'Question',
|
|
153
|
-
name: item.question,
|
|
154
|
-
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
155
|
-
})),
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
'@context': 'https://schema.org',
|
|
159
|
-
'@type': 'HowTo',
|
|
160
|
-
name: title,
|
|
161
|
-
step: howTo.map((step) => ({
|
|
162
|
-
'@type': 'HowToStep',
|
|
163
|
-
name: step.name,
|
|
164
|
-
text: step.text,
|
|
165
|
-
})),
|
|
166
|
-
},
|
|
167
|
-
],
|
|
168
|
-
};
|
|
139
|
+
bibliography,
|
|
140
|
+
howTo,
|
|
141
|
+
schemas: [
|
|
142
|
+
{
|
|
143
|
+
'@context': 'https://schema.org',
|
|
144
|
+
'@type': 'SoftwareApplication',
|
|
145
|
+
name: title,
|
|
146
|
+
description,
|
|
147
|
+
applicationCategory: 'EducationalApplication',
|
|
148
|
+
operatingSystem: 'Any',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
'@context': 'https://schema.org',
|
|
152
|
+
'@type': 'FAQPage',
|
|
153
|
+
mainEntity: faq.map((item) => ({
|
|
154
|
+
'@type': 'Question',
|
|
155
|
+
name: item.question,
|
|
156
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
157
|
+
})),
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
'@context': 'https://schema.org',
|
|
161
|
+
'@type': 'HowTo',
|
|
162
|
+
name: title,
|
|
163
|
+
step: howTo.map((step) => ({
|
|
164
|
+
'@type': 'HowToStep',
|
|
165
|
+
name: step.name,
|
|
166
|
+
text: step.text,
|
|
167
|
+
})),
|
|
168
|
+
},
|
|
169
|
+
],
|
|
170
|
+
};
|