@jjlmoya/utils-textiles 1.13.0 → 1.15.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 (254) hide show
  1. package/package.json +1 -1
  2. package/src/category/i18n/de.ts +2 -2
  3. package/src/category/i18n/en.ts +2 -2
  4. package/src/category/i18n/es.ts +2 -2
  5. package/src/category/i18n/fr.ts +9 -9
  6. package/src/category/i18n/id.ts +2 -2
  7. package/src/category/i18n/it.ts +2 -2
  8. package/src/category/i18n/nl.ts +2 -2
  9. package/src/category/i18n/pl.ts +3 -3
  10. package/src/category/i18n/pt.ts +2 -2
  11. package/src/category/i18n/ru.ts +5 -5
  12. package/src/category/i18n/sv.ts +3 -3
  13. package/src/category/i18n/zh.ts +2 -2
  14. package/src/layouts/PreviewLayout.astro +1 -0
  15. package/src/pages/[locale]/[slug].astro +30 -14
  16. package/src/tests/diacritics_density.test.ts +118 -0
  17. package/src/tests/inverted_punctuation.test.ts +84 -0
  18. package/src/tests/locale_completeness.test.ts +0 -33
  19. package/src/tests/no_en_dash.test.ts +70 -0
  20. package/src/tests/script_density.test.ts +94 -0
  21. package/src/tests/shared-test-helpers.ts +56 -0
  22. package/src/tests/tool_exports.test.ts +34 -0
  23. package/src/tool/burnTest/bibliography.astro +2 -10
  24. package/src/tool/burnTest/bibliography.ts +16 -0
  25. package/src/tool/burnTest/i18n/de.ts +5 -19
  26. package/src/tool/burnTest/i18n/en.ts +2 -16
  27. package/src/tool/burnTest/i18n/es.ts +2 -16
  28. package/src/tool/burnTest/i18n/fr.ts +5 -19
  29. package/src/tool/burnTest/i18n/id.ts +2 -16
  30. package/src/tool/burnTest/i18n/it.ts +2 -16
  31. package/src/tool/burnTest/i18n/ja.ts +2 -16
  32. package/src/tool/burnTest/i18n/ko.ts +2 -16
  33. package/src/tool/burnTest/i18n/nl.ts +2 -16
  34. package/src/tool/burnTest/i18n/pl.ts +5 -19
  35. package/src/tool/burnTest/i18n/pt.ts +2 -16
  36. package/src/tool/burnTest/i18n/ru.ts +8 -22
  37. package/src/tool/burnTest/i18n/sv.ts +2 -16
  38. package/src/tool/burnTest/i18n/tr.ts +2 -16
  39. package/src/tool/burnTest/i18n/zh.ts +5 -19
  40. package/src/tool/burnTest/index.ts +1 -0
  41. package/src/tool/burnTest/seo.astro +2 -27
  42. package/src/tool/clothingSizeConverter/bibliography.astro +2 -10
  43. package/src/tool/clothingSizeConverter/bibliography.ts +10 -0
  44. package/src/tool/clothingSizeConverter/i18n/de.ts +2 -10
  45. package/src/tool/clothingSizeConverter/i18n/en.ts +3 -11
  46. package/src/tool/clothingSizeConverter/i18n/es.ts +2 -10
  47. package/src/tool/clothingSizeConverter/i18n/fr.ts +8 -16
  48. package/src/tool/clothingSizeConverter/i18n/id.ts +2 -10
  49. package/src/tool/clothingSizeConverter/i18n/it.ts +2 -10
  50. package/src/tool/clothingSizeConverter/i18n/ja.ts +2 -10
  51. package/src/tool/clothingSizeConverter/i18n/ko.ts +2 -10
  52. package/src/tool/clothingSizeConverter/i18n/nl.ts +2 -10
  53. package/src/tool/clothingSizeConverter/i18n/pl.ts +3 -11
  54. package/src/tool/clothingSizeConverter/i18n/pt.ts +2 -10
  55. package/src/tool/clothingSizeConverter/i18n/ru.ts +4 -12
  56. package/src/tool/clothingSizeConverter/i18n/sv.ts +2 -10
  57. package/src/tool/clothingSizeConverter/i18n/tr.ts +2 -10
  58. package/src/tool/clothingSizeConverter/i18n/zh.ts +3 -11
  59. package/src/tool/clothingSizeConverter/index.ts +1 -0
  60. package/src/tool/clothingSizeConverter/seo.astro +2 -27
  61. package/src/tool/fabricProjectCalculator/bibliography.astro +2 -10
  62. package/src/tool/fabricProjectCalculator/bibliography.ts +16 -0
  63. package/src/tool/fabricProjectCalculator/component.astro +2 -3
  64. package/src/tool/fabricProjectCalculator/fabric-project-calculator.css +63 -1
  65. package/src/tool/fabricProjectCalculator/i18n/de.ts +2 -16
  66. package/src/tool/fabricProjectCalculator/i18n/en.ts +2 -16
  67. package/src/tool/fabricProjectCalculator/i18n/es.ts +2 -16
  68. package/src/tool/fabricProjectCalculator/i18n/fr.ts +2 -16
  69. package/src/tool/fabricProjectCalculator/i18n/id.ts +2 -16
  70. package/src/tool/fabricProjectCalculator/i18n/it.ts +2 -16
  71. package/src/tool/fabricProjectCalculator/i18n/ja.ts +2 -16
  72. package/src/tool/fabricProjectCalculator/i18n/ko.ts +2 -16
  73. package/src/tool/fabricProjectCalculator/i18n/nl.ts +2 -16
  74. package/src/tool/fabricProjectCalculator/i18n/pl.ts +2 -16
  75. package/src/tool/fabricProjectCalculator/i18n/pt.ts +2 -16
  76. package/src/tool/fabricProjectCalculator/i18n/ru.ts +4 -18
  77. package/src/tool/fabricProjectCalculator/i18n/sv.ts +2 -16
  78. package/src/tool/fabricProjectCalculator/i18n/tr.ts +2 -16
  79. package/src/tool/fabricProjectCalculator/i18n/zh.ts +3 -17
  80. package/src/tool/fabricProjectCalculator/index.ts +1 -0
  81. package/src/tool/fabricProjectCalculator/seo.astro +2 -27
  82. package/src/tool/fabricTruth/bibliography.astro +2 -10
  83. package/src/tool/fabricTruth/bibliography.ts +16 -0
  84. package/src/tool/fabricTruth/i18n/de.ts +3 -17
  85. package/src/tool/fabricTruth/i18n/en.ts +3 -17
  86. package/src/tool/fabricTruth/i18n/es.ts +3 -17
  87. package/src/tool/fabricTruth/i18n/fr.ts +15 -29
  88. package/src/tool/fabricTruth/i18n/id.ts +3 -17
  89. package/src/tool/fabricTruth/i18n/it.ts +3 -17
  90. package/src/tool/fabricTruth/i18n/ja.ts +3 -17
  91. package/src/tool/fabricTruth/i18n/ko.ts +3 -17
  92. package/src/tool/fabricTruth/i18n/nl.ts +3 -17
  93. package/src/tool/fabricTruth/i18n/pl.ts +3 -17
  94. package/src/tool/fabricTruth/i18n/pt.ts +3 -17
  95. package/src/tool/fabricTruth/i18n/ru.ts +13 -27
  96. package/src/tool/fabricTruth/i18n/sv.ts +3 -17
  97. package/src/tool/fabricTruth/i18n/tr.ts +3 -17
  98. package/src/tool/fabricTruth/i18n/zh.ts +11 -25
  99. package/src/tool/fabricTruth/index.ts +1 -0
  100. package/src/tool/fabricTruth/seo.astro +2 -27
  101. package/src/tool/fiberPrep/bibliography.astro +2 -10
  102. package/src/tool/fiberPrep/bibliography.ts +12 -0
  103. package/src/tool/fiberPrep/fiber-preparation-natural-dyeing.css +130 -11
  104. package/src/tool/fiberPrep/i18n/de.ts +2 -12
  105. package/src/tool/fiberPrep/i18n/en.ts +2 -12
  106. package/src/tool/fiberPrep/i18n/es.ts +2 -12
  107. package/src/tool/fiberPrep/i18n/fr.ts +6 -16
  108. package/src/tool/fiberPrep/i18n/id.ts +2 -12
  109. package/src/tool/fiberPrep/i18n/it.ts +2 -12
  110. package/src/tool/fiberPrep/i18n/ja.ts +2 -12
  111. package/src/tool/fiberPrep/i18n/ko.ts +2 -12
  112. package/src/tool/fiberPrep/i18n/nl.ts +2 -12
  113. package/src/tool/fiberPrep/i18n/pl.ts +2 -12
  114. package/src/tool/fiberPrep/i18n/pt.ts +2 -12
  115. package/src/tool/fiberPrep/i18n/ru.ts +5 -15
  116. package/src/tool/fiberPrep/i18n/sv.ts +2 -12
  117. package/src/tool/fiberPrep/i18n/tr.ts +2 -12
  118. package/src/tool/fiberPrep/i18n/zh.ts +4 -14
  119. package/src/tool/fiberPrep/index.ts +1 -0
  120. package/src/tool/fiberPrep/seo.astro +2 -27
  121. package/src/tool/knittingGauge/bibliography.astro +2 -10
  122. package/src/tool/knittingGauge/bibliography.ts +12 -0
  123. package/src/tool/knittingGauge/i18n/de.ts +2 -12
  124. package/src/tool/knittingGauge/i18n/en.ts +2 -12
  125. package/src/tool/knittingGauge/i18n/es.ts +2 -12
  126. package/src/tool/knittingGauge/i18n/fr.ts +2 -12
  127. package/src/tool/knittingGauge/i18n/id.ts +2 -12
  128. package/src/tool/knittingGauge/i18n/it.ts +2 -12
  129. package/src/tool/knittingGauge/i18n/ja.ts +2 -12
  130. package/src/tool/knittingGauge/i18n/ko.ts +2 -12
  131. package/src/tool/knittingGauge/i18n/nl.ts +2 -12
  132. package/src/tool/knittingGauge/i18n/pl.ts +2 -12
  133. package/src/tool/knittingGauge/i18n/pt.ts +2 -12
  134. package/src/tool/knittingGauge/i18n/ru.ts +8 -18
  135. package/src/tool/knittingGauge/i18n/sv.ts +2 -12
  136. package/src/tool/knittingGauge/i18n/tr.ts +2 -12
  137. package/src/tool/knittingGauge/i18n/zh.ts +3 -13
  138. package/src/tool/knittingGauge/index.ts +1 -0
  139. package/src/tool/knittingGauge/seo.astro +2 -27
  140. package/src/tool/laundryGuide/bibliography.astro +2 -10
  141. package/src/tool/laundryGuide/bibliography.ts +6 -0
  142. package/src/tool/laundryGuide/i18n/de.ts +3 -7
  143. package/src/tool/laundryGuide/i18n/en.ts +3 -7
  144. package/src/tool/laundryGuide/i18n/es.ts +3 -7
  145. package/src/tool/laundryGuide/i18n/fr.ts +14 -18
  146. package/src/tool/laundryGuide/i18n/id.ts +3 -7
  147. package/src/tool/laundryGuide/i18n/it.ts +3 -7
  148. package/src/tool/laundryGuide/i18n/ja.ts +2 -6
  149. package/src/tool/laundryGuide/i18n/ko.ts +2 -6
  150. package/src/tool/laundryGuide/i18n/nl.ts +3 -7
  151. package/src/tool/laundryGuide/i18n/pl.ts +4 -8
  152. package/src/tool/laundryGuide/i18n/pt.ts +3 -7
  153. package/src/tool/laundryGuide/i18n/ru.ts +8 -12
  154. package/src/tool/laundryGuide/i18n/sv.ts +3 -7
  155. package/src/tool/laundryGuide/i18n/tr.ts +2 -6
  156. package/src/tool/laundryGuide/i18n/zh.ts +4 -8
  157. package/src/tool/laundryGuide/index.ts +1 -0
  158. package/src/tool/laundryGuide/seo.astro +2 -27
  159. package/src/tool/needleConverter/bibliography.astro +2 -10
  160. package/src/tool/needleConverter/bibliography.ts +12 -0
  161. package/src/tool/needleConverter/i18n/de.ts +2 -12
  162. package/src/tool/needleConverter/i18n/en.ts +2 -12
  163. package/src/tool/needleConverter/i18n/es.ts +2 -12
  164. package/src/tool/needleConverter/i18n/fr.ts +7 -17
  165. package/src/tool/needleConverter/i18n/id.ts +2 -12
  166. package/src/tool/needleConverter/i18n/it.ts +2 -12
  167. package/src/tool/needleConverter/i18n/ja.ts +2 -12
  168. package/src/tool/needleConverter/i18n/ko.ts +2 -12
  169. package/src/tool/needleConverter/i18n/nl.ts +2 -12
  170. package/src/tool/needleConverter/i18n/pl.ts +2 -12
  171. package/src/tool/needleConverter/i18n/pt.ts +2 -12
  172. package/src/tool/needleConverter/i18n/ru.ts +6 -16
  173. package/src/tool/needleConverter/i18n/sv.ts +2 -12
  174. package/src/tool/needleConverter/i18n/tr.ts +2 -12
  175. package/src/tool/needleConverter/i18n/zh.ts +2 -12
  176. package/src/tool/needleConverter/index.ts +1 -0
  177. package/src/tool/needleConverter/seo.astro +1 -1
  178. package/src/tool/sewingPatternScaler/bibliography.astro +2 -10
  179. package/src/tool/sewingPatternScaler/bibliography.ts +12 -0
  180. package/src/tool/sewingPatternScaler/i18n/de.ts +2 -12
  181. package/src/tool/sewingPatternScaler/i18n/en.ts +2 -12
  182. package/src/tool/sewingPatternScaler/i18n/es.ts +2 -12
  183. package/src/tool/sewingPatternScaler/i18n/fr.ts +4 -14
  184. package/src/tool/sewingPatternScaler/i18n/id.ts +2 -12
  185. package/src/tool/sewingPatternScaler/i18n/it.ts +2 -12
  186. package/src/tool/sewingPatternScaler/i18n/ja.ts +2 -12
  187. package/src/tool/sewingPatternScaler/i18n/ko.ts +2 -12
  188. package/src/tool/sewingPatternScaler/i18n/nl.ts +2 -12
  189. package/src/tool/sewingPatternScaler/i18n/pl.ts +4 -14
  190. package/src/tool/sewingPatternScaler/i18n/pt.ts +2 -12
  191. package/src/tool/sewingPatternScaler/i18n/ru.ts +9 -19
  192. package/src/tool/sewingPatternScaler/i18n/sv.ts +2 -12
  193. package/src/tool/sewingPatternScaler/i18n/tr.ts +2 -12
  194. package/src/tool/sewingPatternScaler/i18n/zh.ts +5 -15
  195. package/src/tool/sewingPatternScaler/index.ts +1 -0
  196. package/src/tool/sewingPatternScaler/seo.astro +2 -36
  197. package/src/tool/shoeSizeConverter/bibliography.astro +2 -10
  198. package/src/tool/shoeSizeConverter/bibliography.ts +7 -0
  199. package/src/tool/shoeSizeConverter/i18n/de.ts +2 -7
  200. package/src/tool/shoeSizeConverter/i18n/en.ts +2 -7
  201. package/src/tool/shoeSizeConverter/i18n/es.ts +2 -7
  202. package/src/tool/shoeSizeConverter/i18n/fr.ts +3 -8
  203. package/src/tool/shoeSizeConverter/i18n/id.ts +2 -7
  204. package/src/tool/shoeSizeConverter/i18n/it.ts +2 -7
  205. package/src/tool/shoeSizeConverter/i18n/ja.ts +2 -7
  206. package/src/tool/shoeSizeConverter/i18n/ko.ts +2 -7
  207. package/src/tool/shoeSizeConverter/i18n/nl.ts +2 -7
  208. package/src/tool/shoeSizeConverter/i18n/pl.ts +2 -7
  209. package/src/tool/shoeSizeConverter/i18n/pt.ts +2 -7
  210. package/src/tool/shoeSizeConverter/i18n/ru.ts +6 -11
  211. package/src/tool/shoeSizeConverter/i18n/sv.ts +2 -7
  212. package/src/tool/shoeSizeConverter/i18n/tr.ts +2 -7
  213. package/src/tool/shoeSizeConverter/i18n/zh.ts +5 -10
  214. package/src/tool/shoeSizeConverter/index.ts +1 -0
  215. package/src/tool/shoeSizeConverter/seo.astro +2 -27
  216. package/src/tool/stainChemistry/bibliography.astro +2 -10
  217. package/src/tool/stainChemistry/bibliography.ts +16 -0
  218. package/src/tool/stainChemistry/i18n/de.ts +5 -19
  219. package/src/tool/stainChemistry/i18n/en.ts +5 -19
  220. package/src/tool/stainChemistry/i18n/es.ts +5 -19
  221. package/src/tool/stainChemistry/i18n/fr.ts +8 -22
  222. package/src/tool/stainChemistry/i18n/id.ts +5 -19
  223. package/src/tool/stainChemistry/i18n/it.ts +5 -19
  224. package/src/tool/stainChemistry/i18n/ja.ts +5 -19
  225. package/src/tool/stainChemistry/i18n/ko.ts +5 -19
  226. package/src/tool/stainChemistry/i18n/nl.ts +5 -19
  227. package/src/tool/stainChemistry/i18n/pl.ts +5 -19
  228. package/src/tool/stainChemistry/i18n/pt.ts +5 -19
  229. package/src/tool/stainChemistry/i18n/ru.ts +9 -23
  230. package/src/tool/stainChemistry/i18n/sv.ts +5 -19
  231. package/src/tool/stainChemistry/i18n/tr.ts +5 -19
  232. package/src/tool/stainChemistry/i18n/zh.ts +9 -23
  233. package/src/tool/stainChemistry/index.ts +1 -0
  234. package/src/tool/stainChemistry/seo.astro +2 -27
  235. package/src/tool/yarnCalculator/bibliography.astro +2 -10
  236. package/src/tool/yarnCalculator/bibliography.ts +16 -0
  237. package/src/tool/yarnCalculator/i18n/de.ts +2 -16
  238. package/src/tool/yarnCalculator/i18n/en.ts +2 -16
  239. package/src/tool/yarnCalculator/i18n/es.ts +2 -16
  240. package/src/tool/yarnCalculator/i18n/fr.ts +6 -20
  241. package/src/tool/yarnCalculator/i18n/id.ts +2 -16
  242. package/src/tool/yarnCalculator/i18n/it.ts +2 -16
  243. package/src/tool/yarnCalculator/i18n/ja.ts +2 -16
  244. package/src/tool/yarnCalculator/i18n/ko.ts +2 -16
  245. package/src/tool/yarnCalculator/i18n/nl.ts +2 -16
  246. package/src/tool/yarnCalculator/i18n/pl.ts +2 -16
  247. package/src/tool/yarnCalculator/i18n/pt.ts +2 -16
  248. package/src/tool/yarnCalculator/i18n/ru.ts +9 -23
  249. package/src/tool/yarnCalculator/i18n/sv.ts +2 -16
  250. package/src/tool/yarnCalculator/i18n/tr.ts +2 -16
  251. package/src/tool/yarnCalculator/i18n/zh.ts +7 -21
  252. package/src/tool/yarnCalculator/index.ts +1 -0
  253. package/src/tool/yarnCalculator/seo.astro +2 -1
  254. package/src/types.ts +2 -4
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'protocolo-quimico-manchas';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Vino Tinto / Fruta',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Remojo prolongado' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Remojo prolongado' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta directa' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Oxidación Controlada',
235
+ title: '01: Oxidación Controlada',
235
236
  icon: 'mdi:atom',
236
237
  html: 'El <strong>percarbonato de sodio</strong> libera oxígeno activo que rompe las dobles ligaduras de los cromóforos (las moléculas responsables del color de la mancha), volviéndolas incoloras y solubles en agua. Es el método más eficaz para manchas orgánicas.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Solubilización por Solventes',
241
+ title: '02: Solubilización por Solventes',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Manchas como el aceite o la tinta no son solubles en agua. Solventes como el <strong>alcohol isopropílico</strong> o la <strong>acetona</strong> reducen la tensión superficial y atraen las moléculas no polares de la mancha, permitiendo que se transfieran a un medio de soporte.',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: 'El <strong>alcohol isopropílico</strong> es más estable, pero en sintéticos teñidos puede arrastrar el propio pigmento. Recomendamos siempre la "prueba del dobladillo" en una zona no visible antes del tratamiento principal.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Preguntas Frecuentes',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Bibliografía',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,11 +1,12 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'protocole-chimique-taches';
6
7
  const title = 'Protocole Chimique des Taches Textiles';
7
8
  const description =
8
- 'Protocoles scientifiques pour éliminer les taches selon le type de fibre et la nature chimique de la tache. Percarbonate, enzymes, solvants : la bonne méthode pour chaque cas.';
9
+ 'Protocoles scientifiques pour éliminer les taches selon le type de fibre et la nature chimique de la tache. Percarbonate, enzymes, solvants: la bonne méthode pour chaque cas.';
9
10
 
10
11
  const faqData = [
11
12
  {
@@ -156,7 +157,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
156
157
  protocols: {
157
158
  natural: {
158
159
  agentId: 'percarbonate',
159
- temperature: '4060°C',
160
+ temperature: '40-60°C',
160
161
  method: 'Trempage prolongé',
161
162
  },
162
163
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pâte directe' },
@@ -241,19 +242,19 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
241
242
  },
242
243
  {
243
244
  type: 'card',
244
- title: '01 Oxydation Contrôlée',
245
+ title: '01: Oxydation Contrôlée',
245
246
  icon: 'mdi:atom',
246
247
  html: 'Le <strong>percarbonate de sodium</strong> libère de l\'oxygène actif qui brise les doubles liaisons des chromophores (les molécules responsables de la couleur de la tache), les rendant incolores et solubles dans l\'eau. C\'est la méthode la plus efficace pour les taches organiques.',
247
248
  },
248
249
  {
249
250
  type: 'card',
250
- title: '02 Solubilisation par Solvants',
251
+ title: '02: Solubilisation par Solvants',
251
252
  icon: 'mdi:flask-outline',
252
253
  html: 'Les taches comme l\'huile ou l\'encre ne sont pas solubles dans l\'eau. Des solvants tels que l\'<strong>alcool isopropylique</strong> ou l\'<strong>acétone</strong> réduisent la tension de surface et attirent les molécules apolaires de la tache, leur permettant d\'être transférées sur un support.',
253
254
  },
254
255
  {
255
256
  type: 'title',
256
- text: 'La Souveraineté des Fibres : Pourquoi le Type de Fibre Compte',
257
+ text: 'La Souveraineté des Fibres: Pourquoi le Type de Fibre Compte',
257
258
  level: 2,
258
259
  },
259
260
  {
@@ -271,7 +272,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
271
272
  },
272
273
  {
273
274
  type: 'tip',
274
- title: 'Protocole d\'Urgence : Vin Rouge',
275
+ title: 'Protocole d\'Urgence: Vin Rouge',
275
276
  html: '<strong>A. Absorption passive :</strong> Tamponner avec du papier absorbant, ne jamais frotter pour éviter l\'expansion mécanique.<br><strong>B. Neutralisation osmotique :</strong> Couvrir de sel fin pour attirer le liquide vers l\'extérieur du noyau de la fibre.<br><strong>C. Action chimique :</strong> Appliquer une pâte de percarbonate et d\'eau à 40°C si la fibre supporte la chaleur.',
276
277
  },
277
278
  {
@@ -288,23 +289,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
288
289
  html: 'L\'<strong>alcool isopropylique</strong> est plus stable, mais sur les synthétiques teints, il peut entraîner le pigment lui-même. Nous recommandons toujours le "test de l\'ourlet" sur une zone cachée avant le traitement principal.',
289
290
  },
290
291
  ],
291
- faqTitle: 'Questions Fréquentes',
292
292
  faq: faqData,
293
- bibliographyTitle: 'Bibliographie',
294
- bibliography: [
295
- {
296
- name: 'AATCC — Association for Advancing Color Technology and Chemistry',
297
- url: 'https://www.aatcc.org',
298
- },
299
- {
300
- name: 'Kissa, E. — Textile Auxiliaries',
301
- url: 'https://www.springer.com/gp/book/9783642057328',
302
- },
303
- {
304
- name: 'ISO 105 — Tests de solidité des coloris',
305
- url: 'https://www.iso.org/standard/72682.html',
306
- },
307
- ],
293
+ bibliography: bibliography,
308
294
  howTo: howToData,
309
295
  schemas: [faqSchema, howToSchema, appSchema],
310
296
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'protokol-kimia-noda-tekstil';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Anggur Merah / Buah',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Perendaman lama' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Perendaman lama' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta langsung' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Oksidasi Terkontrol',
235
+ title: '01: Oksidasi Terkontrol',
235
236
  icon: 'mdi:atom',
236
237
  html: '<strong>Natrium perkarbonat</strong> melepaskan oksigen aktif yang memecah ikatan rangkap kromofor (molekul yang bertanggung jawab atas warna noda), menjadikannya tidak berwarna dan larut dalam air. Ini adalah metode paling efektif untuk noda organik.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Kelarutan oleh Pelarut',
241
+ title: '02: Kelarutan oleh Pelarut',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Noda seperti minyak atau tinta tidak larut dalam air. Pelarut seperti <strong>isopropil alkohol</strong> atau <strong>aseton</strong> mengurangi tegangan permukaan dan menarik molekul non-polar noda, memungkinkannya berpindah ke media pendukung.',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: '<strong>Isopropil alkohol</strong> lebih stabil, tetapi pada sintetik berwarna dapat menarik pigmen itu sendiri. Kami selalu menyarankan untuk melakukan "tes keliman" pada bagian yang tidak terlihat sebelum perawatan utama.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Pertanyaan yang Sering Diajukan',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Referensi',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'protocollo-chimico-macchie-tessili';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Vino Rosso / Frutta',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Ammollo prolungato' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Ammollo prolungato' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta diretta' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Ossidazione Controllata',
235
+ title: '01: Ossidazione Controllata',
235
236
  icon: 'mdi:atom',
236
237
  html: 'Il <strong>percarbonato di sodio</strong> rilascia ossigeno attivo che rompe i doppi legami dei cromofori (le molecole responsabili del colore della macchia), rendendoli incolori e solubili in acqua. È il metodo più efficace per le macchie organiche.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Solubilizzazione tramite Solventi',
241
+ title: '02: Solubilizzazione tramite Solventi',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: "Macchie come l'olio o l'inchiostro non sono solubili in acqua. Solventi come l'<strong>alcol isopropilico</strong> o l'<strong>acetone</strong> riducono la tensione superficiale e attirano le molecole non polari della macchia, permettendo loro di trasferirsi su un mezzo di supporto.",
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: "L'<strong>alcol isopropilico</strong> è più stabile, ma sui sintetici tinti può trascinare il pigmento stesso. Raccomandiamo sempre la 'prova dell'orlo' in una zona non visibile prima del trattamento principale.",
279
280
  },
280
281
  ],
281
- faqTitle: 'Domande Frequenti',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Bibliografia',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'stain-chemical-protocol';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: '赤ワイン / 果物',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: '長時間のつけ置き' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: '長時間のつけ置き' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: '直接ペーストを塗布' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 制御された酸化作用',
235
+ title: '01: 制御された酸化作用',
235
236
  icon: 'mdi:atom',
236
237
  html: '<strong>過炭酸ナトリウム</strong>は活性酸素を放出し、色素分子(シミの色の原因)の二重結合を切断することで、シミを無色化し水に溶けやすくします。有機系のシミに最も効果的な方法です。',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 溶剤による溶解作用',
241
+ title: '02: 溶剤による溶解作用',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'オイルやインクのようなシミは水に溶けません。<strong>イソプロピルアルコール</strong>や<strong>アセトン</strong>のような溶剤は、表面張力を下げてシミの非極性分子を引きつけ、支持媒体へと移動させることができます。',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: '<strong>イソプロピルアルコール</strong>はより安定していますが、染められた合成繊維では顔料そのものを引き抜いてしまうことがあります。本処理の前に必ず「縫い代テスト」などの目立たない場所での確認を推奨します。',
279
280
  },
280
281
  ],
281
- faqTitle: 'よくある質問',
282
282
  faq: faqData,
283
- bibliographyTitle: '参考文献',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'stain-chemical-protocol';
@@ -149,7 +150,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
149
150
  id: 'wine',
150
151
  name: '레드 와인 / 과일',
151
152
  protocols: {
152
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: '장시간 담그기' },
153
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: '장시간 담그기' },
153
154
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: '페이스트 직접 도포' },
154
155
  delicate: {
155
156
  agentId: 'vinegar',
@@ -228,13 +229,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
228
229
  },
229
230
  {
230
231
  type: 'card',
231
- title: '01 조절된 산화 작용',
232
+ title: '01: 조절된 산화 작용',
232
233
  icon: 'mdi:atom',
233
234
  html: '<strong>과탄산나트륨</strong>은 활성산소를 방출하여 색소 분자(얼룩의 색 원인)의 이중 결합을 끊어 얼룩을 무색화하고 물에 용해되기 쉬운 상태로 만듭니다. 유기물 얼룩에 가장 효과적인 방법입니다.',
234
235
  },
235
236
  {
236
237
  type: 'card',
237
- title: '02 용제에 의한 용해',
238
+ title: '02: 용제에 의한 용해',
238
239
  icon: 'mdi:flask-outline',
239
240
  html: '기름이나 잉크 같은 얼룩은 물에 녹지 않습니다. <strong>이소프로필 알코올</strong>이나 <strong>아세톤</strong> 같은 용제는 표면 장력을 낮추고 얼룩의 비극성 분자를 끌어당겨 천 등으로 옮겨갈 수 있게 합니다.',
240
241
  },
@@ -275,23 +276,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
275
276
  html: '<strong>이소프로필 알코올</strong>은 비교적 안정적이지만, 염색된 합성 원단에서는 색상 자체를 빼낼 수 있습니다. 본격적인 처리에 앞서 항상 "안쪽 시접" 부위에 먼저 테스트해보는 것을 권장합니다.',
276
277
  },
277
278
  ],
278
- faqTitle: '자주 묻는 질문',
279
279
  faq: faqData,
280
- bibliographyTitle: '참고 문헌',
281
- bibliography: [
282
- {
283
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
284
- url: 'https://www.aatcc.org',
285
- },
286
- {
287
- name: 'Kissa, E. — Textile Auxiliaries',
288
- url: 'https://www.springer.com/gp/book/9783642057328',
289
- },
290
- {
291
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
292
- url: 'https://www.iso.org/standard/72682.html',
293
- },
294
- ],
280
+ bibliography: bibliography,
295
281
  howTo: howToData,
296
282
  schemas: [faqSchema, howToSchema, appSchema],
297
283
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'textielvlekken-chemisch-protocol';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Rode Wijn / Fruit',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Langdurig weken' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Langdurig weken' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Rechtstreekse pasta' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Gecontroleerde Oxidatie',
235
+ title: '01: Gecontroleerde Oxidatie',
235
236
  icon: 'mdi:atom',
236
237
  html: '<strong>Natriumpercarbonaat</strong> geeft actieve zuurstof af die de dubbele bindingen van chromoforen (de moleculen die verantwoordelijk zijn voor de kleur van de vlek) breekt, waardoor ze kleurloos en in water oplosbaar worden. Het is de meest effectieve methode voor organische vlekken.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Oplosbaar maken door Oplosmiddelen',
241
+ title: '02: Oplosbaar maken door Oplosmiddelen',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Vlekken zoals olie of inkt zijn niet oplosbaar in water. Oplosmiddelen zoals <strong>isopropylalcohol</strong> of <strong>aceton</strong> verlagen de oppervlaktespanning en trekken de niet-polaire moleculen van de vlek aan, waardoor ze kunnen worden overgedragen op een drager.',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: '<strong>Isopropylalcohol</strong> is stabieler, maar op geverfde synthetische stoffen kan het het pigment zelf meeslepen. We raden altijd de "zoomtest" aan op een onopvallende plek voor de hoofdbehandeling.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Veelgestelde Vragen',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Bibliografie',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'chemiczny-protokol-plam-tekstylnych';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Czerwone Wino / Owoce',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Długotrwałe moczenie' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Długotrwałe moczenie' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Bezpośrednia pasta' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Kontrolowane Utlenianie',
235
+ title: '01: Kontrolowane Utlenianie',
235
236
  icon: 'mdi:atom',
236
237
  html: '<strong>Nadwęglan sodu</strong> uwalnia aktywny tlen, który rozrywa podwójne wiązania chromoforów (cząsteczek odpowiedzialnych za kolor plamy), czyniąc je bezbarwnymi i rozpuszczalnymi w wodzie. Jest to najskuteczniejsza metoda na plamy organiczne.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Solubilizacja przez Rozpuszczalniki',
241
+ title: '02: Solubilizacja przez Rozpuszczalniki',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Plamy takie jak olej czy atrament nie rozpuszczają się w wodzie. Rozpuszczalniki, takie jak <strong>alkohol izopropylowy</strong> lub <strong>aceton</strong>, zmniejszają napięcie powierzchniowe i przyciągają niepolarne cząsteczki plamy, pozwalając im przenieść się na podłoże pomocnicze.',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: '<strong>Alkohol izopropylowy</strong> jest stabilniejszy, ale na barwionych syntetykach może wyciągać sam pigment. Przed głównym zabiegiem zawsze zalecamy "test na rąbku" w niewidocznym miejscu.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Najczęściej Zadawane Pytania',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Bibliografia',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'protocolo-quimico-manchas-texteis';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Vinho Tinto / Fruta',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Demolha prolongada' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Demolha prolongada' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Pasta directa' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Oxidação Controlada',
235
+ title: '01: Oxidação Controlada',
235
236
  icon: 'mdi:atom',
236
237
  html: 'O <strong>percarbonato de sódio</strong> liberta oxigénio activo que quebra as duplas ligações dos cromóforos (as moléculas responsáveis pela cor da mancha), tornando-as incolores e solúveis em água. É o método mais eficaz para manchas orgânicas.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Solubilização por Solventes',
241
+ title: '02: Solubilização por Solventes',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Manchas como o óleo ou a tinta não são solúveis em água. Solventes como o <strong>álcool isopropílico</strong> ou a <strong>acetona</strong> reduzem a tensão superficial e atraem as moléculas não polares da mancha, permitindo que se transfiram para um meio de suporte.',
243
244
  },
@@ -278,23 +279,8 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
278
279
  html: 'O <strong>álcool isopropílico</strong> é mais estável, mas em sintéticos tingidos pode arrastar o próprio pigmento. Recomendamos sempre o "teste da bainha" numa zona não visível antes do tratamento principal.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Perguntas Frequentes',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Bibliografia',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };
@@ -1,5 +1,6 @@
1
1
  import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
2
  import type { ToolLocaleContent } from '../../../types';
3
+ import { bibliography } from '../bibliography';
3
4
  import type { StainChemistryUI } from '../ui';
4
5
 
5
6
  const slug = 'khimicheskij-protokol-udaleniya-pyaten';
@@ -152,7 +153,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
152
153
  id: 'wine',
153
154
  name: 'Красное вино / Фрукты',
154
155
  protocols: {
155
- natural: { agentId: 'percarbonate', temperature: '4060°C', method: 'Длительное замачивание' },
156
+ natural: { agentId: 'percarbonate', temperature: '40-60°C', method: 'Длительное замачивание' },
156
157
  synthetic: { agentId: 'percarbonate', temperature: '40°C', method: 'Нанесение пасты' },
157
158
  delicate: {
158
159
  agentId: 'vinegar',
@@ -231,13 +232,13 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
231
232
  },
232
233
  {
233
234
  type: 'card',
234
- title: '01 Контролируемое окисление',
235
+ title: '01: Контролируемое окисление',
235
236
  icon: 'mdi:atom',
236
237
  html: '<strong>Перкарбонат натрия</strong> выделяет активный кислород, который разрывает двойные связи хромофоров (молекул, отвечающих за цвет пятна), делая их бесцветными и водорастворимыми. Это самый эффективный метод для органических пятен.',
237
238
  },
238
239
  {
239
240
  type: 'card',
240
- title: '02 Растворение растворителями',
241
+ title: '02: Растворение растворителями',
241
242
  icon: 'mdi:flask-outline',
242
243
  html: 'Пятна от масла или чернил не растворяются в воде. Растворители, такие как <strong>изопропиловый спирт</strong> или <strong>ацетон</strong>, снижают поверхностное натяжение и притягивают неполярные молекулы пятна, позволяя им переноситься на подложку.',
243
244
  },
@@ -248,7 +249,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
248
249
  },
249
250
  {
250
251
  type: 'paragraph',
251
- html: 'Не все волокна «едятся» одинаково. <strong>Шелк и шерсть</strong>это белки (фиброин и кератин). Если вы без контроля примените энзимное средство, предназначенное для «поедания белков» (пятна крови или яйца), моющее средство начнет разрушать само волокно, уничтожая блеск и структуру ткани.',
252
+ html: 'Не все волокна "едятся" одинаково. <strong>Шелк и шерсть</strong> - это белки (фиброин и кератин). Если вы без контроля примените энзимное средство, предназначенное для "поедания белков" (пятна крови или яйца), моющее средство начнет разрушать само волокно, уничтожая блеск и структуру ткани.',
252
253
  },
253
254
  {
254
255
  type: 'title',
@@ -257,7 +258,7 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
257
258
  },
258
259
  {
259
260
  type: 'paragraph',
260
- html: 'Одна из самых распространенных ошибокиспользование горячей воды для «размягчения» пятна крови. Химически тепло вызывает <strong>коагуляцию белков</strong> пятна, навсегда закрепляя их в пористой структуре волокна. Белковые пятна всегда следует обрабатывать холодной водой.',
261
+ html: 'Одна из самых распространенных ошибок - использование горячей воды для "размягчения" пятна крови. Химически тепло вызывает <strong>коагуляцию белков</strong> пятна, навсегда закрепляя их в пористой структуре волокна. Белковые пятна всегда следует обрабатывать холодной водой.',
261
262
  },
262
263
  {
263
264
  type: 'tip',
@@ -271,30 +272,15 @@ export const content: ToolLocaleContent<StainChemistryUI> = {
271
272
  },
272
273
  {
273
274
  type: 'paragraph',
274
- html: '<strong>Ацетон</strong>исключительный растворитель для лаков для ногтей или клея, но он губителен для <strong>ацетата</strong>. Будучи волокнами, производными от целлюлозы, но химически обработанными, ацетон буквально растворяет ткань.',
275
+ html: '<strong>Ацетон</strong> - исключительный растворитель для лаков для ногтей или клея, но он губителен для <strong>ацетата</strong>. Будучи волокнами, производными от целлюлозы, но химически обработанными, ацетон буквально растворяет ткань.',
275
276
  },
276
277
  {
277
278
  type: 'paragraph',
278
- html: '<strong>Изопропиловый спирт</strong> более стабилен, но на окрашенной синтетике он может вымывать сам пигмент. Мы всегда рекомендуем проводить «тест на шве» на незаметном участке перед основной обработкой.',
279
+ html: '<strong>Изопропиловый спирт</strong> более стабилен, но на окрашенной синтетике он может вымывать сам пигмент. Мы всегда рекомендуем проводить "тест на шве" на незаметном участке перед основной обработкой.',
279
280
  },
280
281
  ],
281
- faqTitle: 'Часто задаваемые вопросы',
282
282
  faq: faqData,
283
- bibliographyTitle: 'Библиография',
284
- bibliography: [
285
- {
286
- name: 'AATCC - Association for Advancing Color Technology and Chemistry',
287
- url: 'https://www.aatcc.org',
288
- },
289
- {
290
- name: 'Kissa, E. — Textile Auxiliaries',
291
- url: 'https://www.springer.com/gp/book/9783642057328',
292
- },
293
- {
294
- name: 'ISO 105 — Textiles: Tests for Colour Fastness',
295
- url: 'https://www.iso.org/standard/72682.html',
296
- },
297
- ],
283
+ bibliography: bibliography,
298
284
  howTo: howToData,
299
285
  schemas: [faqSchema, howToSchema, appSchema],
300
286
  };