@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,156 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { JsonFormatterUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'formatador-json';
|
|
6
|
+
const title = 'Formatador e Validador de JSON Online Grátis';
|
|
7
|
+
const description =
|
|
8
|
+
'Ferramenta online gratuita para formatar, validar e reparar código JSON. Embeleze e formate JSON. Detecta erros de sintaxe e melhora a legibilidade do código.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Meus dados estão seguros ao usar este formatador?',
|
|
13
|
+
answer:
|
|
14
|
+
'Com certeza. Todo o processamento ocorre 100% no seu navegador (Client-Side). Seus dados JSON nunca são enviados para nenhum servidor, garantindo total privacidade para suas estruturas de dados.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: "O que causa um erro de 'JSON Inválido'?",
|
|
18
|
+
answer:
|
|
19
|
+
'Geralmente é causado por vírgulas extras no final de um objeto, falta de aspas duplas nas chaves ou caracteres invisíveis. Nossa ferramenta destaca a linha exata do erro para que você possa corrigi-lo.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Ele pode reparar um JSON corrompido?',
|
|
23
|
+
answer:
|
|
24
|
+
'Nossa ferramenta tenta corrigir automaticamente erros comuns, como vírgulas finais desnecessárias ou escapes de caracteres mal formados, para que o JSON se torne válido de acordo com o padrão RFC 8259.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Suporta arquivos JSON muito grandes?',
|
|
28
|
+
answer:
|
|
29
|
+
'Sim, o motor de processamento está otimizado para lidar com estruturas de dados complexas e arquivos grandes sem bloquear a interface do navegador.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Cole seu código',
|
|
36
|
+
text: 'Cole seu JSON não formatado ou minificado na área de texto principal.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Valide e Formate',
|
|
40
|
+
text: 'O sistema analisará automaticamente o código, destacando erros de sintaxe e aplicando indentação para melhorar a legibilidade.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Escolha um estilo',
|
|
44
|
+
text: 'Escolha entre um formato expandido (beautify) ou compactado (minify), dependendo se você precisa de legibilidade ou economia de espaço.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Copie o resultado',
|
|
48
|
+
text: 'Clique no botão de copiar para levar o JSON perfeitamente validado para sua área de transferência.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'pt',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const ui: JsonFormatterUI = {
|
|
87
|
+
labelInput: 'Entrada (JSON)',
|
|
88
|
+
labelOutput: 'Saída',
|
|
89
|
+
btnMinify: 'Minificar',
|
|
90
|
+
btnBeautify: 'Formatar',
|
|
91
|
+
btnFix: 'Tentar Reparar',
|
|
92
|
+
btnCopy: 'Copiar',
|
|
93
|
+
statusWaiting: 'Aguardando entrada...',
|
|
94
|
+
statusValid: 'JSON Válido',
|
|
95
|
+
statusInvalid: 'JSON Inválido',
|
|
96
|
+
toastCopied: 'Copiado!',
|
|
97
|
+
toastFixed: 'JSON reparado (Visualização)',
|
|
98
|
+
toastFixFailed: 'Não foi possível reparar automaticamente',
|
|
99
|
+
placeholder: 'Cole seu JSON aqui...',
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export const content: ToolLocaleContent<JsonFormatterUI> = {
|
|
103
|
+
slug,
|
|
104
|
+
title,
|
|
105
|
+
description,
|
|
106
|
+
ui,
|
|
107
|
+
faqTitle: 'Perguntas Frequentes',
|
|
108
|
+
faq: faqData,
|
|
109
|
+
bibliographyTitle: 'Referências e Padrões',
|
|
110
|
+
bibliography: [
|
|
111
|
+
{
|
|
112
|
+
name: 'RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format (IETF)',
|
|
113
|
+
url: 'https://datatracker.ietf.org/doc/html/rfc8259',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: 'ECMA-404 – The JSON Data Interchange Syntax (Ecma International)',
|
|
117
|
+
url: 'https://www.ecma-international.org/publications-and-standards/standards/ecma-404/',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'JSON.org – Introdução ao JSON',
|
|
121
|
+
url: 'https://www.json.org/json-en.html',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'MDN Web Docs – JSON',
|
|
125
|
+
url: 'https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Global_Objects/JSON',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
howTo: howToData,
|
|
129
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
130
|
+
seo: [
|
|
131
|
+
{
|
|
132
|
+
type: 'title',
|
|
133
|
+
text: 'Validação e Formatação de JSON',
|
|
134
|
+
level: 2,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'paragraph',
|
|
138
|
+
html: 'O JSON (JavaScript Object Notation) é o padrão de fato para troca de dados na web. No entanto, sua sintaxe rigorosa o torna propenso a erros humanos quando editado manualmente.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'paragraph',
|
|
142
|
+
html: 'Esta ferramenta permite que você valide a estrutura, formate o código para melhorar sua legibilidade e repare automaticamente erros comuns de sintaxe.',
|
|
143
|
+
},
|
|
144
|
+
{ type: 'grid', columns: 2 },
|
|
145
|
+
{
|
|
146
|
+
type: 'card',
|
|
147
|
+
title: 'Erros Comuns que Repara',
|
|
148
|
+
html: '<ul><li><strong>Aspas Simples:</strong> O padrão JSON exige aspas duplas. A ferramenta converte <code>\'chave\': \'valor\'</code> para <code>"chave": "valor"</code>.</li><li><strong>Chaves sem Aspas:</strong> Detecta chaves de objetos no estilo JavaScript e adiciona as aspas necessárias.</li><li><strong>Vírgulas Finais:</strong> Remove vírgulas ao final de objetos ou arrays (trailing commas) que quebram o parser rigoroso.</li></ul>',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'card',
|
|
152
|
+
title: 'Recursos',
|
|
153
|
+
html: '<ul><li><strong>Destaque de Sintaxe:</strong> Colore chaves, strings, números e booleanos para facilitar a leitura rápida.</li><li><strong>Validação em Tempo Real:</strong> Indica instantaneamente se o JSON é válido ou mostra o erro específico de análise.</li><li><strong>Privacidade Total:</strong> O processamento ocorre 100% no seu navegador. Nenhum dado é enviado para servidores externos.</li></ul>',
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
};
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { JsonFormatterUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'formatirovalshik-json';
|
|
6
|
+
const title = 'Бесплатный онлайн форматировщик и валидатор JSON';
|
|
7
|
+
const description =
|
|
8
|
+
'Бесплатный онлайн-инструмент для форматирования, валидации и исправления кода JSON. Сделайте JSON красивым и структурированным. Обнаружение синтаксических ошибок и улучшение читаемости кода.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Безопасны ли мои данные при использовании этого форматировщика?',
|
|
13
|
+
answer:
|
|
14
|
+
'Безусловно. Вся обработка происходит на 100% в вашем браузере (на стороне клиента). Ваши данные JSON никогда не отправляются на сервер, что обеспечивает полную конфиденциальность ваших структур данных.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Что вызывает ошибку «Invalid JSON»?',
|
|
18
|
+
answer:
|
|
19
|
+
'Обычно она вызвана лишними запятыми в конце объекта, отсутствием двойных кавычек вокруг ключей или невидимыми символами. Наш инструмент подсвечивает точную строку с ошибкой, чтобы вы могли ее исправить.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Может ли он восстановить поврежденный JSON?',
|
|
23
|
+
answer:
|
|
24
|
+
'Наш инструмент автоматически пытается исправить распространенные ошибки, такие как ненужные запятые в конце или неправильно сформированные escape-последовательности, чтобы JSON стал валидным в соответствии со стандартом RFC 8259.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Поддерживаются ли очень большие файлы JSON?',
|
|
28
|
+
answer:
|
|
29
|
+
'Да, механизм обработки оптимизирован для работы со сложными структурами данных и большими файлами без блокировки интерфейса браузера.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Вставьте ваш код',
|
|
36
|
+
text: 'Вставьте неформатированный или минифицированный JSON в текстовую область.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Валидация и форматирование',
|
|
40
|
+
text: 'Система автоматически проанализирует код, подсветит синтаксические ошибки и применит отступы для улучшения читаемости.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Выберите стиль',
|
|
44
|
+
text: 'Выберите расширенный (beautify) или сжатый (minify) формат в зависимости от того, что вам нужно: читаемость или экономия места.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Скопируйте результат',
|
|
48
|
+
text: 'Нажмите кнопку копирования, чтобы перенести идеально валидный JSON в буфер обмена.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'ru',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const ui: JsonFormatterUI = {
|
|
87
|
+
labelInput: 'Ввод (JSON)',
|
|
88
|
+
labelOutput: 'Результат',
|
|
89
|
+
btnMinify: 'Сжать',
|
|
90
|
+
btnBeautify: 'Форматировать',
|
|
91
|
+
btnFix: 'Попробовать исправить',
|
|
92
|
+
btnCopy: 'Копировать',
|
|
93
|
+
statusWaiting: 'Ожидание ввода...',
|
|
94
|
+
statusValid: 'Валидный JSON',
|
|
95
|
+
statusInvalid: 'Невалидный JSON',
|
|
96
|
+
toastCopied: 'Скопировано!',
|
|
97
|
+
toastFixed: 'JSON исправлен (предпросмотр)',
|
|
98
|
+
toastFixFailed: 'Не удалось исправить автоматически',
|
|
99
|
+
placeholder: 'Вставьте ваш JSON здесь...',
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export const content: ToolLocaleContent<JsonFormatterUI> = {
|
|
103
|
+
slug,
|
|
104
|
+
title,
|
|
105
|
+
description,
|
|
106
|
+
ui,
|
|
107
|
+
faqTitle: 'Часто задаваемые вопросы',
|
|
108
|
+
faq: faqData,
|
|
109
|
+
bibliographyTitle: 'Ссылки и стандарты',
|
|
110
|
+
bibliography: [
|
|
111
|
+
{
|
|
112
|
+
name: 'RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format (IETF)',
|
|
113
|
+
url: 'https://datatracker.ietf.org/doc/html/rfc8259',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: 'ECMA-404 – The JSON Data Interchange Syntax (Ecma International)',
|
|
117
|
+
url: 'https://www.ecma-international.org/publications-and-standards/standards/ecma-404/',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'JSON.org – Введение в JSON',
|
|
121
|
+
url: 'https://www.json.org/json-en.html',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'MDN Web Docs – JSON',
|
|
125
|
+
url: 'https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/JSON',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
howTo: howToData,
|
|
129
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
130
|
+
seo: [
|
|
131
|
+
{
|
|
132
|
+
type: 'title',
|
|
133
|
+
text: 'Валидация и форматирование JSON',
|
|
134
|
+
level: 2,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'paragraph',
|
|
138
|
+
html: 'JSON (JavaScript Object Notation) является стандартом де-факто для обмена данными в Интернете. Однако его строгий синтаксис делает его подверженным человеческим ошибкам при ручном редактировании.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'paragraph',
|
|
142
|
+
html: 'Этот инструмент позволяет вам проверить структуру, отформатировать код для улучшения его читаемости и автоматически исправить распространенные синтаксические ошибки.',
|
|
143
|
+
},
|
|
144
|
+
{ type: 'grid', columns: 2 },
|
|
145
|
+
{
|
|
146
|
+
type: 'card',
|
|
147
|
+
title: 'Распространенные ошибки, которые он исправляет',
|
|
148
|
+
html: '<ul><li><strong>Одинарные кавычки:</strong> Стандарт JSON требует двойных кавычек. Инструмент преобразует <code>\'key\': \'value\'</code> в <code>"key": "value"</code>.</li><li><strong>Ключи без кавычек:</strong> Обнаруживает ключи объектов в стиле JavaScript и добавляет необходимые кавычки.</li><li><strong>Лишние запятые:</strong> Удаляет запятые в конце объектов или массивов, которые нарушают работу строгого парсера.</li></ul>',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'card',
|
|
152
|
+
title: 'Особенности',
|
|
153
|
+
html: '<ul><li><strong>Подсветка синтаксиса:</strong> Раскрашивает ключи, строки, числа и логические значения для облегчения быстрого чтения.</li><li><strong>Валидация в реальном времени:</strong> Мгновенно указывает, является ли JSON валидным, или показывает конкретную ошибку парсинга.</li><li><strong>Полная конфиденциальность:</strong> Обработка происходит на 100% в вашем браузере. Данные не отправляются на внешние серверы.</li></ul>',
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
};
|
|
157
|
+
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { JsonFormatterUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'json-formaterare-validator';
|
|
6
|
+
const title = 'Gratis Online JSON formaterare och Validator';
|
|
7
|
+
const description =
|
|
8
|
+
'Gratis onlineverktyg för att formatera, validera och reparera JSON-kod. Snygga till och formatera JSON. Upptäcker syntaxfel och förbättrar kodens läsbarhet.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Är mina data säkra när jag använder denna formaterare?',
|
|
13
|
+
answer:
|
|
14
|
+
'Absolut. All bearbetning sker till 100 % i din webbläsare (Client-Side). Dina JSON-data skickas aldrig till någon server, vilket garanterar fullständig integritet för dina datastrukturer.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Vad orsakar ett "Invalid JSON"-fel?',
|
|
18
|
+
answer:
|
|
19
|
+
'Det orsakas vanligtvis av extra kommatecken i slutet av ett objekt, saknade dubbla citattecken runt nycklar eller osynliga tecken. Vårt verktyg markerar exakt vilken rad felet finns på så att du kan åtgärda det.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Kan verktyget reparera trasig JSON?',
|
|
23
|
+
answer:
|
|
24
|
+
'Vårt verktyg försöker automatiskt korrigera vanliga fel som onödiga avslutande kommatecken eller felaktiga teckenkodningar, så att JSON-koden blir giltig enligt RFC 8259-standarden.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Stöder det mycket stora JSON-filer?',
|
|
28
|
+
answer:
|
|
29
|
+
'Ja, bearbetningsmotorn är optimerad för att hantera komplexa datastrukturer och stora filer utan att blockera webbläsarens gränssnitt.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Klistra in din kod',
|
|
36
|
+
text: 'Klistra in din oformaterade eller minifierade JSON i det stora textfältet.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Validera och formatera',
|
|
40
|
+
text: 'Systemet analyserar automatiskt koden, markerar syntaxfel och tillämpar indrag för att förbättra läsbarheten.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Välj en stil',
|
|
44
|
+
text: 'Välj mellan ett expanderat (beautify) eller komprimerat (minify) format beroende på om du behöver läsbarhet eller platsbesparing.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Kopiera resultatet',
|
|
48
|
+
text: 'Klicka på kopieringsknappen för att ta den perfekt validerade JSON-koden till ditt urklipp.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'sv',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const ui: JsonFormatterUI = {
|
|
87
|
+
labelInput: 'Inmatning (JSON)',
|
|
88
|
+
labelOutput: 'Resultat',
|
|
89
|
+
btnMinify: 'Minifiera',
|
|
90
|
+
btnBeautify: 'Formatera',
|
|
91
|
+
btnFix: 'Försök reparera',
|
|
92
|
+
btnCopy: 'Kopiera',
|
|
93
|
+
statusWaiting: 'Väntar på inmatning...',
|
|
94
|
+
statusValid: 'Giltig JSON',
|
|
95
|
+
statusInvalid: 'Ogiltig JSON',
|
|
96
|
+
toastCopied: 'Kopierad!',
|
|
97
|
+
toastFixed: 'JSON reparerad (Förhandsgranskning)',
|
|
98
|
+
toastFixFailed: 'Kunde inte reparera automatiskt',
|
|
99
|
+
placeholder: 'Klistra in din JSON här...',
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export const content: ToolLocaleContent<JsonFormatterUI> = {
|
|
103
|
+
slug,
|
|
104
|
+
title,
|
|
105
|
+
description,
|
|
106
|
+
ui,
|
|
107
|
+
faqTitle: 'Vanliga frågor',
|
|
108
|
+
faq: faqData,
|
|
109
|
+
bibliographyTitle: 'Referenser och Standarder',
|
|
110
|
+
bibliography: [
|
|
111
|
+
{
|
|
112
|
+
name: 'RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format (IETF)',
|
|
113
|
+
url: 'https://datatracker.ietf.org/doc/html/rfc8259',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: 'ECMA-404 – The JSON Data Interchange Syntax (Ecma International)',
|
|
117
|
+
url: 'https://www.ecma-international.org/publications-and-standards/standards/ecma-404/',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'JSON.org – Introduktion till JSON',
|
|
121
|
+
url: 'https://www.json.org/json-en.html',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'MDN Web Docs – JSON',
|
|
125
|
+
url: 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
howTo: howToData,
|
|
129
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
130
|
+
seo: [
|
|
131
|
+
{
|
|
132
|
+
type: 'title',
|
|
133
|
+
text: 'JSON-validering och formatering',
|
|
134
|
+
level: 2,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'paragraph',
|
|
138
|
+
html: 'JSON (JavaScript Object Notation) är de facto-standard för datautbyte på nätet. Dess strikta syntax gör den dock sårbar för mänskliga fel vid manuell redigering.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'paragraph',
|
|
142
|
+
html: 'Detta verktyg låter dig validera strukturen, formatera koden för att förbättra dess läsbarhet och automatiskt reparera vanliga syntaxfel.',
|
|
143
|
+
},
|
|
144
|
+
{ type: 'grid', columns: 2 },
|
|
145
|
+
{
|
|
146
|
+
type: 'card',
|
|
147
|
+
title: 'Vanliga fel som repareras',
|
|
148
|
+
html: '<ul><li><strong>Enkla citattecken:</strong> JSON-standarden kräver dubbla citattecken. Verktyget konverterar <code>\'key\': \'value\'</code> till <code>"key": "value"</code>.</li><li><strong>Nycklar utan citattecken:</strong> Hittar objektsnycklar i JavaScript-stil och lägger till nödvändiga citattecken.</li><li><strong>Extra kommatecken i slutet:</strong> Tar bort kommatecken i slutet av objekt eller arrayer (trailing commas) som bryter den strikta tolken.</li></ul>',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'card',
|
|
152
|
+
title: 'Funktioner',
|
|
153
|
+
html: '<ul><li><strong>Syntaxmarkering:</strong> Färgsätter nycklar, strängar, siffror och booleaner för att underlätta snabb läsning.</li><li><strong>Realtidsvalidering:</strong> Indikerar direkt om JSON-koden är giltig eller visar det specifika tolkningsfelet.</li><li><strong>Total integritet:</strong> Bearbetningen sker till 100 % i din webbläsare. Inga data skickas till externa servrar.</li></ul>',
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
};
|
|
157
|
+
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { JsonFormatterUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'json-formatlayici-dogrulayici';
|
|
6
|
+
const title = 'Ücretsiz Çevrimiçi JSON Formatlayıcı ve Doğrulayıcı';
|
|
7
|
+
const description =
|
|
8
|
+
'JSON kodunu formatlamak, doğrulamak ve onarmak için ücretsiz çevrimiçi araç. JSON\'u güzelleştirin ve düzenleyin. Sözdizimi hatalarını algılar ve kodun okunabilirliğini artırır.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Bu formatlayıcıyı kullanırken verilerim güvende mi?',
|
|
13
|
+
answer:
|
|
14
|
+
'Kesinlikle. Tüm işlemler %100 tarayıcınızda (İstemci Tarafı) gerçekleşir. JSON verileriniz asla herhangi bir sunucuya gönderilmez, bu da veri yapılarınız için tam gizlilik sağlar.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: "'Geçersiz JSON' hatasına ne sebep olur?",
|
|
18
|
+
answer:
|
|
19
|
+
'Genellikle bir nesnenin sonundaki fazla virgüller (trailing commas), anahtarların etrafındaki eksik çift tırnaklar veya görünmeyen karakterlerden kaynaklanır. Aracımız hatanın tam satırını vurgular, böylece düzeltebilirsiniz.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Bozuk JSON\'u onarabilir mi?',
|
|
23
|
+
answer:
|
|
24
|
+
'Aracımız, gereksiz sondaki virgüller veya hatalı biçimlendirilmiş karakter kaçışları gibi yaygın hataları otomatik olarak düzeltmeye çalışır, böylece JSON RFC 8259 standardına göre geçerli hale gelir.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Çok büyük JSON dosyalarını destekliyor mu?',
|
|
28
|
+
answer:
|
|
29
|
+
'Evet, işleme motoru, tarayıcı arayüzünü kilitlemeden karmaşık veri yapılarını ve büyük dosyaları işlemek için optimize edilmiştir.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Kodunuzu yapıştırın',
|
|
36
|
+
text: 'Formatlanmamış veya küçültülmüş (minify) JSON\'unuzu ana metin alanına yapıştırın.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Doğrulayın ve Formatlayın',
|
|
40
|
+
text: 'Sistem kodu otomatik olarak analiz eder, sözdizimi hatalarını vurgular ve okunabilirliği artırmak için girintileme uygular.',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Bir stil seçin',
|
|
44
|
+
text: 'Okunabilirlik veya alan tasarrufu ihtiyacınıza göre genişletilmiş (beautify) veya sıkıştırılmış (minify) format arasında seçim yapın.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Sonucu kopyalayın',
|
|
48
|
+
text: 'Mükemmel şekilde doğrulanmış JSON\'u panonuza almak için kopyala düğmesine tıklayın.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'tr',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
const ui: JsonFormatterUI = {
|
|
87
|
+
labelInput: 'Giriş (JSON)',
|
|
88
|
+
labelOutput: 'Çıkış',
|
|
89
|
+
btnMinify: 'Küçült (Minify)',
|
|
90
|
+
btnBeautify: 'Güzelleştir (Beautify)',
|
|
91
|
+
btnFix: 'Onarmayı Dene',
|
|
92
|
+
btnCopy: 'Kopyala',
|
|
93
|
+
statusWaiting: 'Giriş bekleniyor...',
|
|
94
|
+
statusValid: 'Geçerli JSON',
|
|
95
|
+
statusInvalid: 'Geçersiz JSON',
|
|
96
|
+
toastCopied: 'Kopyalandı!',
|
|
97
|
+
toastFixed: 'JSON onarıldı (Önizleme)',
|
|
98
|
+
toastFixFailed: 'Otomatik olarak onarılamadı',
|
|
99
|
+
placeholder: 'JSON\'unuzu buraya yapıştırın...',
|
|
100
|
+
};
|
|
101
|
+
|
|
102
|
+
export const content: ToolLocaleContent<JsonFormatterUI> = {
|
|
103
|
+
slug,
|
|
104
|
+
title,
|
|
105
|
+
description,
|
|
106
|
+
ui,
|
|
107
|
+
faqTitle: 'Sıkça Sorulan Sorular',
|
|
108
|
+
faq: faqData,
|
|
109
|
+
bibliographyTitle: 'Referanslar ve Standartlar',
|
|
110
|
+
bibliography: [
|
|
111
|
+
{
|
|
112
|
+
name: 'RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format (IETF)',
|
|
113
|
+
url: 'https://datatracker.ietf.org/doc/html/rfc8259',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
name: 'ECMA-404 – The JSON Data Interchange Syntax (Ecma International)',
|
|
117
|
+
url: 'https://www.ecma-international.org/publications-and-standards/standards/ecma-404/',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
name: 'JSON.org – JSON\'a Giriş',
|
|
121
|
+
url: 'https://www.json.org/json-en.html',
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
name: 'MDN Web Docs – JSON',
|
|
125
|
+
url: 'https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON',
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
howTo: howToData,
|
|
129
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
130
|
+
seo: [
|
|
131
|
+
{
|
|
132
|
+
type: 'title',
|
|
133
|
+
text: 'JSON Doğrulama ve Formatlama',
|
|
134
|
+
level: 2,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
type: 'paragraph',
|
|
138
|
+
html: 'JSON (JavaScript Object Notation), web üzerinde veri alışverişi için fiili standarttır. Ancak katı sözdizimi, manuel olarak düzenlendiğinde onu insan hatalarına açık hale getirir.',
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
type: 'paragraph',
|
|
142
|
+
html: 'Bu araç, yapıyı doğrulamanıza, okunabilirliğini artırmak için kodu formatlamanıza ve yaygın sözdizimi hatalarını otomatik olarak onarmanıza olanak tanır.',
|
|
143
|
+
},
|
|
144
|
+
{ type: 'grid', columns: 2 },
|
|
145
|
+
{
|
|
146
|
+
type: 'card',
|
|
147
|
+
title: 'Onardığı Yaygın Hatalar',
|
|
148
|
+
html: '<ul><li><strong>Tek Tırnak:</strong> JSON standardı çift tırnak gerektirir. Araç, <code>\'anahtar\': \'değer\'</code> yapısını <code>"anahtar": "değer"</code> haline getirir.</li><li><strong>Tırnaksız Anahtarlar:</strong> JavaScript tarzı nesne anahtarlarını algılar ve gerekli tırnakları ekler.</li><li><strong>Sondaki Virgüller:</strong> Nesnelerin veya dizilerin sonundaki, katı ayrıştırıcıyı (parser) bozan fazla virgülleri (trailing commas) kaldırır.</li></ul>',
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
type: 'card',
|
|
152
|
+
title: 'Özellikler',
|
|
153
|
+
html: '<ul><li><strong>Sözdizimi Vurgulama:</strong> Hızlı okumayı kolaylaştırmak için anahtarları, dizeleri, sayıları ve boole değerlerini renklendirir.</li><li><strong>Gerçek Zamanlı Doğrulama:</strong> JSON\'un geçerli olup olmadığını anında belirtir veya özel ayrıştırma hatasını gösterir.</li><li><strong>Tam Gizlilik:</strong> İşlemler %100 tarayıcınızda gerçekleşir. Hiçbir veri harici sunuculara gönderilmez.</li></ul>',
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
};
|
|
157
|
+
|