@jjlmoya/utils-developer 1.13.0 → 1.15.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/fr.ts +1 -1
- package/src/category/i18n/ru.ts +1 -1
- package/src/layouts/PreviewLayout.astro +1 -0
- package/src/pages/[locale]/[slug].astro +29 -12
- package/src/tests/diacritics_density.test.ts +118 -0
- package/src/tests/inverted_punctuation.test.ts +113 -0
- package/src/tests/no_en_dash.test.ts +73 -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/aspectRatio/aspect-ratio-calculator.css +1 -1
- package/src/tool/aspectRatio/i18n/de.ts +1 -1
- package/src/tool/aspectRatio/i18n/fr.ts +1 -1
- package/src/tool/aspectRatio/i18n/pl.ts +2 -2
- package/src/tool/aspectRatio/i18n/ru.ts +4 -4
- package/src/tool/aspectRatio/i18n/zh.ts +1 -1
- package/src/tool/aspectRatio/seo.astro +2 -1
- package/src/tool/calculadoraTiempoDatos/data-time-calculator-web-speed-impact.css +26 -26
- package/src/tool/calculadoraTiempoDatos/i18n/de.ts +1 -1
- package/src/tool/calculadoraTiempoDatos/i18n/pl.ts +1 -1
- package/src/tool/calculadoraTiempoDatos/i18n/ru.ts +5 -5
- package/src/tool/calculadoraTiempoDatos/i18n/sv.ts +5 -5
- package/src/tool/calculadoraTiempoDatos/i18n/zh.ts +1 -1
- package/src/tool/calculadoraTiempoDatos/seo.astro +2 -1
- package/src/tool/colorConverter/color-converter-rgb-hex-hsl.css +9 -9
- package/src/tool/colorConverter/i18n/de.ts +1 -1
- package/src/tool/colorConverter/i18n/ru.ts +2 -2
- package/src/tool/colorConverter/seo.astro +2 -1
- package/src/tool/conversorExcelCsvHtml/excel-csv-html-table-converter.css +24 -24
- package/src/tool/conversorExcelCsvHtml/i18n/es.ts +1 -1
- package/src/tool/conversorExcelCsvHtml/i18n/pl.ts +1 -1
- package/src/tool/conversorExcelCsvHtml/i18n/ru.ts +2 -2
- package/src/tool/conversorExcelCsvHtml/i18n/zh.ts +2 -2
- package/src/tool/conversorExcelCsvHtml/seo.astro +2 -1
- package/src/tool/cronGenerator/cron.css +5 -5
- package/src/tool/cronGenerator/i18n/de.ts +4 -4
- package/src/tool/cronGenerator/i18n/en.ts +1 -1
- package/src/tool/cronGenerator/i18n/es.ts +2 -2
- package/src/tool/cronGenerator/i18n/fr.ts +5 -5
- package/src/tool/cronGenerator/i18n/id.ts +1 -1
- package/src/tool/cronGenerator/i18n/nl.ts +1 -1
- package/src/tool/cronGenerator/i18n/pl.ts +8 -8
- package/src/tool/cronGenerator/i18n/pt.ts +1 -1
- package/src/tool/cronGenerator/i18n/ru.ts +9 -9
- package/src/tool/cronGenerator/i18n/sv.ts +1 -1
- package/src/tool/cronGenerator/i18n/zh.ts +3 -3
- package/src/tool/cronGenerator/seo.astro +2 -1
- package/src/tool/cssSpecificityCalculator/css-specificity-calculator.css +1 -1
- package/src/tool/cssSpecificityCalculator/i18n/de.ts +1 -1
- package/src/tool/cssSpecificityCalculator/i18n/fr.ts +3 -3
- package/src/tool/cssSpecificityCalculator/i18n/pl.ts +2 -2
- package/src/tool/cssSpecificityCalculator/i18n/ru.ts +2 -2
- package/src/tool/cssSpecificityCalculator/seo.astro +2 -1
- package/src/tool/cssToInlineConverter/css-to-inline-converter.css +1 -1
- package/src/tool/cssToInlineConverter/i18n/de.ts +6 -6
- package/src/tool/cssToInlineConverter/i18n/es.ts +1 -1
- package/src/tool/cssToInlineConverter/i18n/fr.ts +3 -3
- package/src/tool/cssToInlineConverter/seo.astro +2 -1
- package/src/tool/duplicateCssRemover/duplicate-css-remover.css +2 -2
- package/src/tool/duplicateCssRemover/i18n/de.ts +7 -7
- package/src/tool/duplicateCssRemover/i18n/fr.ts +1 -1
- package/src/tool/duplicateCssRemover/i18n/id.ts +1 -1
- package/src/tool/duplicateCssRemover/i18n/nl.ts +1 -1
- package/src/tool/duplicateCssRemover/i18n/pl.ts +1 -1
- package/src/tool/duplicateCssRemover/i18n/pt.ts +1 -1
- package/src/tool/duplicateCssRemover/i18n/ru.ts +3 -3
- package/src/tool/duplicateCssRemover/i18n/sv.ts +1 -1
- package/src/tool/duplicateCssRemover/seo.astro +2 -1
- package/src/tool/generadorSecurityTxt/i18n/de.ts +5 -5
- package/src/tool/generadorSecurityTxt/i18n/ru.ts +2 -2
- package/src/tool/generadorSecurityTxt/security-txt-generator-rfc-9116.css +9 -9
- package/src/tool/generadorSecurityTxt/seo.astro +2 -1
- package/src/tool/hashGenerator/hash-generator.css +10 -10
- package/src/tool/hashGenerator/i18n/ru.ts +5 -5
- package/src/tool/hashGenerator/i18n/zh.ts +2 -2
- package/src/tool/hashGenerator/seo.astro +2 -1
- package/src/tool/inspectorCertificadosSsl/i18n/de.ts +6 -6
- package/src/tool/inspectorCertificadosSsl/i18n/ru.ts +5 -5
- package/src/tool/inspectorCertificadosSsl/seo.astro +2 -1
- package/src/tool/inspectorCertificadosSsl/ssl-tls-certificate-inspector.css +9 -9
- package/src/tool/jsonFormatter/i18n/de.ts +4 -4
- package/src/tool/jsonFormatter/i18n/en.ts +4 -4
- package/src/tool/jsonFormatter/i18n/es.ts +4 -4
- package/src/tool/jsonFormatter/i18n/fr.ts +4 -4
- package/src/tool/jsonFormatter/i18n/id.ts +4 -4
- package/src/tool/jsonFormatter/i18n/it.ts +4 -4
- package/src/tool/jsonFormatter/i18n/ja.ts +4 -4
- package/src/tool/jsonFormatter/i18n/ko.ts +4 -4
- package/src/tool/jsonFormatter/i18n/nl.ts +4 -4
- package/src/tool/jsonFormatter/i18n/pl.ts +4 -4
- package/src/tool/jsonFormatter/i18n/pt.ts +4 -4
- package/src/tool/jsonFormatter/i18n/ru.ts +5 -5
- package/src/tool/jsonFormatter/i18n/sv.ts +4 -4
- package/src/tool/jsonFormatter/i18n/tr.ts +4 -4
- package/src/tool/jsonFormatter/i18n/zh.ts +5 -5
- package/src/tool/jsonFormatter/json-formatter.css +33 -33
- package/src/tool/jsonFormatter/seo.astro +2 -1
- package/src/tool/keycode/i18n/de.ts +7 -7
- package/src/tool/keycode/i18n/en.ts +5 -5
- package/src/tool/keycode/i18n/es.ts +5 -5
- package/src/tool/keycode/i18n/fr.ts +7 -7
- package/src/tool/keycode/i18n/id.ts +5 -5
- package/src/tool/keycode/i18n/it.ts +5 -5
- package/src/tool/keycode/i18n/ja.ts +5 -5
- package/src/tool/keycode/i18n/ko.ts +5 -5
- package/src/tool/keycode/i18n/nl.ts +5 -5
- package/src/tool/keycode/i18n/pl.ts +7 -7
- package/src/tool/keycode/i18n/pt.ts +5 -5
- package/src/tool/keycode/i18n/ru.ts +6 -6
- package/src/tool/keycode/i18n/sv.ts +5 -5
- package/src/tool/keycode/i18n/tr.ts +5 -5
- package/src/tool/keycode/i18n/zh.ts +5 -5
- package/src/tool/keycode/keycode.css +1 -1
- package/src/tool/keycode/seo.astro +2 -1
- package/src/tool/llmCostCalculator/i18n/de.ts +4 -4
- package/src/tool/llmCostCalculator/i18n/en.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/fr.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/id.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/pt.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/ru.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/sv.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/tr.ts +3 -3
- package/src/tool/llmCostCalculator/i18n/zh.ts +3 -3
- package/src/tool/llmCostCalculator/llm-cost-calculator.css +1 -1
- package/src/tool/llmCostCalculator/seo.astro +2 -1
- package/src/tool/mobileMockupGenerator/i18n/es.ts +1 -1
- package/src/tool/mobileMockupGenerator/mobile-mockup-generator.css +68 -68
- package/src/tool/mobileMockupGenerator/seo.astro +2 -1
- package/src/tool/musicalTypography/i18n/de.ts +1 -1
- package/src/tool/musicalTypography/i18n/fr.ts +1 -1
- package/src/tool/musicalTypography/i18n/id.ts +1 -1
- package/src/tool/musicalTypography/i18n/it.ts +1 -1
- package/src/tool/musicalTypography/i18n/ko.ts +1 -1
- package/src/tool/musicalTypography/i18n/ru.ts +3 -3
- package/src/tool/musicalTypography/musical-typography.css +8 -8
- package/src/tool/musicalTypography/seo.astro +2 -1
- package/src/tool/placeholderGenerator/i18n/de.ts +4 -4
- package/src/tool/placeholderGenerator/i18n/ru.ts +1 -1
- package/src/tool/placeholderGenerator/placeholder-image-generator.css +2 -2
- package/src/tool/placeholderGenerator/seo.astro +2 -1
- package/src/tool/promptLibrary/i18n/de.ts +1 -1
- package/src/tool/promptLibrary/prompt-library.css +30 -30
- package/src/tool/promptLibrary/seo.astro +2 -1
- package/src/tool/readabilityCalculator/i18n/de.ts +2 -2
- package/src/tool/readabilityCalculator/seo.astro +2 -1
- package/src/tool/readabilityCalculator/visual-readability-calculator-wcag-apca.css +98 -14
- package/src/tool/svgSanitizer/i18n/de.ts +2 -2
- package/src/tool/svgSanitizer/i18n/id.ts +1 -1
- package/src/tool/svgSanitizer/i18n/pl.ts +1 -1
- package/src/tool/svgSanitizer/i18n/ru.ts +7 -7
- package/src/tool/svgSanitizer/i18n/sv.ts +3 -3
- package/src/tool/svgSanitizer/i18n/tr.ts +3 -3
- package/src/tool/svgSanitizer/i18n/zh.ts +3 -3
- package/src/tool/svgSanitizer/seo.astro +2 -1
- package/src/tool/svgSanitizer/svg-sanitizer.css +7 -7
- package/src/tool/svgToCss/i18n/de.ts +2 -2
- package/src/tool/svgToCss/i18n/es.ts +1 -1
- package/src/tool/svgToCss/i18n/fr.ts +1 -1
- package/src/tool/svgToCss/i18n/pl.ts +1 -1
- package/src/tool/svgToCss/i18n/ru.ts +2 -2
- package/src/tool/svgToCss/i18n/zh.ts +2 -2
- package/src/tool/svgToCss/seo.astro +2 -1
- package/src/tool/svgToCss/svg-to-css-converter.css +2 -2
- package/src/tool/urlCleaner/component.astro +23 -5
- package/src/tool/urlCleaner/i18n/de.ts +3 -3
- package/src/tool/urlCleaner/i18n/es.ts +1 -1
- package/src/tool/urlCleaner/i18n/id.ts +1 -1
- package/src/tool/urlCleaner/i18n/nl.ts +1 -1
- package/src/tool/urlCleaner/seo.astro +2 -1
- package/src/tool/urlCleaner/url-tracking-cleaner.css +104 -14
- package/src/tool/urlEncoderDecoder/i18n/de.ts +5 -5
- package/src/tool/urlEncoderDecoder/i18n/fr.ts +2 -2
- package/src/tool/urlEncoderDecoder/i18n/pl.ts +5 -5
- package/src/tool/urlEncoderDecoder/i18n/ru.ts +8 -8
- package/src/tool/urlEncoderDecoder/i18n/sv.ts +5 -5
- package/src/tool/urlEncoderDecoder/i18n/zh.ts +5 -5
- package/src/tool/urlEncoderDecoder/seo.astro +2 -1
- package/src/tool/urlEncoderDecoder/url-encoder-decoder.css +1 -1
- package/src/tool/utmGenerator/i18n/de.ts +2 -2
- package/src/tool/utmGenerator/i18n/pl.ts +5 -5
- package/src/tool/utmGenerator/i18n/ru.ts +6 -6
- package/src/tool/utmGenerator/seo.astro +2 -1
- package/src/tool/utmGenerator/utm-generator.css +6 -6
|
@@ -16,7 +16,7 @@ const faqData = [
|
|
|
16
16
|
{
|
|
17
17
|
question: 'Почему важно соблюдать правильные пропорции?',
|
|
18
18
|
answer:
|
|
19
|
-
'Игнорирование соотношения сторон приводит к сплющенным или растянутым изображениям, появлению нежелательных черных полос (letterboxing) в видео и нарушению макета веб-компонентов на экранах разного размера. Соблюдение правильных пропорций
|
|
19
|
+
'Игнорирование соотношения сторон приводит к сплющенным или растянутым изображениям, появлению нежелательных черных полос (letterboxing) в видео и нарушению макета веб-компонентов на экранах разного размера. Соблюдение правильных пропорций - залог профессионального вида.',
|
|
20
20
|
},
|
|
21
21
|
{
|
|
22
22
|
question: 'Как рассчитать высоту на основе ширины при заданном соотношении?',
|
|
@@ -26,7 +26,7 @@ const faqData = [
|
|
|
26
26
|
{
|
|
27
27
|
question: 'Какое стандартное соотношение сторон используется для видео на YouTube?',
|
|
28
28
|
answer:
|
|
29
|
-
'16:9
|
|
29
|
+
'16:9 - это стандартное соотношение для YouTube и большинства современных видеоплатформ. Оно соответствует таким разрешениям, как 1280×720 (HD), 1920×1080 (Full HD) или 3840×2160 (4K UHD).',
|
|
30
30
|
},
|
|
31
31
|
{
|
|
32
32
|
question: 'Какое соотношение сторон используется для вертикальных видео в соцсетях?',
|
|
@@ -42,7 +42,7 @@ const howToData = [
|
|
|
42
42
|
},
|
|
43
43
|
{
|
|
44
44
|
name: 'Настройте масштаб',
|
|
45
|
-
text: 'Измените значение ширины или высоты в разделе
|
|
45
|
+
text: 'Измените значение ширины или высоты в разделе "Реальный масштаб". Инструмент автоматически рассчитает противоположное значение для сохранения пропорций.',
|
|
46
46
|
},
|
|
47
47
|
{
|
|
48
48
|
name: 'Проверьте результат',
|
|
@@ -137,7 +137,7 @@ export const content: ToolLocaleContent<AspectRatioUI> = {
|
|
|
137
137
|
},
|
|
138
138
|
{
|
|
139
139
|
type: 'paragraph',
|
|
140
|
-
html: 'Несоблюдение соотношения сторон
|
|
140
|
+
html: 'Несоблюдение соотношения сторон - частая причина сплющенных фотографий, видео с неожиданной обрезкой (letterboxing) или веб-компонентов, макет которых нарушается при просмотре на разных устройствах - от мобильных телефонов до ультрашироких мониторов.',
|
|
141
141
|
},
|
|
142
142
|
{
|
|
143
143
|
type: 'title',
|
|
@@ -9,6 +9,7 @@ interface Props {
|
|
|
9
9
|
|
|
10
10
|
const { locale = 'es' } = Astro.props;
|
|
11
11
|
const content = await aspectRatio.i18n[locale]?.();
|
|
12
|
+
if (!content) return null;
|
|
12
13
|
---
|
|
13
14
|
|
|
14
|
-
{content && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
|
|
22
|
+
.theme-dark .ctd-card {
|
|
23
23
|
background: rgb(30, 41, 59);
|
|
24
24
|
box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
|
|
25
25
|
}
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
flex-shrink: 0;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
.ctd-icon
|
|
47
|
+
.ctd-icon svg {
|
|
48
48
|
width: 32px;
|
|
49
49
|
height: 32px;
|
|
50
50
|
}
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
letter-spacing: -0.02em;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
|
|
60
|
+
.theme-dark .ctd-header h2 {
|
|
61
61
|
color: rgb(241, 245, 249);
|
|
62
62
|
}
|
|
63
63
|
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
letter-spacing: 0.05em;
|
|
76
76
|
}
|
|
77
77
|
|
|
78
|
-
|
|
78
|
+
.theme-dark .ctd-input-section > label {
|
|
79
79
|
color: rgb(203, 213, 225);
|
|
80
80
|
}
|
|
81
81
|
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
box-sizing: border-box;
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
.theme-dark .ctd-input {
|
|
104
104
|
background: rgb(15, 23, 42);
|
|
105
105
|
border-color: rgb(51, 65, 85);
|
|
106
106
|
color: rgb(241, 245, 249);
|
|
@@ -112,7 +112,7 @@
|
|
|
112
112
|
box-shadow: 0 0 0 6px rgba(99, 102, 241, 0.1);
|
|
113
113
|
}
|
|
114
114
|
|
|
115
|
-
|
|
115
|
+
.theme-dark .ctd-input:focus {
|
|
116
116
|
background: rgb(30, 41, 59);
|
|
117
117
|
}
|
|
118
118
|
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
white-space: nowrap;
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
-
|
|
126
|
+
.theme-dark .ctd-input-unit {
|
|
127
127
|
color: rgb(203, 213, 225);
|
|
128
128
|
}
|
|
129
129
|
|
|
@@ -158,7 +158,7 @@
|
|
|
158
158
|
gap: 0.5rem;
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
.theme-dark .ctd-preset {
|
|
162
162
|
background: rgb(15, 23, 42);
|
|
163
163
|
border-color: rgb(51, 65, 85);
|
|
164
164
|
color: rgb(241, 245, 249);
|
|
@@ -171,7 +171,7 @@
|
|
|
171
171
|
box-shadow: 0 8px 16px rgba(99, 102, 241, 0.2);
|
|
172
172
|
}
|
|
173
173
|
|
|
174
|
-
|
|
174
|
+
.theme-dark .ctd-preset:hover {
|
|
175
175
|
background: rgba(99, 102, 241, 0.1);
|
|
176
176
|
}
|
|
177
177
|
|
|
@@ -196,7 +196,7 @@
|
|
|
196
196
|
letter-spacing: 0.05em;
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
-
|
|
199
|
+
.theme-dark .ctd-speed-section > label {
|
|
200
200
|
color: rgb(203, 213, 225);
|
|
201
201
|
}
|
|
202
202
|
|
|
@@ -219,7 +219,7 @@
|
|
|
219
219
|
transition: all 0.3s;
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
-
|
|
222
|
+
.theme-dark .ctd-speed-btn {
|
|
223
223
|
background: rgb(15, 23, 42);
|
|
224
224
|
border-color: rgb(51, 65, 85);
|
|
225
225
|
}
|
|
@@ -230,7 +230,7 @@
|
|
|
230
230
|
color: rgb(15, 23, 42);
|
|
231
231
|
}
|
|
232
232
|
|
|
233
|
-
|
|
233
|
+
.theme-dark .ctd-speed-label {
|
|
234
234
|
color: rgb(241, 245, 249);
|
|
235
235
|
}
|
|
236
236
|
|
|
@@ -240,7 +240,7 @@
|
|
|
240
240
|
color: rgb(100, 116, 139);
|
|
241
241
|
}
|
|
242
242
|
|
|
243
|
-
|
|
243
|
+
.theme-dark .ctd-speed-value {
|
|
244
244
|
color: rgb(203, 213, 225);
|
|
245
245
|
}
|
|
246
246
|
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
box-shadow: 0 8px 16px rgba(99, 102, 241, 0.2);
|
|
252
252
|
}
|
|
253
253
|
|
|
254
|
-
|
|
254
|
+
.theme-dark .ctd-speed-btn:hover {
|
|
255
255
|
background: rgba(99, 102, 241, 0.1);
|
|
256
256
|
}
|
|
257
257
|
|
|
@@ -284,7 +284,7 @@
|
|
|
284
284
|
letter-spacing: 0.05em;
|
|
285
285
|
}
|
|
286
286
|
|
|
287
|
-
|
|
287
|
+
.theme-dark .ctd-multiplier-section > label {
|
|
288
288
|
color: rgb(203, 213, 225);
|
|
289
289
|
}
|
|
290
290
|
|
|
@@ -307,7 +307,7 @@
|
|
|
307
307
|
transition: all 0.2s;
|
|
308
308
|
}
|
|
309
309
|
|
|
310
|
-
|
|
310
|
+
.theme-dark .ctd-times-btn {
|
|
311
311
|
background: rgb(15, 23, 42);
|
|
312
312
|
border-color: rgb(51, 65, 85);
|
|
313
313
|
color: rgb(241, 245, 249);
|
|
@@ -318,7 +318,7 @@
|
|
|
318
318
|
background: rgb(219, 234, 254);
|
|
319
319
|
}
|
|
320
320
|
|
|
321
|
-
|
|
321
|
+
.theme-dark .ctd-times-btn:hover {
|
|
322
322
|
background: rgba(99, 102, 241, 0.1);
|
|
323
323
|
}
|
|
324
324
|
|
|
@@ -342,7 +342,7 @@
|
|
|
342
342
|
box-sizing: border-box;
|
|
343
343
|
}
|
|
344
344
|
|
|
345
|
-
|
|
345
|
+
.theme-dark .ctd-times-input {
|
|
346
346
|
background: rgb(15, 23, 42);
|
|
347
347
|
border-color: rgb(51, 65, 85);
|
|
348
348
|
color: rgb(241, 245, 249);
|
|
@@ -364,7 +364,7 @@
|
|
|
364
364
|
align-items: center;
|
|
365
365
|
}
|
|
366
366
|
|
|
367
|
-
|
|
367
|
+
.theme-dark .ctd-results {
|
|
368
368
|
background: linear-gradient(135deg, rgba(99, 102, 241, 0.05), rgba(16, 185, 129, 0.05));
|
|
369
369
|
}
|
|
370
370
|
|
|
@@ -384,7 +384,7 @@
|
|
|
384
384
|
letter-spacing: 0.05em;
|
|
385
385
|
}
|
|
386
386
|
|
|
387
|
-
|
|
387
|
+
.theme-dark .ctd-result-label {
|
|
388
388
|
color: rgb(203, 213, 225);
|
|
389
389
|
}
|
|
390
390
|
|
|
@@ -403,8 +403,8 @@
|
|
|
403
403
|
color: rgb(100, 116, 139);
|
|
404
404
|
}
|
|
405
405
|
|
|
406
|
-
|
|
407
|
-
|
|
406
|
+
.theme-dark .ctd-result-life,
|
|
407
|
+
.theme-dark .ctd-result-life-total {
|
|
408
408
|
color: rgb(203, 213, 225);
|
|
409
409
|
}
|
|
410
410
|
|
|
@@ -414,7 +414,7 @@
|
|
|
414
414
|
background: linear-gradient(180deg, transparent, rgb(203, 213, 225), transparent);
|
|
415
415
|
}
|
|
416
416
|
|
|
417
|
-
|
|
417
|
+
.theme-dark .ctd-divider {
|
|
418
418
|
background: linear-gradient(180deg, transparent, rgba(203, 213, 225, 0.2), transparent);
|
|
419
419
|
}
|
|
420
420
|
|
|
@@ -434,7 +434,7 @@
|
|
|
434
434
|
transition: all 0.3s;
|
|
435
435
|
}
|
|
436
436
|
|
|
437
|
-
|
|
437
|
+
.theme-dark .ctd-impact-card {
|
|
438
438
|
background: linear-gradient(135deg, rgba(99, 102, 241, 0.05), rgba(255, 140, 0, 0.05));
|
|
439
439
|
border-color: rgba(99, 102, 241, 0.1);
|
|
440
440
|
}
|
|
@@ -461,7 +461,7 @@
|
|
|
461
461
|
color: rgb(100, 116, 139);
|
|
462
462
|
}
|
|
463
463
|
|
|
464
|
-
|
|
464
|
+
.theme-dark .ctd-impact-text {
|
|
465
465
|
color: rgb(203, 213, 225);
|
|
466
466
|
}
|
|
467
467
|
|
|
@@ -477,7 +477,7 @@
|
|
|
477
477
|
line-height: 1.6;
|
|
478
478
|
}
|
|
479
479
|
|
|
480
|
-
|
|
480
|
+
.theme-dark .ctd-message {
|
|
481
481
|
background: linear-gradient(135deg, rgba(254, 243, 199, 0.1), rgba(254, 202, 202, 0.1));
|
|
482
482
|
border-color: rgba(251, 191, 36, 0.3);
|
|
483
483
|
color: rgb(251, 191, 36);
|
|
@@ -36,7 +36,7 @@ const faqData = [
|
|
|
36
36
|
const howToData = [
|
|
37
37
|
{ name: 'Website-Gewicht eingeben', text: 'Verwenden Sie Browser-Entwicklertools oder WebPageTest, um das Gewicht Ihrer Seite zu ermitteln. Geben Sie diesen Wert in MB ein.' },
|
|
38
38
|
{ name: 'Ladezeiten beobachten', text: 'Der Rechner zeigt an, wie viele Sekunden Ihre Website zum Laden bei 3G, 4G und 5G benötigt. Die realen Zeiten sind meist höher.' },
|
|
39
|
-
{ name: 'Lebenszeitauswirkung verstehen', text: 'Der Prozentsatz der
|
|
39
|
+
{ name: 'Lebenszeitauswirkung verstehen', text: 'Der Prozentsatz der "Lebenszeit" zeigt, wie viel Zeit jemand mit Warten verbringt. Nutzen Sie dies als Motivation zur Optimierung.' },
|
|
40
40
|
{ name: 'Optimieren und neu berechnen', text: 'Messen Sie nach der Optimierung erneut und berechnen Sie neu. Sehen Sie, wie kleine Verbesserungen große Auswirkungen haben.' },
|
|
41
41
|
];
|
|
42
42
|
|
|
@@ -36,7 +36,7 @@ const faqData = [
|
|
|
36
36
|
const howToData = [
|
|
37
37
|
{ name: 'Wpisz wagę swojej strony', text: 'Użyj narzędzi deweloperskich przeglądarki lub WebPageTest, aby sprawdzić wagę strony. Wpisz tę wartość w MB.' },
|
|
38
38
|
{ name: 'Obserwuj czasy ładowania', text: 'Kalkulator pokazuje, ile sekund zajmuje ładowanie strony w sieciach 3G, 4G i 5G. Czasy w rzeczywistości są zazwyczaj wyższe.' },
|
|
39
|
-
{ name: 'Zrozum wpływ na czas życia', text: 'Procent
|
|
39
|
+
{ name: 'Zrozum wpływ na czas życia', text: 'Procent "czasu życia" pokazuje, ile czyjegoś życia mija na czekaniu. Użyj tego jako motywacji do optymalizacji.' },
|
|
40
40
|
{ name: 'Optymalizuj i oblicz ponownie', text: 'Po optymalizacji zmierz ponownie i wykonaj obliczenia. Zobacz, jak małe ulepszenia mają duży wpływ.' },
|
|
41
41
|
];
|
|
42
42
|
|
|
@@ -36,7 +36,7 @@ const faqData = [
|
|
|
36
36
|
const howToData = [
|
|
37
37
|
{ name: 'Введите вес вашего сайта', text: 'Используйте инструменты разработчика браузера или WebPageTest, чтобы узнать вес вашей страницы. Введите это значение в МБ.' },
|
|
38
38
|
{ name: 'Наблюдайте за временем загрузки', text: 'Калькулятор показывает, сколько секунд требуется вашему сайту для загрузки на 3G, 4G и 5G. Реальное время обычно выше.' },
|
|
39
|
-
{ name: 'Поймите влияние на продолжительность жизни', text: 'Процент
|
|
39
|
+
{ name: 'Поймите влияние на продолжительность жизни', text: 'Процент "времени жизни" показывает, сколько времени чьей-то жизни тратится на ожидание. Используйте это как мотивацию для оптимизации.' },
|
|
40
40
|
{ name: 'Оптимизируйте и пересчитайте', text: 'После оптимизации измерьте показатели снова и сделайте перерасчет. Посмотрите, как небольшие улучшения приносят значительный результат.' },
|
|
41
41
|
];
|
|
42
42
|
|
|
@@ -114,7 +114,7 @@ export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
|
|
|
114
114
|
{ type: 'title', text: 'Почему скорость загрузки сайта критически важна', level: 2 },
|
|
115
115
|
{
|
|
116
116
|
type: 'paragraph',
|
|
117
|
-
html: 'В сегодняшнюю цифровую эпоху скорость загрузки сайта
|
|
117
|
+
html: 'В сегодняшнюю цифровую эпоху скорость загрузки сайта - это не роскошь, а необходимость. Каждая миллисекунда имеет значение для удержания пользователей, улучшения рейтинга в поиске и максимизации конверсии. Современные пользователи ожидают, что страницы загрузятся менее чем за 3 секунды.',
|
|
118
118
|
},
|
|
119
119
|
{ type: 'title', text: 'Влияние на пользовательский опыт', level: 3 },
|
|
120
120
|
{
|
|
@@ -125,9 +125,9 @@ export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
|
|
|
125
125
|
{
|
|
126
126
|
type: 'list',
|
|
127
127
|
items: [
|
|
128
|
-
'<strong>3G:</strong> 0,4 Мбит/с
|
|
129
|
-
'<strong>4G/LTE:</strong> 10 Мбит/с
|
|
130
|
-
'<strong>5G:</strong> 100+ Мбит/с
|
|
128
|
+
'<strong>3G:</strong> 0,4 Мбит/с - часто встречается в сельской местности и развивающихся странах',
|
|
129
|
+
'<strong>4G/LTE:</strong> 10 Мбит/с - стандарт в развитых странах',
|
|
130
|
+
'<strong>5G:</strong> 100+ Мбит/с - постепенно расширяется, но все еще ограничен',
|
|
131
131
|
],
|
|
132
132
|
},
|
|
133
133
|
{ type: 'title', text: 'Стратегии по уменьшению веса сайта', level: 3 },
|
|
@@ -21,11 +21,11 @@ const faqData = [
|
|
|
21
21
|
},
|
|
22
22
|
{
|
|
23
23
|
question: 'Hur mycket bör min webbplats väga?',
|
|
24
|
-
answer: 'Google rekommenderar att startsidan laddas på mindre än 3 sekunder via en typisk 4G-anslutning. För detta bör en webbplats helst väga mellan 1 och 2 MB. Det globala genomsnittet ligger dock nära 2
|
|
24
|
+
answer: 'Google rekommenderar att startsidan laddas på mindre än 3 sekunder via en typisk 4G-anslutning. För detta bör en webbplats helst väga mellan 1 och 2 MB. Det globala genomsnittet ligger dock nära 2-3 MB.',
|
|
25
25
|
},
|
|
26
26
|
{
|
|
27
27
|
question: 'Hur kan jag minska min webbplats vikt?',
|
|
28
|
-
answer: 'Huvudstrategier: optimera bilder (50
|
|
28
|
+
answer: 'Huvudstrategier: optimera bilder (50-80 % av vikten), minifiera CSS och JavaScript, använda lazy loading, implementera webbläsarcache och använda en CDN. Bildoptimering är vanligtvis den mest effektiva faktorn.',
|
|
29
29
|
},
|
|
30
30
|
{
|
|
31
31
|
question: 'Påverkar laddningshastigheten Google-rankningen?',
|
|
@@ -36,7 +36,7 @@ const faqData = [
|
|
|
36
36
|
const howToData = [
|
|
37
37
|
{ name: 'Ange din webbplats vikt', text: 'Använd webbläsarens utvecklarverktyg eller WebPageTest för att hitta din sidas vikt. Ange det värdet i MB.' },
|
|
38
38
|
{ name: 'Observera laddningstider', text: 'Kalkylatorn visar hur många sekunder det tar för din webbplats att ladda via 3G, 4G och 5G. Tiderna i verkligheten är vanligtvis högre.' },
|
|
39
|
-
{ name: 'Förstå livstidspåverkan', text: 'Procentandelen
|
|
39
|
+
{ name: 'Förstå livstidspåverkan', text: 'Procentandelen "livstid" visar hur mycket av någons liv som spenderas på att vänta. Använd detta som motivation för att optimera.' },
|
|
40
40
|
{ name: 'Optimera och beräkna om', text: 'Mät igen och beräkna om efter optimeringen. Se hur små förbättringar har stor betydelse.' },
|
|
41
41
|
];
|
|
42
42
|
|
|
@@ -134,8 +134,8 @@ export const content: ToolLocaleContent<CalculadoraTiempoDatosUI> = {
|
|
|
134
134
|
{
|
|
135
135
|
type: 'list',
|
|
136
136
|
items: [
|
|
137
|
-
'<strong>Bildoptimering:</strong> Representerar 50
|
|
138
|
-
'<strong>Minifiering:</strong> Ta bort onödig kod från CSS och JavaScript. Spara 30
|
|
137
|
+
'<strong>Bildoptimering:</strong> Representerar 50-80 % av vikten. Minska med 40-60 % med verktyg som TinyPNG.',
|
|
138
|
+
'<strong>Minifiering:</strong> Ta bort onödig kod från CSS och JavaScript. Spara 30-50 %.',
|
|
139
139
|
'<strong>Lazy Loading:</strong> Ladda bilder först när användaren scrollar till dem.',
|
|
140
140
|
'<strong>Webbläsarcache:</strong> Cachelagra statiska filer i användarnas webbläsare.',
|
|
141
141
|
'<strong>CDN:</strong> Leverera innehåll från servrar som ligger geografiskt nära.',
|
|
@@ -36,7 +36,7 @@ const faqData = [
|
|
|
36
36
|
const howToData = [
|
|
37
37
|
{ name: '输入您的网站权重', text: '使用浏览器开发者工具或 WebPageTest 获取页面权重。以 MB 为单位输入该值。' },
|
|
38
38
|
{ name: '观察加载时间', text: '计算器显示网站在 3G、4G 和 5G 下加载所需的秒数。现实中的时间通常更高。' },
|
|
39
|
-
{ name: '了解对寿命的影响', text: '
|
|
39
|
+
{ name: '了解对寿命的影响', text: '"寿命"百分比显示了一个人有多少生命花在了等待上。以此作为优化的动力。' },
|
|
40
40
|
{ name: '优化并重新计算', text: '优化后,再次测量并重新计算。观察微小的改进如何产生重大影响。' },
|
|
41
41
|
];
|
|
42
42
|
|
|
@@ -9,6 +9,7 @@ interface Props {
|
|
|
9
9
|
|
|
10
10
|
const { locale = 'es' } = Astro.props;
|
|
11
11
|
const content = await calculadoraTiempoDatos.i18n[locale]?.();
|
|
12
|
+
if (!content) return null;
|
|
12
13
|
---
|
|
13
14
|
|
|
14
|
-
{content && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.07);
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
.theme-dark .cc-card {
|
|
34
34
|
background: rgba(30, 41, 59, 0.7);
|
|
35
35
|
border: 1px solid rgba(255, 255, 255, 0.1);
|
|
36
36
|
box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.3);
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
letter-spacing: 0.05em;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
|
-
|
|
65
|
+
.theme-dark .cc-label {
|
|
66
66
|
color: rgb(148, 163, 184);
|
|
67
67
|
}
|
|
68
68
|
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
box-sizing: border-box;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
|
|
82
|
+
.theme-dark .cc-text-input {
|
|
83
83
|
background: rgba(15, 23, 42, 0.5);
|
|
84
84
|
border-color: rgb(51, 65, 85);
|
|
85
85
|
color: rgb(241, 245, 249);
|
|
@@ -105,7 +105,7 @@
|
|
|
105
105
|
transition: all 0.2s ease;
|
|
106
106
|
}
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
.theme-dark .cc-copy-badge {
|
|
109
109
|
background: rgba(255, 255, 255, 0.05);
|
|
110
110
|
border-color: rgba(255, 255, 255, 0.1);
|
|
111
111
|
color: rgb(148, 163, 184);
|
|
@@ -118,7 +118,7 @@
|
|
|
118
118
|
transform: translateY(-1px);
|
|
119
119
|
}
|
|
120
120
|
|
|
121
|
-
|
|
121
|
+
.theme-dark .cc-copy-badge:hover {
|
|
122
122
|
background: rgba(99, 102, 241, 0.1);
|
|
123
123
|
}
|
|
124
124
|
|
|
@@ -130,8 +130,8 @@
|
|
|
130
130
|
transform: none;
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
-
|
|
134
|
-
|
|
133
|
+
.theme-dark .cc-copy-badge.cc-copied,
|
|
134
|
+
.theme-dark .cc-copy-badge.cc-copied:hover {
|
|
135
135
|
background: rgba(34, 197, 94, 0.1);
|
|
136
136
|
}
|
|
137
137
|
|
|
@@ -165,7 +165,7 @@
|
|
|
165
165
|
outline: none;
|
|
166
166
|
}
|
|
167
167
|
|
|
168
|
-
|
|
168
|
+
.theme-dark .cc-range {
|
|
169
169
|
background: rgb(51, 65, 85);
|
|
170
170
|
}
|
|
171
171
|
|
|
@@ -202,7 +202,7 @@
|
|
|
202
202
|
cursor: pointer;
|
|
203
203
|
}
|
|
204
204
|
|
|
205
|
-
|
|
205
|
+
.theme-dark .cc-main-preview {
|
|
206
206
|
box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1);
|
|
207
207
|
}
|
|
208
208
|
|
|
@@ -28,7 +28,7 @@ const faqData = [
|
|
|
28
28
|
const howToData = [
|
|
29
29
|
{ name: 'Farbe auswählen', text: 'Verwenden Sie die Schieberegler für Rot, Grün und Blau oder geben Sie einen HEX-Code direkt in das Textfeld ein.' },
|
|
30
30
|
{ name: 'RGB-Kanäle anpassen', text: 'Bewegen Sie die Schieberegler, um die Intensität jedes Kanals zu ändern und die Aktualisierung in Echtzeit zu sehen.' },
|
|
31
|
-
{ name: 'Format kopieren', text: 'Klicken Sie auf die Schaltfläche
|
|
31
|
+
{ name: 'Format kopieren', text: 'Klicken Sie auf die Schaltfläche "Kopieren" neben dem HEX-, RGB- oder HSL-Format, das Sie benötigen.' },
|
|
32
32
|
{ name: 'Harmonien erkunden', text: 'Klicken Sie auf die Harmoniefarben (komplementär, analog, triadisch), um sie in die Zwischenablage zu kopieren.' },
|
|
33
33
|
];
|
|
34
34
|
|
|
@@ -28,7 +28,7 @@ const faqData = [
|
|
|
28
28
|
const howToData = [
|
|
29
29
|
{ name: 'Выберите цвет', text: 'Используйте ползунки красного, зеленого и синего или введите HEX-код прямо в текстовое поле.' },
|
|
30
30
|
{ name: 'Настройте каналы RGB', text: 'Передвигайте ползунки, чтобы изменить интенсивность каждого канала и увидеть обновление в режиме реального времени.' },
|
|
31
|
-
{ name: 'Скопируйте формат', text: 'Нажмите кнопку
|
|
31
|
+
{ name: 'Скопируйте формат', text: 'Нажмите кнопку "Копировать" рядом с нужным форматом HEX, RGB или HSL.' },
|
|
32
32
|
{ name: 'Исследуйте гармонии', text: 'Нажмите на гармоничные цвета (комплементарные, аналогичные, триадические), чтобы скопировать их в буфер обмена.' },
|
|
33
33
|
];
|
|
34
34
|
|
|
@@ -97,7 +97,7 @@ export const content: ToolLocaleContent<ColorConverterUI> = {
|
|
|
97
97
|
{ type: 'title', text: 'Конвертер цветов RGB в HEX и HSL для разработчиков', level: 2 },
|
|
98
98
|
{
|
|
99
99
|
type: 'paragraph',
|
|
100
|
-
html: 'В мире <strong>frontend-разработки</strong> и <strong>UI/UX дизайна</strong> управление цветом
|
|
100
|
+
html: 'В мире <strong>frontend-разработки</strong> и <strong>UI/UX дизайна</strong> управление цветом - это постоянная задача. Наш <strong>онлайн-конвертер цветов</strong> позволяет мгновенно и с математической точностью преобразовывать значения между <strong>HEX, RGB и HSL</strong>.',
|
|
101
101
|
},
|
|
102
102
|
{ type: 'title', text: 'Форматы цветов: HEX, RGB и HSL', level: 3 },
|
|
103
103
|
{
|
|
@@ -9,6 +9,7 @@ interface Props {
|
|
|
9
9
|
|
|
10
10
|
const { locale = 'es' } = Astro.props;
|
|
11
11
|
const content = await colorConverter.i18n[locale]?.();
|
|
12
|
+
if (!content) return null;
|
|
12
13
|
---
|
|
13
14
|
|
|
14
|
-
{content && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
15
|
+
{content.seo?.length > 0 && <SEORenderer content={{ locale, sections: content.seo }} />}
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
.theme-dark .cec-converter-card {
|
|
32
32
|
background: rgba(15, 23, 42, 0.6);
|
|
33
33
|
border-color: rgba(255, 255, 255, 0.05);
|
|
34
34
|
}
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
letter-spacing: 0.05em;
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
.theme-dark .cec-input-label {
|
|
63
63
|
color: rgb(148, 163, 184);
|
|
64
64
|
}
|
|
65
65
|
|
|
@@ -76,7 +76,7 @@
|
|
|
76
76
|
transition: all 0.2s;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
-
|
|
79
|
+
.theme-dark .cec-csv-textarea {
|
|
80
80
|
background: rgb(2, 6, 23);
|
|
81
81
|
border-color: rgb(30, 41, 59);
|
|
82
82
|
color: var(--cec-text-light);
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
background: rgba(248, 250, 252, 0.5);
|
|
103
103
|
}
|
|
104
104
|
|
|
105
|
-
|
|
105
|
+
.theme-dark .cec-drop-zone {
|
|
106
106
|
border-color: var(--cec-border-dark);
|
|
107
107
|
background: rgba(30, 41, 59, 0.2);
|
|
108
108
|
}
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
background: rgba(139, 92, 246, 0.05);
|
|
114
114
|
}
|
|
115
115
|
|
|
116
|
-
.cec-drop-zone
|
|
116
|
+
.cec-drop-zone svg {
|
|
117
117
|
color: var(--cec-primary);
|
|
118
118
|
}
|
|
119
119
|
|
|
@@ -132,7 +132,7 @@
|
|
|
132
132
|
border-top: 1px solid rgba(0, 0, 0, 0.05);
|
|
133
133
|
}
|
|
134
134
|
|
|
135
|
-
|
|
135
|
+
.theme-dark .cec-options-row {
|
|
136
136
|
border-top-color: rgba(255, 255, 255, 0.05);
|
|
137
137
|
}
|
|
138
138
|
|
|
@@ -164,7 +164,7 @@
|
|
|
164
164
|
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
|
|
165
165
|
}
|
|
166
166
|
|
|
167
|
-
|
|
167
|
+
.theme-dark .cec-option-item input[type="checkbox"] {
|
|
168
168
|
background: rgb(15, 23, 42);
|
|
169
169
|
border-color: var(--cec-border-dark);
|
|
170
170
|
}
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
color: var(--cec-text-secondary);
|
|
194
194
|
}
|
|
195
195
|
|
|
196
|
-
|
|
196
|
+
.theme-dark .cec-option-item span {
|
|
197
197
|
color: rgb(148, 163, 184);
|
|
198
198
|
}
|
|
199
199
|
|
|
@@ -201,7 +201,7 @@
|
|
|
201
201
|
color: rgb(88, 28, 135);
|
|
202
202
|
}
|
|
203
203
|
|
|
204
|
-
|
|
204
|
+
.theme-dark .cec-option-item input[type="checkbox"]:checked + span {
|
|
205
205
|
color: rgb(196, 181, 253);
|
|
206
206
|
}
|
|
207
207
|
|
|
@@ -217,7 +217,7 @@
|
|
|
217
217
|
border-bottom: 2px solid var(--cec-border);
|
|
218
218
|
}
|
|
219
219
|
|
|
220
|
-
|
|
220
|
+
.theme-dark .cec-result-tabs {
|
|
221
221
|
border-bottom-color: rgb(30, 41, 59);
|
|
222
222
|
}
|
|
223
223
|
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
padding: 1rem;
|
|
249
249
|
}
|
|
250
250
|
|
|
251
|
-
|
|
251
|
+
.theme-dark .cec-preview-container {
|
|
252
252
|
background: rgb(15, 23, 42);
|
|
253
253
|
border-color: rgb(30, 41, 59);
|
|
254
254
|
}
|
|
@@ -291,13 +291,13 @@
|
|
|
291
291
|
background: var(--cec-primary-hover);
|
|
292
292
|
}
|
|
293
293
|
|
|
294
|
-
.cec-preview-container
|
|
294
|
+
.cec-preview-container table {
|
|
295
295
|
width: 100%;
|
|
296
296
|
border-collapse: collapse;
|
|
297
297
|
font-size: 0.875rem;
|
|
298
298
|
}
|
|
299
299
|
|
|
300
|
-
.cec-preview-container
|
|
300
|
+
.cec-preview-container th {
|
|
301
301
|
background: var(--cec-bg-light);
|
|
302
302
|
border-bottom: 2px solid var(--cec-border);
|
|
303
303
|
padding: 0.75rem;
|
|
@@ -306,19 +306,19 @@
|
|
|
306
306
|
color: var(--cec-text-primary);
|
|
307
307
|
}
|
|
308
308
|
|
|
309
|
-
|
|
309
|
+
.theme-dark .cec-preview-container th {
|
|
310
310
|
background: rgb(30, 41, 59);
|
|
311
311
|
border-bottom-color: var(--cec-border-dark);
|
|
312
312
|
color: var(--cec-text-light);
|
|
313
313
|
}
|
|
314
314
|
|
|
315
|
-
.cec-preview-container
|
|
315
|
+
.cec-preview-container td {
|
|
316
316
|
padding: 0.75rem;
|
|
317
317
|
border-bottom: 1px solid rgb(241, 245, 249);
|
|
318
318
|
color: var(--cec-text-secondary);
|
|
319
319
|
}
|
|
320
320
|
|
|
321
|
-
|
|
321
|
+
.theme-dark .cec-preview-container td {
|
|
322
322
|
border-bottom-color: rgb(30, 41, 59);
|
|
323
323
|
color: rgb(148, 163, 184);
|
|
324
324
|
}
|
|
@@ -334,25 +334,25 @@
|
|
|
334
334
|
gap: 1rem;
|
|
335
335
|
}
|
|
336
336
|
|
|
337
|
-
.cec-preview-container
|
|
337
|
+
.cec-preview-container table.bordered {
|
|
338
338
|
border: 1px solid var(--cec-border);
|
|
339
339
|
}
|
|
340
340
|
|
|
341
|
-
.cec-preview-container
|
|
342
|
-
.cec-preview-container
|
|
341
|
+
.cec-preview-container table.bordered th,
|
|
342
|
+
.cec-preview-container table.bordered td {
|
|
343
343
|
border: 1px solid var(--cec-border);
|
|
344
344
|
}
|
|
345
345
|
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
346
|
+
.theme-dark .cec-preview-container table.bordered,
|
|
347
|
+
.theme-dark .cec-preview-container table.bordered th,
|
|
348
|
+
.theme-dark .cec-preview-container table.bordered td {
|
|
349
349
|
border-color: var(--cec-border-dark);
|
|
350
350
|
}
|
|
351
351
|
|
|
352
|
-
.cec-preview-container
|
|
352
|
+
.cec-preview-container table.zebra tbody tr:nth-child(even) {
|
|
353
353
|
background: var(--cec-bg-light);
|
|
354
354
|
}
|
|
355
355
|
|
|
356
|
-
|
|
356
|
+
.theme-dark .cec-preview-container table.zebra tbody tr:nth-child(even) {
|
|
357
357
|
background: rgba(30, 41, 59, 0.5);
|
|
358
358
|
}
|