@jjlmoya/utils-textiles 1.1.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 +60 -0
  2. package/src/category/i18n/en.ts +76 -0
  3. package/src/category/i18n/es.ts +76 -0
  4. package/src/category/i18n/fr.ts +73 -0
  5. package/src/category/index.ts +17 -0
  6. package/src/category/seo.astro +15 -0
  7. package/src/components/PreviewNavSidebar.astro +116 -0
  8. package/src/components/PreviewToolbar.astro +143 -0
  9. package/src/data.ts +11 -0
  10. package/src/env.d.ts +5 -0
  11. package/src/index.ts +32 -0
  12. package/src/layouts/PreviewLayout.astro +117 -0
  13. package/src/pages/[locale]/[slug].astro +146 -0
  14. package/src/pages/[locale].astro +253 -0
  15. package/src/pages/index.astro +4 -0
  16. package/src/tests/faq_count.test.ts +19 -0
  17. package/src/tests/locale_completeness.test.ts +42 -0
  18. package/src/tests/mocks/astro_mock.js +2 -0
  19. package/src/tests/no_h1_in_components.test.ts +48 -0
  20. package/src/tests/seo_length.test.ts +22 -0
  21. package/src/tests/title_separators.test.ts +40 -0
  22. package/src/tests/tool_validation.test.ts +17 -0
  23. package/src/tool/burnTest/bibliography.astro +34 -0
  24. package/src/tool/burnTest/component.astro +602 -0
  25. package/src/tool/burnTest/i18n/en.ts +225 -0
  26. package/src/tool/burnTest/i18n/es.ts +225 -0
  27. package/src/tool/burnTest/i18n/fr.ts +225 -0
  28. package/src/tool/burnTest/index.ts +34 -0
  29. package/src/tool/burnTest/logic.ts +3 -0
  30. package/src/tool/burnTest/seo.astro +40 -0
  31. package/src/tool/burnTest/ui.ts +36 -0
  32. package/src/tool/clothingSizeConverter/bibliography.astro +34 -0
  33. package/src/tool/clothingSizeConverter/component.astro +1226 -0
  34. package/src/tool/clothingSizeConverter/i18n/en.ts +356 -0
  35. package/src/tool/clothingSizeConverter/i18n/es.ts +356 -0
  36. package/src/tool/clothingSizeConverter/i18n/fr.ts +356 -0
  37. package/src/tool/clothingSizeConverter/index.ts +34 -0
  38. package/src/tool/clothingSizeConverter/logic.ts +30 -0
  39. package/src/tool/clothingSizeConverter/seo.astro +40 -0
  40. package/src/tool/clothingSizeConverter/ui.ts +70 -0
  41. package/src/tool/fabricProjectCalculator/bibliography.astro +19 -0
  42. package/src/tool/fabricProjectCalculator/component.astro +914 -0
  43. package/src/tool/fabricProjectCalculator/i18n/en.ts +250 -0
  44. package/src/tool/fabricProjectCalculator/i18n/es.ts +250 -0
  45. package/src/tool/fabricProjectCalculator/i18n/fr.ts +250 -0
  46. package/src/tool/fabricProjectCalculator/index.ts +34 -0
  47. package/src/tool/fabricProjectCalculator/logic.ts +89 -0
  48. package/src/tool/fabricProjectCalculator/seo.astro +40 -0
  49. package/src/tool/fabricProjectCalculator/ui.ts +57 -0
  50. package/src/tool/fabricTruth/bibliography.astro +40 -0
  51. package/src/tool/fabricTruth/component.astro +708 -0
  52. package/src/tool/fabricTruth/i18n/en.ts +282 -0
  53. package/src/tool/fabricTruth/i18n/es.ts +316 -0
  54. package/src/tool/fabricTruth/i18n/fr.ts +282 -0
  55. package/src/tool/fabricTruth/index.ts +34 -0
  56. package/src/tool/fabricTruth/logic.ts +91 -0
  57. package/src/tool/fabricTruth/seo.astro +40 -0
  58. package/src/tool/fabricTruth/ui.ts +28 -0
  59. package/src/tool/fiberPrep/bibliography.astro +33 -0
  60. package/src/tool/fiberPrep/component.astro +987 -0
  61. package/src/tool/fiberPrep/i18n/en.ts +225 -0
  62. package/src/tool/fiberPrep/i18n/es.ts +225 -0
  63. package/src/tool/fiberPrep/i18n/fr.ts +225 -0
  64. package/src/tool/fiberPrep/index.ts +34 -0
  65. package/src/tool/fiberPrep/logic.ts +36 -0
  66. package/src/tool/fiberPrep/seo.astro +40 -0
  67. package/src/tool/fiberPrep/ui.ts +38 -0
  68. package/src/tool/knittingGauge/bibliography.astro +14 -0
  69. package/src/tool/knittingGauge/component.astro +828 -0
  70. package/src/tool/knittingGauge/i18n/en.ts +234 -0
  71. package/src/tool/knittingGauge/i18n/es.ts +234 -0
  72. package/src/tool/knittingGauge/i18n/fr.ts +234 -0
  73. package/src/tool/knittingGauge/index.ts +34 -0
  74. package/src/tool/knittingGauge/logic.ts +28 -0
  75. package/src/tool/knittingGauge/seo.astro +40 -0
  76. package/src/tool/knittingGauge/ui.ts +41 -0
  77. package/src/tool/laundryGuide/bibliography.astro +33 -0
  78. package/src/tool/laundryGuide/component.astro +486 -0
  79. package/src/tool/laundryGuide/data-en.ts +166 -0
  80. package/src/tool/laundryGuide/data-es.ts +166 -0
  81. package/src/tool/laundryGuide/data-fr.ts +103 -0
  82. package/src/tool/laundryGuide/i18n/en.ts +275 -0
  83. package/src/tool/laundryGuide/i18n/es.ts +275 -0
  84. package/src/tool/laundryGuide/i18n/fr.ts +291 -0
  85. package/src/tool/laundryGuide/index.ts +29 -0
  86. package/src/tool/laundryGuide/logic.ts +19 -0
  87. package/src/tool/laundryGuide/seo.astro +40 -0
  88. package/src/tool/needleConverter/bibliography.astro +14 -0
  89. package/src/tool/needleConverter/component.astro +518 -0
  90. package/src/tool/needleConverter/i18n/en.ts +217 -0
  91. package/src/tool/needleConverter/i18n/es.ts +217 -0
  92. package/src/tool/needleConverter/i18n/fr.ts +217 -0
  93. package/src/tool/needleConverter/index.ts +34 -0
  94. package/src/tool/needleConverter/logic.ts +31 -0
  95. package/src/tool/needleConverter/seo.astro +15 -0
  96. package/src/tool/needleConverter/ui.ts +17 -0
  97. package/src/tool/sewingPatternScaler/bibliography.astro +14 -0
  98. package/src/tool/sewingPatternScaler/component.astro +550 -0
  99. package/src/tool/sewingPatternScaler/i18n/en.ts +196 -0
  100. package/src/tool/sewingPatternScaler/i18n/es.ts +231 -0
  101. package/src/tool/sewingPatternScaler/i18n/fr.ts +187 -0
  102. package/src/tool/sewingPatternScaler/index.ts +34 -0
  103. package/src/tool/sewingPatternScaler/logic.ts +35 -0
  104. package/src/tool/sewingPatternScaler/seo.astro +49 -0
  105. package/src/tool/sewingPatternScaler/ui.ts +29 -0
  106. package/src/tool/shoeSizeConverter/bibliography.astro +34 -0
  107. package/src/tool/shoeSizeConverter/component.astro +437 -0
  108. package/src/tool/shoeSizeConverter/i18n/en.ts +188 -0
  109. package/src/tool/shoeSizeConverter/i18n/es.ts +188 -0
  110. package/src/tool/shoeSizeConverter/i18n/fr.ts +188 -0
  111. package/src/tool/shoeSizeConverter/index.ts +34 -0
  112. package/src/tool/shoeSizeConverter/logic.ts +8 -0
  113. package/src/tool/shoeSizeConverter/seo.astro +40 -0
  114. package/src/tool/shoeSizeConverter/ui.ts +21 -0
  115. package/src/tool/stainChemistry/bibliography.astro +40 -0
  116. package/src/tool/stainChemistry/component.astro +717 -0
  117. package/src/tool/stainChemistry/i18n/en.ts +303 -0
  118. package/src/tool/stainChemistry/i18n/es.ts +300 -0
  119. package/src/tool/stainChemistry/i18n/fr.ts +310 -0
  120. package/src/tool/stainChemistry/index.ts +34 -0
  121. package/src/tool/stainChemistry/logic.ts +11 -0
  122. package/src/tool/stainChemistry/seo.astro +40 -0
  123. package/src/tool/stainChemistry/ui.ts +51 -0
  124. package/src/tool/yarnCalculator/bibliography.astro +19 -0
  125. package/src/tool/yarnCalculator/component.astro +792 -0
  126. package/src/tool/yarnCalculator/i18n/en.ts +310 -0
  127. package/src/tool/yarnCalculator/i18n/es.ts +310 -0
  128. package/src/tool/yarnCalculator/i18n/fr.ts +310 -0
  129. package/src/tool/yarnCalculator/index.ts +34 -0
  130. package/src/tool/yarnCalculator/logic.ts +84 -0
  131. package/src/tool/yarnCalculator/seo.astro +14 -0
  132. package/src/tool/yarnCalculator/ui.ts +42 -0
  133. package/src/tools.ts +16 -0
  134. package/src/types.ts +72 -0
@@ -0,0 +1,234 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { KnittingGaugeUI } from '../ui';
4
+
5
+ const slug = 'knitting-gauge-calculator';
6
+ const title = 'Knitting Gauge Calculator';
7
+ const description =
8
+ 'Easily recalculate stitches and rows for any knitting or crochet pattern. Adjust gauge by multiples and scale factor for a professional result.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'What is gauge or tension in knitting?',
13
+ answer:
14
+ 'It is the measure of how many stitches and rows fit in a given area (usually 10x10 cm or 4x4 in). It is fundamental because it determines the final size of the garment based on the needle and yarn used.',
15
+ },
16
+ {
17
+ question: 'How does a gauge change affect size?',
18
+ answer:
19
+ 'If your tension has more stitches per centimeter than the pattern, the garment will be smaller. If it has fewer stitches, the garment will be larger. That is why it is vital to recalculate stitches or change needle size.',
20
+ },
21
+ {
22
+ question: 'Why is multiples adjustment important?',
23
+ answer:
24
+ 'Many patterns have motifs (lace, cables, designs) that require a specific number of stitches to complete. Our calculator adjusts the total to the nearest multiple so the design is not broken.',
25
+ },
26
+ {
27
+ question: 'Should I wash the swatch before measuring?',
28
+ answer:
29
+ 'Yes, always. "Blocking" (washing and shaping) relaxes the fibers and shows the real tension the garment will have after its first use and wash.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Identify the pattern gauge',
36
+ text: 'Find in the pattern instructions how many stitches and rows are indicated for a 10x10 cm or 4x4 inch swatch.',
37
+ },
38
+ {
39
+ name: 'Knit and measure your own swatch',
40
+ text: 'Knit a swatch with your yarn and needles, block it and measure how many stitches and rows you have in that same area.',
41
+ },
42
+ {
43
+ name: 'Configure the calculator',
44
+ text: 'Enter the pattern swatch data and your real swatch data. Add the total stitches for your size and the pattern multiples if any.',
45
+ },
46
+ {
47
+ name: 'Get results',
48
+ text: 'Review the new number of cast-on stitches and the scale factor to know if you also need to adjust the garment length.',
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<HowTo> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'HowTo',
65
+ name: title,
66
+ description,
67
+ step: howToData.map((step) => ({
68
+ '@type': 'HowToStep',
69
+ name: step.name,
70
+ text: step.text,
71
+ })),
72
+ };
73
+
74
+ const appSchema: WithContext<SoftwareApplication> = {
75
+ '@context': 'https://schema.org',
76
+ '@type': 'SoftwareApplication',
77
+ name: title,
78
+ description,
79
+ applicationCategory: 'UtilityApplication',
80
+ operatingSystem: 'All',
81
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
82
+ inLanguage: 'en',
83
+ };
84
+
85
+ export const content: ToolLocaleContent<KnittingGaugeUI> = {
86
+ slug,
87
+ title,
88
+ description,
89
+ faqTitle: 'Frequently Asked Questions',
90
+ faq: faqData,
91
+ bibliographyTitle: 'Bibliography',
92
+ bibliography: [
93
+ {
94
+ name: 'The Importance of Gauge - Tin Can Knits',
95
+ url: 'https://blog.tincanknits.com/2013/08/17/gauge/',
96
+ },
97
+ {
98
+ name: 'Knitting Gauge: How to Measure Stitches and Rows',
99
+ url: 'https://elizabethsmithknits.com/2020/10/30/how-to-measure-your-gauge-swatch/',
100
+ },
101
+ ],
102
+ howTo: howToData,
103
+ schemas: [faqSchema, howToSchema, appSchema],
104
+ seo: [
105
+ {
106
+ type: 'title',
107
+ text: 'Knitting Gauge Calculator Online: Technical Guide',
108
+ level: 2,
109
+ },
110
+ {
111
+ type: 'paragraph',
112
+ html: 'If you have ever finished a sweater that seemed designed for a giant or a hat that barely covered the crown, you already know the importance of <strong>gauge or tension</strong>. In the world of knitting and crochet, tension is the relationship between yarn thickness, needle size and the force with which each knitter manipulates the yarn. No two knitters are alike, and therefore no two tensions are identical.',
113
+ },
114
+ {
115
+ type: 'title',
116
+ text: 'Why is Gauge or Tension Vital in Knitting?',
117
+ level: 3,
118
+ },
119
+ {
120
+ type: 'paragraph',
121
+ html: 'This knitting gauge calculator is a technical tool designed to eliminate mathematical guesswork and allow you to focus on creativity. By entering the pattern swatch data and your own swatch data, you will get precise stitch and row adjustments, ensuring your finished garment has exactly the measurements you expect.',
122
+ },
123
+ {
124
+ type: 'title',
125
+ text: 'How to use the knitting tension calculator',
126
+ level: 3,
127
+ },
128
+ {
129
+ type: 'list',
130
+ items: [
131
+ '<strong>Knit a swatch:</strong> Do not limit yourself to 10x10 cm. Knit at least 15x15 cm so the edges do not skew the central measurement.',
132
+ '<strong>Block your swatch:</strong> Wash and dry the swatch as you would the finished garment. Many wool fibers expand or grow when wet.',
133
+ '<strong>Measure precisely:</strong> Use a rigid ruler or a 10 cm gauge. Count how many stitches fit horizontally and how many rows fit vertically.',
134
+ '<strong>Enter the data:</strong> Place the pattern values on the left and your real values on the right. The tool will automatically recalculate how many stitches you need to reach the desired width.',
135
+ ],
136
+ },
137
+ {
138
+ type: 'title',
139
+ text: 'Interpreting Results: The Scale Factor',
140
+ level: 3,
141
+ },
142
+ {
143
+ type: 'paragraph',
144
+ html: 'The scale factor is the multiplier we apply to each pattern instruction. If your tension is 22 stitches and the pattern calls for 20, your scale factor is 1.1. This means that to get the same physical width, you need 10% more stitches. A deviation of 0-2% is ideal, 2-10% is moderate, 10-25% requires mandatory recalculation, and more than 25% poses a structural risk.',
145
+ },
146
+ {
147
+ type: 'title',
148
+ text: 'Handling Multiples and Motifs',
149
+ level: 3,
150
+ },
151
+ {
152
+ type: 'paragraph',
153
+ html: 'One of the biggest challenges when recalculating a pattern is maintaining the integrity of lace, cables or motifs. If the design repeats every 8 stitches, you cannot simply add 3 extra stitches; you must adjust the total to remain a multiple of 8. The <strong>multiples adjustment</strong> function of this calculator suggests the nearest stitch count that respects the design architecture.',
154
+ },
155
+ {
156
+ type: 'tip',
157
+ title: 'Expert Tip',
158
+ html: '<p>It is usually preferable to use this calculator and work with the natural tension of your yarn, adapting the stitch count rather than forcing the tension by radically changing the needle size, as the latter can alter the drape and softness of the fabric.</p>',
159
+ },
160
+ {
161
+ type: 'title',
162
+ text: 'Advantages of using our adjustment tool',
163
+ level: 3,
164
+ },
165
+ {
166
+ type: 'list',
167
+ items: [
168
+ 'Automatic stitch and row adjustment with precise scale factor.',
169
+ 'Support for complex multiples (X + Y) to maintain motif integrity.',
170
+ 'Estimation of grams of yarn needed for the complete project.',
171
+ 'Dynamic swatch visualizer showing fabric density in real time.',
172
+ ],
173
+ },
174
+ {
175
+ type: 'card',
176
+ title: 'Gauge / Tension',
177
+ icon: 'mdi:ruler',
178
+ html: 'Number of stitches and rows contained in a <strong>10x10 cm</strong> or <strong>4x4 inch</strong> square. It is the universal reference of all knitting patterns.',
179
+ },
180
+ {
181
+ type: 'card',
182
+ title: 'Blocking',
183
+ icon: 'mdi:water',
184
+ html: 'Process of wetting and shaping the garment to set the stitches. Reveals the <strong>real tension</strong> the garment will have after its first use and wash.',
185
+ },
186
+ {
187
+ type: 'card',
188
+ title: 'Scale Factor',
189
+ icon: 'mdi:scale',
190
+ html: 'Mathematical ratio between the pattern swatch and the knitter\'s real swatch. Determines how many stitches and rows to adjust to maintain the <strong>correct measurements</strong>.',
191
+ },
192
+ ],
193
+ ui: {
194
+ sectionOriginalGauge: 'Pattern Gauge',
195
+ sectionMyGauge: 'My Actual Swatch',
196
+ sectionProject: 'Project Structure',
197
+ labelStitches: 'Stitches',
198
+ labelRows: 'Rows',
199
+ labelWidth: 'Width',
200
+ labelLength: 'Length',
201
+ labelUnit: 'Unit of Measure',
202
+ labelNeedle: 'Needle',
203
+ labelNeedleMm: 'Needle (mm)',
204
+ labelWeight: 'Weight (g)',
205
+ labelWeightOptional: 'optional',
206
+ labelPatternSts: 'Pattern Stitches',
207
+ labelPatternRows: 'Pattern Rows',
208
+ labelMultiples: 'Multiples',
209
+ labelMultiplesExample: 'E.g.: 10 + 2',
210
+ labelMultiplesPlaceholder: 'Multiple + Border',
211
+ unitEU: '10 x 10 cm (EU Standard)',
212
+ unitUS: '4 x 4 inches (US Standard)',
213
+ btnClear: 'Clear',
214
+ btnShare: 'Share',
215
+ btnCopied: 'Copied!',
216
+ resSuggestedSts: 'Suggested cast-on stitches',
217
+ resNewRows: 'New Rows',
218
+ resNewRowsTooltip: 'Number of rows needed to match the length of the original pattern with your current tension.',
219
+ resScaleFactor: 'Scale Factor',
220
+ resScaleFactorTooltip: 'Size ratio between your knitting and the pattern. A negative value means your knitting is denser.',
221
+ resSuggestion: 'Suggestion',
222
+ resSuggestionTooltip: 'Technical recommendation to adjust your tension without recalculating every stitch of the pattern.',
223
+ suggestionIdeal: 'Ideal',
224
+ suggestionDown: 'Go Down a Needle',
225
+ suggestionUp: 'Go Up a Needle',
226
+ suggestionDownDetail: 'Use a {n}mm needle or smaller size.',
227
+ suggestionUpDetail: 'Use a {n}mm needle or larger size.',
228
+ multiplesNoteFormat: 'Adjusted from {n} stitches (Mult. {m})',
229
+ yarnTitle: 'Yarn Estimation for the Project',
230
+ yarnResultFormat: 'Estimated yarn: <strong>{g}g</strong>',
231
+ yarnSafetyFormat: '(+{s}g safety margin)',
232
+ alertDanger: 'Extreme difference (>25%). The drape and structure of the garment will be altered.',
233
+ },
234
+ };
@@ -0,0 +1,234 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { KnittingGaugeUI } from '../ui';
4
+
5
+ const slug = 'calculadora-gauge-tension-punto';
6
+ const title = 'Calculadora de Gauge y Tensión de Tejido';
7
+ const description =
8
+ 'Recalcula fácilmente los puntos y vueltas de cualquier patrón de punto o ganchillo. Ajusta el gauge por múltiplos y factor de escala para un resultado profesional.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: '¿Qué es la tensión o gauge en tejido?',
13
+ answer:
14
+ 'Es la medida de cuántos puntos y vueltas caben en un área determinada (usualmente 10x10 cm). Es fundamental porque determina el tamaño final de la prenda según la aguja y el hilo utilizado.',
15
+ },
16
+ {
17
+ question: '¿Cómo afecta el cambio de gauge al tamaño?',
18
+ answer:
19
+ 'Si tu tensión tiene más puntos por centímetro que el patrón, la prenda será más pequeña. Si tiene menos puntos, la prenda será más grande. Por eso es vital recalcular los puntos o cambiar de agujas.',
20
+ },
21
+ {
22
+ question: '¿Por qué es importante el ajuste por múltiplos?',
23
+ answer:
24
+ 'Muchos patrones tienen motivos (calados, trenzas, dibujos) que requieren un número específico de puntos para completarse. Nuestra calculadora ajusta el total al múltiplo más cercano para no romper el diseño.',
25
+ },
26
+ {
27
+ question: '¿Debo lavar la muestra antes de medir?',
28
+ answer:
29
+ 'Sí, siempre. El "bloqueo" (lavar y dar forma) relaja las fibras y muestra la tensión real que tendrá la prenda después de su primer uso y lavado.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Identificar la tensión del patrón',
36
+ text: 'Busca en las instrucciones del patrón cuántos puntos y vueltas indican para una muestra de 10x10 cm o 4x4 pulgadas.',
37
+ },
38
+ {
39
+ name: 'Tejer y medir tu propia muestra',
40
+ text: 'Teje una muestra con tu hilo y agujas, bloqueala y mide cuántos puntos y vueltas tienes tú en ese mismo área.',
41
+ },
42
+ {
43
+ name: 'Configurar el calculador',
44
+ text: 'Introduce los datos de la muestra del patrón y los de tu muestra real. Añade el total de puntos de tu talla y los múltiplos del motivo si los hay.',
45
+ },
46
+ {
47
+ name: 'Obtener resultados',
48
+ text: 'Revisa el nuevo número de puntos a montar y el factor de escala para saber si necesitas ajustar también el largo de la prenda.',
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<HowTo> = {
63
+ '@context': 'https://schema.org',
64
+ '@type': 'HowTo',
65
+ name: title,
66
+ description,
67
+ step: howToData.map((step) => ({
68
+ '@type': 'HowToStep',
69
+ name: step.name,
70
+ text: step.text,
71
+ })),
72
+ };
73
+
74
+ const appSchema: WithContext<SoftwareApplication> = {
75
+ '@context': 'https://schema.org',
76
+ '@type': 'SoftwareApplication',
77
+ name: title,
78
+ description,
79
+ applicationCategory: 'UtilityApplication',
80
+ operatingSystem: 'All',
81
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
82
+ inLanguage: 'es',
83
+ };
84
+
85
+ export const content: ToolLocaleContent<KnittingGaugeUI> = {
86
+ slug,
87
+ title,
88
+ description,
89
+ faqTitle: 'Preguntas Frecuentes',
90
+ faq: faqData,
91
+ bibliographyTitle: 'Bibliografía',
92
+ bibliography: [
93
+ {
94
+ name: 'The Importance of Gauge - Tin Can Knits',
95
+ url: 'https://blog.tincanknits.com/2013/08/17/gauge/',
96
+ },
97
+ {
98
+ name: 'Knitting Gauge: How to Measure Stitches and Rows',
99
+ url: 'https://elizabethsmithknits.com/2020/10/30/how-to-measure-your-gauge-swatch/',
100
+ },
101
+ ],
102
+ howTo: howToData,
103
+ schemas: [faqSchema, howToSchema, appSchema],
104
+ seo: [
105
+ {
106
+ type: 'title',
107
+ text: 'Calculadora de Gauge y Tensión de Tejido Online: Guía Técnica',
108
+ level: 2,
109
+ },
110
+ {
111
+ type: 'paragraph',
112
+ html: 'Si alguna vez has terminado un jersey que parecía diseñado para un gigante o un gorrito que apenas cubría la coronilla, ya conoces la importancia del <strong>gauge o tensión</strong>. En el mundo del punto y el ganchillo, la tensión es la relación entre el grosor del hilo, el tamaño de las agujas y la fuerza con la que cada tejedor manipula la hebra. No hay dos tejedores iguales, y por eso, no hay dos tensiones idénticas.',
113
+ },
114
+ {
115
+ type: 'title',
116
+ text: '¿Por qué es vital la Tensión o Gauge en el Tejido?',
117
+ level: 3,
118
+ },
119
+ {
120
+ type: 'paragraph',
121
+ html: 'Esta calculadora de gauge para tejido es una herramienta técnica diseñada para eliminar las conjeturas matemáticas y permitir que te centres en la creatividad. Al introducir los datos de la muestra del patrón y los de tu propia muestra, obtendrás ajustes precisos de puntos y vueltas, asegurando que tu prenda final tenga exactamente las medidas que esperas.',
122
+ },
123
+ {
124
+ type: 'title',
125
+ text: 'Cómo usar la calculadora de tensión de punto',
126
+ level: 3,
127
+ },
128
+ {
129
+ type: 'list',
130
+ items: [
131
+ '<strong>Teje una muestra:</strong> No te limites a 10x10 cm. Teje al menos 15x15 cm para que los bordes no falseen la medida central.',
132
+ '<strong>Bloquea tu muestra:</strong> Lava y seca la muestra tal como lo harías con la prenda terminada. Muchas fibras de lana se expanden o crecen al mojarse.',
133
+ '<strong>Mide con precisión:</strong> Utiliza una regla rígida o un calibre de 10 cm. Cuenta cuántos puntos entran horizontalmente y cuántas vueltas verticalmente.',
134
+ '<strong>Introduce los datos:</strong> Coloca los valores del patrón en la columna izquierda y tus valores reales en la derecha. La herramienta recalculará automáticamente cuántos puntos necesitas para alcanzar el ancho deseado.',
135
+ ],
136
+ },
137
+ {
138
+ type: 'title',
139
+ text: 'Interpretación de los Resultados: El Factor de Escala',
140
+ level: 3,
141
+ },
142
+ {
143
+ type: 'paragraph',
144
+ html: 'El factor de escala es el multiplicador que aplicamos a cada instrucción del patrón. Si tu tensión es de 22 puntos y el patrón pide 20, tu factor de escala es de 1.1. Esto significa que para obtener el mismo ancho físico, necesitas un 10% más de puntos. Una desviación de 0-2% es ideal, de 2-10% es moderada, de 10-25% requiere recálculo obligatorio, y más del 25% supone un riesgo estructural.',
145
+ },
146
+ {
147
+ type: 'title',
148
+ text: 'Tratamiento de Múltiplos y Motivos',
149
+ level: 3,
150
+ },
151
+ {
152
+ type: 'paragraph',
153
+ html: 'Uno de los mayores retos al recalcular un patrón es mantener la integridad de los calados, trenzas o motivos. Si el diseño se repite cada 8 puntos, no puedes simplemente añadir 3 puntos adicionales; debes ajustar el total para que siga siendo múltiplo de 8. La función de <strong>ajuste por múltiplos</strong> de esta calculadora sugiere el número de puntos más cercano que respeta la arquitectura del diseño.',
154
+ },
155
+ {
156
+ type: 'tip',
157
+ title: 'Consejo para Expertos',
158
+ html: '<p>Suele ser preferible usar esta calculadora y trabajar con la tensión natural de tu hilo, adaptando el número de puntos en lugar de forzar la tensión cambiando radicalmente el tamaño de las agujas, ya que esto último puede alterar la caída y la suavidad del tejido.</p>',
159
+ },
160
+ {
161
+ type: 'title',
162
+ text: 'Ventajas de usar nuestra herramienta de ajuste',
163
+ level: 3,
164
+ },
165
+ {
166
+ type: 'list',
167
+ items: [
168
+ 'Ajuste automático de puntos y vueltas con factor de escala preciso.',
169
+ 'Soporte para múltiplos complejos (X + Y) para mantener la integridad del motivo.',
170
+ 'Estimación de gramos de lana necesarios para el proyecto completo.',
171
+ 'Visualizador dinámico del swatch que muestra la densidad del tejido en tiempo real.',
172
+ ],
173
+ },
174
+ {
175
+ type: 'card',
176
+ title: 'Gauge / Tensión',
177
+ icon: 'mdi:ruler',
178
+ html: 'Número de puntos y vueltas contenidos en un cuadrado de <strong>10x10 cm</strong> o <strong>4x4 pulgadas</strong>. Es la referencia universal de todos los patrones de tejido.',
179
+ },
180
+ {
181
+ type: 'card',
182
+ title: 'Bloqueo',
183
+ icon: 'mdi:water',
184
+ html: 'Proceso de humedecer y dar forma a la prenda para asentar los puntos. Revela la <strong>tensión real</strong> que tendrá la prenda después de su primer uso y lavado.',
185
+ },
186
+ {
187
+ type: 'card',
188
+ title: 'Factor de Escala',
189
+ icon: 'mdi:scale',
190
+ html: 'Proporción matemática entre la muestra del patrón y la muestra real del tejedor. Determina cuántos puntos y vueltas ajustar para mantener las <strong>medidas correctas</strong>.',
191
+ },
192
+ ],
193
+ ui: {
194
+ sectionOriginalGauge: 'Tensión Original',
195
+ sectionMyGauge: 'Tu Muestra Actual',
196
+ sectionProject: 'Estructura del Proyecto',
197
+ labelStitches: 'Puntos',
198
+ labelRows: 'Vueltas',
199
+ labelWidth: 'Ancho',
200
+ labelLength: 'Largo',
201
+ labelUnit: 'Unidad de Medida',
202
+ labelNeedle: 'Aguja',
203
+ labelNeedleMm: 'Aguja (mm)',
204
+ labelWeight: 'Peso (g)',
205
+ labelWeightOptional: 'opcional',
206
+ labelPatternSts: 'Puntos Patrón',
207
+ labelPatternRows: 'Vueltas Patrón',
208
+ labelMultiples: 'Múltiplos',
209
+ labelMultiplesExample: 'Ej: 10 + 2',
210
+ labelMultiplesPlaceholder: 'Múltiplo + Borde',
211
+ unitEU: '10 x 10 cm (Estándar EU)',
212
+ unitUS: '4 x 4 pulgadas (Estándar US)',
213
+ btnClear: 'Limpiar',
214
+ btnShare: 'Compartir',
215
+ btnCopied: '¡Copiado!',
216
+ resSuggestedSts: 'Puntos sugeridos a montar',
217
+ resNewRows: 'Nuevas Vueltas',
218
+ resNewRowsTooltip: 'Número de vueltas necesarias para igualar el largo del patrón original con tu tensión actual.',
219
+ resScaleFactor: 'Factor Escala',
220
+ resScaleFactorTooltip: 'Relación de tamaño entre tu tejido y el patrón. Un valor negativo indica que tu tejido es más denso.',
221
+ resSuggestion: 'Sugerencia',
222
+ resSuggestionTooltip: 'Recomendación técnica para ajustar tu tensión sin tener que recalcular cada punto del patrón.',
223
+ suggestionIdeal: 'Ideal',
224
+ suggestionDown: 'Baja Aguja',
225
+ suggestionUp: 'Sube Aguja',
226
+ suggestionDownDetail: 'Usa aguja {n}mm o talla inferior.',
227
+ suggestionUpDetail: 'Usa aguja {n}mm o talla superior.',
228
+ multiplesNoteFormat: 'Ajustado de {n} puntos (Múlt. {m})',
229
+ yarnTitle: 'Estimación de Lana para el Proyecto',
230
+ yarnResultFormat: 'Lana estimada: <strong>{g}g</strong>',
231
+ yarnSafetyFormat: '(+{s}g de seguridad)',
232
+ alertDanger: 'Diferencia extrema (>25%). La caída y estructura de la prenda se verán alteradas.',
233
+ },
234
+ };