From 0f266d45a614dd8e5f4b90273e16815aefe6ecd5 Mon Sep 17 00:00:00 2001 From: tdv Date: Fri, 5 Sep 2025 18:13:37 +0300 Subject: [PATCH] added custom audio player, but this code needs some more improvments --- management-ui/package-lock.json | 105 ++++++ management-ui/package.json | 1 + .../src/customcompometns/DeviceRecordings.vue | 352 ++++++++++-------- management-ui/src/main.ts | 3 +- 4 files changed, 295 insertions(+), 166 deletions(-) diff --git a/management-ui/package-lock.json b/management-ui/package-lock.json index 7d7c889..cfc4d90 100644 --- a/management-ui/package-lock.json +++ b/management-ui/package-lock.json @@ -22,6 +22,7 @@ "uuid": "^11.1.0", "vaul-vue": "^0.4.1", "vue": "^3.5.17", + "vue-audio-visual": "^3.0.11", "vue-router": "^4.5.1" }, "devDependencies": { @@ -2835,6 +2836,110 @@ } } }, + "node_modules/vue-audio-visual": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/vue-audio-visual/-/vue-audio-visual-3.0.11.tgz", + "integrity": "sha512-toXUXswQqo/oHZuzVnhuZ+m9rM9OU5lgOkckQHGpXizF00XI1gZ1f2KpRrLMKj4e7LC23tZjcgMxDeBJRTenvg==", + "license": "MIT", + "dependencies": { + "@vueuse/core": "^9.1.0", + "vue": "^3.2.37" + } + }, + "node_modules/vue-audio-visual/node_modules/@types/web-bluetooth": { + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.16.tgz", + "integrity": "sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==", + "license": "MIT" + }, + "node_modules/vue-audio-visual/node_modules/@vueuse/core": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-9.13.0.tgz", + "integrity": "sha512-pujnclbeHWxxPRqXWmdkKV5OX4Wk4YeK7wusHqRwU0Q7EFusHoqNA/aPhB6KCh9hEqJkLAJo7bb0Lh9b+OIVzw==", + "license": "MIT", + "dependencies": { + "@types/web-bluetooth": "^0.0.16", + "@vueuse/metadata": "9.13.0", + "@vueuse/shared": "9.13.0", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/vue-audio-visual/node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "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/vue-audio-visual/node_modules/@vueuse/metadata": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-9.13.0.tgz", + "integrity": "sha512-gdU7TKNAUVlXXLbaF+ZCfte8BjRJQWPCa2J55+7/h+yDtzw3vOoGQDRXzI6pyKyo6bXFT5/QoPE4hAknExjRLQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/vue-audio-visual/node_modules/@vueuse/shared": { + "version": "9.13.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-9.13.0.tgz", + "integrity": "sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==", + "license": "MIT", + "dependencies": { + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/vue-audio-visual/node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "hasInstallScript": true, + "license": "MIT", + "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/vue-router": { "version": "4.5.1", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.1.tgz", diff --git a/management-ui/package.json b/management-ui/package.json index 17b3c9e..c8e4d3c 100644 --- a/management-ui/package.json +++ b/management-ui/package.json @@ -23,6 +23,7 @@ "uuid": "^11.1.0", "vaul-vue": "^0.4.1", "vue": "^3.5.17", + "vue-audio-visual": "^3.0.11", "vue-router": "^4.5.1" }, "devDependencies": { diff --git a/management-ui/src/customcompometns/DeviceRecordings.vue b/management-ui/src/customcompometns/DeviceRecordings.vue index f8e5d88..bc46eb3 100644 --- a/management-ui/src/customcompometns/DeviceRecordings.vue +++ b/management-ui/src/customcompometns/DeviceRecordings.vue @@ -1,39 +1,27 @@ \ No newline at end of file + + + diff --git a/management-ui/src/main.ts b/management-ui/src/main.ts index 7b19912..2353438 100644 --- a/management-ui/src/main.ts +++ b/management-ui/src/main.ts @@ -2,5 +2,6 @@ import { createApp } from 'vue' import './style.css' import App from './App.vue' import router from './router' +import { AVPlugin } from "vue-audio-visual"; -createApp(App).use(router).mount('#app') +createApp(App).use(router).use(AVPlugin).mount('#app')