@jjlmoya/utils-chrono 1.2.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 (277) hide show
  1. package/package.json +65 -0
  2. package/scripts/postinstall.mjs +27 -0
  3. package/src/category/ChronoCategorySEO.astro +8 -0
  4. package/src/category/i18n/de.ts +23 -0
  5. package/src/category/i18n/en.ts +23 -0
  6. package/src/category/i18n/es.ts +23 -0
  7. package/src/category/i18n/fr.ts +23 -0
  8. package/src/category/i18n/id.ts +23 -0
  9. package/src/category/i18n/it.ts +23 -0
  10. package/src/category/i18n/ja.ts +23 -0
  11. package/src/category/i18n/ko.ts +23 -0
  12. package/src/category/i18n/nl.ts +23 -0
  13. package/src/category/i18n/pl.ts +23 -0
  14. package/src/category/i18n/pt.ts +23 -0
  15. package/src/category/i18n/ru.ts +23 -0
  16. package/src/category/i18n/sv.ts +23 -0
  17. package/src/category/i18n/tr.ts +23 -0
  18. package/src/category/i18n/zh.ts +23 -0
  19. package/src/category/index.ts +42 -0
  20. package/src/components/PreviewNavSidebar.astro +116 -0
  21. package/src/components/PreviewToolbar.astro +143 -0
  22. package/src/data.ts +11 -0
  23. package/src/entries.ts +32 -0
  24. package/src/env.d.ts +5 -0
  25. package/src/index.ts +28 -0
  26. package/src/layouts/PreviewLayout.astro +117 -0
  27. package/src/pages/[locale]/[slug].astro +161 -0
  28. package/src/pages/[locale].astro +251 -0
  29. package/src/pages/index.astro +4 -0
  30. package/src/tests/faq_count.test.ts +19 -0
  31. package/src/tests/i18n_coverage.test.ts +36 -0
  32. package/src/tests/locale_completeness.test.ts +29 -0
  33. package/src/tests/mocks/astro_mock.js +2 -0
  34. package/src/tests/no_h1_in_components.test.ts +48 -0
  35. package/src/tests/schemas_fulfillment.test.ts +23 -0
  36. package/src/tests/seo_length.test.ts +22 -0
  37. package/src/tests/shared-test-helpers.ts +56 -0
  38. package/src/tests/slug_language_code_format.test.ts +23 -0
  39. package/src/tests/slug_uniqueness.test.ts +81 -0
  40. package/src/tests/title_quality.test.ts +55 -0
  41. package/src/tests/tool_exports.test.ts +34 -0
  42. package/src/tests/tool_validation.test.ts +18 -0
  43. package/src/tool/beat-rate-converter/beat-rate-converter.css +301 -0
  44. package/src/tool/beat-rate-converter/bibliography.astro +16 -0
  45. package/src/tool/beat-rate-converter/bibliography.ts +12 -0
  46. package/src/tool/beat-rate-converter/client.ts +46 -0
  47. package/src/tool/beat-rate-converter/component.astro +15 -0
  48. package/src/tool/beat-rate-converter/components/ConverterPanel.astro +87 -0
  49. package/src/tool/beat-rate-converter/entry.ts +42 -0
  50. package/src/tool/beat-rate-converter/i18n/de.ts +138 -0
  51. package/src/tool/beat-rate-converter/i18n/en.ts +138 -0
  52. package/src/tool/beat-rate-converter/i18n/es.ts +138 -0
  53. package/src/tool/beat-rate-converter/i18n/fr.ts +138 -0
  54. package/src/tool/beat-rate-converter/i18n/id.ts +138 -0
  55. package/src/tool/beat-rate-converter/i18n/it.ts +138 -0
  56. package/src/tool/beat-rate-converter/i18n/ja.ts +138 -0
  57. package/src/tool/beat-rate-converter/i18n/ko.ts +138 -0
  58. package/src/tool/beat-rate-converter/i18n/nl.ts +138 -0
  59. package/src/tool/beat-rate-converter/i18n/pl.ts +138 -0
  60. package/src/tool/beat-rate-converter/i18n/pt.ts +138 -0
  61. package/src/tool/beat-rate-converter/i18n/ru.ts +138 -0
  62. package/src/tool/beat-rate-converter/i18n/sv.ts +138 -0
  63. package/src/tool/beat-rate-converter/i18n/tr.ts +138 -0
  64. package/src/tool/beat-rate-converter/i18n/zh.ts +138 -0
  65. package/src/tool/beat-rate-converter/index.ts +11 -0
  66. package/src/tool/beat-rate-converter/seo.astro +16 -0
  67. package/src/tool/crown-reference-guide/bibliography.astro +16 -0
  68. package/src/tool/crown-reference-guide/bibliography.ts +20 -0
  69. package/src/tool/crown-reference-guide/client.ts +193 -0
  70. package/src/tool/crown-reference-guide/component.astro +69 -0
  71. package/src/tool/crown-reference-guide/components/CrownView.astro +40 -0
  72. package/src/tool/crown-reference-guide/components/MovementSelector.astro +26 -0
  73. package/src/tool/crown-reference-guide/components/PositionPanel.astro +59 -0
  74. package/src/tool/crown-reference-guide/crown-reference-guide.css +383 -0
  75. package/src/tool/crown-reference-guide/entry.ts +60 -0
  76. package/src/tool/crown-reference-guide/i18n/de.ts +207 -0
  77. package/src/tool/crown-reference-guide/i18n/en.ts +207 -0
  78. package/src/tool/crown-reference-guide/i18n/es.ts +207 -0
  79. package/src/tool/crown-reference-guide/i18n/fr.ts +207 -0
  80. package/src/tool/crown-reference-guide/i18n/id.ts +207 -0
  81. package/src/tool/crown-reference-guide/i18n/it.ts +207 -0
  82. package/src/tool/crown-reference-guide/i18n/ja.ts +207 -0
  83. package/src/tool/crown-reference-guide/i18n/ko.ts +207 -0
  84. package/src/tool/crown-reference-guide/i18n/nl.ts +207 -0
  85. package/src/tool/crown-reference-guide/i18n/pl.ts +207 -0
  86. package/src/tool/crown-reference-guide/i18n/pt.ts +207 -0
  87. package/src/tool/crown-reference-guide/i18n/ru.ts +207 -0
  88. package/src/tool/crown-reference-guide/i18n/sv.ts +207 -0
  89. package/src/tool/crown-reference-guide/i18n/tr.ts +207 -0
  90. package/src/tool/crown-reference-guide/i18n/zh.ts +207 -0
  91. package/src/tool/crown-reference-guide/index.ts +11 -0
  92. package/src/tool/crown-reference-guide/seo.astro +16 -0
  93. package/src/tool/crown-reference-guide/utils.ts +0 -0
  94. package/src/tool/demagnetizing-timer/bibliography.astro +16 -0
  95. package/src/tool/demagnetizing-timer/bibliography.ts +12 -0
  96. package/src/tool/demagnetizing-timer/client.ts +221 -0
  97. package/src/tool/demagnetizing-timer/component.astro +15 -0
  98. package/src/tool/demagnetizing-timer/components/TimerPanel.astro +92 -0
  99. package/src/tool/demagnetizing-timer/demagnetizing-timer.css +389 -0
  100. package/src/tool/demagnetizing-timer/entry.ts +50 -0
  101. package/src/tool/demagnetizing-timer/helpers/field.ts +134 -0
  102. package/src/tool/demagnetizing-timer/i18n/de.ts +143 -0
  103. package/src/tool/demagnetizing-timer/i18n/en.ts +143 -0
  104. package/src/tool/demagnetizing-timer/i18n/es.ts +143 -0
  105. package/src/tool/demagnetizing-timer/i18n/fr.ts +143 -0
  106. package/src/tool/demagnetizing-timer/i18n/id.ts +143 -0
  107. package/src/tool/demagnetizing-timer/i18n/it.ts +143 -0
  108. package/src/tool/demagnetizing-timer/i18n/ja.ts +143 -0
  109. package/src/tool/demagnetizing-timer/i18n/ko.ts +143 -0
  110. package/src/tool/demagnetizing-timer/i18n/nl.ts +143 -0
  111. package/src/tool/demagnetizing-timer/i18n/pl.ts +143 -0
  112. package/src/tool/demagnetizing-timer/i18n/pt.ts +143 -0
  113. package/src/tool/demagnetizing-timer/i18n/ru.ts +143 -0
  114. package/src/tool/demagnetizing-timer/i18n/sv.ts +143 -0
  115. package/src/tool/demagnetizing-timer/i18n/tr.ts +143 -0
  116. package/src/tool/demagnetizing-timer/i18n/zh.ts +143 -0
  117. package/src/tool/demagnetizing-timer/index.ts +11 -0
  118. package/src/tool/demagnetizing-timer/seo.astro +16 -0
  119. package/src/tool/demagnetizing-timer/utils.ts +0 -0
  120. package/src/tool/power-reserve-estimator/bibliography.astro +16 -0
  121. package/src/tool/power-reserve-estimator/bibliography.ts +16 -0
  122. package/src/tool/power-reserve-estimator/client.ts +139 -0
  123. package/src/tool/power-reserve-estimator/component.astro +15 -0
  124. package/src/tool/power-reserve-estimator/components/EstimatorPanel.astro +150 -0
  125. package/src/tool/power-reserve-estimator/entry.ts +51 -0
  126. package/src/tool/power-reserve-estimator/i18n/de.ts +158 -0
  127. package/src/tool/power-reserve-estimator/i18n/en.ts +158 -0
  128. package/src/tool/power-reserve-estimator/i18n/es.ts +158 -0
  129. package/src/tool/power-reserve-estimator/i18n/fr.ts +158 -0
  130. package/src/tool/power-reserve-estimator/i18n/id.ts +158 -0
  131. package/src/tool/power-reserve-estimator/i18n/it.ts +158 -0
  132. package/src/tool/power-reserve-estimator/i18n/ja.ts +158 -0
  133. package/src/tool/power-reserve-estimator/i18n/ko.ts +158 -0
  134. package/src/tool/power-reserve-estimator/i18n/nl.ts +158 -0
  135. package/src/tool/power-reserve-estimator/i18n/pl.ts +158 -0
  136. package/src/tool/power-reserve-estimator/i18n/pt.ts +158 -0
  137. package/src/tool/power-reserve-estimator/i18n/ru.ts +158 -0
  138. package/src/tool/power-reserve-estimator/i18n/sv.ts +158 -0
  139. package/src/tool/power-reserve-estimator/i18n/tr.ts +158 -0
  140. package/src/tool/power-reserve-estimator/i18n/zh.ts +158 -0
  141. package/src/tool/power-reserve-estimator/index.ts +11 -0
  142. package/src/tool/power-reserve-estimator/power-reserve-estimator.css +402 -0
  143. package/src/tool/power-reserve-estimator/seo.astro +16 -0
  144. package/src/tool/strap-taper-calculator/bibliography.astro +16 -0
  145. package/src/tool/strap-taper-calculator/bibliography.ts +12 -0
  146. package/src/tool/strap-taper-calculator/client.ts +129 -0
  147. package/src/tool/strap-taper-calculator/component.astro +15 -0
  148. package/src/tool/strap-taper-calculator/components/CalculatorPanel.astro +114 -0
  149. package/src/tool/strap-taper-calculator/entry.ts +56 -0
  150. package/src/tool/strap-taper-calculator/i18n/de.ts +152 -0
  151. package/src/tool/strap-taper-calculator/i18n/en.ts +152 -0
  152. package/src/tool/strap-taper-calculator/i18n/es.ts +152 -0
  153. package/src/tool/strap-taper-calculator/i18n/fr.ts +152 -0
  154. package/src/tool/strap-taper-calculator/i18n/id.ts +152 -0
  155. package/src/tool/strap-taper-calculator/i18n/it.ts +152 -0
  156. package/src/tool/strap-taper-calculator/i18n/ja.ts +152 -0
  157. package/src/tool/strap-taper-calculator/i18n/ko.ts +152 -0
  158. package/src/tool/strap-taper-calculator/i18n/nl.ts +152 -0
  159. package/src/tool/strap-taper-calculator/i18n/pl.ts +152 -0
  160. package/src/tool/strap-taper-calculator/i18n/pt.ts +152 -0
  161. package/src/tool/strap-taper-calculator/i18n/ru.ts +152 -0
  162. package/src/tool/strap-taper-calculator/i18n/sv.ts +152 -0
  163. package/src/tool/strap-taper-calculator/i18n/tr.ts +152 -0
  164. package/src/tool/strap-taper-calculator/i18n/zh.ts +152 -0
  165. package/src/tool/strap-taper-calculator/index.ts +11 -0
  166. package/src/tool/strap-taper-calculator/seo.astro +16 -0
  167. package/src/tool/strap-taper-calculator/strap-taper-calculator.css +320 -0
  168. package/src/tool/watch-accuracy-tracker/bibliography.astro +16 -0
  169. package/src/tool/watch-accuracy-tracker/bibliography.ts +12 -0
  170. package/src/tool/watch-accuracy-tracker/chart.ts +126 -0
  171. package/src/tool/watch-accuracy-tracker/client.ts +287 -0
  172. package/src/tool/watch-accuracy-tracker/component.astro +35 -0
  173. package/src/tool/watch-accuracy-tracker/components/AccuracyTracker.astro +96 -0
  174. package/src/tool/watch-accuracy-tracker/components/DriftPredictor.astro +126 -0
  175. package/src/tool/watch-accuracy-tracker/components/LogHistory.astro +66 -0
  176. package/src/tool/watch-accuracy-tracker/entry.ts +94 -0
  177. package/src/tool/watch-accuracy-tracker/i18n/de.ts +167 -0
  178. package/src/tool/watch-accuracy-tracker/i18n/en.ts +167 -0
  179. package/src/tool/watch-accuracy-tracker/i18n/es.ts +167 -0
  180. package/src/tool/watch-accuracy-tracker/i18n/fr.ts +167 -0
  181. package/src/tool/watch-accuracy-tracker/i18n/id.ts +167 -0
  182. package/src/tool/watch-accuracy-tracker/i18n/it.ts +167 -0
  183. package/src/tool/watch-accuracy-tracker/i18n/ja.ts +167 -0
  184. package/src/tool/watch-accuracy-tracker/i18n/ko.ts +167 -0
  185. package/src/tool/watch-accuracy-tracker/i18n/nl.ts +167 -0
  186. package/src/tool/watch-accuracy-tracker/i18n/pl.ts +167 -0
  187. package/src/tool/watch-accuracy-tracker/i18n/pt.ts +167 -0
  188. package/src/tool/watch-accuracy-tracker/i18n/ru.ts +167 -0
  189. package/src/tool/watch-accuracy-tracker/i18n/sv.ts +167 -0
  190. package/src/tool/watch-accuracy-tracker/i18n/tr.ts +167 -0
  191. package/src/tool/watch-accuracy-tracker/i18n/zh.ts +167 -0
  192. package/src/tool/watch-accuracy-tracker/index.ts +9 -0
  193. package/src/tool/watch-accuracy-tracker/logger.ts +105 -0
  194. package/src/tool/watch-accuracy-tracker/seo.astro +16 -0
  195. package/src/tool/watch-accuracy-tracker/utils.ts +99 -0
  196. package/src/tool/watch-accuracy-tracker/watch-accuracy-tracker.css +564 -0
  197. package/src/tool/watch-savings-planner/bibliography.astro +16 -0
  198. package/src/tool/watch-savings-planner/bibliography.ts +8 -0
  199. package/src/tool/watch-savings-planner/client.ts +271 -0
  200. package/src/tool/watch-savings-planner/component.astro +33 -0
  201. package/src/tool/watch-savings-planner/components/AddGoalForm.astro +49 -0
  202. package/src/tool/watch-savings-planner/components/GoalCard.astro +58 -0
  203. package/src/tool/watch-savings-planner/entry.ts +62 -0
  204. package/src/tool/watch-savings-planner/i18n/de.ts +153 -0
  205. package/src/tool/watch-savings-planner/i18n/en.ts +155 -0
  206. package/src/tool/watch-savings-planner/i18n/es.ts +153 -0
  207. package/src/tool/watch-savings-planner/i18n/fr.ts +153 -0
  208. package/src/tool/watch-savings-planner/i18n/id.ts +153 -0
  209. package/src/tool/watch-savings-planner/i18n/it.ts +153 -0
  210. package/src/tool/watch-savings-planner/i18n/ja.ts +153 -0
  211. package/src/tool/watch-savings-planner/i18n/ko.ts +153 -0
  212. package/src/tool/watch-savings-planner/i18n/nl.ts +153 -0
  213. package/src/tool/watch-savings-planner/i18n/pl.ts +153 -0
  214. package/src/tool/watch-savings-planner/i18n/pt.ts +153 -0
  215. package/src/tool/watch-savings-planner/i18n/ru.ts +153 -0
  216. package/src/tool/watch-savings-planner/i18n/sv.ts +153 -0
  217. package/src/tool/watch-savings-planner/i18n/tr.ts +153 -0
  218. package/src/tool/watch-savings-planner/i18n/zh.ts +153 -0
  219. package/src/tool/watch-savings-planner/index.ts +11 -0
  220. package/src/tool/watch-savings-planner/seo.astro +16 -0
  221. package/src/tool/watch-savings-planner/utils.ts +0 -0
  222. package/src/tool/watch-savings-planner/watch-savings-planner.css +460 -0
  223. package/src/tool/water-resistance-converter/bibliography.astro +16 -0
  224. package/src/tool/water-resistance-converter/bibliography.ts +16 -0
  225. package/src/tool/water-resistance-converter/client.ts +56 -0
  226. package/src/tool/water-resistance-converter/component.astro +15 -0
  227. package/src/tool/water-resistance-converter/components/ConverterPanel.astro +113 -0
  228. package/src/tool/water-resistance-converter/entry.ts +52 -0
  229. package/src/tool/water-resistance-converter/i18n/de.ts +148 -0
  230. package/src/tool/water-resistance-converter/i18n/en.ts +148 -0
  231. package/src/tool/water-resistance-converter/i18n/es.ts +148 -0
  232. package/src/tool/water-resistance-converter/i18n/fr.ts +148 -0
  233. package/src/tool/water-resistance-converter/i18n/id.ts +148 -0
  234. package/src/tool/water-resistance-converter/i18n/it.ts +148 -0
  235. package/src/tool/water-resistance-converter/i18n/ja.ts +148 -0
  236. package/src/tool/water-resistance-converter/i18n/ko.ts +148 -0
  237. package/src/tool/water-resistance-converter/i18n/nl.ts +148 -0
  238. package/src/tool/water-resistance-converter/i18n/pl.ts +148 -0
  239. package/src/tool/water-resistance-converter/i18n/pt.ts +148 -0
  240. package/src/tool/water-resistance-converter/i18n/ru.ts +148 -0
  241. package/src/tool/water-resistance-converter/i18n/sv.ts +148 -0
  242. package/src/tool/water-resistance-converter/i18n/tr.ts +148 -0
  243. package/src/tool/water-resistance-converter/i18n/zh.ts +148 -0
  244. package/src/tool/water-resistance-converter/index.ts +11 -0
  245. package/src/tool/water-resistance-converter/seo.astro +16 -0
  246. package/src/tool/water-resistance-converter/water-resistance-converter.css +254 -0
  247. package/src/tool/wrist-presence-calculator/bibliography.astro +16 -0
  248. package/src/tool/wrist-presence-calculator/bibliography.ts +12 -0
  249. package/src/tool/wrist-presence-calculator/client.ts +180 -0
  250. package/src/tool/wrist-presence-calculator/component.astro +23 -0
  251. package/src/tool/wrist-presence-calculator/components/CalculatorInputs.astro +97 -0
  252. package/src/tool/wrist-presence-calculator/components/FitResult.astro +68 -0
  253. package/src/tool/wrist-presence-calculator/components/Visualizer.astro +16 -0
  254. package/src/tool/wrist-presence-calculator/entry.ts +59 -0
  255. package/src/tool/wrist-presence-calculator/helpers/canvas.ts +189 -0
  256. package/src/tool/wrist-presence-calculator/helpers/results.ts +78 -0
  257. package/src/tool/wrist-presence-calculator/i18n/de.ts +139 -0
  258. package/src/tool/wrist-presence-calculator/i18n/en.ts +155 -0
  259. package/src/tool/wrist-presence-calculator/i18n/es.ts +139 -0
  260. package/src/tool/wrist-presence-calculator/i18n/fr.ts +139 -0
  261. package/src/tool/wrist-presence-calculator/i18n/id.ts +139 -0
  262. package/src/tool/wrist-presence-calculator/i18n/it.ts +139 -0
  263. package/src/tool/wrist-presence-calculator/i18n/ja.ts +139 -0
  264. package/src/tool/wrist-presence-calculator/i18n/ko.ts +139 -0
  265. package/src/tool/wrist-presence-calculator/i18n/nl.ts +139 -0
  266. package/src/tool/wrist-presence-calculator/i18n/pl.ts +139 -0
  267. package/src/tool/wrist-presence-calculator/i18n/pt.ts +139 -0
  268. package/src/tool/wrist-presence-calculator/i18n/ru.ts +139 -0
  269. package/src/tool/wrist-presence-calculator/i18n/sv.ts +139 -0
  270. package/src/tool/wrist-presence-calculator/i18n/tr.ts +139 -0
  271. package/src/tool/wrist-presence-calculator/i18n/zh.ts +155 -0
  272. package/src/tool/wrist-presence-calculator/index.ts +11 -0
  273. package/src/tool/wrist-presence-calculator/seo.astro +16 -0
  274. package/src/tool/wrist-presence-calculator/utils.ts +30 -0
  275. package/src/tool/wrist-presence-calculator/wrist-presence-calculator.css +372 -0
  276. package/src/tools.ts +26 -0
  277. package/src/types.ts +70 -0
@@ -0,0 +1,383 @@
1
+ .tool-main-card {
2
+ background: var(--bg-surface);
3
+ border: 1px solid var(--border-color);
4
+ border-radius: 1rem;
5
+ max-width: 620px;
6
+ margin: 0 auto;
7
+ padding: 1.25rem;
8
+ display: flex;
9
+ flex-direction: column;
10
+ gap: 0.875rem;
11
+ box-shadow: var(--shadow-base);
12
+
13
+ --color-white: #fff;
14
+ --color-cw: #22c55e;
15
+ --color-warning: #f59e0b;
16
+ }
17
+
18
+ .crown-top-row {
19
+ display: flex;
20
+ gap: 1rem;
21
+ align-items: stretch;
22
+ }
23
+
24
+ .crown-visual {
25
+ background: var(--bg-page);
26
+ border-radius: 0.75rem;
27
+ padding: 0.375rem 0.5rem;
28
+ border: 1px solid var(--border-base);
29
+ flex: 0 0 45%;
30
+ display: flex;
31
+ align-items: center;
32
+ }
33
+
34
+ .crown-svg {
35
+ width: 100%;
36
+ height: auto;
37
+ display: block;
38
+ }
39
+
40
+ .crown-tube {
41
+ fill: var(--crown-tube-fill, #b8b8c4);
42
+ stroke: var(--crown-tube-stroke, #9898a4);
43
+ stroke-width: 1;
44
+ }
45
+
46
+ .theme-dark .crown-tube {
47
+ --crown-tube-fill: #484858;
48
+ --crown-tube-stroke: #606070;
49
+ }
50
+
51
+ .crown-stem {
52
+ fill: var(--crown-stem-fill, #a8a8b4);
53
+ stroke: var(--crown-stem-stroke, #888898);
54
+ stroke-width: 0.8;
55
+ }
56
+
57
+ .theme-dark .crown-stem {
58
+ --crown-stem-fill: #505060;
59
+ --crown-stem-stroke: #686878;
60
+ }
61
+
62
+ .crown-head {
63
+ fill: var(--crown-head-fill, #c8c8d4);
64
+ stroke: var(--crown-head-stroke, #888898);
65
+ stroke-width: 1;
66
+ }
67
+
68
+ .theme-dark .crown-head {
69
+ --crown-head-fill: #555568;
70
+ --crown-head-stroke: #707080;
71
+ }
72
+
73
+ .crown-notch {
74
+ fill: var(--crown-notch-fill, #b0b0be);
75
+ }
76
+
77
+ .theme-dark .crown-notch {
78
+ --crown-notch-fill: #404050;
79
+ }
80
+
81
+ .crown-stem,
82
+ .crown-head {
83
+ transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
84
+ }
85
+
86
+ .arrow-cw,
87
+ .arrow-ccw {
88
+ transition: opacity 0.3s ease;
89
+ }
90
+
91
+ .arrow-bg {
92
+ fill: var(--bg-surface);
93
+ stroke: var(--border-base);
94
+ stroke-width: 1;
95
+ opacity: 0.9;
96
+ }
97
+
98
+ .arrow-path {
99
+ fill: none;
100
+ stroke-width: 3;
101
+ stroke-linecap: round;
102
+ }
103
+
104
+ .arrow-head {
105
+ stroke: none;
106
+ }
107
+
108
+ .arrow-text {
109
+ font-size: 8px;
110
+ font-weight: 700;
111
+ text-anchor: middle;
112
+ dominant-baseline: central;
113
+ }
114
+
115
+ .arrow-cw .arrow-path,
116
+ .arrow-cw .arrow-head {
117
+ stroke: var(--color-cw);
118
+ fill: var(--color-cw);
119
+ }
120
+
121
+ .arrow-cw .arrow-text {
122
+ fill: var(--color-cw);
123
+ }
124
+
125
+ .arrow-ccw .arrow-path,
126
+ .arrow-ccw .arrow-head {
127
+ stroke: var(--color-warning);
128
+ fill: var(--color-warning);
129
+ }
130
+
131
+ .arrow-ccw .arrow-text {
132
+ fill: var(--color-warning);
133
+ }
134
+
135
+ .crown-side {
136
+ flex: 1;
137
+ display: flex;
138
+ flex-direction: column;
139
+ gap: 0.5rem;
140
+ justify-content: center;
141
+ }
142
+
143
+ .movement-selector {
144
+ display: flex;
145
+ flex-direction: column;
146
+ gap: 0.2rem;
147
+ }
148
+
149
+ .selector-label {
150
+ display: flex;
151
+ align-items: center;
152
+ gap: 0.3rem;
153
+ font-size: 0.625rem;
154
+ font-weight: 600;
155
+ color: var(--text-dimmed);
156
+ text-transform: uppercase;
157
+ letter-spacing: 0.06em;
158
+ }
159
+
160
+ .movement-select {
161
+ padding: 0.4rem 0.5rem;
162
+ border: 1px solid var(--border-base);
163
+ border-radius: 0.5rem;
164
+ background: var(--bg-page);
165
+ color: var(--text-base);
166
+ font-size: 0.75rem;
167
+ outline: none;
168
+ cursor: pointer;
169
+ transition: border-color 0.2s;
170
+ -webkit-appearance: none;
171
+ appearance: none;
172
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 10l5 5 5-5z' fill='%23888'/%3E%3C/svg%3E");
173
+ background-repeat: no-repeat;
174
+ background-position: right 0.35rem center;
175
+ background-size: 0.875rem;
176
+ padding-right: 1.4rem;
177
+ }
178
+
179
+ .movement-select:focus {
180
+ border-color: var(--accent);
181
+ }
182
+
183
+ .pos-bar {
184
+ display: flex;
185
+ gap: 0.3rem;
186
+ }
187
+
188
+ .pos-chip {
189
+ display: flex;
190
+ flex-direction: column;
191
+ align-items: center;
192
+ gap: 0.1rem;
193
+ padding: 0.35rem 0.3rem;
194
+ border: 1.5px solid var(--border-base);
195
+ border-radius: 0.5rem;
196
+ background: var(--bg-page);
197
+ cursor: pointer;
198
+ transition: all 0.2s ease;
199
+ flex: 1;
200
+ min-width: 0;
201
+ }
202
+
203
+ .pos-chip:hover {
204
+ border-color: var(--accent);
205
+ }
206
+
207
+ .pos-chip.active {
208
+ border-color: var(--accent);
209
+ background: var(--accent);
210
+ }
211
+
212
+ .chip-num {
213
+ font-size: 0.875rem;
214
+ font-weight: 700;
215
+ color: var(--text-dimmed);
216
+ line-height: 1;
217
+ transition: color 0.2s;
218
+ }
219
+
220
+ .pos-chip.active .chip-num {
221
+ color: var(--color-white);
222
+ }
223
+
224
+ .chip-label {
225
+ font-size: 0.5rem;
226
+ font-weight: 600;
227
+ color: var(--text-dimmed);
228
+ text-transform: uppercase;
229
+ letter-spacing: 0.06em;
230
+ transition: color 0.2s;
231
+ }
232
+
233
+ .pos-chip.active .chip-label {
234
+ color: var(--color-white);
235
+ }
236
+
237
+ .position-panel {
238
+ background: var(--bg-page);
239
+ border: 1px solid var(--border-base);
240
+ border-radius: 0.75rem;
241
+ overflow: hidden;
242
+ }
243
+
244
+ .panel-header {
245
+ display: flex;
246
+ align-items: center;
247
+ justify-content: space-between;
248
+ padding: 0.625rem 0.875rem;
249
+ border-bottom: 1px solid var(--border-base);
250
+ }
251
+
252
+ .position-indicator {
253
+ display: flex;
254
+ align-items: center;
255
+ gap: 0.5rem;
256
+ }
257
+
258
+ .position-badge {
259
+ width: 1.5rem;
260
+ height: 1.5rem;
261
+ border-radius: 50%;
262
+ background: var(--accent);
263
+ color: var(--color-white);
264
+ font-size: 0.6875rem;
265
+ font-weight: 700;
266
+ display: flex;
267
+ align-items: center;
268
+ justify-content: center;
269
+ flex-shrink: 0;
270
+ }
271
+
272
+ .position-name {
273
+ font-size: 0.8125rem;
274
+ font-weight: 700;
275
+ color: var(--text-base);
276
+ }
277
+
278
+ .pull-btn {
279
+ background: none;
280
+ border: 1px solid var(--border-base);
281
+ border-radius: 0.375rem;
282
+ color: var(--text-dimmed);
283
+ cursor: pointer;
284
+ padding: 0.3rem;
285
+ display: flex;
286
+ transition: all 0.2s;
287
+ }
288
+
289
+ .pull-btn:hover {
290
+ border-color: var(--accent);
291
+ color: var(--accent);
292
+ }
293
+
294
+ .panel-body {
295
+ padding: 0.75rem 0.875rem;
296
+ display: flex;
297
+ flex-direction: column;
298
+ gap: 0.625rem;
299
+ }
300
+
301
+ .panel-desc {
302
+ margin: 0;
303
+ font-size: 0.8125rem;
304
+ color: var(--text-base);
305
+ line-height: 1.45;
306
+ }
307
+
308
+ .panel-detail {
309
+ margin: 0;
310
+ font-size: 0.75rem;
311
+ color: var(--text-dimmed);
312
+ line-height: 1.45;
313
+ }
314
+
315
+ .panel-attributes {
316
+ display: flex;
317
+ gap: 0.75rem;
318
+ }
319
+
320
+ .attribute-row {
321
+ display: flex;
322
+ align-items: center;
323
+ gap: 0.3rem;
324
+ padding: 0.25rem 0.5rem;
325
+ background: var(--bg-surface);
326
+ border-radius: 0.375rem;
327
+ border: 1px solid var(--border-base);
328
+ }
329
+
330
+ .attr-icon {
331
+ color: var(--text-dimmed);
332
+ display: flex;
333
+ }
334
+
335
+ .attr-label {
336
+ font-size: 0.625rem;
337
+ color: var(--text-dimmed);
338
+ font-weight: 600;
339
+ }
340
+
341
+ .attr-value {
342
+ font-size: 0.6875rem;
343
+ font-weight: 700;
344
+ color: var(--accent);
345
+ }
346
+
347
+ .panel-note {
348
+ display: flex;
349
+ align-items: flex-start;
350
+ gap: 0.35rem;
351
+ padding: 0.4rem 0.625rem;
352
+ background: rgba(245, 158, 11, 0.08);
353
+ border: 1px solid rgba(245, 158, 11, 0.2);
354
+ border-radius: 0.5rem;
355
+ font-size: 0.6875rem;
356
+ color: var(--color-warning);
357
+ line-height: 1.4;
358
+ }
359
+
360
+ .panel-note svg {
361
+ flex-shrink: 0;
362
+ margin-top: 0.1rem;
363
+ }
364
+
365
+ @media (max-width: 520px) {
366
+ .tool-main-card {
367
+ padding: 1rem;
368
+ gap: 0.75rem;
369
+ }
370
+
371
+ .crown-top-row {
372
+ flex-direction: column;
373
+ }
374
+
375
+ .crown-visual {
376
+ flex: none;
377
+ width: 100%;
378
+ }
379
+
380
+ .panel-attributes {
381
+ flex-wrap: wrap;
382
+ }
383
+ }
@@ -0,0 +1,60 @@
1
+ import type { ChronoToolEntry, ToolLocaleContent } from '../../types';
2
+
3
+ export type CrownReferenceGuideUI = {
4
+ title: string;
5
+ movementLabel: string;
6
+ selectMovement: string;
7
+ customMovement: string;
8
+ positionLabel: string;
9
+ unscrewFirst: string;
10
+ windingLabel: string;
11
+ hackLabel: string;
12
+ dangerZoneLabel: string;
13
+ directionCW: string;
14
+ directionCCW: string;
15
+ directionBoth: string;
16
+ pullHint: string;
17
+ clickPosition: string;
18
+ position0Title: string;
19
+ position0Desc: string;
20
+ position0Detail: string;
21
+ position1Title: string;
22
+ position1Desc: string;
23
+ position1Detail: string;
24
+ position2Title: string;
25
+ position2Desc: string;
26
+ position2Detail: string;
27
+ position3Title: string;
28
+ position3Desc: string;
29
+ position3Detail: string;
30
+ screwDownHint: string;
31
+ noQuickSet: string;
32
+ noHack: string;
33
+ hasHack: string;
34
+ crownPositions: string;
35
+ noteTitle: string;
36
+ };
37
+
38
+ export type CrownReferenceGuideLocaleContent = ToolLocaleContent<CrownReferenceGuideUI>;
39
+
40
+ export const crownReferenceGuide: ChronoToolEntry<CrownReferenceGuideUI> = {
41
+ id: 'crown-reference-guide',
42
+ icons: { bg: 'mdi:crown-outline', fg: 'mdi:rotate-orbit' },
43
+ i18n: {
44
+ de: () => import('./i18n/de').then((m) => m.content),
45
+ en: () => import('./i18n/en').then((m) => m.content),
46
+ es: () => import('./i18n/es').then((m) => m.content),
47
+ fr: () => import('./i18n/fr').then((m) => m.content),
48
+ id: () => import('./i18n/id').then((m) => m.content),
49
+ it: () => import('./i18n/it').then((m) => m.content),
50
+ ja: () => import('./i18n/ja').then((m) => m.content),
51
+ ko: () => import('./i18n/ko').then((m) => m.content),
52
+ nl: () => import('./i18n/nl').then((m) => m.content),
53
+ pl: () => import('./i18n/pl').then((m) => m.content),
54
+ pt: () => import('./i18n/pt').then((m) => m.content),
55
+ ru: () => import('./i18n/ru').then((m) => m.content),
56
+ sv: () => import('./i18n/sv').then((m) => m.content),
57
+ tr: () => import('./i18n/tr').then((m) => m.content),
58
+ zh: () => import('./i18n/zh').then((m) => m.content),
59
+ },
60
+ };
@@ -0,0 +1,207 @@
1
+ import type { ToolLocaleContent } from '../../../types';
2
+ import type { CrownReferenceGuideUI } from '../entry';
3
+ import { bibliography } from '../bibliography';
4
+
5
+ export const content: ToolLocaleContent<CrownReferenceGuideUI> = {
6
+ slug: 'kronen-referenzleitfaden',
7
+ title: 'Uhrenkronen Referenzleitfaden',
8
+ description: 'Interaktiver Leitfaden zu Kronenpositionen, Aufzugsrichtungen und Einstellfunktionen für gängige Uhrwerke.',
9
+ ui: {
10
+ title: 'Kroneneinstellungen',
11
+ movementLabel: 'Uhrwerk',
12
+ selectMovement: 'Uhrwerk auswählen',
13
+ customMovement: 'Benutzerdefiniert',
14
+ positionLabel: 'Position',
15
+ unscrewFirst: 'Krone zuerst herausdrehen',
16
+ windingLabel: 'Aufzug',
17
+ hackLabel: 'Sekundenstopp',
18
+ dangerZoneLabel: '9\u20133 Uhr vermeiden',
19
+ directionCW: 'Im Uhrzeigersinn',
20
+ directionCCW: 'Gegen Uhrzeigersinn',
21
+ directionBoth: 'Beidseitig',
22
+ pullHint: 'Krone ziehen',
23
+ clickPosition: 'Position anklicken',
24
+ position0Title: 'Ruhestellung',
25
+ position0Desc: 'Krone ist eingedrückt. Uhr läuft normal.',
26
+ position0Detail: 'Keine Aufzugs- oder Einstellfunktionen aktiv.',
27
+ position1Title: 'Handaufzug',
28
+ position1Desc: 'Drehen Sie die Krone im Uhrzeigersinn, um die Zugfeder zu spannen. Sie spüren einen zunehmenden Widerstand.',
29
+ position1Detail: 'Etwa 30\u201340 volle Umdrehungen aus dem Stillstand. Automatikrotoren spannen beim Tragen ebenfalls.',
30
+ position2Title: 'Datums-Schnellverstellung',
31
+ position2Desc: 'Krone im Uhrzeigersinn drehen, um das Datum vorzustellen. Der Stundenzeiger bleibt synchron mit den laufenden Sekunden.',
32
+ position2Detail: 'Schnellverstellung des Datums zwischen 21 und 3 Uhr vermeiden, während der Datumswechselmechanismus aktiv ist.',
33
+ position3Title: 'Zeiteinstellung',
34
+ position3Desc: 'Krone in beide Richtungen drehen, um die Zeiger zu bewegen. Der Sekundenzeiger stoppt (Sekundenstopp) für präzise Synchronisation.',
35
+ position3Detail: 'In Position 3 ziehen, warten bis der Sekundenzeiger auf 12 steht, dann ganz herausziehen. Zeit einstellen und wieder hineindrücken.',
36
+ screwDownHint: 'Krone nach dem Einstellen wieder hineinschrauben, um die Wasserdichtigkeit zu gewährleisten.',
37
+ noQuickSet: 'Keine Schnellverstellung',
38
+ noHack: 'Nein',
39
+ hasHack: 'Ja',
40
+ crownPositions: 'Kronenpositionen',
41
+ noteTitle: 'Hinweis',
42
+ },
43
+ seo: [
44
+ { type: 'title', text: 'Uhren-Kronenpositionen-Leitfaden — So Aufziehen, Datum & Uhrzeit richtig einstellen', level: 2 },
45
+ { type: 'paragraph', html: 'Die Krone ist die einzige physische Schnittstelle zwischen Ihnen und Ihrem Uhrwerk. Sie falsch zu bedienen — rückwärts aufziehen, das Datum um Mitternacht einstellen oder zu stark ziehen — kann das Werk beschädigen. Dieser Leitfaden erklärt jede Kronenposition für <strong>ETA, Sellita, Miyota, Seiko und Unitas</strong>-Kaliber, sodass Sie nie raten müssen.' },
46
+ { type: 'title', text: 'Kronenpositionen auf einen Blick', level: 3 },
47
+ { type: 'glossary', items: [
48
+ { term: 'Position 0 (Ruhestellung)', definition: 'Krone eingedrückt oder eingeschraubt. Uhr läuft normal. Keine Funktionen aktiv. Nach dem Einstellen immer hierher zurückkehren.' },
49
+ { term: 'Position 1 (Aufzug)', definition: 'Erster Zug oder herausgeschraubter Zustand. Im Uhrzeigersinn drehen, um die Zugfeder zu spannen. Die meisten Automatikuhren spannen auch über den Rotor.' },
50
+ { term: 'Position 2 (Datums-Schnellverstellung)', definition: 'Zweiter Zug. Im Uhrzeigersinn drehen, um das Datum vorzustellen. Nicht zwischen 21\u20133 Uhr verwenden, wenn der Datumsmechanismus aktiv ist.' },
51
+ { term: 'Position 3 (Zeiteinstellung)', definition: 'Dritter Zug. Sekundenstopp für präzise Ausrichtung. Zum Einstellen der Uhrzeit frei drehen. Bei den meisten modernen Automatikuhren vorhanden.' },
52
+ ] },
53
+
54
+ { type: 'title', text: 'Uhrwerksvergleich: Kronenfunktionen', level: 3 },
55
+ { type: 'table', headers: ['Uhrwerk', 'Positionen', 'Sekundenstopp', 'Schnellverst.', 'Aufzugsricht.'], rows: [
56
+ ['ETA 2824-2 / SW200', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
57
+ ['ETA 2892-A2 / SW300', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
58
+ ['Valjoux 7750 / SW500', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
59
+ ['Miyota 8215', '2 (0,1,3)', 'Nein', 'Keine', 'UZS'],
60
+ ['Miyota 9015', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
61
+ ['Seiko NH35 / 4R35', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
62
+ ['Seiko 6R35', '3 (0,1,2,3)', 'Ja', 'Datum (UZS)', 'UZS'],
63
+ ['Unitas 6497/6498', '1 (0,1,3)', 'Nein', 'Keine', 'UZS'],
64
+ ] },
65
+
66
+ { type: 'diagnostic', variant: 'warning', title: 'Häufige Kronenfehler', icon: 'mdi:alert', badge: 'NICHT', html: 'Stellen Sie das Datum niemals per Schnellverstellung zwischen <strong>21 und 3 Uhr</strong> ein, während das Datumsrad eingerückt ist. Dies kann Zähne ausreißen und eine vollständige Werksüberholung erforderlich machen. Wenn Sie das Datum in diesem Zeitfenster ändern müssen, stellen Sie zuerst die Zeit über 3 Uhr hinaus, stellen Sie das Datum ein und korrigieren Sie dann die Uhrzeit.' },
67
+
68
+ { type: 'tip', title: 'Schraubkronen', html: 'Taucher- und Sportuhren haben oft Schraubkronen für Wasserdichtigkeit. <strong>Vor dem Ziehen immer herausdrehen</strong>. Gegen den Uhrzeigersinn drehen, bis die Krone herausspringt, dann in die gewünschte Position ziehen. Nach dem Einstellen hineindrücken, dann im Uhrzeigersinn mit leichtem Druck festziehen. <strong>Nicht überdrehen.</strong>' },
69
+
70
+ { type: 'comparative', columns: 2, items: [
71
+ { title: 'Standardkrone', icon: 'mdi:crown', description: 'Zug-Druck-Krone, bei den meisten Alltags- und Automatikuhren zu finden. 2\u20134 Positionen. Wasserdichtigkeit typischerweise 30\u2013100 m.', points: ['Sofortzugriff, kein Herausdrehen', 'Begrenzte Wasserdichtigkeit', 'Üblich bei ETA, Miyota, Seiko'] },
72
+ { title: 'Schraubkrone', icon: 'mdi:lock', description: 'Gewindekrone, die in das Gehäuserohr geschraubt wird. Standard bei Taucher- und Werkzeughren. Wasserdichtigkeit 200 m+.', points: ['Hervorragende Wasserdichtigkeit', 'Muss vor Gebrauch herausgeschraubt werden', 'Üblich bei Rolex, Omega, Seiko Prospex'], highlight: true },
73
+ ] },
74
+
75
+ { type: 'summary', title: 'Kurzübersicht', items: [
76
+ 'Immer im Uhrzeigersinn aufziehen — Rückwärtsaufzug betätigt die Rutschkupplung, spannt aber nicht.',
77
+ 'Wenn Ihre Uhr eine Schraubkrone hat, diese vor dem Ziehen herausdrehen.',
78
+ 'Datums-Schnellverstellung zwischen 21 und 3 Uhr vermeiden. Falls nötig, zuerst die Zeit über 3 Uhr hinaus stellen.',
79
+ 'Handaufzugswerke (z. B. Unitas 6498) haben weniger Positionen. Vor dem Einstellen vollständig aufziehen.',
80
+ 'Bei Werken ohne Sekundenstopp (z. B. Miyota 8215) eine andere Technik anwenden: über die Zielminute hinaus drehen, dann langsam zurück.',
81
+ ] },
82
+ ],
83
+ faq: [
84
+ {
85
+ question: 'Wie viele Kronenpositionen hat meine Uhr?',
86
+ answer: 'Die meisten Automatikwerke haben 3 funktionale Positionen zusätzlich zur Ruhestellung: Position 1 für Handaufzug, Position 2 für Datums-Schnellverstellung und Position 3 für Zeiteinstellung mit Sekundenstopp. Handaufzugswerke wie das Unitas 6498 haben nur eine funktionale Position (Aufzug, mit Zeiteinstellung bei weiterem Zug). Schraubkronen erfordern einen zusätzlichen Schritt: vor dem Ziehen herausdrehen.',
87
+ },
88
+ {
89
+ question: 'Kann ich meine Uhr durch Rückwärtsaufziehen beschädigen?',
90
+ answer: 'Nein, aber es bewirkt nichts. Moderne Werke verwenden eine Rutschkupplung, die sich beim Rückwärtsdrehen löst. Rückwärtsaufzug verursacht daher keinen Schaden, spannt aber auch nicht die Zugfeder. Zum Handaufzug immer im Uhrzeigersinn drehen. Die einzige Ausnahme sind einige antike Taschenuhren und frühe Automatikwerke.',
91
+ },
92
+ {
93
+ question: 'Was ist die Datumswechsel-Gefahrenzone und wie vermeide ich sie?',
94
+ answer: 'Die Gefahrenzone liegt typischerweise zwischen 21 und 3 Uhr, wenn der Datumswechselmechanismus physisch mit dem Datumsrad in Eingriff steht. Eine Schnellverstellung in diesem Fenster kann Zahnräder beschädigen. So stellen Sie das Datum sicher ein: Zeit über 3 Uhr hinaus stellen, Datum auf den Vortag einstellen, dann die Uhrzeit bis zum korrekten Datum und der richtigen Uhrzeit vorstellen.',
95
+ },
96
+ {
97
+ question: 'Warum stoppt mein Sekundenzeiger nicht, wenn ich die Krone ziehe?',
98
+ answer: 'Einige Werke haben keinen Sekundenstopp-Mechanismus. Übliche Kaliber ohne Sekundenstopp sind das Miyota 8215, Unitas 6497/6498 und viele antike Werke. Um die Zeit bei einem Werk ohne Sekundenstopp genau einzustellen: drehen Sie die Krone 5\u201310 Minuten über Ihre Zielminute hinaus, dann langsam zurückdrehen, bis der Minutenzeiger genau auf der gewünschten Markierung steht.',
99
+ },
100
+ {
101
+ question: 'Wie viele Umdrehungen braucht meine Uhr zum vollständigen Aufzug?',
102
+ answer: 'Die meisten Automatikwerke benötigen 30\u201340 volle Kronenumdrehungen aus dem Stillstand. Handaufzugswerke variieren: das Unitas 6498 braucht etwa 30\u201335 Umdrehungen, während das Seiko 6R35 mit seiner 70-Stunden-Gangreserve 50\u201360 Umdrehungen benötigt. Hören Sie auf, wenn Sie einen deutlichen Widerstand spüren \u2014 gewaltsames Weiterdrehen kann die Zugfeder beschädigen.',
103
+ },
104
+ ],
105
+ bibliography,
106
+ howTo: [
107
+ {
108
+ name: 'Finden Sie Ihr Uhrwerkskaliber',
109
+ text: 'Schauen Sie auf den Gehäuseboden (oft eingraviert) oder auf das Werk selbst durch einen Sichtboden. Übliche Nummern: 2824, 2892, 7750, 8215, 9015, NH35, 4R35, 6R35, 6498.',
110
+ },
111
+ {
112
+ name: 'Wählen Sie es im Leitfaden aus',
113
+ text: 'Wählen Sie Ihr Uhrwerk aus dem Dropdown-Menü. Die Kronenvisualisierung und die Info-Tafel aktualisieren sich und zeigen Ihre genauen Positionen, Aufzugsrichtung und Funktionen an.',
114
+ },
115
+ {
116
+ name: 'Durch jede Position ziehen',
117
+ text: 'Klicken Sie auf die Positions-Chips (0\u20133) oder verwenden Sie den Zug-Knopf. Lesen Sie die Beschreibung und beachten Sie die Gefahrenzonen-Warnung für die Datumseinstellung.',
118
+ },
119
+ {
120
+ name: 'An Ihrer Uhr anwenden',
121
+ text: 'Halten Sie den Leitfaden neben sich und üben Sie an Ihrer tatsächlichen Uhr. Ziehen Sie in der richtigen Richtung auf, vermeiden Sie die Gefahrenzone und schrauben Sie die Krone danach wieder hinein.',
122
+ },
123
+ ],
124
+ schemas: [
125
+ {
126
+ '@context': 'https://schema.org',
127
+ '@type': 'FAQPage',
128
+ 'mainEntity': [
129
+ {
130
+ '@type': 'Question',
131
+ 'name': 'Wie viele Kronenpositionen hat meine Uhr?',
132
+ 'acceptedAnswer': {
133
+ '@type': 'Answer',
134
+ 'text': 'Die meisten Automatikwerke haben 3 funktionale Positionen zusätzlich zur Ruhestellung: Position 1 für Handaufzug, Position 2 für Datums-Schnellverstellung und Position 3 für Zeiteinstellung mit Sekundenstopp.',
135
+ },
136
+ },
137
+ {
138
+ '@type': 'Question',
139
+ 'name': 'Kann ich meine Uhr durch Rückwärtsaufziehen beschädigen?',
140
+ 'acceptedAnswer': {
141
+ '@type': 'Answer',
142
+ 'text': 'Nein. Moderne Werke verwenden eine Rutschkupplung, die sich beim Rückwärtsdrehen löst, sodass Rückwärtsaufzug keinen Schaden verursacht, aber auch nicht die Zugfeder spannt.',
143
+ },
144
+ },
145
+ {
146
+ '@type': 'Question',
147
+ 'name': 'Was ist die Datumswechsel-Gefahrenzone?',
148
+ 'acceptedAnswer': {
149
+ '@type': 'Answer',
150
+ 'text': 'Die Gefahrenzone liegt typischerweise zwischen 21 und 3 Uhr. So stellen Sie das Datum sicher ein: Zeit über 3 Uhr hinaus stellen, Datum auf den Vortag einstellen, dann vorstellen.',
151
+ },
152
+ },
153
+ {
154
+ '@type': 'Question',
155
+ 'name': 'Warum stoppt mein Sekundenzeiger nicht, wenn ich die Krone ziehe?',
156
+ 'acceptedAnswer': {
157
+ '@type': 'Answer',
158
+ 'text': 'Einige Werke haben keinen Sekundenstopp-Mechanismus. Übliche Kaliber ohne Sekundenstopp sind das Miyota 8215 und Unitas 6497/6498. Zum Zeiteinstellen: über die Zielminute hinaus drehen, dann langsam zurück.',
159
+ },
160
+ },
161
+ {
162
+ '@type': 'Question',
163
+ 'name': 'Wie viele Umdrehungen zum vollständigen Aufzug?',
164
+ 'acceptedAnswer': {
165
+ '@type': 'Answer',
166
+ 'text': 'Die meisten Automatikwerke benötigen 30\u201340 volle Kronenumdrehungen. Handaufzugswerke variieren. Beim spürbaren Widerstand aufhören.',
167
+ },
168
+ },
169
+ ],
170
+ },
171
+ {
172
+ '@context': 'https://schema.org',
173
+ '@type': 'SoftwareApplication',
174
+ 'name': 'Kronen-Referenzleitfaden',
175
+ 'operatingSystem': 'Alle',
176
+ 'applicationCategory': 'ReferenceApplication',
177
+ 'browserRequirements': 'Erfordert HTML5. Erfordert JavaScript.',
178
+ },
179
+ {
180
+ '@context': 'https://schema.org',
181
+ '@type': 'HowTo',
182
+ 'name': 'Verwendung des Uhrenkronen Referenzleitfadens',
183
+ 'step': [
184
+ {
185
+ '@type': 'HowToStep',
186
+ 'name': 'Finden Sie Ihr Uhrwerkskaliber',
187
+ 'text': 'Schauen Sie auf den Gehäuseboden (oft eingraviert) oder auf das Werk selbst durch einen Sichtboden. Übliche Nummern: 2824, 2892, 7750, 8215, 9015, NH35, 4R35, 6R35, 6498.',
188
+ },
189
+ {
190
+ '@type': 'HowToStep',
191
+ 'name': 'Wählen Sie es im Leitfaden aus',
192
+ 'text': 'Wählen Sie Ihr Uhrwerk aus dem Dropdown-Menü. Die Kronenvisualisierung und die Info-Tafel aktualisieren sich und zeigen Ihre genauen Positionen, Aufzugsrichtung und Funktionen an.',
193
+ },
194
+ {
195
+ '@type': 'HowToStep',
196
+ 'name': 'Durch jede Position ziehen',
197
+ 'text': 'Klicken Sie auf die Positions-Chips (0\u20133) oder verwenden Sie den Zug-Knopf. Lesen Sie die Beschreibung und beachten Sie die Gefahrenzonen-Warnung für die Datumseinstellung.',
198
+ },
199
+ {
200
+ '@type': 'HowToStep',
201
+ 'name': 'An Ihrer Uhr anwenden',
202
+ 'text': 'Halten Sie den Leitfaden neben sich und üben Sie an Ihrer tatsächlichen Uhr. Ziehen Sie in der richtigen Richtung auf, vermeiden Sie die Gefahrenzone und schrauben Sie die Krone danach wieder hinein.',
203
+ },
204
+ ],
205
+ },
206
+ ],
207
+ };