@jjlmoya/utils-nautical 1.15.0 → 1.17.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 +1 -1
- package/src/category/i18n/de.ts +1 -1
- package/src/category/i18n/en.ts +1 -1
- package/src/category/i18n/es.ts +16 -16
- package/src/category/i18n/fr.ts +16 -16
- package/src/category/i18n/id.ts +1 -1
- package/src/category/i18n/it.ts +1 -1
- package/src/category/i18n/nl.ts +1 -1
- package/src/category/i18n/pl.ts +1 -1
- package/src/category/i18n/pt.ts +1 -1
- package/src/category/i18n/ru.ts +3 -3
- package/src/category/i18n/sv.ts +1 -1
- package/src/category/i18n/tr.ts +1 -1
- package/src/layouts/PreviewLayout.astro +1 -0
- package/src/pages/[locale]/[slug].astro +28 -12
- package/src/tests/diacritics_density.test.ts +118 -0
- package/src/tests/inverted_punctuation.test.ts +84 -0
- package/src/tests/locale_completeness.test.ts +1 -31
- package/src/tests/no_en_dash.test.ts +70 -0
- package/src/tests/script_density.test.ts +94 -0
- package/src/tests/shared-test-helpers.ts +56 -0
- package/src/tests/tool_exports.test.ts +34 -0
- package/src/tool/endurance/bibliography.astro +1 -1
- package/src/tool/endurance/bibliography.ts +12 -0
- package/src/tool/endurance/entry.ts +2 -2
- package/src/tool/endurance/i18n/de.ts +1 -13
- package/src/tool/endurance/i18n/en.ts +1 -12
- package/src/tool/endurance/i18n/es.ts +55 -67
- package/src/tool/endurance/i18n/fr.ts +71 -83
- package/src/tool/endurance/i18n/id.ts +1 -13
- package/src/tool/endurance/i18n/it.ts +1 -13
- package/src/tool/endurance/i18n/ja.ts +1 -13
- package/src/tool/endurance/i18n/ko.ts +1 -13
- package/src/tool/endurance/i18n/nl.ts +1 -13
- package/src/tool/endurance/i18n/pl.ts +1 -13
- package/src/tool/endurance/i18n/pt.ts +1 -13
- package/src/tool/endurance/i18n/ru.ts +10 -22
- package/src/tool/endurance/i18n/sv.ts +1 -13
- package/src/tool/endurance/i18n/tr.ts +1 -13
- package/src/tool/endurance/i18n/zh.ts +1 -13
- package/src/tool/endurance/seo.astro +2 -42
- package/src/tool/nauticalConverter/bibliography.astro +1 -1
- package/src/tool/nauticalConverter/bibliography.ts +12 -0
- package/src/tool/nauticalConverter/entry.ts +2 -2
- package/src/tool/nauticalConverter/i18n/de.ts +1 -13
- package/src/tool/nauticalConverter/i18n/en.ts +1 -13
- package/src/tool/nauticalConverter/i18n/es.ts +47 -59
- package/src/tool/nauticalConverter/i18n/fr.ts +54 -66
- package/src/tool/nauticalConverter/i18n/id.ts +1 -13
- package/src/tool/nauticalConverter/i18n/it.ts +1 -13
- package/src/tool/nauticalConverter/i18n/ja.ts +1 -13
- package/src/tool/nauticalConverter/i18n/ko.ts +1 -13
- package/src/tool/nauticalConverter/i18n/nl.ts +1 -13
- package/src/tool/nauticalConverter/i18n/pl.ts +4 -16
- package/src/tool/nauticalConverter/i18n/pt.ts +1 -13
- package/src/tool/nauticalConverter/i18n/ru.ts +9 -21
- package/src/tool/nauticalConverter/i18n/sv.ts +1 -13
- package/src/tool/nauticalConverter/i18n/tr.ts +1 -13
- package/src/tool/nauticalConverter/i18n/zh.ts +4 -16
- package/src/tool/nauticalConverter/seo.astro +2 -39
- package/src/tool/sailArea/bibliography.astro +1 -1
- package/src/tool/sailArea/bibliography.ts +16 -0
- package/src/tool/sailArea/entry.ts +2 -2
- package/src/tool/sailArea/i18n/de.ts +1 -17
- package/src/tool/sailArea/i18n/en.ts +1 -17
- package/src/tool/sailArea/i18n/es.ts +54 -70
- package/src/tool/sailArea/i18n/fr.ts +71 -87
- package/src/tool/sailArea/i18n/id.ts +1 -17
- package/src/tool/sailArea/i18n/it.ts +1 -17
- package/src/tool/sailArea/i18n/ja.ts +1 -17
- package/src/tool/sailArea/i18n/ko.ts +1 -17
- package/src/tool/sailArea/i18n/nl.ts +1 -17
- package/src/tool/sailArea/i18n/pl.ts +1 -17
- package/src/tool/sailArea/i18n/pt.ts +1 -17
- package/src/tool/sailArea/i18n/ru.ts +9 -25
- package/src/tool/sailArea/i18n/sv.ts +1 -17
- package/src/tool/sailArea/i18n/tr.ts +1 -17
- package/src/tool/sailArea/i18n/zh.ts +6 -22
- package/src/tool/sailArea/seo.astro +2 -39
- package/src/tool/speedConverter/bibliography.astro +1 -1
- package/src/tool/speedConverter/bibliography.ts +12 -0
- package/src/tool/speedConverter/entry.ts +2 -2
- package/src/tool/speedConverter/i18n/de.ts +1 -13
- package/src/tool/speedConverter/i18n/en.ts +1 -13
- package/src/tool/speedConverter/i18n/es.ts +59 -71
- package/src/tool/speedConverter/i18n/fr.ts +76 -88
- package/src/tool/speedConverter/i18n/id.ts +1 -13
- package/src/tool/speedConverter/i18n/it.ts +1 -13
- package/src/tool/speedConverter/i18n/ja.ts +1 -13
- package/src/tool/speedConverter/i18n/ko.ts +1 -13
- package/src/tool/speedConverter/i18n/nl.ts +1 -13
- package/src/tool/speedConverter/i18n/pl.ts +1 -13
- package/src/tool/speedConverter/i18n/pt.ts +1 -13
- package/src/tool/speedConverter/i18n/ru.ts +7 -19
- package/src/tool/speedConverter/i18n/sv.ts +1 -13
- package/src/tool/speedConverter/i18n/tr.ts +1 -13
- package/src/tool/speedConverter/i18n/zh.ts +6 -18
- package/src/tool/speedConverter/seo.astro +2 -30
- package/src/tool/tideCalculator/bibliography.astro +1 -1
- package/src/tool/tideCalculator/bibliography.ts +12 -0
- package/src/tool/tideCalculator/entry.ts +2 -2
- package/src/tool/tideCalculator/i18n/de.ts +1 -13
- package/src/tool/tideCalculator/i18n/en.ts +1 -13
- package/src/tool/tideCalculator/i18n/es.ts +40 -52
- package/src/tool/tideCalculator/i18n/fr.ts +44 -56
- package/src/tool/tideCalculator/i18n/id.ts +1 -13
- package/src/tool/tideCalculator/i18n/it.ts +1 -13
- package/src/tool/tideCalculator/i18n/ja.ts +1 -13
- package/src/tool/tideCalculator/i18n/ko.ts +1 -13
- package/src/tool/tideCalculator/i18n/nl.ts +1 -13
- package/src/tool/tideCalculator/i18n/pl.ts +1 -13
- package/src/tool/tideCalculator/i18n/pt.ts +1 -13
- package/src/tool/tideCalculator/i18n/ru.ts +7 -19
- package/src/tool/tideCalculator/i18n/sv.ts +1 -13
- package/src/tool/tideCalculator/i18n/tr.ts +1 -13
- package/src/tool/tideCalculator/i18n/zh.ts +2 -14
- package/src/tool/tideCalculator/seo.astro +2 -48
- package/src/tool/tideCalculator/tide-height-calculator.css +136 -5
- package/src/tool/underKeel/bibliography.astro +1 -1
- package/src/tool/underKeel/bibliography.ts +12 -0
- package/src/tool/underKeel/entry.ts +2 -2
- package/src/tool/underKeel/i18n/de.ts +1 -13
- package/src/tool/underKeel/i18n/en.ts +1 -13
- package/src/tool/underKeel/i18n/es.ts +40 -52
- package/src/tool/underKeel/i18n/fr.ts +46 -58
- package/src/tool/underKeel/i18n/id.ts +2 -14
- package/src/tool/underKeel/i18n/it.ts +2 -14
- package/src/tool/underKeel/i18n/ja.ts +2 -14
- package/src/tool/underKeel/i18n/ko.ts +2 -14
- package/src/tool/underKeel/i18n/nl.ts +2 -14
- package/src/tool/underKeel/i18n/pl.ts +2 -14
- package/src/tool/underKeel/i18n/pt.ts +2 -14
- package/src/tool/underKeel/i18n/ru.ts +7 -19
- package/src/tool/underKeel/i18n/sv.ts +2 -14
- package/src/tool/underKeel/i18n/tr.ts +2 -14
- package/src/tool/underKeel/i18n/zh.ts +2 -14
- package/src/tool/underKeel/seo.astro +2 -33
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: '軽いうねり (+15%)',
|
|
30
31
|
seaModerate: '中程度のうねり (+30%)',
|
|
31
32
|
seaStorm: '荒天 (+60%)',
|
|
32
|
-
faqTitle: 'よくある質問',
|
|
33
|
-
bibliographyTitle: '参考文献',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: '약한 물결 (+15%)',
|
|
30
31
|
seaModerate: '보통 물결 (+30%)',
|
|
31
32
|
seaStorm: '거친 풍랑 (+60%)',
|
|
32
|
-
faqTitle: '자주 묻는 질문',
|
|
33
|
-
bibliographyTitle: '참고 문헌',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: 'Lichte deining (+15%)',
|
|
30
31
|
seaModerate: 'Matige deining (+30%)',
|
|
31
32
|
seaStorm: 'Storm (+60%)',
|
|
32
|
-
faqTitle: 'Veelgestelde Vragen',
|
|
33
|
-
bibliographyTitle: 'Bibliografie',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: 'Lekka fala (+15%)',
|
|
30
31
|
seaModerate: 'Umiarkowana fala (+30%)',
|
|
31
32
|
seaStorm: 'Sztorm (+60%)',
|
|
32
|
-
faqTitle: 'Często Zadawane Pytania',
|
|
33
|
-
bibliographyTitle: 'Bibliografia',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: 'Marulhento (+15%)',
|
|
30
31
|
seaModerate: 'Mar de pequenas vagas (+30%)',
|
|
31
32
|
seaStorm: 'Temporal (+60%)',
|
|
32
|
-
faqTitle: 'Perguntas Frequentes',
|
|
33
|
-
bibliographyTitle: 'Bibliografia',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -24,13 +25,11 @@ const ui: EnduranceUI = {
|
|
|
24
25
|
inverseCalcLabel: 'Обратный расчет: Сколько нужно заправить?',
|
|
25
26
|
desiredDistLabel: 'Целевая дистанция',
|
|
26
27
|
minFuelLabel: 'Минимум необходимого топлива',
|
|
27
|
-
warningLabel: 'Напоминание: Резерв 20%
|
|
28
|
+
warningLabel: 'Напоминание: Резерв 20% - это абсолютный минимум, рекомендуемый для морской безопасности.',
|
|
28
29
|
seaCalm: 'Штиль (1.0x)',
|
|
29
30
|
seaLight: 'Легкое волнение (+15%)',
|
|
30
31
|
seaModerate: 'Умеренное волнение (+30%)',
|
|
31
32
|
seaStorm: 'Шторм (+60%)',
|
|
32
|
-
faqTitle: 'Часто задаваемые вопросы',
|
|
33
|
-
bibliographyTitle: 'Библиография',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -40,15 +39,15 @@ const faq: EnduranceLocaleContent['faq'] = [
|
|
|
40
39
|
},
|
|
41
40
|
{
|
|
42
41
|
question: 'Почему в морской навигации рекомендуется резерв 20%?',
|
|
43
|
-
answer: 'Резерв 20%
|
|
42
|
+
answer: 'Резерв 20% - это стандарт морской безопасности, гарантирующий наличие достаточного количества топлива на случай непредвиденных обстоятельств: встречных течений, обходов из-за плохой погоды, ошибок в оценке расхода или необходимости оказать помощь другому судну. Многие страховщики и капитании портов считают это обязательным.',
|
|
44
43
|
},
|
|
45
44
|
{
|
|
46
45
|
question: 'Что такое эффективность L/NM и как она влияет на планирование?',
|
|
47
|
-
answer: 'Эффективность в литрах на морскую милю (L/NM)
|
|
46
|
+
answer: 'Эффективность в литрах на морскую милю (L/NM) - это реальный показатель работы двигателя в морских условиях. В отличие от часового расхода, он позволяет точно рассчитать, сколько топлива вам нужно для преодоления определенного расстояния, независимо от вашей скорости.',
|
|
48
47
|
},
|
|
49
48
|
{
|
|
50
49
|
question: 'Как состояние моря влияет на реальный расход топлива?',
|
|
51
|
-
answer: 'Состояние моря увеличивает расход, так как корпус судна работает интенсивнее, преодолевая сопротивление воды и ветра. При легком волнении расход увеличивается на 15%, при умеренном
|
|
50
|
+
answer: 'Состояние моря увеличивает расход, так как корпус судна работает интенсивнее, преодолевая сопротивление воды и ветра. При легком волнении расход увеличивается на 15%, при умеренном - на 30%, а в шторм он может вырасти на 60% и более. Игнорирование этого фактора может привести к тому, что судно останется без топлива до достижения порта.',
|
|
52
51
|
},
|
|
53
52
|
];
|
|
54
53
|
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -94,7 +82,7 @@ const seo: EnduranceLocaleContent['seo'] = [
|
|
|
94
82
|
},
|
|
95
83
|
{
|
|
96
84
|
type: 'paragraph',
|
|
97
|
-
html: '<strong>Морская автономность</strong>
|
|
85
|
+
html: '<strong>Морская автономность</strong> - один из самых важных расчетов перед выходом в море на моторном судне. Точное знание того, сколько миль вы можете пройти на имеющемся топливе, - это грань между спланированным переходом и чрезвычайной ситуацией в море.',
|
|
98
86
|
},
|
|
99
87
|
{
|
|
100
88
|
type: 'paragraph',
|
|
@@ -112,8 +100,8 @@ const seo: EnduranceLocaleContent['seo'] = [
|
|
|
112
100
|
{
|
|
113
101
|
type: 'list',
|
|
114
102
|
items: [
|
|
115
|
-
'<strong>Одна треть на путь
|
|
116
|
-
'<strong>Одна треть на путь
|
|
103
|
+
'<strong>Одна треть на путь "туда":</strong> Топливо, необходимое для достижения намеченного пункта назначения.',
|
|
104
|
+
'<strong>Одна треть на путь "обратно":</strong> Топливо для возвращения в порт отправления или ближайший доступный порт.',
|
|
117
105
|
'<strong>Одна треть в качестве резерва:</strong> Запас безопасности на случай непредвиденных обстоятельств, течений или неблагоприятных условий.',
|
|
118
106
|
],
|
|
119
107
|
},
|
|
@@ -165,12 +153,12 @@ const seo: EnduranceLocaleContent['seo'] = [
|
|
|
165
153
|
},
|
|
166
154
|
{
|
|
167
155
|
type: 'paragraph',
|
|
168
|
-
html: 'Качка судна в море при малом количестве топлива также может вызвать проблемы: жидкость колеблется вместе с волнами, что может привести к кратковременному
|
|
156
|
+
html: 'Качка судна в море при малом количестве топлива также может вызвать проблемы: жидкость колеблется вместе с волнами, что может привести к кратковременному "подхвату" воздуха топливным насосом. Наличие резерва гарантирует, что этого не произойдет в критический момент, например, при маневрировании в порту.',
|
|
169
157
|
},
|
|
170
158
|
{
|
|
171
159
|
type: 'tip',
|
|
172
160
|
title: 'Совет по экономии топлива',
|
|
173
|
-
html: 'Снижение скорости на 10-15% ниже вашей обычной крейсерской скорости может повысить эффективность до 30%. Если у вас есть время и погода благоприятная, идти медленнее
|
|
161
|
+
html: 'Снижение скорости на 10-15% ниже вашей обычной крейсерской скорости может повысить эффективность до 30%. Если у вас есть время и погода благоприятная, идти медленнее - это всегда самое экономичное и безопасное решение.',
|
|
174
162
|
},
|
|
175
163
|
{
|
|
176
164
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: 'Lätt sjögång (+15 %)',
|
|
30
31
|
seaModerate: 'Måttlig sjögång (+30 %)',
|
|
31
32
|
seaStorm: 'Storm (+60 %)',
|
|
32
|
-
faqTitle: 'Vanliga Frågor',
|
|
33
|
-
bibliographyTitle: 'Bibliografi',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: 'Hafif Çalkantılı (+%15)',
|
|
30
31
|
seaModerate: 'Orta Çalkantılı (+%30)',
|
|
31
32
|
seaStorm: 'Fırtınalı (+%60)',
|
|
32
|
-
faqTitle: 'Sıkça Sorulan Sorular',
|
|
33
|
-
bibliographyTitle: 'Kaynakça',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { EnduranceUI, EnduranceLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -29,8 +30,6 @@ const ui: EnduranceUI = {
|
|
|
29
30
|
seaLight: '轻微涌浪 (+15%)',
|
|
30
31
|
seaModerate: '中等涌浪 (+30%)',
|
|
31
32
|
seaStorm: '风暴 (+60%)',
|
|
32
|
-
faqTitle: '常见问题',
|
|
33
|
-
bibliographyTitle: '参考文献',
|
|
34
33
|
};
|
|
35
34
|
|
|
36
35
|
const faq: EnduranceLocaleContent['faq'] = [
|
|
@@ -75,17 +74,6 @@ const howTo: EnduranceLocaleContent['howTo'] = [
|
|
|
75
74
|
},
|
|
76
75
|
];
|
|
77
76
|
|
|
78
|
-
const bibliography: EnduranceLocaleContent['bibliography'] = [
|
|
79
|
-
{
|
|
80
|
-
name: 'UK Maritime and Coastguard Agency',
|
|
81
|
-
url: 'https://www.gov.uk/government/organisations/maritime-and-coastguard-agency',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
name: 'RYA - Royal Yachting Association',
|
|
85
|
-
url: 'https://www.rya.org.uk/',
|
|
86
|
-
},
|
|
87
|
-
];
|
|
88
|
-
|
|
89
77
|
const seo: EnduranceLocaleContent['seo'] = [
|
|
90
78
|
{
|
|
91
79
|
type: 'title',
|
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
import {
|
|
3
|
-
SEOTitle,
|
|
4
|
-
SEOTable,
|
|
5
|
-
SEOTip,
|
|
6
|
-
SEOGlossary,
|
|
7
|
-
SEOArticle,
|
|
8
|
-
SEOList,
|
|
9
|
-
SEOStats,
|
|
10
|
-
SEOComparative,
|
|
11
|
-
} from '@jjlmoya/utils-shared';
|
|
2
|
+
import { SEORenderer } from '@jjlmoya/utils-shared';
|
|
12
3
|
import { endurance } from './index';
|
|
13
4
|
import type { KnownLocale } from '../../types';
|
|
14
5
|
|
|
@@ -19,37 +10,6 @@ interface Props {
|
|
|
19
10
|
const { locale = 'es' } = Astro.props;
|
|
20
11
|
const content = await endurance.i18n[locale]?.();
|
|
21
12
|
if (!content) return null;
|
|
22
|
-
|
|
23
|
-
const { seo } = content;
|
|
24
13
|
---
|
|
25
14
|
|
|
26
|
-
<
|
|
27
|
-
{seo.map((section: any) => {
|
|
28
|
-
switch (section.type) {
|
|
29
|
-
case 'title':
|
|
30
|
-
return <SEOTitle title={section.text} level={section.level || 2} />;
|
|
31
|
-
case 'paragraph':
|
|
32
|
-
return <p set:html={section.html} />;
|
|
33
|
-
case 'list':
|
|
34
|
-
return <SEOList items={section.items} />;
|
|
35
|
-
case 'tip':
|
|
36
|
-
return <SEOTip title={section.title}><Fragment set:html={section.html} /></SEOTip>;
|
|
37
|
-
case 'table':
|
|
38
|
-
return (
|
|
39
|
-
<SEOTable headers={section.headers}>
|
|
40
|
-
{section.rows.map((row: string[]) => (
|
|
41
|
-
<tr>{row.map((cell: string) => <td set:html={cell} />)}</tr>
|
|
42
|
-
))}
|
|
43
|
-
</SEOTable>
|
|
44
|
-
);
|
|
45
|
-
case 'glossary':
|
|
46
|
-
return <SEOGlossary items={section.items} />;
|
|
47
|
-
case 'stats':
|
|
48
|
-
return <SEOStats items={section.items} columns={section.columns} />;
|
|
49
|
-
case 'comparative':
|
|
50
|
-
return <SEOComparative items={section.items} columns={section.columns} />;
|
|
51
|
-
default:
|
|
52
|
-
return null;
|
|
53
|
-
}
|
|
54
|
-
})}
|
|
55
|
-
</SEOArticle>
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -11,4 +11,4 @@ const { locale = 'es' } = Astro.props;
|
|
|
11
11
|
const content = await nauticalConverter.i18n[locale]?.();
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
{content && <SharedBibliography links={content.bibliography}
|
|
14
|
+
{content && <SharedBibliography links={content.bibliography} />}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { BibliographyEntry } from '../../types';
|
|
2
|
+
|
|
3
|
+
export const bibliography: BibliographyEntry[] = [
|
|
4
|
+
{
|
|
5
|
+
name: 'Instituto Hidrografico de la Marina',
|
|
6
|
+
url: 'https://armada.defensa.gob.es/ihm/',
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
name: 'NOAA - National Weather Service',
|
|
10
|
+
url: 'https://www.weather.gov/mfl/beaufort',
|
|
11
|
+
},
|
|
12
|
+
];
|
|
@@ -25,8 +25,6 @@ export interface NauticalConverterUI {
|
|
|
25
25
|
forceLabel: string;
|
|
26
26
|
effectLabel: string;
|
|
27
27
|
copyLabel: string;
|
|
28
|
-
faqTitle: string;
|
|
29
|
-
bibliographyTitle: string;
|
|
30
28
|
}
|
|
31
29
|
|
|
32
30
|
export type NauticalConverterLocaleContent = ToolLocaleContent<NauticalConverterUI>;
|
|
@@ -55,3 +53,5 @@ export const nauticalConverter: NauticalToolEntry<NauticalConverterUI> = {
|
|
|
55
53
|
zh: () => import('./i18n/zh').then((m) => m.content),
|
|
56
54
|
},
|
|
57
55
|
};
|
|
56
|
+
|
|
57
|
+
export { bibliography } from './bibliography';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { NauticalConverterUI, NauticalConverterLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -30,8 +31,6 @@ const ui: NauticalConverterUI = {
|
|
|
30
31
|
forceLabel: 'Stärke',
|
|
31
32
|
effectLabel: 'Auswirkung',
|
|
32
33
|
copyLabel: 'Wert kopieren',
|
|
33
|
-
faqTitle: 'Häufig gestellte Fragen',
|
|
34
|
-
bibliographyTitle: 'Bibliografie',
|
|
35
34
|
};
|
|
36
35
|
|
|
37
36
|
const faq: NauticalConverterLocaleContent['faq'] = [
|
|
@@ -80,17 +79,6 @@ const howTo: NauticalConverterLocaleContent['howTo'] = [
|
|
|
80
79
|
},
|
|
81
80
|
];
|
|
82
81
|
|
|
83
|
-
const bibliography: NauticalConverterLocaleContent['bibliography'] = [
|
|
84
|
-
{
|
|
85
|
-
name: 'Instituto Hidrografico de la Marina',
|
|
86
|
-
url: 'https://armada.defensa.gob.es/ihm/',
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
name: 'NOAA - National Weather Service',
|
|
90
|
-
url: 'https://www.weather.gov/mfl/beaufort',
|
|
91
|
-
},
|
|
92
|
-
];
|
|
93
|
-
|
|
94
82
|
const seo: NauticalConverterLocaleContent['seo'] = [
|
|
95
83
|
{
|
|
96
84
|
type: 'title',
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { NauticalConverterUI, NauticalConverterLocaleContent } from '../index';
|
|
3
4
|
|
|
@@ -30,8 +31,6 @@ const ui: NauticalConverterUI = {
|
|
|
30
31
|
forceLabel: 'Force',
|
|
31
32
|
effectLabel: 'Effect',
|
|
32
33
|
copyLabel: 'Copy value',
|
|
33
|
-
faqTitle: 'Frequently Asked Questions',
|
|
34
|
-
bibliographyTitle: 'Bibliography',
|
|
35
34
|
};
|
|
36
35
|
|
|
37
36
|
const faq: NauticalConverterLocaleContent['faq'] = [
|
|
@@ -80,17 +79,6 @@ const howTo: NauticalConverterLocaleContent['howTo'] = [
|
|
|
80
79
|
},
|
|
81
80
|
];
|
|
82
81
|
|
|
83
|
-
const bibliography: NauticalConverterLocaleContent['bibliography'] = [
|
|
84
|
-
{
|
|
85
|
-
name: 'Instituto Hidrografico de la Marina',
|
|
86
|
-
url: 'https://armada.defensa.gob.es/ihm/',
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
name: 'NOAA - National Weather Service',
|
|
90
|
-
url: 'https://www.weather.gov/mfl/beaufort',
|
|
91
|
-
},
|
|
92
|
-
];
|
|
93
|
-
|
|
94
82
|
const seo: NauticalConverterLocaleContent['seo'] = [
|
|
95
83
|
{
|
|
96
84
|
type: 'title',
|