diff --git a/env.d.ts b/env.d.ts
index 11f02fe..4791171 100644
--- a/env.d.ts
+++ b/env.d.ts
@@ -1 +1,2 @@
///
+declare module '@vueuse/sound'
diff --git a/package-lock.json b/package-lock.json
index d038b85..f16c7bb 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,6 +13,7 @@
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@fortawesome/vue-fontawesome": "^3.0.3",
"@vueuse/core": "^10.1.2",
+ "@vueuse/sound": "^2.0.1",
"pinia": "^2.0.35",
"sass": "^1.62.1",
"vue": "^3.2.47",
@@ -1571,6 +1572,49 @@
}
}
},
+ "node_modules/@vueuse/sound": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@vueuse/sound/-/sound-2.0.1.tgz",
+ "integrity": "sha512-7Fbp9lQkuUnpTXS9vPbvT2FDYHuwJbvKPivOYETaVVSmcZKoczw6zcsebsARkH5Ged0f045YUOZnV/RuCzyLXQ==",
+ "dependencies": {
+ "howler": "^2.2.3",
+ "vue-demi": "latest"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.0-rc.1",
+ "vue": "^2.0.0 || >=3.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@vueuse/sound/node_modules/vue-demi": {
+ "version": "0.14.0",
+ "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.0.tgz",
+ "integrity": "sha512-gt58r2ogsNQeVoQ3EhoUAvUsH9xviydl0dWJj7dabBC/2L4uBId7ujtCwDRD0JhkGsV1i0CtfLAeyYKBht9oWg==",
+ "hasInstallScript": true,
+ "bin": {
+ "vue-demi-fix": "bin/vue-demi-fix.js",
+ "vue-demi-switch": "bin/vue-demi-switch.js"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/antfu"
+ },
+ "peerDependencies": {
+ "@vue/composition-api": "^1.0.0-rc.1",
+ "vue": "^3.0.0-0 || ^2.6.0"
+ },
+ "peerDependenciesMeta": {
+ "@vue/composition-api": {
+ "optional": true
+ }
+ }
+ },
"node_modules/abab": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/abab/-/abab-2.0.6.tgz",
@@ -3881,6 +3925,11 @@
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
+ "node_modules/howler": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/howler/-/howler-2.2.3.tgz",
+ "integrity": "sha512-QM0FFkw0LRX1PR8pNzJVAY25JhIWvbKMBFM4gqk+QdV+kPXOhleWGCB6AiAF/goGjIHK2e/nIElplvjQwhr0jg=="
+ },
"node_modules/html-encoding-sniffer": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz",
diff --git a/package.json b/package.json
index caf7685..8ebb122 100644
--- a/package.json
+++ b/package.json
@@ -20,6 +20,7 @@
"@fortawesome/free-solid-svg-icons": "^6.4.0",
"@fortawesome/vue-fontawesome": "^3.0.3",
"@vueuse/core": "^10.1.2",
+ "@vueuse/sound": "^2.0.1",
"pinia": "^2.0.35",
"sass": "^1.62.1",
"vue": "^3.2.47",
diff --git a/src/assets/sounds/btn-hover.mp3 b/src/assets/sounds/btn-hover.mp3
new file mode 100644
index 0000000..240125a
Binary files /dev/null and b/src/assets/sounds/btn-hover.mp3 differ
diff --git a/src/components/YrhButton.vue b/src/components/YrhButton.vue
index d92d402..0668257 100644
--- a/src/components/YrhButton.vue
+++ b/src/components/YrhButton.vue
@@ -1,6 +1,11 @@