@jjlmoya/utils-hardware 1.3.0 → 1.6.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 (113) hide show
  1. package/package.json +2 -1
  2. package/src/category/i18n/de.ts +106 -0
  3. package/src/category/i18n/id.ts +106 -0
  4. package/src/category/i18n/it.ts +106 -0
  5. package/src/category/i18n/ja.ts +106 -0
  6. package/src/category/i18n/ko.ts +106 -0
  7. package/src/category/i18n/nl.ts +106 -0
  8. package/src/category/i18n/pl.ts +106 -0
  9. package/src/category/i18n/pt.ts +106 -0
  10. package/src/category/i18n/ru.ts +106 -0
  11. package/src/category/i18n/sv.ts +106 -0
  12. package/src/category/i18n/tr.ts +106 -0
  13. package/src/category/i18n/zh.ts +106 -0
  14. package/src/category/index.ts +13 -1
  15. package/src/tests/category_validation.test.ts +73 -0
  16. package/src/tests/faq_count.test.ts +1 -1
  17. package/src/tests/i18n_coverage.test.ts +36 -0
  18. package/src/tests/locale_completeness.test.ts +1 -1
  19. package/src/tests/slug_language_code_format.test.ts +23 -0
  20. package/src/tests/slug_uniqueness.test.ts +81 -0
  21. package/src/tests/title_quality.test.ts +1 -1
  22. package/src/tool/batteryHealthEstimator/i18n/de.ts +158 -0
  23. package/src/tool/batteryHealthEstimator/i18n/id.ts +158 -0
  24. package/src/tool/batteryHealthEstimator/i18n/it.ts +158 -0
  25. package/src/tool/batteryHealthEstimator/i18n/ja.ts +158 -0
  26. package/src/tool/batteryHealthEstimator/i18n/ko.ts +158 -0
  27. package/src/tool/batteryHealthEstimator/i18n/nl.ts +158 -0
  28. package/src/tool/batteryHealthEstimator/i18n/pl.ts +158 -0
  29. package/src/tool/batteryHealthEstimator/i18n/pt.ts +158 -0
  30. package/src/tool/batteryHealthEstimator/i18n/ru.ts +158 -0
  31. package/src/tool/batteryHealthEstimator/i18n/sv.ts +158 -0
  32. package/src/tool/batteryHealthEstimator/i18n/tr.ts +158 -0
  33. package/src/tool/batteryHealthEstimator/i18n/zh.ts +158 -0
  34. package/src/tool/batteryHealthEstimator/index.ts +15 -7
  35. package/src/tool/deadPixelTest/i18n/de.ts +218 -0
  36. package/src/tool/deadPixelTest/i18n/id.ts +218 -0
  37. package/src/tool/deadPixelTest/i18n/it.ts +218 -0
  38. package/src/tool/deadPixelTest/i18n/ja.ts +218 -0
  39. package/src/tool/deadPixelTest/i18n/ko.ts +218 -0
  40. package/src/tool/deadPixelTest/i18n/nl.ts +218 -0
  41. package/src/tool/deadPixelTest/i18n/pl.ts +218 -0
  42. package/src/tool/deadPixelTest/i18n/pt.ts +218 -0
  43. package/src/tool/deadPixelTest/i18n/ru.ts +218 -0
  44. package/src/tool/deadPixelTest/i18n/sv.ts +218 -0
  45. package/src/tool/deadPixelTest/i18n/tr.ts +218 -0
  46. package/src/tool/deadPixelTest/i18n/zh.ts +217 -0
  47. package/src/tool/deadPixelTest/index.ts +15 -7
  48. package/src/tool/gamepadTest/i18n/de.ts +186 -0
  49. package/src/tool/gamepadTest/i18n/id.ts +186 -0
  50. package/src/tool/gamepadTest/i18n/it.ts +186 -0
  51. package/src/tool/gamepadTest/i18n/ja.ts +186 -0
  52. package/src/tool/gamepadTest/i18n/ko.ts +186 -0
  53. package/src/tool/gamepadTest/i18n/nl.ts +186 -0
  54. package/src/tool/gamepadTest/i18n/pl.ts +186 -0
  55. package/src/tool/gamepadTest/i18n/pt.ts +186 -0
  56. package/src/tool/gamepadTest/i18n/ru.ts +186 -0
  57. package/src/tool/gamepadTest/i18n/sv.ts +186 -0
  58. package/src/tool/gamepadTest/i18n/tr.ts +186 -0
  59. package/src/tool/gamepadTest/i18n/zh.ts +186 -0
  60. package/src/tool/gamepadTest/index.ts +15 -7
  61. package/src/tool/gamepadVibrationTester/i18n/de.ts +155 -0
  62. package/src/tool/gamepadVibrationTester/i18n/id.ts +155 -0
  63. package/src/tool/gamepadVibrationTester/i18n/it.ts +155 -0
  64. package/src/tool/gamepadVibrationTester/i18n/ja.ts +155 -0
  65. package/src/tool/gamepadVibrationTester/i18n/ko.ts +155 -0
  66. package/src/tool/gamepadVibrationTester/i18n/nl.ts +155 -0
  67. package/src/tool/gamepadVibrationTester/i18n/pl.ts +155 -0
  68. package/src/tool/gamepadVibrationTester/i18n/pt.ts +155 -0
  69. package/src/tool/gamepadVibrationTester/i18n/ru.ts +155 -0
  70. package/src/tool/gamepadVibrationTester/i18n/sv.ts +155 -0
  71. package/src/tool/gamepadVibrationTester/i18n/tr.ts +155 -0
  72. package/src/tool/gamepadVibrationTester/i18n/zh.ts +155 -0
  73. package/src/tool/gamepadVibrationTester/index.ts +15 -7
  74. package/src/tool/keyboardTest/i18n/de.ts +146 -0
  75. package/src/tool/keyboardTest/i18n/id.ts +146 -0
  76. package/src/tool/keyboardTest/i18n/it.ts +146 -0
  77. package/src/tool/keyboardTest/i18n/ja.ts +146 -0
  78. package/src/tool/keyboardTest/i18n/ko.ts +146 -0
  79. package/src/tool/keyboardTest/i18n/nl.ts +146 -0
  80. package/src/tool/keyboardTest/i18n/pl.ts +146 -0
  81. package/src/tool/keyboardTest/i18n/pt.ts +146 -0
  82. package/src/tool/keyboardTest/i18n/ru.ts +146 -0
  83. package/src/tool/keyboardTest/i18n/sv.ts +146 -0
  84. package/src/tool/keyboardTest/i18n/tr.ts +146 -0
  85. package/src/tool/keyboardTest/i18n/zh.ts +146 -0
  86. package/src/tool/keyboardTest/index.ts +15 -7
  87. package/src/tool/mousePollingTest/i18n/de.ts +135 -0
  88. package/src/tool/mousePollingTest/i18n/id.ts +135 -0
  89. package/src/tool/mousePollingTest/i18n/it.ts +135 -0
  90. package/src/tool/mousePollingTest/i18n/ja.ts +135 -0
  91. package/src/tool/mousePollingTest/i18n/ko.ts +135 -0
  92. package/src/tool/mousePollingTest/i18n/nl.ts +135 -0
  93. package/src/tool/mousePollingTest/i18n/pl.ts +135 -0
  94. package/src/tool/mousePollingTest/i18n/pt.ts +135 -0
  95. package/src/tool/mousePollingTest/i18n/ru.ts +135 -0
  96. package/src/tool/mousePollingTest/i18n/sv.ts +135 -0
  97. package/src/tool/mousePollingTest/i18n/tr.ts +135 -0
  98. package/src/tool/mousePollingTest/i18n/zh.ts +135 -0
  99. package/src/tool/mousePollingTest/index.ts +15 -7
  100. package/src/tool/toneGenerator/i18n/de.ts +146 -0
  101. package/src/tool/toneGenerator/i18n/id.ts +146 -0
  102. package/src/tool/toneGenerator/i18n/it.ts +146 -0
  103. package/src/tool/toneGenerator/i18n/ja.ts +146 -0
  104. package/src/tool/toneGenerator/i18n/ko.ts +146 -0
  105. package/src/tool/toneGenerator/i18n/nl.ts +146 -0
  106. package/src/tool/toneGenerator/i18n/pl.ts +146 -0
  107. package/src/tool/toneGenerator/i18n/pt.ts +146 -0
  108. package/src/tool/toneGenerator/i18n/ru.ts +146 -0
  109. package/src/tool/toneGenerator/i18n/sv.ts +146 -0
  110. package/src/tool/toneGenerator/i18n/tr.ts +146 -0
  111. package/src/tool/toneGenerator/i18n/zh.ts +146 -0
  112. package/src/tool/toneGenerator/index.ts +15 -7
  113. package/src/types.ts +1 -1
@@ -0,0 +1,155 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { ProbadorVibracionMandoUI } from '../ui';
4
+
5
+ const slug = 'gamepad-vibration-test-online';
6
+ const title = 'Online Gamepad Vibrationstester';
7
+ const description =
8
+ 'Testen Sie die haptischen Motoren und die Dual-Rumble-Vibration Ihres Gamepads im Browser. Unterstützt Xbox, DualShock, DualSense und generische Controller.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Was benötige ich, um mein Gamepad online zu testen?',
13
+ answer:
14
+ 'Verbinden Sie Ihr Gamepad einfach per USB-Kabel mit dem Computer oder Mobilgerät oder koppeln Sie es über Bluetooth. Sobald es verbunden ist, drücken Sie eine beliebige Taste, um erkannt zu werden.',
15
+ },
16
+ {
17
+ question: 'Funktioniert es mit jedem Gamepad-Modell?',
18
+ answer:
19
+ 'Die meisten modernen Gamepads bekannter Marken (wie PlayStation oder Xbox) sind kompatibel, sofern Ihr Gerät und Betriebssystem dies unterstützen.',
20
+ },
21
+ {
22
+ question: 'Die rechte Seite meines Gamepads vibriert weniger als die linke, ist das normal?',
23
+ answer:
24
+ 'Ja, völlig normal. Gamepads haben meist ein asymmetrisches Design, bei dem eine Seite für starke, tiefe Vibrationen und die andere für schnelle, subtile Vibrationen zuständig ist.',
25
+ },
26
+ {
27
+ question: 'Verbrauchen diese Tests viel Akku?',
28
+ answer:
29
+ 'Vibration ist eine der energieintensivsten Funktionen eines kabellosen Gamepads. Kontinuierliche, lange Tests entladen den Akku schneller als gewöhnlich.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Gamepad anschließen und einschalten',
36
+ text: 'Verbinden Sie Ihr Gamepad per USB-Kabel oder Bluetooth mit Ihrem PC, Mac oder Mobilgerät.',
37
+ },
38
+ {
39
+ name: 'Taste am Gamepad drücken',
40
+ text: 'Browser erfordern das Drücken mindestens einer Taste, damit das Gamepad erkannt wird und die Web-Kommunikation startet.',
41
+ },
42
+ {
43
+ name: 'Vibrationsmotoren anpassen',
44
+ text: 'Konfigurieren Sie die Stärke des starken Motors (Low) und des feinen Motors (High) unabhängig voneinander.',
45
+ },
46
+ {
47
+ name: 'Muster ausführen',
48
+ text: 'Wählen Sie eine der Voreinstellungen oder konfigurieren Sie die Parameter manuell und senden Sie das Signal, um jede Komponente zu spüren.',
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, i) => ({
68
+ '@type': 'HowToStep',
69
+ position: i + 1,
70
+ name: step.name,
71
+ text: step.text,
72
+ })),
73
+ };
74
+
75
+ const appSchema: WithContext<SoftwareApplication> = {
76
+ '@context': 'https://schema.org',
77
+ '@type': 'SoftwareApplication',
78
+ name: title,
79
+ description,
80
+ applicationCategory: 'UtilityApplication',
81
+ operatingSystem: 'All',
82
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
83
+ inLanguage: 'de',
84
+ };
85
+
86
+ export const content: ToolLocaleContent<ProbadorVibracionMandoUI> = {
87
+ slug,
88
+ title,
89
+ description,
90
+ faqTitle: 'Häufig gestellte Fragen',
91
+ faq: faqData,
92
+ bibliographyTitle: 'Referenzen',
93
+ bibliography: [
94
+ {
95
+ name: 'Wie haptische Vibration funktioniert — HobbyConsolas',
96
+ url: 'https://www.hobbyconsolas.com/reportajes/como-funciona-vibracion-haptica-mando-dualsense-ps5-757673',
97
+ },
98
+ {
99
+ name: 'Gamepad API — W3C',
100
+ url: 'https://w3c.github.io/gamepad/',
101
+ },
102
+ ],
103
+ howTo: howToData,
104
+ schemas: [faqSchema, howToSchema, appSchema],
105
+ seo: [
106
+ { type: 'title', text: 'So überprüfen Sie die Vibration Ihres Gaming Gamepads', level: 2 },
107
+ {
108
+ type: 'paragraph',
109
+ html: 'Haptisches Feedback ist eines der immersivsten Elemente von Gaming-Hardware. Wenn ein Motor ausfällt, sind die ersten Symptome meist abnormales Brummen oder asymmetrische Vibrationen. Eine frühzeitige Diagnose verhindert größere Ausfälle.',
110
+ },
111
+ { type: 'title', text: 'Warum den Vibrationstest durchführen?', level: 3 },
112
+ {
113
+ type: 'paragraph',
114
+ html: 'Beim Kauf eines gebrauchten Gamepads, nach dem Aktualisieren von Treibern oder nach einem Sturz hilft das Testen der haptischen Motoren, echte Hardwarefehler von Softwareproblemen zu unterscheiden. Kompatibel mit Xbox, PlayStation 4, PlayStation 5 (DualSense), Nintendo Switch Pro und generischen USB-Gamepads.',
115
+ },
116
+ { type: 'title', text: 'Dual Rumble vs Linear Aktor Architektur', level: 3 },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'Klassische Gamepads (Xbox, DualShock) verwenden zwei asymmetrische Mikromotoren: Der linke erzeugt tiefe, grollende Vibrationen; der rechte produziert schnelles, hohes Summen. Fortschrittliche Geräte wie der DualSense verwenden Linear-Aktoren, die Texturen und Widerstände simulieren.',
120
+ },
121
+ { type: 'title', text: 'Symptombasierter Diagnoseleitfaden', level: 3 },
122
+ {
123
+ type: 'paragraph',
124
+ html: 'Aktivieren Sie jeden Motor einzeln mit 100 %. Wenn beide gleich klingen, handelt es sich möglicherweise um ein Replikat mit nur einem Motor. Wenn einer nicht reagiert, überprüfen Sie die Verbindung, bevor Sie das Gehäuse öffnen. Testen Sie Teilintensitäten: Qualitätsmotoren reagieren schrittweise, nicht wie ein Ein-/Ausschalter.',
125
+ },
126
+ ],
127
+ ui: {
128
+ badge: 'Vibrationstest',
129
+ title: 'Gamepad Vibrationstester',
130
+ description: 'Direkte Kontrolle über den Dual Rumble Motor Ihres Gamepads.',
131
+ deviceDisconnected: 'Gamepad getrennt',
132
+ deviceDisconnectedSub: 'Drücken Sie eine Taste an Ihrem Gamepad, um zu starten',
133
+ deviceFallback: 'Gamepad verbunden',
134
+ deviceConnectedSub: 'Stabile Verbindung. Bereit zum Testen.',
135
+ noSupportWarning: "Keine Dual-Rumble-Unterstützung in Ihrem Browser erkannt. Einfache generische Vibration wird verwendet.",
136
+ tabPresets: 'Top Presets',
137
+ tabCustom: 'Reine Präzision',
138
+ presetHeavyTitle: 'Hammerschlag',
139
+ presetHeavyDesc: 'Schwerer Motor auf Max für 300ms. Simuliert einen starken Schlag.',
140
+ presetLightTitle: 'Bienensummen',
141
+ presetLightDesc: 'Nur rechter Motor. Ideal zum Erkennen von ungewöhnlichem Summen.',
142
+ presetHeartbeatTitle: 'Herzschlag',
143
+ presetHeartbeatDesc: 'Subtile aufeinanderfolgende Pulse. Perfekt zum Prüfen der Trägheit.',
144
+ presetSongTitle: 'Münz-Rhythmus',
145
+ presetSongDesc: 'Simuliert aufeinanderfolgende Münzgeräusche. Kurz und taktil.',
146
+ presetRockYouTitle: 'Rock You!',
147
+ presetRockYouDesc: "Queens Klassiker in Ihren Händen: Boom, Boom, Clap!",
148
+ presetEarthquakeTitle: 'Maximales Erdbeben!',
149
+ presetEarthquakeDesc: 'Beide Motoren bei 100% explosiver Kraft. SEHR intensiv.',
150
+ customStrongLabel: 'Starke Kraft (Links)',
151
+ customWeakLabel: 'Schwache Kraft (Rechts)',
152
+ customDurationLabel: 'Pulsdauer',
153
+ btnSendSignal: 'SIGNAL JETZT SENDEN',
154
+ },
155
+ };
@@ -0,0 +1,155 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { ProbadorVibracionMandoUI } from '../ui';
4
+
5
+ const slug = 'tes-getaran-gamepad-online';
6
+ const title = 'Tes Getaran Gamepad Online';
7
+ const description =
8
+ 'Uji motor haptik dan getaran Dual-Rumble gamepad Anda di browser. Mendukung Xbox, DualShock, DualSense, dan kontroler generik.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Apa yang saya perlukan untuk menguji gamepad saya secara online?',
13
+ answer:
14
+ 'Cukup hubungkan gamepad Anda ke komputer atau perangkat seluler melalui kabel USB atau pasangkan via Bluetooth. Setelah terhubung, tekan tombol apa saja agar terdeteksi.',
15
+ },
16
+ {
17
+ question: 'Apakah ini berfungsi dengan semua model gamepad?',
18
+ answer:
19
+ 'Sebagian besar gamepad modern dari merek terkenal (seperti PlayStation atau Xbox) kompatibel jika perangkat dan sistem operasi Anda mendukungnya.',
20
+ },
21
+ {
22
+ question: 'Sisi kanan gamepad saya bergetar lebih lemah dari sisi kiri, apakah itu normal?',
23
+ answer:
24
+ 'Ya, sangat normal. Gamepad biasanya memiliki desain asimetris di mana satu sisi menangani getaran yang kuat dan dalam, dan sisi lainnya menangani getaran yang cepat dan halus.',
25
+ },
26
+ {
27
+ question: 'Apakah menjalankan tes ini menguras banyak baterai?',
28
+ answer:
29
+ 'Getaran adalah salah satu fungsi yang paling banyak memakan energi pada gamepad nirkabel. Menjalankan tes yang terus-menerus dan lama akan menguras baterai lebih cepat dari biasanya.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Hubungkan dan nyalakan gamepad Anda',
36
+ text: 'Hubungkan gamepad Anda ke PC, Mac, atau seluler via kabel USB atau Bluetooth.',
37
+ },
38
+ {
39
+ name: 'Tekan tombol pada gamepad',
40
+ text: 'Browser mengharuskan Anda menekan setidaknya satu tombol agar gamepad terdeteksi dan memulai komunikasi web.',
41
+ },
42
+ {
43
+ name: 'Sesuaikan motor getaran',
44
+ text: 'Konfigurasikan daya Motor Kuat (Low) dan Motor Halus (High) secara independen.',
45
+ },
46
+ {
47
+ name: 'Jalankan pola',
48
+ text: 'Tekan salah satu preset atau konfigurasikan parameter secara manual dan kirim sinyal untuk merasakan setiap komponen.',
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, i) => ({
68
+ '@type': 'HowToStep',
69
+ position: i + 1,
70
+ name: step.name,
71
+ text: step.text,
72
+ })),
73
+ };
74
+
75
+ const appSchema: WithContext<SoftwareApplication> = {
76
+ '@context': 'https://schema.org',
77
+ '@type': 'SoftwareApplication',
78
+ name: title,
79
+ description,
80
+ applicationCategory: 'UtilityApplication',
81
+ operatingSystem: 'All',
82
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
83
+ inLanguage: 'id',
84
+ };
85
+
86
+ export const content: ToolLocaleContent<ProbadorVibracionMandoUI> = {
87
+ slug,
88
+ title,
89
+ description,
90
+ faqTitle: 'Pertanyaan yang Sering Diajukan',
91
+ faq: faqData,
92
+ bibliographyTitle: 'Referensi',
93
+ bibliography: [
94
+ {
95
+ name: 'Cara kerja getaran haptik — HobbyConsolas',
96
+ url: 'https://www.hobbyconsolas.com/reportajes/como-funciona-vibracion-haptica-mando-dualsense-ps5-757673',
97
+ },
98
+ {
99
+ name: 'Gamepad API — W3C',
100
+ url: 'https://w3c.github.io/gamepad/',
101
+ },
102
+ ],
103
+ howTo: howToData,
104
+ schemas: [faqSchema, howToSchema, appSchema],
105
+ seo: [
106
+ { type: 'title', text: 'Cara memeriksa getaran gamepad gaming Anda', level: 2 },
107
+ {
108
+ type: 'paragraph',
109
+ html: 'Umpan balik haptik adalah salah satu elemen perangkat keras gaming yang paling imersif. Ketika sebuah motor gagal, gejala awalnya biasanya berupa dengungan abnormal atau getaran asimetris. Mendiagnosisnya sejak dini mencegah kegagalan yang lebih besar.',
110
+ },
111
+ { type: 'title', text: 'Mengapa menjalankan tes getaran?', level: 3 },
112
+ {
113
+ type: 'paragraph',
114
+ html: 'Saat membeli gamepad bekas, setelah memperbarui driver, atau setelah jatuh, menguji motor haptik membantu membedakan kegagalan perangkat keras yang nyata dari masalah perangkat lunak. Kompatibel dengan Xbox, PlayStation 4, PlayStation 5 (DualSense), Nintendo Switch Pro, dan gamepad USB generik.',
115
+ },
116
+ { type: 'title', text: 'Arsitektur Dual-Rumble vs. Aktuator Linier', level: 3 },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'Gamepad klasik (Xbox, DualShock) menggunakan dua mikro-motor asimetris: bagian kiri menghasilkan getaran yang dalam dan bergemuruh; bagian kanan menghasilkan dengungan yang cepat dan bernada tinggi. Perangkat canggih seperti DualSense menggunakan aktuator linier yang mensimulasikan tekstur dan hambatan.',
120
+ },
121
+ { type: 'title', text: 'Panduan diagnosis berdasarkan gejala', level: 3 },
122
+ {
123
+ type: 'paragraph',
124
+ html: 'Aktifkan setiap motor secara independen pada 100%. Jika keduanya terdengar sama, gamepad tersebut mungkin merupakan replika dengan motor tunggal. Jika salah satu tidak merespons, periksa koneksi sebelum membuka casing. Uji intensitas fraksional: motor berkualitas merespons secara bertahap, bukan seperti sakelar on/off.',
125
+ },
126
+ ],
127
+ ui: {
128
+ badge: 'Tes Getaran',
129
+ title: 'Penguji Getaran Gamepad',
130
+ description: 'Kontrol langsung atas motor Dual-Rumble gamepad Anda.',
131
+ deviceDisconnected: 'Gamepad Terputus',
132
+ deviceDisconnectedSub: 'Tekan tombol pada gamepad untuk memulai',
133
+ deviceFallback: 'Gamepad Terhubung',
134
+ deviceConnectedSub: 'Koneksi stabil. Siap untuk diuji.',
135
+ noSupportWarning: "Dukungan Dual-Rumble tidak terdeteksi di browser Anda. Menggunakan getaran generik dasar.",
136
+ tabPresets: 'Preset Utama',
137
+ tabCustom: 'Presisi Murni',
138
+ presetHeavyTitle: 'Hantaman Palu',
139
+ presetHeavyDesc: 'Motor berat pada maksimal selama 300ms. Mensimulasikan pukulan kuat.',
140
+ presetLightTitle: 'Dengungan Lebah',
141
+ presetLightDesc: 'Hanya motor kanan. Ideal untuk mendeteksi dengungan yang tidak biasa.',
142
+ presetHeartbeatTitle: 'Detak Jantung',
143
+ presetHeartbeatDesc: 'Denyut berurutan yang halus. Sempurna untuk memeriksa retensi inersia.',
144
+ presetSongTitle: 'Ritme Koin',
145
+ presetSongDesc: 'Mensimulasikan suara koin berturut-turut. Singkat dan taktil.',
146
+ presetRockYouTitle: 'Rock You!',
147
+ presetRockYouDesc: "Klasik Queen di tangan Anda: boom, boom, clap!",
148
+ presetEarthquakeTitle: 'Gempa Maksimum!',
149
+ presetEarthquakeDesc: 'Kedua motor pada kekuatan ledakan 100%. SANGAT intens.',
150
+ customStrongLabel: 'Kekuatan Kuat (Kiri)',
151
+ customWeakLabel: 'Kekuatan Lemah (Kanan)',
152
+ customDurationLabel: 'Durasi Denyut',
153
+ btnSendSignal: 'KIRIM SINYAL SEKARANG',
154
+ },
155
+ };
@@ -0,0 +1,155 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { ProbadorVibracionMandoUI } from '../ui';
4
+
5
+ const slug = 'test-vibrazione-gamepad-online';
6
+ const title = 'Test Vibrazione Gamepad Online';
7
+ const description =
8
+ 'Testa i motori aptici e la vibrazione Dual-Rumble del tuo gamepad nel browser. Supporta Xbox, DualShock, DualSense e controller generici.';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'Di cosa ho bisogno per testare il mio gamepad online?',
13
+ answer:
14
+ 'Collega semplicemente il tuo gamepad al computer o al dispositivo mobile tramite cavo USB o associalo via Bluetooth. Una volta collegato, premi un pulsante qualsiasi per essere rilevato.',
15
+ },
16
+ {
17
+ question: 'Funziona con qualsiasi modello di gamepad?',
18
+ answer:
19
+ 'La maggior parte dei moderni gamepad di marche note (come PlayStation o Xbox) è compatibile se il dispositivo e il sistema operativo lo supportano.',
20
+ },
21
+ {
22
+ question: 'Il lato destro del mio gamepad vibra meno del sinistro, è normale?',
23
+ answer:
24
+ 'Sì, completamente normale. I gamepad di solito hanno un design asimmetrico in cui un lato gestisce vibrazioni forti e profonde e l\'altro vibrazioni rapide e sottili.',
25
+ },
26
+ {
27
+ question: 'L\'esecuzione di questi test consuma molta batteria?',
28
+ answer:
29
+ 'La vibrazione è una delle funzioni che consumano più energia in un gamepad wireless. L\'esecuzione di test continui e lunghi scaricherà la batteria più velocemente del solito.',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'Collega e accendi il gamepad',
36
+ text: 'Collega il tuo gamepad al PC, Mac o cellulare tramite cavo USB o Bluetooth.',
37
+ },
38
+ {
39
+ name: 'Premi un pulsante sul gamepad',
40
+ text: 'I browser richiedono di premere almeno un pulsante affinché il gamepad venga rilevato e inizi la comunicazione web.',
41
+ },
42
+ {
43
+ name: 'Regola i motori di vibrazione',
44
+ text: 'Configura la potenza del Motore Forte (Low) e del Motore Fine (High) indipendentemente.',
45
+ },
46
+ {
47
+ name: 'Esegui i pattern',
48
+ text: 'Premi uno dei preset o configura manualmente i parametri e invia il segnale per sentire ogni componente.',
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, i) => ({
68
+ '@type': 'HowToStep',
69
+ position: i + 1,
70
+ name: step.name,
71
+ text: step.text,
72
+ })),
73
+ };
74
+
75
+ const appSchema: WithContext<SoftwareApplication> = {
76
+ '@context': 'https://schema.org',
77
+ '@type': 'SoftwareApplication',
78
+ name: title,
79
+ description,
80
+ applicationCategory: 'UtilityApplication',
81
+ operatingSystem: 'All',
82
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
83
+ inLanguage: 'it',
84
+ };
85
+
86
+ export const content: ToolLocaleContent<ProbadorVibracionMandoUI> = {
87
+ slug,
88
+ title,
89
+ description,
90
+ faqTitle: 'Domande Frequenti',
91
+ faq: faqData,
92
+ bibliographyTitle: 'Riferimenti',
93
+ bibliography: [
94
+ {
95
+ name: 'Come funziona la vibrazione aptica — HobbyConsolas',
96
+ url: 'https://www.hobbyconsolas.com/reportajes/como-funciona-vibracion-haptica-mando-dualsense-ps5-757673',
97
+ },
98
+ {
99
+ name: 'Gamepad API — W3C',
100
+ url: 'https://w3c.github.io/gamepad/',
101
+ },
102
+ ],
103
+ howTo: howToData,
104
+ schemas: [faqSchema, howToSchema, appSchema],
105
+ seo: [
106
+ { type: 'title', text: 'Come verificare la vibrazione del tuo gamepad da gioco', level: 2 },
107
+ {
108
+ type: 'paragraph',
109
+ html: 'Il feedback aptico è uno degli elementi più coinvolgenti dell\'hardware da gioco. Quando un motore si guasta, i primi sintomi sono solitamente ronzii anomali o vibrazioni asimmetriche. Diagnosticarli precocemente previene guasti maggiori.',
110
+ },
111
+ { type: 'title', text: 'Perché eseguire il test di vibrazione?', level: 3 },
112
+ {
113
+ type: 'paragraph',
114
+ html: 'Quando si acquista un gamepad di seconda mano, dopo aver aggiornato i driver o dopo una caduta, testare i motori aptici aiuta a distinguere i guasti hardware reali dai problemi software. Compatibile con Xbox, PlayStation 4, PlayStation 5 (DualSense), Nintendo Switch Pro e gamepad USB generici.',
115
+ },
116
+ { type: 'title', text: 'Dual-Rumble vs. Architettura dell\'Attuatore Lineare', level: 3 },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'I gamepad classici (Xbox, DualShock) utilizzano due micro-motori asimmetrici: quello sinistro genera vibrazioni profonde e rombanti; quello destro produce ronzii rapidi e acuti. Dispositivi avanzati come il DualSense utilizzano attuatori lineari che simulano texture e resistenza.',
120
+ },
121
+ { type: 'title', text: 'Guida diagnostica basata sui sintomi', level: 3 },
122
+ {
123
+ type: 'paragraph',
124
+ html: 'Attiva ogni motore indipendentemente al 100%. Se entrambi suonano allo stesso modo, il gamepad potrebbe essere una replica con un unico motore. Se uno non risponde, controlla la connessione prima di aprire il telaio. Testa le intensità frazionarie: i motori di qualità rispondono gradualmente, non come un interruttore on/off.',
125
+ },
126
+ ],
127
+ ui: {
128
+ badge: 'Test Vibrazione',
129
+ title: 'Test Vibrazione Gamepad',
130
+ description: 'Controllo diretto sul motore Dual-Rumble del tuo gamepad.',
131
+ deviceDisconnected: 'Gamepad Disconnesso',
132
+ deviceDisconnectedSub: 'Premi un pulsante sul tuo gamepad per iniziare',
133
+ deviceFallback: 'Gamepad Connesso',
134
+ deviceConnectedSub: 'Connessione stabile. Pronto per il test.',
135
+ noSupportWarning: "Nessun supporto Dual-Rumble rilevato nel browser. Utilizzo della vibrazione generica di base.",
136
+ tabPresets: 'Preset Principali',
137
+ tabCustom: 'Precisione Pura',
138
+ presetHeavyTitle: 'Colpo di Martello',
139
+ presetHeavyDesc: 'Motore pesante al massimo per 300ms. Simula un colpo forte.',
140
+ presetLightTitle: 'Ronzio d\'Ape',
141
+ presetLightDesc: 'Solo motore destro. Ideale per rilevare ronzii insoliti.',
142
+ presetHeartbeatTitle: 'Battito Cardiaco',
143
+ presetHeartbeatDesc: 'Sottili impulsi consecutivi. Perfetto per controllare la ritenzione inerziale.',
144
+ presetSongTitle: 'Ritmo della Moneta',
145
+ presetSongDesc: 'Simula suoni consecutivi di monete. Breve e tattile.',
146
+ presetRockYouTitle: 'Rock You!',
147
+ presetRockYouDesc: "Il classico dei Queen nelle tue mani: boom, boom, clap!",
148
+ presetEarthquakeTitle: 'Terremoto Massimo!',
149
+ presetEarthquakeDesc: 'Entrambi i motori al 100% di forza esplosiva. MOLTO intenso.',
150
+ customStrongLabel: 'Forza Forte (Sinistra)',
151
+ customWeakLabel: 'Forza Debole (Destra)',
152
+ customDurationLabel: 'Durata Impulso',
153
+ btnSendSignal: 'INVIA SEGNALE ORA',
154
+ },
155
+ };
@@ -0,0 +1,155 @@
1
+ import type { WithContext, FAQPage, HowTo, SoftwareApplication } from 'schema-dts';
2
+ import type { ToolLocaleContent } from '../../../types';
3
+ import type { ProbadorVibracionMandoUI } from '../ui';
4
+
5
+ const slug = 'gamepad-vibration-tester';
6
+ const title = 'オンライン・ゲームパッド振動テスター';
7
+ const description =
8
+ 'ブラウザ上でゲームパッドのハプティックモーターとDual-Rumble振動をテストします。Xbox、DualShock、DualSense、および汎用コントローラーに対応。';
9
+
10
+ const faqData = [
11
+ {
12
+ question: 'オンラインでゲームパッドをテストするには何が必要ですか?',
13
+ answer:
14
+ 'ゲームパッドをUSBケーブルでコンピュータやモバイルデバイスに接続するか、Bluetoothでペアリングするだけです。接続されたら、いずれかのボタンを押すと検出されます。',
15
+ },
16
+ {
17
+ question: 'どのゲームパッドモデルでも動作しますか?',
18
+ answer:
19
+ 'デバイスとOSがサポートしていれば、有名ブランド(PlayStationやXboxなど)の最新のゲームパッドのほとんどは互換性があります。',
20
+ },
21
+ {
22
+ question: 'ゲームパッドの右側の振動が左側より弱いのですが、これは正常ですか?',
23
+ answer:
24
+ 'はい、完全に正常です。ゲームパッドは通常アシンメトリー(非対称)設計になっており、片方が強く深い振動を、もう片方が高速で繊細な振動を担当しています。',
25
+ },
26
+ {
27
+ question: 'これらのテストを実行するとバッテリーを大幅に消費しますか?',
28
+ answer:
29
+ '振動は、ワイヤレスゲームパッドの中で最もエネルギーを消費する機能の一つです。連続して長時間のテストを実行すると、通常よりも早くバッテリーが消耗します。',
30
+ },
31
+ ];
32
+
33
+ const howToData = [
34
+ {
35
+ name: 'ゲームパッドを接続して電源を入れる',
36
+ text: 'USBケーブルまたはBluetoothで、PC、Mac、またはモバイルにゲームパッドをリンクさせます。',
37
+ },
38
+ {
39
+ name: 'ゲームパッドのボタンを押す',
40
+ text: 'ブラウザがゲームパッドを検出し、Web通信を開始するには、少なくとも1つのボタンを押す必要があります。',
41
+ },
42
+ {
43
+ name: '振動モーターを調整する',
44
+ text: '強力なモーター(Low)ときめ細やかなモーター(High)の出力を個別に設定します。',
45
+ },
46
+ {
47
+ name: 'パターンを実行する',
48
+ text: 'プリセットのいずれかを押すか、手動でパラメータを設定して信号を送信し、各コンポーネントの感触を確認します。',
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, i) => ({
68
+ '@type': 'HowToStep',
69
+ position: i + 1,
70
+ name: step.name,
71
+ text: step.text,
72
+ })),
73
+ };
74
+
75
+ const appSchema: WithContext<SoftwareApplication> = {
76
+ '@context': 'https://schema.org',
77
+ '@type': 'SoftwareApplication',
78
+ name: title,
79
+ description,
80
+ applicationCategory: 'UtilityApplication',
81
+ operatingSystem: 'All',
82
+ offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
83
+ inLanguage: 'ja',
84
+ };
85
+
86
+ export const content: ToolLocaleContent<ProbadorVibracionMandoUI> = {
87
+ slug,
88
+ title,
89
+ description,
90
+ faqTitle: 'よくある質問',
91
+ faq: faqData,
92
+ bibliographyTitle: 'リファレンス',
93
+ bibliography: [
94
+ {
95
+ name: 'ハプティック振動の仕組み — HobbyConsolas',
96
+ url: 'https://www.hobbyconsolas.com/reportajes/como-funciona-vibracion-haptica-mando-dualsense-ps5-757673',
97
+ },
98
+ {
99
+ name: 'Gamepad API — W3C',
100
+ url: 'https://w3c.github.io/gamepad/',
101
+ },
102
+ ],
103
+ howTo: howToData,
104
+ schemas: [faqSchema, howToSchema, appSchema],
105
+ seo: [
106
+ { type: 'title', text: 'ゲーム用パッドの振動を監査する方法', level: 2 },
107
+ {
108
+ type: 'paragraph',
109
+ html: 'ハプティックフィードバックは、ゲーミングハードウェアの中で最も没入感を高める要素の一つです。モーターが故障すると、最初の症状として異常なうなり音や非対称な振動が現れることが一般的です。早期の診断が大きな故障を防ぎます。',
110
+ },
111
+ { type: 'title', text: 'なぜ振動テストを実行するのですか?', level: 3 },
112
+ {
113
+ type: 'paragraph',
114
+ html: '中古のゲームパッドを購入したとき、ドライバを更新した後、または落下させた後、ハプティックモーターをテストすることで、実際のハードウェア故障とソフトウェアの問題を区別できます。Xbox、PlayStation 4、PlayStation 5 (DualSense)、Nintendo Switch Pro、および汎用USBゲームパッドに対応しています。',
115
+ },
116
+ { type: 'title', text: 'Dual-Rumble 対 リニアアクチュエータ構造', level: 3 },
117
+ {
118
+ type: 'paragraph',
119
+ html: 'クラシックなゲームパッド(Xbox、DualShock)は、2つの非対称マイクロモーターを使用しています。左側は深く、ゴロゴロとした振動を生成し、右側は高速で鋭いうなり音を生成します。DualSenseのような高度なデバイスは、質感や抵抗をシミュレートするリニアアクチュエータを使用しています。',
120
+ },
121
+ { type: 'title', text: '症状別診断ガイド', level: 3 },
122
+ {
123
+ type: 'paragraph',
124
+ html: '各モーターを個別に100%で動作させます。両方とも同じ音がする場合、そのゲームパッドは単一モーターの模倣品である可能性があります。一方が反応しない場合は、分解する前に接続を確認してください。段階的な強度もテストしてください。高品質なモーターはON/OFFスイッチのように極端ではなく、徐々に反応します。',
125
+ },
126
+ ],
127
+ ui: {
128
+ badge: '振動テスト',
129
+ title: 'ゲームパッド振動テスター',
130
+ description: 'ゲームパッドのDual-Rumbleモーターを直接制御。',
131
+ deviceDisconnected: 'ゲームパッド未接続',
132
+ deviceDisconnectedSub: '開始するにはゲームパッドのボタンを押してください',
133
+ deviceFallback: 'ゲームパッド接続完了',
134
+ deviceConnectedSub: '接続は安定しています。テスト可能です。',
135
+ noSupportWarning: "ブラウザでDual-Rumbleサポートが検出されませんでした。基本的な汎用振動を使用します。",
136
+ tabPresets: 'おすすめプリセット',
137
+ tabCustom: '精密設定',
138
+ presetHeavyTitle: 'ハンマーストライク',
139
+ presetHeavyDesc: '強力なモーターを最大で300ms作動。強い衝撃をシミュレート。',
140
+ presetLightTitle: 'ハチの羽音',
141
+ presetLightDesc: '右モーターのみ。異常なうなり音の検出に最適。',
142
+ presetHeartbeatTitle: '鼓動',
143
+ presetHeartbeatDesc: '繊細な連続パルス。慣性維持の確認に最適。',
144
+ presetSongTitle: 'コインのリズム',
145
+ presetSongDesc: '連続したコイン音をシミュレート。短くタクタイルな感触。',
146
+ presetRockYouTitle: 'Rock You!',
147
+ presetRockYouDesc: "Queenの名曲をその手に:ドン、ドン、チャッ!",
148
+ presetEarthquakeTitle: '最大級の地震!',
149
+ presetEarthquakeDesc: '両方のモーターを100%の爆発的な力で作動。非常に強烈です。',
150
+ customStrongLabel: '強力な力(左)',
151
+ customWeakLabel: '繊細な力(右)',
152
+ customDurationLabel: 'パルス持続時間',
153
+ btnSendSignal: '信号を送信',
154
+ },
155
+ };