@jjlmoya/utils-developer 1.3.0 → 1.5.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.
Files changed (339) hide show
  1. package/package.json +2 -1
  2. package/src/category/i18n/de.ts +34 -0
  3. package/src/category/i18n/id.ts +34 -0
  4. package/src/category/i18n/it.ts +34 -0
  5. package/src/category/i18n/ja.ts +34 -0
  6. package/src/category/i18n/ko.ts +34 -0
  7. package/src/category/i18n/nl.ts +34 -0
  8. package/src/category/i18n/pl.ts +34 -0
  9. package/src/category/i18n/pt.ts +34 -0
  10. package/src/category/i18n/ru.ts +34 -0
  11. package/src/category/i18n/sv.ts +34 -0
  12. package/src/category/i18n/tr.ts +34 -0
  13. package/src/category/i18n/zh.ts +34 -0
  14. package/src/category/index.ts +13 -1
  15. package/src/index.ts +12 -0
  16. package/src/tests/faq_count.test.ts +1 -1
  17. package/src/tests/i18n_coverage.test.ts +36 -0
  18. package/src/tests/locale_completeness.test.ts +2 -2
  19. package/src/tests/slug_uniqueness.test.ts +81 -0
  20. package/src/tool/aspectRatio/i18n/de.ts +177 -0
  21. package/src/tool/aspectRatio/i18n/id.ts +177 -0
  22. package/src/tool/aspectRatio/i18n/it.ts +177 -0
  23. package/src/tool/aspectRatio/i18n/ja.ts +178 -0
  24. package/src/tool/aspectRatio/i18n/ko.ts +178 -0
  25. package/src/tool/aspectRatio/i18n/nl.ts +178 -0
  26. package/src/tool/aspectRatio/i18n/pl.ts +177 -0
  27. package/src/tool/aspectRatio/i18n/pt.ts +177 -0
  28. package/src/tool/aspectRatio/i18n/ru.ts +177 -0
  29. package/src/tool/aspectRatio/i18n/sv.ts +177 -0
  30. package/src/tool/aspectRatio/i18n/tr.ts +177 -0
  31. package/src/tool/aspectRatio/i18n/zh.ts +178 -0
  32. package/src/tool/aspectRatio/index.ts +15 -7
  33. package/src/tool/calculadoraTiempoDatos/i18n/de.ts +150 -0
  34. package/src/tool/calculadoraTiempoDatos/i18n/id.ts +150 -0
  35. package/src/tool/calculadoraTiempoDatos/i18n/it.ts +150 -0
  36. package/src/tool/calculadoraTiempoDatos/i18n/ja.ts +151 -0
  37. package/src/tool/calculadoraTiempoDatos/i18n/ko.ts +151 -0
  38. package/src/tool/calculadoraTiempoDatos/i18n/nl.ts +150 -0
  39. package/src/tool/calculadoraTiempoDatos/i18n/pl.ts +150 -0
  40. package/src/tool/calculadoraTiempoDatos/i18n/pt.ts +150 -0
  41. package/src/tool/calculadoraTiempoDatos/i18n/ru.ts +151 -0
  42. package/src/tool/calculadoraTiempoDatos/i18n/sv.ts +150 -0
  43. package/src/tool/calculadoraTiempoDatos/i18n/tr.ts +150 -0
  44. package/src/tool/calculadoraTiempoDatos/i18n/zh.ts +151 -0
  45. package/src/tool/calculadoraTiempoDatos/index.ts +15 -7
  46. package/src/tool/colorConverter/i18n/de.ts +126 -0
  47. package/src/tool/colorConverter/i18n/id.ts +126 -0
  48. package/src/tool/colorConverter/i18n/it.ts +126 -0
  49. package/src/tool/colorConverter/i18n/ja.ts +127 -0
  50. package/src/tool/colorConverter/i18n/ko.ts +127 -0
  51. package/src/tool/colorConverter/i18n/nl.ts +126 -0
  52. package/src/tool/colorConverter/i18n/pl.ts +126 -0
  53. package/src/tool/colorConverter/i18n/pt.ts +126 -0
  54. package/src/tool/colorConverter/i18n/ru.ts +126 -0
  55. package/src/tool/colorConverter/i18n/sv.ts +126 -0
  56. package/src/tool/colorConverter/i18n/tr.ts +126 -0
  57. package/src/tool/colorConverter/i18n/zh.ts +127 -0
  58. package/src/tool/colorConverter/index.ts +15 -7
  59. package/src/tool/conversorExcelCsvHtml/i18n/de.ts +129 -0
  60. package/src/tool/conversorExcelCsvHtml/i18n/id.ts +129 -0
  61. package/src/tool/conversorExcelCsvHtml/i18n/it.ts +129 -0
  62. package/src/tool/conversorExcelCsvHtml/i18n/ja.ts +130 -0
  63. package/src/tool/conversorExcelCsvHtml/i18n/ko.ts +130 -0
  64. package/src/tool/conversorExcelCsvHtml/i18n/nl.ts +129 -0
  65. package/src/tool/conversorExcelCsvHtml/i18n/pl.ts +129 -0
  66. package/src/tool/conversorExcelCsvHtml/i18n/pt.ts +129 -0
  67. package/src/tool/conversorExcelCsvHtml/i18n/ru.ts +129 -0
  68. package/src/tool/conversorExcelCsvHtml/i18n/sv.ts +129 -0
  69. package/src/tool/conversorExcelCsvHtml/i18n/tr.ts +129 -0
  70. package/src/tool/conversorExcelCsvHtml/i18n/zh.ts +130 -0
  71. package/src/tool/conversorExcelCsvHtml/index.ts +15 -7
  72. package/src/tool/cronGenerator/i18n/de.ts +192 -0
  73. package/src/tool/cronGenerator/i18n/es.ts +2 -1
  74. package/src/tool/cronGenerator/i18n/fr.ts +2 -1
  75. package/src/tool/cronGenerator/i18n/id.ts +192 -0
  76. package/src/tool/cronGenerator/i18n/it.ts +192 -0
  77. package/src/tool/cronGenerator/i18n/ja.ts +192 -0
  78. package/src/tool/cronGenerator/i18n/ko.ts +192 -0
  79. package/src/tool/cronGenerator/i18n/nl.ts +192 -0
  80. package/src/tool/cronGenerator/i18n/pl.ts +192 -0
  81. package/src/tool/cronGenerator/i18n/pt.ts +192 -0
  82. package/src/tool/cronGenerator/i18n/ru.ts +192 -0
  83. package/src/tool/cronGenerator/i18n/sv.ts +192 -0
  84. package/src/tool/cronGenerator/i18n/tr.ts +192 -0
  85. package/src/tool/cronGenerator/i18n/zh.ts +192 -0
  86. package/src/tool/cronGenerator/index.ts +15 -7
  87. package/src/tool/cssSpecificityCalculator/i18n/de.ts +168 -0
  88. package/src/tool/cssSpecificityCalculator/i18n/id.ts +168 -0
  89. package/src/tool/cssSpecificityCalculator/i18n/it.ts +168 -0
  90. package/src/tool/cssSpecificityCalculator/i18n/ja.ts +169 -0
  91. package/src/tool/cssSpecificityCalculator/i18n/ko.ts +169 -0
  92. package/src/tool/cssSpecificityCalculator/i18n/nl.ts +168 -0
  93. package/src/tool/cssSpecificityCalculator/i18n/pl.ts +168 -0
  94. package/src/tool/cssSpecificityCalculator/i18n/pt.ts +168 -0
  95. package/src/tool/cssSpecificityCalculator/i18n/ru.ts +168 -0
  96. package/src/tool/cssSpecificityCalculator/i18n/sv.ts +168 -0
  97. package/src/tool/cssSpecificityCalculator/i18n/tr.ts +168 -0
  98. package/src/tool/cssSpecificityCalculator/i18n/zh.ts +169 -0
  99. package/src/tool/cssSpecificityCalculator/index.ts +15 -7
  100. package/src/tool/cssToInlineConverter/i18n/de.ts +160 -0
  101. package/src/tool/cssToInlineConverter/i18n/id.ts +160 -0
  102. package/src/tool/cssToInlineConverter/i18n/it.ts +160 -0
  103. package/src/tool/cssToInlineConverter/i18n/ja.ts +161 -0
  104. package/src/tool/cssToInlineConverter/i18n/ko.ts +161 -0
  105. package/src/tool/cssToInlineConverter/i18n/nl.ts +160 -0
  106. package/src/tool/cssToInlineConverter/i18n/pl.ts +160 -0
  107. package/src/tool/cssToInlineConverter/i18n/pt.ts +160 -0
  108. package/src/tool/cssToInlineConverter/i18n/ru.ts +160 -0
  109. package/src/tool/cssToInlineConverter/i18n/sv.ts +160 -0
  110. package/src/tool/cssToInlineConverter/i18n/tr.ts +160 -0
  111. package/src/tool/cssToInlineConverter/i18n/zh.ts +161 -0
  112. package/src/tool/cssToInlineConverter/index.ts +15 -7
  113. package/src/tool/duplicateCssRemover/i18n/de.ts +167 -0
  114. package/src/tool/duplicateCssRemover/i18n/id.ts +167 -0
  115. package/src/tool/duplicateCssRemover/i18n/it.ts +167 -0
  116. package/src/tool/duplicateCssRemover/i18n/ja.ts +168 -0
  117. package/src/tool/duplicateCssRemover/i18n/ko.ts +168 -0
  118. package/src/tool/duplicateCssRemover/i18n/nl.ts +167 -0
  119. package/src/tool/duplicateCssRemover/i18n/pl.ts +167 -0
  120. package/src/tool/duplicateCssRemover/i18n/pt.ts +167 -0
  121. package/src/tool/duplicateCssRemover/i18n/ru.ts +167 -0
  122. package/src/tool/duplicateCssRemover/i18n/sv.ts +167 -0
  123. package/src/tool/duplicateCssRemover/i18n/tr.ts +167 -0
  124. package/src/tool/duplicateCssRemover/i18n/zh.ts +168 -0
  125. package/src/tool/duplicateCssRemover/index.ts +15 -7
  126. package/src/tool/generadorSecurityTxt/i18n/de.ts +174 -0
  127. package/src/tool/generadorSecurityTxt/i18n/id.ts +174 -0
  128. package/src/tool/generadorSecurityTxt/i18n/it.ts +174 -0
  129. package/src/tool/generadorSecurityTxt/i18n/ja.ts +174 -0
  130. package/src/tool/generadorSecurityTxt/i18n/ko.ts +174 -0
  131. package/src/tool/generadorSecurityTxt/i18n/nl.ts +174 -0
  132. package/src/tool/generadorSecurityTxt/i18n/pl.ts +174 -0
  133. package/src/tool/generadorSecurityTxt/i18n/pt.ts +174 -0
  134. package/src/tool/generadorSecurityTxt/i18n/ru.ts +174 -0
  135. package/src/tool/generadorSecurityTxt/i18n/sv.ts +174 -0
  136. package/src/tool/generadorSecurityTxt/i18n/tr.ts +174 -0
  137. package/src/tool/generadorSecurityTxt/i18n/zh.ts +174 -0
  138. package/src/tool/generadorSecurityTxt/index.ts +15 -7
  139. package/src/tool/hashGenerator/i18n/de.ts +119 -0
  140. package/src/tool/hashGenerator/i18n/id.ts +119 -0
  141. package/src/tool/hashGenerator/i18n/it.ts +118 -0
  142. package/src/tool/hashGenerator/i18n/ja.ts +119 -0
  143. package/src/tool/hashGenerator/i18n/ko.ts +119 -0
  144. package/src/tool/hashGenerator/i18n/nl.ts +119 -0
  145. package/src/tool/hashGenerator/i18n/pl.ts +118 -0
  146. package/src/tool/hashGenerator/i18n/pt.ts +118 -0
  147. package/src/tool/hashGenerator/i18n/ru.ts +119 -0
  148. package/src/tool/hashGenerator/i18n/sv.ts +119 -0
  149. package/src/tool/hashGenerator/i18n/tr.ts +118 -0
  150. package/src/tool/hashGenerator/i18n/zh.ts +119 -0
  151. package/src/tool/hashGenerator/index.ts +15 -7
  152. package/src/tool/inspectorCertificadosSsl/i18n/de.ts +214 -0
  153. package/src/tool/inspectorCertificadosSsl/i18n/id.ts +215 -0
  154. package/src/tool/inspectorCertificadosSsl/i18n/it.ts +214 -0
  155. package/src/tool/inspectorCertificadosSsl/i18n/ja.ts +215 -0
  156. package/src/tool/inspectorCertificadosSsl/i18n/ko.ts +215 -0
  157. package/src/tool/inspectorCertificadosSsl/i18n/nl.ts +215 -0
  158. package/src/tool/inspectorCertificadosSsl/i18n/pl.ts +215 -0
  159. package/src/tool/inspectorCertificadosSsl/i18n/pt.ts +214 -0
  160. package/src/tool/inspectorCertificadosSsl/i18n/ru.ts +215 -0
  161. package/src/tool/inspectorCertificadosSsl/i18n/sv.ts +215 -0
  162. package/src/tool/inspectorCertificadosSsl/i18n/tr.ts +215 -0
  163. package/src/tool/inspectorCertificadosSsl/i18n/zh.ts +215 -0
  164. package/src/tool/inspectorCertificadosSsl/index.ts +24 -0
  165. package/src/tool/jsonFormatter/i18n/de.ts +157 -0
  166. package/src/tool/jsonFormatter/i18n/es.ts +2 -1
  167. package/src/tool/jsonFormatter/i18n/fr.ts +2 -1
  168. package/src/tool/jsonFormatter/i18n/id.ts +157 -0
  169. package/src/tool/jsonFormatter/i18n/it.ts +156 -0
  170. package/src/tool/jsonFormatter/i18n/ja.ts +157 -0
  171. package/src/tool/jsonFormatter/i18n/ko.ts +157 -0
  172. package/src/tool/jsonFormatter/i18n/nl.ts +157 -0
  173. package/src/tool/jsonFormatter/i18n/pl.ts +156 -0
  174. package/src/tool/jsonFormatter/i18n/pt.ts +156 -0
  175. package/src/tool/jsonFormatter/i18n/ru.ts +157 -0
  176. package/src/tool/jsonFormatter/i18n/sv.ts +157 -0
  177. package/src/tool/jsonFormatter/i18n/tr.ts +157 -0
  178. package/src/tool/jsonFormatter/i18n/zh.ts +157 -0
  179. package/src/tool/jsonFormatter/index.ts +15 -7
  180. package/src/tool/keycode/i18n/de.ts +161 -0
  181. package/src/tool/keycode/i18n/es.ts +2 -1
  182. package/src/tool/keycode/i18n/fr.ts +2 -1
  183. package/src/tool/keycode/i18n/id.ts +161 -0
  184. package/src/tool/keycode/i18n/it.ts +161 -0
  185. package/src/tool/keycode/i18n/ja.ts +161 -0
  186. package/src/tool/keycode/i18n/ko.ts +161 -0
  187. package/src/tool/keycode/i18n/nl.ts +161 -0
  188. package/src/tool/keycode/i18n/pl.ts +161 -0
  189. package/src/tool/keycode/i18n/pt.ts +160 -0
  190. package/src/tool/keycode/i18n/ru.ts +160 -0
  191. package/src/tool/keycode/i18n/sv.ts +160 -0
  192. package/src/tool/keycode/i18n/tr.ts +160 -0
  193. package/src/tool/keycode/i18n/zh.ts +161 -0
  194. package/src/tool/keycode/index.ts +15 -7
  195. package/src/tool/llmCostCalculator/i18n/de.ts +166 -0
  196. package/src/tool/llmCostCalculator/i18n/fr.ts +2 -1
  197. package/src/tool/llmCostCalculator/i18n/id.ts +166 -0
  198. package/src/tool/llmCostCalculator/i18n/it.ts +166 -0
  199. package/src/tool/llmCostCalculator/i18n/ja.ts +166 -0
  200. package/src/tool/llmCostCalculator/i18n/ko.ts +166 -0
  201. package/src/tool/llmCostCalculator/i18n/nl.ts +166 -0
  202. package/src/tool/llmCostCalculator/i18n/pl.ts +165 -0
  203. package/src/tool/llmCostCalculator/i18n/pt.ts +165 -0
  204. package/src/tool/llmCostCalculator/i18n/ru.ts +165 -0
  205. package/src/tool/llmCostCalculator/i18n/sv.ts +165 -0
  206. package/src/tool/llmCostCalculator/i18n/tr.ts +165 -0
  207. package/src/tool/llmCostCalculator/i18n/zh.ts +166 -0
  208. package/src/tool/llmCostCalculator/index.ts +24 -0
  209. package/src/tool/mobileMockupGenerator/i18n/de.ts +121 -0
  210. package/src/tool/mobileMockupGenerator/i18n/id.ts +121 -0
  211. package/src/tool/mobileMockupGenerator/i18n/it.ts +121 -0
  212. package/src/tool/mobileMockupGenerator/i18n/ja.ts +122 -0
  213. package/src/tool/mobileMockupGenerator/i18n/ko.ts +122 -0
  214. package/src/tool/mobileMockupGenerator/i18n/nl.ts +121 -0
  215. package/src/tool/mobileMockupGenerator/i18n/pl.ts +31 -0
  216. package/src/tool/mobileMockupGenerator/i18n/pt.ts +121 -0
  217. package/src/tool/mobileMockupGenerator/i18n/ru.ts +121 -0
  218. package/src/tool/mobileMockupGenerator/i18n/sv.ts +121 -0
  219. package/src/tool/mobileMockupGenerator/i18n/tr.ts +121 -0
  220. package/src/tool/mobileMockupGenerator/i18n/zh.ts +122 -0
  221. package/src/tool/mobileMockupGenerator/index.ts +24 -0
  222. package/src/tool/musicalTypography/i18n/de.ts +179 -0
  223. package/src/tool/musicalTypography/i18n/id.ts +179 -0
  224. package/src/tool/musicalTypography/i18n/it.ts +179 -0
  225. package/src/tool/musicalTypography/i18n/ja.ts +180 -0
  226. package/src/tool/musicalTypography/i18n/ko.ts +180 -0
  227. package/src/tool/musicalTypography/i18n/nl.ts +179 -0
  228. package/src/tool/musicalTypography/i18n/pl.ts +179 -0
  229. package/src/tool/musicalTypography/i18n/pt.ts +101 -0
  230. package/src/tool/musicalTypography/i18n/ru.ts +47 -0
  231. package/src/tool/musicalTypography/i18n/sv.ts +29 -0
  232. package/src/tool/musicalTypography/i18n/tr.ts +29 -0
  233. package/src/tool/musicalTypography/i18n/zh.ts +30 -0
  234. package/src/tool/musicalTypography/index.ts +15 -7
  235. package/src/tool/placeholderGenerator/i18n/de.ts +176 -0
  236. package/src/tool/placeholderGenerator/i18n/id.ts +176 -0
  237. package/src/tool/placeholderGenerator/i18n/it.ts +176 -0
  238. package/src/tool/placeholderGenerator/i18n/ja.ts +177 -0
  239. package/src/tool/placeholderGenerator/i18n/ko.ts +177 -0
  240. package/src/tool/placeholderGenerator/i18n/nl.ts +176 -0
  241. package/src/tool/placeholderGenerator/i18n/pl.ts +176 -0
  242. package/src/tool/placeholderGenerator/i18n/pt.ts +176 -0
  243. package/src/tool/placeholderGenerator/i18n/ru.ts +176 -0
  244. package/src/tool/placeholderGenerator/i18n/sv.ts +176 -0
  245. package/src/tool/placeholderGenerator/i18n/tr.ts +176 -0
  246. package/src/tool/placeholderGenerator/i18n/zh.ts +177 -0
  247. package/src/tool/placeholderGenerator/index.ts +24 -0
  248. package/src/tool/promptLibrary/i18n/de.ts +131 -0
  249. package/src/tool/promptLibrary/i18n/id.ts +131 -0
  250. package/src/tool/promptLibrary/i18n/it.ts +131 -0
  251. package/src/tool/promptLibrary/i18n/ja.ts +132 -0
  252. package/src/tool/promptLibrary/i18n/ko.ts +132 -0
  253. package/src/tool/promptLibrary/i18n/nl.ts +131 -0
  254. package/src/tool/promptLibrary/i18n/pl.ts +28 -0
  255. package/src/tool/promptLibrary/i18n/pt.ts +101 -0
  256. package/src/tool/promptLibrary/i18n/ru.ts +101 -0
  257. package/src/tool/promptLibrary/i18n/sv.ts +93 -0
  258. package/src/tool/promptLibrary/i18n/tr.ts +93 -0
  259. package/src/tool/promptLibrary/i18n/zh.ts +94 -0
  260. package/src/tool/promptLibrary/index.ts +24 -0
  261. package/src/tool/readabilityCalculator/i18n/de.ts +133 -0
  262. package/src/tool/readabilityCalculator/i18n/id.ts +133 -0
  263. package/src/tool/readabilityCalculator/i18n/it.ts +133 -0
  264. package/src/tool/readabilityCalculator/i18n/ja.ts +134 -0
  265. package/src/tool/readabilityCalculator/i18n/ko.ts +134 -0
  266. package/src/tool/readabilityCalculator/i18n/nl.ts +133 -0
  267. package/src/tool/readabilityCalculator/i18n/pl.ts +29 -0
  268. package/src/tool/readabilityCalculator/i18n/pt.ts +91 -0
  269. package/src/tool/readabilityCalculator/i18n/ru.ts +91 -0
  270. package/src/tool/readabilityCalculator/i18n/sv.ts +43 -0
  271. package/src/tool/readabilityCalculator/i18n/tr.ts +43 -0
  272. package/src/tool/readabilityCalculator/i18n/zh.ts +44 -0
  273. package/src/tool/readabilityCalculator/index.ts +24 -0
  274. package/src/tool/svgSanitizer/i18n/de.ts +125 -0
  275. package/src/tool/svgSanitizer/i18n/id.ts +125 -0
  276. package/src/tool/svgSanitizer/i18n/it.ts +125 -0
  277. package/src/tool/svgSanitizer/i18n/ja.ts +126 -0
  278. package/src/tool/svgSanitizer/i18n/ko.ts +126 -0
  279. package/src/tool/svgSanitizer/i18n/nl.ts +125 -0
  280. package/src/tool/svgSanitizer/i18n/pl.ts +125 -0
  281. package/src/tool/svgSanitizer/i18n/pt.ts +30 -0
  282. package/src/tool/svgSanitizer/i18n/ru.ts +126 -0
  283. package/src/tool/svgSanitizer/i18n/sv.ts +126 -0
  284. package/src/tool/svgSanitizer/i18n/tr.ts +126 -0
  285. package/src/tool/svgSanitizer/i18n/zh.ts +126 -0
  286. package/src/tool/svgSanitizer/index.ts +24 -0
  287. package/src/tool/svgToCss/i18n/de.ts +174 -0
  288. package/src/tool/svgToCss/i18n/id.ts +174 -0
  289. package/src/tool/svgToCss/i18n/it.ts +174 -0
  290. package/src/tool/svgToCss/i18n/ja.ts +175 -0
  291. package/src/tool/svgToCss/i18n/ko.ts +175 -0
  292. package/src/tool/svgToCss/i18n/nl.ts +174 -0
  293. package/src/tool/svgToCss/i18n/pl.ts +174 -0
  294. package/src/tool/svgToCss/i18n/pt.ts +174 -0
  295. package/src/tool/svgToCss/i18n/ru.ts +174 -0
  296. package/src/tool/svgToCss/i18n/sv.ts +174 -0
  297. package/src/tool/svgToCss/i18n/tr.ts +174 -0
  298. package/src/tool/svgToCss/i18n/zh.ts +175 -0
  299. package/src/tool/svgToCss/index.ts +15 -7
  300. package/src/tool/urlCleaner/i18n/de.ts +116 -0
  301. package/src/tool/urlCleaner/i18n/id.ts +116 -0
  302. package/src/tool/urlCleaner/i18n/it.ts +116 -0
  303. package/src/tool/urlCleaner/i18n/ja.ts +117 -0
  304. package/src/tool/urlCleaner/i18n/ko.ts +117 -0
  305. package/src/tool/urlCleaner/i18n/nl.ts +116 -0
  306. package/src/tool/urlCleaner/i18n/pl.ts +29 -0
  307. package/src/tool/urlCleaner/i18n/pt.ts +43 -0
  308. package/src/tool/urlCleaner/i18n/ru.ts +43 -0
  309. package/src/tool/urlCleaner/i18n/sv.ts +43 -0
  310. package/src/tool/urlCleaner/i18n/tr.ts +43 -0
  311. package/src/tool/urlCleaner/i18n/zh.ts +44 -0
  312. package/src/tool/urlCleaner/index.ts +24 -0
  313. package/src/tool/urlEncoderDecoder/i18n/de.ts +163 -0
  314. package/src/tool/urlEncoderDecoder/i18n/id.ts +163 -0
  315. package/src/tool/urlEncoderDecoder/i18n/it.ts +163 -0
  316. package/src/tool/urlEncoderDecoder/i18n/ja.ts +163 -0
  317. package/src/tool/urlEncoderDecoder/i18n/ko.ts +163 -0
  318. package/src/tool/urlEncoderDecoder/i18n/nl.ts +163 -0
  319. package/src/tool/urlEncoderDecoder/i18n/pl.ts +162 -0
  320. package/src/tool/urlEncoderDecoder/i18n/pt.ts +162 -0
  321. package/src/tool/urlEncoderDecoder/i18n/ru.ts +163 -0
  322. package/src/tool/urlEncoderDecoder/i18n/sv.ts +163 -0
  323. package/src/tool/urlEncoderDecoder/i18n/tr.ts +162 -0
  324. package/src/tool/urlEncoderDecoder/i18n/zh.ts +163 -0
  325. package/src/tool/urlEncoderDecoder/index.ts +15 -7
  326. package/src/tool/utmGenerator/i18n/de.ts +118 -0
  327. package/src/tool/utmGenerator/i18n/id.ts +118 -0
  328. package/src/tool/utmGenerator/i18n/it.ts +118 -0
  329. package/src/tool/utmGenerator/i18n/ja.ts +118 -0
  330. package/src/tool/utmGenerator/i18n/ko.ts +118 -0
  331. package/src/tool/utmGenerator/i18n/nl.ts +118 -0
  332. package/src/tool/utmGenerator/i18n/pl.ts +117 -0
  333. package/src/tool/utmGenerator/i18n/pt.ts +118 -0
  334. package/src/tool/utmGenerator/i18n/ru.ts +118 -0
  335. package/src/tool/utmGenerator/i18n/sv.ts +118 -0
  336. package/src/tool/utmGenerator/i18n/tr.ts +117 -0
  337. package/src/tool/utmGenerator/i18n/zh.ts +118 -0
  338. package/src/tool/utmGenerator/index.ts +15 -7
  339. package/src/types.ts +1 -2
@@ -9,6 +9,18 @@ export type InspectorCertificadosSslLocaleContent = ToolLocaleContent<InspectorC
9
9
  import { content as es } from './i18n/es';
10
10
  import { content as en } from './i18n/en';
11
11
  import { content as fr } from './i18n/fr';
12
+ import { content as de } from './i18n/de';
13
+ import { content as it } from './i18n/it';
14
+ import { content as ja } from './i18n/ja';
15
+ import { content as ko } from './i18n/ko';
16
+ import { content as nl } from './i18n/nl';
17
+ import { content as pl } from './i18n/pl';
18
+ import { content as pt } from './i18n/pt';
19
+ import { content as ru } from './i18n/ru';
20
+ import { content as sv } from './i18n/sv';
21
+ import { content as tr } from './i18n/tr';
22
+ import { content as zh } from './i18n/zh';
23
+ import { content as id } from './i18n/id';
12
24
 
13
25
  export const inspectorCertificadosSsl: DeveloperToolEntry<InspectorCertificadosSslUI> = {
14
26
  id: 'inspector-certificados-ssl',
@@ -20,6 +32,18 @@ export const inspectorCertificadosSsl: DeveloperToolEntry<InspectorCertificadosS
20
32
  es: async () => es,
21
33
  en: async () => en,
22
34
  fr: async () => fr,
35
+ de: async () => de,
36
+ it: async () => it,
37
+ ja: async () => ja,
38
+ ko: async () => ko,
39
+ nl: async () => nl,
40
+ pl: async () => pl,
41
+ pt: async () => pt,
42
+ ru: async () => ru,
43
+ sv: async () => sv,
44
+ tr: async () => tr,
45
+ zh: async () => zh,
46
+ id: async () => id,
23
47
  },
24
48
  };
25
49
 
@@ -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-formatter-de';
6
+ const title = 'Kostenloser Online JSON Formatter und Validator';
7
+ const description =
8
+ 'Kostenloses Online-Tool zum Formatieren, Validieren und Reparieren von JSON-Code. JSON verschönern und formatieren. Erkennt Syntaxfehler und verbessert die Lesbarkeit des Codes.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Sind meine Daten bei der Verwendung dieses Formatierers sicher?',
13
+ answer:
14
+ 'Absolut. Die gesamte Verarbeitung findet zu 100 % in Ihrem Browser statt (Client-Side). Ihre JSON-Daten werden niemals an einen Server gesendet, was die vollständige Privatsphäre Ihrer Datenstrukturen gewährleistet.',
15
+ },
16
+ {
17
+ question: 'Was verursacht einen "Invalid JSON"-Fehler?',
18
+ answer:
19
+ 'Dies wird meist durch abschließende Kommas am Ende eines Objekts, fehlende doppelte Anführungszeichen um Schlüssel oder unsichtbare Zeichen verursacht. Unser Tool markiert die exakte Zeile des Fehlers, damit Sie ihn beheben können.',
20
+ },
21
+ {
22
+ question: 'Kann es fehlerhaftes JSON reparieren?',
23
+ answer:
24
+ 'Unser Tool versucht automatisch, häufige Fehler wie unnötige abschließende Kommas oder falsch formatierte Zeichen-Escapes zu korrigieren, damit das JSON dem RFC 8259-Standard entspricht.',
25
+ },
26
+ {
27
+ question: 'Werden sehr große JSON-Dateien unterstützt?',
28
+ answer:
29
+ 'Ja, die Verarbeitungs-Engine ist darauf optimiert, komplexe Datenstrukturen und große Dateien zu verarbeiten, ohne die Benutzeroberfläche des Browsers zu blockieren.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Code einfügen',
36
+ text: 'Fügen Sie Ihr unformatiertes oder minimiertes JSON in das Haupttextfeld ein.',
37
+ },
38
+ {
39
+ name: 'Validieren und Formatieren',
40
+ text: 'Das System analysiert den Code automatisch, hebt Syntaxfehler hervor und wendet Einrückungen an, um die Lesbarkeit zu verbessern.',
41
+ },
42
+ {
43
+ name: 'Stil wählen',
44
+ text: 'Wählen Sie zwischen einem erweiterten (Beautify) oder komprimierten (Minify) Format, je nachdem, ob Sie Lesbarkeit oder Platzersparnis benötigen.',
45
+ },
46
+ {
47
+ name: 'Ergebnis kopieren',
48
+ text: 'Klicken Sie auf den Kopieren-Button, um das perfekt validierte JSON in Ihre Zwischenablage zu übernehmen.',
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: 'de',
84
+ };
85
+
86
+ const ui: JsonFormatterUI = {
87
+ labelInput: 'Eingabe (JSON)',
88
+ labelOutput: 'Ausgabe',
89
+ btnMinify: 'Minimieren',
90
+ btnBeautify: 'Formatieren',
91
+ btnFix: 'Reparatur versuchen',
92
+ btnCopy: 'Kopieren',
93
+ statusWaiting: 'Warten auf Eingabe...',
94
+ statusValid: 'Gültiges JSON',
95
+ statusInvalid: 'Ungültiges JSON',
96
+ toastCopied: 'Kopiert!',
97
+ toastFixed: 'JSON repariert (Vorschau)',
98
+ toastFixFailed: 'Automatische Reparatur fehlgeschlagen',
99
+ placeholder: 'Fügen Sie hier Ihr JSON ein...',
100
+ };
101
+
102
+ export const content: ToolLocaleContent<JsonFormatterUI> = {
103
+ slug,
104
+ title,
105
+ description,
106
+ ui,
107
+ faqTitle: 'Häufig gestellte Fragen',
108
+ faq: faqData,
109
+ bibliographyTitle: 'Referenzen und Standards',
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 – Introducing 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 Validierung und Formatierung',
134
+ level: 2,
135
+ },
136
+ {
137
+ type: 'paragraph',
138
+ html: 'JSON (JavaScript Object Notation) ist der De-facto-Standard für den Datenaustausch im Web. Seine strikte Syntax macht es jedoch anfällig für menschliche Fehler bei der manuellen Bearbeitung.',
139
+ },
140
+ {
141
+ type: 'paragraph',
142
+ html: 'Dieses Tool ermöglicht es Ihnen, die Struktur zu validieren, den Code zur Verbesserung der Lesbarkeit zu formatieren und häufige Syntaxfehler automatisch zu reparieren.',
143
+ },
144
+ { type: 'grid', columns: 2 },
145
+ {
146
+ type: 'card',
147
+ title: 'Häufig reparierte Fehler',
148
+ html: '<ul><li><strong>Einfache Anführungszeichen:</strong> Der JSON-Standard erfordert doppelte Anführungszeichen. Das Tool konvertiert <code>\'Key\': \'Value\'</code> in <code>"Key": "Value"</code>.</li><li><strong>Unquotierte Schlüssel:</strong> Erkennt Objektschlüssel im JavaScript-Stil und fügt die erforderlichen Anführungszeichen hinzu.</li><li><strong>Abschließende Kommas:</strong> Entfernt Kommas am Ende von Objekten oder Arrays, die den strikten Parser stören.</li></ul>',
149
+ },
150
+ {
151
+ type: 'card',
152
+ title: 'Funktionen',
153
+ html: '<ul><li><strong>Syntax-Highlighting:</strong> Färbt Schlüssel, Strings, Zahlen und Booleans ein, um das schnelle Lesen zu erleichtern.</li><li><strong>Echtzeit-Validierung:</strong> Zeigt sofort an, ob das JSON gültig ist, oder markiert den spezifischen Parsing-Fehler.</li><li><strong>Totale Privatsphäre:</strong> Die Verarbeitung erfolgt zu 100 % in Ihrem Browser. Es werden keine Daten an externe Server gesendet.</li></ul>',
154
+ },
155
+ ],
156
+ };
157
+
@@ -2,7 +2,7 @@ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'sche
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
  import type { JsonFormatterUI } from '../ui';
4
4
 
5
- const slug = 'json-formatter';
5
+ const slug = 'json-formatter-es';
6
6
  const title = 'Formateador y Validador JSON Online Gratuito';
7
7
  const description =
8
8
  'Herramienta online gratuita para formatear, validar y reparar código JSON. Formatea y embellece JSON. Detecta errores de sintaxis y mejora la lectura del código';
@@ -154,3 +154,4 @@ export const content: ToolLocaleContent<JsonFormatterUI> = {
154
154
  },
155
155
  ],
156
156
  };
157
+
@@ -2,7 +2,7 @@ import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'sche
2
2
  import type { ToolLocaleContent } from '../../../types';
3
3
  import type { JsonFormatterUI } from '../ui';
4
4
 
5
- const slug = 'json-formatter';
5
+ const slug = 'json-formatter-fr';
6
6
  const title = 'Formateur et Validateur JSON Gratuit en Ligne';
7
7
  const description =
8
8
  'Outil en ligne gratuit pour formater, valider et réparer du code JSON. Embellissez et formatez du JSON. Détecte les erreurs de syntaxe et améliore la lisibilité du code.';
@@ -154,3 +154,4 @@ export const content: ToolLocaleContent<JsonFormatterUI> = {
154
154
  },
155
155
  ],
156
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-formatter-id';
6
+ const title = 'Format dan Validasi JSON Online Gratis';
7
+ const description =
8
+ 'Alat online gratis untuk memformat, memvalidasi, dan memperbaiki kode JSON. Mempercantik dan memformat JSON. Mendeteksi kesalahan sintaksis dan meningkatkan keterbacaan kode.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Apakah data saya aman saat menggunakan pemformat ini?',
13
+ answer:
14
+ 'Tentu saja. Semua pemrosesan terjadi 100% di browser Anda (Sisi Klien). Data JSON Anda tidak pernah dikirim ke server mana pun, memastikan privasi lengkap untuk struktur data Anda.',
15
+ },
16
+ {
17
+ question: "Apa yang menyebabkan kesalahan 'Invalid JSON'?",
18
+ answer:
19
+ 'Biasanya disebabkan oleh koma berlebih di akhir objek, kurangnya tanda kutip ganda di sekitar kunci, atau karakter yang tidak terlihat. Alat kami menyoroti baris kesalahan yang tepat sehingga Anda dapat memperbaikinya.',
20
+ },
21
+ {
22
+ question: 'Dapatkah alat ini memperbaiki JSON yang rusak?',
23
+ answer:
24
+ 'Alat kami secara otomatis mencoba memperbaiki kesalahan umum seperti koma berlebih yang tidak perlu atau karakter escape yang salah, sehingga JSON menjadi valid sesuai dengan standar RFC 8259.',
25
+ },
26
+ {
27
+ question: 'Apakah alat ini mendukung file JSON yang sangat besar?',
28
+ answer:
29
+ 'Ya, mesin pemrosesan dioptimalkan untuk menangani struktur data yang kompleks dan file berukuran besar tanpa memblokir antarmuka browser.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Tempel kode Anda',
36
+ text: 'Tempelkan JSON Anda yang belum diformat atau telah diminifikasi ke dalam area teks utama.',
37
+ },
38
+ {
39
+ name: 'Validasi dan Format',
40
+ text: 'Sistem akan secara otomatis menganalisis kode, menyoroti kesalahan sintaksis, dan menerapkan indentasi untuk meningkatkan keterbacaan.',
41
+ },
42
+ {
43
+ name: 'Pilih gaya',
44
+ text: 'Pilih antara format diperluas (beautify) atau dikompresi (minify) tergantung pada apakah Anda membutuhkan keterbacaan atau penghematan ruang.',
45
+ },
46
+ {
47
+ name: 'Salin hasilnya',
48
+ text: 'Klik tombol salin untuk mengambil JSON yang telah divalidasi dengan sempurna ke papan klip Anda.',
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: 'id',
84
+ };
85
+
86
+ const ui: JsonFormatterUI = {
87
+ labelInput: 'Input (JSON)',
88
+ labelOutput: 'Output',
89
+ btnMinify: 'Minifikasi',
90
+ btnBeautify: 'Perkanti',
91
+ btnFix: 'Coba Perbaiki',
92
+ btnCopy: 'Salin',
93
+ statusWaiting: 'Menunggu input...',
94
+ statusValid: 'JSON Valid',
95
+ statusInvalid: 'JSON Tidak Valid',
96
+ toastCopied: 'Tersalin!',
97
+ toastFixed: 'JSON diperbaiki (Pratinjau)',
98
+ toastFixFailed: 'Tidak dapat memperbaiki secara otomatis',
99
+ placeholder: 'Tempel JSON Anda di sini...',
100
+ };
101
+
102
+ export const content: ToolLocaleContent<JsonFormatterUI> = {
103
+ slug,
104
+ title,
105
+ description,
106
+ ui,
107
+ faqTitle: 'Pertanyaan yang Sering Diajukan',
108
+ faq: faqData,
109
+ bibliographyTitle: 'Referensi dan Standar',
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 – Mengenal 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: 'Validasi dan Pemformatan JSON',
134
+ level: 2,
135
+ },
136
+ {
137
+ type: 'paragraph',
138
+ html: 'JSON (JavaScript Object Notation) adalah standar de facto untuk pertukaran data di web. Namun, sintaksnya yang ketat membuatnya rentan terhadap kesalahan manusia saat diedit secara manual.',
139
+ },
140
+ {
141
+ type: 'paragraph',
142
+ html: 'Alat ini memungkinkan Anda untuk memvalidasi struktur, memformat kode untuk meningkatkan keterbacaannya, dan secara otomatis memperbaiki kesalahan sintaksis yang umum.',
143
+ },
144
+ { type: 'grid', columns: 2 },
145
+ {
146
+ type: 'card',
147
+ title: 'Kesalahan Umum yang Diperbaiki',
148
+ html: '<ul><li><strong>Tanda Kutip Tunggal:</strong> Standar JSON memerlukan tanda kutip ganda. Alat ini mengubah <code>\'key\': \'value\'</code> menjadi <code>"key\": \"value\"</code>.</li><li><strong>Kunci Tanpa Tanda Kutip:</strong> Mendeteksi kunci objek gaya JavaScript dan menambahkan tanda kutip yang diperlukan.</li><li><strong>Koma di Akhir:</strong> Menghapus koma di akhir objek atau array (trailing commas) yang merusak parser ketat.</li></ul>',
149
+ },
150
+ {
151
+ type: 'card',
152
+ title: 'Fitur',
153
+ html: '<ul><li><strong>Penyorotan Sintaksis:</strong> Mewarnai kunci, string, angka, dan boolean untuk memfasilitasi pembacaan cepat.</li><li><strong>Validasi Real-Time:</strong> Secara instan menunjukkan apakah JSON valid atau menunjukkan kesalahan penguraian spesifik.</li><li><strong>Privasi Total:</strong> Pemrosesan terjadi 100% di browser Anda. Tidak ada data yang dikirim ke server eksternal.</li></ul>',
154
+ },
155
+ ],
156
+ };
157
+
@@ -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 = 'formattatore-json';
6
+ const title = 'Formattatore e Validatore JSON Online Gratuito';
7
+ const description =
8
+ 'Strumento online gratuito per formattare, validare e riparare il codice JSON. Abbellisci e formatta JSON. Rileva errori di sintassi e migliora la leggibilità del codice.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'I miei dati sono sicuri usando questo formattatore?',
13
+ answer:
14
+ 'Assolutamente sì. Tutta l\'elaborazione avviene al 100% nel tuo browser (Client-Side). I tuoi dati JSON non vengono mai inviati a nessun server, garantendo la completa privacy per le tue strutture dati.',
15
+ },
16
+ {
17
+ question: "Cosa causa un errore 'Invalid JSON'?",
18
+ answer:
19
+ 'Di solito è causato da virgole finali alla fine di un oggetto, mancanza di doppie virgolette intorno alle chiavi o caratteri invisibili. Il nostro strumento evidenzia l\'esatta riga dell\'errore in modo da poterlo correggere.',
20
+ },
21
+ {
22
+ question: 'Può riparare JSON danneggiati?',
23
+ answer:
24
+ 'Il nostro strumento tenta automaticamente di correggere errori comuni come virgole finali non necessarie o escape di caratteri malformati, in modo che il JSON diventi valido secondo lo standard RFC 8259.',
25
+ },
26
+ {
27
+ question: 'Supporta file JSON molto grandi?',
28
+ answer:
29
+ 'Sì, il motore di elaborazione è ottimizzato per gestire strutture dati complesse e file di grandi dimensioni senza bloccare l\'interfaccia del browser.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Incolla il tuo codice',
36
+ text: 'Incolla il tuo JSON non formattato o minificato nell\'area di testo principale.',
37
+ },
38
+ {
39
+ name: 'Valida e Formatta',
40
+ text: 'Il sistema analizzerà automaticamente il codice, evidenziando gli errori di sintassi e applicando l\'indentazione per migliorare la leggibilità.',
41
+ },
42
+ {
43
+ name: 'Scegli uno stile',
44
+ text: 'Scegli tra un formato espanso (beautify) o compresso (minify) a seconda che tu abbia bisogno di leggibilità o di risparmiare spazio.',
45
+ },
46
+ {
47
+ name: 'Copia il risultato',
48
+ text: 'Fai clic sul pulsante copia per portare il JSON perfettamente validato nei tuoi appunti.',
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: 'it',
84
+ };
85
+
86
+ const ui: JsonFormatterUI = {
87
+ labelInput: 'Input (JSON)',
88
+ labelOutput: 'Output',
89
+ btnMinify: 'Minifica',
90
+ btnBeautify: 'Abbellisci',
91
+ btnFix: 'Prova a riparare',
92
+ btnCopy: 'Copia',
93
+ statusWaiting: 'In attesa di input...',
94
+ statusValid: 'JSON Valido',
95
+ statusInvalid: 'JSON Non Valido',
96
+ toastCopied: 'Copiato!',
97
+ toastFixed: 'JSON riparato (Anteprima)',
98
+ toastFixFailed: 'Impossibile riparare automaticamente',
99
+ placeholder: 'Incolla qui il tuo JSON...',
100
+ };
101
+
102
+ export const content: ToolLocaleContent<JsonFormatterUI> = {
103
+ slug,
104
+ title,
105
+ description,
106
+ ui,
107
+ faqTitle: 'Domande Frequenti',
108
+ faq: faqData,
109
+ bibliographyTitle: 'Riferimenti e Standard',
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 – Introduzione a JSON',
121
+ url: 'https://www.json.org/json-it.html',
122
+ },
123
+ {
124
+ name: 'MDN Web Docs – JSON',
125
+ url: 'https://developer.mozilla.org/it/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: 'Validazione e Formattazione JSON',
134
+ level: 2,
135
+ },
136
+ {
137
+ type: 'paragraph',
138
+ html: 'JSON (JavaScript Object Notation) è lo standard de facto per lo scambio di dati sul web. Tuttavia, la sua sintassi rigorosa lo rende propenso a errori umani quando viene modificato manualmente.',
139
+ },
140
+ {
141
+ type: 'paragraph',
142
+ html: 'Questo strumento ti consente di validare la struttura, formattare il codice per migliorarne la leggibilità e riparare automaticamente i comuni errori di sintassi.',
143
+ },
144
+ { type: 'grid', columns: 2 },
145
+ {
146
+ type: 'card',
147
+ title: 'Errori Comuni che Ripara',
148
+ html: '<ul><li><strong>Virgolette Singole:</strong> Lo standard JSON richiede le doppie virgolette. Lo strumento converte <code>\'chiave\': \'valore\'</code> in <code>"chiave": "valore"</code>.</li><li><strong>Chiavi senza virgolette:</strong> Rileva le chiavi degli oggetti in stile JavaScript e aggiunge le virgolette necessarie.</li><li><strong>Virgole Finali:</strong> Rimuove le virgole alla fine di oggetti o array (trailing commas) che interrompono il parser rigoroso.</li></ul>',
149
+ },
150
+ {
151
+ type: 'card',
152
+ title: 'Caratteristiche',
153
+ html: '<ul><li><strong>Evidenziazione della Sintassi:</strong> Colora chiavi, stringhe, numeri e booleani per facilitare una lettura rapida.</li><li><strong>Validazione in Tempo Reale:</strong> Indica istantaneamente se il JSON è valido o mostra l\'errore di parsing specifico.</li><li><strong>Privacy Totale:</strong> L\'elaborazione avviene al 100% nel tuo browser. Nessun dato viene inviato a server esterni.</li></ul>',
154
+ },
155
+ ],
156
+ };