@jjlmoya/utils-converters 1.24.0 → 1.26.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 (134) hide show
  1. package/package.json +2 -2
  2. package/src/category/i18n/de.ts +1 -1
  3. package/src/category/i18n/en.ts +1 -1
  4. package/src/category/i18n/fr.ts +1 -1
  5. package/src/category/i18n/id.ts +1 -1
  6. package/src/category/i18n/it.ts +1 -1
  7. package/src/category/i18n/nl.ts +1 -1
  8. package/src/category/i18n/pl.ts +1 -1
  9. package/src/category/i18n/pt.ts +1 -1
  10. package/src/category/i18n/sv.ts +1 -1
  11. package/src/entries.ts +6 -0
  12. package/src/tests/bibliography_wellformed_export.test.ts +46 -0
  13. package/src/tests/category_seo_quality.test.ts +74 -0
  14. package/src/tests/faq_count.test.ts +1 -1
  15. package/src/tests/no_h1_in_components.test.ts +1 -1
  16. package/src/tests/seo_parity.test.ts +2 -2
  17. package/src/tests/seo_wellformed_export.test.ts +65 -0
  18. package/src/tests/tool_validation.test.ts +15 -15
  19. package/src/tool/avifAJpg/i18n/en.ts +164 -164
  20. package/src/tool/avifAJpg/i18n/es.ts +164 -164
  21. package/src/tool/avifAJpg/i18n/fr.ts +164 -164
  22. package/src/tool/avifAJpg/i18n/ja.ts +166 -166
  23. package/src/tool/avifAJpg/i18n/ko.ts +166 -166
  24. package/src/tool/avifAJpg/i18n/zh.ts +166 -166
  25. package/src/tool/avifAJpg/seo.astro +15 -15
  26. package/src/tool/avifAPng/i18n/en.ts +164 -164
  27. package/src/tool/avifAPng/i18n/es.ts +164 -164
  28. package/src/tool/avifAPng/i18n/fr.ts +164 -164
  29. package/src/tool/avifAPng/i18n/ja.ts +166 -166
  30. package/src/tool/avifAPng/i18n/ko.ts +166 -166
  31. package/src/tool/avifAPng/i18n/zh.ts +166 -166
  32. package/src/tool/avifAPng/seo.astro +15 -15
  33. package/src/tool/avifAWebp/i18n/en.ts +164 -164
  34. package/src/tool/avifAWebp/i18n/es.ts +164 -164
  35. package/src/tool/avifAWebp/i18n/fr.ts +164 -164
  36. package/src/tool/avifAWebp/i18n/ja.ts +166 -166
  37. package/src/tool/avifAWebp/i18n/ko.ts +166 -166
  38. package/src/tool/avifAWebp/i18n/zh.ts +166 -166
  39. package/src/tool/avifAWebp/seo.astro +15 -15
  40. package/src/tool/bmpAJpg/i18n/en.ts +164 -164
  41. package/src/tool/bmpAJpg/i18n/es.ts +164 -164
  42. package/src/tool/bmpAJpg/i18n/fr.ts +164 -164
  43. package/src/tool/bmpAJpg/i18n/ja.ts +166 -166
  44. package/src/tool/bmpAJpg/i18n/ko.ts +166 -166
  45. package/src/tool/bmpAJpg/i18n/zh.ts +166 -166
  46. package/src/tool/bmpAJpg/seo.astro +15 -15
  47. package/src/tool/bmpAPng/i18n/en.ts +164 -164
  48. package/src/tool/bmpAPng/i18n/es.ts +164 -164
  49. package/src/tool/bmpAPng/i18n/fr.ts +164 -164
  50. package/src/tool/bmpAPng/i18n/ja.ts +165 -165
  51. package/src/tool/bmpAPng/i18n/ko.ts +165 -165
  52. package/src/tool/bmpAPng/i18n/zh.ts +165 -165
  53. package/src/tool/bmpAPng/seo.astro +15 -15
  54. package/src/tool/bmpAWebp/i18n/en.ts +164 -164
  55. package/src/tool/bmpAWebp/i18n/es.ts +164 -164
  56. package/src/tool/bmpAWebp/i18n/fr.ts +164 -164
  57. package/src/tool/bmpAWebp/i18n/ja.ts +166 -166
  58. package/src/tool/bmpAWebp/i18n/ko.ts +166 -166
  59. package/src/tool/bmpAWebp/i18n/zh.ts +166 -166
  60. package/src/tool/bmpAWebp/seo.astro +15 -15
  61. package/src/tool/gifAJpg/i18n/en.ts +164 -164
  62. package/src/tool/gifAJpg/i18n/es.ts +164 -164
  63. package/src/tool/gifAJpg/i18n/fr.ts +164 -164
  64. package/src/tool/gifAJpg/i18n/ja.ts +166 -166
  65. package/src/tool/gifAJpg/i18n/ko.ts +166 -166
  66. package/src/tool/gifAJpg/i18n/zh.ts +166 -166
  67. package/src/tool/gifAJpg/seo.astro +15 -15
  68. package/src/tool/gifAPng/i18n/en.ts +164 -164
  69. package/src/tool/gifAPng/i18n/es.ts +164 -164
  70. package/src/tool/gifAPng/i18n/fr.ts +164 -164
  71. package/src/tool/gifAPng/i18n/ja.ts +166 -166
  72. package/src/tool/gifAPng/i18n/ko.ts +166 -166
  73. package/src/tool/gifAPng/i18n/zh.ts +166 -166
  74. package/src/tool/gifAPng/seo.astro +15 -15
  75. package/src/tool/gifAWebp/i18n/en.ts +164 -164
  76. package/src/tool/gifAWebp/i18n/es.ts +164 -164
  77. package/src/tool/gifAWebp/i18n/fr.ts +164 -164
  78. package/src/tool/gifAWebp/i18n/ja.ts +166 -166
  79. package/src/tool/gifAWebp/i18n/ko.ts +166 -166
  80. package/src/tool/gifAWebp/i18n/zh.ts +166 -166
  81. package/src/tool/gifAWebp/seo.astro +15 -15
  82. package/src/tool/imagenBase64/i18n/en.ts +154 -154
  83. package/src/tool/imagenBase64/i18n/es.ts +154 -154
  84. package/src/tool/imagenBase64/i18n/fr.ts +154 -154
  85. package/src/tool/imagenBase64/seo.astro +15 -15
  86. package/src/tool/jpgAIco/seo.astro +15 -15
  87. package/src/tool/jpgAPng/i18n/en.ts +164 -164
  88. package/src/tool/jpgAPng/i18n/es.ts +164 -164
  89. package/src/tool/jpgAPng/i18n/fr.ts +164 -164
  90. package/src/tool/jpgAPng/i18n/ja.ts +166 -166
  91. package/src/tool/jpgAPng/i18n/ko.ts +166 -166
  92. package/src/tool/jpgAPng/i18n/zh.ts +166 -166
  93. package/src/tool/jpgAPng/seo.astro +15 -15
  94. package/src/tool/jpgAWebp/i18n/en.ts +164 -164
  95. package/src/tool/jpgAWebp/i18n/es.ts +164 -164
  96. package/src/tool/jpgAWebp/i18n/fr.ts +164 -164
  97. package/src/tool/jpgAWebp/seo.astro +15 -15
  98. package/src/tool/pngAIco/seo.astro +15 -15
  99. package/src/tool/pngAJpg/i18n/de.ts +21 -21
  100. package/src/tool/pngAJpg/i18n/es.ts +177 -177
  101. package/src/tool/pngAJpg/i18n/fr.ts +137 -137
  102. package/src/tool/pngAJpg/i18n/id.ts +89 -89
  103. package/src/tool/pngAJpg/i18n/it.ts +89 -89
  104. package/src/tool/pngAJpg/i18n/ko.ts +177 -177
  105. package/src/tool/pngAJpg/i18n/nl.ts +20 -20
  106. package/src/tool/pngAJpg/i18n/pl.ts +89 -89
  107. package/src/tool/pngAJpg/i18n/pt.ts +89 -89
  108. package/src/tool/pngAJpg/i18n/ru.ts +177 -177
  109. package/src/tool/pngAJpg/i18n/sv.ts +89 -89
  110. package/src/tool/pngAJpg/i18n/tr.ts +89 -89
  111. package/src/tool/pngAJpg/seo.astro +15 -15
  112. package/src/tool/pngAWebp/i18n/en.ts +164 -164
  113. package/src/tool/pngAWebp/i18n/es.ts +164 -164
  114. package/src/tool/pngAWebp/i18n/fr.ts +164 -164
  115. package/src/tool/pngAWebp/seo.astro +15 -15
  116. package/src/tool/svgAJpg/i18n/fr.ts +164 -164
  117. package/src/tool/svgAJpg/seo.astro +15 -15
  118. package/src/tool/svgAPng/i18n/fr.ts +164 -164
  119. package/src/tool/svgAPng/seo.astro +15 -15
  120. package/src/tool/webpAIco/seo.astro +15 -15
  121. package/src/tool/webpAJpg/seo.astro +15 -15
  122. package/src/tool/webpAPng/bibliography.ts +13 -13
  123. package/src/tool/webpAPng/i18n/de.ts +166 -166
  124. package/src/tool/webpAPng/i18n/es.ts +171 -171
  125. package/src/tool/webpAPng/i18n/fr.ts +166 -166
  126. package/src/tool/webpAPng/i18n/id.ts +166 -166
  127. package/src/tool/webpAPng/i18n/it.ts +166 -166
  128. package/src/tool/webpAPng/i18n/nl.ts +166 -166
  129. package/src/tool/webpAPng/i18n/pl.ts +166 -166
  130. package/src/tool/webpAPng/i18n/pt.ts +166 -166
  131. package/src/tool/webpAPng/i18n/ru.ts +166 -166
  132. package/src/tool/webpAPng/i18n/sv.ts +166 -166
  133. package/src/tool/webpAPng/i18n/tr.ts +167 -167
  134. package/src/tool/webpAPng/seo.astro +15 -15
@@ -1,168 +1,168 @@
1
1
  import { bibliography } from '../bibliography';
2
- import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
2
+ import type { ImageConverterUI } from '../../../shared/ImageConverter.astro';
3
3
  import { generateSchemas } from '../../../shared/logic/schemas';
4
- import type { AvifAPngLocaleContent } from '../index';
5
-
6
- const slug = 'avif-to-png-converter';
7
- const title = 'Convert AVIF to PNG Online';
8
- const description =
9
- 'Convert AVIF images to PNG preserving transparency. No file uploads. Processed locally in your browser. Free and unlimited.';
10
-
11
- const ui: ImageConverterUI = {
12
- dragText: 'Drag AVIF files...',
13
- convertText: 'To convert them to PNG instantly',
14
- selectFiles: 'Select files',
15
- processedFiles: 'Processed files',
16
- downloadAll: 'Download All (.zip)',
4
+ import type { AvifAPngLocaleContent } from '../index';
5
+
6
+ const slug = 'avif-to-png-converter';
7
+ const title = 'Convert AVIF to PNG Online';
8
+ const description =
9
+ 'Convert AVIF images to PNG preserving transparency. No file uploads. Processed locally in your browser. Free and unlimited.';
10
+
11
+ const ui: ImageConverterUI = {
12
+ dragText: 'Drag AVIF files...',
13
+ convertText: 'To convert them to PNG instantly',
14
+ selectFiles: 'Select files',
15
+ processedFiles: 'Processed files',
16
+ downloadAll: 'Download All (.zip)',
17
17
  pending: 'Pending',
18
- bibliographyTitle: 'Bibliographic References',
19
- faqTitle: 'Frequently Asked Questions',
20
- };
21
-
22
- const faq: AvifAPngLocaleContent['faq'] = [
23
- {
24
- question: 'Why should I convert AVIF to PNG?',
25
- answer:
26
- 'AVIF is great for compression, but its compatibility is limited in older browsers and classic editors. By converting from AVIF to PNG, you ensure your file will maintain the original transparency and all applications can open it.',
27
- },
28
- {
29
- question: 'Are the transparencies from the original AVIF file maintained?',
30
- answer:
31
- 'Yes. Unlike JPG which removes the transparent background, when exporting to PNG our converter keeps the alpha channel intact.',
32
- },
33
- {
34
- question: 'Is it true that my images are not uploaded to the internet?',
35
- answer:
36
- 'Absolutely true. Our converter runs 100% locally on your device using the internal JavaScript engine.',
37
- },
38
- ];
39
-
40
- const howTo: AvifAPngLocaleContent['howTo'] = [
41
- {
42
- name: 'Add your AVIF files',
43
- text: 'You can drag them directly to the delimited area or use the button to browse your computer folders.',
44
- },
45
- {
46
- name: 'Immediate processing',
47
- text: 'Let the HTML5 processor render the image; the format will change to PNG automatically in microseconds.',
48
- },
49
- {
50
- name: 'Get your PNGs',
51
- text: 'Download the converted images one by one or download a complete batch via the ZIP button.',
52
- },
53
- ];
54
-
55
- const seo: AvifAPngLocaleContent['seo'] = [
56
- {
57
- type: 'title',
58
- text: 'AVIF to PNG Converter: From Web Delivery to Professional Editing',
59
- level: 2,
60
- },
61
- {
62
- type: 'paragraph',
63
- html: 'AVIF is the ideal format for serving images on the web - small, efficient and high quality. But when the time comes to edit, retouch or work with those images in design tools, AVIF becomes an obstacle. Figma, Photoshop, Illustrator, Sketch and virtually any professional design tool expect PNG for transparency work and lossless editing. Converting AVIF to PNG is the bridge between the world of web delivery and creative editing.',
64
- },
65
- {
66
- type: 'title',
67
- text: 'AVIF vs PNG: Delivery vs Editing',
68
- level: 3,
69
- },
70
- {
71
- type: 'paragraph',
72
- html: 'AVIF excels as a delivery format: small files, fast loading, alpha channel support and exceptional visual quality. However, its tooling ecosystem is limited. Most design software cannot import AVIF directly, which disrupts creative workflows. Trying to open an AVIF in Figma or import it as a layer in Photoshop simply does not work.',
73
- },
74
- {
75
- type: 'paragraph',
76
- html: 'PNG is the native format of digital design. With lossless compression, full alpha channel support and universal compatibility with all creative tools, PNG is the go-to working format. When you need to scale, retouch, export to multiple formats or work in layers, PNG guarantees you will not lose any detail or pixel in the process.',
77
- },
78
- {
79
- type: 'title',
80
- text: 'Comparison: Cloud Converters vs Our Local Architecture',
81
- level: 3,
82
- },
83
- {
84
- type: 'comparative',
85
- items: [
86
- {
87
- title: 'Cloud Converters',
88
- description: 'Tools that upload your AVIF files to a remote server for processing.',
89
- icon: 'mdi:cloud-upload',
90
- pointIcon: 'mdi:close-circle-outline',
91
- points: [
92
- 'Your design images travel to third-party servers',
93
- 'Waiting time due to network latency',
94
- 'Possible loss or alteration of the alpha channel',
95
- 'Size limits that complicate batch conversion',
96
- ],
97
- },
98
- {
99
- title: 'Our Local Architecture',
100
- description: 'Direct processing in your browser using Vanilla JS and Canvas API technology.',
101
- icon: 'mdi:laptop-mac',
102
- highlight: true,
103
- points: [
104
- 'Alpha channel preserved with perfect fidelity',
105
- 'Instant conversion without data transfer',
106
- 'No limits on files, size or batches',
107
- 'Total privacy for proprietary design assets',
108
- ],
109
- },
110
- ],
111
- },
112
- {
113
- type: 'title',
114
- text: 'How the technical conversion works with transparency',
115
- level: 3,
116
- },
117
- {
118
- type: 'paragraph',
119
- html: 'Modern browsers decode AVIF natively thanks to their built-in AV1 engines. When loading the file, the browser decodes it in memory preserving all alpha channel information. The decoded image - including its transparencies - is drawn onto an HTML5 <code>Canvas</code> element with the correct compositing mode to preserve the alpha channel.',
120
- },
121
- {
122
- type: 'paragraph',
123
- html: 'Unlike exporting to JPG (which destroys transparencies by filling with white), exporting to PNG via <code>toBlob(\'image/png\')</code> fully preserves the alpha channel. The result is a losslessly compressed PNG that retains every pixel, every semi-transparency and every detail of the original AVIF.',
124
- },
125
- {
126
- type: 'tip',
127
- title: 'The mandatory first step for any design tool',
128
- html: 'Convert your AVIF files to PNG before importing them into Figma, Photoshop, Illustrator or any design tool. These applications cannot read AVIF directly, but PNG works natively in all of them, preserving transparency and quality perfectly.',
129
- },
130
- {
131
- type: 'title',
132
- text: 'Use cases: when you need AVIF converted to PNG',
133
- level: 3,
134
- },
135
- {
136
- type: 'list',
137
- icon: 'mdi:check-circle',
138
- items: [
139
- 'Import into Figma, Sketch, Adobe XD or other UI design tools.',
140
- 'Edit as a layer in Photoshop, Affinity Photo or GIMP preserving transparency.',
141
- 'Use as source for icon or sprite generation.',
142
- 'Send to clients or collaborators working with standard design software.',
143
- 'Archive images with transparency in a lossless editing format.',
144
- ],
145
- },
146
- {
147
- type: 'title',
148
- text: 'Conclusion: The bridge between the web and design',
149
- level: 3,
150
- },
151
- {
152
- type: 'paragraph',
153
- html: 'AVIF and PNG are perfect companions in a modern workflow: AVIF for efficient web delivery, PNG for editing and collaboration in design tools. With our converter, the step from one to the other is instant, private and preserves every detail - exactly what you need when your visual assets matter.',
154
- },
155
- ];
156
-
18
+ bibliographyTitle: 'Bibliographic References',
19
+ faqTitle: 'Frequently Asked Questions',
20
+ };
21
+
22
+ const faq: AvifAPngLocaleContent['faq'] = [
23
+ {
24
+ question: 'Why should I convert AVIF to PNG?',
25
+ answer:
26
+ 'AVIF is great for compression, but its compatibility is limited in older browsers and classic editors. By converting from AVIF to PNG, you ensure your file will maintain the original transparency and all applications can open it.',
27
+ },
28
+ {
29
+ question: 'Are the transparencies from the original AVIF file maintained?',
30
+ answer:
31
+ 'Yes. Unlike JPG which removes the transparent background, when exporting to PNG our converter keeps the alpha channel intact.',
32
+ },
33
+ {
34
+ question: 'Is it true that my images are not uploaded to the internet?',
35
+ answer:
36
+ 'Absolutely true. Our converter runs 100% locally on your device using the internal JavaScript engine.',
37
+ },
38
+ ];
39
+
40
+ const howTo: AvifAPngLocaleContent['howTo'] = [
41
+ {
42
+ name: 'Add your AVIF files',
43
+ text: 'You can drag them directly to the delimited area or use the button to browse your computer folders.',
44
+ },
45
+ {
46
+ name: 'Immediate processing',
47
+ text: 'Let the HTML5 processor render the image; the format will change to PNG automatically in microseconds.',
48
+ },
49
+ {
50
+ name: 'Get your PNGs',
51
+ text: 'Download the converted images one by one or download a complete batch via the ZIP button.',
52
+ },
53
+ ];
54
+
55
+ const seo: AvifAPngLocaleContent['seo'] = [
56
+ {
57
+ type: 'title',
58
+ text: 'AVIF to PNG Converter: From Web Delivery to Professional Editing',
59
+ level: 2,
60
+ },
61
+ {
62
+ type: 'paragraph',
63
+ html: 'AVIF is the ideal format for serving images on the web - small, efficient and high quality. But when the time comes to edit, retouch or work with those images in design tools, AVIF becomes an obstacle. Figma, Photoshop, Illustrator, Sketch and virtually any professional design tool expect PNG for transparency work and lossless editing. Converting AVIF to PNG is the bridge between the world of web delivery and creative editing.',
64
+ },
65
+ {
66
+ type: 'title',
67
+ text: 'AVIF vs PNG: Delivery vs Editing',
68
+ level: 3,
69
+ },
70
+ {
71
+ type: 'paragraph',
72
+ html: 'AVIF excels as a delivery format: small files, fast loading, alpha channel support and exceptional visual quality. However, its tooling ecosystem is limited. Most design software cannot import AVIF directly, which disrupts creative workflows. Trying to open an AVIF in Figma or import it as a layer in Photoshop simply does not work.',
73
+ },
74
+ {
75
+ type: 'paragraph',
76
+ html: 'PNG is the native format of digital design. With lossless compression, full alpha channel support and universal compatibility with all creative tools, PNG is the go-to working format. When you need to scale, retouch, export to multiple formats or work in layers, PNG guarantees you will not lose any detail or pixel in the process.',
77
+ },
78
+ {
79
+ type: 'title',
80
+ text: 'Comparison: Cloud Converters vs Our Local Architecture',
81
+ level: 3,
82
+ },
83
+ {
84
+ type: 'comparative',
85
+ items: [
86
+ {
87
+ title: 'Cloud Converters',
88
+ description: 'Tools that upload your AVIF files to a remote server for processing.',
89
+ icon: 'mdi:cloud-upload',
90
+ pointIcon: 'mdi:close-circle-outline',
91
+ points: [
92
+ 'Your design images travel to third-party servers',
93
+ 'Waiting time due to network latency',
94
+ 'Possible loss or alteration of the alpha channel',
95
+ 'Size limits that complicate batch conversion',
96
+ ],
97
+ },
98
+ {
99
+ title: 'Our Local Architecture',
100
+ description: 'Direct processing in your browser using Vanilla JS and Canvas API technology.',
101
+ icon: 'mdi:laptop-mac',
102
+ highlight: true,
103
+ points: [
104
+ 'Alpha channel preserved with perfect fidelity',
105
+ 'Instant conversion without data transfer',
106
+ 'No limits on files, size or batches',
107
+ 'Total privacy for proprietary design assets',
108
+ ],
109
+ },
110
+ ],
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'How the technical conversion works with transparency',
115
+ level: 3,
116
+ },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'Modern browsers decode AVIF natively thanks to their built-in AV1 engines. When loading the file, the browser decodes it in memory preserving all alpha channel information. The decoded image - including its transparencies - is drawn onto an HTML5 <code>Canvas</code> element with the correct compositing mode to preserve the alpha channel.',
120
+ },
121
+ {
122
+ type: 'paragraph',
123
+ html: 'Unlike exporting to JPG (which destroys transparencies by filling with white), exporting to PNG via <code>toBlob(\'image/png\')</code> fully preserves the alpha channel. The result is a losslessly compressed PNG that retains every pixel, every semi-transparency and every detail of the original AVIF.',
124
+ },
125
+ {
126
+ type: 'tip',
127
+ title: 'The mandatory first step for any design tool',
128
+ html: 'Convert your AVIF files to PNG before importing them into Figma, Photoshop, Illustrator or any design tool. These applications cannot read AVIF directly, but PNG works natively in all of them, preserving transparency and quality perfectly.',
129
+ },
130
+ {
131
+ type: 'title',
132
+ text: 'Use cases: when you need AVIF converted to PNG',
133
+ level: 3,
134
+ },
135
+ {
136
+ type: 'list',
137
+ icon: 'mdi:check-circle',
138
+ items: [
139
+ 'Import into Figma, Sketch, Adobe XD or other UI design tools.',
140
+ 'Edit as a layer in Photoshop, Affinity Photo or GIMP preserving transparency.',
141
+ 'Use as source for icon or sprite generation.',
142
+ 'Send to clients or collaborators working with standard design software.',
143
+ 'Archive images with transparency in a lossless editing format.',
144
+ ],
145
+ },
146
+ {
147
+ type: 'title',
148
+ text: 'Conclusion: The bridge between the web and design',
149
+ level: 3,
150
+ },
151
+ {
152
+ type: 'paragraph',
153
+ html: 'AVIF and PNG are perfect companions in a modern workflow: AVIF for efficient web delivery, PNG for editing and collaboration in design tools. With our converter, the step from one to the other is instant, private and preserves every detail - exactly what you need when your visual assets matter.',
154
+ },
155
+ ];
157
156
 
158
- export const content: AvifAPngLocaleContent = {
159
- slug,
160
- title,
161
- description,
162
- ui,
163
- seo,
164
- faq,
165
- bibliography,
166
- howTo,
167
- schemas: generateSchemas({ title, description, inLanguage: 'en', faq, howTo }),
168
- };
157
+
158
+ export const content: AvifAPngLocaleContent = {
159
+ slug,
160
+ title,
161
+ description,
162
+ ui,
163
+ seo,
164
+ faq,
165
+ bibliography,
166
+ howTo,
167
+ schemas: generateSchemas({ title, description, inLanguage: 'en', faq, howTo }),
168
+ };