@jjlmoya/utils-developer 1.4.0 → 1.6.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 -1
- package/src/category/i18n/de.ts +34 -0
- package/src/category/i18n/id.ts +34 -0
- package/src/category/i18n/it.ts +34 -0
- package/src/category/i18n/ja.ts +34 -0
- package/src/category/i18n/ko.ts +34 -0
- package/src/category/i18n/nl.ts +34 -0
- package/src/category/i18n/pl.ts +34 -0
- package/src/category/i18n/pt.ts +34 -0
- package/src/category/i18n/ru.ts +34 -0
- package/src/category/i18n/sv.ts +34 -0
- package/src/category/i18n/tr.ts +34 -0
- package/src/category/i18n/zh.ts +34 -0
- package/src/category/index.ts +13 -1
- package/src/tests/faq_count.test.ts +1 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/locale_completeness.test.ts +2 -2
- package/src/tests/slug_language_code_format.test.ts +25 -0
- package/src/tests/slug_uniqueness.test.ts +87 -0
- package/src/tool/aspectRatio/i18n/de.ts +177 -0
- package/src/tool/aspectRatio/i18n/id.ts +177 -0
- package/src/tool/aspectRatio/i18n/it.ts +177 -0
- package/src/tool/aspectRatio/i18n/ja.ts +178 -0
- package/src/tool/aspectRatio/i18n/ko.ts +178 -0
- package/src/tool/aspectRatio/i18n/nl.ts +178 -0
- package/src/tool/aspectRatio/i18n/pl.ts +177 -0
- package/src/tool/aspectRatio/i18n/pt.ts +177 -0
- package/src/tool/aspectRatio/i18n/ru.ts +177 -0
- package/src/tool/aspectRatio/i18n/sv.ts +177 -0
- package/src/tool/aspectRatio/i18n/tr.ts +177 -0
- package/src/tool/aspectRatio/i18n/zh.ts +178 -0
- package/src/tool/aspectRatio/index.ts +15 -7
- package/src/tool/calculadoraTiempoDatos/i18n/de.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/id.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/it.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/ja.ts +151 -0
- package/src/tool/calculadoraTiempoDatos/i18n/ko.ts +151 -0
- package/src/tool/calculadoraTiempoDatos/i18n/nl.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/pl.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/pt.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/ru.ts +151 -0
- package/src/tool/calculadoraTiempoDatos/i18n/sv.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/tr.ts +150 -0
- package/src/tool/calculadoraTiempoDatos/i18n/zh.ts +151 -0
- package/src/tool/calculadoraTiempoDatos/index.ts +15 -7
- package/src/tool/colorConverter/i18n/de.ts +126 -0
- package/src/tool/colorConverter/i18n/id.ts +126 -0
- package/src/tool/colorConverter/i18n/it.ts +126 -0
- package/src/tool/colorConverter/i18n/ja.ts +127 -0
- package/src/tool/colorConverter/i18n/ko.ts +127 -0
- package/src/tool/colorConverter/i18n/nl.ts +126 -0
- package/src/tool/colorConverter/i18n/pl.ts +126 -0
- package/src/tool/colorConverter/i18n/pt.ts +126 -0
- package/src/tool/colorConverter/i18n/ru.ts +126 -0
- package/src/tool/colorConverter/i18n/sv.ts +126 -0
- package/src/tool/colorConverter/i18n/tr.ts +126 -0
- package/src/tool/colorConverter/i18n/zh.ts +127 -0
- package/src/tool/colorConverter/index.ts +15 -7
- package/src/tool/conversorExcelCsvHtml/i18n/de.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/id.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/it.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/ja.ts +130 -0
- package/src/tool/conversorExcelCsvHtml/i18n/ko.ts +130 -0
- package/src/tool/conversorExcelCsvHtml/i18n/nl.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/pl.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/pt.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/ru.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/sv.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/tr.ts +129 -0
- package/src/tool/conversorExcelCsvHtml/i18n/zh.ts +130 -0
- package/src/tool/conversorExcelCsvHtml/index.ts +15 -7
- package/src/tool/cronGenerator/i18n/de.ts +192 -0
- package/src/tool/cronGenerator/i18n/es.ts +1 -0
- package/src/tool/cronGenerator/i18n/fr.ts +2 -1
- package/src/tool/cronGenerator/i18n/id.ts +192 -0
- package/src/tool/cronGenerator/i18n/it.ts +192 -0
- package/src/tool/cronGenerator/i18n/ja.ts +192 -0
- package/src/tool/cronGenerator/i18n/ko.ts +192 -0
- package/src/tool/cronGenerator/i18n/nl.ts +192 -0
- package/src/tool/cronGenerator/i18n/pl.ts +192 -0
- package/src/tool/cronGenerator/i18n/pt.ts +192 -0
- package/src/tool/cronGenerator/i18n/ru.ts +192 -0
- package/src/tool/cronGenerator/i18n/sv.ts +192 -0
- package/src/tool/cronGenerator/i18n/tr.ts +192 -0
- package/src/tool/cronGenerator/i18n/zh.ts +192 -0
- package/src/tool/cronGenerator/index.ts +15 -7
- package/src/tool/cssSpecificityCalculator/i18n/de.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/id.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/it.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/ja.ts +169 -0
- package/src/tool/cssSpecificityCalculator/i18n/ko.ts +169 -0
- package/src/tool/cssSpecificityCalculator/i18n/nl.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/pl.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/pt.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/ru.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/sv.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/tr.ts +168 -0
- package/src/tool/cssSpecificityCalculator/i18n/zh.ts +169 -0
- package/src/tool/cssSpecificityCalculator/index.ts +15 -7
- package/src/tool/cssToInlineConverter/i18n/de.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/id.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/it.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/ja.ts +161 -0
- package/src/tool/cssToInlineConverter/i18n/ko.ts +161 -0
- package/src/tool/cssToInlineConverter/i18n/nl.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/pl.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/pt.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/ru.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/sv.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/tr.ts +160 -0
- package/src/tool/cssToInlineConverter/i18n/zh.ts +161 -0
- package/src/tool/cssToInlineConverter/index.ts +15 -7
- package/src/tool/duplicateCssRemover/i18n/de.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/id.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/it.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/ja.ts +168 -0
- package/src/tool/duplicateCssRemover/i18n/ko.ts +168 -0
- package/src/tool/duplicateCssRemover/i18n/nl.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/pl.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/pt.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/ru.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/sv.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/tr.ts +167 -0
- package/src/tool/duplicateCssRemover/i18n/zh.ts +168 -0
- package/src/tool/duplicateCssRemover/index.ts +15 -7
- package/src/tool/generadorSecurityTxt/i18n/de.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/id.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/it.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/ja.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/ko.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/nl.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/pl.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/pt.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/ru.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/sv.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/tr.ts +174 -0
- package/src/tool/generadorSecurityTxt/i18n/zh.ts +174 -0
- package/src/tool/generadorSecurityTxt/index.ts +15 -7
- package/src/tool/hashGenerator/i18n/de.ts +119 -0
- package/src/tool/hashGenerator/i18n/id.ts +119 -0
- package/src/tool/hashGenerator/i18n/it.ts +118 -0
- package/src/tool/hashGenerator/i18n/ja.ts +119 -0
- package/src/tool/hashGenerator/i18n/ko.ts +119 -0
- package/src/tool/hashGenerator/i18n/nl.ts +119 -0
- package/src/tool/hashGenerator/i18n/pl.ts +118 -0
- package/src/tool/hashGenerator/i18n/pt.ts +118 -0
- package/src/tool/hashGenerator/i18n/ru.ts +119 -0
- package/src/tool/hashGenerator/i18n/sv.ts +119 -0
- package/src/tool/hashGenerator/i18n/tr.ts +118 -0
- package/src/tool/hashGenerator/i18n/zh.ts +119 -0
- package/src/tool/hashGenerator/index.ts +15 -7
- package/src/tool/inspectorCertificadosSsl/i18n/de.ts +214 -0
- package/src/tool/inspectorCertificadosSsl/i18n/id.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/it.ts +214 -0
- package/src/tool/inspectorCertificadosSsl/i18n/ja.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/ko.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/nl.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/pl.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/pt.ts +214 -0
- package/src/tool/inspectorCertificadosSsl/i18n/ru.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/sv.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/tr.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/i18n/zh.ts +215 -0
- package/src/tool/inspectorCertificadosSsl/index.ts +24 -0
- package/src/tool/jsonFormatter/i18n/de.ts +157 -0
- package/src/tool/jsonFormatter/i18n/es.ts +1 -0
- package/src/tool/jsonFormatter/i18n/fr.ts +2 -1
- package/src/tool/jsonFormatter/i18n/id.ts +157 -0
- package/src/tool/jsonFormatter/i18n/it.ts +156 -0
- package/src/tool/jsonFormatter/i18n/ja.ts +157 -0
- package/src/tool/jsonFormatter/i18n/ko.ts +157 -0
- package/src/tool/jsonFormatter/i18n/nl.ts +157 -0
- package/src/tool/jsonFormatter/i18n/pl.ts +156 -0
- package/src/tool/jsonFormatter/i18n/pt.ts +156 -0
- package/src/tool/jsonFormatter/i18n/ru.ts +157 -0
- package/src/tool/jsonFormatter/i18n/sv.ts +157 -0
- package/src/tool/jsonFormatter/i18n/tr.ts +157 -0
- package/src/tool/jsonFormatter/i18n/zh.ts +157 -0
- package/src/tool/jsonFormatter/index.ts +15 -7
- package/src/tool/keycode/i18n/de.ts +161 -0
- package/src/tool/keycode/i18n/es.ts +1 -0
- package/src/tool/keycode/i18n/fr.ts +2 -1
- package/src/tool/keycode/i18n/id.ts +161 -0
- package/src/tool/keycode/i18n/it.ts +161 -0
- package/src/tool/keycode/i18n/ja.ts +161 -0
- package/src/tool/keycode/i18n/ko.ts +161 -0
- package/src/tool/keycode/i18n/nl.ts +161 -0
- package/src/tool/keycode/i18n/pl.ts +161 -0
- package/src/tool/keycode/i18n/pt.ts +160 -0
- package/src/tool/keycode/i18n/ru.ts +160 -0
- package/src/tool/keycode/i18n/sv.ts +160 -0
- package/src/tool/keycode/i18n/tr.ts +160 -0
- package/src/tool/keycode/i18n/zh.ts +161 -0
- package/src/tool/keycode/index.ts +15 -7
- package/src/tool/llmCostCalculator/i18n/de.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/fr.ts +2 -1
- package/src/tool/llmCostCalculator/i18n/id.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/it.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/ja.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/ko.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/nl.ts +166 -0
- package/src/tool/llmCostCalculator/i18n/pl.ts +165 -0
- package/src/tool/llmCostCalculator/i18n/pt.ts +165 -0
- package/src/tool/llmCostCalculator/i18n/ru.ts +165 -0
- package/src/tool/llmCostCalculator/i18n/sv.ts +165 -0
- package/src/tool/llmCostCalculator/i18n/tr.ts +165 -0
- package/src/tool/llmCostCalculator/i18n/zh.ts +166 -0
- package/src/tool/llmCostCalculator/index.ts +24 -0
- package/src/tool/mobileMockupGenerator/i18n/de.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/id.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/it.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/ja.ts +122 -0
- package/src/tool/mobileMockupGenerator/i18n/ko.ts +122 -0
- package/src/tool/mobileMockupGenerator/i18n/nl.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/pl.ts +31 -0
- package/src/tool/mobileMockupGenerator/i18n/pt.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/ru.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/sv.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/tr.ts +121 -0
- package/src/tool/mobileMockupGenerator/i18n/zh.ts +122 -0
- package/src/tool/mobileMockupGenerator/index.ts +24 -0
- package/src/tool/musicalTypography/i18n/de.ts +179 -0
- package/src/tool/musicalTypography/i18n/id.ts +179 -0
- package/src/tool/musicalTypography/i18n/it.ts +179 -0
- package/src/tool/musicalTypography/i18n/ja.ts +180 -0
- package/src/tool/musicalTypography/i18n/ko.ts +180 -0
- package/src/tool/musicalTypography/i18n/nl.ts +179 -0
- package/src/tool/musicalTypography/i18n/pl.ts +179 -0
- package/src/tool/musicalTypography/i18n/pt.ts +101 -0
- package/src/tool/musicalTypography/i18n/ru.ts +47 -0
- package/src/tool/musicalTypography/i18n/sv.ts +29 -0
- package/src/tool/musicalTypography/i18n/tr.ts +29 -0
- package/src/tool/musicalTypography/i18n/zh.ts +30 -0
- package/src/tool/musicalTypography/index.ts +15 -7
- package/src/tool/placeholderGenerator/i18n/de.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/id.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/it.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/ja.ts +177 -0
- package/src/tool/placeholderGenerator/i18n/ko.ts +177 -0
- package/src/tool/placeholderGenerator/i18n/nl.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/pl.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/pt.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/ru.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/sv.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/tr.ts +176 -0
- package/src/tool/placeholderGenerator/i18n/zh.ts +177 -0
- package/src/tool/placeholderGenerator/index.ts +24 -0
- package/src/tool/promptLibrary/i18n/de.ts +131 -0
- package/src/tool/promptLibrary/i18n/id.ts +131 -0
- package/src/tool/promptLibrary/i18n/it.ts +131 -0
- package/src/tool/promptLibrary/i18n/ja.ts +132 -0
- package/src/tool/promptLibrary/i18n/ko.ts +132 -0
- package/src/tool/promptLibrary/i18n/nl.ts +131 -0
- package/src/tool/promptLibrary/i18n/pl.ts +28 -0
- package/src/tool/promptLibrary/i18n/pt.ts +101 -0
- package/src/tool/promptLibrary/i18n/ru.ts +101 -0
- package/src/tool/promptLibrary/i18n/sv.ts +93 -0
- package/src/tool/promptLibrary/i18n/tr.ts +93 -0
- package/src/tool/promptLibrary/i18n/zh.ts +94 -0
- package/src/tool/promptLibrary/index.ts +24 -0
- package/src/tool/readabilityCalculator/i18n/de.ts +133 -0
- package/src/tool/readabilityCalculator/i18n/id.ts +133 -0
- package/src/tool/readabilityCalculator/i18n/it.ts +133 -0
- package/src/tool/readabilityCalculator/i18n/ja.ts +134 -0
- package/src/tool/readabilityCalculator/i18n/ko.ts +134 -0
- package/src/tool/readabilityCalculator/i18n/nl.ts +133 -0
- package/src/tool/readabilityCalculator/i18n/pl.ts +29 -0
- package/src/tool/readabilityCalculator/i18n/pt.ts +91 -0
- package/src/tool/readabilityCalculator/i18n/ru.ts +91 -0
- package/src/tool/readabilityCalculator/i18n/sv.ts +43 -0
- package/src/tool/readabilityCalculator/i18n/tr.ts +43 -0
- package/src/tool/readabilityCalculator/i18n/zh.ts +44 -0
- package/src/tool/readabilityCalculator/index.ts +24 -0
- package/src/tool/svgSanitizer/i18n/de.ts +125 -0
- package/src/tool/svgSanitizer/i18n/id.ts +125 -0
- package/src/tool/svgSanitizer/i18n/it.ts +125 -0
- package/src/tool/svgSanitizer/i18n/ja.ts +126 -0
- package/src/tool/svgSanitizer/i18n/ko.ts +126 -0
- package/src/tool/svgSanitizer/i18n/nl.ts +125 -0
- package/src/tool/svgSanitizer/i18n/pl.ts +125 -0
- package/src/tool/svgSanitizer/i18n/pt.ts +30 -0
- package/src/tool/svgSanitizer/i18n/ru.ts +126 -0
- package/src/tool/svgSanitizer/i18n/sv.ts +126 -0
- package/src/tool/svgSanitizer/i18n/tr.ts +126 -0
- package/src/tool/svgSanitizer/i18n/zh.ts +126 -0
- package/src/tool/svgSanitizer/index.ts +24 -0
- package/src/tool/svgToCss/i18n/de.ts +174 -0
- package/src/tool/svgToCss/i18n/id.ts +174 -0
- package/src/tool/svgToCss/i18n/it.ts +174 -0
- package/src/tool/svgToCss/i18n/ja.ts +175 -0
- package/src/tool/svgToCss/i18n/ko.ts +175 -0
- package/src/tool/svgToCss/i18n/nl.ts +174 -0
- package/src/tool/svgToCss/i18n/pl.ts +174 -0
- package/src/tool/svgToCss/i18n/pt.ts +174 -0
- package/src/tool/svgToCss/i18n/ru.ts +174 -0
- package/src/tool/svgToCss/i18n/sv.ts +174 -0
- package/src/tool/svgToCss/i18n/tr.ts +174 -0
- package/src/tool/svgToCss/i18n/zh.ts +175 -0
- package/src/tool/svgToCss/index.ts +15 -7
- package/src/tool/urlCleaner/i18n/de.ts +116 -0
- package/src/tool/urlCleaner/i18n/id.ts +116 -0
- package/src/tool/urlCleaner/i18n/it.ts +116 -0
- package/src/tool/urlCleaner/i18n/ja.ts +117 -0
- package/src/tool/urlCleaner/i18n/ko.ts +117 -0
- package/src/tool/urlCleaner/i18n/nl.ts +116 -0
- package/src/tool/urlCleaner/i18n/pl.ts +29 -0
- package/src/tool/urlCleaner/i18n/pt.ts +43 -0
- package/src/tool/urlCleaner/i18n/ru.ts +43 -0
- package/src/tool/urlCleaner/i18n/sv.ts +43 -0
- package/src/tool/urlCleaner/i18n/tr.ts +43 -0
- package/src/tool/urlCleaner/i18n/zh.ts +44 -0
- package/src/tool/urlCleaner/index.ts +24 -0
- package/src/tool/urlEncoderDecoder/i18n/de.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/id.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/it.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/ja.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/ko.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/nl.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/pl.ts +162 -0
- package/src/tool/urlEncoderDecoder/i18n/pt.ts +162 -0
- package/src/tool/urlEncoderDecoder/i18n/ru.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/sv.ts +163 -0
- package/src/tool/urlEncoderDecoder/i18n/tr.ts +162 -0
- package/src/tool/urlEncoderDecoder/i18n/zh.ts +163 -0
- package/src/tool/urlEncoderDecoder/index.ts +15 -7
- package/src/tool/utmGenerator/i18n/de.ts +118 -0
- package/src/tool/utmGenerator/i18n/id.ts +118 -0
- package/src/tool/utmGenerator/i18n/it.ts +118 -0
- package/src/tool/utmGenerator/i18n/ja.ts +118 -0
- package/src/tool/utmGenerator/i18n/ko.ts +118 -0
- package/src/tool/utmGenerator/i18n/nl.ts +118 -0
- package/src/tool/utmGenerator/i18n/pl.ts +117 -0
- package/src/tool/utmGenerator/i18n/pt.ts +118 -0
- package/src/tool/utmGenerator/i18n/ru.ts +118 -0
- package/src/tool/utmGenerator/i18n/sv.ts +118 -0
- package/src/tool/utmGenerator/i18n/tr.ts +117 -0
- package/src/tool/utmGenerator/i18n/zh.ts +118 -0
- package/src/tool/utmGenerator/index.ts +15 -7
- package/src/types.ts +1 -2
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { SvgToCssUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-to-css-converter';
|
|
6
|
+
const title = '無料オンラインSVGからCSSおよびData URIへの変換ツール';
|
|
7
|
+
const description =
|
|
8
|
+
'SVGアイコンやベクトルをCSSコード(背景またはマスク)や圧縮されたData URIに変換します。外部HTTPリクエストを排除し、ウェブサイトのパフォーマンスを最適化します。';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Data URIを使用するのと、外部.svgファイルを使用するのはどちらが良いですか?',
|
|
13
|
+
answer:
|
|
14
|
+
'ユースケースによります。Data URIはHTTPリクエストを排除しますが(小さなアイコンに最適)、CSSファイルのサイズが増加します。大きな画像や詳細なイラストの場合は、外部ファイルが好ましいです。',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'CSSに埋め込まれたSVGの色を変更するにはどうすればよいですか?',
|
|
18
|
+
answer:
|
|
19
|
+
'「mask-image」を使用するのが最善の方法です。SVGをマスクとして定義することで、「background-color」を使用して動的に色を変更でき、:hover状態でも有効です。',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'CSSマスクをサポートしているブラウザはどれですか?',
|
|
23
|
+
answer:
|
|
24
|
+
'すべてのモダンブラウザ(Chrome、Firefox、Safari、Edge)がフルサポートしています。古いブラウザ向けには、一般的に-webkit-プリフィックスが使用されます。',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Data URIの使用はSEOに影響しますか?',
|
|
28
|
+
answer:
|
|
29
|
+
'はい、好影響を与えます。ページのレンダリングに必要なリクエスト数を減らすことで、読み込み時間(LCP)とCore Web Vitalsのスコアを向上させます。',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
question: 'ReactやTailwindなどのフレームワークで使用できますか?',
|
|
33
|
+
answer:
|
|
34
|
+
'もちろんです!生成されたコードをコピーして、.cssファイル内、あるいはTailwind CSSの任意の値として使用できます。',
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
|
|
38
|
+
const howToData = [
|
|
39
|
+
{
|
|
40
|
+
name: 'SVGを貼り付ける',
|
|
41
|
+
text: 'SVGファイルのソースコードをコピーし、左側のテキストエリアに貼り付けます。',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: '出力タイプを選択する',
|
|
45
|
+
text: '背景画像(静的な背景用)、CSSマスク(動的な色のアイコン用)、またはData URIのみ(直接使用用)から選択します。',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: '結果をコピーする',
|
|
49
|
+
text: '「コピー」をクリックして、生成されたCSSコードをクリップボードにコピーします。',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: 'プロジェクトに適用する',
|
|
53
|
+
text: 'コードをスタイルシートまたはCSSコンポーネントに貼り付けます。マスクの場合は、アイコンの色を定義するためにbackground-colorも追加してください。',
|
|
54
|
+
},
|
|
55
|
+
];
|
|
56
|
+
|
|
57
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
58
|
+
'@context': 'https://schema.org',
|
|
59
|
+
'@type': 'FAQPage',
|
|
60
|
+
mainEntity: faqData.map((item) => ({
|
|
61
|
+
'@type': 'Question',
|
|
62
|
+
name: item.question,
|
|
63
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
64
|
+
})),
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
68
|
+
'@context': 'https://schema.org',
|
|
69
|
+
'@type': 'HowTo',
|
|
70
|
+
name: title,
|
|
71
|
+
description,
|
|
72
|
+
step: howToData.map((step, i) => ({
|
|
73
|
+
'@type': 'HowToStep',
|
|
74
|
+
position: i + 1,
|
|
75
|
+
name: step.name,
|
|
76
|
+
text: step.text,
|
|
77
|
+
})),
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
81
|
+
'@context': 'https://schema.org',
|
|
82
|
+
'@type': 'SoftwareApplication',
|
|
83
|
+
name: title,
|
|
84
|
+
description,
|
|
85
|
+
applicationCategory: 'UtilityApplication',
|
|
86
|
+
operatingSystem: 'All',
|
|
87
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
88
|
+
inLanguage: 'ja',
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const ui: SvgToCssUI = {
|
|
92
|
+
labelPasteTitle: 'SVGを貼り付け',
|
|
93
|
+
labelInputArea: 'SVGソースコード',
|
|
94
|
+
labelPreviewOriginal: '元のプレビュー',
|
|
95
|
+
labelResultTitle: 'CSSの結果',
|
|
96
|
+
labelPreviewApplied: '適用後の結果',
|
|
97
|
+
tabBackground: '背景画像',
|
|
98
|
+
tabMask: 'CSSマスク / Webkit',
|
|
99
|
+
tabUri: 'Data URIのみ',
|
|
100
|
+
btnCopy: 'コピー',
|
|
101
|
+
btnCopied: 'コピー完了!',
|
|
102
|
+
placeholder: '<svg xmlns="http://www.w3.org/2000/svg" ...',
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export const content: ToolLocaleContent<SvgToCssUI> = {
|
|
106
|
+
slug,
|
|
107
|
+
title,
|
|
108
|
+
description,
|
|
109
|
+
ui,
|
|
110
|
+
faqTitle: 'よくある質問',
|
|
111
|
+
faq: faqData,
|
|
112
|
+
bibliographyTitle: '参考文献とドキュメント',
|
|
113
|
+
bibliography: [
|
|
114
|
+
{
|
|
115
|
+
name: 'CSS-Tricks: 背景としてSVGを使用する',
|
|
116
|
+
url: 'https://css-tricks.com/using-svg/',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'MDN Web Docs: mask-image',
|
|
120
|
+
url: 'https://developer.mozilla.org/ja/docs/Web/CSS/mask-image',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
name: 'MDN Web Docs: background-image',
|
|
124
|
+
url: 'https://developer.mozilla.org/ja/docs/Web/CSS/background-image',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: 'W3C: CSS Masking Module Level 1',
|
|
128
|
+
url: 'https://www.w3.org/TR/css-masking-1/',
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
howTo: howToData,
|
|
132
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
133
|
+
seo: [
|
|
134
|
+
{
|
|
135
|
+
type: 'title',
|
|
136
|
+
text: 'なぜSVGをCSS Data URIに変換するのですか?',
|
|
137
|
+
level: 2,
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'paragraph',
|
|
141
|
+
html: '現代のウェブ開発において、パフォーマンスとリソース読み込みの最適化は不可欠です。<strong>Data URI</strong>を介してアイコンをCSSに直接埋め込むことで、不要なHTTPリクエストを排除し、レイテンシを短縮してTime to Interactive (TTI) を向上させることができます。',
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'このツールは、<code><svg></code>ベクトルコードを、ブラウザが背景画像やクリッピングマスクとして解釈できるエンコードされた文字列に変換します。これにより、ベクトルの特徴である無限の忠実度と鮮明さを維持できます。',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: '主な技術的利点',
|
|
150
|
+
level: 3,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'list',
|
|
154
|
+
items: [
|
|
155
|
+
'<strong>HTTPリクエストのゼロ化:</strong> グラフィックを<code>.css</code>ファイルに埋め込むことで、ブラウザは追加の外部ファイルをダウンロードする必要がなくなります。',
|
|
156
|
+
'<strong>CSSマスクによるカスタマイズ:</strong> <code>mask-image</code>技術を使用することで、<code>background-color</code>を使用するだけで複雑なベクトルアイコンの色を変更できます。',
|
|
157
|
+
'<strong>即時レンダリング:</strong> 重要なビジュアルリソースがスタイルシートと同時に利用可能になるため、コンテンツのちらつき(FOUC)を回避できます。',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: 'CSSマスク vs 背景',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: '多くの開発者はベクトルを埋め込むために単に<code>background-image</code>を使用しますが、これには制限があります。CSSから動的にSVGの色を変更することができません。',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
type: 'paragraph',
|
|
171
|
+
html: '当ユーティリティは、<strong>CSSマスク</strong>用のコード生成をサポートしています。生成されたData URIで<code>mask-image</code>を適用することにより、アイコンがステンシルのように機能し、要素の<code>background-color</code>でアイコンの最終的な色を定義できるようになります。これは、AstroやNext.jsなどのモダンなフレームワークでアイコンを管理するための、最もプロフェッショナルで柔軟な方法です。',
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
};
|
|
175
|
+
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { SvgToCssUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-to-css-converter';
|
|
6
|
+
const title = '무료 온라인 SVG to CSS 및 Data URI 변환기';
|
|
7
|
+
const description =
|
|
8
|
+
'SVG 아이콘과 벡터를 CSS 코드(Background 또는 Mask) 또는 압축된 Data URI로 변환하세요. 외부 HTTP 요청을 제거하여 웹사이트 성능을 최적화합니다.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Data URI를 사용하는 것과 외부 .svg 파일을 사용하는 것 중 무엇이 더 좋나요?',
|
|
13
|
+
answer:
|
|
14
|
+
'사용 사례에 따라 다릅니다. Data URI는 HTTP 요청을 제거하지만(작은 아이콘에 이상적), CSS 파일 크기를 늘립니다. 크거나 세부적인 일러스트레이션의 경우 외부 파일이 더 바람직합니다.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'CSS에 포함된 SVG의 색상을 어떻게 변경하나요?',
|
|
18
|
+
answer:
|
|
19
|
+
"'mask-image'를 사용하는 것이 가장 좋은 방법입니다. SVG를 마스크로 정의하면 'background-color'를 사용하여 :hover 상태에서도 색상을 동적으로 변경할 수 있습니다.",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: '어떤 브라우저가 CSS 마스크를 지원하나요?',
|
|
23
|
+
answer:
|
|
24
|
+
'모든 현대적인 브라우저(Chrome, Firefox, Safari, Edge)가 완전히 지원합니다. 구형 브라우저의 경우 일반적으로 -webkit- 접두사가 사용됩니다.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Data URI를 사용하면 SEO에 영향을 미치나요?',
|
|
28
|
+
answer:
|
|
29
|
+
'예, 긍정적인 영향을 미칩니다. 페이지 렌더링에 필요한 요청 수를 줄임으로써 로딩 시간(LCP)과 Core Web Vitals 점수를 개선합니다.',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
question: 'React나 Tailwind와 같은 프레임워크에서 사용할 수 있나요?',
|
|
33
|
+
answer:
|
|
34
|
+
'물론입니다! 생성된 코드를 복사하여 .css 파일이나 Tailwind CSS의 임의 값으로 사용할 수 있습니다.',
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
|
|
38
|
+
const howToData = [
|
|
39
|
+
{
|
|
40
|
+
name: 'SVG 붙여넣기',
|
|
41
|
+
text: 'SVG 파일의 소스 코드를 복사하여 왼쪽의 텍스트 영역에 붙여넣습니다.',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: '출력 유형 선택',
|
|
45
|
+
text: '배경 이미지(정적인 배경용), CSS 마스크(동적 색상의 아이콘용) 또는 Data URI 전용(직접 사용용) 중에서 선택합니다.',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: '결과 복사하기',
|
|
49
|
+
text: '"복사"를 클릭하여 생성된 CSS 코드를 클립보드에 담습니다.',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: '프로젝트에 적용',
|
|
53
|
+
text: '코드를 스타일시트나 CSS 컴포넌트에 붙여넣습니다. 마스크의 경우 아이콘 색상을 정의하기 위해 background-color도 추가하세요.',
|
|
54
|
+
},
|
|
55
|
+
];
|
|
56
|
+
|
|
57
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
58
|
+
'@context': 'https://schema.org',
|
|
59
|
+
'@type': 'FAQPage',
|
|
60
|
+
mainEntity: faqData.map((item) => ({
|
|
61
|
+
'@type': 'Question',
|
|
62
|
+
name: item.question,
|
|
63
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
64
|
+
})),
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
68
|
+
'@context': 'https://schema.org',
|
|
69
|
+
'@type': 'HowTo',
|
|
70
|
+
name: title,
|
|
71
|
+
description,
|
|
72
|
+
step: howToData.map((step, i) => ({
|
|
73
|
+
'@type': 'HowToStep',
|
|
74
|
+
position: i + 1,
|
|
75
|
+
name: step.name,
|
|
76
|
+
text: step.text,
|
|
77
|
+
})),
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
81
|
+
'@context': 'https://schema.org',
|
|
82
|
+
'@type': 'SoftwareApplication',
|
|
83
|
+
name: title,
|
|
84
|
+
description,
|
|
85
|
+
applicationCategory: 'UtilityApplication',
|
|
86
|
+
operatingSystem: 'All',
|
|
87
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
88
|
+
inLanguage: 'ko',
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const ui: SvgToCssUI = {
|
|
92
|
+
labelPasteTitle: 'SVG 붙여넣기',
|
|
93
|
+
labelInputArea: 'SVG 소스 코드',
|
|
94
|
+
labelPreviewOriginal: '원본 미리보기',
|
|
95
|
+
labelResultTitle: 'CSS 결과',
|
|
96
|
+
labelPreviewApplied: '적용된 결과',
|
|
97
|
+
tabBackground: '배경 이미지',
|
|
98
|
+
tabMask: 'CSS 마스크 / Webkit',
|
|
99
|
+
tabUri: 'Data URI 전용',
|
|
100
|
+
btnCopy: '복사',
|
|
101
|
+
btnCopied: '복사됨!',
|
|
102
|
+
placeholder: '<svg xmlns="http://www.w3.org/2000/svg" ...',
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export const content: ToolLocaleContent<SvgToCssUI> = {
|
|
106
|
+
slug,
|
|
107
|
+
title,
|
|
108
|
+
description,
|
|
109
|
+
ui,
|
|
110
|
+
faqTitle: '자주 묻는 질문',
|
|
111
|
+
faq: faqData,
|
|
112
|
+
bibliographyTitle: '참고 자료 및 문서',
|
|
113
|
+
bibliography: [
|
|
114
|
+
{
|
|
115
|
+
name: 'CSS-Tricks: 배경으로 SVG 사용하기',
|
|
116
|
+
url: 'https://css-tricks.com/using-svg/',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'MDN Web Docs: mask-image',
|
|
120
|
+
url: 'https://developer.mozilla.org/ko/docs/Web/CSS/mask-image',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
name: 'MDN Web Docs: background-image',
|
|
124
|
+
url: 'https://developer.mozilla.org/ko/docs/Web/CSS/background-image',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: 'W3C: CSS Masking Module Level 1',
|
|
128
|
+
url: 'https://www.w3.org/TR/css-masking-1/',
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
howTo: howToData,
|
|
132
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
133
|
+
seo: [
|
|
134
|
+
{
|
|
135
|
+
type: 'title',
|
|
136
|
+
text: '왜 SVG를 CSS Data URI로 변환하나요?',
|
|
137
|
+
level: 2,
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'paragraph',
|
|
141
|
+
html: '현대적인 웹 개발에서 성능과 리소스 로딩 최적화는 필수적입니다. <strong>Data URI</strong>를 통해 아이콘을 CSS에 직접 포함하면 불필요한 HTTP 요청을 제거하고, 지연 시간을 줄이며 TTI(Time to Interactive)를 개선할 수 있습니다.',
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: '이 도구는 <code><svg></code> 벡터 코드를 브라우저가 배경 이미지나 클리핑 마스크로 해석할 수 있는 인코딩된 문자열로 변환합니다. 이를 통해 벡터 특유의 무한한 확장성과 선명함을 유지할 수 있습니다.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: '주요 기술적 이점',
|
|
150
|
+
level: 3,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'list',
|
|
154
|
+
items: [
|
|
155
|
+
'<strong>HTTP 요청 제로화:</strong> 그래픽을 <code>.css</code> 파일에 직접 포함하면 브라우저가 추가 외부 파일을 다운로드할 필요가 없습니다.',
|
|
156
|
+
'<strong>CSS 마스크를 통한 커스터마이징:</strong> <code>mask-image</code> 기술을 사용하면 <code>background-color</code>만으로 복잡한 벡터 아이콘의 색상을 간단히 변경할 수 있습니다.',
|
|
157
|
+
'<strong>즉각적인 렌더링:</strong> 스타일시트가 다운로드되는 즉시 시각적 리소스를 사용할 수 있으므로 콘텐츠 깜빡임(FOUC) 현상을 피할 수 있습니다.',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: 'CSS 마스크 vs 배경',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: '많은 개발자가 벡터를 포함하기 위해 단순히 <code>background-image</code>를 사용하지만, 이는 CSS에서 SVG 색상을 동적으로 변경할 수 없다는 한계가 있습니다.',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
type: 'paragraph',
|
|
171
|
+
html: '저희 도구는 <strong>CSS 마스크</strong>를 위한 코드 생성을 지원합니다. 생성된 Data URI로 <code>mask-image</code>를 적용하면 아이콘이 스텐실 역할을 하여 요소의 <code>background-color</code>가 아이콘의 최종 색상을 정의하게 됩니다. 이는 Astro, Next.js 또는 모든 현대적인 프레임워크에서 아이콘을 관리하는 가장 전문적이고 유연한 방법입니다.',
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
};
|
|
175
|
+
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { SvgToCssUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'svg-naar-css-converter';
|
|
6
|
+
const title = 'Gratis Online SVG naar CSS en Data URI Converter';
|
|
7
|
+
const description =
|
|
8
|
+
'Transformeer uw SVG-iconen en vectoren naar CSS-code (Background of Mask) of gecomprimeerde Data URI. Optimaliseer uw websiteprestaties door externe HTTP-verzoeken te elimineren.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Is het beter om een Data URI of een extern .svg-bestand te gebruiken?',
|
|
13
|
+
answer:
|
|
14
|
+
'Dit hangt af van de use-case. Data URI\'s elimineren HTTP-verzoeken (ideaal voor kleine iconen), maar vergroten het CSS-bestand. Voor grote of gedetailleerde illustraties is een extern bestand de voorkeur.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Hoe verander ik de kleur van een in CSS ingebedde SVG?',
|
|
18
|
+
answer:
|
|
19
|
+
"De beste manier is via 'mask-image'. Door de SVG als masker te definiëren, kunt u 'background-color' gebruiken om de kleur dynamisch te wijzigen, zelfs in :hover-states.",
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Welke browsers ondersteunen CSS Masks?',
|
|
23
|
+
answer:
|
|
24
|
+
'Alle moderne browsers (Chrome, Firefox, Safari, Edge) hebben volledige ondersteuning. Voor oudere browsers worden meestal -webkit-prefixen gebruikt.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Heeft het gebruik van Data URI\'s invloed op SEO?',
|
|
28
|
+
answer:
|
|
29
|
+
'Ja, positief. Door het aantal verzoeken te verminderen dat nodig is om de pagina te renderen, verbetert het de laadtijd (LCP) en Core Web Vitals-scores.',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
question: 'Kan ik het gebruiken in frameworks zoals React of Tailwind?',
|
|
33
|
+
answer:
|
|
34
|
+
'Absoluut! U kunt de gegenereerde code kopiëren en gebruiken in uw .css-bestanden of zelfs als willekeurige waarden in Tailwind CSS.',
|
|
35
|
+
},
|
|
36
|
+
];
|
|
37
|
+
|
|
38
|
+
const howToData = [
|
|
39
|
+
{
|
|
40
|
+
name: 'Plak de SVG',
|
|
41
|
+
text: 'Kopieer de broncode van uw SVG-bestand en plak deze in het tekstvak aan de linkerkant.',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
name: 'Kies het uitvoertype',
|
|
45
|
+
text: 'Kies tussen Achtergrondafbeelding (voor statische achtergronden), CSS-masker (voor iconen met dynamische kleur) of Alleen Data URI (voor direct gebruik).',
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: 'Kopieer het resultaat',
|
|
49
|
+
text: 'Klik op "Kopiëren" om de gegenereerde CSS-code naar uw klembord te kopiëren.',
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
name: 'Toepassen in uw project',
|
|
53
|
+
text: 'Plak de code in uw stylesheet of CSS-component. Voeg voor maskers ook background-color toe om de kleur van het icoon te definiëren.',
|
|
54
|
+
},
|
|
55
|
+
];
|
|
56
|
+
|
|
57
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
58
|
+
'@context': 'https://schema.org',
|
|
59
|
+
'@type': 'FAQPage',
|
|
60
|
+
mainEntity: faqData.map((item) => ({
|
|
61
|
+
'@type': 'Question',
|
|
62
|
+
name: item.question,
|
|
63
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
64
|
+
})),
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
68
|
+
'@context': 'https://schema.org',
|
|
69
|
+
'@type': 'HowTo',
|
|
70
|
+
name: title,
|
|
71
|
+
description,
|
|
72
|
+
step: howToData.map((step, i) => ({
|
|
73
|
+
'@type': 'HowToStep',
|
|
74
|
+
position: i + 1,
|
|
75
|
+
name: step.name,
|
|
76
|
+
text: step.text,
|
|
77
|
+
})),
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
81
|
+
'@context': 'https://schema.org',
|
|
82
|
+
'@type': 'SoftwareApplication',
|
|
83
|
+
name: title,
|
|
84
|
+
description,
|
|
85
|
+
applicationCategory: 'UtilityApplication',
|
|
86
|
+
operatingSystem: 'All',
|
|
87
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
88
|
+
inLanguage: 'nl',
|
|
89
|
+
};
|
|
90
|
+
|
|
91
|
+
const ui: SvgToCssUI = {
|
|
92
|
+
labelPasteTitle: 'Plak SVG',
|
|
93
|
+
labelInputArea: 'SVG Broncode',
|
|
94
|
+
labelPreviewOriginal: 'Originele Preview',
|
|
95
|
+
labelResultTitle: 'CSS Resultaat',
|
|
96
|
+
labelPreviewApplied: 'Toegepast Resultaat',
|
|
97
|
+
tabBackground: 'Achtergrondafbeelding',
|
|
98
|
+
tabMask: 'CSS Masker / Webkit',
|
|
99
|
+
tabUri: 'Alleen Data URI',
|
|
100
|
+
btnCopy: 'Kopiëren',
|
|
101
|
+
btnCopied: 'Gekopieerd!',
|
|
102
|
+
placeholder: '<svg xmlns="http://www.w3.org/2000/svg" ...',
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
export const content: ToolLocaleContent<SvgToCssUI> = {
|
|
106
|
+
slug,
|
|
107
|
+
title,
|
|
108
|
+
description,
|
|
109
|
+
ui,
|
|
110
|
+
faqTitle: 'Veelgestelde Vragen',
|
|
111
|
+
faq: faqData,
|
|
112
|
+
bibliographyTitle: 'Referenties en Documentatie',
|
|
113
|
+
bibliography: [
|
|
114
|
+
{
|
|
115
|
+
name: 'CSS-Tricks: Using SVG as Background',
|
|
116
|
+
url: 'https://css-tricks.com/using-svg/',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'MDN Web Docs: mask-image',
|
|
120
|
+
url: 'https://developer.mozilla.org/en-US/docs/Web/CSS/mask-image',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
name: 'MDN Web Docs: background-image',
|
|
124
|
+
url: 'https://developer.mozilla.org/en-US/docs/Web/CSS/background-image',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: 'W3C: CSS Masking Module Level 1',
|
|
128
|
+
url: 'https://www.w3.org/TR/css-masking-1/',
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
howTo: howToData,
|
|
132
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
133
|
+
seo: [
|
|
134
|
+
{
|
|
135
|
+
type: 'title',
|
|
136
|
+
text: 'Waarom SVG converteren naar CSS Data URI?',
|
|
137
|
+
level: 2,
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'paragraph',
|
|
141
|
+
html: 'In moderne webontwikkeling is het optimaliseren van prestaties en het laden van bronnen essentieel. Het direct inbedden van iconen in CSS via <strong>Data URI\'s</strong> elimineert onnodige HTTP-verzoeken, vermindert latentie en verbetert de Time to Interactive (TTI).',
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
type: 'paragraph',
|
|
145
|
+
html: 'Deze tool transformeert <code><svg></code> vectorcode naar een gecodeerde tekststring die de browser kan interpreteren als een achtergrondafbeelding of een masker, terwijl de oneindige schaalbaarheid en de scherpte van vectoren behouden blijven.',
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
type: 'title',
|
|
149
|
+
text: 'Belangrijkste technische voordelen',
|
|
150
|
+
level: 3,
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'list',
|
|
154
|
+
items: [
|
|
155
|
+
'<strong>Nul HTTP-verzoeken:</strong> Door de grafische bestanden in uw <code>.css</code>-bestanden in te bedden, hoeft de browser geen aanvullende externe bestanden te downloaden.',
|
|
156
|
+
'<strong>Aanpassing via CSS Mask:</strong> Met de <code>mask-image</code>-techniek kunt u de kleur van een complex vectoricoon wijzigen door simpelweg <code>background-color</code> te gebruiken.',
|
|
157
|
+
'<strong>Onmiddellijke rendering:</strong> U vermijdt contentflikkering (FOUC) omdat kritieke visuele bronnen beschikbaar zijn zodra het stylesheet is gedownload.',
|
|
158
|
+
],
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
type: 'title',
|
|
162
|
+
text: 'CSS Masks vs Achtergronden',
|
|
163
|
+
level: 3,
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
type: 'paragraph',
|
|
167
|
+
html: 'Veel ontwikkelaars gebruiken gewoon <code>background-image</code> om vectoren in te bedden, maar dit heeft een beperking: u kunt de kleur van de SVG niet dynamisch wijzigen via CSS.',
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
type: 'paragraph',
|
|
171
|
+
html: 'Onze tool ondersteunt codegeneratie voor <strong>CSS Masks</strong>. Door een <code>mask-image</code> toe te passen met de gegenereerde Data URI, fungeert het icoon als een sjabloon, waardoor de <code>background-color</code> van het element de uiteindelijke kleur van het icoon definieert. Het is de meest professionele en flexibele manier om iconen te beheren in Astro, Next.js of elk modern framework.',
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
};
|