@jjlmoya/utils-games-development 1.53.0 → 1.55.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 (72) hide show
  1. package/package.json +1 -1
  2. package/src/category/index.ts +2 -1
  3. package/src/entries.ts +6 -1
  4. package/src/index.ts +2 -0
  5. package/src/tests/contrast_legibility.test.ts +245 -0
  6. package/src/tests/locale_completeness.test.ts +2 -2
  7. package/src/tests/tool_validation.test.ts +2 -2
  8. package/src/tool/itchioGameTester/itchio-game-tester.css +3 -3
  9. package/src/tool/localizationSanitizer/localization-sanitizer.css +13 -13
  10. package/src/tool/retroSfxGenerator/bibliography.astro +6 -0
  11. package/src/tool/retroSfxGenerator/bibliography.ts +16 -0
  12. package/src/tool/retroSfxGenerator/client.ts +256 -0
  13. package/src/tool/retroSfxGenerator/component.astro +146 -0
  14. package/src/tool/retroSfxGenerator/entry.ts +27 -0
  15. package/src/tool/retroSfxGenerator/i18n/de.ts +211 -0
  16. package/src/tool/retroSfxGenerator/i18n/en.ts +224 -0
  17. package/src/tool/retroSfxGenerator/i18n/es.ts +211 -0
  18. package/src/tool/retroSfxGenerator/i18n/fr.ts +211 -0
  19. package/src/tool/retroSfxGenerator/i18n/id.ts +211 -0
  20. package/src/tool/retroSfxGenerator/i18n/it.ts +211 -0
  21. package/src/tool/retroSfxGenerator/i18n/ja.ts +211 -0
  22. package/src/tool/retroSfxGenerator/i18n/ko.ts +211 -0
  23. package/src/tool/retroSfxGenerator/i18n/nl.ts +211 -0
  24. package/src/tool/retroSfxGenerator/i18n/pl.ts +211 -0
  25. package/src/tool/retroSfxGenerator/i18n/pt.ts +211 -0
  26. package/src/tool/retroSfxGenerator/i18n/ru.ts +211 -0
  27. package/src/tool/retroSfxGenerator/i18n/sv.ts +211 -0
  28. package/src/tool/retroSfxGenerator/i18n/tr.ts +211 -0
  29. package/src/tool/retroSfxGenerator/i18n/zh.ts +211 -0
  30. package/src/tool/retroSfxGenerator/index.ts +11 -0
  31. package/src/tool/retroSfxGenerator/logic.test.ts +40 -0
  32. package/src/tool/retroSfxGenerator/logic.ts +214 -0
  33. package/src/tool/retroSfxGenerator/retro-sfx-generator.css +429 -0
  34. package/src/tool/retroSfxGenerator/seo.astro +15 -0
  35. package/src/tool/retroSfxGenerator/ui.ts +41 -0
  36. package/src/tool/saveFileEditor/game-save-file-editor.css +5 -5
  37. package/src/tool/spriteSheetPacker/sprite-sheet-packer.css +5 -5
  38. package/src/tool/steamBbcodeTranslator/app-client.ts +125 -0
  39. package/src/tool/steamBbcodeTranslator/bbcode-parser.ts +110 -0
  40. package/src/tool/steamBbcodeTranslator/bibliography.astro +6 -0
  41. package/src/tool/steamBbcodeTranslator/bibliography.ts +14 -0
  42. package/src/tool/steamBbcodeTranslator/component.astro +83 -0
  43. package/src/tool/steamBbcodeTranslator/entry.ts +28 -0
  44. package/src/tool/steamBbcodeTranslator/html-parser.ts +42 -0
  45. package/src/tool/steamBbcodeTranslator/html-renderer.ts +71 -0
  46. package/src/tool/steamBbcodeTranslator/i18n/de.ts +207 -0
  47. package/src/tool/steamBbcodeTranslator/i18n/en.ts +236 -0
  48. package/src/tool/steamBbcodeTranslator/i18n/es.ts +207 -0
  49. package/src/tool/steamBbcodeTranslator/i18n/fr.ts +195 -0
  50. package/src/tool/steamBbcodeTranslator/i18n/id.ts +195 -0
  51. package/src/tool/steamBbcodeTranslator/i18n/it.ts +195 -0
  52. package/src/tool/steamBbcodeTranslator/i18n/ja.ts +195 -0
  53. package/src/tool/steamBbcodeTranslator/i18n/ko.ts +195 -0
  54. package/src/tool/steamBbcodeTranslator/i18n/nl.ts +195 -0
  55. package/src/tool/steamBbcodeTranslator/i18n/pl.ts +195 -0
  56. package/src/tool/steamBbcodeTranslator/i18n/pt.ts +195 -0
  57. package/src/tool/steamBbcodeTranslator/i18n/ru.ts +195 -0
  58. package/src/tool/steamBbcodeTranslator/i18n/sv.ts +195 -0
  59. package/src/tool/steamBbcodeTranslator/i18n/tr.ts +195 -0
  60. package/src/tool/steamBbcodeTranslator/i18n/zh.ts +195 -0
  61. package/src/tool/steamBbcodeTranslator/index.ts +12 -0
  62. package/src/tool/steamBbcodeTranslator/logic.test.ts +41 -0
  63. package/src/tool/steamBbcodeTranslator/logic.ts +96 -0
  64. package/src/tool/steamBbcodeTranslator/markdown-parser.ts +115 -0
  65. package/src/tool/steamBbcodeTranslator/markdown-renderer.ts +85 -0
  66. package/src/tool/steamBbcodeTranslator/seo.astro +15 -0
  67. package/src/tool/steamBbcodeTranslator/steam-bbcode-translator.css +392 -0
  68. package/src/tool/steamBbcodeTranslator/storage.ts +30 -0
  69. package/src/tool/steamBbcodeTranslator/types.ts +36 -0
  70. package/src/tool/steamBbcodeTranslator/ui.ts +18 -0
  71. package/src/tool/steamCapsuleGenerator/steam-capsule-generator.css +6 -6
  72. package/src/tools.ts +4 -0
@@ -0,0 +1,236 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import type { SteamBbcodeTranslatorUI } from '../ui';
3
+ import { bibliographyEntries } from '../bibliography';
4
+
5
+ export const content: ToolLocaleContent<SteamBbcodeTranslatorUI> = {
6
+ slug: 'steam-bbcode-translator',
7
+ title: 'Steam BBCode, Markdown and HTML Converter',
8
+ description: 'Convert between Steam BBCode, Markdown, and HTML in both directions with automatic syntax detection, nested list support, and a live preview.',
9
+ ui: {
10
+ editorLabel: 'Paste your markup',
11
+ editorHint: 'BBCode, Markdown, or HTML is detected automatically as you type.',
12
+ detectedLabel: 'Detected',
13
+ detectedEmpty: 'Waiting for text',
14
+ bbcode: 'Steam BBCode',
15
+ markdown: 'Markdown',
16
+ html: 'HTML',
17
+ clear: 'Clear',
18
+ copy: 'Copy output',
19
+ copied: 'Copied to clipboard',
20
+ characters: 'Characters',
21
+ blocks: 'Blocks',
22
+ privacyNote: 'Runs in your browser. Nothing is uploaded.',
23
+ persistenceNote: 'Last draft saved locally',
24
+ previewLabel: 'Preview',
25
+ previewEmpty: 'Your formatted preview will appear here.'
26
+ },
27
+ seo: [
28
+ {
29
+ type: 'title',
30
+ level: 2,
31
+ text: 'Why store descriptions need a markup converter'
32
+ },
33
+ {
34
+ type: 'paragraph',
35
+ html: 'Steam store descriptions use a small BBCode vocabulary inside the Steamworks editor. A press kit, documentation site, itch.io page, or product website may instead expect Markdown or HTML. Rebuilding the same description by hand is slow and makes small mistakes easy to miss, especially when a feature list contains a second level of bullets. This converter lets developers paste any of the three supported syntaxes and produces the other two while keeping the original text in view.'
36
+ },
37
+ {
38
+ type: 'title',
39
+ level: 2,
40
+ text: 'What the markup converter converts'
41
+ },
42
+ {
43
+ type: 'paragraph',
44
+ html: 'The converter understands the common structural and inline tags used in store copy: h1, h2, and h3 headings; bold, italic, underline, and strike-through emphasis; links; code; quotes; spoilers; and unordered or ordered lists. It detects whether the pasted text is Steam BBCode, Markdown, or HTML, then generates the other two formats automatically. Headings, emphasis, links, blockquotes, code fences, and indented Markdown lists can therefore travel in either direction without a manual source or destination setting.'
45
+ },
46
+ {
47
+ type: 'stats',
48
+ columns: 4,
49
+ items: [
50
+ { label: 'Input syntaxes', value: '3' },
51
+ { label: 'Outputs per paste', value: '2' },
52
+ { label: 'List depth', value: 'Nested' },
53
+ { label: 'Data handling', value: 'Browser only' }
54
+ ]
55
+ },
56
+ {
57
+ type: 'title',
58
+ level: 2,
59
+ text: 'How nested lists stay intact'
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'A flat regular-expression replacement can turn every [*] marker into the same bullet level. That is where many hand conversions break: a child feature becomes a sibling, or a closing list tag is placed too early. This tool first reads list boundaries and item markers as a lightweight tree. Markdown indentation and HTML list elements are then generated from that tree, so a child list remains inside its parent item. When the input is Markdown or HTML, the same structure is read back to rebuild Steam list and item tags.'
64
+ },
65
+ {
66
+ type: 'table',
67
+ headers: ['Steam BBCode', 'Markdown', 'HTML'],
68
+ rows: [
69
+ ['[h1]Title[/h1]', '# Title', '&lt;h1&gt;Title&lt;/h1&gt;'],
70
+ ['[b]Important[/b]', '**Important**', '&lt;strong&gt;Important&lt;/strong&gt;'],
71
+ ['[i]Note[/i]', '*Note*', '&lt;em&gt;Note&lt;/em&gt;'],
72
+ ['[url=https://example.com]Link[/url]', '[Link](https://example.com)', '&lt;a href="https://example.com"&gt;Link&lt;/a&gt;'],
73
+ ['[list][*]One[*]Two[/list]', '- One\n- Two', '&lt;ul&gt;&lt;li&gt;One&lt;/li&gt;&lt;li&gt;Two&lt;/li&gt;&lt;/ul&gt;']
74
+ ]
75
+ },
76
+ {
77
+ type: 'title',
78
+ level: 2,
79
+ text: 'Markdown and HTML are not identical targets'
80
+ },
81
+ {
82
+ type: 'paragraph',
83
+ html: 'Markdown is portable and readable in source form, but its exact feature set depends on the destination renderer. Underline and spoiler tags therefore use inline HTML when Markdown has no broadly consistent equivalent. HTML is more explicit and is usually the better target for a press kit that controls its own page styles. Use the preview as a quick inspection, then check the destination platform because its sanitizer, link policy, or Markdown flavor may impose additional restrictions.'
84
+ },
85
+ {
86
+ type: 'tip',
87
+ title: 'A practical publishing check',
88
+ html: 'After translating, compare the rendered outputs with the source document. Check heading hierarchy, link destinations, nested list indentation, and any text that was inside a platform-specific tag. The converter flags unmatched or unsupported markup so you have a short review list before publishing to Steam, a press kit, or another destination.'
89
+ },
90
+ {
91
+ type: 'title',
92
+ level: 2,
93
+ text: 'A private workflow for store copy'
94
+ },
95
+ {
96
+ type: 'paragraph',
97
+ html: 'Descriptions often contain unreleased names, pricing plans, launch dates, or press contacts. This tool performs its conversion in the browser and does not upload the text. The privacy benefit does not replace a destination review: never paste secrets into an external editor, and remember that the final website, CMS, or store account has its own retention and access rules.'
98
+ },
99
+ {
100
+ type: 'title',
101
+ level: 2,
102
+ text: 'Limitations to keep in mind'
103
+ },
104
+ {
105
+ type: 'proscons',
106
+ title: 'Pros and cons of conversion',
107
+ items: [
108
+ {
109
+ pro: 'Nested lists are represented structurally instead of by blind tag replacement.',
110
+ con: 'Unsupported custom tags are kept visible or flagged for manual review.'
111
+ },
112
+ {
113
+ pro: 'The output updates as you type and can be copied or downloaded immediately.',
114
+ con: 'Platform-specific image widgets and Steam-only shortcodes are outside the baseline mapping.'
115
+ },
116
+ {
117
+ pro: 'HTML preview output is escaped and generated from the parsed structure.',
118
+ con: 'A destination platform can still sanitize or restyle valid Markdown and HTML differently.'
119
+ }
120
+ ]
121
+ },
122
+ {
123
+ type: 'title',
124
+ level: 2,
125
+ text: 'Markup conversion glossary'
126
+ },
127
+ {
128
+ type: 'glossary',
129
+ items: [
130
+ {
131
+ term: 'BBCode',
132
+ definition: 'A bracket-tag markup syntax used by Steam and many community systems to add limited formatting to text.'
133
+ },
134
+ {
135
+ term: 'Markdown',
136
+ definition: 'A readable plain-text markup syntax whose exact rendering features vary between platforms.'
137
+ },
138
+ {
139
+ term: 'HTML',
140
+ definition: 'The structural markup language used by browsers to describe headings, links, lists, and other document elements.'
141
+ },
142
+ {
143
+ term: 'Nested list',
144
+ definition: 'A list placed inside a parent list item, commonly used for sub-features or grouped steps.'
145
+ }
146
+ ]
147
+ }
148
+ ],
149
+ faqTitle: 'Frequently asked questions about markup conversion',
150
+ faq: [
151
+ {
152
+ question: 'Does the converter send my description to a server?',
153
+ answer: 'No. The conversion runs in your browser. The tool does not need an upload or account connection to process the text.'
154
+ },
155
+ {
156
+ question: 'Can it convert nested Steam lists?',
157
+ answer: 'Yes. List and item structure is parsed before Markdown or HTML is generated, so child lists remain nested inside their parent item.'
158
+ },
159
+ {
160
+ question: 'Can I start with Markdown or HTML instead of Steam BBCode?',
161
+ answer: 'Yes. Paste Steam BBCode, Markdown, or HTML into the single editor. The syntax is detected automatically and the other two formats are generated.'
162
+ },
163
+ {
164
+ question: 'Why does Markdown output sometimes contain HTML?',
165
+ answer: 'Markdown has no universal underline or spoiler syntax. The converter uses small inline HTML elements for those cases so the meaning is not silently lost.'
166
+ },
167
+ {
168
+ question: 'Will the output look identical on every platform?',
169
+ answer: 'Not necessarily. Markdown flavors, HTML sanitizers, CSS, and link policies differ. Use the built-in preview as a structural check and verify the final destination.'
170
+ },
171
+ {
172
+ question: 'What happens to an unsupported Steam tag?',
173
+ answer: 'The tag is kept visible as text and a review note is shown. This makes it easier to find platform-specific markup that needs a manual decision.'
174
+ }
175
+ ],
176
+ howTo: [
177
+ {
178
+ name: 'Paste any supported markup',
179
+ text: 'Paste Steam BBCode, Markdown, or HTML into the single editor.'
180
+ },
181
+ {
182
+ name: 'Let the converter detect the syntax',
183
+ text: 'The tool identifies the source syntax and generates the other two formats as you type.'
184
+ },
185
+ {
186
+ name: 'Inspect both results',
187
+ text: 'Use the rendered preview and the two output panels to check headings, links, and nested lists.'
188
+ },
189
+ {
190
+ name: 'Copy the format you need',
191
+ text: 'Copy the Markdown, HTML, or Steam BBCode result into your destination editor.'
192
+ }
193
+ ],
194
+ schemas: [
195
+ {
196
+ '@context': 'https://schema.org',
197
+ '@type': 'SoftwareApplication',
198
+ name: 'Steam BBCode, Markdown and HTML Converter',
199
+ applicationCategory: 'DeveloperApplication',
200
+ operatingSystem: 'Any',
201
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'USD' }
202
+ },
203
+ {
204
+ '@context': 'https://schema.org',
205
+ '@type': 'FAQPage',
206
+ mainEntity: [
207
+ {
208
+ '@type': 'Question',
209
+ name: 'Can it convert nested Steam lists?',
210
+ acceptedAnswer: {
211
+ '@type': 'Answer',
212
+ text: 'Yes. List and item structure is parsed before Markdown or HTML is generated, so child lists remain nested inside their parent item.'
213
+ }
214
+ }
215
+ ]
216
+ },
217
+ {
218
+ '@context': 'https://schema.org',
219
+ '@type': 'HowTo',
220
+ name: 'How to convert between Steam BBCode, Markdown and HTML',
221
+ step: [
222
+ {
223
+ '@type': 'HowToStep',
224
+ name: 'Paste any supported markup',
225
+ text: 'Paste Steam BBCode, Markdown, or HTML into the single editor.'
226
+ },
227
+ {
228
+ '@type': 'HowToStep',
229
+ name: 'Inspect both results',
230
+ text: 'Review the two automatically generated formats and the rendered preview.'
231
+ }
232
+ ]
233
+ }
234
+ ],
235
+ bibliography: bibliographyEntries
236
+ };
@@ -0,0 +1,207 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import type { SteamBbcodeTranslatorUI } from '../ui';
3
+ import { bibliographyEntries } from '../bibliography';
4
+
5
+ export const content: ToolLocaleContent<SteamBbcodeTranslatorUI> = {
6
+ slug: 'traductor-bbcode-steam',
7
+ title: 'Convertidor de BBCode de Steam, Markdown y HTML',
8
+ description: 'Convierta entre BBCode de Steam, Markdown y HTML en ambas direcciones con detección automática de sintaxis y vista previa.',
9
+ ui: {
10
+ editorLabel: 'Pegue su texto con formato',
11
+ editorHint: 'BBCode, Markdown o HTML se detectan automáticamente al escribir.',
12
+ detectedLabel: 'Detectado',
13
+ detectedEmpty: 'Esperando texto',
14
+ bbcode: 'Steam BBCode',
15
+ markdown: 'Markdown',
16
+ html: 'HTML',
17
+ clear: 'Limpiar',
18
+ copy: 'Copiar resultado',
19
+ copied: 'Copiado al portapapeles',
20
+ characters: 'Caracteres',
21
+ blocks: 'Bloques',
22
+ privacyNote: 'Procesamiento local en su navegador. Sin cargas.',
23
+ persistenceNote: 'Último borrador guardado localmente',
24
+ previewLabel: 'Vista previa',
25
+ previewEmpty: 'Su vista previa formateada aparecerá aquí.'
26
+ },
27
+ seo: [
28
+ {
29
+ type: 'title',
30
+ level: 2,
31
+ text: 'Por qué las descripciones de la tienda necesitan un convertidor'
32
+ },
33
+ {
34
+ type: 'paragraph',
35
+ html: 'Las descripciones de Steam usan BBCode dentro de Steamworks. Un kit de prensa o sitio de documentación puede requerir Markdown o HTML. Rehacer la descripción a mano es lento y genera errores. Este convertidor genera los otros dos formatos automáticamente.'
36
+ },
37
+ {
38
+ type: 'title',
39
+ level: 2,
40
+ text: 'Formatos y etiquetas compatibles'
41
+ },
42
+ {
43
+ type: 'paragraph',
44
+ html: 'El convertidor comprende encabezados, negrita, cursiva, enlaces, listas, citas y spoilers. Transfiere la estructura sin pérdidas entre los tres formatos.'
45
+ },
46
+ {
47
+ type: 'stats',
48
+ columns: 4,
49
+ items: [
50
+ { label: 'Formatos de entrada', value: '3' },
51
+ { label: 'Salidas por pegado', value: '2' },
52
+ { label: 'Profundidad de lista', value: 'Anidada' },
53
+ { label: 'Procesamiento', value: 'Solo navegador' }
54
+ ]
55
+ },
56
+ {
57
+ type: 'title',
58
+ level: 2,
59
+ text: 'Listas anidadas intactas'
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'En lugar de reemplazar texto a ciegas, la herramienta construye un árbol de estructura. Así, los subelementos de la lista se mantienen en su lugar.'
64
+ },
65
+ {
66
+ type: 'table',
67
+ headers: ['Steam BBCode', 'Markdown', 'HTML'],
68
+ rows: [
69
+ ['[h1]Título[/h1]', '# Título', '&lt;h1&gt;Título&lt;/h1&gt;'],
70
+ ['[b]Importante[/b]', '**Importante**', '&lt;strong&gt;Importante&lt;/strong&gt;'],
71
+ ['[i]Nota[/i]', '*Nota*', '&lt;em&gt;Nota&lt;/em&gt;'],
72
+ ['[url=https://example.com]Enlace[/url]', '[Enlace](https://example.com)', '&lt;a href="https://example.com"&gt;Enlace&lt;/a&gt;'],
73
+ ['[list][*]Uno[*]Dos[/list]', '- Uno\n- Dos', '&lt;ul&gt;&lt;li&gt;Uno&lt;/li&gt;&lt;li&gt;Dos&lt;/li&gt;&lt;/ul&gt;']
74
+ ]
75
+ },
76
+ {
77
+ type: 'title',
78
+ level: 2,
79
+ text: 'Diferencias entre Markdown y HTML'
80
+ },
81
+ {
82
+ type: 'paragraph',
83
+ html: 'Markdown es muy legible pero no admite subrayado de forma nativa. En esos casos, el convertidor usa elementos HTML integrados.'
84
+ },
85
+ {
86
+ type: 'tip',
87
+ title: 'Revisión antes de publicar',
88
+ html: 'Compare el resultado en la vista previa con su documento original antes de publicar en Steam.'
89
+ },
90
+ {
91
+ type: 'title',
92
+ level: 2,
93
+ text: 'Privacidad para sus textos'
94
+ },
95
+ {
96
+ type: 'paragraph',
97
+ html: 'Todo el procesamiento se realiza localmente en el navegador. No se envía información a servidores externos.'
98
+ },
99
+ {
100
+ type: 'title',
101
+ level: 2,
102
+ text: 'Limitaciones'
103
+ },
104
+ {
105
+ type: 'proscons',
106
+ title: 'Aspectos a considerar',
107
+ items: [
108
+ {
109
+ pro: 'Procesamiento de listas estructurado.',
110
+ con: 'Las etiquetas personalizadas no estándar requieren revisión manual.'
111
+ },
112
+ {
113
+ pro: 'Actualización en tiempo real.',
114
+ con: 'Los widgets de imagen de Steam no se convierten.'
115
+ }
116
+ ]
117
+ },
118
+ {
119
+ type: 'title',
120
+ level: 2,
121
+ text: 'Glosario de formatos'
122
+ },
123
+ {
124
+ type: 'glossary',
125
+ items: [
126
+ {
127
+ term: 'BBCode',
128
+ definition: 'Sintaxis basada en corchetes usada en Steam.'
129
+ },
130
+ {
131
+ term: 'Markdown',
132
+ definition: 'Formato de texto plano fácil de leer.'
133
+ },
134
+ {
135
+ term: 'HTML',
136
+ definition: 'Lenguaje de marcado estándar para la web.'
137
+ }
138
+ ]
139
+ }
140
+ ],
141
+ faqTitle: 'Preguntas frecuentes sobre la conversión',
142
+ faq: [
143
+ {
144
+ question: '¿Se envía mi texto a un servidor?',
145
+ answer: 'No. La conversión se realiza íntegramente en su navegador.'
146
+ },
147
+ {
148
+ question: '¿Soporta listas anidadas?',
149
+ answer: 'Sí. La estructura de la lista se analiza antes de generar el resultado.'
150
+ },
151
+ {
152
+ question: '¿Puedo ingresar Markdown o HTML?',
153
+ answer: 'Sí. El formato de entrada se detecta automáticamente.'
154
+ }
155
+ ],
156
+ howTo: [
157
+ {
158
+ name: 'Pegue su texto',
159
+ text: 'Pegue BBCode de Steam, Markdown o HTML en el editor.'
160
+ },
161
+ {
162
+ name: 'Detección automática',
163
+ text: 'La herramienta generará los otros dos formatos.'
164
+ },
165
+ {
166
+ name: 'Copie el resultado',
167
+ text: 'Copie el código generado al portapapeles.'
168
+ }
169
+ ],
170
+ schemas: [
171
+ {
172
+ '@context': 'https://schema.org',
173
+ '@type': 'SoftwareApplication',
174
+ name: 'Convertidor de BBCode de Steam, Markdown y HTML',
175
+ applicationCategory: 'DeveloperApplication',
176
+ operatingSystem: 'Any',
177
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }
178
+ },
179
+ {
180
+ '@context': 'https://schema.org',
181
+ '@type': 'FAQPage',
182
+ mainEntity: [
183
+ {
184
+ '@type': 'Question',
185
+ name: '¿Se envía mi texto a un servidor?',
186
+ acceptedAnswer: {
187
+ '@type': 'Answer',
188
+ text: 'No. La conversión se realiza íntegramente en su navegador.'
189
+ }
190
+ }
191
+ ]
192
+ },
193
+ {
194
+ '@context': 'https://schema.org',
195
+ '@type': 'HowTo',
196
+ name: 'Cómo convertir BBCode de Steam, Markdown y HTML',
197
+ step: [
198
+ {
199
+ '@type': 'HowToStep',
200
+ name: 'Pegue su texto',
201
+ text: 'Pegue BBCode de Steam, Markdown o HTML en el editor.'
202
+ }
203
+ ]
204
+ }
205
+ ],
206
+ bibliography: bibliographyEntries
207
+ };
@@ -0,0 +1,195 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import type { SteamBbcodeTranslatorUI } from '../ui';
3
+ import { bibliographyEntries } from '../bibliography';
4
+
5
+ export const content: ToolLocaleContent<SteamBbcodeTranslatorUI> = {
6
+ slug: 'convertisseur-bbcode-steam',
7
+ title: 'Convertisseur BBCode Steam, Markdown et HTML',
8
+ description: 'Convertissez le BBCode Steam, Markdown et HTML dans toutes les directions avec détection automatique et aperçu en direct.',
9
+ ui: {
10
+ editorLabel: 'Collez votre texte',
11
+ editorHint: 'BBCode, Markdown ou HTML est détecté automatiquement.',
12
+ detectedLabel: 'Détecté',
13
+ detectedEmpty: 'En attente de texte',
14
+ bbcode: 'Steam BBCode',
15
+ markdown: 'Markdown',
16
+ html: 'HTML',
17
+ clear: 'Effacer',
18
+ copy: 'Copier le résultat',
19
+ copied: 'Copié dans le presse-papiers',
20
+ characters: 'Caractères',
21
+ blocks: 'Blocs',
22
+ privacyNote: 'Exécution locale dans le navigateur. Aucun envoi.',
23
+ persistenceNote: 'Dernier brouillon sauvegardé localement',
24
+ previewLabel: 'Aperçu',
25
+ previewEmpty: 'Votre aperçu formaté apparaîtra ici.'
26
+ },
27
+ seo: [
28
+ {
29
+ type: 'title',
30
+ level: 2,
31
+ text: 'Pourquoi utiliser un convertisseur de balises'
32
+ },
33
+ {
34
+ type: 'paragraph',
35
+ html: 'Les descriptions de boutiques Steam utilisent le BBCode. Les kits de presse et sites web préfèrent souvent le Markdown ou le HTML. Ce convertisseur génère automatiquement les autres formats.'
36
+ },
37
+ {
38
+ type: 'title',
39
+ level: 2,
40
+ text: 'Balises et formats pris en charge'
41
+ },
42
+ {
43
+ type: 'paragraph',
44
+ html: 'L outil gère les titres, le gras, l italique, les liens, les listes, les citations et les spoilers.'
45
+ },
46
+ {
47
+ type: 'stats',
48
+ columns: 4,
49
+ items: [
50
+ { label: 'Formats en entrée', value: '3' },
51
+ { label: 'Sorties générées', value: '2' },
52
+ { label: 'Profondeur de liste', value: 'Imbriquée' },
53
+ { label: 'Traitement', value: 'Local' }
54
+ ]
55
+ },
56
+ {
57
+ type: 'title',
58
+ level: 2,
59
+ text: 'Conservation des listes imbriquées'
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'Un arbre de structure permet de conserver l imbrication exacte des sous-listes lors de la conversion.'
64
+ },
65
+ {
66
+ type: 'table',
67
+ headers: ['Steam BBCode', 'Markdown', 'HTML'],
68
+ rows: [
69
+ ['[h1]Titre[/h1]', '# Titre', '&lt;h1&gt;Titre&lt;/h1&gt;'],
70
+ ['[b]Important[/b]', '**Important**', '&lt;strong&gt;Important&lt;/strong&gt;'],
71
+ ['[i]Note[/i]', '*Note*', '&lt;em&gt;Note&lt;/em&gt;'],
72
+ ['[url=https://example.com]Lien[/url]', '[Lien](https://example.com)', '&lt;a href="https://example.com"&gt;Lien&lt;/a&gt;'],
73
+ ['[list][*]Un[*]Deux[/list]', '- Un\n- Deux', '&lt;ul&gt;&lt;li&gt;Un&lt;/li&gt;&lt;li&gt;Deux&lt;/li&gt;&lt;/ul&gt;']
74
+ ]
75
+ },
76
+ {
77
+ type: 'title',
78
+ level: 2,
79
+ text: 'Différences Markdown et HTML'
80
+ },
81
+ {
82
+ type: 'paragraph',
83
+ html: 'Le Markdown ne prenant pas en charge le soulignement natif, du HTML en ligne est inséré si nécessaire.'
84
+ },
85
+ {
86
+ type: 'tip',
87
+ title: 'Vérification avant publication',
88
+ html: 'Comparez l aperçu avec le document d origine avant de publier.'
89
+ },
90
+ {
91
+ type: 'title',
92
+ level: 2,
93
+ text: 'Protection de vos données'
94
+ },
95
+ {
96
+ type: 'paragraph',
97
+ html: 'Tout le traitement est exécuté localement dans votre navigateur.'
98
+ },
99
+ {
100
+ type: 'title',
101
+ level: 2,
102
+ text: 'Limites de la conversion'
103
+ },
104
+ {
105
+ type: 'proscons',
106
+ title: 'Points à retenir',
107
+ items: [
108
+ {
109
+ pro: 'Gestion structurée des listes.',
110
+ con: 'Les balises spécifiques non standard nécessitent une retouche.'
111
+ }
112
+ ]
113
+ },
114
+ {
115
+ type: 'title',
116
+ level: 2,
117
+ text: 'Glossaire'
118
+ },
119
+ {
120
+ type: 'glossary',
121
+ items: [
122
+ {
123
+ term: 'BBCode',
124
+ definition: 'Format basé sur des crochets utilisé par Steam.'
125
+ },
126
+ {
127
+ term: 'Markdown',
128
+ definition: 'Format texte lisible et léger.'
129
+ },
130
+ {
131
+ term: 'HTML',
132
+ definition: 'Langage de balisage web standard.'
133
+ }
134
+ ]
135
+ }
136
+ ],
137
+ faqTitle: 'Foire aux questions sur la conversion',
138
+ faq: [
139
+ {
140
+ question: 'Mes données sont-elles envoyées sur un serveur ?',
141
+ answer: 'Non. La conversion est effectuée entièrement dans votre navigateur.'
142
+ },
143
+ {
144
+ question: 'Les listes imbriquées sont-elles gérées ?',
145
+ answer: 'Oui. La structure est conservée.'
146
+ }
147
+ ],
148
+ howTo: [
149
+ {
150
+ name: 'Coller le texte',
151
+ text: 'Collez du BBCode, Markdown ou HTML.'
152
+ },
153
+ {
154
+ name: 'Conversion automatique',
155
+ text: 'Les deux autres formats sont générés immédiatement.'
156
+ }
157
+ ],
158
+ schemas: [
159
+ {
160
+ '@context': 'https://schema.org',
161
+ '@type': 'SoftwareApplication',
162
+ name: 'Convertisseur BBCode Steam, Markdown et HTML',
163
+ applicationCategory: 'DeveloperApplication',
164
+ operatingSystem: 'Any',
165
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }
166
+ },
167
+ {
168
+ '@context': 'https://schema.org',
169
+ '@type': 'FAQPage',
170
+ mainEntity: [
171
+ {
172
+ '@type': 'Question',
173
+ name: 'Mes données sont-elles envoyées sur un serveur ?',
174
+ acceptedAnswer: {
175
+ '@type': 'Answer',
176
+ text: 'Non. La conversion est effectuée entièrement dans votre navigateur.'
177
+ }
178
+ }
179
+ ]
180
+ },
181
+ {
182
+ '@context': 'https://schema.org',
183
+ '@type': 'HowTo',
184
+ name: 'Comment convertir BBCode Steam, Markdown et HTML',
185
+ step: [
186
+ {
187
+ '@type': 'HowToStep',
188
+ name: 'Coller le texte',
189
+ text: 'Collez du BBCode, Markdown ou HTML.'
190
+ }
191
+ ]
192
+ }
193
+ ],
194
+ bibliography: bibliographyEntries
195
+ };