@jjlmoya/utils-developer 1.27.0 → 1.29.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/entries.ts +4 -1
- package/src/tests/i18n_coverage.test.ts +5 -2
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/qa-test-helpers.ts +32 -0
- package/src/tests/qa_bibliography_links.test.ts +43 -0
- package/src/tests/qa_claim_evidence.test.ts +69 -0
- package/src/tests/qa_logic_reference_coverage.test.ts +46 -0
- package/src/tests/qa_runtime_i18n.test.ts +115 -0
- package/src/tests/spanish_leakage.test.ts +5 -1
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/aspectRatio/bibliography.astro +2 -10
- package/src/tool/aspectRatio/bibliography.ts +7 -0
- package/src/tool/aspectRatio/i18n/de.ts +2 -14
- package/src/tool/aspectRatio/i18n/en.ts +2 -14
- package/src/tool/aspectRatio/i18n/es.ts +2 -14
- package/src/tool/aspectRatio/i18n/fr.ts +2 -14
- package/src/tool/aspectRatio/i18n/id.ts +2 -14
- package/src/tool/aspectRatio/i18n/it.ts +2 -14
- package/src/tool/aspectRatio/i18n/ja.ts +2 -14
- package/src/tool/aspectRatio/i18n/ko.ts +2 -14
- package/src/tool/aspectRatio/i18n/nl.ts +2 -14
- package/src/tool/aspectRatio/i18n/pl.ts +2 -14
- package/src/tool/aspectRatio/i18n/pt.ts +2 -14
- package/src/tool/aspectRatio/i18n/ru.ts +2 -14
- package/src/tool/aspectRatio/i18n/sv.ts +2 -14
- package/src/tool/aspectRatio/i18n/tr.ts +2 -14
- package/src/tool/aspectRatio/i18n/zh.ts +2 -14
- package/src/tool/calculadoraTiempoDatos/bibliography.astro +2 -10
- package/src/tool/calculadoraTiempoDatos/bibliography.ts +8 -0
- package/src/tool/calculadoraTiempoDatos/component.astro +6 -2
- package/src/tool/calculadoraTiempoDatos/i18n/de.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/en.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/es.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/fr.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/id.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/it.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/ja.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/ko.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/nl.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/pl.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/pt.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/ru.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/sv.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/tr.ts +2 -6
- package/src/tool/calculadoraTiempoDatos/i18n/zh.ts +2 -6
- package/src/tool/colorConverter/bibliography.astro +2 -10
- package/src/tool/colorConverter/bibliography.ts +7 -0
- package/src/tool/colorConverter/i18n/de.ts +2 -5
- package/src/tool/colorConverter/i18n/en.ts +5 -8
- package/src/tool/colorConverter/i18n/es.ts +4 -7
- package/src/tool/colorConverter/i18n/fr.ts +2 -5
- package/src/tool/colorConverter/i18n/id.ts +2 -5
- package/src/tool/colorConverter/i18n/it.ts +2 -5
- package/src/tool/colorConverter/i18n/ja.ts +2 -5
- package/src/tool/colorConverter/i18n/ko.ts +2 -5
- package/src/tool/colorConverter/i18n/nl.ts +2 -5
- package/src/tool/colorConverter/i18n/pl.ts +2 -5
- package/src/tool/colorConverter/i18n/pt.ts +2 -5
- package/src/tool/colorConverter/i18n/ru.ts +2 -5
- package/src/tool/colorConverter/i18n/sv.ts +2 -5
- package/src/tool/colorConverter/i18n/tr.ts +2 -5
- package/src/tool/colorConverter/i18n/zh.ts +2 -5
- package/src/tool/conversorExcelCsvHtml/bibliography.astro +2 -10
- package/src/tool/conversorExcelCsvHtml/bibliography.ts +8 -0
- package/src/tool/conversorExcelCsvHtml/component.astro +4 -3
- package/src/tool/conversorExcelCsvHtml/i18n/de.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/en.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/es.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/fr.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/id.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/it.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/ja.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/ko.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/nl.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/pl.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/pt.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/ru.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/sv.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/tr.ts +2 -6
- package/src/tool/conversorExcelCsvHtml/i18n/zh.ts +2 -6
- package/src/tool/cronGenerator/bibliography.astro +2 -10
- package/src/tool/cronGenerator/bibliography.ts +6 -0
- package/src/tool/cronGenerator/component.astro +5 -1
- package/src/tool/cronGenerator/i18n/de.ts +2 -10
- package/src/tool/cronGenerator/i18n/en.ts +2 -10
- package/src/tool/cronGenerator/i18n/es.ts +2 -10
- package/src/tool/cronGenerator/i18n/fr.ts +2 -10
- package/src/tool/cronGenerator/i18n/id.ts +2 -10
- package/src/tool/cronGenerator/i18n/it.ts +2 -10
- package/src/tool/cronGenerator/i18n/ja.ts +2 -10
- package/src/tool/cronGenerator/i18n/ko.ts +2 -10
- package/src/tool/cronGenerator/i18n/nl.ts +2 -10
- package/src/tool/cronGenerator/i18n/pl.ts +2 -10
- package/src/tool/cronGenerator/i18n/pt.ts +2 -10
- package/src/tool/cronGenerator/i18n/ru.ts +2 -10
- package/src/tool/cronGenerator/i18n/sv.ts +2 -10
- package/src/tool/cronGenerator/i18n/tr.ts +2 -10
- package/src/tool/cronGenerator/i18n/zh.ts +2 -10
- package/src/tool/cssBoxShadowGenerator/component.astro +2 -1
- package/src/tool/cssBoxShadowGenerator/logic.test.ts +28 -0
- package/src/tool/cssSpecificityCalculator/bibliography.astro +2 -10
- package/src/tool/cssSpecificityCalculator/bibliography.ts +6 -0
- package/src/tool/cssSpecificityCalculator/i18n/de.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/en.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/es.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/fr.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/id.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/it.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/ja.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/ko.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/nl.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/pl.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/pt.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/ru.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/sv.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/tr.ts +2 -10
- package/src/tool/cssSpecificityCalculator/i18n/zh.ts +2 -10
- package/src/tool/cssToInlineConverter/bibliography.astro +2 -10
- package/src/tool/cssToInlineConverter/bibliography.ts +7 -0
- package/src/tool/cssToInlineConverter/i18n/de.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/en.ts +4 -16
- package/src/tool/cssToInlineConverter/i18n/es.ts +5 -17
- package/src/tool/cssToInlineConverter/i18n/fr.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/id.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/it.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/ja.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/ko.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/nl.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/pl.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/pt.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/ru.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/sv.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/tr.ts +2 -14
- package/src/tool/cssToInlineConverter/i18n/zh.ts +2 -14
- package/src/tool/duplicateCssRemover/bibliography.astro +2 -10
- package/src/tool/duplicateCssRemover/bibliography.ts +7 -0
- package/src/tool/duplicateCssRemover/i18n/de.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/en.ts +4 -16
- package/src/tool/duplicateCssRemover/i18n/es.ts +4 -16
- package/src/tool/duplicateCssRemover/i18n/fr.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/id.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/it.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/ja.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/ko.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/nl.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/pl.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/pt.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/ru.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/sv.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/tr.ts +2 -14
- package/src/tool/duplicateCssRemover/i18n/zh.ts +2 -14
- package/src/tool/generadorSecurityTxt/bibliography.astro +2 -10
- package/src/tool/generadorSecurityTxt/bibliography.ts +7 -0
- package/src/tool/generadorSecurityTxt/component.astro +1 -2
- package/src/tool/generadorSecurityTxt/i18n/de.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/en.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/es.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/fr.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/id.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/it.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/ja.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/ko.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/nl.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/pl.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/pt.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/ru.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/sv.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/tr.ts +2 -5
- package/src/tool/generadorSecurityTxt/i18n/zh.ts +2 -5
- package/src/tool/hashGenerator/bibliography.astro +2 -10
- package/src/tool/hashGenerator/bibliography.ts +7 -0
- package/src/tool/hashGenerator/i18n/de.ts +2 -5
- package/src/tool/hashGenerator/i18n/en.ts +2 -5
- package/src/tool/hashGenerator/i18n/es.ts +2 -5
- package/src/tool/hashGenerator/i18n/fr.ts +2 -5
- package/src/tool/hashGenerator/i18n/id.ts +2 -5
- package/src/tool/hashGenerator/i18n/it.ts +2 -5
- package/src/tool/hashGenerator/i18n/ja.ts +2 -5
- package/src/tool/hashGenerator/i18n/ko.ts +2 -5
- package/src/tool/hashGenerator/i18n/nl.ts +2 -5
- package/src/tool/hashGenerator/i18n/pl.ts +2 -5
- package/src/tool/hashGenerator/i18n/pt.ts +2 -5
- package/src/tool/hashGenerator/i18n/ru.ts +2 -5
- package/src/tool/hashGenerator/i18n/sv.ts +2 -5
- package/src/tool/hashGenerator/i18n/tr.ts +2 -5
- package/src/tool/hashGenerator/i18n/zh.ts +2 -5
- package/src/tool/inspectorCertificadosSsl/bibliography.astro +2 -10
- package/src/tool/inspectorCertificadosSsl/bibliography.ts +8 -0
- package/src/tool/inspectorCertificadosSsl/component.astro +4 -3
- package/src/tool/inspectorCertificadosSsl/i18n/de.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/en.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/es.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/fr.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/id.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/it.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/ja.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/ko.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/nl.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/pl.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/pt.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/ru.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/sv.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/tr.ts +2 -6
- package/src/tool/inspectorCertificadosSsl/i18n/zh.ts +2 -6
- package/src/tool/jsonFormatter/bibliography.astro +2 -10
- package/src/tool/jsonFormatter/bibliography.ts +8 -0
- package/src/tool/jsonFormatter/i18n/de.ts +2 -18
- package/src/tool/jsonFormatter/i18n/en.ts +2 -18
- package/src/tool/jsonFormatter/i18n/es.ts +2 -18
- package/src/tool/jsonFormatter/i18n/fr.ts +2 -18
- package/src/tool/jsonFormatter/i18n/id.ts +2 -18
- package/src/tool/jsonFormatter/i18n/it.ts +2 -18
- package/src/tool/jsonFormatter/i18n/ja.ts +2 -18
- package/src/tool/jsonFormatter/i18n/ko.ts +2 -18
- package/src/tool/jsonFormatter/i18n/nl.ts +2 -18
- package/src/tool/jsonFormatter/i18n/pl.ts +2 -18
- package/src/tool/jsonFormatter/i18n/pt.ts +2 -18
- package/src/tool/jsonFormatter/i18n/ru.ts +2 -18
- package/src/tool/jsonFormatter/i18n/sv.ts +2 -18
- package/src/tool/jsonFormatter/i18n/tr.ts +2 -18
- package/src/tool/jsonFormatter/i18n/zh.ts +2 -18
- package/src/tool/jwtDecoder/component.astro +2 -1
- package/src/tool/jwtDecoder/logic.test.ts +32 -0
- package/src/tool/keycode/bibliography.astro +2 -10
- package/src/tool/keycode/bibliography.ts +7 -0
- package/src/tool/keycode/i18n/de.ts +2 -14
- package/src/tool/keycode/i18n/en.ts +2 -14
- package/src/tool/keycode/i18n/es.ts +2 -14
- package/src/tool/keycode/i18n/fr.ts +2 -14
- package/src/tool/keycode/i18n/id.ts +2 -14
- package/src/tool/keycode/i18n/it.ts +2 -14
- package/src/tool/keycode/i18n/ja.ts +2 -14
- package/src/tool/keycode/i18n/ko.ts +2 -14
- package/src/tool/keycode/i18n/nl.ts +2 -14
- package/src/tool/keycode/i18n/pl.ts +2 -14
- package/src/tool/keycode/i18n/pt.ts +2 -14
- package/src/tool/keycode/i18n/ru.ts +2 -14
- package/src/tool/keycode/i18n/sv.ts +2 -14
- package/src/tool/keycode/i18n/tr.ts +2 -14
- package/src/tool/keycode/i18n/zh.ts +2 -14
- package/src/tool/llmCostCalculator/bibliography.astro +2 -10
- package/src/tool/llmCostCalculator/bibliography.ts +8 -0
- package/src/tool/llmCostCalculator/i18n/de.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/en.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/es.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/fr.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/id.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/it.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/ja.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/ko.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/nl.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/pl.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/pt.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/ru.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/sv.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/tr.ts +2 -18
- package/src/tool/llmCostCalculator/i18n/zh.ts +2 -18
- package/src/tool/mobileMockupGenerator/bibliography.astro +2 -10
- package/src/tool/mobileMockupGenerator/bibliography.ts +6 -0
- package/src/tool/mobileMockupGenerator/i18n/de.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/en.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/es.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/fr.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/id.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/it.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/ja.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/ko.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/nl.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/pl.ts +2 -1
- package/src/tool/mobileMockupGenerator/i18n/pt.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/ru.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/sv.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/tr.ts +2 -4
- package/src/tool/mobileMockupGenerator/i18n/zh.ts +2 -4
- package/src/tool/musicalTypography/bibliography.astro +2 -10
- package/src/tool/musicalTypography/bibliography.ts +7 -0
- package/src/tool/musicalTypography/i18n/de.ts +2 -14
- package/src/tool/musicalTypography/i18n/en.ts +3 -15
- package/src/tool/musicalTypography/i18n/es.ts +3 -15
- package/src/tool/musicalTypography/i18n/fr.ts +2 -14
- package/src/tool/musicalTypography/i18n/id.ts +2 -14
- package/src/tool/musicalTypography/i18n/it.ts +2 -14
- package/src/tool/musicalTypography/i18n/ja.ts +2 -14
- package/src/tool/musicalTypography/i18n/ko.ts +2 -14
- package/src/tool/musicalTypography/i18n/nl.ts +2 -14
- package/src/tool/musicalTypography/i18n/pl.ts +2 -14
- package/src/tool/musicalTypography/i18n/pt.ts +2 -5
- package/src/tool/musicalTypography/i18n/ru.ts +2 -5
- package/src/tool/musicalTypography/i18n/sv.ts +2 -1
- package/src/tool/musicalTypography/i18n/tr.ts +2 -1
- package/src/tool/musicalTypography/i18n/zh.ts +2 -1
- package/src/tool/placeholderGenerator/bibliography.astro +2 -10
- package/src/tool/placeholderGenerator/bibliography.ts +7 -0
- package/src/tool/placeholderGenerator/i18n/de.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/en.ts +4 -16
- package/src/tool/placeholderGenerator/i18n/es.ts +4 -16
- package/src/tool/placeholderGenerator/i18n/fr.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/id.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/it.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/ja.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/ko.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/nl.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/pl.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/pt.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/ru.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/sv.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/tr.ts +2 -14
- package/src/tool/placeholderGenerator/i18n/zh.ts +2 -14
- package/src/tool/promoteThisWebsite/asset-bindings.ts +73 -0
- package/src/tool/promoteThisWebsite/bibliography.astro +14 -0
- package/src/tool/promoteThisWebsite/bibliography.ts +14 -0
- package/src/tool/promoteThisWebsite/component.astro +136 -0
- package/src/tool/promoteThisWebsite/control-views.ts +83 -0
- package/src/tool/promoteThisWebsite/controller.ts +232 -0
- package/src/tool/promoteThisWebsite/dom-views.ts +322 -0
- package/src/tool/promoteThisWebsite/entry.ts +15 -0
- package/src/tool/promoteThisWebsite/evaluator.ts +9 -0
- package/src/tool/promoteThisWebsite/i18n/en.ts +111 -0
- package/src/tool/promoteThisWebsite/index.ts +11 -0
- package/src/tool/promoteThisWebsite/jjlmoya-overlay.png +0 -0
- package/src/tool/promoteThisWebsite/logic.test.ts +29 -0
- package/src/tool/promoteThisWebsite/logic.ts +108 -0
- package/src/tool/promoteThisWebsite/pixel-cat.png +0 -0
- package/src/tool/promoteThisWebsite/promote-this-website.css +322 -0
- package/src/tool/promoteThisWebsite/seo.astro +15 -0
- package/src/tool/promoteThisWebsite/storage.ts +28 -0
- package/src/tool/promoteThisWebsite/title-view.ts +206 -0
- package/src/tool/promoteThisWebsite/ui.ts +59 -0
- package/src/tool/promptLibrary/bibliography.astro +2 -10
- package/src/tool/promptLibrary/bibliography.ts +6 -0
- package/src/tool/promptLibrary/i18n/de.ts +2 -4
- package/src/tool/promptLibrary/i18n/en.ts +2 -4
- package/src/tool/promptLibrary/i18n/es.ts +2 -4
- package/src/tool/promptLibrary/i18n/fr.ts +2 -4
- package/src/tool/promptLibrary/i18n/id.ts +2 -4
- package/src/tool/promptLibrary/i18n/it.ts +2 -4
- package/src/tool/promptLibrary/i18n/ja.ts +2 -4
- package/src/tool/promptLibrary/i18n/ko.ts +2 -4
- package/src/tool/promptLibrary/i18n/nl.ts +2 -4
- package/src/tool/promptLibrary/i18n/pl.ts +2 -1
- package/src/tool/promptLibrary/i18n/pt.ts +2 -4
- package/src/tool/promptLibrary/i18n/ru.ts +2 -4
- package/src/tool/promptLibrary/i18n/sv.ts +2 -4
- package/src/tool/promptLibrary/i18n/tr.ts +2 -4
- package/src/tool/promptLibrary/i18n/zh.ts +2 -4
- package/src/tool/readabilityCalculator/bibliography.astro +2 -10
- package/src/tool/readabilityCalculator/bibliography.ts +7 -0
- package/src/tool/readabilityCalculator/i18n/de.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/en.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/es.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/fr.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/id.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/it.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/ja.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/ko.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/nl.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/pl.ts +2 -1
- package/src/tool/readabilityCalculator/i18n/pt.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/ru.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/sv.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/tr.ts +2 -5
- package/src/tool/readabilityCalculator/i18n/zh.ts +2 -5
- package/src/tool/serpPixelSimulator/controller.ts +1 -0
- package/src/tool/serpPixelSimulator/i18n/en.ts +2 -2
- package/src/tool/serpPixelSimulator/i18n/es.ts +2 -2
- package/src/tool/serpPixelSimulator/logic.test.ts +25 -0
- package/src/tool/svgSanitizer/bibliography.astro +2 -10
- package/src/tool/svgSanitizer/bibliography.ts +7 -0
- package/src/tool/svgSanitizer/i18n/de.ts +2 -5
- package/src/tool/svgSanitizer/i18n/en.ts +2 -5
- package/src/tool/svgSanitizer/i18n/es.ts +2 -5
- package/src/tool/svgSanitizer/i18n/fr.ts +2 -5
- package/src/tool/svgSanitizer/i18n/id.ts +2 -5
- package/src/tool/svgSanitizer/i18n/it.ts +2 -5
- package/src/tool/svgSanitizer/i18n/ja.ts +2 -5
- package/src/tool/svgSanitizer/i18n/ko.ts +2 -5
- package/src/tool/svgSanitizer/i18n/nl.ts +2 -5
- package/src/tool/svgSanitizer/i18n/pl.ts +2 -5
- package/src/tool/svgSanitizer/i18n/pt.ts +2 -1
- package/src/tool/svgSanitizer/i18n/ru.ts +2 -5
- package/src/tool/svgSanitizer/i18n/sv.ts +2 -5
- package/src/tool/svgSanitizer/i18n/tr.ts +2 -5
- package/src/tool/svgSanitizer/i18n/zh.ts +2 -5
- package/src/tool/svgToCss/bibliography.astro +2 -10
- package/src/tool/svgToCss/bibliography.ts +8 -0
- package/src/tool/svgToCss/i18n/de.ts +2 -18
- package/src/tool/svgToCss/i18n/en.ts +2 -18
- package/src/tool/svgToCss/i18n/es.ts +2 -18
- package/src/tool/svgToCss/i18n/fr.ts +2 -18
- package/src/tool/svgToCss/i18n/id.ts +2 -18
- package/src/tool/svgToCss/i18n/it.ts +2 -18
- package/src/tool/svgToCss/i18n/ja.ts +2 -18
- package/src/tool/svgToCss/i18n/ko.ts +2 -18
- package/src/tool/svgToCss/i18n/nl.ts +2 -18
- package/src/tool/svgToCss/i18n/pl.ts +2 -18
- package/src/tool/svgToCss/i18n/pt.ts +2 -18
- package/src/tool/svgToCss/i18n/ru.ts +2 -18
- package/src/tool/svgToCss/i18n/sv.ts +2 -18
- package/src/tool/svgToCss/i18n/tr.ts +2 -18
- package/src/tool/svgToCss/i18n/zh.ts +2 -18
- package/src/tool/urlCleaner/bibliography.astro +2 -10
- package/src/tool/urlCleaner/bibliography.ts +7 -0
- package/src/tool/urlCleaner/i18n/de.ts +2 -5
- package/src/tool/urlCleaner/i18n/en.ts +2 -5
- package/src/tool/urlCleaner/i18n/es.ts +2 -5
- package/src/tool/urlCleaner/i18n/fr.ts +2 -5
- package/src/tool/urlCleaner/i18n/id.ts +2 -5
- package/src/tool/urlCleaner/i18n/it.ts +2 -5
- package/src/tool/urlCleaner/i18n/ja.ts +2 -5
- package/src/tool/urlCleaner/i18n/ko.ts +2 -5
- package/src/tool/urlCleaner/i18n/nl.ts +2 -5
- package/src/tool/urlCleaner/i18n/pl.ts +2 -1
- package/src/tool/urlCleaner/i18n/pt.ts +2 -5
- package/src/tool/urlCleaner/i18n/ru.ts +2 -5
- package/src/tool/urlCleaner/i18n/sv.ts +2 -5
- package/src/tool/urlCleaner/i18n/tr.ts +2 -5
- package/src/tool/urlCleaner/i18n/zh.ts +2 -5
- package/src/tool/urlEncoderDecoder/bibliography.astro +2 -10
- package/src/tool/urlEncoderDecoder/bibliography.ts +7 -0
- package/src/tool/urlEncoderDecoder/i18n/de.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/en.ts +3 -15
- package/src/tool/urlEncoderDecoder/i18n/es.ts +3 -15
- package/src/tool/urlEncoderDecoder/i18n/fr.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/id.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/it.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/ja.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/ko.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/nl.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/pl.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/pt.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/ru.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/sv.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/tr.ts +2 -14
- package/src/tool/urlEncoderDecoder/i18n/zh.ts +2 -14
- package/src/tool/utmGenerator/bibliography.astro +2 -10
- package/src/tool/utmGenerator/bibliography.ts +6 -0
- package/src/tool/utmGenerator/i18n/de.ts +2 -4
- package/src/tool/utmGenerator/i18n/en.ts +2 -4
- package/src/tool/utmGenerator/i18n/es.ts +2 -4
- package/src/tool/utmGenerator/i18n/fr.ts +2 -4
- package/src/tool/utmGenerator/i18n/id.ts +2 -4
- package/src/tool/utmGenerator/i18n/it.ts +2 -4
- package/src/tool/utmGenerator/i18n/ja.ts +2 -4
- package/src/tool/utmGenerator/i18n/ko.ts +2 -4
- package/src/tool/utmGenerator/i18n/nl.ts +2 -4
- package/src/tool/utmGenerator/i18n/pl.ts +2 -4
- package/src/tool/utmGenerator/i18n/pt.ts +2 -4
- package/src/tool/utmGenerator/i18n/ru.ts +2 -4
- package/src/tool/utmGenerator/i18n/sv.ts +2 -4
- package/src/tool/utmGenerator/i18n/tr.ts +2 -4
- package/src/tool/utmGenerator/i18n/zh.ts +2 -4
- package/src/tool/visualCssGridFlexboxGenerator/component.astro +1 -0
- package/src/tool/visualCssGridFlexboxGenerator/logic.test.ts +29 -0
- package/src/tool/visualCssGridFlexboxGenerator/workspace.ts +13 -1
- package/src/tools.ts +2 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: 'Questions Fr\u00e9quentes',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: 'Ressources sur le Contraste et APCA',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: Brouillon WCAG 3.0 (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: Guide de R\u00e9f\u00e9rence APCA', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: Accessibilit\u00e9 et Contraste des Couleurs', url: 'https://developer.mozilla.org/fr/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: 'Pertanyaan yang Sering Diajukan',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: 'Sumber tentang Kontras dan APCA',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: Draf WCAG 3.0 (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: Panduan Referensi APCA', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: Aksesibilitas dan Kontras Warna', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: 'Domande Frequenti',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: 'Risorse su Contrasto e APCA',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: Bozza WCAG 3.0 (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: Guida di Riferimento APCA', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: Accessibilità e Contrasto Colore', url: 'https://developer.mozilla.org/it/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: 'よくある質問',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: 'コントラストとAPCAに関するリソース',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: WCAG 3.0 ドラフト(Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: APCA リファレンスガイド', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: アクセシビリティとカラーコントラスト', url: 'https://developer.mozilla.org/ja/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: '자주 묻는 질문',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: '명암 대비와 APCA 관련 자료',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: WCAG 3.0 초안 (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: APCA 참조 가이드', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: 접근성과 색상 명암 대비', url: 'https://developer.mozilla.org/ko/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -97,11 +98,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
97
98
|
faqTitle: 'Veelgestelde vragen',
|
|
98
99
|
faq: faqData,
|
|
99
100
|
bibliographyTitle: 'Bronnen over contrast en APCA',
|
|
100
|
-
bibliography
|
|
101
|
-
{ name: 'W3C: WCAG 3.0-concept (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
102
|
-
{ name: 'Myndex: APCA-referentiegids', url: 'https://apcaw3.myndex.com/' },
|
|
103
|
-
{ name: 'MDN: Toegankelijkheid en kleurcontrast', url: 'https://developer.mozilla.org/nl/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
104
|
-
],
|
|
101
|
+
bibliography,
|
|
105
102
|
howTo: howToData,
|
|
106
103
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
107
104
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -26,4 +27,4 @@ const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schem
|
|
|
26
27
|
|
|
27
28
|
const ui: ReadabilityCalculatorUI = { labelColors: 'Kolory Bazowe', labelText: 'Tekst', labelBg: 'Tło', labelTypo: 'Typografia', labelFontSize: 'Rozmiar Czcionki', labelFontWeight: 'Waga', labelCompare: 'Porównanie Kontrastu', labelPreview: 'Percepcyjny Podgląd', labelApcaRecs: 'Rekomendacje APCA', labelBody: 'Tekst Czytania (Treść)', labelSmall: 'Mały Tekst / Podpis', labelUi: 'UI / Przyciski', statusYes: 'Tak', statusNo: 'Nie', wcagAAA: 'Przechodzi AAA', wcagAA: 'Przechodzi AA', wcagLarge: 'Tylko duży tekst', wcagFail: 'Niepowodzenie', apcaExcellent: 'Doskonały', apcaGood: 'Dobry', apcaMinimal: 'Minimalny', apcaPoor: 'Słaby', previewText: 'Czytelność wizualna to nie tylko matematyka. To jak światło i cień oddziałują na twoje oczy.', wcagRatioLabel: 'Stosunek WCAG 2.1', apcaLcLabel: 'APCA Lc (WCAG 3)', };
|
|
28
29
|
|
|
29
|
-
export const content: ToolLocaleContent<ReadabilityCalculatorUI> = { slug, title, description, ui, faqTitle: 'Często Zadawane Pytania', faq: faqData, bibliographyTitle: 'Zasoby na temat Kontrastu i APCA', bibliography
|
|
30
|
+
export const content: ToolLocaleContent<ReadabilityCalculatorUI> = { slug, title, description, ui, faqTitle: 'Często Zadawane Pytania', faq: faqData, bibliographyTitle: 'Zasoby na temat Kontrastu i APCA', bibliography, howTo: howToData, schemas: [faqSchema, howToSchema, appSchema], seo: [{ type: 'title', text: 'Kalkulator Czytelności Wizualnej (WCAG vs APCA)', level: 2 }, { type: 'paragraph', html: 'Dowiedz się, jak Twoje kolory i typografia wpływają na rzeczywiste czytanie za pomocą nowego standardu percepcyjnej dostępności. WCAG 2.1 używa prostego wzoru matematycznego z 2008 roku. <strong>APCA</strong> to nowy model proponowany dla <strong>WCAG 3.0</strong>, który naśladuje percepcję człowieka.' }, { type: 'title', text: 'Kluczowe Punkty APCA', level: 3 }, { type: 'list', items: ['<strong>Polarność:</strong> Rozumie, że Tryb Ciemny jest postrzegany inaczej niż Tryb Jasny.', '<strong>Waga Czcionki:</strong> Przydziela określone poziomy kontrastu (Lc) w zależności od wagi typografii.', '<strong>Liniowość:</strong> Naprawia nieścisłości matematyczne w modelu względnej luminancji z 2008 roku.'] }, { type: 'title', text: 'Rekomendowane Poziomy APCA', level: 3 }, { type: 'list', items: ['<strong>Lc 90+:</strong> Idealne dla bardzo małego lub nisko ważonego tekstu.', '<strong>Lc 75:</strong> Standard dla głównego tekstu czytającego.', '<strong>Lc 60:</strong> Minimum dla czytelnej zawartości średniego rozmiaru.', '<strong>Lc 45:</strong> Minimum dla dużych lub dekoracyjnych elementów.'] }] };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -73,11 +74,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
73
74
|
faqTitle: 'Perguntas Frequentes',
|
|
74
75
|
faq: faqData,
|
|
75
76
|
bibliographyTitle: 'Recursos em Contraste e APCA',
|
|
76
|
-
bibliography
|
|
77
|
-
{ name: 'W3C: WCAG 3.0 Draft (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
78
|
-
{ name: 'Myndex: Guia de Referência APCA', url: 'https://apcaw3.myndex.com/' },
|
|
79
|
-
{ name: 'MDN: Acessibilidade e Contraste de Cor', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
80
|
-
],
|
|
77
|
+
bibliography,
|
|
81
78
|
howTo: howToData,
|
|
82
79
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
83
80
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -73,11 +74,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
73
74
|
faqTitle: 'Часто Задаваемые Вопросы',
|
|
74
75
|
faq: faqData,
|
|
75
76
|
bibliographyTitle: 'Ресурсы о Контрасте и APCA',
|
|
76
|
-
bibliography
|
|
77
|
-
{ name: 'W3C: WCAG 3.0 Draft (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
78
|
-
{ name: 'Myndex: Справочное Руководство APCA', url: 'https://apcaw3.myndex.com/' },
|
|
79
|
-
{ name: 'MDN: Доступность и Контраст Цвета', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
80
|
-
],
|
|
77
|
+
bibliography,
|
|
81
78
|
howTo: howToData,
|
|
82
79
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
83
80
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -25,11 +26,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
25
26
|
faqTitle: 'Vanliga Frågor',
|
|
26
27
|
faq: faqData,
|
|
27
28
|
bibliographyTitle: 'Resurser på Kontrast och APCA',
|
|
28
|
-
bibliography
|
|
29
|
-
{ name: 'W3C: WCAG 3.0 Draft (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
30
|
-
{ name: 'Myndex: APCA Referensguide', url: 'https://apcaw3.myndex.com/' },
|
|
31
|
-
{ name: 'MDN: Tillgänglighet och Färgkontrast', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
32
|
-
],
|
|
29
|
+
bibliography,
|
|
33
30
|
howTo: howToData,
|
|
34
31
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
35
32
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -25,11 +26,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
25
26
|
faqTitle: 'Sık Sorulan Sorular',
|
|
26
27
|
faq: faqData,
|
|
27
28
|
bibliographyTitle: 'Kontrast ve APCA Kaynakları',
|
|
28
|
-
bibliography
|
|
29
|
-
{ name: 'W3C: WCAG 3.0 Tasarısı (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
30
|
-
{ name: 'Myndex: APCA Referans Kılavuzu', url: 'https://apcaw3.myndex.com/' },
|
|
31
|
-
{ name: 'MDN: Erişilebilirlik ve Renk Kontrastı', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
32
|
-
],
|
|
29
|
+
bibliography,
|
|
33
30
|
howTo: howToData,
|
|
34
31
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
35
32
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { ReadabilityCalculatorUI } from '../ui';
|
|
@@ -25,11 +26,7 @@ export const content: ToolLocaleContent<ReadabilityCalculatorUI> = {
|
|
|
25
26
|
faqTitle: '常见问题',
|
|
26
27
|
faq: faqData,
|
|
27
28
|
bibliographyTitle: '对比度和 APCA 资源',
|
|
28
|
-
bibliography
|
|
29
|
-
{ name: 'W3C: WCAG 3.0 草案 (Silver)', url: 'https://www.w3.org/WAI/standards-guidelines/wcag/wcag3-intro/' },
|
|
30
|
-
{ name: 'Myndex: APCA 参考指南', url: 'https://apcaw3.myndex.com/' },
|
|
31
|
-
{ name: 'MDN: 可访问性和颜色对比', url: 'https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_WCAG/Perceivable/Color_contrast' },
|
|
32
|
-
],
|
|
29
|
+
bibliography,
|
|
33
30
|
howTo: howToData,
|
|
34
31
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
35
32
|
seo: [
|
|
@@ -232,6 +232,7 @@ function updatePreview(elements: Elements, context: CanvasRenderingContext2D, ui
|
|
|
232
232
|
elements.previewDescription.textContent = trimToPixels(context, description, DESCRIPTION_LIMIT, descriptionFont, ui.ellipsis);
|
|
233
233
|
elements.previewUrl.textContent = displayUrl(elements.urlInput.value, ui.fallbackUrl);
|
|
234
234
|
updateMeter({ meter: elements.titleMeter, fill: elements.titleFill, count: elements.titleCount, status: elements.titleStatus }, measure(context, title, titleFont), titleLimit, ui.pixelUnit, ui.goodLabel, ui.tooLongLabel);
|
|
235
|
+
elements.titleCount.textContent = `${Math.round(measure(context, title, titleFont))} ${ui.pixelUnit} / ${titleLimit} ${ui.pixelUnit} · ${title.length} ${ui.charactersLabel}`;
|
|
235
236
|
updateMeter({ meter: elements.descriptionMeter, fill: elements.descriptionFill, count: elements.descriptionCount, status: elements.descriptionStatus }, measure(context, description, descriptionFont), DESCRIPTION_LIMIT, ui.pixelUnit, ui.goodLabel, ui.tooLongLabel);
|
|
236
237
|
}
|
|
237
238
|
|
|
@@ -32,7 +32,7 @@ const faq = [
|
|
|
32
32
|
answer: 'Google search cards are constrained by visual width. A title with many narrow letters can fit more characters than a title with wide letters, uppercase words, or bold-looking glyphs. Pixel measurement gives a closer preview of the visible result.',
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
|
-
question: 'Does this
|
|
35
|
+
question: 'Does this predict exactly how Google will truncate my snippet?',
|
|
36
36
|
answer: 'No. Google can rewrite title links and snippets, and rendering can vary by query, device, language and experiment. The tool is designed as a practical visual guardrail for writing metadata that is less likely to be cut off.',
|
|
37
37
|
},
|
|
38
38
|
{
|
|
@@ -197,7 +197,7 @@ export const content: ToolLocaleContent<SerpPixelSimulatorUI> = {
|
|
|
197
197
|
},
|
|
198
198
|
{
|
|
199
199
|
type: 'paragraph',
|
|
200
|
-
html: 'No simulator can
|
|
200
|
+
html: 'No simulator can know the exact snippet Google will show. Google may rewrite title links, bold query terms, choose page text instead of the meta description, or display different snippets for different searches. This tool is best used as a fast writing and QA step: it catches obvious visual overflow before the page reaches production.',
|
|
201
201
|
},
|
|
202
202
|
{
|
|
203
203
|
type: 'summary',
|
|
@@ -32,7 +32,7 @@ const faq = [
|
|
|
32
32
|
answer: 'Las tarjetas de resultados de Google están limitadas por el ancho visual. Un título con muchas letras estrechas puede albergar más caracteres que uno con letras anchas, mayúsculas o glifos de aspecto grueso. La medición en píxeles ofrece una vista previa más fiel del resultado visible.',
|
|
33
33
|
},
|
|
34
34
|
{
|
|
35
|
-
question: '¿
|
|
35
|
+
question: '¿Predice esto exactamente cómo truncará Google mi fragmento?',
|
|
36
36
|
answer: 'No. Google puede reescribir los enlaces de título y los fragmentos, y la representación puede variar según la consulta, el dispositivo, el idioma y los experimentos. La herramienta está diseñada como una guía visual práctica para redactar metadatos con menos probabilidades de ser cortados.',
|
|
37
37
|
},
|
|
38
38
|
{
|
|
@@ -198,7 +198,7 @@ export const content: ToolLocaleContent<SerpPixelSimulatorUI> = {
|
|
|
198
198
|
},
|
|
199
199
|
{
|
|
200
200
|
type: 'paragraph',
|
|
201
|
-
html: 'Ningún simulador puede
|
|
201
|
+
html: 'Ningún simulador puede saber qué fragmento exacto mostrará Google. Google puede reescribir los enlaces de título, poner en negrita los términos de la consulta, elegir texto de la página en lugar de la meta descripción o mostrar fragmentos distintos para diferentes búsquedas. Esta herramienta funciona mejor como un paso rápido de redacción y control de calidad: detecta desbordamientos visuales evidentes antes de que la página llegue a producción.',
|
|
202
202
|
},
|
|
203
203
|
{
|
|
204
204
|
type: 'summary',
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { describe, expect, it } from 'vitest';
|
|
2
|
+
import {
|
|
3
|
+
DESCRIPTION_LIMIT, DESKTOP_TITLE_LIMIT, MOBILE_TITLE_LIMIT,
|
|
4
|
+
getTitleLimit, needsPixelTrim, ratioToPercent,
|
|
5
|
+
} from './logic';
|
|
6
|
+
|
|
7
|
+
describe('SERP pixel simulator logic', () => {
|
|
8
|
+
it('uses the documented desktop and mobile limits', () => {
|
|
9
|
+
expect(getTitleLimit('desktop')).toBe(DESKTOP_TITLE_LIMIT);
|
|
10
|
+
expect(getTitleLimit('mobile')).toBe(MOBILE_TITLE_LIMIT);
|
|
11
|
+
expect(DESCRIPTION_LIMIT).toBe(920);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('clamps ratios and handles invalid measurements', () => {
|
|
15
|
+
expect(ratioToPercent(290, 580)).toBe(50);
|
|
16
|
+
expect(ratioToPercent(-1, 580)).toBe(0);
|
|
17
|
+
expect(ratioToPercent(900, 580)).toBe(100);
|
|
18
|
+
expect(ratioToPercent(Number.NaN, 580)).toBe(0);
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
it('only flags widths beyond the selected limit', () => {
|
|
22
|
+
expect(needsPixelTrim(580, 580)).toBe(false);
|
|
23
|
+
expect(needsPixelTrim(581, 580)).toBe(true);
|
|
24
|
+
});
|
|
25
|
+
});
|
|
@@ -1,14 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
import { Bibliography as SharedBibliography } from '@jjlmoya/utils-shared';
|
|
3
|
-
import {
|
|
4
|
-
import type { KnownLocale } from '../../types';
|
|
5
|
-
|
|
6
|
-
interface Props {
|
|
7
|
-
locale?: KnownLocale;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
const { locale = 'es' } = Astro.props;
|
|
11
|
-
const content = await svgSanitizer.i18n[locale]?.();
|
|
3
|
+
import { bibliography } from './bibliography';
|
|
12
4
|
---
|
|
13
5
|
|
|
14
|
-
|
|
6
|
+
<SharedBibliography links={bibliography} />
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { BibliographyEntry } from '../../types';
|
|
2
|
+
|
|
3
|
+
export const bibliography: BibliographyEntry[] = [
|
|
4
|
+
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
5
|
+
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
6
|
+
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
7
|
+
];
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Häufig gestellte Fragen',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referenzen',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Offizielle Dokumentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (Open-Source-Referenz)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Frequently Asked Questions',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'References',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Preguntas Frecuentes',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referencias',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Documentaci\u00f3n oficial', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (referencia open source)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Questions Fr\u00e9quentes',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'R\u00e9f\u00e9rences',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Documentation officielle', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (r\u00e9f\u00e9rence open source)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Pertanyaan Umum',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referensi',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Dokumentasi Resmi', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (referensi open source)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Domande Frequenti',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Riferimenti',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Documentazione ufficiale', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (riferimento open source)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'よくある質問',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: '参考資料',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - 公式ドキュメント', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (オープンソースリファレンス)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: '자주 묻는 질문',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: '참고 자료',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - 공식 문서', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (오픈소스 레퍼런스)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Veelgestelde vragen',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referenties',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Officiële documentatie', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source referentie)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Często zadawane pytania',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Odniesienia',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Oficjalna dokumentacja', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -27,4 +28,4 @@ const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schem
|
|
|
27
28
|
|
|
28
29
|
const ui: SvgSanitizerUI = { labelInput: 'Cole seu SVG sujo aqui', labelOutput: 'SVG Limpo', optRemoveIds: 'Remover IDs', optRemoveWH: 'Remover largura/altura', optMinify: 'Minificar', btnSanitize: 'Limpar SVG', btnCopy: 'Copiar', btnCopied: 'Copiado', btnDownload: 'Baixar', statOriginal: 'Original', statCleaned: 'Limpo', statReduction: 'Redução', statElems: 'Elem. removidos', statAttrs: 'Attrs. removidos', errorPaste: 'Cole um SVG antes de limpar.', errorProcess: 'Erro ao processar o SVG.', };
|
|
29
30
|
|
|
30
|
-
export const content: ToolLocaleContent<SvgSanitizerUI> = { slug, title, description, ui, faqTitle: 'Perguntas Frequentes', faq: faqData, bibliographyTitle: 'Referências', bibliography
|
|
31
|
+
export const content: ToolLocaleContent<SvgSanitizerUI> = { slug, title, description, ui, faqTitle: 'Perguntas Frequentes', faq: faqData, bibliographyTitle: 'Referências', bibliography, howTo: howToData, schemas: [faqSchema, howToSchema, appSchema], seo: [{ type: 'title', text: 'Sanitizador SVG: Limpar Código do Figma e Illustrator', level: 2 }, { type: 'paragraph', html: 'Cole qualquer SVG exportado do <strong>Figma</strong>, Adobe Illustrator ou do inspetor do navegador e obtenha um arquivo vetorial limpo e otimizado pronto para produção.' }, { type: 'title', text: 'Por que SVGs exportados são tão sujos?', level: 3 }, { type: 'paragraph', html: 'Quando você exporta um SVG do Figma, você obtém um arquivo carregado com atributos que fazem sentido apenas dentro do aplicativo: <code>data-name</code>, <code>xml:space</code>, referências a camadas internas e metadados de design. O resultado é um SVG que pode pesar 40-70% mais do que o necessário.' }, { type: 'title', text: 'O que o Sanitizador remove', level: 3 }, { type: 'list', items: ['<strong>Metadados do editor:</strong> <code>metadata</code>, tags <code>title</code> e <code>desc</code> que Figma e Illustrator adicionam automaticamente.', '<strong>Namespaces Inkscape:</strong> todos os elementos com prefixo <code>inkscape:</code> e <code>sodipodi:</code>.', '<strong>Atributos desnecessários:</strong> <code>xml:space</code>, <code>version</code>, <code>xmlns:*</code> supérfluos e atributos Figma <code>data-*</code>.', '<strong>Grupos vazios:</strong> elementos <code><g></code> sem conteúdo deixados como artefatos de camadas deletadas.', '<strong>Declarações XML:</strong> a declaração <code><?xml version="1.0"?></code> e DOCTYPE desnecessários ao incorporar SVG em HTML.'] }] };
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Часто задаваемые вопросы',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Ссылки',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Vanliga frågor',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referenser',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: 'Sık Sorulan Sorular',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: 'Referanslar',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { bibliography } from '../bibliography';
|
|
1
2
|
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
3
|
import type { ToolLocaleContent } from '../../../types';
|
|
3
4
|
import type { SvgSanitizerUI } from '../ui';
|
|
@@ -92,11 +93,7 @@ export const content: ToolLocaleContent<SvgSanitizerUI> = {
|
|
|
92
93
|
faqTitle: '常见问题',
|
|
93
94
|
faq: faqData,
|
|
94
95
|
bibliographyTitle: '参考资料',
|
|
95
|
-
bibliography
|
|
96
|
-
{ name: 'SVG Specification - W3C', url: 'https://www.w3.org/TR/SVG2/' },
|
|
97
|
-
{ name: 'Figma SVG Export - Official Documentation', url: 'https://help.figma.com/hc/en-us/articles/360040028114-Export-from-Figma' },
|
|
98
|
-
{ name: 'SVGO - SVG Optimizer (open source reference)', url: 'https://github.com/svg/svgo' },
|
|
99
|
-
],
|
|
96
|
+
bibliography,
|
|
100
97
|
howTo: howToData,
|
|
101
98
|
schemas: [faqSchema, howToSchema, appSchema],
|
|
102
99
|
seo: [
|